diff options
Diffstat (limited to 'mobile/locales/Makefile.in')
-rw-r--r-- | mobile/locales/Makefile.in | 151 |
1 files changed, 151 insertions, 0 deletions
diff --git a/mobile/locales/Makefile.in b/mobile/locales/Makefile.in new file mode 100644 index 000000000..d4f0237b9 --- /dev/null +++ b/mobile/locales/Makefile.in @@ -0,0 +1,151 @@ +# -*- makefile -*- +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +##################################################################################### +# Dependency build overhead: +# o always create/update/hard link targets boomkarks.json & searchplugins +# o latest symlink will be correct for the current locale / local build. +# o logic is essentially FORCE for language packs w/o all the build overhead +# o phase 2: replace hard links with a user function able to derive path +# based on current locale. +##################################################################################### + +include $(topsrcdir)/config/config.mk + +USE_AUTOTARGETS_MK=1 +include $(topsrcdir)/config/makefiles/makeutils.mk + +# Separate items of contention +tgt-gendir = .deps/generated_$(AB_CD) + +GENERATED_DIRS += .deps + +ifdef LOCALE_MERGEDIR +vpath book%.inc $(LOCALE_MERGEDIR)/mobile/profile +endif +vpath book%.inc $(LOCALE_SRCDIR)/profile +ifdef LOCALE_MERGEDIR +vpath book%.inc @srcdir@/en-US/profile +endif + +$(call errorIfEmpty,MOZ_BRANDING_DIRECTORY) +SUBMAKEFILES += \ + $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/Makefile \ + $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales/Makefile \ + $(NULL) + +########################################################################### +# Default target, preserve existing functionality for: +# gmake -C $obj/mobile/locales +########################################################################### +search-jar-default: search-jar + + +########################################################################### +## Searchlist plugin config +plugin-file-array = \ + $(wildcard $(LOCALE_SRCDIR)/searchplugins/list.txt) \ + $(srcdir)/en-US/searchplugins/list.txt \ + $(NULL) + +########################################################################### +plugin_file = $(firstword $(plugin-file-array)) +plugin-file-ts = $(tgt-gendir)/$(subst $(topsrcdir)/,$(NULL),$(plugin_file)).ts + +GARBAGE += $(plugin-file-ts) +# --------------------------------------------------------------------------- +# plugin-file-ts track searchlist file used ($path/list.txt) +# and time when the file was last modified. +########################################################################### +plugin-file-ts-preqs = \ + $(call mkdir_deps,$(dir $(plugin-file-ts))) \ + $(plugin_file) \ + $(NULL) + +########################################################################### +# Detect locale changes. Force stale deps when searchlist file +# or content has changed. +$(plugin-file-ts): $(plugin-file-ts-preqs) + @touch $@ + + +########################################################################### +search-jar-common = tmp-search.jar.mn +search-jar = $(tgt-gendir)/$(search-jar-common) +search-jar-ts = $(search-jar).ts + +GARBAGE += $(search-jar) $(search-jar-ts) $(search-jar-common) +# --------------------------------------------------------------------------- +# search-jar contains a list of providers for the search plugin +########################################################################### +SEARCH_PLUGINS = $(shell cat $(plugin_file)) +SEARCH_PLUGINS := $(subst :hidden,,$(SEARCH_PLUGINS)) +$(call errorIfEmpty,SEARCH_PLUGINS) + +search-jar-preqs = \ + $(plugin-file-ts) \ + $(if $(IS_LANGUAGE_REPACK),FORCE) \ + $(NULL) + +.PHONY: search-jar +search-jar: $(search-jar) +$(search-jar): $(search-jar-preqs) + @echo '\nGenerating: search-jar' + printf '$(AB_CD).jar:' > $@ + ln -fn $@ . + printf '$(foreach plugin,$(SEARCH_PLUGINS),$(subst __PLUGIN_SUBST__,$(plugin), \n locale/$(AB_CD)/browser/searchplugins/__PLUGIN_SUBST__.xml (__PLUGIN_SUBST__.xml)))' >> $@ + @echo >> $@ + +################### +search-dir-deps = \ + $(plugin-file) \ + $(dir-chrome) \ + $(NULL) + +search-preqs =\ + $(call mkdir_deps,$(dir $(search-jar-ts))) \ + $(call mkdir_deps,$(FINAL_TARGET)/chrome) \ + $(search-jar) \ + $(search-dir-deps) \ + $(if $(IS_LANGUAGE_REPACK),FORCE) \ + $(GLOBAL_DEPS) \ + $(NULL) + +.PHONY: searchplugins +searchplugins: $(search-preqs) + $(call py_action,jar_maker,\ + $(QUIET) -d $(FINAL_TARGET) \ + -s $(topsrcdir)/$(relativesrcdir)/en-US/searchplugins \ + -s $(LOCALE_SRCDIR)/searchplugins \ + $(MAKE_JARS_FLAGS) $(search-jar)) + $(TOUCH) $@ + +include $(topsrcdir)/config/rules.mk + + +############# +libs-preqs =\ + $(call mkdir-deps,$(DIST)/install) \ + $(NULL) + +libs-%: $(libs-preqs) + $(display-deps) + @$(MAKE) -C $(DEPTH)/toolkit/locales libs-$* + @$(MAKE) -C $(DEPTH)/intl/locales AB_CD=$* XPI_NAME=locale-$* + @$(MAKE) -B searchplugins AB_CD=$* XPI_NAME=locale-$* + @$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=defaults/pref + @$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$* + +# Tailored target to just add the chrome processing for multi-locale builds +chrome-%: + $(display-deps) + @$(MAKE) -B searchplugins AB_CD=$* + @$(MAKE) chrome AB_CD=$* + @$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales chrome AB_CD=$* + +NO_JA_JP_MAC_AB_CD := $(if $(filter ja-JP-mac, $(AB_CD)),ja,$(AB_CD)) + + +export:: searchplugins |