diff options
Diffstat (limited to 'toolkit/xre/moz.build')
-rw-r--r-- | toolkit/xre/moz.build | 185 |
1 files changed, 185 insertions, 0 deletions
diff --git a/toolkit/xre/moz.build b/toolkit/xre/moz.build new file mode 100644 index 000000000..dd15dc0bd --- /dev/null +++ b/toolkit/xre/moz.build @@ -0,0 +1,185 @@ +# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- +# vim: set filetype=python: +# 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/. + +if CONFIG['OS_ARCH'] == 'WINNT': + TEST_DIRS += ['test/win'] + +MOCHITEST_MANIFESTS += ['test/mochitest.ini'] +BROWSER_CHROME_MANIFESTS += ['test/browser.ini'] + +XPIDL_SOURCES += [ + 'nsINativeAppSupport.idl', +] + +if CONFIG['OS_ARCH'] == 'WINNT': + XPIDL_SOURCES += [ + 'nsIWinAppHelper.idl', + ] + +XPIDL_MODULE = 'xulapp' + +EXPORTS += ['nsAppRunner.h'] + +if CONFIG['MOZ_INSTRUMENT_EVENT_LOOP']: + EXPORTS += ['EventTracer.h'] + +if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows': + UNIFIED_SOURCES += [ + 'nsNativeAppSupportWin.cpp', + ] +elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': + UNIFIED_SOURCES += [ + 'MacApplicationDelegate.mm', + 'MacAutoreleasePool.mm', + 'MacLaunchHelper.mm', + 'nsCommandLineServiceMac.cpp', + 'nsNativeAppSupportCocoa.mm', + 'updaterfileutils_osx.mm', + ] +elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'uikit': + UNIFIED_SOURCES += [ + 'nsNativeAppSupportDefault.cpp', + 'UIKitDirProvider.mm', + ] +elif 'gtk' in CONFIG['MOZ_WIDGET_TOOLKIT']: + UNIFIED_SOURCES += [ + 'nsNativeAppSupportUnix.cpp', + ] +else: + UNIFIED_SOURCES += [ + 'nsNativeAppSupportDefault.cpp', + ] + +if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gtk3': + UNIFIED_SOURCES += [ + 'nsGDKErrorHandler.cpp', + ] + +if CONFIG['MOZ_X11']: + EXPORTS += ['nsX11ErrorHandler.h'] + UNIFIED_SOURCES += [ + 'nsX11ErrorHandler.cpp', + ] + +if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android': + UNIFIED_SOURCES += [ + 'nsAndroidStartup.cpp', + ] + +UNIFIED_SOURCES += [ + 'CreateAppData.cpp', + 'nsConsoleWriter.cpp', + 'nsNativeAppSupportBase.cpp', + 'nsSigHandlers.cpp', + 'nsXREDirProvider.cpp', +] + +# nsAppRunner.cpp and ProfileReset.cpp cannot be built in unified mode because +# they pull in OS X system headers. +# nsEmbedFunctions.cpp cannot be built in unified mode because it pulls in X11 headers. +SOURCES += [ + 'nsAppRunner.cpp', + 'nsEmbedFunctions.cpp', + 'ProfileReset.cpp', +] + +if CONFIG['MOZ_GL_DEFAULT_PROVIDER'] == 'GLX': + UNIFIED_SOURCES += [ + 'glxtest.cpp', + ] + +if CONFIG['MOZ_INSTRUMENT_EVENT_LOOP']: + UNIFIED_SOURCES += [ + 'EventTracer.cpp', + ] + +if CONFIG['MOZ_UPDATER']: + if CONFIG['MOZ_WIDGET_TOOLKIT'] != 'android': + UNIFIED_SOURCES += [ + 'nsUpdateDriver.cpp', + ] + +include('/ipc/chromium/chromium-config.mozbuild') + +FINAL_LIBRARY = 'xul' + +if CONFIG['MOZ_GL_DEFAULT_PROVIDER'] == 'GLX': + DEFINES['USE_GLX_TEST'] = True + +for var in ('MOZ_APP_NAME', 'MOZ_APP_BASENAME', 'MOZ_APP_VERSION', 'OS_TARGET', + 'MOZ_WIDGET_TOOLKIT'): + DEFINES[var] = '"%s"' % CONFIG[var] + +if CONFIG['MOZ_UPDATER'] and CONFIG['MOZ_WIDGET_TOOLKIT'] != 'android': + DEFINES['MOZ_UPDATER'] = True + +if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows': + DEFINES['WIN32_LEAN_AND_MEAN'] = True + DEFINES['UNICODE'] = True + DEFINES['_UNICODE'] = True + +if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android': + DEFINES['ANDROID_PACKAGE_NAME'] = '"%s"' % CONFIG['ANDROID_PACKAGE_NAME'] + +if CONFIG['TARGET_XPCOM_ABI']: + DEFINES['TARGET_OS_ABI'] = '"%s_%s"' % (CONFIG['OS_TARGET'], + CONFIG['TARGET_XPCOM_ABI']) + +if CONFIG['OS_ARCH'] == 'Linux' and 'lib64' in CONFIG['libdir']: + DEFINES['HAVE_USR_LIB64_DIR'] = True + +DEFINES['GRE_MILESTONE'] = CONFIG['GRE_MILESTONE'] + +for var in ('APP_VERSION', 'APP_ID'): + DEFINES[var] = CONFIG['MOZ_%s' % var] + +if CONFIG['MOZ_BUILD_APP'] == 'browser': + DEFINES['MOZ_BUILD_APP_IS_BROWSER'] = True + +LOCAL_INCLUDES += [ + '../profile', + '/config', + '/dom/base', + '/dom/ipc', + '/testing/gtest/mozilla', + '/toolkit/crashreporter', + '/xpcom/build', +] + +if CONFIG['MOZ_SANDBOX'] and CONFIG['OS_ARCH'] == 'WINNT': + LOCAL_INCLUDES += [ + '/security/sandbox/chromium', + '/security/sandbox/chromium-shim', + ] + +if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': + LOCAL_INCLUDES += [ + '/widget', + '/widget/cocoa', + ] + +if CONFIG['MOZ_ENABLE_XREMOTE']: + LOCAL_INCLUDES += [ + '/widget/xremoteclient', + ] + +CXXFLAGS += CONFIG['TK_CFLAGS'] +CXXFLAGS += CONFIG['MOZ_DBUS_CFLAGS'] +CXXFLAGS += CONFIG['MOZ_DBUS_GLIB_CFLAGS'] + +if 'gtk' in CONFIG['MOZ_WIDGET_TOOLKIT']: + CXXFLAGS += CONFIG['MOZ_PANGO_CFLAGS'] + +DEFINES['TOPOBJDIR'] = TOPOBJDIR +FINAL_TARGET_PP_FILES += [ + 'platform.ini' +] + +if CONFIG['GNU_CXX']: + CXXFLAGS += ['-Wno-error=shadow'] + +if CONFIG['MOZ_IPDL_TESTS']: + DEFINES['MOZ_IPDL_TESTS'] = True |