aboutsummaryrefslogtreecommitdiff
path: root/gcc/mklibgcc.in
diff options
context:
space:
mode:
authorBen Elliston <bje@au.ibm.com>2006-03-01 05:14:24 +0000
committerBen Elliston <bje@gcc.gnu.org>2006-03-01 16:14:24 +1100
commit0eafb3ece622ac104ac19aac4a509abf9aacd101 (patch)
tree047409cff5d91e3067293c640a1c75cb2a4f67b3 /gcc/mklibgcc.in
parentcccb0908dd2ce9d5fc01c35169e00b35b30d47bd (diff)
downloadgcc-0eafb3ece622ac104ac19aac4a509abf9aacd101.zip
gcc-0eafb3ece622ac104ac19aac4a509abf9aacd101.tar.gz
gcc-0eafb3ece622ac104ac19aac4a509abf9aacd101.tar.bz2
mklibgcc.in: Add logic to handle $DFP_ENABLE and $DFP_CFLAGS.
* mklibgcc.in: Add logic to handle $DFP_ENABLE and $DFP_CFLAGS. Compile dfp-bit.c from the source directory using -DWIDTH and $DFP_CFLAGS to control the compilation of that file, rather than generating width-specific versions in the build directory. * Makefile.in (libgcc.mk): Pass down DFP_ENABLE and DFP_CFLAGS. (LIBGCC_DEPS): Replace $(D32PBIT) et al with config/dfp-bit.[hc]. From-SVN: r111595
Diffstat (limited to 'gcc/mklibgcc.in')
-rw-r--r--gcc/mklibgcc.in19
1 files changed, 15 insertions, 4 deletions
diff --git a/gcc/mklibgcc.in b/gcc/mklibgcc.in
index 88e0df0..8f67d4b 100644
--- a/gcc/mklibgcc.in
+++ b/gcc/mklibgcc.in
@@ -25,6 +25,8 @@
# FPBIT
# FPBIT_FUNCS
# LIB2_DIVMOD_FUNCS
+# DFP_ENABLE
+# DFP_CFLAGS
# DPBIT
# DPBIT_FUNCS
# TPBIT
@@ -368,6 +370,11 @@ for ml in $MULTILIBS; do
done
if [ "@enable_decimal_float@" = "yes" -a -z "$libgcc_so" ]; then
+ # If $DFP_ENABLE is set, then we want all data type sizes.
+ if [ "$DFP_ENABLE" ] ; then
+ D32PBIT=1; D64PBIT=1; D128PBIT=1
+ fi
+
# Bring in the DFP support code if D32PBIT, D64PBIT or D128PBIT are set.
if [ -n "$D32PBIT" -o -n "$D64PBIT" -o -n "$D128PBIT" ] ; then
dec_filenames="decContext decNumber decRound decLibrary decUtility"
@@ -396,14 +403,18 @@ for ml in $MULTILIBS; do
dpfuncs_var="${dpbit_var}_FUNCS"
eval dpbit=\$$dpbit_var
eval dpfuncs=\$$dpfuncs_var
+ case "$dpbit_var" in
+ D32PBIT) dpwidth=32 ;;
+ D64PBIT) dpwidth=64 ;;
+ D128PBIT) dpwidth=128 ;;
+ esac
if [ "$dpbit" ]; then
for name in $dpfuncs; do
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 $out: config/dfp-bit.c $fpbit_c_dep
+ echo " $gcc_compile" -DFINE_GRAINED_LIBRARIES $flags -DL$name -DWIDTH=$dpwidth \
+ $DFP_CFLAGS -c $\(srcdir\)/config/dfp-bit.c -o $out
echo $libgcc_a: $out
done
fi