]> git.ipfire.org Git - thirdparty/libarchive.git/commitdiff
Prefer the standard CHECK_INCLUDE_FILE() and CHECK_INCLUDE_FILES(),
authorTim Kientzle <kientzle@gmail.com>
Fri, 7 Aug 2009 04:42:18 +0000 (00:42 -0400)
committerTim Kientzle <kientzle@gmail.com>
Fri, 7 Aug 2009 04:42:18 +0000 (00:42 -0400)
refactor some of the header checks that rely on other headers.

SVN-Revision: 1352

CMakeLists.txt
build/cmake/CheckHeaders.cmake [deleted file]

index d388955deb5ab4548151062b6effb429550da910..484025a218b9fcecc3dcb766ef2bb950d63676c0 100644 (file)
@@ -49,10 +49,10 @@ ENDIF(WIN32 AND NOT CYGWIN)
 INCLUDE(CheckCSourceRuns)
 INCLUDE(CheckFileOffsetBits)
 INCLUDE(CheckFuncs)
-INCLUDE(CheckHeaders)
 INCLUDE(CheckHeaderDirent)
 INCLUDE(CheckHeaderSTDC)
 INCLUDE(CheckIncludeFile)
+INCLUDE(CheckIncludeFiles)
 INCLUDE(CheckLibraryExists)
 INCLUDE(CheckStructMember)
 INCLUDE(CheckSymbolExists)
@@ -181,25 +181,62 @@ ENDIF(LZMA_FOUND)
 #
 CHECK_HEADER_STDC()
 CHECK_HEADER_DIRENT()
-# TODO : AC_HEADER_SYS_WAIT
-CHECK_INCLUDE_FILE(sys/wait.h       HAVE_SYS_WAIT_H)
-
-CHECK_HEADERS(acl/libacl.h attr/xattr.h ctype.h errno.h)
-CHECK_HEADERS(ext2fs/ext2_fs.h fcntl.h grp.h)
-CHECK_HEADERS(inttypes.h io.h langinfo.h limits.h linux/fs.h)
-CHECK_HEADERS(locale.h paths.h poll.h pwd.h regex.h signal.h stdarg.h)
-CHECK_HEADERS(stdint.h stdlib.h string.h)
-CHECK_HEADERS(sys/acl.h sys/extattr.h sys/ioctl.h sys/mkdev.h)
-CHECK_HEADERS(sys/param.h sys/poll.h sys/select.h sys/time.h sys/utime.h)
-CHECK_HEADERS(time.h unistd.h utime.h wchar.h wctype.h windows.h)
-
-CHECK_INCLUDE_FILE(direct.h         HAVE_DIRECT_H)
-CHECK_INCLUDE_FILE(dlfcn.h          HAVE_DLFCN_H)
-CHECK_INCLUDE_FILE(memory.h         HAVE_MEMORY_H)
-CHECK_INCLUDE_FILE(process.h        HAVE_PROCESS_H)
-CHECK_INCLUDE_FILE(strings.h        HAVE_STRINGS_H)
-CHECK_INCLUDE_FILE(sys/stat.h       HAVE_SYS_STAT_H)
-CHECK_INCLUDE_FILE(sys/types.h      HAVE_SYS_TYPES_H)
+
+CHECK_INCLUDE_FILE("acl/libacl.h" HAVE_ACL_LIBACL_H)
+CHECK_INCLUDE_FILE("attr/xattr.h" HAVE_ATTR_XATTR_H)
+CHECK_INCLUDE_FILE("ctype.h" HAVE_CTYPE_H)
+CHECK_INCLUDE_FILE("direct.h" HAVE_DIRECT_H)
+CHECK_INCLUDE_FILE("dlfcn.h" HAVE_DLFCN_H)
+CHECK_INCLUDE_FILE("errno.h" HAVE_ERRNO_H)
+CHECK_INCLUDE_FILE("ext2fs/ext2_fs.h" HAVE_EXT2FS_EXT2_FS_H)
+CHECK_INCLUDE_FILE("fcntl.h" HAVE_FCNTL_H)
+CHECK_INCLUDE_FILE("grp.h" HAVE_GRP_H)
+CHECK_INCLUDE_FILE("inttypes.h" HAVE_INTTYPES_H)
+CHECK_INCLUDE_FILE("io.h" HAVE_IO_H)
+CHECK_INCLUDE_FILE("langinfo.h" HAVE_LANGINFO_H)
+CHECK_INCLUDE_FILE("limits.h" HAVE_LIMITS_H)
+CHECK_INCLUDE_FILE("linux/fs.h" HAVE_LINUX_FS_H)
+CHECK_INCLUDE_FILE("locale.h" HAVE_LOCALE_H)
+CHECK_INCLUDE_FILE("memory.h" HAVE_MEMORY_H)
+CHECK_INCLUDE_FILE("paths.h" HAVE_PATHS_H)
+CHECK_INCLUDE_FILE("poll.h" HAVE_POLL_H)
+CHECK_INCLUDE_FILE("process.h" HAVE_PROCESS_H)
+CHECK_INCLUDE_FILE("pwd.h" HAVE_PWD_H)
+CHECK_INCLUDE_FILE("regex.h" HAVE_REGEX_H)
+CHECK_INCLUDE_FILE("signal.h" HAVE_SIGNAL_H)
+CHECK_INCLUDE_FILE("stdarg.h" HAVE_STDARG_H)
+CHECK_INCLUDE_FILE("stdint.h" HAVE_STDINT_H)
+CHECK_INCLUDE_FILE("stdlib.h" HAVE_STDLIB_H)
+CHECK_INCLUDE_FILE("string.h" HAVE_STRING_H)
+CHECK_INCLUDE_FILE("strings.h" HAVE_STRINGS_H)
+CHECK_INCLUDE_FILE("sys/acl.h" HAVE_SYS_ACL_H)
+CHECK_INCLUDE_FILE("sys/ioctl.h" HAVE_SYS_IOCTL_H)
+CHECK_INCLUDE_FILE("sys/mkdev.h" HAVE_SYS_MKDEV_H)
+CHECK_INCLUDE_FILE("sys/param.h" HAVE_SYS_PARAM_H)
+CHECK_INCLUDE_FILE("sys/poll.h" HAVE_SYS_POLL_H)
+CHECK_INCLUDE_FILE("sys/select.h" HAVE_SYS_SELECT_H)
+CHECK_INCLUDE_FILE("sys/stat.h" HAVE_SYS_STAT_H)
+CHECK_INCLUDE_FILE("sys/time.h" HAVE_SYS_TIME_H)
+CHECK_INCLUDE_FILE("sys/types.h" HAVE_SYS_TYPES_H)
+CHECK_INCLUDE_FILE("sys/utime.h" HAVE_SYS_UTIME_H)
+CHECK_INCLUDE_FILE("sys/wait.h" HAVE_SYS_WAIT_H)
+CHECK_INCLUDE_FILE("time.h" HAVE_TIME_H)
+CHECK_INCLUDE_FILE("unistd.h" HAVE_UNISTD_H)
+CHECK_INCLUDE_FILE("utime.h" HAVE_UTIME_H)
+CHECK_INCLUDE_FILE("wchar.h" HAVE_WCHAR_H)
+CHECK_INCLUDE_FILE("wctype.h" HAVE_WCTYPE_H)
+CHECK_INCLUDE_FILE("windows.h" HAVE_WINDOWS_H)
+
+IF(HAVE_SYS_TYPES_H)
+  SET(_sys_types_h "sys/types.h")
+ELSE(HAVE_SYS_TYPES_H)
+  UNSET(_sys_types_h)
+ENDIF(HAVE_SYS_TYPES_H)
+
+#
+# Some headers require extra includes when they're available.
+#
+CHECK_INCLUDE_FILES(${_sys_types_h} "sys/extattr.h" HAVE_SYS_EXTATTR_H)
 
 #
 # Find OpenSSL
