patches/strace/4.5.16/140-statfs64-check.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jul 17 22:43:07 2011 +0200 (2011-07-17)
changeset 2893 a8a65758664f
parent 746 b150d6f590fc
permissions -rw-r--r--
cc/gcc: do not use the core pass-2 to build the baremetal compiler

In case we build a baremetal compiler, use the standard passes:
- core_cc is used to build the C library;
- as such, it is meant to run on build, not host;
- the final compiler is meant to run on host;

As the current final compiler step can not build a baremetal compiler,
call the core backend from the final step.

NB: Currently, newlib is built during the start_files pass, so we have
to have a core compiler by then... Once we can build the baremetal
compiler from the final cc step, then we can move the newlib build to
the proper step, and then get rid of the core pass-1 static compiler...

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