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/.
6
7with Files('**'):
8    BUG_COMPONENT = ('Core', 'Graphics: Layers')
9
10EXPORTS.mozilla += [
11    'D3DMessageUtils.h',
12    'GfxMessageUtils.h'
13]
14
15EXPORTS.mozilla.gfx += [
16    'CrossProcessPaint.h',
17    'GPUChild.h',
18    'GPUParent.h',
19    'GPUProcessHost.h',
20    'GPUProcessImpl.h',
21    'GPUProcessListener.h',
22    'GPUProcessManager.h',
23    'SharedDIB.h',
24    'VsyncBridgeChild.h',
25    'VsyncBridgeParent.h',
26    'VsyncIOThreadHolder.h',
27]
28
29EXPORTS.mozilla.layers += [
30    'CompositorOptions.h',
31    'CompositorSession.h',
32    'InProcessCompositorSession.h',
33    'RemoteCompositorSession.h',
34]
35
36EXPORTS.mozilla.widget += [
37    'CompositorWidgetVsyncObserver.h',
38]
39
40if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows':
41    EXPORTS.mozilla.gfx += [
42        'SharedDIBSurface.h',
43        'SharedDIBWin.h',
44    ]
45    UNIFIED_SOURCES += [
46        'SharedDIBSurface.cpp',
47        'SharedDIBWin.cpp',
48    ]
49
50UNIFIED_SOURCES += [
51    'CompositorSession.cpp',
52    'CompositorWidgetVsyncObserver.cpp',
53    'CrossProcessPaint.cpp',
54    'D3DMessageUtils.cpp',
55    'GPUChild.cpp',
56    'GPUProcessHost.cpp',
57    'GPUProcessImpl.cpp',
58    'GPUProcessManager.cpp',
59    'InProcessCompositorSession.cpp',
60    'RemoteCompositorSession.cpp',
61    'SharedDIB.cpp',
62    'VsyncBridgeChild.cpp',
63    'VsyncBridgeParent.cpp',
64    'VsyncIOThreadHolder.cpp',
65]
66
67SOURCES += [
68    'GPUParent.cpp',
69]
70
71IPDL_SOURCES = [
72    'GraphicsMessages.ipdlh',
73    'PVsyncBridge.ipdl',
74]
75
76PREPROCESSED_IPDL_SOURCES += [
77    'PGPU.ipdl',
78]
79
80LOCAL_INCLUDES += [
81    '/dom/ipc',
82    '/toolkit/crashreporter',
83    '/xpcom/threads',
84]
85
86include('/ipc/chromium/chromium-config.mozbuild')
87
88FINAL_LIBRARY = 'xul'
89
90CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
91CXXFLAGS += CONFIG['TK_CFLAGS']
92
93LOCAL_INCLUDES += CONFIG['SKIA_INCLUDES']
94