cmake_minimum_required(VERSION 3.20) project(ecg-u01) add_library(tree SHARED node.cpp) # ~~~~~~ # This can be changed to STATIC to build and link a static library. add_executable(main main.cpp) target_link_libraries(main ecg_tree) find_package(Catch2 3) if(Catch2_FOUND) add_executable(tests tests.cpp) target_link_libraries(tests PRIVATE Catch2::Catch2WithMain ecg_tree) include(CTest) include(Catch) catch_discover_tests(tests) endif() install(TARGETS main) install(TARGETS ecg_tree DESTINATION lib)