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
|
# 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/.
# Calendar builders currently use STRIP_XPI to reduce the binary component in
# Lightning.
XPI_PKGNAME = lightning-$(LIGHTNING_VERSION).$(AB_CD).$(MOZ_PKG_PLATFORM)
XPI_VERSION = $(LIGHTNING_VERSION)
XPI_EM_ID = {e2fda1a4-762b-4020-b5ad-a41df1933103}
ifneq (,$(findstring a,$(LIGHTNING_VERSION)))
DEFINES += -DLIGHTNING_PRERELEASE_VERSION=1
endif
# Enable nightly updates on aurora and nightly channel
ifeq (nightly,$(subst aurora,nightly,$(MOZ_UPDATE_CHANNEL)))
DEFINES += -DLIGHTNING_UPDATE_LOCATION=https://calendar.mozilla.org/update.php
endif
# Gecko milestone
GRE_MILESTONE = $(shell $(PYTHON) $(MOZILLA_SRCDIR)/config/printconfigsetting.py $(DIST)/bin/platform.ini Build Milestone)
ifdef GRE_MILESTONE
DEFINES += -DGRE_MILESTONE=$(GRE_MILESTONE)
endif
# comm-central source repo and stamp
SOURCE_STAMP ?= $(firstword $(shell hg -R $(topsrcdir) parent --template='{node}\n' 2>/dev/null))
ifdef SOURCE_STAMP
DEFINES += -DSOURCE_STAMP='$(SOURCE_STAMP)'
endif
SOURCE_REPO := $(shell hg -R $(topsrcdir) showconfig paths.default 2>/dev/null | sed -e 's/^ssh:/http:/')
ifdef SOURCE_REPO
DEFINES += -DSOURCE_REPO='$(SOURCE_REPO)'
endif
# Mozilla source repo and stamps
MOZ_SOURCE_STAMP = $(firstword $(shell hg -R $(MOZILLA_SRCDIR) parent --template='{node}\n' 2>/dev/null))
ifdef MOZ_SOURCE_STAMP
DEFINES += -DMOZ_SOURCE_STAMP='$(MOZ_SOURCE_STAMP)'
endif
MOZ_SOURCE_REPO := $(shell hg -R $(MOZILLA_SRCDIR) showconfig paths.default 2>/dev/null | sed -e 's/^ssh:/http:/')
ifdef MOZ_SOURCE_REPO
DEFINES += -DMOZ_SOURCE_REPO='$(MOZ_SOURCE_REPO)'
endif
# Install as a global extension in
# dist/bin/extensions/
XPI_INSTALL_EXTENSION = $(XPI_EM_ID)
DEFINES += -DTHUNDERBIRD_VERSION=$(THUNDERBIRD_VERSION) \
-DTHUNDERBIRD_MAXVERSION=$(THUNDERBIRD_MAXVERSION) \
-DSEAMONKEY_VERSION=$(SEAMONKEY_VERSION) \
-DSEAMONKEY_MAXVERSION=$(SEAMONKEY_MAXVERSION) \
-DLIGHTNING_VERSION=$(LIGHTNING_VERSION) \
-DTARGET_PLATFORM=$(OS_TARGET)_$(TARGET_XPCOM_ABI) \
-DXPI_EM_ID=$(XPI_EM_ID) \
$(NULL)
MOZ_BUILDID = $(shell $(PYTHON) $(MOZILLA_SRCDIR)/config/printconfigsetting.py $(DIST)/bin/application.ini App BuildID)
DEFINES += -DMOZ_BUILDID=$(MOZ_BUILDID)
include $(topsrcdir)/config/rules.mk
include $(srcdir)/versions.mk
include $(srcdir)/lightning-packager.mk
include $(srcdir)/lightning-tests.mk
# For Lightning, we also need to preprocess the l10n prefs. Pull in the en-US
# copy if the files doesn't exist.
repack-process-extrafiles: lightning-extrafiles
lightning-extrafiles: LTN_ABCD_L10NJS=$(call EXPAND_LOCALE_SRCDIR,calendar/locales)/lightning-l10n.js
lightning-extrafiles: LTN_ANY_L10NJS=$(if $(wildcard $(LTN_ABCD_L10NJS)),$(LTN_ABCD_L10NJS),$(topsrcdir)/calendar/locales/en-US/lightning-l10n.js)
lightning-extrafiles:
$(call py_action,preprocessor,$(PREF_PPFLAGS) $(DEFINES) $(ACDEFINES) $(XULPPFLAGS) $(LTN_ANY_L10NJS) -o $(DIST)/$(UNIVERSAL_PATH)xpi-stage/$(L10N_XPI_NAME)/$(PREF_DIR)/lightning-l10n.js)
ident:
@printf 'comm_revision '
@$(PYTHON) $(MOZILLA_SRCDIR)/config/printconfigsetting.py \
$(FINAL_TARGET)/app.ini App SourceStamp
@printf 'moz_revision '
@$(PYTHON) $(MOZILLA_SRCDIR)/config/printconfigsetting.py \
$(FINAL_TARGET)/app.ini Build SourceStamp
@printf 'buildid '
@$(PYTHON) $(MOZILLA_SRCDIR)/config/printconfigsetting.py \
$(FINAL_TARGET)/app.ini App BuildID
|