comp.lang.ada
 help / color / mirror / Atom feed
From: "Yannick Duchêne (Hibou57)" <yannick_duchene@yahoo.fr>
Subject: Re: GNATBind with a GNAT cross‑compiler
Date: Fri, 26 Apr 2013 22:59:19 +0200
Date: 2013-04-26T22:59:19+02:00	[thread overview]
Message-ID: <op.wv51w5cbule2fv@cardamome> (raw)
In-Reply-To: klb1hh$ves$1@dont-email.me

Le Thu, 25 Apr 2013 12:46:09 +0200, Brian Drummond  
<brian@shapes.demon.co.uk> a écrit:

> If that protests, then you may need to patch the gcc "configure" file to
> allow the missing targets to be built, as in the following patch.
>
> http://sourceforge.net/p/msp430ada/code/ci/tip/tree/patches/23-gcc-4.7-
> ada-Makefile.patch
>
> found on
>
> http://sourceforge.net/p/msp430ada/code/ci/tip/tree/patches/
>
> Having applied the patch, obviously you need to re-run configure/make/
> [make gnattools if utils missing in build dir]/make install.
>
> (The AVR-Ada project has also faced this issue with essentially the same
> solution. Some upstream gcc discussion on
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19959 )
>
> If you try this and it works - or if and how it fails - it would be
> useful to follow up.

Something in part out‑of‑topic…

I will finally test the patch you mentioned, because I may have to  
recompile the compilers to fix GNATBind, as I'm having an issue when  
`Suppress_Standard_Library` from package `System` is set to `True`; I  
receive a complaint about an undefined reference to `Is_Elaborated`. Seems  
there is an inconsistency here in GNAT FSF. Explanation: I've found [1],  
which is a patch to drop the generation of the `Is_Elaborated` variable  
when `Suppress_Standard_Library` is `True`, arguing it was never  
referenced; except this may be not referenced with GNAT GPL or GNAT Pro  
(just guessing), but it is referenced for me with FSF GNAT [2].

So as I will have to disable the patch from [1], I will get an opportunity  
to test the patch to `configure` you suggest in the while.


[1]: http://patchwork.ozlabs.org/patch/194962/

[2]: Here is what gets generated by GNATBind from FSF GNAT:

     procedure adafinal is
        procedure s_stalib_adafinal;
        pragma Import (C, s_stalib_adafinal,  
"system__standard_library__adafinal");
     begin
        if not Is_Elaborated then -- << Here
           return;
        end if;
        Is_Elaborated := False; -- << And here
        s_stalib_adafinal;
     end adafinal;

     procedure adainit is
     begin
        null;

     end adainit;

Then it complains “"Is_Elaborated" is undefined (more references follow)”  
when compiling the files generated by GNATBind.

-- 
“Syntactic sugar causes cancer of the semi-colons.” [1]
“Structured Programming supports the law of the excluded muddle.” [1]
[1]: Epigrams on Programming — Alan J. — P. Yale University



  reply	other threads:[~2013-04-26 20:59 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-25  3:07 GNATBind with a GNAT cross‑compiler Yannick Duchêne (Hibou57)
2013-04-25 10:46 ` Brian Drummond
2013-04-26 20:59   ` Yannick Duchêne (Hibou57) [this message]
2013-04-26 23:24     ` Yannick Duchêne (Hibou57)
2013-04-27  2:47       ` Yannick Duchêne (Hibou57)
2013-04-27  8:23       ` Brian Drummond
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox