|
1 # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*- |
|
2 # vim: set filetype=python: |
|
3 # This Source Code Form is subject to the terms of the Mozilla Public |
|
4 # License, v. 2.0. If a copy of the MPL was not distributed with this |
|
5 # file, You can obtain one at http://mozilla.org/MPL/2.0/. |
|
6 |
|
7 if CONFIG['OS_ARCH'] == 'WINNT': |
|
8 TEST_DIRS += ['test/win'] |
|
9 |
|
10 MOCHITEST_MANIFESTS += ['test/mochitest.ini'] |
|
11 |
|
12 XPIDL_SOURCES += [ |
|
13 'nsINativeAppSupport.idl', |
|
14 ] |
|
15 |
|
16 if CONFIG['OS_ARCH'] == 'WINNT': |
|
17 XPIDL_SOURCES += [ |
|
18 'nsIWinAppHelper.idl', |
|
19 ] |
|
20 |
|
21 XPIDL_MODULE = 'xulapp' |
|
22 |
|
23 if CONFIG['MOZ_INSTRUMENT_EVENT_LOOP']: |
|
24 EXPORTS += ['EventTracer.h'] |
|
25 |
|
26 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows': |
|
27 UNIFIED_SOURCES += [ |
|
28 'nsNativeAppSupportWin.cpp', |
|
29 ] |
|
30 elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': |
|
31 EXPORTS += ['MacQuirks.h'] |
|
32 UNIFIED_SOURCES += [ |
|
33 'nsCommandLineServiceMac.cpp', |
|
34 ] |
|
35 UNIFIED_SOURCES += [ |
|
36 'MacApplicationDelegate.mm', |
|
37 'MacAutoreleasePool.mm', |
|
38 'MacLaunchHelper.mm', |
|
39 'nsNativeAppSupportCocoa.mm', |
|
40 ] |
|
41 elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'qt': |
|
42 EXPORTS += ['nsQAppInstance.h'] |
|
43 GENERATED_SOURCES += [ |
|
44 'moc_nsNativeAppSupportQt.cpp', |
|
45 ] |
|
46 SOURCES += [ |
|
47 'nsNativeAppSupportQt.cpp', |
|
48 'nsQAppInstance.cpp', |
|
49 ] |
|
50 elif CONFIG['MOZ_ENABLE_GTK']: |
|
51 UNIFIED_SOURCES += [ |
|
52 'nsNativeAppSupportUnix.cpp', |
|
53 ] |
|
54 else: |
|
55 UNIFIED_SOURCES += [ |
|
56 'nsNativeAppSupportDefault.cpp', |
|
57 ] |
|
58 |
|
59 if CONFIG['MOZ_X11']: |
|
60 UNIFIED_SOURCES += [ |
|
61 'nsX11ErrorHandler.cpp', |
|
62 ] |
|
63 |
|
64 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android': |
|
65 UNIFIED_SOURCES += [ |
|
66 'nsAndroidStartup.cpp', |
|
67 ] |
|
68 |
|
69 UNIFIED_SOURCES += [ |
|
70 'CreateAppData.cpp', |
|
71 'nsConsoleWriter.cpp', |
|
72 'nsNativeAppSupportBase.cpp', |
|
73 'nsSigHandlers.cpp', |
|
74 'nsXREDirProvider.cpp', |
|
75 'ProfileReset.cpp', |
|
76 ] |
|
77 |
|
78 # nsAppRunner.cpp cannot be built in unified mode because it pulls in OS X system headers. |
|
79 # nsEmbedFunctions.cpp cannot be built in unified mode because it pulls in X11 headers. |
|
80 SOURCES += [ |
|
81 'nsAppRunner.cpp', |
|
82 'nsEmbedFunctions.cpp', |
|
83 ] |
|
84 |
|
85 if CONFIG['MOZ_GL_DEFAULT_PROVIDER'] == 'GLX': |
|
86 UNIFIED_SOURCES += [ |
|
87 'glxtest.cpp', |
|
88 ] |
|
89 |
|
90 if CONFIG['MOZ_INSTRUMENT_EVENT_LOOP']: |
|
91 UNIFIED_SOURCES += [ |
|
92 'EventTracer.cpp', |
|
93 ] |
|
94 |
|
95 if CONFIG['MOZ_UPDATER']: |
|
96 if CONFIG['MOZ_WIDGET_TOOLKIT'] != 'android': |
|
97 UNIFIED_SOURCES += [ |
|
98 'nsUpdateDriver.cpp', |
|
99 ] |
|
100 |
|
101 MSVC_ENABLE_PGO = True |
|
102 |
|
103 LIBRARY_NAME = 'xulapp_s' |
|
104 |
|
105 include('/ipc/chromium/chromium-config.mozbuild') |
|
106 |
|
107 FINAL_LIBRARY = 'xul' |
|
108 |
|
109 if CONFIG['MOZ_GL_DEFAULT_PROVIDER'] == 'GLX': |
|
110 DEFINES['USE_GLX_TEST'] = True |
|
111 |
|
112 for var in ('MOZ_APP_NAME', 'MOZ_APP_BASENAME', 'MOZ_APP_VERSION', 'OS_TARGET', |
|
113 'MOZ_WIDGET_TOOLKIT'): |
|
114 DEFINES[var] = '"%s"' % CONFIG[var] |
|
115 |
|
116 if CONFIG['MOZ_UPDATER'] and CONFIG['MOZ_WIDGET_TOOLKIT'] != 'android': |
|
117 DEFINES['MOZ_UPDATER'] = True |
|
118 |
|
119 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows': |
|
120 DEFINES['WIN32_LEAN_AND_MEAN'] = True |
|
121 DEFINES['UNICODE'] = True |
|
122 DEFINES['_UNICODE'] = True |
|
123 |
|
124 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android': |
|
125 DEFINES['ANDROID_PACKAGE_NAME'] = '"%s"' % CONFIG['ANDROID_PACKAGE_NAME'] |
|
126 |
|
127 if CONFIG['TARGET_XPCOM_ABI']: |
|
128 DEFINES['TARGET_XPCOM_ABI'] = '"%s"' % CONFIG['TARGET_XPCOM_ABI'] |
|
129 DEFINES['TARGET_OS_ABI'] = '"%s_%s"' % (CONFIG['OS_TARGET'], |
|
130 CONFIG['TARGET_XPCOM_ABI']) |
|
131 |
|
132 if CONFIG['WRAP_SYSTEM_INCLUDES']: |
|
133 DEFINES['WRAP_SYSTEM_INCLUDES'] = True |
|
134 |
|
135 if CONFIG['OS_ARCH'] == 'Linux' and 'lib64' in CONFIG['libdir']: |
|
136 DEFINES['HAVE_USR_LIB64_DIR'] = True |
|
137 |
|
138 DEFINES['GRE_MILESTONE'] = CONFIG['GRE_MILESTONE'] |
|
139 |
|
140 for var in ('APP_VERSION', 'APP_ID'): |
|
141 DEFINES[var] = CONFIG['MOZ_%s' % var] |
|
142 |
|
143 if CONFIG['MOZILLA_OFFICIAL']: |
|
144 DEFINES['MOZILLA_OFFICIAL'] = True |
|
145 |
|
146 LOCAL_INCLUDES += [ |
|
147 '../profile', |
|
148 '/config', |
|
149 '/dom/base', |
|
150 '/dom/ipc', |
|
151 '/testing/gtest/mozilla', |
|
152 '/toolkit/crashreporter', |
|
153 '/xpcom/build', |
|
154 ] |
|
155 |
|
156 if CONFIG['MOZ_ENABLE_XREMOTE']: |
|
157 LOCAL_INCLUDES += [ |
|
158 '/widget/xremoteclient', |
|
159 ] |
|
160 |