CMAKE_MINIMUM_REQUIRED(VERSION 2.6) MACRO (STRTEST BASE_DIR LIB_DIR) IF (BASE_DIR) MESSAGE(STATUS "BASE_DIR IS!") ELSE (BASE_DIR) MESSAGE(STATUS "BASE_DIR IS NOT! " ${BASE_DIR}) ENDIF (BASE_DIR) IF (DEFINED BASE_DIR) MESSAGE(STATUS "BASE_DIR IS!") ELSE (DEFINED BASE_DIR) MESSAGE(STATUS "BASE_DIR IS NOT! " ${BASE_DIR}) ENDIF (DEFINED BASE_DIR) IF ("${BASE_DIR}") MESSAGE(STATUS "BASE_DIR IS!") ELSE ("${BASE_DIR}") MESSAGE(STATUS "BASE_DIR IS NOT! " ${BASE_DIR}) ENDIF ("${BASE_DIR}") IF (NOT BASE_DIR STREQUAL "") MESSAGE(STATUS "BASE_DIR IS!") ELSE (NOT BASE_DIR STREQUAL "") MESSAGE(STATUS "BASE_DIR IS NOT! " ${BASE_DIR}) ENDIF (NOT BASE_DIR STREQUAL "") SET(${LIB_DIR} "${BASE_DIR}") ENDMACRO (STRTEST BASE_DIR LIB_DIR) SET(SOMEDIR "/usr/local") STRTEST("${SOMEDIR}/lib" LIB_DIRS) MESSAGE(STATUS "Lib_dirs: " ${LIB_DIRS}) SET(TESTVAR "${SOMEDIR}/lib") IF (TESTVAR) MESSAGE(STATUS "TESTVAR IS!") ELSE (TESTVAR) MESSAGE(STATUS "TESTVAR IS NOT! " ${TESTVAR}) ENDIF (TESTVAR) IF (DEFINED TESTVAR) MESSAGE(STATUS "TESTVAR IS!") ELSE (DEFINED TESTVAR) MESSAGE(STATUS "TESTVAR IS NOT! " ${TESTVAR}) ENDIF (DEFINED TESTVAR) IF ("${TESTVAR}") MESSAGE(STATUS "TESTVAR IS!") ELSE ("${TESTVAR}") MESSAGE(STATUS "TESTVAR IS NOT! " ${TESTVAR}) ENDIF ("${TESTVAR}") IF (NOT TESTVAR STREQUAL "") MESSAGE(STATUS "TESTVAR IS!") ELSE (NOT TESTVAR STREQUAL "") MESSAGE(STATUS "TESTVAR IS NOT! " ${TESTVAR}) ENDIF (NOT TESTVAR STREQUAL "")