[gcc-7] 12/354: * Update gdc to the trunk 20161114.
Ximin Luo
infinity0 at debian.org
Thu Nov 23 15:50:21 UTC 2017
This is an automated email from the git hooks/post-receive script.
infinity0 pushed a commit to branch master
in repository gcc-7.
commit b5915952dc63dc37194dfad4e6b3bb7b53de0fac
Author: doko <doko at 6ca36cf4-e1d1-0310-8c6f-e303bb2178ca>
Date: Mon Nov 14 14:01:20 2016 +0000
* Update gdc to the trunk 20161114.
git-svn-id: svn+ssh://svn.debian.org/svn/gcccvs/branches/sid/gcc-7@9052 6ca36cf4-e1d1-0310-8c6f-e303bb2178ca
---
debian/changelog | 1 +
debian/control | 75 ++++
debian/patches/{gdc-6-doc.diff => gdc-7-doc.diff} | 18 +-
debian/patches/{gdc-6.diff => gdc-7.diff} | 18 +-
debian/patches/gdc-libphobos-build.diff | 424 +++++++++++-----------
debian/patches/gdc-libphobos-link.diff | 6 +-
debian/patches/gdc-symbol-mangling.diff | 38 --
debian/patches/gdc-versym-cpu.diff | 10 +-
debian/patches/gdc-versym-os.diff | 25 +-
debian/rules.d/binary-d.mk | 8 +-
debian/rules.defs | 2 +-
debian/rules.patch | 5 +-
debian/rules2 | 3 +-
13 files changed, 327 insertions(+), 306 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index 73a33b3..0eb6a0b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,7 @@
gcc-7 (7-20161112-2) UNRELEASED; urgency=medium
* More symbol files updates.
+ * Update gdc to the trunk 20161114.
-- Matthias Klose <doko at debian.org> Sun, 13 Nov 2016 13:04:49 +0100
diff --git a/debian/control b/debian/control
index 053691c..7f50337 100644
--- a/debian/control
+++ b/debian/control
@@ -2048,6 +2048,81 @@ Description: GNU Standard C++ Library v3 (documentation files)
alphabetical list, compound list, file list, namespace members,
compound members and file members.
+Package: gdc-7
+Architecture: any
+Priority: optional
+Depends: gcc-7-base (>= ${gcc:SoftVersion}), g++-7 (>= ${gcc:SoftVersion}), ${dep:gdccross}, ${dep:phobosdev}, ${shlibs:Depends}, ${misc:Depends}
+Provides: gdc, d-compiler, d-v2-compiler
+Replaces: gdc (<< 4.4.6-5)
+Description: GNU D compiler (version 2)
+ This is the GNU D compiler, which compiles D on platforms supported by gcc.
+ It uses the gcc backend to generate optimised code.
+ .
+ This compiler supports D language version 2.
+
+Package: gdc-7-multilib
+Architecture: any
+Priority: optional
+Depends: gcc-7-base (>= ${gcc:SoftVersion}), gdc-7 (= ${gcc:Version}), gcc-7-multilib (= ${gcc:Version}), ${dep:libphobosbiarchdev}${shlibs:Depends}, ${misc:Depends}
+Description: GNU D compiler (version 2, multilib support)
+ This is the GNU D compiler, which compiles D on platforms supported by gcc.
+ It uses the gcc backend to generate optimised code.
+ .
+ This is a dependency package, depending on development packages
+ for the non-default multilib architecture(s).
+
+Package: libphobos-7-dev
+Architecture: amd64 armel armhf i386 x32 kfreebsd-amd64 kfreebsd-i386
+Section: libdevel
+Priority: optional
+Depends: gcc-7-base (= ${gcc:Version}), zlib1g-dev, ${shlibs:Depends}, ${misc:Depends}
+Description: Phobos D standard library
+ This is the Phobos standard library that comes with the D2 compiler.
+ .
+ For more information check http://www.dlang.org/phobos/
+
+#Package: libphobos`'PHOBOS_V`'PV`'TS-dbg
+#Section: debug
+#Architecture: ifdef(`TARGET',`CROSS_ARCH',`libphobos_archs')
+#Priority: extra
+#Depends: BASELDEP, libphobos`'PHOBOS_V`'PV-dev (= ${gdc:Version}), ${misc:Depends}
+#Provides: libphobos`'PHOBOS_V`'TS-dbg
+#BUILT_USING`'dnl
+#Description: The Phobos D standard library (debug symbols)
+# This is the Phobos standard library that comes with the D2 compiler.
+# .
+# For more information check http://www.dlang.org/phobos/
+
+Package: lib64phobos-7-dev
+Architecture: i386 powerpc sparc s390 mips mipsel mipsn32 mipsn32el x32
+Section: libdevel
+Priority: optional
+Depends: gcc-7-base (= ${gcc:Version}), lib64gcc-7-dev (= ${gcc:Version}), lib64z1-dev, ${shlibs:Depends}, ${misc:Depends}
+Description: Phobos D standard library (64bit development files)
+ This is the Phobos standard library that comes with the D2 compiler.
+ .
+ For more information check http://www.dlang.org/phobos/
+
+Package: lib32phobos-7-dev
+Architecture: amd64 ppc64 kfreebsd-amd64 s390x sparc64 x32 mipsn32 mipsn32el mips64 mips64el
+Section: libdevel
+Priority: optional
+Depends: gcc-7-base (= ${gcc:Version}), lib32gcc-7-dev (= ${gcc:Version}), lib32z1-dev, ${shlibs:Depends}, ${misc:Depends}
+Description: Phobos D standard library (64bit development files)
+ This is the Phobos standard library that comes with the D2 compiler.
+ .
+ For more information check http://www.dlang.org/phobos/
+
+Package: libx32phobos-7-dev
+Architecture: amd64 i386
+Section: libdevel
+Priority: optional
+Depends: gcc-7-base (= ${gcc:Version}), libx32gcc-7-dev (= ${gcc:Version}), ${dep:libx32z}, ${shlibs:Depends}, ${misc:Depends}
+Description: Phobos D standard library (x32 development files)
+ This is the Phobos standard library that comes with the D2 compiler.
+ .
+ For more information check http://www.dlang.org/phobos/
+
Package: fixincludes
Architecture: any
Priority: optional
diff --git a/debian/patches/gdc-6-doc.diff b/debian/patches/gdc-7-doc.diff
similarity index 89%
rename from debian/patches/gdc-6-doc.diff
rename to debian/patches/gdc-7-doc.diff
index c8c50d2..0854043 100644
--- a/debian/patches/gdc-6-doc.diff
+++ b/debian/patches/gdc-7-doc.diff
@@ -2,7 +2,7 @@
# DP: relevant documentation about the GDC front end (documentation part).
--- a/src/gcc/doc/frontends.texi
-+++ b/src/gcc/doc/frontends.texi
++++ a/src/gcc/doc/frontends.texi
@@ -9,6 +9,7 @@
@cindex GNU Compiler Collection
@cindex GNU C Compiler
@@ -21,8 +21,8 @@
The abbreviation @dfn{GCC} has multiple meanings in common use. The
current official meaning is ``GNU Compiler Collection'', which refers
--- a/src/gcc/doc/install.texi
-+++ b/src/gcc/doc/install.texi
-@@ -1547,12 +1547,12 @@ their runtime libraries should be built. For a list of valid values for
++++ a/src/gcc/doc/install.texi
+@@ -1566,12 +1566,12 @@ their runtime libraries should be built. For a list of valid values for
grep ^language= */config-lang.in
@end smallexample
Currently, you can use any of the following:
@@ -38,8 +38,8 @@
enabled by default. The other languages are default languages.
--- a/src/gcc/doc/invoke.texi
-+++ b/src/gcc/doc/invoke.texi
-@@ -1269,6 +1269,15 @@ called @dfn{specs}.
++++ a/src/gcc/doc/invoke.texi
+@@ -1330,6 +1330,15 @@ called @dfn{specs}.
Ada source code file containing a library unit body (a subprogram or
package body). Such files are also called @dfn{bodies}.
@@ -55,7 +55,7 @@
@c GCC also knows about some suffixes for languages not yet included:
@c Pascal:
@c @var{file}.p
-@@ -1304,6 +1313,7 @@ objective-c objective-c-header objective-c-cpp-output
+@@ -1365,6 +1374,7 @@ objective-c objective-c-header objective-c-cpp-output
objective-c++ objective-c++-header objective-c++-cpp-output
assembler assembler-with-cpp
ada
@@ -64,7 +64,7 @@
go
java
--- a/src/gcc/doc/sourcebuild.texi
-+++ b/src/gcc/doc/sourcebuild.texi
++++ a/src/gcc/doc/sourcebuild.texi
@@ -109,6 +109,9 @@ The Objective-C and Objective-C++ runtime library.
@item libquadmath
The runtime support library for quad-precision math operations.
@@ -76,8 +76,8 @@
The Stack protector runtime library.
--- a/src/gcc/doc/standards.texi
-+++ b/src/gcc/doc/standards.texi
-@@ -280,6 +280,16 @@ available online, see @uref{http://gcc.gnu.org/readings.html}
++++ a/src/gcc/doc/standards.texi
+@@ -307,6 +307,16 @@ available online, see @uref{http://gcc.gnu.org/readings.html}
As of the GCC 4.7.1 release, GCC supports the Go 1 language standard,
described at @uref{http://golang.org/doc/go1.html}.
diff --git a/debian/patches/gdc-6.diff b/debian/patches/gdc-7.diff
similarity index 89%
rename from debian/patches/gdc-6.diff
rename to debian/patches/gdc-7.diff
index dc144b2..d4c2be7 100644
--- a/debian/patches/gdc-6.diff
+++ b/debian/patches/gdc-7.diff
@@ -20,7 +20,7 @@ Index: b/src/gcc/config/i386/cygming.h
===================================================================
--- a/src/gcc/config/i386/cygming.h
+++ b/src/gcc/config/i386/cygming.h
-@@ -175,6 +175,10 @@ along with GCC; see the file COPYING3.
+@@ -181,6 +181,10 @@ along with GCC; see the file COPYING3.
#undef MATH_LIBRARY
#define MATH_LIBRARY ""
@@ -49,7 +49,7 @@ Index: b/src/gcc/config/rs6000/rs6000.c
===================================================================
--- a/src/gcc/config/rs6000/rs6000.c
+++ b/src/gcc/config/rs6000/rs6000.c
-@@ -28533,7 +28533,8 @@ rs6000_output_function_epilogue (FILE *f
+@@ -30292,7 +30292,8 @@ rs6000_output_function_epilogue (FILE *f
if (lang_GNU_C ()
|| ! strcmp (language_string, "GNU GIMPLE")
|| ! strcmp (language_string, "GNU Go")
@@ -63,7 +63,7 @@ Index: b/src/gcc/dwarf2out.c
===================================================================
--- a/src/gcc/dwarf2out.c
+++ b/src/gcc/dwarf2out.c
-@@ -4846,6 +4846,16 @@ is_ada (void)
+@@ -5023,6 +5023,16 @@ is_ada (void)
return lang == DW_LANG_Ada95 || lang == DW_LANG_Ada83;
}
@@ -80,7 +80,7 @@ Index: b/src/gcc/dwarf2out.c
/* Remove the specified attribute if present. Return TRUE if removal
was successful. */
-@@ -21948,6 +21958,8 @@ gen_compile_unit_die (const char *filena
+@@ -23407,6 +23417,8 @@ gen_compile_unit_die (const char *filena
language = DW_LANG_ObjC;
else if (strcmp (language_string, "GNU Objective-C++") == 0)
language = DW_LANG_ObjC_plus_plus;
@@ -89,7 +89,7 @@ Index: b/src/gcc/dwarf2out.c
else if (dwarf_version >= 5 || !dwarf_strict)
{
if (strcmp (language_string, "GNU Go") == 0)
-@@ -23400,7 +23412,7 @@ declare_in_namespace (tree thing, dw_die
+@@ -24927,7 +24939,7 @@ declare_in_namespace (tree thing, dw_die
if (ns_context != context_die)
{
@@ -98,7 +98,7 @@ Index: b/src/gcc/dwarf2out.c
return ns_context;
if (DECL_P (thing))
gen_decl_die (thing, NULL, NULL, ns_context);
-@@ -23423,7 +23435,7 @@ gen_namespace_die (tree decl, dw_die_ref
+@@ -24950,7 +24962,7 @@ gen_namespace_die (tree decl, dw_die_ref
{
/* Output a real namespace or module. */
context_die = setup_namespace_context (decl, comp_unit_die ());
@@ -107,7 +107,7 @@ Index: b/src/gcc/dwarf2out.c
? DW_TAG_module : DW_TAG_namespace,
context_die, decl);
/* For Fortran modules defined in different CU don't add src coords. */
-@@ -23490,7 +23502,7 @@ gen_decl_die (tree decl, tree origin, st
+@@ -25017,7 +25029,7 @@ gen_decl_die (tree decl, tree origin, st
break;
case CONST_DECL:
@@ -116,7 +116,7 @@ Index: b/src/gcc/dwarf2out.c
{
/* The individual enumerators of an enum type get output when we output
the Dwarf representation of the relevant enum type itself. */
-@@ -24011,7 +24023,7 @@ dwarf2out_decl (tree decl)
+@@ -25562,7 +25574,7 @@ dwarf2out_decl (tree decl)
case CONST_DECL:
if (debug_info_level <= DINFO_LEVEL_TERSE)
return;
@@ -129,7 +129,7 @@ Index: b/src/gcc/gcc.c
===================================================================
--- a/src/gcc/gcc.c
+++ b/src/gcc/gcc.c
-@@ -1288,6 +1288,7 @@ static const struct compiler default_com
+@@ -1304,6 +1304,7 @@ static const struct compiler default_com
{".java", "#Java", 0, 0, 0}, {".class", "#Java", 0, 0, 0},
{".zip", "#Java", 0, 0, 0}, {".jar", "#Java", 0, 0, 0},
{".go", "#Go", 0, 1, 0},
diff --git a/debian/patches/gdc-libphobos-build.diff b/debian/patches/gdc-libphobos-build.diff
index 31ec133..4a1e0fa 100644
--- a/debian/patches/gdc-libphobos-build.diff
+++ b/debian/patches/gdc-libphobos-build.diff
@@ -1,122 +1,10 @@
# DP: This implements building of libphobos library in GCC.
-Index: b/src/config-ml.in
-===================================================================
---- a/src/config-ml.in
-+++ b/src/config-ml.in
-@@ -513,6 +513,7 @@ multi-do:
- exec_prefix="$(exec_prefix)" \
- GCJFLAGS="$(GCJFLAGS) $${flags}" \
- GOCFLAGS="$(GOCFLAGS) $${flags}" \
-+ GDCFLAGS="$(GDCFLAGS) $${flags}" \
- CXXFLAGS="$(CXXFLAGS) $${flags}" \
- LIBCFLAGS="$(LIBCFLAGS) $${flags}" \
- LIBCXXFLAGS="$(LIBCXXFLAGS) $${flags}" \
-@@ -746,7 +747,7 @@ if [ -n "${multidirs}" ] && [ -z "${ml_n
- break
- fi
- done
-- ml_config_env='CC="${CC_}$flags" CXX="${CXX_}$flags" F77="${F77_}$flags" GCJ="${GCJ_}$flags" GFORTRAN="${GFORTRAN_}$flags" GOC="${GOC_}$flags"'
-+ ml_config_env='CC="${CC_}$flags" CXX="${CXX_}$flags" F77="${F77_}$flags" GCJ="${GCJ_}$flags" GFORTRAN="${GFORTRAN_}$flags" GOC="${GOC_}$flags" GDC="${GDC_}$flags"'
-
- if [ "${with_target_subdir}" = "." ]; then
- CC_=$CC' '
-@@ -755,6 +756,7 @@ if [ -n "${multidirs}" ] && [ -z "${ml_n
- GCJ_=$GCJ' '
- GFORTRAN_=$GFORTRAN' '
- GOC_=$GOC' '
-+ GDC_=$GDC' '
- else
- # Create a regular expression that matches any string as long
- # as ML_POPDIR.
-@@ -831,6 +833,18 @@ if [ -n "${multidirs}" ] && [ -z "${ml_n
- esac
- done
-
-+ GDC_=
-+ for arg in ${GDC}; do
-+ case $arg in
-+ -[BIL]"${ML_POPDIR}"/*)
-+ GDC_="${GDC_}"`echo "X${arg}" | sed -n "s/X\\(-[BIL]${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X-[BIL]${popdir_rx}\\(.*\\)/\\1/p"`' ' ;;
-+ "${ML_POPDIR}"/*)
-+ GDC_="${GDC_}"`echo "X${arg}" | sed -n "s/X\\(${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X${popdir_rx}\\(.*\\)/\\1/p"`' ' ;;
-+ *)
-+ GDC_="${GDC_}${arg} " ;;
-+ esac
-+ done
-+
- if test "x${LD_LIBRARY_PATH+set}" = xset; then
- LD_LIBRARY_PATH_=
- for arg in `echo "$LD_LIBRARY_PATH" | tr ':' ' '`; do
-Index: b/src/config/multi.m4
-===================================================================
---- a/src/config/multi.m4
-+++ b/src/config/multi.m4
-@@ -65,4 +65,5 @@ CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
- CC="$CC"
- CXX="$CXX"
- GFORTRAN="$GFORTRAN"
--GCJ="$GCJ"])])dnl
-+GCJ="$GCJ"
-+GDC="$GDC"])])dnl
-Index: b/src/configure.ac
-===================================================================
---- a/src/configure.ac
-+++ b/src/configure.ac
-@@ -171,6 +171,7 @@ target_libraries="target-libgcc \
- target-libssp \
- target-libquadmath \
- target-libgfortran \
-+ target-libphobos \
- target-boehm-gc \
- ${libgcj} \
- target-libobjc \
-@@ -1371,6 +1372,7 @@ if test "${build}" != "${host}" ; then
- GCJ_FOR_BUILD=${GCJ_FOR_BUILD-gcj}
- GFORTRAN_FOR_BUILD=${GFORTRAN_FOR_BUILD-gfortran}
- GOC_FOR_BUILD=${GOC_FOR_BUILD-gccgo}
-+ GDC_FOR_BUILD=${GDC_FOR_BUILD-gdc}
- DLLTOOL_FOR_BUILD=${DLLTOOL_FOR_BUILD-dlltool}
- LD_FOR_BUILD=${LD_FOR_BUILD-ld}
- NM_FOR_BUILD=${NM_FOR_BUILD-nm}
-@@ -1385,6 +1387,7 @@ else
- GCJ_FOR_BUILD="\$(GCJ)"
- GFORTRAN_FOR_BUILD="\$(GFORTRAN)"
- GOC_FOR_BUILD="\$(GOC)"
-+ GDC_FOR_BUILD="\$(GDC)"
- DLLTOOL_FOR_BUILD="\$(DLLTOOL)"
- LD_FOR_BUILD="\$(LD)"
- NM_FOR_BUILD="\$(NM)"
-@@ -3311,6 +3314,7 @@ AC_SUBST(DLLTOOL_FOR_BUILD)
- AC_SUBST(GCJ_FOR_BUILD)
- AC_SUBST(GFORTRAN_FOR_BUILD)
- AC_SUBST(GOC_FOR_BUILD)
-+AC_SUBST(GDC_FOR_BUILD)
- AC_SUBST(LDFLAGS_FOR_BUILD)
- AC_SUBST(LD_FOR_BUILD)
- AC_SUBST(NM_FOR_BUILD)
-@@ -3421,6 +3425,7 @@ NCN_STRICT_CHECK_TARGET_TOOLS(GCC_FOR_TA
- NCN_STRICT_CHECK_TARGET_TOOLS(GCJ_FOR_TARGET, gcj)
- NCN_STRICT_CHECK_TARGET_TOOLS(GFORTRAN_FOR_TARGET, gfortran)
- NCN_STRICT_CHECK_TARGET_TOOLS(GOC_FOR_TARGET, gccgo)
-+NCN_STRICT_CHECK_TARGET_TOOLS(GDC_FOR_TARGET, gdc)
-
- ACX_CHECK_INSTALLED_TARGET_TOOL(AR_FOR_TARGET, ar)
- ACX_CHECK_INSTALLED_TARGET_TOOL(AS_FOR_TARGET, as)
-@@ -3456,6 +3461,8 @@ GCC_TARGET_TOOL(gfortran, GFORTRAN_FOR_T
- [gcc/gfortran -B$$r/$(HOST_SUBDIR)/gcc/], fortran)
- GCC_TARGET_TOOL(gccgo, GOC_FOR_TARGET, GOC,
- [gcc/gccgo -B$$r/$(HOST_SUBDIR)/gcc/], go)
-+GCC_TARGET_TOOL(gdc, GDC_FOR_TARGET, GDC,
-+ [gcc/gdc -B$$r/$(HOST_SUBDIR)/gcc/], d)
- GCC_TARGET_TOOL(ld, LD_FOR_TARGET, LD, [ld/ld-new])
- GCC_TARGET_TOOL(lipo, LIPO_FOR_TARGET, LIPO)
- GCC_TARGET_TOOL(nm, NM_FOR_TARGET, NM, [binutils/nm-new])
Index: b/src/Makefile.def
===================================================================
--- a/src/Makefile.def
+++ b/src/Makefile.def
-@@ -162,6 +162,7 @@ target_modules = { module= libquadmath;
+@@ -157,6 +157,7 @@ target_modules = { module= libquadmath;
target_modules = { module= libgfortran; };
target_modules = { module= libobjc; };
target_modules = { module= libgo; };
@@ -124,7 +12,7 @@ Index: b/src/Makefile.def
target_modules = { module= libtermcap; no_check=true;
missing=mostlyclean;
missing=clean;
-@@ -319,6 +320,7 @@ flags_to_pass = { flag= GCJ_FOR_TARGET ;
+@@ -284,6 +285,7 @@ flags_to_pass = { flag= GCJ_FOR_TARGET ;
flags_to_pass = { flag= GFORTRAN_FOR_TARGET ; };
flags_to_pass = { flag= GOC_FOR_TARGET ; };
flags_to_pass = { flag= GOCFLAGS_FOR_TARGET ; };
@@ -132,16 +20,16 @@ Index: b/src/Makefile.def
flags_to_pass = { flag= LD_FOR_TARGET ; };
flags_to_pass = { flag= LIPO_FOR_TARGET ; };
flags_to_pass = { flag= LDFLAGS_FOR_TARGET ; };
-@@ -596,6 +598,8 @@ dependencies = { module=configure-target
+@@ -552,6 +554,8 @@ dependencies = { module=configure-target
dependencies = { module=all-target-libgo; on=all-target-libbacktrace; };
dependencies = { module=all-target-libgo; on=all-target-libffi; };
dependencies = { module=all-target-libgo; on=all-target-libatomic; };
+dependencies = { module=configure-target-libphobos; on=configure-target-zlib; };
+dependencies = { module=all-target-libphobos; on=all-target-zlib; };
- dependencies = { module=configure-target-libjava; on=configure-target-zlib; };
- dependencies = { module=configure-target-libjava; on=configure-target-boehm-gc; };
- dependencies = { module=configure-target-libjava; on=configure-target-libffi; };
-@@ -660,6 +664,8 @@ languages = { language=objc; gcc-check-t
+ dependencies = { module=configure-target-libobjc; on=configure-target-boehm-gc; };
+ dependencies = { module=all-target-libobjc; on=all-target-boehm-gc; };
+ dependencies = { module=configure-target-libstdc++-v3; on=configure-target-libgomp; };
+@@ -606,6 +610,8 @@ languages = { language=objc; gcc-check-t
languages = { language=obj-c++; gcc-check-target=check-obj-c++; };
languages = { language=go; gcc-check-target=check-go;
lib-check-target=check-target-libgo; };
@@ -150,66 +38,6 @@ Index: b/src/Makefile.def
// Toplevel bootstrap
bootstrap_stage = { id=1 ; };
-Index: b/src/Makefile.tpl
-===================================================================
---- a/src/Makefile.tpl
-+++ b/src/Makefile.tpl
-@@ -160,6 +160,7 @@ BUILD_EXPORTS = \
- GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \
- GOC="$(GOC_FOR_BUILD)"; export GOC; \
- GOCFLAGS="$(GOCFLAGS_FOR_BUILD)"; export GOCFLAGS; \
-+ GDC="$(GDC_FOR_BUILD)"; export GDC; \
- DLLTOOL="$(DLLTOOL_FOR_BUILD)"; export DLLTOOL; \
- LD="$(LD_FOR_BUILD)"; export LD; \
- LDFLAGS="$(LDFLAGS_FOR_BUILD)"; export LDFLAGS; \
-@@ -197,6 +198,7 @@ HOST_EXPORTS = \
- GCJ="$(GCJ)"; export GCJ; \
- GFORTRAN="$(GFORTRAN)"; export GFORTRAN; \
- GOC="$(GOC)"; export GOC; \
-+ GDC="$(GDC)"; export GDC; \
- AR="$(AR)"; export AR; \
- AS="$(AS)"; export AS; \
- CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-@@ -285,6 +287,7 @@ BASE_TARGET_EXPORTS = \
- GCJ="$(GCJ_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GCJ; \
- GFORTRAN="$(GFORTRAN_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GFORTRAN; \
- GOC="$(GOC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GOC; \
-+ GDC="$(GDC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GDC; \
- DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
- LD="$(COMPILER_LD_FOR_TARGET)"; export LD; \
- LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-@@ -353,6 +356,7 @@ DLLTOOL_FOR_BUILD = @DLLTOOL_FOR_BUILD@
- GCJ_FOR_BUILD = @GCJ_FOR_BUILD@
- GFORTRAN_FOR_BUILD = @GFORTRAN_FOR_BUILD@
- GOC_FOR_BUILD = @GOC_FOR_BUILD@
-+GDC_FOR_BUILD = @GDC_FOR_BUILD@
- LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@
- LD_FOR_BUILD = @LD_FOR_BUILD@
- NM_FOR_BUILD = @NM_FOR_BUILD@
-@@ -483,6 +487,7 @@ RAW_CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @
- GCJ_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCJ_FOR_TARGET@
- GFORTRAN_FOR_TARGET=$(STAGE_CC_WRAPPER) @GFORTRAN_FOR_TARGET@
- GOC_FOR_TARGET=$(STAGE_CC_WRAPPER) @GOC_FOR_TARGET@
-+GDC_FOR_TARGET=$(STAGE_CC_WRAPPER) @GDC_FOR_TARGET@
- DLLTOOL_FOR_TARGET=@DLLTOOL_FOR_TARGET@
- LD_FOR_TARGET=@LD_FOR_TARGET@
-
-@@ -609,6 +614,7 @@ EXTRA_HOST_FLAGS = \
- 'GCJ=$(GCJ)' \
- 'GFORTRAN=$(GFORTRAN)' \
- 'GOC=$(GOC)' \
-+ 'GDC=$(GDC)' \
- 'LD=$(LD)' \
- 'LIPO=$(LIPO)' \
- 'NM=$(NM)' \
-@@ -665,6 +671,7 @@ EXTRA_TARGET_FLAGS = \
- 'GFORTRAN=$$(GFORTRAN_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
- 'GOC=$$(GOC_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
- 'GOCFLAGS=$$(GOCFLAGS_FOR_TARGET)' \
-+ 'GDC=$$(GDC_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
- 'LD=$(COMPILER_LD_FOR_TARGET)' \
- 'LDFLAGS=$$(LDFLAGS_FOR_TARGET)' \
- 'LIBCFLAGS=$$(LIBCFLAGS_FOR_TARGET)' \
Index: b/src/Makefile.in
===================================================================
--- a/src/Makefile.in
@@ -238,7 +66,7 @@ Index: b/src/Makefile.in
DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
LD="$(COMPILER_LD_FOR_TARGET)"; export LD; \
LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-@@ -350,6 +353,7 @@ DLLTOOL_FOR_BUILD = @DLLTOOL_FOR_BUILD@
+@@ -348,6 +351,7 @@ DLLTOOL_FOR_BUILD = @DLLTOOL_FOR_BUILD@
GCJ_FOR_BUILD = @GCJ_FOR_BUILD@
GFORTRAN_FOR_BUILD = @GFORTRAN_FOR_BUILD@
GOC_FOR_BUILD = @GOC_FOR_BUILD@
@@ -246,7 +74,7 @@ Index: b/src/Makefile.in
LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@
LD_FOR_BUILD = @LD_FOR_BUILD@
NM_FOR_BUILD = @NM_FOR_BUILD@
-@@ -530,6 +534,7 @@ RAW_CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @
+@@ -558,6 +562,7 @@ RAW_CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @
GCJ_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCJ_FOR_TARGET@
GFORTRAN_FOR_TARGET=$(STAGE_CC_WRAPPER) @GFORTRAN_FOR_TARGET@
GOC_FOR_TARGET=$(STAGE_CC_WRAPPER) @GOC_FOR_TARGET@
@@ -254,7 +82,7 @@ Index: b/src/Makefile.in
DLLTOOL_FOR_TARGET=@DLLTOOL_FOR_TARGET@
LD_FOR_TARGET=@LD_FOR_TARGET@
-@@ -754,6 +759,7 @@ BASE_FLAGS_TO_PASS = \
+@@ -782,6 +787,7 @@ BASE_FLAGS_TO_PASS = \
"GFORTRAN_FOR_TARGET=$(GFORTRAN_FOR_TARGET)" \
"GOC_FOR_TARGET=$(GOC_FOR_TARGET)" \
"GOCFLAGS_FOR_TARGET=$(GOCFLAGS_FOR_TARGET)" \
@@ -262,7 +90,7 @@ Index: b/src/Makefile.in
"LD_FOR_TARGET=$(LD_FOR_TARGET)" \
"LIPO_FOR_TARGET=$(LIPO_FOR_TARGET)" \
"LDFLAGS_FOR_TARGET=$(LDFLAGS_FOR_TARGET)" \
-@@ -808,6 +814,7 @@ EXTRA_HOST_FLAGS = \
+@@ -842,6 +848,7 @@ EXTRA_HOST_FLAGS = \
'GCJ=$(GCJ)' \
'GFORTRAN=$(GFORTRAN)' \
'GOC=$(GOC)' \
@@ -270,7 +98,7 @@ Index: b/src/Makefile.in
'LD=$(LD)' \
'LIPO=$(LIPO)' \
'NM=$(NM)' \
-@@ -864,6 +871,7 @@ EXTRA_TARGET_FLAGS = \
+@@ -899,6 +906,7 @@ EXTRA_TARGET_FLAGS = \
'GFORTRAN=$$(GFORTRAN_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
'GOC=$$(GOC_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
'GOCFLAGS=$$(GOCFLAGS_FOR_TARGET)' \
@@ -278,7 +106,7 @@ Index: b/src/Makefile.in
'LD=$(COMPILER_LD_FOR_TARGET)' \
'LDFLAGS=$$(LDFLAGS_FOR_TARGET)' \
'LIBCFLAGS=$$(LIBCFLAGS_FOR_TARGET)' \
-@@ -966,6 +974,7 @@ configure-target: \
+@@ -1001,6 +1009,7 @@ configure-target: \
maybe-configure-target-libgfortran \
maybe-configure-target-libobjc \
maybe-configure-target-libgo \
@@ -286,7 +114,7 @@ Index: b/src/Makefile.in
maybe-configure-target-libtermcap \
maybe-configure-target-winsup \
maybe-configure-target-libgloss \
-@@ -1137,6 +1146,7 @@ all-target: maybe-all-target-libquadmath
+@@ -1167,6 +1176,7 @@ all-target: maybe-all-target-libquadmath
all-target: maybe-all-target-libgfortran
all-target: maybe-all-target-libobjc
all-target: maybe-all-target-libgo
@@ -294,7 +122,7 @@ Index: b/src/Makefile.in
all-target: maybe-all-target-libtermcap
all-target: maybe-all-target-winsup
all-target: maybe-all-target-libgloss
-@@ -1235,6 +1245,7 @@ info-target: maybe-info-target-libquadma
+@@ -1260,6 +1270,7 @@ info-target: maybe-info-target-libquadma
info-target: maybe-info-target-libgfortran
info-target: maybe-info-target-libobjc
info-target: maybe-info-target-libgo
@@ -302,7 +130,7 @@ Index: b/src/Makefile.in
info-target: maybe-info-target-libtermcap
info-target: maybe-info-target-winsup
info-target: maybe-info-target-libgloss
-@@ -1326,6 +1337,7 @@ dvi-target: maybe-dvi-target-libquadmath
+@@ -1346,6 +1357,7 @@ dvi-target: maybe-dvi-target-libquadmath
dvi-target: maybe-dvi-target-libgfortran
dvi-target: maybe-dvi-target-libobjc
dvi-target: maybe-dvi-target-libgo
@@ -310,7 +138,7 @@ Index: b/src/Makefile.in
dvi-target: maybe-dvi-target-libtermcap
dvi-target: maybe-dvi-target-winsup
dvi-target: maybe-dvi-target-libgloss
-@@ -1417,6 +1429,7 @@ pdf-target: maybe-pdf-target-libquadmath
+@@ -1432,6 +1444,7 @@ pdf-target: maybe-pdf-target-libquadmath
pdf-target: maybe-pdf-target-libgfortran
pdf-target: maybe-pdf-target-libobjc
pdf-target: maybe-pdf-target-libgo
@@ -318,7 +146,7 @@ Index: b/src/Makefile.in
pdf-target: maybe-pdf-target-libtermcap
pdf-target: maybe-pdf-target-winsup
pdf-target: maybe-pdf-target-libgloss
-@@ -1508,6 +1521,7 @@ html-target: maybe-html-target-libquadma
+@@ -1518,6 +1531,7 @@ html-target: maybe-html-target-libquadma
html-target: maybe-html-target-libgfortran
html-target: maybe-html-target-libobjc
html-target: maybe-html-target-libgo
@@ -326,7 +154,7 @@ Index: b/src/Makefile.in
html-target: maybe-html-target-libtermcap
html-target: maybe-html-target-winsup
html-target: maybe-html-target-libgloss
-@@ -1599,6 +1613,7 @@ TAGS-target: maybe-TAGS-target-libquadma
+@@ -1604,6 +1618,7 @@ TAGS-target: maybe-TAGS-target-libquadma
TAGS-target: maybe-TAGS-target-libgfortran
TAGS-target: maybe-TAGS-target-libobjc
TAGS-target: maybe-TAGS-target-libgo
@@ -342,7 +170,7 @@ Index: b/src/Makefile.in
install-info-target: maybe-install-info-target-libtermcap
install-info-target: maybe-install-info-target-winsup
install-info-target: maybe-install-info-target-libgloss
-@@ -1781,6 +1797,7 @@ install-pdf-target: maybe-install-pdf-ta
+@@ -1776,6 +1792,7 @@ install-pdf-target: maybe-install-pdf-ta
install-pdf-target: maybe-install-pdf-target-libgfortran
install-pdf-target: maybe-install-pdf-target-libobjc
install-pdf-target: maybe-install-pdf-target-libgo
@@ -350,7 +178,7 @@ Index: b/src/Makefile.in
install-pdf-target: maybe-install-pdf-target-libtermcap
install-pdf-target: maybe-install-pdf-target-winsup
install-pdf-target: maybe-install-pdf-target-libgloss
-@@ -1872,6 +1889,7 @@ install-html-target: maybe-install-html-
+@@ -1862,6 +1879,7 @@ install-html-target: maybe-install-html-
install-html-target: maybe-install-html-target-libgfortran
install-html-target: maybe-install-html-target-libobjc
install-html-target: maybe-install-html-target-libgo
@@ -358,7 +186,7 @@ Index: b/src/Makefile.in
install-html-target: maybe-install-html-target-libtermcap
install-html-target: maybe-install-html-target-winsup
install-html-target: maybe-install-html-target-libgloss
-@@ -1963,6 +1981,7 @@ installcheck-target: maybe-installcheck-
+@@ -1948,6 +1966,7 @@ installcheck-target: maybe-installcheck-
installcheck-target: maybe-installcheck-target-libgfortran
installcheck-target: maybe-installcheck-target-libobjc
installcheck-target: maybe-installcheck-target-libgo
@@ -366,7 +194,7 @@ Index: b/src/Makefile.in
installcheck-target: maybe-installcheck-target-libtermcap
installcheck-target: maybe-installcheck-target-winsup
installcheck-target: maybe-installcheck-target-libgloss
-@@ -2054,6 +2073,7 @@ mostlyclean-target: maybe-mostlyclean-ta
+@@ -2034,6 +2053,7 @@ mostlyclean-target: maybe-mostlyclean-ta
mostlyclean-target: maybe-mostlyclean-target-libgfortran
mostlyclean-target: maybe-mostlyclean-target-libobjc
mostlyclean-target: maybe-mostlyclean-target-libgo
@@ -374,7 +202,7 @@ Index: b/src/Makefile.in
mostlyclean-target: maybe-mostlyclean-target-libtermcap
mostlyclean-target: maybe-mostlyclean-target-winsup
mostlyclean-target: maybe-mostlyclean-target-libgloss
-@@ -2145,6 +2165,7 @@ clean-target: maybe-clean-target-libquad
+@@ -2120,6 +2140,7 @@ clean-target: maybe-clean-target-libquad
clean-target: maybe-clean-target-libgfortran
clean-target: maybe-clean-target-libobjc
clean-target: maybe-clean-target-libgo
@@ -382,7 +210,7 @@ Index: b/src/Makefile.in
clean-target: maybe-clean-target-libtermcap
clean-target: maybe-clean-target-winsup
clean-target: maybe-clean-target-libgloss
-@@ -2236,6 +2257,7 @@ distclean-target: maybe-distclean-target
+@@ -2206,6 +2227,7 @@ distclean-target: maybe-distclean-target
distclean-target: maybe-distclean-target-libgfortran
distclean-target: maybe-distclean-target-libobjc
distclean-target: maybe-distclean-target-libgo
@@ -390,7 +218,7 @@ Index: b/src/Makefile.in
distclean-target: maybe-distclean-target-libtermcap
distclean-target: maybe-distclean-target-winsup
distclean-target: maybe-distclean-target-libgloss
-@@ -2327,6 +2349,7 @@ maintainer-clean-target: maybe-maintaine
+@@ -2292,6 +2314,7 @@ maintainer-clean-target: maybe-maintaine
maintainer-clean-target: maybe-maintainer-clean-target-libgfortran
maintainer-clean-target: maybe-maintainer-clean-target-libobjc
maintainer-clean-target: maybe-maintainer-clean-target-libgo
@@ -398,7 +226,7 @@ Index: b/src/Makefile.in
maintainer-clean-target: maybe-maintainer-clean-target-libtermcap
maintainer-clean-target: maybe-maintainer-clean-target-winsup
maintainer-clean-target: maybe-maintainer-clean-target-libgloss
-@@ -2474,6 +2497,7 @@ check-target: \
+@@ -2434,6 +2457,7 @@ check-target: \
maybe-check-target-libgfortran \
maybe-check-target-libobjc \
maybe-check-target-libgo \
@@ -406,7 +234,7 @@ Index: b/src/Makefile.in
maybe-check-target-libtermcap \
maybe-check-target-winsup \
maybe-check-target-libgloss \
-@@ -2661,6 +2685,7 @@ install-target: \
+@@ -2616,6 +2640,7 @@ install-target: \
maybe-install-target-libgfortran \
maybe-install-target-libobjc \
maybe-install-target-libgo \
@@ -414,7 +242,7 @@ Index: b/src/Makefile.in
maybe-install-target-libtermcap \
maybe-install-target-winsup \
maybe-install-target-libgloss \
-@@ -2772,6 +2797,7 @@ install-strip-target: \
+@@ -2722,6 +2747,7 @@ install-strip-target: \
maybe-install-strip-target-libgfortran \
maybe-install-strip-target-libobjc \
maybe-install-strip-target-libgo \
@@ -422,7 +250,7 @@ Index: b/src/Makefile.in
maybe-install-strip-target-libtermcap \
maybe-install-strip-target-winsup \
maybe-install-strip-target-libgloss \
-@@ -41722,6 +41748,464 @@ maintainer-clean-target-libgo:
+@@ -46122,6 +46148,464 @@ maintainer-clean-target-libgo:
@@ -887,7 +715,7 @@ Index: b/src/Makefile.in
.PHONY: configure-target-libtermcap maybe-configure-target-libtermcap
maybe-configure-target-libtermcap:
@if gcc-bootstrap
-@@ -49141,6 +49625,14 @@ check-gcc-go:
+@@ -51863,6 +52347,14 @@ check-gcc-go:
(cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-go);
check-go: check-gcc-go check-target-libgo
@@ -902,7 +730,7 @@ Index: b/src/Makefile.in
# The gcc part of install-no-fixedincludes, which relies on an intimate
# knowledge of how a number of gcc internal targets (inter)operate. Delegate.
-@@ -51347,6 +51839,7 @@ configure-target-libquadmath: stage_last
+@@ -54740,6 +55232,7 @@ configure-target-libquadmath: stage_last
configure-target-libgfortran: stage_last
configure-target-libobjc: stage_last
configure-target-libgo: stage_last
@@ -910,7 +738,7 @@ Index: b/src/Makefile.in
configure-target-libtermcap: stage_last
configure-target-winsup: stage_last
configure-target-libgloss: stage_last
-@@ -51385,6 +51878,7 @@ configure-target-libquadmath: maybe-all-
+@@ -54775,6 +55268,7 @@ configure-target-libquadmath: maybe-all-
configure-target-libgfortran: maybe-all-gcc
configure-target-libobjc: maybe-all-gcc
configure-target-libgo: maybe-all-gcc
@@ -918,16 +746,16 @@ Index: b/src/Makefile.in
configure-target-libtermcap: maybe-all-gcc
configure-target-winsup: maybe-all-gcc
configure-target-libgloss: maybe-all-gcc
-@@ -52246,6 +52740,8 @@ configure-target-libgo: maybe-all-target
+@@ -55803,6 +56297,8 @@ configure-target-libgo: maybe-all-target
all-target-libgo: maybe-all-target-libbacktrace
all-target-libgo: maybe-all-target-libffi
all-target-libgo: maybe-all-target-libatomic
+configure-target-libphobos: maybe-configure-target-zlib
+all-target-libphobos: maybe-all-target-zlib
- configure-target-libjava: maybe-configure-target-zlib
- configure-target-libjava: maybe-configure-target-boehm-gc
- configure-target-libjava: maybe-configure-target-libffi
-@@ -52364,6 +52860,7 @@ configure-target-libquadmath: maybe-all-
+ configure-target-libobjc: maybe-configure-target-boehm-gc
+ all-target-libobjc: maybe-all-target-boehm-gc
+ configure-target-libstdc++-v3: maybe-configure-target-libgomp
+@@ -55931,6 +56427,7 @@ configure-target-libquadmath: maybe-all-
configure-target-libgfortran: maybe-all-target-libgcc
configure-target-libobjc: maybe-all-target-libgcc
configure-target-libgo: maybe-all-target-libgcc
@@ -935,7 +763,7 @@ Index: b/src/Makefile.in
configure-target-libtermcap: maybe-all-target-libgcc
configure-target-winsup: maybe-all-target-libgcc
configure-target-libgloss: maybe-all-target-libgcc
-@@ -52411,6 +52908,8 @@ configure-target-libobjc: maybe-all-targ
+@@ -55973,6 +56470,8 @@ configure-target-libobjc: maybe-all-targ
configure-target-libgo: maybe-all-target-newlib maybe-all-target-libgloss
@@ -944,3 +772,177 @@ Index: b/src/Makefile.in
configure-target-libtermcap: maybe-all-target-newlib maybe-all-target-libgloss
configure-target-winsup: maybe-all-target-newlib maybe-all-target-libgloss
+Index: b/src/Makefile.tpl
+===================================================================
+--- a/src/Makefile.tpl
++++ b/src/Makefile.tpl
+@@ -160,6 +160,7 @@ BUILD_EXPORTS = \
+ GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \
+ GOC="$(GOC_FOR_BUILD)"; export GOC; \
+ GOCFLAGS="$(GOCFLAGS_FOR_BUILD)"; export GOCFLAGS; \
++ GDC="$(GDC_FOR_BUILD)"; export GDC; \
+ DLLTOOL="$(DLLTOOL_FOR_BUILD)"; export DLLTOOL; \
+ LD="$(LD_FOR_BUILD)"; export LD; \
+ LDFLAGS="$(LDFLAGS_FOR_BUILD)"; export LDFLAGS; \
+@@ -197,6 +198,7 @@ HOST_EXPORTS = \
+ GCJ="$(GCJ)"; export GCJ; \
+ GFORTRAN="$(GFORTRAN)"; export GFORTRAN; \
+ GOC="$(GOC)"; export GOC; \
++ GDC="$(GDC)"; export GDC; \
+ AR="$(AR)"; export AR; \
+ AS="$(AS)"; export AS; \
+ CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
+@@ -285,6 +287,7 @@ BASE_TARGET_EXPORTS = \
+ GCJ="$(GCJ_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GCJ; \
+ GFORTRAN="$(GFORTRAN_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GFORTRAN; \
+ GOC="$(GOC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GOC; \
++ GDC="$(GDC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GDC; \
+ DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
+ LD="$(COMPILER_LD_FOR_TARGET)"; export LD; \
+ LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
+@@ -351,6 +354,7 @@ DLLTOOL_FOR_BUILD = @DLLTOOL_FOR_BUILD@
+ GCJ_FOR_BUILD = @GCJ_FOR_BUILD@
+ GFORTRAN_FOR_BUILD = @GFORTRAN_FOR_BUILD@
+ GOC_FOR_BUILD = @GOC_FOR_BUILD@
++GDC_FOR_BUILD = @GDC_FOR_BUILD@
+ LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@
+ LD_FOR_BUILD = @LD_FOR_BUILD@
+ NM_FOR_BUILD = @NM_FOR_BUILD@
+@@ -491,6 +495,7 @@ RAW_CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @
+ GCJ_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCJ_FOR_TARGET@
+ GFORTRAN_FOR_TARGET=$(STAGE_CC_WRAPPER) @GFORTRAN_FOR_TARGET@
+ GOC_FOR_TARGET=$(STAGE_CC_WRAPPER) @GOC_FOR_TARGET@
++GDC_FOR_TARGET=$(STAGE_CC_WRAPPER) @GDC_FOR_TARGET@
+ DLLTOOL_FOR_TARGET=@DLLTOOL_FOR_TARGET@
+ LD_FOR_TARGET=@LD_FOR_TARGET@
+
+@@ -617,6 +622,7 @@ EXTRA_HOST_FLAGS = \
+ 'GCJ=$(GCJ)' \
+ 'GFORTRAN=$(GFORTRAN)' \
+ 'GOC=$(GOC)' \
++ 'GDC=$(GDC)' \
+ 'LD=$(LD)' \
+ 'LIPO=$(LIPO)' \
+ 'NM=$(NM)' \
+@@ -674,6 +680,7 @@ EXTRA_TARGET_FLAGS = \
+ 'GFORTRAN=$$(GFORTRAN_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
+ 'GOC=$$(GOC_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
+ 'GOCFLAGS=$$(GOCFLAGS_FOR_TARGET)' \
++ 'GDC=$$(GDC_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
+ 'LD=$(COMPILER_LD_FOR_TARGET)' \
+ 'LDFLAGS=$$(LDFLAGS_FOR_TARGET)' \
+ 'LIBCFLAGS=$$(LIBCFLAGS_FOR_TARGET)' \
+Index: b/src/config-ml.in
+===================================================================
+--- a/src/config-ml.in
++++ b/src/config-ml.in
+@@ -513,6 +513,7 @@ multi-do:
+ exec_prefix="$(exec_prefix)" \
+ GCJFLAGS="$(GCJFLAGS) $${flags}" \
+ GOCFLAGS="$(GOCFLAGS) $${flags}" \
++ GDCFLAGS="$(GDCFLAGS) $${flags}" \
+ CXXFLAGS="$(CXXFLAGS) $${flags}" \
+ LIBCFLAGS="$(LIBCFLAGS) $${flags}" \
+ LIBCXXFLAGS="$(LIBCXXFLAGS) $${flags}" \
+@@ -746,7 +747,7 @@ if [ -n "${multidirs}" ] && [ -z "${ml_n
+ break
+ fi
+ done
+- ml_config_env='CC="${CC_}$flags" CXX="${CXX_}$flags" F77="${F77_}$flags" GCJ="${GCJ_}$flags" GFORTRAN="${GFORTRAN_}$flags" GOC="${GOC_}$flags"'
++ ml_config_env='CC="${CC_}$flags" CXX="${CXX_}$flags" F77="${F77_}$flags" GCJ="${GCJ_}$flags" GFORTRAN="${GFORTRAN_}$flags" GOC="${GOC_}$flags" GDC="${GDC_}$flags"'
+
+ if [ "${with_target_subdir}" = "." ]; then
+ CC_=$CC' '
+@@ -755,6 +756,7 @@ if [ -n "${multidirs}" ] && [ -z "${ml_n
+ GCJ_=$GCJ' '
+ GFORTRAN_=$GFORTRAN' '
+ GOC_=$GOC' '
++ GDC_=$GDC' '
+ else
+ # Create a regular expression that matches any string as long
+ # as ML_POPDIR.
+@@ -831,6 +833,18 @@ if [ -n "${multidirs}" ] && [ -z "${ml_n
+ esac
+ done
+
++ GDC_=
++ for arg in ${GDC}; do
++ case $arg in
++ -[BIL]"${ML_POPDIR}"/*)
++ GDC_="${GDC_}"`echo "X${arg}" | sed -n "s/X\\(-[BIL]${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X-[BIL]${popdir_rx}\\(.*\\)/\\1/p"`' ' ;;
++ "${ML_POPDIR}"/*)
++ GDC_="${GDC_}"`echo "X${arg}" | sed -n "s/X\\(${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X${popdir_rx}\\(.*\\)/\\1/p"`' ' ;;
++ *)
++ GDC_="${GDC_}${arg} " ;;
++ esac
++ done
++
+ if test "x${LD_LIBRARY_PATH+set}" = xset; then
+ LD_LIBRARY_PATH_=
+ for arg in `echo "$LD_LIBRARY_PATH" | tr ':' ' '`; do
+Index: b/src/config/multi.m4
+===================================================================
+--- a/src/config/multi.m4
++++ b/src/config/multi.m4
+@@ -65,4 +65,5 @@ CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
+ CC="$CC"
+ CXX="$CXX"
+ GFORTRAN="$GFORTRAN"
+-GCJ="$GCJ"])])dnl
++GCJ="$GCJ"
++GDC="$GDC"])])dnl
+Index: b/src/configure.ac
+===================================================================
+--- a/src/configure.ac
++++ b/src/configure.ac
+@@ -165,7 +165,8 @@ target_libraries="target-libgcc \
+ target-libffi \
+ target-libobjc \
+ target-libada \
+- target-libgo"
++ target-libgo \
++ target-libphobos"
+
+ # these tools are built using the target libraries, and are intended to
+ # run only in the target environment
+@@ -1259,6 +1260,7 @@ if test "${build}" != "${host}" ; then
+ GCJ_FOR_BUILD=${GCJ_FOR_BUILD-gcj}
+ GFORTRAN_FOR_BUILD=${GFORTRAN_FOR_BUILD-gfortran}
+ GOC_FOR_BUILD=${GOC_FOR_BUILD-gccgo}
++ GDC_FOR_BUILD=${GDC_FOR_BUILD-gdc}
+ DLLTOOL_FOR_BUILD=${DLLTOOL_FOR_BUILD-dlltool}
+ LD_FOR_BUILD=${LD_FOR_BUILD-ld}
+ NM_FOR_BUILD=${NM_FOR_BUILD-nm}
+@@ -1273,6 +1275,7 @@ else
+ GCJ_FOR_BUILD="\$(GCJ)"
+ GFORTRAN_FOR_BUILD="\$(GFORTRAN)"
+ GOC_FOR_BUILD="\$(GOC)"
++ GDC_FOR_BUILD="\$(GDC)"
+ DLLTOOL_FOR_BUILD="\$(DLLTOOL)"
+ LD_FOR_BUILD="\$(LD)"
+ NM_FOR_BUILD="\$(NM)"
+@@ -3186,6 +3189,7 @@ AC_SUBST(DLLTOOL_FOR_BUILD)
+ AC_SUBST(GCJ_FOR_BUILD)
+ AC_SUBST(GFORTRAN_FOR_BUILD)
+ AC_SUBST(GOC_FOR_BUILD)
++AC_SUBST(GDC_FOR_BUILD)
+ AC_SUBST(LDFLAGS_FOR_BUILD)
+ AC_SUBST(LD_FOR_BUILD)
+ AC_SUBST(NM_FOR_BUILD)
+@@ -3296,6 +3300,7 @@ NCN_STRICT_CHECK_TARGET_TOOLS(GCC_FOR_TA
+ NCN_STRICT_CHECK_TARGET_TOOLS(GCJ_FOR_TARGET, gcj)
+ NCN_STRICT_CHECK_TARGET_TOOLS(GFORTRAN_FOR_TARGET, gfortran)
+ NCN_STRICT_CHECK_TARGET_TOOLS(GOC_FOR_TARGET, gccgo)
++NCN_STRICT_CHECK_TARGET_TOOLS(GDC_FOR_TARGET, gdc)
+
+ ACX_CHECK_INSTALLED_TARGET_TOOL(AR_FOR_TARGET, ar)
+ ACX_CHECK_INSTALLED_TARGET_TOOL(AS_FOR_TARGET, as)
+@@ -3329,6 +3334,8 @@ GCC_TARGET_TOOL(gfortran, GFORTRAN_FOR_T
+ [gcc/gfortran -B$$r/$(HOST_SUBDIR)/gcc/], fortran)
+ GCC_TARGET_TOOL(gccgo, GOC_FOR_TARGET, GOC,
+ [gcc/gccgo -B$$r/$(HOST_SUBDIR)/gcc/], go)
++GCC_TARGET_TOOL(gdc, GDC_FOR_TARGET, GDC,
++ [gcc/gdc -B$$r/$(HOST_SUBDIR)/gcc/], d)
+ GCC_TARGET_TOOL(ld, LD_FOR_TARGET, LD, [ld/ld-new])
+ GCC_TARGET_TOOL(lipo, LIPO_FOR_TARGET, LIPO)
+ GCC_TARGET_TOOL(nm, NM_FOR_TARGET, NM, [binutils/nm-new])
diff --git a/debian/patches/gdc-libphobos-link.diff b/debian/patches/gdc-libphobos-link.diff
index 8495796..8ed8bc4 100644
--- a/debian/patches/gdc-libphobos-link.diff
+++ b/debian/patches/gdc-libphobos-link.diff
@@ -1,5 +1,7 @@
# DP: gdc: Always link with -ldl when linking with -lgphobos.
+Index: b/src/gcc/d/d-spec.c
+===================================================================
--- a/src/gcc/d/d-spec.c
+++ b/src/gcc/d/d-spec.c
@@ -75,6 +75,10 @@
@@ -13,7 +15,7 @@
void
lang_specific_driver (cl_decoded_option **in_decoded_options,
unsigned int *in_decoded_options_count,
-@@ -494,6 +498,10 @@
+@@ -510,6 +514,10 @@ lang_specific_driver (cl_decoded_option
CL_DRIVER, &new_decoded_options[j]);
added_libraries++;
j++;
@@ -23,4 +25,4 @@
+ j++;
#ifdef HAVE_LD_STATIC_DYNAMIC
- if (library > 1 && !static_link)
+ if (library == 3 && static_link)
diff --git a/debian/patches/gdc-symbol-mangling.diff b/debian/patches/gdc-symbol-mangling.diff
deleted file mode 100644
index 57704c1..0000000
--- a/debian/patches/gdc-symbol-mangling.diff
+++ /dev/null
@@ -1,38 +0,0 @@
---- a/src/gcc/d/d-decls.cc
-+++ b/src/gcc/d/d-decls.cc
-@@ -291,11 +291,17 @@ FuncDeclaration::toSymbol()
- tree vindex = NULL_TREE;
-
- // Run full semantic on symbols we need to know about during compilation.
-- if (inferRetType && type && !type->nextOf() && !functionSemantic())
-+ if (inferRetType && type && !type->nextOf())
- {
-- csym = new Symbol();
-- csym->Stree = error_mark_node;
-- return csym;
-+ Module *old_current_module_decl = current_module_decl;
-+ current_module_decl = NULL;
-+ if (!functionSemantic())
-+ {
-+ csym = new Symbol();
-+ csym->Stree = error_mark_node;
-+ return csym;
-+ }
-+ current_module_decl = old_current_module_decl;
- }
-
- // Use same symbol for FuncDeclaration templates with same mangle
---- a/src/gcc/d/d-objfile.cc
-+++ b/src/gcc/d/d-objfile.cc
-@@ -1155,8 +1155,11 @@ FuncDeclaration::toObjFile()
- // Ensure all semantic passes have ran.
- if (semanticRun < PASSsemantic3)
- {
-+ Module *old_current_module_decl = current_module_decl;
-+ current_module_decl = NULL;
- functionSemantic3();
- Module::runDeferredSemantic3();
-+ current_module_decl = old_current_module_decl;
- }
-
- if (global.errors)
diff --git a/debian/patches/gdc-versym-cpu.diff b/debian/patches/gdc-versym-cpu.diff
index 68c7179..a8f7753 100644
--- a/debian/patches/gdc-versym-cpu.diff
+++ b/debian/patches/gdc-versym-cpu.diff
@@ -125,12 +125,12 @@ Index: b/src/gcc/config/arm/arm.h
+
#include "config/arm/arm-opts.h"
- enum target_cpus
+ /* The processor for which instructions should be scheduled. */
Index: b/src/gcc/config/i386/i386.h
===================================================================
--- a/src/gcc/config/i386/i386.h
+++ b/src/gcc/config/i386/i386.h
-@@ -664,6 +664,24 @@ extern const char *host_detect_local_cpu
+@@ -660,6 +660,24 @@ extern const char *host_detect_local_cpu
/* Target CPU builtins. */
#define TARGET_CPU_CPP_BUILTINS() ix86_target_macros ()
@@ -177,7 +177,7 @@ Index: b/src/gcc/config/mips/mips.h
===================================================================
--- a/src/gcc/config/mips/mips.h
+++ b/src/gcc/config/mips/mips.h
-@@ -622,6 +622,54 @@ struct mips_cpu_info {
+@@ -640,6 +640,54 @@ struct mips_cpu_info {
} \
while (0)
@@ -236,7 +236,7 @@ Index: b/src/gcc/config/pa/pa.h
===================================================================
--- a/src/gcc/config/pa/pa.h
+++ b/src/gcc/config/pa/pa.h
-@@ -185,6 +185,20 @@ do { \
+@@ -179,6 +179,20 @@ do { \
builtin_define("_PA_RISC1_0"); \
} while (0)
@@ -261,7 +261,7 @@ Index: b/src/gcc/config/rs6000/rs6000.h
===================================================================
--- a/src/gcc/config/rs6000/rs6000.h
+++ b/src/gcc/config/rs6000/rs6000.h
-@@ -802,6 +802,28 @@ extern unsigned char rs6000_recip_bits[]
+@@ -815,6 +815,28 @@ extern unsigned char rs6000_recip_bits[]
#define TARGET_CPU_CPP_BUILTINS() \
rs6000_cpu_cpp_builtins (pfile)
diff --git a/debian/patches/gdc-versym-os.diff b/debian/patches/gdc-versym-os.diff
index 5c0757d..83472b8 100644
--- a/debian/patches/gdc-versym-os.diff
+++ b/debian/patches/gdc-versym-os.diff
@@ -40,7 +40,7 @@ Index: b/src/gcc/config/alpha/linux.h
builtin_define ("_GNU_SOURCE"); \
} while (0)
-+#undef TARGET_OS_D_BUILTINS
++#undef TARGET_OS_D_BUILTINS
+#define TARGET_OS_D_BUILTINS() \
+ do { \
+ if (OPTION_GLIBC) \
@@ -77,7 +77,7 @@ Index: b/src/gcc/config/darwin.h
===================================================================
--- a/src/gcc/config/darwin.h
+++ b/src/gcc/config/darwin.h
-@@ -934,4 +934,10 @@ extern void darwin_driver_init (unsigned
+@@ -929,4 +929,10 @@ extern void darwin_driver_init (unsigned
fall-back default. */
#define DEF_MIN_OSX_VERSION "10.5"
@@ -217,27 +217,6 @@ Index: b/src/gcc/config/kfreebsd-gnu.h
#define GNU_USER_DYNAMIC_LINKER GLIBC_DYNAMIC_LINKER
#define GNU_USER_DYNAMIC_LINKER32 GLIBC_DYNAMIC_LINKER32
#define GNU_USER_DYNAMIC_LINKER64 GLIBC_DYNAMIC_LINKER64
-Index: b/src/gcc/config/knetbsd-gnu.h
-===================================================================
---- a/src/gcc/config/knetbsd-gnu.h
-+++ b/src/gcc/config/knetbsd-gnu.h
-@@ -30,6 +30,16 @@ along with GCC; see the file COPYING3.
- } \
- while (0)
-
-+#undef TARGET_OS_D_BUILTINS
-+#define TARGET_OS_D_BUILTINS() \
-+ do \
-+ { \
-+ builtin_define ("NetBSD"); \
-+ builtin_define ("Posix"); \
-+ builtin_define ("GNU_GLibc"); \
-+ } \
-+ while (0)
-+
-
- #undef GNU_USER_DYNAMIC_LINKER
- #define GNU_USER_DYNAMIC_LINKER "/lib/ld.so.1"
Index: b/src/gcc/config/kopensolaris-gnu.h
===================================================================
--- a/src/gcc/config/kopensolaris-gnu.h
diff --git a/debian/rules.d/binary-d.mk b/debian/rules.d/binary-d.mk
index d004819..f919381 100644
--- a/debian/rules.d/binary-d.mk
+++ b/debian/rules.d/binary-d.mk
@@ -157,10 +157,10 @@ $(binary_stamp)-libphobos: $(install_stamp)
rm -rf $(d_libphobos)
dh_installdirs -p$(p_libphobos) $(dirs_libphobos)
- mv $(d)/$(usr_lib)/libg{druntime,phobos2}.a \
+ mv $(d)/$(usr_lib)/libg{druntime,phobos}.a \
$(d)/$(gcc_lib_dir)/.
$(dh_compat2) dh_movefiles -p$(p_libphobos) \
- $(gcc_lib_dir)/libg{druntime,phobos2}.a
+ $(gcc_lib_dir)/libg{druntime,phobos}.a
# included in gdc package
rm -f $(d_libphobos)/$(gdc_include_dir)/__entrypoint.di
@@ -187,10 +187,10 @@ define __do_libphobos_dev
rm -rf $(d_l)
dh_installdirs -p$(p_l) \
$(gcc_lib_dir$(2))
- mv $(d)/$(usr_lib$(2))/libg{druntime,phobos2}.a \
+ mv $(d)/$(usr_lib$(2))/libg{druntime,phobos}.a \
$(d)/$(gcc_lib_dir$(2))/.
$(dh_compat2) dh_movefiles -p$(p_l) \
- $(gcc_lib_dir$(2))/libg{druntime,phobos2}.a
+ $(gcc_lib_dir$(2))/libg{druntime,phobos}.a
$(if $(2),,
$(dh_compat2) dh_movefiles -p$(p_l) \
$(gdc_include_dir)
diff --git a/debian/rules.defs b/debian/rules.defs
index c2693a3..d724ee0 100644
--- a/debian/rules.defs
+++ b/debian/rules.defs
@@ -828,7 +828,7 @@ ifeq ($(DEB_STAGE)-$(filter libphobos, $(with_rtlibs)),rtlibs-)
endif
with_d := $(call envfilt, d, , , $(with_d))
-with_d := not yet built for GCC 7
+#with_d := not yet built for GCC 7
ifeq ($(with_base_only),yes)
with_d := no
diff --git a/debian/rules.patch b/debian/rules.patch
index 432d863..751ee7a 100644
--- a/debian/rules.patch
+++ b/debian/rules.patch
@@ -158,7 +158,7 @@ endif
ifeq ($(with_d),yes)
debian_patches += \
- gdc-6 \
+ gdc-7 \
gdc-updates \
gdc-versym-cpu \
gdc-versym-os \
@@ -166,10 +166,9 @@ ifeq ($(with_d),yes)
gdc-base-version \
gdc-profiledbuild \
gdc-libphobos-link \
- gdc-symbol-mangling
# gdc-multiarch
ifneq ($(GFDL_INVARIANT_FREE),yes)
- debian_patches += gdc-6-doc
+ debian_patches += gdc-7-doc
else
debian_patches += gdc-texinfo
endif
diff --git a/debian/rules2 b/debian/rules2
index 4cc0ed1..c099221 100644
--- a/debian/rules2
+++ b/debian/rules2
@@ -355,7 +355,8 @@ endif
endif # !DEB_STAGE
-CONFARGS += --with-system-zlib
+# FIXME: zlib not available for all multilibs
+#CONFARGS += --with-system-zlib
ifeq ($(with_objc)-$(with_objc_gc),yes-yes)
CONFARGS += --enable-objc-gc
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/reproducible/gcc-7.git
More information about the Reproducible-commits
mailing list