aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorGeoffrey Keating <geoffk@apple.com>2005-09-30 17:55:27 +0000
committerGeoffrey Keating <geoffk@gcc.gnu.org>2005-09-30 17:55:27 +0000
commitdd7dc250237e0383a394545bcc87c647aeed9f26 (patch)
tree5577ade332f00d3244a52d005d5157af7cf6c0eb /gcc
parent18048e65b0aedc1e0e0a60310ab6a93753f3cbf7 (diff)
downloadgcc-dd7dc250237e0383a394545bcc87c647aeed9f26.zip
gcc-dd7dc250237e0383a394545bcc87c647aeed9f26.tar.gz
gcc-dd7dc250237e0383a394545bcc87c647aeed9f26.tar.bz2
t-slibgcc-darwin (libgcc_s_%.dylib): Use --print-multi-lib to work out which multilibs are actually being built.
* config/t-slibgcc-darwin (libgcc_s_%.dylib): Use --print-multi-lib to work out which multilibs are actually being built. From-SVN: r104824
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/t-slibgcc-darwin11
2 files changed, 12 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index aaa7c8c..58ed17d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2005-09-30 Geoffrey Keating <geoffk@apple.com>
+
+ * config/t-slibgcc-darwin (libgcc_s_%.dylib): Use --print-multi-lib
+ to work out which multilibs are actually being built.
+
2005-09-30 Kazu Hirata <kazu@codesourcery.com>
* tree-vect-transform.c, config/ms1/ms1.md,
diff --git a/gcc/config/t-slibgcc-darwin b/gcc/config/t-slibgcc-darwin
index 6650bb5..3a2fc18 100644
--- a/gcc/config/t-slibgcc-darwin
+++ b/gcc/config/t-slibgcc-darwin
@@ -43,10 +43,11 @@ ASM_HIDDEN_OP = .private_extern
# contain no code, just a list of exported symbols.
# The actual use of the libraries is controlled by REAL_LIBGCC_SPEC.
#
-# This assumes only one level of multilibs. It also assumes each multilib
-# corresponds to a different architecture.
+# This assumes each multilib corresponds to a different architecture.
libgcc_s.%.dylib : $(SHLIB_VERPFX).%.ver libgcc.a
- for mlib in '' $(MULTILIB_DIRNAMES:%=_%) ; do \
+ MLIBS=`$(GCC_FOR_TARGET) --print-multi-lib \
+ | sed -e 's/;.*$$//' -e '/^\.$$/d' -e 's/^/_/'` ; \
+ for mlib in '' $$MLIBS ; do \
$(STRIP_FOR_TARGET) -o $(@)_T$${mlib} \
-s $(SHLIB_VERPFX).$(*).ver -c -u \
libgcc_s$${mlib}.$(SHLIB_SOVERSION)$(SHLIB_EXT) || exit 1 ; \
@@ -54,7 +55,9 @@ libgcc_s.%.dylib : $(SHLIB_VERPFX).%.ver libgcc.a
$(LIPO_FOR_TARGET) -output $@ -create $(@)_T*
# When builting multilibbed target libraries, all the required
# libraries are expected to exist in the multilib directory.
- for mlib in $(MULTILIB_DIRNAMES) ; do \
+ MLIBS=`$(GCC_FOR_TARGET) --print-multi-lib \
+ | sed -e 's/;.*$$//' -e '/^\.$$/d'` ; \
+ for mlib in $$MLIBS ; do \
ln -s ../$@ $${mlib}/$@ || exit 1 ; \
done
rm $(@)_T*