From 6fbf4e0e7c0839c33ed2d63f3c64abdc049f6d1b Mon Sep 17 00:00:00 2001
From: Bruce Momjian <bruce@momjian.us>
Date: Wed, 18 May 2011 12:13:37 -0400
Subject: [PATCH] Fix pg_upgrade build problem on Windows when using X_OK
 access permission check on the current directory.

---
 contrib/pg_upgrade/exec.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/contrib/pg_upgrade/exec.c b/contrib/pg_upgrade/exec.c
index 6f1c6effabb..ec2f94436bf 100644
--- a/contrib/pg_upgrade/exec.c
+++ b/contrib/pg_upgrade/exec.c
@@ -94,7 +94,16 @@ void
 verify_directories(void)
 {
 
-	if (access(".", R_OK | W_OK | X_OK) != 0)
+	if (access(".", R_OK | W_OK
+#ifndef WIN32
+	/*
+	 *	Directory execute permission on NTFS means "can execute scripts",
+	 *	which we don't care about, so skip the check.  Also, X_OK is not
+	 *	defined in the API.
+	 */
+					| X_OK
+#endif
+		) != 0)
 		pg_log(PG_FATAL,
 		"You must have read and write access in the current directory.\n");
 
-- 
GitLab