author | Tom Prince <mozilla@hocat.ca> |
Mon, 16 Apr 2018 12:49:53 -0600 | |
changeset 414168 | fba7cab660dac38de20a366cd3347499836dda4f |
parent 414167 | 22cce00037f9ca246cff5c06dd607da97cf6a748 |
child 414169 | 66a52ced217dda7eed86130861f8c41e2adbeb4e |
push id | 33861 |
push user | ccoroiu@mozilla.com |
push date | Wed, 18 Apr 2018 10:50:38 +0000 |
treeherder | mozilla-central@4af4ae0aee55 [default view] [failures only] |
perfherder | [talos] [build metrics] [platform microbench] (compared to previous push) |
reviewers | pike, mshal |
bugs | 1436662, 1385227 |
milestone | 61.0a1 |
first release with | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
last release without | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
--- a/browser/build.mk +++ b/browser/build.mk @@ -1,15 +1,12 @@ # 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/. -installer: - @$(MAKE) -C browser/installer installer - package: @$(MAKE) -C browser/installer package-compare: @$(MAKE) -C browser/installer package-compare stage-package: @$(MAKE) -C browser/installer stage-package
--- a/browser/installer/Makefile.in +++ b/browser/installer/Makefile.in @@ -168,16 +168,11 @@ FINDPATH=bin endif package-compare:: cd $(DIST); find $(PKGCOMP_FIND_OPTS) '$(FINDPATH)' -type f | sort > bin-list.txt $(call py_action,preprocessor,$(DEFINES) $(ACDEFINES) $(MOZ_PKG_MANIFEST)) | grep '^$(BINPATH)' | sed -e 's/^\///' | sort > $(DIST)/pack-list.txt -diff -u $(DIST)/pack-list.txt $(DIST)/bin-list.txt rm -f $(DIST)/pack-list.txt $(DIST)/bin-list.txt -installer:: -ifdef INSTALLER_DIR - $(MAKE) -C $(INSTALLER_DIR) -endif - ifdef ENABLE_MARIONETTE DEFINES += -DENABLE_MARIONETTE=1 endif
--- a/browser/installer/windows/Makefile.in +++ b/browser/installer/windows/Makefile.in @@ -39,34 +39,16 @@ PPL_LOCALE_ARGS = \ --l10n-dir=$(REAL_LOCALE_MERGEDIR)/browser/installer \ --l10n-dir=$(call EXPAND_LOCALE_SRCDIR,browser/locales)/installer \ --l10n-dir=$(topsrcdir)/browser/locales/en-US/installer \ $(NULL) else PPL_LOCALE_ARGS=$(call EXPAND_LOCALE_SRCDIR,browser/locales)/installer endif -OVERRIDE_DEFAULT_GOAL := installer -installer:: - $(MAKE) -C .. installer-stage - $(MAKE) $(CONFIG_DIR)/setup.exe - -# For building the uninstaller during the application build so it can be -# included for mar file generation. -uninstaller:: - $(RM) -r $(CONFIG_DIR) - $(MKDIR) $(CONFIG_DIR) - $(INSTALL) $(addprefix $(srcdir)/,$(INSTALLER_FILES)) $(CONFIG_DIR) - $(INSTALL) $(addprefix $(topsrcdir)/$(MOZ_BRANDING_DIRECTORY)/,$(BRANDING_FILES)) $(CONFIG_DIR) - $(call py_action,preprocessor,-Fsubstitution $(DEFINES) $(ACDEFINES) \ - $(srcdir)/nsis/defines.nsi.in -o $(CONFIG_DIR)/defines.nsi) - $(PYTHON) $(topsrcdir)/toolkit/mozapps/installer/windows/nsis/preprocess-locale.py \ - --preprocess-locale $(topsrcdir) \ - $(PPL_LOCALE_ARGS) $(AB_CD) $(CONFIG_DIR) - # For building the maintenanceservice installer ifdef MOZ_MAINTENANCE_SERVICE maintenanceservice_installer:: $(INSTALL) $(addprefix $(srcdir)/,$(INSTALLER_FILES)) $(CONFIG_DIR) $(call py_action,preprocessor,-Fsubstitution $(DEFINES) $(ACDEFINES) \ $(srcdir)/nsis/defines.nsi.in -o $(CONFIG_DIR)/defines.nsi) $(PYTHON) $(topsrcdir)/toolkit/mozapps/installer/windows/nsis/preprocess-locale.py \ --preprocess-locale $(topsrcdir) \
--- a/browser/locales/Makefile.in +++ b/browser/locales/Makefile.in @@ -29,17 +29,16 @@ endif ifneq (,$(filter cocoa,$(MOZ_WIDGET_TOOLKIT))) MOZ_PKG_MAC_DSSTORE=$(ABS_DIST)/branding/dsstore MOZ_PKG_MAC_BACKGROUND=$(ABS_DIST)/branding/background.png MOZ_PKG_MAC_ICON=$(ABS_DIST)/branding/disk.icns MOZ_PKG_MAC_EXTRA=--symlink '/Applications:/ ' endif MOZ_SFX_PACKAGE=$(topsrcdir)/other-licenses/7zstub/firefox/7zSD.sfx -MOZ_INSTALLER_PATH=$(topsrcdir)/browser/installer/windows SEARCHPLUGINS_FILENAMES := $(or $(shell $(call py_action,output_searchplugins_list,$(srcdir)/search/list.json $(AB_CD))), $(error Missing search plugins)) SEARCHPLUGINS_PATH := .deps/generated_$(AB_CD) SEARCHPLUGINS_TARGET := libs searchplugins SEARCHPLUGINS := $(foreach plugin,$(addsuffix .xml,$(SEARCHPLUGINS_FILENAMES)),$(or $(wildcard $(srcdir)/searchplugins/$(plugin)),$(error Missing searchplugin: $(plugin)))) # Some locale-specific search plugins may have preprocessor directives, but the # default en-US ones do not. SEARCHPLUGINS_FLAGS := --silence-missing-directive-warnings @@ -102,51 +101,33 @@ ifndef RELEASE_OR_BETA @$(MAKE) -C ../extensions/presentation/locale chrome AB_CD=$* endif @$(MAKE) -C ../../devtools/client/locales chrome AB_CD=$* @$(MAKE) -C ../../devtools/startup/locales chrome AB_CD=$* @$(MAKE) chrome AB_CD=$* @$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales chrome AB_CD=$* @$(MAKE) -C ../extensions/webcompat-reporter/locales chrome AB_CD=$* -package-win32-installer: WIN32_INSTALLER_OUT=$(ABS_DIST)/$(PKG_INST_PATH)$(PKG_INST_BASENAME).exe package-win32-installer: $(SUBMAKEFILES) - @echo 'Packaging $(WIN32_INSTALLER_OUT).' - $(MAKE) -C ../installer/windows CONFIG_DIR=l10ngen l10ngen/setup.exe l10ngen/7zSD.sfx - $(RM) -r $(STAGEDIST)/uninstall - $(NSINSTALL) -D $(STAGEDIST)/uninstall - cp ../installer/windows/l10ngen/helper.exe $(STAGEDIST)/uninstall - $(RM) $(ABS_DIST)/l10n-stage/setup.exe - cp ../installer/windows/l10ngen/setup.exe $(ABS_DIST)/l10n-stage - $(NSINSTALL) -D '$(ABS_DIST)/$(PKG_INST_PATH)' - (cd $(DIST)/l10n-stage; \ - $(MAKE_PACKAGE)) - mv -f '$(DIST)/l10n-stage/$(PACKAGE)' '$(WIN32_INSTALLER_OUT)' - if test -f '$(DIST)/l10n-stage/$(PACKAGE).asc'; then mv -f '$(DIST)/l10n-stage/$(PACKAGE).asc' '$(WIN32_INSTALLER_OUT).asc'; fi -ifdef MOZ_STUB_INSTALLER - $(RM) '$(ABS_DIST)/$(PKG_INST_PATH)$(PKG_STUB_BASENAME).exe' - cp ../installer/windows/l10ngen/stub.exe '$(ABS_DIST)/$(PKG_INST_PATH)$(PKG_STUB_BASENAME).exe' - chmod 0755 '$(ABS_DIST)/$(PKG_INST_PATH)$(PKG_STUB_BASENAME).exe' -endif - + $(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) package-langpack-$* @$(MAKE) repackage-zip-$* ifeq (WINNT,$(OS_ARCH)) - @$(MAKE) package-win32-installer AB_CD=$* MOZ_PKG_FORMAT=SFX7Z + @$(MAKE) package-win32-installer AB_CD=$* endif @echo 'repackaging done' ident: @printf 'fx_revision ' @$(PYTHON) $(topsrcdir)/config/printconfigsetting.py \ '$(STAGEDIST)'/application.ini App SourceStamp @printf 'buildid '
--- a/config/config.mk +++ b/config/config.mk @@ -408,18 +408,16 @@ endif # ! WINNT # Make sure any compiled classes work with at least JVM 1.4 JAVAC_FLAGS += -source 1.4 ifdef MOZ_DEBUG JAVAC_FLAGS += -g endif -CREATE_PRECOMPLETE_CMD = $(PYTHON) $(abspath $(MOZILLA_DIR)/config/createprecomplete.py) - # MDDEPDIR is the subdirectory where dependency files are stored MDDEPDIR := .deps # $(call CHECK_SYMBOLS,lib,PREFIX,dep_name,test) # Checks that the given `lib` doesn't contain dependency on symbols with a # version starting with `PREFIX`_ and matching the `test`. `dep_name` is only # used for the error message. # `test` is an awk expression using the information in the variable `v` which
--- a/toolkit/locales/l10n.mk +++ b/toolkit/locales/l10n.mk @@ -125,16 +125,20 @@ ifdef MOZ_CRASHREPORTER # On Mac OS X, the crashreporter.ini file needs to be moved from under the # application bundle's Resources directory where all other l10n files are # located to the crash reporter bundle's Resources directory. mv '$(STAGEDIST)'/crashreporter.app/Contents/Resources/crashreporter.ini \ '$(STAGEDIST)'/../MacOS/crashreporter.app/Contents/Resources/crashreporter.ini $(RM) -rf '$(STAGEDIST)'/crashreporter.app endif endif +ifeq (WINNT,$(OS_ARCH)) + $(MAKE) -C ../installer/windows CONFIG_DIR=l10ngen l10ngen/helper.exe + cp ../installer/windows/l10ngen/helper.exe $(STAGEDIST)/uninstall +endif $(NSINSTALL) -D $(DIST)/l10n-stage/$(PKG_PATH) (cd $(DIST)/l10n-stage; \ $(MAKE_PACKAGE)) ifdef MOZ_MAKE_COMPLETE_MAR $(MAKE) -C $(MOZDEPTH)/tools/update-packaging full-update AB_CD=$(AB_CD) \ PACKAGE_BASE_DIR='$(ABS_DIST)/l10n-stage' endif
--- a/toolkit/mozapps/installer/packager.mk +++ b/toolkit/mozapps/installer/packager.mk @@ -8,30 +8,16 @@ include $(MOZILLA_DIR)/toolkit/mozapps/i # This is how we create the binary packages we release to the public. # browser/locales/Makefile uses this makefile for its variable defs, but # doesn't want the libs:: rule. ifndef PACKAGER_NO_LIBS libs:: make-package endif -installer-stage: prepare-package -ifndef MOZ_PKG_MANIFEST - $(error MOZ_PKG_MANIFEST unspecified!) -endif - @rm -rf $(DEPTH)/installer-stage $(DIST)/xpt - @echo 'Staging installer files...' - @$(NSINSTALL) -D $(DEPTH)/installer-stage/core - @cp -av $(DIST)/$(MOZ_PKG_DIR)$(_BINPATH)/. $(DEPTH)/installer-stage/core - @(cd $(DEPTH)/installer-stage/core && $(CREATE_PRECOMPLETE_CMD)) -ifdef MOZ_SIGN_PREPARED_PACKAGE_CMD -# The && true is necessary to make sure Pymake spins a shell - $(MOZ_SIGN_PREPARED_PACKAGE_CMD) $(DEPTH)/installer-stage && true -endif - export USE_ELF_HACK ELF_HACK_FLAGS # Override the value of OMNIJAR_NAME from config.status with the value # set earlier in this file. stage-package: multilocale.txt locale-manifest.in $(MOZ_PKG_MANIFEST) $(MOZ_PKG_MANIFEST_DEPS) OMNIJAR_NAME=$(OMNIJAR_NAME) \ NO_PKG_FILES="$(NO_PKG_FILES)" \ @@ -100,16 +86,21 @@ endif # MOZ_ARTIFACT_BUILDS prepare-package: stage-package make-package-internal: prepare-package make-sourcestamp-file make-buildinfo-file make-mozinfo-file @echo 'Compressing...' cd $(DIST) && $(MAKE_PACKAGE) make-package: FORCE $(MAKE) make-package-internal +ifeq (WINNT,$(OS_ARCH)) +ifeq ($(MOZ_PKG_FORMAT),ZIP) + $(MAKE) -C windows ZIP_IN='$(ABS_DIST)/$(PACKAGE)' installer +endif +endif $(TOUCH) $@ GARBAGE += make-package make-sourcestamp-file:: $(NSINSTALL) -D $(DIST)/$(PKG_PATH) @echo '$(BUILDID)' > $(MOZ_SOURCESTAMP_FILE) ifdef MOZ_INCLUDE_SOURCE_INFO
--- a/toolkit/mozapps/installer/windows/nsis/makensis.mk +++ b/toolkit/mozapps/installer/windows/nsis/makensis.mk @@ -43,58 +43,64 @@ CUSTOM_UI = \ $(CONFIG_DIR)/setup.exe:: $(INSTALL) $(addprefix $(MOZILLA_DIR)/toolkit/mozapps/installer/windows/nsis/,$(TOOLKIT_NSIS_FILES)) $(CONFIG_DIR) $(INSTALL) $(addprefix $(MOZILLA_DIR)/other-licenses/nsis/Plugins/,$(CUSTOM_NSIS_PLUGINS)) $(CONFIG_DIR) $(INSTALL) $(addprefix $(MOZILLA_DIR)/other-licenses/nsis/,$(CUSTOM_UI)) $(CONFIG_DIR) cd $(CONFIG_DIR) && $(MAKENSISU) $(MAKENSISU_FLAGS) installer.nsi ifdef MOZ_STUB_INSTALLER cd $(CONFIG_DIR) && $(MAKENSISU) $(MAKENSISU_FLAGS) stub.nsi -ifdef MOZ_EXTERNAL_SIGNING_FORMAT - $(MOZ_SIGN_CMD) $(foreach f,$(MOZ_EXTERNAL_SIGNING_FORMAT),-f $(f)) $(CONFIG_DIR)/setup-stub.exe -endif - $(MAKE) $(CONFIG_DIR)/7zSD.sfx - cd $(CONFIG_DIR) && $(CYGWIN_WRAPPER) $(7Z) a -t7z $(ABS_CONFIG_DIR)/stub.7z setup-stub.exe -mx -m0=BCJ2 -m1=LZMA:d21 -m2=LZMA:d17 -m3=LZMA:d17 -mb0:1 -mb0s1:2 -mb0s2:3 - cat $(CONFIG_DIR)/7zSD.sfx $(CONFIG_DIR)/stub.tag $(CONFIG_DIR)/stub.7z > "$(CONFIG_DIR)/stub.exe" -ifdef MOZ_EXTERNAL_SIGNING_FORMAT_STUB - $(MOZ_SIGN_CMD) $(foreach f,$(MOZ_EXTERNAL_SIGNING_FORMAT_STUB),-f $(f)) $(CONFIG_DIR)/stub.exe -endif -endif -# Support for building the uninstaller when repackaging locales -ifeq ($(CONFIG_DIR),l10ngen) - cd $(CONFIG_DIR) && $(MAKENSISU) $(MAKENSISU_FLAGS) uninstaller.nsi endif ifdef MOZ_EXTERNAL_SIGNING_FORMAT $(MOZ_SIGN_CMD) $(foreach f,$(MOZ_EXTERNAL_SIGNING_FORMAT),-f $(f)) "$@" endif -$(CONFIG_DIR)/7zSD.sfx: - $(CYGWIN_WRAPPER) upx --best -o $(CONFIG_DIR)/7zSD.sfx $(SFX_MODULE) - -installer:: - $(INSTALL) $(CONFIG_DIR)/setup.exe $(DEPTH)/installer-stage - cd $(DEPTH)/installer-stage && $(CYGWIN_WRAPPER) $(7Z) a -r -t7z $(ABS_CONFIG_DIR)/app.7z -mx -m0=BCJ2 -m1=LZMA:d25 -m2=LZMA:d19 -m3=LZMA:d19 -mb0:1 -mb0s1:2 -mb0s2:3 - $(MAKE) $(CONFIG_DIR)/7zSD.sfx - $(NSINSTALL) -D $(DIST)/$(PKG_INST_PATH) - cat $(CONFIG_DIR)/7zSD.sfx $(CONFIG_DIR)/app.tag $(CONFIG_DIR)/app.7z > "$(DIST)/$(PKG_INST_PATH)$(PKG_INST_BASENAME).exe" - chmod 0755 "$(DIST)/$(PKG_INST_PATH)$(PKG_INST_BASENAME).exe" -ifdef MOZ_STUB_INSTALLER - cp $(CONFIG_DIR)/stub.exe "$(DIST)/$(PKG_INST_PATH)$(PKG_STUB_BASENAME).exe" - chmod 0755 "$(DIST)/$(PKG_INST_PATH)$(PKG_STUB_BASENAME).exe" -endif +ifdef ZIP_IN +installer:: $(CONFIG_DIR)/setup.exe $(ZIP_IN) + @echo 'Packaging $(WIN32_INSTALLER_OUT).' + $(NSINSTALL) -D '$(ABS_DIST)/$(PKG_INST_PATH)' + $(MOZILLA_DIR)/mach repackage installer \ + -o '$(ABS_DIST)/$(PKG_INST_PATH)$(PKG_INST_BASENAME).exe' \ + --package-name firefox \ + --package '$(ZIP_IN)' \ + --tag $(topsrcdir)/browser/installer/windows/app.tag \ + --setupexe $(CONFIG_DIR)/setup.exe \ + --sfx-stub $(SFX_MODULE) ifdef MOZ_EXTERNAL_SIGNING_FORMAT $(MOZ_SIGN_CMD) $(foreach f,$(MOZ_EXTERNAL_SIGNING_FORMAT),-f $(f)) "$(DIST)/$(PKG_INST_PATH)$(PKG_INST_BASENAME).exe" endif +ifdef MOZ_STUB_INSTALLER + $(MOZILLA_DIR)/mach repackage installer \ + -o '$(ABS_DIST)/$(PKG_INST_PATH)$(PKG_STUB_BASENAME).exe' \ + --tag $(topsrcdir)/browser/installer/windows/stub.tag \ + --setupexe $(CONFIG_DIR)/setup-stub.exe \ + --sfx-stub $(SFX_MODULE) +endif +else +installer:: + $(error ZIP_IN must be set when building installer) +endif # For building the uninstaller during the application build so it can be # included for mar file generation. -uninstaller:: +$(CONFIG_DIR)/helper.exe: + $(RM) -r $(CONFIG_DIR) + $(MKDIR) $(CONFIG_DIR) + $(INSTALL) $(addprefix $(srcdir)/,$(INSTALLER_FILES)) $(CONFIG_DIR) + $(INSTALL) $(addprefix $(topsrcdir)/$(MOZ_BRANDING_DIRECTORY)/,$(BRANDING_FILES)) $(CONFIG_DIR) + $(call py_action,preprocessor,-Fsubstitution $(DEFINES) $(ACDEFINES) \ + $(srcdir)/nsis/defines.nsi.in -o $(CONFIG_DIR)/defines.nsi) + $(PYTHON) $(topsrcdir)/toolkit/mozapps/installer/windows/nsis/preprocess-locale.py \ + --preprocess-locale $(topsrcdir) \ + $(PPL_LOCALE_ARGS) $(AB_CD) $(CONFIG_DIR) $(INSTALL) $(addprefix $(MOZILLA_DIR)/toolkit/mozapps/installer/windows/nsis/,$(TOOLKIT_NSIS_FILES)) $(CONFIG_DIR) $(INSTALL) $(addprefix $(MOZILLA_DIR)/other-licenses/nsis/Plugins/,$(CUSTOM_NSIS_PLUGINS)) $(CONFIG_DIR) cd $(CONFIG_DIR) && $(MAKENSISU) $(MAKENSISU_FLAGS) uninstaller.nsi + +uninstaller:: $(CONFIG_DIR)/helper.exe $(NSINSTALL) -D $(DIST)/bin/uninstall cp $(CONFIG_DIR)/helper.exe $(DIST)/bin/uninstall ifdef MOZ_MAINTENANCE_SERVICE maintenanceservice_installer:: cd $(CONFIG_DIR) && $(MAKENSISU) $(MAKENSISU_FLAGS) maintenanceservice_installer.nsi $(NSINSTALL) -D $(DIST)/bin/ cp $(CONFIG_DIR)/maintenanceservice_installer.exe $(DIST)/bin