aboutsummaryrefslogtreecommitdiff
path: root/gcc/mklibgcc.in
diff options
context:
space:
mode:
authorBen Elliston <bje@au.ibm.com>2005-12-01 03:39:45 +0000
committerBen Elliston <bje@gcc.gnu.org>2005-12-01 14:39:45 +1100
commit8d11ad8ef4e19eaf642ae0e8cdcbf17336d7506f (patch)
tree34ac7483331c4aca7d9a1c1914805719cc239228 /gcc/mklibgcc.in
parent625a34391b5f4ade156cd99b88fd5184011d2a29 (diff)
downloadgcc-8d11ad8ef4e19eaf642ae0e8cdcbf17336d7506f.zip
gcc-8d11ad8ef4e19eaf642ae0e8cdcbf17336d7506f.tar.gz
gcc-8d11ad8ef4e19eaf642ae0e8cdcbf17336d7506f.tar.bz2
mklibgcc.in: Parameterise the script to build soft float functions by iterating over each...
* mklibgcc.in: Parameterise the script to build soft float functions by iterating over each type, rather than cloning the code for each type. From-SVN: r107800
Diffstat (limited to 'gcc/mklibgcc.in')
-rw-r--r--gcc/mklibgcc.in122
1 files changed, 34 insertions, 88 deletions
diff --git a/gcc/mklibgcc.in b/gcc/mklibgcc.in
index 816e301..ba85363 100644
--- a/gcc/mklibgcc.in
+++ b/gcc/mklibgcc.in
@@ -313,95 +313,41 @@ for ml in $MULTILIBS; do
# Build software floating point functions.
#
- if [ "$FPBIT" ]; then
- for name in $FPBIT_FUNCS; do
- if [ "$libgcc_s_so" ]; then
- out="libgcc/${dir}/${name}${objext}"
- outS="libgcc/${dir}/${name}_s${objext}"
-
- echo $outS: $FPBIT $fpbit_c_dep
- echo " $gcc_s_compile" -DFINE_GRAINED_LIBRARIES $flags -DL$name \
- -c $FPBIT -o $outS
-
- echo $out: $FPBIT $fpbit_c_dep
- echo " $gcc_compile" -DFINE_GRAINED_LIBRARIES $flags -DL$name \
- '$(vis_hide)' -c $FPBIT -o $out
-
- echo $libgcc_a: $out
- echo $libgcc_s_so: $outS
- if [ "$SHLIB_MKMAP" ]; then
- echo libgcc/${dir}/libgcc.map: $outS
- fi
- else
- out="libgcc/${dir}/${name}${objext}"
- echo $out: $FPBIT $fpbit_c_dep
- echo " $gcc_compile" -DFINE_GRAINED_LIBRARIES $flags -DL$name \
- -c $FPBIT -o $out
-
- echo $libgcc_a: $out
- fi
- done
- fi
-
- if [ "$DPBIT" ]; then
- for name in $DPBIT_FUNCS; do
- if [ "$libgcc_s_so" ]; then
- out="libgcc/${dir}/${name}${objext}"
- outS="libgcc/${dir}/${name}_s${objext}"
-
- echo $outS: $DPBIT $fpbit_c_dep
- echo " $gcc_s_compile" -DFINE_GRAINED_LIBRARIES $flags -DL$name \
- -c $DPBIT -o $outS
-
- echo $out: $DPBIT $fpbit_c_dep
- echo " $gcc_compile" -DFINE_GRAINED_LIBRARIES $flags -DL$name \
- '$(vis_hide)' -c $DPBIT -o $out
-
- echo $libgcc_a: $out
- echo $libgcc_s_so: $outS
- if [ "$SHLIB_MKMAP" ]; then
- echo libgcc/${dir}/libgcc.map: $outS
- fi
- else
- out="libgcc/${dir}/${name}${objext}"
- echo $out: $DPBIT $fpbit_c_dep
- echo " $gcc_compile" -DFINE_GRAINED_LIBRARIES $flags -DL$name \
- -c $DPBIT -o $out
-
- echo $libgcc_a: $out
+ for fpbit_var in FPBIT DPBIT TPBIT ; do
+ fpfuncs_var="${fpbit_var}_FUNCS"
+ eval fpbit=\$$fpbit_var
+ eval fpfuncs=\$$fpfuncs_var
+
+ if [ "$fpbit" ] ; then
+ for name in $fpfuncs; do
+ if [ "$libgcc_s_so" ]; then
+ out="libgcc/${dir}/${name}${objext}"
+ outS="libgcc/${dir}/${name}_s${objext}"
+
+ echo $outS: $fpbit $fpbit_c_dep
+ echo " $gcc_s_compile" -DFINE_GRAINED_LIBRARIES $flags -DL$name \
+ -c $fpbit -o $outS
+
+ echo $out: $fpbit $fpbit_c_dep
+ echo " $gcc_compile" -DFINE_GRAINED_LIBRARIES $flags -DL$name \
+ '$(vis_hide)' -c $fpbit -o $out
+
+ echo $libgcc_a: $out
+ echo $libgcc_s_so: $outS
+ if [ "$SHLIB_MKMAP" ]; then
+ echo libgcc/${dir}/libgcc.map: $outS
+ fi
+ else
+ out="libgcc/${dir}/${name}${objext}"
+ echo $out: $fpbit $fpbit_c_dep
+ echo " $gcc_compile" -DFINE_GRAINED_LIBRARIES $flags -DL$name \
+ -c $fpbit -o $out
+
+ echo $libgcc_a: $out
+ fi
+ done
fi
- done
- fi
-
- if [ "$TPBIT" ]; then
- for name in $TPBIT_FUNCS; do
- if [ "$libgcc_s_so" ]; then
- out="libgcc/${dir}/${name}${objext}"
- outS="libgcc/${dir}/${name}_s${objext}"
-
- echo $outS: $TPBIT $fpbit_c_dep
- echo " $gcc_s_compile" -DFINE_GRAINED_LIBRARIES $flags -DL$name \
- -c $TPBIT -o $outS
-
- echo $out: $TPBIT $fpbit_c_dep
- echo " $gcc_compile" -DFINE_GRAINED_LIBRARIES $flags -DL$name \
- '$(vis_hide)' -c $TPBIT -o $out
-
- echo $libgcc_a: $out
- echo $libgcc_s_so: $outS
- if [ "$SHLIB_MKMAP" ]; then
- echo libgcc/${dir}/libgcc.map: $outS
- fi
- else
- out="libgcc/${dir}/${name}${objext}"
- echo $out: $TPBIT $fpbit_c_dep
- echo " $gcc_compile" -DFINE_GRAINED_LIBRARIES $flags -DL$name \
- -c $TPBIT -o $out
-
- echo $libgcc_a: $out
- fi
- done
- fi
+ done
for file in $LIB2ADD; do
name=`echo $file | sed -e 's/[.][cS]$//' -e 's/[.]asm$//'`