build: more correct build rules for build/gen% programs.
gcc/: PR bootstrap/45796 * Makefile.in (build/gen%$(build_exeext)): Move rule after all special-casing for generators and turn into ... ((genprog:%=build/gen%$(build_exeext))): ... this static pattern rule, for better error messages in case of toplevel dependency errors. (genprog): Add hooks, rename to ... (genprogerr): ... this, and let genprog also contain check, checksum, condmd. ((genprog:%=build/gen%$(build_exeext))): Rename to ... ((genprogerr:%=build/gen%$(build_exeext))): ... this. (build/genhooks$(build_exeext)): Remove now-unneeded dependency. From-SVN: r164759
This commit is contained in:
parent
abcc9b2a3a
commit
6ddddaed95
2 changed files with 26 additions and 9 deletions
|
@ -1,3 +1,18 @@
|
|||
2010-09-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
||||
|
||||
PR bootstrap/45796
|
||||
* Makefile.in (build/gen%$(build_exeext)): Move rule after all
|
||||
special-casing for generators and turn into ...
|
||||
((genprog:%=build/gen%$(build_exeext))): ... this static pattern
|
||||
rule, for better error messages in case of toplevel dependency
|
||||
errors.
|
||||
(genprog): Add hooks, rename to ...
|
||||
(genprogerr): ... this, and let genprog also contain check,
|
||||
checksum, condmd.
|
||||
((genprog:%=build/gen%$(build_exeext))): Rename to ...
|
||||
((genprogerr:%=build/gen%$(build_exeext))): ... this.
|
||||
(build/genhooks$(build_exeext)): Remove now-unneeded dependency.
|
||||
|
||||
2010-09-30 Jonathan Wakely <jwakely.gcc@gmail.com>
|
||||
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
||||
|
||||
|
|
|
@ -3903,11 +3903,6 @@ build/genhooks.o : genhooks.c target.def $(BCONFIG_H) $(SYSTEM_H) errors.h
|
|||
# since they need to run on this machine
|
||||
# even if GCC is being compiled to run on some other machine.
|
||||
|
||||
# As a general rule...
|
||||
build/gen%$(build_exeext): build/gen%.o $(BUILD_LIBDEPS)
|
||||
$(LINKER_FOR_BUILD) $(BUILD_LINKERFLAGS) $(BUILD_LDFLAGS) -o $@ \
|
||||
$(filter-out $(BUILD_LIBDEPS), $^) $(BUILD_LIBS)
|
||||
|
||||
# All these programs use the RTL reader ($(BUILD_RTL)).
|
||||
genprogrtl = attr attrtab automata codes conditions config emit \
|
||||
extract flags opinit output peep preds recog
|
||||
|
@ -3917,16 +3912,23 @@ $(genprogrtl:%=build/gen%$(build_exeext)): $(BUILD_RTL)
|
|||
genprogmd = $(genprogrtl) mddeps constants enums
|
||||
$(genprogmd:%=build/gen%$(build_exeext)): $(BUILD_MD)
|
||||
|
||||
# All generator programs need to report errors
|
||||
genprog = $(genprogmd) genrtl modes gtype
|
||||
$(genprog:%=build/gen%$(build_exeext)): $(BUILD_ERRORS)
|
||||
# All these programs need to report errors.
|
||||
genprogerr = $(genprogmd) genrtl modes gtype hooks
|
||||
$(genprogerr:%=build/gen%$(build_exeext)): $(BUILD_ERRORS)
|
||||
|
||||
# Remaining build programs.
|
||||
genprog = $(genprogerr) check checksum condmd
|
||||
|
||||
# These programs need libs over and above what they get from the above list.
|
||||
build/genautomata$(build_exeext) : BUILD_LIBS += -lm
|
||||
|
||||
# These programs are not linked with the MD reader.
|
||||
build/gengtype$(build_exeext) : build/gengtype-lex.o build/gengtype-parse.o
|
||||
build/genhooks$(build_exeext) : $(BUILD_ERRORS)
|
||||
|
||||
# Rule for the generator programs:
|
||||
$(genprog:%=build/gen%$(build_exeext)): build/gen%$(build_exeext): build/gen%.o $(BUILD_LIBDEPS)
|
||||
$(LINKER_FOR_BUILD) $(BUILD_LINKERFLAGS) $(BUILD_LDFLAGS) -o $@ \
|
||||
$(filter-out $(BUILD_LIBDEPS), $^) $(BUILD_LIBS)
|
||||
|
||||
# Generated source files for gengtype.
|
||||
gengtype-lex.c : gengtype-lex.l
|
||||
|
|
Loading…
Add table
Reference in a new issue