diff options
author | Mike Frysinger <vapier@gentoo.org> | 2015-09-26 13:44:00 -0400 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2015-09-26 14:15:08 -0400 |
commit | 4c2963c4795822d443a0128e5ec47d1418f6b2a1 (patch) | |
tree | 8be92497c099c832ac5f36bc55fd5aa36a96100b /sys-libs/binutils-libs | |
parent | sys-devel/gdb: move old version to the toolchain overlay (diff) | |
download | gentoo-4c2963c4795822d443a0128e5ec47d1418f6b2a1.tar.gz gentoo-4c2963c4795822d443a0128e5ec47d1418f6b2a1.tar.bz2 gentoo-4c2963c4795822d443a0128e5ec47d1418f6b2a1.zip |
sys-libs/binutils-libs: new package #528088
Since packages want to link against binutils libs (bfd/opcodes) and
properly track updates when the binutils SONAMEs change, split the
libs out into a dedicated package. This way we can continue with
the multi-SLOT-ed binutils package w/out making the library users
go crazy.
Diffstat (limited to 'sys-libs/binutils-libs')
-rw-r--r-- | sys-libs/binutils-libs/Manifest | 2 | ||||
-rw-r--r-- | sys-libs/binutils-libs/binutils-libs-2.25.1.ebuild | 77 | ||||
-rw-r--r-- | sys-libs/binutils-libs/metadata.xml | 8 |
3 files changed, 87 insertions, 0 deletions
diff --git a/sys-libs/binutils-libs/Manifest b/sys-libs/binutils-libs/Manifest new file mode 100644 index 000000000000..6dc0601af524 --- /dev/null +++ b/sys-libs/binutils-libs/Manifest @@ -0,0 +1,2 @@ +DIST binutils-2.25.1-patches-1.1.tar.xz 18724 SHA256 3d4c0ab2d45d3a952f60246fa5a4353f057c03110130b50e3b2103bd49c345fa SHA512 209c55bf26b51d8c513b40abd2d95f687159c4e964a6c732924f277d04c97323c427fe452c63d5ec6962dcd8892d6d5d807ba88826739425bce6812a31f573dd WHIRLPOOL 2b650af352183d2b58abaee955b223606d63bd5f22a73360e79af1d3b575c5ea385f90be92348ec850534d96f7b6632b1e494f314ec1655eedc26108e849aab7 +DIST binutils-2.25.1.tar.bz2 24163561 SHA256 b5b14added7d78a8d1ca70b5cb75fef57ce2197264f4f5835326b0df22ac9f22 SHA512 0b36dda0e6d32cd25613c0e64b56b28312515c54d6a159efd3db9a86717f114ab0a0a1f69d08975084d55713ebaeab64e4085c9b3d1c3fa86712869f80eb954d WHIRLPOOL daa804331ee880296c2fe29fd9b8a52cc695629d4bbe0b9889d96ffc54d330f00fac3f3cb12b3aaf6b7505521ef499c53760912cd7c9bb54f2d5e288224bd1eb diff --git a/sys-libs/binutils-libs/binutils-libs-2.25.1.ebuild b/sys-libs/binutils-libs/binutils-libs-2.25.1.ebuild new file mode 100644 index 000000000000..9faa28dd251d --- /dev/null +++ b/sys-libs/binutils-libs/binutils-libs-2.25.1.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +PATCHVER="1.1" + +inherit eutils + +MY_PN="binutils" +MY_P="${MY_PN}-${PV}" + +DESCRIPTION="Core binutils libraries (libbfd, libopcodes, libiberty) for external packages" +HOMEPAGE="https://sourceware.org/binutils/" +SRC_URI="mirror://gnu/binutils/${MY_P}.tar.bz2 + mirror://gentoo/${MY_P}-patches-${PATCHVER}.tar.xz" + +LICENSE="|| ( GPL-3 LGPL-3 )" +# The shared lib SONAMEs use the ${PV} in them. +SLOT="0/${PV}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd" +IUSE="nls static-libs zlib" + +COMMON_DEPEND="zlib? ( sys-libs/zlib )" +DEPEND="${COMMON_DEPEND} + nls? ( sys-devel/gettext )" +# Need a newer binutils-config that'll reset include/lib symlinks for us. +RDEPEND="${COMMON_DEPEND} + >=sys-devel/binutils-config-5 + nls? ( !<sys-devel/gdb-7.10-r1[nls] )" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + EPATCH_SUFFIX="patch" epatch "${WORKDIR}"/patch +} + +pkgversion() { + printf "Gentoo ${PVR}" + [[ -n ${PATCHVER} ]] && printf " p${PATCHVER}" +} + +src_configure() { + local myconf=( + $(use_with zlib) + --enable-obsolete + --enable-shared + --enable-threads + # Newer versions (>=2.24) make this an explicit option. #497268 + --enable-install-libiberty + --disable-werror + --with-bugurl="https://bugs.gentoo.org/" + --with-pkgversion="$(pkgversion)" + $(use_enable static-libs static) + # We only care about the libs, so disable programs. #528088 + --disable-{binutils,etc,ld,gas,gold,gprof} + # Disable modules that are in a combined binutils/gdb tree. #490566 + --disable-{gdb,libdecnumber,readline,sim} + # Strip out broken static link flags. + # https://gcc.gnu.org/PR56750 + --without-stage1-ldflags + ) + + use nls \ + && myconf+=( --without-included-gettext ) \ + || myconf+=( --disable-nls ) + + econf "${myconf[@]}" +} + +src_install() { + default + use static-libs || find "${ED}"/usr -name '*.la' -delete + # Provide libiberty.h directly. + dosym libiberty/libiberty.h /usr/include/libiberty.h +} diff --git a/sys-libs/binutils-libs/metadata.xml b/sys-libs/binutils-libs/metadata.xml new file mode 100644 index 000000000000..e9755a1deae1 --- /dev/null +++ b/sys-libs/binutils-libs/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>toolchain</herd> +<upstream> + <remote-id type="cpe">cpe:/a:gnu:binutils</remote-id> +</upstream> +</pkgmetadata> |