]> granicus.if.org Git - strace/blobdiff - tests/Makefile.am
tests: enhance test coverage of printpath and umovestr
[strace] / tests / Makefile.am
index 1c32b1c67fcc8c5418f461e3f0b650211e113140..60a6984445fc47e4e8d343bb06be70c338d5794a 100644 (file)
@@ -1,6 +1,7 @@
 # Automake input for strace tests.
 #
 # Copyright (c) 2011-2016 Dmitry V. Levin <ldv@altlinux.org>
+# Copyright (c) 2011-2017 The strace developers.
 # All rights reserved.
 #
 # Redistribution and use in source and binary forms, with or without
@@ -41,10 +42,12 @@ AM_CPPFLAGS = $(ARCH_MFLAGS) \
 AM_LDFLAGS = $(ARCH_MFLAGS)
 
 libtests_a_SOURCES = \
+       create_nl_socket.c \
        errno2name.c \
        error_msg.c \
        fill_memory.c \
        get_page_size.c \
+       get_sigset_size.c \
        hexdump_strdup.c \
        hexquote_strndup.c \
        inode_of_sockfd.c \
@@ -53,11 +56,18 @@ libtests_a_SOURCES = \
        overflowuid.c \
        pipe_maxfd.c \
        print_quoted_string.c \
+       print_time.c \
        printflags.c \
        printxval.c \
        signal2name.c \
+       skip_unavailable.c \
        sprintrc.c \
        tail_alloc.c \
+       test_netlink.h \
+       test_nlattr.h \
+       test_printpath.c \
+       test_ucopy.c \
+       test_ucopy.h \
        tests.h \
        tprintf.c \
        # end of libtests_a_SOURCES
@@ -65,364 +75,72 @@ libtests_a_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
 check_LIBRARIES = libtests.a
 LDADD = libtests.a
 
-check_PROGRAMS = \
-       _newselect \
-       accept \
-       accept4 \
-       access \
-       acct \
-       add_key \
-       adjtimex \
-       aio \
-       alarm \
+include pure_executables.am
+
+check_PROGRAMS = $(PURE_EXECUTABLES) \
        answer \
        attach-f-p \
        attach-f-p-cmd \
        attach-p-cmd-cmd \
        attach-p-cmd-p \
-       bpf \
-       brk \
-       btrfs \
-       caps \
+       block_reset_raise_run \
        caps-abbrev \
-       chmod \
-       chown \
-       chown32 \
-       chroot \
-       clock_adjtime \
-       clock_nanosleep \
-       clock_xettime \
-       copy_file_range \
        count-f \
-       creat \
-       delete_module \
-       dup \
-       dup2 \
-       dup3 \
-       epoll_create \
-       epoll_create1 \
-       epoll_ctl \
-       epoll_pwait \
-       epoll_wait \
-       erestartsys \
-       eventfd \
-       execve \
        execve-v \
-       execveat \
        execveat-v \
-       faccessat \
-       fadvise64 \
-       fadvise64_64 \
-       fallocate \
-       fanotify_init \
-       fanotify_mark \
-       fault_injection \
-       fchdir \
-       fchmod \
-       fchmodat \
-       fchown \
-       fchown32 \
-       fchownat \
-       fcntl \
-       fcntl64 \
-       fdatasync \
-       file_handle \
-       file_ioctl \
        filter-unavailable \
-       finit_module \
-       flock \
        fork-f \
-       fstat \
-       fstat64 \
-       fstatat64 \
-       fstatfs \
-       fstatfs64 \
-       fsync \
-       ftruncate \
-       ftruncate64 \
-       futex \
-       futimesat \
-       generate_scno \
-       get_mempolicy \
-       getcpu \
-       getcwd \
-       getdents \
-       getdents64 \
-       getegid \
-       getegid32 \
-       geteuid \
-       geteuid32 \
-       getgid \
-       getgid32 \
-       getgroups \
-       getgroups32 \
-       getpeername \
-       getpgrp \
-       getrandom \
-       getresgid \
-       getresgid32 \
-       getresuid \
-       getresuid32 \
-       getrlimit \
-       getrusage \
-       getsid \
-       getsockname \
-       getuid \
-       getuid32 \
-       getxxid \
-       inet-cmsg \
-       init_module \
-       inotify \
-       inotify_init1 \
-       ioctl \
-       ioctl_block \
-       ioctl_dm \
+       getpid  \
+       getppid \
+       gettid \
+       int_0x80 \
        ioctl_dm-v \
