diff options
author | Richard Levitte <levitte@openssl.org> | 2021-08-19 20:45:00 +0200 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2021-08-19 20:45:00 +0200 |
commit | 023cb594d951569afc1e32dd8fc18df85a4f8349 (patch) | |
tree | 8565212aff3bd8d92707d1069288f1f26772f3b5 /util/add-depends.pl | |
parent | util/add-depends.pl: Only add dependencies on existing or generated headers (diff) | |
download | openssl-023cb594d951569afc1e32dd8fc18df85a4f8349.tar.xz openssl-023cb594d951569afc1e32dd8fc18df85a4f8349.zip |
util/add-depends.pl: Rebuild the build file after reconfiguration
Reconfiguration is assumed if any dependency (.d) file is older than
configdata.pm.
Fixes #16364
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/16365)
Diffstat (limited to 'util/add-depends.pl')
-rw-r--r-- | util/add-depends.pl | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/util/add-depends.pl b/util/add-depends.pl index 1e2ade78fe..599a267f6d 100644 --- a/util/add-depends.pl +++ b/util/add-depends.pl @@ -23,6 +23,7 @@ ${^WIN32_SLOPPY_STAT} = 1; my $debug = $ENV{ADD_DEPENDS_DEBUG}; my $buildfile = $config{build_file}; my $build_mtime = (stat($buildfile))[9]; +my $configdata_mtime = (stat('configdata.pm'))[9]; my $rebuild = 0; my $depext = $target{dep_extension} || ".d"; my @depfiles = @@ -30,9 +31,11 @@ my @depfiles = grep { # This grep has side effects. Not only does if check the existence # of the dependency file given in $_, but it also checks if it's - # newer than the build file, and if it is, sets $rebuild. + # newer than the build file or older than configdata.pm, and if it + # is, sets $rebuild. my @st = stat($_); - $rebuild = 1 if @st && $st[9] > $build_mtime; + $rebuild = 1 + if @st && ($st[9] > $build_mtime || $st[9] < $configdata_mtime); scalar @st > 0; # Determines the grep result } map { (my $x = $_) =~ s|\.o$|$depext|; $x; } |