-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCMakeLists.txt
27 lines (20 loc) · 943 Bytes
/
CMakeLists.txt
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
cmake_minimum_required(VERSION 3.22.1)
project(static_deque)
set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_STANDARD_REQUIRED True)
file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/coverage)
file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/coverage/report)
add_compile_options(-Wall -Wextra -Werror -Wconversion --coverage -fkeep-inline-functions -fdiagnostics-color=always)
add_link_options(--coverage)
add_executable(Test_Exec test/test.cpp test/unity/unity.c)
add_custom_target(
Test_Run
COMMAND Test_Exec
DEPENDS Test_Exec
)
add_custom_target(Test_Eval ALL
COMMAND gcovr -s --exclude-throw-branches --decision -r ${CMAKE_SOURCE_DIR}/src ${CMAKE_BINARY_DIR}/CMakeFiles/Test_Exec.dir/test
COMMAND gcovr -r ${CMAKE_SOURCE_DIR}/src --exclude-throw-branches --decision --json-summary-pretty --html-details --output report/ ${CMAKE_BINARY_DIR}/CMakeFiles/Test_Exec.dir/test
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/coverage
DEPENDS Test_Run
)