Bug 1634779 - pt 2. Partially revert Bug 1603006 r=kmag
[gecko.git] / dom / ipc / moz.build
blob0aebb760c5ad8e4460f3e4c0af0a4a189abad0bd
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 XPIDL_SOURCES += [
11     'nsIContentChild.idl',
12     'nsIContentParent.idl',
13     'nsIHangReport.idl',
14     'nsIRemoteWebProgress.idl',
15     'nsIRemoteWebProgressRequest.idl',
18 XPIDL_MODULE = 'dom'
20 XPCOM_MANIFESTS += [
21     'components.conf',
24 EXTRA_JS_MODULES += [
25     'ManifestMessagesChild.jsm',
28 EXPORTS.mozilla.dom.ipc += [
29     'IdType.h',
30     'MemMapSnapshot.h',
31     'SharedMap.h',
32     'SharedMapChangeEvent.h',
33     'SharedStringMap.h',
34     'StringTable.h',
35     'StructuredCloneData.h',
38 EXPORTS.mozilla.dom += [
39     'BrowserBridgeChild.h',
40     'BrowserBridgeHost.h',
41     'BrowserBridgeParent.h',
42     'BrowserChild.h',
43     'BrowserHost.h',
44     'BrowserParent.h',
45     'ClonedErrorHolder.h',
46     'CoalescedInputData.h',
47     'CoalescedMouseData.h',
48     'CoalescedWheelData.h',
49     'ContentChild.h',
50     'ContentParent.h',
51     'ContentProcess.h',
52     'ContentProcessManager.h',
53     'CPOWManagerGetter.h',
54     'CSPMessageUtils.h',
55     'DocShellMessageUtils.h',
56     'EffectsInfo.h',
57     'FilePickerParent.h',
58     'JSActor.h',
59     'JSActorService.h',
60     'JSProcessActorChild.h',
61     'JSProcessActorParent.h',
62     'JSProcessActorProtocol.h',
63     'JSWindowActorChild.h',
64     'JSWindowActorParent.h',
65     'JSWindowActorProtocol.h',
66     'MaybeDiscarded.h',
67     'MemoryReportRequest.h',
68     'PermissionMessageUtils.h',
69     'ProcessActor.h',
70     'PropertyBagUtils.h',
71     'ReferrerInfoUtils.h',
72     'RefMessageBodyService.h',
73     'RemoteBrowser.h',
74     'RemoteWebProgress.h',
75     'RemoteWebProgressRequest.h',
76     'SharedMessageBody.h',
77     'TabContext.h',
78     'TabMessageUtils.h',
79     'URLClassifierChild.h',
80     'URLClassifierParent.h',
81     'UserActivationIPCUtils.h',
82     'WindowGlobalActor.h',
83     'WindowGlobalChild.h',
84     'WindowGlobalParent.h',
87 EXPORTS.mozilla += [
88     'PreallocatedProcessManager.h',
89     'ProcessHangMonitor.h',
90     'ProcessHangMonitorIPC.h',
91     'ProcessPriorityManager.h',
94 EXPORTS += [
95     'nsQueryActor.h',
98 UNIFIED_SOURCES += [
99     'BrowserBridgeChild.cpp',
100     'BrowserBridgeHost.cpp',
101     'BrowserBridgeParent.cpp',
102     'BrowserChild.cpp',
103     'BrowserHost.cpp',
104     'BrowserParent.cpp',
105     'ClonedErrorHolder.cpp',
106     'CoalescedMouseData.cpp',
107     'CoalescedWheelData.cpp',
108     'ColorPickerParent.cpp',
109     'ContentParent.cpp',
110     'ContentProcess.cpp',
111     'ContentProcessManager.cpp',
112     'CSPMessageUtils.cpp',
113     'DocShellMessageUtils.cpp',
114     'FilePickerParent.cpp',
115     'JSActor.cpp',
116     'JSActorService.cpp',
117     'JSProcessActorChild.cpp',
118     'JSProcessActorParent.cpp',
119     'JSProcessActorProtocol.cpp',
120     'JSWindowActorChild.cpp',
121     'JSWindowActorParent.cpp',
122     'JSWindowActorProtocol.cpp',
123     'MemMapSnapshot.cpp',
124     'MemoryReportRequest.cpp',
125     'MMPrinter.cpp',
126     'PermissionMessageUtils.cpp',
127     'PreallocatedProcessManager.cpp',
128     'ProcessActor.cpp',
129     'ProcessPriorityManager.cpp',
130     'PropertyBagUtils.cpp',
131     'ReferrerInfoUtils.cpp',
132     'RefMessageBodyService.cpp',
133     'RemoteBrowser.cpp',
134     'RemoteWebProgress.cpp',
135     'RemoteWebProgressRequest.cpp',
136     'SharedMap.cpp',
137     'SharedMessageBody.cpp',
138     'SharedStringMap.cpp',
139     'StructuredCloneData.cpp',
140     'TabContext.cpp',
141     'TabMessageUtils.cpp',
142     'URLClassifierParent.cpp',
143     'WindowGlobalActor.cpp',
144     'WindowGlobalChild.cpp',
145     'WindowGlobalParent.cpp',
148 # ContentChild.cpp cannot be compiled in unified mode on  linux due to Time conflict
149 SOURCES += [
150     'ContentChild.cpp',
151     'ProcessHangMonitor.cpp',
154 PREPROCESSED_IPDL_SOURCES += [
155     'PBrowser.ipdl',
156     'PBrowserBridge.ipdl',
157     'PContent.ipdl',
160 IPDL_SOURCES += [
161     'DOMTypes.ipdlh',
162     'MemoryReportTypes.ipdlh',
163     'PColorPicker.ipdl',
164     'PContentPermission.ipdlh',
165     'PContentPermissionRequest.ipdl',
166     'PCycleCollectWithLogs.ipdl',
167     'PFilePicker.ipdl',
168     'PLoginReputation.ipdl',
169     'PPluginWidget.ipdl',
170     'PProcessHangMonitor.ipdl',
171     'PrefsTypes.ipdlh',
172     'PTabContext.ipdlh',
173     'PURLClassifier.ipdl',
174     'PURLClassifierInfo.ipdlh',
175     'PURLClassifierLocal.ipdl',
176     'PWindowGlobal.ipdl',
177     'ServiceWorkerConfiguration.ipdlh',
180 include('/ipc/chromium/chromium-config.mozbuild')
182 FINAL_LIBRARY = 'xul'
184 if CONFIG['MOZ_SANDBOX'] and (CONFIG['OS_TARGET'] in ['Darwin', 'Linux']):
185     USE_LIBS += [
186         'mozsandbox',
187     ]
189 LOCAL_INCLUDES += [
190     '/caps',
191     '/chrome',
192     '/docshell/base',
193     '/dom/base',
194     '/dom/bindings',
195     '/dom/events',
196     '/dom/filesystem',
197     '/dom/geolocation',
198     '/dom/media/webspeech/synth/ipc',
199     '/dom/security',
200     '/dom/storage',
201     '/extensions/spellcheck/src',
202     '/gfx/2d',
203     '/hal/sandbox',
204     '/js/xpconnect/loader',
205     '/js/xpconnect/src',
206     '/layout/base',
207     '/media/webrtc',
208     '/netwerk/base',
209     '/netwerk/protocol/http',
210     '/toolkit/components/printingui/ipc',
211     '/toolkit/crashreporter',
212     '/toolkit/xre',
213     '/uriloader/exthandler',
214     '/widget',
215     '/xpcom/base',
216     '/xpcom/threads',
219 if CONFIG['MOZ_SANDBOX'] and CONFIG['OS_ARCH'] == 'WINNT':
220     LOCAL_INCLUDES += [
221         '/security/sandbox/chromium',
222         '/security/sandbox/chromium-shim',
223     ]
225 if CONFIG['OS_ARCH'] != 'WINNT':
226     LOCAL_INCLUDES += [
227         '/modules/libjar',
228     ]
230 DEFINES['BIN_SUFFIX'] = '"%s"' % CONFIG['BIN_SUFFIX']
232 DEFINES['MOZ_APP_NAME'] = '"%s"' % CONFIG['MOZ_APP_NAME']
234 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
235     DEFINES['MOZ_ENABLE_FREETYPE'] = True
237 JAR_MANIFESTS += ['jar.mn']
239 BROWSER_CHROME_MANIFESTS += [
240     'tests/browser.ini',
241     'tests/JSProcessActor/browser.ini',
242     'tests/JSWindowActor/browser.ini',
245 MOCHITEST_CHROME_MANIFESTS += ['tests/chrome.ini']
246 MOCHITEST_MANIFESTS += ['tests/mochitest.ini']
247 XPCSHELL_TESTS_MANIFESTS += ['tests/xpcshell.ini']
249 CXXFLAGS += CONFIG['TK_CFLAGS']
251 if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
252     CXXFLAGS += ['-Wno-error=shadow']
254 if CONFIG['FUZZING'] and CONFIG['FUZZING_INTERFACES']:
255     TEST_DIRS += [
256         'fuzztest'
257     ]
259 # Add libFuzzer configuration directives
260 include('/tools/fuzzing/libfuzzer-config.mozbuild')