From 30a06fe2c4ef63a6b705203b0490486b8f254e6d Mon Sep 17 00:00:00 2001
From: Bruce Momjian <bruce@momjian.us>
Date: Mon, 26 Apr 2004 04:04:42 +0000
Subject: [PATCH] Unconditionally define:

	-D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS

for all ports.  It can't hurt if they are not supported, but it makes
our job easier for porting.

Should fix Darwin compile and other platforms without mucking with the
thread detection code.
---
 config/acx_pthread.m4 | 12 ++++++++----
 configure             | 14 ++++++++++----
 configure.in          |  7 ++++++-
 src/template/darwin   |  3 ---
 src/template/freebsd  |  5 -----
 src/template/linux    |  3 ---
 src/template/solaris  |  1 -
 src/template/unixware |  3 ---
 8 files changed, 24 insertions(+), 24 deletions(-)

diff --git a/config/acx_pthread.m4 b/config/acx_pthread.m4
index 27079def74b..11c62b3f773 100644
--- a/config/acx_pthread.m4
+++ b/config/acx_pthread.m4
@@ -1,3 +1,6 @@
+dnl PGSGL:  When updating, comment out port-specific part below;
+dnl see the comment below with the word "PostgreSQL".
+dnl
 dnl Available from the GNU Autoconf Macro Archive at:
 dnl http://www.gnu.org/software/ac-archive/htmldoc/acx_pthread.html
 dnl
@@ -165,10 +168,11 @@ if test "x$acx_pthread_ok" = xyes; then
 
         AC_MSG_CHECKING([if more special flags are required for pthreads])
         flag=no
-        case "${host_cpu}-${host_os}" in
-                *-aix* | *-freebsd*)     flag="-D_THREAD_SAFE";;
-                *solaris* | *-osf* | *-hpux*) flag="-D_REENTRANT";;
-        esac
+# We handle this ourselves in PostgreSQL
+#        case "${host_cpu}-${host_os}" in
+#                *-aix* | *-freebsd*)     flag="-D_THREAD_SAFE";;
+#                *solaris* | *-osf* | *-hpux*) flag="-D_REENTRANT";;
+#        esac
         AC_MSG_RESULT(${flag})
         if test "x$flag" != xno; then
                 PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS"
diff --git a/configure b/configure
index 2026f68104a..4f6927491ad 100755
--- a/configure
+++ b/configure
@@ -13387,10 +13387,11 @@ echo "$as_me: WARNING: we do not know how to create joinable pthreads" >&2;}
         echo "$as_me:$LINENO: checking if more special flags are required for pthreads" >&5
 echo $ECHO_N "checking if more special flags are required for pthreads... $ECHO_C" >&6
         flag=no
-        case "${host_cpu}-${host_os}" in
-                *-aix* | *-freebsd*)     flag="-D_THREAD_SAFE";;
-                *solaris* | *-osf* | *-hpux*) flag="-D_REENTRANT";;
-        esac
+# We handle this ourselves in PostgreSQL
+#        case "${host_cpu}-${host_os}" in
+#                *-aix* | *-freebsd*)     flag="-D_THREAD_SAFE";;
+#                *solaris* | *-osf* | *-hpux*) flag="-D_REENTRANT";;
+#        esac
         echo "$as_me:$LINENO: result: ${flag}" >&5
 echo "${ECHO_T}${flag}" >&6
         if test "x$flag" != xno; then
@@ -13465,6 +13466,11 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 	# set thread flags
 
+# Some platforms use these, so just defineed them.  They can't hurt if they
+# are not supported.
+PTHREAD_CFLAGS="$PTHREAD_CFLAGS -D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS"
+
+
 # At this point, we don't want to muck with the compiler name for threading.
 # Let's see who fails, perhaps AIX.  2004-04-23
 if test "$PTHREAD_CC" != "$CC"; then
diff --git a/configure.in b/configure.in
index dd4e4106625..fd7fc371a52 100644
--- a/configure.in
+++ b/configure.in
@@ -1,5 +1,5 @@
 dnl Process this file with autoconf to produce a configure script.
-dnl $PostgreSQL: pgsql/configure.in,v 1.333 2004/04/26 00:44:39 momjian Exp $
+dnl $PostgreSQL: pgsql/configure.in,v 1.334 2004/04/26 04:04:42 momjian Exp $
 dnl
 dnl Developers, please strive to achieve this order:
 dnl
@@ -959,6 +959,11 @@ AC_FUNC_FSEEKO
 if test "$enable_thread_safety" = yes; then
 ACX_PTHREAD	# set thread flags
 
+# Some platforms use these, so just defineed them.  They can't hurt if they
+# are not supported.
+PTHREAD_CFLAGS="$PTHREAD_CFLAGS -D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS"
+
+
 # At this point, we don't want to muck with the compiler name for threading.
 # Let's see who fails, perhaps AIX.  2004-04-23
 if test "$PTHREAD_CC" != "$CC"; then
diff --git a/src/template/darwin b/src/template/darwin
index bffb0d4ea03..baf462baf62 100644
--- a/src/template/darwin
+++ b/src/template/darwin
@@ -4,6 +4,3 @@ CC="$CC -no-cpp-precomp"
 
 # Select appropriate semaphore support
 USE_NAMED_POSIX_SEMAPHORES=1
-
-# verified Mac OS X 10.3.3, Darwin Kernel Version 7.3.0, 2004-04-07
-PTHREAD_CFLAGS="-D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS"
diff --git a/src/template/freebsd b/src/template/freebsd
index f4a16103189..718359e07c6 100644
--- a/src/template/freebsd
+++ b/src/template/freebsd
@@ -1,8 +1,3 @@
 case $host_cpu in
   alpha*)   CFLAGS="-O";;  # alpha has problems with -O2
 esac
-
-case $host_os in
-	freebsd2*|freebsd3*|freebsd4*) ;;
-	*) PTHREAD_LIBS="c_r";;	 # do we need this?  2004-04-23
-esac
diff --git a/src/template/linux b/src/template/linux
index 95c1b182fe5..dfb391ea542 100644
--- a/src/template/linux
+++ b/src/template/linux
@@ -1,5 +1,2 @@
 # Force _GNU_SOURCE on; plperl is broken with Perl 5.8.0 otherwise
 CPPFLAGS="-D_GNU_SOURCE"
-
-# tools/thread/thread_test must be run
-PTHREAD_CFLAGS="-D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS"
diff --git a/src/template/solaris b/src/template/solaris
index d6d9fbc794a..f2e7aaa0470 100644
--- a/src/template/solaris
+++ b/src/template/solaris
@@ -10,4 +10,3 @@ case $host in
 esac
 
 # -D_POSIX_PTHREAD_SEMANTICS enables 5-arg getpwuid_r, among other things
-PTHREAD_CFLAGS="-D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS"
diff --git a/src/template/unixware b/src/template/unixware
index e7e63f65daa..9dd9d88a6ed 100644
--- a/src/template/unixware
+++ b/src/template/unixware
@@ -24,8 +24,5 @@ __EOF__
   PTHREAD_CFLAGS="-Kpthread"
 fi
 
-# tools/thread/thread_test must be run
-PTHREAD_CFLAGS="$PTHREAD_CFLAGS -D_REENTRANT"
-
 # Disabled because flags are required for all apps using libpq.
 # Waiting to see if other platforms need this too.  2004-03-22
-- 
GitLab