summaryrefslogtreecommitdiffstats
path: root/libevent/cmake/CheckFunctionKeywords.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'libevent/cmake/CheckFunctionKeywords.cmake')
-rw-r--r--libevent/cmake/CheckFunctionKeywords.cmake14
1 files changed, 14 insertions, 0 deletions
diff --git a/libevent/cmake/CheckFunctionKeywords.cmake b/libevent/cmake/CheckFunctionKeywords.cmake
new file mode 100644
index 0000000..3d968b8
--- /dev/null
+++ b/libevent/cmake/CheckFunctionKeywords.cmake
@@ -0,0 +1,14 @@
+include(CheckCSourceCompiles)
+
+macro(check_function_keywords _wordlist)
+ set(${_result} "")
+ foreach(flag ${_wordlist})
+ string(REGEX REPLACE "[-+/ ()]" "_" flagname "${flag}")
+ string(TOUPPER "${flagname}" flagname)
+ set(have_flag "HAVE_${flagname}")
+ check_c_source_compiles("${flag} void func(); void func() { } int main() { func(); return 0; }" ${have_flag})
+ if(${have_flag} AND NOT ${_result})
+ set(${_result} "${flag}")
+ endif(${have_flag} AND NOT ${_result})
+ endforeach(flag)
+endmacro(check_function_keywords)