aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>2022-03-11 09:37:44 +0100
committerRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>2022-03-11 09:37:44 +0100
commit1375e2b62332351a8f9c928421cd1ea8b53c5127 (patch)
treea237276c6be3ad7f078cbf5e9e0462ead6da892a
parent41bda0036ce81e7ac513f325e7b0f41ccf11cbab (diff)
downloadgcc-1375e2b62332351a8f9c928421cd1ea8b53c5127.zip
gcc-1375e2b62332351a8f9c928421cd1ea8b53c5127.tar.gz
gcc-1375e2b62332351a8f9c928421cd1ea8b53c5127.tar.bz2
libphobos: Enable on Solaris/SPARC or with /bin/as [PR 103528]
libphobos is currently only enabled on Solaris/x86 with gas. As discovered when gdc was switched to the dmd frontend, this initially broke bootstrap for the other Solaris configurations. However, it's now well possible to enable it both for Solaris/x86 with as and Solaris/SPARC (both as and gas) since the original problems (x86 as linelength limit, among others) are long gone. The following patch does just that. Tested on i386-pc-solaris2.11 and sparc-sun-solaris2.11 (both as and gas) with gdc 9.3.0 (x86) resp. 9.4.0 (sparc, configured with --enable-libphobos) as bootstrap compilers. 2021-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> libphobos: PR d/103528 * configure.ac <x86_64-*-solaris2.* | i?86-*-solaris2.*>: Remove gas requirement. * configure: Regenerate. * configure.tgt (sparc*-*-solaris2.11*): Mark supported.
-rwxr-xr-xlibphobos/configure12
-rw-r--r--libphobos/configure.ac12
-rw-r--r--libphobos/configure.tgt3
3 files changed, 3 insertions, 24 deletions
diff --git a/libphobos/configure b/libphobos/configure
index 17b2656..9da06f0 100755
--- a/libphobos/configure
+++ b/libphobos/configure
@@ -15475,18 +15475,6 @@ $as_echo_n "checking for host support for libphobos... " >&6; }
. ${srcdir}/configure.tgt
case ${host} in
x86_64-*-solaris2.* | i?86-*-solaris2.*)
- # libphobos doesn't compile with the Solaris/x86 assembler due to a
- # relatively low linelength limit.
- as_prog=`$CC -print-prog-name=as`
- if test -n "$as_prog" && $as_prog -v /dev/null 2>&1 | grep GNU > /dev/null 2>&1; then
- druntime_cv_use_gas=yes;
- else
- druntime_cv_use_gas=no;
- fi
- rm -f a.out
- if test x$druntime_cv_use_gas = xno; then
- LIBPHOBOS_SUPPORTED=no
- fi
# 64-bit D execution fails with Solaris ld without -z relax=transtls support.
if test "$druntime_ld_gld" = "no" && test "$druntime_ld_relax_transtls" = "no"; then
LIBPHOBOS_SUPPORTED=no
diff --git a/libphobos/configure.ac b/libphobos/configure.ac
index 47e2fa9..31209ba 100644
--- a/libphobos/configure.ac
+++ b/libphobos/configure.ac
@@ -189,18 +189,6 @@ AC_MSG_CHECKING([for host support for libphobos])
. ${srcdir}/configure.tgt
case ${host} in
x86_64-*-solaris2.* | i?86-*-solaris2.*)
- # libphobos doesn't compile with the Solaris/x86 assembler due to a
- # relatively low linelength limit.
- as_prog=`$CC -print-prog-name=as`
- if test -n "$as_prog" && $as_prog -v /dev/null 2>&1 | grep GNU > /dev/null 2>&1; then
- druntime_cv_use_gas=yes;
- else
- druntime_cv_use_gas=no;
- fi
- rm -f a.out
- if test x$druntime_cv_use_gas = xno; then
- LIBPHOBOS_SUPPORTED=no
- fi
# 64-bit D execution fails with Solaris ld without -z relax=transtls support.
if test "$druntime_ld_gld" = "no" && test "$druntime_ld_relax_transtls" = "no"; then
LIBPHOBOS_SUPPORTED=no
diff --git a/libphobos/configure.tgt b/libphobos/configure.tgt
index 6ffca34..0063dd2 100644
--- a/libphobos/configure.tgt
+++ b/libphobos/configure.tgt
@@ -52,6 +52,9 @@ case "${target}" in
s390*-linux*)
LIBPHOBOS_SUPPORTED=yes
;;
+ sparc*-*-solaris2.11*)
+ LIBPHOBOS_SUPPORTED=yes
+ ;;
x86_64-*-freebsd* | i?86-*-freebsd*)
LIBPHOBOS_SUPPORTED=yes
;;