[Bug ada/57188] [4.9 regression] Ada bootstrap broken on Solaris/x64: No_Implicit_Dynamic_Code violation

ro at CeBiTec dot Uni-Bielefeld.DE gcc-bugzilla@gcc.gnu.org
Tue May 7 14:57:00 GMT 2013


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57188

--- Comment #2 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> 2013-05-07 14:57:20 UTC ---
> --- Comment #1 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2013-05-06 16:55:04 UTC ---
>> This doesn't happen in sparcv9-sun-solaris2* or i386-pc-solaris2*
>> configurations.
>
> gcc-interface/Makefile.in was a little changed so you probably need to adjust
> the relevant regexp here:
>
> # x86 and x86-64 solaris
> ifeq ($(strip $(filter-out %86 %x86_64 solaris2%,$(arch) $(osys))),)
>   LIBGNAT_TARGET_PAIRS_COMMON = \

That was it indeed.  The following patch restored amd64-pc-solaris2.10
bootstrap for, and also survived i386-pc-solaris2.11 bootstrap:

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.ads<a-intnam-solaris.ads \
   s-inmaop.adb<s-inmaop-posix.adb \

But what's the justification for the relevant change, which wasn't
posted to gcc-patches AFAICS?

2013-04-23  Eric Botcazou  <ebotcazou@adacore.com>
            Pascal Obry    <obry@adacore.com>

        * gcc-interface/Makefile.in (targ): Fix target name check.

Having to deal with the target_alias instead of the canonical form found
in target seems rather counterintuitive and fragile to me.

    Rainer



More information about the Gcc-bugs mailing list