From aec3afbcec0bd5d8ded0489116cb5ed6018541eb Mon Sep 17 00:00:00 2001 From: Ivailo Monev Date: Mon, 30 Dec 2019 00:51:31 +0000 Subject: [PATCH] extended compiler-standard check to check for CMP0067 policy Signed-off-by: Ivailo Monev --- mkspecs/mkspecs.cmake | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/mkspecs/mkspecs.cmake b/mkspecs/mkspecs.cmake index 30a48d0af..014f18438 100644 --- a/mkspecs/mkspecs.cmake +++ b/mkspecs/mkspecs.cmake @@ -92,10 +92,17 @@ endif() # Set compiler standard to C++ 11, appending to CMAKE_CXX_FLAGS is done so that try_compile() is # also affected, which KDE uses for visibility check for an example -if(KATIE_COMPILER STREQUAL "gcc") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11") -elseif(KATIE_COMPILER STREQUAL "clang") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") +if(NOT CMAKE_VERSION VERSION_LESS "3.8.0") + cmake_policy(GET CMP0067 trycompilestandardpolicy) +else() + set(trycompilestandardpolicy OLD) +endif() +if(NOT trycompilestandardpolicy EQUAL NEW) + if(KATIE_COMPILER STREQUAL "gcc") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11") + elseif(KATIE_COMPILER STREQUAL "clang") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") + endif() endif() if(NOT CMAKE_VERSION VERSION_LESS "3.1.0") set(CMAKE_CXX_STANDARD_REQUIRED ON) -- 2.11.0