patches/strace/4.5.16/140-statfs64-check.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Aug 02 18:26:53 2011 +0200 (2011-08-02)
changeset 2592 4908eb2b6f17
parent 746 b150d6f590fc
permissions -rw-r--r--
scripts/functions: cvs retrieval first tries the mirror for tarballs

The cvs download helper looks for the local tarballs dir to see if it
can find a pre-downloaded tarball, and if it does not find it, does
the actual fetch to upstream via cvs.

In the process, it does not even try to get a tarball from the local
mirror, which can be useful if the mirror has been pre-populated
manually (or with a previously downloaded tree).

Fake a tarball get with the standard tarball-download helper, but
without specifying any upstream URL, which makes the helper directly
try the LAN mirror.

Of course, if no mirror is specified, no URL wil be available, and
the standard cvs retrieval will kick in.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@428
     1
diff -dur strace-4.5.16.orig/acinclude.m4 strace-4.5.16/acinclude.m4
yann@428
     2
--- strace-4.5.16.orig/acinclude.m4	2004-04-14 04:21:01.000000000 +0200
yann@428
     3
+++ strace-4.5.16/acinclude.m4	2007-07-14 19:25:25.000000000 +0200
yann@428
     4
@@ -210,6 +210,26 @@
yann@428
     5
 fi
yann@428
     6
 ])
yann@428
     7
yann@428
     8
+dnl ### A macro to determine whether statfs64 is defined.
yann@428
     9
+AC_DEFUN([AC_STATFS64],
yann@428
    10
+[AC_MSG_CHECKING(for statfs64 in sys/(statfs|vfs).h)
yann@428
    11
+AC_CACHE_VAL(ac_cv_type_statfs64,
yann@428
    12
+[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#ifdef LINUX
yann@428
    13
+#include <linux/types.h>
yann@428
    14
+#include <sys/statfs.h>
yann@428
    15
+#else
yann@428
    16
+#include <sys/vfs.h>
yann@428
    17
+#endif]], [[struct statfs64 st;]])],[ac_cv_type_statfs64=yes],[ac_cv_type_statfs64=no])])
yann@428
    18
+AC_MSG_RESULT($ac_cv_type_statfs64)
yann@428
    19
+if test "$ac_cv_type_statfs64" = yes
yann@428
    20
+then
yann@428
    21
+	AC_DEFINE([HAVE_STATFS64], 1,
yann@428
    22
+[Define if statfs64 is available in sys/statfs.h or sys/vfs.h.])
yann@428
    23
+fi
yann@428
    24
+])
yann@428
    25
+
yann@428
    26
+
yann@428
    27
+
yann@428
    28
 dnl ### A macro to determine if off_t is a long long
yann@428
    29
 AC_DEFUN([AC_OFF_T_IS_LONG_LONG],
yann@428
    30
 [AC_MSG_CHECKING(for long long off_t)
yann@428
    31
diff -dur strace-4.5.16.orig/configure.ac strace-4.5.16/configure.ac
yann@428
    32
--- strace-4.5.16.orig/configure.ac	2007-01-11 12:37:55.000000000 +0100
yann@428
    33
+++ strace-4.5.16/configure.ac	2007-07-14 19:25:25.000000000 +0200
yann@428
    34
@@ -169,6 +169,7 @@
yann@428
    35
 		  struct stat.st_level,
yann@428
    36
 		  struct stat.st_rdev])
yann@428
    37
 AC_STAT64
yann@428
    38
+AC_STATFS64
yann@428
    39
yann@428
    40
 AC_TYPE_SIGNAL
yann@428
    41
 AC_TYPE_UID_T
yann@428
    42
diff -dur strace-4.5.16.orig/file.c strace-4.5.16/file.c
yann@428
    43
--- strace-4.5.16.orig/file.c	2007-01-15 21:25:52.000000000 +0100
yann@428
    44
+++ strace-4.5.16/file.c	2007-07-14 19:25:25.000000000 +0200
yann@428
    45
@@ -1636,7 +1636,7 @@
yann@428
    46
 	return 0;
yann@428
    47
 }
yann@428
    48
yann@428
    49
-#ifdef LINUX
yann@428
    50
+#ifdef HAVE_STATFS64
yann@428
    51
 static void
yann@428
    52
 printstatfs64(tcp, addr)
yann@428
    53
 struct tcb *tcp;