xref: /aosp_15_r20/external/libevent/cmake/CheckFunctionKeywords.cmake (revision 663afb9b963571284e0f0a60f257164ab54f64bf)
1*663afb9bSAndroid Build Coastguard Workerinclude(CheckCSourceCompiles)
2*663afb9bSAndroid Build Coastguard Worker
3*663afb9bSAndroid Build Coastguard Workermacro(check_function_keywords _wordlist)
4*663afb9bSAndroid Build Coastguard Worker  set(${_result} "")
5*663afb9bSAndroid Build Coastguard Worker  foreach(flag ${_wordlist})
6*663afb9bSAndroid Build Coastguard Worker    string(REGEX REPLACE "[-+/ ()]" "_" flagname "${flag}")
7*663afb9bSAndroid Build Coastguard Worker    string(TOUPPER "${flagname}" flagname)
8*663afb9bSAndroid Build Coastguard Worker    set(have_flag "HAVE_${flagname}")
9*663afb9bSAndroid Build Coastguard Worker    check_c_source_compiles("${flag} void func(); void func() { } int main() { func(); return 0; }" ${have_flag})
10*663afb9bSAndroid Build Coastguard Worker    if(${have_flag} AND NOT ${_result})
11*663afb9bSAndroid Build Coastguard Worker      set(${_result} "${flag}")
12*663afb9bSAndroid Build Coastguard Worker    endif(${have_flag} AND NOT ${_result})
13*663afb9bSAndroid Build Coastguard Worker  endforeach(flag)
14*663afb9bSAndroid Build Coastguard Workerendmacro(check_function_keywords)
15