# -*- 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', ] XPIDL_MODULE = 'dom' 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 += [ 'CoalescedInputData.h', 'CoalescedMouseData.h', 'CoalescedWheelData.h', 'ContentBridgeChild.h', 'ContentBridgeParent.h', 'ContentChild.h', 'ContentParent.h', 'ContentProcess.h', 'ContentProcessHost.h', 'ContentProcessManager.h', 'CPOWManagerGetter.h', 'FilePickerParent.h', 'MemoryReportRequest.h', 'nsIContentChild.h', 'nsIContentParent.h', 'PermissionMessageUtils.h', 'TabChild.h', 'TabContext.h', 'TabMessageUtils.h', 'TabParent.h', 'URLClassifierChild.h', 'URLClassifierParent.h', ] EXPORTS.mozilla += [ 'PreallocatedProcessManager.h', 'ProcessHangMonitor.h', 'ProcessHangMonitorIPC.h', 'ProcessPriorityManager.h', ] UNIFIED_SOURCES += [ 'CoalescedMouseData.cpp', 'CoalescedWheelData.cpp', 'ColorPickerParent.cpp', 'ContentBridgeChild.cpp', 'ContentBridgeParent.cpp', 'ContentParent.cpp', 'ContentProcess.cpp', 'ContentProcessHost.cpp', 'ContentProcessManager.cpp', 'FilePickerParent.cpp', 'MemMapSnapshot.cpp', 'MemoryReportRequest.cpp', 'nsIContentChild.cpp', 'nsIContentParent.cpp', 'PermissionMessageUtils.cpp', 'PreallocatedProcessManager.cpp', 'ProcessPriorityManager.cpp', 'SharedMap.cpp', 'SharedStringMap.cpp', 'StructuredCloneData.cpp', 'TabChild.cpp', 'TabContext.cpp', 'TabMessageUtils.cpp', 'TabParent.cpp', 'URLClassifierParent.cpp', ] # ContentChild.cpp cannot be compiled in unified mode on linux due to Time conflict SOURCES += [ 'ContentChild.cpp', 'ProcessHangMonitor.cpp', ] IPDL_SOURCES += [ 'DOMTypes.ipdlh', 'MemoryReportTypes.ipdlh', 'PBrowser.ipdl', 'PBrowserOrId.ipdlh', 'PColorPicker.ipdl', 'PContent.ipdl', 'PContentBridge.ipdl', 'PContentPermission.ipdlh', 'PContentPermissionRequest.ipdl', 'PCycleCollectWithLogs.ipdl', 'PFilePicker.ipdl', 'PLoginReputation.ipdl', 'PPluginWidget.ipdl', 'PProcessHangMonitor.ipdl', 'PTabContext.ipdlh', 'PURLClassifier.ipdl', 'PURLClassifierInfo.ipdlh', 'PURLClassifierLocal.ipdl', 'ServiceWorkerConfiguration.ipdlh', ] include('/ipc/chromium/chromium-config.mozbuild') FINAL_LIBRARY = 'xul' if CONFIG['MOZ_SANDBOX'] and CONFIG['OS_TARGET'] == 'Darwin': USE_LIBS += [ 'mozsandbox', ] if CONFIG['MOZ_CONTENT_SANDBOX'] and CONFIG['OS_ARCH'] == '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', '/extensions/cookie', '/extensions/spellcheck/src', '/gfx/2d', '/hal/sandbox', '/js/xpconnect/loader', '/layout/base', '/media/webrtc', '/netwerk/base', '/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'] if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android': DEFINES['MOZ_ENABLE_FREETYPE'] = True if CONFIG['MOZ_TOOLKIT_SEARCH']: DEFINES['MOZ_TOOLKIT_SEARCH'] = True JAR_MANIFESTS += ['jar.mn'] BROWSER_CHROME_MANIFESTS += ['tests/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')