-       ioctl_evdev \
        ioctl_evdev-v \
-       ioctl_mtd \
-       ioctl_rtc \
+       ioctl_loop-nv \
+       ioctl_loop-v \
+       ioctl_nsfs \
        ioctl_rtc-v \
-       ioctl_uffdio \
-       ioctl_v4l2 \
-       ioperm \
-       iopl \
-       ioprio \
-       ip_mreq \
-       ipc \
-       ipc_msg \
-       ipc_msgbuf \
-       ipc_sem \
-       ipc_shm \
-       kcmp \
-       kexec_file_load \
-       kexec_load \
-       keyctl \
-       kill \
        ksysent \
-       lchown \
-       lchown32 \
-       link \
-       linkat \
-       llseek \
-       lookup_dcookie \
-       lseek \
-       lstat \
-       lstat64 \
-       mbind \
-       membarrier \
-       memfd_create \
-       migrate_pages \
-       mincore \
-       mkdir \
-       mkdirat \
-       mknod \
-       mknodat \
-       mlock \
-       mlock2 \
-       mlockall \
-       mmap \
-       mmap64 \
-       mmsg \
        mmsg-silent \
-       mmsg_name \
        mmsg_name-v \
-       mount \
-       move_pages \
-       mq \
-       mq_sendrecv \
-       mq_sendrecv-read \
-       mq_sendrecv-write \
-       msg_control \
        msg_control-v \
-       msg_name \
-       munlockall \
-       nanosleep \
        net-accept-connect \
-       net-icmp_filter \
-       net-sockaddr \
-       net-y-unix \
-       net-yy-inet \
-       net-yy-netlink \
-       net-yy-unix \
        netlink_inet_diag \
        netlink_netlink_diag \
-       netlink_protocol \
        netlink_unix_diag \
-       newfstatat \
        nsyscalls \
-       old_mmap \
-       oldfstat \
-       oldlstat \
-       oldselect \
-       oldstat \
-       open \
-       openat \
-       pause \
        pc \
        perf_event_open_nonverbose \
-       perf_event_open \
        perf_event_open_unabbrev \
-       personality \
-       pipe \
-       pkey_alloc \
-       pkey_free \
-       pkey_mprotect \
-       poll \
-       ppoll \
-       prctl-dumpable \
-       prctl-name \
-       prctl-no-args \
-       prctl-pdeathsig \
+       ppoll-v \
        prctl-seccomp-filter-v \
        prctl-seccomp-strict \
-       prctl-securebits \
-       prctl-tsc \
-       pread64-pwrite64 \
-       preadv \
-       preadv-pwritev \
-       preadv2-pwritev2 \
        print_maxfd \
-       prlimit64 \
-       process_vm_readv \
-       process_vm_writev \
-       pselect6 \
-       ptrace \
-       pwritev \
+       qual_fault \
+       qual_inject-error-signal \
+       qual_inject-retval \
+       qual_inject-signal \
        qual_signal \
-       quotactl \
        quotactl-v \
-       quotactl-xfs \
        quotactl-xfs-v \
-       read-write \
-       readahead \
-       readdir \
-       readlink \
-       readlinkat \
-       readv \
-       reboot \
-       recvfrom \
-       recvmmsg-timeout \
-       recvmsg \
        redirect-fds \
-       remap_file_pages \
-       rename \
-       renameat \
-       renameat2 \
-       request_key \
        restart_syscall \
