2012-11-20 Matthias Klose <doko@ubuntu.com>
+ * configure.ac: Substitute `with_cpu'.
+ * configure: Regenerate.
+ * Makefile.in: Define `with_cpu'.
+ * config/rs6000/t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.
+ * config/rs6000/t-linux: New file; define MULTIARCH_DIRNAME.
+ * config/rs6000/t-fprules (SOFT_FLOAT_CPUS): New macro. Add e300c2
+ to the list.
+ (MULTILIB_MATCHES_FLOAT): Define in terms of SOFT_FLOAT_CPUS.
+ * config/rs6000/t-spe: Define MULTIARCH_DIRNAME.
+ * config.gcc <powerpc-*-linux* | powerpc64-*-linux*> (tmake_file):
+ Include rs6000/t-linux for 32bit non-biarch configurations.
+
+2012-11-20 Matthias Klose <doko@ubuntu.com>
+
* doc/install.texi: Move multiarch paragraph out of multilib
documentation.
# Multiarch support
enable_multiarch = @enable_multiarch@
+with_cpu = @with_cpu@
with_float = @with_float@
ifeq ($(enable_multiarch),yes)
if_multiarch = $(1)
;;
*)
tm_file="${tm_file} rs6000/linux.h glibc-stdint.h"
+ tmake_file="$tmake_file rs6000/t-linux"
;;
esac
case ${target} in
# along with GCC; see the file COPYING3. If not see
# <http://www.gnu.org/licenses/>.
-MULTILIB_MATCHES_FLOAT = msoft-float=mcpu?401 \
- msoft-float=mcpu?403 \
- msoft-float=mcpu?405 \
- msoft-float=mcpu?440 \
- msoft-float=mcpu?464 \
- msoft-float=mcpu?476 \
- msoft-float=mcpu?ec603e \
- msoft-float=mcpu?801 \
- msoft-float=mcpu?821 \
- msoft-float=mcpu?823 \
- msoft-float=mcpu?860
+SOFT_FLOAT_CPUS = e300c2 401 403 405 440 464 476 ec603e 801 821 823 860
+MULTILIB_MATCHES_FLOAT = $(foreach cpu, $(SOFT_FLOAT_CPUS), msoft-float=mcpu?$(cpu))
# Build the libraries for both hard and soft floating point by default
--- /dev/null
+# do not define the multiarch name if configured for a soft-float cpu
+# or soft-float.
+ifeq (,$(filter $(with_cpu),$(SOFT_FLOAT_CPUS))$(findstring soft,$(with_float))
+MULTIARCH_DIRNAME = powerpc-linux-gnu
+endif
MULTILIB_OPTIONS = m64/m32
MULTILIB_DIRNAMES = 64 32
MULTILIB_EXTRA_OPTS = fPIC
-MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)
+MULTILIB_OSDIRNAMES = ../lib64$(call if_multiarch,:powerpc64-linux-gnu)
+MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:powerpc-linux-gnu)
mabi=altivec/mlittle \
maltivec/mlittle \
maltivec/mabi=altivec/mlittle
+
+ifneq (,$(findstring linux, $(target)))
+MULTIARCH_DIRNAME = powerpc-linux-gnuspe$(if $(findstring rs6000/e500-double.h, $(tm_file)),,v1)
+endif
enable_fixed_point
enable_decimal_float
with_float
+with_cpu
enable_multiarch
enable_multilib
coverage_flags
# needed for setting the multiarch name for soft-float/hard-float ABIs
+
# Enable __cxa_atexit for C++.
# Check whether --enable-__cxa_atexit was given.
if test "${enable___cxa_atexit+set}" = set; then :
case $target in
powerpc*-*-linux* | i?86*-*-linux* | x86_64*-*-linux* | s390*-*-linux* | \
+ i?86*-*-gnu* | \
i?86*-*-mingw* | x86_64*-*-mingw* | \
i?86*-*-cygwin*)
enable_decimal_float=yes
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 17822 "configure"
+#line 17825 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 17928 "configure"
+#line 17931 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
AC_MSG_RESULT($enable_multiarch$ma_msg_suffix)
# needed for setting the multiarch name for soft-float/hard-float ABIs
+AC_SUBST(with_cpu)
AC_SUBST(with_float)
# Enable __cxa_atexit for C++.