• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2022 The ANGLE Project Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4import("../../../../gni/angle.gni")
5
6vulkan_backend_sources = [
7  "AllocatorHelperPool.cpp",
8  "AllocatorHelperPool.h",
9  "AllocatorHelperRing.cpp",
10  "AllocatorHelperRing.h",
11  "BufferVk.cpp",
12  "BufferVk.h",
13  "CommandProcessor.cpp",
14  "CommandProcessor.h",
15  "CompilerVk.cpp",
16  "CompilerVk.h",
17  "ContextVk.cpp",
18  "ContextVk.h",
19  "DebugAnnotatorVk.cpp",
20  "DebugAnnotatorVk.h",
21  "DeviceVk.cpp",
22  "DeviceVk.h",
23  "DisplayVk.cpp",
24  "DisplayVk.h",
25  "DisplayVk_api.h",
26  "FenceNVVk.cpp",
27  "FenceNVVk.h",
28  "FramebufferVk.cpp",
29  "FramebufferVk.h",
30  "ImageVk.cpp",
31  "ImageVk.h",
32  "MemoryObjectVk.cpp",
33  "MemoryObjectVk.h",
34  "MemoryTracking.cpp",
35  "MemoryTracking.h",
36  "OverlayVk.cpp",
37  "OverlayVk.h",
38  "PersistentCommandPool.cpp",
39  "PersistentCommandPool.h",
40  "ProgramExecutableVk.cpp",
41  "ProgramExecutableVk.h",
42  "ProgramPipelineVk.cpp",
43  "ProgramPipelineVk.h",
44  "ProgramVk.cpp",
45  "ProgramVk.h",
46  "QueryVk.cpp",
47  "QueryVk.h",
48  "RenderTargetVk.cpp",
49  "RenderTargetVk.h",
50  "RenderbufferVk.cpp",
51  "RenderbufferVk.h",
52  "RendererVk.cpp",
53  "RendererVk.h",
54  "ResourceVk.cpp",
55  "ResourceVk.h",
56  "SamplerVk.cpp",
57  "SamplerVk.h",
58  "SecondaryCommandBuffer.cpp",
59  "SecondaryCommandBuffer.h",
60  "SecondaryCommandPool.cpp",
61  "SecondaryCommandPool.h",
62  "SemaphoreVk.cpp",
63  "SemaphoreVk.h",
64  "ShaderInterfaceVariableInfoMap.cpp",
65  "ShaderInterfaceVariableInfoMap.h",
66  "ShaderVk.cpp",
67  "ShaderVk.h",
68  "ShareGroupVk.cpp",
69  "ShareGroupVk.h",
70  "Suballocation.cpp",
71  "Suballocation.h",
72  "SurfaceVk.cpp",
73  "SurfaceVk.h",
74  "SyncVk.cpp",
75  "SyncVk.h",
76  "TextureVk.cpp",
77  "TextureVk.h",
78  "TransformFeedbackVk.cpp",
79  "TransformFeedbackVk.h",
80  "UtilsVk.cpp",
81  "UtilsVk.h",
82  "VertexArrayVk.cpp",
83  "VertexArrayVk.h",
84  "VkImageImageSiblingVk.cpp",
85  "VkImageImageSiblingVk.h",
86  "VulkanSecondaryCommandBuffer.cpp",
87  "VulkanSecondaryCommandBuffer.h",
88  "android/vk_android_utils.cpp",
89  "android/vk_android_utils.h",
90  "spv_utils.cpp",
91  "spv_utils.h",
92  "vk_cache_utils.cpp",
93  "vk_cache_utils.h",
94  "vk_caps_utils.cpp",
95  "vk_caps_utils.h",
96  "vk_command_buffer_utils.h",
97  "vk_format_table_autogen.cpp",
98  "vk_format_utils.cpp",
99  "vk_format_utils.h",
100  "vk_helpers.cpp",
101  "vk_helpers.h",
102  "vk_internal_shaders_autogen.cpp",
103  "vk_internal_shaders_autogen.h",
104  "vk_mandatory_format_support_table_autogen.cpp",
105  "vk_utils.cpp",
106  "vk_utils.h",
107  "vk_wrapper.h",
108]
109
110if (angle_enable_cl) {
111  vulkan_backend_sources += [
112    "CLCommandQueueVk.cpp",
113    "CLCommandQueueVk.h",
114    "CLContextVk.cpp",
115    "CLContextVk.h",
116    "CLDeviceVk.cpp",
117    "CLDeviceVk.h",
118    "CLEventVk.cpp",
119    "CLEventVk.h",
120    "CLKernelVk.cpp",
121    "CLKernelVk.h",
122    "CLMemoryVk.cpp",
123    "CLMemoryVk.h",
124    "CLPlatformVk.cpp",
125    "CLPlatformVk.h",
126    "CLProgramVk.cpp",
127    "CLProgramVk.h",
128    "CLSamplerVk.cpp",
129    "CLSamplerVk.h",
130    "cl_types.h",
131  ]
132}
133
134if (angle_use_vulkan_null_display) {
135  vulkan_backend_sources += [
136    "null/DisplayVkNull.cpp",
137    "null/DisplayVkNull.h",
138  ]
139}
140
141if (is_linux || is_chromeos) {
142  vulkan_backend_sources += [
143    "linux/DeviceVkLinux.cpp",
144    "linux/DeviceVkLinux.h",
145    "linux/DisplayVkLinux.cpp",
146    "linux/DisplayVkLinux.h",
147    "linux/DmaBufImageSiblingVkLinux.cpp",
148    "linux/DmaBufImageSiblingVkLinux.h",
149    "linux/display/DisplayVkSimple.cpp",
150    "linux/display/DisplayVkSimple.h",
151    "linux/display/WindowSurfaceVkSimple.cpp",
152    "linux/display/WindowSurfaceVkSimple.h",
153    "linux/headless/DisplayVkHeadless.cpp",
154    "linux/headless/DisplayVkHeadless.h",
155    "linux/headless/WindowSurfaceVkHeadless.cpp",
156    "linux/headless/WindowSurfaceVkHeadless.h",
157  ]
158}
159
160if (is_android) {
161  vulkan_backend_sources += [
162    "android/AHBFunctions.cpp",
163    "android/AHBFunctions.h",
164    "android/DisplayVkAndroid.cpp",
165    "android/DisplayVkAndroid.h",
166    "android/HardwareBufferImageSiblingVkAndroid.cpp",
167    "android/HardwareBufferImageSiblingVkAndroid.h",
168    "android/WindowSurfaceVkAndroid.cpp",
169    "android/WindowSurfaceVkAndroid.h",
170  ]
171}
172
173if (is_win) {
174  vulkan_backend_sources += [
175    "win32/DisplayVkWin32.cpp",
176    "win32/DisplayVkWin32.h",
177    "win32/WindowSurfaceVkWin32.cpp",
178    "win32/WindowSurfaceVkWin32.h",
179  ]
180}
181
182if (angle_use_x11) {
183  vulkan_backend_sources += [
184    "linux/xcb/DisplayVkXcb.cpp",
185    "linux/xcb/DisplayVkXcb.h",
186    "linux/xcb/WindowSurfaceVkXcb.cpp",
187    "linux/xcb/WindowSurfaceVkXcb.h",
188  ]
189}
190
191if (angle_use_wayland) {
192  vulkan_backend_sources += [
193    "linux/wayland/DisplayVkWayland.cpp",
194    "linux/wayland/DisplayVkWayland.h",
195    "linux/wayland/WindowSurfaceVkWayland.cpp",
196    "linux/wayland/WindowSurfaceVkWayland.h",
197  ]
198}
199
200if (angle_has_build && angle_use_gbm) {
201  vulkan_backend_sources += [
202    "linux/gbm/DisplayVkGbm.cpp",
203    "linux/gbm/DisplayVkGbm.h",
204  ]
205}
206
207if (is_fuchsia) {
208  vulkan_backend_sources += [
209    "fuchsia/DisplayVkFuchsia.cpp",
210    "fuchsia/DisplayVkFuchsia.h",
211    "fuchsia/WindowSurfaceVkFuchsia.cpp",
212    "fuchsia/WindowSurfaceVkFuchsia.h",
213  ]
214}
215
216if (is_ggp) {
217  vulkan_backend_sources += [
218    "ggp/DisplayVkGGP.cpp",
219    "ggp/DisplayVkGGP.h",
220    "ggp/WindowSurfaceVkGGP.cpp",
221    "ggp/WindowSurfaceVkGGP.h",
222  ]
223}
224
225if (is_mac) {
226  vulkan_backend_sources += [
227    "mac/DisplayVkMac.h",
228    "mac/DisplayVkMac.mm",
229    "mac/IOSurfaceSurfaceVkMac.h",
230    "mac/IOSurfaceSurfaceVkMac.mm",
231    "mac/WindowSurfaceVkMac.h",
232    "mac/WindowSurfaceVkMac.mm",
233  ]
234}
235