summaryrefslogtreecommitdiffstats
path: root/mobile/locales/Makefile.in
diff options
context:
space:
mode:
Diffstat (limited to 'mobile/locales/Makefile.in')
-rw-r--r--mobile/locales/Makefile.in151
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