This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Death to configure.frag
- From: neroden at twcny dot rr dot com (Nathanael Nerode)
- To: zack at codesourcery dot com, gcc-patches at gcc dot gnu dot org
- Date: Fri, 29 Aug 2003 13:58:57 -0400
- Subject: Re: Death to configure.frag
Zack Weinberg wrote:
>The new requirement to use GNU Make means that we can count on make
>understanding a very general 'include' mechanism, and that completely
>eliminates the need for configure.frag.
...
>Bootstrapped i686-linux, all languages including Ada. Since we seem
>to be having an argument about the propriety of using GNU make
>features,
Some GNU make features are fine; others are considered harmful.
It's case-by-case here. I would request that all changes
introducing new GNU make features be put for review by the configury
maintainers, for now.
>I will wait 24 hours before checking this in. I hope this
>patch - and there are lots more things that can be done like this -
>demonstrates the value of using such features.
Use of the 'include' feature in straightforward ways like this is just
fine.
>-Makefile: $(srcdir)/Makefile.in config.status $(srcdir)/version.c \
>- $(xmake_file) $(tmake_file) $(LANG_MAKEFILES)
>- $(SHELL) $(srcdir)/configure.frag $(srcdir) "$(SUBDIRS)" \
>- "$(xmake_file)" "$(tmake_file)"
>- cp config.status config.run
>- LANGUAGES="$(CONFIG_LANGUAGES)" $(SHELL) config.run
>- rm -f config.run
>+Makefile $(LANG_MAKEFILES): %: %.in config.status $(srcdir)/version.c
>+ LANGUAGES="$(CONFIG_LANGUAGES)" \
>+ CONFIG_HEADERS= \
>+ CONFIG_FILES=$@ $(SHELL) config.status
This change is not OK (yet). The passing of
CONFIG_HEADERS and CONFIG_FILES is cryptic and undocumented.
Furthermore, making this a pattern rule is solely for the benefit of
subdirectories which are not supposed to keep their own Makefiles for
long anyway. (ada/Makefile.in is an abomination, and fixinc is moving,
eventually, to the top level). It is clearer and cleaner to break them
out separately.
--
Nathanael Nerode <neroden at gcc.gnu.org>
http://home.twcny.rr.com/nerode/neroden/fdl.html