This is the mail archive of the
mailing list for the GCC project.
Re: How to handle linker options beginning with -f?
Mark Mitchell wrote:
> It occurs to me that there is a bigger question here.
> Fundamentally, there is a tension between trying to provide
> compatibility with vendor compilers (which provide lots of funky
> options) and trying to provide a uniform interface across platforms.
> As part of the GNU project, I think our goal should be to make life
> easy for GNU programmers, which means emphasizing the latter. It is
> more important that building GNU programs can be done easily and
> uniformly across platforms than that we provide compatibility with
> vendor compilers.
I agree, GNU should always take precedence. But one of RMS's original
clever decisions was to support non-GNU systems, because that allows
GNU tools to insinuate themselves into environments that would have
been much harder to crack otherwise.
Suppose that in 1991 RMS declared that the Linux kernel was "the one",
unilaterally evaporated all other OS support in GCC, GDB, Emacs, etc,
and refused to allow any in again. Even back then, there would have
been a major revolt and fork, but supposing that he talked everybody
into it, it would have crippled GNU development at a critical point;
no Cygnus customers to pay for development projects, GCC only worked
on by a handful of people trying to get Linux working well enough to
be useful, they make slow progress because Linux always crashes
The ultimate goal of GNU (according to the home page) is "to provide
free software to do all of the jobs computer users want to do", and
one way that GCC can help is by being able to replace proprietary
compilers, which means handling the funky options, at least temporarily
until the users' programs have been converted to know about GCC.
(Hmmm, this suggests that GCC ought to issue a deprecation-type
warning every time it sees a nonstandard option - nothing like
annoying warnings to get people to convert their code!)