[Bug ada/81878] --disable-bootstrap --enable-languages=ada fails

tnfchris at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Oct 16 12:01:00 GMT 2018


--- Comment #36 from Tamar Christina <tnfchris at gcc dot gnu.org> ---
> That seems like a big hammer though and I'm not sure other Ada maintainers
> will really be thrilled with it...  Can't we devise a kludge in the gnattools dir?
> IMO it would have a far better chance of being accepted than this.

You mean the use of translate_paths? So the problem is that if we look at


Most of the paths come from $(CXX) which is normally fine as you'd use
$(CXX) normally as a command, e.g. $(CXX) <files and options>.

When you do this the same thing happens, xgcc is a native program so it's paths
get translated.  You have `fix_srcfile_path` that can translate a single path,
but this
won't recognize multiple paths in a string, or paths to options, such as
-L<path>, so even
splitting GCC_LINK by spaces and iterating over them calling fix_srcfile_path
won't work.

One way to fix this without needing any second program is to change how
gnatlink consumes arguments,
e.g. instead of --LINK="<paths>" use --LINK <paths> -- or similar. E.g. an
explicit start and end marker so
the options don't have to be quoted. (same for --GCC).  This would also have
the side benefit of allowing
support for paths with spaces in them since you can now quote "" individual

Would this be a better approach?

Or did you mean make translate_paths and put it in the "tools" folder when
../stamp-tools is created?
That would probably work too.

More information about the Gcc-bugs mailing list