Skip to content

Commit

Permalink
Require GCC 4.6 or later to build glibc.
Browse files Browse the repository at this point in the history
As discussed in the thread starting at
<https://sourceware.org/ml/libc-alpha/2014-10/msg00792.html>, 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 <https://sourceware.org/glibc/wiki/Release> 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.
  • Loading branch information
Joseph Myers committed Nov 14, 2014
1 parent c1b0aad commit 4863355
Show file tree
Hide file tree
Showing 6 changed files with 25 additions and 8 deletions.
7 changes: 7 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
2014-11-14 Joseph Myers <joseph@codesourcery.com>

* 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.
Expand Down
9 changes: 6 additions & 3 deletions INSTALL
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand Down
4 changes: 4 additions & 0 deletions NEWS
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
2 changes: 1 addition & 1 deletion configure
Original file line number Diff line number Diff line change
Expand Up @@ -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
;
Expand Down
2 changes: 1 addition & 1 deletion configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -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],
Expand Down
9 changes: 6 additions & 3 deletions manual/install.texi
Original file line number Diff line number Diff line change
Expand Up @@ -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{}.
Expand Down

0 comments on commit 4863355

Please sign in to comment.