regtest: remove compiler warnings with clang
[valgrind.git] / memcheck / tests / Makefile.am
blob281d8f55a49a295c2f648fb932f82d3f8c035cd1
2 include $(top_srcdir)/Makefile.tool-tests.am
4 SUBDIRS = .
6 # Arch-specific tests.
7 if VGCONF_ARCHS_INCLUDE_X86
8 SUBDIRS += x86
9 endif
10 if VGCONF_ARCHS_INCLUDE_AMD64
11 SUBDIRS += amd64
12 endif
13 if VGCONF_ARCHS_INCLUDE_MIPS32
14 SUBDIRS += mips32
15 endif
16 if VGCONF_ARCHS_INCLUDE_MIPS64
17 SUBDIRS += mips64
18 endif
19 if VGCONF_ARCHS_INCLUDE_PPC32
20 SUBDIRS += ppc32
21 endif
22 if VGCONF_ARCHS_INCLUDE_PPC64
23 SUBDIRS += ppc64
24 endif
25 if VGCONF_ARCHS_INCLUDE_S390X
26 SUBDIRS += s390x
27 endif
29 # OS-specific tests
30 if VGCONF_OS_IS_LINUX
31 SUBDIRS += linux
32 endif
33 if VGCONF_OS_IS_DARWIN
34 SUBDIRS += darwin
35 endif
36 if VGCONF_OS_IS_SOLARIS
37 SUBDIRS += solaris
38 endif
39 if VGCONF_OS_IS_FREEBSD
40 SUBDIRS += freebsd
41 endif
43 # Platform-specific tests
44 if VGCONF_PLATFORMS_INCLUDE_X86_LINUX
45 SUBDIRS += x86-linux
46 endif
47 if VGCONF_PLATFORMS_INCLUDE_AMD64_LINUX
48 SUBDIRS += amd64-linux
49 endif
50 if VGCONF_PLATFORMS_INCLUDE_ARM64_LINUX
51 SUBDIRS += arm64-linux
52 endif
53 if VGCONF_PLATFORMS_INCLUDE_X86_SOLARIS
54 SUBDIRS += x86-solaris
55 endif
56 if VGCONF_PLATFORMS_INCLUDE_AMD64_SOLARIS
57 SUBDIRS += amd64-solaris
58 endif
59 if VGCONF_PLATFORMS_INCLUDE_X86_FREEBSD
60 SUBDIRS += x86-freebsd
61 endif
62 if VGCONF_PLATFORMS_INCLUDE_AMD64_FREEBSD
63 SUBDIRS += amd64-freebsd
64 endif
66 DIST_SUBDIRS = x86 amd64 ppc32 ppc64 s390x linux \
67                 darwin solaris x86-linux amd64-linux arm64-linux \
68                 x86-solaris amd64-solaris mips32 mips64 \
69                 freebsd amd64-freebsd x86-freebsd \
70                 common .
72 dist_noinst_SCRIPTS = \
73         filter_addressable \
74         filter_allocs \
75         filter_dw4 \
76         filter_leak_cases_possible \
77         filter_leak_cpp_interior \
78         filter_stderr filter_xml \
79         filter_strchr \
80         filter_varinfo3 \
81         filter_memcheck \
82         filter_overlaperror \
83         filter_malloc_free
85 noinst_HEADERS = leak.h
87 EXTRA_DIST = \
88         accounting.stderr.exp accounting.vgtest \
89         addressable.stderr.exp addressable.stdout.exp addressable.vgtest \
90         atomic_incs.stderr.exp atomic_incs.vgtest \
91         atomic_incs.stdout.exp-32bit atomic_incs.stdout.exp-64bit \
92         atomic_incs.stdout.exp-64bit-and-128bit \
93         badaddrvalue.stderr.exp \
94         badaddrvalue.stdout.exp badaddrvalue.vgtest \
95         exit_on_first_error.stderr.exp \
96         exit_on_first_error.vgtest \
97         exit_on_first_error_with_xml.stderr.exp \
98         exit_on_first_error_with_xml.vgtest \
99         badfree-2trace.stderr.exp badfree-2trace.vgtest \
100         badfree.stderr.exp badfree.vgtest \
101         badfree3.stderr.exp badfree3.vgtest \
102         badjump.stderr.exp badjump.vgtest \
103         badjump2.stderr.exp badjump2.vgtest \
104         badjump.stderr.exp-kfail \
105         badjump2.stderr.exp-kfail \
106         badloop.stderr.exp badloop.vgtest \
107         badpoll.stderr.exp badpoll.vgtest \
108         badrw.stderr.exp badrw.vgtest badrw.stderr.exp-s390x-mvc \
109         big_blocks_freed_list.stderr.exp big_blocks_freed_list.vgtest \
110         brk2.stderr.exp brk2.vgtest \
111         buflen_check.stderr.exp buflen_check.vgtest \
112                 buflen_check.stderr.exp-kfail \
113         bug155125.stderr.exp bug155125.vgtest \
114         bug287260.stderr.exp bug287260.vgtest \
115         bug340392.stderr.exp bug340392.vgtest \
116         bug464969_d_demangle.stderr.exp bug464969_d_demangle.vgtest \
117                 bug464969_d_demangle.stdout.exp \
118         calloc-overflow.stderr.exp calloc-overflow.vgtest\
119         cdebug_zlib.stderr.exp cdebug_zlib.vgtest \
120         cdebug_zlib_gnu.stderr.exp cdebug_zlib_gnu.vgtest \
121         client-msg.stderr.exp client-msg.vgtest \
122         client-msg-as-xml.stderr.exp client-msg-as-xml.vgtest \
123         clientperm.stderr.exp \
124         clientperm.stdout.exp clientperm.vgtest \
125         clireq_nofill.stderr.exp \
126         clireq_nofill.stdout.exp clireq_nofill.vgtest \
127         clo_redzone_default.vgtest clo_redzone_128.vgtest \
128         clo_redzone_default.stderr.exp clo_redzone_128.stderr.exp \
129         cond_ld.vgtest cond_ld.stdout.exp cond_ld.stderr.exp-arm \
130                 cond_ld.stderr.exp-64bit-non-arm \
131                 cond_ld.stderr.exp-32bit-non-arm \
132         cond_st.vgtest cond_st.stdout.exp cond_st.stderr.exp-arm \
133                 cond_st.stderr.exp-64bit-non-arm \
134                 cond_st.stderr.exp-32bit-non-arm \
135         leak_cpp_interior.stderr.exp leak_cpp_interior.stderr.exp-64bit leak_cpp_interior.vgtest libstdc++.supp \
136         custom_alloc.stderr.exp custom_alloc.vgtest \
137                 custom_alloc.stderr.exp-s390x-mvc \
138         custom-overlap.stderr.exp custom-overlap.vgtest \
139         cxx17_aligned_new.stderr.exp cxx17_aligned_new.vgtest \
140                 cxx17_aligned_new.stderr.exp_32 \
141                 cxx17_aligned_new.stdout.exp \
142         deep-backtrace.vgtest deep-backtrace.stderr.exp \
143         demangle.stderr.exp demangle.vgtest \
144         big_debuginfo_symbol.stderr.exp big_debuginfo_symbol.vgtest \
145         describe-block.stderr.exp describe-block.vgtest \
146         descr_belowsp.vgtest descr_belowsp.stderr.exp \
147         doublefree.stderr.exp doublefree.vgtest \
148         dw4.vgtest dw4.stderr.exp dw4.stderr.exp-solaris dw4.stdout.exp \
149         err_disable1.vgtest err_disable1.stderr.exp \
150         err_disable2.vgtest err_disable2.stderr.exp \
151         err_disable3.vgtest err_disable3.stderr.exp \
152         err_disable4.vgtest err_disable4.stderr.exp \
153         err_disable_arange1.vgtest err_disable_arange1.stderr.exp \
154         erringfds.stderr.exp erringfds.stdout.exp erringfds.vgtest \
155         error_counts.stderr.exp error_counts.vgtest \
156         errs1.stderr.exp errs1.vgtest \
157         exitprog.stderr.exp exitprog.vgtest \
158         execve1.stderr.exp execve1.vgtest execve1.stderr.exp-kfail \
159         execve2.stderr.exp execve2.vgtest execve2.stderr.exp-kfail \
160         file_locking.stderr.exp file_locking.vgtest \
161         fprw.stderr.exp fprw.stderr.exp-freebsd fprw.stderr.exp-mips32-be \
162                 fprw.stderr.exp-mips32-le fprw.vgtest \
163                 fprw.stderr.exp-freebsd-x86 \
164         fwrite.stderr.exp fwrite.vgtest fwrite.stderr.exp-kfail \
165         gone_abrt_xml.vgtest gone_abrt_xml.stderr.exp gone_abrt_xml.stderr.exp-solaris \
166                 gone_abrt_xml.stderr.exp-freebsd \
167         holey_buffer_too_small.vgtest holey_buffer_too_small.stdout.exp \
168         holey_buffer_too_small.stderr.exp \
169         inits.stderr.exp inits.vgtest \
170         inline.stderr.exp inline.stdout.exp inline.vgtest \
171         inlinfo.stderr.exp inlinfo.stdout.exp inlinfo.vgtest \
172         inlinfosupp.stderr.exp inlinfosupp.stdout.exp inlinfosupp.supp inlinfosupp.vgtest \
173         inlinfosuppobj.stderr.exp inlinfosuppobj.stdout.exp inlinfosuppobj.supp inlinfosuppobj.vgtest \
174         inltemplate.stderr.exp inltemplate.stdout.exp inltemplate.vgtest \
175                 inltemplate.stderr.exp-old-gcc \
176         leak-0.vgtest leak-0.stderr.exp \
177         leak-cases-full.vgtest leak-cases-full.stderr.exp \
178         leak-cases-possible.vgtest leak-cases-possible.stderr.exp \
179         leak-cases-summary.vgtest leak-cases-summary.stderr.exp \
180         leak-cycle.vgtest leak-cycle.stderr.exp \
181         leak-delta.vgtest leak-delta.stderr.exp \
182         leak-pool-0.vgtest leak-pool-0.stderr.exp \
183         leak-pool-1.vgtest leak-pool-1.stderr.exp \
184         leak-pool-2.vgtest leak-pool-2.stderr.exp \
185         leak-pool-3.vgtest leak-pool-3.stderr.exp \
186         leak-pool-4.vgtest leak-pool-4.stderr.exp \
187         leak-pool-5.vgtest leak-pool-5.stderr.exp \
188         leak-autofreepool-0.vgtest leak-autofreepool-0.stderr.exp \
189         leak-autofreepool-1.vgtest leak-autofreepool-1.stderr.exp \
190         leak-autofreepool-2.vgtest leak-autofreepool-2.stderr.exp \
191         leak-autofreepool-4.vgtest leak-autofreepool-4.stderr.exp \
192         leak-autofreepool-5.vgtest leak-autofreepool-5.stderr.exp \
193         leak-autofreepool-6.vgtest leak-autofreepool-6.stderr.exp \
194         leak-autofreepool-5.stderr.exp-freebsd \
195         leak-tree.vgtest leak-tree.stderr.exp \
196         leak-segv-jmp.vgtest leak-segv-jmp.stderr.exp \
197         lks.vgtest lks.stdout.exp lks.supp lks.stderr.exp \
198         long_namespace_xml.vgtest long_namespace_xml.stdout.exp \
199         long_namespace_xml.stderr.exp \
200         long-supps.vgtest long-supps.stderr.exp long-supps.supp \
201         mallinfo.stderr.exp mallinfo.vgtest \
202         malloc_free_fill.vgtest \
203         malloc_free_fill.stderr.exp \
204         malloc_usable.stderr.exp malloc_usable.vgtest \
205         malloc1.stderr.exp malloc1.vgtest \
206         malloc1_ks_none.stderr.exp malloc1_ks_none.vgtest \
207         malloc1_ks_alloc.stderr.exp malloc1_ks_alloc.vgtest \
208         malloc1_ks_free.stderr.exp malloc1_ks_free.vgtest \
209         malloc1_ks_alloc_and_free.stderr.exp malloc1_ks_alloc_and_free.vgtest \
210         malloc2.stderr.exp malloc2.vgtest \
211         malloc3.stderr.exp malloc3.stdout.exp malloc3.vgtest \
212         manuel1.stderr.exp manuel1.stdout.exp manuel1.vgtest \
213                 manuel1.stderr.exp-freebsd-clang \
214         manuel2.stderr.exp manuel2.stderr.exp64 manuel2.stdout.exp \
215                 manuel2.vgtest \
216         manuel3.stderr.exp manuel3.vgtest \
217         match-overrun.stderr.exp match-overrun.vgtest match-overrun.supp \
218         memalign_test.stderr.exp memalign_test.vgtest \
219                 memalign_test.stderr.exp-freebsd-clang \
220         memalign2.stderr.exp memalign2.vgtest \
221         memcmptest.stderr.exp memcmptest.stderr.exp2 \
222         memcmptest.stdout.exp memcmptest.vgtest \
223         memmem.stderr.exp memmem.vgtest \
224         mempool.stderr.exp mempool.vgtest \
225         mempool2.stderr.exp mempool2.vgtest \
226         metadata.stderr.exp metadata.stdout.exp metadata.vgtest \
227         mismatches.stderr.exp mismatches.vgtest \
228         mmaptest.stderr.exp mmaptest.vgtest \
229         nanoleak_supp.stderr.exp nanoleak_supp.vgtest nanoleak.supp \
230         nanoleak_dynsupp.stderr.exp nanoleak_dynsupp.vgtest \
231         nanoleak2.stderr.exp nanoleak2.vgtest \
232         new_nothrow.stderr.exp new_nothrow.vgtest \
233         new_override.stderr.exp new_override.stdout.exp new_override.vgtest \
234         noisy_child.vgtest noisy_child.stderr.exp noisy_child.stdout.exp \
235         null_socket.stderr.exp null_socket.vgtest \
236         origin1-yes.vgtest origin1-yes.stdout.exp origin1-yes.stderr.exp \
237                 origin1-yes.stderr.exp-freebsd \
238         origin2-not-quite.vgtest origin2-not-quite.stdout.exp \
239         origin2-not-quite.stderr.exp \
240                 origin2-not-quite.stderr.exp-freebsd \
241         origin3-no.vgtest origin3-no.stdout.exp \
242                 origin3-no.stderr.exp-freebsd \
243         origin3-no.stderr.exp \
244         origin4-many.vgtest origin4-many.stdout.exp \
245         origin4-many.stderr.exp \
246         origin5-bz2.vgtest origin5-bz2.stdout.exp \
247         origin5-bz2.stderr.exp-glibc25-x86 \
248         origin5-bz2.stderr.exp-glibc25-amd64 \
249         origin5-bz2.stderr.exp-glibc25-amd64-b \
250         origin5-bz2.stderr.exp-glibc27-ppc64 \
251         origin5-bz2.stderr.exp-glibc212-s390x \
252         origin5-bz2.stderr.exp-glibc234-s390x \
253         origin5-bz2.stderr.exp-glibc218-mips32 \
254         origin6-fp.vgtest origin6-fp.stdout.exp \
255         origin6-fp.stderr.exp-glibc25-amd64 \
256         origin6-fp.stderr.exp-glibc27-ppc64 \
257         overlap.stderr.exp overlap.stdout.exp overlap.vgtest \
258         partiallydefinedeq.vgtest partiallydefinedeq.stderr.exp \
259         partiallydefinedeq.stderr.exp4 \
260         partiallydefinedeq.stderr.exp3 \
261         partiallydefinedeq.stderr.exp2 \
262         partiallydefinedeq.stdout.exp \
263         partial_load_ok.vgtest partial_load_ok.stderr.exp \
264                 partial_load_ok.stderr.exp64 \
265                 partial_load_ok.stderr.exp-ppc64 \
266         partial_load_dflt.vgtest partial_load_dflt.stderr.exp \
267                 partial_load_dflt.stderr.exp64 \
268                 partial_load_dflt.stderr.exp-ppc64 \
269         partial_load_dflt.stderr.expr-s390x-mvc \
270         pdb-realloc.stderr.exp pdb-realloc.vgtest \
271         pdb-realloc2.stderr.exp pdb-realloc2.stdout.exp pdb-realloc2.vgtest \
272         pipe.stderr.exp pipe.vgtest \
273         pointer-trace.vgtest \
274         pointer-trace.stderr.exp \
275         post-syscall.stderr.exp post-syscall.vgtest \
276         reach_thread_register.stderr.exp reach_thread_register.vgtest \
277                 reach_thread_register.stderr.exp-mips32 \
278                 reach_thread_register.stderr.exp-mips64 \
279         realloc1.stderr.exp realloc1.vgtest \
280         realloc2.stderr.exp realloc2.vgtest \
281         realloc3.stderr.exp realloc3.vgtest \
282         recursive-merge.stderr.exp recursive-merge.vgtest \
283         resvn_stack.stderr.exp resvn_stack.vgtest \
284         demangle-rust.vgtest demangle-rust.stderr.exp \
285         sbfragment.stdout.exp sbfragment.stderr.exp sbfragment.vgtest \
286         sem.stderr.exp sem.vgtest \
287         sendmsg.stderr.exp sendmsg.stderr.exp-solaris sendmsg.vgtest \
288             sendmsg.stderr.exp-freebsd \
289             sendmsg.stderr.exp-freebsd-x86 \
290         sh-mem.stderr.exp sh-mem.vgtest \
291         sh-mem-random.stderr.exp sh-mem-random.stdout.exp64 \
292         sh-mem-random.stdout.exp sh-mem-random.vgtest \
293         sigaltstack.stderr.exp sigaltstack.vgtest \
294         sigkill.stderr.exp sigkill.stderr.exp-darwin sigkill.stderr.exp-freebsd sigkill.stderr.exp-mips32 \
295             sigkill.stderr.exp-solaris \
296             sigkill.stderr.exp-glibc-2.28 sigkill.vgtest \
297         signal2.stderr.exp signal2.stdout.exp signal2.vgtest \
298         sigprocmask.stderr.exp sigprocmask.stderr.exp2 sigprocmask.vgtest \
299         sized_delete.stderr.exp sized_delete.stderr.exp-x86 sized_delete.vgtest \
300         static_malloc.stderr.exp static_malloc.vgtest \
301         stpncpy.vgtest stpncpy.stderr.exp stpncpy.stdout.exp \
302         strchr.stderr.exp strchr.stderr.exp2 strchr.stderr.exp3 strchr.vgtest \
303         str_tester.stderr.exp str_tester.vgtest \
304         supp-dir.vgtest supp-dir.stderr.exp \
305         supp_unknown.stderr.exp supp_unknown.vgtest supp_unknown.supp \
306         supp_unknown.stderr.exp-kfail \
307         supp1.stderr.exp supp1.vgtest \
308         supp2.stderr.exp supp2.vgtest \
309         supp.supp \
310         suppfree.stderr.exp suppfree.supp suppfree.vgtest \
311         suppfreecollision.stderr.exp suppfreecollision.supp suppfreecollision.vgtest \
312         supponlyobj.stderr.exp supponlyobj.supp supponlyobj.vgtest \
313         suppsrc_lineno.stderr.exp suppsrc_lineno.stdout.exp suppsrc_lineno.vgtest \
314         suppsrc_lineno.supp \
315         suppsrc_sanlineno.stderr.exp suppsrc_sanlineno.stdout.exp suppsrc_sanlineno.vgtest \
316         suppsrc_sanlineno.supp \
317         suppvarinfo5.stderr.exp suppvarinfo5.supp suppvarinfo5.vgtest \
318         test-plo-no.vgtest test-plo-no.stdout.exp \
319             test-plo-no.stderr.exp-le64 test-plo-no.stderr.exp-le32 \
320             test-plo-no.stderr.exp-le32-freebsd test-plo-no.stderr.exp-le64-freebsd \
321             test-plo-no.stderr.exp-le32-freebsd-clang \
322         test-plo-yes.vgtest test-plo-yes.stdout.exp \
323             test-plo-yes.stderr.exp-le64 test-plo-yes.stderr.exp-le32 \
324             test-plo-no.stderr.exp-s390x-mvc \
325         thread_alloca.stderr.exp thread_alloca.vgtest \
326         threadname.vgtest threadname.stderr.exp \
327         threadname_xml.vgtest threadname_xml.stderr.exp \
328         trivialleak.stderr.exp trivialleak.vgtest trivialleak.stderr.exp2 \
329         undef_malloc_args.stderr.exp undef_malloc_args.vgtest \
330         unit_libcbase.stderr.exp unit_libcbase.vgtest \
331         unit_oset.stderr.exp unit_oset.stdout.exp unit_oset.vgtest \
332         varinfo1.vgtest varinfo1.stdout.exp varinfo1.stderr.exp \
333                 varinfo1.stderr.exp-ppc64 \
334                 varinfo1.stderr.exp-freebsd \
335         varinfo2.vgtest varinfo2.stdout.exp varinfo2.stderr.exp \
336                 varinfo2.stderr.exp-ppc64 \
337         varinfo3.vgtest varinfo3.stdout.exp varinfo3.stderr.exp \
338                 varinfo3.stderr.exp-ppc64 \
339                 varinfo3.stderr.exp-freebsd \
340         varinfo4.vgtest varinfo4.stdout.exp varinfo4.stderr.exp \
341                 varinfo4.stderr.exp-ppc64 \
342                 varinfo4.stderr.exp-freebsd \
343         varinfo5.vgtest varinfo5.stdout.exp varinfo5.stderr.exp \
344                 varinfo5.stderr.exp-ppc64 \
345                 varinfo5.stderr.exp-freebsd \
346         varinfo6.vgtest varinfo6.stdout.exp varinfo6.stderr.exp \
347                 varinfo6.stderr.exp-ppc64 \
348         varinforestrict.vgtest varinforestrict.stderr.exp \
349         vcpu_bz2.stdout.exp vcpu_bz2.stderr.exp vcpu_bz2.vgtest \
350         vcpu_fbench.stdout.exp vcpu_fbench.stderr.exp vcpu_fbench.vgtest \
351         vcpu_fnfns.stdout.exp vcpu_fnfns.stdout.exp-glibc28-amd64 \
352         vcpu_fnfns.stdout.exp-darwin vcpu_fnfns.stdout.exp-solaris \
353         vcpu_fnfns.stderr.exp vcpu_fnfns.vgtest \
354         wcs.vgtest wcs.stderr.exp wcs.stdout.exp \
355         wrap1.vgtest wrap1.stdout.exp wrap1.stderr.exp \
356         wrap2.vgtest wrap2.stdout.exp wrap2.stderr.exp \
357         wrap3.vgtest wrap3.stdout.exp wrap3.stderr.exp \
358         wrap4.vgtest wrap4.stdout.exp wrap4.stderr.exp \
359         wrap5.vgtest wrap5.stdout.exp wrap5.stderr.exp \
360         wrap6.vgtest wrap6.stdout.exp wrap6.stderr.exp \
361         wrap7.vgtest wrap7.stdout.exp wrap7.stderr.exp \
362         wrap8.vgtest wrap8.stdout.exp wrap8.stderr.exp \
363         wrap8.stdout.exp-ppc64 wrap8.stderr.exp-ppc64 \
364         wrapmalloc.vgtest wrapmalloc.stdout.exp wrapmalloc.stderr.exp \
365         wrapmallocstatic.vgtest wrapmallocstatic.stdout.exp \
366         wrapmallocstatic.stderr.exp \
367         writev1.stderr.exp writev1.stderr.exp-solaris writev1.vgtest \
368         xml1.stderr.exp xml1.stdout.exp xml1.vgtest xml1.stderr.exp-s390x-mvc \
369         leak_cpp_interior.stderr.exp-freebsd leak_cpp_interior.stderr.exp-freebsd-32bit
371 check_PROGRAMS = \
372         accounting \
373         addressable \
374         atomic_incs \
375         badaddrvalue badfree badjump badjump2 \
376         badloop \
377         badpoll \
378         badrw \
379         big_blocks_freed_list \
380         brk2 \
381         buflen_check \
382         bug155125 \
383         bug287260 \
384         bug340392 \
385         bug464969_d_demangle \
386         calloc-overflow \
387         client-msg \
388         clientperm \
389         clireq_nofill \
390         clo_redzone \
391         cond_ld_st \
392         descr_belowsp \
393         leak_cpp_interior \
394         custom_alloc \
395         custom-overlap \
396         demangle \
397         demangle-rust \
398         big_debuginfo_symbol \
399         deep-backtrace \
400         describe-block \
401         doublefree error_counts errs1 exitprog execve1 execve2 erringfds \
402         err_disable1 err_disable2 err_disable3 err_disable4 \
403         err_disable_arange1 \
404         file_locking \
405         fprw fwrite inits inline inlinfo inltemplate \
406         holey_buffer_too_small \
407         leak-0 \
408         leak-cases \
409         leak-cycle \
410         leak-delta \
411         leak-pool \
412         leak-autofreepool \
413         leak-tree \
414         leak-segv-jmp \
415         long-supps \
416         mallinfo \
417         malloc_free_fill \
418         malloc_usable malloc1 malloc2 malloc3 manuel1 manuel2 manuel3 \
419         match-overrun \
420         memalign_test memalign2 memcmptest mempool mempool2 mmaptest \
421         memmem \
422         mismatches new_override metadata \
423         nanoleak_supp nanoleak2 new_nothrow \
424         noisy_child \
425         null_socket \
426         origin1-yes origin2-not-quite origin3-no \
427         origin4-many origin5-bz2 origin6-fp \
428         overlap \
429         partiallydefinedeq \
430         partial_load pdb-realloc pdb-realloc2 \
431         pipe pointer-trace \
432         post-syscall \
433         realloc1 realloc2 realloc3 \
434         recursive-merge \
435         resvn_stack \
436         sbfragment \
437         sendmsg \
438         sh-mem sh-mem-random \
439         sigaltstack signal2 sigprocmask static_malloc sigkill \
440         strchr \
441         str_tester \
442         supp_unknown supp1 supp2 suppfree \
443         test-plo \
444         trivialleak \
445         thread_alloca \
446         undef_malloc_args \
447         unit_libcbase unit_oset \
448         varinfo1 varinfo2 varinfo3 varinfo4 \
449         varinfo5 varinfo5so.so varinfo6 \
450         varinforestrict \
451         vcpu_fbench vcpu_fnfns \
452         wcs \
453         xml1 \
454         wrap1 wrap2 wrap3 wrap4 wrap5 wrap6 wrap7 wrap7so.so wrap8 \
455         wrapmalloc wrapmallocso.so wrapmallocstatic \
456         writev1
458 if !SOLARIS_SUN_STUDIO_AS
459 # Sun Studio assembler fails on "IDENT too long"
460 check_PROGRAMS += long_namespace_xml
461 endif
463 if DWARF4
464 check_PROGRAMS += dw4
465 endif
467 bug464969_d_demangle_SOURCES = bug464969_d_demangle.cpp
468 bug464969_d_demangle_CXXFLAGS = $(AM_CXXFLAGS) @FLAG_W_NO_UNINITIALIZED@
470 if GZ_ZLIB
471 check_PROGRAMS += cdebug_zlib
472 cdebug_zlib_SOURCES = cdebug.c
473 cdebug_zlib_CFLAGS = $(AM_CFLAGS) -g -gz=zlib @FLAG_W_NO_UNINITIALIZED@
474 endif
476 if GZ_ZLIB_GNU
477 check_PROGRAMS += cdebug_zlib_gnu
478 cdebug_zlib_gnu_SOURCES = cdebug.c
479 cdebug_zlib_gnu_CFLAGS = $(AM_CFLAGS) -g -gz=zlib-gnu @FLAG_W_NO_UNINITIALIZED@
480 endif
482 if HAVE_ALIGNED_CXX_ALLOC
483 check_PROGRAMS += cxx17_aligned_new
484 endif
486 if HAVE_PTHREAD_BARRIER
487 check_PROGRAMS += reach_thread_register
488 endif
490 if HAVE_FSIZED_DEALLOCATION
491 check_PROGRAMS += sized_delete
492 endif
494 if HAVE_GNU_STPNCPY
495 check_PROGRAMS += stpncpy
496 endif
498 if HAVE_PTHREAD_SETNAME_NP
499 check_PROGRAMS += threadname 
500 endif
502 AM_CFLAGS   += $(AM_FLAG_M3264_PRI)
503 AM_CXXFLAGS += $(AM_FLAG_M3264_PRI)
505 if VGCONF_PLATFORMS_INCLUDE_ARM_LINUX
506 #AM_CFLAGS   += -mfloat-abi=softfp
507 #AM_CXXFLAGS += -mfloat-abi=softfp
508 endif
510 if VGCONF_OS_IS_DARWIN
511 atomic_incs_CFLAGS = $(AM_CFLAGS) -mdynamic-no-pic
512 else
513 atomic_incs_CFLAGS = $(AM_CFLAGS)
514 endif
516 badpoll_CFLAGS          = $(AM_CFLAGS) @FLAG_W_NO_STRINGOP_OVERFLOW@
517 badrw_CFLAGS            = $(AM_CFLAGS) @FLAG_W_NO_UNINITIALIZED@
518 big_blocks_freed_list_CFLAGS = $(AM_CFLAGS) @FLAG_W_NO_USE_AFTER_FREE@
520 if VGCONF_OS_IS_SOLARIS
521 buflen_check_LDADD      = -lsocket -lnsl
522 endif
524 leak_cpp_interior_SOURCES       = leak_cpp_interior.cpp
526 # Suppress various gcc warnings which are correct, but for things
527 # we are actually testing for at runtime.
528 accounting_CFLAGS       = $(AM_CFLAGS) @FLAG_W_NO_ALOC_SIZE_LARGER_THAN@
529 badfree_CFLAGS          = $(AM_CFLAGS) @FLAG_W_NO_FREE_NONHEAP_OBJECT@
530 bug155125_CFLAGS        = $(AM_CFLAGS) -Wno-unused-result @FLAG_W_NO_ALOC_SIZE_LARGER_THAN@
531 mallinfo_CFLAGS         = $(AM_CFLAGS) -Wno-deprecated-declarations
532 malloc3_CFLAGS          = $(AM_CFLAGS) @FLAG_W_NO_ALOC_SIZE_LARGER_THAN@
533 sbfragment_CFLAGS       = $(AM_CFLAGS) -Wno-deprecated-declarations
534 strchr_CFLAGS           = $(AM_CFLAGS) @FLAG_W_NO_UNINITIALIZED@
536 big_debuginfo_symbol_SOURCES = big_debuginfo_symbol.cpp
537 big_debuginfo_symbol_CXXFLAGS = $(AM_CXXFLAGS) -std=c++0x
539 bug340392_CFLAGS        = $(AM_CFLAGS) -O3 @FLAG_W_NO_MAYBE_UNINITIALIZED@
541 if HAVE_ALIGNED_CXX_ALLOC
542 cxx17_aligned_new_SOURCES  = cxx17_aligned_new.cpp
543 cxx17_aligned_new_CXXFLAGS = -std=c++17 @FLAG_W_NO_MISMATCHED_NEW_DELETE@
544 endif
546 demangle_SOURCES = demangle.cpp
547 demangle_rust_SOURCES = demangle-rust.c
548 demangle_rust_CFLAGS    = $(AM_CFLAGS) @FLAG_W_NO_USE_AFTER_FREE@
549 dw4_CFLAGS              = $(AM_CFLAGS) -gdwarf-4 -fdebug-types-section
551 descr_belowsp_LDADD     = -lpthread
552 err_disable3_LDADD      = -lpthread
553 err_disable4_LDADD      = -lpthread
554 err_disable4_CFLAGS     = $(AM_CFLAGS)
555 if VGCONF_OS_IS_SOLARIS
556 err_disable4_CFLAGS     += -D_XOPEN_SOURCE=600
557 endif
559 error_counts_CFLAGS = $(AM_CFLAGS) @FLAG_W_NO_UNINITIALIZED@ @FLAG_W_NO_UNUSED_BUT_SET_VARIABLE@
561 execve1_CFLAGS = $(AM_CFLAGS) @FLAG_W_NO_NONNULL@
563 execve2_CFLAGS = $(AM_CFLAGS) @FLAG_W_NO_NONNULL@
565 fprw_CFLAGS = $(AM_CFLAGS) @FLAG_W_NO_UNINITIALIZED@ @FLAG_W_NO_FREE_NONHEAP_OBJECT@ @FLAG_W_NO_USE_AFTER_FREE@
567 inits_CFLAGS = $(AM_CFLAGS) @FLAG_W_NO_UNINITIALIZED@
569 inlinfo_CFLAGS = $(AM_CFLAGS) -w
571 inltemplate_SOURCES = inltemplate.cpp
572 inltemplate_CXXFLAGS = $(AM_CXXFLAGS) @FLAG_W_NO_UNINITIALIZED@
574 long_namespace_xml_SOURCES = long_namespace_xml.cpp
576 malloc_free_fill_CFLAGS = $(AM_CFLAGS) @FLAG_W_NO_USE_AFTER_FREE@
577 malloc1_CFLAGS          = $(AM_CFLAGS) @FLAG_W_NO_USE_AFTER_FREE@
578 manuel1_CFLAGS          = $(AM_CFLAGS) @FLAG_W_NO_UNINITIALIZED@
579 manuel3_CFLAGS          = $(AM_CFLAGS) @FLAG_W_NO_UNINITIALIZED@
581 memalign2_CFLAGS        = $(AM_CFLAGS) @FLAG_W_NO_NON_POWER_OF_TWO_ALIGNMENT@
582 if VGCONF_OS_IS_SOLARIS
583 memalign2_CFLAGS        += -D__EXTENSIONS__
584 endif
586 memcmptest_CFLAGS       = $(AM_CFLAGS) -fno-builtin-memcmp
588 mismatches_SOURCES      = mismatches.cpp
589 mismatches_CXXFLAGS     = $(AM_CXXFLAGS) @FLAG_W_NO_MISMATCHED_NEW_DELETE@
591 new_nothrow_SOURCES     = new_nothrow.cpp
592 new_override_SOURCES    = new_override.cpp
594 noisy_child_CFLAGS      = $(AM_CFLAGS) @FLAG_W_NO_USE_AFTER_FREE@
596 if VGCONF_OS_IS_SOLARIS
597 null_socket_LDADD       = -lsocket -lnsl
598 endif
600 origin1_yes_CFLAGS      = $(AM_CFLAGS) @FLAG_W_NO_UNINITIALIZED@
602 origin2_not_quite_CFLAGS = $(AM_CFLAGS) @FLAG_W_NO_UNINITIALIZED@
604 origin3_no_CFLAGS = $(AM_CFLAGS) @FLAG_W_NO_UNINITIALIZED@
606 # This requires optimisation in order to get just one resulting error.
607 origin4_many_CFLAGS     = $(AM_CFLAGS) -O @FLAG_W_NO_USE_AFTER_FREE@ @FLAG_W_NO_UNINITIALIZED@
609 # Apply -O so as to run in reasonable time.
610 origin5_bz2_CFLAGS      = $(AM_CFLAGS) -O -Wno-inline
611 origin6_fp_CFLAGS       = $(AM_CFLAGS) -O
613 # Don't allow GCC to inline memcpy() and strcpy(),
614 # because then we can't intercept it
615 overlap_CFLAGS          = $(AM_CFLAGS) -fno-builtin-memcpy -fno-builtin-strcpy \
616                           -Wno-fortify-source @FLAG_W_NO_STRINGOP_OVERFLOW@
618 partial_load_CFLAGS     = $(AM_CFLAGS) @FLAG_W_NO_USE_AFTER_FREE@
619 reach_thread_register_CFLAGS    = $(AM_CFLAGS) -O2
620 reach_thread_register_LDADD     = -lpthread
622 resvn_stack_CFLAGS      = $(AM_CFLAGS) @FLAG_W_NO_UNINITIALIZED@
624 sendmsg_CFLAGS          = $(AM_CFLAGS)
625 if VGCONF_OS_IS_SOLARIS
626 sendmsg_CFLAGS          += -D_XOPEN_SOURCE=600
627 sendmsg_LDADD           = -lsocket -lnsl
628 endif
630 if HAVE_FSIZED_DEALLOCATION
631 sized_delete_SOURCES   = sized_delete.cpp
632 sized_delete_CXXFLAGS  = $(AM_CXXFLAGS) @FLAG_FSIZED_DEALLOCATION@
633 endif
635 str_tester_CFLAGS       = $(AM_CFLAGS) -Wno-shadow @FLAG_W_NO_STRINGOP_OVERFLOW@ \
636                           @FLAG_W_NO_STRINGOP_TRUNCATION@ \
637                           -Wno-fortify-source -Wno-suspicious-bzero \
638                           @FLAG_W_NO_MEMSET_TRANSPOSED_ARGS@ @FLAG_W_NO_STRINGOP_OVERREAD@
640 supp_CFLAGS             = $(AM_CFLAGS) @FLAG_W_NO_UNINITIALIZED@
642 supp_unknown_SOURCES    = badjump.c
643 supp_unknown_CFLAGS     = $(AM_CFLAGS) @FLAG_W_NO_UNINITIALIZED@
645 supp1_SOURCES           = supp.c
646 supp1_CFLAGS            = $(AM_CFLAGS) @FLAG_W_NO_UNINITIALIZED@
648 supp2_SOURCES           = supp.c
649 supp2_CFLAGS            = $(AM_CFLAGS) @FLAG_W_NO_UNINITIALIZED@
651 suppfree_CFLAGS         = $(AM_CFLAGS) @FLAG_W_NO_USE_AFTER_FREE@
652 test_plo_CFLAGS         = $(AM_CFLAGS) @FLAG_W_NO_USE_AFTER_FREE@
654 thread_alloca_CFLAGS    = $(AM_CFLAGS) @FLAG_W_NO_FORMAT_OVERFLOW@
655 thread_alloca_LDADD     = -lpthread
656 threadname_LDADD        = -lpthread
658 vcpu_bz2_CFLAGS         = $(AM_CFLAGS) -O2
659 vcpu_fbench_CFLAGS      = $(AM_CFLAGS) -O2
660 vcpu_fnfns_CFLAGS       = $(AM_CFLAGS) -O2
661 vcpu_fnfns_LDADD        = -lm
662 wrap6_CFLAGS            = $(AM_CFLAGS) -O2
664 # To make it a bit more realistic, have some optimisation enabled
665 # for the varinfo tests.  We still expect sane results.
666 varinfo1_CFLAGS         = $(AM_CFLAGS) -O @FLAG_W_NO_MAYBE_UNINITIALIZED@
667 varinfo2_CFLAGS         = $(AM_CFLAGS) -O -Wno-shadow @FLAG_W_NO_MAYBE_UNINITIALIZED@
668 varinfo3_CFLAGS         = $(AM_CFLAGS) -O @FLAG_W_NO_MAYBE_UNINITIALIZED@
669 varinfo4_CFLAGS         = $(AM_CFLAGS) -O @FLAG_W_NO_MAYBE_UNINITIALIZED@
670 varinfo5_CFLAGS         = $(AM_CFLAGS) -O
671 varinfo6_CFLAGS         = $(AM_CFLAGS) -O @FLAG_W_NO_MAYBE_UNINITIALIZED@
673 # Build shared object for varinfo5
674 varinfo5_SOURCES        = varinfo5.c
675 varinfo5_DEPENDENCIES   = varinfo5so.so
676 if VGCONF_OS_IS_DARWIN
677  varinfo5_LDADD         = `pwd`/varinfo5so.so
678  varinfo5_LDFLAGS       = $(AM_FLAG_M3264_PRI)
679 else
680  varinfo5_LDADD         = varinfo5so.so
681  varinfo5_LDFLAGS       = $(AM_FLAG_M3264_PRI) \
682                                 -Wl,-rpath,$(top_builddir)/memcheck/tests
683 endif
685 varinfo5so_so_SOURCES   = varinfo5so.c
686 varinfo5so_so_CFLAGS    = $(AM_CFLAGS) -fpic -O -Wno-shadow @FLAG_W_NO_MAYBE_UNINITIALIZED@
687 if VGCONF_OS_IS_DARWIN
688  varinfo5so_so_LDFLAGS  = -fpic $(AM_FLAG_M3264_PRI) -dynamic \
689                                 -dynamiclib -all_load
690 else
691  varinfo5so_so_LDFLAGS  = -fpic $(AM_FLAG_M3264_PRI) -shared \
692                                 -Wl,-soname -Wl,varinfo5so.so
693 endif
694 varinforestrict_CFLAGS  = $(AM_CFLAGS) -O0 -g @FLAG_W_NO_MAYBE_UNINITIALIZED@
696 # Build shared object for wrap7
697 wrap7_SOURCES           = wrap7.c
698 wrap7_DEPENDENCIES      = wrap7so.so
699 if VGCONF_OS_IS_DARWIN
700  wrap7_LDADD            = `pwd`/wrap7so.so
701  wrap7_LDFLAGS          = $(AM_FLAG_M3264_PRI)
702 else
703  wrap7_LDADD            = wrap7so.so
704  wrap7_LDFLAGS          = $(AM_FLAG_M3264_PRI) \
705                                 -Wl,-rpath,$(top_builddir)/memcheck/tests
706 endif
708 wrap7so_so_SOURCES      = wrap7so.c
709 wrap7so_so_CFLAGS       = $(AM_CFLAGS) -fpic
710 if VGCONF_OS_IS_DARWIN
711  wrap7so_so_LDFLAGS     = -fpic $(AM_FLAG_M3264_PRI) -dynamic \
712                                 -dynamiclib -all_load
713 else
714  wrap7so_so_LDFLAGS     = -fpic $(AM_FLAG_M3264_PRI) -shared \
715                                 -Wl,-soname -Wl,wrap7so.so
716 endif
718 # Build shared object for wrapmalloc
719 wrapmalloc_SOURCES           = wrapmalloc.c
720 wrapmalloc_DEPENDENCIES      = wrapmallocso.so
721 if VGCONF_OS_IS_DARWIN
722  wrapmalloc_LDADD            = `pwd`/wrapmallocso.so
723  wrapmalloc_LDFLAGS          = $(AM_FLAG_M3264_PRI)
724 else
725  wrapmalloc_LDADD            = wrapmallocso.so
726  wrapmalloc_LDFLAGS          = $(AM_FLAG_M3264_PRI) \
727                                 -Wl,-rpath,$(top_builddir)/memcheck/tests
728 endif
730 wrapmallocso_so_SOURCES      = wrapmallocso.c
731 wrapmallocso_so_CFLAGS       = $(AM_CFLAGS) -fpic
732 if VGCONF_OS_IS_DARWIN
733  wrapmallocso_so_LDFLAGS     = -fpic $(AM_FLAG_M3264_PRI) -dynamic \
734                                 -dynamiclib -all_load
735 else
736  wrapmallocso_so_LDFLAGS     = -fpic $(AM_FLAG_M3264_PRI) -shared \
737                                 -Wl,-soname -Wl,wrapmallocso.so
738 endif
740 writev1_CFLAGS          = $(AM_CFLAGS) @FLAG_W_NO_STRINGOP_OVERFLOW@ @FLAG_W_NO_STRINGOP_OVERREAD@
741 xml1_CFLAGS             = $(AM_CFLAGS) -D_GNU_SOURCE @FLAG_W_NO_UNINITIALIZED@ @FLAG_W_NO_USE_AFTER_FREE@