From 0d4cd0436bc1a246cc1556e000bf051fa5558582 Mon Sep 17 00:00:00 2001 From: Bill Hoffman Date: Fri, 3 Sep 2004 15:19:58 -0400 Subject: ENH better test for free VC tools --- Modules/CMakeTestForFreeVC.cxx | 3 +++ Modules/Platform/Windows-cl.cmake | 13 +++---------- 2 files changed, 6 insertions(+), 10 deletions(-) create mode 100644 Modules/CMakeTestForFreeVC.cxx diff --git a/Modules/CMakeTestForFreeVC.cxx b/Modules/CMakeTestForFreeVC.cxx new file mode 100644 index 0000000..e580c1f --- /dev/null +++ b/Modules/CMakeTestForFreeVC.cxx @@ -0,0 +1,3 @@ +#include + +int main(){return 0;} diff --git a/Modules/Platform/Windows-cl.cmake b/Modules/Platform/Windows-cl.cmake index a32d2ba..f71beb7 100644 --- a/Modules/Platform/Windows-cl.cmake +++ b/Modules/Platform/Windows-cl.cmake @@ -73,29 +73,22 @@ IF(CMAKE_GENERATOR MATCHES "NMake Makefiles") SET(CMAKE_COMPILER_2005 1) ENDIF("${CMAKE_COMPILER_OUTPUT}" MATCHES ".*VERSION=1[4-9][0-9][0-9].*" ) ENDIF(NOT CMAKE_COMPILER_RETURN) + MAKE_DIRECTORY("${CMAKE_BINARY_DIR}/CMakeTmp") # try to figure out if we are running the free command line # tools from Microsoft. These tools do not provide debug libraries, # so the link flags used have to be different. - FILE(WRITE ${CMAKE_BINARY_DIR}/CMakeTmp/testForFreeVC.cxx - "#include\n int main(){return 0;}\n") EXEC_PROGRAM(${CMAKE_CXX_COMPILER} ${CMAKE_BINARY_DIR}/CMakeTmp ARGS /nologo /MD /EHsc - \"${CMAKE_BINARY_DIR}/CMakeTmp/testForFreeVC.cxx\" + \"${CMAKE_ROOT}/Modules/CMakeTestForFreeVC.cxx\" OUTPUT_VARIABLE CMAKE_COMPILER_OUTPUT RETURN_VALUE CMAKE_COMPILER_RETURN ) - MESSAGE("OUTPUT_VARIABLE ${OUTPUT_VARIABLE}") IF(CMAKE_COMPILER_RETURN) - IF("${CMAKE_COMPILER_RETURN}" EQUAL "2") - SET(CMAKE_USING_VC_FREE_TOOLS 1) - ELSE("${CMAKE_COMPILER_RETURN}" EQUAL "2") - SET(CMAKE_USING_VC_FREE_TOOLS 0) - ENDIF("${CMAKE_COMPILER_RETURN}" EQUAL "2") + SET(CMAKE_USING_VC_FREE_TOOLS 1) ELSE(CMAKE_COMPILER_RETURN) SET(CMAKE_USING_VC_FREE_TOOLS 0) ENDIF(CMAKE_COMPILER_RETURN) - ENDIF(CMAKE_GENERATOR MATCHES "NMake Makefiles") -- cgit v0.12