From 4863355ad52b71fecd7529928999074afdc4d51f Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Fri, 14 Nov 2014 18:00:34 +0000 Subject: [PATCH] Require GCC 4.6 or later to build glibc. As discussed in the thread starting at , and continuing into November, this patch increases the minimum GCC version for building glibc to 4.6 (there seemed to be no clear consensus for 4.7). In particular, this allows us to use #pragma GCC diagnostic for fine-grained warning control with -Werror (subject to establishing a suitable policy for that use). The documentation has a statement, as requested, about the most recent GCC version tested for building glibc, and I've updated to refer to updating that statement. A NEWS entry is added for this change, although previous such changes didn't get them. Tested for x86_64 (testsuite, and that installed shared libraries are unchanged by this patch). * configure.ac (libc_cv_compiler_ok): Require GCC 4.6 or later. * configure: Regenerated. * manual/install.texi (Tools for Compilation): Document a requirement of GCC 4.6 or later and that GCC 4.9 is the newest compiler verified to work. * INSTALL: Regenerated. --- ChangeLog | 7 +++++++ INSTALL | 9 ++++++--- NEWS | 4 ++++ configure | 2 +- configure.ac | 2 +- manual/install.texi | 9 ++++++--- 6 files changed, 25 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 8448f28f23..496467e1c7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ 2014-11-14 Joseph Myers + * configure.ac (libc_cv_compiler_ok): Require GCC 4.6 or later. + * configure: Regenerated. + * manual/install.texi (Tools for Compilation): Document a + requirement of GCC 4.6 or later and that GCC 4.9 is the newest + compiler verified to work. + * INSTALL: Regenerated. + * include/string.h [NO_MEMPCPY_STPCPY_REDIRECT] (mempcpy): Do not redeclare with asm name. [NO_MEMPCPY_STPCPY_REDIRECT] (stpcpy): Likewise. diff --git a/INSTALL b/INSTALL index 3130c2a27c..dac6178bac 100644 --- a/INSTALL +++ b/INSTALL @@ -329,10 +329,13 @@ build the GNU C Library: recommend GNU `make' version 3.79. All earlier versions have severe bugs or lack features. - * GCC 4.4 or newer, GCC 4.6 recommended + * GCC 4.6 or newer - GCC 4.4 or higher is required; as of this writing, GCC 4.6 is the - compiler we advise to use to build the GNU C Library. + GCC 4.6 or higher is required. In general it is recommended to use + the newest version of the compiler that is known to work for + building the GNU C Library, as newer compilers usually produce + better code. As of release time, GCC 4.9 is the newest compiler + verified to work to build the GNU C Library. You can use whatever compiler you like to compile programs that use the GNU C Library. diff --git a/NEWS b/NEWS index c582c8e559..867d659afb 100644 --- a/NEWS +++ b/NEWS @@ -14,6 +14,10 @@ Version 2.21 17555, 17570, 17571, 17572, 17573, 17574, 17582, 17583, 17584, 17585, 17589, 17594. +* The minimum GCC version that can be used to build this version of the GNU + C Library is GCC 4.6. Older GCC versions, and non-GNU compilers, can + still be used to compile programs using the GNU C Library. + * New locales: tu_IN, bh_IN. Version 2.20 diff --git a/configure b/configure index 3c161be38b..0cb54ec363 100755 --- a/configure +++ b/configure @@ -4929,7 +4929,7 @@ int main () { -#if !defined __GNUC__ || __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 4) +#if !defined __GNUC__ || __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 6) #error insufficient compiler #endif ; diff --git a/configure.ac b/configure.ac index a982407d48..b2c4b1fab8 100644 --- a/configure.ac +++ b/configure.ac @@ -934,7 +934,7 @@ AC_CHECK_PROG_VER(AWK, gawk, --version, AC_CACHE_CHECK([if $CC is sufficient to build libc], libc_cv_compiler_ok, [ AC_TRY_COMPILE([], [ -#if !defined __GNUC__ || __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 4) +#if !defined __GNUC__ || __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 6) #error insufficient compiler #endif], [libc_cv_compiler_ok=yes], diff --git a/manual/install.texi b/manual/install.texi index e1c2b9a2a4..1eafb6ec32 100644 --- a/manual/install.texi +++ b/manual/install.texi @@ -372,10 +372,13 @@ recommend GNU @code{make} version 3.79. All earlier versions have severe bugs or lack features. @item -GCC 4.4 or newer, GCC 4.6 recommended +GCC 4.6 or newer -GCC 4.4 or higher is required; as of this writing, GCC 4.6 is the -compiler we advise to use to build @theglibc{}. +GCC 4.6 or higher is required. In general it is recommended to use +the newest version of the compiler that is known to work for building +@theglibc{}, as newer compilers usually produce better code. As of +release time, GCC 4.9 is the newest compiler verified to work to build +@theglibc{}. You can use whatever compiler you like to compile programs that use @theglibc{}.