1
0
Files
BasaltMeter/BasaltPresenter/CMakeLists.txt

42 lines
1.5 KiB
CMake
Raw Normal View History

2025-11-25 13:38:17 +08:00
# Minimum required CMake version
cmake_minimum_required(VERSION 3.23)
# Project definition
project(Basalt
VERSION 0.0.1
LANGUAGES CXX
)
# Provide options
# Render Engines
option(BASALT_DIRECTX11_ENGINE "Build with DirectX 11 render engine support." OFF)
option(BASALT_OPENGL_ENGINE "Build with OpenGL render engine support." OFF)
option(BASALT_VULKAN_ENGINE "Build with Vulkan render engine support." OFF)
# Data Delivers
option(BASALT_CUDA_DELIVER "Build with CUDA data deliver support." OFF)
option(BASALT_ROCM_DELIVER "Build with ROCm data deliver support." OFF)
option(BASALT_PIPE_DELIVER "Build with system pipe data deliver support." OFF)
option(BASALT_TCP_DELIVER "Build with TCP data deliver support." OFF)
option(BASALT_MMAP_DELIVER "Build with system shared memory data deliver support." OFF)
# 3D Objects Loaders
option(BASALT_OBJ_OBJECT_LOADER "Build with Wavefront OBJ 3D object loader support." OFF)
option(BASALT_GLTF_OBJECT_LOADER "Build with glTF 3D object loader support." OFF)
# Camera Motion Loaders
option(BASALT_UNKNOWN_ANIME_LOADER "Build with Unknown camera motion loader support." OFF)
# Set C++ standards
set(CMAKE_CXX_STANDARD 23)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
# Include projects
add_subdirectory(Shared)
add_subdirectory(Presenter)
add_subdirectory(Plugins)
# Add your executable or library targets here
# Example for an executable:
# add_executable(basalt main.cpp)
# Example for a library:
# add_library(basalt src/basalt.cpp)