9 |
9 |
HOMEPAGE="https://sourceware.org/binutils/"
|
10 |
10 |
|
11 |
11 |
LICENSE="GPL-3+"
|
12 |
|
IUSE="cet doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
|
|
12 |
IUSE="cet debuginfod doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
|
13 |
13 |
|
14 |
14 |
# Variables that can be set here (ignored for live ebuilds)
|
15 |
15 |
# PATCH_VER - the patchset version
|
... | ... | |
19 |
19 |
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
|
20 |
20 |
# for the patchsets
|
21 |
21 |
|
22 |
|
PATCH_VER=5
|
|
22 |
PATCH_VER=7
|
23 |
23 |
PATCH_DEV=dilfridge
|
24 |
24 |
|
25 |
25 |
if [[ ${PV} == 9999* ]]; then
|
... | ... | |
32 |
32 |
[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
|
33 |
33 |
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
|
34 |
34 |
SLOT=$(ver_cut 1-2)
|
35 |
|
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
|
|
35 |
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
36 |
36 |
fi
|
37 |
37 |
|
38 |
38 |
#
|
... | ... | |
52 |
52 |
RDEPEND="
|
53 |
53 |
>=sys-devel/binutils-config-3
|
54 |
54 |
sys-libs/zlib
|
|
55 |
debuginfod? (
|
|
56 |
dev-libs/elfutils[debuginfod(-)]
|
|
57 |
)
|
55 |
58 |
zstd? ( app-arch/zstd:= )
|
56 |
59 |
"
|
57 |
60 |
DEPEND="${RDEPEND}"
|
... | ... | |
115 |
118 |
|
116 |
119 |
# This is applied conditionally for now just out of caution.
|
117 |
120 |
# It should be okay on non-prefix systems though. See bug #892549.
|
118 |
|
use prefix && eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
|
|
121 |
if is_cross || use prefix; then
|
|
122 |
eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
|
|
123 |
fi
|
119 |
124 |
fi
|
120 |
125 |
fi
|
121 |
126 |
|
... | ... | |
247 |
252 |
--libdir="${EPREFIX}"${LIBPATH}
|
248 |
253 |
--libexecdir="${EPREFIX}"${LIBPATH}
|
249 |
254 |
--includedir="${EPREFIX}"${INCPATH}
|
|
255 |
# portage's econf() does not detect presence of --d-d-t
|
|
256 |
# because it greps only top-level ./configure. But not
|
|
257 |
# libiberty's or bfd's configure.
|
|
258 |
--disable-dependency-tracking
|
|
259 |
--disable-silent-rules
|
250 |
260 |
--enable-obsolete
|
251 |
261 |
--enable-shared
|
252 |
262 |
--enable-threads
|
... | ... | |
287 |
297 |
# {native,cross}/binutils, binutils-libs. bug #666100
|
288 |
298 |
--with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
|
289 |
299 |
|
290 |
|
# Avoid automagic dependency on (currently prefix) systems
|
291 |
|
# systems with debuginfod library, bug #754753
|
292 |
|
--without-debuginfod
|
|
300 |
$(use_with debuginfod)
|
293 |
301 |
|
294 |
302 |
# Avoid automagic dev-libs/msgpack dep, bug #865875
|
295 |
303 |
--without-msgpack
|
... | ... | |
330 |
338 |
cd "${MY_BUILDDIR}" || die
|
331 |
339 |
|
332 |
340 |
# see Note [tooldir hack for ldscripts]
|
333 |
|
emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
|
|
341 |
emake tooldir="${EPREFIX}${TOOLPATH}" all
|
334 |
342 |
|
335 |
343 |
# only build info pages if the user wants them
|
336 |
344 |
if use doc ; then
|
337 |
|
emake V=1 info
|
|
345 |
emake info
|
338 |
346 |
fi
|
339 |
347 |
|
340 |
348 |
# we nuke the manpages when we're left with junk
|
... | ... | |
348 |
356 |
# bug #637066
|
349 |
357 |
filter-flags -Wall -Wreturn-type
|
350 |
358 |
|
351 |
|
emake -k V=1 check
|
|
359 |
emake -k check
|
352 |
360 |
}
|
353 |
361 |
|
354 |
362 |
src_install() {
|
... | ... | |
357 |
365 |
cd "${MY_BUILDDIR}" || die
|
358 |
366 |
|
359 |
367 |
# see Note [tooldir hack for ldscripts]
|
360 |
|
emake V=1 DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
|
|
368 |
emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
|
361 |
369 |
rm -rf "${ED}"/${LIBPATH}/bin || die
|
362 |
370 |
use static-libs || find "${ED}" -name '*.la' -delete
|
363 |
371 |
|