]> granicus.if.org Git - strace/commitdiff
Fix compilation on linux 2.4.x
authorDmitry V. Levin <ldv@altlinux.org>
Tue, 16 Aug 2011 21:36:16 +0000 (21:36 +0000)
committerDenys Vlasenko <dvlasenk@redhat.com>
Tue, 23 Aug 2011 10:53:00 +0000 (12:53 +0200)
* configure.ac: Check for BLKGETSIZE64.
* block.c (block_ioctl): Check for HAVE_BLKGETSIZE64.

block.c
configure.ac

diff --git a/block.c b/block.c
index 4a3b42890ffe8b78f607b9eb1c842f4afcf51514..14453a42d4654ab6871e9cc7dd7341969a091201 100644 (file)
--- a/block.c
+++ b/block.c
@@ -194,7 +194,7 @@ block_ioctl(struct tcb *tcp, long code, long arg)
                        }
                break;
 
-#ifdef BLKGETSIZE64
+#ifdef HAVE_BLKGETSIZE64
        /* return an uint64_t */
        case BLKGETSIZE64:
                if (exiting(tcp)) {
index 6b88df879cb3a1334899fded737b807e49b5a99e..0a4f8916a1101a35a1f9ce3a182509eb1293848b 100644 (file)
@@ -323,6 +323,15 @@ AC_CHECK_DECLS([
                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])