Merge pull request #61 from imirkin/master
[platform/upstream/VK-GL-CTS.git] / external / vulkancts / modules / vulkan / CMakeLists.txt
1 # dEQP-VK
2
3 add_subdirectory(api)
4 add_subdirectory(pipeline)
5 add_subdirectory(binding_model)
6 add_subdirectory(spirv_assembly)
7 add_subdirectory(shaderrender)
8 add_subdirectory(shaderexecutor)
9 add_subdirectory(memory)
10 add_subdirectory(ubo)
11 add_subdirectory(dynamic_state)
12 add_subdirectory(ssbo)
13 add_subdirectory(query_pool)
14 add_subdirectory(draw)
15 add_subdirectory(compute)
16 add_subdirectory(image)
17 add_subdirectory(wsi)
18 add_subdirectory(sparse_resources)
19 add_subdirectory(tessellation)
20 add_subdirectory(rasterization)
21 add_subdirectory(synchronization)
22 add_subdirectory(clipping)
23 add_subdirectory(fragment_ops)
24 add_subdirectory(geometry)
25 add_subdirectory(texture)
26 add_subdirectory(robustness)
27 add_subdirectory(renderpass)
28 add_subdirectory(ycbcr)
29
30 include_directories(
31         api
32         pipeline
33         binding_model
34         spirv_assembly
35         shaderrender
36         shaderexecutor
37         memory
38         ubo
39         dynamic_state
40         ssbo
41         query_pool
42         draw
43         compute
44         image
45         wsi
46         sparse_resources
47         tessellation
48         rasterization
49         synchronization
50         clipping
51         fragment_ops
52         texture
53         geometry
54         robustness
55         renderpass
56         ycbcr
57         )
58
59 set(DEQP_VK_SRCS
60         vktTestCase.cpp
61         vktTestCase.hpp
62         vktTestCaseUtil.cpp
63         vktTestCaseUtil.hpp
64         vktTestPackage.cpp
65         vktTestPackage.hpp
66         vktShaderLibrary.cpp
67         vktShaderLibrary.hpp
68         vktTestGroupUtil.cpp
69         vktTestGroupUtil.hpp
70         vktInfoTests.cpp
71         vktInfoTests.hpp
72         vktDrawUtil.cpp
73         vktDrawUtil.hpp
74         vktExternalMemoryUtil.cpp
75         vktExternalMemoryUtil.hpp
76         vktDrawUtil.cpp
77         vktDrawUtil.hpp
78         )
79
80 set(DEQP_VK_LIBS
81         tcutil
82         vkutil
83         glutil
84         deqp-vk-api
85         deqp-vk-pipeline
86         deqp-vk-binding-model
87         deqp-vk-spirv-assembly
88         deqp-vk-shaderrender
89         deqp-vk-shaderexecutor
90         deqp-vk-memory
91         deqp-vk-ubo
92         deqp-vk-dynamic-state
93         deqp-vk-ssbo
94         deqp-vk-query-pool
95         deqp-vk-draw
96         deqp-vk-compute
97         deqp-vk-image
98         deqp-vk-wsi
99         deqp-vk-sparse-resources
100         deqp-vk-tessellation
101         deqp-vk-rasterization
102         deqp-vk-synchronization
103         deqp-vk-clipping
104         deqp-vk-fragment-ops
105         deqp-vk-texture
106         deqp-vk-geometry
107         deqp-vk-robustness
108         deqp-vk-render-pass
109         deqp-vk-ycbcr
110         )
111
112 if (DE_COMPILER_IS_MSC AND (DE_PTR_SIZE EQUAL 4))
113     set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /LARGEADDRESSAWARE")
114 endif ()
115
116 add_deqp_module(deqp-vk "${DEQP_VK_SRCS}" "${DEQP_VK_LIBS}" vktTestPackageEntry.cpp)
117
118 add_data_dir(deqp-vk ../../data/vulkan  vulkan)
119
120 if (DE_OS_IS_WIN32 OR DE_OS_IS_UNIX OR DE_OS_IS_OSX)
121         add_executable(vk-build-programs vktBuildPrograms.cpp)
122         target_link_libraries(vk-build-programs deqp-vk${MODULE_LIB_TARGET_POSTFIX})
123 endif ()