diff --git a/cmake/ci.cmake b/cmake/ci.cmake index 4cdf186e3..3d1149d62 100644 --- a/cmake/ci.cmake +++ b/cmake/ci.cmake @@ -817,9 +817,6 @@ foreach(COMPILER g++-4.8 g++-4.9 g++-5 g++-6 g++-7 g++-8 g++-9 g++-10 clang++-3. if ("${COMPILER}" STREQUAL "clang++-9") # fix for https://github.com/nlohmann/json/pull/3101#issuecomment-998788786 / https://stackoverflow.com/a/64051725/266378 set(ADDITIONAL_FLAGS "-DCMAKE_CXX_FLAGS=--gcc-toolchain=/root/gcc/9") - elseif ("${COMPILER}" STREQUAL "g++-8") - # fix for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90050 - set(ADDITIONAL_FLAGS "-DCMAKE_EXE_LINKER_FLAGS=-lstdc++fs") else() unset(ADDITIONAL_FLAGS) endif() diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index ab598878b..86af685f8 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -99,6 +99,11 @@ foreach(file ${files}) target_link_libraries(${testcase}_cpp17 PRIVATE ${NLOHMANN_JSON_TARGET_NAME}) target_compile_features(${testcase}_cpp17 PRIVATE cxx_std_17) + if (CMAKE_COMPILER_IS_GNUCC AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 8.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 9.0) + # fix for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90050 + target_link_libraries(${testcase}_cpp17 PRIVATE stdc++fs) + endif() + if (JSON_FastTests) add_test(NAME "${testcase}_cpp17" COMMAND ${testcase}_cpp17 ${DOCTEST_TEST_FILTER}