From 99497f5afe26835a1769ea37004081418571ec69 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Sat, 9 Aug 2008 05:13:29 +0200 Subject: Extend make to support FLAVORS. --- .gitignore | 4 ++++ Makefile | 6 +++++- make/rules.mk | 14 +++++++++----- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index 658803e..5a92cdf 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,10 @@ /basewiki /basewiki_l10n +/basewiki_nonedit +/basewiki_nonedit_l10n /smiley /smiley_l10n /templates /templates_l10n +/templates_nonedit +/templates_nonedit_l10n diff --git a/Makefile b/Makefile index 5ea3bd6..10ef01b 100644 --- a/Makefile +++ b/Makefile @@ -2,8 +2,10 @@ SOURCES = ikiwiki ikiwiki_ORIGIN = git://source.jones.dk/ikiwiki_MODULE ikiwiki_MODULES = templates basewiki smiley +ikiwiki_basewiki_FLAVORS = nonedit +ikiwiki_templates_FLAVORS = nonedit ikiwiki_POMODULES = basewiki smiley -ikiwiki_BRANCH = master-LOCALE +ikiwiki_BRANCH = master-FLAVOR-LOCALE ikiwiki_LOCALES = da nb ikiwiki_POLOCALES = da @@ -17,6 +19,8 @@ ikiwiki_POLOCALES = da # FIXME: Not all of these are used within templates masterdir = $(module) l10ndir = $(module)_l10n/$(locale) +flavordir = $(module)_$(flavor) +flavorl10ndir = $(module)_$(flavor)_l10n/$(locale) podir = po all: $(SOURCES) diff --git a/make/rules.mk b/make/rules.mk index 5369cd0..8da5f97 100644 --- a/make/rules.mk +++ b/make/rules.mk @@ -15,18 +15,18 @@ $(foreach source,$(SOURCES),$(eval $(call SOURCE_template,$(source),$($(source)_ # * Clone master branches from remote origin # * Clone each non-master from local master -# 1:moduledir 2:locale 3:mastermodule 4:source +# 1:moduledir 2:locale 3:mastermodule 4:source 5:flavor define MODULE_template -$(3)_BRANCHES += $$(subst -LOCALE,$(2:%=-$(2)),$$($(4)_BRANCH)) +$(3)_BRANCHES += $$(subst -FLAVOR,$(5:%=-$(5)),$$(subst -LOCALE,$(2:%=-$(2)),$$($(4)_BRANCH))) $(4): $(1) ifneq ($(2),) $(1): $$(subst module,$(3),$$(masterdir)) endif -$(1): origin = $$(if $(2),$(3),$$(subst MODULE,$(3),$$($(4)_ORIGIN))) -$(1): master = $$(subst -LOCALE,$(2:%=-$(2)),$$($(4)_BRANCH)) -$(1): branches = $$(if $(2),,$$(filter-out $$(master),$$($(3)_BRANCHES))) +$(1): origin = $$(if $(2)$(5),$(3),$$(subst MODULE,$(3),$$($(4)_ORIGIN))) +$(1): master = $$(subst -FLAVOR,$(5:%=-$(5)),$$(subst -LOCALE,$(2:%=-$(2)),$$($(4)_BRANCH))) +$(1): branches = $$(if $(2)$(5),,$$(filter-out $$(master),$$($(3)_BRANCHES))) $(1): @[ -d "$$(dir $$@)" ] || ( echo mkdir -p "$$(dir $$@)" && mkdir -p "$$(dir $$@)" ) @[ -d "$$@" ] || ( echo git clone -o "$(4)" "$$(origin)" "$$@" && git clone -o "$(4)" "$$(origin)" "$$@" ) @@ -43,6 +43,10 @@ endif endef $(foreach source,$(SOURCES),$(foreach module,$($(source)_MODULES),$(eval $(call MODULE_template,$(masterdir),,$(module),$(source))))) $(foreach source,$(SOURCES),$(foreach module,$($(source)_MODULES),$(foreach locale,$($(source)_LOCALES),$(eval $(call MODULE_template,$(l10ndir),$(locale),$(module),$(source)))))) +#$(foreach source,$(SOURCES),$(foreach module,$($(source)_MODULES),$(foreach flavor,$(patsubst $(module)-%,%,$($(source)_MODULEFLAVORS)),$(eval $(call MODULE_template,$(flavordir),,$(module),$(source),$(flavor)))))) +#$(foreach source,$(SOURCES),$(foreach module,$($(source)_MODULES),$(foreach flavor,$(patsubst $(module)-%,%,$($(source)_MODULEFLAVORS)),$(foreach locale,$($(source)_LOCALES),$(eval $(call MODULE_template,$(flavorl10ndir),$(locale),$(module),$(source),$(flavor))))))) +$(foreach source,$(SOURCES),$(foreach module,$($(source)_MODULES),$(foreach flavor,$($(source)_$(module)_FLAVORS),$(eval $(call MODULE_template,$(flavordir),,$(module),$(source),$(flavor)))))) +$(foreach source,$(SOURCES),$(foreach module,$($(source)_MODULES),$(foreach flavor,$($(source)_$(module)_FLAVORS),$(foreach locale,$($(source)_LOCALES),$(eval $(call MODULE_template,$(flavorl10ndir),$(locale),$(module),$(source),$(flavor))))))) -- cgit v1.2.3