mirror of
https://github.com/BlackMATov/promise.hpp.git
synced 2025-12-13 19:57:58 +07:00
39 lines
1.0 KiB
CMake
39 lines
1.0 KiB
CMake
project(promise.hpp.untests)
|
|
|
|
#
|
|
# coverage
|
|
#
|
|
|
|
option(BUILD_WITH_COVERAGE "Build with coverage" OFF)
|
|
if(BUILD_WITH_COVERAGE AND (CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang"))
|
|
set(COVERAGE_FLAGS "--coverage")
|
|
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} ${COVERAGE_FLAGS}")
|
|
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${COVERAGE_FLAGS}")
|
|
set(CMAKE_LINKER_FLAGS_DEBUG "${CMAKE_LINKER_FLAGS_DEBUG} ${COVERAGE_FLAGS}")
|
|
endif()
|
|
|
|
#
|
|
# executable
|
|
#
|
|
|
|
file(GLOB_RECURSE UNTESTS_SOURCES "*.cpp" "*.hpp")
|
|
add_executable(${PROJECT_NAME} ${UNTESTS_SOURCES})
|
|
target_link_libraries(${PROJECT_NAME} promise.hpp)
|
|
|
|
target_compile_options(${PROJECT_NAME}
|
|
PRIVATE
|
|
$<$<CXX_COMPILER_ID:MSVC>: /bigobj /wd4702>)
|
|
|
|
target_compile_options(${PROJECT_NAME}
|
|
PRIVATE
|
|
$<$<CXX_COMPILER_ID:MSVC>:
|
|
/WX /W4>
|
|
PRIVATE
|
|
$<$<CXX_COMPILER_ID:GNU>:
|
|
-Werror -Wall -Wextra -Wpedantic>
|
|
PRIVATE
|
|
$<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:AppleClang>>:
|
|
-Werror -Weverything -Wconversion>)
|
|
|
|
add_test(${PROJECT_NAME} ${PROJECT_NAME})
|