1 # SPDX-License-Identifier: MIT
2 # SPDX-FileCopyrightText: 2022 EfficiOS Inc.
4 AM_CPPFLAGS += -I$(top_srcdir)/tests/utils
9 TAP_LOG_DRIVER_FLAGS = --merge --comments
10 TAP_LOG_DRIVER = env AM_TAP_AWK='$(AWK)' \
11 RSEQ_TESTS_SRCDIR='$(abs_top_srcdir)/tests' \
12 RSEQ_TESTS_BUILDDIR='$(abs_top_builddir)/tests' \
13 $(SHELL) $(srcdir)/utils/tap-driver.sh
16 basic_percpu_ops_test.tap \
17 basic_percpu_ops_test_cxx.tap \
18 basic_percpu_ops_mm_cid_test.tap \
19 basic_percpu_ops_mm_cid_test_cxx.tap \
25 param_test_mm_cid_cxx \
26 param_test_benchmark \
27 param_test_benchmark_cxx \
28 param_test_mm_cid_benchmark \
29 param_test_mm_cid_benchmark_cxx \
30 param_test_compare_twice \
31 param_test_compare_twice_cxx \
32 param_test_mm_cid_compare_twice \
33 param_test_mm_cid_compare_twice_cxx \
34 no_syscall_test_cxx.tap \
36 unregistered_test_cxx.tap \
39 dist_noinst_SCRIPTS = \
40 run_no_syscall_test_cxx.tap \
41 run_no_syscall_test.tap \
42 run_param_test_cxx.tap \
44 run_unregistered_test_cxx.tap \
45 run_unregistered_test.tap
49 noinst_LTLIBRARIES = libdisable-rseq-syscall.la
51 libdisable_rseq_syscall_la_SOURCES = disable-rseq-syscall.c
52 libdisable_rseq_syscall_la_LDFLAGS = -module -shared -avoid-version -rpath $(abs_builddir)/.libs/
53 libdisable_rseq_syscall_la_LIBADD = $(SECCOMP_LIBS)
57 basic_percpu_ops_test_tap_SOURCES = basic_percpu_ops_test.c
58 basic_percpu_ops_test_tap_LDADD = $(top_builddir)/src/librseq.la $(top_builddir)/tests/utils/libtap.la $(DL_LIBS)
60 basic_percpu_ops_test_cxx_tap_SOURCES = basic_percpu_ops_test_cxx.cpp
61 basic_percpu_ops_test_cxx_tap_LDADD = $(top_builddir)/src/librseq.la $(top_builddir)/tests/utils/libtap.la $(DL_LIBS)
63 basic_percpu_ops_mm_cid_test_tap_SOURCES = basic_percpu_ops_test.c
64 basic_percpu_ops_mm_cid_test_tap_CPPFLAGS = $(AM_CPPFLAGS) -DBUILDOPT_RSEQ_PERCPU_MM_CID
65 basic_percpu_ops_mm_cid_test_tap_LDADD = $(top_builddir)/src/librseq.la $(top_builddir)/tests/utils/libtap.la $(DL_LIBS)
67 basic_percpu_ops_mm_cid_test_cxx_tap_SOURCES = basic_percpu_ops_test_cxx.cpp
68 basic_percpu_ops_mm_cid_test_cxx_tap_CPPFLAGS = $(AM_CPPFLAGS) -DBUILDOPT_RSEQ_PERCPU_MM_CID
69 basic_percpu_ops_mm_cid_test_cxx_tap_LDADD = $(top_builddir)/src/librseq.la $(top_builddir)/tests/utils/libtap.la $(DL_LIBS)
71 unregistered_test_tap_SOURCES = unregistered_test.c
72 unregistered_test_tap_LDADD = $(top_builddir)/src/librseq.la $(top_builddir)/tests/utils/libtap.la $(DL_LIBS)
74 unregistered_test_cxx_tap_SOURCES = unregistered_test_cxx.cpp
75 unregistered_test_cxx_tap_LDADD = $(top_builddir)/src/librseq.la $(top_builddir)/tests/utils/libtap.la $(DL_LIBS)
77 no_syscall_test_tap_SOURCES = no_syscall_test.c
78 no_syscall_test_tap_LDADD = $(top_builddir)/src/librseq.la $(top_builddir)/tests/utils/libtap.la $(DL_LIBS)
80 no_syscall_test_cxx_tap_SOURCES = no_syscall_test_cxx.cpp
81 no_syscall_test_cxx_tap_LDADD = $(top_builddir)/src/librseq.la $(top_builddir)/tests/utils/libtap.la $(DL_LIBS)
83 basic_test_tap_SOURCES = basic_test.c
84 basic_test_tap_LDADD = $(top_builddir)/src/librseq.la $(top_builddir)/tests/utils/libtap.la $(DL_LIBS)
86 basic_test_cxx_tap_SOURCES = basic_test_cxx.cpp
87 basic_test_cxx_tap_LDADD = $(top_builddir)/src/librseq.la $(top_builddir)/tests/utils/libtap.la $(DL_LIBS)
89 param_test_SOURCES = param_test.c
90 param_test_LDADD = $(top_builddir)/src/librseq.la $(DL_LIBS)
92 param_test_cxx_SOURCES = param_test_cxx.cpp
93 param_test_cxx_LDADD = $(top_builddir)/src/librseq.la $(DL_LIBS)
95 param_test_mm_cid_SOURCES = param_test.c
96 param_test_mm_cid_CPPFLAGS = $(AM_CPPFLAGS) -DBUILDOPT_RSEQ_PERCPU_MM_CID
97 param_test_mm_cid_LDADD = $(top_builddir)/src/librseq.la $(DL_LIBS)
99 param_test_mm_cid_cxx_SOURCES = param_test_cxx.cpp
100 param_test_mm_cid_cxx_CPPFLAGS = $(AM_CPPFLAGS) -DBUILDOPT_RSEQ_PERCPU_MM_CID
101 param_test_mm_cid_cxx_LDADD = $(top_builddir)/src/librseq.la $(DL_LIBS)
103 param_test_benchmark_SOURCES = param_test.c
104 param_test_benchmark_CPPFLAGS = $(AM_CPPFLAGS) -DBENCHMARK
105 param_test_benchmark_LDADD = $(top_builddir)/src/librseq.la $(DL_LIBS)
107 param_test_benchmark_cxx_SOURCES = param_test_cxx.cpp
108 param_test_benchmark_cxx_CPPFLAGS = $(AM_CPPFLAGS) -DBENCHMARK
109 param_test_benchmark_cxx_LDADD = $(top_builddir)/src/librseq.la $(DL_LIBS)
111 param_test_mm_cid_benchmark_SOURCES = param_test.c
112 param_test_mm_cid_benchmark_CPPFLAGS = $(AM_CPPFLAGS) -DBENCHMARK -DBUILDOPT_RSEQ_PERCPU_MM_CID
113 param_test_mm_cid_benchmark_LDADD = $(top_builddir)/src/librseq.la $(DL_LIBS)
115 param_test_mm_cid_benchmark_cxx_SOURCES = param_test_cxx.cpp
116 param_test_mm_cid_benchmark_cxx_CPPFLAGS = $(AM_CPPFLAGS) -DBENCHMARK -DBUILDOPT_RSEQ_PERCPU_MM_CID
117 param_test_mm_cid_benchmark_cxx_LDADD = $(top_builddir)/src/librseq.la $(DL_LIBS)
119 param_test_compare_twice_SOURCES = param_test.c
120 param_test_compare_twice_CPPFLAGS = $(AM_CPPFLAGS) -DRSEQ_COMPARE_TWICE
121 param_test_compare_twice_LDADD = $(top_builddir)/src/librseq.la $(DL_LIBS)
123 param_test_compare_twice_cxx_SOURCES = param_test_cxx.cpp
124 param_test_compare_twice_cxx_CPPFLAGS = $(AM_CPPFLAGS) -DRSEQ_COMPARE_TWICE
125 param_test_compare_twice_cxx_LDADD = $(top_builddir)/src/librseq.la $(DL_LIBS)
127 param_test_mm_cid_compare_twice_SOURCES = param_test.c
128 param_test_mm_cid_compare_twice_CPPFLAGS = $(AM_CPPFLAGS) -DRSEQ_COMPARE_TWICE -DBUILDOPT_RSEQ_PERCPU_MM_CID
129 param_test_mm_cid_compare_twice_LDADD = $(top_builddir)/src/librseq.la $(DL_LIBS)
131 param_test_mm_cid_compare_twice_cxx_SOURCES = param_test_cxx.cpp
132 param_test_mm_cid_compare_twice_cxx_CPPFLAGS = $(AM_CPPFLAGS) -DRSEQ_COMPARE_TWICE -DBUILDOPT_RSEQ_PERCPU_MM_CID
133 param_test_mm_cid_compare_twice_cxx_LDADD = $(top_builddir)/src/librseq.la $(DL_LIBS)
135 # Run shorter tests first
139 run_unregistered_test.tap \
140 run_unregistered_test_cxx.tap
145 run_no_syscall_test.tap \
146 run_no_syscall_test_cxx.tap
150 # Run longer tests last
152 basic_percpu_ops_test.tap \
153 basic_percpu_ops_test_cxx.tap \
154 basic_percpu_ops_mm_cid_test.tap \
155 basic_percpu_ops_mm_cid_test_cxx.tap \
157 run_param_test_cxx.tap