summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorDmitry V. Levin <ldv@altlinux.org>2016-08-24 00:29:40 +0000
committerDmitry V. Levin <ldv@altlinux.org>2016-08-24 15:32:10 +0000
commita7c4ee41ff52f9971c32203e4112467fdd608250 (patch)
treeb2a6a723a4949d284ba4e09e0e306e80d803f20d /configure.ac
parentc778f7aff621d92d75421d1f7e90ea9e8f6095d7 (diff)
downloadstrace-a7c4ee41ff52f9971c32203e4112467fdd608250.tar.gz
Mpersify parsers of struct stat and struct stat64
On many architectures that support multiple personalities, struct stat differ between personalities. While old code could handle these differences, there are some architectures, e.g. sparc64, that also have different struct stat64. Rewrite parsers using mpers functionality to fix these issues. * fetch_struct_stat.c: New file. * fetch_struct_stat64.c: Likewise. * print_struct_stat.c: Likewise. * oldstat.c: Likewise. * stat.c: Likewise. * stat.h: Likewise. * stat64.c: Likewise. * file.c: Remove. * printstat.h: Likewise. * linux/aarch64/stat32.h: Likewise. * linux/powerpc64/stat32.h: Likewise. * linux/riscv/stat32.h: Likewise. * linux/sparc64/stat32.h: Likewise. * linux/tile/stat32.h: Likewise. * linux/x32/stat32.h: Likewise. * linux/x86_64/stat32.h: Likewise. * Makefile.am (strace_SOURCES): Add fetch_struct_stat.c, fetch_struct_stat64.c, print_struct_stat.c, oldstat.c, stat.c, stat.h, and stat64.c. Remove file.c, printstat.h, linux/aarch64/stat32.h, linux/powerpc64/stat32.h, linux/riscv/stat32.h, linux/sparc64/stat32.h, linux/tile/stat32.h, linux/x32/stat32.h, and linux/x86_64/stat32.h. * configure.ac (AC_CHECK_MEMBERS): Add struct stat64.st_mtime_nsec. * defs.h (struct strace_stat): New declaration. (print_struct_stat): New prototype. * linux/dummy.h (sys_fstatat64): Remove.
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac2
1 files changed, 1 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac
index 59a6ec246..110b63733 100644
--- a/configure.ac
+++ b/configure.ac
@@ -325,7 +325,7 @@ AC_CHECK_TYPES([struct stat64, struct __old_kernel_stat],,,
[#include <sys/types.h>
#include <asm/stat.h>])
-AC_CHECK_MEMBERS([struct stat.st_mtime_nsec],,,
+AC_CHECK_MEMBERS([struct stat.st_mtime_nsec, struct stat64.st_mtime_nsec],,,
[#include <sys/types.h>
#include <asm/stat.h>])