• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2022 Shenzhen Kaihong Digital Industry Development Co., Ltd.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at
5#
6#     http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14# deqp external vkutil build
15
16import("//build/ohos.gni")
17import("//third_party/vk-gl-cts/vk_gl_cts.gni")
18
19config("deqp_vk_package_config") {
20  cflags_cc = deqp_common_cflags_cc
21  defines = deqp_common_defines
22  defines += [
23    "_XOPEN_SOURCE=600",
24    "CTS_USES_VULKAN",
25  ]
26}
27
28vk_common_include_dirs = deqp_vk_common_include_dirs
29vk_common_include_dirs += [
30  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/api",
31  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/pipeline",
32  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/binding_model",
33  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/spirv_assembly",
34  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/shaderrender",
35  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/shaderexecutor",
36  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/shader_object",
37  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/memory",
38  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/ubo",
39  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/dynamic_state",
40  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/ssbo",
41  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/query_pool",
42  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/conditional_rendering",
43  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/draw",
44  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/device_group",
45  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/compute",
46  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/image",
47  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/wsi",
48  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/sparse_resources",
49  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/tessellation",
50  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/rasterization",
51  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/synchronization",
52  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/clipping",
53  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/fragment_ops",
54  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/texture",
55  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/geometry",
56  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/robustness",
57  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/renderpass",
58  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/multiview",
59  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/subgroups",
60  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/ycbcr",
61  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/protected_memory",
62  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/memory_model",
63  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/transform_feedback",
64  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/util",
65  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/amber",
66  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/imageless_framebuffer",
67  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/descriptor_indexing",
68  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/fragment_shader_interlock",
69  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/fragment_shading_rate",
70  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/modifiers",
71  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/ray_tracing",
72  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/ray_query",
73  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/postmortem",
74  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/reconvergence",
75  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/mesh_shader",
76  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/fragment_shading_barycentric",
77  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/video",
78  "//third_party/zlib",
79  "//third_party/spirv-headers/include",
80  "//third_party/vk-gl-cts/external/amber",
81  "//third_party/vk-gl-cts/build/include",
82  "//third_party/glslang",
83  "//third_party/spirv-tools/include",
84  "//third_party/spirv-tools/source",
85  "//third_party/vk-gl-cts/external/amber/src/include",
86]
87
88vk_common_deps = [
89  # "//third_party/glslang/OGLCompilersDLL:libdeqp_OGLCompiler",
90  "//third_party/glslang/SPIRV:libdeqp_spirv",
91  "//third_party/glslang/SPIRV:libdeqp_spvremapper",
92  "//third_party/glslang/glslang:libdeqp_GenericCodeGen",
93  "//third_party/glslang/glslang:libdeqp_MachineIndependent",
94  "//third_party/glslang/glslang:libdeqp_OSDependent",
95  "//third_party/glslang/glslang:libdeqp_glslang",
96  "//third_party/libpng:libpng",
97  "//third_party/spirv-tools:libdeqp_spirvtools",
98  "//third_party/spirv-tools/source/opt:libdeqp_spirvtools-opt",
99  "//third_party/vk-gl-cts/external/amber/src/src:libdeqp_amber",
100  "//third_party/vk-gl-cts/external/amber/src/src/vulkan:libdeqp_amberenginevulkan",
101  "//third_party/vk-gl-cts/external/vulkancts/framework/vulkan:libdeqp_vkutil",
102  "//third_party/vk-gl-cts/external/vulkancts/framework/vulkan:libdeqp_vkutilnoshader",
103  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/amber:libdeqp_vk_amber",
104  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/api:libdeqp_vk_api",
105  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/binding_model:libdeqp_vk_binding_model",
106  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/clipping:libdeqp_vk_clipping",
107  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/compute:libdeqp_vk_compute",
108  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/conditional_rendering:libdeqp_vk_conditional_rendering",
109  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/descriptor_indexing:libdeqp_vk_descriptor_indexing",
110  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/device_group:libdeqp_vk_device_group",
111  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/draw:libdeqp_vk_draw",
112  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/dynamic_state:libdeqp_vk_dynamic_state",
113  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/fragment_ops:libdeqp_vk_fragment_ops",
114  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/fragment_shader_interlock:libdeqp_vk_fragment_shader_interlock",
115  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/fragment_shading_barycentric:libdeqp_vk_fragment_shading_barycentric",
116  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/fragment_shading_rate:libdeqp_vk_fragment_shading_rate",
117  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/geometry:libdeqp_vk_geometry",
118  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/image:libdeqp_vk_image",
119  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/imageless_framebuffer:libdeqp_vk_imageless_framebuffer",
120  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/memory:libdeqp_vk_memory",
121  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/memory_model:libdeqp_vk_memory_model",
122  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/mesh_shader:libdeqp_vk_mesh_shader",
123  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/modifiers:libdeqp_vk_modifiers",
124  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/multiview:libdeqp_vk_multiview",
125  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/pipeline:libdeqp_vk_pipeline",
126  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/postmortem:libdeqp_vk_postmortem",
127  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/protected_memory:libdeqp_vk_protected_memory",
128  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/query_pool:libdeqp_vk_query_pool",
129  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/rasterization:libdeqp_vk_rasterization",
130  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/ray_query:libdeqp_vk_ray_query",
131  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/ray_tracing:libdeqp_vk_ray_tracing",
132  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/reconvergence:libdeqp_vk_reconvergence",
133  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/renderpass:libdeqp_vk_renderpass",
134  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/robustness:libdeqp_vk_robustness",
135  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/shader_object:libdeqp_vk_shader_object",
136  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/shaderexecutor:libdeqp_vk_shaderexecutor",
137  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/shaderrender:libdeqp_vk_shaderrender",
138  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/sparse_resources:libdeqp_vk_sparse_resources",
139  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/spirv_assembly:libdeqp_vk_spirv_assembly",
140  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/ssbo:libdeqp_vk_ssbo",
141  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/subgroups:libdeqp_vk_subgroups",
142  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/synchronization:libdeqp_vk_synchronization",
143  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/tessellation:libdeqp_vk_tessellation",
144  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/texture:libdeqp_vk_texture",
145  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/transform_feedback:libdeqp_vk_transform_feedback",
146  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/ubo:libdeqp_vk_ubo",
147  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/util:libdeqp_vk_util",
148
149  # "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/video:libdeqp_vk_video",
150  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/wsi:libdeqp_vk_wsi",
151  "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/ycbcr:libdeqp_vk_ycbcr",
152  "//third_party/vk-gl-cts/framework/common:libdeqp_tcutil",
153  "//third_party/vk-gl-cts/framework/delibs/debase:libdeqp_debase",
154  "//third_party/vk-gl-cts/framework/delibs/decpp:libdeqp_decpp",
155  "//third_party/vk-gl-cts/framework/delibs/depool:libdeqp_depool",
156  "//third_party/vk-gl-cts/framework/delibs/dethread:libdeqp_dethread",
157  "//third_party/vk-gl-cts/framework/delibs/deutil:libdeqp_deutil",
158  "//third_party/vk-gl-cts/framework/opengl:libdeqp_glutil",
159  "//third_party/vk-gl-cts/framework/opengl/wrapper:libdeqp_glwrapper",
160  "//third_party/vk-gl-cts/framework/qphelper:libdeqp_qphelper",
161  "//third_party/vk-gl-cts/framework/referencerenderer:libdeqp_referencerenderer",
162  "//third_party/vk-gl-cts/framework/xexml:libdeqp_xexml",
163  "//third_party/zlib:libz",
164]
165
166ohos_source_set("deqp_vk_package_source") {
167  sources = [
168    "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktCustomInstancesDevices.cpp",
169    "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktCustomInstancesDevices.hpp",
170    "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktInfoTests.cpp",
171    "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktInfoTests.hpp",
172    "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktShaderLibrary.cpp",
173    "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktShaderLibrary.hpp",
174    "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktTestCase.cpp",
175    "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktTestCase.hpp",
176    "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktTestCaseDefs.hpp",
177    "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktTestCaseUtil.cpp",
178    "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktTestCaseUtil.hpp",
179    "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktTestGroupUtil.cpp",
180    "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktTestGroupUtil.hpp",
181    "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktTestPackage.cpp",
182    "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktTestPackage.hpp",
183  ]
184
185  include_dirs = vk_common_include_dirs
186  deps = vk_common_deps
187  part_name = "acts"
188  subsystem_name = "xts"
189  configs = [ ":deqp_vk_package_config" ]
190}
191
192ohos_static_library("libdeqp_vk_package") {
193  deps = [ ":deqp_vk_package_source" ]
194  part_name = "acts"
195  subsystem_name = "xts"
196}
197
198ohos_executable("deqp_vk_execute") {
199  sources = [
200    "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktTestPackageEntry.cpp",
201    "//third_party/vk-gl-cts/framework/platform/ohos/vkMain.cpp",
202  ]
203  include_dirs = vk_common_include_dirs
204  include_dirs += [ "//third_party/vk-gl-cts/framework/platform/ohos" ]
205
206  deps = vk_common_deps
207  deps += [
208    ":libdeqp_vk_package",
209    "//third_party/vk-gl-cts/framework/platform:libdeqp_ohos_platform",
210  ]
211
212  configs = [ ":deqp_vk_package_config" ]
213  part_name = "acts"
214  subsystem_name = "xts"
215}
216
217ohos_executable("deqp_vk_build") {
218  sources = [ "//third_party/vk-gl-cts/external/vulkancts/modules/vulkan/vktBuildPrograms.cpp" ]
219
220  include_dirs = vk_common_include_dirs
221
222  deps = vk_common_deps
223  deps += [ ":libdeqp_vk_package" ]
224
225  configs = [ ":deqp_vk_package_config" ]
226  part_name = "acts"
227  subsystem_name = "xts"
228}
229