1 2 AUTOMAKE_OPTIONS = foreign 1.10 dist-bzip2 3 4 include $(top_srcdir)/Makefile.all.am 5 6 TOOLS = memcheck \ 7 cachegrind \ 8 callgrind \ 9 massif \ 10 lackey \ 11 none \ 12 helgrind \ 13 drd 14 15 EXP_TOOLS = exp-sgcheck \ 16 exp-bbv \ 17 exp-dhat 18 19 # Put docs last because building the HTML is slow and we want to get 20 # everything else working before we try it. 21 SUBDIRS = \ 22 include \ 23 VEX \ 24 coregrind \ 25 . \ 26 $(TOOLS) \ 27 $(EXP_TOOLS) \ 28 shared \ 29 tests \ 30 perf \ 31 gdbserver_tests \ 32 memcheck/tests/vbit-test \ 33 auxprogs \ 34 mpi \ 35 solaris \ 36 docs 37 DIST_SUBDIRS = $(SUBDIRS) 38 39 SUPP_FILES = \ 40 glibc-2.2.supp glibc-2.3.supp glibc-2.4.supp glibc-2.5.supp \ 41 glibc-2.6.supp glibc-2.7.supp glibc-2.X.supp.in \ 42 xfree-3.supp xfree-4.supp \ 43 glibc-2.34567-NPTL-helgrind.supp \ 44 glibc-2.2-LinuxThreads-helgrind.supp \ 45 glibc-2.X-drd.supp \ 46 exp-sgcheck.supp \ 47 darwin9.supp darwin9-drd.supp \ 48 darwin10.supp darwin10-drd.supp \ 49 darwin11.supp darwin12.supp darwin13.supp darwin14.supp darwin15.supp \ 50 bionic.supp \ 51 solaris11.supp solaris12.supp 52 DEFAULT_SUPP_FILES = @DEFAULT_SUPP@ 53 54 # We include all the base .supp files in the distribution, but not 55 # default.supp, as it is built from the base .supp files at compile-time. 56 dist_noinst_DATA = $(SUPP_FILES) 57 58 vglibdir = $(pkglibdir) 59 vglib_DATA = default.supp 60 61 pkgconfigdir = $(libdir)/pkgconfig 62 pkgconfig_DATA = valgrind.pc 63 64 BUILT_SOURCES = default.supp valgrind.pc 65 CLEANFILES = default.supp 66 67 default.supp: $(DEFAULT_SUPP_FILES) 68 echo "# This is a generated file, composed of the following suppression rules:" > default.supp 69 echo "# " $(DEFAULT_SUPP_FILES) >> default.supp 70 cat $^ >> default.supp 71 72 ## Preprend @PERL@ because tests/vg_regtest isn't executable 73 ## Ensure make exits with error if PERL fails or post_regtest_checks fails. 74 regtest: check 75 $(top_srcdir)/gdbserver_tests/make_local_links $(GDB) 76 if @PERL@ tests/vg_regtest gdbserver_tests $(TOOLS) $(EXP_TOOLS) ; then \ 77 tests/post_regtest_checks $(abs_top_srcdir) gdbserver_tests $(TOOLS) $(EXP_TOOLS); \ 78 else \ 79 tests/post_regtest_checks $(abs_top_srcdir) gdbserver_tests $(TOOLS) $(EXP_TOOLS); \ 80 false; \ 81 fi 82 post-regtest-checks: 83 tests/post_regtest_checks $(abs_top_srcdir) gdbserver_tests $(TOOLS) $(EXP_TOOLS) 84 nonexp-regtest: check 85 @PERL@ tests/vg_regtest $(TOOLS) 86 exp-regtest: check 87 @PERL@ tests/vg_regtest gdbserver_tests $(EXP_TOOLS) 88 # Nb: gdbserver_tests are put in exp-regtest rather than nonexp-regtest 89 # because they are tested with various valgrind tools, so might be using 90 # an experimental tool. 91 92 ## Preprend @PERL@ because tests/vg_perf isn't executable 93 perf: check 94 @PERL@ perf/vg_perf perf 95 96 # Nb: no need to include any Makefile.am files here, or files included from 97 # them, as automake includes them automatically. Also not COPYING, README 98 # or NEWS. 99 # We include valgrind.spec as well as valgrind.spec.in to save packagers 100 # from having to run configure (bug 188560). 101 EXTRA_DIST = \ 102 COPYING.DOCS \ 103 README_DEVELOPERS \ 104 README_PACKAGERS \ 105 README_MISSING_SYSCALL_OR_IOCTL \ 106 README.s390 \ 107 README.android \ 108 README.android_emulator \ 109 README.mips \ 110 README.aarch64 \ 111 README.solaris \ 112 NEWS.old \ 113 valgrind.pc.in \ 114 valgrind.spec.in \ 115 valgrind.spec \ 116 autogen.sh 117 118 dist_noinst_SCRIPTS = \ 119 vg-in-place 120 121 all-local: default.supp 122 mkdir -p $(inplacedir) 123 rm -f $(inplacedir)/default.supp 124 ln -s ../default.supp $(inplacedir) 125 126 clean-local: 127 rm -rf $(inplacedir) 128 129 # Need config.h in the installed tree, since some files depend on it 130 pkginclude_HEADERS = config.h 131