summaryrefslogtreecommitdiff
path: root/sys-devel
diff options
context:
space:
mode:
Diffstat (limited to 'sys-devel')
-rw-r--r--sys-devel/Manifest.gzbin10627 -> 10638 bytes
-rw-r--r--sys-devel/binutils-hppa64/Manifest3
-rw-r--r--sys-devel/binutils-hppa64/binutils-hppa64-2.40.ebuild503
-rw-r--r--sys-devel/binutils/Manifest2
-rw-r--r--sys-devel/binutils/binutils-2.40.ebuild4
-rw-r--r--sys-devel/gdb/Manifest10
-rw-r--r--sys-devel/gdb/gdb-12.1-r2.ebuild5
-rw-r--r--sys-devel/gdb/gdb-12.1-r3.ebuild5
-rw-r--r--sys-devel/gdb/gdb-13.0.50_p20221217.ebuild5
-rw-r--r--sys-devel/gdb/gdb-13.0.90_p20230110.ebuild5
-rw-r--r--sys-devel/gdb/gdb-9999.ebuild5
-rw-r--r--sys-devel/mold/Manifest4
-rw-r--r--sys-devel/mold/mold-1.9.0.ebuild (renamed from sys-devel/mold/mold-1.7.1-r1.ebuild)0
13 files changed, 521 insertions, 30 deletions
diff --git a/sys-devel/Manifest.gz b/sys-devel/Manifest.gz
index 3ee594a07b7d..abf6f1774778 100644
--- a/sys-devel/Manifest.gz
+++ b/sys-devel/Manifest.gz
Binary files differ
diff --git a/sys-devel/binutils-hppa64/Manifest b/sys-devel/binutils-hppa64/Manifest
index 666bf88012c4..39cdd8a9bc9d 100644
--- a/sys-devel/binutils-hppa64/Manifest
+++ b/sys-devel/binutils-hppa64/Manifest
@@ -4,7 +4,10 @@ DIST binutils-2.38-patches-4.tar.xz 193852 BLAKE2B 5a83e20008e58464ed563a6817a36
DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc5053109e06c3c4a1934944e3f0ceaa9e4a2604528a440189771f778cb5d75edd510163970eeea31afba87fa256feba SHA512 8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d
DIST binutils-2.39-patches-5.tar.xz 82924 BLAKE2B 2cf75f661989f22270d6afe5f3c543814eb6a331be4493016fa2871e1f10a84a123c1c51e77a19b35e46680b9fe77390cb1532ca40d470a6041fa768fed3ccd7 SHA512 4b5811b4822b3a06f590fc7d082dc0ddf18a6058ac23887254e2ee9bd63c7f06f1636e446152115c7e0b01a6c5298a0d9df6904bd1582e66504ccde80dd1ecbd
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
+DIST binutils-2.40-patches-1.tar.xz 12260 BLAKE2B d525502e08012080417634fd41981550362d4d799952e89f388af2a6e5db5b80e88bfdb0b5b1d2a1bcf8ebda529eefbced8fa2ae84c7fe3ddb10184e98d4b369 SHA512 140f80be786511f63651e67bf25c2992de6a21bac00a3252dcf98becc3f9379c8070ef1380d5542bbf2e1908c50dab2c7ebb651d13bb97609594fe9fd9f1f079
+DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
EBUILD binutils-hppa64-2.37_p1-r2.ebuild 13273 BLAKE2B 2dd83c1466b42667496a8a37c40a2df498dd7b1de4ecd78a5583cd77ff27befa2bb22110e24622149b4a85c212f03e2a064aa961c13a966123eb8744caf02aa8 SHA512 e9575a12a0a13047c687c918c16ec4c3b93e10f26cb88add82ae1c2bb8f57c7619bc41a6586e231940412ae3974e327acdae567ce4e0e0523f2b654aadfb607b
EBUILD binutils-hppa64-2.38-r2.ebuild 13286 BLAKE2B 0ea74ad439d7bc9ba9e4e79b69069f2cd14da3047c6ae4cb98932ce9dadedf5e4992e605d59762034df7aad5b6455d3df4bc994179acc29c53f9bc624a0c6826 SHA512 9bbc89df99cd78d26f5368600524dab466dbdf954b1affa5f5a04f25538b2caa89e8a08a2f514d5381299a0c5a47f200c7024b902e1d1b2c5f24081eb3410954
EBUILD binutils-hppa64-2.39-r4.ebuild 14291 BLAKE2B 4ed50e5d1d74e26fb4c8764249874835f41cc5428a71e4ace3df5d5f56ba5cb7fbd03a1ca4e10afafa7c7b0ccfa79dce53a3cf84a3cf4bee93d61022d6c5ae2c SHA512 784b89e8d29d328da306670c61d9a3d009b6dc84fedd04edf5dacd9f185264533dcfd440f3156771ca044932fd60cc47d55d63caf355dfeed132d7e79ed10a21
+EBUILD binutils-hppa64-2.40.ebuild 14292 BLAKE2B 7591cdf9f4cc1d00b244702e29fa3da3a2338829b04532e37243c851e1bec8d9eaaf8a144a9c276c8e4148199fb35456a2a22a57effec0d6e528fdaa317bdaed SHA512 58366787c99324277030c4a2e309a23b4e4dca67b5695fc8e264de94ceddff31301df143dd458496c090d76a774602155cb9525829e257338fb845a9faedf678
MISC metadata.xml 1004 BLAKE2B 069a799bb001c8c22afecebe6156098546f39e9e03c2ac194172ef6f0f49de976db90bfef03c634cdb696d9484d38bb5f2abb3fcbf7c6cda7cb14a39e5f4a87f SHA512 faa4cb332dd6eeff2ecd4dbfec67693bffcaafba588fb2ef6f64ea5e978c24646d0a555c39983497e660be1cd0518bf15dbc03f89584533f9271d58afb4a3f56
diff --git a/sys-devel/binutils-hppa64/binutils-hppa64-2.40.ebuild b/sys-devel/binutils-hppa64/binutils-hppa64-2.40.ebuild
new file mode 100644
index 000000000000..a02cbef8641b
--- /dev/null
+++ b/sys-devel/binutils-hppa64/binutils-hppa64-2.40.ebuild
@@ -0,0 +1,503 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+export CTARGET=hppa64-${CHOST#*-}
+
+inherit libtool flag-o-matic gnuconfig multilib strip-linguas toolchain-funcs
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+
+LICENSE="GPL-3+"
+IUSE="cet default-gold doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla"
+REQUIRED_USE="default-gold? ( gold )"
+
+# Variables that can be set here (ignored for live ebuilds)
+# PATCH_VER - the patchset version
+# Default: empty, no patching
+# PATCH_BINUTILS_VER - the binutils version in the patchset name
+# - Default: PV
+# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
+# for the patchsets
+
+PATCH_VER=1
+PATCH_DEV=dilfridge
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ SLOT=${PV}
+else
+ PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+ PATCH_DEV=${PATCH_DEV:-dilfridge}
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PV}.tar.xz"
+ [[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+ SLOT=$(ver_cut 1-2)
+ KEYWORDS="-* ~hppa"
+fi
+
+#
+# The cross-compile logic
+#
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+ if [[ ${CATEGORY} == cross-* ]] ; then
+ export CTARGET=${CATEGORY#cross-}
+ fi
+fi
+is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
+
+#
+# The dependencies
+#
+RDEPEND="
+ >=sys-devel/binutils-config-3
+ sys-libs/zlib
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ test? (
+ dev-util/dejagnu
+ sys-devel/bc
+ )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ app-alternatives/yacc
+"
+
+RESTRICT="!test? ( test )"
+
+MY_BUILDDIR="${WORKDIR}"/build
+S="${WORKDIR}"/${P/-hppa64/}
+
+src_unpack() {
+ if [[ ${PV} == 9999* ]] ; then
+ EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/toolchain/binutils-patches.git"
+ EGIT_CHECKOUT_DIR="${WORKDIR}"/patches-git
+ git-r3_src_unpack
+ mv patches-git/9999 patch || die
+
+ S="${WORKDIR}"/binutils
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ EGIT_CHECKOUT_DIR="${S}"
+ git-r3_src_unpack
+ else
+ unpack ${P/-hppa64/}.tar.xz
+
+ cd "${WORKDIR}" || die
+ unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
+
+ # _p patch versions are Gentoo specific tarballs ...
+ local dir=${P%_p?}
+ dir=${dir/-hppa64/}
+
+ S=${WORKDIR}/${dir}
+ fi
+
+ cd "${WORKDIR}" || die
+ mkdir -p "${MY_BUILDDIR}" || die
+}
+
+src_prepare() {
+ local patchsetname
+ if [[ ${PV} == 9999* ]] ; then
+ patchsetname="from git master"
+ else
+ patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}"
+ fi
+
+ if [[ -n ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
+ if ! use vanilla; then
+ einfo "Applying binutils patchset ${patchsetname}"
+ eapply "${WORKDIR}/patch"
+ einfo "Done."
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered, bug #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible, bug #122216
+ if [[ -e ${FILESDIR}/binutils-configure-LANG.patch ]] ; then
+ einfo "Fixing misc issues in configure files"
+ for f in $(find "${S}" -name configure -exec grep -l 'autoconf version 2.13' {} +) ; do
+ ebegin " Updating ${f/${S}\/}"
+ patch "${f}" "${FILESDIR}"/binutils-configure-LANG.patch >& "${T}"/configure-patch.log \
+ || eerror "Please file a bug about this"
+ eend $?
+ done
+ fi
+
+ # Apply things from PATCHES and user dirs
+ default
+
+ # Run misc portage update scripts
+ gnuconfig_update
+ elibtoolize --portage --no-uclibc
+}
+
+toolchain-binutils_bugurl() {
+ printf "https://bugs.gentoo.org/"
+}
+toolchain-binutils_pkgversion() {
+ printf "Gentoo ${PV}"
+ [[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}"
+}
+
+src_configure() {
+ # See https://www.gnu.org/software/make/manual/html_node/Parallel-Output.html
+ # Avoid really confusing logs from subconfigure spam, makes logs far
+ # more legible.
+ MAKEOPTS="--output-sync=line ${MAKEOPTS}"
+
+ # Setup some paths
+ LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${PV}
+ INCPATH=${LIBPATH}/include
+ DATAPATH=/usr/share/binutils-data/${CTARGET}/${PV}
+ if is_cross ; then
+ TOOLPATH=/usr/${CHOST}/${CTARGET}
+ else
+ TOOLPATH=/usr/${CTARGET}
+ fi
+ BINPATH=${TOOLPATH}/binutils-bin/${PV}
+
+ # Make sure we filter $LINGUAS so that only ones that
+ # actually work make it through, bug #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}" || die
+ local myconf=()
+
+ if use plugins ; then
+ myconf+=( --enable-plugins )
+ fi
+ # enable gold (installed as ld.gold) and ld's plugin architecture
+ if use gold ; then
+ myconf+=( --enable-gold )
+ if use default-gold; then
+ myconf+=( --enable-gold=default )
+ fi
+ fi
+
+ if use nls ; then
+ myconf+=( --without-included-gettext )
+ else
+ myconf+=( --disable-nls )
+ fi
+
+ myconf+=( --with-system-zlib )
+
+ # For bi-arch systems, enable a 64bit bfd. This matches the bi-arch
+ # logic in toolchain.eclass. bug #446946
+ #
+ # We used to do it for everyone, but it's slow on 32bit arches. bug #438522
+ case $(tc-arch) in
+ ppc|sparc|x86) myconf+=( --enable-64-bit-bfd ) ;;
+ esac
+
+ use multitarget && myconf+=( --enable-targets=all --enable-64-bit-bfd )
+
+ [[ -n ${CBUILD} ]] && myconf+=( --build=${CBUILD} )
+
+ is_cross && myconf+=(
+ --with-sysroot="${EPREFIX}"/usr/${CTARGET}
+ --enable-poison-system-directories
+ )
+
+ myconf+=( --enable-secureplt )
+
+ # mips can't do hash-style=gnu ...
+ if [[ $(tc-arch) != mips ]] ; then
+ myconf+=( --enable-default-hash-style=gnu )
+ fi
+
+ myconf+=(
+ --prefix="${EPREFIX}"/usr
+ --host=${CHOST}
+ --target=${CTARGET}
+ --datadir="${EPREFIX}"${DATAPATH}
+ --datarootdir="${EPREFIX}"${DATAPATH}
+ --infodir="${EPREFIX}"${DATAPATH}/info
+ --mandir="${EPREFIX}"${DATAPATH}/man
+ --bindir="${EPREFIX}"${BINPATH}
+ --libdir="${EPREFIX}"${LIBPATH}
+ --libexecdir="${EPREFIX}"${LIBPATH}
+ --includedir="${EPREFIX}"${INCPATH}
+ --enable-obsolete
+ --enable-shared
+ --enable-threads
+ # Newer versions (>=2.27) offer a configure flag now.
+ --enable-relro
+ # Newer versions (>=2.24) make this an explicit option, bug #497268
+ --enable-install-libiberty
+ # Available from 2.35 on
+ --enable-textrel-check=warning
+
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #--enable-warn-execstack
+ #--enable-warn-rwx-segments
+ #--disable-default-execstack (or is it --enable-default-execstack=no? docs are confusing)
+
+ # Things to think about
+ #--enable-deterministic-archives
+
+ # Works better than vapier's patch, bug #808787
+ --enable-new-dtags
+
+ --disable-jansson
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ # Disable modules that are in a combined binutils/gdb tree, bug #490566
+ --disable-{gdb,libdecnumber,readline,sim}
+ # Strip out broken static link flags.
+ # https://gcc.gnu.org/PR56750
+ --without-stage1-ldflags
+ # Change SONAME to avoid conflict across
+ # {native,cross}/binutils, binutils-libs. bug #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+
+ # Avoid automagic dependency on (currently prefix) systems
+ # systems with debuginfod library, bug #754753
+ --without-debuginfod
+
+ # Avoid automagic dev-libs/msgpack dep, bug #865875
+ --without-msgpack
+
+ # Allow user to opt into CET for host libraries.
+ # Ideally we would like automagic-or-disabled here.
+ # But the check does not quite work on i686: bug #760926.
+ $(use_enable cet)
+
+ # We can enable this by default in future, but it's brand new
+ # in 2.39 with several bugs:
+ # - Doesn't build on musl (https://sourceware.org/bugzilla/show_bug.cgi?id=29477)
+ # - No man pages (https://sourceware.org/bugzilla/show_bug.cgi?id=29521)
+ # - Broken at runtime without Java (https://sourceware.org/bugzilla/show_bug.cgi?id=29479)
+ # - binutils-config (and this ebuild?) needs adaptation first (https://bugs.gentoo.org/865113)
+ $(use_enable gprofng)
+ )
+
+ if ! is_cross ; then
+ # No LTO for HPPA64 right now as we don't build kgcc64 with LTO support.
+ myconf+=( $(use_enable pgo pgo-build) )
+
+ if use pgo ; then
+ export BUILD_CFLAGS="${CFLAGS}"
+ fi
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}" || die
+
+ # Prevent makeinfo from running if doc is unset.
+ if ! use doc ; then
+ sed -i \
+ -e '/^MAKEINFO/s:=.*:= true:' \
+ Makefile || die
+ fi
+}
+
+src_compile() {
+ cd "${MY_BUILDDIR}" || die
+
+ # see Note [tooldir hack for ldscripts]
+ emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake V=1 info
+ fi
+
+ # we nuke the manpages when we're left with junk
+ # (like when we bootstrap, no perl -> no manpages)
+ find . -name '*.1' -a -size 0 -delete
+}
+
+src_test() {
+ cd "${MY_BUILDDIR}" || die
+
+ # bug #637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k V=1 check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}" || die
+
+ # see Note [tooldir hack for ldscripts]
+ emake V=1 DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin || die
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH}, bug #171905
+ cd "${ED}"/${LIBPATH} || die
+ for d in ../* ; do
+ [[ ${d} == ../${PV} ]] && continue
+ mv ${d}/* . || die
+ rmdir ${d} || die
+ done
+
+ # Now we collect everything intp the proper SLOT-ed dirs
+ # When something is built to cross-compile, it installs into
+ # /usr/$CHOST/ by default ... we have to 'fix' that :)
+ if is_cross ; then
+ cd "${ED}"/${BINPATH} || die
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-} || die
+ done
+
+ if [[ -d ${ED}/usr/${CHOST}/${CTARGET} ]] ; then
+ # No die for now, dies on hppa?
+ mv "${ED}"/usr/${CHOST}/${CTARGET}/include "${ED}"/${INCPATH}
+ mv "${ED}"/usr/${CHOST}/${CTARGET}/lib/* "${ED}"/${LIBPATH}/
+ rm -r "${ED}"/usr/${CHOST}/{include,lib}
+ fi
+ fi
+
+ insinto ${INCPATH}
+ local libiberty_headers=(
+ # Not all the libiberty headers. See libiberty/Makefile.in:install_to_libdir.
+ demangle.h
+ dyn-string.h
+ fibheap.h
+ hashtab.h
+ libiberty.h
+ objalloc.h
+ splay-tree.h
+ )
+ doins "${libiberty_headers[@]/#/${S}/include/}"
+ if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
+ # TODO: add || die here, fails on hppa?
+ mv "${ED}"/${LIBPATH}/lib/* "${ED}"/${LIBPATH}/
+ rm -r "${ED}"/${LIBPATH}/lib
+ fi
+
+ # Generate an env.d entry for this binutils
+ insinto /etc/env.d/binutils
+ cat <<-EOF > "${T}"/env.d
+ TARGET="${CTARGET}"
+ VER="${PV}"
+ LIBPATH="${EPREFIX}${LIBPATH}"
+ EOF
+ newins "${T}"/env.d ${CTARGET}-${PV}
+
+ # Handle documentation
+ if ! is_cross ; then
+ cd "${S}" || die
+ dodoc README
+
+ docinto bfd
+ dodoc bfd/ChangeLog* bfd/README bfd/PORTING bfd/TODO
+
+ docinto binutils
+ dodoc binutils/ChangeLog binutils/NEWS binutils/README
+
+ docinto gas
+ dodoc gas/ChangeLog* gas/CONTRIBUTORS gas/NEWS gas/README*
+
+ docinto gprof
+ dodoc gprof/ChangeLog* gprof/TEST gprof/TODO gprof/bbconv.pl
+
+ docinto ld
+ dodoc ld/ChangeLog* ld/README ld/NEWS ld/TODO
+
+ docinto libiberty
+ dodoc libiberty/ChangeLog* libiberty/README
+
+ docinto opcodes
+ dodoc opcodes/ChangeLog*
+ fi
+
+ # Remove shared info pages
+ rm -f "${ED}"/${DATAPATH}/info/{dir,configure.info,standards.info} || die
+
+ # Trim all empty dirs
+ find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null
+
+ # the hppa64 hack; this should go into 9999 as a PN-conditional
+ # tweak the default fake list a little bit
+ cd "${D}"/etc/env.d/binutils
+ sed -i '/FAKE_TARGETS=/s:"$: hppa64-linux":' ${CTARGET}-${PV} || die
+}
+
+pkg_postinst() {
+ # Make sure this ${CTARGET} has a binutils version selected
+ [[ -e ${EROOT}/etc/env.d/binutils/config-${CTARGET} ]] && return 0
+ binutils-config ${CTARGET}-${PV}
+}
+
+pkg_postrm() {
+ local current_profile=$(binutils-config -c ${CTARGET})
+
+ # If no other versions exist, then uninstall for this
+ # target ... otherwise, switch to the newest version
+ # Note: only do this if this version is unmerged. We
+ # rerun binutils-config if this is a remerge, as
+ # we want the mtimes on the symlinks updated (if
+ # it is the same as the current selected profile)
+ if [[ ! -e ${EPREFIX}${BINPATH}/ld ]] && [[ ${current_profile} == ${CTARGET}-${PV} ]] ; then
+ local choice=$(binutils-config -l | grep ${CTARGET} | awk '{print $2}')
+ choice=${choice//$'\n'/ }
+ choice=${choice/* }
+ if [[ -z ${choice} ]] ; then
+ binutils-config -u ${CTARGET}
+ else
+ binutils-config ${choice}
+ fi
+ elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${PV} ]] ; then
+ binutils-config ${CTARGET}-${PV}
+ fi
+}
+
+# Note [slotting support]
+# -----------------------
+# Gentoo's layout for binutils files is non-standard as Gentoo
+# supports slotted installation for binutils. Many tools
+# still expect binutils to reside in known locations.
+# binutils-config package restores symlinks into known locations,
+# like:
+# /usr/bin/${CTARGET}-<tool>
+# /usr/bin/${CHOST}/${CTARGET}/lib/ldscrips
+# /usr/include/
+#
+# Note [tooldir hack for ldscripts]
+# ---------------------------------
+# Build system does not allow ./configure to tweak every location
+# we need for slotting binutils hence all the shuffling in
+# src_install(). This note is about SCRIPTDIR define handling.
+#
+# SCRIPTDIR defines 'ldscripts/' directory location. SCRIPTDIR value
+# is set at build-time in ld/Makefile.am as: 'scriptdir = $(tooldir)/lib'
+# and hardcoded as -DSCRIPTDIR='"$(scriptdir)"' at compile time.
+# Thus we can't just move files around after compilation finished.
+#
+# Our goal is the following:
+# - at build-time set scriptdir to point to symlinked location:
+# ${TOOLPATH}: /usr/${CHOST} (or /usr/${CHOST}/${CTARGET} for cross-case)
+# - at install-time set scriptdir to point to slotted location:
+# ${LIBPATH}: /usr/$(get_libdir)/binutils/${CTARGET}/${PV}
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 7792283121d0..299515748b83 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -30,6 +30,6 @@ EBUILD binutils-2.36.1-r2.ebuild 12823 BLAKE2B 850624989343ed5c904a595e274576703
EBUILD binutils-2.37_p1-r2.ebuild 13294 BLAKE2B ec26ea427eb05e6368b046b05eb45ee1818f76e37ccbfccb5b2c47654af7cc2de9a4583a1d1cac19b228d06ea8819a61a1889578159d3624f0a2a53fc63d632d SHA512 81f23fd8da3b6173bab2ccaaf21da02a7c52c3923ada533794fccea35747b25bd5cc0a47a21b72b2610227ef36a9ce9674fd8ae53a4c6af626fb3464ea783f7a
EBUILD binutils-2.38-r2.ebuild 13672 BLAKE2B 84e1567892739e624554005600f8dbe123bcd524728bd1c06797fdfae2c91f39ddff5b6aac420c9571508f6f88b79a567c9144e5670f48c8fa4b7822e5ca5b02 SHA512 e7b6822f6482c3bbbab21292d19a267a711541e8757c7d1ea0c8b09cdfc71ba3beee98e53a56ab7d0789122bebca801e45d13d255b0051647dc1f89fa7a17680
EBUILD binutils-2.39-r4.ebuild 14198 BLAKE2B cbf86f3a11d9d2ea415feb730fb755f681306bcd18113517b5e3d89171b4ae494cfa10487025aa36800465d83c52f2c618aab611aecf512f9c70f17b85e4ba7f SHA512 a196dde125398f81bde1d635c97f17cc067324f19a428c6c582e47f803d36255bee0558054111f7dcbd253e00a6f107e7d1fc402d8b6a9f5cd29e932cada712e
-EBUILD binutils-2.40.ebuild 13944 BLAKE2B 011e8f396d7ce160485844ba07a2c8ce31491415584e338d5148c2f4616bb2ba5b3b4bb4e0c64fb17a63ebac90a06501b57f8263b401e2465816e0c9c91f2c69 SHA512 989c87901d8e59a37f713c705fedeeac1315b2e820dc5aa548201f9a8f3d02cbca339e16a7fa660adc591d53f54933dec03ae87281839d587784ee9fc41e29c6
+EBUILD binutils-2.40.ebuild 13943 BLAKE2B 659bbb1f32190e417373904f218d6ece674c8d67b263d39800014f9097cc369ea7efcfb6503993c42841d986dca9128f565b5c6fcf413196d5a6626c798c1c51 SHA512 55c0a4af16f40ed67c69cb1062ab6bdfc45c4c9324bee588e0478cc7f89612a311f2a7db791b4a7be2bf98c0afe9d0d7e95ccc9429aa458836d429ac78521cf2
EBUILD binutils-9999.ebuild 14138 BLAKE2B 65094867d4d0eb69dceabb77216eaa0cb21b284fddb00b3e8830b9458d322092829839f78d5839e4b6a462072c50e6096da70ec78ab789458f63d8ab8aa6879c SHA512 33ccf13969d96337d65a0dde8e918971318f801d2b6f4595119a5c0e7e9015b1bdb7e4e64830be26a8dddebb02a6429adfda8b80493a6fda548c463981ef5bb0
MISC metadata.xml 889 BLAKE2B 9a627ab3db90639c30e19df93a064f9129d684ffe1176159d526ba7ba2e68c4c2cded8437382ceb97a5e2578fe79583042f6914a2b7650bb777ec1ce6bebd425 SHA512 b691e0335c2b059596557a3943047b0b8e718cc84c4fd885d44fe9887d3d170fce1317ba9949c3921a6e242434a24041777967e67beba911edf6932fe9f3d3cd
diff --git a/sys-devel/binutils/binutils-2.40.ebuild b/sys-devel/binutils/binutils-2.40.ebuild
index ae90473b9b61..f0924ed243d4 100644
--- a/sys-devel/binutils/binutils-2.40.ebuild
+++ b/sys-devel/binutils/binutils-2.40.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -32,7 +32,7 @@ else
[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
diff --git a/sys-devel/gdb/Manifest b/sys-devel/gdb/Manifest
index 93ba1991b088..add44164f873 100644
--- a/sys-devel/gdb/Manifest
+++ b/sys-devel/gdb/Manifest
@@ -5,9 +5,9 @@ AUX gdb-8.3.1-verbose-build.patch 395 BLAKE2B e2e82307ceae64d16aa9b57a5e639eb5d2
DIST gdb-12.1.tar.xz 22470332 BLAKE2B 7f6f853d1640908cf2c79932cdc1ba02549a07721c005d9c7ce2946a715761719cc164a4e68235a18664ec8a029afe3a2a0cfb57e1635f280076d6bed91317fd SHA512 425568d2e84672177d0fb87b1ad7daafdde097648d605e30cf0656970f66adc6a82ca2d83375ea4be583e9683a340e5bfdf5819668ddf66728200141ae50ff2d
DIST gdb-weekly-13.0.50.20221217.tar.xz 24801944 BLAKE2B 87c395665bfd5901bdac35d5abc5e2aa206805e7bbe484db7306f4e2b786db0114d442323fb224ae8920c5f13d0c9408dea8f0d0ccb98bacab96db7997df3ede SHA512 734139d50cdd98fa33b2ae473137bc389d5231119ceec99fa4c9004af277a065727a2f5dfa07aa7881f78138a90a7451cbfb87514a7cfd50415b90e369f124b9
DIST gdb-weekly-13.0.90.20230110.tar.xz 24802804 BLAKE2B d13bc0ce3bfd0197be31610385014df815c72a86f34b44beced0882267e8b5eecdd50545a85d84c5648771bb9a01b7e63680a424ad36e4d23c15470af6270f21 SHA512 d0c186c661b4648668213a5210f10d09ccbceb077e9e61a88cb1431e8feae4ad2ce74365024bb5f282f78225e118e808c5df30af9c46c4c368a41d4385f8918f
-EBUILD gdb-12.1-r2.ebuild 8226 BLAKE2B 5b7a036678e07feb092abeff23605bdeeeca4281048fa1b1e683f7741af6bf0f185f7a1c1fa6f2fe053a88a9b1504512ef704dbff0cb5cb4f83d5152a585eecc SHA512 61792d088804d22552d9acf2a34f086e67f33281047886ea239742fbbec90464014b391efff4c066f937afcbca750aa410f94bdbe797cf31bb96968dd46236ad
-EBUILD gdb-12.1-r3.ebuild 8268 BLAKE2B ba33e653936cb5da9a9459ff7ef0d56fa62865c83abc58b1f972fca58efeeb1e40b7982b4dd8615d9427e6ceae751e3c43e5dc19939aa79c40097f6aa9c9d2f1 SHA512 dde14b87b96192c85e0e5ab6ff6ce1e8e690940d0e821ef7308f1ecff9deebc96f3c445144905d6385de81d7e8283028b0f6ea08fbb07f452fcc016dd6c7248b
-EBUILD gdb-13.0.50_p20221217.ebuild 8302 BLAKE2B cf54e8f9325cc18ded47c640dc7a479757aa2ce813ac67ebcf0e3e75b985056a926512d9d9feca8d08081f2b72ecc903affe86abf6ca7c6ad41924696772c759 SHA512 95bd0237aa6e0d51c8957c8ff776ce4f10461a636cff0398c3e393aaf66f4c91a45e7032b3c7680c4f2361e2fa2d825589407f9068bec01687d0696279be52bc
-EBUILD gdb-13.0.90_p20230110.ebuild 8414 BLAKE2B 30afad46dfecffd3f9dc41d6ed645d57284af193fae518784e5012312be5126f98f92123225fb12ac5b156979b6aa03e75d2af78b5c197dc2db1b69a81272d24 SHA512 622a3af9957a660cae55c98cf00922af7a55409a60e7739f43b058f4276f605eae86969f7650f947858aa33dfdfb7cfd337a205ede1c8805098b7db6dad9a01f
-EBUILD gdb-9999.ebuild 8414 BLAKE2B 30afad46dfecffd3f9dc41d6ed645d57284af193fae518784e5012312be5126f98f92123225fb12ac5b156979b6aa03e75d2af78b5c197dc2db1b69a81272d24 SHA512 622a3af9957a660cae55c98cf00922af7a55409a60e7739f43b058f4276f605eae86969f7650f947858aa33dfdfb7cfd337a205ede1c8805098b7db6dad9a01f
+EBUILD gdb-12.1-r2.ebuild 8059 BLAKE2B 1fe85d05fb4153cc66929f89ec5cadb54885d157e4b0332b6f1a50e7ff8b4275b5444821a70b700ab20f7c37cbaea446a42c2fc718c076566d6c550bd730008d SHA512 0f42b99989377b2f6602cfb3039963a449ea40750af1c12a71f3f584dd1fa0db23f499a54016cad3e3e78a9e3abc0d8bdb6a35bda20d1f2d9891983672346f9c
+EBUILD gdb-12.1-r3.ebuild 8101 BLAKE2B 476d029a59a1ab7bd2f2177b915568f6b39c8bfa6b2c45b9e4bb69bb75b5209ed8b6f969d4b3ce960166901447cc9d9a0bf7e314cdde4f5cb5584e04f475a5d1 SHA512 94a1fcc7b78479857f6221c08239aa37c03f518a58a8ee53d67e09282604700ba5e3990b7f07f93445cfd6ea27acf167670f845036b9312c79191ce04c6881a7
+EBUILD gdb-13.0.50_p20221217.ebuild 8135 BLAKE2B f88b8575290e5ba672238146588974f71153f4ccbefc88f609a6aaf9092c483a761f7eabba3b7faaba5c5ede49c0dfdb53847a92baf002dfea460f8628f9e68b SHA512 c2257b9d288c469c74bb7b6461a65ddfa029a5f75cca1d39bac2b40231b73705b7203a73716e7e2d14fd5f663549ea059fe7acaf3be297264b6b538c6f31f3a5
+EBUILD gdb-13.0.90_p20230110.ebuild 8247 BLAKE2B 7ee2145ca858bde3f4a26d6bc997a0cffc418c85b9e529747d21f9ab16ffd055accd4b5bf3ee18b801dfa449f3daffe9db72d9ce7a1c11bfe6bdeb143b6e13cc SHA512 227d576fe8e8f83e24ec248ff7eb2e24fcbb84aa73195da1a784eea67319cc6c10cb564992bf6c95cb61a35915fbae7060196404a80d7cab8fa755b914584b34
+EBUILD gdb-9999.ebuild 8247 BLAKE2B 7ee2145ca858bde3f4a26d6bc997a0cffc418c85b9e529747d21f9ab16ffd055accd4b5bf3ee18b801dfa449f3daffe9db72d9ce7a1c11bfe6bdeb143b6e13cc SHA512 227d576fe8e8f83e24ec248ff7eb2e24fcbb84aa73195da1a784eea67319cc6c10cb564992bf6c95cb61a35915fbae7060196404a80d7cab8fa755b914584b34
MISC metadata.xml 1242 BLAKE2B 368d8798d7d3b610653f635eb36ee5517912e8a2cb392622b32ac0aa90f336e3b391ba25811dee110644e50fabec0d64f6bcf3b219cdd240ec806e709a198eed SHA512 192fa340899680413c3d6c886ecd7d2262475a33aecc452192e5fe1d8e3eb5cf17546e57181e720128cf9b39cd8e4b1b1a73cb1f0c9887866c0ce88b288636e2
diff --git a/sys-devel/gdb/gdb-12.1-r2.ebuild b/sys-devel/gdb/gdb-12.1-r2.ebuild
index 7de0753acf92..3fd6e33a28d9 100644
--- a/sys-devel/gdb/gdb-12.1-r2.ebuild
+++ b/sys-devel/gdb/gdb-12.1-r2.ebuild
@@ -56,10 +56,7 @@ REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
# In fact, gdb's test suite needs some work to get passing.
# See e.g. https://sourceware.org/gdb/wiki/TestingGDB.
# As of 11.2, on amd64: "# of unexpected failures 8600"
-# ia64 kernel crashes when gdb testsuite is running
-# in fact, gdb's test suite needs some work to get passing.
-# See e.g. https://sourceware.org/gdb/wiki/TestingGDB.
-# As of 11.2, on amd64: "# of unexpected failures 8600"
+# Also, ia64 kernel crashes when gdb testsuite is running.
RESTRICT="
ia64? ( test )
!test? ( test )
diff --git a/sys-devel/gdb/gdb-12.1-r3.ebuild b/sys-devel/gdb/gdb-12.1-r3.ebuild
index fd320b3f8dbc..6c2b12a47111 100644
--- a/sys-devel/gdb/gdb-12.1-r3.ebuild
+++ b/sys-devel/gdb/gdb-12.1-r3.ebuild
@@ -53,10 +53,7 @@ REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
# In fact, gdb's test suite needs some work to get passing.
# See e.g. https://sourceware.org/gdb/wiki/TestingGDB.
# As of 11.2, on amd64: "# of unexpected failures 8600"
-# ia64 kernel crashes when gdb testsuite is running
-# in fact, gdb's test suite needs some work to get passing.
-# See e.g. https://sourceware.org/gdb/wiki/TestingGDB.
-# As of 11.2, on amd64: "# of unexpected failures 8600"
+# Also, ia64 kernel crashes when gdb testsuite is running.
RESTRICT="
ia64? ( test )
!test? ( test )
diff --git a/sys-devel/gdb/gdb-13.0.50_p20221217.ebuild b/sys-devel/gdb/gdb-13.0.50_p20221217.ebuild
index 3e4ddd4a18b2..c3ffdf923040 100644
--- a/sys-devel/gdb/gdb-13.0.50_p20221217.ebuild
+++ b/sys-devel/gdb/gdb-13.0.50_p20221217.ebuild
@@ -57,10 +57,7 @@ REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
# In fact, gdb's test suite needs some work to get passing.
# See e.g. https://sourceware.org/gdb/wiki/TestingGDB.
# As of 11.2, on amd64: "# of unexpected failures 8600"
-# ia64 kernel crashes when gdb testsuite is running
-# in fact, gdb's test suite needs some work to get passing.
-# See e.g. https://sourceware.org/gdb/wiki/TestingGDB.
-# As of 11.2, on amd64: "# of unexpected failures 8600"
+# Also, ia64 kernel crashes when gdb testsuite is running.
RESTRICT="
ia64? ( test )
!test? ( test )
diff --git a/sys-devel/gdb/gdb-13.0.90_p20230110.ebuild b/sys-devel/gdb/gdb-13.0.90_p20230110.ebuild
index 7787228d675e..5a1837450675 100644
--- a/sys-devel/gdb/gdb-13.0.90_p20230110.ebuild
+++ b/sys-devel/gdb/gdb-13.0.90_p20230110.ebuild
@@ -62,10 +62,7 @@ REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
# In fact, gdb's test suite needs some work to get passing.
# See e.g. https://sourceware.org/gdb/wiki/TestingGDB.
# As of 11.2, on amd64: "# of unexpected failures 8600"
-# ia64 kernel crashes when gdb testsuite is running
-# in fact, gdb's test suite needs some work to get passing.
-# See e.g. https://sourceware.org/gdb/wiki/TestingGDB.
-# As of 11.2, on amd64: "# of unexpected failures 8600"
+# Also, ia64 kernel crashes when gdb testsuite is running.
RESTRICT="
ia64? ( test )
!test? ( test )
diff --git a/sys-devel/gdb/gdb-9999.ebuild b/sys-devel/gdb/gdb-9999.ebuild
index 7787228d675e..5a1837450675 100644
--- a/sys-devel/gdb/gdb-9999.ebuild
+++ b/sys-devel/gdb/gdb-9999.ebuild
@@ -62,10 +62,7 @@ REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
# In fact, gdb's test suite needs some work to get passing.
# See e.g. https://sourceware.org/gdb/wiki/TestingGDB.
# As of 11.2, on amd64: "# of unexpected failures 8600"
-# ia64 kernel crashes when gdb testsuite is running
-# in fact, gdb's test suite needs some work to get passing.
-# See e.g. https://sourceware.org/gdb/wiki/TestingGDB.
-# As of 11.2, on amd64: "# of unexpected failures 8600"
+# Also, ia64 kernel crashes when gdb testsuite is running.
RESTRICT="
ia64? ( test )
!test? ( test )
diff --git a/sys-devel/mold/Manifest b/sys-devel/mold/Manifest
index 8b146d3865ee..3f125391d2a2 100644
--- a/sys-devel/mold/Manifest
+++ b/sys-devel/mold/Manifest
@@ -1,6 +1,6 @@
-DIST mold-1.7.1.tar.gz 8381932 BLAKE2B 3355304cfe4de7aa96608e68183868debe6d7749940c507e717c5f6def3344bf1bfba8605275506bec6bab018f921c1da87515c4a8fc4f4488d37d874e70c452 SHA512 2e1b6203591718976a3b6c22cb9cdc4037efd101ecb520b809aaa242ee758ee24ed98d0b53012fa8423725fd9b89da94e67603af57b9de1dfb3189a096e1ae5b
DIST mold-1.8.0.tar.gz 8155820 BLAKE2B cd4285953ec56fa437d32c74b928617a50508c0b947dd0c0a3fac6813d7b929d9499f24aa2641faab78d5e81fbced48d734389c61313d752f509d25d2e1f9c61 SHA512 923158563c7abd39c7111e3871a90c7f6f17e0b2412c5de0c9924f3fb55d7fe57db4a83d8a20c3d4966b7b117d1c95cf4a59f63d5076db422b9aa5c3485fd7f8
-EBUILD mold-1.7.1-r1.ebuild 2155 BLAKE2B 9f586543589a88bfb8d865cba4b05e439936208f728f81da755adffa292190680f1a7e4a13f18cc73c161f70c3854b944796778c21109ca9231f1ad06edbff69 SHA512 0fd9723aa2a0e01881d2a8bc91c3d771ac973f1a2aa7f13689450a6ade2f352f5c79791e8d4456aa637f7c4afa1620b60d03f76bd3fafeaee418aceb86f66d72
+DIST mold-1.9.0.tar.gz 8163212 BLAKE2B 09ce66e4214c184ea2f36720bc0f839f77ff2a708d56a5767d29758d62310eaf1193394d581c4352404958052c29c0cbc55a4826d10285beda50afb20bd51c80 SHA512 c1c45bced963d4f7c9b67905177157d6f76c518b234fe3eefa2a9ba6c35a08dd6659e64b7939744355ebcd72ae343ef0249ef6a0c80b4d77b1e69e327eb3ba19
EBUILD mold-1.8.0-r1.ebuild 2154 BLAKE2B ac12a67360e593048accf196631d268fe808f46689e5dda5f27d9caefa6f28f35db45c41283bbdf40b2ef1becac6fe0e9102a2dd70c1208e5a45ab573d75f5f3 SHA512 5ade48864229c969e4eaf7362dc18ae69284031f88a4ddf8dbd63c7230ec0274e0ad07d55df281c71c25f3329ba438ca2b51c10fee7680511e7685343e81594e
+EBUILD mold-1.9.0.ebuild 2155 BLAKE2B 9f586543589a88bfb8d865cba4b05e439936208f728f81da755adffa292190680f1a7e4a13f18cc73c161f70c3854b944796778c21109ca9231f1ad06edbff69 SHA512 0fd9723aa2a0e01881d2a8bc91c3d771ac973f1a2aa7f13689450a6ade2f352f5c79791e8d4456aa637f7c4afa1620b60d03f76bd3fafeaee418aceb86f66d72
EBUILD mold-9999.ebuild 2155 BLAKE2B 9f586543589a88bfb8d865cba4b05e439936208f728f81da755adffa292190680f1a7e4a13f18cc73c161f70c3854b944796778c21109ca9231f1ad06edbff69 SHA512 0fd9723aa2a0e01881d2a8bc91c3d771ac973f1a2aa7f13689450a6ade2f352f5c79791e8d4456aa637f7c4afa1620b60d03f76bd3fafeaee418aceb86f66d72
MISC metadata.xml 424 BLAKE2B a1c0cbdcb86c323fa1e6143c9665ec548f7713e74002a25b2fc26c51b60dae00922d3448a5aaecd5027a8cb026a681386ca7dea90657a3e10b25fb194dafc0d3 SHA512 1adc934e78ca0210743a1aa7479ebc4b5ea0b66a348c4408423460f02b404b885d3a8eca6e89ea8ac53ac9c76e85116965f1eef79e3f3e1f0451c8cf5ce0dfd6
diff --git a/sys-devel/mold/mold-1.7.1-r1.ebuild b/sys-devel/mold/mold-1.9.0.ebuild
index 8063ade34f39..8063ade34f39 100644
--- a/sys-devel/mold/mold-1.7.1-r1.ebuild
+++ b/sys-devel/mold/mold-1.9.0.ebuild