Makefile.am revision 9380297e130e6ccc829c8d56d701fb539b27bb0f
1b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper## Process this file with automake to create Makefile.in 2b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper## 3f31c4418be5bce6f0dd448cf07fc1092e5a7e1d2Mark Wielaard## Copyright (C) 2002-2010, 2012 Red Hat, Inc. 4de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## This file is part of elfutils. 5b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper## 6de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## This file is free software; you can redistribute it and/or modify 7de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## it under the terms of either 8b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper## 9de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## * the GNU Lesser General Public License as published by the Free 10de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## Software Foundation; either version 3 of the License, or (at 11de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## your option) any later version 12de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## 13de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## or 14de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## 15de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## * the GNU General Public License as published by the Free 16de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## Software Foundation; either version 2 of the License, or (at 17de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## your option) any later version 18de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## 19de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## or both in parallel, as here. 20de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## 21de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## elfutils is distributed in the hope that it will be useful, but 22361df7da6dfecd817b27e62b91752ac316d7cdd4Ulrich Drepper## WITHOUT ANY WARRANTY; without even the implied warranty of 23361df7da6dfecd817b27e62b91752ac316d7cdd4Ulrich Drepper## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 24361df7da6dfecd817b27e62b91752ac316d7cdd4Ulrich Drepper## General Public License for more details. 25361df7da6dfecd817b27e62b91752ac316d7cdd4Ulrich Drepper## 26de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## You should have received copies of the GNU General Public License and 27de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## the GNU Lesser General Public License along with this program. If 28de2ed97f33139af5c7a0811e4ec66fc896a13cf2Mark Wielaard## not, see <http://www.gnu.org/licenses/>. 29b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper## 3022359e265395fd2f8267190ef97f5417770e6206Roland McGrathinclude $(top_srcdir)/config/eu.am 31e47ab76f02c2a4f4d802ec298969ba67956435feRoland McGrathif BUILD_STATIC 32e47ab76f02c2a4f4d802ec298969ba67956435feRoland McGrathAM_CFLAGS += -fpic 33e47ab76f02c2a4f4d802ec298969ba67956435feRoland McGrathendif 34cdaaf2153a1f40d1be080c8ff6e10767b51a1c96Mark WielaardAM_CPPFLAGS += -I$(srcdir)/../libelf 35b08d5a8fb42f4586d756068065186b5af7e48daUlrich DrepperVERSION = 1 36b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper 37b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepperlib_LIBRARIES = libdw.a 38b08d5a8fb42f4586d756068065186b5af7e48daUlrich Dreppernoinst_LIBRARIES = libdw_pic.a 39b08d5a8fb42f4586d756068065186b5af7e48daUlrich Dreppernoinst_PROGRAMS = $(noinst_LIBRARIES:_pic.a=.so) 40b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper 41b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepperinclude_HEADERS = dwarf.h 42e219f1c1b2a5a2e4f248714fdc93d031cdc5ee6aUlrich Drepperpkginclude_HEADERS = libdw.h 43b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper 44b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepperlibdw_a_SOURCES = dwarf_begin.c dwarf_begin_elf.c dwarf_end.c dwarf_getelf.c \ 45b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_getpubnames.c dwarf_getabbrev.c dwarf_tag.c \ 46b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_error.c dwarf_nextcu.c dwarf_diename.c dwarf_offdie.c \ 473e0f7d1d1b817040cef82f41879f471ab59b663eRoland McGrath dwarf_attr.c dwarf_formstring.c \ 483e0f7d1d1b817040cef82f41879f471ab59b663eRoland McGrath dwarf_abbrev_hash.c dwarf_sig8_hash.c \ 49b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_attr_integrate.c dwarf_hasattr_integrate.c \ 50b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_child.c dwarf_haschildren.c dwarf_formaddr.c \ 51b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_formudata.c dwarf_formsdata.c dwarf_lowpc.c \ 5207d4f2fc1cb53f170a71bc13617bbdd9cb1c3c60Roland McGrath dwarf_entrypc.c dwarf_haspc.c dwarf_highpc.c dwarf_ranges.c \ 53b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_formref.c dwarf_formref_die.c dwarf_siblingof.c \ 5407d4f2fc1cb53f170a71bc13617bbdd9cb1c3c60Roland McGrath dwarf_dieoffset.c dwarf_cuoffset.c dwarf_diecu.c \ 5507d4f2fc1cb53f170a71bc13617bbdd9cb1c3c60Roland McGrath dwarf_hasattr.c dwarf_hasform.c \ 5607d4f2fc1cb53f170a71bc13617bbdd9cb1c3c60Roland McGrath dwarf_whatform.c dwarf_whatattr.c \ 57b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_bytesize.c dwarf_arrayorder.c dwarf_bitsize.c \ 58b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_bitoffset.c dwarf_srclang.c dwarf_getabbrevtag.c \ 59b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_getabbrevcode.c dwarf_abbrevhaschildren.c \ 60b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_getattrcnt.c dwarf_getabbrevattr.c \ 61b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_getsrclines.c dwarf_getsrc_die.c \ 6271e15a01742e5d5de9c6260d4526146be54e5a8aRoland McGrath dwarf_getscopes.c dwarf_getscopes_die.c dwarf_getscopevar.c \ 63b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_linesrc.c dwarf_lineno.c dwarf_lineaddr.c \ 64b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_linecol.c dwarf_linebeginstatement.c \ 65b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_lineendsequence.c dwarf_lineblock.c \ 66b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_lineprologueend.c dwarf_lineepiloguebegin.c \ 67c70cf4e5e5a463b64673c4e80bcf60c938b437b4Roland McGrath dwarf_lineisa.c dwarf_linediscriminator.c \ 68c70cf4e5e5a463b64673c4e80bcf60c938b437b4Roland McGrath dwarf_lineop_index.c \ 69b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_onesrcline.c dwarf_formblock.c \ 7043da9895c6d828ceae65a47f2337e8ef24eb97c1Roland McGrath dwarf_getsrcfiles.c dwarf_filesrc.c dwarf_getsrcdirs.c \ 716724c90d02659f7466b67b357563042e403d154eRoland McGrath dwarf_getlocation.c dwarf_getstring.c dwarf_offabbrev.c \ 72b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_getaranges.c dwarf_onearange.c dwarf_getarangeinfo.c \ 73b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_getarange_addr.c dwarf_getattrs.c dwarf_formflag.c \ 74b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_getmacros.c dwarf_macro_opcode.c dwarf_macro_param1.c \ 75b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper dwarf_macro_param2.c dwarf_addrdie.c \ 766724c90d02659f7466b67b357563042e403d154eRoland McGrath dwarf_getfuncs.c \ 776724c90d02659f7466b67b357563042e403d154eRoland McGrath dwarf_decl_file.c dwarf_decl_line.c dwarf_decl_column.c \ 781ecb606f5af22838bf42b50dcc581d2b0f9191feRoland McGrath dwarf_func_inline.c dwarf_getsrc_file.c \ 794e2787c2674bdb152e275edb3ed4d9939c8f62d7Josh Stone libdw_findcu.c libdw_form.c libdw_alloc.c \ 8007d4f2fc1cb53f170a71bc13617bbdd9cb1c3c60Roland McGrath libdw_visit_scopes.c \ 813c84db3b4b610bf636c4363abb6d3dac5ae020f9Roland McGrath dwarf_entry_breakpoints.c \ 823c84db3b4b610bf636c4363abb6d3dac5ae020f9Roland McGrath dwarf_next_cfi.c \ 833c84db3b4b610bf636c4363abb6d3dac5ae020f9Roland McGrath cie.c fde.c cfi.c frame-cache.c \ 843c84db3b4b610bf636c4363abb6d3dac5ae020f9Roland McGrath dwarf_frame_info.c dwarf_frame_cfa.c dwarf_frame_register.c \ 853c84db3b4b610bf636c4363abb6d3dac5ae020f9Roland McGrath dwarf_cfi_addrframe.c \ 86ebc5c885e696cdc4961916113c50e1396d8d3d48Roland McGrath dwarf_getcfi.c dwarf_getcfi_elf.c dwarf_cfi_end.c \ 87b2535b6a6be7717cdd41834d76e5cb48cb446b83Mark Wielaard dwarf_aggregate_size.c dwarf_getlocation_implicit_pointer.c \ 88b2535b6a6be7717cdd41834d76e5cb48cb446b83Mark Wielaard dwarf_getlocation_die.c dwarf_getlocation_attr.c 89b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper 903bf7a0989c1126ee23347cf406dd3cd22d9d7194Roland McGrathif MAINTAINER_MODE 913bf7a0989c1126ee23347cf406dd3cd22d9d7194Roland McGrathBUILT_SOURCES = $(srcdir)/known-dwarf.h 923bf7a0989c1126ee23347cf406dd3cd22d9d7194Roland McGrathMAINTAINERCLEANFILES = $(srcdir)/known-dwarf.h 933bf7a0989c1126ee23347cf406dd3cd22d9d7194Roland McGrath$(srcdir)/known-dwarf.h: $(top_srcdir)/config/known-dwarf.awk $(srcdir)/dwarf.h 94387998b4de0e2a7691155e3c6646257d95b556baMark Wielaard gawk -f $^ > $@.new 955513e643d78785900e8e9f723844beb1fc03d537Roland McGrath mv -f $@.new $@ 963bf7a0989c1126ee23347cf406dd3cd22d9d7194Roland McGrathendif 975513e643d78785900e8e9f723844beb1fc03d537Roland McGrath 98b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepperlibdw_pic_a_SOURCES = 99b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepperam_libdw_pic_a_OBJECTS = $(libdw_a_SOURCES:.c=.os) 100b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper 101b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepperlibdw_so_SOURCES = 1029380297e130e6ccc829c8d56d701fb539b27bb0fMark Wielaardlibdw.so$(EXEEXT): $(srcdir)/libdw.map libdw_pic.a ../libdwelf/libdwelf_pic.a \ 10318618fd74777576cc20dce341bb71be327f9ed48Ulrich Drepper ../libdwfl/libdwfl_pic.a ../libebl/libebl.a \ 104e06762c31cdc3c5dcabe586e613984bbe9ae6284Roland McGrath ../libelf/libelf.so 105e219f1c1b2a5a2e4f248714fdc93d031cdc5ee6aUlrich Drepper# The rpath is necessary for libebl because its $ORIGIN use will 106e219f1c1b2a5a2e4f248714fdc93d031cdc5ee6aUlrich Drepper# not fly in a setuid executable that links in libdw. 107fbe998a0b1be1f006bc72e5138fb38c188cc0433Ulrich Drepper $(LINK) -shared -o $@ -Wl,--soname,$@.$(VERSION),-z,defs \ 108e219f1c1b2a5a2e4f248714fdc93d031cdc5ee6aUlrich Drepper -Wl,--enable-new-dtags,-rpath,$(pkglibdir) \ 109fbe998a0b1be1f006bc72e5138fb38c188cc0433Ulrich Drepper -Wl,--version-script,$<,--no-undefined \ 110fbe998a0b1be1f006bc72e5138fb38c188cc0433Ulrich Drepper -Wl,--whole-archive $(filter-out $<,$^) -Wl,--no-whole-archive\ 111e06762c31cdc3c5dcabe586e613984bbe9ae6284Roland McGrath -ldl $(zip_LIBS) 112a45c8043358151085633b15ea615f31f3bd680f7Michael Forney if $(READELF) -d $@ | fgrep -q TEXTREL; then exit 1; fi 113b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper ln -fs $@ $@.$(VERSION) 114b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper 115b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepperinstall: install-am libdw.so 116b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper $(mkinstalldirs) $(DESTDIR)$(libdir) 117b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper $(INSTALL_PROGRAM) libdw.so $(DESTDIR)$(libdir)/libdw-$(PACKAGE_VERSION).so 118b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper ln -fs libdw-$(PACKAGE_VERSION).so $(DESTDIR)$(libdir)/libdw.so.$(VERSION) 119b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper ln -fs libdw.so.$(VERSION) $(DESTDIR)$(libdir)/libdw.so 120b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper 121b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepperuninstall: uninstall-am 122b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper rm -f $(DESTDIR)$(libdir)/libdw-$(PACKAGE_VERSION).so 123b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper rm -f $(DESTDIR)$(libdir)/libdw.so.$(VERSION) 124b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper rm -f $(DESTDIR)$(libdir)/libdw.so 125b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper rmdir --ignore-fail-on-non-empty $(DESTDIR)$(includedir)/elfutils 126b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper 127cdc094394319969ba407e11efa06fefb31f5026bMichael Forneylibdwfl_objects = $(shell $(AR) t ../libdwfl/libdwfl.a) 128cdc094394319969ba407e11efa06fefb31f5026bMichael Forneylibdw_a_LIBADD = $(addprefix ../libdwfl/,$(libdwfl_objects)) 12918618fd74777576cc20dce341bb71be327f9ed48Ulrich Drepper 1309380297e130e6ccc829c8d56d701fb539b27bb0fMark Wielaardlibdwelf_objects = $(shell $(AR) t ../libdwelf/libdwelf.a) 1319380297e130e6ccc829c8d56d701fb539b27bb0fMark Wielaardlibdw_a_LIBADD += $(addprefix ../libdwelf/,$(libdwelf_objects)) 1329380297e130e6ccc829c8d56d701fb539b27bb0fMark Wielaard 1333c84db3b4b610bf636c4363abb6d3dac5ae020f9Roland McGrathnoinst_HEADERS = libdwP.h memory-access.h dwarf_abbrev_hash.h \ 1343e0f7d1d1b817040cef82f41879f471ab59b663eRoland McGrath dwarf_sig8_hash.h cfi.h encoded-value.h 135b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper 136f31c4418be5bce6f0dd448cf07fc1092e5a7e1d2Mark WielaardEXTRA_DIST = libdw.map known-dwarf.h 137b08d5a8fb42f4586d756068065186b5af7e48daUlrich Drepper 13822359e265395fd2f8267190ef97f5417770e6206Roland McGrathMOSTLYCLEANFILES = $(am_libdw_pic_a_OBJECTS) libdw.so.$(VERSION) 139