Bug 1886946: Remove incorrect assertion that buffer is not-pinned. r=sfink
[gecko.git] / dom / ipc / moz.build
blob35b6039d894c2354f6a1aad060beb1722e73ff27
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/.
7 with Files("**"):
8     BUG_COMPONENT = ("Core", "DOM: Content Processes")
10 DIRS += ["jsactor"]
12 TEST_DIRS += ["gtest"]
14 XPIDL_SOURCES += [
15     "nsIDOMProcessChild.idl",
16     "nsIDOMProcessParent.idl",
17     "nsIHangReport.idl",
18     "nsILoginDetectionService.idl",
21 XPIDL_MODULE = "dom"
23 XPCOM_MANIFESTS += [
24     "components.conf",
27 EXTRA_JS_MODULES += [
28     "ManifestMessagesChild.sys.mjs",
31 EXPORTS.mozilla.dom.ipc += [
32     "IdType.h",
33     "MemMapSnapshot.h",
34     "SharedMap.h",
35     "SharedMapChangeEvent.h",
36     "SharedStringMap.h",
37     "StringTable.h",
38     "StructuredCloneData.h",
41 EXPORTS.mozilla.dom += [
42     "BrowserBridgeChild.h",
43     "BrowserBridgeHost.h",
44     "BrowserBridgeParent.h",
45     "BrowserChild.h",
46     "BrowserHost.h",
47     "BrowserParent.h",
48     "ClonedErrorHolder.h",
49     "CoalescedInputData.h",
50     "CoalescedMouseData.h",
51     "CoalescedTouchData.h",
52     "CoalescedWheelData.h",
53     "ContentChild.h",
54     "ContentParent.h",
55     "ContentParent_NotifyUpdatedDictionaries.h",
56     "ContentProcess.h",
57     "ContentProcessManager.h",
58     "CSPMessageUtils.h",
59     "DocShellMessageUtils.h",
60     "EffectsInfo.h",
61     "FilePickerMessageUtils.h",
62     "FilePickerParent.h",
63     "InProcessChild.h",
64     "InProcessParent.h",
65     "JSOracleChild.h",
66     "JSOracleParent.h",
67     "JSValidatorChild.h",
68     "JSValidatorParent.h",
69     "JSValidatorUtils.h",
70     "LoginDetectionService.h",
71     "MaybeDiscarded.h",
72     "MemoryReportRequest.h",
73     "NativeThreadId.h",
74     "PageLoadEventUtils.h",
75     "PermissionMessageUtils.h",
76     "ProcessActor.h",
77     "ProcessIsolation.h",
78     "PropertyBagUtils.h",
79     "ReferrerInfoUtils.h",
80     "RefMessageBodyService.h",
81     "RemoteBrowser.h",
82     "RemoteType.h",
83     "RemoteWebProgressRequest.h",
84     "SharedMessageBody.h",
85     "TabContext.h",
86     "TabMessageTypes.h",
87     "TabMessageUtils.h",
88     "URLClassifierChild.h",
89     "URLClassifierParent.h",
90     "UserActivationIPCUtils.h",
91     "VsyncChild.h",
92     "VsyncMainChild.h",
93     "VsyncParent.h",
94     "VsyncWorkerChild.h",
95     "WindowGlobalActor.h",
96     "WindowGlobalChild.h",
97     "WindowGlobalParent.h",
100 EXPORTS.mozilla += [
101     "PreallocatedProcessManager.h",
102     "ProcessHangMonitor.h",
103     "ProcessHangMonitorIPC.h",
104     "ProcessPriorityManager.h",
107 UNIFIED_SOURCES += [
108     "BrowserBridgeChild.cpp",
109     "BrowserBridgeHost.cpp",
110     "BrowserBridgeParent.cpp",
111     "BrowserChild.cpp",
112     "BrowserHost.cpp",
113     "BrowserParent.cpp",
114     "ClonedErrorHolder.cpp",
115     "CoalescedInputData.cpp",
116     "CoalescedMouseData.cpp",
117     "CoalescedTouchData.cpp",
118     "CoalescedWheelData.cpp",
119     "ColorPickerParent.cpp",
120     "ContentParent.cpp",
121     "ContentProcess.cpp",
122     "ContentProcessManager.cpp",
123     "CSPMessageUtils.cpp",
124     "DocShellMessageUtils.cpp",
125     "FilePickerParent.cpp",
126     "InProcessImpl.cpp",
127     "JSOracleChild.cpp",
128     "JSOracleParent.cpp",
129     "JSValidatorChild.cpp",
130     "JSValidatorParent.cpp",
131     "JSValidatorUtils.cpp",
132     "LoginDetectionService.cpp",
133     "MemMapSnapshot.cpp",
134     "MemoryReportRequest.cpp",
135     "MMPrinter.cpp",
136     "PermissionMessageUtils.cpp",
137     "PreallocatedProcessManager.cpp",
138     "ProcessActor.cpp",
139     "ProcessIsolation.cpp",
140     "ProcessPriorityManager.cpp",
141     "PropertyBagUtils.cpp",
142     "ReferrerInfoUtils.cpp",
143     "RefMessageBodyService.cpp",
144     "RemoteBrowser.cpp",
145     "RemoteWebProgressRequest.cpp",
146     "SharedMap.cpp",
147     "SharedMessageBody.cpp",
148     "SharedStringMap.cpp",
149     "StructuredCloneData.cpp",
150     "TabContext.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
158 SOURCES += [
159     "ContentChild.cpp",
160     "ProcessHangMonitor.cpp",
161     "VsyncMainChild.cpp",
162     "VsyncParent.cpp",
163     "VsyncWorkerChild.cpp",
166 PREPROCESSED_IPDL_SOURCES += [
167     "PBrowser.ipdl",
168     "PBrowserBridge.ipdl",
169     "PContent.ipdl",
172 IPDL_SOURCES += [
173     "CustomElementTypes.ipdlh",
174     "DOMTypes.ipdlh",
175     "IPCTransferable.ipdlh",
176     "MemoryReportTypes.ipdlh",
177     "PColorPicker.ipdl",
178     "PContentPermission.ipdlh",
179     "PContentPermissionRequest.ipdl",
180     "PCycleCollectWithLogs.ipdl",
181     "PFilePicker.ipdl",
182     "PInProcess.ipdl",
183     "PJSOracle.ipdl",
184     "PJSValidator.ipdl",
185     "PProcessHangMonitor.ipdl",
186     "PrefsTypes.ipdlh",
187     "PTabContext.ipdlh",
188     "PURLClassifier.ipdl",
189     "PURLClassifierInfo.ipdlh",
190     "PURLClassifierLocal.ipdl",
191     "PVsync.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"]):
202     USE_LIBS += [
203         "mozsandbox",
204     ]
206 LOCAL_INCLUDES += [
207     "/caps",
208     "/chrome",
209     "/docshell/base",
210     "/dom/base",
211     "/dom/bindings",
212     "/dom/events",
213     "/dom/filesystem",
214     "/dom/geolocation",
215     "/dom/media/webrtc",
216     "/dom/media/webspeech/synth/ipc",
217     "/dom/security",
218     "/dom/storage",
219     "/extensions/spellcheck/src",
220     "/gfx/2d",
221     "/hal/sandbox",
222     "/js/xpconnect/loader",
223     "/js/xpconnect/src",
224     "/layout/base",
225     "/media/webrtc",
226     "/netwerk/base",
227     "/netwerk/dns",
228     "/netwerk/protocol/http",
229     "/toolkit/components/printingui/ipc",
230     "/toolkit/crashreporter",
231     "/toolkit/xre",
232     "/uriloader/exthandler",
233     "/widget",
234     "/xpcom/base",
235     "/xpcom/threads",
238 if CONFIG["MOZ_SANDBOX"] and CONFIG["OS_ARCH"] == "WINNT":
239     LOCAL_INCLUDES += [
240         "/security/sandbox/chromium",
241         "/security/sandbox/chromium-shim",
242     ]
244 if CONFIG["MOZ_SANDBOX"] and CONFIG["OS_ARCH"] == "OpenBSD":
245     LOCAL_INCLUDES += [
246         "/xpcom/build",
247     ]
249 if CONFIG["OS_ARCH"] != "WINNT":
250     LOCAL_INCLUDES += [
251         "/modules/libjar",
252     ]
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")