-       rmdir \
-       rt_sigpending \
-       rt_sigprocmask \
-       rt_sigqueueinfo \
-       rt_sigsuspend \
-       rt_sigtimedwait \
-       rt_tgsigqueueinfo \
-       sched_get_priority_mxx \
-       sched_rr_get_interval \
-       sched_xetaffinity \
-       sched_xetattr \
-       sched_xetparam \
-       sched_xetscheduler \
-       sched_yield \
+       run_expect_termsig \
        scm_rights \
-       seccomp-filter \
        seccomp-filter-v \
        seccomp-strict \
-       select \
-       semop \
-       sendfile \
-       sendfile64 \
-       set_mempolicy \
        set_ptracer_any \
-       setdomainname \
-       setfsgid \
-       setfsgid32 \
-       setfsuid \
-       setfsuid32 \
-       setgid \
-       setgid32 \
-       setgroups \
-       setgroups32 \
-       sethostname \
-       setns \
-       setregid \
-       setregid32 \
-       setresgid \
-       setresgid32 \
-       setresuid \
-       setresuid32 \
-       setreuid \
-       setreuid32 \
-       setrlimit \
-       setuid \
-       setuid32 \
-       shmxt \
-       shutdown \
-       sigaction \
-       sigaltstack \
-       siginfo \
        signal_receive \
-       signalfd4 \
-       sigreturn \
        sleep \
-       socketcall \
-       splice \
        stack-fcall \
-       stat \
-       stat64 \
-       statfs \
-       statfs64 \
-       swap \
-       symlink \
-       symlinkat \
-       sync \
-       sync_file_range \
-       sync_file_range2 \
-       sysinfo \
-       syslog \
-       tee \
        threads-execve \
-       time \
-       timer_create \
-       timer_xettime \
-       timerfd_xettime \
-       times \
-       times-fail \
-       truncate \
-       truncate64 \
-       ugetrlimit \
-       uio \
-       umask \
-       umount \
-       umount2 \
-       umovestr \
-       umovestr2 \
-       umovestr3 \
-       uname \
+       unblock_reset_raise \
        unix-pair-send-recv \
        unix-pair-sendto-recvfrom \
-       unlink \
-       unlinkat \
-       unshare \
-       userfaultfd \
-       utime \
-       utimensat \
-       utimes \
        vfork-f \
-       vhangup \
-       vmsplice \
-       wait4 \
        wait4-v \
-       waitid \
        waitid-v \
-       waitpid \
-       xattr \
-       xet_robust_list \
-       xetitimer \
-       xetpgid \
-       xetpriority \
-       xettimeofday \
+       zeroargc \
        # end of check_PROGRAMS
 
 attach_f_p_LDADD = -lrt -lpthread $(LDADD)
@@ -454,6 +172,8 @@ uio_CPPFLAGS = $(AM_CPPFLAGS) -D_FILE_OFFSET_BITS=64
 stack_fcall_SOURCES = stack-fcall.c \
        stack-fcall-0.c stack-fcall-1.c stack-fcall-2.c stack-fcall-3.c
 
+include gen_tests.am
+
 if USE_LIBUNWIND
 LIBUNWIND_TESTS = strace-k.test
 else
@@ -461,199 +181,40 @@ LIBUNWIND_TESTS =
 endif
 
 DECODER_TESTS = \
-       _newselect.test \
-       accept.test \
-       accept4.test \
-       access.test \
-       acct.test \
-       add_key.test \
-       adjtimex.test \
-       aio.test \
-       alarm.test \
-       bpf.test \
        brk.test \
-       btrfs.test \
        btrfs-v.test \
-       btrfs-w.test \
        btrfs-vw.test \
-       caps.test \
+       btrfs-w.test \
        caps-abbrev.test \
-       chmod.test \
-       chown.test \
-       chown32.test \
-       chroot.test \
-       clock_adjtime.test \
-       clock_nanosleep.test \
-       clock_xettime.test \
-       copy_file_range.test \
-       creat.test \
-       delete_module.test \
-       dup.test \
-       dup2.test \
-       dup3.test \
-       epoll_create.test \
-       epoll_create1.test \
-       epoll_ctl.test \
-       epoll_pwait.test \
-       epoll_wait.test \
-       erestartsys.test \
+       caps.test \
        eventfd.test \
        execve-v.test \
        execve.test \
