[Patch] Allow options.[ch] to be possibly regenerated after reconfigure --enable-languages=xxx

Kelley Cook kcook34@ford.com
Tue Jul 8 19:02:00 GMT 2003


Neil et al.,

When testing GCC, I occasionally, for time purposes, will only bootstrap 
with --enable-languages=c until I'm sure the modifications will work and 
then afterwards reconfigure with --enable-languages={whatever} && make 
to get the rest of the languages and libraries built.

This possibilty stopped working with your option consolidation, since 
options.[ch] will not get rebuilt if the number of front-ends it is 
depending on is modified.  f77/top.c, for example, will crash since none 
of the FOPTS will be in options.h

The small attached patch adds that support back in.

Two notes:

a) I put options.[ch] into a move-if-change form, so options.o will only 
be rebuilt if the reconfigure changes the enabled-languages.

b) Because of a) I ended up hardcoding "options.h" in the generated 
"options.c" otherwise it was being created with '#include 
"tmp-options.h"'  This may not be palatable to you in which case I am 
open to other suggestions (or you can, of course, modify the patch 
yourself).

Tested under i686-pc-cygwin by

configure --enable-languages=c ...
make bootstrap
configure --enable-languages=c,c++,objc,f77,java ...
make

which works as expected.

For good measure I then reran the last two steps and the build process, 
as designed, does not update the timestamps of options.[cho].

FWIW, I don't yet have CVSWrite access, though its in process..

Kelley Cook
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: mfopts.diff
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20030708/38ea6e29/attachment.ksh>


More information about the Gcc-patches mailing list