From: Gabriel Corona Date: Mon, 27 Jul 2015 08:54:32 +0000 (+0200) Subject: [cmake] Check g++ version before checking c++11 support X-Git-Tag: v3_12~381 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/83e06283ac849da0e82a65178c8d19442c25a0d0 [cmake] Check g++ version before checking c++11 support This way we display user friendlier error if g++ is not recent enough. --- diff --git a/CMakeLists.txt b/CMakeLists.txt index ba2abf569b..64b80175ae 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -20,6 +20,14 @@ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g3") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3") set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -g") +if (CMAKE_COMPILER_IS_GNUCC) + if (COMPILER_CXX_VERSION_MAJOR_MINOR STRLESS "4.7") + message(FATAL_ERROR + "SimGrid needs at least g++ version 4.7 to compile " + "(c++11 support of previous versions is too limited).") + endif() +endif() + ## We need a decent support of the c++11 standard include(CheckCXXCompilerFlag) CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11) @@ -33,13 +41,6 @@ else() "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. " "Please use a decent C++ compiler.") endif() -if (CMAKE_COMPILER_IS_GNUCC) - if (COMPILER_CXX_VERSION_MAJOR_MINOR STRLESS "4.7") - message(FATAL_ERROR - "SimGrid needs g++ version 4.7 to compile " - "(c++11 support of previous versions is too limited).") - endif() -endif() ### And we need C11 standard, too include(CheckCCompilerFlag)