Commit 7d31d331 by Rainer Orth Committed by Rainer Orth

Enable libphobos on Solaris 11/x86

	toplevel:
	* configure.ac (enable_libphobos): Check LIBPHOBOS_SUPPORTED.
	* configure: Regenerate.

	libphobos:
	* configure.tgt (LIBPHOBOS_SUPPORTED): Default to no.
	Set to yes explicitly.
	* configure.ac: Handle --enable-libphobos.
	(x86_64-*-solaris2.* | i?86-*-solaris2.*): Only mark supported
	with gas.
	(ENABLE_LIBPHOBOS): New conditional.
	* configure: Regenerate.
	* Makefile.am (SUBDIRS): Only set if ENABLE_LIBPHOBOS.
	* Makefile.in: Regenerate.

From-SVN: r270348
parent 235d1c46
2019-04-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* configure.ac (enable_libphobos): Check LIBPHOBOS_SUPPORTED.
* configure: Regenerate.
2019-04-12 Iain Buclaw <ibuclaw@gdcproject.org> 2019-04-12 Iain Buclaw <ibuclaw@gdcproject.org>
* configure.ac: Add target-zlib to target_libraries. * configure.ac: Add target-zlib to target_libraries.
......
...@@ -3411,7 +3411,7 @@ if test -d ${srcdir}/libphobos; then ...@@ -3411,7 +3411,7 @@ if test -d ${srcdir}/libphobos; then
$as_echo_n "checking for libphobos support... " >&6; } $as_echo_n "checking for libphobos support... " >&6; }
if (srcdir=${srcdir}/libphobos; \ if (srcdir=${srcdir}/libphobos; \
. ${srcdir}/configure.tgt; \ . ${srcdir}/configure.tgt; \
test -n "$UNSUPPORTED") test "$LIBPHOBOS_SUPPORTED" != "yes")
then then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; } $as_echo "no" >&6; }
......
...@@ -695,7 +695,7 @@ if test -d ${srcdir}/libphobos; then ...@@ -695,7 +695,7 @@ if test -d ${srcdir}/libphobos; then
AC_MSG_CHECKING([for libphobos support]) AC_MSG_CHECKING([for libphobos support])
if (srcdir=${srcdir}/libphobos; \ if (srcdir=${srcdir}/libphobos; \
. ${srcdir}/configure.tgt; \ . ${srcdir}/configure.tgt; \
test -n "$UNSUPPORTED") test "$LIBPHOBOS_SUPPORTED" != "yes")
then then
AC_MSG_RESULT([no]) AC_MSG_RESULT([no])
noconfigdirs="$noconfigdirs target-libphobos" noconfigdirs="$noconfigdirs target-libphobos"
......
2019-04-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 2019-04-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* configure.tgt (LIBPHOBOS_SUPPORTED): Default to no.
Set to yes explicitly.
(x86_64-*-solaris2.11* | i?86-*-solaris2.11*): Mark supported.
* configure.ac: Handle --enable-libphobos.
(x86_64-*-solaris2.* | i?86-*-solaris2.*): Only mark supported
with gas.
(ENABLE_LIBPHOBOS): New conditional.
* configure: Regenerate.
* Makefile.am (SUBDIRS): Only set if ENABLE_LIBPHOBOS.
* Makefile.in: Regenerate.
2019-04-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Iain Buclaw <ibuclaw@gdcproject.org> Iain Buclaw <ibuclaw@gdcproject.org>
PR d/88150 PR d/88150
......
...@@ -15,7 +15,11 @@ ...@@ -15,7 +15,11 @@
# along with GCC; see the file COPYING3. If not see # along with GCC; see the file COPYING3. If not see
# <http://www.gnu.org/licenses/>. # <http://www.gnu.org/licenses/>.
SUBDIRS = libdruntime src testsuite if ENABLE_LIBPHOBOS
SUBDIRS = libdruntime src testsuite
else
SUBDIRS =
endif
ACLOCAL_AMFLAGS = -I . -I .. -I ../config ACLOCAL_AMFLAGS = -I . -I .. -I ../config
......
...@@ -188,7 +188,7 @@ am__define_uniq_tagged_files = \ ...@@ -188,7 +188,7 @@ am__define_uniq_tagged_files = \
ETAGS = etags ETAGS = etags
CTAGS = ctags CTAGS = ctags
CSCOPE = cscope CSCOPE = cscope
DIST_SUBDIRS = $(SUBDIRS) DIST_SUBDIRS = libdruntime src testsuite
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
...@@ -335,7 +335,8 @@ target_vendor = @target_vendor@ ...@@ -335,7 +335,8 @@ target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@ top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@ top_builddir = @top_builddir@
top_srcdir = @top_srcdir@ top_srcdir = @top_srcdir@
SUBDIRS = libdruntime src testsuite @ENABLE_LIBPHOBOS_FALSE@SUBDIRS =
@ENABLE_LIBPHOBOS_TRUE@SUBDIRS = libdruntime src testsuite
ACLOCAL_AMFLAGS = -I . -I .. -I ../config ACLOCAL_AMFLAGS = -I . -I .. -I ../config
# Multilib support. # Multilib support.
......
...@@ -686,6 +686,8 @@ DRUNTIME_GC_ENABLE_TRUE ...@@ -686,6 +686,8 @@ DRUNTIME_GC_ENABLE_TRUE
libphobos_srcdir libphobos_srcdir
libphobos_builddir libphobos_builddir
get_gcc_base_ver get_gcc_base_ver
ENABLE_LIBPHOBOS_FALSE
ENABLE_LIBPHOBOS_TRUE
phobos_compiler_shared_flag phobos_compiler_shared_flag
phobos_compiler_pic_flag phobos_compiler_pic_flag
OTOOL64 OTOOL64
...@@ -813,6 +815,7 @@ with_pic ...@@ -813,6 +815,7 @@ with_pic
enable_fast_install enable_fast_install
with_gnu_ld with_gnu_ld
enable_libtool_lock enable_libtool_lock
enable_libphobos
with_gcc_major_version_only with_gcc_major_version_only
enable_werror enable_werror
enable_druntime_gc enable_druntime_gc
...@@ -1463,6 +1466,7 @@ Optional Features: ...@@ -1463,6 +1466,7 @@ Optional Features:
--enable-fast-install[=PKGS] --enable-fast-install[=PKGS]
optimize for fast installation [default=yes] optimize for fast installation [default=yes]
--disable-libtool-lock avoid locking (might break parallel builds) --disable-libtool-lock avoid locking (might break parallel builds)
--enable-libphobos Enable libphobos
--enable-werror turns on -Werror [default=no] --enable-werror turns on -Werror [default=no]
--enable-druntime-gc enable D runtime garbage collector (default: yes) --enable-druntime-gc enable D runtime garbage collector (default: yes)
--enable-unix enables Unix runtime (default: yes, for Unix --enable-unix enables Unix runtime (default: yes, for Unix
...@@ -11619,7 +11623,7 @@ else ...@@ -11619,7 +11623,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF cat > conftest.$ac_ext <<_LT_EOF
#line 11622 "configure" #line 11626 "configure"
#include "confdefs.h" #include "confdefs.h"
#if HAVE_DLFCN_H #if HAVE_DLFCN_H
...@@ -11725,7 +11729,7 @@ else ...@@ -11725,7 +11729,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF cat > conftest.$ac_ext <<_LT_EOF
#line 11728 "configure" #line 11732 "configure"
#include "confdefs.h" #include "confdefs.h"
#if HAVE_DLFCN_H #if HAVE_DLFCN_H
...@@ -13903,6 +13907,56 @@ fi ...@@ -13903,6 +13907,56 @@ fi
lt_prog_compiler_pic_D="$phobos_compiler_shared_flag" lt_prog_compiler_pic_D="$phobos_compiler_shared_flag"
pic_mode='default' pic_mode='default'
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --enable-libphobos" >&5
$as_echo_n "checking for --enable-libphobos... " >&6; }
# Check whether --enable-libphobos was given.
if test "${enable_libphobos+set}" = set; then :
enableval=$enable_libphobos;
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_libphobos" >&5
$as_echo "$enable_libphobos" >&6; }
# See if supported.
unset LIBPHOBOS_SUPPORTED
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for host support for libphobos" >&5
$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
;;
esac
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBPHOBOS_SUPPORTED" >&5
$as_echo "$LIBPHOBOS_SUPPORTED" >&6; }
# Decide if it's usable.
case $LIBPHOBOS_SUPPORTED:$enable_libphobos in
*:no) use_libphobos=no ;;
*:yes) use_libphobos=yes ;;
yes:*) use_libphobos=yes ;;
*:*) use_libphobos=no ;;
esac
if test x$use_libphobos = xyes; then
ENABLE_LIBPHOBOS_TRUE=
ENABLE_LIBPHOBOS_FALSE='#'
else
ENABLE_LIBPHOBOS_TRUE='#'
ENABLE_LIBPHOBOS_FALSE=
fi
# Determine what GCC version number to use in filesystem paths. # Determine what GCC version number to use in filesystem paths.
get_gcc_base_ver="cat" get_gcc_base_ver="cat"
...@@ -15349,6 +15403,10 @@ if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then ...@@ -15349,6 +15403,10 @@ if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined. as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5 Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi fi
if test -z "${ENABLE_LIBPHOBOS_TRUE}" && test -z "${ENABLE_LIBPHOBOS_FALSE}"; then
as_fn_error $? "conditional \"ENABLE_LIBPHOBOS\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
if test -z "${DRUNTIME_GC_ENABLE_TRUE}" && test -z "${DRUNTIME_GC_ENABLE_FALSE}"; then if test -z "${DRUNTIME_GC_ENABLE_TRUE}" && test -z "${DRUNTIME_GC_ENABLE_FALSE}"; then
as_fn_error $? "conditional \"DRUNTIME_GC_ENABLE\" was never defined. as_fn_error $? "conditional \"DRUNTIME_GC_ENABLE\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5 Usually this means the macro was only invoked conditionally." "$LINENO" 5
......
...@@ -113,6 +113,42 @@ AC_SUBST(phobos_compiler_shared_flag) ...@@ -113,6 +113,42 @@ AC_SUBST(phobos_compiler_shared_flag)
lt_prog_compiler_pic_D="$phobos_compiler_shared_flag" lt_prog_compiler_pic_D="$phobos_compiler_shared_flag"
pic_mode='default' pic_mode='default'
AC_MSG_CHECKING([for --enable-libphobos])
AC_ARG_ENABLE(libphobos,
[AS_HELP_STRING([--enable-libphobos], [Enable libphobos])])
AC_MSG_RESULT($enable_libphobos)
# See if supported.
unset LIBPHOBOS_SUPPORTED
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
;;
esac
AC_MSG_RESULT($LIBPHOBOS_SUPPORTED)
# Decide if it's usable.
case $LIBPHOBOS_SUPPORTED:$enable_libphobos in
*:no) use_libphobos=no ;;
*:yes) use_libphobos=yes ;;
yes:*) use_libphobos=yes ;;
*:*) use_libphobos=no ;;
esac
AM_CONDITIONAL(ENABLE_LIBPHOBOS, test x$use_libphobos = xyes)
# Determine what GCC version number to use in filesystem paths. # Determine what GCC version number to use in filesystem paths.
GCC_BASE_VER GCC_BASE_VER
......
...@@ -21,18 +21,24 @@ ...@@ -21,18 +21,24 @@
# Disable the libphobos or libdruntime components on untested or known # Disable the libphobos or libdruntime components on untested or known
# broken systems. More targets shall be added after testing. # broken systems. More targets shall be added after testing.
LIBPHOBOS_SUPPORTED=no
case "${target}" in case "${target}" in
arm*-*-linux*) arm*-*-linux*)
LIBPHOBOS_SUPPORTED=yes
;; ;;
mips*-*-linux*) mips*-*-linux*)
LIBPHOBOS_SUPPORTED=yes
;; ;;
x86_64-*-kfreebsd*-gnu | i?86-*-kfreebsd*-gnu) x86_64-*-kfreebsd*-gnu | i?86-*-kfreebsd*-gnu)
LIBPHOBOS_SUPPORTED=yes
;; ;;
x86_64-*-linux* | i?86-*-linux*) x86_64-*-linux* | i?86-*-linux*)
LIBPHOBOS_SUPPORTED=yes
;; ;;
x86_64-*-netbsd* | i?86-*-netbsd*) x86_64-*-netbsd* | i?86-*-netbsd*)
LIBPHOBOS_SUPPORTED=yes
;; ;;
*) x86_64-*-solaris2.11* | i?86-*-solaris2.11*)
UNSUPPORTED=1 LIBPHOBOS_SUPPORTED=yes
;; ;;
esac esac
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment