I forgot to use the stamp trick on bison generated files,
the very next patch will do it.
Index: ChangeLog
from BenoƮt Perrot <benoit(a)lrde.epita.fr>
Do not update timestamps of generators when they fail.
* src/parse/Makefile.am, dev/inst-makefile-gen.py:
Suggested by Akim Demaille: Read Automake.texi :)
Index: src/parse/Makefile.am
--- src/parse/Makefile.am (revision 130)
+++ src/parse/Makefile.am (revision 131)
@@ -13,17 +13,22 @@
asm-parse.yy parse-asm-parse.stamp \
$(FROM_ASM_PARSE_YY)
+# This code comes from "Handling Tools that Produce Many Outputs",
+# from the Automake documentation.
+
parse-asm-scan.stamp: $(top_srcdir)/dev/parse-asm-scan-gen.py
$(top_srcdir)/dev/nolimips.xml
+ @rm -rf $@.tmp
+ @touch $@.tmp
$(top_srcdir)/dev/parse-asm-scan-gen.py < $(top_srcdir)/dev/nolimips.xml
- touch $@
+ @mv -f $@.tmp $@
asm-scan.ll: parse-asm-scan.stamp
- touch $@
parse-asm-parse.stamp: $(top_srcdir)/dev/parse-asm-parse-gen.py
$(top_srcdir)/dev/nolimips.xml
+ @rm -rf $@.tmp
+ @touch $@.tmp
$(top_srcdir)/dev/parse-asm-parse-gen.py < $(top_srcdir)/dev/nolimips.xml
- touch $@
+ @mv -f $@.tmp $@
asm-parse.yy: parse-asm-parse.stamp
- touch $@
$(FROM_ASM_PARSE_YY): $(srcdir)/asm-parse.yy
bison -S lalr1.cc -d -ra $(srcdir)/asm-parse.yy -o asm-parse.cc
Index: dev/inst-makefile-gen.py
--- dev/inst-makefile-gen.py (revision 130)
+++ dev/inst-makefile-gen.py (revision 131)
@@ -50,20 +50,28 @@
program_builder.hh inst-builder-gen.stamp \\
program_solver.hh program_solver.cc inst-solver-gen.stamp
+# This code comes from \"Handling Tools that Produce Many Outputs\",
+# from the Automake documentation.
inst-nodes-gen.stamp: $(top_srcdir)/dev/inst-nodes-gen.py $(top_srcdir)/dev/nolimips.xml
+ @rm -rf $@.tmp
+ @touch $@.tmp
$(top_srcdir)/dev/inst-nodes-gen.py < $(top_srcdir)/dev/nolimips.xml
- touch $@
+ @mv -f $@.tmp $@
$(FROM_INST_NODES_GEN_PY): inst-nodes-gen.stamp
inst-builder-gen.stamp: $(top_srcdir)/dev/inst-builder-gen.py
$(top_srcdir)/dev/nolimips.xml
+ @rm -rf $@.tmp
+ @touch $@.tmp
$(top_srcdir)/dev/inst-builder-gen.py < $(top_srcdir)/dev/nolimips.xml
- touch $@
+ @mv -f $@.tmp $@
program_builder.hh: inst-builder-gen.stamp
inst-solver-gen.stamp: $(top_srcdir)/dev/inst-solver-gen.py
$(top_srcdir)/dev/nolimips.xml
+ @rm -rf $@.tmp
+ @touch $@.tmp
$(top_srcdir)/dev/inst-solver-gen.py < $(top_srcdir)/dev/nolimips.xml
- touch $@
+ @mv -f $@.tmp $@
program_solver.hh program_solver.cc: inst-solver-gen.stamp
Show replies by date