summaryrefslogtreecommitdiff
path: root/gcc/mklibgcc.in
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2001-01-07 09:27:25 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2001-01-07 09:27:25 +0000
commit074386b843ecbacc12784bf7b044e9399ded40c7 (patch)
tree6325810f4b727df6611567fe1ab374c2937f896f /gcc/mklibgcc.in
parentf457fb19859f6107c6f694bf7677d13d8a5d5ba8 (diff)
downloadgcc-074386b843ecbacc12784bf7b044e9399ded40c7.tar.gz
* Makefile.in (slibdir): New variable.
(libgcc.mk): Pass SHLIB_INSTALL to mklibgcc. (installdirs): Create slibdir. (install-libgcc, install-multilib): Defer to libgcc.mk. * configure.in (slibdir): Substitute. * mklibgcc.in (install): New target. * config/t-linux (SHLIB_LINK): Create links for the soname. (SHLIB_INSTALL): New. * config/alpha/t-osf4 (SHLIB_INSTALL): New. * config/mips/t-iris6 (SHLIB_INSTALL): New. * config/rs6000/t-aix43 (SHLIB_INSTALL): New. * config/sparc/t-slibgcc (SHLIB_INSTALL): New. * config/sparc/t-slibgcc-sld (SHLIB_INSTALL): New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@38761 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/mklibgcc.in')
-rw-r--r--gcc/mklibgcc.in44
1 files changed, 44 insertions, 0 deletions
diff --git a/gcc/mklibgcc.in b/gcc/mklibgcc.in
index 1953da47288..6341b302b83 100644
--- a/gcc/mklibgcc.in
+++ b/gcc/mklibgcc.in
@@ -29,6 +29,7 @@
# SHLIB_MKMAP
# SHLIB_MAPFILES
# SHLIB_NM_FLAGS
+# SHLIB_INSTALL
# Make needs VPATH to be literal.
echo 'srcdir = @srcdir@'
@@ -382,3 +383,46 @@ done
echo ""
echo "all: $all"
+
+echo ""
+echo "install: $all"
+for ml in $MULTILIBS; do
+ dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
+ if [ $dir != . ]; then
+ ldir='$(libsubdir)'/$dir
+ echo " if [ -d $ldir ]; then true; else mkdir $ldir; chmod a+rx $ldir; fi;"
+ else
+ ldir='$(libsubdir)'
+ fi
+ echo ' $(INSTALL_DATA)' ${dir}/libgcc.a ${ldir}/
+ echo ' $(RANLIB_FOR_TARGET)' ${ldir}/libgcc.a
+
+ if [ "$SHLIB_LINK" ]; then
+ if [ -z "$SHLIB_MULTILIB" ]; then
+ if [ "$dir" = "." ]; then
+ shlib_base_name="libgcc_s";
+ else
+ shlib_base_name=libgcc_s_`echo $dir | sed s,/,_,g`
+ fi
+ echo " $SHLIB_INSTALL" \
+ | sed -e "s%@shlib_base_name@%$shlib_base_name%g"
+ elif [ "$SHLIB_MULTILIB" = "$dir" ]; then
+ shlib_base_name="libgcc_s";
+ echo " $SHLIB_INSTALL" \
+ | sed -e "s%@shlib_base_name@%$shlib_base_name%g"
+ fi
+ fi
+done
+for f in $EXTRA_MULTILIB_PARTS; do
+ for ml in $MULTILIBS; do
+ dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
+ if [ $dir != . ]; then
+ out=${dir}/$f
+ ldir='$(libsubdir)'/$dir
+ else
+ out=$f
+ ldir='$(libsubdir)'
+ fi
+ echo ' $(INSTALL_DATA)' $out $ldir/
+ done
+done