This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Require GCC 4.4 or later to build glibc


This patch makes configure require GCC 4.4 or later and updates the
documented version requirement.

This is not in fact a new requirement.  wcsmbs/c16rtomb.c requires
<uchar.h> to define char16_t, which it does using __CHAR16_TYPE__ and
__CHAR32_TYPE__, which are new in GCC 4.4.  So building with 4.3 has
been broken since C11 support was added around a year and a half ago.
Given the lack of interest in fixing it, I think making configure and
documentation reflect reality is appropriate.

Note that several x86-specific configure tests (and maybe other
configure tests) are obsolete with this version requirement, and may
have been obsolete before.  4.4 installs cpuid.h and supports -msse4,
-mavx and -msse2avx; those don't need testing for.  (-mfma4 and
-mno-vzeroupper do still need configure tests.)

This patch doesn't change anything about the version *recommendation*,
but in my view we should just refer to the current stable GCC release
rather than naming a specific version.

Tested x86_64.  (With GCC 4.7; I haven't tested if 4.4 actually still
works for building glibc.)

2013-06-26  Joseph Myers  <joseph@codesourcery.com>

	* configure.in (CC): Require GCC version 4.4 or later.
	* configure: Regenerated.
	* manual/install.texi (Tools for Compilation): Update GCC version
	requirement.
	* INSTALL: Regenerated.

diff --git a/INSTALL b/INSTALL
index 3281c04..a749293 100644
--- a/INSTALL
+++ b/INSTALL
@@ -315,9 +315,9 @@ build the GNU C Library:
      recommend GNU `make' version 3.79.  All earlier versions have
      severe bugs or lack features.
 
-   * GCC 4.3 or newer, GCC 4.6 recommended
+   * GCC 4.4 or newer, GCC 4.6 recommended
 
-     GCC 4.3 or higher is required; as of this writing, GCC 4.6 is the
+     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.
 
      You can use whatever compiler you like to compile programs that use
diff --git a/configure b/configure
index 14bff72..edde310 100755
--- a/configure
+++ b/configure
@@ -4678,7 +4678,7 @@ $as_echo_n "checking version of $CC... " >&6; }
   ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'`
   case $ac_prog_version in
     '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
-    4.[3-9].* | 4.[1-9][0-9].* | [5-9].* )
+    4.[4-9].* | 4.[1-9][0-9].* | [5-9].* )
        ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
     *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
 
diff --git a/configure.in b/configure.in
index 56cd61c..cc065db 100644
--- a/configure.in
+++ b/configure.in
@@ -966,7 +966,7 @@ AC_CHECK_PROG_VER(LD, $LD, --version,
 # These programs are version sensitive.
 AC_CHECK_TOOL_PREFIX
 AC_CHECK_PROG_VER(CC, ${ac_tool_prefix}gcc ${ac_tool_prefix}cc, -v,
-  [version \([egcygnustpi-]*[0-9.]*\)], [4.[3-9].* | 4.[1-9][0-9].* | [5-9].* ],
+  [version \([egcygnustpi-]*[0-9.]*\)], [4.[4-9].* | 4.[1-9][0-9].* | [5-9].* ],
   critic_missing="$critic_missing gcc")
 AC_CHECK_PROG_VER(MAKE, gnumake gmake make, --version,
   [GNU Make[^0-9]*\([0-9][0-9.]*\)],
diff --git a/manual/install.texi b/manual/install.texi
index 3608a11..96d3bef 100644
--- a/manual/install.texi
+++ b/manual/install.texi
@@ -353,9 +353,9 @@ recommend GNU @code{make} version 3.79.  All earlier versions have severe
 bugs or lack features.
 
 @item
-GCC 4.3 or newer, GCC 4.6 recommended
+GCC 4.4 or newer, GCC 4.6 recommended
 
-GCC 4.3 or higher is required; as of this writing, GCC 4.6 is the
+GCC 4.4 or higher is required; as of this writing, GCC 4.6 is the
 compiler we advise to use to build @theglibc{}.
 
 You can use whatever compiler you like to compile programs that use

-- 
Joseph S. Myers
joseph@codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]