From 783dd2d3af5aad76829e61ab5abeac5d466971f6 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Tue, 27 Oct 2015 21:47:22 +0000 Subject: [PATCH] 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. --- ChangeLog | 9 +++++++++ Makeconfig | 2 +- Makefile | 2 +- configure | 2 +- configure.ac | 2 +- math/gen-auto-libm-tests.c | 2 +- 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 + * 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-$( $@; \ + 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 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 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: