summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config/cc/gcc.in.213
-rw-r--r--scripts/build/cc/gcc.sh12
2 files changed, 25 insertions, 0 deletions
diff --git a/config/cc/gcc.in.2 b/config/cc/gcc.in.2
index 1b4926b..c0434a7 100644
--- a/config/cc/gcc.in.2
+++ b/config/cc/gcc.in.2
@@ -105,3 +105,16 @@ config CC_GCC_LIBMUDFLAP
re-compilation and re-link, while it exists better run-time
alternatives (eg. DUMA, dmalloc...) that need neither re-
compilation nor re-link.
+
+config CC_GCC_LDBL_128
+ tristate
+ prompt "Enable 128-bit long doubles"
+ default m
+ depends on CC_GCC_4_2_or_later
+ help
+ Saying 'Y' will force gcc to use 128-bit wide long doubles
+ Saying 'N' will force gcc to use 64-bit wide long doubles
+ Saying 'M' will let gcc choose (default is 128-bit for
+ glibc >= 2.4, 64-bit otherwise)
+
+ If in doubt, keep the default, ie. 'M'.
diff --git a/scripts/build/cc/gcc.sh b/scripts/build/cc/gcc.sh
index a30a3d4..4e6a377 100644
--- a/scripts/build/cc/gcc.sh
+++ b/scripts/build/cc/gcc.sh
@@ -191,6 +191,12 @@ do_cc_core() {
extra_config+=("--enable-target-optspace")
fi
+ case "${CT_CC_GCC_LDBL_128}" in
+ Y) extra_config+=("--with-long-double-128");;
+ M) ;;
+ "") extra_config+=("--without-long-double-128");;
+ esac
+
CT_DoLog DEBUG "Extra config passed: '${extra_config[*]}'"
# Use --with-local-prefix so older gccs don't look in /usr/local (http://gcc.gnu.org/PR10532)
@@ -420,6 +426,12 @@ do_cc() {
extra_config+=("--disable-libstdcxx-pch")
fi
+ case "${CT_CC_GCC_LDBL_128}" in
+ Y) extra_config+=("--with-long-double-128");;
+ M) ;;
+ "") extra_config+=("--without-long-double-128");;
+ esac
+
CT_DoLog DEBUG "Extra config passed: '${extra_config[*]}'"
# --enable-symvers=gnu really only needed for sh4 to work around a