Home | History | Annotate | Download | only in main
      1 
      2 AUTOMAKE_OPTIONS = foreign 1.7 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 # DDD: once all tools work on Darwin, TEST_TOOLS and TEST_EXP_TOOLS can be
     20 # replaced with TOOLS and EXP_TOOLS.
     21 TEST_TOOLS = $(TOOLS)
     22 if !VGCONF_OS_IS_DARWIN
     23   TEST_EXP_TOOLS = $(EXP_TOOLS)
     24 else
     25   TEST_EXP_TOOLS = exp-bbv
     26 endif
     27 
     28 
     29 # Put docs last because building the HTML is slow and we want to get
     30 # everything else working before we try it.
     31 SUBDIRS = \
     32 	include \
     33 	VEX \
     34 	coregrind \
     35 	. \
     36 	$(TOOLS) \
     37 	$(EXP_TOOLS) \
     38 	tests \
     39 	perf \
     40 	gdbserver_tests \
     41 	auxprogs \
     42 	mpi \
     43 	docs
     44 DIST_SUBDIRS  = $(SUBDIRS)
     45 
     46 SUPP_FILES = \
     47 	glibc-2.2.supp glibc-2.3.supp glibc-2.4.supp glibc-2.5.supp \
     48 	glibc-2.6.supp glibc-2.7.supp glibc-2.X.supp.in glibc-X.X.supp.in \
     49 	xfree-3.supp xfree-4.supp \
     50 	glibc-2.34567-NPTL-helgrind.supp \
     51 	glibc-2.2-LinuxThreads-helgrind.supp \
     52 	glibc-2.X-drd.supp \
     53 	exp-sgcheck.supp \
     54 	darwin9.supp darwin9-drd.supp \
     55 	darwin10.supp darwin10-drd.supp \
     56 	darwin11.supp \
     57 	bionic.supp
     58 DEFAULT_SUPP_FILES = @DEFAULT_SUPP@
     59 
     60 # We include all the base .supp files in the distribution, but not
     61 # default.supp, as it is built from the base .supp files at compile-time.
     62 dist_noinst_DATA = $(SUPP_FILES)
     63 
     64 pkglib_DATA = default.supp
     65 
     66 pkgconfigdir = $(libdir)/pkgconfig
     67 pkgconfig_DATA = valgrind.pc
     68 
     69 BUILT_SOURCES  = default.supp valgrind.pc
     70 CLEANFILES     = default.supp
     71 
     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_FILES) >> default.supp
     76 
     77 ## Preprend @PERL@ because tests/vg_regtest isn't executable
     78 regtest: check
     79 	-tests/check_makefile_consistency gdbserver_tests $(TEST_TOOLS) $(TEST_EXP_TOOLS)
     80 	gdbserver_tests/make_local_links $(GDB)
     81 	@PERL@ tests/vg_regtest gdbserver_tests $(TEST_TOOLS) $(TEST_EXP_TOOLS)
     82 nonexp-regtest: check
     83 	@PERL@ tests/vg_regtest $(TEST_TOOLS)
     84 exp-regtest: check
     85 	@PERL@ tests/vg_regtest gdbserver_tests $(TEST_EXP_TOOLS)
     86 # Nb: gdbserver_tests are put in exp-regtest rather than nonexp-regtest
     87 # because they are tested with various valgrind tools, so might be using
     88 # an experimental tool.
     89 
     90 ## Preprend @PERL@ because tests/vg_perf isn't executable
     91 perf: check
     92 	@PERL@ perf/vg_perf perf
     93 
     94 # Nb: no need to include any Makefile.am files here, or files included from
     95 # them, as automake includes them automatically.  Also not COPYING, README
     96 # or NEWS.
     97 # We include valgrind.spec as well as valgrind.spec.in to save packagers
     98 # from having to run configure (bug 188560).
     99 EXTRA_DIST = \
    100 	COPYING.DOCS \
    101 	README_DEVELOPERS \
    102 	README_PACKAGERS \
    103 	README_MISSING_SYSCALL_OR_IOCTL \
    104 	README.s390 \
    105 	README.android \
    106 	valgrind.pc.in \
    107 	valgrind.spec.in \
    108 	valgrind.spec
    109 
    110 dist_noinst_SCRIPTS = \
    111 	vg-in-place
    112 
    113 all-local: default.supp
    114 	mkdir -p $(inplacedir)
    115 	rm -f $(inplacedir)/default.supp
    116 	ln -s ../default.supp $(inplacedir)
    117 
    118 clean-local:
    119 	rm -rf $(inplacedir)
    120 
    121 # Need config.h in the installed tree, since some files depend on it
    122 pkginclude_HEADERS = config.h
    123