cmake_minimum_required(VERSION 3.25) project(mirai_project) include(cmake/retrieve_files.cmake) include(cmake/detect_os.cmake) include(cmake/config_macos.cmake) include(cmake/mirai_utils.cmake) include(cmake/project_cpp_standard.cmake) include(cmake/webgpu.cmake) setup_project_options( STANDARD 23 INTERFACE_TARGET mirai_project_options ) configure_project_defaults() set(SDL_STATIC ON CACHE BOOL "Build SDL as a static library") set(SPDLOG_FMT_EXTERNAL OFF CACHE BOOL "Use external fmt library in spdlog") set(SPDLOG_FMT_EXTERNAL_HO ON CACHE BOOL "Use header-only external fmt library in spdlog") add_subdirectory(third_party/vma_hpp/include) add_subdirectory(third_party/vma_hpp/VulkanMemoryAllocator) add_subdirectory(third_party/fmt) add_subdirectory(third_party/eigen) add_subdirectory(third_party/freetype) add_subdirectory(third_party/harfbuzz) add_subdirectory(third_party/json) add_subdirectory(third_party/SDL) add_subdirectory(third_party/spdlog) add_subdirectory(third_party/stb) add_subdirectory(third_party/yoga/yoga) add_subdirectory(third_party/efsw) add_subdirectory(src) add_subdirectory(example) # add_subdirectory(tests)