From 7a562d39b2287ce2a217fa8fc9a89709c057e1f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Ho=C5=99e=C5=88ovsk=C3=BD?= Date: Sun, 5 Nov 2017 13:11:00 +0100 Subject: [PATCH] Cleanup CMakelists.txt --- CMakeLists.txt | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index de046852..c1708e38 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,15 +11,6 @@ set(BENCHMARK_DIR ${CATCH_DIR}/projects/Benchmark) set(HEADER_DIR ${CATCH_DIR}/include) set(CATCH_VERSION_NUMBER 2.0.1) -if(USE_CPP14) - message(STATUS "Enabling C++14") - set(CMAKE_CXX_FLAGS "-std=c++14 ${CMAKE_CXX_FLAGS}") -else() - message(STATUS "Enabling C++11") - set(CMAKE_CXX_FLAGS "-std=c++11 ${CMAKE_CXX_FLAGS}") - -endif() - if(USE_WMAIN) set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /ENTRY:wmainCRTStartup") endif() @@ -288,6 +279,18 @@ if (NOT NO_SELFTEST) add_executable(SelfTest ${TEST_SOURCES} ${IMPL_SOURCES} ${REPORTER_SOURCES} ${SURROGATE_SOURCES} ${HEADERS}) target_include_directories(SelfTest PRIVATE ${HEADER_DIR}) + if(USE_CPP14) + message(STATUS "Enabling C++14") + set_property(TARGET SelfTest PROPERTY CXX_STANDARD 14) + else() + message(STATUS "Enabling C++11") + set_property(TARGET SelfTest PROPERTY CXX_STANDARD 11) + endif() + + set_property(TARGET SelfTest PROPERTY CXX_STANDARD_REQUIRED ON) + set_property(TARGET SelfTest PROPERTY CXX_EXTENSIONS OFF) + + # Add desired warnings if ( CMAKE_CXX_COMPILER_ID MATCHES "Clang|AppleClang|GNU" ) target_compile_options( SelfTest PRIVATE -Wall -Wextra -Wunreachable-code )