DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Mercurial (a7793347de9e)

VCS Links

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131
# vim:set ts=8 sw=8 sts=8 noet:
# 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/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
# 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)

ifdef MOZ_DEV_EDITION
MOZ_LANGPACK_EID=langpack-$(AB_CD)@devedition.mozilla.org
else
MOZ_LANGPACK_EID=langpack-$(AB_CD)@firefox.mozilla.org
endif
# For Nightly, we know where to get the builds from to do local repacks
ifdef NIGHTLY_BUILD
export EN_US_BINARY_URL ?= https://archive.mozilla.org/pub/firefox/nightly/latest-mozilla-central
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

ifeq ($(CPU_ARCH), aarch64)
MOZ_SFX_PACKAGE=$(topsrcdir)/other-licenses/7zstub/firefox/7zSD.ARM64.sfx
else
MOZ_SFX_PACKAGE=$(topsrcdir)/other-licenses/7zstub/firefox/7zSD.Win32.sfx
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-%:
	$(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 ../../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/fxmonitor/locales AB_CD=$* XPI_NAME=locale-$*
	@$(MAKE) -C ../extensions/report-site-issue/locales AB_CD=$* XPI_NAME=locale-$*
	@$(MAKE) -C ../../devtools/client/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
	@$(MAKE) -C ../../devtools/startup/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
	@$(MAKE) libs 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-$*
	@$(MAKE) -C ../../services/sync/locales chrome AB_CD=$*
	@$(MAKE) -C ../../extensions/spellcheck/locales chrome AB_CD=$*
ifneq (,$(wildcard ../extensions/formautofill/locales))
	@$(MAKE) -C ../extensions/formautofill/locales chrome AB_CD=$*
endif
	@$(MAKE) -C ../extensions/fxmonitor/locales chrome AB_CD=$*
	@$(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/report-site-issue/locales chrome AB_CD=$*

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) package-langpack-$*
	@$(MAKE) repackage-zip-$*
ifeq (WINNT,$(OS_ARCH))
	@$(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 '
	@$(PYTHON) $(topsrcdir)/config/printconfigsetting.py \
	    '$(STAGEDIST)'/application.ini App BuildID

# test target, depends on make package
# try to repack x-test, with just toolkit/defines.inc being there
l10n-check:: INNER_UNMAKE_PACKAGE=true
l10n-check::
	$(RM) -rf x-test
	$(NSINSTALL) -D x-test/toolkit
	echo '#define MOZ_LANG_TITLE Just testing' > x-test/toolkit/defines.inc
	@# ZIP_IN='$(ZIP_IN)' will pass down the *current* value of ZIP_IN, and
	@# we do the same for WIN32_INSTALLER_IN, which are based on MOZ_SIMPLE_PACKAGE_NAME
	@# not being reset, overwriting the value they would get with MOZ_SIMPLE_PACKAGE_NAME
	@# reset.
	$(MAKE) installers-x-test L10NBASEDIR='$(PWD)' \
	    ZIP_IN='$(ZIP_IN)' MOZ_SIMPLE_PACKAGE_NAME=
	$(PYTHON) $(topsrcdir)/toolkit/mozapps/installer/unpack.py $(DIST)/l10n-stage/$(MOZ_PKG_DIR)$(_RESPATH)
	cd $(DIST)/l10n-stage && test $$(cat $(MOZ_PKG_DIR)$(_RESPATH)/update.locale) = x-test