1## Process this file with automake to create Makefile.in
2##
3## Copyright (C) 1996-2018 Red Hat, Inc.
4## This file is part of elfutils.
5##
6## This file is free software; you can redistribute it and/or modify
7## it under the terms of the GNU General Public License as published by
8## the Free Software Foundation; either version 3 of the License, or
9## (at your option) any later version.
10##
11## elfutils is distributed in the hope that it will be useful, but
12## WITHOUT ANY WARRANTY; without even the implied warranty of
13## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14## GNU General Public License for more details.
15##
16## You should have received a copy of the GNU General Public License
17## along with this program.  If not, see <http://www.gnu.org/licenses/>.
18##
19include $(top_srcdir)/config/eu.am
20BUILD_RPATH = \$$ORIGIN/../libasm:\$$ORIGIN/../libdw:\$$ORIGIN/../backends:\$$ORIGIN/../libelf
21
22AM_LDFLAGS =
23
24if !STANDALONE
25AM_CPPFLAGS += -I$(top_srcdir)/libasm -I$(top_srcdir)/libdw \
26	    -I$(top_srcdir)/libdwfl -I$(top_srcdir)/libdwelf \
27	    -I$(top_srcdir)/libebl -I$(top_srcdir)/libelf \
28	    -I$(top_srcdir)/lib -I..
29AM_LDFLAGS += -Wl,-rpath-link,../libasm:../libdw:../libelf
30endif
31
32if TESTS_RPATH
33AM_LDFLAGS += -Wl,-rpath,$(BUILD_RPATH)
34tests_rpath = yes
35else
36tests_rpath = no
37endif
38
39check_PROGRAMS = arextract arsymtest newfile saridx scnnames sectiondump \
40		  showptable update1 update2 update3 update4 test-nlist \
41		  show-die-info get-files next-files get-lines next-lines \
42		  get-pubnames \
43		  get-aranges allfcts line2addr addrscopes funcscopes \
44		  show-abbrev hash newscn ecp dwflmodtest \
45		  find-prologues funcretval allregs rdwrmmap \
46		  dwfl-bug-addr-overflow arls dwfl-bug-fd-leak \
47		  dwfl-addr-sect dwfl-bug-report early-offscn \
48		  dwfl-bug-getmodules dwarf-getmacros dwarf-ranges addrcfi \
49		  dwarfcfi \
50		  test-flag-nobits dwarf-getstring rerequest_tag \
51		  alldts typeiter typeiter2 low_high_pc \
52		  test-elf_cntl_gelf_getshdr dwflsyms dwfllines \
53		  dwfl-report-elf-align varlocs backtrace backtrace-child \
54		  backtrace-data backtrace-dwarf debuglink debugaltlink \
55		  buildid deleted deleted-lib.so aggregate_size peel_type \
56		  vdsosyms \
57		  getsrc_die strptr newdata elfstrtab dwfl-proc-attach \
58		  elfshphehdr elfstrmerge dwelfgnucompressed elfgetchdr \
59		  elfgetzdata elfputzdata zstrptr emptyfile vendorelf \
60		  fillfile dwarf_default_lower_bound dwarf-die-addr-die \
61		  get-units-invalid get-units-split attr-integrate-skel \
62		  all-dwarf-ranges unit-info next_cfi \
63		  elfcopy addsections
64
65asm_TESTS = asm-tst1 asm-tst2 asm-tst3 asm-tst4 asm-tst5 \
66	    asm-tst6 asm-tst7 asm-tst8 asm-tst9
67
68if BIARCH
69check_PROGRAMS += backtrace-child-biarch
70endif
71
72# Substitute $(COMPILE).
73backtrace-child-biarch$(EXEEXT): backtrace-child.c
74	$(AM_V_CC)$(CC_BIARCH) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
75		     $(AM_CPPFLAGS) $(CPPFLAGS) \
76		     $(AM_CFLAGS) $(CFLAGS) $(backtrace_child_CFLAGS) \
77		     $(AM_LDFLAGS) $(LDFLAGS) $(backtrace_child_LDFLAGS) \
78		     -o $@ $<
79
80TESTS = run-arextract.sh run-arsymtest.sh run-ar.sh newfile test-nlist \
81	update1 update2 update3 update4 \
82	run-show-die-info.sh run-get-files.sh run-get-lines.sh \
83	run-next-files.sh run-next-lines.sh \
84	run-get-pubnames.sh run-get-aranges.sh run-allfcts.sh \
85	run-show-abbrev.sh run-line2addr.sh hash \
86	newscn run-strip-test.sh run-strip-test2.sh \
87	run-strip-test3.sh run-strip-test4.sh run-strip-test5.sh \
88	run-strip-test6.sh run-strip-test7.sh run-strip-test8.sh \
89	run-strip-test9.sh run-strip-test10.sh run-strip-test11.sh \
90	run-strip-test12.sh \
91	run-strip-nothing.sh run-strip-g.sh run-annobingroup.sh \
92	run-strip-groups.sh run-strip-reloc.sh run-strip-strmerge.sh \
93	run-strip-nobitsalign.sh run-strip-remove-keep.sh \
94	run-unstrip-test.sh run-unstrip-test2.sh run-unstrip-test3.sh \
95	run-unstrip-test4.sh run-unstrip-M.sh run-elfstrmerge-test.sh \
96	run-ecp-test.sh run-ecp-test2.sh run-alldts.sh \
97	run-elflint-test.sh run-elflint-self.sh run-ranlib-test.sh \
98	run-ranlib-test2.sh run-ranlib-test3.sh run-ranlib-test4.sh \
99	run-addrscopes.sh run-strings-test.sh run-funcscopes.sh \
100	run-find-prologues.sh run-allregs.sh run-addrcfi.sh \
101	run-dwarfcfi.sh \
102	run-nm-self.sh run-readelf-self.sh run-readelf-info-plus.sh \
103	run-readelf-compressed.sh \
104	run-readelf-const-values.sh \
105	run-varlocs-self.sh run-exprlocs-self.sh \
106	run-readelf-test1.sh run-readelf-test2.sh run-readelf-test3.sh \
107	run-readelf-test4.sh run-readelf-twofiles.sh \
108	run-readelf-macro.sh run-readelf-loc.sh run-readelf-ranges.sh \
109	run-readelf-aranges.sh run-readelf-line.sh run-readelf-z.sh \
110	run-readelf-n.sh \
111	run-native-test.sh run-bug1-test.sh \
112	run-debuglink.sh run-debugaltlink.sh run-buildid.sh \
113	dwfl-bug-addr-overflow run-addrname-test.sh \
114	dwfl-bug-fd-leak dwfl-bug-report \
115	run-dwfl-bug-offline-rel.sh run-dwfl-addr-sect.sh \
116	run-disasm-x86.sh run-disasm-x86-64.sh \
117	run-early-offscn.sh run-dwarf-getmacros.sh run-dwarf-ranges.sh \
118	run-test-flag-nobits.sh run-prelink-addr-test.sh \
119	run-dwarf-getstring.sh run-rerequest_tag.sh run-typeiter.sh \
120	run-readelf-d.sh run-readelf-gdb_index.sh run-unstrip-n.sh \
121	run-low_high_pc.sh run-macro-test.sh run-elf_cntl_gelf_getshdr.sh \
122	run-test-archive64.sh run-readelf-vmcoreinfo.sh \
123	run-readelf-mixed-corenote.sh run-dwfllines.sh \
124	run-readelf-variant.sh \
125	run-dwfl-report-elf-align.sh run-addr2line-test.sh \
126	run-addr2line-i-test.sh run-addr2line-i-lex-test.sh \
127	run-addr2line-i-demangle-test.sh run-addr2line-alt-debugpath.sh \
128	run-varlocs.sh run-exprlocs.sh run-funcretval.sh \
129	run-backtrace-native.sh run-backtrace-data.sh run-backtrace-dwarf.sh \
130	run-backtrace-native-biarch.sh run-backtrace-native-core.sh \
131	run-backtrace-native-core-biarch.sh run-backtrace-core-x86_64.sh \
132	run-backtrace-fp-core-x86_64.sh \
133	run-backtrace-fp-core-aarch64.sh \
134	run-backtrace-fp-core-ppc64le.sh \
135	run-backtrace-core-x32.sh \
136	run-backtrace-core-i386.sh run-backtrace-fp-core-i386.sh \
137	run-backtrace-core-ppc.sh \
138	run-backtrace-core-s390x.sh run-backtrace-core-s390.sh \
139	run-backtrace-core-aarch64.sh run-backtrace-core-sparc.sh \
140	run-backtrace-demangle.sh run-stack-d-test.sh run-stack-i-test.sh \
141	run-stack-demangled-test.sh run-readelf-zx.sh run-readelf-zp.sh \
142	run-readelf-addr.sh run-readelf-str.sh \
143	run-readelf-types.sh \
144	run-readelf-dwz-multi.sh run-allfcts-multi.sh run-deleted.sh \
145	run-linkmap-cut.sh run-aggregate-size.sh run-peel-type.sh \
146	vdsosyms run-readelf-A.sh \
147	run-getsrc-die.sh run-strptr.sh newdata elfstrtab dwfl-proc-attach \
148	elfshphehdr run-lfs-symbols.sh run-dwelfgnucompressed.sh \
149	run-elfgetchdr.sh \
150	run-elfgetzdata.sh run-elfputzdata.sh run-zstrptr.sh \
151	run-compress-test.sh \
152	run-readelf-zdebug.sh run-readelf-zdebug-rel.sh \
153	emptyfile vendorelf fillfile dwarf_default_lower_bound \
154	run-dwarf-die-addr-die.sh \
155	run-get-units-invalid.sh run-get-units-split.sh \
156	run-attr-integrate-skel.sh \
157	run-all-dwarf-ranges.sh run-unit-info.sh \
158	run-reloc-bpf.sh \
159	run-next-cfi.sh run-next-cfi-self.sh \
160	run-copyadd-sections.sh run-copymany-sections.sh \
161	run-typeiter-many.sh run-strip-test-many.sh \
162	run-strip-version.sh
163
164if !BIARCH
165export ELFUTILS_DISABLE_BIARCH = 1
166endif
167
168if !DEMANGLE
169export ELFUTILS_DISABLE_DEMANGLE = 1
170endif
171
172if !STANDALONE
173check_PROGRAMS += msg_tst system-elf-libelf-test
174TESTS += msg_tst system-elf-libelf-test
175endif
176
177if LZMA
178TESTS += run-readelf-s.sh run-dwflsyms.sh
179endif
180
181if HAVE_LIBASM
182check_PROGRAMS += $(asm_TESTS)
183TESTS += $(asm_TESTS) run-disasm-bpf.sh
184endif
185
186EXTRA_DIST = run-arextract.sh run-arsymtest.sh run-ar.sh \
187	     run-show-die-info.sh run-get-files.sh run-get-lines.sh \
188	     run-next-files.sh run-next-lines.sh testfile-only-debug-line.bz2 \
189	     run-get-pubnames.sh run-get-aranges.sh \
190	     run-show-abbrev.sh run-strip-test.sh \
191	     run-strip-test2.sh run-ecp-test.sh run-ecp-test2.sh \
192	     testfile.bz2 testfile2.bz2 testfile3.bz2 testfile4.bz2 \
193	     testfile5.bz2 testfile6.bz2 testfile7.bz2 testfile8.bz2 \
194	     testfile9.bz2 testfile10.bz2 testfile11.bz2 testfile12.bz2 \
195	     testfile13.bz2 run-strip-test3.sh run-allfcts.sh \
196	     testfile_class_func.bz2 testfile_nested_funcs.bz2 \
197	     run-line2addr.sh run-elflint-test.sh testfile14.bz2 \
198	     run-strip-test4.sh run-strip-test5.sh run-strip-test6.sh \
199	     run-strip-test7.sh run-strip-test8.sh run-strip-groups.sh \
200	     run-strip-test9.sh run-strip-test10.sh run-strip-test11.sh \
201	     run-strip-test12.sh \
202	     run-strip-nothing.sh run-strip-remove-keep.sh run-strip-g.sh \
203	     run-annobingroup.sh testfile-annobingroup.o.bz2 \
204	     testfile-annobingroup-i386.o.bz2 \
205	     testfile-annobingroup-x86_64.o.bz2 \
206	     run-strip-strmerge.sh run-strip-nobitsalign.sh \
207	     testfile-nobitsalign.bz2 testfile-nobitsalign.strip.bz2 \
208	     run-strip-reloc.sh hello_i386.ko.bz2 hello_x86_64.ko.bz2 \
209	     hello_ppc64.ko.bz2 hello_s390.ko.bz2 hello_aarch64.ko.bz2 \
210	     hello_m68k.ko.bz2 hello_riscv64.ko.bz2 \
211	     run-unstrip-test.sh run-unstrip-test2.sh \
212	     testfile-info-link.bz2 testfile-info-link.debuginfo.bz2 \
213	     testfile-info-link.stripped.bz2 run-unstrip-test3.sh \
214	     run-unstrip-test4.sh testfile-strtab.bz2 \
215	     testfile-strtab.stripped.bz2 testfile-strtab.debuginfo.bz2 \
216	     run-unstrip-M.sh run-elfstrmerge-test.sh \
217	     run-elflint-self.sh run-ranlib-test.sh run-ranlib-test2.sh \
218	     run-ranlib-test3.sh run-ranlib-test4.sh \
219	     run-addrscopes.sh run-strings-test.sh run-funcscopes.sh \
220	     run-nm-self.sh run-readelf-self.sh run-readelf-info-plus.sh \
221	     run-readelf-compressed.sh \
222	     run-readelf-const-values.sh testfile-const-values.debug.bz2 \
223	     run-addrcfi.sh run-dwarfcfi.sh \
224	     testfile11-debugframe.bz2 testfile12-debugframe.bz2 \
225	     testfileaarch64-debugframe.bz2 testfilearm-debugframe.bz2 \
226	     testfileppc32-debugframe.bz2 testfileppc64-debugframe.bz2 \
227	     run-varlocs-self.sh run-exprlocs-self.sh \
228	     run-find-prologues.sh run-allregs.sh run-native-test.sh \
229	     run-addrname-test.sh run-dwfl-bug-offline-rel.sh \
230	     run-dwfl-addr-sect.sh run-early-offscn.sh \
231	     run-dwarf-getmacros.sh \
232	     run-dwarf-ranges.sh debug-ranges-no-lowpc.o.bz2 \
233	     testfileranges4.debug.bz2 testfileranges5.debug.bz2 \
234	     testfilesplitranges5.debug.bz2 \
235	     testfile-ranges-hello5.dwo.bz2 testfile-ranges-world5.dwo.bz2 \
236	     run-test-flag-nobits.sh \
237	     run-dwarf-getstring.sh run-rerequest_tag.sh run-alldts.sh \
238	     testfile15.bz2 testfile15.debug.bz2 \
239	     testfile16.bz2 testfile16.debug.bz2 \
240	     testfile17.bz2 testfile17.debug.bz2 \
241	     testfile18.bz2 testfile19.bz2 testfile19.index.bz2 \
242	     testfile20.bz2 testfile20.index.bz2 \
243	     testfile21.bz2 testfile21.index.bz2 \
244	     testfile22.bz2 testfile23.bz2 testfile24.bz2 testfile25.bz2 \
245	     testfile26.bz2 testfile27.bz2 \
246	     coverage.sh test-subr.sh test-wrapper.sh \
247	     run-readelf-test1.sh run-readelf-test2.sh run-readelf-test3.sh \
248	     run-readelf-test4.sh run-readelf-twofiles.sh \
249	     run-bug1-test.sh testfile28.bz2 testfile28.rdwr.bz2 \
250	     run-debuglink.sh run-debugaltlink.sh run-buildid.sh \
251	     testfile29.bz2 testfile29.rdwr.bz2 \
252	     testfile30.bz2 testfile31.bz2 testfile32.bz2 testfile33.bz2 \
253	     testfile34.bz2 testfile35.bz2 testfile35.debug.bz2 \
254	     testfile36.bz2 testfile36.debug.bz2 \
255	     testfile37.bz2 testfile37.debug.bz2 \
256	     testfile38.bz2 testfile39.bz2 testfile40.bz2 testfile40.debug.bz2 \
257	     testfile41.bz2 testfile42.bz2 testfile42_noshdrs.bz2 \
258	     testfile43.bz2 \
259	     testfile44.S.bz2 testfile44.expect.bz2 run-disasm-x86.sh \
260	     testfile45.S.bz2 testfile45.expect.bz2 run-disasm-x86-64.sh \
261	     testfile46.bz2 testfile47.bz2 testfile48.bz2 testfile48.debug.bz2 \
262	     testfile49.bz2 testfile50.bz2 testfile51.bz2 \
263	     testfile-macros-0xff.bz2 \
264	     run-readelf-macro.sh testfilemacro.bz2 \
265	     run-readelf-loc.sh testfileloc.bz2 \
266	     splitdwarf4-not-split4.dwo.bz2 \
267	     testfile-splitdwarf4-not-split4.debug.bz2 \
268	     run-readelf-ranges.sh \
269	     run-readelf-aranges.sh run-readelf-line.sh testfilefoobarbaz.bz2 \
270	     testfile-ppc64-min-instr.bz2 \
271	     testfile-dwarf-45.source \
272	     testfile-dwarf-4.bz2 testfile-dwarf-5.bz2 \
273	     run-readelf-z.sh \
274	     run-readelf-dwz-multi.sh libtestfile_multi_shared.so.bz2 \
275	     testfile_multi.dwz.bz2 testfile_multi_main.bz2 \
276	     testfile-dwzstr.bz2 testfile-dwzstr.multi.bz2 \
277	     run-readelf-addr.sh run-readelf-str.sh \
278	     run-readelf-types.sh \
279	     run-readelf-n.sh \
280	     testfile-gnu-property-note.bz2 testfile-gnu-property-note.o.bz2 \
281	     testfile_gnu_props.32le.o.bz2 \
282	     testfile_gnu_props.64le.o.bz2 \
283	     testfile_gnu_props.32be.o.bz2 \
284	     testfile_gnu_props.64be.o.bz2 \
285	     run-allfcts-multi.sh \
286	     test-offset-loop.bz2 test-offset-loop.alt.bz2 \
287	     run-prelink-addr-test.sh \
288	     testfile52-32.so.bz2 testfile52-32.so.debug.bz2 \
289	     testfile52-32.prelink.so.bz2 testfile52-32.noshdrs.so.bz2 \
290	     testfile52-64.so.bz2 testfile52-64.so.debug.bz2 \
291	     testfile52-64.prelink.so.bz2 testfile52-64.noshdrs.so.bz2 \
292	     testfile53-32.bz2 testfile53-32.debug.bz2 \
293	     testfile53-32.prelink.bz2 testfile53-64.bz2 \
294	     testfile53-64.debug.bz2 testfile53-64.prelink.bz2 \
295	     testfile54-32.so.bz2 testfile54-32.so.debug.bz2 \
296	     testfile54-32.prelink.so.bz2 testfile54-32.noshdrs.so.bz2 \
297	     testfile54-64.so.bz2 testfile54-64.so.debug.bz2 \
298	     testfile54-64.prelink.so.bz2 testfile54-64.noshdrs.so.bz2 \
299	     testfile55-32.bz2 testfile55-32.debug.bz2 \
300	     testfile55-32.prelink.bz2 testfile55-64.bz2 \
301	     testfile55-64.debug.bz2 testfile55-64.prelink.bz2 \
302	     testfile56.bz2 testfile57.bz2 testfile58.bz2 \
303	     run-typeiter.sh testfile59.bz2 \
304	     run-readelf-d.sh testlib_dynseg.so.bz2 \
305	     testfile-s390x-hash-both.bz2 \
306	     run-readelf-gdb_index.sh testfilegdbindex5.bz2 \
307	     testfilegdbindex7.bz2 \
308	     run-readelf-s.sh testfilebazdbg.bz2 testfilebazdyn.bz2 \
309	     testfilebazmin.bz2 testfilebazdbg.debug.bz2 testfilebazmdb.bz2 \
310	     testfilebaztab.bz2 testfilebasmin.bz2 testfilebaxmin.bz2 \
311	     testfilebazdbg_pl.bz2 testfilebazmin_pl.bz2 \
312	     testfilebazdbg_plr.bz2 testfilebazmin_plr.bz2 \
313	     testfilebazdbgppc64.bz2 testfilebazdbgppc64.debug.bz2 \
314	     testfilebazdbgppc64_pl.bz2 testfilebazdbgppc64_plr.bz2 \
315	     testfilebazdynppc64.bz2 testfilebazmdbppc64.bz2 \
316	     testfilebazminppc64.bz2 testfilebazminppc64_pl.bz2 \
317	     testfilebazminppc64_plr.bz2 testfilebaztabppc64.bz2 \
318	     run-readelf-variant.sh testfile-ada-variant.bz2 \
319	     run-dwflsyms.sh \
320	     run-unstrip-n.sh testcore-rtlib.bz2 testcore-rtlib-ppc.bz2 \
321	     run-low_high_pc.sh testfile_low_high_pc.bz2 \
322	     run-macro-test.sh testfile-macinfo.bz2 testfile-macros.bz2 \
323	     run-elf_cntl_gelf_getshdr.sh \
324	     run-test-archive64.sh testarchive64.a.bz2 \
325	     testfile60.bz2 testfile61.bz2 \
326	     run-readelf-vmcoreinfo.sh testfile62.bz2 \
327	     run-readelf-mixed-corenote.sh testfile63.bz2 testfile64.bz2 \
328	     testfile65.bz2 testfile67.bz2 testfile68.bz2 \
329	     testfile69.core.bz2 testfile69.so.bz2 \
330	     testfile70.core.bz2 testfile70.exec.bz2 testfile71.bz2 \
331	     run-dwfllines.sh run-dwfl-report-elf-align.sh \
332	     testfile-dwfl-report-elf-align-shlib.so.bz2 \
333	     testfilenolines.bz2 test-core-lib.so.bz2 test-core.core.bz2 \
334	     test-core.exec.bz2 run-addr2line-test.sh \
335	     run-addr2line-i-test.sh testfile-inlines.bz2 \
336	     run-addr2line-i-lex-test.sh testfile-lex-inlines.bz2 \
337	     run-addr2line-i-demangle-test.sh run-addr2line-alt-debugpath.sh \
338	     testfileppc32.bz2 testfileppc64.bz2 \
339	     testfiles390.bz2 testfiles390x.bz2 \
340	     testfilearm.bz2 testfileaarch64.bz2 \
341	     run-varlocs.sh run-exprlocs.sh testfile-stridex.bz2 \
342	     testfile_const_type.c testfile_const_type.bz2 \
343	     testfile_implicit_pointer.c testfile_implicit_pointer.bz2 \
344	     testfile_parameter_ref.c testfile_parameter_ref.bz2 \
345	     testfile_entry_value.c testfile_entry_value.bz2 \
346	     testfile_implicit_value.c testfile_implicit_value.bz2 \
347	     testfile_aarch64_core.bz2 testfile_i686_core.bz2 \
348	     addrx_constx-4.dwo.bz2 addrx_constx-5.dwo.bz2 \
349	     testfile-addrx_constx-4.bz2 testfile-addrx_constx-5.bz2 \
350	     run-funcretval.sh funcretval_test.c funcretval_test_aarch64.bz2 \
351	     run-backtrace-data.sh run-backtrace-dwarf.sh cleanup-13.c \
352	     run-backtrace-native.sh run-backtrace-native-biarch.sh \
353	     run-backtrace-native-core.sh run-backtrace-native-core-biarch.sh \
354	     run-backtrace-core-x86_64.sh run-backtrace-core-i386.sh \
355	     run-backtrace-fp-core-x86_64.sh \
356	     run-backtrace-core-x32.sh \
357	     run-backtrace-fp-core-aarch64.sh \
358	     backtrace.aarch64.fp.core.bz2 backtrace.aarch64.fp.exec.bz2 \
359	     backtrace-subr.sh backtrace.i386.core.bz2 backtrace.i386.exec.bz2 \
360	     run-backtrace-fp-core-i386.sh \
361	     backtrace.i386.fp.core.bz2 backtrace.i386.fp.exec.bz2 \
362	     run-backtrace-fp-core-ppc64le.sh \
363	     backtrace.ppc64le.fp.core.bz2 backtrace.ppc64le.fp.exec.bz2 \
364	     backtrace.x86_64.core.bz2 backtrace.x86_64.exec.bz2 \
365	     backtrace.x86_64.fp.core.bz2 backtrace.x86_64.fp.exec.bz2 \
366	     backtrace.ppc.core.bz2 backtrace.ppc.exec.bz2 \
367	     run-backtrace-core-ppc.sh testfile66.bz2 testfile66.core.bz2 \
368	     backtrace.s390x.core.bz2 backtrace.s390x.exec.bz2 \
369	     backtrace.s390.core.bz2 backtrace.s390.exec.bz2 \
370	     run-backtrace-core-s390x.sh run-backtrace-core-s390.sh \
371	     run-backtrace-core-aarch64.sh \
372	     backtrace.aarch64.core.bz2 backtrace.aarch64.exec.bz2 \
373	     run-backtrace-core-sparc.sh \
374	     backtrace.sparc.core.bz2 backtrace.sparc.exec.bz2 \
375	     run-backtrace-demangle.sh testfile-backtrace-demangle.bz2 \
376	     testfile-backtrace-demangle.cc \
377	     testfile-backtrace-demangle.core.bz2 \
378	     run-stack-d-test.sh run-stack-i-test.sh \
379	     run-stack-demangled-test.sh \
380	     testfiledwarfinlines.bz2 testfiledwarfinlines.core.bz2 \
381	     run-readelf-zdebug.sh testfile-debug.bz2 testfile-zdebug.bz2 \
382	     run-readelf-zdebug-rel.sh testfile-debug-rel.o.bz2 \
383	     testfile-debug-rel-g.o.bz2 testfile-debug-rel-z.o.bz2 \
384	     run-readelf-zx.sh run-readelf-zp.sh \
385	     run-deleted.sh run-linkmap-cut.sh linkmap-cut-lib.so.bz2 \
386	     linkmap-cut.bz2 linkmap-cut.core.bz2 \
387	     run-aggregate-size.sh testfile-sizes1.o.bz2 testfile-sizes2.o.bz2 \
388	     testfile-sizes3.o.bz2 testfile-sizes4.o.bz2 testfile-sizes4.s \
389	     run-peel-type.sh \
390	     run-readelf-A.sh testfileppc32attrs.o.bz2 \
391	     testfilesparc64attrs.o.bz2 testfileppc64attrs.o.bz2 \
392	     testfile-debug-types.bz2 \
393	     run-getsrc-die.sh run-strptr.sh \
394	     testfile-x32-core.bz2 testfile-x32.bz2 \
395	     backtrace.x32.core.bz2 backtrace.x32.exec.bz2 \
396	     testfile-x32-s.bz2 testfile-x32-d.bz2 testfile-x32-debug.bz2 \
397	     run-lfs-symbols.sh lfs-symbols testfile-nolfs.bz2 \
398	     testfile-zgnu32.bz2 testfile-zgnu64.bz2 \
399	     testfile-zgnu32be.bz2 testfile-zgnu64be.bz2 \
400	     run-dwelfgnucompressed.sh \
401	     testfile-zgabi32.bz2 testfile-zgabi64.bz2 \
402	     testfile-zgabi32be.bz2 testfile-zgabi64be.bz2 \
403	     run-elfgetchdr.sh run-elfgetzdata.sh run-elfputzdata.sh \
404	     run-zstrptr.sh run-compress-test.sh \
405	     run-disasm-bpf.sh \
406	     testfile-bpf-dis1.expect.bz2 testfile-bpf-dis1.o.bz2 \
407	     run-reloc-bpf.sh \
408	     testfile-bpf-reloc.expect.bz2 testfile-bpf-reloc.o.bz2 \
409	     testfile-m68k-core.bz2 testfile-m68k.bz2 testfile-m68k-s.bz2 \
410	     run-dwarf-die-addr-die.sh \
411	     run-get-units-invalid.sh run-get-units-split.sh \
412	     testfile-hello4.dwo.bz2 testfile-hello5.dwo.bz2 \
413	     testfile-splitdwarf-4.bz2 testfile-splitdwarf-5.bz2 \
414	     testfile-world5.dwo.bz2 testfile-world4.dwo.bz2 \
415	     run-attr-integrate-skel.sh \
416	     run-all-dwarf-ranges.sh testfilesplitranges4.debug.bz2 \
417	     testfile-ranges-hello.dwo.bz2 testfile-ranges-world.dwo.bz2 \
418	     run-unit-info.sh run-next-cfi.sh run-next-cfi-self.sh \
419	     testfile-riscv64.bz2 testfile-riscv64-s.bz2 \
420	     testfile-riscv64-core.bz2 \
421	     run-copyadd-sections.sh run-copymany-sections.sh \
422	     run-typeiter-many.sh run-strip-test-many.sh \
423	     testfile-debug-rel-ppc64-g.o.bz2 \
424	     testfile-debug-rel-ppc64-z.o.bz2 \
425	     testfile-debug-rel-ppc64.o.bz2 \
426	     run-strip-version.sh testfile-version.bz2
427
428if USE_VALGRIND
429valgrind_cmd='valgrind -q --leak-check=full --error-exitcode=1'
430endif
431
432
433installed_TESTS_ENVIRONMENT = libdir=$(DESTDIR)$(libdir); \
434			      bindir=$(DESTDIR)$(bindir); \
435			      LC_ALL=C; LANG=C; \
436			      VALGRIND_CMD=$(valgrind_cmd); \
437			      abs_srcdir=$(abs_srcdir); \
438			      abs_builddir=$(abs_builddir); \
439			      abs_top_builddir=$(abs_top_builddir); \
440			      export abs_srcdir; export abs_builddir; \
441			      export abs_top_builddir; \
442			      export libdir; export bindir; \
443			      export LC_ALL; export LANG; export VALGRIND_CMD; \
444			      NM=$(NM); export NM;
445installed_LOG_COMPILER = $(abs_srcdir)/test-wrapper.sh \
446			 installed $(tests_rpath) \
447			 '$(program_transform_name)'
448if STANDALONE
449TESTS_ENVIRONMENT = $(installed_TESTS_ENVIRONMENT)
450LOG_COMPILER = $(installed_LOG_COMPILER)
451else !STANDALONE
452TESTS_ENVIRONMENT = LC_ALL=C; LANG=C; VALGRIND_CMD=$(valgrind_cmd); \
453		    abs_srcdir=$(abs_srcdir);  abs_builddir=$(abs_builddir); \
454		    abs_top_builddir=$(abs_top_builddir); \
455		    export abs_srcdir; export abs_builddir; \
456		    export abs_top_builddir; \
457		    export LC_ALL; export LANG; export VALGRIND_CMD; \
458		    NM=$(NM); export NM;
459LOG_COMPILER = $(abs_srcdir)/test-wrapper.sh \
460	       $(abs_top_builddir)/libdw:$(abs_top_builddir)/backends:$(abs_top_builddir)/libelf:$(abs_top_builddir)/libasm
461
462installcheck-local:
463	$(MAKE) $(AM_MAKEFLAGS) \
464		TESTS_ENVIRONMENT="$(installed_TESTS_ENVIRONMENT)" \
465		LOG_COMPILER="$(installed_LOG_COMPILER)" check-TESTS
466endif !STANDALONE
467
468if STANDALONE
469libdw = -ldw
470libelf = -lelf
471libasm = -lasm
472libebl = -lebl
473else !STANDALONE
474if BUILD_STATIC
475libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) $(libebl) -ldl
476libelf = ../libelf/libelf.a -lz
477libasm = ../libasm/libasm.a
478else
479libdw = ../libdw/libdw.so
480libelf = ../libelf/libelf.so
481libasm = ../libasm/libasm.so
482endif
483libebl = ../libebl/libebl.a
484libeu = ../lib/libeu.a
485endif !STANDALONE
486
487arextract_LDADD = $(libelf)
488arsymtest_LDADD = $(libelf)
489newfile_LDADD = $(libelf)
490saridx_LDADD = $(libelf)
491scnnames_LDADD = $(libelf)
492sectiondump_LDADD = $(libelf)
493showptable_LDADD = $(libelf)
494hash_LDADD = $(libelf)
495test_nlist_LDADD = $(libelf)
496msg_tst_LDADD = $(libelf)
497newscn_LDADD = $(libelf)
498early_offscn_LDADD = $(libelf)
499ecp_LDADD = $(libelf)
500update1_LDADD = $(libelf)
501update2_LDADD = $(libelf)
502update3_LDADD = $(libdw) $(libelf)
503update4_LDADD = $(libdw) $(libelf)
504show_die_info_LDADD = $(libdw) $(libelf)
505get_pubnames_LDADD = $(libdw) $(libelf)
506show_abbrev_LDADD = $(libdw) $(libelf)
507get_lines_LDADD = $(libdw) $(libelf)
508next_lines_LDADD = $(libdw) $(libelf)
509get_files_LDADD = $(libdw) $(libelf)
510next_files_LDADD = $(libdw) $(libelf)
511get_aranges_LDADD = $(libdw) $(libelf)
512allfcts_LDADD = $(libdw) $(libelf)
513line2addr_LDADD = $(libdw) $(argp_LDADD)
514addrscopes_LDADD = $(libdw) $(argp_LDADD)
515funcscopes_LDADD = $(libdw) $(argp_LDADD)
516funcretval_LDADD = $(libdw) $(argp_LDADD)
517allregs_LDADD = $(libdw) $(argp_LDADD)
518find_prologues_LDADD = $(libdw) $(argp_LDADD)
519#show_ciefde_LDADD = ../libdwarf/libdwarf.so $(libelf)
520asm_tst1_LDADD = $(libasm) $(libebl) $(libelf) $(libdw) -ldl
521asm_tst2_LDADD = $(libasm) $(libebl) $(libelf) $(libdw) -ldl
522asm_tst3_LDADD = $(libasm) $(libebl) $(libelf) $(libdw) -ldl
523asm_tst4_LDADD = $(libasm) $(libebl) $(libelf) $(libdw) -ldl
524asm_tst5_LDADD = $(libasm) $(libebl) $(libelf) $(libdw) -ldl
525asm_tst6_LDADD = $(libasm) $(libebl) $(libelf) $(libdw) -ldl
526asm_tst7_LDADD = $(libasm) $(libebl) $(libelf) $(libdw) -ldl
527asm_tst8_LDADD = $(libasm) $(libebl) $(libelf) $(libdw) -ldl
528asm_tst9_LDADD = $(libasm) $(libebl) $(libelf) $(libdw) -ldl
529dwflmodtest_LDADD = $(libdw) $(libebl) $(libelf) $(argp_LDADD) -ldl
530rdwrmmap_LDADD = $(libelf)
531dwfl_bug_addr_overflow_LDADD = $(libdw) $(libebl) $(libelf) -ldl
532arls_LDADD = $(libelf)
533dwfl_bug_fd_leak_LDADD = $(libdw) $(libebl) $(libelf) -ldl
534dwfl_bug_report_LDADD = $(libdw) $(libebl) $(libelf) -ldl
535dwfl_bug_getmodules_LDADD = $(libdw) $(libebl) $(libelf) -ldl
536dwfl_addr_sect_LDADD = $(libdw) $(libebl) $(libelf) $(argp_LDADD) -ldl
537dwarf_getmacros_LDADD = $(libdw)
538dwarf_ranges_LDADD = $(libdw)
539dwarf_getstring_LDADD = $(libdw)
540addrcfi_LDADD = $(libdw) $(libebl) $(libelf) $(argp_LDADD) -ldl
541dwarfcfi_LDADD = $(libdw) $(libelf)
542test_flag_nobits_LDADD = $(libelf)
543rerequest_tag_LDADD = $(libdw)
544alldts_LDADD = $(libdw) $(libelf)
545typeiter_LDADD = $(libdw) $(libelf)
546typeiter2_LDADD = $(libdw) $(libelf)
547low_high_pc_LDADD = $(libdw) $(libelf) $(argp_LDADD)
548test_elf_cntl_gelf_getshdr_LDADD = $(libelf)
549dwflsyms_LDADD = $(libdw) $(libelf) $(argp_LDADD)
550dwfllines_LDADD = $(libdw) $(libelf) $(argp_LDADD)
551dwfl_report_elf_align_LDADD = $(libdw)
552varlocs_LDADD = $(libdw) $(libelf) $(argp_LDADD)
553backtrace_LDADD = $(libdw) $(libelf) $(argp_LDADD)
554# backtrace-child-biarch also uses those *_CFLAGS and *_LDLAGS variables:
555backtrace_child_CFLAGS = $(fpie_CFLAGS)
556backtrace_child_LDFLAGS = -pie -pthread
557backtrace_child_biarch_SOURCES = backtrace-child.c
558backtrace_data_LDADD = $(libdw) $(libelf)
559backtrace_dwarf_CFLAGS = -Wno-unused-parameter
560backtrace_dwarf_LDADD = $(libdw) $(libelf)
561debuglink_LDADD = $(libdw) $(libelf)
562debugaltlink_LDADD = $(libdw) $(libelf)
563buildid_LDADD = $(libdw) $(libelf)
564deleted_LDADD = ./deleted-lib.so
565deleted_lib_so_LDFLAGS = -shared
566deleted_lib_so_CFLAGS = $(fpic_CFLAGS) -fasynchronous-unwind-tables
567aggregate_size_LDADD = $(libdw) $(libelf) $(argp_LDADD)
568peel_type_LDADD = $(libdw) $(libelf) $(argp_LDADD)
569vdsosyms_LDADD = $(libdw) $(libelf)
570getsrc_die_LDADD = $(libdw) $(libelf)
571strptr_LDADD = $(libelf)
572newdata_LDADD = $(libelf)
573elfstrtab_LDADD = $(libelf)
574dwfl_proc_attach_LDADD = $(libdw)
575dwfl_proc_attach_LDFLAGS = -pthread $(AM_LDFLAGS)
576elfshphehdr_LDADD =$(libelf)
577elfstrmerge_LDADD = $(libdw) $(libelf)
578dwelfgnucompressed_LDADD = $(libelf) $(libdw)
579elfgetchdr_LDADD = $(libelf) $(libdw)
580elfgetzdata_LDADD = $(libelf)
581elfputzdata_LDADD = $(libelf)
582zstrptr_LDADD = $(libelf)
583emptyfile_LDADD = $(libelf)
584vendorelf_LDADD = $(libelf)
585fillfile_LDADD = $(libelf)
586dwarf_default_lower_bound_LDADD = $(libdw)
587dwarf_die_addr_die_LDADD = $(libdw)
588get_units_invalid_LDADD = $(libdw)
589get_units_split_LDADD = $(libdw)
590attr_integrate_skel_LDADD = $(libdw)
591all_dwarf_ranges_LDADD = $(libdw)
592unit_info_LDADD = $(libdw)
593next_cfi_LDADD = $(libelf) $(libdw)
594elfcopy_LDADD = $(libelf)
595addsections_LDADD = $(libelf)
596
597# We want to test the libelf header against the system elf.h header.
598# Don't include any -I CPPFLAGS. Except when we install our own elf.h.
599if !INSTALL_ELFH
600system_elf_libelf_test_CPPFLAGS =
601else
602system_elf_libelf_test_CPPFLAGS = -I$(top_srcdir)/libelf
603endif
604system_elf_libelf_test_LDADD = $(libelf)
605
606# A lock file used to make sure only one test dumps core at a time
607CLEANFILES += core-dump-backtrace.lock
608
609if GCOV
610check: check-am coverage
611.PHONY: coverage
612coverage:
613	-$(srcdir)/coverage.sh
614endif
615