From 7e824e83a9c97234f23640188c590201eeffea5d Mon Sep 17 00:00:00 2001 From: Brad King Date: Fri, 13 Dec 2002 14:58:55 -0500 Subject: ENH: Don't repeat check even if answer was no. --- Modules/CheckVariableExists.cmake | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) (limited to 'Modules/CheckVariableExists.cmake') diff --git a/Modules/CheckVariableExists.cmake b/Modules/CheckVariableExists.cmake index daa87a0856..9eaf73b826 100644 --- a/Modules/CheckVariableExists.cmake +++ b/Modules/CheckVariableExists.cmake @@ -6,18 +6,20 @@ # MACRO(CHECK_VARIABLE_EXISTS VAR VARIABLE) - SET(MACRO_CHECK_VARIABLE_DEFINITIONS -DCHECK_VARIABLE_EXISTS=${VAR}) - TRY_COMPILE(${VARIABLE} - ${PROJECT_BINARY_DIR} - ${CMAKE_ROOT}/Modules/CheckVariableExists.c - CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_VARIABLE_DEFINITIONS} - OUTPUT_VARIABLE OUTPUT) - IF(${VARIABLE}) - SET(${VARIABLE} 1 CACHE INTERNAL "Have variable ${VAR}") - ELSE(${VARIABLE}) - SET(${VARIABLE} "" CACHE INTERNAL "Have variable ${VAR}") - WRITE_FILE(${PROJECT_BINARY_DIR}/CMakeError.log - "Determining if the variable ${VAR} exists failed with the following output:\n" - "${OUTPUT}\n" APPEND) - ENDIF(${VARIABLE}) + IF("${VARIABLE}" MATCHES "^${VARIABLE}$") + SET(MACRO_CHECK_VARIABLE_DEFINITIONS -DCHECK_VARIABLE_EXISTS=${VAR}) + TRY_COMPILE(${VARIABLE} + ${PROJECT_BINARY_DIR} + ${CMAKE_ROOT}/Modules/CheckVariableExists.c + CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_VARIABLE_DEFINITIONS} + OUTPUT_VARIABLE OUTPUT) + IF(${VARIABLE}) + SET(${VARIABLE} 1 CACHE INTERNAL "Have variable ${VAR}") + ELSE(${VARIABLE}) + SET(${VARIABLE} "" CACHE INTERNAL "Have variable ${VAR}") + WRITE_FILE(${PROJECT_BINARY_DIR}/CMakeError.log + "Determining if the variable ${VAR} exists failed with the following output:\n" + "${OUTPUT}\n" APPEND) + ENDIF(${VARIABLE}) + ENDIF("${VARIABLE}" MATCHES "^${VARIABLE}$") ENDMACRO(CHECK_VARIABLE_EXISTS) -- cgit v1.2.1