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