-       execveat-v.test \
-       execveat.test \
-       faccessat.test \
        fadvise64.test \
-       fadvise64_64.test \
-       fallocate.test \
-       fanotify_init.test \
-       fanotify_mark.test \
-       fault_injection-exit_group.test \
-       fchdir.test \
-       fchmod.test \
-       fchmodat.test \
-       fchown.test \
-       fchown32.test \
-       fchownat.test \
-       fcntl.test \
-       fcntl64.test \
-       fdatasync.test \
-       file_handle.test \
-       file_ioctl.test \
-       finit_module.test \
-       flock.test \
-       fstat.test \
-       fstat64.test \
-       fstatat64.test \
-       fstatfs.test \
-       fstatfs64.test \
-       fsync.test \
-       ftruncate.test \
-       ftruncate64.test \
        futex.test \
-       futimesat.test \
-       get_mempolicy.test \
-       getcpu.test \
-       getcwd.test \
-       getdents.test \
-       getdents64.test \
-       getegid.test \
-       getegid32.test \
-       geteuid.test \
-       geteuid32.test \
-       getgid.test \
-       getgid32.test \
-       getgroups.test \
-       getgroups32.test \
-       getpeername.test \
-       getpgrp.test \
-       getrandom.test \
-       getresgid.test \
-       getresgid32.test \
-       getresuid.test \
-       getresuid32.test \
-       getrlimit.test \
-       getrusage.test \
-       getsid.test \
-       getsockname.test \
        getuid.test \
-       getuid32.test \
-       getxxid.test \
-       inet-cmsg.test \
-       init_module.test \
-       inotify.test \
-       inotify_init1.test \
        ioctl.test \
-       ioctl_block.test \
-       ioctl_dm.test \
        ioctl_dm-v.test \
-       ioctl_evdev.test \
-       ioctl_evdev-v.test \
-       ioctl_mtd.test \
-       ioctl_rtc.test \
-       ioctl_rtc-v.test \
-       ioctl_uffdio.test \
-       ioctl_v4l2.test \
-       ioperm.test \
-       iopl.test \
-       ioprio.test \
-       ip_mreq.test \
-       ipc.test \
-       ipc_msg.test \
+       ioctl_dm.test \
+       ioctl_loop-nv.test \
+       ioctl_nsfs.test \
+       ioctl_sock_gifconf.test \
        ipc_msgbuf.test \
-       ipc_sem.test \
-       ipc_shm.test \
-       kcmp.test \
-       kexec_file_load.test \
-       kexec_load.test \
-       keyctl.test \
-       kill.test \
-       lchown.test \
-       lchown32.test \
-       link.test \
-       linkat.test \
        llseek.test \
-       lookup_dcookie.test \
        lseek.test \
-       lstat.test \
-       lstat64.test \
-       mbind.test \
-       membarrier.test \
-       memfd_create.test \
-       migrate_pages.test \
-       mincore.test \
-       mkdir.test \
-       mkdirat.test \
-       mknod.test \
-       mknodat.test \
-       mlock.test \
-       mlock2.test \
-       mlockall.test \
        mmap.test \
-       mmap64.test \
-       mmsg.test \
-       mmsg-silent.test \
-       mmsg_name.test \
-       mmsg_name-v.test \
-       mount.test \
-       move_pages.test \
-       mq.test \
-       mq_sendrecv.test \
-       mq_sendrecv-read.test \
-       mq_sendrecv-write.test \
-       msg_control.test \
-       msg_control-v.test \
-       msg_name.test \
-       munlockall.test \
-       nanosleep.test \
-       net-icmp_filter.test \
-       net-sockaddr.test \
        net-y-unix.test \
        net-yy-inet.test \
        net-yy-netlink.test \
        net-yy-unix.test \
        net.test \
-       netlink_protocol.test \
-       newfstatat.test \
+       netlink_sock_diag.test \
        nsyscalls.test \
-       old_mmap.test \
-       oldfstat.test \
-       oldlstat.test \
        oldselect.test \
