postgres.git / summary / log / commit / refs

commit    089baec6fd2097984af92baa9e5aaf0cdd1238e6
Author:   Michael Paquier <michael@paquier.xyz>
Date:     Thu May 21 05:41:30 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 d109b2c9060..af1d6905846 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: e2a19a6d2536]