Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 32a7deb

Browse files
committed
Define _POSIX_C_SOURCE as 200112L on Solaris.
This is an attempt to suppress some compiler warnings that appeared in the wake of commit 7f798ac: it seems that by default Solaris/illumos declares shmdt() to take "char *" not "void *". We'd like the system headers to provide modern POSIX APIs, and POSIX 2001 seems to be as modern as is available there. illumos' standards(7) man page suggests that we might also need to define __EXTENSIONS__, but let's see what happens with just this. Discussion: https://postgr.es/m/1654508.1733162761@sss.pgh.pa.us
1 parent 3c5f9f1 commit 32a7deb

File tree

3 files changed

+9
-7
lines changed

3 files changed

+9
-7
lines changed

configure

+3-3
Original file line numberDiff line numberDiff line change
@@ -7590,10 +7590,10 @@ $as_echo "#define PROFILE_PID_DIR 1" >>confdefs.h
75907590
fi
75917591
fi
75927592

7593-
# On Solaris, we need this #define to get POSIX-conforming versions
7594-
# of many interfaces (sigwait, getpwuid_r, ...).
7593+
# On Solaris, we need these #defines to get POSIX-conforming versions
7594+
# of many interfaces (sigwait, getpwuid_r, shmdt, ...).
75957595
if test "$PORTNAME" = "solaris"; then
7596-
CPPFLAGS="$CPPFLAGS -D_POSIX_PTHREAD_SEMANTICS"
7596+
CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE=200112L -D_POSIX_PTHREAD_SEMANTICS"
75977597
fi
75987598

75997599
# We already have this in Makefile.win32, but configure needs it too

configure.ac

+3-3
Original file line numberDiff line numberDiff line change
@@ -693,10 +693,10 @@ if test "$enable_profiling" = yes && test "$ac_cv_prog_cc_g" = yes; then
693693
fi
694694
fi
695695

696-
# On Solaris, we need this #define to get POSIX-conforming versions
697-
# of many interfaces (sigwait, getpwuid_r, ...).
696+
# On Solaris, we need these #defines to get POSIX-conforming versions
697+
# of many interfaces (sigwait, getpwuid_r, shmdt, ...).
698698
if test "$PORTNAME" = "solaris"; then
699-
CPPFLAGS="$CPPFLAGS -D_POSIX_PTHREAD_SEMANTICS"
699+
CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE=200112L -D_POSIX_PTHREAD_SEMANTICS"
700700
fi
701701

702702
# We already have this in Makefile.win32, but configure needs it too

meson.build

+3-1
Original file line numberDiff line numberDiff line change
@@ -261,7 +261,9 @@ elif host_system == 'openbsd'
261261
elif host_system == 'sunos'
262262
portname = 'solaris'
263263
export_fmt = '-Wl,-M@0@'
264-
cppflags += '-D_POSIX_PTHREAD_SEMANTICS'
264+
# We need these #defines to get POSIX-conforming versions
265+
# of many interfaces (sigwait, getpwuid_r, shmdt, ...).
266+
cppflags += [ '-D_POSIX_C_SOURCE=200112L', '-D_POSIX_PTHREAD_SEMANTICS' ]
265267

266268
elif host_system == 'windows'
267269
portname = 'win32'

0 commit comments

Comments
 (0)