Gentoo Archives: gentoo-commits

From: "Andreas K. Hüttel" <dilfridge@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-libs/binutils-libs/
Date: Sat, 24 Jul 2021 22:54:03
Message-Id: 1627167228.bc6c14868f48772fbc1247e40aaca3539ef47d16.dilfridge@gentoo
1 commit: bc6c14868f48772fbc1247e40aaca3539ef47d16
2 Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
3 AuthorDate: Sat Jul 24 22:52:25 2021 +0000
4 Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
5 CommitDate: Sat Jul 24 22:53:48 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bc6c1486
7
8 sys-libs/binutils-libs: Bump 2.36.1 patchset to 4
9
10 Package-Manager: Portage-3.0.20, Repoman-3.0.3
11 Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
12
13 sys-libs/binutils-libs/Manifest | 1 +
14 .../binutils-libs/binutils-libs-2.36.1-r2.ebuild | 134 +++++++++++++++++++++
15 2 files changed, 135 insertions(+)
16
17 diff --git a/sys-libs/binutils-libs/Manifest b/sys-libs/binutils-libs/Manifest
18 index feb459cd732..2506c888442 100644
19 --- a/sys-libs/binutils-libs/Manifest
20 +++ b/sys-libs/binutils-libs/Manifest
21 @@ -3,6 +3,7 @@ DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fc
22 DIST binutils-2.35.2-patches-1.tar.xz 11836 BLAKE2B 0141349c9618992d1ab1e0309f7ed8fbc43b60a58be1dfed05eae8a8fee857241d9e112ae673da6fc9778767675f536ece818cb85567367bb1c8f87a0693623f SHA512 35de5f227c745c5fb800784fe657b2a6216faf43e2498e8481e7b0dc79b0d2f86b3b6a10b896e060319a77a51c61d2e1b7a951ae962b3a6ef8c1a2a261d9bb6c
23 DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796321cbf7be79cf21af7bef167b6074c4ae009dcf9b438d2f2f4a23381c935176b2cfa85de1a526ab46e0fd844a7ca5 SHA512 9974ede5978d32e0d68fef23da48fa00bd06b0bff7ec45b00ca075c126d6bbe0cf2defc03ecc3f17bc6cc85b64271a13009c4049d7ba17de26e84e3a6e2c0348
24 DIST binutils-2.36.1-patches-3.tar.xz 32720 BLAKE2B 2a5a60168ec5ff612e7e58530092f306460cdb4a963320978dffcc22d73684486a14a5981f6eab2f7fc270def22cdc9954de455d680b2de4befc1ad4916347ba SHA512 e429cc82451675f14715d4e7640fe7b995495c8759a8e919c4291f8ca8358a663012f05c1ec6e60b1261114848379fefc9df723929770462dd676fa04fc7aa54
25 +DIST binutils-2.36.1-patches-4.tar.xz 43508 BLAKE2B 116cefcbf4641f1ab649bb0345b80a23c29d1d3340d16f87068a1cffb911e4633f3e6da235534cd79c601cb4168bc78f9b7115185a49cdec78b6e7de7856b344 SHA512 3de95f1bb3787eeb7e942e2a9cf4a2bf967c5758158c3daf76b81a62ccefe5569b0a300cdc02e2e702c61a0cfc63d4209a7d306179cdddc3bc544d21b744eb82
26 DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
27 DIST binutils-2.37-patches-2.tar.xz 79304 BLAKE2B bdcbe29efba3582f2d1be9057a39aedb655cbc225abe8ea656c1bcf090a53930c74197505c8de2dcfd9a105f1b1cc8fa84a0d532547221d2df34a77b06e7fa15 SHA512 5cea876cfbdcd1409f5ef8ee138a8c29ad5b3d38b5d72ce312f2eb94fb8b2165e9a10018c46bdc36bc59ade2e2764e5da4ac653d15690bfc0bc9784202cc0164
28 DIST binutils-2.37.tar.xz 22916924 BLAKE2B f5a374fdf0300f7734d1e462333296b16c9d5ed6eba167e1742a4da7082f4388c929e286bf76c3933b3e434937380340732a31790723654b491ea0c8ab5b9ba5 SHA512 5c11aeef6935860a6819ed3a3c93371f052e52b4bdc5033da36037c1544d013b7f12cb8d561ec954fe7469a68f1b66f1a3cd53d5a3af7293635a90d69edd15e7
29
30 diff --git a/sys-libs/binutils-libs/binutils-libs-2.36.1-r2.ebuild b/sys-libs/binutils-libs/binutils-libs-2.36.1-r2.ebuild
31 new file mode 100644
32 index 00000000000..647509e1288
33 --- /dev/null
34 +++ b/sys-libs/binutils-libs/binutils-libs-2.36.1-r2.ebuild
35 @@ -0,0 +1,134 @@
36 +# Copyright 1999-2021 Gentoo Authors
37 +# Distributed under the terms of the GNU General Public License v2
38 +
39 +EAPI=7
40 +
41 +PATCH_VER=4
42 +PATCH_DEV=dilfridge
43 +
44 +inherit libtool toolchain-funcs multilib-minimal
45 +
46 +MY_PN="binutils"
47 +MY_P="${MY_PN}-${PV}"
48 +PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
49 +PATCH_DEV=${PATCH_DEV:-slyfox}
50 +
51 +DESCRIPTION="Core binutils libraries (libbfd, libopcodes, libiberty) for external packages"
52 +HOMEPAGE="https://sourceware.org/binutils/"
53 +SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz
54 + https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${MY_PN}-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
55 +
56 +LICENSE="|| ( GPL-3 LGPL-3 )"
57 +SLOT="0/${PV}"
58 +IUSE="64-bit-bfd cet multitarget nls static-libs"
59 +#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
60 +
61 +BDEPEND="nls? ( sys-devel/gettext )"
62 +DEPEND="sys-libs/zlib[${MULTILIB_USEDEP}]"
63 +# Need a newer binutils-config that'll reset include/lib symlinks for us.
64 +RDEPEND="${DEPEND}
65 + >=sys-devel/binutils-config-5
66 +"
67 +
68 +S="${WORKDIR}/${MY_P}"
69 +
70 +MULTILIB_WRAPPED_HEADERS=(
71 + /usr/include/bfd.h
72 +)
73 +
74 +src_prepare() {
75 + if [[ ! -z ${PATCH_VER} ]] ; then
76 + einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
77 + eapply "${WORKDIR}/patch"/*.patch
78 + fi
79 +
80 + # Fix cross-compile relinking issue, bug #626402
81 + elibtoolize
82 +
83 + default
84 +}
85 +
86 +pkgversion() {
87 + printf "Gentoo ${PVR}"
88 + [[ -n ${PATCHVER} ]] && printf " p${PATCHVER}"
89 +}
90 +
91 +multilib_src_configure() {
92 + local myconf=(
93 + --enable-obsolete
94 + --enable-shared
95 + --enable-threads
96 + # Newer versions (>=2.24) make this an explicit option. #497268
97 + --enable-install-libiberty
98 + --disable-werror
99 + --with-bugurl="https://bugs.gentoo.org/"
100 + --with-pkgversion="$(pkgversion)"
101 + $(use_enable static-libs static)
102 + # The binutils eclass enables this flag for all bi-arch builds,
103 + # but other tools often don't care about that support. Put it
104 + # beyond a flag if people really want it, but otherwise leave
105 + # it disabled as it can slow things down on 32bit arches. #438522
106 + $(use_enable 64-bit-bfd)
107 + # This only disables building in the zlib subdir.
108 + # For binutils itself, it'll use the system version. #591516
109 + --without-zlib
110 + --with-system-zlib
111 + # We only care about the libs, so disable programs. #528088
112 + --disable-{binutils,etc,ld,gas,gold,gprof}
113 + # Disable modules that are in a combined binutils/gdb tree. #490566
114 + --disable-{gdb,libdecnumber,readline,sim}
115 + # Strip out broken static link flags.
116 + # https://gcc.gnu.org/PR56750
117 + --without-stage1-ldflags
118 + # We pull in all USE-flags that change ABI in an incompatible
119 + # way. #666100
120 + # USE=multitarget change size of global arrays
121 + # USE=64-bit-bfd changes data structures of exported API
122 + --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)-$(usex 64-bit-bfd 64 def)
123 +
124 + # avoid automagic dependency on (currently prefix) systems
125 + # systems with debuginfod library, bug #754753
126 + --without-debuginfod
127 +
128 + # Allow user to opt into CET for host libraries.
129 + # Ideally we would like automagic-or-disabled here.
130 + # But the check does not quite work on i686: bug #760926.
131 + $(use_enable cet)
132 + )
133 +
134 + # mips can't do hash-style=gnu ...
135 + if [[ $(tc-arch) != mips ]] ; then
136 + myconf+=( --enable-default-hash-style=gnu )
137 + fi
138 +
139 + use multitarget && myconf+=( --enable-targets=all --enable-64-bit-bfd )
140 +
141 + use nls \
142 + && myconf+=( --without-included-gettext ) \
143 + || myconf+=( --disable-nls )
144 +
145 + if [[ ${CHOST} == *-darwin* ]] && use nls ; then
146 + # fix underlinking in opcodes
147 + sed -i -e 's/@SHARED_LDFLAGS@/@SHARED_LDFLAGS@ -lintl/' \
148 + "${S}"/opcodes/Makefile.in || die
149 + fi
150 +
151 + ECONF_SOURCE=${S} \
152 + econf "${myconf[@]}"
153 +
154 + # Prevent makeinfo from running as we don't build docs here.
155 + # bug #622652
156 + sed -i \
157 + -e '/^MAKEINFO/s:=.*:= true:' \
158 + Makefile || die
159 +}
160 +
161 +multilib_src_install() {
162 + default
163 + # Provide libiberty.h directly.
164 + dosym libiberty/libiberty.h /usr/include/libiberty.h
165 +}
166 +
167 +multilib_src_install_all() {
168 + use static-libs || find "${ED}"/usr -name '*.la' -delete
169 +}