aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Tobler <a.tobler@schweiz.ch>2003-11-21 05:53:12 +0100
committerAndreas Tobler <andreast@gcc.gnu.org>2003-11-21 05:53:12 +0100
commit0eadf440e4cd770737eaaab6c3e662a7154fd581 (patch)
tree3122c3075ac1b8d8dbe8dfb0bdf002a331bd54a1
parentc132886e7c0605edb5f66c0614c98b61840efc24 (diff)
downloadgcc-0eadf440e4cd770737eaaab6c3e662a7154fd581.zip
gcc-0eadf440e4cd770737eaaab6c3e662a7154fd581.tar.gz
gcc-0eadf440e4cd770737eaaab6c3e662a7154fd581.tar.bz2
mklibgcc.in: Evaluate shlib_slibdir_qual during link step too.
2003-11-21 Andreas Tobler <a.tobler@schweiz.ch> * mklibgcc.in: Evaluate shlib_slibdir_qual during link step too. * config/t-slibgcc-darwin: Adjust install path. * config/rs6000/t-darwin: Revert multilib matches since it is not used on darwin. From-SVN: r73790
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/config/rs6000/t-darwin3
-rw-r--r--gcc/config/t-slibgcc-darwin2
-rw-r--r--gcc/mklibgcc.in11
4 files changed, 19 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b6b6b09..1ee4f56 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+2003-11-21 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * mklibgcc.in: Evaluate shlib_slibdir_qual during link
+ step too.
+ * config/t-slibgcc-darwin: Adjust install path.
+ * config/rs6000/t-darwin: Revert multilib matches since
+ it is not used on darwin.
+
2003-11-20 Richard Henderson <rth@redhat.com>
* ssa.c, ssa-dce.c, ssa-ccp.c: Remove files.
diff --git a/gcc/config/rs6000/t-darwin b/gcc/config/rs6000/t-darwin
index 0f3bc4a..490b633 100644
--- a/gcc/config/rs6000/t-darwin
+++ b/gcc/config/rs6000/t-darwin
@@ -1,4 +1,3 @@
# Library code must include trampoline support.
LIB2FUNCS_EXTRA = $(srcdir)/config/rs6000/darwin-tramp.asm
-# Multilib options
-MULTILIB_MATCHES = ${MULTILIB_MATCHES_FLOAT}
+
diff --git a/gcc/config/t-slibgcc-darwin b/gcc/config/t-slibgcc-darwin
index 3241d3f..f27fae4 100644
--- a/gcc/config/t-slibgcc-darwin
+++ b/gcc/config/t-slibgcc-darwin
@@ -11,7 +11,7 @@ SHLIB_OBJS = @shlib_objs@
SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual@
SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -dynamiclib -nodefaultlibs \
- -Wl,-install_name,$(SHLIB_SONAME) \
+ -Wl,-install_name,$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SONAME) \
-Wl,-flat_namespace -o $(SHLIB_NAME) \
$(SHLIB_VERSTRING) \
@multilib_flags@ $(SHLIB_OBJS) -lc && \
diff --git a/gcc/mklibgcc.in b/gcc/mklibgcc.in
index 28ea853..72c6c22 100644
--- a/gcc/mklibgcc.in
+++ b/gcc/mklibgcc.in
@@ -388,6 +388,7 @@ EOF
fi
shlib_so_name="$shlib_base_name"
shlib_dir=
+ shlib_slibdir_qual=
if [ -n "$MULTILIB_OSDIRNAMES" ]; then
if [ "$dir" != . ]; then
gcc_multilib_dir=`./xgcc -B./ $flags --print-multi-directory`
@@ -397,8 +398,12 @@ EOF
os_multilib_base=`echo $os_multilib_dir | sed -n "s~/${gcc_multilib_sup}\$~~p"`
if [ -z "$os_multilib_base" ]; then
shlib_so_name=libgcc_s
+ if [ "$os_multilib_dir" != "." ]; then
+ shlib_slibdir_qual="/$os_multilib_dir"
+ fi
else
shlib_so_name=libgcc_s_`echo $gcc_multilib_sup | sed s,/,_,g`
+ shlib_slibdir_qual="/$os_multilib_base"
fi
fi
fi
@@ -411,7 +416,8 @@ EOF
-e "s%@shlib_base_name@%$shlib_base_name%g" \
-e "s%@shlib_map_file@%$mapfile%g" \
-e "s%@shlib_so_name@%$shlib_so_name%g" \
- -e "s%@shlib_dir@%$shlib_dir%g"
+ -e "s%@shlib_dir@%$shlib_dir%g" \
+ -e "s%@shlib_slibdir_qual@%%g"
elif [ "$SHLIB_MULTILIB" = "$dir" ]; then
shlib_base_name="libgcc_s";
echo ""
@@ -423,7 +429,8 @@ EOF
-e "s%@shlib_base_name@%$shlib_base_name%g" \
-e "s%@shlib_map_file@%$mapfile%g" \
-e "s%@shlib_so_name@%$shlib_base_name%g" \
- -e "s%@shlib_dir@%%g"
+ -e "s%@shlib_dir@%%g" \
+ -e "s%@shlib_slibdir_qual@%%g"
fi
fi
done