[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[commits] r1485 - in /branches/eglibc-2_5/libc: ChangeLog.eglibc configure configure.in nptl/sysdeps/pthread/configure.in
- To: commits@xxxxxxxxxx
- Subject: [commits] r1485 - in /branches/eglibc-2_5/libc: ChangeLog.eglibc configure configure.in nptl/sysdeps/pthread/configure.in
- From: jimb@xxxxxxxxxx
- Date: Fri, 16 Feb 2007 22:41:46 -0000
Author: jimb
Date: Fri Feb 16 14:41:46 2007
New Revision: 1485
Log:
Make configuration script more friendly to cross-compilation.
* configure.in: Require at least binutils 2.17 and GCC 4.1.
* configure: Regenerated.
* nptl/sysdeps/pthread/configure.in: Disable link tests for forced
unwinding and C cleanup handling; always #define
HAVE_FORCED_UNWIND and set libc_cv_c_cleanup.
Modified:
branches/eglibc-2_5/libc/ChangeLog.eglibc
branches/eglibc-2_5/libc/configure
branches/eglibc-2_5/libc/configure.in
branches/eglibc-2_5/libc/nptl/sysdeps/pthread/configure.in
Modified: branches/eglibc-2_5/libc/ChangeLog.eglibc
==============================================================================
--- branches/eglibc-2_5/libc/ChangeLog.eglibc (original)
+++ branches/eglibc-2_5/libc/ChangeLog.eglibc Fri Feb 16 14:41:46 2007
@@ -1,5 +1,12 @@
2007-02-16 Jim Blandy <jimb@xxxxxxxxxxxxxxxx>
+ Make configuration script more friendly to cross-compilation.
+ * configure.in: Require at least binutils 2.17 and GCC 4.1.
+ * configure: Regenerated.
+ * nptl/sysdeps/pthread/configure.in: Disable link tests for forced
+ unwinding and C cleanup handling; always #define
+ HAVE_FORCED_UNWIND and set libc_cv_c_cleanup.
+
* Makefile: Amend make install-headers to install everything
necessary for building a cross-compiler. Install gnu/stubs.h as
part of 'install-headers', not 'install-others'.
Modified: branches/eglibc-2_5/libc/configure
==============================================================================
--- branches/eglibc-2_5/libc/configure (original)
+++ branches/eglibc-2_5/libc/configure Fri Feb 16 14:41:46 2007
@@ -3994,7 +3994,7 @@
gnu_ld=$libc_cv_prog_ld_gnu
-# Accept binutils 2.13 or newer.
+# Accept binutils 2.17 or newer.
for ac_prog in $AS
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
@@ -4044,7 +4044,7 @@
ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*GNU assembler.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
case $ac_prog_version in
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
- 2.1[3-9]*)
+ 2.1[7-9]* | 2.[2-9][0-9]* | [3-9].*)
ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
*) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
@@ -4105,7 +4105,7 @@
ac_prog_version=`$LD --version 2>&1 | sed -n 's/^.*GNU ld.* \([0-9][0-9]*\.[0-9.]*\).*$/\1/p'`
case $ac_prog_version in
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
- 2.1[3-9]*)
+ 2.1[7-9]* | 2.[2-9][0-9]* | [3-9].*)
ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
*) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
@@ -4171,6 +4171,7 @@
# These programs are version sensitive.
+# We require GCC 4.1 or later.
for ac_prog in ${ac_tool_prefix}gcc ${ac_tool_prefix}cc
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
@@ -4217,10 +4218,10 @@
# Found it, now check the version.
echo "$as_me:$LINENO: checking version of $CC" >&5
echo $ECHO_N "checking version of $CC... $ECHO_C" >&6
- ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'`
+ 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;;
- 3.4* | 4.[0-9]* )
+ 4.[1-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;;
Modified: branches/eglibc-2_5/libc/configure.in
==============================================================================
--- branches/eglibc-2_5/libc/configure.in (original)
+++ branches/eglibc-2_5/libc/configure.in Fri Feb 16 14:41:46 2007
@@ -839,13 +839,15 @@
LIBC_PROG_BINUTILS
AC_SUBST(MIG)dnl Needed by sysdeps/mach/configure.in
-# Accept binutils 2.13 or newer.
+# Accept binutils 2.17 or newer.
AC_CHECK_PROG_VER(AS, $AS, --version,
[GNU assembler.* \([0-9]*\.[0-9.]*\)],
- [2.1[3-9]*], AS=: critic_missing="$critic_missing as")
+ [2.1[7-9]* | 2.[2-9][0-9]* | [3-9].*],
+ AS=: critic_missing="$critic_missing as")
AC_CHECK_PROG_VER(LD, $LD, --version,
[GNU ld.* \([0-9][0-9]*\.[0-9.]*\)],
- [2.1[3-9]*], LD=: critic_missing="$critic_missing ld")
+ [2.1[7-9]* | 2.[2-9][0-9]* | [3-9].*],
+ LD=: critic_missing="$critic_missing ld")
# We need the physical current working directory. We cannot use the
# "pwd -P" shell builtin since that's not portable. Instead we try to
@@ -859,8 +861,9 @@
# These programs are version sensitive.
AC_CHECK_TOOL_PREFIX
+# We require GCC 4.1 or later.
AC_CHECK_PROG_VER(CC, ${ac_tool_prefix}gcc ${ac_tool_prefix}cc, -v,
- [version \([egcygnustpi-]*[0-9.]*\)], [3.4* | 4.[0-9]* ],
+ [version [egcygnustpi-]*\([0-9.]*\)], [4.[1-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.]*\)],
Modified: branches/eglibc-2_5/libc/nptl/sysdeps/pthread/configure.in
==============================================================================
--- branches/eglibc-2_5/libc/nptl/sysdeps/pthread/configure.in (original)
+++ branches/eglibc-2_5/libc/nptl/sysdeps/pthread/configure.in Fri Feb 16 14:41:46 2007
@@ -19,31 +19,41 @@
esac
fi
-dnl Iff <unwind.h> is available, make sure it is the right one and it
-dnl contains struct _Unwind_Exception.
-AC_CACHE_CHECK(dnl
-for forced unwind support, libc_cv_forced_unwind, [dnl
-AC_TRY_LINK([#include <unwind.h>], [
-struct _Unwind_Exception exc;
-struct _Unwind_Context *context;
-_Unwind_GetCFA (context)],
-libc_cv_forced_unwind=yes, libc_cv_forced_unwind=no)])
-if test $libc_cv_forced_unwind = yes; then
- AC_DEFINE(HAVE_FORCED_UNWIND)
-dnl Check for C cleanup handling.
- old_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -Werror -fexceptions"
- AC_CACHE_CHECK([for C cleanup handling], libc_cv_c_cleanup, [dnl
- AC_TRY_LINK([
-#include <stdio.h>
-void cl (void *a) { }], [
- int a __attribute__ ((cleanup (cl)));
- puts ("test")],
-libc_cv_c_cleanup=yes, libc_cv_c_cleanup=no)])
- CFLAGS="$old_CFLAGS"
- if test $libc_cv_c_cleanup = no; then
- AC_MSG_ERROR([the compiler must support C cleanup handling])
- fi
-else
- AC_MSG_ERROR(forced unwind support is required)
-fi
+dnl These link tests made bootstrapping EGLIBC difficult (how do you
+dnl link if you haven't built a libc yet?), and this test is only used
+dnl to produce an error message anyway. We've already checked the
+dnl GCC, as, and ld versions in the top-level configure script, and we
+dnl only use the results of these tests to produce an error message,
+dnl so we just disable these tests entirely.
+dnl
+dnl dnl Iff <unwind.h> is available, make sure it is the right one and it
+dnl dnl contains struct _Unwind_Exception.
+dnl AC_CACHE_CHECK(dnl
+dnl for forced unwind support, libc_cv_forced_unwind, [dnl
+dnl AC_TRY_LINK([#include <unwind.h>], [
+dnl struct _Unwind_Exception exc;
+dnl struct _Unwind_Context *context;
+dnl _Unwind_GetCFA (context)],
+dnl libc_cv_forced_unwind=yes, libc_cv_forced_unwind=no)])
+dnl if test $libc_cv_forced_unwind = yes; then
+dnl AC_DEFINE(HAVE_FORCED_UNWIND)
+dnl dnl Check for C cleanup handling.
+dnl old_CFLAGS="$CFLAGS"
+dnl CFLAGS="$CFLAGS -Werror -fexceptions"
+dnl AC_CACHE_CHECK([for C cleanup handling], libc_cv_c_cleanup, [dnl
+dnl AC_TRY_LINK([
+dnl #include <stdio.h>
+dnl void cl (void *a) { }], [
+dnl int a __attribute__ ((cleanup (cl)));
+dnl puts ("test")],
+dnl libc_cv_c_cleanup=yes, libc_cv_c_cleanup=no)])
+dnl CFLAGS="$old_CFLAGS"
+dnl if test $libc_cv_c_cleanup = no; then
+dnl AC_MSG_ERROR([the compiler must support C cleanup handling])
+dnl fi
+dnl else
+dnl AC_MSG_ERROR(forced unwind support is required)
+dnl fi
+libc_cv_forced_unwind=yes
+AC_DEFINE(HAVE_FORCED_UNWIND)
+libc_cv_c_cleanup=yes