Gentoo Archives: gentoo-commits

From: "Andreas Hüttel" <dilfridge@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-libs/binutils-libs/
Date: Sun, 15 Jul 2018 12:59:20
Message-Id: 1531659421.aa15c8cdb6163c0173229e9d1e94bf1168969b17.dilfridge@gentoo
1 commit: aa15c8cdb6163c0173229e9d1e94bf1168969b17
2 Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
3 AuthorDate: Sun Jul 15 12:57:01 2018 +0000
4 Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
5 CommitDate: Sun Jul 15 12:57:01 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aa15c8cd
7
8 sys-libs/binutils-libs: Zero-day 2.31 bump for the brave or stupid
9
10 Package-Manager: Portage-2.3.40, Repoman-2.3.9
11
12 sys-libs/binutils-libs/Manifest | 2 +
13 sys-libs/binutils-libs/binutils-libs-2.31.ebuild | 105 +++++++++++++++++++++++
14 2 files changed, 107 insertions(+)
15
16 diff --git a/sys-libs/binutils-libs/Manifest b/sys-libs/binutils-libs/Manifest
17 index 33489ea2951..cf7f4f1be09 100644
18 --- a/sys-libs/binutils-libs/Manifest
19 +++ b/sys-libs/binutils-libs/Manifest
20 @@ -9,3 +9,5 @@ DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7c
21 DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6ed0e4e7d5a9169861aa4b3c45511794e1e749c216862a8258c2029f1b40c511dcb2a0aeaecda57e75d52418f10d6f345718f SHA512 1686d5b58ee968f2000647acab2bee4c263d1c85fd43fed8c820fccfc0d7024a01211e7853cd5ce452fa90da500bc17309edf6dbc901c7fd6fc7b3e3d6f42581
22 DIST binutils-2.30-patches-3.tar.xz 548804 BLAKE2B 428a1750233ae3f019e20cb5ed1d8e6fe6455181e8f5961dbfe7b66493d1c42050f889e45c02c1fc1a84d545c9e61f81ad6ffd5afc0b1099a702ccc7637c3abe SHA512 c91e902d1d9fc2e9782df04c93173c3207c771f1c063e2ff12c9336593c954ea3f1b2474a8fc045927d72fe18f7401874059599d100c4a1fd152081f05913d03
23 DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
24 +DIST binutils-2.31-patches-1.tar.xz 16692 BLAKE2B ee9c7b344b12073c881eaf6fa80e8cb3187add720a26b60e7ef7db9dc3eb8e6e2b83cd0afb3115c4846aa914f8957554bd010f67af34dc5ad81e676639cf361e SHA512 4004d52327babd00f946b199f71e9eca840e66c65a287730af80b5a69138fe5f946f33c13400e028088238314c644f00b858049f8923948d2e6144dc779c24c0
25 +DIST binutils-2.31.tar.xz 20445772 BLAKE2B 02d9ef7f8ea0d24682716b6890916d507762b4672a3148192afbbc1d6323b3f3970eb630ec9af5e18c60ba1d4579d49d847e571bcd8b1236c24b04c9e3815481 SHA512 3448a71c42d790569c1159c1042aa520b2d8ac8af7506fb1f2a4199dfb13b39f1c2271a5cb3a643d10c7d8a388a73f190e90503d4793a016da7893473aa1c635
26
27 diff --git a/sys-libs/binutils-libs/binutils-libs-2.31.ebuild b/sys-libs/binutils-libs/binutils-libs-2.31.ebuild
28 new file mode 100644
29 index 00000000000..777a60ae37e
30 --- /dev/null
31 +++ b/sys-libs/binutils-libs/binutils-libs-2.31.ebuild
32 @@ -0,0 +1,105 @@
33 +# Copyright 1999-2018 Gentoo Foundation
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +EAPI=6
37 +
38 +PATCH_VER=1
39 +
40 +inherit eutils toolchain-funcs multilib-minimal
41 +
42 +MY_PN="binutils"
43 +MY_P="${MY_PN}-${PV}"
44 +PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
45 +PATCH_DEV=${PATCH_DEV:-dilfridge}
46 +
47 +DESCRIPTION="Core binutils libraries (libbfd, libopcodes, libiberty) for external packages"
48 +HOMEPAGE="https://sourceware.org/binutils/"
49 +SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz
50 + mirror://gentoo/${MY_PN}-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
51 +
52 +LICENSE="|| ( GPL-3 LGPL-3 )"
53 +# The shared lib SONAMEs use the ${PV} in them.
54 +SLOT="0/${PV}"
55 +IUSE="64-bit-bfd multitarget nls static-libs"
56 +
57 +COMMON_DEPEND="sys-libs/zlib[${MULTILIB_USEDEP}]"
58 +DEPEND="${COMMON_DEPEND}
59 + >=sys-apps/texinfo-4.7
60 + nls? ( sys-devel/gettext )"
61 +# Need a newer binutils-config that'll reset include/lib symlinks for us.
62 +RDEPEND="${COMMON_DEPEND}
63 + >=sys-devel/binutils-config-5
64 + nls? ( !<sys-devel/gdb-7.10-r1[nls] )"
65 +
66 +S="${WORKDIR}/${MY_P}"
67 +
68 +MULTILIB_WRAPPED_HEADERS=(
69 + /usr/include/bfd.h
70 +)
71 +
72 +src_prepare() {
73 + if [[ ! -z ${PATCH_VER} ]] ; then
74 + einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
75 + eapply "${WORKDIR}/patch"/*.patch
76 + fi
77 + default
78 +}
79 +
80 +pkgversion() {
81 + printf "Gentoo ${PVR}"
82 + [[ -n ${PATCHVER} ]] && printf " p${PATCHVER}"
83 +}
84 +
85 +multilib_src_configure() {
86 + local myconf=(
87 + --enable-obsolete
88 + --enable-shared
89 + --enable-threads
90 + # Newer versions (>=2.24) make this an explicit option. #497268
91 + --enable-install-libiberty
92 + --disable-werror
93 + --with-bugurl="https://bugs.gentoo.org/"
94 + --with-pkgversion="$(pkgversion)"
95 + $(use_enable static-libs static)
96 + # The binutils eclass enables this flag for all bi-arch builds,
97 + # but other tools often don't care about that support. Put it
98 + # beyond a flag if people really want it, but otherwise leave
99 + # it disabled as it can slow things down on 32bit arches. #438522
100 + $(use_enable 64-bit-bfd)
101 + # This only disables building in the zlib subdir.
102 + # For binutils itself, it'll use the system version. #591516
103 + --without-zlib
104 + --with-system-zlib
105 + # We only care about the libs, so disable programs. #528088
106 + --disable-{binutils,etc,ld,gas,gold,gprof}
107 + # Disable modules that are in a combined binutils/gdb tree. #490566
108 + --disable-{gdb,libdecnumber,readline,sim}
109 + # Strip out broken static link flags.
110 + # https://gcc.gnu.org/PR56750
111 + --without-stage1-ldflags
112 + )
113 +
114 + # mips can't do hash-style=gnu ...
115 + if [[ $(tc-arch) != mips ]] ; then
116 + myconf+=( --enable-default-hash-style=gnu )
117 + fi
118 +
119 + use multitarget && myconf+=( --enable-targets=all --enable-64-bit-bfd )
120 +
121 + use nls \
122 + && myconf+=( --without-included-gettext ) \
123 + || myconf+=( --disable-nls )
124 +
125 + ECONF_SOURCE=${S} \
126 + econf "${myconf[@]}"
127 +}
128 +
129 +multilib_src_install() {
130 + default
131 + # Provide libiberty.h directly.
132 + dosym libiberty/libiberty.h /usr/include/libiberty.h
133 +}
134 +
135 +multilib_src_install_all() {
136 + use static-libs || find "${ED}"/usr -name '*.la' -delete
137 +}