3 set(DEQP_INL_DIR ${PROJECT_BINARY_DIR}/external/vulkancts/framework/vulkan)
6 add_subdirectory(pipeline)
7 add_subdirectory(binding_model)
8 add_subdirectory(spirv_assembly)
9 add_subdirectory(shaderrender)
10 add_subdirectory(shaderexecutor)
11 add_subdirectory(memory)
13 add_subdirectory(dynamic_state)
14 add_subdirectory(ssbo)
15 add_subdirectory(query_pool)
16 add_subdirectory(conditional_rendering)
17 add_subdirectory(draw)
18 add_subdirectory(device_group)
19 add_subdirectory(compute)
20 add_subdirectory(image)
22 add_subdirectory(sparse_resources)
23 add_subdirectory(tessellation)
24 add_subdirectory(rasterization)
25 add_subdirectory(synchronization)
26 add_subdirectory(clipping)
27 add_subdirectory(fragment_ops)
28 add_subdirectory(geometry)
29 add_subdirectory(texture)
30 add_subdirectory(robustness)
31 add_subdirectory(renderpass)
32 add_subdirectory(multiview)
33 add_subdirectory(subgroups)
34 add_subdirectory(ycbcr)
35 add_subdirectory(protected_memory)
36 add_subdirectory(memory_model)
37 add_subdirectory(transform_feedback)
38 add_subdirectory(util)
39 add_subdirectory(amber)
40 add_subdirectory(imageless_framebuffer)
41 add_subdirectory(descriptor_indexing)
42 add_subdirectory(fragment_shader_interlock)
43 add_subdirectory(modifiers)
44 add_subdirectory(ray_tracing)
45 add_subdirectory(ray_query)
46 add_subdirectory(postmortem)
47 add_subdirectory(fragment_shading_rate)
48 add_subdirectory(reconvergence)
49 add_subdirectory(mesh_shader)
50 add_subdirectory(fragment_shading_barycentric)
52 add_subdirectory(video)
92 fragment_shader_interlock
100 fragment_shading_barycentric
120 vktCustomInstancesDevices.cpp
121 vktCustomInstancesDevices.hpp
130 deqp-vk-binding-model
131 deqp-vk-spirv-assembly
133 deqp-vk-shaderexecutor
136 deqp-vk-dynamic-state
139 deqp-vk-conditional-rendering
145 deqp-vk-sparse-resources
147 deqp-vk-rasterization
148 deqp-vk-synchronization
158 deqp-vk-protected-memory
161 deqp-vk-imageless-framebuffer
162 deqp-vk-transform-feedback
163 deqp-vk-descriptor-indexing
164 deqp-vk-fragment-shader-interlock
169 deqp-vk-fragment-shading-rate
170 deqp-vk-reconvergence
172 deqp-vk-fragment-shading-barycentric
182 deqp-vksc-binding-model
183 deqp-vksc-spirv-assembly
184 deqp-vksc-shaderrender
185 deqp-vksc-shaderexecutor
188 deqp-vksc-dynamic-state
191 #x deqp-vksc-conditional-rendering
193 deqp-vksc-device-group
197 #x deqp-vksc-sparse-resources
198 deqp-vksc-tessellation
199 deqp-vksc-rasterization
200 deqp-vksc-synchronization
202 deqp-vksc-fragment-ops
206 deqp-vksc-render-pass
210 deqp-vksc-protected-memory
211 deqp-vksc-memory-model
213 deqp-vksc-imageless-framebuffer
214 #x deqp-vksc-transform-feedback
215 deqp-vksc-descriptor-indexing
216 deqp-vksc-fragment-shader-interlock
217 #x deqp-vksc-modifiers
218 #x deqp-vksc-ray-tracing
219 #x deqp-vksc-ray-query
220 #x deqp-vksc-postmortem
221 deqp-vksc-fragment-shading-rate
226 if (DE_COMPILER_IS_MSC AND (DE_PTR_SIZE EQUAL 4))
227 set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /LARGEADDRESSAWARE")
230 PCH(DEQP_VK_SRCS pch.cpp)
232 add_deqp_module(deqp-vk "${DEQP_VK_SRCS}" "${DEQP_VK_LIBS}" "tcutil-platform" vktTestPackageEntry.cpp )
234 add_deqp_module_skip_android(deqp-vksc "${DEQP_VK_SRCS}" "${DEQP_VKSC_LIBS}" "tcutil-sc-platform" vktTestPackageEntrySC.cpp)
235 target_include_directories(deqp-vksc-package BEFORE PUBLIC ${CMAKE_SOURCE_DIR}/external/vulkancts/framework/vulkan/generated/vulkansc)
236 if (NOT DE_OS_IS_ANDROID AND NOT DE_OS_IS_IOS)
237 target_include_directories(deqp-vksc BEFORE PUBLIC ${CMAKE_SOURCE_DIR}/external/vulkancts/framework/vulkan/generated/vulkansc)
240 add_data_dir(deqp-vk ../../data/vulkan vulkan)
241 add_data_dir(deqp-vk ../../mustpass/main/vk-default vk-default)
243 # add all directories containing android mustpass
244 file(GLOB PATHS_MATCHING_PATTERN ${CMAKE_SOURCE_DIR}/android/cts/master/vk-*/)
245 FOREACH(FOUND_PATH ${PATHS_MATCHING_PATTERN})
246 IF(IS_DIRECTORY ${FOUND_PATH})
247 SET(LAST_DIRECTORY "")
248 file(RELATIVE_PATH LAST_DIRECTORY ${CMAKE_SOURCE_DIR}/android/cts/master ${FOUND_PATH})
249 add_data_dir(deqp-vk ../../../../android/cts/master/${LAST_DIRECTORY} ${LAST_DIRECTORY})
253 set(BINARY_COPY_DIR "./")
255 # Video parser used in vulkan video won't be part of android target
257 add_data_dir(deqp-vk ../../../video-parser/src/vk_video_decoder/bin/libs/nv_vkvideo_parser/wddm2_amd64_release ${BINARY_COPY_DIR})
258 elseif(DE_OS_IS_UNIX)
259 add_data_dir(deqp-vk ../../../video-parser/src/vk_video_decoder/bin/libs/nv_vkvideo_parser/linux_amd64_release ${BINARY_COPY_DIR})
263 add_data_dir(deqp-vk ../../../ffmpeg/src/bin ${BINARY_COPY_DIR})
266 if (DE_OS_IS_WIN32 OR DE_OS_IS_UNIX OR DE_OS_IS_OSX)
267 add_executable(vk-build-programs vktBuildPrograms.cpp)
268 target_link_libraries(vk-build-programs deqp-vk${MODULE_LIB_TARGET_POSTFIX})