From ecabdf39aa461c7d78f2c6ce24d1f168a7cbc7c5 Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Wed, 7 Feb 2024 04:38:28 +0100 Subject: [PATCH] Configure: Fix ordering bug when processing split DEPENDs Configure was recently made to process this sort of line: DEPEND[generated]=util/perl|OpenSSL/something.pm Unfortunately, in processing such lines, the order in which paths were recomputed caused some resulting paths to be faulty under some circumstances. This change fixes that. Fixes #22853 Reviewed-by: Tom Cosgrove Reviewed-by: Tomas Mraz (Merged from https://github.com/openssl/openssl/pull/23500) (cherry picked from commit 64cae4064405384cf7fe130a1e0189725db5e877) --- Configure | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Configure b/Configure index 934b0d09c07..c09bec39f60 100755 --- a/Configure +++ b/Configure @@ -2487,10 +2487,11 @@ EOF && $f =~ m/^(.*?)\|(.*)$/) { $i = $1; $m = $2; - $i = cleanfile($sourced, $i, $blddir, 1); - $i2 = cleanfile($buildd, $i, $blddir); + # We must be very careful to modify $i last $d = cleanfile($sourced, "$i/$m", $blddir, 1); $d2 = cleanfile($buildd, "$i/$m", $blddir); + $i2 = cleandir($buildd, $i, $blddir); + $i = cleandir($sourced, $i, $blddir, 1); } else { $d = cleanfile($sourced, $f, $blddir, 1); $d2 = cleanfile($buildd, $f, $blddir); -- 2.47.2