@@ -49,6 +49,9 @@ if (CMAKE_COMPILER_IS_GNUCC)
4949 OUTPUT_VARIABLE GCC_VERSION
5050 OUTPUT_STRIP_TRAILING_WHITESPACE)
5151 message (VERBOSE "Using gcc ${GCC_VERSION} as the compiler" )
52+ if (GCC_VERSION VERSION_LESS 9.0)
53+ message (ERROR "gcc minimum version is 9.0" )
54+ endif ()
5255else ()
5356 set (GCC_VERSION 0)
5457endif ()
@@ -67,6 +70,9 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER MATCHES "[Cc]lan
6770 string (REGEX REPLACE ".* version ([0-9]+\\ .[0-9]+).*" "\\ 1" APPLECLANG_VERSION_STRING ${clang_full_version_string} )
6871 set (ANY_CLANG_VERSION_STRING ${APPLECLANG_VERSION_STRING} )
6972 message (VERBOSE "The compiler is Clang: ${CMAKE_CXX_COMPILER_ID} version ${APPLECLANG_VERSION_STRING} " )
73+ if (APPLECLANG_VERSION_STRING VERSION_LESS 5.0)
74+ message (ERROR "Apple clang minimum version is 5.0" )
75+ endif ()
7076 elseif (CMAKE_CXX_COMPILER_ID MATCHES "IntelLLVM" )
7177 set (CMAKE_COMPILER_IS_INTELCLANG 1)
7278 string (REGEX MATCH "[0-9]+(\\ .[0-9]+)+" INTELCLANG_VERSION_STRING ${clang_full_version_string} )
@@ -77,6 +83,9 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER MATCHES "[Cc]lan
7783 string (REGEX REPLACE ".* version ([0-9]+\\ .[0-9]+).*" "\\ 1" CLANG_VERSION_STRING ${clang_full_version_string} )
7884 set (ANY_CLANG_VERSION_STRING ${CLANG_VERSION_STRING} )
7985 message (VERBOSE "The compiler is Clang: ${CMAKE_CXX_COMPILER_ID} version ${CLANG_VERSION_STRING} " )
86+ if (CLANG_VERSION_STRING VERSION_LESS 5.0)
87+ message (ERROR "clang minimum version is 5.0" )
88+ endif ()
8089 endif ()
8190elseif (CMAKE_CXX_COMPILER_ID MATCHES "Intel" )
8291 set (CMAKE_COMPILER_IS_INTEL 1)
@@ -180,9 +189,7 @@ if (CMAKE_COMPILER_IS_GNUCC AND NOT (CMAKE_COMPILER_IS_CLANG OR CMAKE_COMPILER_I
180189 add_compile_options ("-Wno-error=strict-overflow" )
181190 add_compile_options ("-Wno-unused-local-typedefs" )
182191 add_compile_options ("-Wno-unused-result" )
183- if (NOT ${GCC_VERSION} VERSION_LESS 6.0)
184- add_compile_options ("-Wno-error=misleading-indentation" )
185- endif ()
192+ add_compile_options ("-Wno-error=misleading-indentation" )
186193endif ()
187194
188195if (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_CLANG)
@@ -276,10 +283,8 @@ endif ()
276283# legit problem later.
277284#
278285set (GLIBCXX_USE_CXX11_ABI "" CACHE STRING "For gcc, use the new C++11 library ABI (0|1)" )
279- if (CMAKE_COMPILER_IS_GNUCC AND ${GCC_VERSION} VERSION_GREATER_EQUAL 5.0)
280- if (NOT ${GLIBCXX_USE_CXX11_ABI} STREQUAL "" )
281- add_compile_definitions (_GLIBCXX_USE_CXX11_ABI=${GLIBCXX_USE_CXX11_ABI} )
282- endif ()
286+ if (CMAKE_COMPILER_IS_GNUCC AND NOT ${GLIBCXX_USE_CXX11_ABI} STREQUAL "" )
287+ add_compile_definitions (_GLIBCXX_USE_CXX11_ABI=${GLIBCXX_USE_CXX11_ABI} )
283288endif ()
284289
285290
0 commit comments