diff options
Diffstat (limited to 'gcc/mklibgcc.in')
-rw-r--r-- | gcc/mklibgcc.in | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/gcc/mklibgcc.in b/gcc/mklibgcc.in index 81d2e47f52b..3c3358a7b3a 100644 --- a/gcc/mklibgcc.in +++ b/gcc/mklibgcc.in @@ -1,6 +1,6 @@ #!/bin/sh # Construct makefile for libgcc. -# Copyright (C) 2000, 2002 Free Software Foundation, Inc. +# Copyright (C) 2000, 2002, 2003 Free Software Foundation, Inc. # # This file is part of GCC. @@ -21,6 +21,8 @@ # LIB2_DIVMOD_FUNCS # DPBIT # DPBIT_FUNCS +# TPBIT +# TPBIT_FUNCS # LIBGCC # MULTILIBS # EXTRA_MULTILIB_PARTS @@ -174,6 +176,21 @@ if [ "$DPBIT" ]; then done fi +if [ "$TPBIT" ]; then + for name in $TPBIT_FUNCS; do + for ml in $MULTILIBS; do + dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'` + flags=`echo ${ml} | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`; + out="libgcc/${dir}/${name}${objext}" + + echo $out: $TPBIT $fpbit_c_dep + echo " $gcc_compile" -DFINE_GRAINED_LIBRARIES $flags -DL$name \ + -c $TPBIT -o $out + done + libgcc2_objs="$libgcc2_objs ${name}${objext}" + done +fi + for file in $LIB2ADD; do name=`echo $file | sed -e 's/[.][cSo]$//' -e 's/[.]asm$//' -e 's/[.]txt$//'` oname=`echo $name | sed -e 's,.*/,,'` @@ -436,10 +453,10 @@ for ml in $MULTILIBS; do dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'` flags=`echo ${ml} | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`; if [ $dir != . ]; then - ldir='$(libsubdir)'/$dir + ldir='$(DESTDIR)$(libsubdir)'/$dir echo " if [ -d $ldir ]; then true; else mkdir $ldir; chmod a+rx $ldir; fi;" else - ldir='$(libsubdir)' + ldir='$(DESTDIR)$(libsubdir)' fi echo ' $(INSTALL_DATA)' ${dir}/libgcc.a ${ldir}/ echo ' $(RANLIB_FOR_TARGET)' ${ldir}/libgcc.a @@ -495,10 +512,10 @@ for f in $EXTRA_MULTILIB_PARTS; do dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'` if [ $dir != . ]; then out=${dir}/$f - ldir='$(libsubdir)'/$dir + ldir='$(DESTDIR)$(libsubdir)'/$dir else out=$f - ldir='$(libsubdir)' + ldir='$(DESTDIR)$(libsubdir)' fi echo ' $(INSTALL_DATA)' $out $ldir/ done |