diff --git a/libquadmath/configure b/libquadmath/configure index 31918507f624c59edbd0ea20410debc25fd3a0dc..b3ee64f9c7de77e33af54d96d5d32f03dcd3a76b 100755 --- a/libquadmath/configure +++ b/libquadmath/configure @@ -13096,6 +13096,30 @@ fi XCFLAGS="$XCFLAGS $CET_FLAGS" +case x$target in + xpowerpc64le*-linux*) + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if __SIZEOF_LONG_DOUBLE__ != 16 + #error long double is double + #endif +int +main () +{ +(void) 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + XCFLAGS="$XCFLAGS -mno-gnu-attribute" +fi +rm -f conftest.err conftest.i conftest.$ac_ext + ;; + *) + ;; +esac + cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure diff --git a/libquadmath/configure.ac b/libquadmath/configure.ac index f9d745e60ca4102e1dba260adb0218e69d59f4c9..eec4084a45f62226671197bd5c6949002a599fa2 100644 --- a/libquadmath/configure.ac +++ b/libquadmath/configure.ac @@ -352,6 +352,19 @@ fi # Add CET specific flags if CET is enabled GCC_CET_FLAGS(CET_FLAGS) XCFLAGS="$XCFLAGS $CET_FLAGS" + +case x$target in + xpowerpc64le*-linux*) + AC_PREPROC_IFELSE( + [AC_LANG_PROGRAM([[#if __SIZEOF_LONG_DOUBLE__ != 16 + #error long double is double + #endif]], + [[(void) 0;]])], + [XCFLAGS="$XCFLAGS -mno-gnu-attribute"]) + ;; + *) + ;; +esac AC_SUBST(XCFLAGS) AC_CACHE_SAVE