summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/commencement.scm7
-rw-r--r--gnu/packages/cross-base.scm6
-rw-r--r--gnu/packages/gcc.scm5
3 files changed, 5 insertions, 13 deletions
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index d44d1dd3ca..af61512129 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -2733,13 +2733,6 @@ exec " gcc "/bin/" program
                            "--disable-shared"
                            "--enable-languages=c,c++"
 
-                           ;; On POWER9 (little endian) glibc needs the 128-bit
-                           ;; long double type.  32-bit PPC is affected by the
-                           ;; changes applied for powerpc64le.
-                           ,@(if (string-prefix? "powerpc" (boot-triplet))
-                               '("--with-long-double-128")
-                               '())
-
                            ;; libstdc++ cannot be built at this stage
                            ;; ("Link tests are not allowed after
                            ;; GCC_NO_EXECUTABLES.").
diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index 926b00ccdf..ced226ef34 100644
--- a/gnu/packages/cross-base.scm
+++ b/gnu/packages/cross-base.scm
@@ -153,12 +153,6 @@ base compiler and using LIBC (which may be either a libc package or #f.)"
                                "--disable-decimal-float" ;would need libc
                                "--disable-libcilkrts"
 
-                              ,@(if (string-prefix? "powerpc64le-" target)
-                                   ;; On POWER9 (little endian) glibc needs
-                                   ;; the 128-bit long double type.
-                                   '("--with-long-double-128")
-                                   '())
-
                                ;; When target is any OS other than 'none' these
                                ;; libraries will fail if there is no libc
                                ;; present. See
diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index 24a4b42000..c7fcb22693 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -79,6 +79,11 @@ where the OS part is overloaded to denote a specific ABI---into GCC
          ;; Cilk has been removed from GCC 8 anyway.
          '("--disable-libcilkrts"))
 
+        ;; glibc needs the 128-bit long double type on these architectures.
+        ((or (string-prefix? "powerpc64le-" target)
+             (string-prefix? "powerpc-" target))
+         '("--with-long-double-128"))
+
         (else
          ;; TODO: Add `arm.*-gnueabi', etc.
          '())))