summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys-devel/gdb/Manifest3
-rw-r--r--sys-devel/gdb/gdb-7.11.1.ebuild234
-rw-r--r--sys-devel/gdb/gdb-7.11.ebuild234
-rw-r--r--sys-devel/gdb/gdb-7.12.ebuild234
4 files changed, 0 insertions, 705 deletions
diff --git a/sys-devel/gdb/Manifest b/sys-devel/gdb/Manifest
index e8e308166881..204399c86b65 100644
--- a/sys-devel/gdb/Manifest
+++ b/sys-devel/gdb/Manifest
@@ -1,6 +1,3 @@
DIST gdb-7.10.1.tar.xz 18531436 SHA256 25c72f3d41c7c8554d61cacbeacd5f40993276d2ccdec43279ac546e3993d6d5 SHA512 17a5138277a31685a5c2a841cb47ed9bc4626ea617b8ca77750513b300299f4fbbffe504958b5372de610dcb952c679cf8fa9c1bdadd380294fbf59b6e366010 WHIRLPOOL 02936f59d3f3f8a57966c72402f1da128dd8e10e686097ffdb3a2741cc0c1831ef27f97daa047fa006ff2ae9f79ae0480f6f0dc2d3f5904190a1dade0590c837
-DIST gdb-7.11.1.tar.xz 18947760 SHA256 e9216da4e3755e9f414c1aa0026b626251dfc57ffe572a266e98da4f6988fc70 SHA512 f80ec6c8a0f0b54c8b945666e875809174402b7e121efb378ebac931a91f9a1cc0048568f8e2f42ae8ae2392ff8d144c2e51d41c7398935017450aaf29838360 WHIRLPOOL f8df80983ed23a8b02b2420e2a73303dfc6b85bf46f519a4e8d8035b68ab440d9f298b2c0e48cd11d98a89fe5761260d8f4e8a14667cb385cf80767a9e3d5f0b
-DIST gdb-7.11.tar.xz 18934392 SHA256 7a434116cb630d77bb40776e8f5d3937bed11dea56bafebb4d2bc5dd389fe5c1 SHA512 eadd2a59a1e48b1484eb2bea85256d6b1912926bc8b690793d02babf2639608bd22a0f2de77d4f60092da3b1dafeaa6d75a7cff3e84bd4e22fc46364b68e5e9f WHIRLPOOL 9ae283b05b278ec2844aa3cf54193d9fd5735508e2eb60c0d741f719f1598b4e374dab6d4ee48d78323b0b8038715969d20435f1b8ce20775f2b3f072759c994
DIST gdb-7.12.1.tar.xz 19225392 SHA256 4607680b973d3ec92c30ad029f1b7dbde3876869e6b3a117d8a7e90081113186 SHA512 0ac8d0a495103611ef41167a08313a010dce6ca4c6d827cbe8558a0c1a1a8a6bfa53f1b7704251289cababbfaaf9e075550cdf741a54d6cd9ca3433d910efcd8 WHIRLPOOL 1da1d9680639531000f2518fb6e01551f7d35091065b933a25381339f7d78d64486b7ce54dd9815f7e82884133ccd6868950a15c27fb5a7b9b13243e99eba697
-DIST gdb-7.12.tar.xz 19219556 SHA256 834ff3c5948b30718343ea57b11cbc3235d7995c6a4f3a5cecec8c8114164f94 SHA512 f610338b3a24dfb387c295431d806a0c1375e8ce51b8dd8bbfd2efc4612d0c0ed40ad4393508afca0071eca70688f62bc4f199da5e75ad16f64d91c3bc046033 WHIRLPOOL 9b4c903b27bba530cb5db722abc6358d3785e0b1f1067abaf8487c7e2b3e7cfe546f5ad16071ad29e34a27fd902a7f74171d4c7afec219ba69faae96c911cb27
DIST gdb-7.9.1.tar.xz 17867692 SHA256 cd9c543a411a05b2b647dd38936034b68c2b5d6f10e0d51dc168c166c973ba40 SHA512 eebdf88b24e52e792b8a4b89ea85790de72b462a7810b44975fdf4232c068f353b15506071f450102a9d4bcecdde8e93dc3748a10699b7f73f3e04fb2d9d8414 WHIRLPOOL fe7afb392f453fa5aab290da3b74118c4e3bbae6f4e276f2efd7f978e3987e031d92ecd90d35e0531901f1cf68b04a313df050b25bb3b632d1b6e62360acd591
diff --git a/sys-devel/gdb/gdb-7.11.1.ebuild b/sys-devel/gdb/gdb-7.11.1.ebuild
deleted file mode 100644
index feebb8503b2e..000000000000
--- a/sys-devel/gdb/gdb-7.11.1.ebuild
+++ /dev/null
@@ -1,234 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-PYTHON_COMPAT=( python{2_7,3_4,3_5} )
-
-inherit flag-o-matic eutils python-single-r1
-
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
- if [[ ${CATEGORY} == cross-* ]] ; then
- export CTARGET=${CATEGORY#cross-}
- fi
-fi
-is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
-
-RPM=
-MY_PV=${PV}
-case ${PV} in
-9999*)
- # live git tree
- EGIT_REPO_URI="git://sourceware.org/git/binutils-gdb.git"
- inherit git-2
- SRC_URI=""
- ;;
-*.*.50.2???????)
- # weekly snapshots
- SRC_URI="ftp://sourceware.org/pub/gdb/snapshots/current/gdb-weekly-${PV}.tar.xz"
- ;;
-*.*.*.*.*.*)
- # fedora versions; note we swap the rpm & fedora core versions.
- # gdb-6.8.50.20090302-8.fc11.src.rpm -> gdb-6.8.50.20090302.11.8.ebuild
- # gdb-7.9-11.fc23.src.rpm -> gdb-7.9.23.11.ebuild
- inherit versionator rpm
- gvcr() { get_version_component_range "$@"; }
- parse_fedora_ver() {
- set -- $(get_version_components)
- MY_PV=$(gvcr 1-$(( $# - 2 )))
- RPM="${PN}-${MY_PV}-$(gvcr $#).fc$(gvcr $(( $# - 1 ))).src.rpm"
- }
- parse_fedora_ver
- SRC_URI="mirror://fedora-dev/development/rawhide/source/SRPMS/g/${RPM}"
- ;;
-*)
- # Normal upstream release
- SRC_URI="mirror://gnu/gdb/${P}.tar.xz
- ftp://sourceware.org/pub/gdb/releases/${P}.tar.xz"
- ;;
-esac
-
-PATCH_VER=""
-DESCRIPTION="GNU debugger"
-HOMEPAGE="https://sourceware.org/gdb/"
-SRC_URI="${SRC_URI} ${PATCH_VER:+mirror://gentoo/${P}-patches-${PATCH_VER}.tar.xz}"
-
-LICENSE="GPL-2 LGPL-2"
-SLOT="0"
-if [[ ${PV} != 9999* ]] ; then
- # alpha #562128
- KEYWORDS="-alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-IUSE="+client expat lzma multitarget nls +python +server test vanilla"
-REQUIRED_USE="
- python? ( ${PYTHON_REQUIRED_USE} )
- || ( client server )
-"
-
-RDEPEND="server? ( !dev-util/gdbserver )
- client? (
- >=sys-libs/ncurses-5.2-r2:0=
- sys-libs/readline:0=
- expat? ( dev-libs/expat )
- lzma? ( app-arch/xz-utils )
- python? ( ${PYTHON_DEPS} )
- sys-libs/zlib
- )"
-DEPEND="${RDEPEND}
- app-arch/xz-utils
- client? (
- virtual/yacc
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- )"
-
-S=${WORKDIR}/${PN}-${MY_PV}
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- [[ -n ${RPM} ]] && rpm_spec_epatch "${WORKDIR}"/gdb.spec
- ! use vanilla && [[ -n ${PATCH_VER} ]] && EPATCH_SUFFIX="patch" epatch "${WORKDIR}"/patch
- epatch_user
- strip-linguas -u bfd/po opcodes/po
-}
-
-gdb_branding() {
- printf "Gentoo ${PV} "
- if ! use vanilla && [[ -n ${PATCH_VER} ]] ; then
- printf "p${PATCH_VER}"
- else
- printf "vanilla"
- fi
- [[ -n ${EGIT_COMMIT} ]] && printf " ${EGIT_COMMIT}"
-}
-
-src_configure() {
- strip-unsupported-flags
-
- local myconf=(
- --with-pkgversion="$(gdb_branding)"
- --with-bugurl='https://bugs.gentoo.org/'
- --disable-werror
- # Disable modules that are in a combined binutils/gdb tree. #490566
- --disable-{binutils,etc,gas,gold,gprof,ld}
- )
- local sysroot="${EPREFIX}/usr/${CTARGET}"
- is_cross && myconf+=(
- --with-sysroot="${sysroot}"
- --includedir="${sysroot}/usr/include"
- --with-gdb-datadir="\${datadir}/gdb/${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
- # Disable guile for now as it requires guile-2.x #562902
- --without-guile
- # This only disables building in the readline subdir.
- # For gdb itself, it'll use the system version.
- --disable-readline
- --with-system-readline
- # This only disables building in the zlib subdir.
- # For gdb itself, it'll use the system version.
- --without-zlib
- --with-system-zlib
- --with-separate-debug-dir="${EPREFIX}"/usr/lib/debug
- $(use_with expat)
- $(use_with lzma)
- $(use_enable nls)
- $(use multitarget && echo --enable-targets=all)
- $(use_with python python "${EPYTHON}")
- )
- fi
-
- econf "${myconf[@]}"
-}
-
-src_test() {
- nonfatal emake check || ewarn "tests failed"
-}
-
-src_install() {
- use server && ! use client && cd gdb/gdbserver
- default
- use client && find "${ED}"/usr -name libiberty.a -delete
- cd "${S}"
-
- # Delete translations that conflict with binutils-libs. #528088
- # Note: Should figure out how to store these in an internal gdb dir.
- if use nls ; then
- find "${ED}" \
- -regextype posix-extended -regex '.*/(bfd|opcodes)[.]g?mo$' \
- -delete
- fi
-
- # Don't install docs when building a cross-gdb
- if [[ ${CTARGET} != ${CHOST} ]] ; then
- rm -r "${ED}"/usr/share/{doc,info,locale}
- local f
- for f in "${ED}"/usr/share/man/*/* ; do
- if [[ ${f##*/} != ${CTARGET}-* ]] ; then
- mv "${f}" "${f%/*}/${CTARGET}-${f##*/}" || die
- fi
- done
- return 0
- fi
- # Install it by hand for now:
- # https://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
-
- 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,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
- fi
-
- # Remove shared info pages
- rm -f "${ED}"/usr/share/info/{annotate,bfd,configure,standards}.info*
-}
-
-pkg_postinst() {
- # portage sucks and doesnt unmerge files in /etc
- 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"
- ewarn "Portage, unprivileged. To make gdb fully functional you'll"
- ewarn "have to perform the following steps:"
- ewarn " % sudo chgrp procmod ${EPREFIX}/usr/bin/gdb"
- ewarn " % sudo chmod g+s ${EPREFIX}/usr/bin/gdb"
- fi
-}
diff --git a/sys-devel/gdb/gdb-7.11.ebuild b/sys-devel/gdb/gdb-7.11.ebuild
deleted file mode 100644
index feebb8503b2e..000000000000
--- a/sys-devel/gdb/gdb-7.11.ebuild
+++ /dev/null
@@ -1,234 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-PYTHON_COMPAT=( python{2_7,3_4,3_5} )
-
-inherit flag-o-matic eutils python-single-r1
-
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
- if [[ ${CATEGORY} == cross-* ]] ; then
- export CTARGET=${CATEGORY#cross-}
- fi
-fi
-is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
-
-RPM=
-MY_PV=${PV}
-case ${PV} in
-9999*)
- # live git tree
- EGIT_REPO_URI="git://sourceware.org/git/binutils-gdb.git"
- inherit git-2
- SRC_URI=""
- ;;
-*.*.50.2???????)
- # weekly snapshots
- SRC_URI="ftp://sourceware.org/pub/gdb/snapshots/current/gdb-weekly-${PV}.tar.xz"
- ;;
-*.*.*.*.*.*)
- # fedora versions; note we swap the rpm & fedora core versions.
- # gdb-6.8.50.20090302-8.fc11.src.rpm -> gdb-6.8.50.20090302.11.8.ebuild
- # gdb-7.9-11.fc23.src.rpm -> gdb-7.9.23.11.ebuild
- inherit versionator rpm
- gvcr() { get_version_component_range "$@"; }
- parse_fedora_ver() {
- set -- $(get_version_components)
- MY_PV=$(gvcr 1-$(( $# - 2 )))
- RPM="${PN}-${MY_PV}-$(gvcr $#).fc$(gvcr $(( $# - 1 ))).src.rpm"
- }
- parse_fedora_ver
- SRC_URI="mirror://fedora-dev/development/rawhide/source/SRPMS/g/${RPM}"
- ;;
-*)
- # Normal upstream release
- SRC_URI="mirror://gnu/gdb/${P}.tar.xz
- ftp://sourceware.org/pub/gdb/releases/${P}.tar.xz"
- ;;
-esac
-
-PATCH_VER=""
-DESCRIPTION="GNU debugger"
-HOMEPAGE="https://sourceware.org/gdb/"
-SRC_URI="${SRC_URI} ${PATCH_VER:+mirror://gentoo/${P}-patches-${PATCH_VER}.tar.xz}"
-
-LICENSE="GPL-2 LGPL-2"
-SLOT="0"
-if [[ ${PV} != 9999* ]] ; then
- # alpha #562128
- KEYWORDS="-alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-IUSE="+client expat lzma multitarget nls +python +server test vanilla"
-REQUIRED_USE="
- python? ( ${PYTHON_REQUIRED_USE} )
- || ( client server )
-"
-
-RDEPEND="server? ( !dev-util/gdbserver )
- client? (
- >=sys-libs/ncurses-5.2-r2:0=
- sys-libs/readline:0=
- expat? ( dev-libs/expat )
- lzma? ( app-arch/xz-utils )
- python? ( ${PYTHON_DEPS} )
- sys-libs/zlib
- )"
-DEPEND="${RDEPEND}
- app-arch/xz-utils
- client? (
- virtual/yacc
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- )"
-
-S=${WORKDIR}/${PN}-${MY_PV}
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- [[ -n ${RPM} ]] && rpm_spec_epatch "${WORKDIR}"/gdb.spec
- ! use vanilla && [[ -n ${PATCH_VER} ]] && EPATCH_SUFFIX="patch" epatch "${WORKDIR}"/patch
- epatch_user
- strip-linguas -u bfd/po opcodes/po
-}
-
-gdb_branding() {
- printf "Gentoo ${PV} "
- if ! use vanilla && [[ -n ${PATCH_VER} ]] ; then
- printf "p${PATCH_VER}"
- else
- printf "vanilla"
- fi
- [[ -n ${EGIT_COMMIT} ]] && printf " ${EGIT_COMMIT}"
-}
-
-src_configure() {
- strip-unsupported-flags
-
- local myconf=(
- --with-pkgversion="$(gdb_branding)"
- --with-bugurl='https://bugs.gentoo.org/'
- --disable-werror
- # Disable modules that are in a combined binutils/gdb tree. #490566
- --disable-{binutils,etc,gas,gold,gprof,ld}
- )
- local sysroot="${EPREFIX}/usr/${CTARGET}"
- is_cross && myconf+=(
- --with-sysroot="${sysroot}"
- --includedir="${sysroot}/usr/include"
- --with-gdb-datadir="\${datadir}/gdb/${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
- # Disable guile for now as it requires guile-2.x #562902
- --without-guile
- # This only disables building in the readline subdir.
- # For gdb itself, it'll use the system version.
- --disable-readline
- --with-system-readline
- # This only disables building in the zlib subdir.
- # For gdb itself, it'll use the system version.
- --without-zlib
- --with-system-zlib
- --with-separate-debug-dir="${EPREFIX}"/usr/lib/debug
- $(use_with expat)
- $(use_with lzma)
- $(use_enable nls)
- $(use multitarget && echo --enable-targets=all)
- $(use_with python python "${EPYTHON}")
- )
- fi
-
- econf "${myconf[@]}"
-}
-
-src_test() {
- nonfatal emake check || ewarn "tests failed"
-}
-
-src_install() {
- use server && ! use client && cd gdb/gdbserver
- default
- use client && find "${ED}"/usr -name libiberty.a -delete
- cd "${S}"
-
- # Delete translations that conflict with binutils-libs. #528088
- # Note: Should figure out how to store these in an internal gdb dir.
- if use nls ; then
- find "${ED}" \
- -regextype posix-extended -regex '.*/(bfd|opcodes)[.]g?mo$' \
- -delete
- fi
-
- # Don't install docs when building a cross-gdb
- if [[ ${CTARGET} != ${CHOST} ]] ; then
- rm -r "${ED}"/usr/share/{doc,info,locale}
- local f
- for f in "${ED}"/usr/share/man/*/* ; do
- if [[ ${f##*/} != ${CTARGET}-* ]] ; then
- mv "${f}" "${f%/*}/${CTARGET}-${f##*/}" || die
- fi
- done
- return 0
- fi
- # Install it by hand for now:
- # https://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
-
- 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,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
- fi
-
- # Remove shared info pages
- rm -f "${ED}"/usr/share/info/{annotate,bfd,configure,standards}.info*
-}
-
-pkg_postinst() {
- # portage sucks and doesnt unmerge files in /etc
- 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"
- ewarn "Portage, unprivileged. To make gdb fully functional you'll"
- ewarn "have to perform the following steps:"
- ewarn " % sudo chgrp procmod ${EPREFIX}/usr/bin/gdb"
- ewarn " % sudo chmod g+s ${EPREFIX}/usr/bin/gdb"
- fi
-}
diff --git a/sys-devel/gdb/gdb-7.12.ebuild b/sys-devel/gdb/gdb-7.12.ebuild
deleted file mode 100644
index d47b1975d3f5..000000000000
--- a/sys-devel/gdb/gdb-7.12.ebuild
+++ /dev/null
@@ -1,234 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-PYTHON_COMPAT=( python{2_7,3_4,3_5} )
-
-inherit flag-o-matic eutils python-single-r1
-
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
- if [[ ${CATEGORY} == cross-* ]] ; then
- export CTARGET=${CATEGORY#cross-}
- fi
-fi
-is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
-
-RPM=
-MY_PV=${PV}
-case ${PV} in
-9999*)
- # live git tree
- EGIT_REPO_URI="git://sourceware.org/git/binutils-gdb.git"
- inherit git-2
- SRC_URI=""
- ;;
-*.*.50.2???????)
- # weekly snapshots
- SRC_URI="ftp://sourceware.org/pub/gdb/snapshots/current/gdb-weekly-${PV}.tar.xz"
- ;;
-*.*.*.*.*.*)
- # fedora versions; note we swap the rpm & fedora core versions.
- # gdb-6.8.50.20090302-8.fc11.src.rpm -> gdb-6.8.50.20090302.11.8.ebuild
- # gdb-7.9-11.fc23.src.rpm -> gdb-7.9.23.11.ebuild
- inherit versionator rpm
- gvcr() { get_version_component_range "$@"; }
- parse_fedora_ver() {
- set -- $(get_version_components)
- MY_PV=$(gvcr 1-$(( $# - 2 )))
- RPM="${PN}-${MY_PV}-$(gvcr $#).fc$(gvcr $(( $# - 1 ))).src.rpm"
- }
- parse_fedora_ver
- SRC_URI="mirror://fedora-dev/development/rawhide/source/SRPMS/g/${RPM}"
- ;;
-*)
- # Normal upstream release
- SRC_URI="mirror://gnu/gdb/${P}.tar.xz
- ftp://sourceware.org/pub/gdb/releases/${P}.tar.xz"
- ;;
-esac
-
-PATCH_VER=""
-DESCRIPTION="GNU debugger"
-HOMEPAGE="https://sourceware.org/gdb/"
-SRC_URI="${SRC_URI} ${PATCH_VER:+mirror://gentoo/${P}-patches-${PATCH_VER}.tar.xz}"
-
-LICENSE="GPL-2 LGPL-2"
-SLOT="0"
-if [[ ${PV} != 9999* ]] ; then
- # alpha #562128
- KEYWORDS="-alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-IUSE="+client lzma multitarget nls +python +server test vanilla xml"
-REQUIRED_USE="
- python? ( ${PYTHON_REQUIRED_USE} )
- || ( client server )
-"
-
-RDEPEND="server? ( !dev-util/gdbserver )
- client? (
- >=sys-libs/ncurses-5.2-r2:0=
- sys-libs/readline:0=
- lzma? ( app-arch/xz-utils )
- python? ( ${PYTHON_DEPS} )
- xml? ( dev-libs/expat )
- sys-libs/zlib
- )"
-DEPEND="${RDEPEND}
- app-arch/xz-utils
- client? (
- virtual/yacc
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- )"
-
-S=${WORKDIR}/${PN}-${MY_PV}
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- [[ -n ${RPM} ]] && rpm_spec_epatch "${WORKDIR}"/gdb.spec
- ! use vanilla && [[ -n ${PATCH_VER} ]] && EPATCH_SUFFIX="patch" epatch "${WORKDIR}"/patch
- epatch_user
- strip-linguas -u bfd/po opcodes/po
-}
-
-gdb_branding() {
- printf "Gentoo ${PV} "
- if ! use vanilla && [[ -n ${PATCH_VER} ]] ; then
- printf "p${PATCH_VER}"
- else
- printf "vanilla"
- fi
- [[ -n ${EGIT_COMMIT} ]] && printf " ${EGIT_COMMIT}"
-}
-
-src_configure() {
- strip-unsupported-flags
-
- local myconf=(
- --with-pkgversion="$(gdb_branding)"
- --with-bugurl='https://bugs.gentoo.org/'
- --disable-werror
- # Disable modules that are in a combined binutils/gdb tree. #490566
- --disable-{binutils,etc,gas,gold,gprof,ld}
- )
- local sysroot="${EPREFIX}/usr/${CTARGET}"
- is_cross && myconf+=(
- --with-sysroot="${sysroot}"
- --includedir="${sysroot}/usr/include"
- --with-gdb-datadir="\${datadir}/gdb/${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
- # Disable guile for now as it requires guile-2.x #562902
- --without-guile
- # This only disables building in the readline subdir.
- # For gdb itself, it'll use the system version.
- --disable-readline
- --with-system-readline
- # This only disables building in the zlib subdir.
- # For gdb itself, it'll use the system version.
- --without-zlib
- --with-system-zlib
- --with-separate-debug-dir="${EPREFIX}"/usr/lib/debug
- $(use_with xml expat)
- $(use_with lzma)
- $(use_enable nls)
- $(use multitarget && echo --enable-targets=all)
- $(use_with python python "${EPYTHON}")
- )
- fi
-
- econf "${myconf[@]}"
-}
-
-src_test() {
- nonfatal emake check || ewarn "tests failed"
-}
-
-src_install() {
- use server && ! use client && cd gdb/gdbserver
- default
- use client && find "${ED}"/usr -name libiberty.a -delete
- cd "${S}"
-
- # Delete translations that conflict with binutils-libs. #528088
- # Note: Should figure out how to store these in an internal gdb dir.
- if use nls ; then
- find "${ED}" \
- -regextype posix-extended -regex '.*/(bfd|opcodes)[.]g?mo$' \
- -delete
- fi
-
- # Don't install docs when building a cross-gdb
- if [[ ${CTARGET} != ${CHOST} ]] ; then
- rm -r "${ED}"/usr/share/{doc,info,locale}
- local f
- for f in "${ED}"/usr/share/man/*/* ; do
- if [[ ${f##*/} != ${CTARGET}-* ]] ; then
- mv "${f}" "${f%/*}/${CTARGET}-${f##*/}" || die
- fi
- done
- return 0
- fi
- # Install it by hand for now:
- # https://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
-
- 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,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
- fi
-
- # Remove shared info pages
- rm -f "${ED}"/usr/share/info/{annotate,bfd,configure,standards}.info*
-}
-
-pkg_postinst() {
- # portage sucks and doesnt unmerge files in /etc
- 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"
- ewarn "Portage, unprivileged. To make gdb fully functional you'll"
- ewarn "have to perform the following steps:"
- ewarn " % sudo chgrp procmod ${EPREFIX}/usr/bin/gdb"
- ewarn " % sudo chmod g+s ${EPREFIX}/usr/bin/gdb"
- fi
-}