Le 26/05/2021 à 05:55, Michael Forney a écrit : > The _POSIX_C_SOURCE and _XOPEN_SOURCE macros are used by the > application to indicate to libc which declarations it should expose. > Since qemu does not define them anywhere, it does not make sense > to check their value. > > Instead, since the intent is to determine whether the host struct > stat supports the st_*tim fields, use the configure test result > which does exactly that. > > Signed-off-by: Michael Forney <mfor...@mforney.org> > --- > linux-user/syscall.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > > diff --git a/linux-user/syscall.c b/linux-user/syscall.c > index c9f812091c..9a52f235d2 100644 > --- a/linux-user/syscall.c > +++ b/linux-user/syscall.c > @@ -7470,7 +7470,7 @@ static inline abi_long host_to_target_stat64(void > *cpu_env, > __put_user(host_st->st_atime, &target_st->target_st_atime); > __put_user(host_st->st_mtime, &target_st->target_st_mtime); > __put_user(host_st->st_ctime, &target_st->target_st_ctime); > -#if _POSIX_C_SOURCE >= 200809L || _XOPEN_SOURCE >= 700 > +#ifdef HAVE_STRUCT_STAT_ST_ATIM > __put_user(host_st->st_atim.tv_nsec, > &target_st->target_st_atime_nsec); > __put_user(host_st->st_mtim.tv_nsec, > &target_st->target_st_mtime_nsec); > __put_user(host_st->st_ctim.tv_nsec, > &target_st->target_st_ctime_nsec); > @@ -7505,7 +7505,7 @@ static inline abi_long host_to_target_stat64(void > *cpu_env, > __put_user(host_st->st_atime, &target_st->target_st_atime); > __put_user(host_st->st_mtime, &target_st->target_st_mtime); > __put_user(host_st->st_ctime, &target_st->target_st_ctime); > -#if _POSIX_C_SOURCE >= 200809L || _XOPEN_SOURCE >= 700 > +#ifdef HAVE_STRUCT_STAT_ST_ATIM > __put_user(host_st->st_atim.tv_nsec, > &target_st->target_st_atime_nsec); > __put_user(host_st->st_mtim.tv_nsec, > &target_st->target_st_mtime_nsec); > __put_user(host_st->st_ctim.tv_nsec, > &target_st->target_st_ctime_nsec); > @@ -10056,8 +10056,7 @@ static abi_long do_syscall1(void *cpu_env, int num, > abi_long arg1, > __put_user(st.st_atime, &target_st->target_st_atime); > __put_user(st.st_mtime, &target_st->target_st_mtime); > __put_user(st.st_ctime, &target_st->target_st_ctime); > -#if (_POSIX_C_SOURCE >= 200809L || _XOPEN_SOURCE >= 700) && \ > - defined(TARGET_STAT_HAVE_NSEC) > +#if defined(HAVE_STRUCT_STAT_ST_ATIM) && defined(TARGET_STAT_HAVE_NSEC) > __put_user(st.st_atim.tv_nsec, > &target_st->target_st_atime_nsec); > __put_user(st.st_mtim.tv_nsec, >
Reviewed-by: Laurent Vivier <laur...@vivier.eu>