diff options
author | Bill Hoffman <bill.hoffman@kitware.com> | 2007-05-17 14:07:51 (GMT) |
---|---|---|
committer | Bill Hoffman <bill.hoffman@kitware.com> | 2007-05-17 14:07:51 (GMT) |
commit | 871f7cf2220906169bf1f7aebdf508c2e57ba2e1 (patch) | |
tree | d74b617827f536ceea81c05dda2f7829645942c8 | |
parent | 0c7130905d3e32dd521bbcbf043c589ef5b6b1e5 (diff) | |
download | CMake-871f7cf2220906169bf1f7aebdf508c2e57ba2e1.zip CMake-871f7cf2220906169bf1f7aebdf508c2e57ba2e1.tar.gz CMake-871f7cf2220906169bf1f7aebdf508c2e57ba2e1.tar.bz2 |
ENH: fix up compiler id to be more robust
-rw-r--r-- | Modules/CMakeCCompilerId.c | 2 | ||||
-rw-r--r-- | Modules/CMakeCXXCompilerId.cpp | 6 | ||||
-rw-r--r-- | Modules/CMakeDetermineCompilerId.cmake | 11 |
3 files changed, 13 insertions, 6 deletions
diff --git a/Modules/CMakeCCompilerId.c b/Modules/CMakeCCompilerId.c index 0d8a215..045b6ae 100644 --- a/Modules/CMakeCCompilerId.c +++ b/Modules/CMakeCCompilerId.c @@ -47,5 +47,5 @@ static char const info_compiler[] = "INFO:compiler[" /* Make sure the information strings are referenced. */ int main() { - return ((int)&info_compiler) + ((int)&info_platform); + return (&info_compiler[0] != &info_platform[0]); } diff --git a/Modules/CMakeCXXCompilerId.cpp b/Modules/CMakeCXXCompilerId.cpp index 51788b6..0d8e32a 100644 --- a/Modules/CMakeCXXCompilerId.cpp +++ b/Modules/CMakeCXXCompilerId.cpp @@ -48,9 +48,5 @@ static char const info_compiler[] = "INFO:compiler[" /* Make sure the information strings are referenced. */ int main() { - if(&info_compiler[0] != &info_platform[0]) - { - return 1; - } - return 0; + return (&info_compiler[0] != &info_platform[0]); } diff --git a/Modules/CMakeDetermineCompilerId.cmake b/Modules/CMakeDetermineCompilerId.cmake index 9a06acf..b612e75 100644 --- a/Modules/CMakeDetermineCompilerId.cmake +++ b/Modules/CMakeDetermineCompilerId.cmake @@ -53,6 +53,10 @@ MACRO(CMAKE_DETERMINE_COMPILER_ID lang flagvar src) "${CMAKE_${lang}_COMPILER_ID_SRC}\" failed with the following output:\n" "${CMAKE_${lang}_COMPILER_ID_RESULT}\n" "${CMAKE_${lang}_COMPILER_ID_OUTPUT}\n\n") + MESSAGE(FATAL_ERROR "Compiling the ${lang} compiler identification source file \"" + "${CMAKE_${lang}_COMPILER_ID_SRC}\" failed with the following output:\n" + "${CMAKE_${lang}_COMPILER_ID_RESULT}\n" + "${CMAKE_${lang}_COMPILER_ID_OUTPUT}\n\n") ELSE(CMAKE_${lang}_COMPILER_ID_RESULT) # Compilation succeeded. FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log @@ -110,5 +114,12 @@ MACRO(CMAKE_DETERMINE_COMPILER_ID lang flagvar src) "${CMAKE_${lang}_COMPILER_ID_DIR} " "with a name known to CMake.\n\n") ENDIF(CMAKE_${lang}_COMPILER_ID_EXE) + + IF(CMAKE_${lang}_COMPILER_ID) + MESSAGE(STATUS "The ${lang} compiler identification is " + "${CMAKE_${lang}_COMPILER_ID}") + ELSE(CMAKE_${lang}_COMPILER_ID) + MESSAGE(STATUS "The ${lang} compiler identification is unknown") + ENDIF(CMAKE_${lang}_COMPILER_ID) ENDIF(CMAKE_${lang}_COMPILER_ID_RESULT) ENDMACRO(CMAKE_DETERMINE_COMPILER_ID) |