-
Notifications
You must be signed in to change notification settings - Fork 174
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
71 lines (57 loc) · 2.26 KB
/
CMakeLists.txt
File metadata and controls
71 lines (57 loc) · 2.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
cmake_minimum_required (VERSION 3.10)
if (PLATFORM_WEB)
set(CMAKE_EXECUTABLE_SUFFIX ".html")
endif()
project(DiligentCoreTest)
file(GLOB_RECURSE SOURCE src/*.*)
file(GLOB_RECURSE SHADERS assets/shaders/*.*)
if(NOT GL_SUPPORTED AND NOT GLES_SUPPORTED AND NOT VULKAN_SUPPORTED)
list(REMOVE_ITEM SOURCE ${CMAKE_CURRENT_SOURCE_DIR}/src/ShaderTools/GLSLUtilsTest.cpp)
endif()
if(NOT WEBGPU_SUPPORTED)
list(REMOVE_ITEM SOURCE
${CMAKE_CURRENT_SOURCE_DIR}/src/ShaderTools/WGSLUtilsTest.cpp
${CMAKE_CURRENT_SOURCE_DIR}/src/ShaderTools/WGSLShaderResourcesTest.cpp
)
endif()
set_source_files_properties(${SHADERS} PROPERTIES VS_TOOL_OVERRIDE "None")
if (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
# Disable the following warning:
# explicitly moving variable of type '(anonymous namespace)::SmartPtr' (aka 'RefCntAutoPtr<(anonymous namespace)::Object>') to itself [-Wself-move]
set_source_files_properties(src/Common/RefCntAutoPtrTest.cpp
PROPERTIES
COMPILE_FLAGS "-Wno-self-move -Wno-self-assign"
)
endif()
add_executable(DiligentCoreTest ${SOURCE} ${SHADERS})
set_common_target_properties(DiligentCoreTest 17)
if (PLATFORM_WEB)
set(RESOURCE_PATH "${PROJECT_SOURCE_DIR}/assets/")
set(HTML_TEMPLATE_FILE ${PROJECT_SOURCE_DIR}/resources/emscripten_template.html)
target_link_options(DiligentCoreTest PRIVATE "SHELL: -s SINGLE_FILE -s ALLOW_MEMORY_GROWTH=1 --preload-file '${RESOURCE_PATH}@'")
target_link_options(DiligentCoreTest PRIVATE "SHELL: --shell-file '${HTML_TEMPLATE_FILE}'")
endif()
target_link_libraries(DiligentCoreTest
PRIVATE
gtest_main
Diligent-BuildSettings
Diligent-TargetPlatform
Diligent-TestFramework
Diligent-GraphicsAccessories
Diligent-Common
Diligent-GraphicsTools
Diligent-GraphicsEngine
Diligent-ShaderTools
)
if(WEBGPU_SUPPORTED)
target_link_libraries(DiligentCoreTest PRIVATE libtint)
endif()
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} FILES ${SOURCE} ${SHADERS}})
set_target_properties(DiligentCoreTest
PROPERTIES
VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/assets"
XCODE_SCHEME_WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/assets"
)
set_target_properties(DiligentCoreTest PROPERTIES
FOLDER "DiligentCore/Tests"
)