100 lines
2.9 KiB
Diff
100 lines
2.9 KiB
Diff
|
diff --git a/libgcc/Makefile.in b/libgcc/Makefile.in
|
||
|
index f09b39b..296cf0f 100644
|
||
|
--- a/libgcc/Makefile.in
|
||
|
+++ b/libgcc/Makefile.in
|
||
|
@@ -43,6 +43,7 @@ enable_vtable_verify = @enable_vtable_verify@
|
||
|
enable_decimal_float = @enable_decimal_float@
|
||
|
fixed_point = @fixed_point@
|
||
|
with_aix_soname = @with_aix_soname@
|
||
|
+with_ldbl128 = @with_ldbl128@
|
||
|
|
||
|
host_noncanonical = @host_noncanonical@
|
||
|
real_host_noncanonical = @real_host_noncanonical@
|
||
|
diff --git a/libgcc/config/rs6000/t-linux b/libgcc/config/rs6000/t-linux
|
||
|
index 4f6d4c4..c50dd94 100644
|
||
|
--- a/libgcc/config/rs6000/t-linux
|
||
|
+++ b/libgcc/config/rs6000/t-linux
|
||
|
@@ -1,3 +1,6 @@
|
||
|
SHLIB_MAPFILES += $(srcdir)/config/rs6000/libgcc-glibc.ver
|
||
|
|
||
|
-HOST_LIBGCC2_CFLAGS += -mlong-double-128 -mno-minimal-toc
|
||
|
+ifeq ($(with_ldbl128),yes)
|
||
|
+HOST_LIBGCC2_CFLAGS += -mlong-double-128
|
||
|
+endif
|
||
|
+HOST_LIBGCC2_CFLAGS += -mno-minimal-toc
|
||
|
diff --git a/libgcc/configure b/libgcc/configure
|
||
|
old mode 100644
|
||
|
new mode 100755
|
||
|
index e7d6c75..e9a9019
|
||
|
--- a/libgcc/configure
|
||
|
+++ b/libgcc/configure
|
||
|
@@ -614,6 +614,7 @@ build_vendor
|
||
|
build_cpu
|
||
|
build
|
||
|
with_aix_soname
|
||
|
+with_ldbl128
|
||
|
enable_vtable_verify
|
||
|
enable_shared
|
||
|
libgcc_topdir
|
||
|
@@ -663,6 +664,7 @@ with_cross_host
|
||
|
with_ld
|
||
|
enable_shared
|
||
|
enable_vtable_verify
|
||
|
+with_long_double_128
|
||
|
with_aix_soname
|
||
|
enable_version_specific_runtime_libs
|
||
|
with_slibdir
|
||
|
@@ -1319,6 +1321,7 @@ Optional Packages:
|
||
|
--with-target-subdir=SUBDIR Configuring in a subdirectory for target
|
||
|
--with-cross-host=HOST Configuring with a cross compiler
|
||
|
--with-ld arrange to use the specified ld (full pathname)
|
||
|
+ --with-long-double-128 use 128-bit long double by default
|
||
|
--with-aix-soname=aix|svr4|both
|
||
|
shared library versioning (aka "SONAME") variant to
|
||
|
provide on AIX
|
||
|
@@ -2201,6 +2204,21 @@ fi
|
||
|
|
||
|
|
||
|
|
||
|
+# Check whether --with-long-double-128 was given.
|
||
|
+if test "${with_long_double_128+set}" = set; then :
|
||
|
+ withval=$with_long_double_128; with_ldbl128="$with_long_double_128"
|
||
|
+else
|
||
|
+ case "${host}" in
|
||
|
+ power*-*-musl*)
|
||
|
+ with_ldbl128="no";;
|
||
|
+ *) with_ldbl128="yes";;
|
||
|
+ esac
|
||
|
+
|
||
|
+fi
|
||
|
+
|
||
|
+
|
||
|
+
|
||
|
+
|
||
|
# Check whether --with-aix-soname was given.
|
||
|
if test "${with_aix_soname+set}" = set; then :
|
||
|
withval=$with_aix_soname; case "${host}:${enable_shared}" in
|
||
|
diff --git a/libgcc/configure.ac b/libgcc/configure.ac
|
||
|
index 269997f..81dc3ba 100644
|
||
|
--- a/libgcc/configure.ac
|
||
|
+++ b/libgcc/configure.ac
|
||
|
@@ -77,6 +77,18 @@ AC_ARG_ENABLE(vtable-verify,
|
||
|
[enable_vtable_verify=no])
|
||
|
AC_SUBST(enable_vtable_verify)
|
||
|
|
||
|
+AC_ARG_WITH(long-double-128,
|
||
|
+[AS_HELP_STRING([--with-long-double-128],
|
||
|
+ [use 128-bit long double by default])],
|
||
|
+ with_ldbl128="$with_long_double_128",
|
||
|
+[case "${host}" in
|
||
|
+ power*-*-musl*)
|
||
|
+ with_ldbl128="no";;
|
||
|
+ *) with_ldbl128="yes";;
|
||
|
+ esac
|
||
|
+])
|
||
|
+AC_SUBST(with_ldbl128)
|
||
|
+
|
||
|
AC_ARG_WITH(aix-soname,
|
||
|
[AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
|
||
|
[shared library versioning (aka "SONAME") variant to provide on AIX])],
|