summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorJim Schutt <jaschut@sandia.gov>2010-11-17 13:39:52 -0700
committerSage Weil <sage@newdream.net>2010-11-17 12:48:00 -0800
commitb54880e0f9325bc99264f2878ea4589e01375fbf (patch)
treebee40c343810fc99810fe57f245dac01de018fc3 /configure.ac
parent29a9e668411fc647e874d3abc17ca44dcf9678cb (diff)
downloadceph-b54880e0f9325bc99264f2878ea4589e01375fbf.tar.gz
Detect broken system linux/fiemap.h
RedHat 5.5 has a /usr/include/linux/fiemap.h, but it is broken because it does not itself include linux/types.h. As a result, __u64 and friends are not defined. We have a Ceph-local copy of fiemap.h, so use it if the system version is broken. While we're at it, fix up the configure message to note we're using a local copy. Signed-off-by: Jim Schutt <jaschut@sandia.gov> Signed-off-by: Sage Weil <sage@newdream.net>
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac5
1 files changed, 3 insertions, 2 deletions
diff --git a/configure.ac b/configure.ac
index 000e8922350..e00cdbf5e28 100644
--- a/configure.ac
+++ b/configure.ac
@@ -162,9 +162,10 @@ AC_CHECK_HEADER([openssl/md5.h],
[AC_MSG_ERROR([Sorry you need openssl dev files (libssl-dev on debian)])])
PKG_CHECK_MODULES([OPENSSL], [openssl])
-AC_CHECK_HEADER([linux/fiemap.h],
+AC_CHECK_MEMBER([struct fiemap_extent.fe_logical],
[AC_DEFINE([HAVE_FIEMAP_H], [], [linux/fiemap.h was found, fiemap ioctl will be used])],
- [AC_MSG_NOTICE([linux/fiemap.h was not found, fiemap ioctl will not be used])])
+ [AC_MSG_NOTICE([linux/fiemap.h was not found or not usable; using local Ceph copy])],
+ [[#include <linux/fiemap.h>]])
AC_CHECK_HEADERS([sys/xattr.h arpa/inet.h netdb.h netinet/in.h sys/file.h sys/ioctl.h sys/mount.h sys/param.h sys/socket.h sys/statvfs.h sys/time.h sys/vfs.h syslog.h utime.h])