1 # -*- Mode: python; 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/.
8 BUG_COMPONENT = ("Core", "DOM: Content Processes")
12 TEST_DIRS += ["gtest"]
15 "nsIDOMProcessChild.idl",
16 "nsIDOMProcessParent.idl",
18 "nsILoginDetectionService.idl",
28 "ManifestMessagesChild.sys.mjs",
31 EXPORTS.mozilla.dom.ipc += [
35 "SharedMapChangeEvent.h",
38 "StructuredCloneData.h",
41 EXPORTS.mozilla.dom += [
42 "BrowserBridgeChild.h",
43 "BrowserBridgeHost.h",
44 "BrowserBridgeParent.h",
48 "ClonedErrorHolder.h",
49 "CoalescedInputData.h",
50 "CoalescedMouseData.h",
51 "CoalescedTouchData.h",
52 "CoalescedWheelData.h",
56 "ContentProcessManager.h",
58 "DocShellMessageUtils.h",
60 "FilePickerMessageUtils.h",
67 "JSValidatorParent.h",
69 "LoginDetectionService.h",
71 "MemoryReportRequest.h",
73 "PageLoadEventUtils.h",
74 "PermissionMessageUtils.h",
78 "ReferrerInfoUtils.h",
79 "RefMessageBodyService.h",
82 "RemoteWebProgressRequest.h",
83 "SharedMessageBody.h",
87 "URLClassifierChild.h",
88 "URLClassifierParent.h",
89 "UserActivationIPCUtils.h",
94 "WindowGlobalActor.h",
95 "WindowGlobalChild.h",
96 "WindowGlobalParent.h",
100 "PreallocatedProcessManager.h",
101 "ProcessHangMonitor.h",
102 "ProcessHangMonitorIPC.h",
103 "ProcessPriorityManager.h",
107 "BrowserBridgeChild.cpp",
108 "BrowserBridgeHost.cpp",
109 "BrowserBridgeParent.cpp",
113 "ClonedErrorHolder.cpp",
114 "CoalescedInputData.cpp",
115 "CoalescedMouseData.cpp",
116 "CoalescedTouchData.cpp",
117 "CoalescedWheelData.cpp",
118 "ColorPickerParent.cpp",
120 "ContentProcess.cpp",
121 "ContentProcessManager.cpp",
122 "CSPMessageUtils.cpp",
123 "DocShellMessageUtils.cpp",
124 "FilePickerParent.cpp",
127 "JSOracleParent.cpp",
128 "JSValidatorChild.cpp",
129 "JSValidatorParent.cpp",
130 "JSValidatorUtils.cpp",
131 "LoginDetectionService.cpp",
132 "MemMapSnapshot.cpp",
133 "MemoryReportRequest.cpp",
135 "PermissionMessageUtils.cpp",
136 "PreallocatedProcessManager.cpp",
138 "ProcessIsolation.cpp",
139 "ProcessPriorityManager.cpp",
140 "PropertyBagUtils.cpp",
141 "ReferrerInfoUtils.cpp",
142 "RefMessageBodyService.cpp",
144 "RemoteWebProgressRequest.cpp",
146 "SharedMessageBody.cpp",
147 "SharedStringMap.cpp",
148 "StructuredCloneData.cpp",
150 "URLClassifierParent.cpp",
151 "WindowGlobalActor.cpp",
152 "WindowGlobalChild.cpp",
153 "WindowGlobalParent.cpp",
156 # ContentChild.cpp cannot be compiled in unified mode on linux due to Time conflict
159 "ProcessHangMonitor.cpp",
160 "VsyncMainChild.cpp",
162 "VsyncWorkerChild.cpp",
165 PREPROCESSED_IPDL_SOURCES += [
167 "PBrowserBridge.ipdl",
172 "CustomElementTypes.ipdlh",
174 "IPCTransferable.ipdlh",
175 "MemoryReportTypes.ipdlh",
177 "PContentPermission.ipdlh",
178 "PContentPermissionRequest.ipdl",
179 "PCycleCollectWithLogs.ipdl",
184 "PProcessHangMonitor.ipdl",
187 "PURLClassifier.ipdl",
188 "PURLClassifierInfo.ipdlh",
189 "PURLClassifierLocal.ipdl",
191 "PWindowGlobal.ipdl",
192 "ServiceWorkerConfiguration.ipdlh",
193 "WindowGlobalTypes.ipdlh",
196 include("/ipc/chromium/chromium-config.mozbuild")
198 FINAL_LIBRARY = "xul"
200 if CONFIG["MOZ_SANDBOX"] and (CONFIG["OS_TARGET"] in ["Darwin", "Linux"]):
215 "/dom/media/webspeech/synth/ipc",
218 "/extensions/spellcheck/src",
221 "/js/xpconnect/loader",
227 "/netwerk/protocol/http",
228 "/toolkit/components/printingui/ipc",
229 "/toolkit/crashreporter",
231 "/uriloader/exthandler",
237 if CONFIG["MOZ_SANDBOX"] and CONFIG["OS_ARCH"] == "WINNT":
239 "/security/sandbox/chromium",
240 "/security/sandbox/chromium-shim",
243 if CONFIG["MOZ_SANDBOX"] and CONFIG["OS_ARCH"] == "OpenBSD":
248 if CONFIG["OS_ARCH"] != "WINNT":
253 DEFINES["BIN_SUFFIX"] = '"%s"' % CONFIG["BIN_SUFFIX"]
255 DEFINES["MOZ_APP_NAME"] = '"%s"' % CONFIG["MOZ_APP_NAME"]
257 if CONFIG["MOZ_WIDGET_TOOLKIT"] == "android":
258 DEFINES["MOZ_ENABLE_FREETYPE"] = True
260 JAR_MANIFESTS += ["jar.mn"]
262 BROWSER_CHROME_MANIFESTS += [
263 "tests/browser.toml",
264 "tests/JSProcessActor/browser.toml",
265 "tests/JSWindowActor/browser.toml",
268 MOCHITEST_CHROME_MANIFESTS += ["tests/chrome.toml"]
269 MOCHITEST_MANIFESTS += ["tests/mochitest.toml"]
270 XPCSHELL_TESTS_MANIFESTS += ["tests/xpcshell.toml"]
272 if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
273 CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"]
275 # Add libFuzzer configuration directives
276 include("/tools/fuzzing/libfuzzer-config.mozbuild")