summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2009-04-18 18:37:04 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2009-04-18 18:37:04 (GMT)
commitad113d4df2632ed4a8f5233ca9319c6092c39fd6 (patch)
tree6e77edd34c7811c65f0ced57a8bf04ca79ca2213
parent7929462a3974e397d75d64bdd3492059107255e3 (diff)
downloadCMake-ad113d4df2632ed4a8f5233ca9319c6092c39fd6.zip
CMake-ad113d4df2632ed4a8f5233ca9319c6092c39fd6.tar.gz
CMake-ad113d4df2632ed4a8f5233ca9319c6092c39fd6.tar.bz2
BUG: fix cmake so that if you configure with a bad env for cl, then with a good path, it will configure correctly
-rw-r--r--Modules/CMakeTestCCompiler.cmake5
-rw-r--r--Modules/CMakeTestCXXCompiler.cmake5
2 files changed, 10 insertions, 0 deletions
diff --git a/Modules/CMakeTestCCompiler.cmake b/Modules/CMakeTestCCompiler.cmake
index 0eac2fc..00167cc 100644
--- a/Modules/CMakeTestCCompiler.cmake
+++ b/Modules/CMakeTestCCompiler.cmake
@@ -29,6 +29,11 @@ IF(NOT CMAKE_C_COMPILER_WORKS)
FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
"Determining if the C compiler works failed with "
"the following output:\n${OUTPUT}\n\n")
+ # if the compiler is broken make sure to remove the platform file
+ # since Windows-cl configures both c/cxx files both need to be removed
+ # when c or c++ fails
+ FILE(REMOVE ${CMAKE_PLATFORM_ROOT_BIN}/CMakeCPlatform.cmake )
+ FILE(REMOVE ${CMAKE_PLATFORM_ROOT_BIN}/CMakeCXXPlatform.cmake )
MESSAGE(FATAL_ERROR "The C compiler \"${CMAKE_C_COMPILER}\" "
"is not able to compile a simple test program.\nIt fails "
"with the following output:\n ${OUTPUT}\n\n"
diff --git a/Modules/CMakeTestCXXCompiler.cmake b/Modules/CMakeTestCXXCompiler.cmake
index 47a315a..dfa1aae 100644
--- a/Modules/CMakeTestCXXCompiler.cmake
+++ b/Modules/CMakeTestCXXCompiler.cmake
@@ -19,6 +19,11 @@ ENDIF(NOT CMAKE_CXX_COMPILER_WORKS)
IF(NOT CMAKE_CXX_COMPILER_WORKS)
MESSAGE(STATUS "Check for working CXX compiler: ${CMAKE_CXX_COMPILER} -- broken")
+ # if the compiler is broken make sure to remove the platform file
+ # since Windows-cl configures both c/cxx files both need to be removed
+ # when c or c++ fails
+ FILE(REMOVE ${CMAKE_PLATFORM_ROOT_BIN}/CMakeCPlatform.cmake )
+ FILE(REMOVE ${CMAKE_PLATFORM_ROOT_BIN}/CMakeCXXPlatform.cmake )
FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
"Determining if the CXX compiler works failed with "
"the following output:\n${OUTPUT}\n\n")