-       oldstat.test \
-       open.test \
-       openat.test \
-       pause.test \
-       perf_event_open_nonverbose.test \
-       perf_event_open.test \
-       perf_event_open_unabbrev.test \
        personality.test \
        pipe.test \
-       pkey_alloc.test \
-       pkey_free.test \
-       pkey_mprotect.test \
        poll.test \
-       ppoll.test \
+       prctl-arg2-intptr.test \
        prctl-dumpable.test \
        prctl-name.test \
        prctl-no-args.test \
@@ -661,143 +222,23 @@ DECODER_TESTS = \
        prctl-seccomp-filter-v.test \
        prctl-seccomp-strict.test \
        prctl-securebits.test \
+       prctl-tid_address.test \
        prctl-tsc.test \
-       pread64-pwrite64.test \
-       preadv-pwritev.test \
-       preadv2-pwritev2.test \
-       preadv.test \
-       prlimit64.test \
-       process_vm_readv.test \
-       process_vm_writev.test \
-       pselect6.test \
-       ptrace.test \
-       pwritev.test \
-       quotactl.test \
-       quotactl-v.test \
-       quotactl-xfs.test \
-       quotactl-xfs-v.test \
-       read-write.test \
-       readahead.test \
-       readdir.test \
-       readlink.test \
-       readlinkat.test \
+       qual_fault-exit_group.test \
        readv.test \
-       reboot.test \
-       recvfrom.test \
-       recvmmsg-timeout.test \
-       recvmsg.test \
-       remap_file_pages.test \
-       rename.test \
-       renameat.test \
-       renameat2.test \
-       request_key.test \
-       rmdir.test \
-       rt_sigpending.test \
-       rt_sigprocmask.test \
-       rt_sigqueueinfo.test \
-       rt_sigsuspend.test \
-       rt_sigtimedwait.test \
-       rt_tgsigqueueinfo.test \
-       sched_get_priority_mxx.test \
-       sched_rr_get_interval.test \
-       sched_xetaffinity.test \
-       sched_xetattr.test \
-       sched_xetparam.test \
-       sched_xetscheduler.test \
-       sched_yield.test \
+       rt_sigaction.test \
        scm_rights-fd.test \
-       seccomp-filter-v.test \
-       seccomp-filter.test \
        seccomp-strict.test \
-       select.test \
-       semop.test \
-       sendfile.test \
-       sendfile64.test \
-       set_mempolicy.test \
-       setdomainname.test \
-       setfsgid.test \
-       setfsgid32.test \
-       setfsuid.test \
-       setfsuid32.test \
-       setgid.test \
-       setgid32.test \
-       setgroups.test \
-       setgroups32.test \
-       sethostname.test \
-       setns.test \
-       setregid.test \
-       setregid32.test \
-       setresgid.test \
-       setresgid32.test \
-       setresuid.test \
-       setresuid32.test \
-       setreuid.test \
-       setreuid32.test \
-       setrlimit.test \
-       setuid.test \
-       setuid32.test \
-       shmxt.test \
-       shutdown.test \
-       sigaction.test \
        sigaltstack.test \
-       siginfo.test \
-       signalfd4.test \
-       sigreturn.test \
-       socketcall.test \
-       splice.test \
-       stat.test \
-       stat64.test \
-       statfs.test \
-       statfs64.test \
        sun_path.test \
-       swap.test \
-       symlink.test \
-       symlinkat.test \
-       sync.test \
-       sync_file_range.test \
-       sync_file_range2.test \
-       sysinfo.test \
-       syslog.test \
-       tee.test \
-       time.test \
-       timer_create.test \
-       timer_xettime.test \
-       timerfd_xettime.test \
-       times-fail.test \
-       times.test \
-       truncate.test \
-       truncate64.test \
-       ugetrlimit.test \
        uio.test \
-       umask.test \
        umount.test \
        umount2.test \
        umovestr.test \
        umovestr2.test \
-       umovestr3.test \
        uname.test \
        unix-pair-send-recv.test \
        unix-pair-sendto-recvfrom.test \
