diff options
author | Joseph Myers <joseph@codesourcery.com> | 2018-12-21 17:53:40 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2018-12-21 17:53:40 +0000 |
commit | 192963be49678b48f60218f1f794991cdd9fe472 (patch) | |
tree | de9988c14e213591d5cf2a1b97092454516b6d22 | |
parent | c0e82f117357a941e4d40fcc08babbd6a3c3a1b5 (diff) | |
download | glibc-192963be49678b48f60218f1f794991cdd9fe472.tar.gz glibc-192963be49678b48f60218f1f794991cdd9fe472.tar.xz glibc-192963be49678b48f60218f1f794991cdd9fe472.zip |
Require GCC 5 or later to build glibc (bug 23993).
We know that building glibc with GCC 4.9 is broken on various platforms (bug 23993). As it's more than a year since we last increased the minimum GCC version to build glibc, this patch changes the requirement to be GCC 5 or later (indeed, based on 4.9 having been required for building 2.26, it would be consistent in terms of timing to require GCC 6 or later from the 2.30 release onwards). It deliberately just updates the configure test and corresponding documentation, leaving removal of no-longer-needed __GNUC_PREREQ tests for a separate patch. In the NEWS entry, the requirement for a newer GCC version for powerpc64le is reiterated (as in the entry for the 4.9 requirement in 2.26) to avoid suggesting the version requirement there has gone down. (If that version goes up further as part of support for binary128 long double, of course the wording would change at that time.) Tested for x86_64. [BZ #23993] * configure.ac (libc_cv_compiler_ok): Require GCC 5 or later. * configure: Regenerated. * manual/install.texi (Tools for Compilation): Update minimum GCC version. * INSTALL: Regenerated.
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | INSTALL | 4 | ||||
-rw-r--r-- | NEWS | 6 | ||||
-rwxr-xr-x | configure | 2 | ||||
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | manual/install.texi | 4 |
6 files changed, 21 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog index 20f69c9e38..55a10b8bc8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2018-12-21 Joseph Myers <joseph@codesourcery.com> + + [BZ #23993] + * configure.ac (libc_cv_compiler_ok): Require GCC 5 or later. + * configure: Regenerated. + * manual/install.texi (Tools for Compilation): Update minimum GCC + version. + * INSTALL: Regenerated. + 2018-12-21 Istvan Kurucsai <pistukem@gmail.com> * malloc/malloc.c (munmap_chunk): Verify chunk alignment. diff --git a/INSTALL b/INSTALL index 268b7d63fa..672eb40640 100644 --- a/INSTALL +++ b/INSTALL @@ -459,9 +459,9 @@ build the GNU C Library: As of relase time, GNU 'make' 4.2.1 is the newest verified to work to build the GNU C Library. - * GCC 4.9 or newer + * GCC 5 or newer - GCC 4.9 or higher is required. In general it is recommended to use + GCC 5 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 8.1.1 is the newest compiler diff --git a/NEWS b/NEWS index 300e978de6..cd29ec7c81 100644 --- a/NEWS +++ b/NEWS @@ -72,6 +72,12 @@ Changes to build and runtime requirements: * Python 3.4 or later is required to build the GNU C Library. +* On most architectures, GCC 5 or later is required to build the GNU C + Library. (On powerpc64le, GCC 6.2 or later is still required, as before.) + + Older GCC versions and non-GNU compilers are still supported when + compiling programs that use the GNU C Library. + Security related changes: CVE-2018-19591: A file descriptor leak in if_nametoindex can lead to a diff --git a/configure b/configure index 535e2f62e0..101dfddf37 100755 --- a/configure +++ b/configure @@ -5119,7 +5119,7 @@ int main () { -#if !defined __GNUC__ || __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 9) +#if !defined __GNUC__ || __GNUC__ < 5 #error insufficient compiler #endif ; diff --git a/configure.ac b/configure.ac index 6cc10ede98..46a74687a6 100644 --- a/configure.ac +++ b/configure.ac @@ -1017,7 +1017,7 @@ AC_CHECK_PROG_VER(BISON, bison, --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__ < 9) +#if !defined __GNUC__ || __GNUC__ < 5 #error insufficient compiler #endif], [libc_cv_compiler_ok=yes], diff --git a/manual/install.texi b/manual/install.texi index 67e1e10e91..2a87a2725a 100644 --- a/manual/install.texi +++ b/manual/install.texi @@ -499,9 +499,9 @@ As of relase time, GNU @code{make} 4.2.1 is the newest verified to work to build @theglibc{}. @item -GCC 4.9 or newer +GCC 5 or newer -GCC 4.9 or higher is required. In general it is recommended to use +GCC 5 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 8.1.1 is the newest compiler verified to work to build |