diff options
author | Steve McIntyre <steve@einval.com> | 2018-06-06 02:14:55 +0100 |
---|---|---|
committer | Steve McIntyre <steve@einval.com> | 2018-06-06 02:20:41 +0100 |
commit | 533db96be6c6b97b4bf26203b429f24b2ad56cb4 (patch) | |
tree | b826f626f219ceeedbfadf2c8f14f6811aa89448 /Makefile.common | |
parent | f035d5bf50874ad2e3c2b25aefcac111b4c5cbb0 (diff) |
Major Makefile overhauls
Add rules to generate the git revs cache in Makefile.common,
referenced as $(VCSREVCACHE)
Add an extra order-only prerequisite on $(VCSREVCACHE) for ~all rules
converting .wml to .html, so that we'll make sure we have a cache
built up-front before we start building anything.
More factorisation of various year-based Makefiles to use a common
Make.year set of rules.
Diffstat (limited to 'Makefile.common')
-rw-r--r-- | Makefile.common | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/Makefile.common b/Makefile.common index 9465f000bb4..9f9dfb7b398 100644 --- a/Makefile.common +++ b/Makefile.common @@ -10,6 +10,7 @@ ENGLISHDIR := $(ENGLISHSRCDIR) TEMPLDIR := $(ENGLISHDIR)/template/debian RELHTMLBASE := ../../www HTMLDIR = $(WMLBASE)/$(RELHTMLBASE)/$(CUR_DIR) +VCSREVCACHE = $(WMLBASE)/../.git-revs-cache.db LOCALEDIR := $(WMLBASE)/../locale/$(LANGUAGE)/LC_MESSAGES essential-locale-files := templates countries langs date @@ -90,6 +91,9 @@ cleandest:: $(existing-SUBS-cleandest) $(existing-SUBS-cleandest): -$(MAKE) -C $(patsubst %-cleandest,%,$@) cleandest +$(VCSREVCACHE): $(WMLBASE)/../.git/index + (cd $(WMLBASE)/.. && ./build_vcs_cache.pl) + # the rule for every wml file ifndef NOGENERICDEP @@ -99,7 +103,11 @@ else EXTRAWMLDEP := $(WMLRCDEP) $(GETTEXTDEP) $(TEMPLDIR)/template.wml $(TEMPLDIR)/languages.wml $(TEMPLDIR)/translation-check.wml endif -%.$(LANGUAGE).html : %.wml $(EXTRAWMLDEP) +# The "| $(VCSREVCACHE)" here is an order-only prerequisite - always +# check that the prerequisite exists and is up to date, but don't +# rebuild everything whenever it's updated - see +# https://www.gnu.org/software/make/manual/html_node/Prerequisite-Types.html +%.$(LANGUAGE).html : %.wml $(EXTRAWMLDEP) | $(VCSREVCACHE) $(WML) $(<F) ifeq "$(LANGUAGE)" "en" -$(WMLBASE)/../touch_translations.pl $(CURDIR)/$(<F) $(LANGUAGE) |