-       unlink.test \
-       unlinkat.test \
-       unshare.test \
-       userfaultfd.test \
-       utime.test \
-       utimensat.test \
-       utimes.test \
-       vhangup.test \
-       vmsplice.test \
-       wait4.test \
-       wait4-v.test \
-       waitid.test \
-       waitid-v.test \
-       waitpid.test \
-       xattr.test \
-       xet_robust_list.test \
-       xetitimer.test \
-       xetpgid.test \
-       xetpriority.test \
-       xettimeofday.test \
        # end of DECODER_TESTS
 
 MISC_TESTS = \
@@ -809,20 +250,25 @@ MISC_TESTS = \
        detach-running.test \
        detach-sleeping.test \
        detach-stopped.test \
-       fault_injection.test \
-       fault_syntax.test \
        filter-unavailable.test \
-       fork-f.test \
+       get_regs.test \
+       interactive_block.test \
        ksysent.test \
        opipe.test \
        options-syntax.test \
        pc.test \
+       printpath-umovestr-legacy.test \
+       qual_fault-syntax.test \
+       qual_fault.test \
+       qual_inject-error-signal.test \
+       qual_inject-retval.test \
+       qual_inject-signal.test \
+       qual_inject-syntax.test \
        qual_signal.test \
        qual_syscall.test \
-       redirect.test \
        redirect-fds.test \
+       redirect.test \
        restart_syscall.test \
-       signal_receive.test \
        strace-C.test \
        strace-E.test \
        strace-S.test \
@@ -833,80 +279,100 @@ MISC_TESTS = \
        strace-t.test \
        strace-tt.test \
        strace-ttt.test \
+       termsig.test \
        threads-execve.test \
-       vfork-f.test \
        # end of MISC_TESTS
 
-TESTS = $(DECODER_TESTS) $(MISC_TESTS) $(LIBUNWIND_TESTS)
+TESTS = $(GEN_TESTS) $(DECODER_TESTS) $(MISC_TESTS) $(LIBUNWIND_TESTS)
 
 XFAIL_TESTS_ =
 XFAIL_TESTS_m32 = $(LIBUNWIND_TESTS)
 XFAIL_TESTS_mx32 = $(LIBUNWIND_TESTS)
-XFAIL_TESTS = $(XFAIL_TESTS_$(MPERS_NAME))
+XFAIL_TESTS_x86_64 = int_0x80.gen.test
+XFAIL_TESTS_x32 = int_0x80.gen.test
+XFAIL_TESTS = $(XFAIL_TESTS_$(MPERS_NAME)) $(XFAIL_TESTS_$(ARCH))
 
 TEST_LOG_COMPILER = env
 AM_TEST_LOG_FLAGS = STRACE_ARCH=$(ARCH) MIPS_ABI=$(MIPS_ABI) $(srcdir)/run.sh
 
 @VALGRIND_CHECK_RULES@
 VALGRIND_FLAGS = --quiet
-VALGRIND_SUPPRESSIONS_FILES = $(srcdir)/strace.supp
+VALGRIND_SUPPRESSIONS_FILES = $(abs_srcdir)/strace.supp
 
