blob: 5f7ec32b13d718249d0dc64530a6c1300ec8b67b [file] [log] [blame]
nethercote6a674352004-10-19 19:07:32 +00001SUBDIRS = ${VG_ARCH} .
njn25e49d8e72002-09-23 09:36:25 +00002
njnd0eab5f2003-09-30 16:52:47 +00003noinst_SCRIPTS = filter_allocs filter_leak_check_size \
nethercote4a02e1e2004-10-20 11:43:01 +00004 filter_stderr filter_stderr_backtrace
daywalker677e0612003-04-24 00:40:38 +00005
nethercote75a8c982004-11-11 19:03:34 +00006noinst_HEADERS = scalar.h
7
njna63e2d72003-06-12 14:13:05 +00008EXTRA_DIST = $(noinst_SCRIPTS) \
njnd8ced862003-04-08 00:47:05 +00009 badaddrvalue.stderr.exp \
njn254d542432002-09-23 16:09:39 +000010 badaddrvalue.stdout.exp badaddrvalue.vgtest \
11 badfree-2trace.stderr.exp badfree-2trace.vgtest \
12 badfree.stderr.exp badfree.vgtest \
13 badjump.stderr.exp badjump.vgtest \
nethercote4d714382004-10-13 09:47:24 +000014 badjump2.stderr.exp badjump2.vgtest \
njn254d542432002-09-23 16:09:39 +000015 badloop.stderr.exp badloop.vgtest \
nethercoteeb0592d2004-11-05 12:02:27 +000016 badpoll.stderr.exp badpoll.vgtest \
njnc2699f62003-09-05 23:29:33 +000017 badrw.stderr.exp badrw.vgtest \
njn7360f8e2003-09-04 20:57:51 +000018 brk.stderr.exp brk.vgtest \
nethercotece471262004-08-25 13:43:44 +000019 brk2.stderr.exp brk2.vgtest \
njnd8ced862003-04-08 00:47:05 +000020 buflen_check.stderr.exp buflen_check.vgtest \
21 clientperm.stderr.exp \
njn4d5490d2002-10-04 14:16:38 +000022 clientperm.stdout.exp clientperm.vgtest \
njn10785452003-05-20 16:38:24 +000023 custom_alloc.stderr.exp custom_alloc.vgtest \
njn254d542432002-09-23 16:09:39 +000024 doublefree.stderr.exp doublefree.vgtest \
njn1140b242003-04-22 20:58:02 +000025 error_counts.stderr.exp error_counts.stdout.exp error_counts.vgtest \
njn254d542432002-09-23 16:09:39 +000026 errs1.stderr.exp errs1.vgtest \
27 exitprog.stderr.exp exitprog.vgtest \
nethercotea81e9162004-02-12 14:34:14 +000028 execve.stderr.exp execve.vgtest \
nethercotef6a1d502004-08-09 12:21:57 +000029 execve2.stderr.exp execve2.vgtest \
njn254d542432002-09-23 16:09:39 +000030 fprw.stderr.exp fprw.vgtest \
31 fwrite.stderr.exp fwrite.stdout.exp fwrite.vgtest \
32 inits.stderr.exp inits.vgtest \
33 inline.stderr.exp inline.stdout.exp inline.vgtest \
34 malloc1.stderr.exp malloc1.vgtest \
35 malloc2.stderr.exp malloc2.vgtest \
njn3e884182003-04-15 13:03:23 +000036 malloc3.stderr.exp malloc3.stdout.exp malloc3.vgtest \
njn254d542432002-09-23 16:09:39 +000037 manuel1.stderr.exp manuel1.stdout.exp manuel1.vgtest \
38 manuel2.stderr.exp manuel2.stdout.exp manuel2.vgtest \
39 manuel3.stderr.exp manuel3.vgtest \
40 memalign_test.stderr.exp memalign_test.vgtest \
nethercote2d5b8162004-08-11 09:40:52 +000041 memalign2.stderr.exp memalign2.vgtest \
njn254d542432002-09-23 16:09:39 +000042 memcmptest.stderr.exp memcmptest.stdout.exp memcmptest.vgtest \
rjwalshbc0bb832004-06-19 18:12:36 +000043 mempool.stderr.exp mempool.vgtest \
njn254d542432002-09-23 16:09:39 +000044 mismatches.stderr.exp mismatches.vgtest \
45 mmaptest.stderr.exp mmaptest.vgtest \
46 nanoleak.stderr.exp nanoleak.vgtest \
njn3e884182003-04-15 13:03:23 +000047 nanoleak_supp.stderr.exp nanoleak_supp.vgtest nanoleak.supp \
njn32a17d12003-10-10 11:01:44 +000048 new_nothrow.stderr.exp new_nothrow.vgtest \
nethercoteea169c02004-07-18 12:05:37 +000049 new_override.stderr.exp new_override.stdout.exp new_override.vgtest \
njn0c5fac82003-05-02 16:19:10 +000050 null_socket.stderr.exp null_socket.vgtest \
sewardjea5cf542003-07-16 19:03:10 +000051 overlap.stderr.exp overlap.stdout.exp overlap.vgtest \
nethercoted3de7302003-10-30 09:11:03 +000052 pth_once.stderr.exp pth_once.stdout.exp pth_once.vgtest \
njn254d542432002-09-23 16:09:39 +000053 realloc1.stderr.exp realloc1.vgtest \
54 realloc2.stderr.exp realloc2.vgtest \
njn398044f2003-07-24 17:39:59 +000055 realloc3.stderr.exp realloc3.vgtest \
nethercote8b305af2004-11-14 17:58:27 +000056 scalar.stderr.exp scalar.vgtest \
57 scalar2.stderr.exp scalar2.vgtest \
58 scalar3.stderr.exp scalar3.vgtest \
59 scalar4.stderr.exp scalar4.vgtest \
60 scalar5.stderr.exp scalar5.vgtest \
61 scalar6.stderr.exp scalar6.vgtest \
nethercote75a8c982004-11-11 19:03:34 +000062 scalar_fork.stderr.exp scalar_fork.vgtest \
nethercote8b305af2004-11-14 17:58:27 +000063 scalar_supp.stderr.exp scalar_supp.vgtest scalar_supp.supp \
nethercote2b0cae62004-11-12 14:57:34 +000064 scalar_vfork.stderr.exp scalar_vfork.vgtest \
njn254d542432002-09-23 16:09:39 +000065 sigaltstack.stderr.exp sigaltstack.vgtest \
njnd8ced862003-04-08 00:47:05 +000066 signal2.stderr.exp \
njn254d542432002-09-23 16:09:39 +000067 signal2.stdout.exp signal2.vgtest \
nethercoted91ea072004-11-07 10:58:19 +000068 str_tester.stderr.exp str_tester.vgtest \
njn254d542432002-09-23 16:09:39 +000069 supp1.stderr.exp supp1.vgtest \
70 supp2.stderr.exp supp2.vgtest \
71 supp.supp \
72 suppfree.stderr.exp suppfree.vgtest \
nethercote57e36b32004-07-10 14:56:28 +000073 toobig-allocs.stderr.exp toobig-allocs.vgtest \
njn254d542432002-09-23 16:09:39 +000074 trivialleak.stderr.exp trivialleak.vgtest \
sewardj51a9fe12003-07-07 00:03:52 +000075 weirdioctl.stderr.exp weirdioctl.stdout.exp weirdioctl.vgtest \
sewardj58bef2e2003-07-13 11:13:37 +000076 metadata.stderr.exp metadata.stdout.exp metadata.vgtest \
njnaca67c52003-09-04 21:57:45 +000077 threadederrno.stderr.exp threadederrno.stdout.exp \
78 threadederrno.vgtest \
nethercotee65e47b2004-10-14 08:38:06 +000079 vgtest_ume.stderr.exp vgtest_ume.vgtest \
nethercote18a71b72004-11-05 13:45:53 +000080 writev.stderr.exp writev.stderr.exp2 writev.vgtest \
thughesd41cd6c2004-10-13 16:48:21 +000081 zeropage.stderr.exp zeropage.stderr.exp2 zeropage.vgtest
njn254d542432002-09-23 16:09:39 +000082
daywalkerc42d8bc2003-04-17 17:00:43 +000083check_PROGRAMS = \
nethercote4d714382004-10-13 09:47:24 +000084 badaddrvalue badfree badjump badjump2 \
nethercoteeb0592d2004-11-05 12:02:27 +000085 badloop badpoll badrw brk brk2 buflen_check \
njn7360f8e2003-09-04 20:57:51 +000086 clientperm custom_alloc \
nethercotef6a1d502004-08-09 12:21:57 +000087 doublefree error_counts errs1 exitprog execve execve2 \
nethercote4a02e1e2004-10-20 11:43:01 +000088 fprw fwrite hello inits inline \
njn3e884182003-04-15 13:03:23 +000089 malloc1 malloc2 malloc3 manuel1 manuel2 manuel3 \
nethercote2d5b8162004-08-11 09:40:52 +000090 memalign_test memalign2 memcmptest mempool mmaptest \
91 nanoleak new_nothrow \
nethercote4a02e1e2004-10-20 11:43:01 +000092 null_socket overlap \
nethercote8b305af2004-11-14 17:58:27 +000093 realloc1 realloc2 realloc3 \
94 scalar scalar2 scalar3 scalar4 scalar5 scalar6 \
95 scalar_fork scalar_supp scalar_vfork sigaltstack signal2 \
nethercoted91ea072004-11-07 10:58:19 +000096 str_tester supp1 supp2 suppfree \
nethercote4a02e1e2004-10-20 11:43:01 +000097 trivialleak weirdioctl \
nethercotee65e47b2004-10-14 08:38:06 +000098 mismatches new_override metadata threadederrno \
99 vgtest_ume \
100 writev zeropage
101
njn25e49d8e72002-09-23 09:36:25 +0000102
nethercotebfcc7072004-10-21 14:07:58 +0000103AM_CPPFLAGS = -I$(top_builddir)/include
daywalkerc42d8bc2003-04-17 17:00:43 +0000104AM_CFLAGS = $(WERROR) -Winline -Wall -Wshadow -g
105AM_CXXFLAGS = $(AM_CFLAGS)
njn25e49d8e72002-09-23 09:36:25 +0000106
107# C ones
108badaddrvalue_SOURCES = badaddrvalue.c
109badfree_SOURCES = badfree.c
110badjump_SOURCES = badjump.c
nethercote4d714382004-10-13 09:47:24 +0000111badjump2_SOURCES = badjump2.c
njn25e49d8e72002-09-23 09:36:25 +0000112badloop_SOURCES = badloop.c
nethercoteeb0592d2004-11-05 12:02:27 +0000113badpoll_SOURCES = badpoll.c
njnc2699f62003-09-05 23:29:33 +0000114badrw_SOURCES = badrw.c
njn7360f8e2003-09-04 20:57:51 +0000115brk_SOURCES = brk.c
nethercotece471262004-08-25 13:43:44 +0000116brk2_SOURCES = brk2.c
njn25e49d8e72002-09-23 09:36:25 +0000117buflen_check_SOURCES = buflen_check.c
njn4d5490d2002-10-04 14:16:38 +0000118clientperm_SOURCES = clientperm.c
njn10785452003-05-20 16:38:24 +0000119custom_alloc_SOURCES = custom_alloc.c
njn25e49d8e72002-09-23 09:36:25 +0000120doublefree_SOURCES = doublefree.c
njn47363ab2003-04-21 13:24:40 +0000121error_counts_SOURCES = error_counts.c
njn25e49d8e72002-09-23 09:36:25 +0000122errs1_SOURCES = errs1.c
nethercotea81e9162004-02-12 14:34:14 +0000123execve_SOURCES = execve.c
nethercotef6a1d502004-08-09 12:21:57 +0000124execve2_SOURCES = execve2.c
njn25e49d8e72002-09-23 09:36:25 +0000125exitprog_SOURCES = exitprog.c
126fprw_SOURCES = fprw.c
127fwrite_SOURCES = fwrite.c
128inits_SOURCES = inits.c
129inline_SOURCES = inline.c
130malloc1_SOURCES = malloc1.c
131malloc2_SOURCES = malloc2.c
njn3e884182003-04-15 13:03:23 +0000132malloc3_SOURCES = malloc3.c
njn25e49d8e72002-09-23 09:36:25 +0000133manuel1_SOURCES = manuel1.c
134manuel2_SOURCES = manuel2.c
135manuel3_SOURCES = manuel3.c
136mmaptest_SOURCES = mmaptest.c
137memalign_test_SOURCES = memalign_test.c
nethercote2d5b8162004-08-11 09:40:52 +0000138memalign2_SOURCES = memalign2.c
njn25e49d8e72002-09-23 09:36:25 +0000139memcmptest_SOURCES = memcmptest.c
rjwalshbc0bb832004-06-19 18:12:36 +0000140mempool_SOURCES = mempool.c
njn25e49d8e72002-09-23 09:36:25 +0000141nanoleak_SOURCES = nanoleak.c
njn0c5fac82003-05-02 16:19:10 +0000142null_socket_SOURCES = null_socket.c
njn3e884182003-04-15 13:03:23 +0000143overlap_SOURCES = overlap.c
njn25e49d8e72002-09-23 09:36:25 +0000144realloc1_SOURCES = realloc1.c
145realloc2_SOURCES = realloc2.c
njn398044f2003-07-24 17:39:59 +0000146realloc3_SOURCES = realloc3.c
nethercote8b76fe52004-11-08 19:20:09 +0000147scalar_SOURCES = scalar.c
nethercote8b305af2004-11-14 17:58:27 +0000148scalar2_SOURCES = scalar2.c
149scalar3_SOURCES = scalar3.c
150scalar4_SOURCES = scalar4.c
151scalar5_SOURCES = scalar5.c
152scalar6_SOURCES = scalar6.c
nethercote75a8c982004-11-11 19:03:34 +0000153scalar_fork_SOURCES = scalar_fork.c
nethercotee824cc42004-11-09 16:20:46 +0000154scalar_supp_SOURCES = scalar_supp.c
nethercote2b0cae62004-11-12 14:57:34 +0000155scalar_vfork_SOURCES = scalar_vfork.c
njn25e49d8e72002-09-23 09:36:25 +0000156signal2_SOURCES = signal2.c
157supp1_SOURCES = supp.c
158supp2_SOURCES = supp.c
159suppfree_SOURCES = suppfree.c
160sigaltstack_SOURCES = sigaltstack.c
161trivialleak_SOURCES = trivialleak.c
njn25e49d8e72002-09-23 09:36:25 +0000162weirdioctl_SOURCES = weirdioctl.c
sewardj51a9fe12003-07-07 00:03:52 +0000163metadata_SOURCES = metadata.c
nethercoted91ea072004-11-07 10:58:19 +0000164str_tester_SOURCES = str_tester.c
165str_tester_CFLAGS = $(AM_CFLAGS) -Wno-shadow
sewardj58bef2e2003-07-13 11:13:37 +0000166threadederrno_SOURCES = threadederrno.c
167threadederrno_LDADD = -lpthread
njnaca67c52003-09-04 21:57:45 +0000168writev_SOURCES = writev.c
nethercotedb233322003-12-02 14:56:04 +0000169zeropage_SOURCES = zeropage.c
njn25e49d8e72002-09-23 09:36:25 +0000170
171# C++ ones
172mismatches_SOURCES = mismatches.cpp
njn32a17d12003-10-10 11:01:44 +0000173new_nothrow_SOURCES = new_nothrow.cpp
njn25e49d8e72002-09-23 09:36:25 +0000174new_override_SOURCES = new_override.cpp
175
nethercotee65e47b2004-10-14 08:38:06 +0000176# Valgrind unit self-tests
177hello_SOURCES = hello.c
nethercote3f131f12004-10-27 12:05:59 +0000178## If we support PIE, build hello as a PIE, otherwise vgtest_ume cannot load
179## (I'm not completely sure why, since stage2 can load both PIEs and non-PIEs,
180## maybe it's because stage2 is loaded up high; anyway, it doesn't really
181## matter so long as vgtest_ume can load hello ok. --njn)
182if USE_PIE
183hello_CFLAGS = $(AM_CFLAGS) -fpie
184hello_LDFLAGS = -pie
185else
nethercotee65e47b2004-10-14 08:38:06 +0000186hello_LDFLAGS = -Wl,-defsym,kickstart_base=0x50000000 \
187 -Wl,-T,../../coregrind/${VG_ARCH}/stage2.lds
nethercote3f131f12004-10-27 12:05:59 +0000188hello_DEPENDENCIES = ../../coregrind/${VG_ARCH}/stage2.lds
189endif
190
nethercote543a63f2004-10-14 09:28:11 +0000191vgtest_ume_SOURCES = vgtest_ume.c
nethercotee65e47b2004-10-14 08:38:06 +0000192vgtest_ume_LDADD = ../../coregrind/ume.o \
nethercotee65e47b2004-10-14 08:38:06 +0000193 ../../coregrind/jmp_with_stack.o
194