summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Wielaard <mjw@redhat.com>2014-05-03 00:23:06 +0200
committerMark Wielaard <mjw@redhat.com>2014-05-03 00:23:06 +0200
commitbb096d0412f2cb71e7cac628fc7e251a47c1a56e (patch)
treecb64ad41379872ef0416ac5ce591f2ff88b16118
parentdf85bf99021119fcbb2ced66dd69f1cceafb180c (diff)
downloadelfutils-bb096d0412f2cb71e7cac628fc7e251a47c1a56e.tar.gz
Remove --enable-dwz. dwz alt debug is no longer experimental.
Signed-off-by: Mark Wielaard <mjw@redhat.com>
-rw-r--r--ChangeLog7
-rw-r--r--Makefile.am2
-rw-r--r--NEWS11
-rw-r--r--configure.ac10
-rw-r--r--libdw/ChangeLog4
-rw-r--r--libdw/libdwP.h8
-rw-r--r--libdwfl/ChangeLog5
-rw-r--r--libdwfl/dwfl_module_getdwarf.c6
-rw-r--r--tests/ChangeLog5
-rw-r--r--tests/Makefile.am8
10 files changed, 34 insertions, 32 deletions
diff --git a/ChangeLog b/ChangeLog
index c4664349..1c8ff13d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2014-05-02 Mark Wielaard <mjw@redhat.com>
+
+ * NEWS: Add note about dwz support no longer being experimental and
+ new helper functions.
+ * configure.ac: Remove --enable-dwz.
+ * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): Remove --enable-dwz.
+
2014-04-11 Mark Wielaard <mjw@redhat.com>
* Makefile.am (SUBDIRS): Add libdwelf.
diff --git a/Makefile.am b/Makefile.am
index aa554e64..d044a7cb 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -35,7 +35,7 @@ EXTRA_DIST = elfutils.spec GPG-KEY NOTES CONTRIBUTING \
# Run all tests under valgrind.
DISTCHECK_CONFIGURE_FLAGS = \
--libdir=`echo $(libdir) | sed "s,^$(exec_prefix),$$dc_install_base,"`\
- --enable-valgrind --enable-dwz \
+ --enable-valgrind \
CC="$(CC)"
distcheck-hook:
diff --git a/NEWS b/NEWS
index 78c42bdc..443cc3a0 100644
--- a/NEWS
+++ b/NEWS
@@ -4,7 +4,16 @@ stack: New option -d, --debugname to lookup DWARF debuginfo name for frame.
New option -i, --inlines to show inlined frames using DWARF debuginfo.
libdwelf: New libdwelf.h header for libdw.so DWARF ELF Low-level Functions.
- New function dwelf_elf_gnu_debuglink.
+ New function dwelf_elf_gnu_debuglink, dwelf_dwarf_gnu_debugaltlink,
+ and dwelf_elf_gnu_build_id.
+
+libdw: Support for DWZ multifile forms DW_FORM_GNU_ref_alt and
+ DW_FORM_GNU_strp_alt is now enabled by default and no longer
+ experimental. Added new functions dwarf_getalt and dwarf_setalt
+ to get or set the alternative debug file used for the alt FORMs.
+
+libdwfl: The dwfl_build_id_find_debuginfo and dwfl_standard_find_debuginfo
+ functions will now try to resolve and set the alternative debug file.
Version 0.158
diff --git a/configure.ac b/configure.ac
index e7173ad9..0ae6897e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -70,16 +70,6 @@ AS_IF([test "$use_locks" = yes],
AH_TEMPLATE([USE_LOCKS], [Defined if libraries should be thread-safe.])
-AC_ARG_ENABLE([dwz],
-AS_HELP_STRING([--enable-dwz], [enable experimental GNU ref_alt FORM, dwz multi file support in libdw]),
-enable_dwz=$enableval, enable_dwz=no)
-AM_CONDITIONAL(ENABLE_DWZ, test "$enable_dwz" = yes)
-AS_IF([test "$enable_dwz" = yes], [AC_DEFINE(ENABLE_DWZ)])
-AS_IF([test "$enable_dwz" = no -a -d /usr/lib/debug/.dwz],
- [AC_MSG_WARN([--enable-dwz disabled and /usr/lib/debug/.dwz exists, native tests might fail])])
-
-AH_TEMPLATE([ENABLE_DWZ], [Defined if libdw should support GNU ref_alt FORM, dwz multi files.])
-
AC_PROG_CC
AC_PROG_RANLIB
AC_PROG_YACC
diff --git a/libdw/ChangeLog b/libdw/ChangeLog
index 960c8315..780b34d0 100644
--- a/libdw/ChangeLog
+++ b/libdw/ChangeLog
@@ -1,3 +1,7 @@
+2014-05-02 Mark Wielaard <mjw@redhat.com>
+
+ * libdwP.h (__check_build_id): Removed now unused.
+
2014-05-01 Mark Wielaard <mjw@redhat.com>
* libdwP.h (struct Dwarf): Remove free_alt.
diff --git a/libdw/libdwP.h b/libdw/libdwP.h
index 41361350..ce8a83d5 100644
--- a/libdw/libdwP.h
+++ b/libdw/libdwP.h
@@ -652,14 +652,6 @@ unsigned char * __libdw_formptr (Dwarf_Attribute *attr, int sec_index,
Dwarf_Off *offsetp)
internal_function;
-#ifdef ENABLE_DWZ
-/* Checks that the build_id of the underlying Elf matches the expected.
- Returns zero on match, -1 on error or no build_id found or 1 when
- build_id doesn't match. */
-int __check_build_id (Dwarf *dw, const uint8_t *build_id, const size_t id_len)
- internal_function;
-#endif /* ENABLE_DWZ */
-
/* Fills in the given attribute to point at an empty location expression. */
void __libdw_empty_loc_attr (Dwarf_Attribute *attr, struct Dwarf_CU *cu)
internal_function;
diff --git a/libdwfl/ChangeLog b/libdwfl/ChangeLog
index a33bd25a..2cf07521 100644
--- a/libdwfl/ChangeLog
+++ b/libdwfl/ChangeLog
@@ -1,3 +1,8 @@
+2014-05-02 Mark Wielaard <mjw@redhat.com>
+
+ * dwfl_module_getdwarf: Remove ENABLE_DWZ ifdefs so find_debug_altlink
+ is always called.
+
2014-05-01 Mark Wielaard <mjw@redhat.com>
* libdwflP.h (struct Dwfl_Module): Add alt, alt_fd and alt_elf fields.
diff --git a/libdwfl/dwfl_module_getdwarf.c b/libdwfl/dwfl_module_getdwarf.c
index 293e8e75..72599841 100644
--- a/libdwfl/dwfl_module_getdwarf.c
+++ b/libdwfl/dwfl_module_getdwarf.c
@@ -508,7 +508,6 @@ find_debuginfo (Dwfl_Module *mod)
return result;
}
-#ifdef ENABLE_DWZ
/* Try to find the alternative debug link for the given DWARF and set
it if found. Only called when mod->dw is already setup but still
might need an alternative (dwz multi) debug file. filename is either
@@ -558,7 +557,6 @@ find_debug_altlink (Dwfl_Module *mod, const char *filename)
free (altfile); /* See above, we don't really need it. */
}
}
-#endif /* ENABLE_DWZ */
/* Try to find a symbol table in FILE.
Returns DWFL_E_NOERROR if a proper one is found.
@@ -1209,12 +1207,10 @@ find_dw (Dwfl_Module *mod)
mod->debug.elf = mod->main.elf;
mod->debug.address_sync = mod->main.address_sync;
-#ifdef ENABLE_DWZ
/* The Dwarf might need an alt debug file, find that now after
everything about the debug file has been setup (the
find_debuginfo callback might need it). */
find_debug_altlink (mod, mod->main.name);
-#endif /* ENABLE_DWZ */
return;
case DWFL_E_NO_DWARF:
@@ -1232,12 +1228,10 @@ find_dw (Dwfl_Module *mod)
mod->dwerr = load_dw (mod, &mod->debug);
if (mod->dwerr == DWFL_E_NOERROR)
{
-#ifdef ENABLE_DWZ
/* The Dwarf might need an alt debug file, find that now after
everything about the debug file has been setup (the
find_debuginfo callback might need it). */
find_debug_altlink (mod, mod->debug.name);
-#endif /* ENABLE_DWZ */
return;
}
diff --git a/tests/ChangeLog b/tests/ChangeLog
index f180fe4b..380facd8 100644
--- a/tests/ChangeLog
+++ b/tests/ChangeLog
@@ -1,3 +1,8 @@
+2014-05-02 Mark Wielaard <mjw@redhat.com>
+
+ * Makefile.am (TESTS): run-readelf-dwz-multi.sh and
+ run-allfcts-multi.sh are now added unconditionally.
+
2014-05-01 Mark Wielaard <mjw@redhat.com>
* run-readelf-dwz-multi.sh: Add tests with alt debug files in .dwz
diff --git a/tests/Makefile.am b/tests/Makefile.am
index dd110a52..4cc81c9c 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -108,7 +108,8 @@ TESTS = run-arextract.sh run-arsymtest.sh newfile test-nlist \
run-backtrace-core-i386.sh run-backtrace-core-ppc.sh \
run-backtrace-core-s390x.sh run-backtrace-core-s390.sh \
run-backtrace-core-aarch64.sh \
- run-backtrace-demangle.sh run-stack-d-test.sh run-stack-i-test.sh
+ run-backtrace-demangle.sh run-stack-d-test.sh run-stack-i-test.sh \
+ run-readelf-dwz-multi.sh run-allfcts-multi.sh
if !BIARCH
export ELFUTILS_DISABLE_BIARCH = 1
@@ -136,11 +137,6 @@ check_PROGRAMS += $(asm_TESTS)
TESTS += $(asm_TESTS)
endif
-if ENABLE_DWZ
-TESTS += run-readelf-dwz-multi.sh run-allfcts-multi.sh
-endif
-
-
EXTRA_DIST = run-arextract.sh run-arsymtest.sh \
run-show-die-info.sh run-get-files.sh run-get-lines.sh \
run-get-pubnames.sh run-get-aranges.sh \