comp.lang.ada
 help / color / mirror / Atom feed
* Using System.Machine_Code in GPL 2017 Zfp for Arm
@ 2017-11-13 10:08 ahlan
  2017-11-13 10:57 ` ahlan
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: ahlan @ 2017-11-13 10:08 UTC (permalink / raw)


We are trying to build a zfp system for an arm M3 processor that is not on the list of supported GPL processors.
We only want the Ada intrinsics. We do not need or want any RTS and so expected that --RTS=zfp would do the trick.
however when we place this switch on arm-eabi-gcc from GPL 2017 we get the error message
RTS path not valid: Missing adainclude and adalib directories.
So things are not as simple as we thought.
It appears that --RTS takes the name of a directory so we created one and named this on the RTS switch.
In the directory we placed two files ada_object_path and ada_source_path that both contain the single word gnat.
In the RTS directory we then created the empty directory adalib and another  directory gnat and placed in gnat directory the file System.ads which we copied from an RTS directory of a similar processor.
This all seems to work.
With this we are able to create simple programs.
However when we want to use System.Machine_Code we get the error message that
System.Machine_Code is not a predefined library.
I suspect that we need to add something to our RTS directory.
But what?
Has anyone any experience building ARM ZFP systems and can tell us how we get add System.Machine_Code to our Zfp.
Any help or suggestions what to do next would be greatly appreciated.

Best wishes,
Ahlan

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Using System.Machine_Code in GPL 2017 Zfp for Arm
  2017-11-13 10:08 Using System.Machine_Code in GPL 2017 Zfp for Arm ahlan
@ 2017-11-13 10:57 ` ahlan
  2017-11-13 11:40 ` Simon Wright
  2017-11-13 13:21 ` ahlan
  2 siblings, 0 replies; 4+ messages in thread
From: ahlan @ 2017-11-13 10:57 UTC (permalink / raw)


On Monday, November 13, 2017 at 11:08:56 AM UTC+1, ah...@marriott.org wrote:
> We are trying to build a zfp system for an arm M3 processor that is not on the list of supported GPL processors.
> We only want the Ada intrinsics. We do not need or want any RTS and so expected that --RTS=zfp would do the trick.
> however when we place this switch on arm-eabi-gcc from GPL 2017 we get the error message
> RTS path not valid: Missing adainclude and adalib directories.
> So things are not as simple as we thought.
> It appears that --RTS takes the name of a directory so we created one and named this on the RTS switch.
> In the directory we placed two files ada_object_path and ada_source_path that both contain the single word gnat.
> In the RTS directory we then created the empty directory adalib and another  directory gnat and placed in gnat directory the file System.ads which we copied from an RTS directory of a similar processor.
> This all seems to work.
> With this we are able to create simple programs.
> However when we want to use System.Machine_Code we get the error message that
> System.Machine_Code is not a predefined library.
> I suspect that we need to add something to our RTS directory.
> But what?
> Has anyone any experience building ARM ZFP systems and can tell us how we get add System.Machine_Code to our Zfp.
> Any help or suggestions what to do next would be greatly appreciated.
> 
> Best wishes,
> Ahlan

To answer my own question:
You need to add the file s-maccod.ads
However, and this is what confused us, the filename is fixed.
If you rename the file to system-machine_code.ads it doesn't work.


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Using System.Machine_Code in GPL 2017 Zfp for Arm
  2017-11-13 10:08 Using System.Machine_Code in GPL 2017 Zfp for Arm ahlan
  2017-11-13 10:57 ` ahlan
@ 2017-11-13 11:40 ` Simon Wright
  2017-11-13 13:21 ` ahlan
  2 siblings, 0 replies; 4+ messages in thread
From: Simon Wright @ 2017-11-13 11:40 UTC (permalink / raw)


ahlan@marriott.org writes:

> We are trying to build a zfp system for an arm M3 processor that is
> not on the list of supported GPL processors.
> We only want the Ada intrinsics. We do not need or want any RTS and so
> expected that --RTS=zfp would do the trick.
> however when we place this switch on arm-eabi-gcc from GPL 2017 we get
> the error message
> RTS path not valid: Missing adainclude and adalib directories.
> So things are not as simple as we thought.
> It appears that --RTS takes the name of a directory so we created one
> and named this on the RTS switch.
> In the directory we placed two files ada_object_path and
> ada_source_path that both contain the single word gnat.

I'd expect ada_object_path to contain the word adalib, and adalib/ to
contain the .ali's and .a(s), or perhaps .o's. Don't know what happens
if you put them in gnat/ with the sources, but it seems to work for you!
(and you shouldn't need adalib/ at all - though the
compiler/gnatls/gprconfig rules for determining whether this looks
enough like an RTS are a bit arbitrary & changeable & not necessarily
consistent).

> In the RTS directory we then created the empty directory adalib and
> another directory gnat and placed in gnat directory the file
> System.ads which we copied from an RTS directory of a similar
> processor.
> This all seems to work.
> With this we are able to create simple programs.
> However when we want to use System.Machine_Code we get the error message that
> System.Machine_Code is not a predefined library.
> I suspect that we need to add something to our RTS directory.

You need s-maccod.ads (from the same place; looks pretty
machine-independent).

GNAT GPL 2017 has $prefix/arm-eabi/lib/gnat/zfp-lm3s which is an M3 system.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Using System.Machine_Code in GPL 2017 Zfp for Arm
  2017-11-13 10:08 Using System.Machine_Code in GPL 2017 Zfp for Arm ahlan
  2017-11-13 10:57 ` ahlan
  2017-11-13 11:40 ` Simon Wright
@ 2017-11-13 13:21 ` ahlan
  2 siblings, 0 replies; 4+ messages in thread
From: ahlan @ 2017-11-13 13:21 UTC (permalink / raw)


On Monday, November 13, 2017 at 11:08:56 AM UTC+1, ah...@marriott.org wrote:
> We are trying to build a zfp system for an arm M3 processor that is not on the list of supported GPL processors.
> We only want the Ada intrinsics. We do not need or want any RTS and so expected that --RTS=zfp would do the trick.
> however when we place this switch on arm-eabi-gcc from GPL 2017 we get the error message
> RTS path not valid: Missing adainclude and adalib directories.
> So things are not as simple as we thought.
> It appears that --RTS takes the name of a directory so we created one and named this on the RTS switch.
> In the directory we placed two files ada_object_path and ada_source_path that both contain the single word gnat.
> In the RTS directory we then created the empty directory adalib and another  directory gnat and placed in gnat directory the file System.ads which we copied from an RTS directory of a similar processor.
> This all seems to work.
> With this we are able to create simple programs.
> However when we want to use System.Machine_Code we get the error message that
> System.Machine_Code is not a predefined library.
> I suspect that we need to add something to our RTS directory.
> But what?
> Has anyone any experience building ARM ZFP systems and can tell us how we get add System.Machine_Code to our Zfp.
> Any help or suggestions what to do next would be greatly appreciated.
> 
> Best wishes,
> Ahlan

Dear Simon,

Thanks for your quick response.
In the meantime we discovered exactly what you have just written.

Best wishes,
MfG
Ahlan

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-11-13 13:21 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-13 10:08 Using System.Machine_Code in GPL 2017 Zfp for Arm ahlan
2017-11-13 10:57 ` ahlan
2017-11-13 11:40 ` Simon Wright
2017-11-13 13:21 ` ahlan

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