BUG #16343: Build problem: Install.pm "Could not find debug or release binaries"

The Post Office <noreply@postgresql.org>

From: PG Bug reporting form <noreply@postgresql.org>
To: pgsql-bugs@lists.postgresql.org
Cc: noeld.mueller@googlemail.com
Date: 2020-04-04T15:08:31Z
Lists: pgsql-bugs
The following bug has been logged on the website:

Bug reference:      16343
Logged by:          Arnold Müller
Email address:      noeld.mueller@googlemail.com
PostgreSQL version: 12.0
Operating system:   Windows 10 Home
Description:        

During a build with vcpkg I got above error message during the install phase
after a successfull build phase.
(I tried to install
 ulibpq:x64-windows                                  12.0-1
)

It turned out that I got another, completely unrelated configure-file 7
folders up the hierarchy.
Inserting an elsif fixed it.

So, please consider merging this one into the Install.pm. It worked for me
on Windows 10 Home with vcpkg/MSVC, haven't tried it on other platforms,
though.

Thanks,
Arnold

diff --git a/src/tools/msvc/Install.pm b/src/tools/msvc/Install.pm
index 1a92ed233a..9173d0ee53 100644
--- a/src/tools/msvc/Install.pm
+++ b/src/tools/msvc/Install.pm
@@ -63,8 +63,14 @@ sub Install
 		do "./config.pl" if (-f "config.pl");
 	}
 
-	chdir("../../..")    if (-f "../../../configure");
-	chdir("../../../..") if (-f "../../../../configure");
+	if (-f "../../../configure")
+	{
+		chdir("../../..");
+	} 
+	elsif (-f "../../../../configure")
+	{
+		chdir("../../../..");
+	}
 	my $conf = "";
 	if (-d "debug")
 	{

Commits

  1. Fix MSVC installations with multiple "configure" files detected