summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2015-10-27 21:47:22 +0000
committerJoseph Myers <joseph@codesourcery.com>2015-10-27 21:47:22 +0000
commit783dd2d3af5aad76829e61ab5abeac5d466971f6 (patch)
treeca5241bb4e2ed9dcc33ff2e44eb924d9e8a2f283
parent3e2ee6f0e3471ceb4c49f8287676a7050401bf8f (diff)
downloadglibc-783dd2d3af5aad76829e61ab5abeac5d466971f6.tar.gz
glibc-783dd2d3af5aad76829e61ab5abeac5d466971f6.tar.xz
glibc-783dd2d3af5aad76829e61ab5abeac5d466971f6.zip
Use -std=gnu11 instead of -std=gnu99.
Now that GCC 4.7 or later is required to build glibc, this patch moves
the build from using -std=gnu99 to -std=gnu11 (option added in 4.7).
This allows use of C11 features from GCC's headers, such as new
float.h macros and max_align_t.

Tested for x86_64 and x86 (testsuite; installed stripped shared
libraries are unchanged by the patch on x86_64, while I see some
slight code reordering of no significance on x86).

	* Makeconfig (CFLAGS): Use -std=gnu11 instead of -std=gnu99.
	* Makefile ($(objpfx)c++-types-check.out): Filter out -std=gnu11
	instead of -std=gnu99.
	* configure.ac (systemtap): Test with -std=gnu11 instead of
	-std=gnu99.
	* configure: Regenerated.
	* math/gen-auto-libm-tests.c: Use -std=gnu11 instead of -std=gnu99
	in compilation command in comment.
-rw-r--r--ChangeLog9
-rw-r--r--Makeconfig2
-rw-r--r--Makefile2
-rwxr-xr-xconfigure2
-rw-r--r--configure.ac2
-rw-r--r--math/gen-auto-libm-tests.c2
6 files changed, 14 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index a9cfb3b397..54471b2423 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
 2015-10-27  Joseph Myers  <joseph@codesourcery.com>
 
+	* Makeconfig (CFLAGS): Use -std=gnu11 instead of -std=gnu99.
+	* Makefile ($(objpfx)c++-types-check.out): Filter out -std=gnu11
+	instead of -std=gnu99.
+	* configure.ac (systemtap): Test with -std=gnu11 instead of
+	-std=gnu99.
+	* configure: Regenerated.
+	* math/gen-auto-libm-tests.c: Use -std=gnu11 instead of -std=gnu99
+	in compilation command in comment.
+
 	* sysdeps/nptl/configure.ac: Remove file.
 	* sysdeps/nptl/configure: Remove generated file.
 	* configure.ac (libc_cv_forced_unwind): Do not substitute.
diff --git a/Makeconfig b/Makeconfig
index c0f5e64ef5..3c5d71e114 100644
--- a/Makeconfig
+++ b/Makeconfig
@@ -882,7 +882,7 @@ CPPFLAGS = $(config-extra-cppflags) $(CPPUNDEFS) $(CPPFLAGS-config) \
 	   $(foreach lib,$(libof-$(basename $(@F))) \
 			 $(libof-$(<F)) $(libof-$(@F)),$(CPPFLAGS-$(lib))) \
 	   $(CPPFLAGS-$(<F)) $(CPPFLAGS-$(@F)) $(CPPFLAGS-$(basename $(@F)))
-override CFLAGS	= -std=gnu99 -fgnu89-inline $(config-extra-cflags) \
+override CFLAGS	= -std=gnu11 -fgnu89-inline $(config-extra-cflags) \
 		  $(filter-out %frame-pointer,$(+cflags)) $(+gccwarn-c) \
 		  $(sysdep-CFLAGS) $(CFLAGS-$(suffix $@)) $(CFLAGS-$(<F)) \
 		  $(CFLAGS-$(@F)) $(tls-model) \
diff --git a/Makefile b/Makefile
index 8ab0dbcb75..1d800e30bb 100644
--- a/Makefile
+++ b/Makefile
@@ -256,7 +256,7 @@ ifneq ($(CXX),no)
 vpath c++-types.data $(+sysdep_dirs)
 
 $(objpfx)c++-types-check.out: c++-types.data scripts/check-c++-types.sh
-	scripts/check-c++-types.sh $< $(CXX) $(filter-out -std=gnu99 $(+gccwarn-c),$(CFLAGS)) $(CPPFLAGS) > $@; \
+	scripts/check-c++-types.sh $< $(CXX) $(filter-out -std=gnu11 $(+gccwarn-c),$(CFLAGS)) $(CPPFLAGS) > $@; \
 	$(evaluate-test)
 endif
 
diff --git a/configure b/configure
index 22e18aa69e..d8e2a68295 100755
--- a/configure
+++ b/configure
@@ -3579,7 +3579,7 @@ if ${libc_cv_sdt+:} false; then :
   $as_echo_n "(cached) " >&6
 else
     old_CFLAGS="$CFLAGS"
-  CFLAGS="-std=gnu99 $CFLAGS"
+  CFLAGS="-std=gnu11 $CFLAGS"
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <sys/sdt.h>
diff --git a/configure.ac b/configure.ac
index 784b3bd120..ffa44ce6d8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -353,7 +353,7 @@ AC_ARG_ENABLE([systemtap],
 if test "x$systemtap" != xno; then
   AC_CACHE_CHECK([for systemtap static probe support], libc_cv_sdt, [dnl
   old_CFLAGS="$CFLAGS"
-  CFLAGS="-std=gnu99 $CFLAGS"
+  CFLAGS="-std=gnu11 $CFLAGS"
   AC_COMPILE_IFELSE([AC_LANG_SOURCE([[#include <sys/sdt.h>
 void foo (int i, void *p)
 {
diff --git a/math/gen-auto-libm-tests.c b/math/gen-auto-libm-tests.c
index 03ec6c4987..2b7bb5a64e 100644
--- a/math/gen-auto-libm-tests.c
+++ b/math/gen-auto-libm-tests.c
@@ -18,7 +18,7 @@
 
 /* Compile this program as:
 
-   gcc -std=gnu99 -O2 -Wall -Wextra gen-auto-libm-tests.c -lmpc -lmpfr -lgmp \
+   gcc -std=gnu11 -O2 -Wall -Wextra gen-auto-libm-tests.c -lmpc -lmpfr -lgmp \
      -o gen-auto-libm-tests
 
    (use of current MPC and MPFR versions recommended) and run it as: