postgres.git / summary / log / commit / refs

commit    bb24af50d515651b950e153fdd25ddb46184a57b
Author:   Michael Paquier <michael@paquier.xyz>
Date:     Thu May 21 05:41:33 2020 +0000
First released in: 13.0, 9.5.23, 9.6.19, 10.14, 11.9, 12.4

    Fix MSVC installations with multiple "configure" files detected
    
    When installing binaries and libraries using the MSVC installation
    routines, the operation gets done after moving to the root folder, whose
    location is detected by checking if "configure" exists two times in a
    row.  So, calling the installation script from src/tools/msvc/ with an
    extra "configure" file four levels up the root path of the code tree
    causes the execution to go further up, leading to a failure in finding
    the builds.  This commit fixes the issue by moving to the root folder of
    the code tree only once, when necessary.
    
    Author: Arnold Müller
    Reviewed-by: Daniel Gustafsson
    Discussion: https://postgr.es/m/16343-f638f67e7e52b86c@postgresql.org
    Backpatch-through: 9.5


src/tools/msvc/Install.pm | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/tools/msvc/Install.pm b/src/tools/msvc/Install.pm index 1e388ca3b6e..97f543044e9 100644 --- a/src/tools/msvc/Install.pm +++ b/src/tools/msvc/Install.pm @@ -63,8 +63,16 @@ sub Install do "./config.pl" if (-f "config.pl"); } - chdir("../../..") if (-f "../../../configure"); - chdir("../../../..") if (-f "../../../../configure"); + # Move to the root path depending on the current location. + if (-f "../../../configure") + { + chdir("../../.."); + } + elsif (-f "../../../../configure") + { + chdir("../../../.."); + } + my $conf = ""; if (-d "debug") { [parent: 673582d21f30]