1*663afb9bSAndroid Build Coastguard Workerinclude(CheckCSourceCompiles) 2*663afb9bSAndroid Build Coastguard Worker 3*663afb9bSAndroid Build Coastguard Workermacro(check_const_exists CONST FILES VARIABLE) 4*663afb9bSAndroid Build Coastguard Worker if (NOT DEFINED ${VARIABLE}) 5*663afb9bSAndroid Build Coastguard Worker set(check_const_exists_source "") 6*663afb9bSAndroid Build Coastguard Worker foreach(file ${FILES}) 7*663afb9bSAndroid Build Coastguard Worker set(check_const_exists_source 8*663afb9bSAndroid Build Coastguard Worker "${check_const_exists_source} 9*663afb9bSAndroid Build Coastguard Worker #include <${file}>") 10*663afb9bSAndroid Build Coastguard Worker endforeach() 11*663afb9bSAndroid Build Coastguard Worker set(check_const_exists_source 12*663afb9bSAndroid Build Coastguard Worker "${check_const_exists_source} 13*663afb9bSAndroid Build Coastguard Worker int main() { (void)${CONST}; return 0; }") 14*663afb9bSAndroid Build Coastguard Worker 15*663afb9bSAndroid Build Coastguard Worker check_c_source_compiles("${check_const_exists_source}" ${VARIABLE}) 16*663afb9bSAndroid Build Coastguard Worker 17*663afb9bSAndroid Build Coastguard Worker if (${${VARIABLE}}) 18*663afb9bSAndroid Build Coastguard Worker set(${VARIABLE} 1 CACHE INTERNAL "Have const ${CONST}") 19*663afb9bSAndroid Build Coastguard Worker message(STATUS "Looking for ${CONST} - found") 20*663afb9bSAndroid Build Coastguard Worker else() 21*663afb9bSAndroid Build Coastguard Worker set(${VARIABLE} 0 CACHE INTERNAL "Have const ${CONST}") 22*663afb9bSAndroid Build Coastguard Worker message(STATUS "Looking for ${CONST} - not found") 23*663afb9bSAndroid Build Coastguard Worker endif() 24*663afb9bSAndroid Build Coastguard Worker endif() 25*663afb9bSAndroid Build Coastguard Workerendmacro(check_const_exists) 26