-EXTRA_DIST = init.sh run.sh match.awk \
-            caps.awk \
-            caps-abbrev.awk \
-            count-f.expected \
-            eventfd.expected \
-            fadvise.h \
-            fault_injection-exit_group.expected \
-            fault_injection.sh \
-            filter-unavailable.expected \
-            fstatat.c \
-            fstatx.c \
-            getresugid.c \
-            init_delete_module.h \
-            ipc.sh \
-            ipc_msgbuf.expected \
-            ksysent.sed \
-            lstatx.c \
-            mq.expected \
-            net.expected \
-            oldselect.expected \
-            pipe.expected \
-            ppoll.expected \
-            ppoll-v.expected \
-            process_vm_readv_writev.c \
-            quotactl.h \
-            setfsugid.c \
-            setreugid.c \
-            setresugid.c \
-            setugid.c \
-            sigaction.awk \
-            sigaltstack.expected \
-            sockname.c \
-            statfs.expected \
-            statx.sh \
-            strace.supp \
-            strace-C.expected \
-            strace-E.expected \
-            strace-T.expected \
-            strace-ff.expected \
-            strace-k.test \
-            strace-r.expected \
-            struct_flock.c \
-            sun_path.expected \
-            uio.expected \
-            umode_t.c \
-            umovestr.expected \
-            unix-pair-send-recv.expected \
-            unix-pair-sendto-recvfrom.expected \
-            xchownx.c \
-            xgetrlimit.c \
-            xselect.c \
-            xstatfs.c \
-            xstatfs64.c \
-            xstatfsx.c \
-            xstatx.c \
-            $(TESTS)
+EXTRA_DIST = \
+       caps-abbrev.awk \
+       caps.awk \
+       clock.in \
+       count-f.expected \
+       eventfd.expected \
+       fadvise.h \
+       filter-unavailable.expected \
+       fstatat.c \
+       fstatx.c \
+       gen_pure_executables.sh \
+       gen_tests.in \
+       gen_tests.sh \
+       getresugid.c \
+       init.sh \
+       init_delete_module.h \
+       ioctl-v.sh \
+       ipc.sh \
+       ipc_msgbuf.expected \
+       ksysent.sed \
+       lstatx.c \
+       match.awk \
+       net.expected \
+       netlink_sock_diag-v.sh \
+       oldselect.expected \
+       pipe.expected \
+       process_vm_readv_writev.c \
+       pure_executables.list \
+       qual_fault-exit_group.expected \
+       qual_inject-error-signal.expected \
+       qual_inject-signal.expected \
+       quotactl.h \
+       regex.in \
+       rt_sigaction.awk \
+       run.sh \
+       sched.in \
+       scno_tampering.sh \
+       setfsugid.c \
+       setresugid.c \
+       setreugid.c \
+       setugid.c \
+       sigaltstack.expected \
+       sockname.c \
+       strace-C.expected \
+       strace-E.expected \
+       strace-T.expected \
+       strace-ff.expected \
+       strace-k.test \
+       strace-r.expected \
+       strace.supp \
+       struct_flock.c \
+       sun_path.expected \
+       trace_fstat.in \
+       trace_fstatfs.in \
+       trace_lstat.in \
+       trace_question.in \
+       trace_stat.in \
+       trace_stat_like.in \
+       trace_statfs.in \
+       trace_statfs_like.in \
+       uio.expected \
+       umode_t.c \
+       umovestr.expected \
+       unix-pair-send-recv.expected \
+       unix-pair-sendto-recvfrom.expected \
+       xchownx.c \
+       xgetrlimit.c \
+       xselect.c \
+       xstatfs.c \
+       xstatfs64.c \
+       xstatfsx.c \
+       xstatx.c \
+       xutimes.c \
+       $(TESTS)
 
 ksysent.h: $(srcdir)/ksysent.sed
        echo '#include <asm/unistd.h>' | \
@@ -915,8 +381,20 @@ ksysent.h: $(srcdir)/ksysent.sed
        mv -f $@.t2 $@
        rm -f $@.t1
 
-scno.h: generate_scno
-       ./$< > $@-t && mv $@-t $@
+ksysent.$(OBJEXT): ksysent.h
+
+objects = $(filter %.$(OBJEXT),$(SOURCES:.c=.$(OBJEXT)))
+$(objects): scno.h
+
+clean-local: clean-local-check
+.PHONY: clean-local-check
+clean-local-check:
+       -rm -rf -- $(TESTS:.test=.dir) $(GEN_TESTS:.gen.test=.dir)
+
+.PHONY: check-valgrind-local
+check-valgrind-local: $(check_LIBRARIES) $(check_PROGRAMS)
+
+BUILT_SOURCES = ksysent.h
+CLEANFILES = ksysent.h
 
-BUILT_SOURCES = ksysent.h scno.h
-CLEANFILES = ksysent.h scno.h $(TESTS:=.tmp)
+include ../scno.am