postgres.git / summary / log / commit / refs

commit    d2a9959907a03682f4fe182086f9936aca6b2a4f
Author:   Michael Paquier <michael@paquier.xyz>
Date:     Thu May 21 05:41:15 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 e65ac6fc664..9bf111c41ef 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: e1218f59ea4c]