vk-book/shared/CMakeLists.txt

34 lines
1.1 KiB
Text
Raw Normal View History

2025-05-23 21:13:53 -04:00
cmake_minimum_required(VERSION 3.19)
project(SharedUtils CXX C)
include(../CMake/CommonMacros.txt)
file(GLOB_RECURSE SRC_FILES LIST_DIRECTORIES false RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.c??)
file(GLOB_RECURSE HEADER_FILES LIST_DIRECTORIES false RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.h)
add_library(SharedUtils ${SRC_FILES} ${HEADER_FILES})
set_property(TARGET SharedUtils PROPERTY CXX_STANDARD 20)
set_property(TARGET SharedUtils PROPERTY CXX_STANDARD_REQUIRED ON)
# Add include directory for the root of the project to fix include paths
target_include_directories(SharedUtils PUBLIC ${CMAKE_SOURCE_DIR})
target_link_libraries(SharedUtils PUBLIC assimp)
target_link_libraries(SharedUtils PUBLIC glslang)
target_link_libraries(SharedUtils PUBLIC glfw)
target_link_libraries(SharedUtils PUBLIC LUtils)
target_link_libraries(SharedUtils PUBLIC LVKLibrary)
target_link_libraries(SharedUtils PUBLIC LVKstb)
target_link_libraries(SharedUtils PUBLIC ktx)
if(WIN32)
target_compile_definitions(SharedUtils PUBLIC "NOMINMAX")
endif()
if(UNIX AND NOT APPLE)
target_link_libraries(SharedUtils PUBLIC tbb)
endif()