Warning, /libraries/kdb/cmake/modules/MacroPushRequiredVars.cmake is written in an unsupported language. File is not indexed.
0001 # this module defines two macros: 0002 # MACRO_PUSH_REQUIRED_VARS() 0003 # and 0004 # MACRO_POP_REQUIRED_VARS() 0005 # use these if you call cmake macros which use 0006 # any of the CMAKE_REQUIRED_XXX variables 0007 # 0008 # Usage: 0009 # MACRO_PUSH_REQUIRED_VARS() 0010 # SET(CMAKE_REQUIRED_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} -DSOME_MORE_DEF) 0011 # CHECK_FUNCTION_EXISTS(...) 0012 # MACRO_POP_REQUIRED_VARS() 0013 0014 # Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org> 0015 # 0016 # Redistribution and use is allowed according to the terms of the BSD license. 0017 # For details see the accompanying COPYING-CMAKE-SCRIPTS file. 0018 0019 macro(MACRO_PUSH_REQUIRED_VARS) 0020 0021 if(NOT DEFINED _PUSH_REQUIRED_VARS_COUNTER) 0022 set(_PUSH_REQUIRED_VARS_COUNTER 0) 0023 endif() 0024 0025 math(EXPR _PUSH_REQUIRED_VARS_COUNTER "${_PUSH_REQUIRED_VARS_COUNTER}+1") 0026 0027 if(DEFINED CMAKE_REQUIRED_INCLUDES) 0028 set(_CMAKE_REQUIRED_INCLUDES_SAVE_${_PUSH_REQUIRED_VARS_COUNTER} ${CMAKE_REQUIRED_INCLUDES}) 0029 endif() 0030 if(DEFINED CMAKE_REQUIRED_DEFINITIONS) 0031 set(_CMAKE_REQUIRED_DEFINITIONS_SAVE_${_PUSH_REQUIRED_VARS_COUNTER} ${CMAKE_REQUIRED_DEFINITIONS}) 0032 endif() 0033 if(DEFINED CMAKE_REQUIRED_LIBRARIES) 0034 set(_CMAKE_REQUIRED_LIBRARIES_SAVE_${_PUSH_REQUIRED_VARS_COUNTER} ${CMAKE_REQUIRED_LIBRARIES}) 0035 endif() 0036 if(DEFINED CMAKE_REQUIRED_FLAGS) 0037 set(_CMAKE_REQUIRED_FLAGS_SAVE_${_PUSH_REQUIRED_VARS_COUNTER} ${CMAKE_REQUIRED_FLAGS}) 0038 endif() 0039 endmacro(MACRO_PUSH_REQUIRED_VARS) 0040 0041 macro(MACRO_POP_REQUIRED_VARS) 0042 0043 # don't pop more than we pushed 0044 if("${_PUSH_REQUIRED_VARS_COUNTER}" GREATER "0") 0045 if(DEFINED _CMAKE_REQUIRED_INCLUDES_SAVE_${_PUSH_REQUIRED_VARS_COUNTER}) 0046 set(CMAKE_REQUIRED_INCLUDES ${_CMAKE_REQUIRED_INCLUDES_SAVE_${_PUSH_REQUIRED_VARS_COUNTER}}) 0047 endif() 0048 if(DEFINED _CMAKE_REQUIRED_DEFINITIONS_SAVE_${_PUSH_REQUIRED_VARS_COUNTER}) 0049 set(CMAKE_REQUIRED_DEFINITIONS ${_CMAKE_REQUIRED_DEFINITIONS_SAVE_${_PUSH_REQUIRED_VARS_COUNTER}}) 0050 endif() 0051 if(DEFINED _CMAKE_REQUIRED_LIBRARIES_SAVE_${_PUSH_REQUIRED_VARS_COUNTER}) 0052 set(CMAKE_REQUIRED_LIBRARIES ${_CMAKE_REQUIRED_LIBRARIES_SAVE_${_PUSH_REQUIRED_VARS_COUNTER}}) 0053 endif() 0054 if(DEFINED _CMAKE_REQUIRED_FLAGS_SAVE_${_PUSH_REQUIRED_VARS_COUNTER}) 0055 set(CMAKE_REQUIRED_FLAGS ${_CMAKE_REQUIRED_FLAGS_SAVE_${_PUSH_REQUIRED_VARS_COUNTER}}) 0056 endif() 0057 0058 math(EXPR _PUSH_REQUIRED_VARS_COUNTER "${_PUSH_REQUIRED_VARS_COUNTER}-1") 0059 endif() 0060 0061 endmacro(MACRO_POP_REQUIRED_VARS) 0062