blob: 685a2247d296a271cab685df5db73c9af3260153 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
# Project and C standard configuration
project(bhunit LANGUAGES C)
set(CMAKE_C_STANDARD 90)
set(CMAKE_C_STANDARD_REQUIRED ON)
# Disable extensions
set(CMAKE_C_EXTENSIONS OFF)
# Library code
set(BHBENCH_SOURCE
src/Bench.c
)
set(BHBENCH_HEADER
include/BH/Bench.h
)
# Library
add_library(BHBench STATIC ${BHBENCH_SOURCE} ${BHBENCH_HEADER})
target_include_directories(BHBench PUBLIC include)
target_link_libraries(BHBench BHLib)
# Enable testing
include(CTest)
enable_testing()
# Search files
file(GLOB TEST_FILES "tests/*.c")
foreach(TEST_FILENAME ${TEST_FILES})
# Add test
get_filename_component(TEST_NAME ${TEST_FILENAME} NAME_WE)
add_executable("${TEST_NAME}" ${TEST_FILENAME})
target_link_libraries("${TEST_NAME}" BHLib BHBench)
add_test(NAME "${TEST_NAME}" COMMAND "${TEST_NAME}")
# Enable coverage
if(ENABLE_COVERAGE)
target_compile_options("${TEST_NAME}" PRIVATE -coverage)
target_link_options("${TEST_NAME}" PRIVATE -coverage)
endif()
endforeach()
|