diff options
author | Alan Antonuk <aega@med.umich.edu> | 2011-06-06 17:25:25 -0400 |
---|---|---|
committer | Alan Antonuk <aega@med.umich.edu> | 2011-06-06 17:25:25 -0400 |
commit | de2436dbc025f23ed51bee65ceff4c6219cfcbed (patch) | |
tree | 91a381c28cf064b5be26dfa7a8440c9ff99ee13e /TestCInline.cmake | |
parent | e054a2e4f24d56ff3d737df9776d6ffeb829e2aa (diff) | |
download | rabbitmq-c-github-ask-de2436dbc025f23ed51bee65ceff4c6219cfcbed.tar.gz |
Changes to support building on Win32/64
Diffstat (limited to 'TestCInline.cmake')
-rw-r--r-- | TestCInline.cmake | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/TestCInline.cmake b/TestCInline.cmake new file mode 100644 index 0000000..4fdd4c5 --- /dev/null +++ b/TestCInline.cmake @@ -0,0 +1,28 @@ +#Inspired from http://www.cmake.org/Wiki/CMakeTestInline + +IF(NOT DEFINED C_INLINE_DETECTED) + + SET(INLINE_TEST_SRC "/* Inspired by autoconf's c.m4 */ +static inline int static_foo() {return 0\;} +int main(int argc, char *argv[]){return 0\;} +") + + FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/CMakeTestCInline.c ${INLINE_TEST_SRC}) + + FOREACH(KEYWORD "inline" "__inline__" "__inline") + IF(NOT DEFINED C_INLINE) + TRY_COMPILE(C_HAS_${KEYWORD} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR}/CMakeTestCInline.c + COMPILE_DEFINITIONS "-Dinline=${KEYWORD}" + ) + IF(C_HAS_${KEYWORD}) + SET(C_INLINE ${KEYWORD}) + ENDIF(C_HAS_${KEYWORD}) + ENDIF(NOT DEFINED C_INLINE) + ENDFOREACH(KEYWORD) + + SET(C_INLINE_DETECTED True CACHE BOOL INTERNAL) + +ENDIF(NOT DEFINED C_INLINE_DETECTED) + |