diff options
author | Bill Hoffman <bill.hoffman@kitware.com> | 2002-12-05 18:44:11 (GMT) |
---|---|---|
committer | Bill Hoffman <bill.hoffman@kitware.com> | 2002-12-05 18:44:11 (GMT) |
commit | 96189f79d582f90758ba1b4f691031b1d7fa02f3 (patch) | |
tree | 36bc488b7a77d01a9b9be3b1e4b0ab8963378fdc /Modules/CMakeBackwardCompatibilityCXX.cmake | |
parent | 8d20322160e6e8c7bf9c6d69de9319f57373de5d (diff) | |
download | CMake-96189f79d582f90758ba1b4f691031b1d7fa02f3.zip CMake-96189f79d582f90758ba1b4f691031b1d7fa02f3.tar.gz CMake-96189f79d582f90758ba1b4f691031b1d7fa02f3.tar.bz2 |
ENH: unify EnableLanguage across all generators
Diffstat (limited to 'Modules/CMakeBackwardCompatibilityCXX.cmake')
-rw-r--r-- | Modules/CMakeBackwardCompatibilityCXX.cmake | 65 |
1 files changed, 33 insertions, 32 deletions
diff --git a/Modules/CMakeBackwardCompatibilityCXX.cmake b/Modules/CMakeBackwardCompatibilityCXX.cmake index fb41caa..c11d56d 100644 --- a/Modules/CMakeBackwardCompatibilityCXX.cmake +++ b/Modules/CMakeBackwardCompatibilityCXX.cmake @@ -1,34 +1,35 @@ # +IF(NOT CMAKE_SKIP_COMPATIBILITY_TESTS) + # check for some ANSI flags in the CXX compiler if it is not gnu + IF(NOT CMAKE_COMPILER_IS_GNUCXX) + INCLUDE(${CMAKE_ROOT}/Modules/TestCXXAcceptsFlag.cmake) + SET(CMAKE_TRY_ANSI_CXX_FLAGS "") + IF(CMAKE_SYSTEM MATCHES "IRIX.*") + SET(CMAKE_TRY_ANSI_CXX_FLAGS "-LANG:std") + ENDIF(CMAKE_SYSTEM MATCHES "IRIX.*") + IF(CMAKE_SYSTEM MATCHES "OSF.*") + SET(CMAKE_TRY_ANSI_CXX_FLAGS "-std strict_ansi -nopure_cname") + ENDIF(CMAKE_SYSTEM MATCHES "OSF.*") + # if CMAKE_TRY_ANSI_CXX_FLAGS has something in it, see + # if the compiler accepts it + IF( CMAKE_TRY_ANSI_CXX_FLAGS MATCHES ".+") + CHECK_CXX_ACCEPTS_FLAG(${CMAKE_TRY_ANSI_CXX_FLAGS} CMAKE_CXX_ACCEPTS_FLAGS) + # if the compiler liked the flag then set CMAKE_ANSI_CXXFLAGS + # to the flag + IF(CMAKE_CXX_ACCEPTS_FLAGS) + SET(CMAKE_ANSI_CXXFLAGS ${CMAKE_TRY_ANSI_CXX_FLAGS} CACHE INTERNAL + "What flags are required by the c++ compiler to make it ansi." ) + ENDIF(CMAKE_CXX_ACCEPTS_FLAGS) + ENDIF( CMAKE_TRY_ANSI_CXX_FLAGS MATCHES ".+") + ENDIF(NOT CMAKE_COMPILER_IS_GNUCXX) -# check for some ANSI flags in the CXX compiler if it is not gnu -IF(NOT CMAKE_COMPILER_IS_GNUCXX) - INCLUDE(${CMAKE_ROOT}/Modules/TestCXXAcceptsFlag.cmake) - SET(CMAKE_TRY_ANSI_CXX_FLAGS "") - IF(CMAKE_SYSTEM MATCHES "IRIX.*") - SET(CMAKE_TRY_ANSI_CXX_FLAGS "-LANG:std") - ENDIF(CMAKE_SYSTEM MATCHES "IRIX.*") - IF(CMAKE_SYSTEM MATCHES "OSF.*") - SET(CMAKE_TRY_ANSI_CXX_FLAGS "-std strict_ansi -nopure_cname") - ENDIF(CMAKE_SYSTEM MATCHES "OSF.*") - # if CMAKE_TRY_ANSI_CXX_FLAGS has something in it, see - # if the compiler accepts it - IF( CMAKE_TRY_ANSI_CXX_FLAGS MATCHES ".+") - CHECK_CXX_ACCEPTS_FLAG(${CMAKE_TRY_ANSI_CXX_FLAGS} CMAKE_CXX_ACCEPTS_FLAGS) - # if the compiler liked the flag then set CMAKE_ANSI_CXXFLAGS - # to the flag - IF(CMAKE_CXX_ACCEPTS_FLAGS) - SET(CMAKE_ANSI_CXXFLAGS ${CMAKE_TRY_ANSI_CXX_FLAGS} CACHE INTERNAL - "What flags are required by the c++ compiler to make it ansi." ) - ENDIF(CMAKE_CXX_ACCEPTS_FLAGS) - ENDIF( CMAKE_TRY_ANSI_CXX_FLAGS MATCHES ".+") -ENDIF(NOT CMAKE_COMPILER_IS_GNUCXX) - -INCLUDE(${CMAKE_ROOT}/Modules/TestForANSIStreamHeaders.cmake) -INCLUDE(${CMAKE_ROOT}/Modules/CheckIncludeFileCXX.cmake) -INCLUDE(${CMAKE_ROOT}/Modules/TestForSTDNamespace.cmake) -INCLUDE(${CMAKE_ROOT}/Modules/TestForANSIForScope.cmake) -CHECK_INCLUDE_FILE_CXX("sstream" CMAKE_HAS_ANSI_STRING_STREAM) -IF(NOT CMAKE_HAS_ANSI_STRING_STREAM) - SET( CMAKE_NO_ANSI_STRING_STREAM 1 CACHE INTERNAL - "Does the compiler support sstream or stringstream.") -ENDIF(NOT CMAKE_HAS_ANSI_STRING_STREAM) + INCLUDE(${CMAKE_ROOT}/Modules/TestForANSIStreamHeaders.cmake) + INCLUDE(${CMAKE_ROOT}/Modules/CheckIncludeFileCXX.cmake) + INCLUDE(${CMAKE_ROOT}/Modules/TestForSTDNamespace.cmake) + INCLUDE(${CMAKE_ROOT}/Modules/TestForANSIForScope.cmake) + CHECK_INCLUDE_FILE_CXX("sstream" CMAKE_HAS_ANSI_STRING_STREAM) + IF(NOT CMAKE_HAS_ANSI_STRING_STREAM) + SET( CMAKE_NO_ANSI_STRING_STREAM 1 CACHE INTERNAL + "Does the compiler support sstream or stringstream.") + ENDIF(NOT CMAKE_HAS_ANSI_STRING_STREAM) +ENDIF(NOT CMAKE_SKIP_COMPATIBILITY_TESTS) |