Merge live/non-live ebuilds, fix up USE="-client -server" behavior, and handle gdbser...
authorMike Frysinger <vapier@gentoo.org>
Mon, 2 Jan 2012 05:42:56 +0000 (05:42 +0000)
committerMike Frysinger <vapier@gentoo.org>
Mon, 2 Jan 2012 05:42:56 +0000 (05:42 +0000)
Package-Manager: portage-2.2.0_alpha81/cvs/Linux x86_64

sys-devel/gdb/ChangeLog
sys-devel/gdb/Manifest
sys-devel/gdb/gdb-7.3.1-r1.ebuild
sys-devel/gdb/gdb-9999.ebuild

index 710e38394a2ab68a82f9a6c0d8d1968659d7e851..e087f3a0d97dd39bd0735d807b1373ca076d8cc9 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for sys-devel/gdb
 # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/gdb/ChangeLog,v 1.200 2012/01/01 19:45:57 grobian Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/gdb/ChangeLog,v 1.201 2012/01/02 05:42:56 vapier Exp $
+
+  02 Jan 2012; Mike Frysinger <vapier@gentoo.org> gdb-7.3.1-r1.ebuild,
+  gdb-9999.ebuild:
+  Merge live/non-live ebuilds, fix up USE="-client -server" behavior, and
+  handle gdbserver better in unsupported configurations #396697 by Thomas
+  Sachau.
 
   01 Jan 2012; Fabian Groffen <grobian@gentoo.org> gdb-7.3.1-r1.ebuild:
   Remove/check existing files (wrt Prefix offset)
index 8752dbaf3841b3f9be494a79e56a691462ed59a7..f4560d9b46ccc9acb5c948da7121d01d62cad00e 100644 (file)
@@ -27,16 +27,26 @@ EBUILD gdb-7.0.1.ebuild 2662 RMD160 b0b28b127070a76420944c4b33bed46f73bf79b3 SHA
 EBUILD gdb-7.1.ebuild 2621 RMD160 11f84a78dbe93023ad5ee5cb726284f84bba8d3b SHA1 288f227938c607bc551e190a80a2e460e2be6e21 SHA256 46ba95a663ac81bfdb61b43f0b19ab05ae6f287fdd49a5174f492fe1cf5aca36
 EBUILD gdb-7.2.50.20101117.4.15.ebuild 3089 RMD160 b6ecd83162d74f5977678a1b48625949a2ef897b SHA1 0b73196b1914b7a4aaebc07f96c20ab293bd80bc SHA256 8f4c0108099ddc82cafd77896a1fa1b07a30f0bfec02909d61a84b9b93b070fc
 EBUILD gdb-7.2.ebuild 3498 RMD160 97d6ae6747660a07b8587d1c9bd92d99fb4261b4 SHA1 60236219e3e25cc8df44735fd45668d0b222e1d1 SHA256 72398724872bd5cd6c5a2b7d5881f8958bcc8958fdbcbb59e2772005cb964817
-EBUILD gdb-7.3.1-r1.ebuild 4458 RMD160 7da6052a68aa11e1b2f02705902787c957a087c7 SHA1 b3701a7fb33aa9e487547ae7ae935af79a119da7 SHA256 1fcd74ebe4a474b34a14fbb756b6dbbd2b6bc57b1f74be3fc8f77aab0033cabe
+EBUILD gdb-7.3.1-r1.ebuild 5063 RMD160 abafce9c0993a0c1e0817abe7b1b08dd2c4e3979 SHA1 61c8d001f812e7b2af62106b8392fd41bfd1c3dc SHA256 42c19b0f910f361849d77a8badb03ba1c7a201b82285adbadfc058a18e6fa3c3
 EBUILD gdb-7.3.1.ebuild 3887 RMD160 3c8edb3a2deea0ca7d9153bc17a86837f1470fe6 SHA1 5860f1f2476cc527ee0277d5cc29477718acebe4 SHA256 ffaac3abdfa456236a171eadb73350c46e3935598330c0f68de3ca6c88deac0a
 EBUILD gdb-7.3.ebuild 3801 RMD160 59f24f3a7276a440fc4162863d52706febadea9b SHA1 a0a4aa9d51c7e5396d53e40536117b6c86277c30 SHA256 69aa29131061561ec60165e2f65e74a897ae2a5f51799ddce2c048a7a6606855
