cmake_minimum_required(VERSION 3.10.0) project(Boundard VERSION 0.1.0 LANGUAGES C CXX) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) add_library(boundard STATIC src/boundard.cpp src/game.cpp src/render.cpp src/config.cpp src/engine.cpp ) target_include_directories(boundard PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include) target_compile_features(boundard PUBLIC cxx_std_17) find_package(glfw3 REQUIRED) find_package(Vulkan REQUIRED) find_package(PkgConfig REQUIRED) pkg_check_modules(JSONCPP REQUIRED IMPORTED_TARGET jsoncpp) target_link_libraries(boundard PUBLIC glfw Vulkan::Vulkan PkgConfig::JSONCPP) add_executable(square_example examples/square/main.cpp) target_link_libraries(square_example PRIVATE boundard) add_executable(boundard_engine src/engine_main.cpp) target_link_libraries(boundard_engine PRIVATE boundard)