- add debug sub-package patch.
authorjbj <devnull@localhost>
Fri, 18 Oct 2002 18:45:47 +0000 (18:45 +0000)
committerjbj <devnull@localhost>
Fri, 18 Oct 2002 18:45:47 +0000 (18:45 +0000)
- re-add elfutils/libdwarf (for dwarf.h), eliminate tools/dwarf2.h.

CVS patchset: 5789
CVS date: 2002/10/18 18:45:47

36 files changed:
CHANGES
build/rpmbuild.h
build/tfr.c
configure.ac
elfutils/Makefile.am
elfutils/configure.in
elfutils/libdwarf/Makefile.am
elfutils/po/elfutils.pot
po/cs.po
po/da.po
po/de.po
po/fi.po
po/fr.po
po/gl.po
po/is.po
po/ja.po
po/ko.po
po/no.po
po/pl.po
po/pt.po
po/pt_BR.po
po/ro.po
po/rpm.pot
po/ru.po
po/sk.po
po/sl.po
po/sr.po
po/sv.po
po/tr.po
rpm.spec.in
rpmdb/header.h
rpmdb/legacy.c
rpmdb/rpmdb.h
tools/Makefile.am
tools/debugedit.c
tools/dwarf2.h [deleted file]

diff --git a/CHANGES b/CHANGES
index fe52ef0..e09d112 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -9,6 +9,8 @@
        - python: permit headers to be hashed.
        - use %%{_lib} for libraries.
        - include file-3.39 (with homebrewed) libfmagic, for now.
+       - add debug sub-package patch.
+       - re-add elfutils/libdwarf (for dwarf.h), eliminate tools/dwarf2.h.
 
 4.0.4 -> 4.1:
        - loosely wire beecrypt library into rpm.
index 9ce58f6..a4ea7b0 100644 (file)
@@ -6,7 +6,7 @@
  *  This is the *only* module users of librpmbuild should need to include.
  */
 
-#include <rpmcli.h>
+#include "rpmcli.h"
 
 /* and it shouldn't need these :-( */
 #include "stringbuf.h"
index 579d025..0600c38 100644 (file)
@@ -5,7 +5,7 @@
 #include <rpmfc.h>
 
 
-#if HAVE_LIBELF_GELF_H
+#if HAVE_GELF_H
 
 #include <gelf.h>
 
