diff options
-rw-r--r-- | gnu/packages/commencement.scm | 6 | ||||
-rw-r--r-- | gnu/packages/cross-base.scm | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 0938bc3d46..432910d7a3 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -2818,6 +2818,12 @@ exec " gcc "/bin/" program "--disable-shared" "--enable-languages=c,c++" + ,@(if (equal? "powerpc64le-linux-gnu" (boot-triplet)) + ;; On POWER9 (little endian) glibc needs the + ;; 128-bit long double type. + '("--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 c1e5f2eb79..bea2d69876 100644 --- a/gnu/packages/cross-base.scm +++ b/gnu/packages/cross-base.scm @@ -153,6 +153,12 @@ base compiler and using LIBC (which may be either a libc package or #f.)" "--disable-decimal-float" ;would need libc "--disable-libcilkrts" + ,@(if (equal? "powerpc64le-linux-gnu" 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 |