diff options
author | Jeff King <peff@peff.net> | 2019-11-25 11:47:20 -0500 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2019-11-27 10:53:36 +0900 |
commit | 528d9e6d0190b0ab8fbbab0b7b1b68f512f5dfcd (patch) | |
tree | 7ed441dd94c3fc0cf7288ec2df03cb577b0810f6 /t/perf | |
parent | Git 2.23 (diff) | |
download | tgif-528d9e6d0190b0ab8fbbab0b7b1b68f512f5dfcd.tar.xz |
t/perf: don't depend on Git.pm
The perf suite's aggregate.perl depends on Git.pm, which is a mild
annoyance if you've built git with NO_PERL. It turns out that the only
thing we use it for is a single call of the command_oneline() helper.
We can just replace this with backticks or similar.
Annoyingly, perl has no backtick equivalent that avoids a shell eval,
which means our $arg would require quoting. This probably doesn't matter
for our purposes, but it's better to be safe and model good style. So
we'll just provide a short helper around open(), which takes its
arguments as a list.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/perf')
-rwxr-xr-x | t/perf/aggregate.perl | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/t/perf/aggregate.perl b/t/perf/aggregate.perl index 66554d2161..a46ef67a2b 100755 --- a/t/perf/aggregate.perl +++ b/t/perf/aggregate.perl @@ -4,7 +4,6 @@ use lib '../../perl/build/lib'; use strict; use warnings; use Getopt::Long; -use Git; use Cwd qw(realpath); sub get_times { @@ -85,6 +84,11 @@ sub format_size { return $out; } +sub sane_backticks { + open(my $fh, '-|', @_); + return <$fh>; +} + my (@dirs, %dirnames, %dirabbrevs, %prefixes, @tests, $codespeed, $sortby, $subsection, $reponame); @@ -102,7 +106,8 @@ while (scalar @ARGV) { my $prefix = ''; last if -f $arg or $arg eq "--"; if (! -d $arg) { - my $rev = Git::command_oneline(qw(rev-parse --verify), $arg); + my $rev = sane_backticks(qw(git rev-parse --verify), $arg); + chomp $rev; $dir = "build/".$rev; } elsif ($arg eq '.') { $dir = '.'; |