Browse Source

bug 1240930

Bill Gianopoulos 3 years ago
parent
commit
72c7a828f1

+ 80 - 0
bug1240930/comm/1240930-mail-80a1.patch

@@ -0,0 +1,80 @@
+# HG changeset patch
+# User Geoff Lankow <geoff@darktrojan.net>
+# Date 1593577763 -43200
+# Node ID 8b55e4dbec550ee94581636afcb8661a82200f92
+# Parent  926e7403d2a87e3bd461a02a0594aca7dab92980
+Port bug 1240930 - Rename the libs-% targets for l10n repacks to l10n-%. rs=bustage-fix
+
+diff --git a/mail/locales/Makefile.in b/mail/locales/Makefile.in
+--- a/mail/locales/Makefile.in
++++ b/mail/locales/Makefile.in
+@@ -13,17 +13,17 @@ EN_US_OR_L10N_FILE = $(firstword \
+ 	$(wildcard $(srcdir)/en-US/$(1)) \
+ 	$(LOCALE_SRCDIR)/$(1) )
+ 
+ SUBMAKEFILES += \
+ 	$(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/Makefile \
+ 	$(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales/Makefile \
+ 	$(NULL)
+ 
+-# This makefile uses variable overrides from the libs-% target to
++# This makefile uses variable overrides from the l10n-% target to
+ # build non-default locales to non-default dist/ locations. Be aware!
+ 
+ PWD := $(CURDIR)
+ 
+ # These are defaulted to be compatible with the files the wget-en-US target
+ # pulls. You may override them if you provide your own files.
+ ZIP_IN ?= $(ABS_DIST)/$(PACKAGE)
+ 
+@@ -57,45 +57,45 @@ DIST_SUBDIRS = $(DIST_SUBDIR)
+ include $(moztopsrcdir)/config/rules.mk
+ 
+ ifeq ($(commreltopsrcdir),comm)
+ COMPARE_LOCALES_DEFINES += -Dmozilla=..
+ endif
+ 
+ include $(moztopsrcdir)/toolkit/locales/l10n.mk
+ 
+-libs-%: AB_CD=$*
+-libs-%:
++l10n-%: AB_CD=$*
++l10n-%:
+ # merge if we're not en-US. Conditional function because
+ # we need the current value of AB_CD.
+ 	$(if $(filter en-US,$(AB_CD)),, @$(MAKE) merge-$*)
+ 	$(NSINSTALL) -D $(DIST)/install
+-	@$(MAKE) -C $(DEPTH)/toolkit/locales libs-$*  XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
++	@$(MAKE) -C $(DEPTH)/toolkit/locales l10n-$*  XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
+ 	@$(MAKE) -C $(DEPTH)/devtools/client/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
+ 	@$(MAKE) -C $(DEPTH)/devtools/shim/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
+ 	@$(MAKE) -C ../../chat/locales AB_CD=$* XPI_NAME=locale-$*
+ 	@$(MAKE) -C ../../calendar/locales AB_CD=$* XPI_NAME=locale-$*
+ 	@$(MAKE) -C $(DEPTH)/extensions/spellcheck/locales AB_CD=$* XPI_NAME=locale-$*
+-	@$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=defaults/pref
++	@$(MAKE) l10n AB_CD=$* XPI_NAME=locale-$* PREF_DIR=defaults/pref
+ 	@$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$*
+ 
+ 
+ package-win32-installer: $(SUBMAKEFILES)
+ 	$(MAKE) -C ../installer/windows CONFIG_DIR=l10ngen ZIP_IN='$(ZIP_OUT)' installer
+ 
+ langpack: langpack-$(AB_CD)
+ 
+ # This is a generic target that will make a langpack, repack ZIP (+tarball)
+ # builds, and repack an installer if applicable. It is called from the
+ # tinderbox scripts. Alter it with caution.
+ 
+ installers-%: IS_LANGUAGE_REPACK=1
+ installers-%:
+ 	@$(MAKE) clobber-$*
+-	@$(MAKE) libs-$*
++	@$(MAKE) l10n-$*
+ 	@$(MAKE) package-langpack-$*
+ 	@$(MAKE) repackage-zip-$*
+ ifeq (WINNT,$(OS_ARCH))
+ 	@$(MAKE) package-win32-installer AB_CD=$*
+ endif
+ 	@echo 'repackaging done'
+ 
+ ifdef MOZ_UPDATER

+ 90 - 0
bug1240930/comm/1650631-port-1240930-suite.patch

@@ -0,0 +1,90 @@
+# HG changeset patch
+# User Bill Gianopoulos <wgianopoulos@gmail.com>
+# Date 1593598391 14400
+#      Wed Jul 01 06:13:11 2020 -0400
+# Parent  6f533dd49d3e0fac01f1ffbf45258ae7a97dc26e
+Bug 1650631 - Rename the libs-% targets for l10n repacks to l10n-%. r=frg
+Port bug 1240930 - Move jar_maker to the misc tier.
+
+diff --git a/suite/locales/Makefile.in b/suite/locales/Makefile.in
+--- a/suite/locales/Makefile.in
++++ b/suite/locales/Makefile.in
+@@ -9,17 +9,17 @@ include $(topsrcdir)/config/config.mk
+ 
+ MERGE_FILES = $(foreach f,$(1),$(call MERGE_FILE,$(f)))
+ 
+ SUBMAKEFILES += \
+ 	$(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/Makefile \
+ 	$(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales/Makefile \
+ 	$(NULL)
+ 
+-# This makefile uses variable overrides from the libs-% target to
++# This makefile uses variable overrides from the l10n-% target to
+ # build non-default locales to non-default dist/ locations. Be aware!
+ 
+ PWD := $(CURDIR)
+ 
+ # These are defaulted to be compatible with the files the wget-en-US target
+ # pulls. You may override them if you provide your own files.
+ ZIP_IN ?= $(ABS_DIST)/$(PACKAGE)
+ 
+@@ -96,35 +96,35 @@ libs:: $(call MERGE_FILES,$(addprefix pr
+ 	$(SYSINSTALL) $(IFLAGS1) $^ $(FINAL_TARGET)/defaults/profile/chrome
+ 
+ # Extend l10n.mk clobber-% target for our localised extensions
+ ifdef MOZ_IRC
+ clobber-extensions-%:
+ 	$(RM) -rf $(DIST)/xpi-stage/chatzilla-$* $(DIST)/xpi-stage/chatzilla-*.$*.xpi
+ endif
+ 
+-libs-%: AB_CD=$*
+-libs-%:
++l10n-%: AB_CD=$*
++l10n-%:
+ # merge if we're not en-US. Conditional function because
+ # we need the current value of AB_CD.
+ 	$(if $(filter en-US,$(AB_CD)),, @$(MAKE) merge-$*)
+ 	$(NSINSTALL) -D $(DIST)/install
+-	@$(MAKE) -C $(DEPTH)/toolkit/locales libs-$*
++	@$(MAKE) -C $(DEPTH)/toolkit/locales l10n-$*
+ #	@$(MAKE) -C $(DEPTH)/services/sync/locales AB_CD=$* XPI_NAME=locale-$*
+ 	@$(MAKE) -C ../../calendar/locales AB_CD=$* XPI_NAME=locale-$*
+ ifdef MOZ_IRC
+-	@$(MAKE) -C ../extensions/irc/locales libs-$*
++	@$(MAKE) -C ../extensions/irc/locales l10n-$*
+ endif
+ ifdef MOZ_DEBUGQA
+ 	@$(MAKE) -C ../extensions/debugQA/locales AB_CD=$* XPI_NAME=locale-$*
+ endif
+ 	@$(MAKE) -C $(DEPTH)/extensions/spellcheck/locales AB_CD=$* XPI_NAME=locale-$*
+ 	@$(MAKE) -C $(DEPTH)/devtools/client/locales AB_CD=$* XPI_NAME=locale-$*
+ 	@$(MAKE) -C $(DEPTH)/devtools/shim/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
+-	@$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=defaults/pref
++	@$(MAKE) l10n AB_CD=$* XPI_NAME=locale-$* PREF_DIR=defaults/pref
+ 	@$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$*
+ 
+ package-win32-installer: $(SUBMAKEFILES)
+ 	$(MAKE) -C ../installer/windows CONFIG_DIR=l10ngen ZIP_IN='$(ZIP_OUT)' installer
+ 
+ repackage-extensions: $(STAGEDIST)
+ ifdef MOZ_IRC
+ 	$(MAKE) -C ../extensions/irc/locales repackage-zip-$(AB_CD) STAGEDIST=$(STAGEDIST)
+@@ -137,17 +137,17 @@ langpack: langpack-$(AB_CD)
+ # builds, and repack and installer if applicable. It is called from the
+ # tinderbox scripts. Alter it with caution.
+ installers-%: IS_LANGUAGE_REPACK=1
+ installers-%:
+ 	@$(MAKE) clobber-$*
+ ifdef MOZ_IRC
+ 	@$(MAKE) clobber-extensions-%*
+ endif
+-	@$(MAKE) libs-$*
++	@$(MAKE) l10n-$*
+ 	@$(MAKE) package-langpack-$*
+ 	@$(MAKE) repackage-zip-$*
+ 	@$(MAKE) repackage-extensions AB_CD=$*
+ ifeq (WINNT,$(OS_ARCH))
+ 	@$(MAKE) package-win32-installer AB_CD=$*
+ endif
+ 	@echo 'repackaging done'
+ 

+ 49 - 0
bug1240930/comm/WIP-9999999-HACK-port1240930-de-langpack-257.patch

@@ -0,0 +1,49 @@
+# HG changeset patch
+# User Frank-Rainer Grahl <frgrahl@gmx.net>
+# Date 1615148175 18000
+#      Sun Mar 07 15:16:15 2021 -0500
+No Bug - Ugly hack only.  Fix hack after bug 1240930.
+
+diff --git a/suite/extensions/irc/locales/Makefile.in b/suite/extensions/irc/locales/Makefile.in
+--- a/suite/extensions/irc/locales/Makefile.in
++++ b/suite/extensions/irc/locales/Makefile.in
+@@ -50,27 +50,34 @@ APP_DEFINES = $(firstword $(wildcard $(L
+ 
+ TK_DEFINES = $(firstword \
+              $(wildcard $(call EXPAND_LOCALE_SRCDIR,toolkit/locales)/defines.inc) \
+              $(MOZILLA_DIR)/toolkit/locales/en-US/defines.inc)
+ 
+ include $(topsrcdir)/config/rules.mk
+ 
+ ifneq (en-US,$(AB_CD))
+-libs realchrome::
++misc realchrome::
+ 	@echo "Comparing $(AB_CD) to en-US"
+ 	@$(PERL) $(topsrcdir)/toolkit/locales/compare-locales.pl $(srcdir)/en-US $(LOCALE_SRCDIR)
+-	cp -rp $(topsrcdir)/comm/suite/extensions/irc/locales/manifest.json $(DIST)/xpi-stage/$(XPI_NAME)/manifest.json
++	$(call py_action,preprocessor,$(DEFINES) $(ACDEFINES) \
++	  -DTK_DEFINES=$(TK_DEFINES) -DAPP_DEFINES=$(APP_DEFINES) \
++	  $(srcdir)/generic/install.rdf -o $(DIST)/xpi-stage/$(XPI_NAME)/install.rdf)
+ endif
+ 
+-libs-%: AB_CD=$*
+-libs-%:
++ifdef AB_CD
++.PHONY: l10n
++l10n: misc ;
++endif
++
++l10n-%: AB_CD=$*
++l10n-%:
+ 	# XXX: it would be nice if we could just do nothing if no langpack is being done
+ 	#  currently, we just go and (re)build en-US if called with a non-supported locale
+-	$(MAKE) libs AB_CD=$*
++	$(MAKE) l10n AB_CD=$*
+ 
+ repackage-zip: $(STAGEDIST)
+ ifneq (en-US,$(AB_CD))
+ 	$(RM) -rf $(STAGEDIST)/extensions/$(INSTALL_EXTENSION_ID)
+ 	mkdir $(STAGEDIST)/extensions/$(INSTALL_EXTENSION_ID)
+ 	if test -d "$(DIST)/xpi-stage/$(XPI_NAME)/chrome/chatzilla.jar"; then \
+ 	  $(RM) -r $(DIST)/xpi-stage/$(XPI_NAME)/chrome/chatzilla;\
+ 	fi

+ 3 - 0
bug1240930/comm/comm_ser

@@ -0,0 +1,3 @@
+1240930-mail-80a1.patch
+1650631-port-1240930-suite.patch
+WIP-9999999-HACK-port1240930-de-langpack-257.patch

+ 445 - 0
bug1240930/mozilla/1240930-80a1.patch

@@ -0,0 +1,445 @@
+# HG changeset patch
+# User Mike Hommey <mh+mozilla@glandium.org>
+# Date 1593552872 0
+# Node ID 22a1bfea8f7b108e24ebfd6c2539bcd524f8326b
+# Parent  3e0248a432be89e7016e5ef81736d418f8cbc4f0
+Bug 1240930 - Move jar_maker to the misc tier. r=firefox-build-system-reviewers,geckoview-reviewers,rstewart,agi
+
+Because jar_maker is not in the libs tier, we also rename the libs-%
+targets for l10n repacks to l10n-%, which make it clearer what they are
+for.
+
+And because multilocale.txt is both a GeneratedFile and a file that is
+generated (and installed) via manual build rules, keeping it in the misc
+target actually breaks building in toolkit/locales during l10n repacks,
+so move it to libs for now.
+
+Differential Revision: https://phabricator.services.mozilla.com/D81766
+
+diff --git a/browser/locales/Makefile.in b/browser/locales/Makefile.in
+--- a/browser/locales/Makefile.in
++++ b/browser/locales/Makefile.in
+@@ -6,17 +6,17 @@
+ include $(topsrcdir)/config/config.mk
+ 
+ 
+ SUBMAKEFILES += \
+ 	$(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/Makefile \
+ 	$(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales/Makefile \
+ 	$(NULL)
+ 
+-# This makefile uses variable overrides from the libs-% target to
++# This makefile uses variable overrides from the l10n-% target to
+ # build non-default locales to non-default dist/ locations. Be aware!
+ 
+ PWD := $(CURDIR)
+ 
+ # These are defaulted to be compatible with the files the wget-en-US target
+ # pulls. You may override them if you provide your own files.
+ ZIP_IN ?= $(ABS_DIST)/$(PACKAGE)
+ 
+@@ -46,34 +46,34 @@ endif
+ # Required for l10n.mk - defines a list of app sub dirs that should
+ # be included in langpack xpis.
+ DIST_SUBDIRS = $(DIST_SUBDIR)
+ 
+ include $(topsrcdir)/config/rules.mk
+ 
+ include $(topsrcdir)/toolkit/locales/l10n.mk
+ 
+-libs-%: AB_CD=$*
+-libs-%:
++l10n-%: AB_CD=$*
++l10n-%:
+ 	$(if $(filter en-US,$(AB_CD)),, @$(MAKE) merge-$*)
+ 	$(NSINSTALL) -D $(DIST)/install
+-	@$(MAKE) -C ../../toolkit/locales libs-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
++	@$(MAKE) -C ../../toolkit/locales l10n-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
+ 	@$(MAKE) -C ../../services/sync/locales AB_CD=$* XPI_NAME=locale-$*
+ 	@$(MAKE) -C ../../extensions/spellcheck/locales AB_CD=$* XPI_NAME=locale-$*
+ ifneq (,$(wildcard ../extensions/formautofill/locales))
+ 	@$(MAKE) -C ../extensions/formautofill/locales AB_CD=$* XPI_NAME=locale-$*
+ endif
+ 	@$(MAKE) -C ../extensions/jaws-esr/locales AB_CD=$* XPI_NAME=locale-$*
+ 	@$(MAKE) -C ../extensions/pocket/locale AB_CD=$* XPI_NAME=locale-$*
+ ifneq '$(or $(MOZ_DEV_EDITION),$(NIGHTLY_BUILD))' ''
+ 	@$(MAKE) -C ../extensions/webcompat-reporter/locales AB_CD=$* XPI_NAME=locale-$*
+ endif
+ 	@$(MAKE) -C ../../devtools/client/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
+ 	@$(MAKE) -C ../../devtools/shim/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
+-	@$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=$(PREF_DIR)
++	@$(MAKE) l10n AB_CD=$* XPI_NAME=locale-$* PREF_DIR=$(PREF_DIR)
+ 	@$(MAKE) multilocale.txt-$* AB_CD=$* XPI_NAME=locale-$*
+ 	@$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$*
+ 
+ chrome-%: AB_CD=$*
+ chrome-%: IS_LANGUAGE_REPACK=1
+ chrome-%:
+ 	$(if $(filter en-US,$(AB_CD)),, @$(MAKE) merge-$*)
+ 	@$(MAKE) -C ../../toolkit/locales chrome-$*
+@@ -99,17 +99,17 @@ langpack: langpack-$(AB_CD)
+ 
+ # This is a generic target that will make a langpack, repack ZIP (+tarball)
+ # builds, and repack an installer if applicable. It is called from the
+ # tinderbox scripts. Alter it with caution.
+ 
+ installers-%: IS_LANGUAGE_REPACK=1
+ installers-%:
+ 	@$(MAKE) clobber-$*
+-	@$(MAKE) libs-$*
++	@$(MAKE) l10n-$*
+ 	@$(MAKE) package-langpack-$*
+ 	@$(MAKE) repackage-zip-$*
+ ifeq (WINNT,$(OS_ARCH))
+ 	@$(MAKE) package-win32-installer AB_CD=$*
+ endif
+ 	@echo 'repackaging done'
+ 
+ ident:
+diff --git a/config/rules.mk b/config/rules.mk
+--- a/config/rules.mk
++++ b/config/rules.mk
+@@ -1229,22 +1229,26 @@ endif
+ # no way langpacks will get packaged right, so error out.
+ ifneq (,$(DIST_SUBDIR))
+ ifndef XPI_ROOT_APPID
+ $(error XPI_ROOT_APPID is not defined - langpacks will break.)
+ endif
+ endif
+ endif
+ 
+-libs realchrome:: $(FINAL_TARGET)/chrome
++misc realchrome:: $(FINAL_TARGET)/chrome
+ 	$(call py_action,jar_maker,\
+ 	  $(QUIET) -d $(FINAL_TARGET) \
+ 	  $(MAKE_JARS_FLAGS) $(DEFINES) $(ACDEFINES) \
+ 	  $(JAR_MANIFEST))
+ 
++ifdef AB_CD
++.PHONY: l10n
++l10n: misc ;
++endif
+ endif
+ 
+ endif
+ 
+ # When you move this out of the tools tier, please remove the corresponding
+ # hacks in recursivemake.py that check if Makefile.in sets the variable.
+ ifneq ($(XPI_PKGNAME),)
+ tools realchrome::
+diff --git a/python/mozbuild/mozbuild/backend/recursivemake.py b/python/mozbuild/mozbuild/backend/recursivemake.py
+--- a/python/mozbuild/mozbuild/backend/recursivemake.py
++++ b/python/mozbuild/mozbuild/backend/recursivemake.py
+@@ -513,18 +513,16 @@ class RecursiveMakeBackend(CommonBackend
+         elif isinstance(obj, HostDefines):
+             self._process_defines(obj, backend_file, which='HOST_DEFINES')
+         elif isinstance(obj, Defines):
+             self._process_defines(obj, backend_file)
+ 
+         elif isinstance(obj, GeneratedFile):
+             if obj.required_for_compile:
+                 tier = 'export'
+-            elif obj.localized:
+-                tier = 'libs'
+             else:
+                 tier = 'misc'
+             self._no_skip[tier].add(backend_file.relobjdir)
+ 
+             # Localized generated files can use {AB_CD} and {AB_rCD} in their
+             # output paths.
+             if obj.localized:
+                 substs = {'AB_CD': '$(AB_CD)', 'AB_rCD': '$(AB_rCD)'}
+@@ -609,17 +607,17 @@ class RecursiveMakeBackend(CommonBackend
+            # with a different locale as input. IS_LANGUAGE_REPACK will reliably be set
+            # in this situation, so simply force the generation to run in that case.
+            force=force,
+            locale='--locale=$(AB_CD) ' if obj.localized else '',
+            script=obj.script,
+            method=obj.method))
+ 
+         elif isinstance(obj, JARManifest):
+-            self._no_skip['libs'].add(backend_file.relobjdir)
++            self._no_skip['misc'].add(backend_file.relobjdir)
+             backend_file.write('JAR_MANIFEST := %s\n' % obj.path.full_path)
+ 
+         elif isinstance(obj, RustProgram):
+             self._process_rust_program(obj, backend_file)
+             # Hook the program into the compile graph.
+             build_target = self._build_target_for_obj(obj)
+             self._compile_graph[build_target]
+ 
+@@ -1487,16 +1485,19 @@ class RecursiveMakeBackend(CommonBackend
+                     else:
+                         install_manifest.add_link(f.full_path, dest)
+                 else:
+                     install_manifest.add_optional_exists(dest)
+                     objdir_files.append(self._pretty_path(f, backend_file))
+             install_location = '$(DEPTH)/%s' % mozpath.join(target, path)
+             if objdir_files:
+                 tier = 'export' if obj.install_target == 'dist/include' else 'misc'
++                # We cannot generate multilocale.txt during misc at the moment.
++                if objdir_files[0] == 'multilocale.txt':
++                    tier = 'libs'
+                 self._add_install_target(backend_file, target_var, tier,
+                                          install_location, objdir_files)
+             if absolute_files:
+                 # Unfortunately, we can't use _add_install_target because on
+                 # Windows, the absolute file paths that we want to install
+                 # from often have spaces.  So we write our own rule.
+                 self._no_skip['misc'].add(backend_file.relobjdir)
+                 backend_file.write('misc::\n%s\n' %
+@@ -1545,37 +1546,37 @@ class RecursiveMakeBackend(CommonBackend
+ 
+     def _process_localized_files(self, obj, files, backend_file):
+         target = obj.install_target
+         path = mozpath.basedir(target, ('dist/bin', ))
+         if not path:
+             raise Exception('Cannot install localized files to ' + target)
+         for i, (path, files) in enumerate(files.walk()):
+             name = 'LOCALIZED_FILES_%d' % i
+-            self._no_skip['libs'].add(backend_file.relobjdir)
++            self._no_skip['misc'].add(backend_file.relobjdir)
+             self._write_localized_files_files(files, name + '_FILES', backend_file)
+             # Use FINAL_TARGET here because some l10n repack rules set
+             # XPI_NAME to generate langpacks.
+             backend_file.write('%s_DEST = $(FINAL_TARGET)/%s\n' % (name, path))
+-            backend_file.write('%s_TARGET := libs\n' % name)
++            backend_file.write('%s_TARGET := misc\n' % name)
+             backend_file.write('INSTALL_TARGETS += %s\n' % name)
+ 
+     def _process_localized_pp_files(self, obj, files, backend_file):
+         target = obj.install_target
+         path = mozpath.basedir(target, ('dist/bin', ))
+         if not path:
+             raise Exception('Cannot install localized files to ' + target)
+         for i, (path, files) in enumerate(files.walk()):
+             name = 'LOCALIZED_PP_FILES_%d' % i
+-            self._no_skip['libs'].add(backend_file.relobjdir)
++            self._no_skip['misc'].add(backend_file.relobjdir)
+             self._write_localized_files_files(files, name, backend_file)
+             # Use FINAL_TARGET here because some l10n repack rules set
+             # XPI_NAME to generate langpacks.
+             backend_file.write('%s_PATH = $(FINAL_TARGET)/%s\n' % (name, path))
+-            backend_file.write('%s_TARGET := libs\n' % name)
++            backend_file.write('%s_TARGET := misc\n' % name)
+             # Localized files will have different content in different
+             # localizations, and some preprocessed files may not have
+             # any preprocessor directives.
+             backend_file.write('%s_FLAGS := --silence-missing-directive-warnings\n' % name)
+             backend_file.write('PP_TARGETS += %s\n' % name)
+ 
+     def _process_objdir_files(self, obj, files, backend_file):
+         # We can't use an install manifest for the root of the objdir, since it
+diff --git a/python/mozbuild/mozbuild/test/backend/test_recursivemake.py b/python/mozbuild/mozbuild/test/backend/test_recursivemake.py
+--- a/python/mozbuild/mozbuild/test/backend/test_recursivemake.py
++++ b/python/mozbuild/mozbuild/test/backend/test_recursivemake.py
+@@ -457,54 +457,54 @@ class TestRecursiveMakeBackend(BackendTe
+     def test_localized_generated_files(self):
+         """Ensure LOCALIZED_GENERATED_FILES is handled properly."""
+         env = self._consume('localized-generated-files', RecursiveMakeBackend)
+ 
+         backend_path = mozpath.join(env.topobjdir, 'backend.mk')
+         lines = [l.strip() for l in open(backend_path, 'rt').readlines()[2:]]
+ 
+         expected = [
+-            'libs:: $(MDDEPDIR)/foo.xyz.stub',
++            'misc:: $(MDDEPDIR)/foo.xyz.stub',
+             'foo.xyz: $(MDDEPDIR)/foo.xyz.stub ;',
+             'GARBAGE += foo.xyz',
+             'GARBAGE += $(MDDEPDIR)/foo.xyz.stub',
+             'EXTRA_MDDEPEND_FILES += foo.xyz.pp',
+             '$(MDDEPDIR)/foo.xyz.stub: %s/generate-foo.py $(call MERGE_FILE,localized-input) $(srcdir)/non-localized-input $(if $(IS_LANGUAGE_REPACK),FORCE)' % env.topsrcdir,
+             '$(REPORT_BUILD)',
+             '$(call py_action,file_generate,--locale=$(AB_CD) %s/generate-foo.py main foo.xyz $(MDDEPDIR)/foo.xyz.pp $(MDDEPDIR)/foo.xyz.stub $(call MERGE_FILE,localized-input) $(srcdir)/non-localized-input)' % env.topsrcdir,
+             '@$(TOUCH) $@',
+             '',
+             'LOCALIZED_FILES_0_FILES += foo.xyz',
+             'LOCALIZED_FILES_0_DEST = $(FINAL_TARGET)/',
+-            'LOCALIZED_FILES_0_TARGET := libs',
++            'LOCALIZED_FILES_0_TARGET := misc',
+             'INSTALL_TARGETS += LOCALIZED_FILES_0',
+         ]
+ 
+         self.maxDiff = None
+         self.assertEqual(lines, expected)
+ 
+     def test_localized_generated_files_force(self):
+         """Ensure LOCALIZED_GENERATED_FILES with .force is handled properly."""
+         env = self._consume('localized-generated-files-force', RecursiveMakeBackend)
+ 
+         backend_path = mozpath.join(env.topobjdir, 'backend.mk')
+         lines = [l.strip() for l in open(backend_path, 'rt').readlines()[2:]]
+ 
+         expected = [
+-            'libs:: $(MDDEPDIR)/foo.xyz.stub',
++            'misc:: $(MDDEPDIR)/foo.xyz.stub',
+             'foo.xyz: $(MDDEPDIR)/foo.xyz.stub ;',
+             'GARBAGE += foo.xyz',
+             'GARBAGE += $(MDDEPDIR)/foo.xyz.stub',
+             'EXTRA_MDDEPEND_FILES += foo.xyz.pp',
+             '$(MDDEPDIR)/foo.xyz.stub: %s/generate-foo.py $(call MERGE_FILE,localized-input) $(srcdir)/non-localized-input $(if $(IS_LANGUAGE_REPACK),FORCE)' % env.topsrcdir,
+             '$(REPORT_BUILD)',
+             '$(call py_action,file_generate,--locale=$(AB_CD) %s/generate-foo.py main foo.xyz $(MDDEPDIR)/foo.xyz.pp $(MDDEPDIR)/foo.xyz.stub $(call MERGE_FILE,localized-input) $(srcdir)/non-localized-input)' % env.topsrcdir,
+             '@$(TOUCH) $@',
+             '',
+-            'libs:: $(MDDEPDIR)/abc.xyz.stub',
++            'misc:: $(MDDEPDIR)/abc.xyz.stub',
+             'abc.xyz: $(MDDEPDIR)/abc.xyz.stub ;',
+             'GARBAGE += abc.xyz',
+             'GARBAGE += $(MDDEPDIR)/abc.xyz.stub',
+             'EXTRA_MDDEPEND_FILES += abc.xyz.pp',
+             '$(MDDEPDIR)/abc.xyz.stub: %s/generate-foo.py $(call MERGE_FILE,localized-input) $(srcdir)/non-localized-input FORCE' % env.topsrcdir,
+             '$(REPORT_BUILD)',
+             '$(call py_action,file_generate,--locale=$(AB_CD) %s/generate-foo.py main abc.xyz $(MDDEPDIR)/abc.xyz.pp $(MDDEPDIR)/abc.xyz.stub $(call MERGE_FILE,localized-input) $(srcdir)/non-localized-input)' % env.topsrcdir,
+             '@$(TOUCH) $@',
+@@ -518,17 +518,17 @@ class TestRecursiveMakeBackend(BackendTe
+         """Ensure LOCALIZED_GENERATED_FILES is handled properly
+         when {AB_CD} and {AB_rCD} are used."""
+         env = self._consume('localized-generated-files-AB_CD', RecursiveMakeBackend)
+ 
+         backend_path = mozpath.join(env.topobjdir, 'backend.mk')
+         lines = [l.strip() for l in open(backend_path, 'rt').readlines()[2:]]
+ 
+         expected = [
+-            'libs:: $(MDDEPDIR)/foo$(AB_CD).xyz.stub',
++            'misc:: $(MDDEPDIR)/foo$(AB_CD).xyz.stub',
+             'foo$(AB_CD).xyz: $(MDDEPDIR)/foo$(AB_CD).xyz.stub ;',
+             'GARBAGE += foo$(AB_CD).xyz',
+             'GARBAGE += $(MDDEPDIR)/foo$(AB_CD).xyz.stub',
+             'EXTRA_MDDEPEND_FILES += foo$(AB_CD).xyz.pp',
+             '$(MDDEPDIR)/foo$(AB_CD).xyz.stub: %s/generate-foo.py $(call MERGE_FILE,localized-input) $(srcdir)/non-localized-input $(if $(IS_LANGUAGE_REPACK),FORCE)' % env.topsrcdir,
+             '$(REPORT_BUILD)',
+             '$(call py_action,file_generate,--locale=$(AB_CD) %s/generate-foo.py main foo$(AB_CD).xyz $(MDDEPDIR)/foo$(AB_CD).xyz.pp $(MDDEPDIR)/foo$(AB_CD).xyz.stub $(call MERGE_FILE,localized-input) $(srcdir)/non-localized-input)' % env.topsrcdir,
+             '@$(TOUCH) $@',
+@@ -972,17 +972,17 @@ class TestRecursiveMakeBackend(BackendTe
+         backend_path = mozpath.join(env.topobjdir, 'backend.mk')
+         lines = [l.strip() for l in open(backend_path, 'rt').readlines()[2:]]
+ 
+         expected = [
+             'LOCALIZED_FILES_0_FILES += $(wildcard $(LOCALE_SRCDIR)/abc/*.abc)',
+             'LOCALIZED_FILES_0_FILES += $(call MERGE_FILE,bar.ini)',
+             'LOCALIZED_FILES_0_FILES += $(call MERGE_FILE,foo.js)',
+             'LOCALIZED_FILES_0_DEST = $(FINAL_TARGET)/',
+-            'LOCALIZED_FILES_0_TARGET := libs',
++            'LOCALIZED_FILES_0_TARGET := misc',
+             'INSTALL_TARGETS += LOCALIZED_FILES_0',
+         ]
+ 
+         found = [str for str in lines if 'LOCALIZED_FILES' in str]
+         self.assertEqual(found, expected)
+ 
+     def test_localized_pp_files(self):
+         """Test that LOCALIZED_PP_FILES is written to backend.mk correctly."""
+@@ -990,17 +990,17 @@ class TestRecursiveMakeBackend(BackendTe
+ 
+         backend_path = mozpath.join(env.topobjdir, 'backend.mk')
+         lines = [l.strip() for l in open(backend_path, 'rt').readlines()[2:]]
+ 
+         expected = [
+             'LOCALIZED_PP_FILES_0 += $(call MERGE_FILE,bar.ini)',
+             'LOCALIZED_PP_FILES_0 += $(call MERGE_FILE,foo.js)',
+             'LOCALIZED_PP_FILES_0_PATH = $(FINAL_TARGET)/',
+-            'LOCALIZED_PP_FILES_0_TARGET := libs',
++            'LOCALIZED_PP_FILES_0_TARGET := misc',
+             'LOCALIZED_PP_FILES_0_FLAGS := --silence-missing-directive-warnings',
+             'PP_TARGETS += LOCALIZED_PP_FILES_0',
+         ]
+ 
+         found = [str for str in lines if 'LOCALIZED_PP_FILES' in str]
+         self.assertEqual(found, expected)
+ 
+     def test_config(self):
+diff --git a/toolkit/locales/Makefile.in b/toolkit/locales/Makefile.in
+--- a/toolkit/locales/Makefile.in
++++ b/toolkit/locales/Makefile.in
+@@ -1,21 +1,21 @@
+ # 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/.
+ 
+ include $(topsrcdir)/config/rules.mk
+ 
+-libs-%: AB_CD=$*
+-libs-%:
+-	@$(MAKE) -C ../../netwerk/locales/ libs AB_CD=$* XPI_NAME=locale-$*
+-	@$(MAKE) -C ../../dom/locales/ libs AB_CD=$* XPI_NAME=locale-$*
+-	@$(MAKE) -C ../../security/manager/locales/ libs AB_CD=$* XPI_NAME=locale-$*
+-	@$(MAKE) -C ../../devtools/shared/locales/ libs AB_CD=$* XPI_NAME=locale-$*
+-	@$(MAKE) libs AB_CD=$* XPI_NAME=locale-$*
++l10n-%: AB_CD=$*
++l10n-%:
++	@$(MAKE) -C ../../netwerk/locales/ l10n AB_CD=$* XPI_NAME=locale-$*
++	@$(MAKE) -C ../../dom/locales/ l10n AB_CD=$* XPI_NAME=locale-$*
++	@$(MAKE) -C ../../security/manager/locales/ l10n AB_CD=$* XPI_NAME=locale-$*
++	@$(MAKE) -C ../../devtools/shared/locales/ l10n AB_CD=$* XPI_NAME=locale-$*
++	@$(MAKE) l10n AB_CD=$* XPI_NAME=locale-$*
+ 
+ # target to be used by multi-locale l10n builds, just add this locale
+ # like regular chrome code
+ chrome-%: AB_CD=$*
+ chrome-%:
+ 	@$(MAKE) -C $(DEPTH)/netwerk/locales/ chrome AB_CD=$*
+ 	@$(MAKE) -C $(DEPTH)/dom/locales/ chrome AB_CD=$*
+ 	@$(MAKE) -C $(DEPTH)/security/manager/locales/ chrome AB_CD=$*
+diff --git a/toolkit/locales/l10n.mk b/toolkit/locales/l10n.mk
+--- a/toolkit/locales/l10n.mk
++++ b/toolkit/locales/l10n.mk
+@@ -3,18 +3,18 @@
+ # 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/.
+ 
+ 
+ # Shared makefile that can be used to easily kick off l10n builds
+ # of Mozilla applications.
+ # This makefile should be included, and then assumes that the including
+ # makefile defines the following targets:
+-# libs-%
+-#   This target should call into the various libs targets that this
++# l10n-%
++#   This target should call into the various l10n targets that this
+ #   application depends on.
+ # installer-%
+ #   This target should list all required targets, a typical rule would be
+ #	installers-%: clobber-% langpack-% repackage-zip-%
+ #		@echo "repackaging done"
+ #   to initially clobber the locale staging area, and then to build the
+ #   language pack and zip package.
+ #   Other targets like windows installers might be listed, too, and should
+@@ -22,17 +22,17 @@
+ #   The installer-% targets should not set AB_CD, so that the unpackaging
+ #   step finds the original package.
+ # The including makefile should provide values for the variables
+ #   MOZ_APP_VERSION and MOZ_LANGPACK_EID.
+ 
+ 
+ run_for_effects := $(shell if test ! -d $(DIST); then $(NSINSTALL) -D $(DIST); fi)
+ 
+-# This makefile uses variable overrides from the libs-% target to
++# This makefile uses variable overrides from the l10n-% target to
+ # build non-default locales to non-default dist/ locations. Be aware!
+ 
+ LPROJ_ROOT = $(firstword $(subst -, ,$(AB_CD)))
+ ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT))
+ ifeq (zh-TW,$(AB_CD))
+ LPROJ_ROOT := $(subst -,_,$(AB_CD))
+ endif
+ endif
+@@ -199,17 +199,17 @@ endif
+ 	$(RM) -rf $(REAL_LOCALE_MERGEDIR)
+ 	-$(MOZILLA_DIR)/mach compare-locales $(COMPARE_LOCALES_DEFINES) --merge $(BASE_MERGE) $(srcdir)/l10n.toml $(L10NBASEDIR) $*
+ 
+ langpack-%: IS_LANGUAGE_REPACK=1
+ langpack-%: IS_LANGPACK=1
+ langpack-%: AB_CD=$*
+ langpack-%:
+ 	@echo 'Making langpack $(LANGPACK_FILE)'
+-	@$(MAKE) libs-$(AB_CD)
++	@$(MAKE) l10n-$(AB_CD)
+ 	@$(MAKE) package-langpack-$(AB_CD)
+ 
+ # language pack checking is done against the toolkit version.
+ ifeq (,$(MOZ_SUITE))
+ MOZ_MIN_APP_VERSION = $(MOZ_APP_VERSION)
+ MOZ_MAX_APP_VERSION = $(MOZ_APP_MAXVERSION)
+ else
+ MOZ_MIN_APP_VERSION = $(MOZILLA_VERSION)

+ 1 - 0
bug1240930/mozilla/moz_ser

@@ -0,0 +1 @@
+1240930-80a1.patch