Commit fa9518de by Franz Sirl Committed by Franz Sirl

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
parent d4f33f6c
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.
2001-04-09 Bo Thorsen <bo@suse.co.uk> 2001-04-09 Bo Thorsen <bo@suse.co.uk>
* config/i386/i386.md: "TARGET_64BIT && TARGET_64BIT": Removed one. * config/i386/i386.md: "TARGET_64BIT && TARGET_64BIT": Removed one.
......
...@@ -446,10 +446,14 @@ USE_COLLECT2 = collect2$(exeext) ...@@ -446,10 +446,14 @@ USE_COLLECT2 = collect2$(exeext)
# Assembler files should have names ending in `.asm'. # Assembler files should have names ending in `.asm'.
LIB1FUNCS_EXTRA = LIB1FUNCS_EXTRA =
# List of extra C and assembler files to add to libgcc2.a. # List of extra C and assembler files to add to static and shared libgcc2.
# Assembler files should have names ending in `.asm'. # Assembler files should have names ending in `.asm'.
LIB2FUNCS_EXTRA = LIB2FUNCS_EXTRA =
# List of extra C and assembler files to add to static libgcc2.
# Assembler files should have names ending in `.asm'.
LIB2FUNCS_STATIC_EXTRA =
# Handle cpp installation. # Handle cpp installation.
INSTALL_CPP= INSTALL_CPP=
UNINSTALL_CPP= UNINSTALL_CPP=
...@@ -1034,8 +1038,9 @@ xlimits.h: glimits.h limitx.h limity.h ...@@ -1034,8 +1038,9 @@ xlimits.h: glimits.h limitx.h limity.h
# Build libgcc.a. # Build libgcc.a.
LIB2ADD = $(LIB2FUNCS_EXTRA) LIB2ADD = $(LIB2FUNCS_EXTRA)
LIB2ADD_ST = $(LIB2FUNCS_STATIC_EXTRA)
libgcc.mk: config.status Makefile mklibgcc $(LIB2ADD) xgcc$(exeext) libgcc.mk: config.status Makefile mklibgcc $(LIB2ADD) $(LIB2ADD_ST) xgcc$(exeext)
objext='$(objext)' \ objext='$(objext)' \
OLDCC='$(OLDCC)' \ OLDCC='$(OLDCC)' \
LIBGCC1='$(LIBGCC1)' \ LIBGCC1='$(LIBGCC1)' \
...@@ -1044,6 +1049,7 @@ libgcc.mk: config.status Makefile mklibgcc $(LIB2ADD) xgcc$(exeext) ...@@ -1044,6 +1049,7 @@ libgcc.mk: config.status Makefile mklibgcc $(LIB2ADD) xgcc$(exeext)
LIB1FUNCS_EXTRA='$(LIB1FUNCS_EXTRA)' \ LIB1FUNCS_EXTRA='$(LIB1FUNCS_EXTRA)' \
LIB2FUNCS='$(LIB2FUNCS)' \ LIB2FUNCS='$(LIB2FUNCS)' \
LIB2ADD='$(LIB2ADD)' \ LIB2ADD='$(LIB2ADD)' \
LIB2ADD_ST='$(LIB2ADD_ST)' \
LIB2ADDEH='$(LIB2ADDEH)' \ LIB2ADDEH='$(LIB2ADDEH)' \
LIB2ADDEHDEP='$(LIB2ADDEHDEP)' \ LIB2ADDEHDEP='$(LIB2ADDEHDEP)' \
FPBIT='$(FPBIT)' \ FPBIT='$(FPBIT)' \
...@@ -1066,8 +1072,8 @@ libgcc.mk: config.status Makefile mklibgcc $(LIB2ADD) xgcc$(exeext) ...@@ -1066,8 +1072,8 @@ libgcc.mk: config.status Makefile mklibgcc $(LIB2ADD) xgcc$(exeext)
LIBGCC_DEPS = $(GCC_PASSES) $(LANGUAGES) stmp-int-hdrs $(STMP_FIXPROTO) \ LIBGCC_DEPS = $(GCC_PASSES) $(LANGUAGES) stmp-int-hdrs $(STMP_FIXPROTO) \
libgcc.mk $(srcdir)/libgcc1.c $(srcdir)/libgcc2.c $(TCONFIG_H) \ libgcc.mk $(srcdir)/libgcc1.c $(srcdir)/libgcc2.c $(TCONFIG_H) \
$(MACHMODE_H) longlong.h gbl-ctors.h config.status stmp-int-hdrs \ $(MACHMODE_H) longlong.h gbl-ctors.h config.status stmp-int-hdrs \
tsystem.h $(FPBIT) $(DPBIT) $(LIB2ADD) $(LIB2ADDEH) $(LIB2ADDEHDEP) \ tsystem.h $(FPBIT) $(DPBIT) $(LIB2ADD) $(LIB2ADD_ST) $(LIB2ADDEH) \
$(EXTRA_PARTS) $(LIB2ADDEHDEP) $(EXTRA_PARTS)
libgcc.a: $(LIBGCC_DEPS) libgcc.a: $(LIBGCC_DEPS)
$(MAKE) GCC_FOR_TARGET="$(GCC_FOR_TARGET)" \ $(MAKE) GCC_FOR_TARGET="$(GCC_FOR_TARGET)" \
......
...@@ -6,7 +6,10 @@ CROSS_LIBGCC1 = ...@@ -6,7 +6,10 @@ CROSS_LIBGCC1 =
# These are really part of libgcc1, but this will cause them to be # These are really part of libgcc1, but this will cause them to be
# built correctly, so... [taken from t-sparclite] # built correctly, so... [taken from t-sparclite]
LIB2FUNCS_EXTRA = eabi.S tramp.S LIB2FUNCS_EXTRA = tramp.S
# This one can't end up in shared libgcc
LIB2FUNCS_STATIC_EXTRA = eabi.S
# We want fine grained libraries, so use the new code to build the # We want fine grained libraries, so use the new code to build the
# floating point emulation libraries. # floating point emulation libraries.
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
# LIB1FUNCS_EXTRA # LIB1FUNCS_EXTRA
# LIB2FUNCS # LIB2FUNCS
# LIB2ADD # LIB2ADD
# LIB2ADD_ST
# LIB2ADDEH # LIB2ADDEH
# LIB2ADDEHDEP # LIB2ADDEHDEP
# FPBIT # FPBIT
...@@ -247,6 +248,26 @@ for file in $LIB2ADDEH; do ...@@ -247,6 +248,26 @@ for file in $LIB2ADDEH; do
libgcc2_objs="$libgcc2_objs ${oname}${objext}" libgcc2_objs="$libgcc2_objs ${oname}${objext}"
done 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_MKMAP
# SHLIB_MAPFILES # SHLIB_MAPFILES
for ml in $MULTILIBS; do for ml in $MULTILIBS; do
...@@ -266,6 +287,11 @@ for ml in $MULTILIBS; do ...@@ -266,6 +287,11 @@ for ml in $MULTILIBS; do
done done
shlib_deps="$libgcc_objs" 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 if [ "$SHLIB_LINK" -a "$SHLIB_MKMAP" -a -z "$mapfile" ]; then
mapfile="libgcc.map" mapfile="libgcc.map"
echo "" echo ""
...@@ -282,9 +308,9 @@ for ml in $MULTILIBS; do ...@@ -282,9 +308,9 @@ for ml in $MULTILIBS; do
done done
echo "" echo ""
echo "${dir}/libgcc.a: $libgcc_objs" echo "${dir}/libgcc.a: $libgcc_objs $libgcc_st_objs"
echo " -rm -rf ${dir}/libgcc.a" 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 ' if $(RANLIB_TEST_FOR_TARGET) ; then' \\
echo ' $(RANLIB_FOR_TARGET)' ${dir}/libgcc.a ';' \\ echo ' $(RANLIB_FOR_TARGET)' ${dir}/libgcc.a ';' \\
echo ' else true; fi;' echo ' else true; fi;'
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment