Index: psmisc-22.20/configure.ac =================================================================== --- psmisc-22.20.orig/configure.ac +++ psmisc-22.20/configure.ac @@ -128,6 +128,8 @@ AC_CHECK_MEMBERS([struct pt_regs.orig_gp AC_CHECK_MEMBERS([struct pt_regs.uregs],[],[], [#include ]) AC_CHECK_MEMBERS([struct pt_regs.regs, struct pt_regs.cp0_status],[],[], [#include ]) +AC_CHECK_MEMBERS([struct pt_regs.orig_d0, + struct pt_regs.d0],[],[], [#include ]) case ${target_os} in gnu*) @@ -160,6 +162,9 @@ AM_CONDITIONAL(WANT_PEEKFD_MIPS, test $build_cpu = mipsel && test $ac_cv_member_struct_pt_regs_regs = yes && test $ac_cv_member_struct_pt_regs_cp0_status = yes) +AM_CONDITIONAL(WANT_PEEKFD_M68K, + test $ac_cv_member_struct_pt_regs_orig_d0 = yes && + test $ac_cv_member_struct_pt_regs_d0 = yes) dnl Checks for library functions. AC_FUNC_CLOSEDIR_VOID Index: psmisc-22.20/src/Makefile.am =================================================================== --- psmisc-22.20.orig/src/Makefile.am +++ psmisc-22.20/src/Makefile.am @@ -29,6 +29,10 @@ if WANT_PEEKFD_MIPS bin_PROGRAMS += peekfd AM_CFLAGS += -DMIPS endif +if WANT_PEEKFD_M68K + bin_PROGRAMS += peekfd + AM_CFLAGS += -DM68K +endif fuser_SOURCES = fuser.c comm.h signals.c signals.h i18n.h fuser.h lists.h if WANT_TIMEOUT_STAT Index: psmisc-22.20/src/peekfd.c =================================================================== --- psmisc-22.20.orig/src/peekfd.c +++ psmisc-22.20/src/peekfd.c @@ -76,6 +76,12 @@ #define REG_PARAM1 regs[4] #define REG_PARAM2 regs[5] #define REG_PARAM3 regs[6] +#elif defined(M68K) + #define REG_ORIG_ACCUM orig_d0 + #define REG_ACCUM d0 + #define REG_PARAM1 d1 + #define REG_PARAM2 d2 + #define REG_PARAM3 d3 #endif #define MAX_ATTACHED_PIDS 1024 @@ -270,7 +276,7 @@ int main(int argc, char **argv) } for (i = 0; i < regs.REG_PARAM3; i++) { -#ifdef _BIG_ENDIAN +#if BYTE_ORDER == BIG_ENDIAN #if __WORDSIZE == 64 unsigned int a = bswap_64(ptrace(PTRACE_PEEKTEXT, pid, regs.REG_PARAM2 + i, 0)); #else