postgres.git / summary / log / commit / refs

commit    3b08d5224d7df71cc111d8522cf6190fc02f6fb9
Author:   Tom Lane <tgl@sss.pgh.pa.us>
Date:     Wed Dec 04 01:21:23 2024 +0000
First released in: 18.0

    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


configure | 2 +- configure.ac | 2 +- meson.build | 6 +++++- 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' [parent: 498f13075691]