aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2018-12-21 17:53:40 +0000
committerJoseph Myers <joseph@codesourcery.com>2018-12-21 17:53:40 +0000
commit192963be49678b48f60218f1f794991cdd9fe472 (patch)
treede9988c14e213591d5cf2a1b97092454516b6d22
parentc0e82f117357a941e4d40fcc08babbd6a3c3a1b5 (diff)
downloadglibc-192963be49678b48f60218f1f794991cdd9fe472.tar
glibc-192963be49678b48f60218f1f794991cdd9fe472.tar.gz
glibc-192963be49678b48f60218f1f794991cdd9fe472.tar.bz2
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--ChangeLog9
-rw-r--r--INSTALL4
-rw-r--r--NEWS6
-rwxr-xr-xconfigure2
-rw-r--r--configure.ac2
-rw-r--r--manual/install.texi4
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