The MinGW.org Installation Manager Tool
Révision | 07291803b55069c7ea335cf48aa4824c99ae8627 (tree) |
---|---|
l'heure | 2013-06-19 23:35:53 |
Auteur | Keith Marshall <keithmarshall@user...> |
Commiter | Keith Marshall |
Rework defective package build time-stamping logic.
@@ -1,3 +1,12 @@ | ||
1 | +2013-06-19 Keith Marshall <keithmarshall@users.sourceforge.net> | |
2 | + | |
3 | + Rework defective package build time-stamping logic. | |
4 | + | |
5 | + * Makefile.in (%.time): Make it explicitly touch its target; the | |
6 | + 2013-05-15 changes, to reduce redundancy, didn't work as expected. | |
7 | + (%.tag): Add a side effect; make it also explicitly touch %.time. | |
8 | + (%.tagged.time): This is now redundant; remove it. | |
9 | + | |
1 | 10 | 2013-06-14 Keith Marshall <keithmarshall@users.sourceforge.net> |
2 | 11 | |
3 | 12 | Collect distributable package files in user specified directory. |
@@ -249,20 +249,21 @@ sinclude *.d | ||
249 | 249 | %.$(OBJEXT): %.ico |
250 | 250 | echo $* ICON $*.ico | $(RC) -I ${srcdir}/icons -o $@ |
251 | 251 | |
252 | -# Release tagging... | |
252 | +# Release tagging; note that, whereas %.time is nominally updated as | |
253 | +# a side effect of %.tag, we also must provide an explicit rule which | |
254 | +# will update it directly. This ensures that we may INDIRECTLY force | |
255 | +# a dependency on the TIME when %.tag is updated, WITHOUT creating an | |
256 | +# explicit dependency on %.tag itself. | |
253 | 257 | # |
254 | 258 | time-stamp: |
255 | -%.tagged.time: time-stamp | |
256 | - > $*.time | |
257 | - | |
258 | -%.time: %.tagged.time | |
259 | - | |
260 | -%.tag: %.tagged.time | |
259 | +%.time:; > $@ | |
260 | +%.tag: time-stamp | |
261 | 261 | >> $@; tag=`date +%Y%m%d`; \ |
262 | 262 | tag=`awk -F- -v today=$$tag ' \ |
263 | 263 | BEGIN { tag = 1 } $$1 == today { tag += $$2 } \ |
264 | 264 | END { print today "-" tag }' $@`; \ |
265 | 265 | echo $$tag > $@ |
266 | + > $*.time | |
266 | 267 | |
267 | 268 | %.c: %.c.in |
268 | 269 | $(VERSION_SCRIPT) $< > $@ |