summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2012-01-25 19:28:35 +0000
committerMike Frysinger <vapier@gentoo.org>2012-01-25 19:28:35 +0000
commitf1b49e80df13100837170281563de4faacbc7e53 (patch)
tree805b4f300cc3499c8e8a843b4d768868cd35e81e /dev-util/debugedit
parentRemove old. (diff)
downloadhistorical-f1b49e80df13100837170281563de4faacbc7e53.tar.gz
historical-f1b49e80df13100837170281563de4faacbc7e53.tar.bz2
historical-f1b49e80df13100837170281563de4faacbc7e53.zip
Add DWARF 4 support #400663 by Francesco Riosa.
Package-Manager: portage-2.2.0_alpha84/cvs/Linux x86_64
Diffstat (limited to 'dev-util/debugedit')
-rw-r--r--dev-util/debugedit/ChangeLog10
-rw-r--r--dev-util/debugedit/Manifest22
-rw-r--r--dev-util/debugedit/debugedit-5.3.5-r1.ebuild39
-rw-r--r--dev-util/debugedit/files/debugedit-5.3.5-DWARF-4.patch129
4 files changed, 193 insertions, 7 deletions
diff --git a/dev-util/debugedit/ChangeLog b/dev-util/debugedit/ChangeLog
index 3576450f0a67..d8b5906a3290 100644
--- a/dev-util/debugedit/ChangeLog
+++ b/dev-util/debugedit/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-util/debugedit
-# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-util/debugedit/ChangeLog,v 1.23 2011/10/11 03:53:15 vapier Exp $
+# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/dev-util/debugedit/ChangeLog,v 1.24 2012/01/25 19:28:35 vapier Exp $
+
+*debugedit-5.3.5-r1 (25 Jan 2012)
+
+ 25 Jan 2012; Mike Frysinger <vapier@gentoo.org> +debugedit-5.3.5-r1.ebuild,
+ +files/debugedit-5.3.5-DWARF-4.patch:
+ Add DWARF 4 support #400663 by Francesco Riosa.
*debugedit-5.3.5 (11 Oct 2011)
diff --git a/dev-util/debugedit/Manifest b/dev-util/debugedit/Manifest
index fb0d9153f799..a4d5606fb536 100644
--- a/dev-util/debugedit/Manifest
+++ b/dev-util/debugedit/Manifest
@@ -1,11 +1,12 @@
-----BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA256
+Hash: SHA1
AUX Makefile 143 RMD160 c1df745f249089b6aa065267262025435b1cfcd7 SHA1 37d69678ec655a876c6cdea80a7b0058620a7c9f SHA256 36e9d1c153b6dea6f2b337f0aa2749e207f38e4cf438d144f38b01e1e500719a
AUX debugedit-4.4.6-busted-paths-with-O0.patch 1218 RMD160 603fdb3c1c29330cc48b62a6f9fe43a43883e1ff SHA1 6dc49656a7256ec379aa78f2a344c6ba37b95991 SHA256 c531944294a74cd9cca78c1373344d94cc060b144f61569a09b614c158449226
AUX debugedit-4.4.6-update.patch 18333 RMD160 85da8ca03e345ea85c4b894d0d7a534e3c1675ed SHA1 bbb0bff7e02a58ef70cb059b14ec71e032d84076 SHA256 455c4eb382aaf738ffd6e20c4e1f870610e3b8150f22d18fe068bbb30d3c21ec
AUX debugedit-5.1.9-DWARF-3.patch 4564 RMD160 ace4e5097d5ed332f844e24dfa72f62f85dd9960 SHA1 426f10a6c5642f43b7635070b016405c15ca27ce SHA256 05c8a110fbb068c9c38f72e07b6a47f31734a6d0ae21e06d01db1d2f1508e7bd
AUX debugedit-5.1.9-cleanup.patch 834 RMD160 abf2b20352793f16bbc2096d65e7950bfd6dd9d6 SHA1 fb30cb317964def716406a74fd058bb205c89c4b SHA256 07d83524702c0ead29231034c139a738da813c53d14cc0cca14610bad25b0528
+AUX debugedit-5.3.5-DWARF-4.patch 3235 RMD160 9990979f475bac8b70f944f693dc81d3fff49212 SHA1 cbaa34aafc6f13715fb61a623258c0b6b840ec0e SHA256 ab01e2a5fe5e77ba5254858d2cc800d7129cb932498f43866a02d5842675d6bd
AUX update.sh 1347 RMD160 002b51e0b64e8bd31138ae5f6e185af9b8f0b026 SHA1 4e13874e1ab0916ef719a7cc221f61b5093fc132 SHA256 f016dceb61db33afec000ccc7330f6765bd9bdebb9a6bf8d90be7ad5e1ef2772
DIST debugedit-4.4.6.tar.bz2 12924 RMD160 9007f16ed6a0052b5d2b29869a5ba1284f0e8520 SHA1 2700cd510b3a662e57b8ab15514cd63deeea1aa0 SHA256 33700d88de1dce201bcded9b43789bc352b9edce1c020ada0ac417bf88c3acb4
DIST debugedit-5.1.9.tar.bz2 14682 RMD160 5df8e5f0720ba1090043cb42e50897b5f600fca4 SHA1 0707bfbf58d1f0df2510499b7904ac2c81fa5982 SHA256 36336b7f6b7eec442d62ac44f902c9367311e32ecc53c6627af0f07069416537
@@ -14,13 +15,24 @@ EBUILD debugedit-4.4.6-r1.ebuild 730 RMD160 fc54ce7926d77bef4d8b46ff27ead33b1f79
EBUILD debugedit-4.4.6-r2.ebuild 778 RMD160 64a07c3c09f4dbd2d9f3ce91677710053ad0b07e SHA1 a8cc68e7205122ff32d5d46939e1459edd6e8a8b SHA256 abb917529aa53d519ade4c416260956bd058d7c8b2bf1dc03a4c0ea518d018b2
EBUILD debugedit-4.4.6.ebuild 614 RMD160 6a4bedeca8b83d7d25f1f6a8c35abfdc9b325535 SHA1 74b700ba0e88037b8daf6e4c012931f2e34b3099 SHA256 0ccd415632c9dee64e8013a68817c56f717b09ff75e3bb0355057ea3ff66d7f0
EBUILD debugedit-5.1.9.ebuild 885 RMD160 d0a042ac2c4a8a8d2a2f6981cc037202a5e5801d SHA1 ef818850c0717b347bfe9aab63a334bf77cb2141 SHA256 36bc32c0e604cb19b854373bd6d42893ca2169883c90cec505bf8cc324407eea
+EBUILD debugedit-5.3.5-r1.ebuild 946 RMD160 3902aaf791f7991e7cccf2b33bb3d5883c8fca92 SHA1 ee765d40678527c1f266eba55b84500866c2c658 SHA256 7a2a036833fc73e3e1631a9f3d3fa8f9bbc3a9d84353fba974b8ead5f8eea621
EBUILD debugedit-5.3.5.ebuild 861 RMD160 b80ebe89c8e447356283b39e3fc2e67f9c788a50 SHA1 f0ee6d9ef08f2e20273c0706b52d44c870069130 SHA256 b26b2e37c320d2450e11253ae1e0b1ddaa24c35ef8bd9a7593b896d405726194
-MISC ChangeLog 3516 RMD160 ca9948e29e46c9351d61e769176384d19d2d22cd SHA1 211c1174d87916025db786d175806bd2b2658f71 SHA256 3daf4c95f5190d973696ee523808022355ba5dc14a63c148bdd3c43cf33312a2
+MISC ChangeLog 3720 RMD160 bac4b7e2bc4087ebcb2636b7ec03d4b4bf217b78 SHA1 d354b51715f64fba05ec9f52bcbd81e76d238f0a SHA256 5df51a48b3b2e9ddacde8558afccb5ee960a129a48be904aab60ed5cb63d96ab
MISC metadata.xml 226 RMD160 b2192c6ce03b28834b099510aaae7ada4dcdbb1b SHA1 829c58e565bc35aa8038f2d80cde2e6f59004115 SHA256 f7c1a9de82faf914b31af5c151f57cf187f0a2cc751527dcdac278440825c3ea
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.18 (GNU/Linux)
-iF4EAREIAAYFAk6TvbMACgkQaC/OocHi7JZpqAEAjynm6LQl7ejs+VKNRtCStp+V
-mwrz9Yqahn1n1RzAneAA/2AYB2DSNX06MrFqmCK8RY54fXkkQ6uiEuusO3CQCBPR
-=ofVb
+iQIcBAEBAgAGBQJPIFgWAAoJELEHsLL7fEFWaM4P/0JjZpK8j7KxswNR42YKTEFj
+yBPN6NTqjh97kg4dcCGs01h4m6Q3wZ7UY2wjEbJAxlGpR7igAb1Oy4MWrv8knite
+pcC1+5Gmm3WYC7bzXHATfI+hdzKiJbcE5NX/L53MKpFaacJSl4l1S+Omy9kCWxFD
+4DT+dEbaVuuaxdhdB50isgRZ9MxKAyD3zLVc/PEQqK7cFia3b1EhHFPkjlkLBQAP
+YxdlOjEVPXKjBYwSsE9cXFbBn34CMYKNVp+b83NYqpGqBtfgAD8XoyDWoeiAvfRC
+1MvJ2Ef4aj5skX/zH3O3SQyeK4unB933tcUhwZ/YCRtpWiy8GT9dQ9sqN5PGJfoR
+hq2I0kHjspV6yA1GcJJnjmS4lkQUuod/o/VEyAo+uo4puWcEm70LFQiC/0yUJlhO
+utjXs/+1loUWjjnQRNP0mMOcQWwA0zDOcg+Z4JKxAcs7+SGPl2Sh/4gkMUl7ix95
+A9YiUX6FpQztUcGtrihzCswfUC3ZNlLHScMq3T9jNSto4wYsWo8OfuOVfaRTGxRJ
+ea51qoXCe5bRTFudlZMhIGxXXiEcSeK0Nw3/tZWQBCfeWNwa4bB3/p2Kakor3zGR
+7mzeOXNL6+VMUcJwHTVwrG9E6eCpdauAnmsP9MxlJg3GPXVwJkb7oRAiM1/cMAwR
+MTYyeIVAMwkxKPK4Ov24
+=XRXJ
-----END PGP SIGNATURE-----
diff --git a/dev-util/debugedit/debugedit-5.3.5-r1.ebuild b/dev-util/debugedit/debugedit-5.3.5-r1.ebuild
new file mode 100644
index 000000000000..97ea375dad3c
--- /dev/null
+++ b/dev-util/debugedit/debugedit-5.3.5-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-util/debugedit/debugedit-5.3.5-r1.ebuild,v 1.1 2012/01/25 19:28:35 vapier Exp $
+
+# To recreate this tarball, just grab latest rpm5 release:
+# http://rpm5.org/files/rpm/
+# The files are in tools/
+# Or see $FILESDIR/update.sh
+
+EAPI="2"
+
+inherit toolchain-funcs eutils
+
+DESCRIPTION="standalone debugedit taken from rpm"
+HOMEPAGE="http://www.rpm5.org/"
+SRC_URI="http://dev.gentoo.org/~swegener/distfiles/${P}.tar.bz2
+ http://dev.gentoo.org/~vapier/distfiles/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+DEPEND="dev-libs/popt
+ dev-libs/elfutils
+ dev-libs/beecrypt"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-5.3.5-DWARF-4.patch #400663
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" || die
+}
+
+src_install() {
+ dobin debugedit || die
+}
diff --git a/dev-util/debugedit/files/debugedit-5.3.5-DWARF-4.patch b/dev-util/debugedit/files/debugedit-5.3.5-DWARF-4.patch
new file mode 100644
index 000000000000..3e1406196e9b
--- /dev/null
+++ b/dev-util/debugedit/files/debugedit-5.3.5-DWARF-4.patch
@@ -0,0 +1,129 @@
+add DWARF 4 support
+
+https://bugs.gentoo.org/400663
+https://bugzilla.redhat.com/show_bug.cgi?id=707677
+
+--- debugedit-5.3.5/debugedit.c 2011-10-11 05:37:49.000000000 +0200
++++ debugedit-5.3.5/debugedit.c 2012-01-25 01:27:23.487999039 +0100
+@@ -70,6 +70,10 @@
+ #include <rpmtag.h>
+
+ #define DW_TAG_partial_unit 0x3c
++#define DW_FORM_sec_offset 0x17
++#define DW_FORM_exprloc 0x18
++#define DW_FORM_flag_present 0x19
++#define DW_FORM_ref_sig8 0x20
+
+ char *base_dir = NULL;
+ char *dest_dir = NULL;
+@@ -246,6 +250,7 @@
+ #define DEBUG_STR 8
+ #define DEBUG_FRAME 9
+ #define DEBUG_RANGES 10
++#define DEBUG_TYPES 11
+ { ".debug_info", NULL, NULL, 0, 0, 0 },
+ { ".debug_abbrev", NULL, NULL, 0, 0, 0 },
+ { ".debug_line", NULL, NULL, 0, 0, 0 },
+@@ -257,6 +262,7 @@
+ { ".debug_str", NULL, NULL, 0, 0, 0 },
+ { ".debug_frame", NULL, NULL, 0, 0, 0 },
+ { ".debug_ranges", NULL, NULL, 0, 0, 0 },
++ { ".debug_types", NULL, NULL, 0, 0, 0 },
+ { NULL, NULL, NULL, 0, 0, 0 }
+ };
+
+@@ -349,7 +355,8 @@
+ goto no_memory;
+ }
+ form = read_uleb128 (ptr);
+- if (form == 2 || form > DW_FORM_indirect)
++ if (form == 2
++ || (form > DW_FORM_flag_present && form != DW_FORM_ref_sig8))
+ {
+ error (0, 0, "%s: Unknown DWARF DW_FORM_%d", dso->filename, form);
+ htab_delete (h);
+@@ -378,7 +385,6 @@
+ canonicalize_path (const char *s, char *d)
+ {
+ char *rv = d;
+- const char *sroot;
+ char *droot;
+
+ if (IS_DIR_SEPARATOR (*s))
+@@ -394,7 +400,6 @@
+ s++;
+ }
+ droot = d;
+- sroot = s;
+
+ while (*s)
+ {
+@@ -513,7 +518,7 @@
+ }
+
+ value = read_16 (ptr);
+- if (value != 2 && value != 3)
++ if (value != 2 && value != 3 && value != 4)
+ {
+ error (0, 0, "%s: DWARF version %d unhandled", dso->filename,
+ value);
+@@ -529,8 +534,8 @@
+ return 1;
+ }
+
+- opcode_base = ptr[4];
+- ptr = dir = ptr + 4 + opcode_base;
++ opcode_base = ptr[4 + (value >= 4)];
++ ptr = dir = ptr + 4 + (value >= 4) + opcode_base;
+
+ /* dir table: */
+ value = 1;
+@@ -758,7 +763,8 @@
+ {
+ if (t->attr[i].attr == DW_AT_stmt_list)
+ {
+- if (form == DW_FORM_data4)
++ if (form == DW_FORM_data4
++ || form == DW_FORM_sec_offset)
+ {
+ list_offs = do_read_32_relocated (ptr);
+ found_list_offs = 1;
+@@ -864,6 +870,8 @@
+ else
+ ptr += 4;
+ break;
++ case DW_FORM_flag_present:
++ break;
+ case DW_FORM_addr:
+ ptr += ptr_size;
+ break;
+@@ -878,10 +886,12 @@
+ break;
+ case DW_FORM_ref4:
+ case DW_FORM_data4:
++ case DW_FORM_sec_offset:
+ ptr += 4;
+ break;
+ case DW_FORM_ref8:
+ case DW_FORM_data8:
++ case DW_FORM_ref_sig8:
+ ptr += 8;
+ break;
+ case DW_FORM_sdata:
+@@ -910,6 +920,7 @@
+ form = DW_FORM_block1;
+ break;
+ case DW_FORM_block:
++ case DW_FORM_exprloc:
+ len = read_uleb128 (ptr);
+ form = DW_FORM_block1;
+ assert (len < UINT_MAX);
+@@ -1213,7 +1224,7 @@
+ }
+
+ cu_version = read_16 (ptr);
+- if (cu_version != 2 && cu_version != 3)
++ if (cu_version != 2 && cu_version != 3 && cu_version != 4)
+ {
+ error (0, 0, "%s: DWARF version %d unhandled", dso->filename,
+ cu_version);