summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2005-12-02 22:35:43 +0000
committerMike Frysinger <vapier@gentoo.org>2005-12-02 22:35:43 +0000
commita37fb3fd4b54df122241fdedd07a4aafbf34fed1 (patch)
tree36abf9a08554d603498c688b3973c524ed7fce13 /sys-devel
parentStable on x86 (diff)
downloadhistorical-a37fb3fd4b54df122241fdedd07a4aafbf34fed1.tar.gz
historical-a37fb3fd4b54df122241fdedd07a4aafbf34fed1.tar.bz2
historical-a37fb3fd4b54df122241fdedd07a4aafbf34fed1.zip
Version bump.
Package-Manager: portage-2.0.53
Diffstat (limited to 'sys-devel')
-rw-r--r--sys-devel/gdb/ChangeLog9
-rw-r--r--sys-devel/gdb/Manifest10
-rw-r--r--sys-devel/gdb/files/digest-gdb-6.42
-rw-r--r--sys-devel/gdb/files/gdb-6.4-relative-paths.patch90
-rw-r--r--sys-devel/gdb/files/gdb-6.4-uclibc.patch78
-rw-r--r--sys-devel/gdb/gdb-6.4.ebuild111
6 files changed, 299 insertions, 1 deletions
diff --git a/sys-devel/gdb/ChangeLog b/sys-devel/gdb/ChangeLog
index c88930def320..6509889263cd 100644
--- a/sys-devel/gdb/ChangeLog
+++ b/sys-devel/gdb/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for sys-devel/gdb
# Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/gdb/ChangeLog,v 1.79 2005/07/16 11:01:20 kugelfang Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/gdb/ChangeLog,v 1.80 2005/12/02 22:35:43 vapier Exp $
+
+*gdb-6.4 (02 Dec 2005)
+
+ 02 Dec 2005; Mike Frysinger <vapier@gentoo.org>
+ +files/gdb-6.4-relative-paths.patch, +files/gdb-6.4-uclibc.patch,
+ +gdb-6.4.ebuild:
+ Version bump.
16 Jul 2005; Danny van Dyk <kugelfang@gentoo.org> gdb-6.3-r4.ebuild:
Marked s390.
diff --git a/sys-devel/gdb/Manifest b/sys-devel/gdb/Manifest
index 26434708ab49..63ce01714081 100644
--- a/sys-devel/gdb/Manifest
+++ b/sys-devel/gdb/Manifest
@@ -1,3 +1,6 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
MD5 99ec514508a754a05a58362f597d19e4 ChangeLog 11663
MD5 d3ab2683d88b3cbecb8a9faa439703a1 files/bfd-malloc-wrap.patch 782
MD5 460629563df21e6a68b8941c07d4f30b files/digest-gdb-6.1 131
@@ -28,3 +31,10 @@ MD5 fb4ab4aaccb90b523c650a5f30d02281 gdb-6.2.1.ebuild 1784
MD5 20334b11833489b3bcc13c0fea645a1d gdb-6.3-r4.ebuild 2983
MD5 382ce2e993834ceae978f4208400e7c6 gdb-6.4.ebuild 2969
MD5 567094e03359ffc1c95af7356395228d metadata.xml 162
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.2 (GNU/Linux)
+
+iD8DBQFDkMzagIKl8Uu19MoRAltoAJ4jpEAW2o9fekeE2RSUmx4QI9SqZACfUNBB
+qhRObdGTQAedPEwweyBQsJ4=
+=hGJV
+-----END PGP SIGNATURE-----
diff --git a/sys-devel/gdb/files/digest-gdb-6.4 b/sys-devel/gdb/files/digest-gdb-6.4
new file mode 100644
index 000000000000..701f64eee627
--- /dev/null
+++ b/sys-devel/gdb/files/digest-gdb-6.4
@@ -0,0 +1,2 @@
+MD5 f62c14ba0316bc88e1b4b32a4e901ffb gdb-6.4.tar.bz2 13917226
+MD5 35e70c29e393433b3847527d808f59c2 gdb_init.txt.bz2 6247
diff --git a/sys-devel/gdb/files/gdb-6.4-relative-paths.patch b/sys-devel/gdb/files/gdb-6.4-relative-paths.patch
new file mode 100644
index 000000000000..f8d3e37b7b2c
--- /dev/null
+++ b/sys-devel/gdb/files/gdb-6.4-relative-paths.patch
@@ -0,0 +1,90 @@
+--- gdb-6.4/gdb/dwarf2read.c
++++ gdb-6.4/gdb/dwarf2read.c
+@@ -838,7 +838,7 @@ static struct line_header *(dwarf_decode
+ static void dwarf_decode_lines (struct line_header *, char *, bfd *,
+ struct dwarf2_cu *, struct partial_symtab *);
+
+-static void dwarf2_start_subfile (char *, char *);
++static void dwarf2_start_subfile (char *, char *, char *);
+
+ static struct symbol *new_symbol (struct die_info *, struct type *,
+ struct dwarf2_cu *);
+@@ -6474,13 +6474,11 @@ dwarf_decode_lines (struct line_header *
+ directory and file name numbers in the statement program
+ are 1-based. */
+ struct file_entry *fe = &lh->file_names[file - 1];
+- char *dir;
++ char *dir = NULL;
+
+ if (fe->dir_index)
+ dir = lh->include_dirs[fe->dir_index - 1];
+- else
+- dir = comp_dir;
+- dwarf2_start_subfile (fe->name, dir);
++ dwarf2_start_subfile (fe->name, dir, comp_dir);
+ }
+
+ /* Decode the table. */
+@@ -6582,7 +6580,7 @@ dwarf_decode_lines (struct line_header *
+ else
+ dir = comp_dir;
+ if (!decode_for_pst_p)
+- dwarf2_start_subfile (fe->name, dir);
++ dwarf2_start_subfile (fe->name, dir, comp_dir);
+ }
+ break;
+ case DW_LNS_set_column:
+@@ -6662,7 +6660,8 @@ dwarf_decode_lines (struct line_header *
+
+ /* Start a subfile for DWARF. FILENAME is the name of the file and
+ DIRNAME the name of the source directory which contains FILENAME
+- or NULL if not known.
++ or NULL if not known. COMP_DIR is the value of DW_AT_comp_dir. If
++ DIRNAME specifies a relative path, it is appended to COMP_DIR.
+ This routine tries to keep line numbers from identical absolute and
+ relative file names in a common subfile.
+
+@@ -6681,8 +6680,19 @@ dwarf_decode_lines (struct line_header *
+ subfile, so that `break /srcdir/list0.c:1' works as expected. */
+
+ static void
+-dwarf2_start_subfile (char *filename, char *dirname)
++dwarf2_start_subfile (char *filename, char *dirname, char *comp_dir)
+ {
++ struct cleanup *back_to = make_cleanup (null_cleanup, 0);
++
++ /* If we have a relative dirname, append it to comp_dir. */
++ if (dirname != NULL && !IS_ABSOLUTE_PATH (dirname) && comp_dir != NULL)
++ {
++ dirname = concat (comp_dir, "/", dirname, NULL);
++ make_cleanup (xfree, dirname);
++ }
++ else if (dirname == NULL)
++ dirname = comp_dir;
++
+ /* If the filename isn't absolute, try to match an existing subfile
+ with the full pathname. */
+
+@@ -6690,19 +6700,20 @@ dwarf2_start_subfile (char *filename, ch
+ {
+ struct subfile *subfile;
+ char *fullname = concat (dirname, "/", filename, (char *)NULL);
++ make_cleanup (xfree, fullname);
+
+ for (subfile = subfiles; subfile; subfile = subfile->next)
+ {
+ if (FILENAME_CMP (subfile->name, fullname) == 0)
+ {
+ current_subfile = subfile;
+- xfree (fullname);
++ do_cleanups (back_to);
+ return;
+ }
+ }
+- xfree (fullname);
+ }
+ start_subfile (filename, dirname);
++ do_cleanups (back_to);
+ }
+
+ static void
diff --git a/sys-devel/gdb/files/gdb-6.4-uclibc.patch b/sys-devel/gdb/files/gdb-6.4-uclibc.patch
new file mode 100644
index 000000000000..9d8fd4e69c95
--- /dev/null
+++ b/sys-devel/gdb/files/gdb-6.4-uclibc.patch
@@ -0,0 +1,78 @@
+--- gdb-6.3/bfd/configure.orig Fri Oct 8 16:53:56 2004
++++ gdb-6.3/bfd/configure Sun Feb 27 18:32:58 2005
+@@ -3583,6 +3583,11 @@
+ lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
+ ;;
+
++linux-uclibc*)
++ lt_cv_deplibs_check_method=pass_all
++ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
++ ;;
++
+ netbsd* | knetbsd*-gnu)
+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
+ lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
+--- gdb-6.3/libtool.m4.orig Wed Jul 21 21:21:41 2004
++++ gdb-6.3/libtool.m4 Mon Feb 28 00:08:11 2005
+@@ -653,6 +653,11 @@
+ fi
+ ;;
+
++linux-uclibc*)
++ lt_cv_deplibs_check_method=pass_all
++ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
++ ;;
++
+ newsos6)
+ [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)']
+ lt_cv_file_magic_cmd=/usr/bin/file
+--- gdb-6.3/ltconfig.orig Tue Oct 5 15:34:42 2004
++++ gdb-6.3/ltconfig Sun Feb 27 18:14:41 2005
+@@ -602,7 +602,7 @@
+
+ # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
+ case $host_os in
+-linux-gnu*) ;;
++linux-gnu*|linux-uclibc*) ;;
+ linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
+ esac
+
+@@ -1270,6 +1270,24 @@
+ dynamic_linker='GNU/Linux ld.so'
+ ;;
+
++linux-uclibc*)
++ version_type=linux
++ need_lib_prefix=no
++ need_version=no
++ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
++ soname_spec='${libname}${release}.so$major'
++ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
++ shlibpath_var=LD_LIBRARY_PATH
++ shlibpath_overrides_runpath=no
++ # This implies no fast_install, which is unacceptable.
++ # Some rework will be needed to allow for fast_install
++ # before this can be enabled.
++ # Note: copied from linux-gnu, and may not be appropriate.
++ hardcode_into_libs=yes
++ # Assume using the uClibc dynamic linker.
++ dynamic_linker="uClibc ld.so"
++ ;;
++
+ netbsd*)
+ need_lib_prefix=no
+ need_version=no
+--- gdb-6.3/opcodes/configure.orig Fri Sep 17 08:13:38 2004
++++ gdb-6.3/opcodes/configure Mon Feb 28 00:09:42 2005
+@@ -3595,6 +3595,11 @@
+ fi
+ ;;
+
++linux-uclibc*)
++ lt_cv_deplibs_check_method=pass_all
++ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
++ ;;
++
+ newsos6)
+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
+ lt_cv_file_magic_cmd=/usr/bin/file
diff --git a/sys-devel/gdb/gdb-6.4.ebuild b/sys-devel/gdb/gdb-6.4.ebuild
new file mode 100644
index 000000000000..d6cad6d66d09
--- /dev/null
+++ b/sys-devel/gdb/gdb-6.4.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/gdb/gdb-6.4.ebuild,v 1.1 2005/12/02 22:35:43 vapier Exp $
+
+inherit flag-o-matic eutils
+
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+ if [[ ${CATEGORY/cross-} != ${CATEGORY} ]] ; then
+ export CTARGET=${CATEGORY/cross-}
+ fi
+fi
+
+#DEB_VER=6
+DESCRIPTION="GNU debugger"
+HOMEPAGE="http://sources.redhat.com/gdb/"
+SRC_URI="http://ftp.gnu.org/gnu/gdb/${P}.tar.bz2
+ ftp://sources.redhat.com/pub/gdb/releases/${P}.tar.bz2
+ mirror://gentoo/gdb_init.txt.bz2"
+
+LICENSE="GPL-2 LGPL-2"
+[[ ${CTARGET} != ${CHOST} ]] \
+ && SLOT="${CTARGET}" \
+ || SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sparc x86"
+IUSE="nls test vanilla"
+
+RDEPEND=">=sys-libs/ncurses-5.2-r2"
+DEPEND="${RDEPEND}
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ mv "${WORKDIR}"/gdb_init.txt . || die
+
+ if ! use vanilla ; then
+ if [[ -n ${DEB_VER} ]] ; then
+ epatch "${WORKDIR}"/gdb_${PV}-${DEB_VER}.diff
+ for f in $(<debian/patches/series) ; do
+ EPATCH_SINGLE_MSG="Applying Debian's ${f}" \
+ epatch debian/patches/${f}
+ done
+ fi
+ epatch "${FILESDIR}"/gdb-6.4-uclibc.patch
+ epatch "${FILESDIR}"/gdb-6.4-relative-paths.patch
+ #epatch "${FILESDIR}"/gdb-6.x-crash.patch
+ epatch "${FILESDIR}"/gdb-6.2.1-pass-libdir.patch
+ #epatch "${FILESDIR}"/gdb-6.3-scanmem.patch
+ epatch "${FILESDIR}"/gdb-6.3-gdbinit-stat.patch
+ epatch "${FILESDIR}"/bfd-malloc-wrap.patch #91398
+
+ epatch "${FILESDIR}"/gdb-6.2.1-200-uclibc-readline-conf.patch
+ epatch "${FILESDIR}"/gdb-6.2.1-400-mips-coredump.patch
+ epatch "${FILESDIR}"/gdb-6.2.1-libiberty-pic.patch
+ fi
+
+ strip-linguas -u bfd/po opcodes/po
+}
+
+src_compile() {
+ replace-flags -O? -O2
+ econf $(use_enable nls) || die
+ emake -j1 || die
+}
+
+src_test() {
+ make check || ewarn "tests failed"
+}
+
+src_install() {
+ make \
+ prefix="${D}"/usr \
+ mandir="${D}"/usr/share/man \
+ infodir="${D}"/usr/share/info \
+ libdir="${D}"/nukeme includedir="${D}"/nukeme \
+ install || die "install"
+ # The includes and libs are in binutils already
+ rm -r "${D}"/nukeme
+
+ # Don't install docs when building a cross-gdb
+ if [[ ${CTARGET} != ${CHOST} ]] ; then
+ rm -r "${D}"/usr/share
+ return 0
+ fi
+
+ dodoc README
+ docinto gdb
+ dodoc gdb/CONTRIBUTE gdb/README gdb/MAINTAINERS \
+ gdb/NEWS gdb/ChangeLog* gdb/TODO
+ docinto sim
+ dodoc sim/ChangeLog sim/MAINTAINERS sim/README-HACKING
+ docinto mmalloc
+ dodoc mmalloc/MAINTAINERS mmalloc/ChangeLog mmalloc/TODO
+
+ if use x86 ; then
+ dodir /etc/skel/
+ cp "${S}"/gdb_init.txt "${D}"/etc/skel/.gdbinit \
+ || die "install ${D}/etc/skel/.gdbinit"
+ fi
+
+ if ! has noinfo ${FEATURES} ; then
+ make \
+ infodir="${D}"/usr/share/info \
+ install-info \
+ || die "install doc info"
+ # Remove shared info pages
+ rm -f "${D}"/usr/share/info/{annotate,bfd,configure,standards}.info*
+ fi
+}