This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH 3 of 5] cc/gcc: add option to enable 128-bit long doubles


# HG changeset patch
# User "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
# Date 1286573940 -7200
# Node ID c8ad4465912eaaa6294e55949b3e37c641739738
# Parent  17e9137b962e7b6b36a8c82057d66564f79270f5
cc/gcc: add option to enable 128-bit long doubles

Needed by some PPC targets, at least.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>

diff --git a/config/cc/gcc.in.2 b/config/cc/gcc.in.2
--- a/config/cc/gcc.in.2
+++ b/config/cc/gcc.in.2
@@ -105,3 +105,15 @@
       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
+    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
--- a/scripts/build/cc/gcc.sh
+++ b/scripts/build/cc/gcc.sh
@@ -191,6 +191,12 @@
         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 @@
         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



--
For unsubscribe information see http://sourceware.org/lists.html#faq


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]