@@ -69,10 +69,12 @@ sub MAIN {
69
69
tests => \@TESTS ,
70
70
);
71
71
72
+ my ($versions , $commit_dates ) = detect_versions();
72
73
my %run = (
73
- start_time => time ,
74
- options => $main_opt ,
75
- versions => detect_versions(),
74
+ start_time => time ,
75
+ options => $main_opt ,
76
+ versions => $versions ,
77
+ commit_dates => $commit_dates ,
76
78
);
77
79
78
80
# Run tests
@@ -256,10 +258,11 @@ sub enable_only_compilers {
256
258
sub detect_versions {
257
259
say " Detecting versions ..." ;
258
260
259
- my %version ;
261
+ my ( %version , %commit_date ) ;
260
262
my $cwd = cwd;
261
263
262
- my @detect_git_rev = qw( git describe --always --dirty ) ;
264
+ my @detect_git_rev = qw( git describe --always --dirty ) ;
265
+ my @detect_commit_date = qw( git show -s --format=%ct HEAD ) ;
263
266
264
267
for my $compiler (@COMPILERS ) {
265
268
next unless $compiler -> {enabled };
@@ -270,16 +273,25 @@ sub detect_versions {
270
273
s /\b BENCH\b / $FindBin::Bin / g for $dir , @cmd ;
271
274
272
275
chdir $dir ;
273
- $version {$compiler -> {name }} = -d ' .git' ? ` @detect_git_rev ` : ` @cmd ` ;
276
+ my $name = $compiler -> {name };
277
+ if (-d ' .git' ) {
278
+ $version {$name } = ` @detect_git_rev ` ;
279
+ $commit_date {$name } = ` @detect_commit_date ` ;
280
+ }
281
+ else {
282
+ $version {$name } = ` @cmd ` ;
283
+ }
274
284
}
275
285
276
286
chdir $FindBin::Bin ;
277
- $version {bench } = ` @detect_git_rev ` ;
287
+ $version {bench } = ` @detect_git_rev ` ;
288
+ $commit_date {bench } = ` @detect_commit_date ` ;
278
289
279
290
chomp for values %version ;
291
+ chomp for values %commit_date ;
280
292
281
293
chdir $cwd ;
282
- return \%version ;
294
+ return ( \%version , \ %commit_date ) ;
283
295
}
284
296
285
297
# Checks if the currently checked out git rev contains all commits from
0 commit comments