summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorBenjamin Peterson <benjamin@python.org>2016-09-09 10:22:45 -0700
committerBenjamin Peterson <benjamin@python.org>2016-09-09 10:22:45 -0700
commit93b2dee80e5d72cf12522d773b512097493c09fc (patch)
tree0845e120eeed61bfbbbaff4b310994c16796e799 /configure.ac
parent52a7e375554914079d38b60e3417b5bea5ed5010 (diff)
downloadcpython-git-93b2dee80e5d72cf12522d773b512097493c09fc.tar.gz
compile with -std=c99 instead of -std=gnu99; use kiddie-gloves with bluetooth/bluetooh.h (#28017)
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac13
1 files changed, 9 insertions, 4 deletions
diff --git a/configure.ac b/configure.ac
index 06e6841d79..67d3aefa61 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1520,9 +1520,7 @@ AC_SUBST(UNIVERSAL_ARCH_FLAGS)
# tweak BASECFLAGS based on compiler and platform
case $GCC in
yes)
- # GNU dialect of C99, enables GNU extensions like __attribute__. GNU99
- # is required by bluetooth.h on big endian machines.
- CFLAGS_NODIST="$CFLAGS_NODIST -std=gnu99"
+ CFLAGS_NODIST="$CFLAGS_NODIST -std=c99"
# Python doesn't violate C99 aliasing rules, but older versions of
# GCC produce warnings for legal Python code. Enable
@@ -1991,11 +1989,18 @@ sys/param.h sys/select.h sys/sendfile.h sys/socket.h sys/statvfs.h \
sys/stat.h sys/syscall.h sys/sys_domain.h sys/termio.h sys/time.h \
sys/times.h sys/types.h sys/uio.h sys/un.h sys/utsname.h sys/wait.h pty.h \
libutil.h sys/resource.h netpacket/packet.h sysexits.h bluetooth.h \
-bluetooth/bluetooth.h linux/tipc.h linux/random.h spawn.h util.h alloca.h endian.h \
+linux/tipc.h linux/random.h spawn.h util.h alloca.h endian.h \
sys/endian.h)
AC_HEADER_DIRENT
AC_HEADER_MAJOR
+# bluetooth/bluetooth.h has been known to not compile with -std=c99.
+# http://permalink.gmane.org/gmane.linux.bluez.kernel/22294
+SAVE_CFLAGS=$CFLAGS
+CFLAGS="-std=c99 $CFLAGS"
+AC_CHECK_HEADERS(bluetooth/bluetooth.h)
+CFLAGS=$SAVE_CFLAGS
+
# On Darwin (OS X) net/if.h requires sys/socket.h to be imported first.
AC_CHECK_HEADERS([net/if.h], [], [],
[#include <stdio.h>