cmake_minimum_required(VERSION 3.20) project(whetstone_rsa LANGUAGES CXX) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS OFF) add_library(whetstone_rsa_core src/diagnosis_engine.cpp src/probe_registry.cpp src/suitability_assessor.cpp src/probes/confidence_threshold_probe.cpp ) target_include_directories(whetstone_rsa_core PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include ) target_compile_features(whetstone_rsa_core PUBLIC cxx_std_20) if (CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang") target_compile_options(whetstone_rsa_core PRIVATE -Wall -Wextra -Wpedantic) endif() add_executable(whetstone_rsa_demo examples/diagnose_demo.cpp ) target_link_libraries(whetstone_rsa_demo PRIVATE whetstone_rsa_core)