+++ /dev/null
-# Copyright 1999-2004 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/binutils/binutils-2.11.92.0.12.3-r2.ebuild,v 1.20 2004/08/14 02:27:55 vapier Exp $
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="http://sources.redhat.com/binutils/"
-SRC_URI="mirror://kernel/linux/devel/binutils/${P}.tar.bz2"
-
-LICENSE="GPL-2 LGPL-2 BINUTILS"
-SLOT="0"
-KEYWORDS="x86 sparc"
-IUSE="nls static build"
-
-DEPEND="virtual/libc
- nls? ( sys-devel/gettext )"
-
-src_unpack() {
- unpack ${P}.tar.bz2
- cd ${S}
- #man pages are tarred up seperately because building them depends
- #on perl, which isn't installed at Gentoo Linux bootstrap time.
- mkdir man; cd man
- tar xjf ${DISTDIR}/${PN}-manpages-${PV}.tar.bz2 || die
-}
-
-src_compile() {
- local myconf
-
- use nls \
- && myconf="${myconf} --without-included-gettext" \
- || myconf="${myconf} --disable-nls"
-
- ./configure --enable-shared \
- --enable-64-bit-bfd \
- --prefix=/usr \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --host=${CHOST} \
- ${myconf} || die
-
- if use static
- then
- emake -e LDFLAGS=-all-static || die
- else
- emake || die
- fi
-
- if ! use build
- then
- #make the info pages (makeinfo included with gcc is used)
- make info || die
- fi
-}
-
-src_install() {
- make prefix=${D}/usr \
- mandir=${D}/usr/share/man \
- install || die
-
- #c++filt is included with gcc -- what are these GNU people thinking?
- #but not the manpage, so leave that!
- rm -f ${D}/usr/bin/c++filt #${D}/usr/share/man/man1/c++filt*
-
- #strip has a symlink going from /usr/${CHOST}/bin/strip to /usr/bin/strip
- #we should reverse it:
-
- rm ${D}/usr/${CHOST}/bin/strip; mv ${D}/usr/bin/strip ${D}/usr/${CHOST}/bin/strip
- #the strip symlink gets created in the loop below
-
- #ar, as, ld, nm, ranlib and strip are in two places; create symlinks. This will reduce the
- #size of the tbz2 significantly. We also move all the stuff in /usr/bin to /usr/${CHOST}/bin
- #and create the appropriate symlinks. Things are cleaner that way.
- cd ${D}/usr/bin
- local x
- for x in * strip
- do
- if [ ! -e ../${CHOST}/bin/${x} ]
- then
- mv $x ../${CHOST}/bin/${x}
- else
- rm -f $x
- fi
- ln -s ../${CHOST}/bin/${x} ${x}
- done
-
- cd ${S}
- if ! use build
- then
- #install info pages
- make infodir=${D}/usr/share/info install-info || die
- dodoc COPYING* README
- docinto bfd
- dodoc bfd/ChangeLog* bfd/COPYING bfd/README bfd/PORTING bfd/TODO
- docinto binutils
- dodoc binutils/ChangeLog binutils/NEWS binutils/README
- docinto gas
- dodoc gas/ChangeLog* gas/CONTRIBUTORS gas/COPYING gas/NEWS gas/README*
- docinto gprof
- dodoc gprof/ChangeLog* gprof/TEST gprof/TODO
- docinto ld
- dodoc ld/ChangeLog* ld/README ld/NEWS ld/TODO
- docinto libiberty
- dodoc libiberty/ChangeLog* libiberty/COPYING.LIB libiberty/README
- docinto opcodes
- dodoc opcodes/ChangeLog*
- #install pre-generated manpages
- rm -f ${D}/usr/share/man/man1/*
- doman ${S}/man/*.1
- else
- rm -rf ${D}/usr/share/man
- fi
-}
+++ /dev/null
-# Copyright 1999-2004 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/binutils/binutils-2.11.92.0.7.ebuild,v 1.19 2004/08/14 02:27:55 vapier Exp $
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="http://sources.redhat.com/binutils/"
-SRC_URI="mirror://kernel/linux/devel/binutils/${P}.tar.bz2"
-
-LICENSE="GPL-2 LGPL-2 BINUTILS"
-SLOT="0"
-KEYWORDS="x86 sparc"
-IUSE="build nls static"
-
-DEPEND="virtual/libc"
-
-src_compile() {
- local myconf
- if ! use nls
- then
- myconf="--disable-nls"
- fi
- ./configure --prefix=/usr --mandir=/usr/share/man --host=${CHOST} ${myconf} || die
- if use static
- then
- emake -e LDFLAGS=-all-static || die
- else
- emake || die
- fi
-}
-
-src_install() {
- make prefix=${D}/usr mandir=${D}/usr/share/man install || die
- #c++filt is included with gcc -- what are these GNU people thinking?
- rm ${D}/usr/bin/c++filt ${D}/usr/share/man/man1/c++filt*
-
- #strip has a symlink going from /usr/${CHOST}/bin/strip to /usr/bin/strip; we should reverse
- #it:
-
- rm ${D}/usr/${CHOST}/bin/strip; mv ${D}/usr/bin/strip ${D}/usr/${CHOST}/bin/strip
- #the strip symlink gets created in the loop below
-
- #ar, as, ld, nm, ranlib and strip are in two places; create symlinks. This will reduce the
- #size of the tbz2 significantly. We also move all the stuff in /usr/bin to /usr/${CHOST}/bin
- #and create the appropriate symlinks. Things are cleaner that way.
- cd ${D}/usr/bin
- local x
- for x in * strip
- do
- if [ ! -e ../${CHOST}/bin/${x} ]
- then
- mv $x ../${CHOST}/bin/${x}
- else
- rm -f $x
- fi
- ln -s ../${CHOST}/bin/${x} ${x}
- done
- cd ${S}
- if ! use build
- then
- dodoc COPYING* README
- docinto bfd
- dodoc bfd/ChangeLog* bfd/COPYING bfd/README bfd/PORTING bfd/TODO
- docinto binutils
- dodoc binutils/ChangeLog binutils/NEWS binutils/README
- docinto gas
- dodoc gas/ChangeLog* gas/CONTRIBUTORS gas/COPYING \
- gas/NEWS gas/README*
- docinto gprof
- dodoc gprof/ChangeLog* gprof/NOTES gprof/TEST gprof/TODO
- docinto ld
- dodoc ld/ChangeLog* ld/README ld/NEWS ld/TODO
- docinto libiberty
- dodoc libiberty/ChangeLog* libiberty/COPYING.LIB libiberty/README
- docinto opcodes
- dodoc opcodes/ChangeLog*
- else
- rm -rf ${D}/usr/share/man
- fi
-
-}
+++ /dev/null
-# Copyright 1999-2004 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/binutils/binutils-2.12.90.0.15.ebuild,v 1.19 2004/08/14 02:27:55 vapier Exp $
-
-inherit libtool
-
-DESCRIPTION="Tools necessary to build programs"
-SRC_URI="mirror://kernel/linux/devel/binutils/${P}.tar.bz2"
-HOMEPAGE="http://sources.redhat.com/binutils/"
-
-LICENSE="GPL-2 | LGPL-2"
-SLOT="0"
-KEYWORDS="x86 ppc sparc"
-IUSE="nls bootstrap static build"
-
-DEPEND="virtual/libc
- nls? ( sys-devel/gettext )
- || ( dev-lang/perl
- ( !build? ( dev-lang/perl ) )
- ( !bootstrap? ( dev-lang/perl ) )
- )"
-# This is a hairy one. Basically depend on dev-lang/perl
-# if "build" or "bootstrap" not in USE.
-
-src_compile() {
- local myconf=""
- use nls && \
- myconf="${myconf} --without-included-gettext" || \
- myconf="${myconf} --disable-nls"
-
- elibtoolize --portage
-
- ./configure --enable-shared \
- --enable-64-bit-bfd \
- --prefix=/usr \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --host=${CHOST} \
- ${myconf} || die
-
- if use static
- then
- make headers -C bfd CFLAGS=-O || die
- emake -e LDFLAGS=-all-static || die
- else
- make headers -C bfd CFLAGS=-O || die
- emake || die
- fi
-
- if ! use build
- then
- if ! use bootstrap
- then
- #nuke the manpages to recreate them (only use this if we have perl)
- find . -name '*.1' -exec rm {} ';'
- fi
- #make the info pages (makeinfo included with gcc is used)
- make info || die
- fi
-}
-
-src_install() {
- make prefix=${D}/usr \
- mandir=${D}/usr/share/man \
- infodir=${D}/usr/share/info \
- install || die
-
- insinto /usr/include
- doins include/libiberty.h
-
- #c++filt is included with gcc -- what are these GNU people thinking?
- #but not the manpage, so leave that!
- rm -f ${D}/usr/bin/c++filt #${D}/usr/share/man/man1/c++filt*
-
- #strip has a symlink going from /usr/${CHOST}/bin/strip to /usr/bin/strip
- #we should reverse it:
-
- rm ${D}/usr/${CHOST}/bin/strip; mv ${D}/usr/bin/strip ${D}/usr/${CHOST}/bin/strip
- #the strip symlink gets created in the loop below
-
- #ar, as, ld, nm, ranlib and strip are in two places; create symlinks. This will reduce the
- #size of the tbz2 significantly. We also move all the stuff in /usr/bin to /usr/${CHOST}/bin
- #and create the appropriate symlinks. Things are cleaner that way.
- cd ${D}/usr/bin
- local x
- for x in * strip
- do
- if [ ! -e ../${CHOST}/bin/${x} ]
- then
- mv $x ../${CHOST}/bin/${x}
- else
- rm -f $x
- fi
- ln -s ../${CHOST}/bin/${x} ${x}
- done
-
- cd ${S}
- if ! use build
- then
- make prefix=${D}/usr \
- mandir=${D}/usr/share/man \
- infodir=${D}/usr/share/info \
- install-info || die
-
- dodoc COPYING* README
- docinto bfd
- dodoc bfd/ChangeLog* bfd/COPYING bfd/README bfd/PORTING bfd/TODO
- docinto binutils
- dodoc binutils/ChangeLog binutils/NEWS binutils/README
- docinto gas
- dodoc gas/ChangeLog* gas/CONTRIBUTORS gas/COPYING gas/NEWS gas/README*
- docinto gprof
- dodoc gprof/ChangeLog* gprof/TEST gprof/TODO
- docinto ld
- dodoc ld/ChangeLog* ld/README ld/NEWS ld/TODO
- docinto libiberty
- dodoc libiberty/ChangeLog* libiberty/COPYING.LIB libiberty/README
- docinto opcodes
- dodoc opcodes/ChangeLog*
- #install pre-generated manpages
- else
- rm -rf ${D}/usr/share/man
- fi
-}
+++ /dev/null
-# Copyright 1999-2004 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/binutils/binutils-2.13.90.0.16-r1.ebuild,v 1.18 2004/08/14 02:27:55 vapier Exp $
-
-inherit eutils libtool flag-o-matic
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="http://sources.redhat.com/binutils/"
-SRC_URI="mirror://kernel/linux/devel/binutils/${P}.tar.bz2
- mirror://kernel/linux/devel/binutils/test/${P}.tar.bz2"
-
-LICENSE="GPL-2 | LGPL-2"
-SLOT="0"
-KEYWORDS="x86 ppc alpha sparc mips hppa"
-IUSE="nls bootstrap static build"
-
-DEPEND="virtual/libc
- nls? ( sys-devel/gettext )
- || ( dev-lang/perl
- ( !build? ( dev-lang/perl ) )
- ( !bootstrap? ( dev-lang/perl ) )
- )"
-# This is a hairy one. Basically depend on dev-lang/perl
-# if "build" or "bootstrap" not in USE.
-
-src_unpack() {
- unpack ${A}
-
- cd ${S}
- # Various patches from Redhat/Mandrake...
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.10-glibc21.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.10-ia64-brl.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.10-x86_64-testsuite.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.10-x86_64-gotpcrel.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.16-rodata-cst.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.16-eh-frame-ro.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.16-ppc-apuinfo.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.16-stt_tls.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.16-ia64-bootstrap.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.16-tls-strip.patch
-}
-
-src_compile() {
- # Generate borked binaries. Bug #6730
- filter-flags -fomit-frame-pointer -fssa
-
- # Add patches for mips
- if [ "${ARCH}" = "mips" ]
- then
- cd ${S}
- chmod +x mips/README
- ./mips/README
- fi
-
- local myconf=""
- use nls && \
- myconf="${myconf} --without-included-gettext" || \
- myconf="${myconf} --disable-nls"
-
- # Fix /usr/lib/libbfd.la
- elibtoolize --portage
-
- ./configure --enable-shared \
- --enable-64-bit-bfd \
- --prefix=/usr \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --host=${CHOST} \
- ${myconf} || die
-
- if use static
- then
- make headers -C bfd CFLAGS=-O || die
- emake -e LDFLAGS=-all-static || die
- else
- make headers -C bfd CFLAGS=-O || die
- emake || die
- fi
-
- if ! use build
- then
- if ! use bootstrap
- then
- #nuke the manpages to recreate them (only use this if we have perl)
- find . -name '*.1' -exec rm -f {} \; || :
- fi
- #make the info pages (makeinfo included with gcc is used)
- make info || die
- fi
-}
-
-src_install() {
-
- make prefix=${D}/usr \
- mandir=${D}/usr/share/man \
- infodir=${D}/usr/share/info \
- install || die
-
- insinto /usr/include
- doins include/libiberty.h
-
- # c++filt is included with gcc -- what are these GNU people thinking?
- # but not the manpage, so leave that!
-# We install it now, as gcc-3.3 do not have it any longer ...
-# rm -f ${D}/usr/bin/c++filt #${D}/usr/share/man/man1/c++filt*
-
- # By default strip has a symlink going from /usr/${CHOST}/bin/strip to
- # /usr/bin/strip we should reverse it:
-
- rm ${D}/usr/${CHOST}/bin/strip; mv ${D}/usr/bin/strip ${D}/usr/${CHOST}/bin/strip
- # The strip symlink gets created in the loop below
-
- # By default ar, as, ld, nm, ranlib and strip are in two places; create
- # symlinks. This will reduce the size of the tbz2 significantly. We also
- # move all the stuff in /usr/bin to /usr/${CHOST}/bin and create the
- # appropriate symlinks. Things are cleaner that way.
- cd ${D}/usr/bin
- local x=""
- for x in * strip
- do
- if [ ! -e ../${CHOST}/bin/${x} ]
- then
- mv ${x} ../${CHOST}/bin/${x}
- else
- rm -f ${x}
- fi
- ln -s ../${CHOST}/bin/${x} ${x}
- done
-
- cd ${S}
- if ! use build
- then
- make prefix=${D}/usr \
- mandir=${D}/usr/share/man \
- infodir=${D}/usr/share/info \
- install-info || die
-
- dodoc COPYING* README
- docinto bfd
- dodoc bfd/ChangeLog* bfd/COPYING bfd/README bfd/PORTING bfd/TODO
- docinto binutils
- dodoc binutils/ChangeLog binutils/NEWS binutils/README
- docinto gas
- dodoc gas/ChangeLog* gas/CONTRIBUTORS gas/COPYING gas/NEWS gas/README*
- docinto gprof
- dodoc gprof/ChangeLog* gprof/TEST gprof/TODO
- docinto ld
- dodoc ld/ChangeLog* ld/README ld/NEWS ld/TODO
- docinto libiberty
- dodoc libiberty/ChangeLog* libiberty/COPYING.LIB libiberty/README
- docinto opcodes
- dodoc opcodes/ChangeLog*
- # Install pre-generated manpages .. currently we do not ...
- else
- rm -rf ${D}/usr/share/man
- fi
-}
+++ /dev/null
-# Copyright 1999-2004 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/binutils/binutils-2.13.90.0.18-r1.ebuild,v 1.17 2004/08/14 02:27:55 vapier Exp $
-
-inherit eutils libtool flag-o-matic
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="http://sources.redhat.com/binutils/"
-SRC_URI="mirror://kernel/linux/devel/binutils/${P}.tar.bz2
- mirror://kernel/linux/devel/binutils/test/${P}.tar.bz2
- mirror://gentoo/${PN}-2.13.90.0.18-20030206.patch.bz2"
-
-LICENSE="GPL-2 | LGPL-2"
-SLOT="0"
-KEYWORDS="~x86 ~ppc ~sparc ~mips ~alpha arm ~hppa"
-IUSE="nls bootstrap build"
-
-DEPEND="virtual/libc
- nls? ( sys-devel/gettext )
- || ( dev-lang/perl
- ( !build? ( dev-lang/perl ) )
- ( !bootstrap? ( dev-lang/perl ) )
- )"
-# This is a hairy one. Basically depend on dev-lang/perl
-# if "build" or "bootstrap" not in USE.
-
-src_unpack() {
- unpack ${A}
-
- cd ${S}
- # Various patches from Redhat/Mandrake...
- epatch ${DISTDIR}/${PN}-2.13.90.0.18-20030206.patch.bz2
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.10-glibc21.patch
- # Compilation fails on sparc because of this patch.
- # epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.18-sparc-nonpic.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.10-ia64-brl.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.18-eh-frame-ro.patch
- use x86 &> /dev/null \
- && epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.16-array-sects-compat.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.18-ltconfig-multilib.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.18-searchdir.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.18-libpath-suffix.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.18-alpha-relax.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.18-s390-noreladyn.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.18-eh-frame-hdr.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.18-compatsym.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.18-ppc64-tls1.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.18-ppc64-tls2.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.18-s390-file-loc.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.18-sub-same.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.10-x86_64-gotpcrel.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.18-ld-r.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.18-array-sects-compat.patch
-
- # Add patches for mips
- if [ "${ARCH}" = "mips" ]
- then
- cd ${S}
- chmod +x mips/README
- ./mips/README
- fi
-}
-
-src_compile() {
- # Generate borked binaries. Bug #6730
- filter-flags -fomit-frame-pointer -fssa
- use arm && replace-flags -O? -O1
-
- local myconf=""
-
- use nls && \
- myconf="${myconf} --without-included-gettext" || \
- myconf="${myconf} --disable-nls"
-
- # Fix /usr/lib/libbfd.la
- elibtoolize --portage
-
- ./configure --enable-shared \
- --enable-64-bit-bfd \
- --prefix=/usr \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --host=${CHOST} \
- ${myconf} || die
-
- make configure-bfd || die
- make headers -C bfd || die
- emake tooldir="${ROOT}/usr/bin" \
- all || die
-
- if ! use build
- then
- if ! use bootstrap
- then
- # Nuke the manpages to recreate them (only use this if we have perl)
- find . -name '*.1' -exec rm -f {} \; || :
- fi
- # Make the info pages (makeinfo included with gcc is used)
- make info || die
- fi
-}
-
-src_install() {
-
- make prefix=${D}/usr \
- mandir=${D}/usr/share/man \
- infodir=${D}/usr/share/info \
- install || die
-
- insinto /usr/include
- doins include/libiberty.h
-
- # c++filt is included with gcc -- what are these GNU people thinking?
- # but not the manpage, so leave that!
-# We install it now, as gcc-3.3 do not have it any longer ...
-# rm -f ${D}/usr/bin/c++filt #${D}/usr/share/man/man1/c++filt*
-
- # By default strip has a symlink going from /usr/${CHOST}/bin/strip to
- # /usr/bin/strip we should reverse it:
-
- rm ${D}/usr/${CHOST}/bin/strip; mv ${D}/usr/bin/strip ${D}/usr/${CHOST}/bin/strip
- # The strip symlink gets created in the loop below
-
- # By default ar, as, ld, nm, ranlib and strip are in two places; create
- # symlinks. This will reduce the size of the tbz2 significantly. We also
- # move all the stuff in /usr/bin to /usr/${CHOST}/bin and create the
- # appropriate symlinks. Things are cleaner that way.
- cd ${D}/usr/bin
- local x=""
- for x in * strip
- do
- if [ ! -e ../${CHOST}/bin/${x} ]
- then
- mv ${x} ../${CHOST}/bin/${x}
- else
- rm -f ${x}
- fi
- ln -s ../${CHOST}/bin/${x} ${x}
- done
-
- cd ${S}
- if ! use build
- then
- make prefix=${D}/usr \
- mandir=${D}/usr/share/man \
- infodir=${D}/usr/share/info \
- install-info || die
-
- dodoc COPYING* README
- docinto bfd
- dodoc bfd/ChangeLog* bfd/COPYING bfd/README bfd/PORTING bfd/TODO
- docinto binutils
- dodoc binutils/ChangeLog binutils/NEWS binutils/README
- docinto gas
- dodoc gas/ChangeLog* gas/CONTRIBUTORS gas/COPYING gas/NEWS gas/README*
- docinto gprof
- dodoc gprof/ChangeLog* gprof/TEST gprof/TODO
- docinto ld
- dodoc ld/ChangeLog* ld/README ld/NEWS ld/TODO
- docinto libiberty
- dodoc libiberty/ChangeLog* libiberty/COPYING.LIB libiberty/README
- docinto opcodes
- dodoc opcodes/ChangeLog*
- # Install pre-generated manpages .. currently we do not ...
- else
- rm -rf ${D}/usr/share/man
- fi
-}
+++ /dev/null
-# Copyright 1999-2004 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/binutils/binutils-2.13.90.0.18.ebuild,v 1.26 2004/08/14 02:27:55 vapier Exp $
-
-inherit eutils libtool flag-o-matic
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="http://sources.redhat.com/binutils/"
-SRC_URI="mirror://kernel/linux/devel/binutils/${P}.tar.bz2
- mirror://kernel/linux/devel/binutils/test/${P}.tar.bz2"
-
-LICENSE="GPL-2 | LGPL-2"
-SLOT="0"
-KEYWORDS="x86 ppc alpha sparc ~mips ~hppa "
-IUSE="nls bootstrap build"
-
-DEPEND="virtual/libc
- nls? ( sys-devel/gettext )
- || ( dev-lang/perl
- ( !build? ( dev-lang/perl ) )
- ( !bootstrap? ( dev-lang/perl ) )
- )"
-# This is a hairy one. Basically depend on dev-lang/perl
-# if "build" or "bootstrap" not in USE.
-
-src_unpack() {
- unpack ${A}
-
- cd ${S}
- # Various patches from Redhat/Mandrake...
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.16-sparc-nonpic.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.10-glibc21.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.10-ia64-brl.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.10-x86_64-testsuite.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.10-x86_64-gotpcrel.patch
- epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.18-eh-frame-ro.patch
- use x86 &> /dev/null \
- && epatch ${FILESDIR}/2.13/${PN}-2.13.90.0.16-array-sects-compat.patch
-
- # Add patches for mips
- if [ "${ARCH}" = "mips" ]
- then
- cd ${S}
- chmod +x mips/README
- ./mips/README
- fi
-}
-
-src_compile() {
- # Generate borked binaries. Bug #6730
- filter-flags -fomit-frame-pointer -fssa
- use arm && replace-flags -O? -O1
-
- local myconf=""
-
- use nls && \
- myconf="${myconf} --without-included-gettext" || \
- myconf="${myconf} --disable-nls"
-
- # Fix /usr/lib/libbfd.la
- elibtoolize --portage
-
- ./configure --enable-shared \
- --enable-64-bit-bfd \
- --prefix=/usr \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --host=${CHOST} \
- ${myconf} || die
-
- make configure-bfd || die
- make headers -C bfd || die
- emake tooldir="${ROOT}/usr/bin" \
- all || die
-
- if ! use build
- then
- if ! use bootstrap
- then
- # Nuke the manpages to recreate them (only use this if we have perl)
- find . -name '*.1' -exec rm -f {} \; || :
- fi
- # Make the info pages (makeinfo included with gcc is used)
- make info || die
- fi
-}
-
-src_install() {
-
- make prefix=${D}/usr \
- mandir=${D}/usr/share/man \
- infodir=${D}/usr/share/info \
- install || die
-
- insinto /usr/include
- doins include/libiberty.h
-
- # c++filt is included with gcc -- what are these GNU people thinking?
- # but not the manpage, so leave that!
-# We install it now, as gcc-3.3 do not have it any longer ...
-# rm -f ${D}/usr/bin/c++filt #${D}/usr/share/man/man1/c++filt*
-
- # By default strip has a symlink going from /usr/${CHOST}/bin/strip to
- # /usr/bin/strip we should reverse it:
-
- rm ${D}/usr/${CHOST}/bin/strip; mv ${D}/usr/bin/strip ${D}/usr/${CHOST}/bin/strip
- # The strip symlink gets created in the loop below
-
- # By default ar, as, ld, nm, ranlib and strip are in two places; create
- # symlinks. This will reduce the size of the tbz2 significantly. We also
- # move all the stuff in /usr/bin to /usr/${CHOST}/bin and create the
- # appropriate symlinks. Things are cleaner that way.
- cd ${D}/usr/bin
- local x=""
- for x in * strip
- do
- if [ ! -e ../${CHOST}/bin/${x} ]
- then
- mv ${x} ../${CHOST}/bin/${x}
- else
- rm -f ${x}
- fi
- ln -s ../${CHOST}/bin/${x} ${x}
- done
-
- cd ${S}
- if ! use build
- then
- make prefix=${D}/usr \
- mandir=${D}/usr/share/man \
- infodir=${D}/usr/share/info \
- install-info || die
-
- dodoc COPYING* README
- docinto bfd
- dodoc bfd/ChangeLog* bfd/COPYING bfd/README bfd/PORTING bfd/TODO
- docinto binutils
- dodoc binutils/ChangeLog binutils/NEWS binutils/README
- docinto gas
- dodoc gas/ChangeLog* gas/CONTRIBUTORS gas/COPYING gas/NEWS gas/README*
- docinto gprof
- dodoc gprof/ChangeLog* gprof/TEST gprof/TODO
- docinto ld
- dodoc ld/ChangeLog* ld/README ld/NEWS ld/TODO
- docinto libiberty
- dodoc libiberty/ChangeLog* libiberty/COPYING.LIB libiberty/README
- docinto opcodes
- dodoc opcodes/ChangeLog*
- # Install pre-generated manpages .. currently we do not ...
- else
- rm -rf ${D}/usr/share/man
- fi
-}
+++ /dev/null
---- binutils-2.12.90.0.14/ld/emulparams/elf_i386_glibc21.sh.glibc21 2002-06-28 18:31:13.000000000 +0200
-+++ binutils-2.12.90.0.14/ld/emulparams/elf_i386_glibc21.sh 2002-06-28 18:31:13.000000000 +0200
-@@ -0,0 +1,11 @@
-+SCRIPT_NAME=elf
-+OUTPUT_FORMAT="elf32-i386"
-+TEXT_START_ADDR=0x08048000
-+MAXPAGESIZE=0x1000
-+NONPAGED_TEXT_START_ADDR=0x08048000
-+ARCH=i386
-+MACHINE=
-+NOP=0x9090
-+TEMPLATE_NAME=elf32
-+GENERATE_SHLIB_SCRIPT=yes
-+LIB_PATH=/usr/i386-glibc21-linux/lib:/usr/local/lib
---- binutils-2.12.90.0.14/ld/configure.tgt.glibc21 2002-06-19 06:41:59.000000000 +0200
-+++ binutils-2.12.90.0.14/ld/configure.tgt 2002-06-28 18:31:13.000000000 +0200
-@@ -142,7 +142,8 @@ i[3456]86-*-linux*aout*) targ_emul=i386l
- ;;
- i[3456]86-*-linux*oldld) targ_emul=i386linux; targ_extra_emuls=elf_i386 ;;
- i[3456]86-*-linux-gnu*) targ_emul=elf_i386
-- targ_extra_emuls=i386linux
-+ targ_extra_emuls="i386linux elf_i386_glibc21"
-+ targ_extra_libpath=elf_i386_glibc21
- tdir_i386linux=${targ_alias}aout
- ;;
- x86_64-*-linux-gnu*) targ_emul=elf_x86_64
---- binutils-2.12.90.0.14/ld/Makefile.am.glibc21 2002-06-26 18:24:56.000000000 +0200
-+++ binutils-2.12.90.0.14/ld/Makefile.am 2002-06-28 18:31:13.000000000 +0200
-@@ -178,6 +178,7 @@ ALL_EMULATIONS = \
- eelf_i386_be.o \
- eelf_i386_chaos.o \
- eelf_i386_fbsd.o \
-+ eelf_i386_glibc21.o \
- eelf_i386_ldso.o \
- eelf_s390.o \
- egld960.o \
-@@ -698,6 +699,9 @@ eelf_i386_be.c: $(srcdir)/emulparams/elf
- eelf_i386_chaos.c: $(srcdir)/emulparams/elf_i386_chaos.sh \
- $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf_chaos.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} elf_i386_chaos "$(tdir_elf_i386_chaos)"
-+eelf_i386_glibc21.c: $(srcdir)/emulparams/elf_i386_glibc21.sh \
-+ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
-+ ${GENSCRIPTS} elf_i386_glibc21 "$(tdir_elf_i386_glibc21)"
- eelf_i386_fbsd.c: $(srcdir)/emulparams/elf_i386_fbsd.sh \
- $(srcdir)/emulparams/elf_i386.sh \
- $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
---- binutils-2.12.90.0.14/ld/Makefile.in.glibc21 2002-06-26 18:24:56.000000000 +0200
-+++ binutils-2.12.90.0.14/ld/Makefile.in 2002-06-28 18:33:24.000000000 +0200
-@@ -186,7 +186,7 @@ INCLUDES = -D_GNU_SOURCE -I. -I$(srcdir)
- BFDLIB = ../bfd/libbfd.la
- LIBIBERTY = ../libiberty/libiberty.a
-
--ALL_EMULATIONS = ea29k.o eaixppc.o eaixrs6.o ealpha.o earcelf.o earm_epoc_pe.o earmaoutb.o earmaoutl.o earmcoff.o earmelf.o earmelf_fbsd.o earmelf_linux.o earmelf_nbsd.o earmelfb_nbsd.o earmelf_oabi.o earmnbsd.o earmpe.o eavr1200.o eavr23xx.o eavr4433.o eavr44x4.o eavr85xx.o eavrmega103.o eavrmega161.o eavrmega603.o eavr1.o eavr2.o eavr3.o eavr4.o eavr5.o ecoff_sparc.o ecrisaout.o ecriself.o ecrislinux.o ed10velf.o ed30v_e.o ed30v_o.o ed30velf.o edelta68.o eelf32_dlx.o eebmon29k.o eelf32_i960.o eelf32_i860.o eelf32_sparc.o eelf32b4300.o eelf32bmip.o eelf32bmipn32.o eelf32btsmip.o eelf32ltsmip.o eelf32ebmip.o eelf32elmip.o eelf32fr30.o eelf32frv.o eelf32i370.o eelf32l4300.o eelf32lmip.o eelf32lppc.o eelf32lppcsim.o eelf32mcore.o eelf32openrisc.o eelf32ppc.o eelf32ppc_fbsd.o eelf32ppclinux.o eelf32ppcsim.o eelf32ppcwindiss.o eelf32vax.o eelf32xstormy16.o eelf_i386.o eelf_i386_be.o eelf_i386_chaos.o eelf_i386_fbsd.o eelf_i386_ldso.o eelf_s390.o egld960.o egld960coff.o eh8300.o eh8300h.o eh8300s.o eh8300elf.o eh8300helf.o eh8300self.o eh8500.o eh8500b.o eh8500c.o eh8500m.o eh8500s.o ehp300bsd.o ehp3hpux.o ehppaelf.o ehppalinux.o ehppanbsd.o ei386aout.o ei386beos.o ei386bsd.o ei386coff.o ei386go32.o ei386linux.o ei386lynx.o ei386mach.o ei386moss.o ei386msdos.o ei386nbsd.o ei386nto.o ei386nw.o ei386pe.o ei386pe_posix.o elnk960.o em68hc11elf.o em68hc11elfb.o em68hc12elf.o em68hc12elfb.o em68k4knbsd.o em68kaout.o em68kaux.o em68kcoff.o em68kelf.o em68kelfnbsd.o em68klinux.o em68klynx.o em68knbsd.o em68kpsos.o em88kbcs.o emcorepe.o emipsbig.o emipsbsd.o emipsidt.o emipsidtl.o emipslit.o emipslnews.o emipspe.o enews.o ens32knbsd.o eor32.o eor32elf.o epc532macha.o epdp11.o epjelf.o epjlelf.o eppcmacos.o eppcnw.o eppcpe.o eriscix.o esa29200.o esh.o eshelf32.o eshlelf32.o eshelf32_nbsd.o eshlelf32_nbsd.o eshelf.o eshelf_linux.o eshlelf_linux.o eshelf_nbsd.o eshlelf_nbsd.o eshl.o eshlelf.o eshpe.o esparcaout.o esparclinux.o esparclynx.o esparcnbsd.o est2000.o esun3.o esun4.o etic30aout.o etic30coff.o etic54xcoff.o etic80coff.o evanilla.o evax.o evaxnbsd.o evsta.o ew65.o ez8001.o ez8002.o
-+ALL_EMULATIONS = ea29k.o eaixppc.o eaixrs6.o ealpha.o earcelf.o earm_epoc_pe.o earmaoutb.o earmaoutl.o earmcoff.o earmelf.o earmelf_fbsd.o earmelf_linux.o earmelf_nbsd.o earmelfb_nbsd.o earmelf_oabi.o earmnbsd.o earmpe.o eavr1200.o eavr23xx.o eavr4433.o eavr44x4.o eavr85xx.o eavrmega103.o eavrmega161.o eavrmega603.o eavr1.o eavr2.o eavr3.o eavr4.o eavr5.o ecoff_sparc.o ecrisaout.o ecriself.o ecrislinux.o ed10velf.o ed30v_e.o ed30v_o.o ed30velf.o edelta68.o eelf32_dlx.o eebmon29k.o eelf32_i960.o eelf32_i860.o eelf32_sparc.o eelf32b4300.o eelf32bmip.o eelf32bmipn32.o eelf32btsmip.o eelf32ltsmip.o eelf32ebmip.o eelf32elmip.o eelf32fr30.o eelf32frv.o eelf32i370.o eelf32l4300.o eelf32lmip.o eelf32lppc.o eelf32lppcsim.o eelf32mcore.o eelf32openrisc.o eelf32ppc.o eelf32ppc_fbsd.o eelf32ppclinux.o eelf32ppcsim.o eelf32ppcwindiss.o eelf32vax.o eelf32xstormy16.o eelf_i386.o eelf_i386_be.o eelf_i386_chaos.o eelf_i386_glibc21.o eelf_i386_fbsd.o eelf_i386_ldso.o eelf_s390.o egld960.o egld960coff.o eh8300.o eh8300h.o eh8300s.o eh8300elf.o eh8300helf.o eh8300self.o eh8500.o eh8500b.o eh8500c.o eh8500m.o eh8500s.o ehp300bsd.o ehp3hpux.o ehppaelf.o ehppalinux.o ehppanbsd.o ei386aout.o ei386beos.o ei386bsd.o ei386coff.o ei386go32.o ei386linux.o ei386lynx.o ei386mach.o ei386moss.o ei386msdos.o ei386nbsd.o ei386nto.o ei386nw.o ei386pe.o ei386pe_posix.o elnk960.o em68hc11elf.o em68hc11elfb.o em68hc12elf.o em68hc12elfb.o em68k4knbsd.o em68kaout.o em68kaux.o em68kcoff.o em68kelf.o em68kelfnbsd.o em68klinux.o em68klynx.o em68knbsd.o em68kpsos.o em88kbcs.o emcorepe.o emipsbig.o emipsbsd.o emipsidt.o emipsidtl.o emipslit.o emipslnews.o emipspe.o enews.o ens32knbsd.o eor32.o eor32elf.o epc532macha.o epdp11.o epjelf.o epjlelf.o eppcmacos.o eppcnw.o eppcpe.o eriscix.o esa29200.o esh.o eshelf32.o eshlelf32.o eshelf32_nbsd.o eshlelf32_nbsd.o eshelf.o eshelf_linux.o eshlelf_linux.o eshelf_nbsd.o eshlelf_nbsd.o eshl.o eshlelf.o eshpe.o esparcaout.o esparclinux.o esparclynx.o esparcnbsd.o est2000.o esun3.o esun4.o etic30aout.o etic30coff.o etic54xcoff.o etic80coff.o evanilla.o evax.o evaxnbsd.o evsta.o ew65.o ez8001.o ez8002.o
-
-
- ALL_64_EMULATIONS = eelf64_aix.o eelf64_ia64.o eelf64_ia64_fbsd.o eshelf64.o eshlelf64.o eshelf64_nbsd.o eshlelf64_nbsd.o eelf_x86_64.o eelf_x86_64_fbsd.o eelf64_s390.o eelf64_sparc.o eelf64_sparc_fbsd.o eelf64alpha.o eelf64alpha_fbsd.o eelf64alpha_nbsd.o eelf64bmip.o eelf64btsmip.o eelf64ltsmip.o eelf64hppa.o eelf64mmix.o emmo.o eelf64ppc.o eelf64lppc.o ehppa64linux.o
-@@ -1182,6 +1182,9 @@ eelf_i386_be.c: $(srcdir)/emulparams/elf
- eelf_i386_chaos.c: $(srcdir)/emulparams/elf_i386_chaos.sh \
- $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf_chaos.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} elf_i386_chaos "$(tdir_elf_i386_chaos)"
-+eelf_i386_glibc21.c: $(srcdir)/emulparams/elf_i386_glibc21.sh \
-+ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
-+ ${GENSCRIPTS} elf_i386_glibc21 "$(tdir_elf_i386_glibc21)"
- eelf_i386_fbsd.c: $(srcdir)/emulparams/elf_i386_fbsd.sh \
- $(srcdir)/emulparams/elf_i386.sh \
- $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
+++ /dev/null
---- binutils-2.12.90.0.14/bfd/elf64-x86-64.c.x86_64-libpic 2002-06-28 18:37:41.000000000 +0200
-+++ binutils-2.12.90.0.14/bfd/elf64-x86-64.c 2002-06-28 18:45:29.000000000 +0200
-@@ -660,11 +660,28 @@ elf64_x86_64_check_relocs (abfd, info, s
- case R_X86_64_8:
- case R_X86_64_16:
- case R_X86_64_32:
-- case R_X86_64_64:
- case R_X86_64_32S:
-+ /* Let's help debug shared library creation. These relocs
-+ cannot be used in shared libs. Don't error our for
-+ sections we don't care about, such as debug sections or
-+ non-constant sections. */
-+ if (info->shared
-+ && (sec->flags & SEC_ALLOC) != 0
-+ && (sec->flags & SEC_READONLY) != 0)
-+ {
-+ (*_bfd_error_handler)
-+ (_("%s: relocation %s can not be used when making a shared object; recompile with -fPIC"),
-+ bfd_archive_filename (abfd),
-+ x86_64_elf_howto_table[ELF64_R_TYPE (rel->r_info)].name);
-+ bfd_set_error (bfd_error_bad_value);
-+ return false;
-+ }
-+ /* Fall through. */
-+
- case R_X86_64_PC8:
- case R_X86_64_PC16:
- case R_X86_64_PC32:
-+ case R_X86_64_64:
- if (h != NULL && !info->shared)
- {
- /* If this reloc is in a read-only section, we might
+++ /dev/null
-MD5 14e7d6e283326662d7287d8cba47cc58 binutils-2.11.92.0.12.3.tar.bz2 8099613
-MD5 eb31a229238366e29387fe8332816ccf binutils-manpages-2.11.92.0.12.3.tar.bz2 52062
+++ /dev/null
-MD5 bc304a6008faddbb3ceb5907173998ae binutils-2.11.92.0.7.tar.bz2 7820295
+++ /dev/null
-MD5 2950ae2f0edd34919b7559ff9908831a binutils-2.12.90.0.15.tar.bz2 8984838
+++ /dev/null
-MD5 d27a33db69b9799a414d98f4b274b3a6 binutils-2.13.90.0.16.tar.bz2 9735189
+++ /dev/null
-MD5 422a6fc64ebf785cad64a76defd4a4b6 binutils-2.13.90.0.18.tar.bz2 9849479
+++ /dev/null
-MD5 422a6fc64ebf785cad64a76defd4a4b6 binutils-2.13.90.0.18.tar.bz2 9849479
-MD5 acb4b464419405e58af1f20d08a4d37a binutils-2.13.90.0.18-20030206.patch.bz2 332800