dejagnu
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PING^3][PATCH 3/3][DejaGNU] target: Wrap linker flags into `-largs'


From: Maciej W. Rozycki
Subject: Re: [PING^3][PATCH 3/3][DejaGNU] target: Wrap linker flags into `-largs'/`-margs' for Ada
Date: Sun, 17 May 2020 00:29:57 +0100 (BST)
User-agent: Alpine 2.21 (LFD 202 2017-01-01)

On Fri, 25 Oct 2019, Jacob Bachmeyer wrote:

> I have just sent a patch to the list that has been waiting in my local 
> repository since June.  It adds unit tests for the 
> default_target_compile procedure, but currently verifies the broken Ada 
> handling.  Would you be willing to supply a patch to update those tests 
> to the correct behavior?  If so, I will also merge your code on my local 
> branch and we might even avoid the merge conflict down the line.

 I might be able to find some time, but please instruct me and also supply 
with the complete patch set as I note from your submission there are 
prerequisites.

> While you are doing that, could you also explain what the various -?args 
> GNU Ada driver options do and if any others are needed or could be 
> needed?  I will ensure that the rewrite handles all cases if I can get a 
> solid description of what those cases actually are.  The rewrite will 
> group complier/linker/etc. options in separate lists internally, so 
> using those options will be easy without adding more hacks to a 
> procedure that has already become a tissue of hacks.

 Here it goes:

"4.1.3 Mode Switches for 'gnatmake'
----------------------------------

"The mode switches (referred to as 'mode_switches') allow the inclusion
of switches that are to be passed to the compiler itself, the binder or
the linker.  The effect of a mode switch is to cause all subsequent
switches up to the end of the switch list, or up to the next mode
switch, to be interpreted as switches to be passed on to the designated
component of GNAT.

"'-cargs `switches''

     Compiler switches.  Here 'switches' is a list of switches that are
     valid switches for 'gcc'.  They will be passed on to all compile
     steps performed by 'gnatmake'.

"'-bargs `switches''

     Binder switches.  Here 'switches' is a list of switches that are
     valid switches for 'gnatbind'.  They will be passed on to all bind
     steps performed by 'gnatmake'.

"'-largs `switches''

     Linker switches.  Here 'switches' is a list of switches that are
     valid switches for 'gnatlink'.  They will be passed on to all link
     steps performed by 'gnatmake'.

"'-margs `switches''

     Make switches.  The switches are directly interpreted by
     'gnatmake', regardless of any previous occurrence of '-cargs',
     '-bargs' or '-largs'."

See also `info gnat_ugn' (a PDF copy may have also been available for your 
system).

  Maciej



reply via email to

[Prev in Thread] Current Thread [Next in Thread]