diff options
Diffstat (limited to 'sys-devel/gdb/gdb-7.3.ebuild')
-rw-r--r-- | sys-devel/gdb/gdb-7.3.ebuild | 120 |
1 files changed, 120 insertions, 0 deletions
diff --git a/sys-devel/gdb/gdb-7.3.ebuild b/sys-devel/gdb/gdb-7.3.ebuild new file mode 100644 index 000000000000..1a10af2dc4a1 --- /dev/null +++ b/sys-devel/gdb/gdb-7.3.ebuild @@ -0,0 +1,120 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-devel/gdb/gdb-7.3.ebuild,v 1.1 2011/08/07 13:09:19 vapier Exp $ + +EAPI="3" + +inherit flag-o-matic eutils + +export CTARGET=${CTARGET:-${CHOST}} +if [[ ${CTARGET} == ${CHOST} ]] ; then + if [[ ${CATEGORY/cross-} != ${CATEGORY} ]] ; then + export CTARGET=${CATEGORY/cross-} + fi +fi +is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; } + +if [[ ${PV} == *.*.*.*.*.* ]] ; then + inherit versionator rpm + # fedora version: gdb-6.8.50.20090302-8.fc11.src.rpm + gvcr() { get_version_component_range "$@"; } + MY_PV=$(gvcr 1-4) + RPM="${PN}-${MY_PV}-$(gvcr 5).fc$(gvcr 6).src.rpm" +else + MY_PV=${PV} + RPM= +fi + +PATCH_VER="1" +DESCRIPTION="GNU debugger" +HOMEPAGE="http://sources.redhat.com/gdb/" +if [[ -n ${RPM} ]] ; then + SRC_URI="http://mirrors.kernel.org/fedora/development/source/SRPMS/${RPM}" +else + SRC_URI="http://ftp.gnu.org/gnu/gdb/${P}.tar.bz2 + ftp://sources.redhat.com/pub/gdb/releases/${P}.tar.bz2" +fi +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" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-fbsd" +IUSE="expat multitarget nls python test vanilla" + +RDEPEND=">=sys-libs/ncurses-5.2-r2 + sys-libs/readline + expat? ( dev-libs/expat ) + python? ( =dev-lang/python-2* )" +DEPEND="${RDEPEND} + app-arch/xz-utils + test? ( dev-util/dejagnu ) + nls? ( sys-devel/gettext )" + +S=${WORKDIR}/${PN}-${MY_PV} + +src_prepare() { + [[ -n ${RPM} ]] && rpm_spec_epatch "${WORKDIR}"/gdb.spec + use vanilla || [[ -n ${PATCH_VER} ]] && EPATCH_SUFFIX="patch" epatch "${WORKDIR}"/patch + strip-linguas -u bfd/po opcodes/po +} + +gdb_branding() { + printf "Gentoo ${PV} " + if [[ -n ${PATCH_VER} ]] ; then + printf "p${PATCH_VER}" + else + printf "vanilla" + fi +} + +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 \ + $(is_cross && echo --with-sysroot=/usr/${CTARGET}) \ + $(use_with expat) \ + $(use_enable nls) \ + $(use multitarget && echo --enable-targets=all) \ + $(use_with python python "${EPREFIX}/usr/bin/python2") +} + +src_test() { + emake check || ewarn "tests failed" +} + +src_install() { + emake \ + DESTDIR="${D}" \ + libdir=/nukeme/pretty/pretty/please includedir=/nukeme/pretty/pretty/please \ + install || die + rm -r "${D}"/nukeme || die + + # 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/PROBLEMS + docinto sim + dodoc sim/ChangeLog sim/MAINTAINERS sim/README-HACKING + + dodoc "${WORKDIR}"/extra/gdbinit.sample + + # Remove shared info pages + rm -f "${D}"/usr/share/info/{annotate,bfd,configure,standards}.info* +} + +pkg_postinst() { + # portage sucks and doesnt unmerge files in /etc + rm -vf "${ROOT}"/etc/skel/.gdbinit +} |