+2005-07-27 Roland McGrath <roland@redhat.com>
+
+ * Makefile.am (all_SUBDIRS): Put libdwfl before libdw.
+
2005-07-21 Roland McGrath <roland@redhat.com>
* configure.ac: Take --enable-libebl-subdir=DIR to set LIBEBL_SUBDIR.
mini_SUBDIRS = config m4 lib libelf libelf-po
# Add doc back when we have some real content.
-all_SUBDIRS = libebl libdw libdwfl libcpu libasm src po tests
+all_SUBDIRS = libebl libdwfl libdw libcpu libasm src po tests
SUBDIRS = $(mini_SUBDIRS) $(all_SUBDIRS)
EXTRA_DIST = elfutils.spec GPG-KEY NOTES COPYING.GPL
2005-07-27 Roland McGrath <roland@redhat.com>
+ * ptest.c: Moved to ../tests/dwflmodtest.c.
+
+ * Makefile.am (libdw.so): Link ../libdwfl/libdwfl_pic.a in,
+ along with ../libebl/libebl.a and ../lib/libeu.a;
+ depend on ../libelf/libelf.so.
+ (libdw_so_LDADD): New variable.
+ * libdw.map: Add dwfl_* symbols formerly in ../libdwfl/libdwfl.map.
+
* libdw.map: Define an empty base version and move all symbols to
version ELFUTILS_0.111; don't define ELFUTILS_1.0 at all yet.
am_libdw_pic_a_OBJECTS = $(libdw_a_SOURCES:.c=.os)
libdw_so_SOURCES =
-libdw.so: libdw_pic.a $(srcdir)/libdw.map
- $(CC) -shared -o $@ -Wl,--whole-archive,$<,--no-whole-archive \
- -Wl,--version-script,$(srcdir)/libdw.map,--no-undefined \
- -Wl,--soname,$@.$(VERSION),-z,defs \
- ../libelf/libelf.so
+libdw.so: $(srcdir)/libdw.map libdw_pic.a \
+ ../libdwfl/libdwfl_pic.a ../libebl/libebl.a ../lib/libeu.a \
+ ../libelf/libelf.so
+ $(CC) -shared -o $@ -Wl,--soname,$@.$(VERSION),-z,defs \
+ -Wl,--version-script,$<,--no-undefined \
+ -Wl,--whole-archive $(filter-out $<,$^) -Wl,--no-whole-archive \
+ -ldl
if readelf -d $@ | fgrep -q TEXTREL; then exit 1; fi
ln -fs $@ $@.$(VERSION)
dwarf_whatattr;
dwarf_whatform;
+ # libdwfl_pic.a contributes these symbols.
+ dwfl_addrdie;
+ dwfl_addrdwarf;
+ dwfl_addrmodule;
+ dwfl_begin;
+ dwfl_end;
+ dwfl_errmsg;
+ dwfl_errno;
+ dwfl_getdwarf;
+ dwfl_getmodules;
+ dwfl_getsrc;
+ dwfl_linecu;
+ dwfl_lineinfo;
+ dwfl_linemodule;
+ dwfl_linux_kernel_find_elf;
+ dwfl_linux_kernel_module_section_address;
+ dwfl_linux_kernel_report_kernel;
+ dwfl_linux_kernel_report_modules;
+ dwfl_linux_proc_find_elf;
+ dwfl_linux_proc_report;
+ dwfl_module_addrdie;
+ dwfl_module_addrname;
+ dwfl_module_getdwarf;
+ dwfl_module_getelf;
+ dwfl_module_getsrc;
+ dwfl_module_getsrc_file;
+ dwfl_module_info;
+ dwfl_module_nextcu;
+ dwfl_nextcu;
+ dwfl_report_begin;
+ dwfl_report_elf;
+ dwfl_report_end;
+ dwfl_report_module;
+ dwfl_standard_argp;
+ dwfl_standard_find_debuginfo;
+
local:
*;
} ELFUTILS_0;
2005-07-28 Roland McGrath <roland@redhat.com>
+ * Makefile.am (noinst_PROGRAMS): Variable removed.
+ (libdwfl_so_SOURCES, libdwfl_LIBS, libdwfl_so_LDADD): Likewise.
+ (EXTRA_DIST, ptest_LDADD, test2_LDADD): Likewise.
+ (libdwfl): Don't use libdwfl.so any more.
+ (libdwfl.so, install, uninstall): Targets removed.
+ (test2_SOURCES): Define EXTRA_DIST instead of this.
+ * libdwfl.map: File removed.
+
* libdwfl.h: Use "" for libdw.h #include.
2005-07-27 Roland McGrath <roland@redhat.com>
-I$(srcdir)/../libdw -I.. -I$(srcdir)/../lib
VERSION = 1
-noinst_PROGRAMS = ptest test2
-
-test2_SOURCES = test2.c loc2c.c
+EXTRA_DIST = test2.c loc2c.c
lib_LIBRARIES = libdwfl.a
if !MUDFLAP
noinst_LIBRARIES = libdwfl_pic.a
-noinst_PROGRAMS += $(noinst_LIBRARIES:_pic.a=.so)
endif
euincludedir = ${includedir}/elfutils
libelf = ../libelf/libelf.a
libmudflap = -lmudflap
else
-libdwfl = libdwfl.so
+libdwfl = $(libdw)
libdw = ../libdw/libdw.so
libelf = ../libelf/libelf.so
endif
libdwfl_pic_a_SOURCES =
am_libdwfl_pic_a_OBJECTS = $(libdwfl_a_SOURCES:.c=.os)
-libdwfl_so_SOURCES =
-libdwfl_LIBS = $(libeu) $(libdw) $(libebl) $(libelf)
-libdwfl_so_LDADD = -ldl
-libdwfl.so: libdwfl_pic.a $(srcdir)/libdwfl.map $(libdwfl_LIBS)
- $(CC) -shared -o $@ -Wl,--whole-archive,$<,--no-whole-archive \
- -Wl,--version-script,$(srcdir)/libdwfl.map,--no-undefined \
- -Wl,--soname,$@.$(VERSION),-z,defs \
- $(libdwfl_LIBS) $(libdwfl_so_LDADD)
- if readelf -d $@ | fgrep -q TEXTREL; then exit 1; fi
- ln -fs $@ $@.$(VERSION)
-
-
%.os: %.c %.o
if $(COMPILE) -c -o $@ -fpic -DPIC -DSHARED -MT $@ -MD -MP \
-MF "$(DEPDIR)/$*.Tpo" `test -f '$<' || echo '$(srcdir)/'`$<; \
rm -f "$(DEPDIR)/$*.Tpo"; \
else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
fi
-
-install: install-am libdwfl.so
- $(mkinstalldirs) $(DESTDIR)$(libdir)
- $(INSTALL_PROGRAM) libdwfl.so $(DESTDIR)$(libdir)/libdwfl-$(PACKAGE_VERSION).so
- ln -fs libdwfl-$(PACKAGE_VERSION).so $(DESTDIR)$(libdir)/libdwfl.so.$(VERSION)
- ln -fs libdwfl.so.$(VERSION) $(DESTDIR)$(libdir)/libdwfl.so
-
-uninstall: uninstall-am
- rm -f $(DESTDIR)$(libdir)/libdwfl-$(PACKAGE_VERSION).so
- rm -f $(DESTDIR)$(libdir)/libdwfl.so.$(VERSION)
- rm -f $(DESTDIR)$(libdir)/libdwfl.so
- rmdir --ignore-fail-on-non-empty $(DESTDIR)$(includedir)/elfutils
endif
noinst_HEADERS = libdwflP.h loc2c.h
-EXTRA_DIST = libdwfl.map
-
CLEANFILES = $(am_libdwfl_pic_a_OBJECTS)
-
-ptest_LDADD = $(libdwfl) $(libdw) $(libmudflap)
-test2_LDADD = $(libdwfl) $(libdw) $(libmudflap)
+++ /dev/null
-ELFUTILS_1.0 {
- global:
- dwfl_addrdie;
- dwfl_addrdwarf;
- dwfl_addrmodule;
- dwfl_begin;
- dwfl_end;
- dwfl_errmsg;
- dwfl_errno;
- dwfl_getdwarf;
- dwfl_getmodules;
- dwfl_getsrc;
- dwfl_linecu;
- dwfl_lineinfo;
- dwfl_linemodule;
- dwfl_linux_kernel_find_elf;
- dwfl_linux_kernel_module_section_address;
- dwfl_linux_kernel_report_kernel;
- dwfl_linux_kernel_report_modules;
- dwfl_linux_proc_find_elf;
- dwfl_linux_proc_report;
- dwfl_module_addrdie;
- dwfl_module_addrname;
- dwfl_module_getdwarf;
- dwfl_module_getelf;
- dwfl_module_getsrc;
- dwfl_module_getsrc_file;
- dwfl_module_info;
- dwfl_module_nextcu;
- dwfl_nextcu;
- dwfl_report_begin;
- dwfl_report_elf;
- dwfl_report_end;
- dwfl_report_module;
- dwfl_standard_argp;
- dwfl_standard_find_debuginfo;
-
- local:
- *;
-};
+2005-07-28 Roland McGrath <roland@redhat.com>
+
+ * dwflmodtest.c: New file, moved from ../libdwfl/ptest.c to here.
+ * Makefile.am (noinst_PROGRAMS): Add dwflmodtest.
+ (dwflmodtest_LDADD): New variable.
+ (INCLUDES): Add -I$(top_srcdir)/libdwfl here.
+
2005-07-21 Ulrich Drepper <drepper@redhat.com>
* testfile18.bz2: New file.
AM_LDFLAGS = -Wl,-rpath,\$$ORIGIN/../libasm:\$$ORIGIN/../libdw:\$$ORIGIN/../libebl:\$$ORIGIN/../libelf
endif
INCLUDES = -I$(top_srcdir)/libasm -I$(top_srcdir)/libdw \
+ -I$(top_srcdir)/libdwfl \
-I$(top_srcdir)/libebl -I$(top_srcdir)/libelf \
-I$(top_srcdir)/lib -I..
get-aranges allfcts line2addr \
show-abbrev hash asm-tst1 asm-tst2 asm-tst3 \
asm-tst4 asm-tst5 asm-tst6 asm-tst7 asm-tst8 asm-tst9 \
- msg_tst newscn ecp
+ msg_tst newscn ecp dwflmodtest
# get-ciefde
TESTS = run-arextract.sh run-arsymtest.sh newfile test-nlist \
asm_tst7_LDADD = $(libasm) $(libebl) $(libelf) $(libmudflap)
asm_tst8_LDADD = $(libasm) $(libebl) $(libelf) $(libmudflap)
asm_tst9_LDADD = $(libasm) $(libebl) $(libelf) $(libmudflap)
+dwflmodtest_LDADD = $(libdw) $(libelf) $(libmudflap)
CLEANFILES = xxx