Merge pull request #720 from samiahlroos/3.x

build Go tools from top Makefile
This commit is contained in:
Sveta Smirnova
2023-11-29 14:29:28 +03:00
committed by GitHub
2 changed files with 27 additions and 3 deletions

View File

@@ -1,22 +1,40 @@
use ExtUtils::MakeMaker;
use ExtUtils::MY;
sub MY::postamble {
return <<'MAKE_GOTOOLS';
gotools:
cd src/go && $(MAKE) build
MAKE_GOTOOLS
}
WriteMakefile(
NAME => 'Percona::Toolkit',
VERSION => '3.5.5',
EXE_FILES => [ <bin/*> ],
EXE_FILES => [
map {
(my $name = $_) =~ s/^bin.//;
my $file_name = $_;
if ( ( $file_name !~ m/mongo/ ) || ( $file_name !~ m/pg/ ) || ( $file_name !~ m/pt-stalk/ ) || ( $file_name !~ m/pt-k8s/ ) ) {
$_;
}
} <bin/*>
],
MAN1PODS => {
'docs/percona-toolkit.pod' => 'blib/man1/percona-toolkit.1p',
map {
(my $name = $_) =~ s/^bin.//;
my $file_name = $_;
if ( ( $file_name !~ m/mongo/ ) || ( $file_name !~ m/pg/ ) || ( $file_name !~ m/pt-stalk/ ) ) {
if ( ( $file_name !~ m/mongo/ ) || ( $file_name !~ m/pg/ ) || ( $file_name !~ m/pt-stalk/ ) || ( $file_name !~ m/pt-k8s/ ) ) {
$_ => "blib/man1/$name.1p";
}
} <bin/*>
},
MAN3PODS => {}, # man(3) pages are for C libs
depend => {manifypods => gotools},
PREREQ_PM => {
DBI => 1.46,
DBD::mysql => 3.0000_0,
},
);
);

View File

@@ -151,6 +151,12 @@ darwin-arm64: ## Build Go tools for darwin-arm64 (MacOS)
@$(foreach pkg,$(pkgs),rm -f ${BIN_DIR}/$(pkg) 2> /dev/null;)
@$(foreach pkg,$(pkgs),GOOS=darwin GOARCH=arm64 go build -ldflags ${LDFLAGS} -o ${BIN_DIR}/$(pkg) ./$(pkg);)
build:
@echo "Building binaries in ${BIN_DIR} as version ${VERSION}"
@cd ${TOP_DIR} && go get ./...
@$(foreach pkg,$(pkgs),rm -f ${BIN_DIR}/$(pkg) 2> /dev/null;)
@$(foreach pkg,$(pkgs),go build -ldflags ${LDFLAGS} -o ${BIN_DIR}/$(pkg) ./$(pkg);)
style: ## Check code style
@echo ">> checking code style"
@! gofmt -d $(shell find . -path ./vendor -prune -o -name '*.go' -print) | grep '^'