summaryrefslogtreecommitdiffstats
path: root/dom/ipc/moz.build
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--dom/ipc/moz.build275
1 files changed, 275 insertions, 0 deletions
diff --git a/dom/ipc/moz.build b/dom/ipc/moz.build
new file mode 100644
index 0000000000..10170e9b64
--- /dev/null
+++ b/dom/ipc/moz.build
@@ -0,0 +1,275 @@
+# -*- 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")
+
+DIRS += ["jsactor"]
+
+XPIDL_SOURCES += [
+ "nsIDOMProcessChild.idl",
+ "nsIDOMProcessParent.idl",
+ "nsIHangReport.idl",
+ "nsILoginDetectionService.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",
+ "CoalescedTouchData.h",
+ "CoalescedWheelData.h",
+ "ContentChild.h",
+ "ContentParent.h",
+ "ContentProcess.h",
+ "ContentProcessManager.h",
+ "CSPMessageUtils.h",
+ "DocShellMessageUtils.h",
+ "EffectsInfo.h",
+ "FilePickerParent.h",
+ "InProcessChild.h",
+ "InProcessParent.h",
+ "JSOracleChild.h",
+ "JSOracleParent.h",
+ "JSValidatorChild.h",
+ "JSValidatorParent.h",
+ "JSValidatorUtils.h",
+ "LoginDetectionService.h",
+ "MaybeDiscarded.h",
+ "MemoryReportRequest.h",
+ "NativeThreadId.h",
+ "PageLoadEventUtils.h",
+ "PermissionMessageUtils.h",
+ "ProcessActor.h",
+ "ProcessIsolation.h",
+ "PropertyBagUtils.h",
+ "ReferrerInfoUtils.h",
+ "RefMessageBodyService.h",
+ "RemoteBrowser.h",
+ "RemoteType.h",
+ "RemoteWebProgressRequest.h",
+ "SharedMessageBody.h",
+ "TabContext.h",
+ "TabMessageTypes.h",
+ "TabMessageUtils.h",
+ "URLClassifierChild.h",
+ "URLClassifierParent.h",
+ "UserActivationIPCUtils.h",
+ "VsyncChild.h",
+ "VsyncMainChild.h",
+ "VsyncParent.h",
+ "VsyncWorkerChild.h",
+ "WindowGlobalActor.h",
+ "WindowGlobalChild.h",
+ "WindowGlobalParent.h",
+]
+
+EXPORTS.mozilla += [
+ "PreallocatedProcessManager.h",
+ "ProcessHangMonitor.h",
+ "ProcessHangMonitorIPC.h",
+ "ProcessPriorityManager.h",
+]
+
+UNIFIED_SOURCES += [
+ "BrowserBridgeChild.cpp",
+ "BrowserBridgeHost.cpp",
+ "BrowserBridgeParent.cpp",
+ "BrowserChild.cpp",
+ "BrowserHost.cpp",
+ "BrowserParent.cpp",
+ "ClonedErrorHolder.cpp",
+ "CoalescedInputData.cpp",
+ "CoalescedMouseData.cpp",
+ "CoalescedTouchData.cpp",
+ "CoalescedWheelData.cpp",
+ "ColorPickerParent.cpp",
+ "ContentParent.cpp",
+ "ContentProcess.cpp",
+ "ContentProcessManager.cpp",
+ "CSPMessageUtils.cpp",
+ "DocShellMessageUtils.cpp",
+ "FilePickerParent.cpp",
+ "InProcessImpl.cpp",
+ "JSOracleChild.cpp",
+ "JSOracleParent.cpp",
+ "JSValidatorChild.cpp",
+ "JSValidatorParent.cpp",
+ "JSValidatorUtils.cpp",
+ "LoginDetectionService.cpp",
+ "MemMapSnapshot.cpp",
+ "MemoryReportRequest.cpp",
+ "MMPrinter.cpp",
+ "PermissionMessageUtils.cpp",
+ "PreallocatedProcessManager.cpp",
+ "ProcessActor.cpp",
+ "ProcessIsolation.cpp",
+ "ProcessPriorityManager.cpp",
+ "PropertyBagUtils.cpp",
+ "ReferrerInfoUtils.cpp",
+ "RefMessageBodyService.cpp",
+ "RemoteBrowser.cpp",
+ "RemoteWebProgressRequest.cpp",
+ "SharedMap.cpp",
+ "SharedMessageBody.cpp",
+ "SharedStringMap.cpp",
+ "StructuredCloneData.cpp",
+ "TabContext.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",
+ "VsyncMainChild.cpp",
+ "VsyncParent.cpp",
+ "VsyncWorkerChild.cpp",
+]
+
+PREPROCESSED_IPDL_SOURCES += [
+ "PBrowser.ipdl",
+ "PBrowserBridge.ipdl",
+ "PContent.ipdl",
+]
+
+IPDL_SOURCES += [
+ "DOMTypes.ipdlh",
+ "MemoryReportTypes.ipdlh",
+ "PColorPicker.ipdl",
+ "PContentPermission.ipdlh",
+ "PContentPermissionRequest.ipdl",
+ "PCycleCollectWithLogs.ipdl",
+ "PFilePicker.ipdl",
+ "PInProcess.ipdl",
+ "PJSOracle.ipdl",
+ "PJSValidator.ipdl",
+ "PLoginReputation.ipdl",
+ "PProcessHangMonitor.ipdl",
+ "PrefsTypes.ipdlh",
+ "PTabContext.ipdlh",
+ "PURLClassifier.ipdl",
+ "PURLClassifierInfo.ipdlh",
+ "PURLClassifierLocal.ipdl",
+ "PVsync.ipdl",
+ "PWindowGlobal.ipdl",
+ "ServiceWorkerConfiguration.ipdlh",
+ "WindowGlobalTypes.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/webrtc",
+ "/dom/media/webspeech/synth/ipc",
+ "/dom/security",
+ "/dom/storage",
+ "/extensions/spellcheck/src",
+ "/gfx/2d",
+ "/hal/sandbox",
+ "/js/xpconnect/loader",
+ "/js/xpconnect/src",
+ "/layout/base",
+ "/media/webrtc",
+ "/netwerk/base",
+ "/netwerk/dns",
+ "/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["MOZ_SANDBOX"] and CONFIG["OS_ARCH"] == "OpenBSD":
+ LOCAL_INCLUDES += [
+ "/xpcom/build",
+ ]
+
+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/JSProcessActor/browser.ini",
+ "tests/JSWindowActor/browser.ini",
+]
+
+MOCHITEST_CHROME_MANIFESTS += ["tests/chrome.ini"]
+MOCHITEST_MANIFESTS += ["tests/mochitest.ini"]
+XPCSHELL_TESTS_MANIFESTS += ["tests/xpcshell.ini"]
+
+if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
+ CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"]
+
+if CONFIG["FUZZING"] and CONFIG["FUZZING_INTERFACES"]:
+ TEST_DIRS += ["fuzztest"]
+
+# Add libFuzzer configuration directives
+include("/tools/fuzzing/libfuzzer-config.mozbuild")