@@ -15,7 +15,7 @@
 
 static int rpmfcELF(rpmfc fc)
 {
-#if HAVE_LIBELF_GELF_H && HAVE_LIBELF
+#if HAVE_GELF_H && HAVE_LIBELF
     const char * fn = fc->fn[fc->ix];;
     Elf * elf;
     Elf_Scn * scn;
index 391e09c..ba17aca 100644 (file)
@@ -368,7 +368,7 @@ WITH_LIBELF_INCLUDE=
 WITH_LIBELF_LIB=
 WITH_LIBELF_ARCHIVE=
        if test -d elfutils/libelf ; then
-           AC_DEFINE(HAVE_LIBELF_GELF_H, 1, [Define to 1 if you have the <libelf/gelf.h> header file.])
+           AC_DEFINE(HAVE_GELF_H, 1, [Define to 1 if you have the <gelf.h> header file.])
            AC_DEFINE(HAVE_LIBELF, 1, [Define to 1 if you have the `elf' library (-lelf).])
            WITH_LIBELF_SUBDIR=elfutils/libelf
            WITH_LIBELF_INCLUDE="-I\${top_srcdir}/${WITH_LIBELF_SUBDIR}"
@@ -380,6 +380,23 @@ AC_SUBST(WITH_LIBELF_INCLUDE)
 AC_SUBST(WITH_LIBELF_LIB)
 AC_SUBST(WITH_LIBELF_ARCHIVE)
 
+WITH_LIBDWARF_SUBDIR=
+WITH_LIBDWARF_INCLUDE=
+WITH_LIBDWARF_LIB=
+WITH_LIBDWARF_ARCHIVE=
+       if test -d elfutils/libdwarf ; then
+           AC_DEFINE(HAVE_DWARF_H, 1, [Define to 1 if you have the <dwarf.h> header file.])
+           AC_DEFINE(HAVE_LIBDWARF, 1, [Define to 1 if you have the `dwarf' library (-ldwarf).])
+           WITH_LIBDWARF_SUBDIR=elfutils/libdwarf
+           WITH_LIBDWARF_INCLUDE="-I\${top_srcdir}/${WITH_LIBDWARF_SUBDIR}"
+           WITH_LIBDWARF_LIB="\${top_builddir}/${WITH_LIBDWARF_SUBDIR}/libdwarf.la"
+           WITH_LIBDWARF_ARCHIVE="\${top_builddir}/${WITH_LIBDWARF_SUBDIR}/.libs/libdwarf.a"
+       fi
+AC_SUBST(WITH_LIBDWARF_SUBDIR)
+AC_SUBST(WITH_LIBDWARF_INCLUDE)
+AC_SUBST(WITH_LIBDWARF_LIB)
+AC_SUBST(WITH_LIBDWARF_ARCHIVE)
+
 AC_CHECK_FUNC(setreuid, [], [
     AC_CHECK_LIB(ucb, setreuid, [if echo $LIBS | grep -- -lucb >/dev/null ;then :; else LIBS="$LIBS -lc -lucb" USEUCB=y;fi])
 ])
index e8ebd1a..ac4c88d 100644 (file)
@@ -8,7 +8,7 @@ ACLOCAL_AMFLAGS = -I m4
 #SUBDIRS = m4 doc intl lib libltdl libelf libebl libdwarf libasm src \
 #        libelf-po libebl-po libdwarf-po libasm-po po tests
 
-SUBDIRS = m4 doc intl lib libltdl libelf libelf-po po
+SUBDIRS = m4 doc intl lib libltdl libelf libdwarf libelf-po libdwarf-po po
 
 EXTRA_DIST = config.rpath splint.rc
 
index 17fd6bd..da54217 100644 (file)
@@ -144,4 +144,6 @@ AC_OUTPUT([Makefile
           intl/Makefile
           libelf/Makefile
           libelf-po/Makefile.in
+          libdwarf/Makefile
+          libdwarf-po/Makefile.in
           po/Makefile.in])
index 62b57db..dcc3cb2 100644 (file)
@@ -6,9 +6,8 @@ DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H -DDWARF_DEBUG
 AM_CFLAGS = -Wall -Werror
 INCLUDES = -I. -I$(srcdir) -I$(srcdir)/../libelf -I.. -I$(srcdir)/../lib
 
-lib_LTLIBRARIES = libdwarf.la
-
-include_HEADERS = dwarf.h libdwarf.h
+#lib_LTLIBRARIES = libdwarf.la
+noinst_LTLIBRARIES = libdwarf.la
 
 libdwarf_la_SOURCES = dwarf_init.c dwarf_elf_init.c dwarf_get_elf.c \
                      dwarf_finish.c \
@@ -50,7 +49,10 @@ libdwarf_la_SOURCES = dwarf_init.c dwarf_elf_init.c dwarf_get_elf.c \
                      dwarf_seterrhand.c dwarf_seterrarg.c \
                      dwarf_dealloc.c
 
-noinst_HEADERS = libdwarfP.h memory-access.h dwarf_abbrev_hash.h
+noinst_HEADERS = libdwarfP.h memory-access.h dwarf_abbrev_hash.h \
+               dwarf.h libdwarf.h
+
+#include_HEADERS = dwarf.h libdwarf.h
 
 EXTRA_DIST = AVAILABLE libdwarf.sym
 
index 63a59d8..5958787 100644 (file)
@@ -7,7 +7,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2002-10-17 14:46-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
index 8e626dc..9fb711d 100644 (file)
--- a/po/cs.po
+++ b/po/cs.po
@@ -1,7 +1,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.3\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 2001-07-24 10:02+0100\n"
 "Last-Translator: Milan Kerslager <kerslage@linux.cz>\n"
 "Language-Team: Czech <cs@li.org>\n"
index 9e4f321..4a935ba 100644 (file)
--- a/po/da.po
+++ b/po/da.po
@@ -1,7 +1,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.3\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 2001-04-05 23:03GMT\n"
 "Last-Translator: Claus Hindsgaul <claus_h@image.dk>\n"
 "Language-Team: Danish <dansk@klid.dk>\n"
index 97b53ed..e4d996f 100644 (file)
--- a/po/de.po
+++ b/po/de.po
@@ -37,7 +37,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.3\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 1998-08-03 18:02+02:00\n"
 "Last-Translator: Karl Eichwalder <ke@SuSE.DE>\n"
 "Language-Team: German <de@li.org>\n"
index 7cc00ed..aaae271 100644 (file)
--- a/po/fi.po
+++ b/po/fi.po
@@ -1,7 +1,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.3\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 1998-05-02 21:41:47-0400\n"
 "Last-Translator: Raimo Koski <rkoski@pp.weppi.fi>\n"
 "Language-Team: Finnish <linux@sot.com>\n"
index 7c9b394..154be1c 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -6,7 +6,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.3\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
index 0abb8cc..da9b608 100644 (file)
--- a/po/gl.po
+++ b/po/gl.po
@@ -1,7 +1,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.1\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 2001-01-13 22:31+0100\n"
 "Last-Translator: Jesús Bravo Álvarez <jba@pobox.com>\n"
 "Language-Team: Galician <trasno@ceu.fi.udc.es>\n"
index 5d67000..10d2fd9 100644 (file)
--- a/po/is.po
+++ b/po/is.po
@@ -1,7 +1,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.3\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 2001-07-12 13:25+0000\n"
 "Last-Translator: Richard Allen <ra@hp.is>\n"
 "Language-Team: is <kde-isl@mmedia.is>\n"
index 73bda20..64d2a9b 100644 (file)
--- a/po/ja.po
+++ b/po/ja.po
@@ -6,7 +6,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.3\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 1999-12-01 22:49 +JST\n"
 "Last-Translator: Kanda Mitsuru <kanda@nn.iij4u.or.jp>\n"
 "Language-Team: JRPM <jrpm@linux.or.jp>\n"
index eaa793d..4cfa405 100644 (file)
--- a/po/ko.po
+++ b/po/ko.po
@@ -1,7 +1,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.4\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 2002-03-04 17:17+0900\n"
 "Last-Translator: Jong-Hoon Ryu <redhat4u@netian.com>\n"
 "Language-Team: GNU Translation project <ko@li.org>\n"
index f07fdf1..89e1fe3 100644 (file)
--- a/po/no.po
+++ b/po/no.po
@@ -1,7 +1,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.3\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 2001-06-27 12:24+0200\n"
 "Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n"
 "Language-Team: Norwegian <no@li.org>\n"
index ad0b1bd..82c88be 100644 (file)
--- a/po/pl.po
+++ b/po/pl.po
@@ -8,7 +8,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.3\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 1999-05-25 17:00+0100\n"
 "Last-Translator: Pawe³ Dziekoñski <pdziekonski@mml.ch.pwr.wroc.pl>\n"
 "Language-Team: Polish <pl@li.org>\n"
index 65c599f..3ff95ba 100644 (file)
--- a/po/pt.po
+++ b/po/pt.po
@@ -1,7 +1,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 2002-02-14 10:51+0000\n"
 "Last-Translator: José Nuno Coelho Sanarra Pires <jncp@rnl.ist.utl.pt>\n"
 "Language-Team: pt <morais@kde.org\n"
index 5ce0b8a..107b1a5 100644 (file)
@@ -4,7 +4,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.3\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-1\n"
 "Content-Transfer-Encoding: 8-bit\n"
index 80baf2b..4d5b29b 100644 (file)
--- a/po/ro.po
+++ b/po/ro.po
@@ -1,7 +1,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.3\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 1999-04-10 12:00+EST\n"
 "Last-Translator: Cristian Gafton <gafton@redhat.com>\n"
 "Language-Team: Romanian <ro@li.org>\n"
index 3531f35..e475e8f 100644 (file)
@@ -7,7 +7,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
index 0ff3a86..f222940 100644 (file)
--- a/po/ru.po
+++ b/po/ru.po
@@ -1,7 +1,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.3\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 2002-08-27 13:36-0400\n"
 "Last-Translator: Eugene Kanter, <eugene@blackcatlinux.com>\n"
 "Language-Team: Black Cat Linux Team <blackcat-support@blackcatlinux.com>\n"
index 7425d2c..2c915e4 100644 (file)
--- a/po/sk.po
+++ b/po/sk.po
@@ -1,7 +1,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.3\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 1999-04-08 21:37+02:00\n"
 "Last-Translator: Stanislav Meduna <stano@eunet.sk>\n"
 "Language-Team: Slovak <sk-i18n@rak.isternet.sk>\n"
index d022c0c..446e893 100644 (file)
--- a/po/sl.po
+++ b/po/sl.po
@@ -1,12 +1,12 @@
 # -*- mode:po; coding:iso-latin-2; -*- Slovenian messages for Redhat pkg. mngr.
 # Copyright (C) 2000 Free Software Foundation, Inc.
 # Primo¾ Peterlin <primoz.peterlin@biofiz.mf.uni-lj.si>, 2000.
-# $Id: sl.po,v 1.318 2002/10/16 17:57:48 jbj Exp $
+# $Id: sl.po,v 1.319 2002/10/18 18:46:34 jbj Exp $
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.3\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 2000-10-08 19:05+0200\n"
 "Last-Translator: Grega Fajdiga <gregor.fajdiga@telemach.net>\n"
 "Language-Team: Slovenian <sl@li.org>\n"
index f396b62..b75f23c 100644 (file)
--- a/po/sr.po
+++ b/po/sr.po
@@ -1,7 +1,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.3\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=iso-8859-2\n"
 "Content-Transfer-Encoding: 8bit\n"
index 7c3e6c7..b106d1c 100644 (file)
--- a/po/sv.po
+++ b/po/sv.po
@@ -1,7 +1,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.1\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 2002-08-19 22:26+0200\n"
 "Last-Translator: Göran Uddeborg <goeran@uddeborg.pp.se>\n"
 "Language-Team: Swedish <sv@li.org>\n"
index 20db1c3..9dc266d 100644 (file)
--- a/po/tr.po
+++ b/po/tr.po
@@ -1,7 +1,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rpm 4.0.3\n"
-"POT-Creation-Date: 2002-10-15 15:03-0400\n"
+"POT-Creation-Date: 2002-10-18 14:27-0400\n"
 "PO-Revision-Date: 2001-07-05 08:02+300\n"
 "Last-Translator: Nilgun Belma Buguner <nilgun@technologist.com>\n"
 "Language-Team: Turkish <tr@li.org>\n"
index 78b6608..2a72ffa 100644 (file)
@@ -16,7 +16,7 @@ Name: rpm
 %define version @VERSION@
 Version: %{version}
 %{expand: %%define rpm_version %{version}}
-Release: 0.1
+Release: 0.2
 Group: System Environment/Base
 Source: ftp://ftp.rpm.org/pub/rpm/dist/rpm-4.0.x/rpm-%{rpm_version}.tar.gz
 Copyright: GPL
@@ -479,7 +479,11 @@ exit 0
 %{__prefix}/include/popt.h
 
 %changelog
-* Mon Aug 26 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.1
+* Fri Oct 18 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.2
+- add debug sub-package patch.
+- re-add elfutils/libdwarf (for dwarf.h), eliminate tools/dwarf2.h.
+
+* Thu Oct 17 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.1
 - set cachesize without a dbenv, the default is far too small.
 - db: don't return EACCES on db->close w/o environment.
 - unify cachesize configuration, with (or without) a dbenv.
index a3f69a4..625b9ab 100644 (file)
@@ -78,7 +78,7 @@
 /* RPM - Copyright (C) 1995-2001 Red Hat Software */
 
 #include <stdio.h>
-#include <rpmio.h>
+#include "rpmio.h"
 
 #ifdef __cplusplus
 extern "C" {
@@ -717,7 +717,7 @@ void * headerFreeData( /*@only@*/ /*@null@*/ const void * data, rpmTagType type)
 }
 
 #if !defined(__HEADER_PROTOTYPES__)
-#include <hdrinline.h>
+#include "hdrinline.h"
 #endif
 
 #ifdef __cplusplus
index 3568de9..11f5340 100644 (file)
@@ -4,7 +4,7 @@
 
 #include "system.h"
 
-#if HAVE_LIBELF_GELF_H
+#if HAVE_GELF_H
 
 #include <gelf.h>
 
@@ -68,7 +68,7 @@ static int open_dso(const char * path, /*@null@*/ pid_t * pidp, /*@null@*/ size_
        return fdno;
 /*@=boundsread@*/
 
-#if HAVE_LIBELF_GELF_H && HAVE_LIBELF
+#if HAVE_GELF_H && HAVE_LIBELF
  {  Elf *elf = NULL;
     Elf_Scn *scn = NULL;
     Elf_Data *data = NULL;
index 197a7b1..7b242c7 100644 (file)
@@ -8,8 +8,8 @@
  */
 
 #include <assert.h>
-#include <rpmlib.h>
-#include <db.h>
+#include "rpmlib.h"
+#include "db.h"
 
 /*@-exportlocal@*/
 /*@unchecked@*/
index 75e15d3..9d2cb43 100644 (file)
@@ -10,11 +10,12 @@ INCLUDES = -I. \
        -I$(top_srcdir)/rpmio \
        -I$(top_srcdir)/popt \
        @WITH_LIBELF_INCLUDE@ \
+       @WITH_LIBDWARF_INCLUDE@ \
        @WITH_ZLIB_INCLUDE@ \
        @INCPATH@ \
        -I$(top_srcdir)/misc
 
-EXTRA_DIST =   rpminject.c rpmsort.c sections.h utils.h dwarf2.h hashtab.h
+EXTRA_DIST =   rpminject.c rpmsort.c sections.h utils.h hashtab.h
 
 EXTRA_PROGRAMS = rpminject rpmsort
 
index c4f9811..3bc1b15 100644 (file)
 #include <sys/stat.h>
 #include <fcntl.h>
 #include <popt.h>
-#include <elf.h>
-#include <libelf/libelf.h>
-#include <libelf/gelf.h>
 
-#include "dwarf2.h"
+#include <gelf.h>
+#include <dwarf.h>
+
 #include "hashtab.h"
 
 char *base_dir = NULL;
diff --git a/tools/dwarf2.h b/tools/dwarf2.h
deleted file mode 100644 (file)
index fb44762..0000000
+++ /dev/null
@@ -1,478 +0,0 @@
-/* Copyright (C) 2001 Red Hat, Inc.
-   Written by Jakub Jelinek <jakub@redhat.com>, 2001.
-   
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2, or (at your option)
-   any later version.
-
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software Foundation,
-   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
-
-#define DW_TAG_padding                 0x00
-#define DW_TAG_array_type              0x01
-#define DW_TAG_class_type              0x02
-#define DW_TAG_entry_point             0x03
-#define DW_TAG_enumeration_type                0x04
-#define DW_TAG_formal_parameter                0x05
-#define DW_TAG_imported_declaration    0x08
-#define DW_TAG_label                   0x0a
-#define DW_TAG_lexical_block           0x0b
-#define DW_TAG_member                  0x0d
-#define DW_TAG_pointer_type            0x0f
-#define DW_TAG_reference_type          0x10
-#define DW_TAG_compile_unit            0x11
-#define DW_TAG_string_type             0x12
-#define DW_TAG_structure_type          0x13
-#define DW_TAG_subroutine_type         0x15
-#define DW_TAG_typedef                 0x16
-#define DW_TAG_union_type              0x17
-#define DW_TAG_unspecified_parameters  0x18
-#define DW_TAG_variant                 0x19
-#define DW_TAG_common_block            0x1a
-#define DW_TAG_common_inclusion                0x1b
-#define DW_TAG_inheritance             0x1c
-#define DW_TAG_inlined_subroutine      0x1d
-#define DW_TAG_module                  0x1e
-#define DW_TAG_ptr_to_member_type      0x1f
-#define DW_TAG_set_type                        0x20
-#define DW_TAG_subrange_type           0x21
-#define DW_TAG_with_stmt               0x22
-#define DW_TAG_access_declaration      0x23
-#define DW_TAG_base_type               0x24
-#define DW_TAG_catch_block             0x25
-#define DW_TAG_const_type              0x26
-#define DW_TAG_constant                        0x27
-#define DW_TAG_enumerator              0x28
-#define DW_TAG_file_type               0x29
-#define DW_TAG_friend                  0x2a
-#define DW_TAG_namelist                        0x2b
-#define DW_TAG_namelist_item           0x2c
-#define DW_TAG_packed_type             0x2d
-#define DW_TAG_subprogram              0x2e
-#define DW_TAG_template_type_param     0x2f
-#define DW_TAG_template_value_param    0x30
-#define DW_TAG_thrown_type             0x31
-#define DW_TAG_try_block               0x32
-#define DW_TAG_variant_part            0x33
-#define DW_TAG_variable                        0x34
-#define DW_TAG_volatile_type           0x35
-#define DW_TAG_dwarf_procedure         0x36
-#define DW_TAG_restrict_type           0x37
-#define DW_TAG_interface_type          0x38
-#define DW_TAG_namespace               0x39
-#define DW_TAG_imported_module         0x3a
-#define DW_TAG_unspecified_type                0x3b
-#define DW_TAG_partial_unit            0x3c
-#define DW_TAG_imported_unit           0x3d
-#define DW_TAG_MIPS_loop               0x4081
-#define DW_TAG_format_label            0x4101
-#define DW_TAG_function_template       0x4102
-#define DW_TAG_class_template          0x4103
-#define DW_TAG_GNU_BINCL               0x4104
-#define DW_TAG_GNU_EINCL               0x4105
-#define DW_TAG_lo_user                 0x4080
-#define DW_TAG_hi_user                 0xffff
-
-#define DW_children_no                 0x0
-#define        DW_children_yes                 0x1
-
-#define DW_FORM_addr                   0x01
-#define DW_FORM_block2                 0x03
-#define DW_FORM_block4                 0x04
-#define DW_FORM_data2                  0x05
-#define DW_FORM_data4                  0x06
-#define DW_FORM_data8                  0x07
-#define DW_FORM_string                 0x08
-#define DW_FORM_block                  0x09
-#define DW_FORM_block1                 0x0a
-#define DW_FORM_data1                  0x0b
-#define DW_FORM_flag                   0x0c
-#define DW_FORM_sdata                  0x0d
-#define DW_FORM_strp                   0x0e
-#define DW_FORM_udata                  0x0f
-#define DW_FORM_ref_addr               0x10
-#define DW_FORM_ref1                   0x11
-#define DW_FORM_ref2                   0x12
-#define DW_FORM_ref4                   0x13
-#define DW_FORM_ref8                   0x14
-#define DW_FORM_ref_udata              0x15
-#define DW_FORM_indirect               0x16
-
-#define DW_AT_sibling                  0x01
-#define DW_AT_location                 0x02
-#define DW_AT_name                     0x03
-#define DW_AT_ordering                 0x09
-#define DW_AT_subscr_data              0x0a
-#define DW_AT_byte_size                        0x0b
-#define DW_AT_bit_offset               0x0c
-#define DW_AT_bit_size                 0x0d
-#define DW_AT_element_list             0x0f
-#define DW_AT_stmt_list                        0x10
-#define DW_AT_low_pc                   0x11
-#define DW_AT_high_pc                  0x12
-#define DW_AT_language                 0x13
-#define DW_AT_member                   0x14
-#define DW_AT_discr                    0x15
-#define DW_AT_discr_value              0x16
-#define DW_AT_visibility               0x17
-#define DW_AT_import                   0x18
-#define DW_AT_string_length            0x19
-#define DW_AT_common_reference         0x1a
-#define DW_AT_comp_dir                 0x1b
-#define DW_AT_const_value              0x1c
-#define DW_AT_containing_type          0x1d
-#define DW_AT_default_value            0x1e
-#define DW_AT_inline                   0x20
-#define DW_AT_is_optional              0x21
-#define DW_AT_lower_bound              0x22
-#define DW_AT_producer                 0x25
-#define DW_AT_prototyped               0x27
-#define DW_AT_return_addr              0x2a
-#define DW_AT_start_scope              0x2c
-#define DW_AT_stride_size              0x2e
-#define DW_AT_upper_bound              0x2f
-#define DW_AT_abstract_origin          0x31
-#define DW_AT_accessibility            0x32
-#define DW_AT_address_class            0x33
-#define DW_AT_artificial               0x34
-#define DW_AT_base_types               0x35
-#define DW_AT_calling_convention       0x36
-#define DW_AT_count                    0x37
-#define DW_AT_data_member_location     0x38
-#define DW_AT_decl_column              0x39
-#define DW_AT_decl_file                        0x3a
-#define DW_AT_decl_line                        0x3b
-#define DW_AT_declaration              0x3c
-#define DW_AT_discr_list               0x3d
-#define DW_AT_encoding                 0x3e
-#define DW_AT_external                 0x3f
-#define DW_AT_frame_base               0x40
-#define DW_AT_friend                   0x41
-#define DW_AT_identifier_case          0x42
-#define DW_AT_macro_info               0x43
-#define DW_AT_namelist_items           0x44
-#define DW_AT_priority                 0x45
-#define DW_AT_segment                  0x46
-#define DW_AT_specification            0x47
-#define DW_AT_static_link              0x48
-#define DW_AT_type                     0x49
-#define DW_AT_use_location             0x4a
-#define DW_AT_variable_parameter       0x4b
-#define DW_AT_virtuality               0x4c
-#define DW_AT_vtable_elem_location     0x4d
-#define DW_AT_allocated                        0x4e
-#define DW_AT_associated               0x4f
-#define DW_AT_data_location            0x50 
-#define DW_AT_stride                   0x51
-#define DW_AT_entry_pc                 0x52
-#define DW_AT_use_UTF8                 0x53
-#define DW_AT_extension                        0x54
-#define DW_AT_ranges                   0x55
-#define DW_AT_trampoline               0x56
-#define DW_AT_call_column              0x57 
-#define DW_AT_call_file                        0x58
-#define DW_AT_call_line                        0x59
-#define DW_AT_MIPS_fde                 0x2001
-#define DW_AT_MIPS_loop_begin          0x2002
-#define DW_AT_MIPS_tail_loop_begin     0x2003
-#define DW_AT_MIPS_epilog_begin                0x2004
-#define DW_AT_MIPS_loop_unroll_factor  0x2005
-#define DW_AT_MIPS_software_pipeline_depth 0x2006
-#define DW_AT_MIPS_linkage_name                0x2007
-#define DW_AT_MIPS_stride              0x2008
-#define DW_AT_MIPS_abstract_name       0x2009
-#define DW_AT_MIPS_clone_origin                0x200a
-#define DW_AT_MIPS_has_inlines         0x200b
-#define DW_AT_sf_names                 0x2101
-#define DW_AT_src_info                 0x2102
-#define DW_AT_mac_info                 0x2103
-#define DW_AT_src_coords               0x2104
-#define DW_AT_body_begin               0x2105
-#define DW_AT_body_end                 0x2106
-#define DW_AT_lo_user                  0x2000
-#define DW_AT_hi_user                  0x3ff0
-
-#define DW_OP_addr                     0x03
-#define DW_OP_deref                    0x06
-#define DW_OP_const1u                  0x08
-#define DW_OP_const1s                  0x09
-#define DW_OP_const2u                  0x0a
-#define DW_OP_const2s                  0x0b
-#define DW_OP_const4u                  0x0c
-#define DW_OP_const4s                  0x0d
-#define DW_OP_const8u                  0x0e
-#define DW_OP_const8s                  0x0f
-#define DW_OP_constu                   0x10
-#define DW_OP_consts                   0x11
-#define DW_OP_dup                      0x12
-#define DW_OP_drop                     0x13
-#define DW_OP_over                     0x14
-#define DW_OP_pick                     0x15
-#define DW_OP_swap                     0x16
-#define DW_OP_rot                      0x17
-#define DW_OP_xderef                   0x18
-#define DW_OP_abs                      0x19
-#define DW_OP_and                      0x1a
-#define DW_OP_div                      0x1b
-#define DW_OP_minus                    0x1c
-#define DW_OP_mod                      0x1d
-#define DW_OP_mul                      0x1e
-#define DW_OP_neg                      0x1f
-#define DW_OP_not                      0x20
-#define DW_OP_or                       0x21
-#define DW_OP_plus                     0x22
-#define DW_OP_plus_uconst              0x23
-#define DW_OP_shl                      0x24
-#define DW_OP_shr                      0x25
-#define DW_OP_shra                     0x26
-#define DW_OP_xor                      0x27
-#define DW_OP_bra                      0x28
-#define DW_OP_eq                       0x29
-#define DW_OP_ge                       0x2a
-#define DW_OP_gt                       0x2b
-#define DW_OP_le                       0x2c
-#define DW_OP_lt                       0x2d
-#define DW_OP_ne                       0x2e
-#define DW_OP_skip                     0x2f
-#define DW_OP_lit0                     0x30
-#define DW_OP_lit1                     0x31
-#define DW_OP_lit2                     0x32
-#define DW_OP_lit3                     0x33
-#define DW_OP_lit4                     0x34
-#define DW_OP_lit5                     0x35
-#define DW_OP_lit6                     0x36
-#define DW_OP_lit7                     0x37
-#define DW_OP_lit8                     0x38
-#define DW_OP_lit9                     0x39
-#define DW_OP_lit10                    0x3a
-#define DW_OP_lit11                    0x3b
-#define DW_OP_lit12                    0x3c
-#define DW_OP_lit13                    0x3d
-#define DW_OP_lit14                    0x3e
-#define DW_OP_lit15                    0x3f
-#define DW_OP_lit16                    0x40
-#define DW_OP_lit17                    0x41
-#define DW_OP_lit18                    0x42
-#define DW_OP_lit19                    0x43
-#define DW_OP_lit20                    0x44
-#define DW_OP_lit21                    0x45
-#define DW_OP_lit22                    0x46
-#define DW_OP_lit23                    0x47
-#define DW_OP_lit24                    0x48
-#define DW_OP_lit25                    0x49
-#define DW_OP_lit26                    0x4a
-#define DW_OP_lit27                    0x4b
-#define DW_OP_lit28                    0x4c
-#define DW_OP_lit29                    0x4d
-#define DW_OP_lit30                    0x4e
-#define DW_OP_lit31                    0x4f
-#define DW_OP_reg0                     0x50
-#define DW_OP_reg1                     0x51
-#define DW_OP_reg2                     0x52
-#define DW_OP_reg3                     0x53
-#define DW_OP_reg4                     0x54
-#define DW_OP_reg5                     0x55
-#define DW_OP_reg6                     0x56
-#define DW_OP_reg7                     0x57
-#define DW_OP_reg8                     0x58
-#define DW_OP_reg9                     0x59
-#define DW_OP_reg10                    0x5a
-#define DW_OP_reg11                    0x5b
-#define DW_OP_reg12                    0x5c
-#define DW_OP_reg13                    0x5d
-#define DW_OP_reg14                    0x5e
-#define DW_OP_reg15                    0x5f
-#define DW_OP_reg16                    0x60
-#define DW_OP_reg17                    0x61
-#define DW_OP_reg18                    0x62
-#define DW_OP_reg19                    0x63
-#define DW_OP_reg20                    0x64
-#define DW_OP_reg21                    0x65
-#define DW_OP_reg22                    0x66
-#define DW_OP_reg23                    0x67
-#define DW_OP_reg24                    0x68
-#define DW_OP_reg25                    0x69
-#define DW_OP_reg26                    0x6a
-#define DW_OP_reg27                    0x6b
-#define DW_OP_reg28                    0x6c
-#define DW_OP_reg29                    0x6d
-#define DW_OP_reg30                    0x6e
-#define DW_OP_reg31                    0x6f
-#define DW_OP_breg0                    0x70
-#define DW_OP_breg1                    0x71
-#define DW_OP_breg2                    0x72
-#define DW_OP_breg3                    0x73
-#define DW_OP_breg4                    0x74
-#define DW_OP_breg5                    0x75
-#define DW_OP_breg6                    0x76
-#define DW_OP_breg7                    0x77
-#define DW_OP_breg8                    0x78
-#define DW_OP_breg9                    0x79
-#define DW_OP_breg10                   0x7a
-#define DW_OP_breg11                   0x7b
-#define DW_OP_breg12                   0x7c
-#define DW_OP_breg13                   0x7d
-#define DW_OP_breg14                   0x7e
-#define DW_OP_breg15                   0x7f
-#define DW_OP_breg16                   0x80
-#define DW_OP_breg17                   0x81
-#define DW_OP_breg18                   0x82
-#define DW_OP_breg19                   0x83
-#define DW_OP_breg20                   0x84
-#define DW_OP_breg21                   0x85
-#define DW_OP_breg22                   0x86
-#define DW_OP_breg23                   0x87
-#define DW_OP_breg24                   0x88
-#define DW_OP_breg25                   0x89
-#define DW_OP_breg26                   0x8a
-#define DW_OP_breg27                   0x8b
-#define DW_OP_breg28                   0x8c
-#define DW_OP_breg29                   0x8d
-#define DW_OP_breg30                   0x8e
-#define DW_OP_breg31                   0x8f
-#define DW_OP_regx                     0x90
-#define DW_OP_fbreg                    0x91
-#define DW_OP_bregx                    0x92
-#define DW_OP_piece                    0x93
-#define DW_OP_deref_size               0x94
-#define DW_OP_xderef_size              0x95
-#define DW_OP_nop                      0x96
-#define DW_OP_push_object_address      0x97
-#define DW_OP_call2                    0x98
-#define DW_OP_call4                    0x99
-#define DW_OP_calli                    0x9a
-#define DW_OP_lo_user                  0x80
-#define DW_OP_hi_user                  0xff
-
-#define DW_ATE_void                    0x0
-#define DW_ATE_address                 0x1
-#define DW_ATE_boolean                 0x2
-#define DW_ATE_complex_float           0x3
-#define DW_ATE_float                   0x4
-#define DW_ATE_signed                  0x5
-#define DW_ATE_signed_char             0x6
-#define DW_ATE_unsigned                        0x7
-#define DW_ATE_unsigned_char           0x8
-#define DW_ATE_imaginary_float         0x9
-#define        DW_ATE_lo_user                  0x80
-#define        DW_ATE_hi_user                  0xff
-
-#define DW_ORD_row_major               0x0
-#define DW_ORD_col_major               0x1
-
-#define DW_ACCESS_public               0x1
-#define DW_ACCESS_protected            0x2
-#define DW_ACCESS_private              0x3
-
-#define DW_VIS_local                   0x1
-#define DW_VIS_exported                        0x2
-#define DW_VIS_qualified               0x3
-
-#define DW_VIRTUALITY_none             0x0
-#define DW_VIRTUALITY_virtual          0x1
-#define DW_VIRTUALITY_pure_virtual     0x2
-
-#define DW_ID_case_sensitive           0x0
-#define DW_ID_up_case                  0x1
-#define DW_ID_down_case                        0x2
-#define DW_ID_case_insensitive         0x3
-
-#define DW_CC_normal                   0x1
-#define DW_CC_program                  0x2
-#define DW_CC_nocall                   0x3
-#define DW_CC_lo_user                  0x40
-#define DW_CC_hi_user                  0xff
-
-#define DW_INL_not_inlined             0x0
-#define DW_INL_inlined                 0x1
-#define DW_INL_declared_not_inlined    0x2
-#define DW_INL_declared_inlined                0x3
-
-#define DW_DSC_label                   0x0
-#define DW_DSC_range                   0x1
-
-#define DW_LNS_extended_op             0x0
-#define DW_LNS_copy                    0x1
-#define DW_LNS_advance_pc              0x2
-#define DW_LNS_advance_line            0x3
-#define DW_LNS_set_file                        0x4
-#define DW_LNS_set_column              0x5
-#define DW_LNS_negate_stmt             0x6
-#define DW_LNS_set_basic_block         0x7
-#define DW_LNS_const_add_pc            0x8
-#define DW_LNS_fixed_advance_pc                0x9
-
-#define DW_LNE_end_sequence            0x1
-#define DW_LNE_set_address             0x2
-#define DW_LNE_define_file             0x3
-
-#define DW_CFA_advance_loc             0x40
-#define DW_CFA_offset                  0x80
-#define DW_CFA_restore                 0xc0
-#define DW_CFA_nop                     0x00
-#define DW_CFA_set_loc                 0x01
-#define DW_CFA_advance_loc1            0x02
-#define DW_CFA_advance_loc2            0x03
-#define DW_CFA_advance_loc4            0x04
-#define DW_CFA_offset_extended         0x05
-#define DW_CFA_restore_extended                0x06
-#define DW_CFA_undefined               0x07
-#define DW_CFA_same_value              0x08
-#define DW_CFA_register                        0x09
-#define DW_CFA_remember_state          0x0a
-#define DW_CFA_restore_state           0x0b
-#define DW_CFA_def_cfa                 0x0c
-#define DW_CFA_def_cfa_register                0x0d
-#define DW_CFA_def_cfa_offset          0x0e
-#define DW_CFA_def_cfa_expression      0x0f
-#define DW_CFA_expression              0x10
-#define DW_CFA_offset_extended_sf      0x11
-#define DW_CFA_def_cfa_sf              0x12
-#define DW_CFA_def_cfa_offset_sf       0x13
-#define DW_CFA_MIPS_advance_loc8       0x1d
-#define DW_CFA_GNU_window_save         0x2d
-#define DW_CFA_GNU_args_size           0x2e
-#define DW_CFA_GNU_negative_offset_extended 0x2f
-
-#define DW_CIE_ID                      0xffffffff
-#define DW_CIE_VERSION                 1
-
-#define DW_CFA_extended                0
-#define DW_CFA_low_user                0x1c
-#define DW_CFA_high_user               0x3f
-
-#define DW_CHILDREN_no                 0x00
-#define DW_CHILDREN_yes                        0x01
-
-#define DW_ADDR_none                   0
-
-#define DW_LANG_C89                    0x0001
-#define DW_LANG_C                      0x0002
-#define DW_LANG_Ada83                  0x0003
-#define DW_LANG_C_plus_plus            0x0004
-#define DW_LANG_Cobol74                        0x0005
-#define DW_LANG_Cobol85                        0x0006
-#define DW_LANG_Fortran77              0x0007
-#define DW_LANG_Fortran90              0x0008
-#define DW_LANG_Pascal83               0x0009
-#define DW_LANG_Modula2                        0x000a
-#define DW_LANG_Java                   0x000b
-#define DW_LANG_C99                    0x000c
-#define DW_LANG_Ada95                  0x000d
-#define DW_LANG_Fortran95              0x000e
-#define DW_LANG_Mips_Assembler         0x8001
-#define DW_LANG_lo_user                        0x8000
-#define DW_LANG_hi_user                        0xffff
-
-#define DW_MACINFO_define              1
-#define DW_MACINFO_undef               2
-#define DW_MACINFO_start_file          3
-#define DW_MACINFO_end_file            4
-#define DW_MACINFO_vendor_ext          255