project-aster/aster_core/CMakeLists.txt

28 lines
1.1 KiB
CMake

# CMakeList.txt ; CMake project for Aster Core
cmake_minimum_required(VERSION 3.13)
find_package(glm CONFIG REQUIRED)
find_package(glfw3 CONFIG REQUIRED)
find_path(SCOTTT_DEBUGBREAK_INCLUDE_DIRS "debugbreak.h")
find_package(Vulkan REQUIRED)
# find_package( VulkanHeaders CONFIG REQUIRED )
find_package(fmt CONFIG REQUIRED)
find_package(VulkanMemoryAllocator CONFIG REQUIRED)
set(HEADER_FILES "constants.h" "config.h" "logger.h" "global.h" "context.h" "window.h")
set(SOURCE_FILES "logger.cpp" "global.cpp" "context.cpp" "window.cpp")
add_library(aster_core ${SOURCE_FILES} ${HEADER_FILES})
set_property(TARGET aster_core PROPERTY CXX_STANDARD 20)
target_link_libraries(aster_core PRIVATE glm::glm-header-only)
target_link_libraries(aster_core PRIVATE glfw)
target_include_directories(aster_core PRIVATE ${SCOTTT_DEBUGBREAK_INCLUDE_DIRS})
target_link_libraries(aster_core PRIVATE fmt::fmt)
target_link_libraries(aster_core PRIVATE Vulkan::Vulkan Vulkan::Headers GPUOpen::VulkanMemoryAllocator)
add_executable(aster_exe "aster.cpp")
target_link_libraries(aster_exe PRIVATE aster_core)
target_link_libraries(aster_exe PRIVATE glm::glm-header-only)