зеркало из https://github.com/mozilla/gecko-dev.git
245 строки
5.8 KiB
Python
245 строки
5.8 KiB
Python
# -*- 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/.
|
|
|
|
with Files("**"):
|
|
BUG_COMPONENT = ("Core", "DOM: Content Processes")
|
|
|
|
XPIDL_SOURCES += [
|
|
'nsIHangReport.idl',
|
|
'nsIRemoteWebProgress.idl',
|
|
'nsIRemoteWebProgressRequest.idl',
|
|
]
|
|
|
|
XPIDL_MODULE = 'dom'
|
|
|
|
XPCOM_MANIFESTS += [
|
|
'components.conf',
|
|
]
|
|
|
|
EXTRA_JS_MODULES += [
|
|
'ManifestMessagesChild.jsm',
|
|
]
|
|
|
|
EXPORTS.mozilla.dom.ipc += [
|
|
'IdType.h',
|
|
'MemMapSnapshot.h',
|
|
'SharedMap.h',
|
|
'SharedMapChangeEvent.h',
|
|
'SharedStringMap.h',
|
|
'StringTable.h',
|
|
'StructuredCloneData.h',
|
|
]
|
|
|
|
EXPORTS.mozilla.dom += [
|
|
'BrowserBridgeChild.h',
|
|
'BrowserBridgeHost.h',
|
|
'BrowserBridgeParent.h',
|
|
'BrowserChild.h',
|
|
'BrowserHost.h',
|
|
'BrowserParent.h',
|
|
'ClonedErrorHolder.h',
|
|
'CoalescedInputData.h',
|
|
'CoalescedMouseData.h',
|
|
'CoalescedWheelData.h',
|
|
'ContentChild.h',
|
|
'ContentParent.h',
|
|
'ContentProcess.h',
|
|
'ContentProcessManager.h',
|
|
'CPOWManagerGetter.h',
|
|
'CSPMessageUtils.h',
|
|
'DocShellMessageUtils.h',
|
|
'EffectsInfo.h',
|
|
'FilePickerParent.h',
|
|
'JSWindowActor.h',
|
|
'JSWindowActorChild.h',
|
|
'JSWindowActorParent.h',
|
|
'JSWindowActorService.h',
|
|
'MemoryReportRequest.h',
|
|
'PermissionMessageUtils.h',
|
|
'PropertyBagUtils.h',
|
|
'ReferrerInfoUtils.h',
|
|
'RemoteBrowser.h',
|
|
'RemoteWebProgress.h',
|
|
'RemoteWebProgressRequest.h',
|
|
'TabContext.h',
|
|
'TabMessageUtils.h',
|
|
'URLClassifierChild.h',
|
|
'URLClassifierParent.h',
|
|
'UserActivationIPCUtils.h',
|
|
'WindowGlobalActor.h',
|
|
'WindowGlobalChild.h',
|
|
'WindowGlobalParent.h',
|
|
]
|
|
|
|
EXPORTS.mozilla += [
|
|
'PreallocatedProcessManager.h',
|
|
'ProcessHangMonitor.h',
|
|
'ProcessHangMonitorIPC.h',
|
|
'ProcessPriorityManager.h',
|
|
]
|
|
|
|
EXPORTS += [
|
|
'nsQueryActor.h',
|
|
]
|
|
|
|
UNIFIED_SOURCES += [
|
|
'BrowserBridgeChild.cpp',
|
|
'BrowserBridgeHost.cpp',
|
|
'BrowserBridgeParent.cpp',
|
|
'BrowserChild.cpp',
|
|
'BrowserHost.cpp',
|
|
'BrowserParent.cpp',
|
|
'ClonedErrorHolder.cpp',
|
|
'CoalescedMouseData.cpp',
|
|
'CoalescedWheelData.cpp',
|
|
'ColorPickerParent.cpp',
|
|
'ContentParent.cpp',
|
|
'ContentProcess.cpp',
|
|
'ContentProcessManager.cpp',
|
|
'CSPMessageUtils.cpp',
|
|
'DocShellMessageUtils.cpp',
|
|
'FilePickerParent.cpp',
|
|
'JSWindowActor.cpp',
|
|
'JSWindowActorChild.cpp',
|
|
'JSWindowActorParent.cpp',
|
|
'JSWindowActorService.cpp',
|
|
'MemMapSnapshot.cpp',
|
|
'MemoryReportRequest.cpp',
|
|
'MMPrinter.cpp',
|
|
'PermissionMessageUtils.cpp',
|
|
'PreallocatedProcessManager.cpp',
|
|
'ProcessPriorityManager.cpp',
|
|
'PropertyBagUtils.cpp',
|
|
'ReferrerInfoUtils.cpp',
|
|
'RemoteBrowser.cpp',
|
|
'RemoteWebProgress.cpp',
|
|
'RemoteWebProgressRequest.cpp',
|
|
'SharedMap.cpp',
|
|
'SharedStringMap.cpp',
|
|
'StructuredCloneData.cpp',
|
|
'TabContext.cpp',
|
|
'TabMessageUtils.cpp',
|
|
'URLClassifierParent.cpp',
|
|
'WindowGlobalActor.cpp',
|
|
'WindowGlobalChild.cpp',
|
|
'WindowGlobalParent.cpp',
|
|
]
|
|
|
|
# ContentChild.cpp cannot be compiled in unified mode on linux due to Time conflict
|
|
SOURCES += [
|
|
'ContentChild.cpp',
|
|
'ProcessHangMonitor.cpp',
|
|
]
|
|
|
|
PREPROCESSED_IPDL_SOURCES += [
|
|
'PBrowser.ipdl',
|
|
'PBrowserBridge.ipdl',
|
|
'PContent.ipdl',
|
|
]
|
|
|
|
IPDL_SOURCES += [
|
|
'DOMTypes.ipdlh',
|
|
'MemoryReportTypes.ipdlh',
|
|
'PBrowserOrId.ipdlh',
|
|
'PColorPicker.ipdl',
|
|
'PContentPermission.ipdlh',
|
|
'PContentPermissionRequest.ipdl',
|
|
'PCycleCollectWithLogs.ipdl',
|
|
'PFilePicker.ipdl',
|
|
'PLoginReputation.ipdl',
|
|
'PPluginWidget.ipdl',
|
|
'PProcessHangMonitor.ipdl',
|
|
'PrefsTypes.ipdlh',
|
|
'PTabContext.ipdlh',
|
|
'PURLClassifier.ipdl',
|
|
'PURLClassifierInfo.ipdlh',
|
|
'PURLClassifierLocal.ipdl',
|
|
'PWindowGlobal.ipdl',
|
|
'ServiceWorkerConfiguration.ipdlh',
|
|
]
|
|
|
|
include('/ipc/chromium/chromium-config.mozbuild')
|
|
|
|
FINAL_LIBRARY = 'xul'
|
|
|
|
if CONFIG['MOZ_SANDBOX'] and (CONFIG['OS_TARGET'] in ['Darwin', 'Linux']):
|
|
USE_LIBS += [
|
|
'mozsandbox',
|
|
]
|
|
|
|
LOCAL_INCLUDES += [
|
|
'/caps',
|
|
'/chrome',
|
|
'/docshell/base',
|
|
'/dom/base',
|
|
'/dom/bindings',
|
|
'/dom/events',
|
|
'/dom/filesystem',
|
|
'/dom/geolocation',
|
|
'/dom/media/webspeech/synth/ipc',
|
|
'/dom/security',
|
|
'/dom/storage',
|
|
'/extensions/permissions',
|
|
'/extensions/spellcheck/src',
|
|
'/gfx/2d',
|
|
'/hal/sandbox',
|
|
'/js/xpconnect/loader',
|
|
'/js/xpconnect/src',
|
|
'/layout/base',
|
|
'/media/webrtc',
|
|
'/netwerk/base',
|
|
'/netwerk/protocol/http',
|
|
'/toolkit/components/printingui/ipc',
|
|
'/toolkit/crashreporter',
|
|
'/toolkit/xre',
|
|
'/uriloader/exthandler',
|
|
'/widget',
|
|
'/xpcom/base',
|
|
'/xpcom/threads',
|
|
]
|
|
|
|
if CONFIG['MOZ_SANDBOX'] and CONFIG['OS_ARCH'] == 'WINNT':
|
|
LOCAL_INCLUDES += [
|
|
'/security/sandbox/chromium',
|
|
'/security/sandbox/chromium-shim',
|
|
]
|
|
|
|
if CONFIG['OS_ARCH'] != 'WINNT':
|
|
LOCAL_INCLUDES += [
|
|
'/modules/libjar',
|
|
]
|
|
|
|
DEFINES['BIN_SUFFIX'] = '"%s"' % CONFIG['BIN_SUFFIX']
|
|
|
|
DEFINES['MOZ_APP_NAME'] = '"%s"' % CONFIG['MOZ_APP_NAME']
|
|
|
|
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
|
|
DEFINES['MOZ_ENABLE_FREETYPE'] = True
|
|
|
|
JAR_MANIFESTS += ['jar.mn']
|
|
|
|
BROWSER_CHROME_MANIFESTS += [
|
|
'tests/browser.ini',
|
|
'tests/JSWindowActor/browser.ini',
|
|
]
|
|
|
|
MOCHITEST_CHROME_MANIFESTS += ['tests/chrome.ini']
|
|
MOCHITEST_MANIFESTS += ['tests/mochitest.ini']
|
|
XPCSHELL_TESTS_MANIFESTS += ['tests/xpcshell.ini']
|
|
|
|
CXXFLAGS += CONFIG['TK_CFLAGS']
|
|
|
|
if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
|
|
CXXFLAGS += ['-Wno-error=shadow']
|
|
|
|
if CONFIG['FUZZING'] and CONFIG['FUZZING_INTERFACES']:
|
|
TEST_DIRS += [
|
|
'fuzztest'
|
|
]
|
|
|
|
# Add libFuzzer configuration directives
|
|
include('/tools/fuzzing/libfuzzer-config.mozbuild')
|