As described in the PR, amd64-pc-solaris2.1[01] Ada bootstrap was failing
for some time. It has turned out that this patch is the culprit:
2013-04-23 Eric Botcazou ebotca...@adacore.com
Pascal Obryo...@adacore.com
* gcc-interface/Makefile.in (targ): Fix target name check.
diff --git a/gcc/ada/gcc-interface/Makefile.in
b/gcc/ada/gcc-interface/Makefile.in
--- a/gcc/ada/gcc-interface/Makefile.in
+++ b/gcc/ada/gcc-interface/Makefile.in
@@ -259,7 +259,7 @@ TOOLS_LIBS = targext.o link.o ../../ggc-
# manufacturer, and operating system and assign each of those to its own
# variable.
host:=$(subst -, ,$(host_canonical))
-targ:=$(subst -, ,$(target))
+targ:=$(subst -, ,$(subst -gnu, ,$(target_alias)))
arch:=$(word 1,$(targ))
ifeq ($(words $(targ)),2)
manu:=
I couldn't find the gcc-patches posting for this patch, thus I'm missing
the rationale for it. It seems rather counterintuitive and fragile to
me, replacing the canonical $target by the far more varied $target_alias.
If there's really a good reason to keep that patch nonetheless, the
following patch fixes Solaris/x64 bootstrap.
Bootstrapped without regression on amd64-pc-solaris2.10 and
i386-pc-solaris2.11. Ok for mainline?
Rainer
2013-05-07 Rainer Orth r...@cebitec.uni-bielefeld.de
PR ada/57188
* gcc-interface/Makefile.in: Allow for amd64 solaris2.
# HG changeset patch
# Parent 39be8981e0816719cfdfb2ee73eb7df6dc2d4811
Restore Solaris/amd64 Ada bootstrap (PR ada/57188)
diff --git a/gcc/ada/gcc-interface/Makefile.in b/gcc/ada/gcc-interface/Makefile.in
--- a/gcc/ada/gcc-interface/Makefile.in
+++ b/gcc/ada/gcc-interface/Makefile.in
@@ -1098,7 +1098,7 @@ ifeq ($(strip $(filter-out sparc% sun so
endif
# x86 and x86-64 solaris
-ifeq ($(strip $(filter-out %86 %x86_64 solaris2%,$(arch) $(osys))),)
+ifeq ($(strip $(filter-out %86 %x86_64 %amd64 solaris2%,$(arch) $(osys))),)
LIBGNAT_TARGET_PAIRS_COMMON = \
a-intnam.adsa-intnam-solaris.ads \
s-inmaop.adbs-inmaop-posix.adb \
--
-
Rainer Orth, Center for Biotechnology, Bielefeld University