diff options
Diffstat (limited to 'mons_collections/CMakeLists.txt')
-rw-r--r-- | mons_collections/CMakeLists.txt | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/mons_collections/CMakeLists.txt b/mons_collections/CMakeLists.txt new file mode 100644 index 0000000..9391863 --- /dev/null +++ b/mons_collections/CMakeLists.txt @@ -0,0 +1,29 @@ +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 + "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>/include" + "$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>" +) +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 $<TARGET_FILE:test_${NAME}> + ) +endfunction() + |