From 87471ab92dc4c0089d021db3faa27ed2f929fb6b Mon Sep 17 00:00:00 2001 From: Sadie Powell Date: Sat, 18 Jan 2020 14:03:18 +0000 Subject: [PATCH] Add a function for showing a command whilst executing it. --- make/common.pm | 6 ++++++ tools/mkheaders | 3 ++- tools/test-build | 10 +++++----- vendor/update | 8 ++++---- 4 files changed, 17 insertions(+), 10 deletions(-) diff --git a/make/common.pm b/make/common.pm index 49d4b7798..636c3d5d6 100644 --- a/make/common.pm +++ b/make/common.pm @@ -34,6 +34,7 @@ use File::Spec::Functions qw(rel2abs); use make::console; our @EXPORT = qw(create_directory + execute get_cpu_count get_version read_config_file @@ -47,6 +48,11 @@ sub create_directory($$) { } // 0; } +sub execute(@) { + print_format "<|BOLD \$|> @_\n"; + return system @_; +} + sub get_version { state %version; return %version if %version; diff --git a/tools/mkheaders b/tools/mkheaders index 4b1f370f3..ee8142d3b 100755 --- a/tools/mkheaders +++ b/tools/mkheaders @@ -37,6 +37,7 @@ use List::Util qw(uniq); use POSIX qw(strftime); use lib dirname $RealDir; +use make::common; use make::console; my @ignored_revisions = ( @@ -144,7 +145,7 @@ for my $path (@paths) { } } -system 'git', 'commit', +execute 'git', 'commit', '--author', 'InspIRCd Robot ', '--message', 'Update copyright headers.', '--', @updated; diff --git a/tools/test-build b/tools/test-build index 48988b687..eb7da05d0 100755 --- a/tools/test-build +++ b/tools/test-build @@ -40,7 +40,7 @@ use make::configure; $ENV{INSPIRCD_DEBUG} = 3; $ENV{INSPIRCD_VERBOSE} = 1; -system 'git', 'clean', '-dfx'; +execute 'git', 'clean', '-dfx'; my @compilers = $#ARGV >= 0 ? @ARGV : qw(g++ clang++ icpc); foreach my $compiler (@compilers) { @@ -57,19 +57,19 @@ foreach my $compiler (@compilers) { say "Attempting to build using the $compiler compiler and the $socketengine socket engine..."; my @configure_flags; if (defined $ENV{TEST_BUILD_MODULES}) { - system './configure', '--enable-extras', $ENV{TEST_BUILD_MODULES}; + execute './configure', '--enable-extras', $ENV{TEST_BUILD_MODULES}; push @configure_flags, '--disable-auto-extras'; } - if (system './configure', '--development', '--socketengine', $socketengine, @configure_flags) { + if (execute './configure', '--development', '--socketengine', $socketengine, @configure_flags) { say "Failed to configure using the $compiler compiler and the $socketengine socket engine!"; exit 1; } - if (system 'make', '--jobs', get_cpu_count, 'install') { + if (execute 'make', '--jobs', get_cpu_count, 'install') { say "Failed to compile using the $compiler compiler and the $socketengine socket engine!"; exit 1; } say "Building using the $compiler compiler and the $socketengine socket engine succeeded!"; } - system 'git', 'clean', '-dfx'; + execute 'git', 'clean', '-dfx'; } diff --git a/vendor/update b/vendor/update index c57918cb5..6f9ff5e86 100755 --- a/vendor/update +++ b/vendor/update @@ -57,14 +57,14 @@ while (my ($name, $info) = each $data) { my $vendordir = catdir $RealDir, $name; my $success = 0; if (defined $info->{git}) { - $success ||= system 'git', 'clone', $info->{git}, $unpackdir; + $success ||= execute 'git', 'clone', $info->{git}, $unpackdir; chomp(my $tag = `git -C $unpackdir describe --abbrev=0 --tags HEAD 2>/dev/null`) unless $success; - $success ||= system 'git', '-C', $unpackdir, 'checkout', $tag if $tag; + $success ||= execute 'git', '-C', $unpackdir, 'checkout', $tag if $tag; chomp($info->{version} = `git -C $unpackdir describe --always --tags HEAD 2>/dev/null`); } elsif (defined $info->{tarball}) { my $tarball = catfile $unpackdir, basename $info->{tarball}; - $success ||= system 'wget', '--output-document', $tarball, $info->{tarball}; - $success ||= system 'tar', 'fx', $tarball, '-C', $unpackdir, '--strip-components', 1; + $success ||= execute 'wget', '--output-document', $tarball, $info->{tarball}; + $success ||= execute 'tar', 'fx', $tarball, '-C', $unpackdir, '--strip-components', 1; } else { print_error "unable to update $name; no git or tarball specified!"; } -- 2.39.2