summaryrefslogtreecommitdiff
path: root/browser/installer/Makefile.in
blob: 4a934fe45a1880d689731d343dcdab7a4ed11358 (plain)
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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
# 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/.

STANDALONE_MAKEFILE := 1
DIST_SUBDIR := browser

include $(topsrcdir)/config/rules.mk

MOZ_PKG_REMOVALS = $(srcdir)/removed-files.in

MOZ_PKG_MANIFEST = $(srcdir)/package-manifest.in
MOZ_PKG_DUPEFLAGS = -f $(srcdir)/allowed-dupes.mn

# Some files have been already bundled with xulrunner
MOZ_PKG_FATAL_WARNINGS = 1

# When packaging an artifact build not all xpt files expected by the
# packager will be present.
ifdef MOZ_ARTIFACT_BUILDS
MOZ_PKG_FATAL_WARNINGS =
endif

DEFINES += -DMOZ_APP_NAME=$(MOZ_APP_NAME) -DPREF_DIR=$(PREF_DIR)

ifdef MOZ_DEBUG
DEFINES += -DMOZ_DEBUG=1
endif

ifneq (,$(filter gtk%,$(MOZ_WIDGET_TOOLKIT)))
DEFINES += -DMOZ_GTK=1
ifeq ($(MOZ_WIDGET_TOOLKIT),gtk3)
DEFINES += -DMOZ_GTK3=1
endif
endif

ifdef MOZ_SYSTEM_NSPR
DEFINES += -DMOZ_SYSTEM_NSPR=1
endif

ifdef MOZ_SYSTEM_NSS
DEFINES += -DMOZ_SYSTEM_NSS=1
endif

ifdef NSS_DISABLE_DBM
DEFINES += -DNSS_DISABLE_DBM=1
endif

ifdef MOZ_ARTIFACT_BUILDS
DEFINES += -DMOZ_ARTIFACT_BUILDS=1
endif

DEFINES += -DJAREXT=

ifdef MOZ_ANGLE_RENDERER
DEFINES += -DMOZ_ANGLE_RENDERER=$(MOZ_ANGLE_RENDERER)
ifdef MOZ_D3DCOMPILER_VISTA_DLL
DEFINES += -DMOZ_D3DCOMPILER_VISTA_DLL=$(MOZ_D3DCOMPILER_VISTA_DLL)
endif
endif

DEFINES += -DMOZ_CHILD_PROCESS_NAME=$(MOZ_CHILD_PROCESS_NAME)

# Set MSVC dlls version to package, if any.
ifdef MOZ_NO_DEBUG_RTL
ifdef WIN32_REDIST_DIR
DEFINES += -DMOZ_PACKAGE_MSVC_DLLS=1
DEFINES += -DMSVC_C_RUNTIME_DLL=$(MSVC_C_RUNTIME_DLL)
DEFINES += -DMSVC_CXX_RUNTIME_DLL=$(MSVC_CXX_RUNTIME_DLL)
endif
ifdef WIN_UCRT_REDIST_DIR
DEFINES += -DMOZ_PACKAGE_WIN_UCRT_DLLS=1
endif
endif

ifneq (,$(filter WINNT Darwin Android,$(OS_TARGET)))
DEFINES += -DMOZ_SHARED_MOZGLUE=1
endif

ifdef NECKO_WIFI
DEFINES += -DNECKO_WIFI
endif

ifdef MAKENSISU
DEFINES += -DHAVE_MAKENSISU=1
endif

ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT))
MOZ_PKG_MAC_DSSTORE=branding/dsstore
MOZ_PKG_MAC_BACKGROUND=branding/background.png
MOZ_PKG_MAC_ICON=branding/disk.icns
MOZ_PKG_MAC_EXTRA=--symlink '/Applications:/ '
endif

INSTALL_SDK = 1

include $(topsrcdir)/toolkit/mozapps/installer/signing.mk
include $(topsrcdir)/toolkit/mozapps/installer/packager.mk

ifeq (bundle, $(MOZ_FS_LAYOUT))
BINPATH = $(_BINPATH)
DEFINES += -DAPPNAME=$(_APPNAME)
else
# Every other platform just winds up in dist/bin
BINPATH = bin
endif
DEFINES += -DBINPATH=$(BINPATH)

ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT))
RESPATH = $(_APPNAME)/Contents/Resources
else
RESPATH = $(BINPATH)
endif
DEFINES += -DRESPATH=$(RESPATH)

LPROJ_ROOT = $(firstword $(subst -, ,$(AB_CD)))
ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT))
ifeq (zh-TW,$(AB_CD))
LPROJ_ROOT := $(subst -,_,$(AB_CD))
endif
endif
DEFINES += -DLPROJ_ROOT=$(LPROJ_ROOT)

DEFINES += -DMOZ_ICU_VERSION=$(MOZ_ICU_VERSION)
ifdef MOZ_SYSTEM_ICU
DEFINES += -DMOZ_SYSTEM_ICU
endif
ifdef MOZ_ICU_DATA_ARCHIVE
DEFINES += -DMOZ_ICU_DATA_ARCHIVE
endif
DEFINES += -DMOZ_ICU_DBG_SUFFIX=$(MOZ_ICU_DBG_SUFFIX)
DEFINES += -DICU_DATA_FILE=$(ICU_DATA_FILE)
ifdef CLANG_CXX
DEFINES += -DCLANG_CXX
endif
ifdef CLANG_CL
DEFINES += -DCLANG_CL
endif
ifeq (x86,$(CPU_ARCH))
ifdef _MSC_VER
ifndef CLANG_CL
DEFINES += -DWOW_HELPER
endif
endif
endif


# Builds using the hybrid FasterMake/RecursiveMake backend will
# fail to produce a langpack. See bug 1255096.
libs::
ifeq (,$(filter FasterMake+RecursiveMake,$(BUILD_BACKENDS)))
	$(MAKE) -C $(DEPTH)/browser/locales langpack
endif

ifeq (WINNT,$(OS_ARCH))
PKGCOMP_FIND_OPTS =
else
PKGCOMP_FIND_OPTS = -L
endif
ifeq (Darwin, $(OS_ARCH))
FINDPATH = $(_APPNAME)/Contents/MacOS
else
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