AC_PROG_CC
AC_PROG_CPP
+st_WARN_CFLAGS
AX_PROG_CC_FOR_BUILD
AC_PROG_INSTALL
AC_PROG_RANLIB
AC_DEFINE([XTENSA], 1, [Define for the Xtensa architecture])
;;
+riscv*)
+ arch=riscv
+ AC_DEFINE([RISCV], 1, [Define for the RISC-V architecture])
+ ;;
+
*)
AC_MSG_RESULT([NO!])
AC_MSG_ERROR([architecture $host_cpu is not supported by strace])
AC_SUBST(arch_m32)
AC_SUBST(arch_mx32)
+MIPS_ABI=
if test "$arch" = mips; then
AC_CACHE_CHECK([for _MIPS_SIM], [st_cv__MIPS_SIM],
[AC_COMPUTE_INT([st_cv__MIPS_SIM], [_MIPS_SIM],
n64) AC_DEFINE([LINUX_MIPSN64], [1], [Define for _MIPS_SIM_ABI64.]);;
*) AC_MSG_ERROR([Unsupported _MIPS_SIM]);;
esac
+ MIPS_ABI="$st_cv_mips_abi"
fi
+AC_SUBST(MIPS_ABI)
AC_ARG_ENABLE([arm-oabi],
[AS_HELP_STRING([--enable-arm-oabi],
AC_DEFINE_UNQUOTED([ENABLE_ARM_OABI], [$enable_arm_oabi],
[Define to 1 if you want OABI support on ARM EABI.])
-gl_WARN_ADD([-Wall])
-gl_WARN_ADD([-Wwrite-strings])
-gl_WARN_ADD([-Wsign-compare])
-AC_ARG_ENABLE([gcc-Werror],
- [AS_HELP_STRING([--enable-gcc-Werror], [turn on gcc's -Werror option])],
- [case $enableval in
- yes) gl_WARN_ADD([-Werror]) ;;
- no) ;;
- *) AC_MSG_ERROR([bad value $enableval for gcc-Werror option]) ;;
- esac]
-)
-AC_SUBST([WARN_CFLAGS])
-
AC_C_BIGENDIAN
-AC_C_CONST
AC_C_TYPEOF
-AC_TYPE_GETGROUPS
-AC_TYPE_MODE_T
-AC_TYPE_SIGNAL
AC_TYPE_UID_T
-AC_HEADER_DIRENT
-AC_HEADER_MAJOR
-AC_HEADER_STAT
-AC_HEADER_STDBOOL
-AC_HEADER_STDC
-
AC_CHECK_FUNCS(m4_normalize([
+ accept4
+ fallocate
fanotify_mark
fopen64
fork
ftruncate
futimens
if_indextoname
- inet_ntop
- inet_pton
+ open64
pipe2
prctl
preadv
process_vm_readv
pwritev
- recvmmsg
- sendmmsg
- sigaction
+ readahead
signalfd
stpcpy
strerror
[#include <sys/types.h>
#include <asm/stat.h>])
+AC_CHECK_MEMBERS([struct stat.st_mtime_nsec, struct stat64.st_mtime_nsec],,,
+[#include <sys/types.h>
+#include <asm/stat.h>])
+
+AC_CHECK_MEMBERS([struct stat.st_mtim.tv_nsec])
+
AC_CHECK_TYPES(m4_normalize([
struct pt_all_user_regs,
struct ia64_fpreg,
[#include <sys/types.h>
#include <linux/fcntl.h>])
-AC_CHECK_MEMBERS(m4_normalize([
- struct stat.st_atim.tv_nsec,
- struct stat.st_blksize,
- struct stat.st_blocks,
- struct stat.st_ctim.tv_nsec,
- struct stat.st_flags,
- struct stat.st_fstype,
- struct stat.st_gen,
- struct stat.st_mtim.tv_nsec,
- struct stat.st_rdev
-]))
-
-AC_CHECK_MEMBERS([struct msghdr.msg_control],,, [#include <sys/socket.h>])
-
AC_CHECK_MEMBERS([struct timex.tai],,, [#include <sys/timex.h>])
AC_CHECK_MEMBERS([struct utsname.domainname],,, [#include <sys/utsname.h>])
-AC_CHECK_MEMBERS([struct sockaddr_in6.sin6_scope_id],,,
-[#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>])
-
-AC_CHECK_MEMBERS(m4_normalize([
- struct stat.st_atime_nsec,
- struct stat.st_ctime_nsec,
- struct stat.st_mtime_nsec
-]),,, [#include <sys/types.h>
-#include <asm/stat.h>])
-
AC_CHECK_MEMBERS(m4_normalize([
siginfo_t.si_syscall,
siginfo_t.si_timerid,
siginfo_t.si_overrun
]),,, [#include <signal.h>])
+AC_CHECK_MEMBERS(m4_normalize([
+ struct perf_event_attr.precise_ip,
+ struct perf_event_attr.mmap_data,
+ struct perf_event_attr.sample_id_all,
+ struct perf_event_attr.exclude_host,
+ struct perf_event_attr.exclude_guest,
+ struct perf_event_attr.exclude_callchain_kernel,
+ struct perf_event_attr.exclude_callchain_user,
+ struct perf_event_attr.mmap2,
+ struct perf_event_attr.comm_exec,
+ struct perf_event_attr.use_clockid,
+ struct perf_event_attr.context_switch,
+ struct perf_event_attr.write_backward,
+ struct perf_event_attr.bp_type,
+ struct perf_event_attr.config1,
+ struct perf_event_attr.config2,
+ struct perf_event_attr.branch_sample_type,
+ struct perf_event_attr.sample_regs_user,
+ struct perf_event_attr.sample_stack_user,
+ struct perf_event_attr.sample_regs_intr,
+ struct perf_event_attr.aux_watermark,
+ struct perf_event_attr.sample_max_stack
+]),,, [#include <linux/perf_event.h>])
+
AC_CHECK_HEADERS(m4_normalize([
asm/cachectl.h
asm/sysmips.h
elf.h
inttypes.h
linux/bsg.h
+ linux/dm-ioctl.h
+ linux/dqblk_xfs.h
linux/falloc.h
linux/fiemap.h
linux/filter.h
linux/mmtimer.h
linux/msg.h
linux/perf_event.h
+ linux/quota.h
linux/seccomp.h
linux/securebits.h
linux/sem.h
linux/utsname.h
mqueue.h
netinet/sctp.h
+ netipx/ipx.h
scsi/sg.h
stropts.h
sys/conf.h
sys/fanotify.h
sys/ipc.h
sys/msg.h
+ sys/quota.h
sys/reg.h
sys/sem.h
sys/shm.h
AC_CHECK_HEADERS([linux/mqueue.h],,, [#include <linux/types.h>])
-AC_CHECK_HEADERS([linux/icmp.h linux/in6.h linux/netlink.h linux/if_packet.h],,,
-[#include <stddef.h>
-#include <sys/socket.h>
-#include <asm/types.h>])
-
AC_CHECK_HEADERS(m4_normalize([
linux/netfilter_arp/arp_tables.h
linux/netfilter_bridge/ebtables.h
AC_CHECK_MEMBERS(m4_normalize([
struct btrfs_ioctl_feature_flags.compat_flags,
struct btrfs_ioctl_fs_info_args.nodesize,
- struct btrfs_ioctl_defrag_range_args.start
+ struct btrfs_ioctl_defrag_range_args.start,
struct btrfs_ioctl_search_args_v2.buf_size
]),,, [ #include <stdio.h>
#include <linux/btrfs.h>])
st_MPERS([m32], [aarch64|powerpc64|sparc64|tile|x32|x86_64])
st_MPERS([mx32], [x86_64])
+AX_VALGRIND_DFLT([sgcheck], [off])
+AX_VALGRIND_CHECK
+
AC_CONFIG_FILES([Makefile
tests/Makefile
tests-m32/Makefile