summaryrefslogtreecommitdiff
path: root/Modules/CheckIncludeFile.cmake
diff options
context:
space:
mode:
authorAndy Cedilnik <andy.cedilnik@kitware.com>2002-09-20 13:40:39 -0400
committerAndy Cedilnik <andy.cedilnik@kitware.com>2002-09-20 13:40:39 -0400
commit5a08e1b6dcd1a476f7750839204205f54bef8e13 (patch)
tree83d81e100328138e74815d56abc3862d299ca297 /Modules/CheckIncludeFile.cmake
parentfdcd1973523d1b9e85dae16e547aec7a0ac43a9b (diff)
downloadcmake-5a08e1b6dcd1a476f7750839204205f54bef8e13.tar.gz
Add macro which checks if the header file exists
Diffstat (limited to 'Modules/CheckIncludeFile.cmake')
-rw-r--r--Modules/CheckIncludeFile.cmake26
1 files changed, 26 insertions, 0 deletions
diff --git a/Modules/CheckIncludeFile.cmake b/Modules/CheckIncludeFile.cmake
new file mode 100644
index 0000000000..f88c7caf61
--- /dev/null
+++ b/Modules/CheckIncludeFile.cmake
@@ -0,0 +1,26 @@
+#
+# Check if the include file exists.
+#
+# CHECK_INCLUDE_FILE - macro which checks the include file exists.
+# INCLUDE - name of include file
+# VARIABLE - variable to return result
+#
+
+MACRO(CHECK_INCLUDE_FILE INCLUDE VARIABLE)
+ SET(CHECK_INCLUDE_FILE_VAR ${INCLUDE})
+ CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CheckIncludeFile.c.in
+ ${PROJECT_BINARY_DIR}/CheckIncludeFile.c IMMEDIATE)
+ TRY_COMPILE(COMPILE_OK
+ ${PROJECT_BINARY_DIR}
+ ${PROJECT_BINARY_DIR}/CheckIncludeFile.c
+ COMPILE_DEFINITIONS -DCHECK_INCLUDE_FILE="${INCLUDE}"
+ OUTPUT_VARIABLE OUTPUT)
+ IF(COMPILE_OK)
+ SET(${VARIABLE} ${COMPILE_OK})
+ ELSE(COMPILE_OK)
+ WRITE_FILE(${PROJECT_BINARY_DIR}/CMakeError.log
+ "Determining if the include file ${INCLUDE} "
+ "exists failed with the following output:\n"
+ "${OUTPUT}\n")
+ ENDIF(COMPILE_OK)
+ENDMACRO(CHECK_INCLUDE_FILE)