Browse Source

Revert topic 'compiler-features-solaris'

Revert commit v3.4.0-rc1~10^2~2 (Features: Disable support for Oracle
SolarisStudio on non-Linux, 2015-09-29) and two follow-up commits.
The support of compile features and language standards on Orcale
SolarisStudio needs more investigation so for CMake 3.4 we should
just act as 3.3 did.
Brad King 10 years ago
parent
commit
340d0897fa

+ 1 - 1
Help/manual/cmake-compile-features.7.rst

@@ -308,4 +308,4 @@ versions specified for each:
 * ``Clang``: Clang compiler versions 2.9 through 3.4.
 * ``GNU``: GNU compiler versions 4.4 through 5.0.
 * ``MSVC``: Microsoft Visual Studio versions 2010 through 2015.
-* ``SunPro``: Oracle SolarisStudio version 12.4 on a Linux host.
+* ``SunPro``: Oracle SolarisStudio version 12.4.

+ 13 - 19
Modules/Compiler/SunPro-CXX.cmake

@@ -31,21 +31,17 @@ set(CMAKE_CXX_CREATE_STATIC_LIBRARY
   "<CMAKE_CXX_COMPILER> -xar -o <TARGET> <OBJECTS> "
   "<CMAKE_RANLIB> <TARGET> ")
 
-if (CMAKE_SYSTEM_NAME STREQUAL Linux)
-  if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.13)
-    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")
-  endif()
+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")
+endif()
 
-  if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.13)
-    if (NOT CMAKE_CXX_COMPILER_FORCED)
-      if (NOT CMAKE_CXX_STANDARD_COMPUTED_DEFAULT)
-        message(FATAL_ERROR "CMAKE_CXX_STANDARD_COMPUTED_DEFAULT should be set for ${CMAKE_CXX_COMPILER_ID} (${CMAKE_CXX_COMPILER}) version ${CMAKE_CXX_COMPILER_VERSION}")
-      endif()
-      set(CMAKE_CXX_STANDARD_DEFAULT ${CMAKE_CXX_STANDARD_COMPUTED_DEFAULT})
+if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.13)
+  if (NOT CMAKE_CXX_COMPILER_FORCED)
+    if (NOT CMAKE_CXX_STANDARD_COMPUTED_DEFAULT)
+      message(FATAL_ERROR "CMAKE_CXX_STANDARD_COMPUTED_DEFAULT should be set for ${CMAKE_CXX_COMPILER_ID} (${CMAKE_CXX_COMPILER}) version ${CMAKE_CXX_COMPILER_VERSION}")
     endif()
+    set(CMAKE_CXX_STANDARD_DEFAULT ${CMAKE_CXX_STANDARD_COMPUTED_DEFAULT})
   endif()
 endif()
 
@@ -55,12 +51,10 @@ macro(cmake_record_cxx_compile_features)
   endmacro()
 
   set(_result 0)
-  if (CMAKE_SYSTEM_NAME STREQUAL Linux)
-    if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.13)
-      _get_solaris_studio_features(${CMAKE_CXX11_STANDARD_COMPILE_OPTION} CMAKE_CXX11_COMPILE_FEATURES)
-      if (_result EQUAL 0)
-        _get_solaris_studio_features("" CMAKE_CXX98_COMPILE_FEATURES)
-      endif()
+  if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.13)
+    _get_solaris_studio_features(${CMAKE_CXX11_STANDARD_COMPILE_OPTION} CMAKE_CXX11_COMPILE_FEATURES)
+    if (_result EQUAL 0)
+      _get_solaris_studio_features("" CMAKE_CXX98_COMPILE_FEATURES)
     endif()
   endif()
 endmacro()

+ 1 - 2
Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt

@@ -25,8 +25,7 @@ if (NOT CMAKE_CXX_COMPILE_FEATURES AND NOT CMAKE_C_COMPILE_FEATURES)
   )
   add_executable(WriteCompilerDetectionHeader "${CMAKE_CURRENT_BINARY_DIR}/dummy.cpp")
 
-  if((UNIX OR NOT CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
-      AND NOT CMAKE_CXX_COMPILER_ID STREQUAL "SunPro")
+  if(UNIX OR NOT CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
     include(CheckCXXSourceCompiles)
     check_cxx_source_compiles("#include \"${CMAKE_CURRENT_BINARY_DIR}/test_compiler_detection.h\"\nint main() { return 0; }\n"
       file_include_works