Gentoo Archives: gentoo-commits

From: Sergei Trofimovich <slyfox@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-libs/binutils-libs/
Date: Sat, 04 Jan 2020 21:08:30
Message-Id: 1578172098.48b1740ff60d507bcf54df8429614e99f31555ee.slyfox@gentoo
1 commit: 48b1740ff60d507bcf54df8429614e99f31555ee
2 Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
3 AuthorDate: Sat Jan 4 21:08:07 2020 +0000
4 Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
5 CommitDate: Sat Jan 4 21:08:18 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=48b1740f
7
8 sys-libs/binutils-libs: 2.33.1 bump up to patchset 2
9
10 Single new patch:
11 - Fix ld/PR25316 for the ia64 target by refusing to support binary merging.
12
13 Reported-by: Émeric Maschino
14 Bug: https://bugs.gentoo.org/699180
15 Bug: https://sourceware.org/PR25316
16 Package-Manager: Portage-2.3.84, Repoman-2.3.20
17 Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
18
19 sys-libs/binutils-libs/Manifest | 1 +
20 .../binutils-libs/binutils-libs-2.33.1-r1.ebuild | 120 +++++++++++++++++++++
21 2 files changed, 121 insertions(+)
22
23 diff --git a/sys-libs/binutils-libs/Manifest b/sys-libs/binutils-libs/Manifest
24 index c4244ae06ad..3da38fd53fa 100644
25 --- a/sys-libs/binutils-libs/Manifest
26 +++ b/sys-libs/binutils-libs/Manifest
27 @@ -1,4 +1,5 @@
28 DIST binutils-2.32-patches-2.tar.xz 145672 BLAKE2B 8218e621f99cb4bcd1638c3011449b94480d207eaeb79cf75c0072e0f1a86bfd1603fc4515bc40d3ac1921a18b9a211b20568f59b11b13eb44e6cff1329c5af9 SHA512 55c25a603f6175af3ade6848e5c1faba06a147d72e9a4f53d44502d97db76499485a67b278a654d18884714a7bf7b360c77c9e42dba3cdc188f805bfe461f09f
29 DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
30 DIST binutils-2.33.1-patches-1.tar.xz 17944 BLAKE2B 811ad416fe9c059f645856a3123ed32303afe1d0f166a15cb6de0673b5494fdcc4c165da4a68eb7ab73f007618e3a97a5578c4b47de21e57fe501d6a21b6d595 SHA512 63b439637206d21e46d2b79383b38da2b28365a0fdea1f5ac3b665cd05e0b55cd1d7763c05567a5f7ae2c645d2ae639a27e465d535b928d9f8f0e6b94f31e1f7
31 +DIST binutils-2.33.1-patches-2.tar.xz 18636 BLAKE2B 0e0757329b6a83aeff4f4c450c95e73fd48fcc89f83e63f294568632bee0972552cf2f57494352c5d9a7c16a51cdbc4108b38fa6028d4388c8e76046b3da9212 SHA512 d982f68d1f5fdb384309a2a1b7426bf840a90e7a85b37229b4223b62c36cab9dd9ec0c08382c85c68adf996dec21133df3180a2fc649363adae8645f8282f71d
32 DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937cca0462a8fb80e62f14aabe590107fc061a3f4b9327e1f4652cb026384d36a91b4766d4d469d2d0680932874b638c SHA512 b7a6767c6c7ca6b5cafa7080e6820b7bb3a53b7148348c438d99905defbdf0d30c9744a484ee01c9441a8153901808513366b15ba9533e20c9673c262ade36ac
33
34 diff --git a/sys-libs/binutils-libs/binutils-libs-2.33.1-r1.ebuild b/sys-libs/binutils-libs/binutils-libs-2.33.1-r1.ebuild
35 new file mode 100644
36 index 00000000000..8d0e28a9ea1
37 --- /dev/null
38 +++ b/sys-libs/binutils-libs/binutils-libs-2.33.1-r1.ebuild
39 @@ -0,0 +1,120 @@
40 +# Copyright 1999-2020 Gentoo Authors
41 +# Distributed under the terms of the GNU General Public License v2
42 +
43 +EAPI=7
44 +
45 +PATCH_VER=2
46 +PATCH_DEV=slyfox
47 +
48 +inherit eutils libtool toolchain-funcs multilib-minimal
49 +
50 +MY_PN="binutils"
51 +MY_P="${MY_PN}-${PV}"
52 +PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
53 +PATCH_DEV=${PATCH_DEV:-slyfox}
54 +
55 +DESCRIPTION="Core binutils libraries (libbfd, libopcodes, libiberty) for external packages"
56 +HOMEPAGE="https://sourceware.org/binutils/"
57 +SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz
58 + https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${MY_PN}-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
59 +
60 +LICENSE="|| ( GPL-3 LGPL-3 )"
61 +SLOT="0/${PV}"
62 +IUSE="64-bit-bfd multitarget nls static-libs"
63 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
64 +
65 +COMMON_DEPEND="sys-libs/zlib[${MULTILIB_USEDEP}]"
66 +DEPEND="${COMMON_DEPEND}
67 + nls? ( sys-devel/gettext )"
68 +# Need a newer binutils-config that'll reset include/lib symlinks for us.
69 +RDEPEND="${COMMON_DEPEND}
70 + >=sys-devel/binutils-config-5
71 + nls? ( !<sys-devel/gdb-7.10-r1[nls] )"
72 +
73 +S="${WORKDIR}/${MY_P}"
74 +
75 +MULTILIB_WRAPPED_HEADERS=(
76 + /usr/include/bfd.h
77 +)
78 +
79 +src_prepare() {
80 + if [[ ! -z ${PATCH_VER} ]] ; then
81 + einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
82 + eapply "${WORKDIR}/patch"/*.patch
83 + fi
84 +
85 + # Fix cross-compile relinking issue, bug #626402
86 + elibtoolize
87 +
88 + default
89 +}
90 +
91 +pkgversion() {
92 + printf "Gentoo ${PVR}"
93 + [[ -n ${PATCHVER} ]] && printf " p${PATCHVER}"
94 +}
95 +
96 +multilib_src_configure() {
97 + local myconf=(
98 + --enable-obsolete
99 + --enable-shared
100 + --enable-threads
101 + # Newer versions (>=2.24) make this an explicit option. #497268
102 + --enable-install-libiberty
103 + --disable-werror
104 + --with-bugurl="https://bugs.gentoo.org/"
105 + --with-pkgversion="$(pkgversion)"
106 + $(use_enable static-libs static)
107 + # The binutils eclass enables this flag for all bi-arch builds,
108 + # but other tools often don't care about that support. Put it
109 + # beyond a flag if people really want it, but otherwise leave
110 + # it disabled as it can slow things down on 32bit arches. #438522
111 + $(use_enable 64-bit-bfd)
112 + # This only disables building in the zlib subdir.
113 + # For binutils itself, it'll use the system version. #591516
114 + --without-zlib
115 + --with-system-zlib
116 + # We only care about the libs, so disable programs. #528088
117 + --disable-{binutils,etc,ld,gas,gold,gprof}
118 + # Disable modules that are in a combined binutils/gdb tree. #490566
119 + --disable-{gdb,libdecnumber,readline,sim}
120 + # Strip out broken static link flags.
121 + # https://gcc.gnu.org/PR56750
122 + --without-stage1-ldflags
123 + # We pull in all USE-flags that change ABI in an incompatible
124 + # way. #666100
125 + # USE=multitarget change size of global arrays
126 + # USE=64-bit-bfd changes data structures of exported API
127 + --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)-$(usex 64-bit-bfd 64 def)
128 + )
129 +
130 + # mips can't do hash-style=gnu ...
131 + if [[ $(tc-arch) != mips ]] ; then
132 + myconf+=( --enable-default-hash-style=gnu )
133 + fi
134 +
135 + use multitarget && myconf+=( --enable-targets=all --enable-64-bit-bfd )
136 +
137 + use nls \
138 + && myconf+=( --without-included-gettext ) \
139 + || myconf+=( --disable-nls )
140 +
141 + ECONF_SOURCE=${S} \
142 + econf "${myconf[@]}"
143 +
144 + # Prevent makeinfo from running as we don't build docs here.
145 + # bug #622652
146 + sed -i \
147 + -e '/^MAKEINFO/s:=.*:= true:' \
148 + Makefile || die
149 +}
150 +
151 +multilib_src_install() {
152 + default
153 + # Provide libiberty.h directly.
154 + dosym libiberty/libiberty.h /usr/include/libiberty.h
155 +}
156 +
157 +multilib_src_install_all() {
158 + use static-libs || find "${ED}"/usr -name '*.la' -delete
159 +}