-EBUILD gdb-9999.ebuild 3801 RMD160 e7ad051337c709d27a054496add98dfd0ae6c4d4 SHA1 558f566e9ca3759cb6fe5207824c93cc16544c88 SHA256 6f1274be5a450413e0e3397af32b767f8ee145083e2b4b45892ffe05d713b77d
-MISC ChangeLog 26632 RMD160 8f7911c5f3a0c54f7bce2787af77b277b2844b6b SHA1 ebbc74ff5fdf2b4ddfc390f9bd3fbee6eabdfb04 SHA256 200ca2e5f4b8cbf693ebc13410b9b8340663b2b1e24846d8d8dae47e5f970f33
+EBUILD gdb-9999.ebuild 5058 RMD160 cc6ea92417a331461b8f3b4f21e553bc834fc2a0 SHA1 702c2e0652d0507e50e6072aa8466849f41690a8 SHA256 f919c5dbfc58067864e3a50fed27beba76f0ed06732d0eb1e46398f7bbfaf8ce
+MISC ChangeLog 26880 RMD160 7b79bfe9169b91dae6d11bae760e24872f3c13c7 SHA1 74be28467db5dc0c0a1b95068b5287f985b5a143 SHA256 6b2900e17e13c1fca16615e0e311db00050a70d0055f62eed17bd607f57d7f73
 MISC metadata.xml 552 RMD160 05c46fb5af7dc382b5977a47dac90f077ddf7b68 SHA1 2aab7d540d4b18a618bf34d962c63ae9f7e18aed SHA256 e86791dadf315a7a079e460854bcc4a28d7c69a93694efc85014b325824b81cf
 -----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.18 (Darwin)
+Version: GnuPG v2.0.18 (GNU/Linux)
 
-iEYEARECAAYFAk8At/oACgkQX3X2B8XHTokj/gCgjP6crVY9YRwpZ12SdsuHDta1
-BzIAoJPp7E2htUWVLYNFDxfbnnfe8atZ
-=/d5Y
+iQIcBAEBAgAGBQJPAURoAAoJELEHsLL7fEFWe9QP/iA42nmTw3cs9VTdLNiEGCnB
+RQ8CbzHPvIScMFsicucRez4HmlDPoK5R5DVr3LooUzNYWHRXipeEa1TH9HF8ueaM
+3YcNCYLq+GYr0Paf2cjpjkuzn85VY/2666nuZUUREAMEJ3TC1LzeS2dBruuj4aop
+CWa+516lBEHnmBEXWbiPTHbDUvY7Czyezpw70dSX2Kp/cpAyAhgTdzgzI59GmPZx
+KYWLrBud6SxMFNX/+p7YMXyvclTLyD6Vr0ni1aV+5w9XFn4x1NExoCJ54u6Cx6O4
+jB/43SqanqA2UqgAP3V7DZOaj4n5rZVpp+LHlXmlhPpipupUuvUIC3gKyf8l93yn
+77LIY0gEnzXh2Oix5h8Bfe3+l3VLPL9fIQBV4CB7ZA9WxCG0sDURBg4v9coOeB3O
+1JpHzav8LiG4fDDvhJxZnsTENkgvWipIz+5FvdbATDxpsBa/k6Figpi0SO9fD6aL
+C1LTPbK+NX+3bFdR9+KpOlLsxOdIlye8yfFpL2QgCAGZ0i+NqwS61eYDthJnjTAo
+ml8Y0ffd0tZ/ad+BRYnpemCF6usgZqvF2rZPBTzSaqSRAC1XQcMJRpo34A169sPw
+QrBrBY4R35yYbY2w+JQG6q06+A4n+2vjEaXTXoFyH3cqBFEnUOi3kz2uR0EUSe62
+isYplhCGEzzZXDBM5Lxh
+=ztkr
 -----END PGP SIGNATURE-----
index a5262bd21bbabc12c1869982e48096b8906095e9..ecc2381b6027201da2b781cfbd87eeeb6286c9e6 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/gdb/gdb-7.3.1-r1.ebuild,v 1.2 2012/01/01 19:45:57 grobian Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/gdb/gdb-7.3.1-r1.ebuild,v 1.3 2012/01/02 05:42:56 vapier Exp $
 
 EAPI="3"
 
