[Info-vax] GCC for VMS, was: Re: fortran compiler roadmap?
gingold at adacore.com
gingold at adacore.com
Tue Apr 23 01:58:44 EDT 2013
On Tuesday, April 23, 2013 2:43:31 AM UTC+2, Simon Clubley wrote:
> On 2013-04-22, gingold at adacore.com <gingold at adacore.com> wrote:
>
> > Yes, we have added support for many VMS pragma, so that the VMS headers can be parsed by gcc.
>
> >
>
> > We were able to cross-compile some non-trivial programs such as unzip, for VMS.
>
> >
>
> > Tristan.
>
>
>
> Interesting, thanks.
>
>
>
> Given the last sentence above, is the cross-compiler build method still
> a work in progress or is it regarded as a finished product ?
We are first building a cross compiler to build the native compiler.
Note that I am pretty sure we still have patches (at least for Ada) that
aren't merged into FSF gcc.
> Now I know you have added cross compiler support instead of building
> everything native on VMS, I've spent a bit of time over the last couple
> of days trying to build at least the first part of the tool chain.
Humm, good luck :-)
> Of course, I have several questions which have cropped up as a result. :-)
>
> Which exception model are you using ? I had _many_ attempts at trying to
> get unwind-dw2.c to build, before I gave up and switched to sjlj exceptions
> to bypass this issue.
We are using dwarf-2, but it may be simpler to use sjlj at first.
> Are you using a sysroot during building and are you replacing the gcc
> headers with the VMS versions or just adding missing headers as required ?
There is no gcc headers (except a few one that are very compiler dependent, such
as stdargs or limits)
> After trying various options, I'm currently using the gcc supplied
> headers instead of the VMS versions to build gcc and adding to the set
> of headers (ie: stdlib.h) from the VMS headers as required. I also have
> a full copy of the extracted starlet headers in include/vms/ and I've
> tweaked the various VMS headers (__int64/resource.h/etc) as required.
Most of the tweaks are handled by fixincludes.
> In the final built and installed compiler, is it intended to have a
> mixture of gcc supplied and VMS headers on the include search path,
> or are you removing all the gcc supplied headers and replacing them
> with the VMS headers ?
No, you cannot remove the gcc supplied headers.
> BTW, in case you are not aware, binutils 2.23.2 is broken while
> assembling crtbegin; you get the following errors:
>
> ../../gcc-4.6.2/gcc/crtstuff.c: In function 'frame_dummy':
> ../../gcc-4.6.2/gcc/crtstuff.c:381:19: warning: array subscript is above array bounds [-Warray-bounds]
> /tmp/ccexkclj.s: Assembler messages:
> /tmp/ccexkclj.s:106: Error: previous .ent not closed by a .end
> /tmp/ccexkclj.s:149: Error: previous .ent not closed by a .end
No, the latest version of binutils correctly reports issues in the
assembly file.
Tristan.
More information about the Info-vax
mailing list