aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2019-02-01 16:27:44 +0000
committerJoseph Myers <joseph@codesourcery.com>2019-02-01 16:27:44 +0000
commit4dcbbc3b28aaeafe23e1a30db84055aa6f6fa987 (patch)
tree5c27f8bc1e4c754f703653a0e6144e5add0dd3f5
parent6175507c06de56e03407004bd2f289ed2cce034d (diff)
downloadglibc-4dcbbc3b28aaeafe23e1a30db84055aa6f6fa987.zip
glibc-4dcbbc3b28aaeafe23e1a30db84055aa6f6fa987.tar.gz
glibc-4dcbbc3b28aaeafe23e1a30db84055aa6f6fa987.tar.bz2
Require GCC 6.2 or later to build glibc.
As discussed during development for glibc 2.29, when we increased the required minimum GCC version for building glibc to GCC 5, working purely based on the times at which such requirements have been increased in the past it would be appropriate for glibc 2.30 to require GCC 6 (matching GCC 4.9 having been required for glibc 2.26). Naming 6.2 specifically as the minimum version then means a separate version requirement no longer needs to be specified for powerpc64le. Thus, this patch increases the minimum to 6.2, removing the documentation of the separate requirement for powerpc64le. It does not remove the powerpc64le configure test, or any __GNUC_PREREQ that could be removed as not being in installed headers or files shared with gnulib; I think such cleanups are best done separately. Tested for x86_64. * configure.ac (libc_cv_compiler_ok): Require GCC 6.2 or later. * configure: Regenerated. * manual/install.texi (Tools for Compilation): Update minimum GCC version. * INSTALL: Regenerated.
-rw-r--r--ChangeLog8
-rw-r--r--INSTALL9
-rw-r--r--NEWS5
-rwxr-xr-xconfigure2
-rw-r--r--configure.ac2
-rw-r--r--manual/install.texi8
6 files changed, 18 insertions, 16 deletions
diff --git a/ChangeLog b/ChangeLog
index 292d11d..148e9fb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2019-02-01 Joseph Myers <joseph@codesourcery.com>
+
+ * configure.ac (libc_cv_compiler_ok): Require GCC 6.2 or later.
+ * configure: Regenerated.
+ * manual/install.texi (Tools for Compilation): Update minimum GCC
+ version.
+ * INSTALL: Regenerated.
+
2019-02-01 Florian Weimer <fweimer@redhat.com>
* support/support_test_compare_string.c
diff --git a/INSTALL b/INSTALL
index a24ffcc..ddb9e90 100644
--- a/INSTALL
+++ b/INSTALL
@@ -459,19 +459,14 @@ 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 5 or newer
+ * GCC 6.2 or newer
- GCC 5 or higher is required. In general it is recommended to use
+ GCC 6.2 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.2.1 is the newest compiler
verified to work to build the GNU C Library.
- For PowerPC 64-bits little-endian (powerpc64le), GCC 6.2 or higher
- is required. This compiler version is the first to provide the
- features required for building the GNU C Library with support for
- '_Float128'.
-
For multi-arch support it is recommended to use a GCC which has
been built with support for GNU indirect functions. This ensures
that correct debugging information is generated for functions
diff --git a/NEWS b/NEWS
index 38ffd10..5cf568a 100644
--- a/NEWS
+++ b/NEWS
@@ -17,7 +17,10 @@ Deprecated and removed features, and other changes affecting compatibility:
Changes to build and runtime requirements:
- [Add changes to build and runtime requirements here]
+* GCC 6.2 or later is required to build the GNU C Library.
+
+ Older GCC versions and non-GNU compilers are still supported when
+ compiling programs that use the GNU C Library.
Security related changes:
diff --git a/configure b/configure
index 101dfdd..2643db9 100755
--- a/configure
+++ b/configure
@@ -5119,7 +5119,7 @@ int
main ()
{
-#if !defined __GNUC__ || __GNUC__ < 5
+#if !defined __GNUC__ || __GNUC__ < 6 || (__GNUC__ == 6 && __GNUC_MINOR__ < 2)
#error insufficient compiler
#endif
;
diff --git a/configure.ac b/configure.ac
index 46a7468..ad50e29 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__ < 5
+#if !defined __GNUC__ || __GNUC__ < 6 || (__GNUC__ == 6 && __GNUC_MINOR__ < 2)
#error insufficient compiler
#endif],
[libc_cv_compiler_ok=yes],
diff --git a/manual/install.texi b/manual/install.texi
index 2cfa387..a9b8b49 100644
--- a/manual/install.texi
+++ b/manual/install.texi
@@ -499,18 +499,14 @@ As of relase time, GNU @code{make} 4.2.1 is the newest verified to work
to build @theglibc{}.
@item
-GCC 5 or newer
+GCC 6.2 or newer
-GCC 5 or higher is required. In general it is recommended to use
+GCC 6.2 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.2.1 is the newest compiler verified to work to build
@theglibc{}.
-For PowerPC 64-bits little-endian (powerpc64le), GCC 6.2 or higher is
-required. This compiler version is the first to provide the features
-required for building @theglibc{} with support for @code{_Float128}.
-
For multi-arch support it is recommended to use a GCC which has been built with
support for GNU indirect functions. This ensures that correct debugging
information is generated for functions selected by IFUNC resolvers. This