# From https://gitlab.kitware.com/cmake/community/-/wikis/contrib/macros/TestInline # Modified to use configure_file() approach, and to address script path issues. # See: https://stackoverflow.com/questions/3781222/add-definitions-vs-configure-file # Inspired from /usr/share/autoconf/autoconf/c.m4 GET_FILENAME_COMPONENT(_selfdir_TestInline "${CMAKE_CURRENT_LIST_FILE}" PATH) FOREACH(KEYWORD "inline" "__inline__" "__inline") IF(NOT DEFINED C_INLINE) TRY_COMPILE(C_HAS_${KEYWORD} "${CMAKE_CURRENT_BINARY_DIR}" "${_selfdir_TestInline}/TestInline.c" COMPILE_DEFINITIONS "-Dinline=${KEYWORD}") IF(C_HAS_${KEYWORD}) SET(C_INLINE TRUE) SET(INLINE_KEYWORD "${KEYWORD}" CACHE INTERNAL "inline macro defined as ${KEYWORD}") ENDIF(C_HAS_${KEYWORD}) ENDIF(NOT DEFINED C_INLINE) ENDFOREACH(KEYWORD) IF(NOT DEFINED C_INLINE) SET(INLINE_KEYWORD "" CACHE INTERNAL "inline macro definition not required") ENDIF(NOT DEFINED C_INLINE)