cmake_minimum_required(VERSION 3.14) project(mons_collections LANGUAGES C) set(CMAKE_C_STANDARD 99) set(CMAKE_EXPORT_COMPILE_COMMANDS true) set(CMAKE_BUILD_TYPE "Debug") add_library(mons_collections SHARED ./src/hashmap.c ) target_include_directories(mons_collections PUBLIC "$/include" "$" ) target_compile_options(mons_collections PRIVATE -coverage) target_link_options(mons_collections PRIVATE -coverage) include(CTest) function(TESTCASE NAME) add_executable(test_${NAME} ./tests/${NAME}.c) target_link_libraries(test_${NAME} PUBLIC mons_collections) add_test( NAME ${NAME} COMMAND $ ) endfunction()