From: Joseph Myers Date: Mon, 19 Jun 2017 16:33:00 +0000 (+0000) Subject: Require GCC 4.9 or later for building glibc. X-Git-Tag: glibc-2.26~312 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4add86749a31f302674599b69d2eea691d69341a;p=thirdparty%2Fglibc.git Require GCC 4.9 or later for building glibc. This patch makes configure require GCC 4.9 or later for building glibc, and documents that requirement. Requiring GCC 4.9 or later allows use of _Generic (as in tzcode). It would allow and _Atomic to be used as well if desired, although we need to avoid any libatomic dependencies on any platforms. This patch is explicitly the minimum to implement a new version requirement, with any consequent cleanups of conditional code (not in installed headers or files shared with gnulib etc.) to be done separately. Tested for x86_64. * configure.ac (libc_cv_compiler_ok): Require GCC 4.9 or later. * configure: Regenerated. * manual/install.texi (Tools for Compilation): Document requirement for GCC 4.9 or later. * INSTALL: Regenerated. --- diff --git a/ChangeLog b/ChangeLog index 3b61f167d22..b3d39a23fdc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2017-06-19 Joseph Myers + + * configure.ac (libc_cv_compiler_ok): Require GCC 4.9 or later. + * configure: Regenerated. + * manual/install.texi (Tools for Compilation): Document + requirement for GCC 4.9 or later. + * INSTALL: Regenerated. + 2017-06-19 Florian Weimer [BZ #21624] diff --git a/INSTALL b/INSTALL index a2f5a40b174..71af35b1eb1 100644 --- a/INSTALL +++ b/INSTALL @@ -420,9 +420,9 @@ build the GNU C Library: recommend GNU 'make' version 3.79. All earlier versions have severe bugs or lack features. - * GCC 4.7 or newer + * GCC 4.9 or newer - GCC 4.7 or higher is required. In general it is recommended to use + GCC 4.9 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 6.3 is the newest compiler diff --git a/NEWS b/NEWS index 9ee22185e8b..f81d02f1cb5 100644 --- a/NEWS +++ b/NEWS @@ -107,6 +107,10 @@ Version 2.26 PTRACE_DISABLE_TE and PTRACE_TE_ABORT_RAND were added as those are supported by the s390 kernel. +* The minimum GCC version that can be used to build this version of the GNU + C Library is GCC 4.9. Older GCC versions, and non-GNU compilers, can + still be used to compile programs using the GNU C Library. + Security related changes: * The DNS stub resolver limits the advertised UDP buffer size to 1200 bytes, diff --git a/configure b/configure index 8390f2b86e3..97a2dadf2dd 100755 --- a/configure +++ b/configure @@ -5058,7 +5058,7 @@ int main () { -#if !defined __GNUC__ || __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 7) +#if !defined __GNUC__ || __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 9) #error insufficient compiler #endif ; diff --git a/configure.ac b/configure.ac index 4c0a18edd95..16e97d3930b 100644 --- a/configure.ac +++ b/configure.ac @@ -1105,7 +1105,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__ < 7) +#if !defined __GNUC__ || __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 9) #error insufficient compiler #endif], [libc_cv_compiler_ok=yes], diff --git a/manual/install.texi b/manual/install.texi index cbc912817aa..65174a8b2ec 100644 --- a/manual/install.texi +++ b/manual/install.texi @@ -467,9 +467,9 @@ recommend GNU @code{make} version 3.79. All earlier versions have severe bugs or lack features. @item -GCC 4.7 or newer +GCC 4.9 or newer -GCC 4.7 or higher is required. In general it is recommended to use +GCC 4.9 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 6.3 is the newest compiler verified to work to build