diff options
author | Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | 2001-04-09 23:43:06 +0000 |
---|---|---|
committer | Franz Sirl <sirl@gcc.gnu.org> | 2001-04-09 23:43:06 +0000 |
commit | fa9518de0271175955abe4cce0b29788dd4e4aa3 (patch) | |
tree | d83b40ed38c3cf668c8c1b5c65edb4a956efd269 /gcc/mklibgcc.in | |
parent | d4f33f6c82041b514d78c6bf9282eade563a509b (diff) | |
download | gcc-fa9518de0271175955abe4cce0b29788dd4e4aa3.zip gcc-fa9518de0271175955abe4cce0b29788dd4e4aa3.tar.gz gcc-fa9518de0271175955abe4cce0b29788dd4e4aa3.tar.bz2 |
Makefile.in (LIB2FUNCS_STATIC_EXTRA): New macro.
2001-04-29 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* Makefile.in (LIB2FUNCS_STATIC_EXTRA): New macro.
(LIB2ADD_ST): New macro, pass it to mklibgcc.
* mklibgcc.in (libgcc2_st_objs): New variable, set it from LIB2ADD_ST.
(libgcc_st_objs): New, set from libgcc2_st_objs. Use it for libgcc.a.
* config/rs6000/t-ppccomm (LIB2FUNCS_STATIC_EXTRA): New macro.
From-SVN: r41215
Diffstat (limited to 'gcc/mklibgcc.in')
-rw-r--r-- | gcc/mklibgcc.in | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/gcc/mklibgcc.in b/gcc/mklibgcc.in index 70fc55a..6034867 100644 --- a/gcc/mklibgcc.in +++ b/gcc/mklibgcc.in @@ -15,6 +15,7 @@ # LIB1FUNCS_EXTRA # LIB2FUNCS # LIB2ADD +# LIB2ADD_ST # LIB2ADDEH # LIB2ADDEHDEP # FPBIT @@ -247,6 +248,26 @@ for file in $LIB2ADDEH; do libgcc2_objs="$libgcc2_objs ${oname}${objext}" done +libgcc2_st_objs="" + +for file in $LIB2ADD_ST; do + name=`echo $file | sed -e 's/[.][cSo]$//' -e 's/[.]asm$//' -e 's/[.]txt$//'` + oname=`echo $name | sed -e 's,.*/,,'` + + 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}/${oname}${objext}" + if [ ${name}.asm = ${file} ]; then + flags="$flags -xassembler-with-cpp" + fi + + echo $out: stmp-dirs $file + echo " $gcc_compile" $flags -c $file -o $out + done + libgcc2_st_objs="$libgcc2_st_objs ${oname}${objext}" +done + # SHLIB_MKMAP # SHLIB_MAPFILES for ml in $MULTILIBS; do @@ -266,6 +287,11 @@ for ml in $MULTILIBS; do done shlib_deps="$libgcc_objs" + libgcc_st_objs="" + for o in $libgcc2_st_objs; do + libgcc_st_objs="$libgcc_st_objs libgcc/${dir}/$o" + done + if [ "$SHLIB_LINK" -a "$SHLIB_MKMAP" -a -z "$mapfile" ]; then mapfile="libgcc.map" echo "" @@ -282,9 +308,9 @@ for ml in $MULTILIBS; do done echo "" - echo "${dir}/libgcc.a: $libgcc_objs" + echo "${dir}/libgcc.a: $libgcc_objs $libgcc_st_objs" echo " -rm -rf ${dir}/libgcc.a" - echo ' $(AR_CREATE_FOR_TARGET)' ${dir}/libgcc.a $libgcc_objs + echo ' $(AR_CREATE_FOR_TARGET)' ${dir}/libgcc.a $libgcc_objs $libgcc_st_objs echo ' if $(RANLIB_TEST_FOR_TARGET) ; then' \\ echo ' $(RANLIB_FOR_TARGET)' ${dir}/libgcc.a ';' \\ echo ' else true; fi;' |