# Procedural 3D Engine - Base Library # Copyright (c) 2025 Your Project # Licensed under the MIT License # Based on Vulkan examples by Sascha Willems (MIT License) file(GLOB_RECURSE BASE_SRC "*.cpp" "*.hpp" "*.h" "device/*.cpp" "device/*.h" "memory/*.cpp" "memory/*.h" "core/*.cpp" "core/*.hpp" "core/*.h" "foundation/*.cpp" "foundation/*.h" ) file(GLOB_RECURSE BASE_HEADERS "*.hpp" "*.h" "device/*.h" "memory/*.h" "core/*.hpp" "core/*.h" "foundation/*.h" ) set(KTX_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../external/ktx) set(KTX_SOURCES ${KTX_DIR}/lib/texture.c ${KTX_DIR}/lib/hashlist.c ${KTX_DIR}/lib/checkheader.c ${KTX_DIR}/lib/swap.c ${KTX_DIR}/lib/memstream.c ${KTX_DIR}/lib/filestream.c ${KTX_DIR}/lib/vkloader.c) add_library(base STATIC ${BASE_SRC} ${KTX_SOURCES}) if(WIN32) target_link_libraries(base ${Vulkan_LIBRARY} ${WINLIBS}) else(WIN32) target_link_libraries(base ${Vulkan_LIBRARY} ${XCB_LIBRARIES} ${WAYLAND_CLIENT_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT}) endif(WIN32)