diff mbox series

libphobos: Enable on Solaris/SPARC or with /bin/as [PR 103528]

Message ID yddzglyjej2.fsf@CeBiTec.Uni-Bielefeld.DE
State New
Headers show
Series libphobos: Enable on Solaris/SPARC or with /bin/as [PR 103528] | expand

Commit Message

Rainer Orth March 10, 2022, 10:19 a.m. UTC
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.

Ok for trunk?

	Rainer

Comments

Iain Buclaw March 10, 2022, 11:30 a.m. UTC | #1
Excerpts from Rainer Orth's message of März 10, 2022 11:19 am:
> 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.
> 
> Ok for trunk?

OK.

Thanks,
Iain.
diff mbox series

Patch

# HG changeset patch
# Parent  0c244e272e86453f81642685e5eee36c3996fadf
libphobos: Enable on Solaris/SPARC or with /bin/as [PR ?????]

diff --git a/libphobos/configure.ac b/libphobos/configure.ac
--- a/libphobos/configure.ac
+++ b/libphobos/configure.ac
@@ -189,18 +189,6 @@  AC_MSG_CHECKING([for host support for li
 . ${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
--- a/libphobos/configure.tgt
+++ b/libphobos/configure.tgt
@@ -49,6 +49,9 @@  case "${target}" in
   s390*-linux*)
 	LIBPHOBOS_SUPPORTED=yes
 	;;
+  sparc*-*-solaris2.11*)
+	LIBPHOBOS_SUPPORTED=yes
+	;;
   x86_64-*-freebsd* | i?86-*-freebsd*)
 	LIBPHOBOS_SUPPORTED=yes
 	;;