@@ -48,9 +48,7 @@ HOMEPAGE="http://sourceware.org/gdb/"
 SRC_URI="${SRC_URI} ${PATCH_VER:+mirror://gentoo/${P}-patches-${PATCH_VER}.tar.xz}"
 
 LICENSE="GPL-2 LGPL-2"
-is_cross \
-       && SLOT="${CTARGET}" \
-       || SLOT="0"
+SLOT="0"
 if [[ ${PV} != 9999* ]] ; then
        KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
 fi
@@ -94,12 +92,23 @@ src_configure() {
                $(is_cross && echo --with-sysroot="${EPREFIX}"/usr/${CTARGET})
        )
 
-       if use server ; then
-               use client || cd gdb/gdbserver
+       if use server && ! use client ; then
+               # just configure+build in the gdbserver subdir to speed things up
+               cd gdb/gdbserver
                myconf+=( --program-transform-name='' )
+       else
+               # gdbserver only works for native targets (CHOST==CTARGET).
+               # it also doesn't support all targets, so rather than duplicate
+               # the target list (which changes between versions), use the
+               # "auto" value when things are turned on.
+               is_cross \
+                       && myconf+=( --disable-gdbserver ) \
+                       || myconf+=( $(use_enable server gdbserver auto) )
        fi
 
