]> granicus.if.org Git - strace/commitdiff
tests: use correct m32/mx32 st_mtime_nsec checks in tests/xstatx.c
authorDmitry V. Levin <ldv@altlinux.org>
Tue, 30 Aug 2016 12:43:09 +0000 (12:43 +0000)
committerDmitry V. Levin <ldv@altlinux.org>
Tue, 30 Aug 2016 15:50:36 +0000 (15:50 +0000)
* bootstrap: Add -DMPERS_IS_$(MPERS_NAME) to ARCH_MFLAGS.
* tests/xstatx.c [USE_ASM_STAT && STRUCT_STAT_IS_STAT64 && MPERS_IS_m32]:
Redefine HAVE_STRUCT_STAT_ST_MTIME_NSEC
to HAVE_M32_STRUCT_STAT64_ST_MTIME_NSEC.
[USE_ASM_STAT && STRUCT_STAT_IS_STAT64 && MPERS_IS_mx32]:
Redefine HAVE_STRUCT_STAT_ST_MTIME_NSEC
to HAVE_MX32_STRUCT_STAT64_ST_MTIME_NSEC.
[USE_ASM_STAT && !STRUCT_STAT_IS_STAT64 && MPERS_IS_m32]:
Redefine HAVE_STRUCT_STAT_ST_MTIME_NSEC
to HAVE_M32_STRUCT_STAT_ST_MTIME_NSEC.
[USE_ASM_STAT && !STRUCT_STAT_IS_STAT64 && MPERS_IS_mx32]:
Redefine HAVE_STRUCT_STAT_ST_MTIME_NSEC
to HAVE_MX32_STRUCT_STAT_ST_MTIME_NSEC.

Based on patch by James Clarke <jrtc27@jrtc27.com>.

bootstrap
tests/xstatx.c

index 395fc80ea113c5a8e98ff79d137d1c1d0441707e..f7ef6f719ad00d27dfbb2cfc3b2578b48d778580 100755 (executable)
--- a/bootstrap
+++ b/bootstrap
@@ -5,7 +5,9 @@ for m in m32 mx32; do
        rm -rf $tests
        mkdir $tests
        s='[[:space:]]*'
-       sed "s/@arch@/@arch_$m@/;s/^MPERS_NAME$s=.*/& $m/;s/^ARCH_MFLAGS$s=.*/& -$m/" \
+       sed "s/@arch@/@arch_$m@/;
+            s/^MPERS_NAME$s=.*/& $m/;
+            s/^ARCH_MFLAGS$s=.*/& -DMPERS_IS_\$(MPERS_NAME) -$m/" \
                tests/Makefile.am > $tests/Makefile.am
        for f in tests/*; do
                case "${f##*/}" in
index 359ee1dbdbb53937175c7b7b118634fdcb71ff25..132b7fb6c414b562171f749b7c30646b04e01e0a 100644 (file)
@@ -91,10 +91,34 @@ typedef off_t libc_off_t;
 #  undef st_mtime
 #  undef st_ctime
 #  include "asm_stat.h"
+
 #  if STRUCT_STAT_IS_STAT64
 #   undef HAVE_STRUCT_STAT_ST_MTIME_NSEC
-#   define HAVE_STRUCT_STAT_ST_MTIME_NSEC 1
+#   if defined MPERS_IS_m32
+#    ifdef HAVE_M32_STRUCT_STAT64_ST_MTIME_NSEC
+#     define HAVE_STRUCT_STAT_ST_MTIME_NSEC 1
+#    endif
+#   elif defined MPERS_IS_mx32
+#    ifdef HAVE_MX32_STRUCT_STAT64_ST_MTIME_NSEC
+#     define HAVE_STRUCT_STAT_ST_MTIME_NSEC 1
+#    endif
+#   elif defined HAVE_STRUCT_STAT64_ST_MTIME_NSEC
+#    define HAVE_STRUCT_STAT_ST_MTIME_NSEC 1
+#   endif /* MPERS_IS_m32 || MPERS_IS_mx32 || HAVE_STRUCT_STAT64_ST_MTIME_NSEC */
+#  else /* !STRUCT_STAT_IS_STAT64 */
+#   if defined MPERS_IS_m32
+#    undef HAVE_STRUCT_STAT_ST_MTIME_NSEC
+#    ifdef HAVE_M32_STRUCT_STAT_ST_MTIME_NSEC
+#     define HAVE_STRUCT_STAT_ST_MTIME_NSEC 1
+#    endif
+#   elif defined MPERS_IS_mx32
+#    undef HAVE_STRUCT_STAT_ST_MTIME_NSEC
+#    ifdef HAVE_MX32_STRUCT_STAT_ST_MTIME_NSEC
+#     define HAVE_STRUCT_STAT_ST_MTIME_NSEC 1
+#    endif
+#   endif /*  MPERS_IS_m32 || MPERS_IS_mx32 */
 #  endif /* STRUCT_STAT_IS_STAT64 */
+
 # else /* !USE_ASM_STAT */
 #  undef HAVE_STRUCT_STAT_ST_MTIME_NSEC
 #  ifdef HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC