diff options
Diffstat (limited to 'Modules/CheckLibraryExists.cmake')
-rw-r--r-- | Modules/CheckLibraryExists.cmake | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/Modules/CheckLibraryExists.cmake b/Modules/CheckLibraryExists.cmake new file mode 100644 index 0000000..856840e --- /dev/null +++ b/Modules/CheckLibraryExists.cmake @@ -0,0 +1,27 @@ +# +# Check if the function exists. +# +# CHECK_LIBRARY_EXISTS - macro which checks if the function exists +# FUNCTION - the name of the function +# VARIABLE - variable to store the result +# + +MACRO(CHECK_LIBRARY_EXISTS LIBRARY FUNCTION LOCATION VARIABLE) + SET(CHECK_LIBRARY_EXISTS_LIBRARY ${LIBRARY}) + SET(CHECK_LIBRARY_EXISTS_FUNCTION ${FUNCTION}) + SET(CHECK_LIBRARY_EXISTS_LOCATION ${LOCATION}) + SET(CHECK_LIBRARY_EXISTS_VARIABLE ${VARIABLE}) + SET(CHECK_LIBRARY_EXISTS_SOURCE ${CMAKE_ROOT}/Modules/CheckFunctionExists.c) + CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CheckLibraryExists.lists.in + ${PROJECT_BINARY_DIR}/CMakeTmp/CheckLibraryExists/CMakeLists.txt + IMMEDIATE) + TRY_COMPILE(${VARIABLE} + ${PROJECT_BINARY_DIR}/CMakeTmp/CheckLibraryExists + ${PROJECT_BINARY_DIR}/CMakeTmp/CheckLibraryExists + CHECK_LIBRARY_EXISTS OUTPUT_VARIABLE OUTPUT) + IF(NOT ${VARIABLE}) + WRITE_FILE(${PROJECT_BINARY_DIR}/CMakeError.log + "Determining if the function ${FUNCTION} exists failed with the following output:\n" + "${OUTPUT}\n") + ENDIF(NOT ${VARIABLE}) +ENDMACRO(CHECK_LIBRARY_EXISTS) |