@@ -212,15 +249,16 @@ ENDIF(OPENSSL_FOUND)
 #
 # Check MD5/RMD160/SHA headers
 #
-CHECK_HEADERS(openssl/md5.h openssl/ripemd.h openssl/sha.h)
-SET(_files "")
-IF(HAVE_SYS_TYPES_H)
-  SET(_files "sys/types.h")
-ENDIF(HAVE_SYS_TYPES_H)
-SET(_files ${_files} "md5.h")
-CHECK_INCLUDE_FILES("${_files}" HAVE_MD5_H)
-CHECK_HEADERS(ripemd.h rmd160.h)
-CHECK_HEADERS(sha.h sha1.h sha2.h sha256.h)
+CHECK_INCLUDE_FILE("openssl/md5.h" HAVE_OPENSSL_MD5_H)
+CHECK_INCLUDE_FILE("openssl/ripemd.h" HAVE_OPENSSL_RIPEMD_H)
+CHECK_INCLUDE_FILE("openssl/sha.h" HAVE_OPENSSL_SHA_H)
+CHECK_INCLUDE_FILES(${_sys_types_h} "md5.h" HAVE_MD5_H)
+CHECK_INCLUDE_FILE("ripemd.h" HAVE_RIPEMD_H)
+CHECK_INCLUDE_FILE("rmd160.h" HAVE_RMD160_H)
+CHECK_INCLUDE_FILE("sha.h" HAVE_SHA_H)
+CHECK_INCLUDE_FILE("sha1.h" HAVE_SHA1_H)
+CHECK_INCLUDE_FILE("sha2.h" HAVE_SHA2_H)
+CHECK_INCLUDE_FILE("sha256.h" HAVE_SHA256_H)
 #
 # Find MD5/RMD160/SHA library
 #
diff --git a/build/cmake/CheckHeaders.cmake b/build/cmake/CheckHeaders.cmake
deleted file mode 100644 (file)
index b24fe1c..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-# - Check if the system has the specified type
-# CHECK_HEADERS (HEADER1 HEARDER2 ...)
-#
-#  HEADER - the header(s) where the prototype should be declared
-#
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
-#
-#  CMAKE_REQUIRED_FLAGS = string of compile command line flags
-#  CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-#  CMAKE_REQUIRED_INCLUDES = list of include directories
-# Copyright (c) 2009, Michihiro NAKAJIMA
-#
-# Redistribution and use is allowed according to the terms of the BSD license.
-# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
-
-
-INCLUDE(CheckIncludeFile)
-INCLUDE(CheckIncludeFiles)
-
-MACRO (CHECK_HEADERS _HEADERS)
-   FOREACH (header ${ARGV})
-      SET(_files ${header})
-      IF("${_files}" MATCHES "^sys/extattr[.]h$")
-       SET(_files "sys/types.h" ${header})
-      ENDIF("${_files}" MATCHES "^sys/extattr[.]h$")
-
-      STRING(TOUPPER ${header} headervar)
-      SET(headervar "HAVE_${headervar}")
-      STRING(REPLACE "/" "_" headervar ${headervar})
-      STRING(REPLACE "." "_" headervar ${headervar})
-      CHECK_INCLUDE_FILES("${_files}" "${headervar}")
-      #MESSAGE(STATUS "${_files} --> ${headervar}")
-   ENDFOREACH (header)
-ENDMACRO (CHECK_HEADERS)
-