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",
55 "ContentParent_NotifyUpdatedDictionaries.h",
57 "ContentProcessManager.h",
59 "DocShellMessageUtils.h",
61 "FilePickerMessageUtils.h",
68 "JSValidatorParent.h",
70 "LoginDetectionService.h",
72 "MemoryReportRequest.h",
74 "PageLoadEventUtils.h",
75 "PermissionMessageUtils.h",
79 "ReferrerInfoUtils.h",
80 "RefMessageBodyService.h",
83 "RemoteWebProgressRequest.h",
84 "SharedMessageBody.h",
88 "URLClassifierChild.h",
89 "URLClassifierParent.h",
90 "UserActivationIPCUtils.h",
95 "WindowGlobalActor.h",
96 "WindowGlobalChild.h",
97 "WindowGlobalParent.h",
101 "PreallocatedProcessManager.h",
102 "ProcessHangMonitor.h",
103 "ProcessHangMonitorIPC.h",
104 "ProcessPriorityManager.h",
108 "BrowserBridgeChild.cpp",
109 "BrowserBridgeHost.cpp",
110 "BrowserBridgeParent.cpp",
114 "ClonedErrorHolder.cpp",
115 "CoalescedInputData.cpp",
116 "CoalescedMouseData.cpp",
117 "CoalescedTouchData.cpp",
118 "CoalescedWheelData.cpp",
119 "ColorPickerParent.cpp",
121 "ContentProcess.cpp",
122 "ContentProcessManager.cpp",
123 "CSPMessageUtils.cpp",
124 "DocShellMessageUtils.cpp",
125 "FilePickerParent.cpp",
128 "JSOracleParent.cpp",
129 "JSValidatorChild.cpp",
130 "JSValidatorParent.cpp",
131 "JSValidatorUtils.cpp",
132 "LoginDetectionService.cpp",
133 "MemMapSnapshot.cpp",
134 "MemoryReportRequest.cpp",
136 "PermissionMessageUtils.cpp",
137 "PreallocatedProcessManager.cpp",
139 "ProcessIsolation.cpp",
140 "ProcessPriorityManager.cpp",
141 "PropertyBagUtils.cpp",
142 "ReferrerInfoUtils.cpp",
143 "RefMessageBodyService.cpp",
145 "RemoteWebProgressRequest.cpp",
147 "SharedMessageBody.cpp",
148 "SharedStringMap.cpp",
149 "StructuredCloneData.cpp",
151 "URLClassifierParent.cpp",
152 "WindowGlobalActor.cpp",
153 "WindowGlobalChild.cpp",
154 "WindowGlobalParent.cpp",
157 # ContentChild.cpp cannot be compiled in unified mode on linux due to Time conflict
160 "ProcessHangMonitor.cpp",
161 "VsyncMainChild.cpp",
163 "VsyncWorkerChild.cpp",
166 PREPROCESSED_IPDL_SOURCES += [
168 "PBrowserBridge.ipdl",
173 "CustomElementTypes.ipdlh",
175 "IPCTransferable.ipdlh",
176 "MemoryReportTypes.ipdlh",
178 "PContentPermission.ipdlh",
179 "PContentPermissionRequest.ipdl",
180 "PCycleCollectWithLogs.ipdl",
185 "PProcessHangMonitor.ipdl",
188 "PURLClassifier.ipdl",
189 "PURLClassifierInfo.ipdlh",
190 "PURLClassifierLocal.ipdl",
192 "PWindowGlobal.ipdl",
193 "ServiceWorkerConfiguration.ipdlh",
194 "WindowGlobalTypes.ipdlh",
197 include("/ipc/chromium/chromium-config.mozbuild")
199 FINAL_LIBRARY = "xul"
201 if CONFIG["MOZ_SANDBOX"] and (CONFIG["OS_TARGET"] in ["Darwin", "Linux"]):
216 "/dom/media/webspeech/synth/ipc",
219 "/extensions/spellcheck/src",
222 "/js/xpconnect/loader",
228 "/netwerk/protocol/http",
229 "/toolkit/components/printingui/ipc",
230 "/toolkit/crashreporter",
232 "/uriloader/exthandler",
238 if CONFIG["MOZ_SANDBOX"] and CONFIG["OS_ARCH"] == "WINNT":
240 "/security/sandbox/chromium",
241 "/security/sandbox/chromium-shim",
244 if CONFIG["MOZ_SANDBOX"] and CONFIG["OS_ARCH"] == "OpenBSD":
249 if CONFIG["OS_ARCH"] != "WINNT":
254 DEFINES["BIN_SUFFIX"] = '"%s"' % CONFIG["BIN_SUFFIX"]
256 DEFINES["MOZ_APP_NAME"] = '"%s"' % CONFIG["MOZ_APP_NAME"]
258 if CONFIG["MOZ_WIDGET_TOOLKIT"] == "android":
259 DEFINES["MOZ_ENABLE_FREETYPE"] = True
261 BROWSER_CHROME_MANIFESTS += [
262 "tests/browser.toml",
263 "tests/JSProcessActor/browser.toml",
264 "tests/JSWindowActor/browser.toml",
267 MOCHITEST_CHROME_MANIFESTS += ["tests/chrome.toml"]
268 MOCHITEST_MANIFESTS += ["tests/mochitest.toml"]
269 XPCSHELL_TESTS_MANIFESTS += ["tests/xpcshell.toml"]
271 if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
272 CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"]
274 # Add libFuzzer configuration directives
275 include("/tools/fuzzing/libfuzzer-config.mozbuild")