aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2024-12-03 20:21:23 -0500
committerTom Lane <tgl@sss.pgh.pa.us>2024-12-03 20:21:23 -0500
commit3b08d5224d7df71cc111d8522cf6190fc02f6fb9 (patch)
tree8a1ed74eaa6c940d88ddec6a36832376b4c38341
parent498f130756914e1bc3125ddfc7e5c86f38ded8e8 (diff)
downloadpostgresql-3b08d5224d7df71cc111d8522cf6190fc02f6fb9.tar.gz
postgresql-3b08d5224d7df71cc111d8522cf6190fc02f6fb9.zip
Define __EXTENSIONS__ on Solaris, too.
Apparently, if you define _POSIX_C_SOURCE on Solaris, that's interpreted as "you get ONLY what's defined by POSIX". Results from BF member hake show that that breaks perl.h, and doubtless it'd cause more problems if we got past that. Adopt the suggestion from standards(7) that we also need to define __EXTENSIONS__, in hopes of un-breaking things. Discussion: https://postgr.es/m/1654508.1733162761@sss.pgh.pa.us
-rwxr-xr-xconfigure2
-rw-r--r--configure.ac2
-rw-r--r--meson.build6
3 files changed, 7 insertions, 3 deletions
diff --git a/configure b/configure
index 7029e036269..cf2d83b93ad 100755
--- a/configure
+++ b/configure
@@ -7593,7 +7593,7 @@ fi
# On Solaris, we need these #defines to get POSIX-conforming versions
# of many interfaces (sigwait, getpwuid_r, shmdt, ...).
if test "$PORTNAME" = "solaris"; then
- CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE=200112L -D_POSIX_PTHREAD_SEMANTICS"
+ CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE=200112L -D__EXTENSIONS__ -D_POSIX_PTHREAD_SEMANTICS"
fi
# We already have this in Makefile.win32, but configure needs it too
diff --git a/configure.ac b/configure.ac
index afc229e729b..399aae4eed9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -696,7 +696,7 @@ fi
# On Solaris, we need these #defines to get POSIX-conforming versions
# of many interfaces (sigwait, getpwuid_r, shmdt, ...).
if test "$PORTNAME" = "solaris"; then
- CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE=200112L -D_POSIX_PTHREAD_SEMANTICS"
+ CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE=200112L -D__EXTENSIONS__ -D_POSIX_PTHREAD_SEMANTICS"
fi
# We already have this in Makefile.win32, but configure needs it too
diff --git a/meson.build b/meson.build
index ec5cd9259df..7d9a247d21c 100644
--- a/meson.build
+++ b/meson.build
@@ -263,7 +263,11 @@ elif host_system == 'sunos'
export_fmt = '-Wl,-M@0@'
# We need these #defines to get POSIX-conforming versions
# of many interfaces (sigwait, getpwuid_r, shmdt, ...).
- cppflags += [ '-D_POSIX_C_SOURCE=200112L', '-D_POSIX_PTHREAD_SEMANTICS' ]
+ cppflags += [
+ '-D_POSIX_C_SOURCE=200112L',
+ '-D__EXTENSIONS__',
+ '-D_POSIX_PTHREAD_SEMANTICS',
+ ]
elif host_system == 'windows'
portname = 'win32'