From 0446b2ac6432bc16beb4a4cbc4ff3a965c848ecd Mon Sep 17 00:00:00 2001
From: Thomas Munro <thomas.munro@gmail.com>
Date: Sat, 23 Jul 2022 23:49:27 +1200
Subject: [PATCH v2 03/13] Remove configure probe for shm_open.

shm_open() is in SUSv2 (realtime) and all targeted Unix systems have it.

We retain a HAVE_SHM_OPEN macro, because it's clearer to readers than
something like !defined(WIN32).

Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us>
Discussion: https://postgr.es/m/CA+hUKGJ3LHeP9w5Fgzdr4G8AnEtJ=z=p6hGDEm4qYGEUX5B6fQ@mail.gmail.com
---
 configure                  | 2 +-
 configure.ac               | 1 -
 src/include/pg_config.h.in | 3 ---
 src/include/port.h         | 1 +
 src/tools/msvc/Solution.pm | 1 -
 5 files changed, 2 insertions(+), 6 deletions(-)

diff --git a/configure b/configure
index 6b4be12869..0c3ee5ab3f 100755
--- a/configure
+++ b/configure
@@ -16039,7 +16039,7 @@ fi
 LIBS_including_readline="$LIBS"
 LIBS=`echo "$LIBS" | sed -e 's/-ledit//g' -e 's/-lreadline//g'`
 
-for ac_func in backtrace_symbols clock_gettime copyfile fdatasync getifaddrs getpeerucred inet_pton kqueue mbstowcs_l memset_s poll posix_fallocate ppoll pthread_is_threaded_np readlink readv setproctitle setproctitle_fast setsid shm_open strchrnul strsignal symlink syncfs sync_file_range uselocale wcstombs_l writev
+for ac_func in backtrace_symbols clock_gettime copyfile fdatasync getifaddrs getpeerucred inet_pton kqueue mbstowcs_l memset_s poll posix_fallocate ppoll pthread_is_threaded_np readlink readv setproctitle setproctitle_fast setsid strchrnul strsignal symlink syncfs sync_file_range uselocale wcstombs_l writev
 do :
   as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
 ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
diff --git a/configure.ac b/configure.ac
index b656af9cc5..dab6927cdc 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1810,7 +1810,6 @@ AC_CHECK_FUNCS(m4_normalize([
 	setproctitle
 	setproctitle_fast
 	setsid
-	shm_open
 	strchrnul
 	strsignal
 	symlink
diff --git a/src/include/pg_config.h.in b/src/include/pg_config.h.in
index 8e9318904f..922756568e 100644
--- a/src/include/pg_config.h.in
+++ b/src/include/pg_config.h.in
@@ -480,9 +480,6 @@
 /* Define to 1 if you have the `setsid' function. */
 #undef HAVE_SETSID
 
-/* Define to 1 if you have the `shm_open' function. */
-#undef HAVE_SHM_OPEN
-
 /* Define to 1 if the system has the type `socklen_t'. */
 #undef HAVE_SOCKLEN_T
 
diff --git a/src/include/port.h b/src/include/port.h
index 630d55fcb7..e14e8fbf7e 100644
--- a/src/include/port.h
+++ b/src/include/port.h
@@ -549,6 +549,7 @@ extern bool wait_result_is_any_signal(int exit_status, bool include_command_not_
  */
 #ifndef WIN32
 #define HAVE_GETRLIMIT 1
+#define HAVE_SHM_OPEN 1
 #endif
 
 #endif							/* PG_PORT_H */
diff --git a/src/tools/msvc/Solution.pm b/src/tools/msvc/Solution.pm
index 1018b57f00..893feb6eaf 100644
--- a/src/tools/msvc/Solution.pm
+++ b/src/tools/msvc/Solution.pm
@@ -353,7 +353,6 @@ sub GenerateFiles
 		HAVE_SETPROCTITLE                        => undef,
 		HAVE_SETPROCTITLE_FAST                   => undef,
 		HAVE_SETSID                              => undef,
-		HAVE_SHM_OPEN                            => undef,
 		HAVE_SOCKLEN_T                           => 1,
 		HAVE_SPINLOCKS                           => 1,
 		HAVE_STDBOOL_H                           => 1,
-- 
2.35.1

