re PR d/87788 (Support D on x86_64-apple-darwin*)
authorIain Buclaw <ibuclaw@gdcproject.org>
Wed, 31 Oct 2018 09:44:31 +0000 (09:44 +0000)
committerIain Buclaw <ibuclaw@gcc.gnu.org>
Wed, 31 Oct 2018 09:44:31 +0000 (09:44 +0000)
ChangeLog:

2018-10-31  Iain Buclaw  <ibuclaw@gdcproject.org>

PR bootstrap/87788
PR d/87799
* configure: Rebuild.
* configure.ac: Disable D on systems where it is known not to work.

libphobos/ChangeLog:

2018-10-31  Iain Buclaw  <ibuclaw@gdcproject.org>

PR bootstrap/87789
PR d/87818
PR d/87819
* configure.tgt: New file.

From-SVN: r265658

ChangeLog
configure
configure.ac
libphobos/ChangeLog
libphobos/configure.tgt [new file with mode: 0644]

index 3ad23042bdd83dfc7dd9fc1777f766c080b222a3..82f077e4b4d2afce7d1aeaa0e178c4324a0ed5ab 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2018-10-31  Iain Buclaw  <ibuclaw@gdcproject.org>
+
+       PR bootstrap/87788
+       PR d/87799
+       * configure: Rebuild.
+       * configure.ac: Disable D on systems where it is known not to work.
+
 2018-10-28  Iain Buclaw  <ibuclaw@gdcproject.org>
 
        * Makefile.def (target_modules): Add libphobos.
index 77e7e1869ba1b8a0c44c87558ce2f9fddf870e6e..20741aef7e37d5e89d87565a50ee72edf152b881 100755 (executable)
--- a/configure
+++ b/configure
@@ -3345,6 +3345,40 @@ if test "${ENABLE_LIBSTDCXX}" = "default" ; then
   esac
 fi
 
+# Disable D on systems where it is known to not work.
+# For testing, you can override this with --enable-languages=d.
+case ,${enable_languages}, in
+  *,d,*)
+    ;;
+  *)
+    case "${target}" in
+      *-*-darwin* | *-*-cygwin* | *-*-mingw*)
+       unsupported_languages="$unsupported_languages d"
+       ;;
+    esac
+    ;;
+esac
+
+# Disable libphobos on unsupported systems.
+# For testing, you can override this with --enable-libphobos.
+if test -d ${srcdir}/libphobos; then
+    if test x$enable_libphobos = x; then
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libphobos support" >&5
+$as_echo_n "checking for libphobos support... " >&6; }
+       if (srcdir=${srcdir}/libphobos; \
+               . ${srcdir}/configure.tgt; \
+               test -n "$UNSUPPORTED")
+       then
+           { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+           noconfigdirs="$noconfigdirs target-libphobos"
+       else
+           { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+       fi
+    fi
+fi
+
 # Disable Fortran for some systems.
 case "${target}" in
   mmix-*-*)
index 1e5979dc043817caad7be14300088cf53c141648..b10212b3be5ee41dd9f40f0f758540b2e1ddd410 100644 (file)
@@ -674,6 +674,37 @@ if test "${ENABLE_LIBSTDCXX}" = "default" ; then
   esac
 fi
 
+# Disable D on systems where it is known to not work.
+# For testing, you can override this with --enable-languages=d.
+case ,${enable_languages}, in
+  *,d,*)
+    ;;
+  *)
+    case "${target}" in
+      *-*-darwin* | *-*-cygwin* | *-*-mingw*)
+       unsupported_languages="$unsupported_languages d"
+       ;;
+    esac
+    ;;
+esac
+
+# Disable libphobos on unsupported systems.
+# For testing, you can override this with --enable-libphobos.
+if test -d ${srcdir}/libphobos; then
+    if test x$enable_libphobos = x; then
+       AC_MSG_CHECKING([for libphobos support])
+       if (srcdir=${srcdir}/libphobos; \
+               . ${srcdir}/configure.tgt; \
+               test -n "$UNSUPPORTED")
+       then
+           AC_MSG_RESULT([no])
+           noconfigdirs="$noconfigdirs target-libphobos"
+       else
+           AC_MSG_RESULT([yes])
+       fi
+    fi
+fi
+
 # Disable Fortran for some systems.
 case "${target}" in
   mmix-*-*)
index 66be66277ec985eaebec5ce194cc5bf9946e364f..b5e25bb68552d77d2c6b4643ea6d026177abf273 100644 (file)
@@ -1,3 +1,10 @@
+2018-10-31  Iain Buclaw  <ibuclaw@gdcproject.org>
+
+       PR bootstrap/87789
+       PR d/87818
+       PR d/87819
+       * configure.tgt: New file.
+
 2018-10-28  Iain Buclaw  <ibuclaw@gdcproject.org>
 
        * Makefile.am: New file.
diff --git a/libphobos/configure.tgt b/libphobos/configure.tgt
new file mode 100644 (file)
index 0000000..8afd350
--- /dev/null
@@ -0,0 +1,36 @@
+# -*- shell-script -*-
+# Copyright (C) 2018 Free Software Foundation, Inc.
+#
+# GCC is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+#
+# GCC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GCC; see the file COPYING3.  If not see
+# <http://www.gnu.org/licenses/>.
+
+# This is the target specific configuration file.  This is invoked by the
+# autoconf generated configure script.  Putting it in a separate shell file
+# lets us skip running autoconf when modifying target specific information.
+
+# Disable the libphobos or libdruntime components on untested or known
+# broken systems.  More targets shall be added after testing.
+case "${target}" in
+  arm*-*-linux*)
+       ;;
+  mips*-*-linux*)
+       ;;
+  x86_64-*-kfreebsd*-gnu | i?86-*-kfreebsd*-gnu)
+       ;;
+  x86_64-*-linux* | i?86-*-linux*)
+       ;;
+  *)
+       UNSUPPORTED=1
+       ;;
+esac