commit e49d59dafc37c38642a640504fe00e696116af26
Author: Georg Baum <[email protected]>
Date: Sat Jul 2 12:39:08 2016 +0200
Fix std::regex detection for older gcc
Older gcc versions (e.g. the first one which has usable std::regex: gcc 4.9)
require the --std=c++11 flag to be set. Otherwise std::regex is not made
available. Therefore we need to keep the flag in the loop.
---
development/cmake/modules/FindCXX11Compiler.cmake | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/development/cmake/modules/FindCXX11Compiler.cmake
b/development/cmake/modules/FindCXX11Compiler.cmake
index ddd4713..56fa0c3 100644
--- a/development/cmake/modules/FindCXX11Compiler.cmake
+++ b/development/cmake/modules/FindCXX11Compiler.cmake
@@ -104,12 +104,11 @@ int main()
# check c compiler
set(SAFE_CMAKE_REQUIRED_QUIET ${CMAKE_REQUIRED_QUIET})
set(CMAKE_REQUIRED_QUIET ON)
+SET(SAFE_CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS}")
FOREACH(FLAG ${CXX11_FLAG_CANDIDATES})
- SET(SAFE_CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS}")
SET(CMAKE_REQUIRED_FLAGS "${FLAG}")
UNSET(CXX11_FLAG_DETECTED CACHE)
CHECK_CXX_SOURCE_COMPILES("${CXX11_TEST_SOURCE}" CXX11_FLAG_DETECTED)
- SET(CMAKE_REQUIRED_FLAGS "${SAFE_CMAKE_REQUIRED_FLAGS}")
IF(CXX11_FLAG_DETECTED)
SET(CXX11_FLAG "${FLAG}")
message(STATUS "CXX11_FLAG_DETECTED = \"${FLAG}\"")
@@ -125,6 +124,7 @@ FOREACH(FLAG ${CXX11_FLAG_CANDIDATES})
break()
ENDIF()
ENDFOREACH()
+SET(CMAKE_REQUIRED_FLAGS "${SAFE_CMAKE_REQUIRED_FLAGS}")
set(CMAKE_REQUIRED_QUIET ${SAFE_CMAKE_REQUIRED_QUIET})
# handle the standard arguments for find_package