--- strace-4.5.20/configure.ac~ 2010-04-13 18:09:23.000000000 +0200 +++ strace-4.5.20/configure.ac 2010-04-15 09:33:06.216138318 +0200 @@ -192,6 +192,14 @@ struct stat.st_rdev]) AC_STAT64 AC_STATFS64 +AC_CHECK_MEMBERS([struct stat64.st_blksize, + struct stat64.st_blocks, + struct stat64.st_aclcnt, + struct stat64.st_flags, + struct stat64.st_fstype, + struct stat64.st_gen, + struct stat64.st_level, + struct stat64.st_rdev],,,[#include ]) AC_TYPE_SIGNAL AC_TYPE_UID_T --- strace-4.5.12/file.c.orig 2005-06-08 22:45:28.000000000 +0200 +++ strace-4.5.12/file.c 2005-06-11 19:25:18.200972552 +0200 @@ -958,27 +958,27 @@ (unsigned long) statbuf.st_nlink, (unsigned long) statbuf.st_uid, (unsigned long) statbuf.st_gid); -#ifdef HAVE_STRUCT_STAT_ST_BLKSIZE +#ifdef HAVE_STRUCT_STAT64_ST_BLKSIZE tprintf("st_blksize=%lu, ", (unsigned long) statbuf.st_blksize); -#endif /* HAVE_STRUCT_STAT_ST_BLKSIZE */ -#ifdef HAVE_STRUCT_STAT_ST_BLOCKS +#endif /* HAVE_STRUCT_STAT64_ST_BLKSIZE */ +#ifdef HAVE_STRUCT_STAT64_ST_BLOCKS tprintf("st_blocks=%lu, ", (unsigned long) statbuf.st_blocks); -#endif /* HAVE_STRUCT_STAT_ST_BLOCKS */ +#endif /* HAVE_STRUCT_STAT64_ST_BLOCKS */ } else tprintf("{st_mode=%s, ", sprintmode(statbuf.st_mode)); switch (statbuf.st_mode & S_IFMT) { case S_IFCHR: case S_IFBLK: -#ifdef HAVE_STRUCT_STAT_ST_RDEV +#ifdef HAVE_STRUCT_STAT64_ST_RDEV tprintf("st_rdev=makedev(%lu, %lu), ", (unsigned long) major(statbuf.st_rdev), (unsigned long) minor(statbuf.st_rdev)); -#else /* !HAVE_STRUCT_STAT_ST_RDEV */ +#else /* !HAVE_STRUCT_STAT64_ST_RDEV */ tprintf("st_size=makedev(%lu, %lu), ", (unsigned long) major(statbuf.st_size), (unsigned long) minor(statbuf.st_size)); -#endif /* !HAVE_STRUCT_STAT_ST_RDEV */ +#endif /* !HAVE_STRUCT_STAT64_ST_RDEV */ break; default: tprintf("st_size=%llu, ", statbuf.st_size); @@ -988,21 +988,21 @@ tprintf("st_atime=%s, ", sprinttime(statbuf.st_atime)); tprintf("st_mtime=%s, ", sprinttime(statbuf.st_mtime)); tprintf("st_ctime=%s", sprinttime(statbuf.st_ctime)); -#if HAVE_STRUCT_STAT_ST_FLAGS +#if HAVE_STRUCT_STAT64_ST_FLAGS tprintf(", st_flags="); printflags(fileflags, statbuf.st_flags, "UF_???"); #endif -#if HAVE_STRUCT_STAT_ST_ACLCNT +#if HAVE_STRUCT_STAT64_ST_ACLCNT tprintf(", st_aclcnt=%d", statbuf.st_aclcnt); #endif -#if HAVE_STRUCT_STAT_ST_LEVEL +#if HAVE_STRUCT_STAT64_ST_LEVEL tprintf(", st_level=%ld", statbuf.st_level); #endif -#if HAVE_STRUCT_STAT_ST_FSTYPE +#if HAVE_STRUCT_STAT64_ST_FSTYPE tprintf(", st_fstype=%.*s", (int) sizeof statbuf.st_fstype, statbuf.st_fstype); #endif -#if HAVE_STRUCT_STAT_ST_GEN +#if HAVE_STRUCT_STAT64_ST_GEN tprintf(", st_gen=%u", statbuf.st_gen); #endif tprintf("}");