summaryrefslogtreecommitdiff
path: root/libitm
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2011-11-08 08:06:25 -0800
committerRichard Henderson <rth@gcc.gnu.org>2011-11-08 08:06:25 -0800
commit01f3428cafc13f5ae765d304494cac750892bb80 (patch)
tree257f6d91d2117a12fa1ed620ee8ebfeabd03a360 /libitm
parentf2906a8e9e0ed8aba6a7e39a1986f785e9d467f1 (diff)
downloadgcc-01f3428cafc13f5ae765d304494cac750892bb80.tar.gz
Check for libitm support at top-level.
From-SVN: r181168
Diffstat (limited to 'libitm')
-rw-r--r--libitm/ChangeLog7
-rw-r--r--libitm/configure4
-rw-r--r--libitm/configure.ac4
-rw-r--r--libitm/configure.tgt54
4 files changed, 28 insertions, 41 deletions
diff --git a/libitm/ChangeLog b/libitm/ChangeLog
index 33a45f7fbd3..f9624bb8ca0 100644
--- a/libitm/ChangeLog
+++ b/libitm/ChangeLog
@@ -1,3 +1,10 @@
+2011-11-08 Richard Henderson <rth@redhat.com>
+
+ * configure.ac: Exit if unsupported.
+ * configure: Rebuild.
+ * configure.tgt: Delete boilerplate from libgomp for unsupported
+ targets. Set UNSUPPORTED for unsupported targets.
+
2011-11-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* configure.tgt: Handle i386 like i[456]86.
diff --git a/libitm/configure b/libitm/configure
index 08d2993e06e..e6bc1aaa0dc 100644
--- a/libitm/configure
+++ b/libitm/configure
@@ -17003,6 +17003,10 @@ _ACEOF
# Get target configury.
. ${srcdir}/configure.tgt
+if test -n "$UNSUPPORTED"; then
+ as_fn_error "Configuration ${target} is unsupported." "$LINENO" 5
+fi
+
CFLAGS="$save_CFLAGS $XCFLAGS"
# Check for __sync_val_compare_and_swap, but only after the target has
diff --git a/libitm/configure.ac b/libitm/configure.ac
index 7f35b154529..dea70387f0f 100644
--- a/libitm/configure.ac
+++ b/libitm/configure.ac
@@ -224,6 +224,10 @@ LIBITM_CHECK_SIZE_T_MANGLING
# Get target configury.
. ${srcdir}/configure.tgt
+if test -n "$UNSUPPORTED"; then
+ AC_MSG_ERROR([Configuration ${target} is unsupported.])
+fi
+
CFLAGS="$save_CFLAGS $XCFLAGS"
# Check for __sync_val_compare_and_swap, but only after the target has
diff --git a/libitm/configure.tgt b/libitm/configure.tgt
index 7d9b7f6c398..dd7c78bd027 100644
--- a/libitm/configure.tgt
+++ b/libitm/configure.tgt
@@ -28,7 +28,7 @@
# XLDFLAGS Add extra link flags to use.
# Optimize TLS usage by avoiding the overhead of dynamic allocation.
-if test $gcc_cv_have_tls = yes ; then
+if test "$gcc_cv_have_tls" = yes ; then
case "${target}" in
# For x86, we use slots in the TCB head for most of our TLS.
@@ -47,10 +47,6 @@ fi
# work out any special compilation flags as necessary.
case "${target_cpu}" in
alpha*) ARCH=alpha ;;
- ia64*) ARCH=ia64 ;;
- mips*) ARCH=mips ;;
- powerpc*) ARCH=powerpc ;;
- s390*) ARCH=s390 ;;
i[3456]86)
case " ${CC} ${CFLAGS} " in
@@ -75,57 +71,33 @@ case "${target_cpu}" in
ARCH=x86
;;
- sparcv9 | sparc64)
- # Note that sparcv7 and sparcv8 is not included here. We need cas.
- echo "int i;" > conftestx.c
- if ${CC} ${CFLAGS} -c -o conftestx.o conftestx.c > /dev/null 2>&1; then
- case "`/usr/bin/file conftestx.o`" in
- *32-bit*)
- case " ${CC} ${CFLAGS}" in
- *" -mcpu=ultrasparc"*)
- ;;
- *)
- XCFLAGS="${XCFLAGS} -mcpu=v9"
- ;;
- esac
- ;;
- esac
- fi
- rm -f conftestx.c conftestx.o
- ARCH=sparc
- ;;
-
*)
ARCH="${target_cpu}"
;;
esac
-
+
+# For the benefit of top-level configure, determine if the cpu is supported.
+test -d ${srcdir}/$ARCH || UNSUPPORTED=1
+
# Since we require POSIX threads, assume a POSIX system by default.
config_path="$ARCH posix generic"
# Other system configury
case "${target}" in
*-*-linux*)
- if test $enable_linux_futex = yes; then
+ if test "$enable_linux_futex" = yes; then
config_path="linux/$ARCH linux $config_path"
fi
;;
- *-*-hpux11*)
- # HPUX v11.x requires -lrt to resolve sem_init in libgomp.la
- XLDFLAGS="${XLDFLAGS} -lrt"
- ;;
-
- *-*-mingw32*)
- config_path="$ARCH mingw32 posix generic"
- ;;
-
- *-*-solaris2.[56]*)
- config_path="$ARCH posix95 posix generic"
- XLDFLAGS="${XLDFLAGS} -lposix4"
+ *-*-gnu* | *-*-k*bsd*-gnu \
+ | *-*-netbsd* | *-*-freebsd* | *-*-openbsd* \
+ | *-*-solaris2* | *-*-sysv4* | *-*-irix6* | *-*-osf* | *-*-hpux11* \
+ | *-*-darwin* | *-*-aix*)
+ # POSIX system. The OS is supported.
;;
- *-*-darwin*)
- config_path="$ARCH bsd posix generic"
+ *) # Non-POSIX, or embedded system
+ UNSUPPORTED=1
;;
esac