mirror of
https://github.com/PancakeTAS/lsfg-vk.git
synced 2025-10-30 07:01:10 +00:00
feat(test): create file structure for tests
This commit is contained in:
parent
2f488a42ef
commit
219083dcd5
3 changed files with 69 additions and 6 deletions
|
|
@ -1,8 +1,11 @@
|
|||
cmake_minimum_required(VERSION 3.10)
|
||||
|
||||
set(CMAKE_SKIP_RPATH ON)
|
||||
set(CMAKE_C_VISIBILITY_PRESET "hidden")
|
||||
set(CMAKE_CXX_VISIBILITY_PRESET "hidden")
|
||||
|
||||
if(NOT LSFGVK_EXCESS_DEBUG)
|
||||
set(CMAKE_C_VISIBILITY_PRESET "hidden")
|
||||
set(CMAKE_CXX_VISIBILITY_PRESET "hidden")
|
||||
endif()
|
||||
|
||||
# subprojects
|
||||
add_compile_options(-fPIC
|
||||
|
|
@ -15,6 +18,10 @@ add_subdirectory(thirdparty/toml11 EXCLUDE_FROM_ALL)
|
|||
add_subdirectory(thirdparty/volk EXCLUDE_FROM_ALL)
|
||||
add_subdirectory(framegen)
|
||||
|
||||
if(LSFGVK_EXCESS_DEBUG)
|
||||
add_subdirectory(test)
|
||||
endif()
|
||||
|
||||
# main project
|
||||
project(lsfg-vk
|
||||
VERSION 1.0.0
|
||||
|
|
@ -36,8 +43,8 @@ set_target_properties(lsfg-vk PROPERTIES
|
|||
CXX_STANDARD 20
|
||||
CXX_STANDARD_REQUIRED ON)
|
||||
target_include_directories(lsfg-vk
|
||||
PRIVATE include)
|
||||
target_link_libraries(lsfg-vk PRIVATE
|
||||
PUBLIC include)
|
||||
target_link_libraries(lsfg-vk PUBLIC
|
||||
pe-parse dxbc toml11
|
||||
lsfg-vk-framegen)
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,9 @@
|
|||
cmake_minimum_required(VERSION 3.10)
|
||||
|
||||
set(CMAKE_C_VISIBILITY_PRESET "hidden")
|
||||
set(CMAKE_CXX_VISIBILITY_PRESET "hidden")
|
||||
if(NOT LSFGVK_EXCESS_DEBUG)
|
||||
set(CMAKE_C_VISIBILITY_PRESET "hidden")
|
||||
set(CMAKE_CXX_VISIBILITY_PRESET "hidden")
|
||||
endif()
|
||||
|
||||
project(lsfg-vk-framegen
|
||||
DESCRIPTION "Lossless Scaling Frame Generation Backend"
|
||||
|
|
|
|||
54
test/CMakeLists.txt
Normal file
54
test/CMakeLists.txt
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
cmake_minimum_required(VERSION 3.10)
|
||||
|
||||
if(NOT LSFGVK_EXCESS_DEBUG)
|
||||
set(CMAKE_C_VISIBILITY_PRESET "hidden")
|
||||
set(CMAKE_CXX_VISIBILITY_PRESET "hidden")
|
||||
endif()
|
||||
|
||||
project(lsfg-vk-test
|
||||
DESCRIPTION "Test: lsfg-vk"
|
||||
LANGUAGES CXX)
|
||||
|
||||
file(GLOB SOURCES
|
||||
"src/*.cpp"
|
||||
)
|
||||
|
||||
add_executable(lsfg-vk-test ${SOURCES})
|
||||
|
||||
# target
|
||||
set_target_properties(lsfg-vk-test PROPERTIES
|
||||
CXX_STANDARD 20
|
||||
CXX_STANDARD_REQUIRED ON)
|
||||
target_include_directories(lsfg-vk-test
|
||||
PRIVATE include)
|
||||
target_link_libraries(lsfg-vk-test PUBLIC
|
||||
vulkan lsfg-vk)
|
||||
|
||||
# diagnostics
|
||||
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
set_target_properties(lsfg-vk-test PROPERTIES
|
||||
EXPORT_COMPILE_COMMANDS ON)
|
||||
endif()
|
||||
|
||||
if(LSFGVK_EXCESS_DEBUG)
|
||||
target_compile_options(lsfg-vk-test PRIVATE
|
||||
-Weverything
|
||||
# disable compat c++ flags
|
||||
-Wno-pre-c++20-compat-pedantic
|
||||
-Wno-pre-c++17-compat
|
||||
-Wno-c++98-compat-pedantic
|
||||
-Wno-c++98-compat
|
||||
# disable other flags
|
||||
-Wno-missing-designated-field-initializers
|
||||
-Wno-shadow # allow shadowing
|
||||
-Wno-switch-enum # ignore missing cases
|
||||
-Wno-switch-default # ignore missing default
|
||||
-Wno-padded # ignore automatic padding
|
||||
-Wno-exit-time-destructors # allow globals
|
||||
-Wno-global-constructors # allow globals
|
||||
-Wno-cast-function-type-strict # for vulkan
|
||||
)
|
||||
|
||||
set_target_properties(lsfg-vk-test PROPERTIES
|
||||
CXX_CLANG_TIDY clang-tidy)
|
||||
endif()
|
||||
Loading…
Add table
Reference in a new issue