FreeBSD regtest: Implement setaffinity in gdb sleepers for nlvgdbsigqueue
[valgrind.git] / Makefile.am
blobd745e26bf4795af83a8a3038c961c5dc8de0184b
2 AUTOMAKE_OPTIONS = 1.13
4 ACLOCAL_AMFLAGS = -I m4
6 include $(top_srcdir)/Makefile.all.am 
8 TOOLS = \
9                 memcheck \
10                 cachegrind \
11                 callgrind \
12                 helgrind \
13                 drd \
14                 massif \
15                 dhat \
16                 lackey \
17                 none
19 EXP_TOOLS = \
20                 exp-bbv
22 # Put docs last because building the HTML is slow and we want to get
23 # everything else working before we try it.
24 SUBDIRS = \
25         include \
26         VEX \
27         coregrind \
28         . \
29         $(TOOLS) \
30         $(EXP_TOOLS) \
31         shared \
32         tests \
33         perf \
34         gdbserver_tests \
35         memcheck/tests/vbit-test \
36         auxprogs \
37         mpi \
38         solaris \
39         docs
40 DIST_SUBDIRS  = $(SUBDIRS)
42 SUPP_FILES = \
43         glibc-2.2.supp glibc-2.3.supp glibc-2.4.supp glibc-2.5.supp \
44         glibc-2.6.supp glibc-2.7.supp glibc-2.X.supp.in \
45         xfree-3.supp xfree-4.supp \
46         glibc-2.X-helgrind.supp \
47         glibc-2.2-LinuxThreads-helgrind.supp \
48         glibc-2.X-drd.supp \
49         darwin9.supp darwin9-drd.supp \
50         freebsd.supp freebsd-helgrind.supp freebsd-drd.supp \
51         darwin10.supp darwin10-drd.supp \
52         darwin11.supp darwin12.supp darwin13.supp darwin14.supp darwin15.supp \
53         darwin16.supp darwin17.supp \
54         bionic.supp \
55         solaris11.supp solaris12.supp \
56         musl.supp
57 DEFAULT_SUPP_FILES = @DEFAULT_SUPP@
59 # We include all the base .supp files in the distribution, but not
60 # default.supp, as it is built from the base .supp files at compile-time.
61 dist_noinst_DATA = $(SUPP_FILES)
63 vglibdir = $(pkglibexecdir)
64 vglib_DATA = default.supp
66 pkgconfigdir = $(libdir)/pkgconfig
67 pkgconfig_DATA = valgrind.pc
69 BUILT_SOURCES  = default.supp include/vgversion.h valgrind.pc
70 CLEANFILES     = default.supp
72 default.supp: $(DEFAULT_SUPP_FILES)
73         echo "# This is a generated file, composed of the following suppression rules:" > default.supp
74         echo "# " $(DEFAULT_SUPP_FILES) >> default.supp
75         cat $^ >> default.supp
77 ## Preprend @PERL@ because tests/vg_regtest isn't executable
78 ## Ensure make exits with error if PERL fails or post_regtest_checks fails.
79 regtest: check
80         $(top_srcdir)/gdbserver_tests/make_local_links $(GDB)
81         if @PERL@ tests/vg_regtest gdbserver_tests $(TOOLS) $(EXP_TOOLS) ; then \
82            tests/post_regtest_checks $(abs_top_srcdir) gdbserver_tests $(TOOLS) $(EXP_TOOLS); \
83         else \
84            tests/post_regtest_checks $(abs_top_srcdir) gdbserver_tests $(TOOLS) $(EXP_TOOLS); \
85            false; \
86         fi
87 post-regtest-checks:
88         tests/post_regtest_checks $(abs_top_srcdir) gdbserver_tests $(TOOLS) $(EXP_TOOLS)
89 nonexp-regtest: check
90         @PERL@ tests/vg_regtest $(TOOLS)
91 exp-regtest: check
92         @PERL@ tests/vg_regtest gdbserver_tests $(EXP_TOOLS)
93 # Nb: gdbserver_tests are put in exp-regtest rather than nonexp-regtest
94 # because they are tested with various valgrind tools, so might be using
95 # an experimental tool.
97 ## Preprend @PERL@ because tests/vg_perf isn't executable
98 perf: check
99         @PERL@ perf/vg_perf perf
101 # Auxiliary test suites run under valgrind
102 auxchecks: all
103         $(MAKE) -C auxprogs auxchecks
105 # Nb: no need to include any Makefile.am files here, or files included from
106 # them, as automake includes them automatically.  Also not COPYING, README
107 # or NEWS.
108 # We include valgrind.spec as well as valgrind.spec.in to save packagers
109 # from having to run configure (bug 188560).
110 EXTRA_DIST = \
111         COPYING.DOCS \
112         README_DEVELOPERS \
113         README_DEVELOPERS_processes \
114         README_PACKAGERS \
115         README_MISSING_SYSCALL_OR_IOCTL \
116         README.s390 \
117         README.android \
118         README.android_emulator \
119         README.mips \
120         README.aarch64 \
121         README.solaris \
122         README.freebsd \
123         NEWS.old \
124         valgrind.pc.in \
125         valgrind.spec.in \
126         valgrind.spec \
127         autogen.sh \
128         m4
130 dist-hook: include/vgversion.h
131         cp -p include/vgversion.h $(distdir)/include/vgversion_dist.h
133 dist_noinst_SCRIPTS = \
134         vg-in-place
136 all-local: default.supp include/vgversion.h
137         mkdir -p $(inplacedir)
138         rm -f $(inplacedir)/default.supp
139         ln -s ../default.supp $(inplacedir)
141 clean-local:
142         rm -rf $(inplacedir) include/vgversion.h
143         find . -name '*.vgtest.log' -print0 | xargs -r -0 rm
144         find . -name '*.vgtest.trs' -print0 | xargs -r -0 rm
145         find . -name test-suite.log -print0 | xargs -r -0 rm
146         rm -f test-suite-overall.log
148 # Need config.h in the installed tree, since some files depend on it
149 pkginclude_HEADERS = config.h
151 # vgversion.h defines accurate versions to report with -v --version
152 include/vgversion.h:
153         $(top_srcdir)/auxprogs/make_or_upd_vgversion_h $(top_srcdir)
155 .PHONY: include/vgversion.h