Files
plotter/CMakeLists.txt
T

39 lines
1.2 KiB
CMake

cmake_minimum_required(VERSION 3.24)
project(plot VERSION 0.1.0 LANGUAGES CXX)
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
include(plot_options)
add_library(plot_core
src/core/status.cpp
src/math/transform.cpp
src/data/minmax_pyramid.cpp
src/data/series.cpp
src/data/array_series.cpp
src/data/stream_series.cpp
src/gl/loader.cpp
src/gl/handle.cpp
src/render/shaders.cpp
src/render/bitmap_font.cpp
src/render/primitives.cpp
src/render/buffer.cpp
src/render/vertex_array.cpp
src/render/program.cpp
)
add_library(plot::core ALIAS plot_core)
target_include_directories(plot_core PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include")
target_compile_features(plot_core PUBLIC cxx_std_20)
target_link_libraries(plot_core PRIVATE ${CMAKE_DL_LIBS})
plot_apply_warnings(plot_core)
if(PLOT_BUILD_TESTS)
# Test-only: counts the pyramid's covering-decomposition entries so a test can
# pin its O(log n) cost, which no query answer reveals. Off in every non-test
# build (see include/plot/data/detail/cover_count.hpp).
target_compile_definitions(plot_core PRIVATE PLOT_PYRAMID_COUNT_COVERS)
enable_testing()
add_subdirectory(tests)
endif()