cmake_minimum_required(VERSION 3.16)
project(stats LANGUAGES CXX VERSION 0.1.0)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)

add_library(stats src/stats.cpp)
target_include_directories(stats PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include)
target_compile_options(stats PRIVATE -Wall -Wextra)

add_executable(report src/main.cpp)
target_link_libraries(report PRIVATE stats)

enable_testing()

find_package(Catch2 3 REQUIRED)
add_executable(test_stats tests/test_stats.cpp)
target_link_libraries(test_stats PRIVATE stats Catch2::Catch2WithMain)

include(Catch)
catch_discover_tests(test_stats)
