Warning, /office/kexi/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