Makefile.am revision e739ac0589b4fb43561f801c4faba8c1b89f8680
1
2include $(top_srcdir)/Makefile.tool-tests.am
3
4dist_noinst_SCRIPTS = filter_stderr
5
6EXTRA_DIST = \
7	annotate_hbefore.vgtest annotate_hbefore.stdout.exp \
8		annotate_hbefore.stderr.exp \
9	annotate_rwlock.vgtest annotate_rwlock.stdout.exp \
10		annotate_rwlock.stderr.exp \
11	bar_bad.vgtest bar_bad.stdout.exp bar_bad.stderr.exp \
12	bar_trivial.vgtest bar_trivial.stdout.exp bar_trivial.stderr.exp \
13	hg01_all_ok.vgtest hg01_all_ok.stdout.exp hg01_all_ok.stderr.exp \
14	hg02_deadlock.vgtest hg02_deadlock.stdout.exp hg02_deadlock.stderr.exp \
15	hg03_inherit.vgtest hg03_inherit.stdout.exp hg03_inherit.stderr.exp \
16	hg04_race.vgtest hg04_race.stdout.exp hg04_race.stderr.exp \
17	hg05_race2.vgtest hg05_race2.stdout.exp hg05_race2.stderr.exp \
18	hg06_readshared.vgtest hg06_readshared.stdout.exp \
19		hg06_readshared.stderr.exp \
20	pth_barrier1.vgtest pth_barrier1.stdout.exp pth_barrier1.stderr.exp \
21	pth_barrier2.vgtest pth_barrier2.stdout.exp pth_barrier2.stderr.exp \
22	pth_barrier3.vgtest pth_barrier3.stdout.exp pth_barrier3.stderr.exp \
23	pth_spinlock.vgtest pth_spinlock.stdout.exp pth_spinlock.stderr.exp \
24	rwlock_race.vgtest rwlock_race.stdout.exp rwlock_race.stderr.exp \
25	rwlock_test.vgtest rwlock_test.stdout.exp rwlock_test.stderr.exp \
26	tc01_simple_race.vgtest tc01_simple_race.stdout.exp \
27		tc01_simple_race.stderr.exp \
28	tc02_simple_tls.vgtest tc02_simple_tls.stdout.exp \
29		tc02_simple_tls.stderr.exp \
30	tc03_re_excl.vgtest tc03_re_excl.stdout.exp \
31		tc03_re_excl.stderr.exp \
32	tc04_free_lock.vgtest tc04_free_lock.stdout.exp \
33		tc04_free_lock.stderr.exp \
34	tc05_simple_race.vgtest tc05_simple_race.stdout.exp \
35		tc05_simple_race.stderr.exp \
36	tc06_two_races.vgtest tc06_two_races.stdout.exp \
37		tc06_two_races.stderr.exp \
38	tc06_two_races_xml.vgtest tc06_two_races_xml.stdout.exp \
39		tc06_two_races_xml.stderr.exp \
40	tc07_hbl1.vgtest tc07_hbl1.stdout.exp tc07_hbl1.stderr.exp \
41	tc08_hbl2.vgtest tc08_hbl2.stdout.exp tc08_hbl2.stderr.exp \
42	tc09_bad_unlock.vgtest tc09_bad_unlock.stdout.exp \
43		tc09_bad_unlock.stderr.exp-glibc23-amd64 \
44		tc09_bad_unlock.stderr.exp-glibc25-amd64 \
45		tc09_bad_unlock.stderr.exp-glibc25-x86 \
46	tc10_rec_lock.vgtest tc10_rec_lock.stdout.exp tc10_rec_lock.stderr.exp \
47	tc11_XCHG.vgtest tc11_XCHG.stdout.exp tc11_XCHG.stderr.exp \
48	tc12_rwl_trivial.vgtest tc12_rwl_trivial.stdout.exp \
49		tc12_rwl_trivial.stderr.exp \
50		tc12_rwl_trivial.stderr.exp-darwin970 \
51	tc13_laog1.vgtest tc13_laog1.stdout.exp tc13_laog1.stderr.exp \
52	tc14_laog_dinphils.vgtest tc14_laog_dinphils.stdout.exp \
53		tc14_laog_dinphils.stderr.exp \
54	tc15_laog_lockdel.vgtest tc15_laog_lockdel.stdout.exp \
55		tc15_laog_lockdel.stderr.exp \
56	tc16_byterace.vgtest tc16_byterace.stdout.exp \
57		tc16_byterace.stderr.exp \
58	tc17_sembar.vgtest tc17_sembar.stdout.exp \
59		tc17_sembar.stderr.exp \
60	tc18_semabuse.vgtest tc18_semabuse.stdout.exp \
61		tc18_semabuse.stderr.exp-glibc25-amd64 \
62		tc18_semabuse.stderr.exp-glibc28-amd64 \
63	tc19_shadowmem.vgtest tc19_shadowmem.stdout.exp \
64		tc19_shadowmem.stderr.exp \
65	tc20_verifywrap.vgtest tc20_verifywrap.stdout.exp \
66		tc20_verifywrap.stderr.exp-glibc25-amd64 \
67		tc20_verifywrap.stderr.exp-glibc27-amd64 \
68	tc21_pthonce.vgtest tc21_pthonce.stdout.exp tc21_pthonce.stderr.exp \
69	tc22_exit_w_lock.vgtest tc22_exit_w_lock.stdout.exp \
70		tc22_exit_w_lock.stderr.exp \
71	tc23_bogus_condwait.vgtest tc23_bogus_condwait.stdout.exp \
72		tc23_bogus_condwait.stderr.exp \
73	tc24_nonzero_sem.vgtest tc24_nonzero_sem.stdout.exp \
74		tc24_nonzero_sem.stderr.exp
75
76# XXX: tc18_semabuse uses operations that are unsupported on Darwin.  It
77# should be conditionally compiled like tc20_verifywrap is.
78check_PROGRAMS = \
79	annotate_hbefore \
80	hg01_all_ok \
81	hg02_deadlock \
82	hg03_inherit \
83	hg04_race \
84	hg05_race2 \
85	hg06_readshared \
86	tc01_simple_race \
87	tc02_simple_tls \
88	tc03_re_excl \
89	tc04_free_lock \
90	tc05_simple_race \
91	tc06_two_races \
92	tc07_hbl1 \
93	tc08_hbl2 \
94	tc09_bad_unlock \
95	tc10_rec_lock \
96	tc11_XCHG \
97	tc12_rwl_trivial \
98	tc13_laog1 \
99	tc14_laog_dinphils \
100	tc15_laog_lockdel \
101	tc16_byterace \
102	tc17_sembar \
103	tc18_semabuse \
104	tc19_shadowmem \
105	tc21_pthonce \
106	tc23_bogus_condwait \
107	tc24_nonzero_sem
108
109# DDD: it seg faults, and then the Valgrind exit path hangs
110# JRS 29 July 09: it craps out in the stack unwinder, in
111#==13480==    at 0xF00B81FF: ??? f00b8180 VG_(get_StackTrace_wrk)
112#==13480==    by 0xF00B83F8: ??? f00b8340 VG_(get_StackTrace)
113#==13480==    by 0xF009FE19: ??? f009fd70 record_ExeContext_wrk
114#==13480==    by 0xF009D92E: ??? f009d8c0 construct_error
115#==13480==    by 0xF009F001: ??? f009eef0 VG_(maybe_record_error)
116#==13480==    by 0xF0081F80: ??? f0081f00 HG_(record_error_misc)
117#==13480==    by 0xF0089C00: ??? f0089b80 evh__pre_thread_ll_exit
118#==13480==    by 0xF01111D1: ??? f0111070 run_a_thread_NORETURN
119#==13480==    by 0xF0111512: ??? f0111500 start_thread_NORETURN
120# when the thread being unwound is at __bsdthread_terminate+0
121#
122# Like Tom says, the stack unwinder protection is bollocks.
123# We should junk all previous schemes and simply get the 
124# stack unwinder to consult aspacem at each frame (cache-accelerated,
125# of course) to check each page it visits is accessible.
126#
127if ! VGCONF_PLATFORMS_INCLUDE_X86_DARWIN
128   check_PROGRAMS += \
129	tc22_exit_w_lock
130endif
131
132if VGCONF_PLATFORMS_INCLUDE_ARM_LINUX
133annotate_hbefore_CFLAGS = $(AM_CFLAGS) -mcpu=cortex-a8
134tc07_hbl1_CFLAGS        = $(AM_CFLAGS) -mcpu=cortex-a8
135tc08_hbl2_CFLAGS        = $(AM_CFLAGS) -mcpu=cortex-a8
136else
137annotate_hbefore_CFLAGS = $(AM_CFLAGS)
138tc07_hbl1_CFLAGS        = $(AM_CFLAGS)
139tc08_hbl2_CFLAGS        = $(AM_CFLAGS)
140endif
141
142if HAVE_PTHREAD_BARRIER
143check_PROGRAMS += bar_bad bar_trivial
144endif
145
146if HAVE_PTHREAD_MUTEX_TIMEDLOCK
147check_PROGRAMS += tc20_verifywrap
148endif
149
150if HAVE_BUILTIN_ATOMIC
151check_PROGRAMS += annotate_rwlock
152endif
153
154AM_CFLAGS   += $(AM_FLAG_M3264_PRI)
155AM_CXXFLAGS += $(AM_FLAG_M3264_PRI)
156
157LDADD = -lpthread
158
159if VGCONF_OS_IS_DARWIN
160annotate_hbefore_CFLAGS = $(AM_CFLAGS) -mdynamic-no-pic
161else
162annotate_hbefore_CFLAGS = $(AM_CFLAGS)
163endif
164
165
166