1 # Automake input for strace tests.
3 # Copyright (c) 2011-2016 Dmitry V. Levin <ldv@altlinux.org>
4 # Copyright (c) 2011-2019 The strace developers.
7 # SPDX-License-Identifier: GPL-2.0-or-later
11 NATIVE_ARCH = @arch_native@
12 SIZEOF_KERNEL_LONG_T = @SIZEOF_KERNEL_LONG_T@
13 SIZEOF_LONG = @SIZEOF_LONG@
17 AM_CFLAGS = $(WARN_CFLAGS)
18 AM_CPPFLAGS = $(ARCH_MFLAGS) \
20 -I$(top_builddir)/$(OS)/$(ARCH) \
21 -I$(top_srcdir)/$(OS)/$(ARCH) \
22 -I$(top_builddir)/$(OS) \
23 -I$(top_srcdir)/$(OS) \
26 -DTESTS_SIZEOF_KERNEL_LONG_T=$(SIZEOF_KERNEL_LONG_T) \
27 -DTESTS_SIZEOF_LONG=$(SIZEOF_LONG)
28 AM_LDFLAGS = $(ARCH_MFLAGS)
30 libtests_a_SOURCES = \
46 print_quoted_string.c \
63 # end of libtests_a_SOURCES
64 libtests_a_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
65 check_LIBRARIES = libtests.a
68 include pure_executables.am
70 check_PROGRAMS = $(PURE_EXECUTABLES) \
77 block_reset_raise_run \
78 bpf-obj_get_info_by_fd \
79 bpf-obj_get_info_by_fd-prog \
80 bpf-obj_get_info_by_fd-prog-v \
81 bpf-obj_get_info_by_fd-v \
90 clone3-success-Xabbrev \
92 clone3-success-Xverbose \
106 ioctl_evdev-success \
107 ioctl_evdev-success-v \
117 list_sigaction_signum \
124 net-tpacket_stats-success \
126 netlink_netlink_diag \
132 orphaned_process_group \
134 perf_event_open_nonverbose \
135 perf_event_open_unabbrev \
137 prctl-seccomp-filter-v \
138 prctl-seccomp-strict \
142 qual_inject-error-signal \
149 quotactl-xfs-success \
150 quotactl-xfs-success-v \
165 stack-fcall-mangled \
166 status-none-threads \
167 status-unfinished-threads \
170 unblock_reset_raise \
171 unix-pair-send-recv \
172 unix-pair-sendto-recvfrom \
177 # end of check_PROGRAMS
179 attach_f_p_LDADD = -lpthread $(LDADD)
180 count_f_LDADD = -lpthread $(LDADD)
181 delay_LDADD = $(clock_LIBS) $(LDADD)
182 filter_unavailable_LDADD = -lpthread $(LDADD)
183 fstat64_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
184 fstatat64_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
185 ftruncate64_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
186 localtime_LDADD = $(clock_LIBS) $(LDADD)
187 looping_threads_LDADD = -lpthread $(LDADD)
188 lstat64_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
189 maybe_switch_current_tcp_LDADD = -lpthread $(LDADD)
190 mmap64_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
191 mmap64_Xabbrev_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
192 mmap64_Xraw_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
193 mmap64_Xverbose_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
194 mq_LDADD = $(mq_LIBS) $(LDADD)
195 newfstatat_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
196 pc_LDADD = $(dl_LIBS) $(LDADD)
197 pread64_pwrite64_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
198 preadv_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
199 preadv_pwritev_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
200 pwritev_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
201 stat64_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
202 statfs_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
203 status_none_threads_LDADD = -lpthread $(LDADD)
204 status_unfinished_threads_LDADD = -lpthread $(LDADD)
205 threads_execve_LDADD = -lpthread $(clock_LIBS) $(LDADD)
206 times_LDADD = $(clock_LIBS) $(LDADD)
207 truncate64_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
208 uio_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
210 stack_fcall_SOURCES = stack-fcall.c \
211 stack-fcall-0.c stack-fcall-1.c stack-fcall-2.c stack-fcall-3.c
213 stack_fcall_mangled_SOURCES = stack-fcall-mangled.c \
214 stack-fcall-mangled-0.c stack-fcall-mangled-1.c \
215 stack-fcall-mangled-2.c stack-fcall-mangled-3.c
220 STACKTRACE_TESTS = strace-k.test
222 STACKTRACE_TESTS += strace-k-demangle.test
242 clone3-success.test \
250 inotify_init-y.test \
252 ioctl_evdev-success-v.test \
253 ioctl_evdev-success.test \
254 ioctl_perf-success.test \
256 kern_features-fault.test \
260 net-tpacket_stats-success.test \
263 net-yy-netlink.test \
266 netlink_sock_diag.test \
274 prctl-arg2-intptr.test \
275 prctl-dumpable.test \
278 prctl-pdeathsig.test \
279 prctl-seccomp-filter-v.test \
280 prctl-seccomp-strict.test \
281 prctl-securebits.test \
282 prctl-spec-inject.test \
283 prctl-tid_address.test \
285 qual_fault-exit_group.test \
286 quotactl-success-v.test \
287 quotactl-success.test \
288 quotactl-xfs-success-v.test \
289 quotactl-xfs-success.test \
293 seccomp-strict.test \
296 syslog-success.test \
303 unix-pair-send-recv.test \
304 unix-pair-sendto-recvfrom.test \
305 xet_thread_area_x86.test \
306 # end of DECODER_TESTS
317 detach-running.test \
318 detach-sleeping.test \
319 detach-stopped.test \
321 filter-unavailable.test \
322 filtering_fd-syntax.test \
323 filtering_syscall-syntax.test \
324 first_exec_failure.test \
327 interactive_block.test \
330 looping_threads.test \
332 options-syntax.test \
334 printpath-umovestr-legacy.test \
335 printstrn-umoven-legacy.test \
336 qual_fault-syntax.test \
337 qual_fault-syscall.test \
339 qual_inject-error-signal-syscall.test \
340 qual_inject-error-signal.test \
341 qual_inject-retval-syscall.test \
342 qual_inject-retval.test \
343 qual_inject-signal-syscall.test \
344 qual_inject-signal.test \
345 qual_inject-syntax.test \
350 restart_syscall.test \
353 status-detached.test \
354 status-none-threads.test \
355 status-unfinished-threads.test \
362 strace-log-merge-error.test \
363 strace-log-merge-suffix.test \
369 threads-execve.test \
370 umovestr_cached.test \
373 TESTS = $(GEN_TESTS) $(DECODER_TESTS) $(MISC_TESTS) $(STACKTRACE_TESTS)
376 XFAIL_TESTS_m32 = $(STACKTRACE_TESTS)
377 XFAIL_TESTS_mx32 = $(STACKTRACE_TESTS)
378 XFAIL_TESTS = $(XFAIL_TESTS_$(MPERS_NAME)) $(XFAIL_TESTS_$(ARCH))
380 TEST_LOG_COMPILER = env
381 AM_TEST_LOG_FLAGS = STRACE_ARCH=$(ARCH) STRACE_NATIVE_ARCH=$(NATIVE_ARCH) \
382 SIZEOF_KERNEL_LONG_T=$(SIZEOF_KERNEL_LONG_T) \
383 SIZEOF_LONG=$(SIZEOF_LONG) \
384 MIPS_ABI=$(MIPS_ABI) $(srcdir)/run.sh
386 @VALGRIND_CHECK_RULES@
387 VALGRIND_FLAGS = --quiet
388 VALGRIND_SUPPRESSIONS_FILES = $(abs_srcdir)/strace.supp
403 filter-unavailable.expected \
406 gen_pure_executables.sh \
411 init_delete_module.h \
412 ioctl_kvm_run_common.c \
418 netlink_sock_diag-v.sh \
423 process_vm_readv_writev.c \
424 pure_executables.list \
425 qual_fault-exit_group.expected \
426 qual_inject-error-signal.expected \
427 qual_inject-signal.expected \
428 qualify_personality.sh \
429 qualify_personality_empty.in \
440 sigaltstack.expected \
444 status-detached.expected \
449 strace-k-demangle.expected \
450 strace-k-demangle.test \
460 trace_personality_32.in \
461 trace_personality_64.in \
462 trace_personality_regex_32.in \
463 trace_personality_regex_64.in \
464 trace_personality_regex_x32.in \
465 trace_personality_x32.in \
470 trace_statfs_like.in \
474 unix-pair-send-recv.expected \
475 unix-pair-sendto-recvfrom.expected \
486 ksysent.h: $(srcdir)/ksysent.sed
487 echo '#include <asm/unistd.h>' | \
488 $(CPP) $(AM_CPPFLAGS) $(CPPFLAGS) -dM - > $@.t1
489 LC_COLLATE=C sed -r -n -f $(srcdir)/ksysent.sed < $@.t1 > $@.t2
493 ksysent.$(OBJEXT): ksysent.h
495 objects = $(filter %.$(OBJEXT),$(SOURCES:.c=.$(OBJEXT)))
498 clean-local: clean-local-check
499 .PHONY: clean-local-check
501 -rm -rf -- $(TESTS:.test=.dir) $(GEN_TESTS:.gen.test=.dir)
503 .PHONY: check-valgrind-local
504 check-valgrind-local: $(check_LIBRARIES) $(check_PROGRAMS)
506 BUILT_SOURCES = ksysent.h
507 CLEANFILES = ksysent.h