From 783fbb77e7b48d5816f16773f977250453cd43ee Mon Sep 17 00:00:00 2001 From: Brad King Date: Fri, 26 May 2017 13:25:11 -0400 Subject: Tests: Compile entire Plugin test with the same language standard Set `CMAKE_CXX_STANDARD` early so that both KWSys and our test code build with the same language standard. This is important on compilers that have incompatible standard libraries. --- Tests/Plugin/CMakeLists.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Tests/Plugin/CMakeLists.txt b/Tests/Plugin/CMakeLists.txt index f52b479..9e2b4ab 100644 --- a/Tests/Plugin/CMakeLists.txt +++ b/Tests/Plugin/CMakeLists.txt @@ -2,6 +2,9 @@ cmake_minimum_required (VERSION 2.6) cmake_policy(SET CMP0054 NEW) project(Plugin) +# We need proper C++98 support from the compiler +set(CMAKE_CXX_STANDARD 98) + # Test per-target output directory properties. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${Plugin_BINARY_DIR}/bin) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${Plugin_BINARY_DIR}/lib/plugin) @@ -25,9 +28,6 @@ include_directories( ${Plugin_SOURCE_DIR}/include ) -# We need proper C++98 support from the compiler -set(CMAKE_CXX_STANDARD 98) - # Those versions of the HP compiler that need a flag to get proper C++98 # template support also need a flag to use the newer C++ library. if (CMAKE_CXX_COMPILER_ID STREQUAL HP AND -- cgit v0.12 From 9316120c80119c64a8d201bd70d7c58852ff6d7e Mon Sep 17 00:00:00 2001 From: Daniel Pfeifer Date: Fri, 19 May 2017 15:01:38 -0600 Subject: SunPro: add standard compile option for C++03 --- Modules/Compiler/SunPro-CXX.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Modules/Compiler/SunPro-CXX.cmake b/Modules/Compiler/SunPro-CXX.cmake index 5db7987..f8030f1 100644 --- a/Modules/Compiler/SunPro-CXX.cmake +++ b/Modules/Compiler/SunPro-CXX.cmake @@ -37,8 +37,8 @@ set(CMAKE_CXX_CREATE_STATIC_LIBRARY " ") if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.13) - set(CMAKE_CXX98_STANDARD_COMPILE_OPTION "") - set(CMAKE_CXX98_EXTENSION_COMPILE_OPTION "") + set(CMAKE_CXX98_STANDARD_COMPILE_OPTION "-std=c++03") + set(CMAKE_CXX98_EXTENSION_COMPILE_OPTION "-std=c++03") set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "-std=c++11") set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "-std=c++11") set(CMAKE_CXX_LINK_WITH_STANDARD_COMPILE_OPTION 1) -- cgit v0.12 From f1f21e3077cd6f1519d9a2b50e211b4c233d12cd Mon Sep 17 00:00:00 2001 From: Daniel Pfeifer Date: Mon, 22 May 2017 23:22:59 +0200 Subject: SunPro: set -library=stlport as standard compile option for C++98 --- Modules/Compiler/SunPro-CXX.cmake | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Modules/Compiler/SunPro-CXX.cmake b/Modules/Compiler/SunPro-CXX.cmake index f8030f1..4b0a21d 100644 --- a/Modules/Compiler/SunPro-CXX.cmake +++ b/Modules/Compiler/SunPro-CXX.cmake @@ -42,6 +42,10 @@ if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.13) set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "-std=c++11") set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "-std=c++11") set(CMAKE_CXX_LINK_WITH_STANDARD_COMPILE_OPTION 1) +else() + set(CMAKE_CXX98_STANDARD_COMPILE_OPTION "-library=stlport") + set(CMAKE_CXX98_EXTENSION_COMPILE_OPTION "-library=stlport") + set(CMAKE_CXX_LINK_WITH_STANDARD_COMPILE_OPTION 1) endif() __compiler_check_default_language_standard(CXX 5.13 98) -- cgit v0.12 From 370d0d25315cc2fae38e1c6397b0094d43384c16 Mon Sep 17 00:00:00 2001 From: Daniel Pfeifer Date: Mon, 22 May 2017 23:28:51 +0200 Subject: SunPro: update flags used for CMake itself Special flags should no longer be required when CMake is built with a recent version of CMake. --- CompileFlags.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CompileFlags.cmake b/CompileFlags.cmake index d1f4f13..7a9d4cd 100644 --- a/CompileFlags.cmake +++ b/CompileFlags.cmake @@ -59,7 +59,8 @@ if(CMAKE_SYSTEM_PROCESSOR MATCHES "^parisc") endif() endif() -if (CMAKE_CXX_COMPILER_ID STREQUAL SunPro) +if (CMAKE_CXX_COMPILER_ID STREQUAL SunPro AND + NOT DEFINED CMAKE_CXX${CMAKE_CXX_STANDARD}_STANDARD_COMPILE_OPTION) if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.13) if (NOT CMAKE_CXX_STANDARD OR CMAKE_CXX_STANDARD EQUAL 98) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++03") -- cgit v0.12