From d24a417ad25a06bbd0cb13469ec2278ae8f33fba Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Tue, 12 Sep 2023 22:42:36 +0100 Subject: gentoo auto-resync : 12:09:2023 - 22:42:36 --- dev-util/Manifest.gz | Bin 69132 -> 69129 bytes dev-util/mingw64-runtime/Manifest | 4 - .../mingw64-runtime-10.0.0-msvcr-extra-race.patch | 22 - .../mingw64-runtime-7.0.0-fortify-only-ssp.patch | 16 - .../mingw64-runtime-10.0.0-r1.ebuild | 153 ------- dev-util/mingw64-toolchain/Manifest | 11 - .../files/binutils-2.40-import-lib.patch | 30 -- .../files/gcc-11.3.0-plugin-objdump.patch | 22 - .../mingw64-runtime-10.0.0-msvcr-extra-race.patch | 22 - .../mingw64-runtime-10.0.0-tmp-files-clash.patch | 10 - .../mingw64-toolchain-10.0.0_p1-r2.ebuild | 319 -------------- .../mingw64-toolchain-11.0.0.ebuild | 325 -------------- dev-util/perf/Manifest | 2 + dev-util/perf/perf-6.5.ebuild | 313 ++++++++++++++ dev-util/ruff/Manifest | 4 +- dev-util/ruff/ruff-0.0.288.ebuild | 468 --------------------- dev-util/ruff/ruff-0.0.289.ebuild | 468 +++++++++++++++++++++ 17 files changed, 785 insertions(+), 1404 deletions(-) delete mode 100644 dev-util/mingw64-runtime/files/mingw64-runtime-10.0.0-msvcr-extra-race.patch delete mode 100644 dev-util/mingw64-runtime/files/mingw64-runtime-7.0.0-fortify-only-ssp.patch delete mode 100644 dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild delete mode 100644 dev-util/mingw64-toolchain/files/binutils-2.40-import-lib.patch delete mode 100644 dev-util/mingw64-toolchain/files/gcc-11.3.0-plugin-objdump.patch delete mode 100644 dev-util/mingw64-toolchain/files/mingw64-runtime-10.0.0-msvcr-extra-race.patch delete mode 100644 dev-util/mingw64-toolchain/files/mingw64-runtime-10.0.0-tmp-files-clash.patch delete mode 100644 dev-util/mingw64-toolchain/mingw64-toolchain-10.0.0_p1-r2.ebuild delete mode 100644 dev-util/mingw64-toolchain/mingw64-toolchain-11.0.0.ebuild create mode 100644 dev-util/perf/perf-6.5.ebuild delete mode 100644 dev-util/ruff/ruff-0.0.288.ebuild create mode 100644 dev-util/ruff/ruff-0.0.289.ebuild (limited to 'dev-util') diff --git a/dev-util/Manifest.gz b/dev-util/Manifest.gz index 8e54bbf6a874..de5ff7f83af5 100644 Binary files a/dev-util/Manifest.gz and b/dev-util/Manifest.gz 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 - 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 -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] [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] [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.288.ebuild deleted file mode 100644 index 9d0fc95cd065..000000000000 --- a/dev-util/ruff/ruff-0.0.288.ebuild +++ /dev/null @@ -1,468 +0,0 @@ -# Copyright 2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# Autogenerated by pycargoebuild 0.10 - -EAPI=8 - -PYTHON_COMPAT=( python3_{9..12} ) -DISTUTILS_USE_PEP517=maturin - -CRATES=" - Inflector@0.11.4 - adler@1.0.2 - ahash@0.8.3 - aho-corasick@1.0.5 - android-tzdata@0.1.1 - android_system_properties@0.1.5 - anes@0.1.6 - annotate-snippets@0.6.1 - annotate-snippets@0.9.1 - anstream@0.5.0 - anstyle-parse@0.2.1 - anstyle-query@1.0.0 - anstyle-wincon@2.1.0 - anstyle@1.0.2 - anyhow@1.0.75 - argfile@0.1.5 - arrayvec@0.7.4 - ascii-canvas@3.0.0 - assert_cmd@2.0.12 - autocfg@1.1.0 - base64@0.21.3 - bincode@1.3.3 - bit-set@0.5.3 - bit-vec@0.6.3 - bitflags@1.3.2 - bitflags@2.4.0 - bstr@1.6.2 - bumpalo@3.13.0 - cachedir@0.3.0 - cast@0.3.0 - cc@1.0.83 - cfg-if@1.0.0 - chic@1.2.2 - chrono@0.4.28 - ciborium-io@0.2.1 - ciborium-ll@0.2.1 - ciborium@0.2.1 - clap@4.4.1 - clap_builder@4.4.1 - clap_complete@4.4.0 - clap_complete_command@0.5.1 - clap_complete_fig@4.4.0 - clap_complete_nushell@0.1.11 - clap_derive@4.4.0 - clap_lex@0.5.1 - clearscreen@2.0.1 - codspeed-criterion-compat@2.2.0 - codspeed@2.2.0 - colorchoice@1.0.0 - colored@2.0.4 - configparser@3.0.2 - console@0.15.7 - console_error_panic_hook@0.1.7 - console_log@1.0.0 - core-foundation-sys@0.8.4 - countme@3.0.1 - crc32fast@1.3.2 - criterion-plot@0.5.0 - criterion@0.5.1 - crossbeam-channel@0.5.8 - crossbeam-deque@0.8.3 - crossbeam-epoch@0.9.15 - crossbeam-utils@0.8.16 - crunchy@0.2.2 - darling@0.20.3 - darling_core@0.20.3 - darling_macro@0.20.3 - deranged@0.3.8 - diff@0.1.13 - difflib@0.4.0 - dirs-next@2.0.0 - dirs-sys-next@0.1.2 - dirs-sys@0.3.7 - dirs-sys@0.4.1 - dirs@4.0.0 - dirs@5.0.1 - doc-comment@0.3.3 - drop_bomb@0.1.5 - dyn-clone@1.0.13 - either@1.9.0 - ena@0.14.2 - encode_unicode@0.3.6 - env_logger@0.10.0 - equivalent@1.0.1 - errno-dragonfly@0.1.2 - errno@0.3.3 - fastrand@2.0.0 - fern@0.6.2 - filetime@0.2.22 - fixedbitset@0.4.2 - flate2@1.0.27 - fnv@1.0.7 - form_urlencoded@1.2.0 - fs-err@2.9.0 - fsevent-sys@4.1.0 - getrandom@0.2.10 - glob@0.3.1 - globset@0.4.13 - half@1.8.2 - hashbrown@0.12.3 - hashbrown@0.14.0 - heck@0.4.1 - hermit-abi@0.3.2 - hex@0.4.3 - hexf-parse@0.2.1 - humantime@2.1.0 - iana-time-zone-haiku@0.1.2 - iana-time-zone@0.1.57 - ident_case@1.0.1 - idna@0.4.0 - ignore@0.4.20 - imara-diff@0.1.5 - imperative@1.0.5 - indexmap@1.9.3 - indexmap@2.0.0 - indicatif@0.17.6 - indoc@2.0.3 - inotify-sys@0.1.5 - inotify@0.9.6 - insta-cmd@0.4.0 - insta@1.31.0 - instant@0.1.12 - is-macro@0.2.2 - is-terminal@0.4.9 - itertools@0.10.5 - itoa@1.0.9 - js-sys@0.3.64 - kqueue-sys@1.0.4 - kqueue@1.0.8 - lalrpop-util@0.20.0 - lalrpop@0.20.0 - lazy_static@1.4.0 - lexical-parse-float@0.8.5 - lexical-parse-integer@0.8.6 - lexical-util@0.8.5 - libc@0.2.147 - libcst@0.1.0 - libcst_derive@0.1.0 - libmimalloc-sys@0.1.34 - linked-hash-map@0.5.6 - linux-raw-sys@0.4.5 - lock_api@0.4.10 - log@0.4.20 - matchers@0.1.0 - matches@0.1.10 - memchr@2.6.2 - memoffset@0.9.0 - mimalloc@0.1.38 - minimal-lexical@0.2.1 - miniz_oxide@0.7.1 - mio@0.8.8 - natord@1.0.9 - new_debug_unreachable@1.0.4 - nextest-workspace-hack@0.1.0 - nix@0.26.4 - nom@7.1.3 - notify@5.2.0 - nu-ansi-term@0.46.0 - num-bigint@0.4.4 - num-integer@0.1.45 - num-traits@0.2.16 - num_cpus@1.16.0 - number_prefix@0.4.0 - once_cell@1.18.0 - oorandom@11.1.3 - option-ext@0.2.0 - os_str_bytes@6.5.1 - overload@0.1.1 - parking_lot@0.12.1 - parking_lot_core@0.9.8 - paste@1.0.14 - path-absolutize@3.1.0 - path-dedot@3.1.0 - pathdiff@0.2.1 - peg-macros@0.8.1 - peg-runtime@0.8.1 - peg@0.8.1 - pep440_rs@0.3.11 - pep508_rs@0.2.1 - percent-encoding@2.3.0 - petgraph@0.6.4 - phf@0.11.2 - phf_codegen@0.11.2 - phf_generator@0.11.2 - phf_shared@0.10.0 - phf_shared@0.11.2 - pin-project-lite@0.2.13 - pmutil@0.5.3 - portable-atomic@1.4.3 - ppv-lite86@0.2.17 - precomputed-hash@0.1.1 - predicates-core@1.0.6 - predicates-tree@1.0.9 - predicates@3.0.3 - pretty_assertions@1.4.0 - proc-macro-error-attr@1.0.4 - proc-macro-error@1.0.4 - proc-macro2@1.0.66 - pyproject-toml@0.6.1 - quick-junit@0.3.3 - quick-xml@0.29.0 - quote@1.0.33 - rand@0.8.5 - rand_chacha@0.3.1 - rand_core@0.6.4 - rayon-core@1.11.0 - rayon@1.7.0 - redox_syscall@0.2.16 - redox_syscall@0.3.5 - redox_users@0.4.3 - regex-automata@0.1.10 - regex-automata@0.3.7 - regex-syntax@0.6.29 - regex-syntax@0.7.5 - regex@1.9.4 - result-like-derive@0.4.6 - result-like@0.4.6 - ring@0.16.20 - rust-stemmers@1.2.0 - rustc-hash@1.1.0 - rustix@0.38.10 - rustls-webpki@0.100.2 - rustls-webpki@0.101.4 - rustls@0.21.7 - rustversion@1.0.14 - ryu@1.0.15 - same-file@1.0.6 - schemars@0.8.13 - schemars_derive@0.8.13 - scoped-tls@1.0.1 - scopeguard@1.2.0 - sct@0.7.0 - semver@1.0.18 - serde-wasm-bindgen@0.5.0 - serde@1.0.188 - serde_derive@1.0.188 - serde_derive_internals@0.26.0 - serde_json@1.0.105 - serde_spanned@0.6.3 - serde_test@1.0.176 - serde_with@3.3.0 - serde_with_macros@3.3.0 - sharded-slab@0.1.4 - shellexpand@3.1.0 - shlex@1.1.0 - similar@2.2.1 - siphasher@0.3.11 - smallvec@1.11.0 - spin@0.5.2 - static_assertions@1.1.0 - string_cache@0.8.7 - strsim@0.10.0 - strum@0.24.1 - strum_macros@0.24.3 - syn-ext@0.4.0 - syn@1.0.109 - syn@2.0.29 - tempfile@3.8.0 - term@0.7.0 - termcolor@1.2.0 - terminfo@0.8.0 - termtree@0.4.1 - test-case-core@3.1.0 - test-case-macros@3.1.0 - test-case@3.1.0 - thiserror-impl@1.0.47 - thiserror@1.0.47 - thread_local@1.1.7 - tikv-jemalloc-sys@0.5.4+5.3.0-patched - tikv-jemallocator@0.5.4 - time-core@0.1.1 - time-macros@0.2.14 - time@0.1.45 - time@0.3.28 - tiny-keccak@2.0.2 - tinytemplate@1.2.1 - tinyvec@1.6.0 - tinyvec_macros@0.1.1 - toml@0.7.6 - toml_datetime@0.6.3 - toml_edit@0.19.14 - tracing-attributes@0.1.26 - tracing-core@0.1.31 - tracing-indicatif@0.3.5 - tracing-log@0.1.3 - tracing-subscriber@0.3.17 - tracing@0.1.37 - typed-arena@2.0.2 - unic-char-property@0.9.0 - unic-char-range@0.9.0 - unic-common@0.9.0 - unic-ucd-category@0.9.0 - unic-ucd-version@0.9.0 - unicode-bidi@0.3.13 - unicode-ident@1.0.11 - unicode-normalization@0.1.22 - unicode-width@0.1.10 - unicode-xid@0.2.4 - untrusted@0.7.1 - ureq@2.7.1 - url@2.4.1 - utf8parse@0.2.1 - uuid-macro-internal@1.4.1 - uuid@1.4.1 - valuable@0.1.0 - version_check@0.9.4 - vt100@0.15.2 - vte@0.11.1 - vte_generate_state_changes@0.1.1 - wait-timeout@0.2.0 - walkdir@2.3.3 - wasi@0.10.0+wasi-snapshot-preview1 - wasi@0.11.0+wasi-snapshot-preview1 - wasm-bindgen-backend@0.2.87 - wasm-bindgen-futures@0.4.37 - wasm-bindgen-macro-support@0.2.87 - wasm-bindgen-macro@0.2.87 - wasm-bindgen-shared@0.2.87 - wasm-bindgen-test-macro@0.3.37 - wasm-bindgen-test@0.3.37 - wasm-bindgen@0.2.87 - web-sys@0.3.64 - webpki-roots@0.23.1 - which@4.4.0 - wild@2.1.0 - winapi-i686-pc-windows-gnu@0.4.0 - winapi-util@0.1.5 - winapi-x86_64-pc-windows-gnu@0.4.0 - winapi@0.3.9 - windows-sys@0.45.0 - windows-sys@0.48.0 - windows-targets@0.42.2 - windows-targets@0.48.5 - windows@0.48.0 - windows_aarch64_gnullvm@0.42.2 - windows_aarch64_gnullvm@0.48.5 - windows_aarch64_msvc@0.42.2 - windows_aarch64_msvc@0.48.5 - windows_i686_gnu@0.42.2 - windows_i686_gnu@0.48.5 - windows_i686_msvc@0.42.2 - windows_i686_msvc@0.48.5 - windows_x86_64_gnu@0.42.2 - windows_x86_64_gnu@0.48.5 - windows_x86_64_gnullvm@0.42.2 - windows_x86_64_gnullvm@0.48.5 - windows_x86_64_msvc@0.42.2 - windows_x86_64_msvc@0.48.5 - winnow@0.5.15 - wsl@0.1.0 - yaml-rust@0.4.5 - yansi-term@0.1.2 - yansi@0.5.1 -" - -declare -A GIT_CRATES=( - [unicode_names2]='https://github.com/youknowone/unicode_names2;4ce16aa85cbcdd9cc830410f1a72ef9a235f2fde;unicode_names2-%commit%' -) - -inherit distutils-r1 cargo - -DESCRIPTION="An extremely fast Python linter, written in Rust" -HOMEPAGE=" - https://beta.ruff.rs/docs - https://github.com/charliermarsh/ruff -" -SRC_URI=" - ${CARGO_CRATE_URIS} - https://github.com/charliermarsh/ruff/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz -" - -LICENSE="MIT" -# Dependent crate licenses -LICENSE+=" - Apache-2.0 BSD-2 BSD CC0-1.0 ISC MIT MPL-2.0 Unicode-DFS-2016 - WTFPL-2 -" -SLOT="0" -KEYWORDS="~amd64" - -# syn-ext -LICENSE+=" - BSD-2 -" - -# rustls-webpki -LICENSE+=" - ISC BSD -" - -# LibCST -LICENSE+=" - MIT PSF-2 Apache-2.0 -" - -# ring -LICENSE+=" - ISC SSLeay openssl MIT -" - -BDEPEND=" - dev-util/patchelf - >=virtual/rust-1.71 -" - -QA_FLAGS_IGNORED="usr/bin/.* usr/lib.*/libruff.*.so" - -DOCS=( - BREAKING_CHANGES.md - CODE_OF_CONDUCT.md - CONTRIBUTING.md - README.md -) - -src_prepare() { - sed -r 's:(strip[[:space:]]*=[[:space:]]*)true:\1false:' \ - -i pyproject.toml || die - - [[ -n ${PATCHES[*]} ]] && eapply "${PATCHES[@]}" - eapply_user -} - -src_configure() { - export RUSTFLAGS="${RUSTFLAGS}" - cargo_src_configure -} - -src_compile() { - cargo_src_compile - - python_copy_sources - distutils-r1_src_configure - distutils-r1_src_compile - - local solib - for solib in $(find target/$(usex 'debug' 'debug' 'release') -maxdepth 1 -name '*.so'); do - patchelf --set-soname "${solib##*/}" "${solib}" || die - done -} - -src_test() { - cargo_src_test -} - -# placeholder to silence QA warning, tests are in rust -python_test() { :; } - -src_install() { - distutils-r1_src_install - - local releasedir=target/$(usex 'debug' 'debug' 'release') - - dobin ${releasedir}/{ruff{,_dev},flake8-to-ruff,ruff_python_formatter} - dolib.so $(find target/$(usex 'debug' 'debug' 'release') -maxdepth 1 -name '*.so') - - dodoc "${DOCS[@]}" -} diff --git a/dev-util/ruff/ruff-0.0.289.ebuild b/dev-util/ruff/ruff-0.0.289.ebuild new file mode 100644 index 000000000000..9d0fc95cd065 --- /dev/null +++ b/dev-util/ruff/ruff-0.0.289.ebuild @@ -0,0 +1,468 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Autogenerated by pycargoebuild 0.10 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9..12} ) +DISTUTILS_USE_PEP517=maturin + +CRATES=" + Inflector@0.11.4 + adler@1.0.2 + ahash@0.8.3 + aho-corasick@1.0.5 + android-tzdata@0.1.1 + android_system_properties@0.1.5 + anes@0.1.6 + annotate-snippets@0.6.1 + annotate-snippets@0.9.1 + anstream@0.5.0 + anstyle-parse@0.2.1 + anstyle-query@1.0.0 + anstyle-wincon@2.1.0 + anstyle@1.0.2 + anyhow@1.0.75 + argfile@0.1.5 + arrayvec@0.7.4 + ascii-canvas@3.0.0 + assert_cmd@2.0.12 + autocfg@1.1.0 + base64@0.21.3 + bincode@1.3.3 + bit-set@0.5.3 + bit-vec@0.6.3 + bitflags@1.3.2 + bitflags@2.4.0 + bstr@1.6.2 + bumpalo@3.13.0 + cachedir@0.3.0 + cast@0.3.0 + cc@1.0.83 + cfg-if@1.0.0 + chic@1.2.2 + chrono@0.4.28 + ciborium-io@0.2.1 + ciborium-ll@0.2.1 + ciborium@0.2.1 + clap@4.4.1 + clap_builder@4.4.1 + clap_complete@4.4.0 + clap_complete_command@0.5.1 + clap_complete_fig@4.4.0 + clap_complete_nushell@0.1.11 + clap_derive@4.4.0 + clap_lex@0.5.1 + clearscreen@2.0.1 + codspeed-criterion-compat@2.2.0 + codspeed@2.2.0 + colorchoice@1.0.0 + colored@2.0.4 + configparser@3.0.2 + console@0.15.7 + console_error_panic_hook@0.1.7 + console_log@1.0.0 + core-foundation-sys@0.8.4 + countme@3.0.1 + crc32fast@1.3.2 + criterion-plot@0.5.0 + criterion@0.5.1 + crossbeam-channel@0.5.8 + crossbeam-deque@0.8.3 + crossbeam-epoch@0.9.15 + crossbeam-utils@0.8.16 + crunchy@0.2.2 + darling@0.20.3 + darling_core@0.20.3 + darling_macro@0.20.3 + deranged@0.3.8 + diff@0.1.13 + difflib@0.4.0 + dirs-next@2.0.0 + dirs-sys-next@0.1.2 + dirs-sys@0.3.7 + dirs-sys@0.4.1 + dirs@4.0.0 + dirs@5.0.1 + doc-comment@0.3.3 + drop_bomb@0.1.5 + dyn-clone@1.0.13 + either@1.9.0 + ena@0.14.2 + encode_unicode@0.3.6 + env_logger@0.10.0 + equivalent@1.0.1 + errno-dragonfly@0.1.2 + errno@0.3.3 + fastrand@2.0.0 + fern@0.6.2 + filetime@0.2.22 + fixedbitset@0.4.2 + flate2@1.0.27 + fnv@1.0.7 + form_urlencoded@1.2.0 + fs-err@2.9.0 + fsevent-sys@4.1.0 + getrandom@0.2.10 + glob@0.3.1 + globset@0.4.13 + half@1.8.2 + hashbrown@0.12.3 + hashbrown@0.14.0 + heck@0.4.1 + hermit-abi@0.3.2 + hex@0.4.3 + hexf-parse@0.2.1 + humantime@2.1.0 + iana-time-zone-haiku@0.1.2 + iana-time-zone@0.1.57 + ident_case@1.0.1 + idna@0.4.0 + ignore@0.4.20 + imara-diff@0.1.5 + imperative@1.0.5 + indexmap@1.9.3 + indexmap@2.0.0 + indicatif@0.17.6 + indoc@2.0.3 + inotify-sys@0.1.5 + inotify@0.9.6 + insta-cmd@0.4.0 + insta@1.31.0 + instant@0.1.12 + is-macro@0.2.2 + is-terminal@0.4.9 + itertools@0.10.5 + itoa@1.0.9 + js-sys@0.3.64 + kqueue-sys@1.0.4 + kqueue@1.0.8 + lalrpop-util@0.20.0 + lalrpop@0.20.0 + lazy_static@1.4.0 + lexical-parse-float@0.8.5 + lexical-parse-integer@0.8.6 + lexical-util@0.8.5 + libc@0.2.147 + libcst@0.1.0 + libcst_derive@0.1.0 + libmimalloc-sys@0.1.34 + linked-hash-map@0.5.6 + linux-raw-sys@0.4.5 + lock_api@0.4.10 + log@0.4.20 + matchers@0.1.0 + matches@0.1.10 + memchr@2.6.2 + memoffset@0.9.0 + mimalloc@0.1.38 + minimal-lexical@0.2.1 + miniz_oxide@0.7.1 + mio@0.8.8 + natord@1.0.9 + new_debug_unreachable@1.0.4 + nextest-workspace-hack@0.1.0 + nix@0.26.4 + nom@7.1.3 + notify@5.2.0 + nu-ansi-term@0.46.0 + num-bigint@0.4.4 + num-integer@0.1.45 + num-traits@0.2.16 + num_cpus@1.16.0 + number_prefix@0.4.0 + once_cell@1.18.0 + oorandom@11.1.3 + option-ext@0.2.0 + os_str_bytes@6.5.1 + overload@0.1.1 + parking_lot@0.12.1 + parking_lot_core@0.9.8 + paste@1.0.14 + path-absolutize@3.1.0 + path-dedot@3.1.0 + pathdiff@0.2.1 + peg-macros@0.8.1 + peg-runtime@0.8.1 + peg@0.8.1 + pep440_rs@0.3.11 + pep508_rs@0.2.1 + percent-encoding@2.3.0 + petgraph@0.6.4 + phf@0.11.2 + phf_codegen@0.11.2 + phf_generator@0.11.2 + phf_shared@0.10.0 + phf_shared@0.11.2 + pin-project-lite@0.2.13 + pmutil@0.5.3 + portable-atomic@1.4.3 + ppv-lite86@0.2.17 + precomputed-hash@0.1.1 + predicates-core@1.0.6 + predicates-tree@1.0.9 + predicates@3.0.3 + pretty_assertions@1.4.0 + proc-macro-error-attr@1.0.4 + proc-macro-error@1.0.4 + proc-macro2@1.0.66 + pyproject-toml@0.6.1 + quick-junit@0.3.3 + quick-xml@0.29.0 + quote@1.0.33 + rand@0.8.5 + rand_chacha@0.3.1 + rand_core@0.6.4 + rayon-core@1.11.0 + rayon@1.7.0 + redox_syscall@0.2.16 + redox_syscall@0.3.5 + redox_users@0.4.3 + regex-automata@0.1.10 + regex-automata@0.3.7 + regex-syntax@0.6.29 + regex-syntax@0.7.5 + regex@1.9.4 + result-like-derive@0.4.6 + result-like@0.4.6 + ring@0.16.20 + rust-stemmers@1.2.0 + rustc-hash@1.1.0 + rustix@0.38.10 + rustls-webpki@0.100.2 + rustls-webpki@0.101.4 + rustls@0.21.7 + rustversion@1.0.14 + ryu@1.0.15 + same-file@1.0.6 + schemars@0.8.13 + schemars_derive@0.8.13 + scoped-tls@1.0.1 + scopeguard@1.2.0 + sct@0.7.0 + semver@1.0.18 + serde-wasm-bindgen@0.5.0 + serde@1.0.188 + serde_derive@1.0.188 + serde_derive_internals@0.26.0 + serde_json@1.0.105 + serde_spanned@0.6.3 + serde_test@1.0.176 + serde_with@3.3.0 + serde_with_macros@3.3.0 + sharded-slab@0.1.4 + shellexpand@3.1.0 + shlex@1.1.0 + similar@2.2.1 + siphasher@0.3.11 + smallvec@1.11.0 + spin@0.5.2 + static_assertions@1.1.0 + string_cache@0.8.7 + strsim@0.10.0 + strum@0.24.1 + strum_macros@0.24.3 + syn-ext@0.4.0 + syn@1.0.109 + syn@2.0.29 + tempfile@3.8.0 + term@0.7.0 + termcolor@1.2.0 + terminfo@0.8.0 + termtree@0.4.1 + test-case-core@3.1.0 + test-case-macros@3.1.0 + test-case@3.1.0 + thiserror-impl@1.0.47 + thiserror@1.0.47 + thread_local@1.1.7 + tikv-jemalloc-sys@0.5.4+5.3.0-patched + tikv-jemallocator@0.5.4 + time-core@0.1.1 + time-macros@0.2.14 + time@0.1.45 + time@0.3.28 + tiny-keccak@2.0.2 + tinytemplate@1.2.1 + tinyvec@1.6.0 + tinyvec_macros@0.1.1 + toml@0.7.6 + toml_datetime@0.6.3 + toml_edit@0.19.14 + tracing-attributes@0.1.26 + tracing-core@0.1.31 + tracing-indicatif@0.3.5 + tracing-log@0.1.3 + tracing-subscriber@0.3.17 + tracing@0.1.37 + typed-arena@2.0.2 + unic-char-property@0.9.0 + unic-char-range@0.9.0 + unic-common@0.9.0 + unic-ucd-category@0.9.0 + unic-ucd-version@0.9.0 + unicode-bidi@0.3.13 + unicode-ident@1.0.11 + unicode-normalization@0.1.22 + unicode-width@0.1.10 + unicode-xid@0.2.4 + untrusted@0.7.1 + ureq@2.7.1 + url@2.4.1 + utf8parse@0.2.1 + uuid-macro-internal@1.4.1 + uuid@1.4.1 + valuable@0.1.0 + version_check@0.9.4 + vt100@0.15.2 + vte@0.11.1 + vte_generate_state_changes@0.1.1 + wait-timeout@0.2.0 + walkdir@2.3.3 + wasi@0.10.0+wasi-snapshot-preview1 + wasi@0.11.0+wasi-snapshot-preview1 + wasm-bindgen-backend@0.2.87 + wasm-bindgen-futures@0.4.37 + wasm-bindgen-macro-support@0.2.87 + wasm-bindgen-macro@0.2.87 + wasm-bindgen-shared@0.2.87 + wasm-bindgen-test-macro@0.3.37 + wasm-bindgen-test@0.3.37 + wasm-bindgen@0.2.87 + web-sys@0.3.64 + webpki-roots@0.23.1 + which@4.4.0 + wild@2.1.0 + winapi-i686-pc-windows-gnu@0.4.0 + winapi-util@0.1.5 + winapi-x86_64-pc-windows-gnu@0.4.0 + winapi@0.3.9 + windows-sys@0.45.0 + windows-sys@0.48.0 + windows-targets@0.42.2 + windows-targets@0.48.5 + windows@0.48.0 + windows_aarch64_gnullvm@0.42.2 + windows_aarch64_gnullvm@0.48.5 + windows_aarch64_msvc@0.42.2 + windows_aarch64_msvc@0.48.5 + windows_i686_gnu@0.42.2 + windows_i686_gnu@0.48.5 + windows_i686_msvc@0.42.2 + windows_i686_msvc@0.48.5 + windows_x86_64_gnu@0.42.2 + windows_x86_64_gnu@0.48.5 + windows_x86_64_gnullvm@0.42.2 + windows_x86_64_gnullvm@0.48.5 + windows_x86_64_msvc@0.42.2 + windows_x86_64_msvc@0.48.5 + winnow@0.5.15 + wsl@0.1.0 + yaml-rust@0.4.5 + yansi-term@0.1.2 + yansi@0.5.1 +" + +declare -A GIT_CRATES=( + [unicode_names2]='https://github.com/youknowone/unicode_names2;4ce16aa85cbcdd9cc830410f1a72ef9a235f2fde;unicode_names2-%commit%' +) + +inherit distutils-r1 cargo + +DESCRIPTION="An extremely fast Python linter, written in Rust" +HOMEPAGE=" + https://beta.ruff.rs/docs + https://github.com/charliermarsh/ruff +" +SRC_URI=" + ${CARGO_CRATE_URIS} + https://github.com/charliermarsh/ruff/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +# Dependent crate licenses +LICENSE+=" + Apache-2.0 BSD-2 BSD CC0-1.0 ISC MIT MPL-2.0 Unicode-DFS-2016 + WTFPL-2 +" +SLOT="0" +KEYWORDS="~amd64" + +# syn-ext +LICENSE+=" + BSD-2 +" + +# rustls-webpki +LICENSE+=" + ISC BSD +" + +# LibCST +LICENSE+=" + MIT PSF-2 Apache-2.0 +" + +# ring +LICENSE+=" + ISC SSLeay openssl MIT +" + +BDEPEND=" + dev-util/patchelf + >=virtual/rust-1.71 +" + +QA_FLAGS_IGNORED="usr/bin/.* usr/lib.*/libruff.*.so" + +DOCS=( + BREAKING_CHANGES.md + CODE_OF_CONDUCT.md + CONTRIBUTING.md + README.md +) + +src_prepare() { + sed -r 's:(strip[[:space:]]*=[[:space:]]*)true:\1false:' \ + -i pyproject.toml || die + + [[ -n ${PATCHES[*]} ]] && eapply "${PATCHES[@]}" + eapply_user +} + +src_configure() { + export RUSTFLAGS="${RUSTFLAGS}" + cargo_src_configure +} + +src_compile() { + cargo_src_compile + + python_copy_sources + distutils-r1_src_configure + distutils-r1_src_compile + + local solib + for solib in $(find target/$(usex 'debug' 'debug' 'release') -maxdepth 1 -name '*.so'); do + patchelf --set-soname "${solib##*/}" "${solib}" || die + done +} + +src_test() { + cargo_src_test +} + +# placeholder to silence QA warning, tests are in rust +python_test() { :; } + +src_install() { + distutils-r1_src_install + + local releasedir=target/$(usex 'debug' 'debug' 'release') + + dobin ${releasedir}/{ruff{,_dev},flake8-to-ruff,ruff_python_formatter} + dolib.so $(find target/$(usex 'debug' 'debug' 'release') -maxdepth 1 -name '*.so') + + dodoc "${DOCS[@]}" +} -- cgit v1.2.3