This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: gcc 3.4 - gnatmake has wrong gcc name


Arnaud Charlet wrote:

Configure names with dots in them need to work. Sometimes minor OS
revisions can contain significant changes. We can't just tell people
that they can't use dots in configure names anymore if they want to use
Ada.



They work, since you can always call cross-gcc independently, and also
call gnatmake --GCC= to work around this limitation, this we're only talking
about a (desirable) improvement. That's why I'd rather get it right rather
than half baked.



I may be being anal retentive here but if none of the tools have been moved around or renamed,
it is broken for the user to have to specify --GCC. Wouldn't we all think it was broken if after
installing gcc, you had to pass a command line option to tell it where the cc1 or gnat1 it should
use is located?


Perhaps we should try a different tack here. Find the "gnatmake" in the
program name and drop everything after that. This assumes gnatmake will
never be renamed, but that doesn't seem like much of a risk.



Possibly, although this wouldn't work with --program-suffix. We don't support it for Ada anyway (see PR ada/864), but it would be nice to take it into account as well if possible.



or program_transform_name which (if still around) is arbitrarily complex.

This is like a trip in the wayback machine. I fixed this problem in 1997 against 3.10p.
The patch released with RTEMS 4.0.0 is still on the rtems ftp server. There is other
stuff in this patch but the part to Make-lang.in to handle program_transform_name
is still easy to read and reapply today. It installs all of the gnat tools with the same type of logic
that gcc does (or at least did in gcc 2.8.1) and . It adds Gcc_Name, Gnatbind_Name, and
Gnatlink_Name to sdefault.adb. Doing it this way, there isn't any need for regular
expression string manipulation since you know the name the tool was actually installed with.


http://www.rtems.com/ftp/pub/rtems/releases/4.0.0/ada_tools/gnat-3.10p-rtems-diff.971106

with program_transform_name, someone COULD replace gnat with ada in all the tool
names and this would break the string manipulation.


Prepending the Directory part to the canonical tool name would be a 100% solution since
my 3.10p patch required the cross tools to be in your path.


Arno



--joel



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]