summaryrefslogtreecommitdiff
path: root/dev-util
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-09-12 22:42:36 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-09-12 22:42:36 +0100
commitd24a417ad25a06bbd0cb13469ec2278ae8f33fba (patch)
tree0264a09107d206a9493e44fd90c554f402142072 /dev-util
parentd4de2b287be5b8553180509934fd44ef3d7fce3c (diff)
gentoo auto-resync : 12:09:2023 - 22:42:36
Diffstat (limited to 'dev-util')
-rw-r--r--dev-util/Manifest.gzbin69132 -> 69129 bytes
-rw-r--r--dev-util/mingw64-runtime/Manifest4
-rw-r--r--dev-util/mingw64-runtime/files/mingw64-runtime-10.0.0-msvcr-extra-race.patch22
-rw-r--r--dev-util/mingw64-runtime/files/mingw64-runtime-7.0.0-fortify-only-ssp.patch16
-rw-r--r--dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild153
-rw-r--r--dev-util/mingw64-toolchain/Manifest11
-rw-r--r--dev-util/mingw64-toolchain/files/binutils-2.40-import-lib.patch30
-rw-r--r--dev-util/mingw64-toolchain/files/gcc-11.3.0-plugin-objdump.patch22
-rw-r--r--dev-util/mingw64-toolchain/files/mingw64-runtime-10.0.0-msvcr-extra-race.patch22
-rw-r--r--dev-util/mingw64-toolchain/files/mingw64-runtime-10.0.0-tmp-files-clash.patch10
-rw-r--r--dev-util/mingw64-toolchain/mingw64-toolchain-10.0.0_p1-r2.ebuild319
-rw-r--r--dev-util/mingw64-toolchain/mingw64-toolchain-11.0.0.ebuild325
-rw-r--r--dev-util/perf/Manifest2
-rw-r--r--dev-util/perf/perf-6.5.ebuild313
-rw-r--r--dev-util/ruff/Manifest4
-rw-r--r--dev-util/ruff/ruff-0.0.289.ebuild (renamed from dev-util/ruff/ruff-0.0.288.ebuild)0
16 files changed, 317 insertions, 936 deletions
diff --git a/dev-util/Manifest.gz b/dev-util/Manifest.gz
index 8e54bbf6a874..de5ff7f83af5 100644
--- a/dev-util/Manifest.gz
+++ b/dev-util/Manifest.gz
Binary files differ
diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index d88820b28277..cfbeae677508 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -1,7 +1,3 @@
-AUX mingw64-runtime-10.0.0-msvcr-extra-race.patch 1971 BLAKE2B 1c8d6371cfb7f5ebdaadc1f04ee4497b494108ead0daa3ed05c1f533d9e52d551bc94bbde7050885a723fa2423b86cb6eedc7df1584ca01834b61f17c177165e SHA512 3763b103f3d7927dbc84c9cb1a3836cb4af943dfc6a335ef904c8f66da06486751fe29465cdbcecc2bf0d7312f623d3fb5ac91e8dcfe1b20cb6657cadd2b6fad
-AUX mingw64-runtime-7.0.0-fortify-only-ssp.patch 637 BLAKE2B 3a8eff14b3150446da51354324a3b29e327982fd586339e5f8df4309de2bbdb2722773e0d145d87363183ff70fd02fcdcbc46c560bef9a5111dc33ee8105bede SHA512 991d4294d81a05bfa86d2bed102b3f5bf58435ef02b0a38abe905cc4a0416896b01ffc3a2fe64e78d44e78c9c65051428426b7d19561bd337a229bf7281c7040
-DIST mingw-w64-v10.0.0.tar.bz2 9620291 BLAKE2B 451372403289c492ca939d65bb4d9f6e9fa6bdd6b32d79d6438d858e106e8cc291712ada1f3f7b951a4c6908e7d0385d485ca76920af39bcf86effa48408e330 SHA512 3c0827af7c40809a867758f6cd9ef3ff0c988b43082345bf725e03949af95968d634ace99a7ffae323189549221dcb5d861de9e801f1fbc7904e446641b60516
DIST mingw-w64-v11.0.0.tar.bz2 10058657 BLAKE2B 3f7637bcc7c3f25b2141d35105ea086eab74e228d7275725ffb4f07e283fd75169dbe0900a9c29494fba9ddb2ea03bdd6ae26f06048311e9c93ae3e317c4c060 SHA512 bc1c9fd9d8593ead9375fcbe40950f06cf7616b94dc676db2793ac9b496fe3a6cc94b5793effda3b752942be0d7d01a1c37a8f221aaf178df0d4eeb0aa6d1f8d
-EBUILD mingw64-runtime-10.0.0-r1.ebuild 4442 BLAKE2B be88c3b0101d14cee4e306eacee6a71e7f898aa7db093f045c27de24abe7de56e147d1f1e1b97a8d3f1cce66062940e6d17fc81419b60ee360af4810b017c4ed SHA512 849f0f83550cdaea4d7c6b065addfd2f1121f6563ec5735ed6294d5a3ecabd5612788589984c20f8b8e1459c579ade8fa432c72556193f43c88cf0e91399a328
EBUILD mingw64-runtime-11.0.0.ebuild 4567 BLAKE2B 8a3c32680e4c8449e18392b54a505ceb32d1d303197dba1ee5323698d5968c6d10ef6ad30b4ad532a21b500451c4897eb9e6799fc9a8ae2c9fed5d5be8955154 SHA512 56803141057be266908b3749cd78df45d91ff5ca1c6920d76add91b42ec6723f52da8fb080f86a6dd2e411a1bece5007e0a405b21a51ab1b8f69e130b57e917b
MISC metadata.xml 904 BLAKE2B b7b42242ff7a39ba87ec4889295bb1229122bd20f34c163499423d989120569d5b6c69ed9490f328aa1af8a9dd3ff2ec0f07b85910e7d2eb401f40dbd670d366 SHA512 80bb5c58cf80d7233599e772a1e615ec4b4f16bd9387539a684d11e0b7196e7a3d21f1b56d18271b9a4b0544253e3fec4130ff70702ba4cf5684941ff8d49a51
diff --git a/dev-util/mingw64-runtime/files/mingw64-runtime-10.0.0-msvcr-extra-race.patch b/dev-util/mingw64-runtime/files/mingw64-runtime-10.0.0-msvcr-extra-race.patch
deleted file mode 100644
index 3e57c755731a..000000000000
--- a/dev-util/mingw64-runtime/files/mingw64-runtime-10.0.0-msvcr-extra-race.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-https://bugs.gentoo.org/879537
-https://sourceforge.net/p/mingw-w64/mingw-w64/ci/e1b0c1420bbd52ef505c71737c57393ac1397b0a
-(Makefile.in regenerated in 0eeb66e041327b9ca3f6bc1dd1d0a0bd2f46254d)
---- a/mingw-w64-crt/Makefile.in
-+++ b/mingw-w64-crt/Makefile.in
-@@ -77916,11 +77916,11 @@
- @LIB32_TRUE@@W32API_FALSE@ cd $(dir $@) && $(AR) -M < $(abspath $<)
--@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcrt10.a: lib32/msvcrt10.mri lib32/libmsvcrt10_def.a lib32/libmsvcrt_common.a
-+@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcrt10.a: lib32/msvcrt10.mri lib32/libmsvcrt10_def.a lib32/libmsvcrt_common.a lib32/libmsvcrt10_extra.a
- @LIB32_TRUE@@W32API_FALSE@ cd $(dir $@) && $(AR) -M < $(abspath $<)
--@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcrt20.a: lib32/msvcrt20.mri lib32/libmsvcrt20_def.a lib32/libmsvcrt_common.a
-+@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcrt20.a: lib32/msvcrt20.mri lib32/libmsvcrt20_def.a lib32/libmsvcrt_common.a lib32/libmsvcrt20_extra.a
- @LIB32_TRUE@@W32API_FALSE@ cd $(dir $@) && $(AR) -M < $(abspath $<)
--@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcrt40.a: lib32/msvcrt40.mri lib32/libmsvcrt40_def.a lib32/libmsvcrt_common.a
-+@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcrt40.a: lib32/msvcrt40.mri lib32/libmsvcrt40_def.a lib32/libmsvcrt_common.a lib32/libmsvcrt40_extra.a
- @LIB32_TRUE@@W32API_FALSE@ cd $(dir $@) && $(AR) -M < $(abspath $<)
--@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcr70.a: lib32/msvcr70.mri lib32/libmsvcr70_def.a lib32/libmsvcrt_common.a
-+@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcr70.a: lib32/msvcr70.mri lib32/libmsvcr70_def.a lib32/libmsvcrt_common.a lib32/libmsvcr70_extra.a
- @LIB32_TRUE@@W32API_FALSE@ cd $(dir $@) && $(AR) -M < $(abspath $<)
--@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcr71.a: lib32/msvcr71.mri lib32/libmsvcr71_def.a lib32/libmsvcrt_common.a
-+@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcr71.a: lib32/msvcr71.mri lib32/libmsvcr71_def.a lib32/libmsvcrt_common.a lib32/libmsvcr71_extra.a
- @LIB32_TRUE@@W32API_FALSE@ cd $(dir $@) && $(AR) -M < $(abspath $<)
diff --git a/dev-util/mingw64-runtime/files/mingw64-runtime-7.0.0-fortify-only-ssp.patch b/dev-util/mingw64-runtime/files/mingw64-runtime-7.0.0-fortify-only-ssp.patch
deleted file mode 100644
index 72ddd775a2ea..000000000000
--- a/dev-util/mingw64-runtime/files/mingw64-runtime-7.0.0-fortify-only-ssp.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/mingw-w64-headers/crt/_mingw_mac.h
-+++ b/mingw-w64-headers/crt/_mingw_mac.h
-@@ -301,7 +301,12 @@
- # define __mingw_attribute_artificial
- #endif
-
--#if _FORTIFY_SOURCE > 0 && __OPTIMIZE__ > 0 && __MINGW_GNUC_PREREQ(4, 1)
-+/* __SSP__ is a workaround to avoid reference to libssp when user did not request it:
-+ * https://sourceforge.net/p/mingw-w64/bugs/818/
-+ * Otherwise it breaks both USE=ssp gcc bootstrap and projects that happen to use
-+ * strcpy/memcpy.
-+ */
-+#if _FORTIFY_SOURCE > 0 && __OPTIMIZE__ > 0 && __MINGW_GNUC_PREREQ(4, 1) && __SSP__ > 0
- # if _FORTIFY_SOURCE > 1
- # define __MINGW_FORTIFY_LEVEL 2
- # else
diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
deleted file mode 100644
index dbbdbd2de31c..000000000000
--- a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
+++ /dev/null
@@ -1,153 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="Free Win64 runtime and import library definitions"
-HOMEPAGE="https://www.mingw-w64.org/"
-SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
-S="${WORKDIR}/mingw-w64-v${PV}"
-
-LICENSE="ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain tools? ( GPL-3+ )"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-# USE=libraries needs working stage2 compiler: bug #665512
-IUSE="default-ucrt headers-only idl libraries tools"
-RESTRICT="strip"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-7.0.0-fortify-only-ssp.patch
- "${FILESDIR}"/${P}-msvcr-extra-race.patch
-)
-
-pkg_setup() {
- : ${CBUILD:=${CHOST}}
- : ${CTARGET:=${CHOST}}
- [[ ${CTARGET} == ${CHOST} && ${CATEGORY} == cross-* ]] &&
- CTARGET=${CATEGORY#cross-}
-
- [[ ${CHOST} != ${CTARGET} ]] && MW_CROSS=true || MW_CROSS=false
-
- [[ ${CBUILD} == ${CHOST} && ${CTARGET} == ${CHOST} ]] &&
- die "Invalid configuration, please see: https://wiki.gentoo.org/wiki/Mingw"
-}
-
-mingw-foreach_tool() {
- use !tools || use headers-only && return
-
- local tool=widl
- if use !amd64 && use !x86 && use !arm64 && use !arm; then
- einfo "Skipping widl due to unsupported platform" #853250
- tool=
- fi
-
- for tool in gendef genidl ${tool}; do
- # not using top-level --with-tools given it skips widl
- pushd mingw-w64-tools/${tool} >/dev/null || die
- "${@}"
- popd >/dev/null || die
- done
-}
-
-src_configure() {
- # native tools, see #644556
- local toolsconf=()
- # normally only widl is prefixed, but avoids clash with other targets
- ${MW_CROSS} && toolsconf+=( --program-prefix=${CTARGET}- )
-
- mingw-foreach_tool econf "${toolsconf[@]}"
-
- MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
-
- # likely cross-compiling from here, update toolchain variables
- if ${MW_CROSS} && [[ ! -v MINGW_BYPASS ]]; then
- unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
- filter-flags '-fstack-clash-protection' #758914
- filter-flags '-fstack-protector*' #870136
- filter-flags '-fuse-ld=*'
- filter-flags '-mfunction-return=thunk*' #878849
- fi
- local CHOST=${CTARGET}
-
- # -mavx with mingw-gcc has a history of obscure issues and
- # disabling is seen as safer, e.g. `WINEARCH=win32 winecfg`
- # crashes with -march=skylake >=wine-8.10, similar issues with
- # znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273
- tc-is-gcc && append-flags -mno-avx
-
- strip-unsupported-flags
-
- # Normally mingw64 does not use dynamic linker.
- # But at configure time it uses $LDFLAGS.
- # When default -Wl,--hash-style=gnu is passed
- # __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
- # for target ld and binaries crash at shutdown.
- filter-ldflags '-Wl,--hash-style=*'
-
- local prefix=${EPREFIX}/usr
- ${MW_CROSS} && prefix+=/${CTARGET}/usr
-
- local conf=(
- --prefix="${prefix}"
- --libdir="${prefix}"/lib
- $(use_with !headers-only crt)
- $(usev default-ucrt --with-default-msvcrt=ucrt)
-
- # By default configure tries to set --sysroot=${prefix}. We disable
- # this behaviour with --with-sysroot=no to use gcc's sysroot default.
- # That way we can cross-build mingw64-runtime with cross-emerge.
- --with-sysroot=no
- )
-
- if use !headers-only; then
- conf+=(
- $(use_enable idl)
- $(use_with libraries)
- )
-
- # prefer tuple to determine if should do 32 or 64bits, but fall
- # back to cpp test if missing (bug #584858, see also #840662)
- local b32=true
- case ${CHOST} in
- x86_64-*) b32=false;;
- i*86-*) ;;
- *) [[ $($(tc-getCPP) -dM - <<<'') =~ __MINGW64__ ]] && b32=false;;
- esac
- ${b32} &&
- conf+=( --enable-lib32 --disable-lib64 ) ||
- conf+=( --disable-lib32 --enable-lib64 )
-
- # prepare temporary headers install to build against same-version
- mkdir ../headers || die
- pushd ../headers >/dev/null || die
- ECONF_SOURCE=${S} econf --prefix="${T}"/root --without-crt
- popd >/dev/null || die
-
- append-cppflags "-I${T}/root/include"
- fi
-
- econf "${conf[@]}"
-}
-
-src_compile() {
- use headers-only || emake -C ../headers install
- emake
- mingw-foreach_tool emake LDFLAGS="${MW_LDFLAGS}"
-}
-
-src_install() {
- default
-
- mingw-foreach_tool emake DESTDIR="${D}" install
-
- if ${MW_CROSS}; then
- # gcc is configured to look at specific hard-coded paths for mingw #419601
- dosym usr /usr/${CTARGET}/mingw
- dosym usr /usr/${CTARGET}/${CTARGET}
- dosym usr/include /usr/${CTARGET}/sys-include
- fi
-
- rm -r "${ED}"/usr/share || die
-}
diff --git a/dev-util/mingw64-toolchain/Manifest b/dev-util/mingw64-toolchain/Manifest
index 8a928aa1c980..54b2d987cb19 100644
--- a/dev-util/mingw64-toolchain/Manifest
+++ b/dev-util/mingw64-toolchain/Manifest
@@ -1,17 +1,6 @@
-AUX binutils-2.40-import-lib.patch 1213 BLAKE2B e01bcad336f99e173579261950aa28eaac22b0e3bcf30c0cf567b5324d1b8294646d62ffa406ddd14a448a32f6bc81fcab3c50d64e2a09beed5cec9f7b8d4085 SHA512 8ead67c0059dbd51bfb0e47e473656ece9be31427e366f6bb18ac1324d7d79a6d3004664573c895b6119a708c8b5cdbf11703d59251d4e24181c451d8286d6ed
-AUX gcc-11.3.0-plugin-objdump.patch 762 BLAKE2B c98cec68476fd3c5922c8b84a5f971e86d20f8e47da2923e929b7852da62ffaa45d0ed78c7326e9b4319696d11478f2aac1fabd7ddb6688d85f9b6e686a37120 SHA512 a012c01f54a6db490ae06cde80696fbdc750e937e54f2848d43c920ecdd3365f57197ff08b818d6d2d8423bfe5b31b440642a99fc34506d99588ab6703c95286
AUX gcc-12.2.0-drop-cflags-sed.patch 1077 BLAKE2B 4e0ff834cbfd4597c67d9adf2e287f2e40b746a6a6b31c52b95ab4b20292aad1931a1f64ffabd2bef611af85b643718e5a4a280d1e3b54e0a9f73b086d0dc39e SHA512 35647183fdf82bc179d94504d22a5e00a955121e888b5419a0033b7723a7e385c196096c64bf9ed59ad2c72188cb4792049ce423b226bfeb40ed379c355b91b8
-AUX mingw64-runtime-10.0.0-msvcr-extra-race.patch 1987 BLAKE2B 120aa8ad9ee269ee39b3724b3ff26ecfe0865508f655919e0ac69733ed5a41454725d8756c41094ec431f2a1df947db9542ead5d81088db4085d7169e6fcfb6d SHA512 02b696643276cbcd8c129e8a03cc8843f86d0c06608260eb391112fa1aeea49f9458c6978600fc344e8293b032e4482efcc19afd3a61747594888abcc0be6e11
-AUX mingw64-runtime-10.0.0-tmp-files-clash.patch 572 BLAKE2B c0604bf4bcc3de23a4144bb1482e824c145e51e19468489702002c8d0e446dbd896424d1cd498329e144892e46349286d3d9fdf257a1cc181ee0ea6f87a25b3c SHA512 01eb77360b609a32bfa65da5b4ca4c737144514c43d1d05b462e2dec8051aef921fde23ec2c39c17444464ba46354dbe109e9267b8fa77a929be1550711290fd
-DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
-DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba63dcd74c665fd834e858645c912ffd8245d848435288b938852830b482905606f55c40df4061215fd75c52ffc75 SHA512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374
-DIST gcc-12.2.0.tar.xz 84645292 BLAKE2B 715574af9ad678f9dc8cfd19c866bf910c7edfd479e7e9681337feaa9b54e5d304ddb85483816b8d89754d502405823ae2eff0d1e444538763f40be8e428d8da SHA512 e9e857bd81bf7a370307d6848c81b2f5403db8c7b5207f54bce3f3faac3bde63445684092c2bc1a2427cddb6f7746496d9fbbef05fbbd77f2810b2998f1f9173
-DIST gcc-13.1.0.tar.xz 87451196 BLAKE2B b956a773cffe8b43bd6c9a99fe614f53f665438925a6b320975d301f547923e45d4d6fa577a143467fb03e0a9c1bab2b6719a1011d672367f3e644433a2d7606 SHA512 6cf06dfc48f57f5e67f7efe3248019329a14d690c728d9f2f7ef5fa0d58f1816f309586ba7ea2eac20d0b60a2d1b701f68392e9067dd46f827ba0efd7192db33
DIST gcc-13.2.0.tar.xz 87858592 BLAKE2B 0034b29d3d6cc05821f0c4253ce077805943aff7b370729dd203bda57d89c107edd657eeddc2fb1e69ea15c7b0323b961f46516c7f4af89a3ccf7fea84701be2 SHA512 d99e4826a70db04504467e349e9fbaedaa5870766cda7c5cab50cdebedc4be755ebca5b789e1232a34a20be1a0b60097de9280efe47bdb71c73251e30b0862a2
-DIST mingw-w64-v10.0.0.tar.bz2 9620291 BLAKE2B 451372403289c492ca939d65bb4d9f6e9fa6bdd6b32d79d6438d858e106e8cc291712ada1f3f7b951a4c6908e7d0385d485ca76920af39bcf86effa48408e330 SHA512 3c0827af7c40809a867758f6cd9ef3ff0c988b43082345bf725e03949af95968d634ace99a7ffae323189549221dcb5d861de9e801f1fbc7904e446641b60516
DIST mingw-w64-v11.0.0.tar.bz2 10058657 BLAKE2B 3f7637bcc7c3f25b2141d35105ea086eab74e228d7275725ffb4f07e283fd75169dbe0900a9c29494fba9ddb2ea03bdd6ae26f06048311e9c93ae3e317c4c060 SHA512 bc1c9fd9d8593ead9375fcbe40950f06cf7616b94dc676db2793ac9b496fe3a6cc94b5793effda3b752942be0d7d01a1c37a8f221aaf178df0d4eeb0aa6d1f8d
-EBUILD mingw64-toolchain-10.0.0_p1-r2.ebuild 10084 BLAKE2B ba491e66b82d7801d2678f97075309e2724bfda2566fdcb26d83d17c377451b4c583c1785792eaac72bde509e0b3e2d88ffd1daab3829f3ad12f51c4b0adc2a7 SHA512 f88435dcb643ddca15704a5ced522daf255a6aafd51d06ac30c83f77e2994d29e2da84dea0d78c85a6f81ef0ab411615697b8140d743c30f62504fe997134bd7
-EBUILD mingw64-toolchain-11.0.0.ebuild 10079 BLAKE2B d20d96fb2435fabd6feaad85c5e11fbb98d29344e8596845f8949c3c223b630ac8d16c00f651fdb49d79e3fd9ef6d1805af4bfa4b6e0e86e5fd8006f3a2648ab SHA512 164130a70dfdcb469e60d7c62e3406dcecfb851b6420950fb9e505fe74f91b954a5f5505f42c9a86a0652208aa6124d97e80d32208000e13f3f5ad38c094f332
EBUILD mingw64-toolchain-11.0.0_p2.ebuild 10039 BLAKE2B 7e95f7cdc66eb862a129a6c1574d86d572b72a7de97b927f06fd8fe0a55a494aa60384f6459a603cb35f2cc07f4b8caa0d8af7cd3ded3a4493ee9a99a910f144 SHA512 207c2696e329214fdfa163abb0db68482704a86e9b62f73de2c792a4019f498f20e851162c5cc4570a599820186f6461883edab47ff914b8e96641e73ce7b527
MISC metadata.xml 432 BLAKE2B 273e7dd75d25bd1857a83a8fbad8705413e2780589beca8e9841fabd266f1e94d6f85875901829cbdd5bfd979d23c1ebacb3b07a04cb48388e0a10656ade6cca SHA512 71bf6b85f6b8b8640167a464296199f8d91d36ef048a21a1bd55383dc5ee6ccace50b153e6945163d197f8227f05c2f339899e5b3c5c67e01896241326b2f313
diff --git a/dev-util/mingw64-toolchain/files/binutils-2.40-import-lib.patch b/dev-util/mingw64-toolchain/files/binutils-2.40-import-lib.patch
deleted file mode 100644
index 844fdf93020d..000000000000
--- a/dev-util/mingw64-toolchain/files/binutils-2.40-import-lib.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-Fixes building app-emulation/dxvk:
-
- FAILED: src/d3d10/d3d10.dll
- x86_64-w64-mingw32-g++ -m32 -mfpmath=sse -o src/d3d10/d3d10.dll <snip>
- ld: internal error: aborting at ldlang.c:527 in compare_section
- ld: please report this bug
-
-https://sourceware.org/PR30079
-https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=b7eab2a9d4f4e92692daf14b09fc95ca11b72e30
-From: Michael Matz <matz@suse.de>
-Date: Thu, 9 Feb 2023 15:29:00 +0100
-Subject: [PATCH] Fix PR30079: abort on mingw
-
-the early-out in wild_sort is not enough, it might still be
-that filenames are equal _and_ the wildcard list doesn't specify
-a sort order either. Don't call compare_section then.
-
-Tested on all targets.
---- a/binutils/ld/ldlang.c
-+++ b/binutils/ld/ldlang.c
-@@ -649,7 +649,8 @@ wild_sort (lang_wild_statement_type *wild,
- looking at the sections for this file. */
-
- /* Find the correct node to append this section. */
-- if (compare_section (sec->spec.sorted, section, (*tree)->section) < 0)
-+ if (sec && sec->spec.sorted != none && sec->spec.sorted != by_none
-+ && compare_section (sec->spec.sorted, section, (*tree)->section) < 0)
- tree = &((*tree)->left);
- else
- tree = &((*tree)->right);
diff --git a/dev-util/mingw64-toolchain/files/gcc-11.3.0-plugin-objdump.patch b/dev-util/mingw64-toolchain/files/gcc-11.3.0-plugin-objdump.patch
deleted file mode 100644
index 1de712de48bc..000000000000
--- a/dev-util/mingw64-toolchain/files/gcc-11.3.0-plugin-objdump.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-https://gcc.gnu.org/PR95648
---- a/gcc/config/gcc-plugin.m4
-+++ b/gcc/config/gcc-plugin.m4
-@@ -47,3 +47,3 @@
- if test x$build = x$host; then
-- export_sym_check="objdump${exeext} -T"
-+ export_sym_check="$ac_cv_prog_OBJDUMP -T"
- elif test x$host = x$target; then
---- a/gcc/gcc/configure
-+++ b/gcc/gcc/configure
-@@ -32069,3 +32069,3 @@
- if test x$build = x$host; then
-- export_sym_check="objdump${exeext} -T"
-+ export_sym_check="$ac_cv_prog_OBJDUMP -T"
- elif test x$host = x$target; then
---- a/gcc/libcc1/configure
-+++ b/gcc/libcc1/configure
-@@ -15017,3 +15017,3 @@
- if test x$build = x$host; then
-- export_sym_check="objdump${exeext} -T"
-+ export_sym_check="$ac_cv_prog_OBJDUMP -T"
- elif test x$host = x$target; then
diff --git a/dev-util/mingw64-toolchain/files/mingw64-runtime-10.0.0-msvcr-extra-race.patch b/dev-util/mingw64-toolchain/files/mingw64-runtime-10.0.0-msvcr-extra-race.patch
deleted file mode 100644
index 263dd8b4ac9b..000000000000
--- a/dev-util/mingw64-toolchain/files/mingw64-runtime-10.0.0-msvcr-extra-race.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-https://bugs.gentoo.org/879537
-https://sourceforge.net/p/mingw-w64/mingw-w64/ci/e1b0c1420bbd52ef505c71737c57393ac1397b0a
-(Makefile.in regenerated in 0eeb66e041327b9ca3f6bc1dd1d0a0bd2f46254d)
---- a/mingw64/mingw-w64-crt/Makefile.in
-+++ b/mingw64/mingw-w64-crt/Makefile.in
-@@ -77916,11 +77916,11 @@
- @LIB32_TRUE@@W32API_FALSE@ cd $(dir $@) && $(AR) -M < $(abspath $<)
--@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcrt10.a: lib32/msvcrt10.mri lib32/libmsvcrt10_def.a lib32/libmsvcrt_common.a
-+@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcrt10.a: lib32/msvcrt10.mri lib32/libmsvcrt10_def.a lib32/libmsvcrt_common.a lib32/libmsvcrt10_extra.a
- @LIB32_TRUE@@W32API_FALSE@ cd $(dir $@) && $(AR) -M < $(abspath $<)
--@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcrt20.a: lib32/msvcrt20.mri lib32/libmsvcrt20_def.a lib32/libmsvcrt_common.a
-+@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcrt20.a: lib32/msvcrt20.mri lib32/libmsvcrt20_def.a lib32/libmsvcrt_common.a lib32/libmsvcrt20_extra.a
- @LIB32_TRUE@@W32API_FALSE@ cd $(dir $@) && $(AR) -M < $(abspath $<)
--@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcrt40.a: lib32/msvcrt40.mri lib32/libmsvcrt40_def.a lib32/libmsvcrt_common.a
-+@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcrt40.a: lib32/msvcrt40.mri lib32/libmsvcrt40_def.a lib32/libmsvcrt_common.a lib32/libmsvcrt40_extra.a
- @LIB32_TRUE@@W32API_FALSE@ cd $(dir $@) && $(AR) -M < $(abspath $<)
--@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcr70.a: lib32/msvcr70.mri lib32/libmsvcr70_def.a lib32/libmsvcrt_common.a
-+@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcr70.a: lib32/msvcr70.mri lib32/libmsvcr70_def.a lib32/libmsvcrt_common.a lib32/libmsvcr70_extra.a
- @LIB32_TRUE@@W32API_FALSE@ cd $(dir $@) && $(AR) -M < $(abspath $<)
--@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcr71.a: lib32/msvcr71.mri lib32/libmsvcr71_def.a lib32/libmsvcrt_common.a
-+@LIB32_TRUE@@W32API_FALSE@lib32/libmsvcr71.a: lib32/msvcr71.mri lib32/libmsvcr71_def.a lib32/libmsvcrt_common.a lib32/libmsvcr71_extra.a
- @LIB32_TRUE@@W32API_FALSE@ cd $(dir $@) && $(AR) -M < $(abspath $<)
diff --git a/dev-util/mingw64-toolchain/files/mingw64-runtime-10.0.0-tmp-files-clash.patch b/dev-util/mingw64-toolchain/files/mingw64-runtime-10.0.0-tmp-files-clash.patch
deleted file mode 100644
index 38c4abf91e77..000000000000
--- a/dev-util/mingw64-toolchain/files/mingw64-runtime-10.0.0-tmp-files-clash.patch
+++ /dev/null
@@ -1,10 +0,0 @@
-Fix clash when enabling lib32 and lib64 at same time, backport from:
-https://sourceforge.net/p/mingw-w64/mingw-w64/ci/953bcd32ae470c4647e94de8548dda5a8f07d82d/
-(except directly to Makefile.in to avoid autoreconf over this)
---- a/mingw64/mingw-w64-crt/Makefile.in
-+++ b/mingw64/mingw-w64-crt/Makefile.in
-@@ -153,3 +153,3 @@
- host_triplet = @host@
--@DLLTOOL_HAS_TEMP_PREFIX_TRUE@am__append_1 = --temp-prefix $$(basename $@ .a)
-+@DLLTOOL_HAS_TEMP_PREFIX_TRUE@am__append_1 = --temp-prefix $(basename $@)
- @DELAY_IMPORT_LIBS_TRUE@am__append_2 = --output-delaylib $@.delayimp.a
diff --git a/dev-util/mingw64-toolchain/mingw64-toolchain-10.0.0_p1-r2.ebuild b/dev-util/mingw64-toolchain/mingw64-toolchain-10.0.0_p1-r2.ebuild
deleted file mode 100644
index 0cd505bd6851..000000000000
--- a/dev-util/mingw64-toolchain/mingw64-toolchain-10.0.0_p1-r2.ebuild
+++ /dev/null
@@ -1,319 +0,0 @@
-# Copyright 2022-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-MULTILIB_COMPAT=( abi_x86_{32,64} )
-inherit edo flag-o-matic multilib-build toolchain-funcs
-
-# Pick versions known to work for Wine and use vanilla for simplicity,
-# ideally update only on mingw64-runtime bumps or if there's known issues
-# (please report) to avoid rebuilding the entire toolchain too often.
-# Do _p1++ rather than revbump if changing without bumping mingw64 itself.
-BINUTILS_PV=2.39
-GCC_PV=12.2.0
-MINGW_PV=$(ver_cut 1-3)
-
-DESCRIPTION="All-in-one mingw64 toolchain intended for building Wine without crossdev"
-HOMEPAGE="
- https://www.mingw-w64.org/
- https://gcc.gnu.org/
- https://sourceware.org/binutils/"
-SRC_URI="
- mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${MINGW_PV}.tar.bz2
- mirror://gnu/gcc/gcc-${GCC_PV}/gcc-${GCC_PV}.tar.xz
- mirror://gnu/binutils/binutils-${BINUTILS_PV}.tar.xz"
-S="${WORKDIR}"
-
-# l1:binutils+gcc, l2:gcc(libraries), l3:mingw64-runtime
-LICENSE="
- GPL-3+
- LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
- ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain"
-SLOT="0"
-KEYWORDS="-* amd64 x86"
-IUSE="+abi_x86_32 custom-cflags debug"
-
-RDEPEND="
- dev-libs/gmp:=
- dev-libs/mpc:=
- dev-libs/mpfr:=
- sys-libs/zlib:=
- virtual/libiconv"
-DEPEND="${RDEPEND}"
-
-PATCHES=(
- "${FILESDIR}"/mingw64-runtime-10.0.0-msvcr-extra-race.patch
- "${FILESDIR}"/mingw64-runtime-10.0.0-tmp-files-clash.patch
- "${FILESDIR}"/gcc-11.3.0-plugin-objdump.patch
- "${FILESDIR}"/gcc-12.2.0-drop-cflags-sed.patch
-)
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} == binary ]] && return
-
- tc-is-cross-compiler &&
- die "cross-compilation of the toolchain itself is unsupported"
-}
-
-src_prepare() {
- # rename directories to simplify both patching and the ebuild
- mv binutils{-${BINUTILS_PV},} || die
- mv gcc{-${GCC_PV},} || die
- mv mingw-w64-v${MINGW_PV} mingw64 || die
-
- default
-}
-
-src_compile() {
- # not great but do everything in src_compile given bootstrapping
- # process needs to be done in steps of configure+compile+install
- # (done modular to have most package-specific things in one place)
-
- CTARGET=$(usex x86 i686 x86_64)-w64-mingw32
-
- MWT_D=${T}/root # use ${T} to respect VariableScope for ${D}
- local mwtdir=/usr/lib/${PN}
- local prefix=${EPREFIX}${mwtdir}
- local sysroot=${MWT_D}${prefix}
- local -x PATH=${sysroot}/bin:${PATH}
-
- use custom-cflags || strip-flags # fancy flags are not realistic here
-
- local multilib=false
- use abi_x86_32 && use abi_x86_64 && multilib=true
-
- # global configure flags
- local conf=(
- --build=${CBUILD:-${CHOST}}
- --target=${CTARGET}
- --{doc,info,man}dir=/.skip # let individual packages handle docs
- )
-
- # binutils
- local conf_binutils=(
- --prefix="${prefix}"
- --host=${CHOST}
- --disable-cet
- --disable-default-execstack
- --disable-nls
- --disable-shared
- --with-system-zlib
- --without-debuginfod
- --without-msgpack
- )
- mwt-binutils() {
- # symlink gcc's lto plugin for AR (bug #854516)
- ln -s ../../libexec/gcc/${CTARGET}/${GCC_PV}/liblto_plugin.so \
- "${sysroot}"/lib/bfd-plugins || die
- }
-
- # gcc (minimal -- if need more, disable only in stage1 / enable in stage3)
- local conf_gcc=(
- --prefix="${prefix}"
- --host=${CHOST}
- --disable-bootstrap
- --disable-cet
- --disable-gcov #843989
- --disable-gomp
- --disable-libquadmath
- --disable-libsanitizer
- --disable-libssp
- --disable-libvtv
- --disable-shared
- --disable-werror
- --with-system-zlib
- --without-isl
- --without-zstd
- )
- ${multilib} || conf_gcc+=( --disable-multilib )
-
- local conf_gcc_stage1=(
- --enable-languages=c
- --disable-libatomic
- --with-sysroot="${sysroot}"
- )
- local -n conf_gcc_stage2=conf_gcc_stage1
-
- local conf_gcc_stage3=(
- --enable-languages=c,c++
- --enable-threads=posix # needs stage3, and is required for dxvk/vkd3d
- --with-sysroot="${prefix}"
- --with-build-sysroot="${sysroot}"
- )
-
- # mingw64-runtime (split in several parts, 3 needed for gcc stages)
- local conf_mingw64=(
- --prefix="${prefix}"/${CTARGET}
- --host=${CTARGET}
- --with-sysroot=no
- --without-{crt,headers}
-
- # mingw .dll aren't used by wine and packages wouldn't find them
- # at runtime, use crossdev if need dll and proper search paths
- --disable-shared
- )
-
- local conf_mingw64_headers=(
- --enable-idl
- --with-headers
- )
- mwt-mingw64_headers() { ln -s ${CTARGET} "${sysroot}"/mingw || die; } #419601
-
- local conf_mingw64_runtime=( --with-crt )
- ${multilib} ||
- conf_mingw64_runtime+=( $(usex x86 --disable-lib64 --disable-lib32 ) )
-
- local conf_mingw64_libraries=( --with-libraries )
- local conf_mingw64_libraries32=(
- --libdir="${prefix}"/${CTARGET}/lib32
- --with-libraries
- CC="${CTARGET}-gcc -m32"
- RCFLAGS="--target=pe-i386 ${RCFLAGS}"
- )
-
- # mingw64-runtime's idl compiler (useful not to depend on wine for widl)
- local conf_widl=( --prefix="${prefix}" )
-
- # mwt-build [-x] <path/package-name> [stage-name]
- # -> ./configure && make && make install && mwt-package() && mwt-package_stage()
- # passes conf, conf_package, and conf_package_stage arrays to configure, and
- # users can add options through environment with e.g.
- # MWT_BINUTILS_CONF="--some-option"
- # MWT_GCC_STAGE1_CONF="--some-gcc-stage1-only-option"
- # MWT_WIDL_CONF="--some-other-option"
- # EXTRA_ECONF="--global-option" (generic naming for if not reading this)
- mwt-build() {
- if [[ ${1} == -x ]]; then
- (
- # cross-compiling, cleanup and let ./configure handle it
- unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
- CHOST=${CTARGET}
- filter-flags '-fstack-clash-protection' #758914
- filter-flags '-fstack-protector*' #870136
- filter-flags '-fuse-ld=*'
- filter-flags '-mfunction-return=thunk*' #878849
-
- # -mavx with mingw-gcc has a history of obscure issues and
- # disabling is seen as safer, e.g. `WINEARCH=win32 winecfg`
- # crashes with -march=skylake >=wine-8.10, similar issues with
- # znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273
- append-flags -mno-avx
-
- strip-unsupported-flags
- mwt-build "${@:2}"
- )
- return
- fi
-
- local id=${1##*/}
- local build_dir=${WORKDIR}/${1}${2+_${2}}-build
-
- # econf is not allowed in src_compile and its defaults are
- # mostly unused here, so use configure directly
- local conf=( "${WORKDIR}/${1}"/configure "${conf[@]}" )
-
- local -n conf_id=conf_${id} conf_id2=conf_${id}_${2}
- [[ ${conf_id@a} == *a* ]] && conf+=( "${conf_id[@]}" )
- [[ ${2} && ${conf_id2@a} == *a* ]] && conf+=( "${conf_id2[@]}" )
-
- local -n extra_id=MWT_${id^^}_CONF extra_id2=MWT_${id^^}_${2^^}_CONF
- conf+=( ${EXTRA_ECONF} ${extra_id} ${2+${extra_id2}} )
-
- einfo "Building ${id}${2+ ${2}} in ${build_dir} ..."
-
- mkdir -p "${build_dir}" || die
- pushd "${build_dir}" >/dev/null || die
-
- edo "${conf[@]}"
- emake V=1
- # -j1 to match bug #906155, other packages may be fragile too
- emake -j1 V=1 DESTDIR="${MWT_D}" install
-
- declare -f mwt-${id} >/dev/null && edo mwt-${id}
- declare -f mwt-${id}_${2} >/dev/null && edo mwt-${id}_${2}
-
- popd >/dev/null || die
- }
-
- # workaround race condition with out-of-source crt build (bug #879537)
- mkdir -p mingw64_runtime-build/mingw-w64-crt/lib{32,64} || die
-
- # build with same ordering that crossdev would do + stage3 for pthreads
- mwt-build binutils
- mwt-build mingw64 headers
- mwt-build gcc stage1
- mwt-build -x mingw64 runtime
- mwt-build gcc stage2
- ${multilib} && mwt-build -x mingw64 libraries32
- mwt-build -x mingw64 libraries
- mwt-build gcc stage3
- mwt-build mingw64/mingw-w64-tools/widl
- # note: /could/ system-bootstrap if already installed, but gcc and
- # libraries will use the system's older mingw64 headers/static-libs
- # and make this potentially fragile without more workarounds/stages
-
- if ${multilib}; then
- # Like system's gcc, `x86_64-w64-mingw32-gcc -m32` can build for x86,
- # but packages expect crossdev's i686-w64-mingw32-gcc which is the same
- # just without 64bit support and would rather not build the toolchain
- # twice. Dirty but wrap to allow simple interoperability with crossdev.
- mwt-i686_wrapper() {
- printf "#!/usr/bin/env sh\nexec \"${prefix}/bin/${bin}\" ${*} "'"${@}"\n' \
- > ${bin32} || die
- chmod +x ${bin32} || die
- }
- pushd "${sysroot}"/bin >/dev/null || die
- local bin bin32
- for bin in ${CTARGET}-*; do
- bin32=${bin/x86_64-w64/i686-w64}
- case ${bin#${CTARGET}-} in
- as) mwt-i686_wrapper --32;;
- cpp|gcc|gcc-${GCC_PV}|g++|widl) mwt-i686_wrapper -m32;;
- ld|ld.bfd) mwt-i686_wrapper -m i386pe;;
- windres) mwt-i686_wrapper --target=pe-i386;;
- *) ln -s ${bin} ${bin32} || die;;
- esac
- done
- popd >/dev/null || die
- fi
-
- # portage doesn't know the right strip executable to use for CTARGET
- # and it can lead to .a mangling, notably with 32bit (breaks toolchain)
- dostrip -x ${mwtdir}/{${CTARGET}/lib{,32},lib/gcc/${CTARGET}}
-
- # ... and instead do it here given this saves ~60MB
- if use !debug; then
- einfo "Stripping ${CTARGET} static libraries ..."
- find "${sysroot}"/{,lib/gcc/}${CTARGET} -type f -name '*.a' \
- -exec ${CTARGET}-strip --strip-unneeded {} + || die
- fi
-}
-
-src_install() {
- # use mv over copying given it's ~370MB
- mv "${MWT_D}${EPREFIX}"/* "${ED}" || die
-
- # gcc handles static libs internally without needing .la
- find "${ED}" -type f -name '*.la' -delete || die
-}
-
-pkg_postinst() {
- if [[ ! ${REPLACING_VERSIONS} ]]; then
- elog "Note that this package is primarily intended for Wine and related"
- elog "packages to depend on without needing a manual crossdev setup."
- elog
- elog "Settings are oriented only for what these need and simplicity."
- elog "Use sys-devel/crossdev if need full toolchain/customization:"
- elog " https://wiki.gentoo.org/wiki/Mingw"
- elog " https://wiki.gentoo.org/wiki/Crossdev"
- fi
-
- local cross_gcc=cross-$(usex x86 i686 x86_64)-w64-mingw32/gcc
- if has_version ${cross_gcc}; then
- # encourage cleanup given users may not realize if switch by default
- ewarn "${cross_gcc} is installed, note that ${PN}"
- ewarn "is redundant with the *-w64-mingw32/{binutils,gcc,mingw64-runtime}"
- ewarn "packages and optionally only one needs to be kept."
- fi
-}
diff --git a/dev-util/mingw64-toolchain/mingw64-toolchain-11.0.0.ebuild b/dev-util/mingw64-toolchain/mingw64-toolchain-11.0.0.ebuild
deleted file mode 100644
index fe1e24330e9d..000000000000
--- a/dev-util/mingw64-toolchain/mingw64-toolchain-11.0.0.ebuild
+++ /dev/null
@@ -1,325 +0,0 @@
-# Copyright 2022-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-MULTILIB_COMPAT=( abi_x86_{32,64} )
-inherit edo flag-o-matic multilib-build toolchain-funcs
-
-# Pick versions known to work for wine+dxvk, and avoid too frequent updates
-# due to slow rebuilds. Do _p1++ rather than revbump on changes (not using
-# Gentoo patchsets for simplicity, their changes are mostly unneeded here).
-BINUTILS_PV=2.40
-GCC_PV=13.1.0
-MINGW_PV=$(ver_cut 1-3)
-
-DESCRIPTION="All-in-one mingw64 toolchain intended for building Wine without crossdev"
-HOMEPAGE="
- https://www.mingw-w64.org/
- https://gcc.gnu.org/
- https://sourceware.org/binutils/"
-SRC_URI="
- mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${MINGW_PV}.tar.bz2
- mirror://gnu/binutils/binutils-${BINUTILS_PV}.tar.xz"
-if [[ ${GCC_PV} == *-* ]]; then
- SRC_URI+=" mirror://gcc/snapshots/${GCC_PV}/gcc-${GCC_PV}.tar.xz"
-else
- SRC_URI+="
- mirror://gcc/gcc-${GCC_PV}/gcc-${GCC_PV}.tar.xz
- mirror://gnu/gcc/gcc-${GCC_PV}/gcc-${GCC_PV}.tar.xz"
-fi
-S="${WORKDIR}"
-
-# l1:binutils+gcc, l2:gcc(libraries), l3:mingw64-runtime
-LICENSE="
- GPL-3+
- LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
- ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain"
-SLOT="0"
-KEYWORDS="-* amd64 x86"
-IUSE="+abi_x86_32 custom-cflags debug"
-
-RDEPEND="
- dev-libs/gmp:=
- dev-libs/mpc:=
- dev-libs/mpfr:=
- sys-libs/zlib:=
- virtual/libiconv"
-DEPEND="${RDEPEND}"
-
-QA_CONFIG_IMPL_DECL_SKIP=(
- strerror_r # libstdc++ test using -Wimplicit+error
-)
-
-PATCHES=(
- "${FILESDIR}"/binutils-2.40-import-lib.patch
- "${FILESDIR}"/gcc-12.2.0-drop-cflags-sed.patch
-)
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} == binary ]] && return
-
- tc-is-cross-compiler &&
- die "cross-compilation of the toolchain itself is unsupported"
-}
-
-src_prepare() {
- # rename directories to simplify both patching and the ebuild
- mv binutils{-${BINUTILS_PV},} || die
- mv gcc{-${GCC_PV},} || die
- mv mingw-w64-v${MINGW_PV} mingw64 || die
-
- default
-}
-
-src_compile() {
- # not great but do everything in src_compile given bootstrapping
- # process needs to be done in steps of configure+compile+install
- # (done modular to have most package-specific things in one place)
-
- CTARGET=$(usex x86 i686 x86_64)-w64-mingw32
-
- MWT_D=${T}/root # moved to ${D} in src_install
- local mwtdir=/usr/lib/${PN}
- local prefix=${EPREFIX}${mwtdir}
- local sysroot=${MWT_D}${prefix}
- local -x PATH=${sysroot}/bin:${PATH}
-
- filter-lto # requires setting up, and may be messy with mingw static libs
- use custom-cflags || strip-flags # fancy flags are not realistic here
-
- local multilib=false
- use abi_x86_32 && use abi_x86_64 && multilib=true
-
- # global configure flags
- local conf=(
- --build=${CBUILD:-${CHOST}}
- --target=${CTARGET}
- --{doc,info,man}dir=/.skip # let individual packages handle docs
- )
-
- # binutils
- local conf_binutils=(
- --prefix="${prefix}"
- --host=${CHOST}
- --disable-cet
- --disable-default-execstack
- --disable-nls
- --disable-shared
- --with-system-zlib
- --without-debuginfod
- --without-msgpack
- --without-zstd
- )
- mwt-binutils() {
- # symlink gcc's lto plugin for AR (bug #854516)
- ln -s ../../libexec/gcc/${CTARGET}/${GCC_PV%%[.-]*}/liblto_plugin.so \
- "${sysroot}"/lib/bfd-plugins || die
- }
-
- # gcc (minimal -- if need more, disable only in stage1 / enable in stage3)
- local conf_gcc=(
- --prefix="${prefix}"
- --host=${CHOST}
- --disable-bootstrap
- --disable-cet
- --disable-gcov #843989
- --disable-gomp
- --disable-libquadmath
- --disable-libsanitizer
- --disable-libssp
- --disable-libvtv
- --disable-shared
- --disable-werror
- --with-gcc-major-version-only
- --with-system-zlib
- --without-isl
- --without-zstd
- )
- ${multilib} || conf_gcc+=( --disable-multilib )
-
- local conf_gcc_stage1=(
- --enable-languages=c
- --disable-libatomic
- --with-sysroot="${sysroot}"
- )
- local -n conf_gcc_stage2=conf_gcc_stage1
-
- local conf_gcc_stage3=(
- --enable-languages=c,c++
- --enable-threads=posix # needs stage3, and is required for dxvk/vkd3d
- --with-sysroot="${prefix}"
- --with-build-sysroot="${sysroot}"
- )
-
- # mingw64-runtime (split in several parts, 3 needed for gcc stages)
- local conf_mingw64=(
- --prefix="${prefix}"/${CTARGET}
- --host=${CTARGET}
- --with-sysroot=no
- --without-{crt,headers}
-
- # mingw .dll aren't used by wine and packages wouldn't find them
- # at runtime, use crossdev if need dll and proper search paths
- --disable-shared
- )
-
- local conf_mingw64_headers=(
- --enable-idl
- --with-headers
- )
- mwt-mingw64_headers() { ln -s ${CTARGET} "${sysroot}"/mingw || die; } #419601
-
- local conf_mingw64_runtime=( --with-crt )
- ${multilib} ||
- conf_mingw64_runtime+=( $(usex x86 --disable-lib64 --disable-lib32 ) )
-
- local conf_mingw64_libraries=( --with-libraries )
- local conf_mingw64_libraries32=(
- --libdir="${prefix}"/${CTARGET}/lib32
- --with-libraries
- CC="${CTARGET}-gcc -m32"
- RCFLAGS="--target=pe-i386 ${RCFLAGS}"
- )
-
- # mingw64-runtime's idl compiler (useful not to depend on wine for widl)
- local conf_widl=( --prefix="${prefix}" )
-
- # mwt-build [-x] <path/package-name> [stage-name]
- # -> ./configure && make && make install && mwt-package() && mwt-package_stage()
- # passes conf, conf_package, and conf_package_stage arrays to configure, and
- # users can add options through environment with e.g.
- # MWT_BINUTILS_CONF="--some-option"
- # MWT_GCC_STAGE1_CONF="--some-gcc-stage1-only-option"
- # MWT_WIDL_CONF="--some-other-option"
- # EXTRA_ECONF="--global-option" (generic naming for if not reading this)
- mwt-build() {
- if [[ ${1} == -x ]]; then
- (
- # cross-compiling, cleanup and let ./configure handle it
- unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
- CHOST=${CTARGET}
- filter-flags '-fuse-ld=*'
- filter-flags '-mfunction-return=thunk*' #878849
-
- # -mavx with mingw-gcc has a history of obscure issues and
- # disabling is seen as safer, e.g. `WINEARCH=win32 winecfg`
- # crashes with -march=skylake >=wine-8.10, similar issues with
- # znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273
- append-flags -mno-avx
-
- strip-unsupported-flags
- mwt-build "${@:2}"
- )
- return
- fi
-
- local id=${1##*/}
- local build_dir=${WORKDIR}/${1}${2+_${2}}-build
-
- # econf is not allowed in src_compile and its defaults are
- # mostly unused here, so use configure directly
- local conf=( "${WORKDIR}/${1}"/configure "${conf[@]}" )
-
- local -n conf_id=conf_${id} conf_id2=conf_${id}_${2}
- [[ ${conf_id@a} == *a* ]] && conf+=( "${conf_id[@]}" )
- [[ ${2} && ${conf_id2@a} == *a* ]] && conf+=( "${conf_id2[@]}" )
-
- local -n extra_id=MWT_${id^^}_CONF extra_id2=MWT_${id^^}_${2^^}_CONF
- conf+=( ${EXTRA_ECONF} ${extra_id} ${2+${extra_id2}} )
-
- einfo "Building ${id}${2+ ${2}} in ${build_dir} ..."
-
- mkdir -p "${build_dir}" || die
- pushd "${build_dir}" >/dev/null || die
-
- edo "${conf[@]}"
- emake V=1
- # -j1 to match bug #906155, other packages may be fragile too
- emake -j1 V=1 DESTDIR="${MWT_D}" install
-
- declare -f mwt-${id} >/dev/null && edo mwt-${id}
- declare -f mwt-${id}_${2} >/dev/null && edo mwt-${id}_${2}
-
- popd >/dev/null || die
- }
-
- # workaround race condition with out-of-source crt build (bug #879537)
- mkdir -p mingw64_runtime-build/mingw-w64-crt/lib{32,64} || die
-
- # build with same ordering that crossdev would do + stage3 for pthreads
- mwt-build binutils
- mwt-build mingw64 headers
- mwt-build gcc stage1
- mwt-build -x mingw64 runtime
- mwt-build gcc stage2
- ${multilib} && mwt-build -x mingw64 libraries32
- mwt-build -x mingw64 libraries
- mwt-build gcc stage3
- mwt-build mingw64/mingw-w64-tools/widl
- # note: /could/ system-bootstrap if already installed, but gcc and
- # libraries will use the system's older mingw64 headers/static-libs
- # and make this potentially fragile without more workarounds/stages
-
- if ${multilib}; then
- # Like system's gcc, `x86_64-w64-mingw32-gcc -m32` can build for x86,
- # but packages expect crossdev's i686-w64-mingw32-gcc which is the same
- # just without 64bit support and would rather not build the toolchain
- # twice. Dirty but wrap to allow simple interoperability with crossdev.
- mwt-i686_wrapper() {
- printf "#!/usr/bin/env sh\nexec \"${prefix}/bin/${bin}\" ${*} "'"${@}"\n' \
- > ${bin32} || die
- chmod +x ${bin32} || die
- }
- pushd "${sysroot}"/bin >/dev/null || die
- local bin bin32
- for bin in ${CTARGET}-*; do
- bin32=${bin/x86_64-w64/i686-w64}
- case ${bin#${CTARGET}-} in
- as) mwt-i686_wrapper --32;;
- cpp|gcc|gcc-${GCC_PV%%[.-]*}|g++|widl) mwt-i686_wrapper -m32;;
- ld|ld.bfd) mwt-i686_wrapper -m i386pe;;
- windres) mwt-i686_wrapper --target=pe-i386;;
- *) ln -s ${bin} ${bin32} || die;;
- esac
- done
- popd >/dev/null || die
- fi
-
- # portage doesn't know the right strip executable to use for CTARGET
- # and it can lead to .a mangling, notably with 32bit (breaks toolchain)
- dostrip -x ${mwtdir}/{${CTARGET}/lib{,32},lib/gcc/${CTARGET}}
-
- # ... and instead do it here given this saves ~60MB
- if use !debug; then
- einfo "Stripping ${CTARGET} static libraries ..."
- find "${sysroot}"/{,lib/gcc/}${CTARGET} -type f -name '*.a' \
- -exec ${CTARGET}-strip --strip-unneeded {} + || die
- fi
-}
-
-src_install() {
- mv "${MWT_D}${EPREFIX}"/* "${ED}" || die
-
- find "${ED}" -type f -name '*.la' -delete || die
-}
-
-pkg_postinst() {
- if [[ ! ${REPLACING_VERSIONS} ]]; then
- elog "Note that this package is primarily intended for Wine and related"
- elog "packages to depend on without needing a manual crossdev setup."
- elog
- elog "Settings are oriented only for what these need and simplicity."
- elog "Use sys-devel/crossdev if need full toolchain/customization:"
- elog " https://wiki.gentoo.org/wiki/Mingw"
- elog " https://wiki.gentoo.org/wiki/Crossdev"
- fi
-
- local cross_gcc=cross-$(usex x86 i686 x86_64)-w64-mingw32/gcc
- if has_version ${cross_gcc}; then
- # encourage cleanup given users may not realize if switch by default
- ewarn "${cross_gcc} is installed, note that ${PN}"
- ewarn "is redundant with the *-w64-mingw32/{binutils,gcc,mingw64-runtime}"
- ewarn "packages and optionally only one needs to be kept."
- fi
-}
diff --git a/dev-util/perf/Manifest b/dev-util/perf/Manifest
index 2043cfbb3526..fab77c2e61b1 100644
--- a/dev-util/perf/Manifest
+++ b/dev-util/perf/Manifest
@@ -3,7 +3,9 @@ AUX perf-6.0-clang.patch 1862 BLAKE2B e88655e51cb785b80cd44fefb73bb7668bf6d57205
AUX perf-6.4-libtracefs.patch 780 BLAKE2B dc97e42f1d3ece03722441b5a2c1f87ab9871ca92b9cf9f57b2e44627fddfcedaf6d7f64ddf74fd103c23aa0db71c4d147f7841743eb5c5a466c9bbb150597ea SHA512 da1b69c190491dd926ba1e98a43965a5ffd543df4134e6a10d187ab544695617fcffede3190bce4cbef13b897d113dee743f67a98ff249a486f8de2d49e62f9f
DIST linux-6.3.tar.xz 136891752 BLAKE2B f1887c8924efa8d0cb14c4e604affd0b0168bcf20f56a37c027405c7bc11aba822a43fcb38ccb55a81a26f747d00e1ab5a6554818affbf1e1c7ef5220150fc69 SHA512 768979440f4907ba64d4481b383d6101faf208f27a0b897156123aa278c5743fe3c4f61945b2541429c532d45382aaee8899ea9d44a1d2895bfbb79bfd937f65
DIST linux-6.4.tar.xz 137794856 BLAKE2B b59eb04a8715af9f686978812e6d4a466172bb859f80657076de14cd0828b4fac15b688ff8959f5c65485f7f6bef26590412c66821e720de843cb8666f226c90 SHA512 11a48b25e0b513782d3b89101c2ec8dd9cefd6ce08dc63a91137903b66392aa72ca1fe32816710673af84dd47de3ab8738056a6af93dc0d5e60ef4b869b49928
+DIST linux-6.5.tar.xz 138898084 BLAKE2B 2e641b79a080e8f4ce283bcf6b74e2c6f15a374367f1c4c875c663868dbe801317340824fb3adb46b3a51d3b7e1f67cc4e8144d367621ec43ffba5c4eb8abb39 SHA512 1b59dc5e65d4922c3217a8c8f19022dfd6595ae89747861d825bfeb51a4ae6c85449d05db69635a712bef7b355b80318195665582d8933b1fed6ba582f6ff257
EBUILD perf-6.3-r1.ebuild 7594 BLAKE2B d93e597380319511a72e631d11d4ea87df4e99709db7a13467b3ee8d4bd41053b3f94f6f46ade7e054dd14f18da9e79a0d60631ffa93e0f75a3a889424566fc1 SHA512 c8ce0a06d61b880d3701305ef9aeccdd063cd5c6e26280f200621f817525bbffda5dac96dc3324a7333a542eb9e547433d788fc23a3697356c3fa52ae77a5fa4
EBUILD perf-6.3.ebuild 7584 BLAKE2B 36c106f3f7af3e053b2815776ac5baf5809aab6115d4854b5fede8e91f9046d72982b3727e8675e013ae12f918e4d4f3425cf479690d9311eeba11e9b622a56e SHA512 49a5245fd70419ae318686b51e1520347e68793e1f8b740ae671d7ce3255986b6f6619df7f3c4f74488e8208bc6d9ed9ff793dd7133c8d0c436e57f406ad6b37
EBUILD perf-6.4-r1.ebuild 8293 BLAKE2B 7d83aa80142720a8f763ef93ce65b145f9f6141f0b15cf81e36477d1fc67438b76ccccb6d7d57c65bc5ff2589e9c8a79f54ffbbaee25a025af3974db8acabea7 SHA512 a89b9c5c3cc29018cc41b22d79dc720344d0dd7224e6c64e7d8604e35d125293e00584fa818eb84e1a75a94838a1e5b119673204faf3bc616d16423e4967a051
+EBUILD perf-6.5.ebuild 8293 BLAKE2B 7d83aa80142720a8f763ef93ce65b145f9f6141f0b15cf81e36477d1fc67438b76ccccb6d7d57c65bc5ff2589e9c8a79f54ffbbaee25a025af3974db8acabea7 SHA512 a89b9c5c3cc29018cc41b22d79dc720344d0dd7224e6c64e7d8604e35d125293e00584fa818eb84e1a75a94838a1e5b119673204faf3bc616d16423e4967a051
MISC metadata.xml 1642 BLAKE2B 648d70e60d8f8661c475da2be7ce7d120d1d96d505b2a9cacf92f5922c3c1266c0e0d3f8731c00a443cd7b05e317e874675038e709f0045d3e2f8e47ce4ffd6c SHA512 7da28e8493f318cd8b8a5e4f03f6f0deffc6b42ff9a4b9f304ccf684ea30dc85e0525804cd851ba1597f49d3500681d76c7fd7b6de08c1e479f1fdf4f91d0cae
diff --git a/dev-util/perf/perf-6.5.ebuild b/dev-util/perf/perf-6.5.ebuild
new file mode 100644
index 000000000000..a1a140af0ed7
--- /dev/null
+++ b/dev-util/perf/perf-6.5.ebuild
@@ -0,0 +1,313 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+inherit bash-completion-r1 estack flag-o-matic linux-info llvm toolchain-funcs python-r1
+
+DESCRIPTION="Userland tools for Linux Performance Counters"
+HOMEPAGE="https://perf.wiki.kernel.org/"
+
+LINUX_V="${PV:0:1}.x"
+if [[ ${PV} == *_rc* ]] ; then
+ LINUX_VER=$(ver_cut 1-2).$(($(ver_cut 3)-1))
+ PATCH_VERSION=$(ver_cut 1-3)
+ LINUX_PATCH=patch-${PV//_/-}.xz
+ SRC_URI="https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/testing/${LINUX_PATCH}
+ https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/testing/v${PATCH_VERSION}/${LINUX_PATCH}"
+elif [[ ${PV} == *.*.* ]] ; then
+ # stable-release series
+ LINUX_VER=$(ver_cut 1-2)
+ LINUX_PATCH=patch-${PV}.xz
+ SRC_URI="https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/${LINUX_PATCH}"
+else
+ LINUX_VER=${PV}
+ SRC_URI=""
+fi
+
+LINUX_SOURCES="linux-${LINUX_VER}.tar.xz"
+SRC_URI+=" https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/${LINUX_SOURCES}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+IUSE="audit babeltrace bpf caps clang crypt debug +doc gtk java libpfm libtraceevent libtracefs lzma numa perl python slang systemtap tcmalloc unwind zstd"
+
+REQUIRED_USE="
+ bpf? ( clang )
+ ${PYTHON_REQUIRED_USE}
+"
+
+# setuptools (and Python) are always needed even if not building Python bindings
+BDEPEND="
+ ${LINUX_PATCH+dev-util/patchutils}
+ ${PYTHON_DEPS}
+ >=app-arch/tar-1.34-r2
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ sys-devel/bison
+ sys-devel/flex
+ virtual/pkgconfig
+ doc? (
+ app-text/asciidoc
+ app-text/sgml-common
+ app-text/xmlto
+ sys-process/time
+ )
+"
+
+RDEPEND="
+ audit? ( sys-process/audit )
+ babeltrace? ( dev-util/babeltrace )
+ bpf? (
+ dev-libs/libbpf
+ dev-util/bpftool
+ dev-util/pahole
+ )
+ caps? ( sys-libs/libcap )
+ clang? (
+ sys-devel/clang:=
+ sys-devel/llvm:=
+ )
+ crypt? ( dev-libs/openssl:= )
+ gtk? ( x11-libs/gtk+:2 )
+ java? ( virtual/jre:* )
+ libpfm? ( dev-libs/libpfm:= )
+ libtraceevent? ( dev-libs/libtraceevent )
+ libtracefs? ( dev-libs/libtracefs )
+ lzma? ( app-arch/xz-utils )
+ numa? ( sys-process/numactl )
+ perl? ( dev-lang/perl:= )
+ python? ( ${PYTHON_DEPS} )
+ slang? ( sys-libs/slang )
+ systemtap? ( dev-util/systemtap )
+ tcmalloc? ( dev-util/google-perftools )
+ unwind? ( sys-libs/libunwind:= )
+ zstd? ( app-arch/zstd:= )
+ dev-libs/elfutils
+ sys-libs/binutils-libs:=
+ sys-libs/zlib
+"
+
+DEPEND="${RDEPEND}
+ >=sys-kernel/linux-headers-5.10
+ java? ( virtual/jdk )
+"
+
+S_K="${WORKDIR}/linux-${LINUX_VER}"
+S="${S_K}/tools/perf"
+
+CONFIG_CHECK="
+ ~DEBUG_INFO
+ ~FTRACE
+ ~FTRACE_SYSCALLS
+ ~FUNCTION_TRACER
+ ~KALLSYMS
+ ~KALLSYMS_ALL
+ ~KPROBES
+ ~KPROBE_EVENTS
+ ~PERF_EVENTS
+ ~UPROBES
+ ~UPROBE_EVENTS
+"
+
+QA_FLAGS_IGNORED=(
+ 'usr/bin/perf-read-vdso32' # not linked with anything except for libc
+ 'usr/libexec/perf-core/dlfilters/.*' # plugins
+)
+
+pkg_pretend() {
+ if ! use doc ; then
+ ewarn "Without the doc USE flag you won't get any documentation nor man pages."
+ ewarn "And without man pages, you won't get any --help output for perf and its"
+ ewarn "sub-tools."
+ fi
+}
+
+pkg_setup() {
+ use clang && llvm_pkg_setup
+ # We enable python unconditionally as libbpf always generates
+ # API headers using python script
+ python_setup
+
+ if use bpf ; then
+ CONFIG_CHECK+="~BPF ~BPF_EVENTS ~BPF_SYSCALL ~DEBUG_INFO_BTF ~HAVE_EBPF_JIT"
+ fi
+
+ linux-info_pkg_setup
+}
+
+# src_unpack and src_prepare are copied to dev-util/bpftool since
+# it's building from the same tarball, please keep it in sync with bpftool
+src_unpack() {
+ local paths=(
+ kernel/bpf tools/{arch,bpf,build,include,lib,perf,scripts}
+ scripts include lib "arch/*/lib"
+ )
+
+ # We expect the tar implementation to support the -j option (both
+ # GNU tar and libarchive's tar support that).
+ echo ">>> Unpacking ${LINUX_SOURCES} (${paths[*]}) to ${PWD}"
+ gtar --wildcards -xpf "${DISTDIR}"/${LINUX_SOURCES} \
+ "${paths[@]/#/linux-${LINUX_VER}/}" || die
+
+ if [[ -n ${LINUX_PATCH} ]] ; then
+ eshopts_push -o noglob
+ ebegin "Filtering partial source patch"
+ filterdiff -p1 ${paths[@]/#/-i } -z "${DISTDIR}"/${LINUX_PATCH} \
+ > ${P}.patch
+ eend $? || die "filterdiff failed"
+ eshopts_pop
+ fi
+
+ local a
+ for a in ${A}; do
+ [[ ${a} == ${LINUX_SOURCES} ]] && continue
+ [[ ${a} == ${LINUX_PATCH} ]] && continue
+ unpack ${a}
+ done
+}
+
+src_prepare() {
+ default
+ if [[ -n ${LINUX_PATCH} ]] ; then
+ pushd "${S_K}" >/dev/null || die
+ eapply "${WORKDIR}"/${P}.patch
+ popd || die
+ fi
+
+ pushd "${S_K}" >/dev/null || die
+ eapply "${FILESDIR}"/perf-6.0-clang.patch
+ eapply "${FILESDIR}"/perf-6.0-c++17.patch
+ eapply "${FILESDIR}"/perf-6.4-libtracefs.patch
+ popd || die
+
+ # Drop some upstream too-developer-oriented flags and fix the
+ # Makefile in general
+ sed -i \
+ -e "s@\$(sysconfdir_SQ)/bash_completion.d@$(get_bashcompdir)@" \
+ "${S}"/Makefile.perf || die
+ # A few places still use -Werror w/out $(WERROR) protection.
+ sed -i -e 's@-Werror@@' \
+ "${S}"/Makefile.perf "${S_K}"/tools/lib/bpf/Makefile \
+ "${S_K}"/tools/lib/perf/Makefile || die
+
+ # Avoid the call to make kernelversion
+ sed -i -e '/PERF-VERSION-GEN/d' Makefile.perf || die
+ echo "#define PERF_VERSION \"${PV}\"" > PERF-VERSION-FILE
+
+ # The code likes to compile local assembly files which lack ELF markings.
+ find -name '*.S' -exec sed -i '$a.section .note.GNU-stack,"",%progbits' {} +
+}
+
+puse() { usex $1 "" 1; }
+perf_make() {
+ # The arch parsing is a bit funky. The perf tools package is integrated
+ # into the kernel, so it wants an ARCH that looks like the kernel arch,
+ # but it also wants to know about the split value -- i386/x86_64 vs just
+ # x86. We can get that by telling the func to use an older linux version.
+ # It's kind of a hack, but not that bad ...
+
+ # LIBDIR sets a search path of perf-gtk.so. Bug 515954
+
+ local arch=$(tc-arch-kernel)
+ local java_dir
+ use java && java_dir="${EPREFIX}/etc/java-config-2/current-system-vm"
+ # FIXME: NO_CORESIGHT
+ local emakeargs=(
+ V=1 VF=1
+ HOSTCC="$(tc-getBUILD_CC)" HOSTLD="$(tc-getBUILD_LD)"
+ CC="$(tc-getCC)" CXX="$(tc-getCXX)" AR="$(tc-getAR)" LD="$(tc-getLD)" NM="$(tc-getNM)"
+ PKG_CONFIG="$(tc-getPKG_CONFIG)"
+ prefix="${EPREFIX}/usr" bindir_relative="bin"
+ tipdir="share/doc/${PF}"
+ EXTRA_CFLAGS="${CFLAGS}"
+ EXTRA_LDFLAGS="${LDFLAGS}"
+ ARCH="${arch}"
+ BUILD_BPF_SKEL=$(usex bpf 1 "") \
+ BUILD_NONDISTRO=1
+ JDIR="${java_dir}"
+ CORESIGHT=
+ GTK2=$(usex gtk 1 "")
+ LIBCLANGLLVM=$(usex clang 1 "")
+ feature-gtk2-infobar=$(usex gtk 1 "")
+ NO_AUXTRACE=
+ NO_BACKTRACE=
+ NO_DEMANGLE=
+ NO_JEVENTS=$(puse python)
+ NO_JVMTI=$(puse java)
+ NO_LIBAUDIT=$(puse audit)
+ NO_LIBBABELTRACE=$(puse babeltrace)
+ NO_LIBBIONIC=1
+ NO_LIBBPF=$(puse bpf)
+ NO_LIBCAP=$(puse caps)
+ NO_LIBCRYPTO=$(puse crypt)
+ NO_LIBDW_DWARF_UNWIND=
+ NO_LIBELF=
+ NO_LIBNUMA=$(puse numa)
+ NO_LIBPERL=$(puse perl)
+ NO_LIBPFM4=$(puse libpfm)
+ NO_LIBPYTHON=$(puse python)
+ NO_LIBTRACEEVENT=$(puse libtraceevent)
+ NO_LIBUNWIND=$(puse unwind)
+ NO_LIBZSTD=$(puse zstd)
+ NO_SDT=$(puse systemtap)
+ NO_SLANG=$(puse slang)
+ NO_LZMA=$(puse lzma)
+ NO_ZLIB=
+ TCMALLOC=$(usex tcmalloc 1 "")
+ WERROR=0
+ LIBDIR="/usr/libexec/perf-core"
+ libdir="${EPREFIX}/usr/$(get_libdir)"
+ plugindir="${EPREFIX}/usr/$(get_libdir)/perf/plugins"
+ "$@"
+ )
+ emake "${emakeargs[@]}"
+}
+
+src_compile() {
+ filter-lto
+
+ # test-clang.bin not build with g++
+ if use clang; then
+ make -C "${S_K}/tools/build/feature" V=1 CXX=${CHOST}-clang++ test-clang.bin || die
+ fi
+ perf_make -f Makefile.perf
+ use doc && perf_make -C Documentation man
+}
+
+src_test() {
+ :
+}
+
+src_install() {
+ _install_python_ext() {
+ perf_make -f Makefile.perf install-python_ext DESTDIR="${D}"
+ }
+
+ perf_make -f Makefile.perf install DESTDIR="${D}"
+
+ if use python; then
+ python_foreach_impl _install_python_ext
+ fi
+
+ if use gtk; then
+ local libdir
+ libdir="$(get_libdir)"
+ # on some arches it ends up in lib even on 64bit, ppc64 for instance.
+ [[ -f "${ED}"/usr/lib/libperf-gtk.so ]] && libdir="lib"
+ mv "${ED}"/usr/${libdir}/libperf-gtk.so \
+ "${ED}"/usr/libexec/perf-core || die
+ fi
+
+ dodoc CREDITS
+
+ dodoc *txt Documentation/*.txt
+
+ # perf needs this decompressed to print out tips for users
+ docompress -x /usr/share/doc/${PF}/tips.txt
+
+ if use doc ; then
+ doman Documentation/*.1
+ fi
+}
diff --git a/dev-util/ruff/Manifest b/dev-util/ruff/Manifest
index 96254ac58f87..1bf376448cdf 100644
--- a/dev-util/ruff/Manifest
+++ b/dev-util/ruff/Manifest
@@ -216,7 +216,7 @@ DIST regex-syntax-0.7.5.crate 343366 BLAKE2B af07596e45e3525ffd253d6070ddad08dff
DIST result-like-0.4.6.crate 4311 BLAKE2B 612ad606f331449907b9c0c99b525aedd53b46b5143b21472eb34d38ac64026498712de7c774183c358531b8296952eb39067c0bc5da07fee5483c28d78de37b SHA512 81b202903a90058a993315253099748c69b9caa42e62121f3fdd63b7d4f22878c81133d0b09f28f3366f180615241cfadf3e055ac86fb9662b9c982e5cc06a91
DIST result-like-derive-0.4.6.crate 5814 BLAKE2B 2598173bb8920e6b8143e034a77eeab17dea379f947098c35054c928db567513da4043d0830a8dbc40d3660e1257b90b18309f36cd83ac03e018921ae48343da SHA512 1097cfd81fe99472c0c308df7ba64ebd20497b0f855b66839c2a81ce8a179a305d04e7eb4d17be9d1dcc3e90f5fec7d59cf6d3093924354a6e02aa4ac2bfcbb5
DIST ring-0.16.20.crate 5082615 BLAKE2B 6011eb7148c2d2ab410e564a06604f4350e07ea030e4d7dcb30574b977f0b0c7e53e09f6e6dbb2d068cdf110262876c48dfaeeef1b691932a056fe149916d934 SHA512 d97d1b08eb796d4c107426ff2c015ab1f221612500c8a57fca8e3f064e8c0f5ae2a5e6071d013313cd9f4be8fed4ba03beae84bd446f56b2b2ca5d483c328191
-DIST ruff-0.0.288.gh.tar.gz 3051590 BLAKE2B 7b00501eb04c5e2048e92ae5ac65b1ab0c6ad4d59f004cb887824962e01581c9305516dc406aee4edd4170b9eb53ed10f68f52a479be7d09c4c8f61bd808d112 SHA512 ff9de3fb23f8cad298ed298c75d46cee766e5af746deedaac5501f5cd7712111ddbdefc87408bbd72fd9754dee6bfe24dc19b72e75b5b6920fc62ddaeebcc6d4
+DIST ruff-0.0.289.gh.tar.gz 3060669 BLAKE2B ffbe65afae6d3109c38d01366c444e28f773d0f45a6d3d49488d9660452865d8957754807166b5ff2c99b1ed646f6e3d4cbb36e6f3c73e042e442fab8d198083 SHA512 0839c4f6055e2939e4692e68844e615282a792fcc2c2844e3ebf05d7f20f93dd0c014fd625c1fd12ee65c454a446fcd655b76a9cb93bb8af433915686a9ad2dc
DIST rust-stemmers-1.2.0.crate 2351301 BLAKE2B d633c0d7091fd05e55a521670104831bed89deef7a2fb7c1eed3528246e65b67a97888fed48b134b10c477e7b95c034e8bbad70500c779b1ff7b0c334de0b37b SHA512 b9453a0984d41e5a692e5ea1a8a7bc6142de30f7b345a269489b8d4ebe3b3d442e7fe5f338c72a790521dea7a2ad9605c0ca8218a6b76d8bc5e19ae02cf711d7
DIST rustc-hash-1.1.0.crate 9331 BLAKE2B 16ac56622897f47a06b661fb59a196b08d48e782ab87549c8bd5c6fe92f374c9bfd44dcb36588512bd9b6125c2fd79a12d648aaa308fd9694bcca3a7c1b49ac9 SHA512 84e673ea9b046f7b989d47f2c4505557fbd5de991e6fc9f56a03605d40e0b4ba5427cd566954890153cc033ccbec6c984306634571935bfe0d4cdfbe56f39544
DIST rustix-0.38.10.crate 342427 BLAKE2B 6b65b3b8d7ceba7e606bb1a2b07d447b8110c728c0b3a81838be8b0ad04ff01f4a6d9b6fc1a4725a392eeb0d455a06b6f7abf40b0990a7dbdf4a632199ccde95 SHA512 4329ad809994cb377f2bade3673a3cc829062f4c9977019735b90df17af92c22d3f036a13a3fe7073872dcac8f5e424db7bc56b0d2530e5e7b468a9d92a867c9
@@ -353,5 +353,5 @@ DIST wsl-0.1.0.crate 2135 BLAKE2B 29f2657068fc8994e35fdaf8fe7e1a1fc1ad300d0c5c46
DIST yaml-rust-0.4.5.crate 47783 BLAKE2B 3e888c5cc7afb43eaf3aaab2b6f47b86df164a66eb54d4e166b965cc84b1e06cd17bd992a0d6ee175d9a73a76e2b44a13167246383ed054afcf3cc1710b309cb SHA512 7621dc8dfd5e7d4a7a8805b2a7e8319b63b852367655f2359d4e3e8fec6c4fad52d75c46ce1161e4c674eac0780b757ce9d34e664e304d8d2beec7afa0363ea0
DIST yansi-0.5.1.crate 16525 BLAKE2B 3b5a93b98293daae72f53bf3f13bfc05feba8d5b27921f79595f7448fbcb9a0dfa6cd70f467c5735b914c46b7d3592e6cce080c540a458a904308525eb3aa839 SHA512 7b33005a066cc612408a65df6533e8718d1de43efc0fd57416a19dc2b811497570e6e18f100fb26073565e395e711518c27de7d644ae64777713f1a102eb16d2
DIST yansi-term-0.1.2.crate 14342 BLAKE2B 31a1651bb43644cf880d591a22fe9d899ab0acbc744ced2952f120b4abfa0c42f6513089e34deaff1a453f3a26f9fb78442f016baa9524ccac9b21e4a7ed6ad6 SHA512 ba720e36487871427aaa7139e8aeaf5b2b3f2d1df4798d7e238e323dc3d3220f12202e223f74339201be3466848c372dc1712e1842e5cd6bd51c3dedf76c9ff6
-EBUILD ruff-0.0.288.ebuild 8886 BLAKE2B 69bc4b33d8c42309fd5590fc35e28bf79f2d2562b824b75c4191cc91917539d22e01767c5a549b99eda8c7f7907805bb98bfe5feda0bfccd3dc494516b173277 SHA512 d9e9a3009e8d245e06042798efc7fa6a2d9c32519e3e23bbff5cb2a2b06a3c308f905db6c8e64b2aa2f640b8593529d2fc72839bab4456def901ac221ee71542
+EBUILD ruff-0.0.289.ebuild 8886 BLAKE2B 69bc4b33d8c42309fd5590fc35e28bf79f2d2562b824b75c4191cc91917539d22e01767c5a549b99eda8c7f7907805bb98bfe5feda0bfccd3dc494516b173277 SHA512 d9e9a3009e8d245e06042798efc7fa6a2d9c32519e3e23bbff5cb2a2b06a3c308f905db6c8e64b2aa2f640b8593529d2fc72839bab4456def901ac221ee71542
MISC metadata.xml 375 BLAKE2B 46856b904e322f25ebb96268418206fb70b76f22751c5f8c12d0b3fb51a11b91518c42313d8a9f2fbd71dd5a3ca359772f54829a7858148c5f5f03f44fe1dad4 SHA512 ad24b0cafc7adc414a0da36f5b518eacbba3069ac15484504ce063916133e7c15945c04c7c6886e30c75010300598876ab498d5d44c48f66c5ed252f3fd2f36f
diff --git a/dev-util/ruff/ruff-0.0.288.ebuild b/dev-util/ruff/ruff-0.0.289.ebuild
index 9d0fc95cd065..9d0fc95cd065 100644
--- a/dev-util/ruff/ruff-0.0.288.ebuild
+++ b/dev-util/ruff/ruff-0.0.289.ebuild