diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-01-07 09:27:25 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-01-07 09:27:25 +0000 |
commit | 074386b843ecbacc12784bf7b044e9399ded40c7 (patch) | |
tree | 6325810f4b727df6611567fe1ab374c2937f896f /gcc/mklibgcc.in | |
parent | f457fb19859f6107c6f694bf7677d13d8a5d5ba8 (diff) | |
download | gcc-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.in | 44 |
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 |