project(loft_base) file(GLOB FILES ./src/*.cpp ./src/shaders/*.cpp ./src/io/*.cpp ./src/resources/*.cpp) file(GLOB HEADERS ./include/*.h ./include/*.hpp ./include/shaders/*.h ./include/shaders/*.hpp ./include/resources/*.h ./include/resources/*.hpp ./include/io/*.h ./include/io/*.hpp ./include/debug/*.h ./include/debug/*.hpp ) add_library(loft_base OBJECT ${FILES}) add_library(loft::base ALIAS loft_base) target_sources(loft_base PUBLIC FILE_SET HEADERS BASE_DIRS include FILES ${HEADERS}) set_target_properties(loft_base PROPERTIES POSITION_INDEPENDENT_CODE 1) find_package(Vulkan REQUIRED) target_link_libraries(${PROJECT_NAME} PUBLIC GPUOpen::VulkanMemoryAllocator volk::volk ) target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_SOURCE_DIR}/include/ )