Bumping gaia.json for 2 gaia revision(s) a=gaia-bump
[gecko.git] / toolkit / xre / moz.build
blob85e38b4c0da76989e66eaedfd342abfb4c917d60
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/.
7 if CONFIG['OS_ARCH'] == 'WINNT':
8     TEST_DIRS += ['test/win']
10 MOCHITEST_MANIFESTS += ['test/mochitest.ini']
12 XPIDL_SOURCES += [
13     'nsINativeAppSupport.idl',
16 if CONFIG['OS_ARCH'] == 'WINNT':
17     XPIDL_SOURCES += [
18         'nsIWinAppHelper.idl',
19     ]
21 XPIDL_MODULE = 'xulapp'
23 if CONFIG['MOZ_INSTRUMENT_EVENT_LOOP']:
24     EXPORTS += ['EventTracer.h']
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     ]
59 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gtk3':
60     UNIFIED_SOURCES += [
61         'nsGDKErrorHandler.cpp',
62     ]
64 if CONFIG['MOZ_X11']:
65     UNIFIED_SOURCES += [
66         'nsX11ErrorHandler.cpp',
67     ]
69 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
70     UNIFIED_SOURCES += [
71         'nsAndroidStartup.cpp',
72     ]
74 UNIFIED_SOURCES += [
75     'CreateAppData.cpp',
76     'nsConsoleWriter.cpp',
77     'nsNativeAppSupportBase.cpp',
78     'nsSigHandlers.cpp',
79     'nsXREDirProvider.cpp',
80     'ProfileReset.cpp',
83 # nsAppRunner.cpp cannot be built in unified mode because it pulls in OS X system headers.
84 # nsEmbedFunctions.cpp cannot be built in unified mode because it pulls in X11 headers.
85 SOURCES += [
86     'nsAppRunner.cpp',
87     'nsEmbedFunctions.cpp',
90 if CONFIG['MOZ_GL_DEFAULT_PROVIDER'] == 'GLX':
91     UNIFIED_SOURCES += [
92         'glxtest.cpp',
93     ]
95 if CONFIG['MOZ_INSTRUMENT_EVENT_LOOP']:
96     UNIFIED_SOURCES += [
97         'EventTracer.cpp',
98     ]
100 if CONFIG['MOZ_UPDATER']:
101     if CONFIG['MOZ_WIDGET_TOOLKIT'] != 'android':
102         UNIFIED_SOURCES += [
103             'nsUpdateDriver.cpp',
104         ]
106 MSVC_ENABLE_PGO = True
108 include('/ipc/chromium/chromium-config.mozbuild')
110 FINAL_LIBRARY = 'xul'
112 if CONFIG['MOZ_GL_DEFAULT_PROVIDER'] == 'GLX':
113     DEFINES['USE_GLX_TEST'] = True
115 for var in ('MOZ_APP_NAME', 'MOZ_APP_BASENAME', 'MOZ_APP_VERSION', 'OS_TARGET',
116             'MOZ_WIDGET_TOOLKIT'):
117     DEFINES[var] = '"%s"' % CONFIG[var]
119 if CONFIG['MOZ_UPDATER'] and CONFIG['MOZ_WIDGET_TOOLKIT'] != 'android':
120     DEFINES['MOZ_UPDATER'] = True
122 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows':
123     DEFINES['WIN32_LEAN_AND_MEAN'] = True
124     DEFINES['UNICODE'] = True
125     DEFINES['_UNICODE'] = True
127 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
128     DEFINES['ANDROID_PACKAGE_NAME'] = '"%s"' % CONFIG['ANDROID_PACKAGE_NAME']
130 if CONFIG['TARGET_XPCOM_ABI']:
131     DEFINES['TARGET_OS_ABI'] = '"%s_%s"' % (CONFIG['OS_TARGET'],
132                                             CONFIG['TARGET_XPCOM_ABI'])
134 if CONFIG['WRAP_SYSTEM_INCLUDES']:
135     DEFINES['WRAP_SYSTEM_INCLUDES'] = True
137 if CONFIG['OS_ARCH'] == 'Linux' and 'lib64' in CONFIG['libdir']:
138     DEFINES['HAVE_USR_LIB64_DIR'] = True
140 DEFINES['GRE_MILESTONE'] = CONFIG['GRE_MILESTONE']
142 for var in ('APP_VERSION', 'APP_ID'):
143     DEFINES[var] = CONFIG['MOZ_%s' % var]
145 if CONFIG['MOZILLA_OFFICIAL']:
146     DEFINES['MOZILLA_OFFICIAL'] = True
148 LOCAL_INCLUDES += [
149     '../profile',
150     '/config',
151     '/dom/base',
152     '/dom/ipc',
153     '/testing/gtest/mozilla',
154     '/toolkit/crashreporter',
155     '/xpcom/build',
158 if CONFIG['MOZ_ENABLE_XREMOTE']:
159     LOCAL_INCLUDES += [
160         '/widget/xremoteclient',
161     ]
163 if CONFIG['MOZ_B2G_LOADER']:
164     DEFINES['OMNIJAR_NAME'] = CONFIG['OMNIJAR_NAME']
165 CXXFLAGS += CONFIG['TK_CFLAGS']
166 CXXFLAGS += CONFIG['MOZ_DBUS_CFLAGS']
167 CXXFLAGS += CONFIG['MOZ_DBUS_GLIB_CFLAGS']
169 if CONFIG['MOZ_WIDGET_GTK']:
170     CXXFLAGS += CONFIG['MOZ_PANGO_CFLAGS']