This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch roland/arm created. glibc-2.19-765-gcc13f78
- From: roland at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 4 Jul 2014 01:43:04 -0000
- Subject: GNU C Library master sources branch roland/arm created. glibc-2.19-765-gcc13f78
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, roland/arm has been created
at cc13f78874221ec106032cef0495f63b313640a1 (commit)
- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=cc13f78874221ec106032cef0495f63b313640a1
commit cc13f78874221ec106032cef0495f63b313640a1
Author: Roland McGrath <roland@hack.frob.com>
Date: Thu Jul 3 18:41:51 2014 -0700
ARM: Clean up EABI-related configury
diff --git a/ChangeLog b/ChangeLog
index 5eb0d43..121132b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2014-07-03 Roland McGrath <roland@hack.frob.com>
+
+ * sysdeps/arm/preconfigure.ac: Apply EABI sanity check to arm*, not
+ just Linux configurations. Test empirically that the compiler sets
+ __ARM_EABI__, rather than using the tuple to decide.
+ * sysdeps/unix/sysv/linux/arm/configure: File removed.
+ * sysdeps/unix/sysv/linux/arm/configure.ac: File removed,
+ contents appended ...
+ * sysdeps/arm/configure.ac: ... here.
+ * sysdeps/arm/configure: Regenerated.
+
2014-07-03 Richard Henderson <rth@redhat.com>
* sysdeps/alpha/fpu/s_nearbyintf.c: Remove file.
diff --git a/sysdeps/arm/configure b/sysdeps/arm/configure
index 860f412..fe86006 100644
--- a/sysdeps/arm/configure
+++ b/sysdeps/arm/configure
@@ -210,3 +210,11 @@ else
config_vars="$config_vars
have-arm-tls-desc = no"
fi
+
+libc_cv_gcc_unwind_find_fde=no
+
+# Remove -fno-unwind-tables that was added in sysdeps/arm/preconfigure.ac.
+CFLAGS=${CFLAGS% -fno-unwind-tables}
+
+libc_cv_gcc_exceptions=yes
+exceptions=-fexceptions
diff --git a/sysdeps/arm/configure.ac b/sysdeps/arm/configure.ac
index f1d9804..86c0c08 100644
--- a/sysdeps/arm/configure.ac
+++ b/sysdeps/arm/configure.ac
@@ -39,3 +39,14 @@ if test $libc_cv_arm_tls_desc = yes; then
else
LIBC_CONFIG_VAR([have-arm-tls-desc], [no])
fi
+
+libc_cv_gcc_unwind_find_fde=no
+
+# Remove -fno-unwind-tables that was added in sysdeps/arm/preconfigure.ac.
+CFLAGS=${CFLAGS% -fno-unwind-tables}
+
+dnl The normal configure check for gcc -fexecptions fails because it can't
+dnl find __aeabi_unwind_cpp_pr0. Work around this here; our GCC definitely
+dnl has -fexceptions.
+libc_cv_gcc_exceptions=yes
+exceptions=-fexceptions
diff --git a/sysdeps/arm/preconfigure b/sysdeps/arm/preconfigure
index b3124ed..59d776d 100644
--- a/sysdeps/arm/preconfigure
+++ b/sysdeps/arm/preconfigure
@@ -3,22 +3,36 @@
case "$machine" in
arm*)
- case $config_os in
- linux-gnueabi*)
- # If the compiler enables unwind tables by default, this causes
- # problems with undefined symbols in -nostdlib link tests. To
- # avoid this, add -fno-unwind-tables here and remove it in
- # sysdeps/unix/sysv/linux/arm/configure.ac after those tests have
- # been run.
- if test "${CFLAGS+set}" != "set"; then
- CFLAGS="-g -O2"
- fi
- CFLAGS="$CFLAGS -fno-unwind-tables"
- ;;
- linux*)
- as_fn_error $? "Old ABI no longer supported" "$LINENO" 5
- ;;
- esac
+
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#if !__ARM_EABI__
+#error
+#endif
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+else
+ as_fn_error $? "Old ABI no longer supported" "$LINENO" 5
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+ # If the compiler enables unwind tables by default, this causes
+ # problems with undefined symbols in -nostdlib link tests. To
+ # avoid this, add -fno-unwind-tables here and remove it in
+ # sysdeps/arm/configure.ac after those tests have been run.
+ if test "${CFLAGS+set}" != "set"; then
+ CFLAGS="-g -O2"
+ fi
+ CFLAGS="$CFLAGS -fno-unwind-tables"
base_machine=arm
# Lets ask the compiler which ARM family we've got
diff --git a/sysdeps/arm/preconfigure.ac b/sysdeps/arm/preconfigure.ac
index 39c8621..d78817b 100644
--- a/sysdeps/arm/preconfigure.ac
+++ b/sysdeps/arm/preconfigure.ac
@@ -3,22 +3,19 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
case "$machine" in
arm*)
- case $config_os in
- linux-gnueabi*)
- # If the compiler enables unwind tables by default, this causes
- # problems with undefined symbols in -nostdlib link tests. To
- # avoid this, add -fno-unwind-tables here and remove it in
- # sysdeps/unix/sysv/linux/arm/configure.ac after those tests have
- # been run.
- if test "${CFLAGS+set}" != "set"; then
- CFLAGS="-g -O2"
- fi
- CFLAGS="$CFLAGS -fno-unwind-tables"
- ;;
- linux*)
- AC_MSG_ERROR([Old ABI no longer supported])
- ;;
- esac
+ AC_TRY_COMPILE([
+#if !__ARM_EABI__
+#error
+#endif], [], [], [AC_MSG_ERROR([Old ABI no longer supported])])
+
+ # If the compiler enables unwind tables by default, this causes
+ # problems with undefined symbols in -nostdlib link tests. To
+ # avoid this, add -fno-unwind-tables here and remove it in
+ # sysdeps/arm/configure.ac after those tests have been run.
+ if test "${CFLAGS+set}" != "set"; then
+ CFLAGS="-g -O2"
+ fi
+ CFLAGS="$CFLAGS -fno-unwind-tables"
base_machine=arm
# Lets ask the compiler which ARM family we've got
diff --git a/sysdeps/microblaze/nptl/tls.h b/sysdeps/microblaze/nptl/tls.h
index 760fb6c..37d6465 100644
--- a/sysdeps/microblaze/nptl/tls.h
+++ b/sysdeps/microblaze/nptl/tls.h
@@ -99,7 +99,7 @@ static inline void *__microblaze_get_thread_area (void)
/* Code to initially initialize the thread pointer.
r21 is reserved for thread pointer. */
# define TLS_INIT_TP(tcbp) \
- ({ __asm __volatile ("or r21,r0,%0" : : "r" ((void *)tcbp)); 0; })
+ ({ __asm __volatile ("or r21,r0,%0" : : "r" ((void *)tcbp)); NULL; })
# define TLS_DEFINE_INIT_TP(tp, pd) void *tp = (pd) + 1
diff --git a/sysdeps/unix/sysv/linux/arm/configure b/sysdeps/unix/sysv/linux/arm/configure
deleted file mode 100644
index ef97ff6..0000000
--- a/sysdeps/unix/sysv/linux/arm/configure
+++ /dev/null
@@ -1,9 +0,0 @@
-# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
- # Local configure fragment for sysdeps/unix/sysv/linux/arm.
-
-libc_cv_gcc_unwind_find_fde=no
-# Remove -fno-unwind-tables that was added in sysdeps/arm/preconfigure.ac.
-CFLAGS=${CFLAGS% -fno-unwind-tables}
-
-libc_cv_gcc_exceptions=yes
-exceptions=-fexceptions
diff --git a/sysdeps/unix/sysv/linux/arm/configure.ac b/sysdeps/unix/sysv/linux/arm/configure.ac
deleted file mode 100644
index 8d4c48b..0000000
--- a/sysdeps/unix/sysv/linux/arm/configure.ac
+++ /dev/null
@@ -1,12 +0,0 @@
-GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
-# Local configure fragment for sysdeps/unix/sysv/linux/arm.
-
-libc_cv_gcc_unwind_find_fde=no
-# Remove -fno-unwind-tables that was added in sysdeps/arm/preconfigure.ac.
-CFLAGS=${CFLAGS% -fno-unwind-tables}
-
-dnl The normal configure check for gcc -fexecptions fails because it can't
-dnl find __aeabi_unwind_cpp_pr0. Work around this here; our GCC definitely
-dnl has -fexceptions.
-libc_cv_gcc_exceptions=yes
-exceptions=-fexceptions
-----------------------------------------------------------------------
hooks/post-receive
--
GNU C Library master sources