-       if use client ; then
+       if ! ( use server && ! use client ) ; then
+               # if we are configuring in the top level, then use all
+               # the additional global options
                myconf+=(
                        --enable-64-bit-bfd
                        --disable-install-libbfd
@@ -110,7 +119,6 @@ src_configure() {
                        $(use_enable nls)
                        $(use multitarget && echo --enable-targets=all)
                        $(use_with python python "${EPREFIX}/usr/bin/python2")
-                       $(use_enable server gdbserver)
                )
        fi
 
@@ -132,8 +140,11 @@ src_install() {
                rm -r "${ED}"/usr/share
                return 0
        fi
+       # Install it by hand for now:
        # http://sourceware.org/ml/gdb-patches/2011-12/msg00915.html
-       use server && { dobin gdb/gdbserver/gdbreplay || die ; }
+       # Only install if it exists due to the twisted behavior (see
+       # notes in src_configure above).
+       [[ -e gdb/gdbserver/gdbreplay ]] && { dobin gdb/gdbserver/gdbreplay || die ; }
 
        dodoc README
        if use client ; then
index f40255c49716e9915897fdc26a65d763345c25d9..d90545495518cd0bd4069b0997638c3a17e2b174 100644 (file)
@@ -1,6 +1,6 @@
-# Copyright 1999-2011 Gentoo Foundation
+# Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/gdb/gdb-9999.ebuild,v 1.6 2011/12/02 21:08:12 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/gdb/gdb-9999.ebuild,v 1.7 2012/01/02 05:42:56 vapier Exp $
 
 EAPI="3"
 
@@ -48,15 +48,14 @@ HOMEPAGE="http://sourceware.org/gdb/"
 SRC_URI="${SRC_URI} ${PATCH_VER:+mirror://gentoo/${P}-patches-${PATCH_VER}.tar.xz}"
 
 LICENSE="GPL-2 LGPL-2"
-is_cross \
-       && SLOT="${CTARGET}" \
-       || SLOT="0"
+SLOT="0"
 if [[ ${PV} != 9999* ]] ; then
-       KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-fbsd ~x64-macos ~x86-macos"
+       KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
 fi
-IUSE="expat multitarget nls +python test vanilla"
+IUSE="+client expat multitarget nls +python +server test vanilla"
 
-RDEPEND=">=sys-libs/ncurses-5.2-r2
+RDEPEND="!dev-util/gdbserver
+       >=sys-libs/ncurses-5.2-r2
        sys-libs/readline
        expat? ( dev-libs/expat )
        python? ( =dev-lang/python-2* )"
@@ -85,18 +84,45 @@ gdb_branding() {
 
 src_configure() {
        strip-unsupported-flags
-       econf \
-               --with-pkgversion="$(gdb_branding)" \
-               --with-bugurl='http://bugs.gentoo.org/' \
-               --disable-werror \
-               --enable-64-bit-bfd \
-               --with-system-readline \
-               --with-separate-debug-dir="${EPREFIX}"/usr/lib/debug \
-               $(is_cross && echo --with-sysroot="${EPREFIX}"/usr/${CTARGET}) \
-               $(use_with expat) \
-               $(use_enable nls) \
-               $(use multitarget && echo --enable-targets=all) \
-               $(use_with python python "${EPREFIX}/usr/bin/python2")
+
+       local myconf=(
+               --with-pkgversion="$(gdb_branding)"
+               --with-bugurl='http://bugs.gentoo.org/'
+               --disable-werror
+               $(is_cross && echo --with-sysroot="${EPREFIX}"/usr/${CTARGET})
+       )
+
+       if use server && ! use client ; then
+               # just configure+build in the gdbserver subdir to speed things up
+               cd gdb/gdbserver
+               myconf+=( --program-transform-name='' )
+       else
+               # gdbserver only works for native targets (CHOST==CTARGET).
+               # it also doesn't support all targets, so rather than duplicate
+               # the target list (which changes between versions), use the
+               # "auto" value when things are turned on.
+               is_cross \
+                       && myconf+=( --disable-gdbserver ) \
+                       || myconf+=( $(use_enable server gdbserver auto) )
+       fi
+
+       if ! ( use server && ! use client ) ; then
+               # if we are configuring in the top level, then use all
+               # the additional global options
+               myconf+=(
+                       --enable-64-bit-bfd
+                       --disable-install-libbfd
+                       --disable-install-libiberty
+                       --with-system-readline
+                       --with-separate-debug-dir="${EPREFIX}"/usr/lib/debug
+                       $(use_with expat)
+                       $(use_enable nls)
+                       $(use multitarget && echo --enable-targets=all)
+                       $(use_with python python "${EPREFIX}/usr/bin/python2")
+               )
+       fi
+
+       econf "${myconf[@]}"
 }
 
 src_test() {
@@ -104,24 +130,34 @@ src_test() {
 }
 
 src_install() {
-       emake \
-               DESTDIR="${D}" \
-               {include,lib}dir=/nukeme/pretty/pretty/please \
-               install || die
-       rm -r "${D}"/nukeme || die
+       use server && ! use client && cd gdb/gdbserver
+       emake DESTDIR="${D}" install || die
+       use client && { rm "${ED}"/usr/lib*/libiberty.a || die ; }
+       cd "${S}"
 
        # Don't install docs when building a cross-gdb
        if [[ ${CTARGET} != ${CHOST} ]] ; then
                rm -r "${ED}"/usr/share
                return 0
        fi
+       # Install it by hand for now:
+       # http://sourceware.org/ml/gdb-patches/2011-12/msg00915.html
+       # Only install if it exists due to the twisted behavior (see
+       # notes in src_configure above).
+       [[ -e gdb/gdbserver/gdbreplay ]] && { dobin gdb/gdbserver/gdbreplay || die ; }
 
        dodoc README
-       docinto gdb
-       dodoc gdb/CONTRIBUTE gdb/README gdb/MAINTAINERS \
-               gdb/NEWS gdb/ChangeLog gdb/PROBLEMS
+       if use client ; then
+               docinto gdb
+               dodoc gdb/CONTRIBUTE gdb/README gdb/MAINTAINERS \
+                       gdb/NEWS gdb/ChangeLog gdb/PROBLEMS
+       fi
        docinto sim
-       dodoc sim/ChangeLog sim/MAINTAINERS sim/README-HACKING
+       dodoc sim/{ChangeLog,MAINTAINERS,README-HACKING}
+       if use server ; then
+               docinto gdbserver
+               dodoc gdb/gdbserver/{ChangeLog,README}
+       fi
 
        if [[ -n ${PATCH_VER} ]] ; then
                dodoc "${WORKDIR}"/extra/gdbinit.sample
@@ -133,7 +169,7 @@ src_install() {
 
 pkg_postinst() {
        # portage sucks and doesnt unmerge files in /etc
-       rm -vf "${ROOT}"/etc/skel/.gdbinit
+       rm -vf "${EROOT}"/etc/skel/.gdbinit
 
        if use prefix && [[ ${CHOST} == *-darwin* ]] ; then
                ewarn "gdb is unable to get a mach task port when installed by Prefix"