this should really fix the XCode 6/7 builds

This commit is contained in:
onqtam 2019-01-15 22:58:12 +02:00
parent 3340162efd
commit a2c074fd4d
2 changed files with 5 additions and 5 deletions

View file

@ -61,13 +61,9 @@ add_library(doctest_main OBJECT
"src/unit.cpp" "src/unit.cpp"
) )
set_target_properties(doctest_main PROPERTIES set_target_properties(doctest_main PROPERTIES
COMPILE_DEFINITIONS "$<$<CXX_COMPILER_ID:MSVC>:_SCL_SECURE_NO_WARNINGS>"
COMPILE_OPTIONS "$<$<CXX_COMPILER_ID:MSVC>:/EHsc;$<$<CONFIG:Release>:/Od>>" COMPILE_OPTIONS "$<$<CXX_COMPILER_ID:MSVC>:/EHsc;$<$<CONFIG:Release>:/Od>>"
) )
target_compile_definitions(doctest_main PUBLIC
"$<$<CXX_COMPILER_ID:MSVC>:_SCL_SECURE_NO_WARNINGS>"
"DOCTEST_THREAD_LOCAL"
"DOCTEST_CONFIG_SUPER_FAST_ASSERTS"
)
target_compile_features(doctest_main PUBLIC cxx_std_11) target_compile_features(doctest_main PUBLIC cxx_std_11)
target_include_directories(doctest_main PRIVATE "thirdparty/doctest") target_include_directories(doctest_main PRIVATE "thirdparty/doctest")
@ -100,6 +96,9 @@ foreach(file ${files})
string(REGEX REPLACE "unit-([^$]+)" "test-\\1" testcase ${file_basename}) string(REGEX REPLACE "unit-([^$]+)" "test-\\1" testcase ${file_basename})
add_executable(${testcase} $<TARGET_OBJECTS:doctest_main> ${file}) add_executable(${testcase} $<TARGET_OBJECTS:doctest_main> ${file})
target_compile_definitions(${testcase} PRIVATE
DOCTEST_CONFIG_SUPER_FAST_ASSERTS
)
target_compile_options(${testcase} PRIVATE target_compile_options(${testcase} PRIVATE
$<$<CXX_COMPILER_ID:MSVC>:/EHsc;$<$<CONFIG:Release>:/Od>> $<$<CXX_COMPILER_ID:MSVC>:/EHsc;$<$<CONFIG:Release>:/Od>>
$<$<NOT:$<CXX_COMPILER_ID:MSVC>>:-Wno-deprecated;-Wno-float-equal> $<$<NOT:$<CXX_COMPILER_ID:MSVC>>:-Wno-deprecated;-Wno-float-equal>

View file

@ -1,6 +1,7 @@
#ifndef DOCTEST_COMPATIBILITY #ifndef DOCTEST_COMPATIBILITY
#define DOCTEST_COMPATIBILITY #define DOCTEST_COMPATIBILITY
#define DOCTEST_THREAD_LOCAL // enable single-threaded builds on XCode 6/7 - https://github.com/onqtam/doctest/issues/172
#include "doctest.h" #include "doctest.h"
// Catch doesn't require a semicolon after CAPTURE but doctest does // Catch doesn't require a semicolon after CAPTURE but doctest does