Fix compilation on linux 2.4.x
* configure.ac: Check for BLKGETSIZE64.
* block.c (block_ioctl): Check for HAVE_BLKGETSIZE64.
diff --git a/block.c b/block.c
index 4a3b428..14453a4 100644
--- a/block.c
+++ b/block.c
@@ -194,7 +194,7 @@
}
break;
-#ifdef BLKGETSIZE64
+#ifdef HAVE_BLKGETSIZE64
/* return an uint64_t */
case BLKGETSIZE64:
if (exiting(tcp)) {
diff --git a/configure.ac b/configure.ac
index 6b88df8..0a4f891 100644
--- a/configure.ac
+++ b/configure.ac
@@ -323,6 +323,15 @@
PTRACE_EVENT_VFORK_DONE,
PTRACE_EVENT_EXIT],,, [#include <sys/ptrace.h>])
+AC_CACHE_CHECK([for BLKGETSIZE64], [ac_cv_have_blkgetsize64],
+ [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
+#include <stdlib.h>
+#include <linux/fs.h>], [return !BLKGETSIZE64;])],
+ [ac_cv_have_blkgetsize64=yes], [ac_cv_have_blkgetsize64=no])]
+ if test $ac_cv_have_blkgetsize64 = yes; then
+ AC_DEFINE([HAVE_BLKGETSIZE64], [1], [Define to 1 if you have BLKGETSIZE64.])
+ fi)
+
AC_PATH_PROG([PERL], [perl])
AC_CONFIG_FILES([Makefile tests/Makefile])