From 113ca85b99cef899c0197ff024fe315b20f4c046 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:07 +0000 Subject: [PATCH 001/291] app-admin/eselect: Sync with Gentoo It's from Gentoo commit 8b687ecd9389b8b93182c76cd2cf14ec0e2fd559. Signed-off-by: Flatcar Buildbot --- .../portage-stable/app-admin/eselect/eselect-1.4.31.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/app-admin/eselect/eselect-1.4.31.ebuild b/sdk_container/src/third_party/portage-stable/app-admin/eselect/eselect-1.4.31.ebuild index 6d465c942f1..75926fc43e1 100644 --- a/sdk_container/src/third_party/portage-stable/app-admin/eselect/eselect-1.4.31.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-admin/eselect/eselect-1.4.31.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -16,7 +16,7 @@ SRC_URI="https://dev.gentoo.org/~ulm/eselect/${P}.tar.xz" LICENSE="GPL-2+ || ( GPL-2+ CC-BY-SA-4.0 )" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="doc emacs vim-syntax" # coreutils for realpath From 5a1d75ee20fe35195c0f2dcb7c9234447f79f580 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:10 +0000 Subject: [PATCH 002/291] app-alternatives/gpg: Sync with Gentoo It's from Gentoo commit ffda47447b6fec47eed71aa528619b296d5c0d5c. Signed-off-by: Flatcar Buildbot --- .../app-alternatives/gpg/gpg-0-r2.ebuild | 28 --------------- .../app-alternatives/gpg/gpg-0-r3.ebuild | 35 ------------------ .../app-alternatives/gpg/gpg-1-r2.ebuild | 36 ------------------- .../app-alternatives/gpg/gpg-1-r3.ebuild | 2 +- 4 files changed, 1 insertion(+), 100 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/app-alternatives/gpg/gpg-0-r2.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/app-alternatives/gpg/gpg-0-r3.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/app-alternatives/gpg/gpg-1-r2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/app-alternatives/gpg/gpg-0-r2.ebuild b/sdk_container/src/third_party/portage-stable/app-alternatives/gpg/gpg-0-r2.ebuild deleted file mode 100644 index 3d7c5706a9c..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-alternatives/gpg/gpg-0-r2.ebuild +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright 2022-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -ALTERNATIVES=( - "reference:>=app-crypt/gnupg-2.4.8-r1[alternatives(-),nls?,ssl?]" -) - -inherit app-alternatives - -DESCRIPTION="gpg symlink" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" -IUSE="nls ssl" - -RDEPEND=" - !app-crypt/gnupg[-alternatives(-)] -" - -src_install() { - local alt=$(get_alternative) - - dodir /usr/bin - dosym "gpg-${alt}" /usr/bin/gpg - dosym "gpgv-${alt}" /usr/bin/gpgv - dosym gpg /usr/bin/gpg2 - dosym gpgv /usr/bin/gpgv2 -} diff --git a/sdk_container/src/third_party/portage-stable/app-alternatives/gpg/gpg-0-r3.ebuild b/sdk_container/src/third_party/portage-stable/app-alternatives/gpg/gpg-0-r3.ebuild deleted file mode 100644 index 2c62ab921b0..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-alternatives/gpg/gpg-0-r3.ebuild +++ /dev/null @@ -1,35 +0,0 @@ -# Copyright 2022-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -ALTERNATIVES=( - "reference:>=app-crypt/gnupg-2.4.8-r1[alternatives(-),nls?,ssl?]" -) - -inherit app-alternatives - -DESCRIPTION="gpg symlink" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" -IUSE="nls ssl" - -RDEPEND=" - !app-crypt/gnupg[-alternatives(-)] - !=app-crypt/gnupg-2.4.8-r1 - !=app-crypt/gnupg-2.5.13-r1 -" - -src_install() { - local alt=$(get_alternative) - - dodir /usr/bin - dosym "gpg-${alt}" /usr/bin/gpg - dosym "gpgv-${alt}" /usr/bin/gpgv - dosym gpg /usr/bin/gpg2 - dosym gpgv /usr/bin/gpgv2 - - newman - gpg.1 <<<".so gpg-${alt}.1" - newman - gpgv.1 <<<".so gpgv-${alt}.1" - newman - gpg2.1 <<<".so gpg.1" - newman - gpgv2.1 <<<".so gpgv.1" -} diff --git a/sdk_container/src/third_party/portage-stable/app-alternatives/gpg/gpg-1-r2.ebuild b/sdk_container/src/third_party/portage-stable/app-alternatives/gpg/gpg-1-r2.ebuild deleted file mode 100644 index ae1e3fc8787..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-alternatives/gpg/gpg-1-r2.ebuild +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 2022-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -ALTERNATIVES=( - "reference:>=app-crypt/gnupg-2.4.8-r1[alternatives(-),nls?,ssl?]" - "freepg:app-crypt/freepg[nls?,ssl?]" - "sequoia:app-crypt/sequoia-chameleon-gnupg" -) - -inherit app-alternatives - -DESCRIPTION="gpg symlink" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos ~x64-solaris" -IUSE="nls ssl" - -RDEPEND=" - !app-crypt/gnupg[-alternatives(-)] -" - -src_install() { - local alt=$(get_alternative) - - case ${alt} in - sequoia) - alt=sq - ;; - esac - - dodir /usr/bin - dosym "gpg-${alt}" /usr/bin/gpg - dosym "gpgv-${alt}" /usr/bin/gpgv - dosym gpg /usr/bin/gpg2 - dosym gpgv /usr/bin/gpgv2 -} diff --git a/sdk_container/src/third_party/portage-stable/app-alternatives/gpg/gpg-1-r3.ebuild b/sdk_container/src/third_party/portage-stable/app-alternatives/gpg/gpg-1-r3.ebuild index c9c1ac54533..7f65dee0a59 100644 --- a/sdk_container/src/third_party/portage-stable/app-alternatives/gpg/gpg-1-r3.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-alternatives/gpg/gpg-1-r3.ebuild @@ -12,7 +12,7 @@ ALTERNATIVES=( inherit app-alternatives DESCRIPTION="gpg symlink" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="nls ssl" RDEPEND=" From 78a00978556ee68c86d5b6dfad9b3715d11f5161 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:15 +0000 Subject: [PATCH 003/291] app-arch/libarchive: Sync with Gentoo It's from Gentoo commit 6e9cb711ff336f9ab7c55d30d508c9f85209ca46. Signed-off-by: Flatcar Buildbot --- .../app-arch/libarchive/libarchive-3.8.3.ebuild | 4 ++-- .../app-arch/libarchive/libarchive-3.8.4.ebuild | 4 ++-- .../app-arch/libarchive/libarchive-3.8.5.ebuild | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.3.ebuild b/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.3.ebuild index b8f794825ad..3de4c72ac3e 100644 --- a/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -39,6 +39,7 @@ RDEPEND=" zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) " DEPEND="${RDEPEND} + elibc_musl? ( sys-libs/queue-standalone ) kernel_linux? ( virtual/os-headers e2fsprogs? ( sys-fs/e2fsprogs[${MULTILIB_USEDEP}] ) @@ -56,7 +57,6 @@ DEPEND="${RDEPEND} BDEPEND=" virtual/pkgconfig verify-sig? ( >=sec-keys/openpgp-keys-libarchive-20251118 ) - elibc_musl? ( sys-libs/queue-standalone ) " VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libarchive.org.asc diff --git a/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.4.ebuild b/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.4.ebuild index 66aa87f993e..efb25d05e75 100644 --- a/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -39,6 +39,7 @@ RDEPEND=" zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) " DEPEND="${RDEPEND} + elibc_musl? ( sys-libs/queue-standalone ) kernel_linux? ( virtual/os-headers e2fsprogs? ( sys-fs/e2fsprogs[${MULTILIB_USEDEP}] ) @@ -56,7 +57,6 @@ DEPEND="${RDEPEND} BDEPEND=" virtual/pkgconfig verify-sig? ( >=sec-keys/openpgp-keys-libarchive-20251118 ) - elibc_musl? ( sys-libs/queue-standalone ) " VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libarchive.org.asc diff --git a/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.5.ebuild b/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.5.ebuild index 929bef7e461..efb25d05e75 100644 --- a/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.5.ebuild @@ -39,6 +39,7 @@ RDEPEND=" zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) " DEPEND="${RDEPEND} + elibc_musl? ( sys-libs/queue-standalone ) kernel_linux? ( virtual/os-headers e2fsprogs? ( sys-fs/e2fsprogs[${MULTILIB_USEDEP}] ) @@ -56,7 +57,6 @@ DEPEND="${RDEPEND} BDEPEND=" virtual/pkgconfig verify-sig? ( >=sec-keys/openpgp-keys-libarchive-20251118 ) - elibc_musl? ( sys-libs/queue-standalone ) " VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libarchive.org.asc From cc0d8dca13d780edfc52bf6265ed9b9dc3e558ec Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:19 +0000 Subject: [PATCH 004/291] app-arch/xz-utils: Sync with Gentoo It's from Gentoo commit 66bae96c3f0b89c374bf9f6d68ded2540de108f1. Signed-off-by: Flatcar Buildbot --- .../portage-stable/app-arch/xz-utils/xz-utils-5.8.2.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.8.2.ebuild b/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.8.2.ebuild index 5ba70b466d2..2184ec060ac 100644 --- a/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.8.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.8.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Remember: we cannot leverage autotools in this ebuild in order @@ -35,7 +35,7 @@ else " if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" fi S="${WORKDIR}/${MY_P}" From 47cbbe9114d90adaf30cb9aee46adb752d4f3f42 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:20 +0000 Subject: [PATCH 005/291] app-arch/zstd: Sync with Gentoo It's from Gentoo commit 5391f1f1a2e4a881dedf2dcd80431a0e51a2abea. Signed-off-by: Flatcar Buildbot --- .../third_party/portage-stable/app-arch/zstd/Manifest | 1 + .../portage-stable/app-arch/zstd/zstd-1.5.7-r1.ebuild | 11 ++++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/app-arch/zstd/Manifest b/sdk_container/src/third_party/portage-stable/app-arch/zstd/Manifest index b0dd3d3d669..d1e554858e7 100644 --- a/sdk_container/src/third_party/portage-stable/app-arch/zstd/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-arch/zstd/Manifest @@ -1 +1,2 @@ DIST zstd-1.5.7.tar.gz 2434947 BLAKE2B ef6bcf13bbb79edce2de21ef4860b01dcb4d2dd47ebd03657d5331c3bb1a207ef128e99ed907a32e787dca7bb51df225ebd8abb2097d03d02c003ca713e1e271 SHA512 b4de208f179b68d4c6454139ca60d66ed3ef3893a560d6159a056640f83d3ee67cdf6ffb88971cdba35449dba4b597eaa8b4ae908127ef7fd58c89f40bf9a705 +DIST zstd-1.5.7.tar.gz.sig 858 BLAKE2B 4dd9e9a1df48f458d7b6f0d50cf6134f40e2b7e678108c8aad07ef4eac294ceafb06ebd4966bd4256c82dfe088df06c18ef9a37c8e5e3925f29cadeb97969a77 SHA512 9d88171296cffd9b02700999c86d3509dc0349a857fc8961bb1fe34b7dfec19bd0c8622c79e02a0165f067ba28a8430c48804a937e548aa7f52d8ff482ba586c diff --git a/sdk_container/src/third_party/portage-stable/app-arch/zstd/zstd-1.5.7-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-arch/zstd/zstd-1.5.7-r1.ebuild index e959be84b16..b62e4fb5cc5 100644 --- a/sdk_container/src/third_party/portage-stable/app-arch/zstd/zstd-1.5.7-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-arch/zstd/zstd-1.5.7-r1.ebuild @@ -1,13 +1,17 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit dot-a meson-multilib +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/zstd.asc +inherit dot-a meson-multilib verify-sig DESCRIPTION="zstd fast compression library" HOMEPAGE="https://facebook.github.io/zstd/" -SRC_URI="https://github.com/facebook/zstd/releases/download/v${PV}/${P}.tar.gz" +SRC_URI=" + https://github.com/facebook/zstd/releases/download/v${PV}/${P}.tar.gz + verify-sig? ( https://github.com/facebook/zstd/releases/download/v${PV}/${P}.tar.gz.sig ) +" S="${WORKDIR}"/${P}/build/meson LICENSE="|| ( BSD GPL-2 )" @@ -22,6 +26,7 @@ RDEPEND=" zlib? ( virtual/zlib:= ) " DEPEND="${RDEPEND}" +BDEPEND="verify-sig? ( sec-keys/openpgp-keys-zstd )" MESON_PATCHES=( # Workaround until Valgrind bugfix lands From 9b7dee9ce409e7ca1e306a491d698212fce2e8bc Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:21 +0000 Subject: [PATCH 006/291] app-containers/aardvark-dns: Sync with Gentoo It's from Gentoo commit 49a1eeae939b7da999ccc9ca8ce9fee361588e01. Signed-off-by: Flatcar Buildbot --- .../app-containers/aardvark-dns/aardvark-dns-1.17.0.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/aardvark-dns/aardvark-dns-1.17.0.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/aardvark-dns/aardvark-dns-1.17.0.ebuild index 1272b60d093..923193403ec 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/aardvark-dns/aardvark-dns-1.17.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/aardvark-dns/aardvark-dns-1.17.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 2023-2025 Gentoo Authors +# Copyright 2023-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -16,7 +16,7 @@ if [[ ${PV} == 9999* ]]; then else SRC_URI="${CARGO_CRATE_URIS}" SRC_URI+="https://github.com/containers/aardvark-dns/releases/download/v${PV}/${PN}-v${PV}-vendor.tar.gz" - KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv" + KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv" fi # main From 45bca4030cfbf9d184864df17cc6f234307cce9f Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:23 +0000 Subject: [PATCH 007/291] app-containers/containerd: Sync with Gentoo It's from Gentoo commit 85c509d897eddf1a1554d0c0e5064bb6c4a4befa. Signed-off-by: Flatcar Buildbot --- .../app-containers/containerd/Manifest | 1 + .../containerd/containerd-2.0.2.ebuild | 5 +- .../containerd/containerd-2.0.3.ebuild | 5 +- .../containerd/containerd-2.0.4.ebuild | 5 +- .../containerd/containerd-2.0.5.ebuild | 5 +- .../containerd/containerd-2.1.0.ebuild | 5 +- .../containerd/containerd-2.1.1.ebuild | 5 +- .../containerd/containerd-2.1.4.ebuild | 5 +- .../containerd/containerd-2.2.0.ebuild | 5 +- .../containerd/containerd-2.2.1.ebuild | 93 +++++++++++++++++++ 10 files changed, 110 insertions(+), 24 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.2.1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/app-containers/containerd/Manifest b/sdk_container/src/third_party/portage-stable/app-containers/containerd/Manifest index 0c024f73369..d92e0f4e9c9 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/containerd/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-containers/containerd/Manifest @@ -6,3 +6,4 @@ DIST containerd-2.1.0.tar.gz 10610618 BLAKE2B 147c21b4650543af9b0e533e381a0505ba DIST containerd-2.1.1.tar.gz 10610787 BLAKE2B acc2d769752c783643795d228c0d267b0802e09166dc783e84087da0029a822a64688f5e59c047c47b25f50ca2a1ccb7f5b6216ad6beeb4489df308e525e9716 SHA512 542f7cae61e1ef2e1b529b0bea66d7ad9016d4605de73de9c9c8a738e50ec6f470b939d1546482320515b77424bffe1cf24b721173ac0c0ecd0100c92817cfb1 DIST containerd-2.1.4.tar.gz 10614131 BLAKE2B b8f4007b4bb368a1fa04c913d606f65d2ea4a17a6419ce12f2b6112eee2574d7a09fb8e2500d1c2f21bef8792dc047df4d63446211ae006662e616facda91f24 SHA512 a9f84784e917621ee5ea38ad20b8106e642fbf463a00d319b73a1a8e4d1fdd5be2fba0789b6a5d31107ef239d3713eced99ce979d4b2764714271a63c0936c15 DIST containerd-2.2.0.tar.gz 11475770 BLAKE2B 154d7d547d52925ff46431cea20db38dc72ec87ef90fd112472cb3ec7f2ebd8cfb121f98a3bc3870f8452473b35c3e1c84671b9fc31347f98259b34a70e740f9 SHA512 3121a1e0401e0283ff9d8454e945b427bcb0214e7e67271815117cb82dee1488c4d963c2193eb9c0ab5d395dd2e2705975ac31ce3e400264933d05d62fd0faac +DIST containerd-2.2.1.tar.gz 11492859 BLAKE2B 5ee7a5388ec5a247a530be505068162318505741e77ab2a103ba8a33c3e76fbac55a64504429f9c636e41cb4826e1acc6b7f817398928a0d6b8ebd94797b8b7b SHA512 6bbfe356bdb0fd70c5b3ca0d932b790bb34b40832392e6a309a907351dc344e3b6059e2cd583145200aab218b4e8f5160d698f2b3a84d05bbf834d023eea4bd3 diff --git a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.0.2.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.0.2.ebuild index f205a48da4f..86430c16562 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.0.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.0.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -12,7 +12,7 @@ SRC_URI="https://github.com/containerd/containerd/archive/v${PV}.tar.gz -> ${P}. LICENSE="Apache-2.0" SLOT="0" KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv ~x86" -IUSE="apparmor btrfs device-mapper +cri hardened +seccomp selinux test" +IUSE="apparmor btrfs device-mapper +cri +seccomp selinux test" COMMON_DEPEND=" btrfs? ( sys-fs/btrfs-progs ) @@ -60,7 +60,6 @@ src_compile() { myemakeargs=( BUILDTAGS="${options[*]}" - LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" REVISION="${GIT_REVISION}" VERSION=v${PV} ) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.0.3.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.0.3.ebuild index e7315295f18..fd381f673c8 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.0.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.0.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -12,7 +12,7 @@ SRC_URI="https://github.com/containerd/containerd/archive/v${PV}.tar.gz -> ${P}. LICENSE="Apache-2.0" SLOT="0" KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" -IUSE="apparmor btrfs device-mapper +cri hardened +seccomp selinux test" +IUSE="apparmor btrfs device-mapper +cri +seccomp selinux test" COMMON_DEPEND=" btrfs? ( sys-fs/btrfs-progs ) @@ -60,7 +60,6 @@ src_compile() { myemakeargs=( BUILDTAGS="${options[*]}" - LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" REVISION="${GIT_REVISION}" VERSION=v${PV} ) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.0.4.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.0.4.ebuild index e7315295f18..fd381f673c8 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.0.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.0.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -12,7 +12,7 @@ SRC_URI="https://github.com/containerd/containerd/archive/v${PV}.tar.gz -> ${P}. LICENSE="Apache-2.0" SLOT="0" KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" -IUSE="apparmor btrfs device-mapper +cri hardened +seccomp selinux test" +IUSE="apparmor btrfs device-mapper +cri +seccomp selinux test" COMMON_DEPEND=" btrfs? ( sys-fs/btrfs-progs ) @@ -60,7 +60,6 @@ src_compile() { myemakeargs=( BUILDTAGS="${options[*]}" - LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" REVISION="${GIT_REVISION}" VERSION=v${PV} ) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.0.5.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.0.5.ebuild index fbd848d132a..9033848f24c 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.0.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.0.5.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -12,7 +12,7 @@ SRC_URI="https://github.com/containerd/containerd/archive/v${PV}.tar.gz -> ${P}. LICENSE="Apache-2.0" SLOT="0" KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv ~x86" -IUSE="apparmor btrfs device-mapper +cri hardened +seccomp selinux test" +IUSE="apparmor btrfs device-mapper +cri +seccomp selinux test" COMMON_DEPEND=" btrfs? ( sys-fs/btrfs-progs ) @@ -60,7 +60,6 @@ src_compile() { myemakeargs=( BUILDTAGS="${options[*]}" - LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" REVISION="${GIT_REVISION}" VERSION=v${PV} ) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.1.0.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.1.0.ebuild index 82ff43895ce..14f881af1c5 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.1.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.1.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -12,7 +12,7 @@ SRC_URI="https://github.com/containerd/containerd/archive/v${PV}.tar.gz -> ${P}. LICENSE="Apache-2.0" SLOT="0" KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" -IUSE="apparmor btrfs device-mapper +cri hardened +seccomp selinux test" +IUSE="apparmor btrfs device-mapper +cri +seccomp selinux test" COMMON_DEPEND=" btrfs? ( sys-fs/btrfs-progs ) @@ -60,7 +60,6 @@ src_compile() { myemakeargs=( BUILDTAGS="${options[*]}" - LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" REVISION="${GIT_REVISION}" VERSION=v${PV} ) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.1.1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.1.1.ebuild index c697a6ff2bc..c197702ec14 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.1.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.1.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -12,7 +12,7 @@ SRC_URI="https://github.com/containerd/containerd/archive/v${PV}.tar.gz -> ${P}. LICENSE="Apache-2.0" SLOT="0" KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" -IUSE="apparmor btrfs device-mapper +cri hardened +seccomp selinux test" +IUSE="apparmor btrfs device-mapper +cri +seccomp selinux test" COMMON_DEPEND=" btrfs? ( sys-fs/btrfs-progs ) @@ -60,7 +60,6 @@ src_compile() { myemakeargs=( BUILDTAGS="${options[*]}" - LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" REVISION="${GIT_REVISION}" VERSION=v${PV} ) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.1.4.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.1.4.ebuild index d2908c6ba56..ceaa0b03844 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.1.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.1.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -12,7 +12,7 @@ SRC_URI="https://github.com/containerd/containerd/archive/v${PV}.tar.gz -> ${P}. LICENSE="Apache-2.0" SLOT="0" KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv ~x86" -IUSE="apparmor btrfs device-mapper +cri hardened +seccomp selinux test" +IUSE="apparmor btrfs device-mapper +cri +seccomp selinux test" COMMON_DEPEND=" btrfs? ( sys-fs/btrfs-progs ) @@ -59,7 +59,6 @@ src_compile() { myemakeargs=( BUILDTAGS="${options[*]}" - LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" REVISION="${GIT_REVISION}" VERSION=v${PV} ) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.2.0.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.2.0.ebuild index 77017ca3ce1..178f6899235 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.2.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.2.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -12,7 +12,7 @@ SRC_URI="https://github.com/containerd/containerd/archive/v${PV}.tar.gz -> ${P}. LICENSE="Apache-2.0" SLOT="0" KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" -IUSE="apparmor btrfs device-mapper +cri hardened +seccomp selinux test" +IUSE="apparmor btrfs device-mapper +cri +seccomp selinux test" COMMON_DEPEND=" btrfs? ( sys-fs/btrfs-progs ) @@ -59,7 +59,6 @@ src_compile() { myemakeargs=( BUILDTAGS="${options[*]}" - LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" REVISION="${GIT_REVISION}" VERSION=v${PV} ) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.2.1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.2.1.ebuild new file mode 100644 index 00000000000..d89df32ae78 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-containers/containerd/containerd-2.2.1.ebuild @@ -0,0 +1,93 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +inherit go-env go-module systemd toolchain-funcs +GIT_REVISION=dea7da592f5d1d2b7755e3a161be07f43fad8f75 + +DESCRIPTION="A daemon to control runC" +HOMEPAGE="https://containerd.io/" +SRC_URI="https://github.com/containerd/containerd/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" +IUSE="apparmor btrfs device-mapper +cri +seccomp selinux test" + +COMMON_DEPEND=" + btrfs? ( sys-fs/btrfs-progs ) + seccomp? ( sys-libs/libseccomp ) +" + +DEPEND=" +${COMMON_DEPEND} +" + +# recommended minimum version of runc is found in script/setup/runc-version +RDEPEND=" + ${COMMON_DEPEND} + >=app-containers/runc-1.3.4[apparmor?,seccomp?] +" + +BDEPEND=" + dev-go/go-md2man + virtual/pkgconfig +" + +# tests require root or docker +RESTRICT+="test" + +src_prepare() { + default + sed -i \ + -e "s/-s -w//" \ + Makefile || die + sed -i \ + -e "s:/usr/local:/usr:" \ + containerd.service || die +} + +src_compile() { + local options=( + $(usev apparmor) + $(usex btrfs "" "no_btrfs") + $(usex cri "" "no_cri") + $(usex device-mapper "" "no_devmapper") + $(usev seccomp) + $(usev selinux) + ) + + myemakeargs=( + BUILDTAGS="${options[*]}" + REVISION="${GIT_REVISION}" + VERSION=v${PV} + ) + + # The Go env is already set, but reset it for CBUILD in a subshell to allow + # building the man pages when cross-compiling. + ( + CHOST="${CBUILD}" go-env_set_compile_environment + # race condition in man target https://bugs.gentoo.org/765100 + tc-env_build emake "${myemakeargs[@]}" man -j1 #nowarn + ) + + emake "${myemakeargs[@]}" all + +} + +src_install() { + rm bin/gen-manpages || die + dobin bin/* + doman man/* + newconfd "${FILESDIR}"/${PN}.confd "${PN}" + newinitd "${FILESDIR}"/${PN}.initd "${PN}" + systemd_dounit containerd.service + keepdir /var/lib/containerd + + # we already installed manpages, remove markdown source + # before installing docs directory + rm -r docs/man || die + + local DOCS=( ADOPTERS.md README.md RELEASES.md ROADMAP.md SCOPE.md docs/. ) + einstalldocs +} From d1612a879eab5cd59dee685fb4a068e0f362255d Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:24 +0000 Subject: [PATCH 008/291] app-containers/containers-common: Sync with Gentoo It's from Gentoo commit fce46063cba4b6411dc29f109ad6e91ca1b92607. Signed-off-by: Flatcar Buildbot --- .../containers-common/containers-common-0.64.2.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/containers-common/containers-common-0.64.2.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/containers-common/containers-common-0.64.2.ebuild index d4f8c244621..7223a5d44ae 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/containers-common/containers-common-0.64.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/containers-common/containers-common-0.64.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -14,7 +14,7 @@ if [[ ${PV} == 9999* ]]; then else SRC_URI="https://github.com/containers/common/archive/v${PV}.tar.gz -> ${P}.tar.gz" S="${WORKDIR}/${P#containers-}" - KEYWORDS="~amd64 ~arm64 ~loong ~riscv" + KEYWORDS="amd64 arm64 ~loong ~riscv" fi LICENSE="Apache-2.0" From 413c70fe0a1f167dced71df26a79fe3638a369c5 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:24 +0000 Subject: [PATCH 009/291] app-containers/containers-image: Sync with Gentoo It's from Gentoo commit 51b0bb6ee0ab5860bc8869ec0aee81082741b903. Signed-off-by: Flatcar Buildbot --- .../containers-image/containers-image-5.36.2.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/containers-image/containers-image-5.36.2.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/containers-image/containers-image-5.36.2.ebuild index 921fadc2e30..c9df2d46cc8 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/containers-image/containers-image-5.36.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/containers-image/containers-image-5.36.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -12,7 +12,7 @@ if [[ ${PV} == 9999* ]]; then else SRC_URI="https://github.com/containers/image/archive/v${PV}.tar.gz -> ${P}.tar.gz" S="${WORKDIR}/${P#containers-}" - KEYWORDS="~amd64 ~arm64 ~loong ~riscv" + KEYWORDS="amd64 arm64 ~loong ~riscv" fi LICENSE="Apache-2.0" From 28c836ed1d27185651919a3402d762c4774f9df2 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:26 +0000 Subject: [PATCH 010/291] app-containers/containers-storage: Sync with Gentoo It's from Gentoo commit 85420cd674809795d036ce8cba0b01311e20868c. Signed-off-by: Flatcar Buildbot --- .../containers-storage/containers-storage-1.59.1.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/containers-storage/containers-storage-1.59.1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/containers-storage/containers-storage-1.59.1.ebuild index b4037bbeac1..9dea1a17790 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/containers-storage/containers-storage-1.59.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/containers-storage/containers-storage-1.59.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -12,7 +12,7 @@ if [[ ${PV} == 9999* ]]; then else SRC_URI="https://github.com/containers/storage/archive/v${PV}.tar.gz -> ${P}.tar.gz" S="${WORKDIR}/${P#containers-}" - KEYWORDS="~amd64 ~arm64 ~loong ~riscv" + KEYWORDS="amd64 arm64 ~loong ~riscv" fi LICENSE="Apache-2.0" From 0f38f25af604f4ce1fb42fe53521a2bbb922e55a Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:26 +0000 Subject: [PATCH 011/291] app-containers/cri-tools: Sync with Gentoo It's from Gentoo commit 3dffcd2ac9ffe5dc8b2f679bb8dbe61cbbc1c907. Signed-off-by: Flatcar Buildbot --- .../cri-tools/cri-tools-1.33.0.ebuild | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/cri-tools/cri-tools-1.33.0.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/cri-tools/cri-tools-1.33.0.ebuild index 241db61dc90..f6e80fa3239 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/cri-tools/cri-tools-1.33.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/cri-tools/cri-tools-1.33.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 2021-2025 Gentoo Authors +# Copyright 2021-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit go-env go-module shell-completion toolchain-funcs +inherit go-env go-module shell-completion sysroot DESCRIPTION="CLI and validation tools for Kubelet Container Runtime (CRI)" HOMEPAGE="https://github.com/kubernetes-sigs/cri-tools" @@ -21,18 +21,14 @@ src_compile() { CRICTL="build/bin/${GOOS}/${GOARCH}/crictl" emake VERSION="${PV}" - if ! tc-is-cross-compiler; then - "${CRICTL}" completion bash > crictl.bash || die - "${CRICTL}" completion zsh > crictl.zsh || die - fi + sysroot_try_run_prefixed "${CRICTL}" completion bash > crictl.bash || die + sysroot_try_run_prefixed "${CRICTL}" completion zsh > crictl.zsh || die } src_install() { einstalldocs dobin "${CRICTL}" - if ! tc-is-cross-compiler; then - newbashcomp crictl.bash crictl - newzshcomp crictl.zsh _crictl - fi + [[ -s crictl.bash ]] && newbashcomp crictl.bash crictl + [[ -s crictl.zsh ]] && newzshcomp crictl.zsh _crictl } From 37bc9ff12b94a1212058bd3c11dcba81e6402e9c Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:26 +0000 Subject: [PATCH 012/291] app-containers/docker: Sync with Gentoo It's from Gentoo commit c4281f3f0b14ae51f5f90632adb0611b37b63fcb. Signed-off-by: Flatcar Buildbot --- .../portage-stable/app-containers/docker/docker-28.0.1.ebuild | 3 ++- .../portage-stable/app-containers/docker/docker-28.1.1.ebuild | 3 ++- .../portage-stable/app-containers/docker/docker-28.2.2.ebuild | 3 ++- .../portage-stable/app-containers/docker/docker-28.4.0.ebuild | 3 ++- .../app-containers/docker/docker-29.1.3-r1.ebuild | 3 ++- 5 files changed, 10 insertions(+), 5 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.0.1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.0.1.ebuild index 3fdc9f584ef..df0dfd40bb1 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.0.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.0.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -232,6 +232,7 @@ pkg_setup() { src_unpack() { default + go-module_src_unpack cd "${S}" [[ -f go.mod ]] || ln -s vendor.mod go.mod || die [[ -f go.sum ]] || ln -s vendor.sum go.sum || die diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.1.1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.1.1.ebuild index dbb107a00d3..8de456bb7bc 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.1.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.1.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -232,6 +232,7 @@ pkg_setup() { src_unpack() { default + go-module_src_unpack cd "${S}" [[ -f go.mod ]] || ln -s vendor.mod go.mod || die [[ -f go.sum ]] || ln -s vendor.sum go.sum || die diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.2.2.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.2.2.ebuild index 64e6730902a..b5306492247 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.2.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.2.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -232,6 +232,7 @@ pkg_setup() { src_unpack() { default + go-module_src_unpack cd "${S}" [[ -f go.mod ]] || ln -s vendor.mod go.mod || die [[ -f go.sum ]] || ln -s vendor.sum go.sum || die diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.4.0.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.4.0.ebuild index 39bb05cd08f..8b62ad787d3 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.4.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.4.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -239,6 +239,7 @@ pkg_setup() { src_unpack() { default + go-module_src_unpack cd "${S}" [[ -f go.mod ]] || ln -s vendor.mod go.mod || die [[ -f go.sum ]] || ln -s vendor.sum go.sum || die diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-29.1.3-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-29.1.3-r1.ebuild index 004e861435a..469351027f1 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-29.1.3-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-29.1.3-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -239,6 +239,7 @@ pkg_setup() { src_unpack() { default + go-module_src_unpack cd "${S}" [[ -f go.mod ]] || ln -s vendor.mod go.mod || die [[ -f go.sum ]] || ln -s vendor.sum go.sum || die From 4e0dc8f6dbd5740ebe621afdf3f228cbb4e6383e Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:28 +0000 Subject: [PATCH 013/291] app-containers/docker-cli: Sync with Gentoo It's from Gentoo commit 8b33f2f4321607448e6fdee8d8ca18ba68d3d673. Signed-off-by: Flatcar Buildbot --- .../app-containers/docker-cli/docker-cli-28.0.1.ebuild | 5 ++--- .../app-containers/docker-cli/docker-cli-28.0.4.ebuild | 5 ++--- .../app-containers/docker-cli/docker-cli-28.1.1.ebuild | 5 ++--- .../app-containers/docker-cli/docker-cli-28.2.2.ebuild | 5 ++--- .../app-containers/docker-cli/docker-cli-28.4.0.ebuild | 5 ++--- .../app-containers/docker-cli/docker-cli-29.1.3.ebuild | 5 ++--- 6 files changed, 12 insertions(+), 18 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.0.1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.0.1.ebuild index 518b752ba8f..658b89cd7fd 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.0.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.0.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -18,7 +18,7 @@ S="${WORKDIR}/cli-${PV}" LICENSE="Apache-2.0" SLOT="0" KEYWORDS="amd64 ~arm arm64 ~loong ppc64 ~riscv ~x86" -IUSE="hardened selinux" +IUSE="selinux" RDEPEND="selinux? ( sec-policy/selinux-docker )" @@ -43,7 +43,6 @@ src_compile() { CGO_CFLAGS+=" -I${ESYSROOT}/usr/include" CGO_LDFLAGS+=" -L${ESYSROOT}/usr/$(get_libdir)" emake \ - LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" \ VERSION="${PV}" \ GITCOMMIT="${GIT_COMMIT}" \ dynbinary diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.0.4.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.0.4.ebuild index cd99b755cc6..5966bc5a173 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.0.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.0.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -24,7 +24,7 @@ S="${WORKDIR}/cli-${PV}" LICENSE="Apache-2.0" SLOT="0" KEYWORDS="amd64 ~arm arm64 ~loong ppc64 ~riscv ~x86" -IUSE="hardened selinux" +IUSE="selinux" RDEPEND="selinux? ( sec-policy/selinux-docker )" @@ -49,7 +49,6 @@ src_compile() { CGO_CFLAGS+=" -I${ESYSROOT}/usr/include" CGO_LDFLAGS+=" -L${ESYSROOT}/usr/$(get_libdir)" emake \ - LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" \ VERSION="${PV}" \ GITCOMMIT="${GIT_COMMIT}" \ dynbinary diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.1.1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.1.1.ebuild index 930b7abefbd..b3d0324e49a 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.1.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.1.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -24,7 +24,7 @@ S="${WORKDIR}/cli-${PV}" LICENSE="Apache-2.0" SLOT="0" KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" -IUSE="hardened selinux" +IUSE="selinux" RDEPEND="selinux? ( sec-policy/selinux-docker )" @@ -49,7 +49,6 @@ src_compile() { CGO_CFLAGS+=" -I${ESYSROOT}/usr/include" CGO_LDFLAGS+=" -L${ESYSROOT}/usr/$(get_libdir)" emake \ - LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" \ VERSION="${PV}" \ GITCOMMIT="${GIT_COMMIT}" \ dynbinary diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.2.2.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.2.2.ebuild index 9eafb3a45d2..975942afaba 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.2.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.2.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -24,7 +24,7 @@ S="${WORKDIR}/cli-${PV}" LICENSE="Apache-2.0" SLOT="0" KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" -IUSE="hardened selinux" +IUSE="selinux" RDEPEND="selinux? ( sec-policy/selinux-docker )" @@ -49,7 +49,6 @@ src_compile() { CGO_CFLAGS+=" -I${ESYSROOT}/usr/include" CGO_LDFLAGS+=" -L${ESYSROOT}/usr/$(get_libdir)" emake \ - LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" \ VERSION="${PV}" \ GITCOMMIT="${GIT_COMMIT}" \ dynbinary diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.4.0.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.4.0.ebuild index fe08d1fe117..67619a487c9 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.4.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-28.4.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -23,7 +23,7 @@ S="${WORKDIR}/cli-${PV}" LICENSE="Apache-2.0" SLOT="0" KEYWORDS="amd64 ~arm arm64 ~loong ppc64 ~riscv ~x86" -IUSE="hardened selinux" +IUSE="selinux" RDEPEND="selinux? ( sec-policy/selinux-docker )" @@ -48,7 +48,6 @@ src_compile() { CGO_CFLAGS+=" -I${ESYSROOT}/usr/include" CGO_LDFLAGS+=" -L${ESYSROOT}/usr/$(get_libdir)" emake \ - LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" \ VERSION="${PV}" \ GITCOMMIT="${GIT_COMMIT}" \ dynbinary manpages diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-29.1.3.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-29.1.3.ebuild index 96f8390538e..b2243019f9d 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-29.1.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-29.1.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -17,7 +17,7 @@ S="${WORKDIR}/cli-${PV}" LICENSE="Apache-2.0" SLOT="0" KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" -IUSE="hardened selinux" +IUSE="selinux" RDEPEND="selinux? ( sec-policy/selinux-docker )" @@ -37,7 +37,6 @@ src_compile() { CGO_CFLAGS+=" -I${ESYSROOT}/usr/include" CGO_LDFLAGS+=" -L${ESYSROOT}/usr/$(get_libdir)" emake \ - LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" \ VERSION="${PV}" \ GITCOMMIT="${GIT_COMMIT}" \ dynbinary manpages From 7f34a5a4257b85b792af270aacc0e85856e3f268 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:28 +0000 Subject: [PATCH 014/291] app-containers/incus: Sync with Gentoo It's from Gentoo commit 6f66ecb9298942ba815ed6f02aca0066da9a53f3. Signed-off-by: Flatcar Buildbot --- .../app-containers/incus/Manifest | 18 +- .../incus/files/incus-CVE-2026-23953.patch | 42 +++ .../incus/files/incus-CVE-2026-23954.patch | 113 ++++++++ .../incus/incus-6.0.3-r1.ebuild | 228 ---------------- .../incus/incus-6.0.4-r1.ebuild | 225 ---------------- ...ncus-6.17.ebuild => incus-6.0.5-r1.ebuild} | 47 ++-- .../app-containers/incus/incus-6.0.5.ebuild | 39 ++- .../app-containers/incus/incus-6.14-r1.ebuild | 255 ------------------ .../app-containers/incus/incus-6.14-r2.ebuild | 254 ----------------- .../app-containers/incus/incus-6.14-r4.ebuild | 255 ------------------ .../app-containers/incus/incus-6.15.ebuild | 253 ----------------- ...{incus-6.19.1.ebuild => incus-6.21.ebuild} | 34 ++- .../{incus-6.18.ebuild => incus-6.22.ebuild} | 63 +++-- .../app-containers/incus/incus-9999.ebuild | 34 ++- 14 files changed, 298 insertions(+), 1562 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/app-containers/incus/files/incus-CVE-2026-23953.patch create mode 100644 sdk_container/src/third_party/portage-stable/app-containers/incus/files/incus-CVE-2026-23954.patch delete mode 100644 sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.0.3-r1.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.0.4-r1.ebuild rename sdk_container/src/third_party/portage-stable/app-containers/incus/{incus-6.17.ebuild => incus-6.0.5-r1.ebuild} (86%) delete mode 100644 sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.14-r1.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.14-r2.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.14-r4.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.15.ebuild rename sdk_container/src/third_party/portage-stable/app-containers/incus/{incus-6.19.1.ebuild => incus-6.21.ebuild} (89%) rename sdk_container/src/third_party/portage-stable/app-containers/incus/{incus-6.18.ebuild => incus-6.22.ebuild} (81%) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/incus/Manifest b/sdk_container/src/third_party/portage-stable/app-containers/incus/Manifest index 00cfe10c5a7..f424d80d7a3 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/incus/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-containers/incus/Manifest @@ -1,16 +1,6 @@ -DIST incus-6.0.3.tar.xz 11916020 BLAKE2B d3d998bd50124604c52ff007eefed586c216ce1a0a77d45724fd489db1d93f2fa304f5d6e1c368ff2dd4d1170b24605fd24bbf2a6e4506207686ca392936c200 SHA512 6a879e6634cf545b4c427800d923a32e5fe58a6eaf220ad8d0cb08e0ced5e6c4be09274ae095bb9dae25a55445462ea83d3d9235f67bbb9896944f596bf17e1a -DIST incus-6.0.3.tar.xz.asc 833 BLAKE2B 38835ab036709161150992cb40df4ff1ae1887d4f3e0b037d0415f75d2bb711cb3c5945bffe1b91d289acfb7e19e726964278e5c2ab31731ba9f7534f139dec7 SHA512 7d5360ab91aafe1d047a60e38a07e24c3c7b158e753087a943ec5e59d6a27c19a872080c9007b6cf592040d3408845bc188d76f6e732408d0680a3782cebce47 -DIST incus-6.0.4.tar.xz 12000208 BLAKE2B 99a4ba40d2eea48515b88f4534c282adc925fe1b5487dc98901f000894b3781aec89f617d2246314cf9a95a7d65531e486c4092f8939722e1b3c2bf7d33063c8 SHA512 14a5cdad3f9365d58e526c8f451d9e7a57729010073caff31256e0b94d28206adc82ead4820278e7eac17b74d22a76d9f3b9f5f8424ddbfa6b74a5cea13e019f -DIST incus-6.0.4.tar.xz.asc 833 BLAKE2B 96c94cde55cd2e9f7f28db7adb098adf4895437d300dfd42aeac540cdab6677fb604831c28f40f8581e60b89b228557d81696cd64950a1c2147b445a5ec58b30 SHA512 1ef2063eab424467c805f8c86b5b0caca848f46d2ef7ebf602049fe32ee15a7e1006d5a2710b355604aef73802b4333cd0428c772e1c5fc4da588c2cd7ee1694 DIST incus-6.0.5.tar.xz 12532820 BLAKE2B a256c37c309d82f6326ede3d90e20522ff91317b1bce0a4dc1c391c2694599c7f3f6ab06368757a12e85133f82bd85ea4d50906dc250f43563a6ff765850b874 SHA512 b209dde671b13e101ccdf0daf975ae8547d050ec95e67ad1ee17aa99761e8ed3327e7edace0c4394aa79932d11b846e0f1edf5f95b2ad0b56eafca9905e844c8 DIST incus-6.0.5.tar.xz.asc 833 BLAKE2B 1e8818fdb2edf9ff0d0288d2a7d61585571a0fdfe514e1bdf05b27b607560115168c07d420f8384d07d216fdc8dc1f31113fa5afa4838042743636974bf76151 SHA512 d0412fe8850ff5783d4c3cee982ff8beac74f19c5dc538438fc210b9f7421bcb6e663e4c32f9a2604f1a5e2f42d8bb8d3f8e599f15a0fa1b5fa6f1bc1982b1dd -DIST incus-6.14.tar.xz 12509468 BLAKE2B ec3bb614088d82e07c13169a6b26d8c83214fddbdf30049d58f2cca2678a16ccb6acca7bba68d4e15a514dad71639a144a7b2f4b9f3efdf9c8ca8d750692e250 SHA512 186abb32dcfbe851f04131ea7a9256fafaa465d40379e825554275697e04f005920c09939a8cb199b499b60df667921900c4a2d5b9a7ab9bd20b3e473468dbf1 -DIST incus-6.14.tar.xz.asc 833 BLAKE2B c9cfa631bb316234a6958f2aa3e708e32ea2fca34357700e7d1e38723be539f5b6b1484597c18baca1f22d922c7aca148463dfc0b818f7809126e6873e4826b5 SHA512 6a2f4ceeab44462cca74799a1c135eeb17cbece3d270c5195c3eacda8ea24419fc34cab6d157dbfed803bb269df42a02abc417b98887cec5f10b0ec70b430644 -DIST incus-6.15.tar.xz 12716184 BLAKE2B bc821575f7f24b42054028ce628a29f38ef41b8a31a94f34381019306681f9279ae6c36cb00b7f84d62f5ddc89d27216d753e5c0f5ec1d327bbd283ab5fe1e15 SHA512 7561abce8eb9c01764aca9bb5477028439c05f6c1c20637f288028be93f4bc0d74a36af76f7ad0e35028dfe40e2a0bb2d7b4a363d1da35fe657072f5d847c78e -DIST incus-6.15.tar.xz.asc 833 BLAKE2B ccab84a2fd3f9d6971ff0fd7cba9afc23dbe0fc0bcb8738656f9071db7c773840566009d5014dc15d37be26bff018e3faf8af59dd5d50b629aebd2e79cf3dc5e SHA512 b1bf43ffff719a3f1c6be7a8d32e44f418efb8e926914dea5479ba1175768910fa38b4e5b83c51e90ec34d2d345629597beb286215b9658a611cf568b8e43122 -DIST incus-6.17.tar.xz 12809024 BLAKE2B 5d6cb615b547430641faa716df5ce7c4d03aad436a4161c9d9dab99bd4fff7b8f93c8250d5b65237047c2baeeeac6f42a21b9a6970a41e79e7e6af9ceca2cf62 SHA512 ae744784ed676dcdcad3a284a0e16a816786cb87d78fae7f317baa4c75b193edb56ab2ec38b916c84930df5385e7b239c1cb9dc869672502be1e4d660a8d6113 -DIST incus-6.17.tar.xz.asc 833 BLAKE2B a0fc3eaa51df6b77988cc331cf03fad982d0a735a2e751564d05bd6f929b422b8682b56ec9101b17000978ec7f919189b3721779ca299f7df0c46fa56275aaf6 SHA512 23cc6ed65bf99899bd3ed4dd7f79a1eada375e32ad0f9b91be1e3fcc0d2af5abeffe05b7c02f0b63a7eca7dfaeee030dbc27fce67e8952f42f18638ebfc9a2e2 -DIST incus-6.18.tar.xz 13269284 BLAKE2B 5894d445d869ab280332f9874fc5e885495925c6408d003c972ef05b3d1bb89f8b9c5d95e5c0bb7cd20377e8e9d80673049e88d5d3d3d0b2d83ae0c2aaf6a79c SHA512 619fb28dbcfbd7fca93a5941b77c6106f8489f277167e44f131a2816ba3cab6519a7103cf92714fcd9c78ff06105bc1999982c6b6dcb4e8478646aac9c83fbec -DIST incus-6.18.tar.xz.asc 833 BLAKE2B 539759887221842b0b1be365e6eaa112317e77443627471725bc976d00efeb0e50ee6700a8d6dd15e50978fa72cfeab8186af0e7f6c66d9d4a1ac7cb9c2212f3 SHA512 b3803b3e16cdc1e916ac50d679b2e313ae4652ca5203b7b8090f4acc0b86f1070d107adf8f6f89e05e0502cd28f2d134588b9301ecffdae88ae75e84d431c0f3 -DIST incus-6.19.1.tar.xz 13272476 BLAKE2B fac75836ed7d853b3deb28ee2f38a80ae392f8af444f37b29adf0868fdf3dea6a51e1ffef2bbb606cdc5f39d74b76ccced3f7e7f9d2c611d40e543f295fe2b01 SHA512 ad674c2da425deb5c59847b688e3aa053b1a401920caa25a775795b3cb36d1e30b74f790c719187d1b37dd5c12e4b1cb56f17b6fac946fd3ec83ea5b1000e157 -DIST incus-6.19.1.tar.xz.asc 833 BLAKE2B 57cb2b8824e083143551ed756bb1a4af0294681f7f67cef405963852f676b6d933c2d066a60ad0366f134a496c1c166dc6a7c5dfb45483d78388716983bdeada SHA512 b645418f02337e7b2adadb278fc39d9cc53981b11654dee16f2945d0ba2c8304dbfcd255d95ba73ea124d28b56ec886e1a4c514606a06ab53e61692913384ee3 +DIST incus-6.21.tar.xz 13298940 BLAKE2B ae898643c02e4e4ba41d7c9326ff67fdaed21f0583268cdd810602c5b244b00bfb9fdaa626149ca20782595ba35b3b820774605417f0c3c74ee2acda9494ff88 SHA512 eff179f176d4f2ccf7e6c2db57a63358370c53b4c8255d8d3a56ddca16df17339ec1f7455cc63b38dc9e28f7ae658349c325c92ba32687f9f4acd5573c56f06d +DIST incus-6.21.tar.xz.asc 833 BLAKE2B 14aad1deb9976528e0e75426cb46017525fba5f1a728dc34192e0defd417bf93f20fd12ef4005c7111a9be6891af1ff077f34abab9b824451b938ea7d1e92026 SHA512 6baaf74e7f4eb16fcd183ab435235b491081afa35f94b86ea63d4ac51aa63fe0a10f2aa493987c261664c8ef7fdcb2ed09e7265c5bf063e828b40d3618fd4f8c +DIST incus-6.22.tar.xz 13452548 BLAKE2B d55cde93ae4b0893eba177711e067c62101d29d9d65a6af043e301b9a6389d1d4ea3027365879777cb3d6cd4044e24d1bdfc044c55be632e25fa5d3ce51b91a7 SHA512 4c945a9ca7ecbbc0f833fb2b768f23ee79b4f3c0975ad6afe1f1887418adcd246c4b6c029238c5447930e2dcf675942552e4d8d33222417e4fef1f5e4b43a849 +DIST incus-6.22.tar.xz.asc 833 BLAKE2B 628281aa44f521f44bc8e22725793b656a8b662f2a2ada724fb8b17b99352ab6d46ad85b99319840166d6c45ede11d72b2e69c535fd769411c5c750e30367ba5 SHA512 57dd75642f9875800da09b18995dac60e97f441caa82272fe22bff8120c412f646fae81e0d9e63996bb6945c5ebc2ce4ab820372337e36e04e3f2de4ccb0fe1a diff --git a/sdk_container/src/third_party/portage-stable/app-containers/incus/files/incus-CVE-2026-23953.patch b/sdk_container/src/third_party/portage-stable/app-containers/incus/files/incus-CVE-2026-23953.patch new file mode 100644 index 00000000000..59277fd797c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-containers/incus/files/incus-CVE-2026-23953.patch @@ -0,0 +1,42 @@ +From d6f0a77dd26df4c1ced80ffa63848279fd4330cc Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?St=C3=A9phane=20Graber?= +Date: Tue, 20 Jan 2026 23:27:25 -0500 +Subject: [PATCH] internal/instance: Prevent line breaks in environment + variables +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +LXC doesn't currently have a syntax to hold a multi-line environment +variable in its configuration. The use of multi-line environment +variables leads to a corrupted configuration file and to a security +issue where additional lines may be added by an unprivileged user to +escalate their privileges. + +This fixes CVE-2026-23953. + +Reported-by: Rory McNamara +Signed-off-by: Stéphane Graber +--- + internal/instance/config.go | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/internal/instance/config.go b/internal/instance/config.go +index a282f99e478..2c6c779205b 100644 +--- a/internal/instance/config.go ++++ b/internal/instance/config.go +@@ -1376,7 +1376,13 @@ func ConfigKeyChecker(key string, instanceType api.InstanceType) (func(value str + // liveupdate: yes + // shortdesc: Free-form environment key/value + if strings.HasPrefix(key, "environment.") { +- return validate.IsAny, nil ++ return func(val string) error { ++ if strings.Contains(val, "\n") { ++ return errors.New("Environment variables cannot contain line breaks") ++ } ++ ++ return nil ++ }, nil + } + + // gendoc:generate(entity=instance, group=miscellaneous, key=user.*) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/incus/files/incus-CVE-2026-23954.patch b/sdk_container/src/third_party/portage-stable/app-containers/incus/files/incus-CVE-2026-23954.patch new file mode 100644 index 00000000000..930a8d8be45 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-containers/incus/files/incus-CVE-2026-23954.patch @@ -0,0 +1,113 @@ +From 92ac6ac999a4928cfdb92c485a048e4d51f471d0 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?St=C3=A9phane=20Graber?= +Date: Wed, 21 Jan 2026 00:04:37 -0500 +Subject: [PATCH] incusd/instance/lxc: Restrict path of template files and + targets +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This fixes three security issues related to file templates: + + - The template target path could be made to be relative or gothrough + symlinks in a way that could lead to arbitrary write to the host + filesystem. + + - The template directory could be relative, allowing for arbitrary read + from the host filesystem. + + - The template file itself could be made relative, allowing for + arbitrary reads from the host filesystem. + +In the case of the template target path, the new logic makes use of the +kernel's openat2 system call which brings a variety of flags that can be +used to restrict path resolution and detect potential issues. + +For the template path itself, we now validate that it is a simple local +file and that the template directory isn't a symlink. + +This fixes CVE-2026-23954 + +Reported-by: Rory McNamara +Signed-off-by: Stéphane Graber +--- + .../server/instance/drivers/driver_lxc.go | 58 ++++++++++++++++++- + 1 file changed, 57 insertions(+), 1 deletion(-) + +diff --git a/internal/server/instance/drivers/driver_lxc.go b/internal/server/instance/drivers/driver_lxc.go +index b6d8cb9a0a7..a1e4f6bbe0d 100644 +--- a/internal/server/instance/drivers/driver_lxc.go ++++ b/internal/server/instance/drivers/driver_lxc.go +@@ -6841,6 +6841,32 @@ func (d *lxc) templateApplyNow(trigger instance.TemplateTrigger) error { + containerMeta["privileged"] = "false" + } + ++ // Setup security check. ++ rootfsPath, err := os.OpenFile(d.RootfsPath(), unix.O_PATH, 0) ++ if err != nil { ++ return fmt.Errorf("Failed to open instance rootfs path: %w", err) ++ } ++ ++ defer func() { _ = rootfsPath.Close() }() ++ ++ checkBeneath := func(targetPath string) error { ++ fd, err := unix.Openat2(int(rootfsPath.Fd()), targetPath, &unix.OpenHow{ ++ Flags: unix.O_PATH | unix.O_CLOEXEC, ++ Resolve: unix.RESOLVE_BENEATH | unix.RESOLVE_NO_MAGICLINKS, ++ }) ++ if err != nil { ++ if errors.Is(err, unix.EXDEV) { ++ return errors.New("Template is attempting access to path outside of container") ++ } ++ ++ return nil ++ } ++ ++ _ = unix.Close(fd) ++ ++ return nil ++ } ++ + // Go through the templates + for tplPath, tpl := range metadata.Templates { + err = func(tplPath string, tpl *api.ImageMetadataTemplate) error { +@@ -6853,8 +6879,38 @@ func (d *lxc) templateApplyNow(trigger instance.TemplateTrigger) error { + return nil + } + ++ // Perform some security checks. ++ relPath := strings.TrimLeft(tplPath, "/") ++ ++ err = checkBeneath(relPath) ++ if err != nil { ++ return err ++ } ++ ++ if filepath.Base(tpl.Template) != tpl.Template { ++ return errors.New("Template path is attempting to read outside of template directory") ++ } ++ ++ tplDirStat, err := os.Lstat(d.TemplatesPath()) ++ if err != nil { ++ return fmt.Errorf("Couldn't access template directory: %w", err) ++ } ++ ++ if !tplDirStat.IsDir() { ++ return errors.New("Template directory isn't a regular directory") ++ } ++ ++ tplFileStat, err := os.Lstat(filepath.Join(d.TemplatesPath(), tpl.Template)) ++ if err != nil { ++ return fmt.Errorf("Couldn't access template file: %w", err) ++ } ++ ++ if tplFileStat.Mode()&os.ModeSymlink == os.ModeSymlink { ++ return errors.New("Template file is a symlink") ++ } ++ + // Open the file to template, create if needed +- fullpath := filepath.Join(d.RootfsPath(), strings.TrimLeft(tplPath, "/")) ++ fullpath := filepath.Join(d.RootfsPath(), relPath) + if util.PathExists(fullpath) { + if tpl.CreateOnly { + return nil diff --git a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.0.3-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.0.3-r1.ebuild deleted file mode 100644 index e7e99e8bc46..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.0.3-r1.ebuild +++ /dev/null @@ -1,228 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit go-module linux-info optfeature systemd toolchain-funcs verify-sig - -DESCRIPTION="Modern, secure and powerful system container and virtual machine manager" -HOMEPAGE="https://linuxcontainers.org/incus/introduction/ https://github.com/lxc/incus" -SRC_URI="https://linuxcontainers.org/downloads/incus/${P}.tar.xz - verify-sig? ( https://linuxcontainers.org/downloads/incus/${P}.tar.xz.asc )" - -LICENSE="Apache-2.0 BSD LGPL-3 MIT" -SLOT="0/lts" -KEYWORDS="amd64 ~arm64" -IUSE="apparmor fuidshift nls qemu" - -DEPEND="acct-group/incus - acct-group/incus-admin - app-arch/xz-utils - >=app-containers/lxc-5.0.0:=[apparmor?,seccomp(+)] - dev-db/sqlite:3 - >=dev-libs/cowsql-1.15.6 - dev-libs/lzo - >=dev-libs/raft-0.22.1:=[lz4] - >=dev-util/xdelta-3.0[lzma(+)] - net-dns/dnsmasq[dhcp] - sys-libs/libcap - virtual/udev" -RDEPEND="${DEPEND} - || ( - net-firewall/iptables - net-firewall/nftables - ) - fuidshift? ( !app-containers/lxd ) - sys-apps/iproute2 - sys-fs/fuse:* - >=sys-fs/lxcfs-5.0.0 - sys-fs/squashfs-tools[lzma] - virtual/acl - qemu? ( - app-cdr/cdrtools - app-emulation/qemu[spice,usbredir,virtfs] - sys-apps/gptfdisk - )" -BDEPEND=">=dev-lang/go-1.21 - nls? ( sys-devel/gettext ) - verify-sig? ( sec-keys/openpgp-keys-linuxcontainers )" - -CONFIG_CHECK=" - ~AIO - ~CGROUPS - ~IPC_NS - ~NET_NS - ~PID_NS - - ~SECCOMP - ~USER_NS - ~UTS_NS - - ~KVM - ~MACVTAP - ~VHOST_VSOCK -" - -ERROR_AIO="CONFIG_AIO is required." -ERROR_IPC_NS="CONFIG_IPC_NS is required." -ERROR_NET_NS="CONFIG_NET_NS is required." -ERROR_PID_NS="CONFIG_PID_NS is required." -ERROR_SECCOMP="CONFIG_SECCOMP is required." -ERROR_UTS_NS="CONFIG_UTS_NS is required." - -WARNING_KVM="CONFIG_KVM and CONFIG_KVM_AMD/-INTEL is required for virtual machines." -WARNING_MACVTAP="CONFIG_MACVTAP is required for virtual machines." -WARNING_VHOST_VSOCK="CONFIG_VHOST_VSOCK is required for virtual machines." - -# Go magic. -QA_PREBUILT="/usr/bin/incus - /usr/bin/incus-agent - /usr/bin/incus-benchmark - /usr/bin/incus-migrate - /usr/bin/lxc-to-incus - /usr/sbin/fuidshift - /usr/sbin/incusd - /usr/sbin/lxd-to-incus" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/linuxcontainers.asc - -# The testsuite must be run as root. -# make: *** [Makefile:156: check] Error 1 -RESTRICT="test" - -GOPATH="${S}/_dist" - -src_unpack() { - verify-sig_src_unpack - go-module_src_unpack -} - -src_prepare() { - export GOPATH="${S}/_dist" - - default - - sed -i \ - -e "s:\./configure:./configure --prefix=/usr --libdir=${EPREFIX}/usr/lib/incus:g" \ - -e "s:make:make ${MAKEOPTS}:g" \ - Makefile || die - - sed -i \ - -e "s:/usr/share/OVMF:/usr/share/edk2/OvmfX64:g" \ - -e "s:OVMF_VARS.ms.fd:OVMF_VARS.fd:g" \ - internal/server/instance/drivers/edk2/driver_edk2.go || die "Failed to fix hardcoded ovmf paths." - - # Fix hardcoded virtfs-proxy-helper file path, see bug 798924 - sed -i \ - -e "s:/usr/lib/qemu/virtfs-proxy-helper:/usr/libexec/virtfs-proxy-helper:g" \ - internal/server/device/device_utils_disk.go || die "Failed to fix virtfs-proxy-helper path." - - cp "${FILESDIR}"/incus-0.4.service "${T}"/incus.service || die - if use apparmor; then - sed -i \ - '/^EnvironmentFile=.*/a ExecStartPre=\/usr\/libexec\/lxc\/lxc-apparmor-load' \ - "${T}"/incus.service || die - fi - - # Disable -Werror's from go modules. - find "${S}" -name "cgo.go" -exec sed -i "s/ -Werror / /g" {} + || die -} - -src_configure() { :; } - -src_compile() { - export GOPATH="${S}/_dist" - export CGO_LDFLAGS_ALLOW="-Wl,-z,now" - - for k in incus-benchmark incus-simplestreams incus-user incus lxc-to-incus lxd-to-incus ; do - ego install -v -x "${S}/cmd/${k}" - done - - if use fuidshift ; then - ego install -v -x "${S}/cmd/fuidshift" - fi - - ego install -v -x -tags libsqlite3 "${S}"/cmd/incusd - - # Needs to be built statically - CGO_ENABLED=0 go install -v -tags netgo "${S}"/cmd/incus-migrate - CGO_ENABLED=0 go install -v -tags agent,netgo "${S}"/cmd/incus-agent - - use nls && emake build-mo -} - -src_test() { - emake check -} - -src_install() { - export GOPATH="${S}/_dist" - - if tc-is-cross-compiler ; then - local bindir="_dist/bin/linux_${GOARCH}" - else - local bindir="_dist/bin" - fi - - newsbin "${FILESDIR}"/incus-startup-0.4.sh incus-startup - - # Admin tools - for l in incusd incus-user lxd-to-incus ; do - dosbin ${bindir}/${l} - done - - # User tools - for m in incus-agent incus-benchmark incus-migrate incus-simplestreams incus lxc-to-incus ; do - dobin ${bindir}/${m} - done - - # fuidshift, should be moved under admin tools at some point - if use fuidshift ; then - dosbin ${bindir}/fuidshift - fi - - newconfd "${FILESDIR}"/incus-6.0.confd incus - newinitd "${FILESDIR}"/incus-6.0.initd incus - newinitd "${FILESDIR}"/incus-user-0.4.initd incus-user - - systemd_dounit "${T}"/incus.service - systemd_newunit "${FILESDIR}"/incus-0.4.socket incus.socket - systemd_newunit "${FILESDIR}"/incus-startup-0.4.service incus-startup.service - systemd_newunit "${FILESDIR}"/incus-user-0.4.service incus-user.service - systemd_newunit "${FILESDIR}"/incus-user-0.4.socket incus-user.socket - - if ! tc-is-cross-compiler; then - # Generate and install shell completion files. - mkdir -p "${D}"/usr/share/{bash-completion/completions/,fish/vendor_completions.d/,zsh/site-functions/} || die - "${bindir}"/incus completion bash > "${D}"/usr/share/bash-completion/completions/incus || die - "${bindir}"/incus completion fish > "${D}"/usr/share/fish/vendor_completions.d/incus.fish || die - "${bindir}"/incus completion zsh > "${D}"/usr/share/zsh/site-functions/_incus || die - else - ewarn "Shell completion files not installed! Install them manually with incus completion --help" - fi - - dodoc AUTHORS - dodoc -r doc/* - use nls && domo po/*.mo - - # Incus needs INCUS_EDK2_PATH in env to find OVMF files for virtual machines, #946184 - newenvd - 90incus <<- _EOF_ - INCUS_EDK2_PATH=${EPREFIX}/usr/share/edk2-ovmf - _EOF_ -} - -pkg_postinst() { - elog - elog "Please see" - elog " https://wiki.gentoo.org/wiki/Incus" - elog " https://wiki.gentoo.org/wiki/Incus#Migrating_from_LXD" - elog - optfeature "btrfs storage backend" sys-fs/btrfs-progs - optfeature "ipv6 support" net-dns/dnsmasq[ipv6] - optfeature "full incus-migrate support" net-misc/rsync - optfeature "lvm2 storage backend" sys-fs/lvm2 - optfeature "zfs storage backend" sys-fs/zfs - elog - elog "Be sure to add your local user to the incus group." - elog -} diff --git a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.0.4-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.0.4-r1.ebuild deleted file mode 100644 index 44fa897837d..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.0.4-r1.ebuild +++ /dev/null @@ -1,225 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit go-env go-module linux-info optfeature systemd toolchain-funcs verify-sig - -DESCRIPTION="Modern, secure and powerful system container and virtual machine manager" -HOMEPAGE="https://linuxcontainers.org/incus/introduction/ https://github.com/lxc/incus" -SRC_URI="https://linuxcontainers.org/downloads/incus/${P}.tar.xz - verify-sig? ( https://linuxcontainers.org/downloads/incus/${P}.tar.xz.asc )" - -LICENSE="Apache-2.0 BSD LGPL-3 MIT" -SLOT="0/lts" -KEYWORDS="amd64 ~arm64" -IUSE="apparmor fuidshift nls qemu" - -DEPEND="acct-group/incus - acct-group/incus-admin - app-arch/xz-utils - >=app-containers/lxc-5.0.0:=[apparmor?,seccomp(+)] - dev-db/sqlite:3 - >=dev-libs/cowsql-1.15.6 - dev-libs/lzo - >=dev-libs/raft-0.22.1:=[lz4] - >=dev-util/xdelta-3.0[lzma(+)] - net-dns/dnsmasq[dhcp] - sys-libs/libcap - virtual/udev" -RDEPEND="${DEPEND} - || ( - net-firewall/iptables - net-firewall/nftables - ) - fuidshift? ( !app-containers/lxd ) - sys-apps/iproute2 - sys-fs/fuse:* - >=sys-fs/lxcfs-5.0.0 - sys-fs/squashfs-tools[lzma] - virtual/acl - qemu? ( - app-cdr/cdrtools - app-emulation/qemu[spice,usbredir,virtfs] - sys-apps/gptfdisk - )" -BDEPEND=">=dev-lang/go-1.21 - nls? ( sys-devel/gettext ) - verify-sig? ( sec-keys/openpgp-keys-linuxcontainers )" - -CONFIG_CHECK=" - ~AIO - ~CGROUPS - ~IPC_NS - ~NET_NS - ~PID_NS - - ~SECCOMP - ~USER_NS - ~UTS_NS - - ~KVM - ~MACVTAP - ~VHOST_VSOCK -" - -ERROR_AIO="CONFIG_AIO is required." -ERROR_IPC_NS="CONFIG_IPC_NS is required." -ERROR_NET_NS="CONFIG_NET_NS is required." -ERROR_PID_NS="CONFIG_PID_NS is required." -ERROR_SECCOMP="CONFIG_SECCOMP is required." -ERROR_UTS_NS="CONFIG_UTS_NS is required." - -WARNING_KVM="CONFIG_KVM and CONFIG_KVM_AMD/-INTEL is required for virtual machines." -WARNING_MACVTAP="CONFIG_MACVTAP is required for virtual machines." -WARNING_VHOST_VSOCK="CONFIG_VHOST_VSOCK is required for virtual machines." - -# Go magic. -QA_PREBUILT="/usr/bin/incus - /usr/bin/incus-agent - /usr/bin/incus-benchmark - /usr/bin/incus-migrate - /usr/bin/lxc-to-incus - /usr/sbin/fuidshift - /usr/sbin/incusd - /usr/sbin/lxd-to-incus" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/linuxcontainers.asc - -# The testsuite must be run as root. -# make: *** [Makefile:156: check] Error 1 -RESTRICT="test" - -GOPATH="${S}/_dist" - -src_unpack() { - verify-sig_src_unpack - go-module_src_unpack -} - -src_prepare() { - export GOPATH="${S}/_dist" - - default - - sed -i \ - -e "s:\./configure:./configure --prefix=/usr --libdir=${EPREFIX}/usr/lib/incus:g" \ - -e "s:make:make ${MAKEOPTS}:g" \ - Makefile || die - - sed -i \ - -e "s:/usr/share/OVMF:/usr/share/edk2/OvmfX64:g" \ - -e "s:OVMF_VARS.ms.fd:OVMF_VARS.fd:g" \ - internal/server/instance/drivers/edk2/driver_edk2.go || die "Failed to fix hardcoded ovmf paths." - - cp "${FILESDIR}"/incus-0.4.service "${T}"/incus.service || die - if use apparmor; then - sed -i \ - '/^EnvironmentFile=.*/a ExecStartPre=\/usr\/libexec\/lxc\/lxc-apparmor-load' \ - "${T}"/incus.service || die - fi - - # Disable -Werror's from go modules. - find "${S}" -name "cgo.go" -exec sed -i "s/ -Werror / /g" {} + || die -} - -src_configure() { :; } - -src_compile() { - export GOPATH="${S}/_dist" - export CGO_LDFLAGS_ALLOW="-Wl,-z,now" - - for k in incus-benchmark incus-simplestreams incus-user incus lxc-to-incus lxd-to-incus ; do - ego install -v -x "${S}/cmd/${k}" - done - - if use fuidshift ; then - ego install -v -x "${S}/cmd/fuidshift" - fi - - ego install -v -x -tags libsqlite3 "${S}"/cmd/incusd - - # Needs to be built statically - CGO_ENABLED=0 go install -v -tags netgo "${S}"/cmd/incus-migrate - CGO_ENABLED=0 go install -v -tags agent,netgo "${S}"/cmd/incus-agent - - use nls && emake build-mo -} - -src_test() { - emake check -} - -src_install() { - export GOPATH="${S}/_dist" - - export GOHOSTARCH=$(go-env_goarch "${CBUILD}") - if [[ "${GOARCH}" != "${GOHOSTARCH}" ]]; then - local bindir="_dist/bin/linux_${GOARCH}" - else - local bindir="_dist/bin" - fi - - newsbin "${FILESDIR}"/incus-startup-0.4.sh incus-startup - - # Admin tools - for l in incusd incus-user lxd-to-incus ; do - dosbin ${bindir}/${l} - done - - # User tools - for m in incus-agent incus-benchmark incus-migrate incus-simplestreams incus lxc-to-incus ; do - dobin ${bindir}/${m} - done - - # fuidshift, should be moved under admin tools at some point - if use fuidshift ; then - dosbin ${bindir}/fuidshift - fi - - newconfd "${FILESDIR}"/incus-6.0.confd incus - newinitd "${FILESDIR}"/incus-6.0.initd incus - newinitd "${FILESDIR}"/incus-user-0.4.initd incus-user - - systemd_dounit "${T}"/incus.service - systemd_newunit "${FILESDIR}"/incus-0.4.socket incus.socket - systemd_newunit "${FILESDIR}"/incus-startup-0.4.service incus-startup.service - systemd_newunit "${FILESDIR}"/incus-user-0.4.service incus-user.service - systemd_newunit "${FILESDIR}"/incus-user-0.4.socket incus-user.socket - - if ! tc-is-cross-compiler; then - # Generate and install shell completion files. - mkdir -p "${D}"/usr/share/{bash-completion/completions/,fish/vendor_completions.d/,zsh/site-functions/} || die - "${bindir}"/incus completion bash > "${D}"/usr/share/bash-completion/completions/incus || die - "${bindir}"/incus completion fish > "${D}"/usr/share/fish/vendor_completions.d/incus.fish || die - "${bindir}"/incus completion zsh > "${D}"/usr/share/zsh/site-functions/_incus || die - else - ewarn "Shell completion files not installed! Install them manually with incus completion --help" - fi - - dodoc AUTHORS - dodoc -r doc/* - use nls && domo po/*.mo - - # Incus needs INCUS_EDK2_PATH in env to find OVMF files for virtual machines, #946184 - newenvd - 90incus <<- _EOF_ - INCUS_EDK2_PATH=${EPREFIX}/usr/share/edk2-ovmf - _EOF_ -} - -pkg_postinst() { - elog - elog "Please see" - elog " https://wiki.gentoo.org/wiki/Incus" - elog " https://wiki.gentoo.org/wiki/Incus#Migrating_from_LXD" - elog - optfeature "btrfs storage backend" sys-fs/btrfs-progs - optfeature "support for ACME certificate issuance" app-crypt/lego - optfeature "ipv6 support" net-dns/dnsmasq[ipv6] - optfeature "full incus-migrate support" net-misc/rsync - optfeature "lvm2 storage backend" sys-fs/lvm2 - optfeature "zfs storage backend" sys-fs/zfs - elog - elog "Be sure to add your local user to the incus group." - elog -} diff --git a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.17.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.0.5-r1.ebuild similarity index 86% rename from sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.17.ebuild rename to sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.0.5-r1.ebuild index 2e839535a14..dedc3b33981 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.17.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.0.5-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -11,8 +11,8 @@ SRC_URI="https://linuxcontainers.org/downloads/incus/${P}.tar.xz verify-sig? ( https://linuxcontainers.org/downloads/incus/${P}.tar.xz.asc )" LICENSE="Apache-2.0 BSD LGPL-3 MIT" -SLOT="0/stable" -KEYWORDS="~amd64 ~arm64" +SLOT="0/lts" +KEYWORDS="amd64 ~arm64" IUSE="apparmor fuidshift nls qemu" DEPEND="acct-group/incus @@ -20,7 +20,7 @@ DEPEND="acct-group/incus app-arch/xz-utils >=app-containers/lxc-5.0.0:=[apparmor?,seccomp(+)] dev-db/sqlite:3 - >=dev-libs/cowsql-1.15.7 + >=dev-libs/cowsql-1.15.9 dev-libs/lzo >=dev-libs/raft-0.22.1:=[lz4] >=dev-util/xdelta-3.0[lzma(+)] @@ -45,7 +45,7 @@ RDEPEND="${DEPEND} app-emulation/qemu[spice,usbredir,virtfs] sys-apps/gptfdisk )" -BDEPEND=">=dev-lang/go-1.24.7 +BDEPEND=">=dev-lang/go-1.21 nls? ( sys-devel/gettext ) verify-sig? ( sec-keys/openpgp-keys-linuxcontainers )" @@ -94,6 +94,9 @@ RESTRICT="test" GOPATH="${S}/_dist" +PATCHES=( "${FILESDIR}"/incus-CVE-2026-23953.patch + "${FILESDIR}"/incus-CVE-2026-23954.patch ) + src_unpack() { verify-sig_src_unpack go-module_src_unpack @@ -127,6 +130,15 @@ src_prepare() { src_configure() { :; } +incus_get_bindir() { + local host_arch=${1} + if [[ "${GOARCH}" != "${host_arch}" ]]; then + echo "_dist/bin/linux_${GOARCH}" + else + echo "_dist/bin" + fi +} + src_compile() { export GOPATH="${S}/_dist" export CGO_LDFLAGS_ALLOW="-Wl,-z,now" @@ -141,23 +153,24 @@ src_compile() { ego install -v -x -tags libsqlite3 "${S}"/cmd/incusd - # Needs to be built statically CGO_ENABLED=0 go install -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-migrate + local bindir=$(incus_get_bindir "$(go-env_goarch "${CBUILD}")") + # Build the VM agents, statically too if use amd64 ; then - GOARCH=amd64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.x86_64 -v \ + GOARCH=amd64 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.x86_64 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=386 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.i686 -v \ + GOARCH=386 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.i686 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=amd64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.x86_64 -v \ + GOARCH=amd64 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.x86_64 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=386 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.i686 -v \ + GOARCH=386 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.i686 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent elif use arm64 ; then - GOARCH=arm64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.aarch64 -v \ + GOARCH=arm64 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.aarch64 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=arm64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.aarch64 -v \ + GOARCH=arm64 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.aarch64 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent else echo "No VM support for this arch." @@ -175,11 +188,7 @@ src_install() { export GOPATH="${S}/_dist" export GOHOSTARCH=$(go-env_goarch "${CBUILD}") - if [[ "${GOARCH}" != "${GOHOSTARCH}" ]]; then - local bindir="_dist/bin/linux_${GOARCH}" - else - local bindir="_dist/bin" - fi + local bindir=$(incus_get_bindir "${GOHOSTARCH}") newsbin "${FILESDIR}"/incus-startup-0.4.sh incus-startup @@ -201,7 +210,7 @@ src_install() { doexe ${bindir}/incus-agent.windows.x86_64 doexe ${bindir}/incus-agent.windows.i686 elif use arm64 ; then - exeinto /usr/libexec/incus + exeinto /usr/libexec/incus/agents doexe ${bindir}/incus-agent.linux.aarch64 doexe ${bindir}/incus-agent.windows.aarch64 fi @@ -248,9 +257,9 @@ pkg_postinst() { elog optfeature "OCI container images support" app-containers/skopeo app-containers/umoci optfeature "support for ACME certificate issuance" app-crypt/lego - optfeature "btrfs storage backend" sys-fs/btrfs-progs optfeature "ipv6 support" net-dns/dnsmasq[ipv6] optfeature "full incus-migrate support" net-misc/rsync + optfeature "btrfs storage backend" sys-fs/btrfs-progs optfeature "lvm2 storage backend" sys-fs/lvm2 optfeature "zfs storage backend" sys-fs/zfs elog diff --git a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.0.5.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.0.5.ebuild index bdba579abeb..60f47827518 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.0.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.0.5.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -127,6 +127,15 @@ src_prepare() { src_configure() { :; } +incus_get_bindir() { + local host_arch=${1} + if [[ "${GOARCH}" != "${host_arch}" ]]; then + echo "_dist/bin/linux_${GOARCH}" + else + echo "_dist/bin" + fi +} + src_compile() { export GOPATH="${S}/_dist" export CGO_LDFLAGS_ALLOW="-Wl,-z,now" @@ -143,15 +152,23 @@ src_compile() { CGO_ENABLED=0 go install -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-migrate + local bindir=$(incus_get_bindir "$(go-env_goarch "${CBUILD}")") + # Build the VM agents, statically too if use amd64 ; then - GOARCH=amd64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.x86_64 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=386 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.i686 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=amd64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.x86_64 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=386 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.i686 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent + GOARCH=amd64 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.x86_64 -v \ + -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent + GOARCH=386 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.i686 -v \ + -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent + GOARCH=amd64 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.x86_64 -v \ + -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent + GOARCH=386 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.i686 -v \ + -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent elif use arm64 ; then - GOARCH=arm64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.aarch64 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=arm64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.aarch64 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent + GOARCH=arm64 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.aarch64 -v \ + -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent + GOARCH=arm64 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.aarch64 -v \ + -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent else echo "No VM support for this arch." return @@ -168,11 +185,7 @@ src_install() { export GOPATH="${S}/_dist" export GOHOSTARCH=$(go-env_goarch "${CBUILD}") - if [[ "${GOARCH}" != "${GOHOSTARCH}" ]]; then - local bindir="_dist/bin/linux_${GOARCH}" - else - local bindir="_dist/bin" - fi + local bindir=$(incus_get_bindir "${GOHOSTARCH}") newsbin "${FILESDIR}"/incus-startup-0.4.sh incus-startup @@ -194,7 +207,7 @@ src_install() { doexe ${bindir}/incus-agent.windows.x86_64 doexe ${bindir}/incus-agent.windows.i686 elif use arm64 ; then - exeinto /usr/libexec/incus + exeinto /usr/libexec/incus/agents doexe ${bindir}/incus-agent.linux.aarch64 doexe ${bindir}/incus-agent.windows.aarch64 fi diff --git a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.14-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.14-r1.ebuild deleted file mode 100644 index 2058289f5d6..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.14-r1.ebuild +++ /dev/null @@ -1,255 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit go-env go-module linux-info optfeature systemd toolchain-funcs verify-sig - -DESCRIPTION="Modern, secure and powerful system container and virtual machine manager" -HOMEPAGE="https://linuxcontainers.org/incus/introduction/ https://github.com/lxc/incus" -SRC_URI="https://linuxcontainers.org/downloads/incus/${P}.tar.xz - verify-sig? ( https://linuxcontainers.org/downloads/incus/${P}.tar.xz.asc )" - -LICENSE="Apache-2.0 BSD LGPL-3 MIT" -SLOT="0/stable" -KEYWORDS="~amd64 ~arm64" -IUSE="apparmor fuidshift nls qemu" - -DEPEND="acct-group/incus - acct-group/incus-admin - app-arch/xz-utils - >=app-containers/lxc-5.0.0:=[apparmor?,seccomp(+)] - dev-db/sqlite:3 - >=dev-libs/cowsql-1.15.7 - dev-libs/lzo - >=dev-libs/raft-0.22.1:=[lz4] - >=dev-util/xdelta-3.0[lzma(+)] - net-dns/dnsmasq[dhcp] - sys-libs/libcap - virtual/udev" -RDEPEND="${DEPEND} - || ( - net-firewall/iptables - net-firewall/nftables[json] - ) - fuidshift? ( !app-containers/lxd ) - net-firewall/ebtables - sys-apps/iproute2 - sys-fs/fuse:* - >=sys-fs/lxcfs-5.0.0 - sys-fs/squashfs-tools[lzma] - virtual/acl - apparmor? ( sec-policy/apparmor-profiles ) - qemu? ( - app-cdr/cdrtools - app-emulation/qemu[spice,usbredir,virtfs] - sys-apps/gptfdisk - )" -BDEPEND=">=dev-lang/go-1.21 - nls? ( sys-devel/gettext ) - verify-sig? ( sec-keys/openpgp-keys-linuxcontainers )" - -CONFIG_CHECK=" - ~AIO - ~CGROUPS - ~IPC_NS - ~NET_NS - ~PID_NS - - ~SECCOMP - ~USER_NS - ~UTS_NS - - ~KVM - ~MACVTAP - ~VHOST_VSOCK -" - -ERROR_AIO="CONFIG_AIO is required." -ERROR_IPC_NS="CONFIG_IPC_NS is required." -ERROR_NET_NS="CONFIG_NET_NS is required." -ERROR_PID_NS="CONFIG_PID_NS is required." -ERROR_SECCOMP="CONFIG_SECCOMP is required." -ERROR_UTS_NS="CONFIG_UTS_NS is required." - -WARNING_KVM="CONFIG_KVM and CONFIG_KVM_AMD/-INTEL is required for virtual machines." -WARNING_MACVTAP="CONFIG_MACVTAP is required for virtual machines." -WARNING_VHOST_VSOCK="CONFIG_VHOST_VSOCK is required for virtual machines." - -# Go magic. -QA_PREBUILT="/usr/bin/incus - /usr/bin/incus-agent - /usr/bin/incus-benchmark - /usr/bin/incus-migrate - /usr/bin/lxc-to-incus - /usr/sbin/fuidshift - /usr/sbin/incusd - /usr/sbin/lxd-to-incus" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/linuxcontainers.asc - -# The testsuite must be run as root. -# make: *** [Makefile:156: check] Error 1 -RESTRICT="test" - -GOPATH="${S}/_dist" - -PATCHES=( "${FILESDIR}"/incus-6.14-fix-qemu-memory-calculation-logic.patch ) - -src_unpack() { - verify-sig_src_unpack - go-module_src_unpack -} - -src_prepare() { - export GOPATH="${S}/_dist" - - default - - sed -i \ - -e "s:\./configure:./configure --prefix=/usr --libdir=${EPREFIX}/usr/lib/incus:g" \ - -e "s:make:make ${MAKEOPTS}:g" \ - Makefile || die - - sed -i \ - -e "s:/usr/share/OVMF:/usr/share/edk2/OvmfX64:g" \ - -e "s:OVMF_VARS.ms.fd:OVMF_VARS.fd:g" \ - internal/server/instance/drivers/edk2/driver_edk2.go || die "Failed to fix hardcoded ovmf paths." - - cp "${FILESDIR}"/incus-0.4.service "${T}"/incus.service || die - if use apparmor; then - sed -i \ - '/^EnvironmentFile=.*/a ExecStartPre=\/usr\/libexec\/lxc\/lxc-apparmor-load' \ - "${T}"/incus.service || die - fi - - # Disable -Werror's from go modules. - find "${S}" -name "cgo.go" -exec sed -i "s/ -Werror / /g" {} + || die -} - -src_configure() { :; } - -src_compile() { - export GOPATH="${S}/_dist" - export CGO_LDFLAGS_ALLOW="-Wl,-z,now" - - for k in incus-benchmark incus-simplestreams incus-user incus lxc-to-incus lxd-to-incus ; do - ego install -v -x "${S}/cmd/${k}" - done - - if use fuidshift ; then - ego install -v -x "${S}/cmd/fuidshift" - fi - - ego install -v -x -tags libsqlite3 "${S}"/cmd/incusd - - # Needs to be built statically - CGO_ENABLED=0 go install -v -tags netgo "${S}"/cmd/incus-migrate - - # Build the VM agents, statically too - # 32-bit agents couldn't be built with the settings below, will need to investigate later - maybe - if use amd64 ; then - GOARCH=amd64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.x86_64 -v -tags agent,netgo "${S}"/cmd/incus-agent - # GOARCH=386 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.i686 -v -tags agent,netgo "${S}"/cmd/incus-agent - GOARCH=amd64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.x86_64 -v -tags agent,netgo "${S}"/cmd/incus-agent - # GOARCH=386 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.i686 -v -tags agent,netgo "${S}"/cmd/incus-agent - elif use arm64 ; then - GOARCH=arm64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.aarch64 -v -tags agent,netgo "${S}"/cmd/incus-agent - GOARCH=arm64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.aarch64 -v -tags agent,netgo "${S}"/cmd/incus-agent - else - echo "No VM support for this arch." - return - fi - - use nls && emake build-mo -} - -src_test() { - emake check -} - -src_install() { - export GOPATH="${S}/_dist" - - export GOHOSTARCH=$(go-env_goarch "${CBUILD}") - if [[ "${GOARCH}" != "${GOHOSTARCH}" ]]; then - local bindir="_dist/bin/linux_${GOARCH}" - else - local bindir="_dist/bin" - fi - - newsbin "${FILESDIR}"/incus-startup-0.4.sh incus-startup - - # Admin tools - for l in incusd incus-user lxd-to-incus ; do - dosbin "${bindir}/${l}" - done - - # User tools - for m in incus-benchmark incus-migrate incus-simplestreams incus lxc-to-incus ; do - dobin "${bindir}/${m}" - done - - # VM Agents - if use amd64 ; then - dobin ${bindir}/incus-agent.linux.x86_64 - # dobin ${bindir}/incus-agent.linux.i686 - dobin ${bindir}/incus-agent.windows.x86_64 - # dobin ${bindir}/incus-agent.windows.i686 - elif use arm64 ; then - dobin ${bindir}/incus-agent.linux.aarch64 - dobin ${bindir}/incus-agent.windows.aarch64 - fi - - # fuidshift, should be moved under admin tools at some point - if use fuidshift ; then - dosbin ${bindir}/fuidshift - fi - - newconfd "${FILESDIR}"/incus-6.0.confd incus - newinitd "${FILESDIR}"/incus-6.0.initd incus - newinitd "${FILESDIR}"/incus-user-0.4.initd incus-user - - systemd_dounit "${T}"/incus.service - systemd_newunit "${FILESDIR}"/incus-0.4.socket incus.socket - systemd_newunit "${FILESDIR}"/incus-startup-0.4.service incus-startup.service - systemd_newunit "${FILESDIR}"/incus-user-0.4.service incus-user.service - systemd_newunit "${FILESDIR}"/incus-user-0.4.socket incus-user.socket - - if ! tc-is-cross-compiler; then - # Generate and install shell completion files. - mkdir -p "${D}"/usr/share/{bash-completion/completions/,fish/vendor_completions.d/,zsh/site-functions/} || die - "${bindir}"/incus completion bash > "${D}"/usr/share/bash-completion/completions/incus || die - "${bindir}"/incus completion fish > "${D}"/usr/share/fish/vendor_completions.d/incus.fish || die - "${bindir}"/incus completion zsh > "${D}"/usr/share/zsh/site-functions/_incus || die - else - ewarn "Shell completion files not installed! Install them manually with incus completion --help" - fi - - dodoc AUTHORS - dodoc -r doc/* - use nls && domo po/*.mo - - # Incus needs INCUS_EDK2_PATH in env to find OVMF files for virtual machines, #946184 - newenvd - 90incus <<- _EOF_ - INCUS_EDK2_PATH=${EPREFIX}/usr/share/edk2-ovmf - _EOF_ -} - -pkg_postinst() { - elog - elog "Please see" - elog " https://wiki.gentoo.org/wiki/Incus" - elog " https://wiki.gentoo.org/wiki/Incus#Migrating_from_LXD" - elog - optfeature "OCI container images support" app-containers/skopeo app-containers/umoci - optfeature "support for ACME certificate issuance" app-crypt/lego - optfeature "btrfs storage backend" sys-fs/btrfs-progs - optfeature "ipv6 support" net-dns/dnsmasq[ipv6] - optfeature "full incus-migrate support" net-misc/rsync - optfeature "lvm2 storage backend" sys-fs/lvm2 - optfeature "zfs storage backend" sys-fs/zfs - elog - elog "Be sure to add your local user to the incus group." - elog -} diff --git a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.14-r2.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.14-r2.ebuild deleted file mode 100644 index d7882780e15..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.14-r2.ebuild +++ /dev/null @@ -1,254 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit go-env go-module linux-info optfeature systemd toolchain-funcs verify-sig - -DESCRIPTION="Modern, secure and powerful system container and virtual machine manager" -HOMEPAGE="https://linuxcontainers.org/incus/introduction/ https://github.com/lxc/incus" -SRC_URI="https://linuxcontainers.org/downloads/incus/${P}.tar.xz - verify-sig? ( https://linuxcontainers.org/downloads/incus/${P}.tar.xz.asc )" - -LICENSE="Apache-2.0 BSD LGPL-3 MIT" -SLOT="0/stable" -KEYWORDS="~amd64 ~arm64" -IUSE="apparmor fuidshift nls qemu" - -DEPEND="acct-group/incus - acct-group/incus-admin - app-arch/xz-utils - >=app-containers/lxc-5.0.0:=[apparmor?,seccomp(+)] - dev-db/sqlite:3 - >=dev-libs/cowsql-1.15.7 - dev-libs/lzo - >=dev-libs/raft-0.22.1:=[lz4] - >=dev-util/xdelta-3.0[lzma(+)] - net-dns/dnsmasq[dhcp] - sys-libs/libcap - virtual/udev" -RDEPEND="${DEPEND} - || ( - net-firewall/iptables - net-firewall/nftables[json] - ) - fuidshift? ( !app-containers/lxd ) - net-firewall/ebtables - sys-apps/iproute2 - sys-fs/fuse:* - >=sys-fs/lxcfs-5.0.0 - sys-fs/squashfs-tools[lzma] - virtual/acl - apparmor? ( sec-policy/apparmor-profiles ) - qemu? ( - app-cdr/cdrtools - app-emulation/qemu[spice,usbredir,virtfs] - sys-apps/gptfdisk - )" -BDEPEND=">=dev-lang/go-1.21 - nls? ( sys-devel/gettext ) - verify-sig? ( sec-keys/openpgp-keys-linuxcontainers )" - -CONFIG_CHECK=" - ~AIO - ~CGROUPS - ~IPC_NS - ~NET_NS - ~PID_NS - - ~SECCOMP - ~USER_NS - ~UTS_NS - - ~KVM - ~MACVTAP - ~VHOST_VSOCK -" - -ERROR_AIO="CONFIG_AIO is required." -ERROR_IPC_NS="CONFIG_IPC_NS is required." -ERROR_NET_NS="CONFIG_NET_NS is required." -ERROR_PID_NS="CONFIG_PID_NS is required." -ERROR_SECCOMP="CONFIG_SECCOMP is required." -ERROR_UTS_NS="CONFIG_UTS_NS is required." - -WARNING_KVM="CONFIG_KVM and CONFIG_KVM_AMD/-INTEL is required for virtual machines." -WARNING_MACVTAP="CONFIG_MACVTAP is required for virtual machines." -WARNING_VHOST_VSOCK="CONFIG_VHOST_VSOCK is required for virtual machines." - -# Go magic. -QA_PREBUILT="/usr/bin/incus - /usr/bin/incus-agent - /usr/bin/incus-benchmark - /usr/bin/incus-migrate - /usr/bin/lxc-to-incus - /usr/sbin/fuidshift - /usr/sbin/incusd - /usr/sbin/lxd-to-incus" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/linuxcontainers.asc - -# The testsuite must be run as root. -# make: *** [Makefile:156: check] Error 1 -RESTRICT="test" - -GOPATH="${S}/_dist" - -PATCHES=( "${FILESDIR}"/incus-6.14-fix-qemu-memory-calculation-logic.patch ) - -src_unpack() { - verify-sig_src_unpack - go-module_src_unpack -} - -src_prepare() { - export GOPATH="${S}/_dist" - - default - - sed -i \ - -e "s:\./configure:./configure --prefix=/usr --libdir=${EPREFIX}/usr/lib/incus:g" \ - -e "s:make:make ${MAKEOPTS}:g" \ - Makefile || die - - sed -i \ - -e "s:/usr/share/OVMF:/usr/share/edk2/OvmfX64:g" \ - -e "s:OVMF_VARS.ms.fd:OVMF_VARS.fd:g" \ - internal/server/instance/drivers/edk2/driver_edk2.go || die "Failed to fix hardcoded ovmf paths." - - cp "${FILESDIR}"/incus-0.4.service "${T}"/incus.service || die - if use apparmor; then - sed -i \ - '/^EnvironmentFile=.*/a ExecStartPre=\/usr\/libexec\/lxc\/lxc-apparmor-load' \ - "${T}"/incus.service || die - fi - - # Disable -Werror's from go modules. - find "${S}" -name "cgo.go" -exec sed -i "s/ -Werror / /g" {} + || die -} - -src_configure() { :; } - -src_compile() { - export GOPATH="${S}/_dist" - export CGO_LDFLAGS_ALLOW="-Wl,-z,now" - - for k in incus-benchmark incus-simplestreams incus-user incus lxc-to-incus lxd-to-incus ; do - ego install -v -x "${S}/cmd/${k}" - done - - if use fuidshift ; then - ego install -v -x "${S}/cmd/fuidshift" - fi - - ego install -v -x -tags libsqlite3 "${S}"/cmd/incusd - - # Needs to be built statically - CGO_ENABLED=0 go install -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-migrate - - # Build the VM agents, statically too - if use amd64 ; then - GOARCH=amd64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.x86_64 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=386 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.i686 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=amd64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.x86_64 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=386 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.i686 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - elif use arm64 ; then - GOARCH=arm64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.aarch64 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=arm64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.aarch64 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - else - echo "No VM support for this arch." - return - fi - - use nls && emake build-mo -} - -src_test() { - emake check -} - -src_install() { - export GOPATH="${S}/_dist" - - export GOHOSTARCH=$(go-env_goarch "${CBUILD}") - if [[ "${GOARCH}" != "${GOHOSTARCH}" ]]; then - local bindir="_dist/bin/linux_${GOARCH}" - else - local bindir="_dist/bin" - fi - - newsbin "${FILESDIR}"/incus-startup-0.4.sh incus-startup - - # Admin tools - for l in incusd incus-user lxd-to-incus ; do - dosbin "${bindir}/${l}" - done - - # User tools - for m in incus-benchmark incus-migrate incus-simplestreams incus lxc-to-incus ; do - dobin "${bindir}/${m}" - done - - # VM Agents - if use amd64 ; then - dobin ${bindir}/incus-agent.linux.x86_64 - dobin ${bindir}/incus-agent.linux.i686 - dobin ${bindir}/incus-agent.windows.x86_64 - dobin ${bindir}/incus-agent.windows.i686 - elif use arm64 ; then - dobin ${bindir}/incus-agent.linux.aarch64 - dobin ${bindir}/incus-agent.windows.aarch64 - fi - - # fuidshift, should be moved under admin tools at some point - if use fuidshift ; then - dosbin ${bindir}/fuidshift - fi - - newconfd "${FILESDIR}"/incus-6.0.confd incus - newinitd "${FILESDIR}"/incus-6.0.initd incus - newinitd "${FILESDIR}"/incus-user-0.4.initd incus-user - - systemd_dounit "${T}"/incus.service - systemd_newunit "${FILESDIR}"/incus-0.4.socket incus.socket - systemd_newunit "${FILESDIR}"/incus-startup-0.4.service incus-startup.service - systemd_newunit "${FILESDIR}"/incus-user-0.4.service incus-user.service - systemd_newunit "${FILESDIR}"/incus-user-0.4.socket incus-user.socket - - if ! tc-is-cross-compiler; then - # Generate and install shell completion files. - mkdir -p "${D}"/usr/share/{bash-completion/completions/,fish/vendor_completions.d/,zsh/site-functions/} || die - "${bindir}"/incus completion bash > "${D}"/usr/share/bash-completion/completions/incus || die - "${bindir}"/incus completion fish > "${D}"/usr/share/fish/vendor_completions.d/incus.fish || die - "${bindir}"/incus completion zsh > "${D}"/usr/share/zsh/site-functions/_incus || die - else - ewarn "Shell completion files not installed! Install them manually with incus completion --help" - fi - - dodoc AUTHORS - dodoc -r doc/* - use nls && domo po/*.mo - - # Incus needs INCUS_EDK2_PATH in env to find OVMF files for virtual machines, #946184 - newenvd - 90incus <<- _EOF_ - INCUS_EDK2_PATH=${EPREFIX}/usr/share/edk2-ovmf - _EOF_ -} - -pkg_postinst() { - elog - elog "Please see" - elog " https://wiki.gentoo.org/wiki/Incus" - elog " https://wiki.gentoo.org/wiki/Incus#Migrating_from_LXD" - elog - optfeature "OCI container images support" app-containers/skopeo app-containers/umoci - optfeature "support for ACME certificate issuance" app-crypt/lego - optfeature "btrfs storage backend" sys-fs/btrfs-progs - optfeature "ipv6 support" net-dns/dnsmasq[ipv6] - optfeature "full incus-migrate support" net-misc/rsync - optfeature "lvm2 storage backend" sys-fs/lvm2 - optfeature "zfs storage backend" sys-fs/zfs - elog - elog "Be sure to add your local user to the incus group." - elog -} diff --git a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.14-r4.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.14-r4.ebuild deleted file mode 100644 index 1d5e859cd2f..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.14-r4.ebuild +++ /dev/null @@ -1,255 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit go-env go-module linux-info optfeature systemd toolchain-funcs verify-sig - -DESCRIPTION="Modern, secure and powerful system container and virtual machine manager" -HOMEPAGE="https://linuxcontainers.org/incus/introduction/ https://github.com/lxc/incus" -SRC_URI="https://linuxcontainers.org/downloads/incus/${P}.tar.xz - verify-sig? ( https://linuxcontainers.org/downloads/incus/${P}.tar.xz.asc )" - -LICENSE="Apache-2.0 BSD LGPL-3 MIT" -SLOT="0/stable" -KEYWORDS="~amd64 ~arm64" -IUSE="apparmor fuidshift nls qemu" - -DEPEND="acct-group/incus - acct-group/incus-admin - app-arch/xz-utils - >=app-containers/lxc-5.0.0:=[apparmor?,seccomp(+)] - dev-db/sqlite:3 - >=dev-libs/cowsql-1.15.7 - dev-libs/lzo - >=dev-libs/raft-0.22.1:=[lz4] - >=dev-util/xdelta-3.0[lzma(+)] - net-dns/dnsmasq[dhcp] - sys-libs/libcap - virtual/udev" -RDEPEND="${DEPEND} - || ( - net-firewall/iptables - net-firewall/nftables[json] - ) - fuidshift? ( !app-containers/lxd ) - net-firewall/ebtables - sys-apps/iproute2 - sys-fs/fuse:* - >=sys-fs/lxcfs-5.0.0 - sys-fs/squashfs-tools[lzma] - virtual/acl - apparmor? ( sec-policy/apparmor-profiles ) - qemu? ( - app-cdr/cdrtools - app-emulation/qemu[spice,usbredir,virtfs] - sys-apps/gptfdisk - )" -BDEPEND=">=dev-lang/go-1.21 - nls? ( sys-devel/gettext ) - verify-sig? ( sec-keys/openpgp-keys-linuxcontainers )" - -CONFIG_CHECK=" - ~AIO - ~CGROUPS - ~IPC_NS - ~NET_NS - ~PID_NS - - ~SECCOMP - ~USER_NS - ~UTS_NS - - ~KVM - ~MACVTAP - ~VHOST_VSOCK -" - -ERROR_AIO="CONFIG_AIO is required." -ERROR_IPC_NS="CONFIG_IPC_NS is required." -ERROR_NET_NS="CONFIG_NET_NS is required." -ERROR_PID_NS="CONFIG_PID_NS is required." -ERROR_SECCOMP="CONFIG_SECCOMP is required." -ERROR_UTS_NS="CONFIG_UTS_NS is required." - -WARNING_KVM="CONFIG_KVM and CONFIG_KVM_AMD/-INTEL is required for virtual machines." -WARNING_MACVTAP="CONFIG_MACVTAP is required for virtual machines." -WARNING_VHOST_VSOCK="CONFIG_VHOST_VSOCK is required for virtual machines." - -# Go magic. -QA_PREBUILT="/usr/bin/incus - /usr/bin/incus-agent - /usr/bin/incus-benchmark - /usr/bin/incus-migrate - /usr/bin/lxc-to-incus - /usr/sbin/fuidshift - /usr/sbin/incusd - /usr/sbin/lxd-to-incus" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/linuxcontainers.asc - -# The testsuite must be run as root. -# make: *** [Makefile:156: check] Error 1 -RESTRICT="test" - -GOPATH="${S}/_dist" - -PATCHES=( "${FILESDIR}"/incus-6.14-fix-qemu-memory-calculation-logic.patch ) - -src_unpack() { - verify-sig_src_unpack - go-module_src_unpack -} - -src_prepare() { - export GOPATH="${S}/_dist" - - default - - sed -i \ - -e "s:\./configure:./configure --prefix=/usr --libdir=${EPREFIX}/usr/lib/incus:g" \ - -e "s:make:make ${MAKEOPTS}:g" \ - Makefile || die - - sed -i \ - -e "s:/usr/share/OVMF:/usr/share/edk2/OvmfX64:g" \ - -e "s:OVMF_VARS.ms.fd:OVMF_VARS.fd:g" \ - internal/server/instance/drivers/edk2/driver_edk2.go || die "Failed to fix hardcoded ovmf paths." - - cp "${FILESDIR}"/incus-6.14-r1.service "${T}"/incus.service || die - if use apparmor; then - sed -i \ - '/^EnvironmentFile=.*/a ExecStartPre=\/usr\/libexec\/lxc\/lxc-apparmor-load' \ - "${T}"/incus.service || die - fi - - # Disable -Werror's from go modules. - find "${S}" -name "cgo.go" -exec sed -i "s/ -Werror / /g" {} + || die -} - -src_configure() { :; } - -src_compile() { - export GOPATH="${S}/_dist" - export CGO_LDFLAGS_ALLOW="-Wl,-z,now" - - for k in incus-benchmark incus-simplestreams incus-user incus lxc-to-incus lxd-to-incus ; do - ego install -v -x "${S}/cmd/${k}" - done - - if use fuidshift ; then - ego install -v -x "${S}/cmd/fuidshift" - fi - - ego install -v -x -tags libsqlite3 "${S}"/cmd/incusd - - # Needs to be built statically - CGO_ENABLED=0 go install -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-migrate - - # Build the VM agents, statically too - if use amd64 ; then - GOARCH=amd64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.x86_64 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=386 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.i686 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=amd64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.x86_64 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=386 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.i686 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - elif use arm64 ; then - GOARCH=arm64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.aarch64 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=arm64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.aarch64 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - else - echo "No VM support for this arch." - return - fi - - use nls && emake build-mo -} - -src_test() { - emake check -} - -src_install() { - export GOPATH="${S}/_dist" - - export GOHOSTARCH=$(go-env_goarch "${CBUILD}") - if [[ "${GOARCH}" != "${GOHOSTARCH}" ]]; then - local bindir="_dist/bin/linux_${GOARCH}" - else - local bindir="_dist/bin" - fi - - newsbin "${FILESDIR}"/incus-startup-0.4.sh incus-startup - - # Admin tools - for l in incusd incus-user lxd-to-incus ; do - dosbin "${bindir}/${l}" - done - - # User tools - for m in incus-benchmark incus-migrate incus-simplestreams incus lxc-to-incus ; do - dobin "${bindir}/${m}" - done - - # VM Agents - if use amd64 ; then - exeinto /usr/libexec/incus/agents - doexe ${bindir}/incus-agent.linux.x86_64 - doexe ${bindir}/incus-agent.linux.i686 - doexe ${bindir}/incus-agent.windows.x86_64 - doexe ${bindir}/incus-agent.windows.i686 - elif use arm64 ; then - exeinto /usr/libexec/incus - doexe ${bindir}/incus-agent.linux.aarch64 - doexe ${bindir}/incus-agent.windows.aarch64 - fi - - # fuidshift, should be moved under admin tools at some point - if use fuidshift ; then - dosbin ${bindir}/fuidshift - fi - - newconfd "${FILESDIR}"/incus-6.0.confd incus - newinitd "${FILESDIR}"/incus-6.0.initd incus - newinitd "${FILESDIR}"/incus-user-0.4.initd incus-user - - systemd_dounit "${T}"/incus.service - systemd_newunit "${FILESDIR}"/incus-0.4.socket incus.socket - systemd_newunit "${FILESDIR}"/incus-startup-0.4.service incus-startup.service - systemd_newunit "${FILESDIR}"/incus-user-0.4.service incus-user.service - systemd_newunit "${FILESDIR}"/incus-user-0.4.socket incus-user.socket - - if ! tc-is-cross-compiler; then - # Generate and install shell completion files. - mkdir -p "${D}"/usr/share/{bash-completion/completions/,fish/vendor_completions.d/,zsh/site-functions/} || die - "${bindir}"/incus completion bash > "${D}"/usr/share/bash-completion/completions/incus || die - "${bindir}"/incus completion fish > "${D}"/usr/share/fish/vendor_completions.d/incus.fish || die - "${bindir}"/incus completion zsh > "${D}"/usr/share/zsh/site-functions/_incus || die - else - ewarn "Shell completion files not installed! Install them manually with incus completion --help" - fi - - dodoc AUTHORS - dodoc -r doc/* - use nls && domo po/*.mo - - # Incus needs INCUS_EDK2_PATH in env to find OVMF files for virtual machines, #946184, - # and INCUS_AGENT_PATH to find multi-setup agents for VMs, #959878. - newenvd "${FILESDIR}"/90incus.envd 90incus -} - -pkg_postinst() { - elog - elog "Please see" - elog " https://wiki.gentoo.org/wiki/Incus" - elog " https://wiki.gentoo.org/wiki/Incus#Migrating_from_LXD" - elog - optfeature "OCI container images support" app-containers/skopeo app-containers/umoci - optfeature "support for ACME certificate issuance" app-crypt/lego - optfeature "btrfs storage backend" sys-fs/btrfs-progs - optfeature "ipv6 support" net-dns/dnsmasq[ipv6] - optfeature "full incus-migrate support" net-misc/rsync - optfeature "lvm2 storage backend" sys-fs/lvm2 - optfeature "zfs storage backend" sys-fs/zfs - elog - elog "Be sure to add your local user to the incus group." - elog -} diff --git a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.15.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.15.ebuild deleted file mode 100644 index 29786771bf1..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.15.ebuild +++ /dev/null @@ -1,253 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit go-env go-module linux-info optfeature systemd toolchain-funcs verify-sig - -DESCRIPTION="Modern, secure and powerful system container and virtual machine manager" -HOMEPAGE="https://linuxcontainers.org/incus/introduction/ https://github.com/lxc/incus" -SRC_URI="https://linuxcontainers.org/downloads/incus/${P}.tar.xz - verify-sig? ( https://linuxcontainers.org/downloads/incus/${P}.tar.xz.asc )" - -LICENSE="Apache-2.0 BSD LGPL-3 MIT" -SLOT="0/stable" -KEYWORDS="~amd64 ~arm64" -IUSE="apparmor fuidshift nls qemu" - -DEPEND="acct-group/incus - acct-group/incus-admin - app-arch/xz-utils - >=app-containers/lxc-5.0.0:=[apparmor?,seccomp(+)] - dev-db/sqlite:3 - >=dev-libs/cowsql-1.15.7 - dev-libs/lzo - >=dev-libs/raft-0.22.1:=[lz4] - >=dev-util/xdelta-3.0[lzma(+)] - net-dns/dnsmasq[dhcp] - sys-libs/libcap - virtual/udev" -RDEPEND="${DEPEND} - || ( - net-firewall/iptables - net-firewall/nftables[json] - ) - fuidshift? ( !app-containers/lxd ) - net-firewall/ebtables - sys-apps/iproute2 - sys-fs/fuse:* - >=sys-fs/lxcfs-5.0.0 - sys-fs/squashfs-tools[lzma] - virtual/acl - apparmor? ( sec-policy/apparmor-profiles ) - qemu? ( - app-cdr/cdrtools - app-emulation/qemu[spice,usbredir,virtfs] - sys-apps/gptfdisk - )" -BDEPEND=">=dev-lang/go-1.21 - nls? ( sys-devel/gettext ) - verify-sig? ( sec-keys/openpgp-keys-linuxcontainers )" - -CONFIG_CHECK=" - ~AIO - ~CGROUPS - ~IPC_NS - ~NET_NS - ~PID_NS - - ~SECCOMP - ~USER_NS - ~UTS_NS - - ~KVM - ~MACVTAP - ~VHOST_VSOCK -" - -ERROR_AIO="CONFIG_AIO is required." -ERROR_IPC_NS="CONFIG_IPC_NS is required." -ERROR_NET_NS="CONFIG_NET_NS is required." -ERROR_PID_NS="CONFIG_PID_NS is required." -ERROR_SECCOMP="CONFIG_SECCOMP is required." -ERROR_UTS_NS="CONFIG_UTS_NS is required." - -WARNING_KVM="CONFIG_KVM and CONFIG_KVM_AMD/-INTEL is required for virtual machines." -WARNING_MACVTAP="CONFIG_MACVTAP is required for virtual machines." -WARNING_VHOST_VSOCK="CONFIG_VHOST_VSOCK is required for virtual machines." - -# Go magic. -QA_PREBUILT="/usr/bin/incus - /usr/bin/incus-agent - /usr/bin/incus-benchmark - /usr/bin/incus-migrate - /usr/bin/lxc-to-incus - /usr/sbin/fuidshift - /usr/sbin/incusd - /usr/sbin/lxd-to-incus" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/linuxcontainers.asc - -# The testsuite must be run as root. -# make: *** [Makefile:156: check] Error 1 -RESTRICT="test" - -GOPATH="${S}/_dist" - -src_unpack() { - verify-sig_src_unpack - go-module_src_unpack -} - -src_prepare() { - export GOPATH="${S}/_dist" - - default - - sed -i \ - -e "s:\./configure:./configure --prefix=/usr --libdir=${EPREFIX}/usr/lib/incus:g" \ - -e "s:make:make ${MAKEOPTS}:g" \ - Makefile || die - - sed -i \ - -e "s:/usr/share/OVMF:/usr/share/edk2/OvmfX64:g" \ - -e "s:OVMF_VARS.ms.fd:OVMF_VARS.fd:g" \ - internal/server/instance/drivers/edk2/driver_edk2.go || die "Failed to fix hardcoded ovmf paths." - - cp "${FILESDIR}"/incus-6.14-r1.service "${T}"/incus.service || die - if use apparmor; then - sed -i \ - '/^EnvironmentFile=.*/a ExecStartPre=\/usr\/libexec\/lxc\/lxc-apparmor-load' \ - "${T}"/incus.service || die - fi - - # Disable -Werror's from go modules. - find "${S}" -name "cgo.go" -exec sed -i "s/ -Werror / /g" {} + || die -} - -src_configure() { :; } - -src_compile() { - export GOPATH="${S}/_dist" - export CGO_LDFLAGS_ALLOW="-Wl,-z,now" - - for k in incus-benchmark incus-simplestreams incus-user incus lxc-to-incus lxd-to-incus ; do - ego install -v -x "${S}/cmd/${k}" - done - - if use fuidshift ; then - ego install -v -x "${S}/cmd/fuidshift" - fi - - ego install -v -x -tags libsqlite3 "${S}"/cmd/incusd - - # Needs to be built statically - CGO_ENABLED=0 go install -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-migrate - - # Build the VM agents, statically too - if use amd64 ; then - GOARCH=amd64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.x86_64 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=386 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.i686 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=amd64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.x86_64 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=386 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.i686 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - elif use arm64 ; then - GOARCH=arm64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.aarch64 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=arm64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.aarch64 -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - else - echo "No VM support for this arch." - return - fi - - use nls && emake build-mo -} - -src_test() { - emake check -} - -src_install() { - export GOPATH="${S}/_dist" - - export GOHOSTARCH=$(go-env_goarch "${CBUILD}") - if [[ "${GOARCH}" != "${GOHOSTARCH}" ]]; then - local bindir="_dist/bin/linux_${GOARCH}" - else - local bindir="_dist/bin" - fi - - newsbin "${FILESDIR}"/incus-startup-0.4.sh incus-startup - - # Admin tools - for l in incusd incus-user lxd-to-incus ; do - dosbin "${bindir}/${l}" - done - - # User tools - for m in incus-benchmark incus-migrate incus-simplestreams incus lxc-to-incus ; do - dobin "${bindir}/${m}" - done - - # VM Agents - if use amd64 ; then - exeinto /usr/libexec/incus/agents - doexe ${bindir}/incus-agent.linux.x86_64 - doexe ${bindir}/incus-agent.linux.i686 - doexe ${bindir}/incus-agent.windows.x86_64 - doexe ${bindir}/incus-agent.windows.i686 - elif use arm64 ; then - exeinto /usr/libexec/incus - doexe ${bindir}/incus-agent.linux.aarch64 - doexe ${bindir}/incus-agent.windows.aarch64 - fi - - # fuidshift, should be moved under admin tools at some point - if use fuidshift ; then - dosbin ${bindir}/fuidshift - fi - - newconfd "${FILESDIR}"/incus-6.0.confd incus - newinitd "${FILESDIR}"/incus-6.0.initd incus - newinitd "${FILESDIR}"/incus-user-0.4.initd incus-user - - systemd_dounit "${T}"/incus.service - systemd_newunit "${FILESDIR}"/incus-0.4.socket incus.socket - systemd_newunit "${FILESDIR}"/incus-startup-0.4.service incus-startup.service - systemd_newunit "${FILESDIR}"/incus-user-0.4.service incus-user.service - systemd_newunit "${FILESDIR}"/incus-user-0.4.socket incus-user.socket - - if ! tc-is-cross-compiler; then - # Generate and install shell completion files. - mkdir -p "${D}"/usr/share/{bash-completion/completions/,fish/vendor_completions.d/,zsh/site-functions/} || die - "${bindir}"/incus completion bash > "${D}"/usr/share/bash-completion/completions/incus || die - "${bindir}"/incus completion fish > "${D}"/usr/share/fish/vendor_completions.d/incus.fish || die - "${bindir}"/incus completion zsh > "${D}"/usr/share/zsh/site-functions/_incus || die - else - ewarn "Shell completion files not installed! Install them manually with incus completion --help" - fi - - dodoc AUTHORS - dodoc -r doc/* - use nls && domo po/*.mo - - # Incus needs INCUS_EDK2_PATH in env to find OVMF files for virtual machines, #946184, - # and INCUS_AGENT_PATH to find multi-setup agents for VMs, #959878. - newenvd "${FILESDIR}"/90incus.envd 90incus -} - -pkg_postinst() { - elog - elog "Please see" - elog " https://wiki.gentoo.org/wiki/Incus" - elog " https://wiki.gentoo.org/wiki/Incus#Migrating_from_LXD" - elog - optfeature "OCI container images support" app-containers/skopeo app-containers/umoci - optfeature "support for ACME certificate issuance" app-crypt/lego - optfeature "btrfs storage backend" sys-fs/btrfs-progs - optfeature "ipv6 support" net-dns/dnsmasq[ipv6] - optfeature "full incus-migrate support" net-misc/rsync - optfeature "lvm2 storage backend" sys-fs/lvm2 - optfeature "zfs storage backend" sys-fs/zfs - elog - elog "Be sure to add your local user to the incus group." - elog -} diff --git a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.19.1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.21.ebuild similarity index 89% rename from sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.19.1.ebuild rename to sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.21.ebuild index e7aa0d1d14f..3e097c14019 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.19.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.21.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -104,6 +104,7 @@ src_unpack() { if [[ "${PV}" == 9999* ]]; then git-r3_src_unpack go-module_live_vendor + go-env_set_compile_environment else verify-sig_src_unpack go-module_src_unpack @@ -138,6 +139,15 @@ src_prepare() { src_configure() { :; } +incus_get_bindir() { + local host_arch=${1} + if [[ "${GOARCH}" != "${host_arch}" ]]; then + echo "_dist/bin/linux_${GOARCH}" + else + echo "_dist/bin" + fi +} + src_compile() { export GOPATH="${S}/_dist" export CGO_LDFLAGS_ALLOW="-Wl,-z,now" @@ -155,20 +165,22 @@ src_compile() { # Needs to be built statically CGO_ENABLED=0 go install -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-migrate + local bindir=$(incus_get_bindir "$(go-env_goarch "${CBUILD}")") + # Build the VM agents, statically too if use amd64 ; then - GOARCH=amd64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.x86_64 -v \ + GOARCH=amd64 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.x86_64 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=386 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.i686 -v \ + GOARCH=386 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.i686 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=amd64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.x86_64 -v \ + GOARCH=amd64 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.x86_64 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=386 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.i686 -v \ + GOARCH=386 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.i686 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent elif use arm64 ; then - GOARCH=arm64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.aarch64 -v \ + GOARCH=arm64 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.aarch64 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=arm64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.aarch64 -v \ + GOARCH=arm64 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.aarch64 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent else echo "No VM support for this arch." @@ -186,11 +198,7 @@ src_install() { export GOPATH="${S}/_dist" export GOHOSTARCH=$(go-env_goarch "${CBUILD}") - if [[ -n "${GOARCH}" && "${GOARCH}" != "${GOHOSTARCH}" ]]; then - local bindir="_dist/bin/linux_${GOARCH}" - else - local bindir="_dist/bin" - fi + local bindir=$(incus_get_bindir "${GOHOSTARCH}") newsbin "${FILESDIR}"/incus-startup-0.4.sh incus-startup @@ -212,7 +220,7 @@ src_install() { doexe ${bindir}/incus-agent.windows.x86_64 doexe ${bindir}/incus-agent.windows.i686 elif use arm64 ; then - exeinto /usr/libexec/incus + exeinto /usr/libexec/incus/agents doexe ${bindir}/incus-agent.linux.aarch64 doexe ${bindir}/incus-agent.windows.aarch64 fi diff --git a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.18.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.22.ebuild similarity index 81% rename from sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.18.ebuild rename to sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.22.ebuild index 2e839535a14..3e097c14019 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.18.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.22.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -7,13 +7,19 @@ inherit go-env go-module linux-info optfeature systemd toolchain-funcs verify-si DESCRIPTION="Modern, secure and powerful system container and virtual machine manager" HOMEPAGE="https://linuxcontainers.org/incus/introduction/ https://github.com/lxc/incus" -SRC_URI="https://linuxcontainers.org/downloads/incus/${P}.tar.xz - verify-sig? ( https://linuxcontainers.org/downloads/incus/${P}.tar.xz.asc )" + +if [[ "${PV}" == 9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/lxc/incus.git" +else + SRC_URI="https://linuxcontainers.org/downloads/incus/${P}.tar.xz + verify-sig? ( https://linuxcontainers.org/downloads/incus/${P}.tar.xz.asc )" + KEYWORDS="~amd64 ~arm64" +fi LICENSE="Apache-2.0 BSD LGPL-3 MIT" SLOT="0/stable" -KEYWORDS="~amd64 ~arm64" -IUSE="apparmor fuidshift nls qemu" +IUSE="apparmor fuidshift nls qemu selinux" DEPEND="acct-group/incus acct-group/incus-admin @@ -95,8 +101,14 @@ RESTRICT="test" GOPATH="${S}/_dist" src_unpack() { - verify-sig_src_unpack - go-module_src_unpack + if [[ "${PV}" == 9999* ]]; then + git-r3_src_unpack + go-module_live_vendor + go-env_set_compile_environment + else + verify-sig_src_unpack + go-module_src_unpack + fi } src_prepare() { @@ -127,6 +139,15 @@ src_prepare() { src_configure() { :; } +incus_get_bindir() { + local host_arch=${1} + if [[ "${GOARCH}" != "${host_arch}" ]]; then + echo "_dist/bin/linux_${GOARCH}" + else + echo "_dist/bin" + fi +} + src_compile() { export GOPATH="${S}/_dist" export CGO_LDFLAGS_ALLOW="-Wl,-z,now" @@ -144,20 +165,22 @@ src_compile() { # Needs to be built statically CGO_ENABLED=0 go install -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-migrate + local bindir=$(incus_get_bindir "$(go-env_goarch "${CBUILD}")") + # Build the VM agents, statically too if use amd64 ; then - GOARCH=amd64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.x86_64 -v \ + GOARCH=amd64 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.x86_64 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=386 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.i686 -v \ + GOARCH=386 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.i686 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=amd64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.x86_64 -v \ + GOARCH=amd64 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.x86_64 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=386 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.i686 -v \ + GOARCH=386 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.i686 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent elif use arm64 ; then - GOARCH=arm64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.aarch64 -v \ + GOARCH=arm64 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.aarch64 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=arm64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.aarch64 -v \ + GOARCH=arm64 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.aarch64 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent else echo "No VM support for this arch." @@ -175,11 +198,7 @@ src_install() { export GOPATH="${S}/_dist" export GOHOSTARCH=$(go-env_goarch "${CBUILD}") - if [[ "${GOARCH}" != "${GOHOSTARCH}" ]]; then - local bindir="_dist/bin/linux_${GOARCH}" - else - local bindir="_dist/bin" - fi + local bindir=$(incus_get_bindir "${GOHOSTARCH}") newsbin "${FILESDIR}"/incus-startup-0.4.sh incus-startup @@ -201,7 +220,7 @@ src_install() { doexe ${bindir}/incus-agent.windows.x86_64 doexe ${bindir}/incus-agent.windows.i686 elif use arm64 ; then - exeinto /usr/libexec/incus + exeinto /usr/libexec/incus/agents doexe ${bindir}/incus-agent.linux.aarch64 doexe ${bindir}/incus-agent.windows.aarch64 fi @@ -236,8 +255,12 @@ src_install() { use nls && domo po/*.mo # Incus needs INCUS_EDK2_PATH in env to find OVMF files for virtual machines, #946184, - # and INCUS_AGENT_PATH to find multi-setup agents for VMs, #959878. + # and INCUS_AGENT_PATH to find multi-setup agents for VMs, #959878, + # and INCUS_SECURITY_SELINUX=true to enable selinux support (until its enabled by default) newenvd "${FILESDIR}"/90incus.envd 90incus + if use selinux; then + echo "INCUS_SECURITY_SELINUX=true" >> "${D}"/etc/env.d/90incus + fi } pkg_postinst() { diff --git a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-9999.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-9999.ebuild index e7aa0d1d14f..3e097c14019 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -104,6 +104,7 @@ src_unpack() { if [[ "${PV}" == 9999* ]]; then git-r3_src_unpack go-module_live_vendor + go-env_set_compile_environment else verify-sig_src_unpack go-module_src_unpack @@ -138,6 +139,15 @@ src_prepare() { src_configure() { :; } +incus_get_bindir() { + local host_arch=${1} + if [[ "${GOARCH}" != "${host_arch}" ]]; then + echo "_dist/bin/linux_${GOARCH}" + else + echo "_dist/bin" + fi +} + src_compile() { export GOPATH="${S}/_dist" export CGO_LDFLAGS_ALLOW="-Wl,-z,now" @@ -155,20 +165,22 @@ src_compile() { # Needs to be built statically CGO_ENABLED=0 go install -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-migrate + local bindir=$(incus_get_bindir "$(go-env_goarch "${CBUILD}")") + # Build the VM agents, statically too if use amd64 ; then - GOARCH=amd64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.x86_64 -v \ + GOARCH=amd64 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.x86_64 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=386 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.i686 -v \ + GOARCH=386 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.i686 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=amd64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.x86_64 -v \ + GOARCH=amd64 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.x86_64 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=386 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.i686 -v \ + GOARCH=386 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.i686 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent elif use arm64 ; then - GOARCH=arm64 CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.linux.aarch64 -v \ + GOARCH=arm64 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.aarch64 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent - GOARCH=arm64 GOOS=windows CGO_ENABLED=0 ego build -o "${S}"/_dist/bin/incus-agent.windows.aarch64 -v \ + GOARCH=arm64 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.aarch64 -v \ -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent else echo "No VM support for this arch." @@ -186,11 +198,7 @@ src_install() { export GOPATH="${S}/_dist" export GOHOSTARCH=$(go-env_goarch "${CBUILD}") - if [[ -n "${GOARCH}" && "${GOARCH}" != "${GOHOSTARCH}" ]]; then - local bindir="_dist/bin/linux_${GOARCH}" - else - local bindir="_dist/bin" - fi + local bindir=$(incus_get_bindir "${GOHOSTARCH}") newsbin "${FILESDIR}"/incus-startup-0.4.sh incus-startup @@ -212,7 +220,7 @@ src_install() { doexe ${bindir}/incus-agent.windows.x86_64 doexe ${bindir}/incus-agent.windows.i686 elif use arm64 ; then - exeinto /usr/libexec/incus + exeinto /usr/libexec/incus/agents doexe ${bindir}/incus-agent.linux.aarch64 doexe ${bindir}/incus-agent.windows.aarch64 fi From af72a2e36fed9bed135f647f9924ff421f15637a Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:28 +0000 Subject: [PATCH 015/291] app-containers/lxc: Sync with Gentoo It's from Gentoo commit 4626e45f0c88b064e96086b8233fce620a9a2da9. Signed-off-by: Flatcar Buildbot --- .../app-containers/lxc/Manifest | 2 + .../lxc-6.0.5-fix-openat2-include-typo.patch | 25 +++ .../app-containers/lxc/lxc-6.0.5.ebuild | 4 +- .../app-containers/lxc/lxc-6.0.6.ebuild | 174 ++++++++++++++++++ 4 files changed, 204 insertions(+), 1 deletion(-) create mode 100644 sdk_container/src/third_party/portage-stable/app-containers/lxc/files/lxc-6.0.5-fix-openat2-include-typo.patch create mode 100644 sdk_container/src/third_party/portage-stable/app-containers/lxc/lxc-6.0.6.ebuild diff --git a/sdk_container/src/third_party/portage-stable/app-containers/lxc/Manifest b/sdk_container/src/third_party/portage-stable/app-containers/lxc/Manifest index be6193a899d..5329e2a8498 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/lxc/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-containers/lxc/Manifest @@ -6,3 +6,5 @@ DIST lxc-6.0.4.tar.gz 964064 BLAKE2B f8911993ce333300e68fe3d817cceb49d6c18f83e5f DIST lxc-6.0.4.tar.gz.asc 833 BLAKE2B 4600373e9534515fe3ec0c41ebe5b17ee8c4e7ab125e3a211ed300f0fdd79a04a9c183b903e1b6600d7b7ce4d9f2e66451326c473beb02b4a83a7200764e56e7 SHA512 2efe6e06b33a34fdf7ba1393b5e07aa1a18f189b2e43673b4f9bbdc7cf0fcb9ad47b99ebbd08e910e139047d54b1104f098cbbef586796767b9dd1a4a99ca748 DIST lxc-6.0.5.tar.gz 958966 BLAKE2B 74ee775f8a23467049f38f0973a24eb12b34b7c758549294342470b7b6b8e95eaef118c493f62b6394c435a5c86389fde4454199107e90743dd40d3a5bf373fd SHA512 3674397e789ed9eda7e37d4e22c42ab02687c0ab6a12f6c234a3393bdfb3f048aa0ded419c5c2f435d653d3dd70f47ae19d28b7a46838f12004d00b05c54a26d DIST lxc-6.0.5.tar.gz.asc 833 BLAKE2B ac1480c0b5588b290ab1ec81bf7bf85990df98a650832363529e9ede8afb7594bd21b58a4a79e7fe9519c381d4860d7a33f4090582612ffff7c448c77e641929 SHA512 8c28da0ebc280ae491bab815105f3c58f2c9cd742586ce86f9b1d2032724db4893811d689f7278bfc8c5570dc45ca6071e4c25b77647d762c77eca59249a15b5 +DIST lxc-6.0.6.tar.gz 963412 BLAKE2B 3bd9575f4c1a4b96ce5bea767e6a6b3c15a3021c62ebaf7421065ca55d2093ca467a8e9e86ce5d8316dab4fc9cde0c96dc1acedb73ccf167bd5c3e5484e5ceff SHA512 1d28aa749711be8a439de5e76019960d78e21bf576724bce7e8973ba4f6a3995c040cdc184e3c3a30814eb4cd2daec6851d26422c7d6d9d64ccd95add6c2eb30 +DIST lxc-6.0.6.tar.gz.asc 833 BLAKE2B 622a7c53629b3e5117bad956923824662073955ca8c6b3c6fba61b9d37c3b76fa48d55ecfd460fad4a5fe88c074264ad4c97b4193342d9c3a5fa322814a212fd SHA512 3ddaf0796e6888c15a5124141439ffa09c2d611f185cf3c8b2106eea530485a013846548bf9bd5ea9d0b69ee52aad2de9281b293a323ba2510db925c38cce98f diff --git a/sdk_container/src/third_party/portage-stable/app-containers/lxc/files/lxc-6.0.5-fix-openat2-include-typo.patch b/sdk_container/src/third_party/portage-stable/app-containers/lxc/files/lxc-6.0.5-fix-openat2-include-typo.patch new file mode 100644 index 00000000000..2903cc5de57 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-containers/lxc/files/lxc-6.0.5-fix-openat2-include-typo.patch @@ -0,0 +1,25 @@ +From 511e4db8f2a5b47cdd41eef482647492ce5b0f77 Mon Sep 17 00:00:00 2001 +From: Joonas Niilola +Date: Sun, 15 Feb 2026 17:42:39 +0200 +Subject: [PATCH] meson.build: fix openat2 include typo, fix with glibc-2.43 + +FORTIFY + +Closes: https://github.com/lxc/lxc/issues/4641 +Signed-off-by: Joonas Niilola +--- + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index eef4e6900c..df40d7516a 100644 +--- a/meson.build ++++ b/meson.build +@@ -571,7 +571,7 @@ foreach ident: [ + ['move_mount', '''#include '''], + ['openat2', '''#include + #include +- #include '''], ++ #include '''], + ['open_tree', '''#include '''], + ['personality', '''#include '''], + ['pidfd_open', '''#include diff --git a/sdk_container/src/third_party/portage-stable/app-containers/lxc/lxc-6.0.5.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/lxc/lxc-6.0.5.ebuild index 4f9dce380f0..400acf79c30 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/lxc/lxc-6.0.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/lxc/lxc-6.0.5.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -72,6 +72,8 @@ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/linuxcontainers.asc DOCS=( AUTHORS CONTRIBUTING MAINTAINERS README.md doc/FAQ.txt ) +PATCHES=( "${FILESDIR}"/lxc-6.0.5-fix-openat2-include-typo.patch ) + pkg_setup() { linux-info_pkg_setup } diff --git a/sdk_container/src/third_party/portage-stable/app-containers/lxc/lxc-6.0.6.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/lxc/lxc-6.0.6.ebuild new file mode 100644 index 00000000000..1e29cd2d9f0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-containers/lxc/lxc-6.0.6.ebuild @@ -0,0 +1,174 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit bash-completion-r1 linux-info meson optfeature systemd verify-sig + +DESCRIPTION="A userspace interface for the Linux kernel containment features" +HOMEPAGE="https://linuxcontainers.org/ https://github.com/lxc/lxc" +SRC_URI="https://linuxcontainers.org/downloads/lxc/${P}.tar.gz + verify-sig? ( https://linuxcontainers.org/downloads/lxc/${P}.tar.gz.asc )" + +LICENSE="GPL-2 LGPL-2.1 LGPL-3" # LGPL-2.1+ is listed, but it's covered by "LGPL-3" +SLOT="0/1.606" # SONAME liblxc.so.1 + ${PV//./} _if_ breaking ABI change while bumping. +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" +IUSE="apparmor +caps doc examples io-uring man pam seccomp selinux ssl systemd test +tools" + +RDEPEND="acct-group/lxc + acct-user/lxc + apparmor? ( sys-libs/libapparmor ) + caps? ( sys-libs/libcap ) + io-uring? ( >=sys-libs/liburing-2:= ) + pam? ( sys-libs/pam ) + seccomp? ( sys-libs/libseccomp ) + selinux? ( sys-libs/libselinux ) + ssl? ( dev-libs/openssl:0= ) + systemd? ( + sys-apps/dbus + sys-apps/systemd:= + ) + tools? ( sys-libs/libcap )" +DEPEND="${RDEPEND} + caps? ( sys-libs/libcap[static-libs] ) + tools? ( sys-libs/libcap[static-libs] ) + sys-kernel/linux-headers" +BDEPEND="virtual/pkgconfig + doc? ( app-text/doxygen ) + man? ( app-text/docbook2X ) + verify-sig? ( sec-keys/openpgp-keys-linuxcontainers )" + +RESTRICT="!test? ( test )" + +CONFIG_CHECK="~!NETPRIO_CGROUP + ~CGROUPS + ~CGROUP_CPUACCT + ~CGROUP_DEVICE + ~CGROUP_FREEZER + + ~CGROUP_SCHED + ~CPUSETS + ~IPC_NS + ~MACVLAN + + ~MEMCG + ~NAMESPACES + ~NET_NS + ~PID_NS + + ~POSIX_MQUEUE + ~USER_NS + ~UTS_NS + ~VETH" + +ERROR_CGROUP_FREEZER="CONFIG_CGROUP_FREEZER: needed to freeze containers" +ERROR_MACVLAN="CONFIG_MACVLAN: needed for internal (inter-container) networking" +ERROR_MEMCG="CONFIG_MEMCG: needed for memory resource control in containers" +ERROR_NET_NS="CONFIG_NET_NS: needed for unshared network" +ERROR_POSIX_MQUEUE="CONFIG_POSIX_MQUEUE: needed for lxc-execute command" +ERROR_UTS_NS="CONFIG_UTS_NS: needed to unshare hostnames and uname info" +ERROR_VETH="CONFIG_VETH: needed for internal (host-to-container) networking" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/linuxcontainers.asc + +DOCS=( AUTHORS MAINTAINERS README.md doc/FAQ.txt ) + +pkg_setup() { + linux-info_pkg_setup +} + +src_configure() { + + # -Dtools-multicall=false: will create a single binary called 'lxc' that conflicts with LXD. + local emesonargs=( + --localstatedir "${EPREFIX}/var" + + -Dcoverity-build=false + -Dinstall-state-dirs=false + -Doss-fuzz=false + -Dspecfile=false + -Dtools-multicall=false + + -Dcommands=true + -Dinstall-init-files=true + -Dmemfd-rexec=true + -Dthread-safety=true + + $(meson_use apparmor) + $(meson_use caps capabilities) + $(meson_use doc api-docs) + $(meson_use examples) + $(meson_use io-uring io-uring-event-loop) + $(meson_use man) + $(meson_use pam pam-cgroup) + $(meson_use seccomp) + $(meson_use selinux) + $(meson_use ssl openssl) + $(meson_use test tests) + $(meson_use tools) + + $(usex systemd -Ddbus=true -Ddbus=false) + $(usex systemd -Dinit-script="systemd" -Dinit-script="openrc") + + -Ddata-path=/var/lib/lxc + -Ddoc-path=/usr/share/doc/${PF} + -Dlog-path=/var/log/lxc + -Drootfs-mount-path=/var/lib/lxc/rootfs + -Druntime-path=/run + ) + + use tools && local emesonargs+=( -Dcapabilities=true ) + + meson_src_configure +} + +src_install() { + if use doc ; then + local HTML_DOCS=( "${BUILD_DIR}/html/"* ) + fi + meson_src_install + + # The main bash-completion file will collide with lxd, need to relocate and update symlinks. + local lxcbashcompdir="${D}/$(get_bashcompdir)" + mkdir -p "${lxcbashcompdir}" || die "Failed to create bashcompdir." + mv "${lxcbashcompdir}"/_lxc "${lxcbashcompdir}"/lxc-start || die "Failed to move _lxc bash completion file." + + # Build system will install all bash completion files regardless of our 'tools' use flag. + # Though installing them all will add bash completions for commands that don't exist, it's + # cleaner than dealing with individual files based on the use flag status. + bashcomp_alias lxc-start lxc-{attach,autostart,cgroup,checkpoint,config,console,copy,create,destroy,device,execute,freeze,info,ls,monitor,snapshot,stop,top,unfreeze,unshare,update-config,usernsexec,wait} + + find "${ED}" -name '*.la' -delete -o -name '*.a' -delete || die + + # Replace upstream systemd files. + if use systemd ; then + rm -r "${D}$(systemd_get_systemunitdir)" || die "Failed to remove systemd lib dir" + else + # The openrc files aren't installed with correct permissions. + fperms 0755 /etc/init.d/lxc-{containers,net} + fi + + newinitd "${FILESDIR}/${PN}.initd.9" ${PN} + systemd_newunit "${FILESDIR}"/lxc-monitord.service.5.0.0 lxc-monitord.service + systemd_newunit "${FILESDIR}"/lxc-net.service.5.0.0 lxc-net.service + systemd_newunit "${FILESDIR}"/lxc.service-5.0.0 lxc.service + systemd_newunit "${FILESDIR}"/lxc_at.service.5.0.0 "lxc@.service" + + if ! use apparmor; then + sed -i '/lxc-apparmor-load/d' "${D}$(systemd_get_systemunitdir)/lxc.service" || + die "Failed to remove apparmor references from lxc.service systemd unit." + fi +} + +pkg_postinst() { + elog "Please refer to " + elog "https://wiki.gentoo.org/wiki/LXC for introduction and usage guide." + elog + elog "Run 'lxc-checkconfig' to see optional kernel features." + elog + + optfeature "creating your own LXC containers" app-containers/distrobuilder + optfeature "automatic template scripts" app-containers/lxc-templates + optfeature "Debian-based distribution container image support" dev-util/debootstrap + optfeature "snapshot & restore functionality" sys-process/criu +} From 2a1811ec2ba9dc379821de7ff3282018a7655394 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:29 +0000 Subject: [PATCH 016/291] app-containers/netavark: Sync with Gentoo It's from Gentoo commit 9dafba4baa90a51c3bd8f54066f64770f055ce39. Signed-off-by: Flatcar Buildbot --- .../app-containers/netavark/netavark-1.17.1.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/netavark/netavark-1.17.1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/netavark/netavark-1.17.1.ebuild index c0d9aae5fda..7e44e616c71 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/netavark/netavark-1.17.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/netavark/netavark-1.17.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -16,7 +16,7 @@ if [[ ${PV} == 9999* ]]; then EGIT_REPO_URI="https://github.com/containers/netavark.git" else SRC_URI="${CARGO_CRATE_URIS} https://github.com/containers/netavark/releases/download/v${PV}/${PN}-v${PV}-vendor.tar.gz" - KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv" + KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv" fi # main From 7ec1cfbd0026975fed11ff97b4493dfe5b1e7693 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:29 +0000 Subject: [PATCH 017/291] app-containers/podman: Sync with Gentoo It's from Gentoo commit 24840b461a6fa456e76a9cc0d74edae4a6b80d33. Signed-off-by: Flatcar Buildbot --- .../podman/files/podman-5.2.5-togglable-seccomp.patch | 10 ---------- .../portage-stable/app-containers/podman/metadata.xml | 4 ++-- .../app-containers/podman/podman-5.7.1.ebuild | 4 ++-- 3 files changed, 4 insertions(+), 14 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/app-containers/podman/files/podman-5.2.5-togglable-seccomp.patch diff --git a/sdk_container/src/third_party/portage-stable/app-containers/podman/files/podman-5.2.5-togglable-seccomp.patch b/sdk_container/src/third_party/portage-stable/app-containers/podman/files/podman-5.2.5-togglable-seccomp.patch deleted file mode 100644 index dcfe4495686..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-containers/podman/files/podman-5.2.5-togglable-seccomp.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/Makefile -+++ b/Makefile -@@ -56,7 +56,6 @@ BUILDTAGS ?= \ - $(shell hack/systemd_tag.sh) \ - $(shell hack/libsubid_tag.sh) \ - exclude_graphdriver_devicemapper \ -- seccomp - # allow downstreams to easily add build tags while keeping our defaults - BUILDTAGS += ${EXTRA_BUILDTAGS} - # N/B: This value is managed by Renovate, manual changes are diff --git a/sdk_container/src/third_party/portage-stable/app-containers/podman/metadata.xml b/sdk_container/src/third_party/portage-stable/app-containers/podman/metadata.xml index 897bde56778..aefe07f2213 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/podman/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/app-containers/podman/metadata.xml @@ -24,10 +24,10 @@ - Enables btrfs support (graph driver) in Podman + Enable btrfs support (graph driver) in Podman - Install wrapper which lets use podman for command `docker` + Install a wrapper to allow using `podman` as a drop-in replacement for `docker` diff --git a/sdk_container/src/third_party/portage-stable/app-containers/podman/podman-5.7.1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/podman/podman-5.7.1.ebuild index 36c6887628c..9f80dd3c554 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/podman/podman-5.7.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/podman/podman-5.7.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -17,7 +17,7 @@ else SRC_URI="https://github.com/containers/podman/archive/v${PV/_rc/-rc}.tar.gz -> ${P}.tar.gz" S="${WORKDIR}/${P/_rc/-rc}" [[ ${PV} != *rc* ]] && \ - KEYWORDS="~amd64 ~arm64 ~loong ~riscv" + KEYWORDS="amd64 arm64 ~loong ~riscv" fi # main pkg From 9eb44fa7ac4dbc2957d20f1c0ba317335ee789eb Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:29 +0000 Subject: [PATCH 018/291] app-containers/runc: Sync with Gentoo It's from Gentoo commit 4a51c9e629cb69f6b56dfe2d846b76de438061d2. Signed-off-by: Flatcar Buildbot --- .../app-containers/runc/runc-1.2.4.ebuild | 4 +- .../app-containers/runc/runc-1.2.5.ebuild | 4 +- .../app-containers/runc/runc-1.2.6.ebuild | 4 +- .../app-containers/runc/runc-1.2.8.ebuild | 4 +- .../app-containers/runc/runc-1.3.0.ebuild | 4 +- .../app-containers/runc/runc-1.3.1.ebuild | 4 +- .../app-containers/runc/runc-1.3.3.ebuild | 89 ++++++++++++++++++- .../app-containers/runc/runc-1.4.0-r1.ebuild | 87 +++++++++++++++++- 8 files changed, 182 insertions(+), 18 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.2.4.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.2.4.ebuild index 1ffae7fed82..c0dc02bfb11 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.2.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.2.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -19,7 +19,7 @@ S="${WORKDIR}/${PN}-${MY_PV}" LICENSE="Apache-2.0 BSD-2 BSD MIT" SLOT="0" KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv ~x86" -IUSE="apparmor hardened +kmem +seccomp selinux test" +IUSE="apparmor +kmem +seccomp selinux test" COMMON_DEPEND=" apparmor? ( sys-libs/libapparmor ) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.2.5.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.2.5.ebuild index 43101985356..624ed29e526 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.2.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.2.5.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -20,7 +20,7 @@ S="${WORKDIR}/${PN}-${MY_PV}" LICENSE="Apache-2.0 BSD-2 BSD MIT" SLOT="0" KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv ~x86" -IUSE="apparmor hardened +kmem +seccomp selinux test" +IUSE="apparmor +kmem +seccomp selinux test" COMMON_DEPEND=" apparmor? ( sys-libs/libapparmor ) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.2.6.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.2.6.ebuild index 3de53bfbaf8..343d7610160 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.2.6.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.2.6.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -20,7 +20,7 @@ S="${WORKDIR}/${PN}-${MY_PV}" LICENSE="Apache-2.0 BSD-2 BSD MIT" SLOT="0" KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv ~x86" -IUSE="apparmor hardened +kmem +seccomp selinux test" +IUSE="apparmor +kmem +seccomp selinux test" COMMON_DEPEND=" apparmor? ( sys-libs/libapparmor ) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.2.8.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.2.8.ebuild index d1254589b7c..66d15d185cf 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.2.8.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.2.8.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -20,7 +20,7 @@ S="${WORKDIR}/${PN}-${MY_PV}" LICENSE="Apache-2.0 BSD-2 BSD MIT" SLOT="0" KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv ~x86" -IUSE="apparmor hardened +kmem +seccomp selinux test" +IUSE="apparmor +kmem +seccomp selinux test" COMMON_DEPEND=" apparmor? ( sys-libs/libapparmor ) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.3.0.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.3.0.ebuild index 28ebbb06b71..3d899e5e292 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.3.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.3.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -20,7 +20,7 @@ S="${WORKDIR}/${PN}-${MY_PV}" LICENSE="Apache-2.0 BSD-2 BSD MIT" SLOT="0" KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" -IUSE="apparmor hardened +kmem +seccomp selinux test" +IUSE="apparmor +kmem +seccomp selinux test" COMMON_DEPEND=" apparmor? ( sys-libs/libapparmor ) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.3.1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.3.1.ebuild index 8f7c403b4bb..e2f03ef2ff3 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.3.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.3.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -20,7 +20,7 @@ S="${WORKDIR}/${PN}-${MY_PV}" LICENSE="Apache-2.0 BSD-2 BSD MIT" SLOT="0" KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv ~x86" -IUSE="apparmor hardened +kmem +seccomp selinux test" +IUSE="apparmor +kmem +seccomp selinux test" COMMON_DEPEND=" apparmor? ( sys-libs/libapparmor ) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.3.3.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.3.3.ebuild index 19f660567b0..947b72ca874 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.3.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.3.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -9,8 +9,6 @@ inherit go-module linux-info # https://github.com/opencontainers/runc RUNC_COMMIT=d842d7719497cc3b774fd71620278ac9e17710e0 -CONFIG_CHECK="~USER_NS" - DESCRIPTION="runc container cli tools" HOMEPAGE="https://github.com/opencontainers/runc/" MY_PV="${PV/_/-}" @@ -20,7 +18,7 @@ S="${WORKDIR}/${PN}-${MY_PV}" LICENSE="Apache-2.0 BSD-2 BSD MIT" SLOT="0" KEYWORDS="amd64 ~arm ~arm64 ppc64 ~riscv ~x86" -IUSE="apparmor hardened +kmem +seccomp selinux test" +IUSE="apparmor +kmem +seccomp selinux test" COMMON_DEPEND=" apparmor? ( sys-libs/libapparmor ) @@ -38,6 +36,89 @@ BDEPEND=" # majority of tests pass RESTRICT+=" test" +# Please refer: +# https://github.com/opencontainers/runc/blob/main/script/check-config.sh +pkg_setup() { + CONFIG_CHECK=" + ~NAMESPACES + ~NET_NS + ~PID_NS + ~IPC_NS + ~UTS_NS + ~CGROUPS + ~CGROUP_CPUACCT + ~CGROUP_DEVICE + ~CGROUP_FREEZER + ~CGROUP_SCHED + ~CPUSETS + ~MEMCG + ~KEYS + ~VETH + ~BRIDGE + ~BRIDGE_NETFILTER + ~IP_NF_FILTER + ~IP_NF_TARGET_MASQUERADE + ~NETFILTER_XT_MATCH_ADDRTYPE + ~NETFILTER_XT_MATCH_COMMENT + ~NETFILTER_XT_MATCH_CONNTRACK + ~NETFILTER_XT_MATCH_IPVS + ~IP_NF_NAT + ~NF_NAT + ~POSIX_MQUEUE + ~OVERLAY_FS + " + + CONFIG_CHECK+=" + ~USER_NS + " + + use seccomp && CONFIG_CHECK+=" + ~SECCOMP + ~SECCOMP_FILTER + " + WARNING_SECCOMP="CONFIG_SECCOMP is required as optional feature" + + CONFIG_CHECK+=" + ~CGROUP_PIDS + " + WARNING_CGROUP_PIDS="CONFIG_CGROUP_PIDS is required as optional feature" + + if kernel_is lt 6 1; then + CONFIG_CHECK+=" + ~MEMCG_SWAP + " + fi + + CONFIG_CHECK+=" + ~BLK_CGROUP + ~BLK_DEV_THROTTLING + ~CGROUP_PERF + ~CGROUP_HUGETLB + ~NET_CLS_CGROUP + ~CFS_BANDWIDTH + ~FAIR_GROUP_SCHED + ~RT_GROUP_SCHED + ~IP_NF_TARGET_REDIRECT + ~IP_VS + ~IP_VS_NFCT + ~IP_VS_PROTO_TCP + ~IP_VS_PROTO_UDP + ~IP_VS_RR + ~CHECKPOINT_RESTORE + ~CGROUP_NET_PRIO + " + + use selinux && CONFIG_CHECK+=" + ~SECURITY_SELINUX" + + use apparmor && CONFIG_CHECK+=" + ~SECURITY_APPARMOR" + + if [[ -n ${CONFIG_CHECK} ]]; then + linux-info_pkg_setup + fi +} + src_compile() { # build up optional flags local options=( diff --git a/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.4.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.4.0-r1.ebuild index 8fdc9de7d7f..25e90b7d9b2 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.4.0-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/runc/runc-1.4.0-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -20,7 +20,7 @@ S="${WORKDIR}/${PN}-${MY_PV}" LICENSE="Apache-2.0 BSD-2 BSD MIT" SLOT="0" KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" -IUSE="apparmor hardened +kmem +seccomp selinux test" +IUSE="apparmor +kmem +seccomp selinux test" COMMON_DEPEND=" apparmor? ( sys-libs/libapparmor ) @@ -38,6 +38,89 @@ BDEPEND=" # majority of tests pass RESTRICT+=" test" +# Please refer: +# https://github.com/opencontainers/runc/blob/main/script/check-config.sh +pkg_setup() { + CONFIG_CHECK=" + ~NAMESPACES + ~NET_NS + ~PID_NS + ~IPC_NS + ~UTS_NS + ~CGROUPS + ~CGROUP_CPUACCT + ~CGROUP_DEVICE + ~CGROUP_FREEZER + ~CGROUP_SCHED + ~CPUSETS + ~MEMCG + ~KEYS + ~VETH + ~BRIDGE + ~BRIDGE_NETFILTER + ~IP_NF_FILTER + ~IP_NF_TARGET_MASQUERADE + ~NETFILTER_XT_MATCH_ADDRTYPE + ~NETFILTER_XT_MATCH_COMMENT + ~NETFILTER_XT_MATCH_CONNTRACK + ~NETFILTER_XT_MATCH_IPVS + ~IP_NF_NAT + ~NF_NAT + ~POSIX_MQUEUE + ~OVERLAY_FS + " + + CONFIG_CHECK+=" + ~USER_NS + " + + use seccomp && CONFIG_CHECK+=" + ~SECCOMP + ~SECCOMP_FILTER + " + WARNING_SECCOMP="CONFIG_SECCOMP is required as optional feature" + + CONFIG_CHECK+=" + ~CGROUP_PIDS + " + WARNING_CGROUP_PIDS="CONFIG_CGROUP_PIDS is required as optional feature" + + if kernel_is lt 6 1; then + CONFIG_CHECK+=" + ~MEMCG_SWAP + " + fi + + CONFIG_CHECK+=" + ~BLK_CGROUP + ~BLK_DEV_THROTTLING + ~CGROUP_PERF + ~CGROUP_HUGETLB + ~NET_CLS_CGROUP + ~CFS_BANDWIDTH + ~FAIR_GROUP_SCHED + ~RT_GROUP_SCHED + ~IP_NF_TARGET_REDIRECT + ~IP_VS + ~IP_VS_NFCT + ~IP_VS_PROTO_TCP + ~IP_VS_PROTO_UDP + ~IP_VS_RR + ~CHECKPOINT_RESTORE + ~CGROUP_NET_PRIO + " + + use selinux && CONFIG_CHECK+=" + ~SECURITY_SELINUX" + + use apparmor && CONFIG_CHECK+=" + ~SECURITY_APPARMOR" + + if [[ -n ${CONFIG_CHECK} ]]; then + linux-info_pkg_setup + fi +} + src_compile() { # build up optional flags local options=( From 50670c4f5027c89d26f5d1f38d729b698750ef99 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:33 +0000 Subject: [PATCH 019/291] app-crypt/argon2: Sync with Gentoo It's from Gentoo commit 0e54f13a5e92a83f1528a25a6577fb80f7eded22. Signed-off-by: Flatcar Buildbot --- .../app-crypt/argon2/argon2-20190702-r1.ebuild | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/argon2/argon2-20190702-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/argon2/argon2-20190702-r1.ebuild index 7ac7b460649..27986eefb01 100644 --- a/sdk_container/src/third_party/portage-stable/app-crypt/argon2/argon2-20190702-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-crypt/argon2/argon2-20190702-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -63,8 +63,9 @@ src_test() { src_install() { emake \ OPTTEST="${OPTTEST}" \ - DESTDIR="${ED}" \ + DESTDIR="${D}" \ LIBRARY_REL="$(get_libdir)" \ + PREFIX="${EPREFIX}/usr" \ install einstalldocs From b6772a7afd8581592dc53286f208298d1730e77f Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:34 +0000 Subject: [PATCH 020/291] app-crypt/ccid: Sync with Gentoo It's from Gentoo commit 2334d2fe03009b4d632077d5e670ad5616ccd958. Signed-off-by: Flatcar Buildbot --- .../portage-stable/app-crypt/ccid/Manifest | 3 ++ .../app-crypt/ccid/ccid-1.7.0.ebuild | 17 ++++-- .../app-crypt/ccid/ccid-1.7.1.ebuild | 54 +++++++++++++++++++ 3 files changed, 69 insertions(+), 5 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/app-crypt/ccid/ccid-1.7.1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/ccid/Manifest b/sdk_container/src/third_party/portage-stable/app-crypt/ccid/Manifest index f332b169669..e29c71b87bc 100644 --- a/sdk_container/src/third_party/portage-stable/app-crypt/ccid/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-crypt/ccid/Manifest @@ -1,2 +1,5 @@ DIST ccid-1.6.1.tar.xz 195844 BLAKE2B 7ab243196761b22edbaffca14b7ef840d53cc4eecc7d6252fb3255e85fc11eb0e1de65775a250da3d4687015ad6e2901d77b1227dc5921f69b42891541ad4e62 SHA512 3c8336a71e48880f3239b322acb0c40231ae83f80011cef39fef95eade6fd76849343faafdb4fcf9e962afda2c3a415e4a537d3f423b152ef2d3dddb4ecf2eac DIST ccid-1.7.0.tar.xz 200688 BLAKE2B c6c262365191181e53af81d9232cf87d9bfbf7e86d5791076c108776b1822e255da94867895d71331973a9e739ad47059c661880477af9cfa5f9ce599aca359a SHA512 8e138957f01deefc803dde707fa3a9888de260abcfc0e8c57ef5ce7c506d173552ec55e36a384ce40f51b7aa4014ac42f5ba1e98152750f89db3e2eb7e6f4539 +DIST ccid-1.7.0.tar.xz.asc 833 BLAKE2B 1ea4eba5fca69d25f9a00f5d700284173bc0f382e919e01606111a389999b97843f389412eba6ce653c2f7a4ab896c47a12095f37a2eb2951b6ad01b800bebb2 SHA512 6435de418282b86d727d18e944aa8fc3e1733c4cdbf9852be151ed98c93a10b3b6704cca7b7291ebfdefc051af27ba23ec3186e6fb4b8efb249a1ffe2ed0fa60 +DIST ccid-1.7.1.tar.xz 202928 BLAKE2B 9bc8506f5860b9f55b4df9d97fb4238291234034f0b6c179b5a4c4a034e10b33ce09fb87c5e3f41bbe9531fbec40a7d7280badf87effd7a45f55787ae198931c SHA512 4cd287e1ecf0a7f2b24715ff068733987c5ff6d383c36a77c4480aed70d19ce7f185e8f3dcf7773165461f8059d67e2f9d170b7b3a81b9d2713ea47ba61e9aa5 +DIST ccid-1.7.1.tar.xz.asc 833 BLAKE2B 73c70c24be337368e3af4f6a9d882fb0ac6bb919ed4695d59f8d6975d7f24249692c3e85624e9306810102fc246a20f57320b7e2d3dc27ae5169e0be31f1a785 SHA512 dcb88f561611c255b9beab7d388328000728558ee872a990d211a7d4e59a716d0a6c71cade22230c8e7280c822725ece916af9be8a7f346a23921b4c0fff87ab diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/ccid/ccid-1.7.0.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/ccid/ccid-1.7.0.ebuild index b34a1055b2a..bebbbb5a42a 100644 --- a/sdk_container/src/third_party/portage-stable/app-crypt/ccid/ccid-1.7.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-crypt/ccid/ccid-1.7.0.ebuild @@ -1,13 +1,17 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit meson udev +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/ludovicrousseau.asc +inherit meson udev verify-sig DESCRIPTION="CCID free software driver" -HOMEPAGE="https://ccid.apdu.fr https://github.com/LudovicRousseau/CCID" -SRC_URI="https://ccid.apdu.fr/files/${P}.tar.xz" +HOMEPAGE="https://ccid.apdu.fr/ https://github.com/LudovicRousseau/CCID" +SRC_URI=" + https://ccid.apdu.fr/files/${P}.tar.xz + verify-sig? ( https://ccid.apdu.fr/files/${P}.tar.xz.asc ) +" LICENSE="LGPL-2.1+ LGPL-2+ GPL-2+" SLOT="0" @@ -22,10 +26,13 @@ DEPEND="${RDEPEND}" BDEPEND=" app-alternatives/lex dev-lang/perl - virtual/pkgconfig" + virtual/pkgconfig + verify-sig? ( sec-keys/openpgp-keys-ludovicrousseau ) +" src_configure() { local emesonargs=( + -Dudev-rules=false $(meson_use twinserial serial) ) meson_src_configure diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/ccid/ccid-1.7.1.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/ccid/ccid-1.7.1.ebuild new file mode 100644 index 00000000000..bebbbb5a42a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-crypt/ccid/ccid-1.7.1.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/ludovicrousseau.asc +inherit meson udev verify-sig + +DESCRIPTION="CCID free software driver" +HOMEPAGE="https://ccid.apdu.fr/ https://github.com/LudovicRousseau/CCID" +SRC_URI=" + https://ccid.apdu.fr/files/${P}.tar.xz + verify-sig? ( https://ccid.apdu.fr/files/${P}.tar.xz.asc ) +" + +LICENSE="LGPL-2.1+ LGPL-2+ GPL-2+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="twinserial" + +RDEPEND=" + sys-apps/pcsc-lite + virtual/libusb:1 +" +DEPEND="${RDEPEND}" +BDEPEND=" + app-alternatives/lex + dev-lang/perl + virtual/pkgconfig + verify-sig? ( sec-keys/openpgp-keys-ludovicrousseau ) +" + +src_configure() { + local emesonargs=( + -Dudev-rules=false + $(meson_use twinserial serial) + ) + meson_src_configure +} + +src_install() { + meson_src_install + udev_newrules src/92_pcscd_ccid.rules 92-pcsc-ccid.rules +} + +pkg_postinst() { + udev_reload + einfo "Check https://github.com/LudovicRousseau/CCID/blob/master/INSTALL.md" + einfo "for more info about how to configure and use ccid" +} + +pkg_postrm() { + udev_reload +} From 08bd240fe581c447dfe4fd06cca091134522c6e9 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:34 +0000 Subject: [PATCH 021/291] app-crypt/gnupg: Sync with Gentoo It's from Gentoo commit 04d43b00ae470bc5afda1e0b66f843f1ef0dc053. Signed-off-by: Flatcar Buildbot --- .../portage-stable/app-crypt/gnupg/Manifest | 6 +- ...-functions-to-avoid-LTO-linking-bugs.patch | 200 ++++++++++++++++ ...s-to-avoid-LTO-linking-bugs-followup.patch | 47 ++++ ...regression-in-pkdecrypt-with-TPM-RSA.patch | 40 ++++ .../app-crypt/gnupg/gnupg-2.5.17-r1.ebuild | 220 +++++++++++++++++ .../app-crypt/gnupg/gnupg-2.5.17-r2.ebuild | 221 ++++++++++++++++++ ...nupg-2.5.16.ebuild => gnupg-2.5.17.ebuild} | 5 +- ...g-2.5.16-r1.ebuild => gnupg-2.5.18.ebuild} | 6 +- 8 files changed, 735 insertions(+), 10 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/app-crypt/gnupg/files/0001-Fix-stub-functions-to-avoid-LTO-linking-bugs.patch create mode 100644 sdk_container/src/third_party/portage-stable/app-crypt/gnupg/files/0002-Fix-stub-functions-to-avoid-LTO-linking-bugs-followup.patch create mode 100644 sdk_container/src/third_party/portage-stable/app-crypt/gnupg/files/0003-agent-Fix-the-regression-in-pkdecrypt-with-TPM-RSA.patch create mode 100644 sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.17-r1.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.17-r2.ebuild rename sdk_container/src/third_party/portage-stable/app-crypt/gnupg/{gnupg-2.5.16.ebuild => gnupg-2.5.17.ebuild} (97%) rename sdk_container/src/third_party/portage-stable/app-crypt/gnupg/{gnupg-2.5.16-r1.ebuild => gnupg-2.5.18.ebuild} (98%) diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/Manifest b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/Manifest index 3bea405d220..d0b687a7409 100644 --- a/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/Manifest @@ -1,4 +1,6 @@ DIST gnupg-2.4.9.tar.bz2 8086407 BLAKE2B 5bbd278c570d3e389ab26dd37e1adac6c1b19f9bd369ebf30d75f48d0ab901c6f5fe4e4713b763f57b9e74efab654186ebff1a968348b0b9f70c82618b4b3b62 SHA512 4638016b390a0024fa0cbe14181c43a81991e4275043855397ef099b927985d175d32452fc15b06485623b9292662dd6da464b2e5def8b77b2e4e48a072ab521 DIST gnupg-2.4.9.tar.bz2.sig 147 BLAKE2B fbf956c0659d9e2a5df9ceb6911ebea8591fd1b647d81e0f324b688271493519d7d25025d9d8d7906e706f57031429c8d8a3ba79c8ab7e300631137ebb38eedf SHA512 03328ba7de3faab1aab025784ef16cc04dd34d2cc09db2c513b7e38836b8036e04d2bb3c71aa64769b5a40a7a877373ee2d11b6e2bf8b67938216277dcd18a6f -DIST gnupg-2.5.16.tar.bz2 8304335 BLAKE2B 722c90ac88b2eeacb150dc6fa5f4d83b5577d0285871cd7d336463d25aabd1087cdca103a23b251b2067de6c3046615d9fcb552721ceef4826f4dd3e96c5525a SHA512 0a48628e9e7f8050022e5204bf9febd1f2db6ee9d55b573207884fc2ef2825d814015851141ba6851bd4466f0cc0827123e5f474003c054f3af55f4bd1440bf7 -DIST gnupg-2.5.16.tar.bz2.sig 119 BLAKE2B 5ef9b298b49049cd5cdb1bcc03cd09ad96015cd34060249fccff6d3ab4a0b950a545d631c05818484c52166ae89825f6def928787051f3eed010e8300945160e SHA512 295d37ecf4c1f5fc4531cd0a0901ecbacd521a744991b086e14573e1b5198e55476367767bc708b4eec38aac32a30c03265d13c0c5bd9c79c8254e408ef58aec +DIST gnupg-2.5.17.tar.bz2 8308629 BLAKE2B e52c4cf6219a8ce877511c2cfb2e32abf9fafc66c280ddd5f37b7dc6abffaeb60a5ebe925332fd00735a81bb8bb9ebeff79d04d112bd52ec00c2e8692cea6eb0 SHA512 8c1fe6afb04034ed1579080cf8d384f5b331ac1bc277f77c8e9103d29971c944fcb4c072586d2c045630ef34483b355a1b35f1785dded6f8d8da1e4760bef308 +DIST gnupg-2.5.17.tar.bz2.sig 119 BLAKE2B b404b6cdff76187c410a7751708e1cbb0ad173658b8c0dde9726063b16c6e9d5c673cb6ae86142e00ca48790dc314968625ec6aa2364ba4a48a3cf0c03e9b06f SHA512 385de45addf2c857ebf054bcc85d03d4fc0ccd70149138baac5cfcefccd7c0b0e48219dd9da757f36b1c6411816dcb43213920442796da03fb38ee59709877a4 +DIST gnupg-2.5.18.tar.bz2 8307830 BLAKE2B 5d591f609a580c5e9a023c83707ad4baf3794595ff08eaa571c619bf5469fe32ca787cd39be3d0572cb8021e1dc66135d9523009e92c9c3b862ccd53a7060b12 SHA512 34542728ef09d23d63af21cfbc943e4a81a1c367b2bf4b892afe7428b06eaa3d105e34f5dcec1758e91ec9bac1c13fdd72418d946cd8580e34c07b57a07139a2 +DIST gnupg-2.5.18.tar.bz2.sig 119 BLAKE2B 1634053f0799b64e4d6fba6eab8357f89fdd611ad9853e6677c151b1af5ab231cf27908e2317c76676b86b8047fd5e6388df30312c8243d1f36608750b6d58d6 SHA512 70d8f8a7ce02de5fc73d069b52baac6b74d8440e9d20391779ef0f784375a63058def58f00107de81b676a7ef13afdaa5814ebde7c54a5e4603bbca1d005617c diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/files/0001-Fix-stub-functions-to-avoid-LTO-linking-bugs.patch b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/files/0001-Fix-stub-functions-to-avoid-LTO-linking-bugs.patch new file mode 100644 index 00000000000..65ff69294d4 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/files/0001-Fix-stub-functions-to-avoid-LTO-linking-bugs.patch @@ -0,0 +1,200 @@ +https://bugs.gentoo.org/854222 + +From 81760cc931d69f37cf2a8ad54616a1af590fd2cf Mon Sep 17 00:00:00 2001 +Message-ID: <81760cc931d69f37cf2a8ad54616a1af590fd2cf.1770174575.git.sam@gentoo.org> +From: Werner Koch +Date: Wed, 28 Jan 2026 13:45:00 +0100 +Subject: [PATCH GnuPG] Fix stub functions to avoid LTO linking bugs. + +-- +--- + g10/gpgv.c | 42 ++++++++++++++++++++++++++++-------------- + g10/test-stubs.c | 36 +++++++++++++++++++++++------------- + 2 files changed, 51 insertions(+), 27 deletions(-) + +diff --git a/g10/gpgv.c b/g10/gpgv.c +index b65dfa66b..23704e21c 100644 +--- a/g10/gpgv.c ++++ b/g10/gpgv.c +@@ -462,10 +462,13 @@ keyserver_any_configured (ctrl_t ctrl) + } + + int +-keyserver_import_keyid (u32 *keyid, void *dummy, unsigned int flags) ++keyserver_import_keyid (ctrl_t ctrl, ++ u32 *keyid,struct keyserver_spec *keyserver, ++ unsigned int flags) + { ++ (void)ctrl; + (void)keyid; +- (void)dummy; ++ (void)keyserver; + (void)flags; + return -1; + } +@@ -493,9 +496,14 @@ keyserver_import_fpr_ntds (ctrl_t ctrl, + } + + int +-keyserver_import_cert (const char *name) ++keyserver_import_cert (ctrl_t ctrl, const char *name, int dane_mode, ++ unsigned char **fpr,size_t *fpr_len) + { ++ (void)ctrl; + (void)name; ++ (void)dane_mode; ++ (void)fpr; ++ (void)fpr_len; + return -1; + } + +@@ -511,11 +519,17 @@ keyserver_import_wkd (ctrl_t ctrl, const char *name, unsigned int flags, + return GPG_ERR_BUG; + } + +-int +-keyserver_import_mbox (const char *name,struct keyserver_spec *spec) ++gpg_error_t ++keyserver_import_mbox (ctrl_t ctrl, const char *mbox, ++ unsigned char **fpr, size_t *fprlen, ++ struct keyserver_spec *keyserver, unsigned int flags) + { +- (void)name; +- (void)spec; ++ (void)ctrl; ++ (void)mbox; ++ (void)fpr; ++ (void)fprlen; ++ (void)keyserver; ++ (void)flags; + return -1; + } + +@@ -647,14 +661,11 @@ parse_preferred_keyserver(PKT_signature *sig) + return NULL; + } + +-struct keyserver_spec * +-parse_keyserver_uri (const char *uri, int require_scheme, +- const char *configname, unsigned int configlineno) ++keyserver_spec_t ++parse_keyserver_uri (const char *string, int require_scheme) + { +- (void)uri; ++ (void)string; + (void)require_scheme; +- (void)configname; +- (void)configlineno; + return NULL; + } + +@@ -666,11 +677,14 @@ free_keyserver_spec (struct keyserver_spec *keyserver) + + /* Stubs to avoid linking to photoid.c */ + void +-show_photos (const struct user_attribute *attrs, int count, PKT_public_key *pk) ++show_photos (ctrl_t ctrl, const struct user_attribute *attrs, int count, ++ PKT_public_key *pk, PKT_user_id *uid) + { ++ (void)ctrl; + (void)attrs; + (void)count; + (void)pk; ++ (void)uid; + } + + int +diff --git a/g10/test-stubs.c b/g10/test-stubs.c +index 9b41c8929..16d10972d 100644 +--- a/g10/test-stubs.c ++++ b/g10/test-stubs.c +@@ -193,10 +193,13 @@ keyserver_any_configured (ctrl_t ctrl) + } + + int +-keyserver_import_keyid (u32 *keyid, void *dummy, unsigned int flags) ++keyserver_import_keyid (ctrl_t ctrl, ++ u32 *keyid,struct keyserver_spec *keyserver, ++ unsigned int flags) + { ++ (void)ctrl; + (void)keyid; +- (void)dummy; ++ (void)keyserver; + (void)flags; + return -1; + } +@@ -224,9 +227,14 @@ keyserver_import_fpr_ntds (ctrl_t ctrl, + } + + int +-keyserver_import_cert (const char *name) ++keyserver_import_cert (ctrl_t ctrl, const char *name, int dane_mode, ++ unsigned char **fpr,size_t *fpr_len) + { ++ (void)ctrl; + (void)name; ++ (void)dane_mode; ++ (void)fpr; ++ (void)fpr_len; + return -1; + } + +@@ -242,15 +250,17 @@ keyserver_import_wkd (ctrl_t ctrl, const char *name, unsigned int flags, + return GPG_ERR_BUG; + } + +-int +-keyserver_import_mbox (ctrl_t ctrl, const char *mbox, unsigned char **fpr, +- size_t *fprlen, struct keyserver_spec *keyserver) ++gpg_error_t ++keyserver_import_mbox (ctrl_t ctrl, const char *mbox, ++ unsigned char **fpr, size_t *fprlen, ++ struct keyserver_spec *keyserver, unsigned int flags) + { + (void)ctrl; + (void)mbox; + (void)fpr; + (void)fprlen; + (void)keyserver; ++ (void)flags; + return -1; + } + +@@ -381,14 +391,11 @@ parse_preferred_keyserver(PKT_signature *sig) + return NULL; + } + +-struct keyserver_spec * +-parse_keyserver_uri (const char *uri, int require_scheme, +- const char *configname, unsigned int configlineno) ++keyserver_spec_t ++parse_keyserver_uri (const char *string, int require_scheme) + { +- (void)uri; ++ (void)string; + (void)require_scheme; +- (void)configname; +- (void)configlineno; + return NULL; + } + +@@ -400,11 +407,14 @@ free_keyserver_spec (struct keyserver_spec *keyserver) + + /* Stubs to avoid linking to photoid.c */ + void +-show_photos (const struct user_attribute *attrs, int count, PKT_public_key *pk) ++show_photos (ctrl_t ctrl, const struct user_attribute *attrs, int count, ++ PKT_public_key *pk, PKT_user_id *uid) + { ++ (void)ctrl; + (void)attrs; + (void)count; + (void)pk; ++ (void)uid; + } + + int +-- +2.53.0 + diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/files/0002-Fix-stub-functions-to-avoid-LTO-linking-bugs-followup.patch b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/files/0002-Fix-stub-functions-to-avoid-LTO-linking-bugs-followup.patch new file mode 100644 index 00000000000..751a1c9a425 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/files/0002-Fix-stub-functions-to-avoid-LTO-linking-bugs-followup.patch @@ -0,0 +1,47 @@ +https://bugs.gentoo.org/854222 + +From 40b28085f30f6031bd72ae24d736c9116d70f547 Mon Sep 17 00:00:00 2001 +Message-ID: <40b28085f30f6031bd72ae24d736c9116d70f547.1770174958.git.sam@gentoo.org> +From: Sam James +Date: Sun, 4 Jan 2026 02:04:39 +0000 +Subject: [PATCH GnuPG] Fix -Wlto-type-mismatch warnings [T4416] + +* agent/t-protect.c (convert_from_openpgp_native): Sync stub definition. + +-- + +GnuPG-bug-id: 4416 + +When building with GCC -flto, some warnings appear because of +mismatched definitions in stubs (gpgv or tests). Sync them with the +real definitions to fix the warnings, as they just drifted over time. + +Followup to 81760cc931d69f37cf2a8ad54616a1af590fd2cf. + +Signed-off-by: Sam James +--- + agent/t-protect.c | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/agent/t-protect.c b/agent/t-protect.c +index e6edbffba..9508de36a 100644 +--- a/agent/t-protect.c ++++ b/agent/t-protect.c +@@ -341,9 +341,12 @@ main (int argc, char **argv) + + /* Stub function. */ + gpg_error_t +-convert_from_openpgp_native (gcry_sexp_t s_pgp, const char *passphrase, +- unsigned char **r_key) ++convert_from_openpgp_native (ctrl_t ctrl, ++ gcry_sexp_t s_pgp, ++ const char *passphrase, ++ unsigned char **r_key) + { ++ (void)ctrl; + (void)s_pgp; + (void)passphrase; + (void)r_key; +-- +2.53.0 + diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/files/0003-agent-Fix-the-regression-in-pkdecrypt-with-TPM-RSA.patch b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/files/0003-agent-Fix-the-regression-in-pkdecrypt-with-TPM-RSA.patch new file mode 100644 index 00000000000..1a2965106d3 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/files/0003-agent-Fix-the-regression-in-pkdecrypt-with-TPM-RSA.patch @@ -0,0 +1,40 @@ +From 6eed3959303c81c9699fe9273030e480732f72be Mon Sep 17 00:00:00 2001 +Message-ID: <6eed3959303c81c9699fe9273030e480732f72be.1771025112.git.sam@gentoo.org> +From: NIIBE Yutaka +Date: Thu, 12 Feb 2026 11:51:17 +0900 +Subject: [PATCH GnuPG] agent: Fix the regression in pkdecrypt with TPM RSA. + +* agent/divert-tpm2.c (divert_tpm2_pkdecrypt): Care about additional +0x00. + +-- + +GnuPG-bug-id: 8045 +Signed-off-by: NIIBE Yutaka +--- + agent/divert-tpm2.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/agent/divert-tpm2.c b/agent/divert-tpm2.c +index 5500c07f1..839a039bc 100644 +--- a/agent/divert-tpm2.c ++++ b/agent/divert-tpm2.c +@@ -138,6 +138,15 @@ divert_tpm2_pkdecrypt (ctrl_t ctrl, + if (!smatch (&s, n, "a")) + return gpg_error (GPG_ERR_UNKNOWN_SEXP); + n = snext (&s); ++ /* NOTE: gpg-agent protocol uses signed integer for RSA (%m in ++ * MPI), where 0x00 is added when the MSB is 1. TPM2 uses ++ * unsigned integer. We need to remove this 0x00, or else ++ * it may result GPG_ERR_TOO_LARGE in tpm2daemon. */ ++ if (!*s && (n&1)) ++ { ++ s++; ++ n--; ++ } + } + else if (smatch (&s, n, "ecdh")) + { +-- +2.53.0 + diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.17-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.17-r1.ebuild new file mode 100644 index 00000000000..7453a3b2180 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.17-r1.ebuild @@ -0,0 +1,220 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintainers should: +# 1. Join the "Gentoo" project at https://dev.gnupg.org/project/view/27/ +# 2. Subscribe to release tasks like https://dev.gnupg.org/T6159 +# (find the one for the current release then subscribe to it + +# any subsequent ones linked within so you're covered for a while.) + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc +# in-source builds are not supported: https://dev.gnupg.org/T6313#166339 +inherit flag-o-matic out-of-source multiprocessing systemd toolchain-funcs verify-sig + +MY_P="${P/_/-}" + +DESCRIPTION="The GNU Privacy Guard, a GPL OpenPGP implementation" +HOMEPAGE="https://gnupg.org/" +SRC_URI="mirror://gnupg/gnupg/${MY_P}.tar.bz2" +SRC_URI+=" verify-sig? ( mirror://gnupg/gnupg/${P}.tar.bz2.sig )" +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="+alternatives bzip2 doc ldap nls readline selinux +smartcard ssl test +tofu tpm tools usb user-socket wks-server" +RESTRICT="!test? ( test )" +REQUIRED_USE="test? ( tofu )" + +# Existence of executables is checked during configuration. +# Note: On each bump, update dep bounds on each version from configure.ac! +DEPEND=" + >=dev-libs/libassuan-3.0.0-r1:= + >=dev-libs/libgcrypt-1.11.0:= + >=dev-libs/libgpg-error-1.56 + >=dev-libs/libksba-1.6.3 + >=dev-libs/npth-1.2 + virtual/zlib:= + bzip2? ( app-arch/bzip2 ) + ldap? ( net-nds/openldap:= ) + readline? ( sys-libs/readline:0= ) + smartcard? ( usb? ( virtual/libusb:1 ) ) + tofu? ( >=dev-db/sqlite-3.27 ) + tpm? ( >=app-crypt/tpm2-tss-2.4.0:= ) + ssl? ( >=net-libs/gnutls-3.2:0= ) +" +RDEPEND=" + ${DEPEND} + nls? ( virtual/libintl ) + selinux? ( sec-policy/selinux-gpg ) + wks-server? ( virtual/mta ) +" +PDEPEND=" + app-crypt/pinentry + alternatives? ( + app-alternatives/gpg[-freepg(-)] + ) +" +BDEPEND=" + virtual/pkgconfig + doc? ( sys-apps/texinfo ) + nls? ( sys-devel/gettext ) + verify-sig? ( sec-keys/openpgp-keys-gnupg ) +" + +DOCS=( + ChangeLog NEWS README THANKS TODO VERSION + doc/FAQ doc/DETAILS doc/HACKING doc/TRANSLATE doc/OpenPGP doc/KEYSERVER +) + +PATCHES=( + "${FILESDIR}"/${PN}-2.1.20-gpgscm-Use-shorter-socket-path-lengts-to-improve-tes.patch + "${FILESDIR}"/0001-Fix-stub-functions-to-avoid-LTO-linking-bugs.patch + "${FILESDIR}"/0002-Fix-stub-functions-to-avoid-LTO-linking-bugs-followup.patch +) + +src_prepare() { + default + + GNUPG_SYSTEMD_UNITS=( + dirmngr.service + dirmngr.socket + gpg-agent-browser.socket + gpg-agent-extra.socket + gpg-agent.service + gpg-agent.socket + gpg-agent-ssh.socket + ) + + cp "${GNUPG_SYSTEMD_UNITS[@]/#/${FILESDIR}/}" "${T}" || die + + # Inject SSH_AUTH_SOCK into user's sessions after enabling gpg-agent-ssh.socket in systemctl --user mode, + # idea borrowed from libdbus, see + # https://gitlab.freedesktop.org/dbus/dbus/-/blob/master/bus/systemd-user/dbus.socket.in#L6 + # + # This cannot be upstreamed, as it requires determining the exact prefix of 'systemctl', + # which in turn requires discovery in Autoconf, something that upstream deeply resents. + sed -e "/DirectoryMode=/a ExecStartPost=-${EPREFIX}/bin/systemctl --user set-environment SSH_AUTH_SOCK=%t/gnupg/S.gpg-agent.ssh" \ + -i "${T}"/gpg-agent-ssh.socket || die + + # Since 2.5.3, --supervised is called --deprecated-supervised. See + # https://dev.gnupg.org/rGa019a0fcd8dfb9d1eae5bc991fdd54b7cf55641e + sed -i "s/--supervised/--deprecated-supervised/g" "${T}"/*.service || die +} + +my_src_configure() { + local myconf=( + $(use_enable bzip2) + $(use_enable nls) + $(use_enable smartcard scdaemon) + $(use_enable ssl gnutls) + $(use_enable test all-tests) + $(use_enable test tests) + $(use_enable tofu) + $(use_enable tofu keyboxd) + $(use_enable tofu sqlite) + $(usex tpm '--with-tss=intel' '--disable-tpm2d') + $(use smartcard && use_enable usb ccid-driver || echo '--disable-ccid-driver') + $(use_enable wks-server wks-tools) + $(use_with ldap) + $(use_with readline) + + # Hardcode mailprog to /usr/libexec/sendmail even if it does not exist. + # As of GnuPG 2.3, the mailprog substitution is used for the binary called + # by wks-client & wks-server; and if it's autodetected but not not exist at + # build time, then then 'gpg-wks-client --send' functionality will not + # work. This has an unwanted side-effect in stage3 builds: there was a + # [R]DEPEND on virtual/mta, which also brought in virtual/logger, bloating + # the build where the install guide previously make the user chose the + # logger & mta early in the install. + --with-mailprog=/usr/libexec/sendmail + + --disable-ntbtls + --enable-gpgsm + --enable-large-secmem + + CC_FOR_BUILD="$(tc-getBUILD_CC)" + GPGRT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpgrt-config" + + $("${S}/configure" --help | grep -o -- '--without-.*-prefix') + ) + + if use prefix && use usb; then + # bug #649598 + append-cppflags -I"${ESYSROOT}/usr/include/libusb-1.0" + fi + + if [[ ${CHOST} == *-solaris* ]] ; then + # these somehow are treated as fatal, but Solaris has different + # types for getpeername with socket_t + append-flags -Wno-incompatible-pointer-types + append-flags -Wno-unused-label + fi + + # bug #663142 + if use user-socket; then + myconf+=( --enable-run-gnupg-user-socket ) + fi + + # glib fails and picks up clang's internal stdint.h causing weird errors + tc-is-clang && export gl_cv_absolute_stdint_h="${ESYSROOT}"/usr/include/stdint.h + + econf "${myconf[@]}" +} + +my_src_compile() { + default + + use doc && emake -C doc html +} + +my_src_test() { + export TESTFLAGS="--parallel=$(makeopts_jobs)" + + default +} + +my_src_install() { + emake DESTDIR="${D}" install + + use tools && dobin tools/{gpgconf,gpgsplit,gpg-check-pattern} tools/make-dns-cert + + if use alternatives; then + # rename for app-alternatives/gpg + mv "${ED}"/usr/bin/gpg{,-reference} || die + mv "${ED}"/usr/bin/gpgv{,-reference} || die + mv "${ED}"/usr/share/man/man1/gpg{,-reference}.1 || die + mv "${ED}"/usr/share/man/man1/gpgv{,-reference}.1 || die + else + dosym gpg /usr/bin/gpg2 + dosym gpgv /usr/bin/gpgv2 + echo ".so man1/gpg.1" > "${ED}"/usr/share/man/man1/gpg2.1 || die + echo ".so man1/gpgv.1" > "${ED}"/usr/share/man/man1/gpgv2.1 || die + fi + + use doc && dodoc doc/gnupg.html/* +} + +my_src_install_all() { + einstalldocs + + use tools && dobin tools/{convert-from-106,mail-signed-keys,lspgpot} + use doc && dodoc doc/*.png + + # Dropped upstream in https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gnupg.git;a=commitdiff;h=eae28f1bd4a5632e8f8e85b7248d1c4d4a10a5ed. + dodoc "${FILESDIR}"/README-systemd + systemd_douserunit "${GNUPG_SYSTEMD_UNITS[@]/#/${T}/}" +} + +pkg_postinst() { + # If /usr/bin/gpg and /usr/bin/gpgv do not exist, provide them. + if [[ ! -e ${EROOT}/usr/bin/gpg ]]; then + ln -sf -- gpg-reference "${EROOT}"/usr/bin/gpg || die + fi + + if [[ ! -e ${EROOT}/usr/bin/gpgv ]]; then + ln -sf -- gpgv-reference "${EROOT}"/usr/bin/gpgv || die + fi +} diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.17-r2.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.17-r2.ebuild new file mode 100644 index 00000000000..f2c44868c40 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.17-r2.ebuild @@ -0,0 +1,221 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintainers should: +# 1. Join the "Gentoo" project at https://dev.gnupg.org/project/view/27/ +# 2. Subscribe to release tasks like https://dev.gnupg.org/T6159 +# (find the one for the current release then subscribe to it + +# any subsequent ones linked within so you're covered for a while.) + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc +# in-source builds are not supported: https://dev.gnupg.org/T6313#166339 +inherit flag-o-matic out-of-source multiprocessing systemd toolchain-funcs verify-sig + +MY_P="${P/_/-}" + +DESCRIPTION="The GNU Privacy Guard, a GPL OpenPGP implementation" +HOMEPAGE="https://gnupg.org/" +SRC_URI="mirror://gnupg/gnupg/${MY_P}.tar.bz2" +SRC_URI+=" verify-sig? ( mirror://gnupg/gnupg/${P}.tar.bz2.sig )" +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="+alternatives bzip2 doc ldap nls readline selinux +smartcard ssl test +tofu tpm tools usb user-socket wks-server" +RESTRICT="!test? ( test )" +REQUIRED_USE="test? ( tofu )" + +# Existence of executables is checked during configuration. +# Note: On each bump, update dep bounds on each version from configure.ac! +DEPEND=" + >=dev-libs/libassuan-3.0.0-r1:= + >=dev-libs/libgcrypt-1.11.0:= + >=dev-libs/libgpg-error-1.56 + >=dev-libs/libksba-1.6.3 + >=dev-libs/npth-1.2 + virtual/zlib:= + bzip2? ( app-arch/bzip2 ) + ldap? ( net-nds/openldap:= ) + readline? ( sys-libs/readline:0= ) + smartcard? ( usb? ( virtual/libusb:1 ) ) + tofu? ( >=dev-db/sqlite-3.27 ) + tpm? ( >=app-crypt/tpm2-tss-2.4.0:= ) + ssl? ( >=net-libs/gnutls-3.2:0= ) +" +RDEPEND=" + ${DEPEND} + nls? ( virtual/libintl ) + selinux? ( sec-policy/selinux-gpg ) + wks-server? ( virtual/mta ) +" +PDEPEND=" + app-crypt/pinentry + alternatives? ( + app-alternatives/gpg[-freepg(-)] + ) +" +BDEPEND=" + virtual/pkgconfig + doc? ( sys-apps/texinfo ) + nls? ( sys-devel/gettext ) + verify-sig? ( sec-keys/openpgp-keys-gnupg ) +" + +DOCS=( + ChangeLog NEWS README THANKS TODO VERSION + doc/FAQ doc/DETAILS doc/HACKING doc/TRANSLATE doc/OpenPGP doc/KEYSERVER +) + +PATCHES=( + "${FILESDIR}"/${PN}-2.1.20-gpgscm-Use-shorter-socket-path-lengts-to-improve-tes.patch + "${FILESDIR}"/0001-Fix-stub-functions-to-avoid-LTO-linking-bugs.patch + "${FILESDIR}"/0002-Fix-stub-functions-to-avoid-LTO-linking-bugs-followup.patch + "${FILESDIR}"/0003-agent-Fix-the-regression-in-pkdecrypt-with-TPM-RSA.patch +) + +src_prepare() { + default + + GNUPG_SYSTEMD_UNITS=( + dirmngr.service + dirmngr.socket + gpg-agent-browser.socket + gpg-agent-extra.socket + gpg-agent.service + gpg-agent.socket + gpg-agent-ssh.socket + ) + + cp "${GNUPG_SYSTEMD_UNITS[@]/#/${FILESDIR}/}" "${T}" || die + + # Inject SSH_AUTH_SOCK into user's sessions after enabling gpg-agent-ssh.socket in systemctl --user mode, + # idea borrowed from libdbus, see + # https://gitlab.freedesktop.org/dbus/dbus/-/blob/master/bus/systemd-user/dbus.socket.in#L6 + # + # This cannot be upstreamed, as it requires determining the exact prefix of 'systemctl', + # which in turn requires discovery in Autoconf, something that upstream deeply resents. + sed -e "/DirectoryMode=/a ExecStartPost=-${EPREFIX}/bin/systemctl --user set-environment SSH_AUTH_SOCK=%t/gnupg/S.gpg-agent.ssh" \ + -i "${T}"/gpg-agent-ssh.socket || die + + # Since 2.5.3, --supervised is called --deprecated-supervised. See + # https://dev.gnupg.org/rGa019a0fcd8dfb9d1eae5bc991fdd54b7cf55641e + sed -i "s/--supervised/--deprecated-supervised/g" "${T}"/*.service || die +} + +my_src_configure() { + local myconf=( + $(use_enable bzip2) + $(use_enable nls) + $(use_enable smartcard scdaemon) + $(use_enable ssl gnutls) + $(use_enable test all-tests) + $(use_enable test tests) + $(use_enable tofu) + $(use_enable tofu keyboxd) + $(use_enable tofu sqlite) + $(usex tpm '--with-tss=intel' '--disable-tpm2d') + $(use smartcard && use_enable usb ccid-driver || echo '--disable-ccid-driver') + $(use_enable wks-server wks-tools) + $(use_with ldap) + $(use_with readline) + + # Hardcode mailprog to /usr/libexec/sendmail even if it does not exist. + # As of GnuPG 2.3, the mailprog substitution is used for the binary called + # by wks-client & wks-server; and if it's autodetected but not not exist at + # build time, then then 'gpg-wks-client --send' functionality will not + # work. This has an unwanted side-effect in stage3 builds: there was a + # [R]DEPEND on virtual/mta, which also brought in virtual/logger, bloating + # the build where the install guide previously make the user chose the + # logger & mta early in the install. + --with-mailprog=/usr/libexec/sendmail + + --disable-ntbtls + --enable-gpgsm + --enable-large-secmem + + CC_FOR_BUILD="$(tc-getBUILD_CC)" + GPGRT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpgrt-config" + + $("${S}/configure" --help | grep -o -- '--without-.*-prefix') + ) + + if use prefix && use usb; then + # bug #649598 + append-cppflags -I"${ESYSROOT}/usr/include/libusb-1.0" + fi + + if [[ ${CHOST} == *-solaris* ]] ; then + # these somehow are treated as fatal, but Solaris has different + # types for getpeername with socket_t + append-flags -Wno-incompatible-pointer-types + append-flags -Wno-unused-label + fi + + # bug #663142 + if use user-socket; then + myconf+=( --enable-run-gnupg-user-socket ) + fi + + # glib fails and picks up clang's internal stdint.h causing weird errors + tc-is-clang && export gl_cv_absolute_stdint_h="${ESYSROOT}"/usr/include/stdint.h + + econf "${myconf[@]}" +} + +my_src_compile() { + default + + use doc && emake -C doc html +} + +my_src_test() { + export TESTFLAGS="--parallel=$(makeopts_jobs)" + + default +} + +my_src_install() { + emake DESTDIR="${D}" install + + use tools && dobin tools/{gpgconf,gpgsplit,gpg-check-pattern} tools/make-dns-cert + + if use alternatives; then + # rename for app-alternatives/gpg + mv "${ED}"/usr/bin/gpg{,-reference} || die + mv "${ED}"/usr/bin/gpgv{,-reference} || die + mv "${ED}"/usr/share/man/man1/gpg{,-reference}.1 || die + mv "${ED}"/usr/share/man/man1/gpgv{,-reference}.1 || die + else + dosym gpg /usr/bin/gpg2 + dosym gpgv /usr/bin/gpgv2 + echo ".so man1/gpg.1" > "${ED}"/usr/share/man/man1/gpg2.1 || die + echo ".so man1/gpgv.1" > "${ED}"/usr/share/man/man1/gpgv2.1 || die + fi + + use doc && dodoc doc/gnupg.html/* +} + +my_src_install_all() { + einstalldocs + + use tools && dobin tools/{convert-from-106,mail-signed-keys,lspgpot} + use doc && dodoc doc/*.png + + # Dropped upstream in https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gnupg.git;a=commitdiff;h=eae28f1bd4a5632e8f8e85b7248d1c4d4a10a5ed. + dodoc "${FILESDIR}"/README-systemd + systemd_douserunit "${GNUPG_SYSTEMD_UNITS[@]/#/${T}/}" +} + +pkg_postinst() { + # If /usr/bin/gpg and /usr/bin/gpgv do not exist, provide them. + if [[ ! -e ${EROOT}/usr/bin/gpg ]]; then + ln -sf -- gpg-reference "${EROOT}"/usr/bin/gpg || die + fi + + if [[ ! -e ${EROOT}/usr/bin/gpgv ]]; then + ln -sf -- gpgv-reference "${EROOT}"/usr/bin/gpgv || die + fi +} diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.16.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.17.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.16.ebuild rename to sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.17.ebuild index 391625c29b2..a535d202dec 100644 --- a/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.16.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.17.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -195,9 +195,6 @@ my_src_install() { echo ".so man1/gpgv.1" > "${ED}"/usr/share/man/man1/gpgv2.1 || die fi - dodir /etc/env.d - echo "CONFIG_PROTECT=/usr/share/gnupg/qualified.txt" >> "${ED}"/etc/env.d/30gnupg || die - use doc && dodoc doc/gnupg.html/* } diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.16-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.18.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.16-r1.ebuild rename to sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.18.ebuild index 4936cf13743..2bd0e0dc1b7 100644 --- a/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.16-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.5.18.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -71,6 +71,7 @@ DOCS=( PATCHES=( "${FILESDIR}"/${PN}-2.1.20-gpgscm-Use-shorter-socket-path-lengts-to-improve-tes.patch + "${FILESDIR}"/0002-Fix-stub-functions-to-avoid-LTO-linking-bugs-followup.patch ) src_prepare() { @@ -103,9 +104,6 @@ src_prepare() { } my_src_configure() { - # Upstream don't support LTO, bug #854222. - filter-lto - local myconf=( $(use_enable bzip2) $(use_enable nls) From d08646733ba5a52fd592de39e75722971f1eb02d Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:35 +0000 Subject: [PATCH 022/291] app-crypt/mit-krb5: Sync with Gentoo It's from Gentoo commit 90dd1661c37d7de237a6b6983e2a0f78dfa2aa31. Signed-off-by: Flatcar Buildbot --- .../app-crypt/mit-krb5/Manifest | 1 + .../app-crypt/mit-krb5/mit-krb5-1.22.2.ebuild | 155 ++++++++++++++++++ 2 files changed, 156 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/mit-krb5-1.22.2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/Manifest b/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/Manifest index 1b4b5995e13..b68008a2f10 100644 --- a/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/Manifest @@ -1,3 +1,4 @@ DIST krb5-1.21.3.tar.gz 9136145 BLAKE2B e909a55eaedab68e5c829bb7bbd26cec5db2d7b8d97f3b034de94d8f957003f16977ac619afee3b862f288e59f05c5e44f41e65b8883961c8b22a26e2f4733bc SHA512 87bc06607f4d95ff604169cea22180703a42d667af05f66f1569b8bd592670c42820b335e5c279e8b4f066d1e7da20f1948a1e4def7c5d295c170cbfc7f49c71 DIST krb5-1.22.1.tar.gz 8747101 BLAKE2B aed6a7f511ae7085a81fa6dc553881ea478bb8bb8aa43ab13e1312ead392fb93173998bfdfc730dca4d715b2ed52da6a12f2417f95525d9ff5c4629e8ca5fedc SHA512 c33bfada5e0c035133436031d9818ad97b0ff08578691c832b743c55751a2cf9460501d3cc658ab79655ed7a0f9f4795ba94b363d6b616795d9bdca668825c52 +DIST krb5-1.22.2.tar.gz 8747729 BLAKE2B c0fee5d954fee1c10dcd16f37243fbf586b23f1136e58c21202cd38f195586592cf6d5fa1b9eba27c8b5210db4dcc72ea47a20011295980d5eda671861571a7e SHA512 3237cacfb2019285107991a3211e0d74944c605942ab38a8b4b372703b8f02f5779fa2de80c4e201bd59703d557f37ac346bdc5ea14b986b0a0db23eb422fc6f DIST mit-krb5-1.21.3-c23.patch.xz 59948 BLAKE2B f611ccda16ee4e2bcfbdbaf72204f0ede6ebe3517f4df016ae7db9c364bc55d81e1e32aaaa0506197ddca09555a5a4d3ef75f7c33b6434115b6c57bd99f1bcb5 SHA512 35b226b351a81f4610e1ef2be9822a57f94f9cc5017ed082584fb8c85a0f0be78b8e9fda4fc5c78248421be39517df639cee9cae49ddccf3d62f1a0cff4224ae diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/mit-krb5-1.22.2.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/mit-krb5-1.22.2.ebuild new file mode 100644 index 00000000000..199106b0396 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/mit-krb5-1.22.2.ebuild @@ -0,0 +1,155 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{12..14} ) +inherit autotools flag-o-matic python-any-r1 systemd toolchain-funcs multilib-minimal + +MY_P="${P/mit-}" +P_DIR=$(ver_cut 1-2) +DESCRIPTION="MIT Kerberos V" +HOMEPAGE="https://web.mit.edu/kerberos/www/" +SRC_URI="https://web.mit.edu/kerberos/dist/krb5/${P_DIR}/${MY_P}.tar.gz" +S=${WORKDIR}/${MY_P}/src + +LICENSE="openafs-krb5-a BSD MIT OPENLDAP BSD-2 HPND BSD-4 ISC RSA CC-BY-SA-3.0 || ( BSD-2 GPL-2+ )" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="cpu_flags_x86_aes doc +keyutils lmdb nls openldap +pkinit selinux test xinetd" + +RESTRICT="!test? ( test )" + +DEPEND=" + !!app-crypt/heimdal + >=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}] + || ( + >=dev-libs/libverto-0.2.5[libev,${MULTILIB_USEDEP}] + >=dev-libs/libverto-0.2.5[libevent,${MULTILIB_USEDEP}] + ) + keyutils? ( >=sys-apps/keyutils-1.5.8:=[${MULTILIB_USEDEP}] ) + lmdb? ( dev-db/lmdb:= ) + nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] ) + openldap? ( >=net-nds/openldap-2.4.38-r1:=[${MULTILIB_USEDEP}] ) + pkinit? ( >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}] ) + xinetd? ( sys-apps/xinetd ) + " +BDEPEND=" + ${PYTHON_DEPS} + app-alternatives/yacc + >=sys-fs/e2fsprogs-1.46.4-r51 + cpu_flags_x86_aes? ( + amd64? ( dev-lang/yasm ) + x86? ( dev-lang/yasm ) + ) + doc? ( virtual/latex-base ) + test? ( dev-util/cmocka ) + " +RDEPEND="${DEPEND} + selinux? ( sec-policy/selinux-kerberos )" + +PATCHES=( + "${FILESDIR}/${PN}-1.12_warn_cflags.patch" + "${FILESDIR}/${PN}_dont_create_rundir.patch" + "${FILESDIR}/${PN}-1.18.2-krb5-config.patch" +) + +MULTILIB_CHOST_TOOLS=( + /usr/bin/krb5-config +) + +src_prepare() { + default + # Make sure we always use the system copies. + rm -rf util/{et,ss,verto} + sed -i 's:^[[:space:]]*util/verto$::' configure.ac || die + + eautoreconf +} + +src_configure() { + # lto-type-mismatch (bug #854225) + filter-lto + + multilib-minimal_src_configure +} + +multilib_src_configure() { + ECONF_SOURCE=${S} \ + AR="$(tc-getAR)" \ + WARN_CFLAGS="set" \ + econf \ + $(use_with openldap ldap) \ + $(use_enable nls) \ + $(use_enable pkinit) \ + $(use_with lmdb) \ + $(use_with keyutils) \ + --without-hesiod \ + --enable-shared \ + --with-system-et \ + --with-system-ss \ + --enable-dns-for-realm \ + --enable-kdc-lookaside-cache \ + --with-system-verto \ + --enable-thread-support \ + --disable-rpath +} + +multilib_src_compile() { + emake -j1 +} + +multilib_src_test() { + multilib_is_native_abi && emake -j1 check +} + +multilib_src_install() { + emake \ + DESTDIR="${D}" \ + EXAMPLEDIR="${EPREFIX}/usr/share/doc/${PF}/examples" \ + install +} + +multilib_src_install_all() { + # default database dir + keepdir /var/lib/krb5kdc + + cd .. + dodoc README + + newinitd "${FILESDIR}"/mit-krb5kadmind.initd-r2 mit-krb5kadmind + newinitd "${FILESDIR}"/mit-krb5kdc.initd-r2 mit-krb5kdc + newinitd "${FILESDIR}"/mit-krb5kpropd.initd-r2 mit-krb5kpropd + newconfd "${FILESDIR}"/mit-krb5kadmind.confd mit-krb5kadmind + newconfd "${FILESDIR}"/mit-krb5kdc.confd mit-krb5kdc + newconfd "${FILESDIR}"/mit-krb5kpropd.confd mit-krb5kpropd + + systemd_newunit "${FILESDIR}"/mit-krb5kadmind.service mit-krb5kadmind.service + systemd_newunit "${FILESDIR}"/mit-krb5kdc.service mit-krb5kdc.service + systemd_newunit "${FILESDIR}"/mit-krb5kpropd.service mit-krb5kpropd.service + systemd_newunit "${FILESDIR}"/mit-krb5kpropd_at.service "mit-krb5kpropd@.service" + systemd_newunit "${FILESDIR}"/mit-krb5kpropd.socket mit-krb5kpropd.socket + + insinto /etc + newins "${ED}/usr/share/doc/${PF}/examples/krb5.conf" krb5.conf.example + insinto /var/lib/krb5kdc + newins "${ED}/usr/share/doc/${PF}/examples/kdc.conf" kdc.conf.example + + if use openldap ; then + dodoc "${S}/plugins/kdb/ldap/libkdb_ldap/kerberos.ldif" + dodoc "${S}/plugins/kdb/ldap/libkdb_ldap/kerberos.openldap.ldif" + insinto /etc/openldap/schema + doins "${S}/plugins/kdb/ldap/libkdb_ldap/kerberos.schema" + fi + + if use xinetd ; then + insinto /etc/xinetd.d + newins "${FILESDIR}/kpropd.xinetd" kpropd + fi + + if use doc; then + dodoc -r doc/html + docinto pdf + dodoc doc/pdf/*.pdf + fi +} From ef17cff162ac8bb5b673037e20073f08f073967d Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:35 +0000 Subject: [PATCH 023/291] app-crypt/p11-kit: Sync with Gentoo It's from Gentoo commit 02aa87ce02e216446f41138ff8e9dcc8e001d7ff. Signed-off-by: Flatcar Buildbot --- .../portage-stable/app-crypt/p11-kit/Manifest | 3 + .../app-crypt/p11-kit/p11-kit-0.25.10.ebuild | 11 ++- .../app-crypt/p11-kit/p11-kit-0.26.2.ebuild | 81 +++++++++++++++++++ 3 files changed, 92 insertions(+), 3 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/app-crypt/p11-kit/p11-kit-0.26.2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/p11-kit/Manifest b/sdk_container/src/third_party/portage-stable/app-crypt/p11-kit/Manifest index 37e2a35ea59..e26fd4144a9 100644 --- a/sdk_container/src/third_party/portage-stable/app-crypt/p11-kit/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-crypt/p11-kit/Manifest @@ -1,2 +1,5 @@ DIST p11-kit-0.25.10.tar.xz 1053532 BLAKE2B 9f5a1be36a5b67ac35b294afdacf1b3a5c1c579b04e3407ea7bc6899cfe74330682653da50975a13e443b3a79379fdf6c6ed2a778933cf5dbba4fdf6dc52c99a SHA512 c5a5dfb6bd46e8964a70f2fc601bd5b61bf88f79d1011c70e6f37a62130c4aad692d8bac83aff2fd2728543274e198d2946ded7a53636835aefb13b9a3155527 +DIST p11-kit-0.25.10.tar.xz.sig 119 BLAKE2B f299d5988284ebb5e8f4919e44e719f694d1c9fcdf7f2b11dc87d6042349993017880c31940167fd5f42a1422e497ca9c5c85c543eb5fe7c0e1aad392c151679 SHA512 c6271ad03454bd44faff7675d5ac305afa40aefabf492df90f4624a241537869029829f43a4a90c3d6b5b83886f009a33b24f097c21cf8745a30cb3263010dbe DIST p11-kit-0.25.5.tar.xz 1002056 BLAKE2B 96d6a9c2807586abafae4da4df89f566672733963997d6a83e00aaf83a7a0c0e2995638f505e98fb87a90c60bde28814f1e8b7d5071bf0af96bb0467105a1ddc SHA512 177ec6ff5eb891901078306dce2bf3f5c1a0e5c2a8c493bdf5a08ae1ff1240fdf6952961e973c373f80ac3d1d5a9927e07f4da49e4ff92269d992e744889fc94 +DIST p11-kit-0.26.2.tar.xz 1069216 BLAKE2B a10eab0fe405ea1f99aaac823bdb48d09caa09decd6bfe134aa702430ed5c09af2416db503ea8954467179c30ab754cc2811b4d8e28ac02cf3847fa021e1a2e2 SHA512 662c77e3133a9ee00f155fc2c1f12fdb16492920f992ab6e9de587c8abf76f990d442643bf8464cc08ad4d1c584f4d6f8d3a006aa7fc791010fa9cb7acaf6b7b +DIST p11-kit-0.26.2.tar.xz.sig 119 BLAKE2B f94f0269f327aeaf7f417f1eb6185fe0df9d61a447e942de11250a6d41d579126ac103a35da45bc1a0aab2f04279a9fec118241122df955268b61a449340355f SHA512 84f5d5363eb38a6a501b34103b5c1df08c88b80897fdd4f966c0692131cca0f21f590a58a7810b9e87e86656641ac4e0f4224b0327840890af4a4baf5186e264 diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/p11-kit/p11-kit-0.25.10.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/p11-kit/p11-kit-0.25.10.ebuild index 3ef5cea7306..98f384fc256 100644 --- a/sdk_container/src/third_party/portage-stable/app-crypt/p11-kit/p11-kit-0.25.10.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-crypt/p11-kit/p11-kit-0.25.10.ebuild @@ -1,14 +1,18 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 PYTHON_COMPAT=( python3_{11..14} ) -inherit shell-completion meson-multilib python-any-r1 +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/p11-kit.asc +inherit shell-completion meson-multilib python-any-r1 verify-sig DESCRIPTION="Provides a standard configuration setup for installing PKCS#11" HOMEPAGE="https://p11-glue.github.io/p11-glue/p11-kit.html" -SRC_URI="https://github.com/p11-glue/p11-kit/releases/download/${PV}/${P}.tar.xz" +SRC_URI=" + https://github.com/p11-glue/p11-kit/releases/download/${PV}/${P}.tar.xz + verify-sig? ( https://github.com/p11-glue/p11-kit/releases/download/${PV}/${P}.tar.xz.sig ) +" LICENSE="MIT" SLOT="0" @@ -30,6 +34,7 @@ BDEPEND=" virtual/pkgconfig gtk-doc? ( dev-util/gtk-doc ) nls? ( sys-devel/gettext ) + verify-sig? ( sec-keys/openpgp-keys-p11-kit ) " src_prepare() { diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/p11-kit/p11-kit-0.26.2.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/p11-kit/p11-kit-0.26.2.ebuild new file mode 100644 index 00000000000..98f384fc256 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-crypt/p11-kit/p11-kit-0.26.2.ebuild @@ -0,0 +1,81 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..14} ) +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/p11-kit.asc +inherit shell-completion meson-multilib python-any-r1 verify-sig + +DESCRIPTION="Provides a standard configuration setup for installing PKCS#11" +HOMEPAGE="https://p11-glue.github.io/p11-glue/p11-kit.html" +SRC_URI=" + https://github.com/p11-glue/p11-kit/releases/download/${PV}/${P}.tar.xz + verify-sig? ( https://github.com/p11-glue/p11-kit/releases/download/${PV}/${P}.tar.xz.sig ) +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris" +IUSE="+libffi gtk-doc nls systemd test" +RESTRICT="!test? ( test )" + +RDEPEND=" + app-misc/ca-certificates + >=dev-libs/libtasn1-3.4:=[${MULTILIB_USEDEP}] + libffi? ( dev-libs/libffi:=[${MULTILIB_USEDEP}] ) + systemd? ( sys-apps/systemd ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + ${PYTHON_DEPS} + app-text/docbook-xsl-stylesheets + dev-libs/libxslt + virtual/pkgconfig + gtk-doc? ( dev-util/gtk-doc ) + nls? ( sys-devel/gettext ) + verify-sig? ( sec-keys/openpgp-keys-p11-kit ) +" + +src_prepare() { + default + + # Relies on dlopen which won't work for multilib tests (bug #913971) + cat <<-EOF > "${S}"/p11-kit/test-server.sh || die + #!/bin/sh + exit 77 + EOF +} + +multilib_src_configure() { + # Disable unsafe tests, bug#502088 + export FAKED_MODE=1 + + local native_file="${T}"/meson.${CHOST}.${ABI}.ini.local + + # p11-kit doesn't need this to build and castxml needs Clang. To get + # a deterministic non-automagic build, always disable the search for + # castxml. + cat >> ${native_file} <<-EOF || die + [binaries] + castxml='castxml-falseified' + EOF + + local emesonargs=( + --native-file "${native_file}" + -Dbash_completion=enabled + -Dzsh_completion=enabled + -Dbashcompdir="$(get_bashcompdir)" + -Dzshcompdir="$(get_zshcompdir)" + -Dtrust_module=enabled + -Dtrust_paths="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt + $(meson_feature libffi) + $(meson_use nls) + $(meson_use test) + $(meson_native_use_bool gtk-doc gtk_doc) + $(meson_native_true man) + $(meson_native_use_feature systemd) + ) + + meson_src_configure +} From c6343c727ad7390f98e5d6f0958832d2122b7a86 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:36 +0000 Subject: [PATCH 024/291] app-crypt/pinentry: Sync with Gentoo It's from Gentoo commit 0139ea0c5afb4da9250de5ba455177b8d997ad1e. Signed-off-by: Flatcar Buildbot --- .../app-crypt/pinentry/Manifest | 2 - .../pinentry/pinentry-1.3.1-r1.ebuild | 119 ------------------ .../pinentry/pinentry-1.3.2-r1.ebuild | 4 +- .../app-crypt/pinentry/pinentry-1.3.2.ebuild | 119 ------------------ 4 files changed, 2 insertions(+), 242 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.3.1-r1.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.3.2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/Manifest b/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/Manifest index 09a2d15ba80..7a57b435e06 100644 --- a/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/Manifest @@ -1,4 +1,2 @@ -DIST pinentry-1.3.1.tar.bz2 611233 BLAKE2B 47a510b3746fc8cdd83b56302132f4f4d9c61324fc857ce0867387f70f79490dad375bca4dc72e5d1cdca707bf89a16e1c9a20bf1aa0e857d69e59dc59403afd SHA512 3b72034dc1792b1475acb6d605ff7c1bd7647a0f02d1b6bdcd475acdef24bc802f49e275055436c3271261c4b7a64168477a698aab812a145962146b2f67a0e2 -DIST pinentry-1.3.1.tar.bz2.sig 119 BLAKE2B ca562d2903c88c4297e641ddc39f6cd99db3e3fd40cf5d69e7b4335f006c7717c874fa4b5e47920af3ec97385a96c0c96aafb849cf399d11a7f9f1a6b693f479 SHA512 22bd94f74486300eb84c1c9c371a43b05fb6179118518004fba0d42b6d3e6731f94d79b37c2a3a6b0c5886578c4575f75d2460accd36cd4874342e7239521be9 DIST pinentry-1.3.2.tar.bz2 612858 BLAKE2B 985bcf0b4f85d4e5001bfd714ddd064e05ba6d5bd6e1d3b6f1044f27ca148921d22148b301c91cce4fa7f2f7e7f3b743a9bc1383cb9d8e1d0583a595109a699e SHA512 3b4d50a42d412d649a7830f7378aa966342c2bc0157d03b0ad79cf0aed29d6698d48c734e23b1dccada5f6ef81d0c09d3ead6cd703eadfc8082987e6bea0aafc DIST pinentry-1.3.2.tar.bz2.sig 266 BLAKE2B 1c428abb285dd56566a83fe4ceef5e0efc3b2a9ed40a2a0b48e7dc06575d24044677091f6a042e1f08ac6308f2bb1e82eddc82f22b78f1a316ca78ed670745f3 SHA512 82352cb5183a7922ab27619e19fc4d7adaa461847040232610b002365db605200961d1d950887aa5b09d12488d70f432fe739e0e2501a28465a28fb428b62aad diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.3.1-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.3.1-r1.ebuild deleted file mode 100644 index 700fcdeb738..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.3.1-r1.ebuild +++ /dev/null @@ -1,119 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc -inherit autotools qmake-utils verify-sig - -DESCRIPTION="Simple passphrase entry dialogs which utilize the Assuan protocol" -HOMEPAGE="https://gnupg.org/related_software/pinentry/" -SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2" -SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" -IUSE="caps efl emacs gtk keyring ncurses qt6 wayland X" - -DEPEND=" - >=dev-libs/libassuan-2.1:= - >=dev-libs/libgcrypt-1.6.3 - >=dev-libs/libgpg-error-1.17 - efl? ( dev-libs/efl[X] ) - keyring? ( app-crypt/libsecret ) - ncurses? ( sys-libs/ncurses:= ) - qt6? ( - dev-qt/qtbase:6[gui,widgets] - wayland? ( - kde-frameworks/kguiaddons:6 - kde-frameworks/kwindowsystem:6 - ) - ) -" -RDEPEND=" - ${DEPEND} - gtk? ( app-crypt/gcr:4[gtk] ) -" -BDEPEND=" - sys-devel/gettext - virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-gnupg ) -" -PDEPEND="emacs? ( app-emacs/pinentry )" -IDEPEND=">=app-eselect/eselect-pinentry-0.7.4" - -DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO ) - -PATCHES=( - "${FILESDIR}/${PN}-1.0.0-AR.patch" - "${FILESDIR}/${PN}-1.3.0-automagic.patch" # bug #819939, bug #837719 -) - -src_prepare() { - default - - eautoreconf -} - -src_configure() { - unset FLTK_CONFIG - - local myeconfargs=( - $(use_enable efl pinentry-efl) - $(use_enable emacs pinentry-emacs) - $(use_enable keyring libsecret) - $(use_enable gtk pinentry-gnome3) - $(use_enable ncurses fallback-curses) - $(use_enable ncurses pinentry-curses) - $(use_enable qt6 pinentry-qt) - $(use_with X x) - - --enable-pinentry-tty - --disable-kf5-wayland - --disable-pinentry-fltk - --disable-pinentry-gtk2 - --disable-pinentry-qt5 - --disable-qtx11extras - - ac_cv_path_GPGRT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpgrt-config" - - $("${S}/configure" --help | grep -- '--without-.*-prefix' | sed -e 's/^ *\([^ ]*\) .*/\1/g') - ) - - if use qt6 ; then - export PATH="$(qt6_get_bindir):${PATH}" - export QTLIB="$(qt6_get_libdir):${QTLIB}" - export MOC="$(qt6_get_libdir)/qt6/libexec/moc" - - myeconfargs+=( - $(use_enable wayland kf6-wayland) - ) - else - myeconfargs+=( - --disable-kf6-wayland - ) - fi - - econf "${myeconfargs[@]}" -} - -src_install() { - default - - rm "${ED}"/usr/bin/pinentry || die - - # The preferred Qt implementation upstream gets installed as just 'qt'. - # Make a symlink for eselect-pinentry and friends. - if use qt6 ; then - dosym pinentry-qt /usr/bin/pinentry-qt6 - fi -} - -pkg_postinst() { - eselect pinentry update ifunset -} - -pkg_postrm() { - eselect pinentry update ifunset -} diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.3.2-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.3.2-r1.ebuild index 6f36bf8224c..a33429935f3 100644 --- a/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.3.2-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.3.2-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -87,7 +87,7 @@ src_configure() { if use qt6 ; then export PATH="$(qt6_get_bindir):${PATH}" export QTLIB="$(qt6_get_libdir):${QTLIB}" - export MOC="$(qt6_get_libdir)/qt6/libexec/moc" + export MOC="$(qt6_get_libexecdir)/moc" myeconfargs+=( $(use_enable wayland kf6-wayland) diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.3.2.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.3.2.ebuild deleted file mode 100644 index 30637c28370..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.3.2.ebuild +++ /dev/null @@ -1,119 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc -inherit autotools qmake-utils verify-sig - -DESCRIPTION="Simple passphrase entry dialogs which utilize the Assuan protocol" -HOMEPAGE="https://gnupg.org/related_software/pinentry/" -SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2" -SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" -IUSE="caps efl emacs gtk keyring ncurses qt6 wayland X" - -DEPEND=" - >=dev-libs/libassuan-2.1:= - >=dev-libs/libgcrypt-1.6.3 - >=dev-libs/libgpg-error-1.17 - efl? ( dev-libs/efl[X] ) - keyring? ( app-crypt/libsecret ) - ncurses? ( sys-libs/ncurses:= ) - qt6? ( - dev-qt/qtbase:6[gui,widgets] - wayland? ( - kde-frameworks/kguiaddons:6 - kde-frameworks/kwindowsystem:6 - ) - ) -" -RDEPEND=" - ${DEPEND} - gtk? ( app-crypt/gcr:4[gtk] ) -" -BDEPEND=" - sys-devel/gettext - virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-gnupg ) -" -PDEPEND="emacs? ( app-emacs/pinentry )" -IDEPEND=">=app-eselect/eselect-pinentry-0.7.4" - -DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO ) - -PATCHES=( - "${FILESDIR}/${PN}-1.0.0-AR.patch" - "${FILESDIR}/${PN}-1.3.0-automagic.patch" # bug #819939, bug #837719 -) - -src_prepare() { - default - - eautoreconf -} - -src_configure() { - unset FLTK_CONFIG - - local myeconfargs=( - $(use_enable efl pinentry-efl) - $(use_enable emacs pinentry-emacs) - $(use_enable keyring libsecret) - $(use_enable gtk pinentry-gnome3) - $(use_enable ncurses fallback-curses) - $(use_enable ncurses pinentry-curses) - $(use_enable qt6 pinentry-qt) - $(use_with X x) - - --enable-pinentry-tty - --disable-kf5-wayland - --disable-pinentry-fltk - --disable-pinentry-gtk2 - --disable-pinentry-qt5 - --disable-qtx11extras - - ac_cv_path_GPGRT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpgrt-config" - - $("${S}/configure" --help | grep -- '--without-.*-prefix' | sed -e 's/^ *\([^ ]*\) .*/\1/g') - ) - - if use qt6 ; then - export PATH="$(qt6_get_bindir):${PATH}" - export QTLIB="$(qt6_get_libdir):${QTLIB}" - export MOC="$(qt6_get_libdir)/qt6/libexec/moc" - - myeconfargs+=( - $(use_enable wayland kf6-wayland) - ) - else - myeconfargs+=( - --disable-kf6-wayland - ) - fi - - econf "${myeconfargs[@]}" -} - -src_install() { - default - - rm "${ED}"/usr/bin/pinentry || die - - # The preferred Qt implementation upstream gets installed as just 'qt'. - # Make a symlink for eselect-pinentry and friends. - if use qt6 ; then - dosym pinentry-qt /usr/bin/pinentry-qt6 - fi -} - -pkg_postinst() { - eselect pinentry update ifunset -} - -pkg_postrm() { - eselect pinentry update ifunset -} From f419a126ee0b2c7e18a4594dc6d7ef4997ca28cb Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:40 +0000 Subject: [PATCH 025/291] app-crypt/trousers: Sync with Gentoo It's from Gentoo commit 2539d2c9fa1ac2119f81e6e2a88498620f284a26. Signed-off-by: Flatcar Buildbot --- .../app-crypt/trousers/trousers-0.3.15.ebuild | 72 ------------------- 1 file changed, 72 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/app-crypt/trousers/trousers-0.3.15.ebuild diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/trousers/trousers-0.3.15.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/trousers/trousers-0.3.15.ebuild deleted file mode 100644 index ba36bc65b57..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-crypt/trousers/trousers-0.3.15.ebuild +++ /dev/null @@ -1,72 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools linux-info readme.gentoo-r1 systemd udev - -DESCRIPTION="An open-source TCG Software Stack (TSS) v1.1 implementation" -HOMEPAGE="http://trousers.sf.net" -SRC_URI="https://downloads.sourceforge.net/trousers/${PN}/${P}.tar.gz" - -LICENSE="CPL-1.0 GPL-2" -SLOT="0" -KEYWORDS="amd64 arm arm64 ~loong ~m68k ~ppc ppc64 ~riscv ~s390 x86" -IUSE="doc selinux" # gtk - -# gtk support presently does NOT compile. -# gtk? ( >=x11-libs/gtk+-2 ) - -DEPEND="acct-group/tss - acct-user/tss - >=dev-libs/glib-2 - >=dev-libs/openssl-0.9.7:0= - " -RDEPEND="${DEPEND} - selinux? ( sec-policy/selinux-tcsd )" -BDEPEND="virtual/pkgconfig" - -PATCHES=( - "${FILESDIR}/${PN}-0.3.13-nouseradd.patch" - "${FILESDIR}/${PN}-0.3.14-Makefile.am-Mark-tddl.a-nodist.patch" -) - -DOCS="AUTHORS ChangeLog NICETOHAVES README TODO" - -DOC_CONTENTS=" - If you have problems starting tcsd, please check permissions and - ownership on /dev/tpm* and ~tss/system.data -" - -CONFIG_CHECK="~TCG_TPM" - -src_prepare() { - default - eautoreconf -} - -src_configure() { - # econf --with-gui=$(usex gtk gtk openssl) - econf --with-gui=openssl -} - -src_install() { - default - find "${D}" -name '*.la' -delete || die - - keepdir /var/lib/tpm - use doc && dodoc doc/* - newinitd "${FILESDIR}"/tcsd.initd tcsd - systemd_dounit "${FILESDIR}"/tcsd.service - udev_dorules "${FILESDIR}"/61-trousers.rules - fowners tss:tss /var/lib/tpm - readme.gentoo_create_doc -} - -pkg_postinst() { - udev_reload -} - -pkg_postrm() { - udev_reload -} From e206262d355c547b340a34ac63360d02145915ec Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:40 +0000 Subject: [PATCH 026/291] app-doc/eclass-manpages: Sync with Gentoo It's from Gentoo commit 42adab9ecc6331faca7f4d5597edb75bdcbdd668. Signed-off-by: Flatcar Buildbot --- .../app-doc/eclass-manpages/Manifest | 5 +--- .../eclass-manpages-20250730.ebuild | 24 ------------------- .../eclass-manpages-20250815.ebuild | 24 ------------------- .../eclass-manpages-20251126.ebuild | 24 ------------------- ...ebuild => eclass-manpages-20260124.ebuild} | 2 +- 5 files changed, 2 insertions(+), 77 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250730.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250815.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20251126.ebuild rename sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/{eclass-manpages-20250711.ebuild => eclass-manpages-20260124.ebuild} (94%) diff --git a/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/Manifest b/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/Manifest index 5b4d5eb3716..c1187f0369e 100644 --- a/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/Manifest @@ -1,4 +1 @@ -DIST eclass-manpages-20250711.tar.xz 499388 BLAKE2B 7f4df3869449444fbc8805f468ea06754b8942eef3aec362765a54ed1e81d644e104847f1ded853321b79d45bfb5f818c5da49bfa8fec9c9d482016a4d2f540c SHA512 e4922972cd282d851405f9f9a3223924df27f7edfda40f0faabcbe5d072936039998cf63823faac8e50c6fcf2851cde7d57c0eee9d291a9469c7c11d70aa5672 -DIST eclass-manpages-20250730.tar.xz 502128 BLAKE2B f798b31c2ac69ab58015941c1cc4cb51b80d70e68f1b9eaf69dcbbe9cd0b488c3b66da2852eb0d8247b62ebfb7faddd13db7a9ddfc312162e3203b09d130263d SHA512 ef8514d5cf79b2549a0bf04deff844bf2bd039644f8a8f4c31201ee681ca94dc8182484685398b432169af7d6c93e3a2794329bc703635aa965414ab32f6823a -DIST eclass-manpages-20250815.tar.xz 505524 BLAKE2B af3a3d4f98ed9de28c4c4555f556b03372a32a8e3d88d34f29917200a14347409f391736ea1eb60025fb8ac734d34de03407845c5d484ce99b0d6278f33ccc0d SHA512 3addcf0d7e24bb254bd720fb75a8385893174a4693dddab29a389e5a292e83a282abece87b1f237a2eab8f2c17227c9e3bea6bc6cbc7cc3d13cd0da03fc8af00 -DIST eclass-manpages-20251126.tar.xz 508084 BLAKE2B 8e65f8686708dfad983e01ad899f7696207503aa5bce5b94a2a64435db91be6a76b010ed3393fddc3dca5972c17ad23018a08e47c1b647671b93e7e7deb27045 SHA512 035afd8a45d11f835d1dbd0f96392fed56316ddd12b2750dbc3823914b913a7a9c01a1bc2b3a3a7a684bc11b79681e6841510b06ec8696152aef2181dd149e70 +DIST eclass-manpages-20260124.tar.xz 511500 BLAKE2B ef3e5d5c8eb39478701931eb1e2c6f81edf2600e266b9d285519f5aa72893eca40a15e1a3e60db863c42234a65bfe2c5363b98280d56257e2a31e062b5618a34 SHA512 d058cd4984b01d441659e14f5933c7c0be7cfcd06e4024dd8463912c8ecdc6e124945f8291b11b3c13bdf5c452b759aab9163bce7436ea209f4b7ab8d80300b3 diff --git a/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250730.ebuild b/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250730.ebuild deleted file mode 100644 index 7a6c8d8b6f1..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250730.ebuild +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Instructions to make a dist tarball: -# git clone https://github.com/projg2/eclass-to-manpage.git -# cd eclass-to-manpage -# make dist ECLASSDIR=~/g/eclass/ - -DESCRIPTION="Collection of Gentoo eclass manpages" -HOMEPAGE="https://github.com/projg2/eclass-to-manpage" -SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz" - -LICENSE="GPL-2" -SLOT="0" -# Keep the keywords stable. No need to change to ~arch. -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" - -BDEPEND="sys-apps/gawk" - -src_install() { - emake install DESTDIR="${D}" PREFIX="${EPREFIX}/usr" -} diff --git a/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250815.ebuild b/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250815.ebuild deleted file mode 100644 index 7a6c8d8b6f1..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250815.ebuild +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Instructions to make a dist tarball: -# git clone https://github.com/projg2/eclass-to-manpage.git -# cd eclass-to-manpage -# make dist ECLASSDIR=~/g/eclass/ - -DESCRIPTION="Collection of Gentoo eclass manpages" -HOMEPAGE="https://github.com/projg2/eclass-to-manpage" -SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz" - -LICENSE="GPL-2" -SLOT="0" -# Keep the keywords stable. No need to change to ~arch. -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" - -BDEPEND="sys-apps/gawk" - -src_install() { - emake install DESTDIR="${D}" PREFIX="${EPREFIX}/usr" -} diff --git a/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20251126.ebuild b/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20251126.ebuild deleted file mode 100644 index 7a6c8d8b6f1..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20251126.ebuild +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Instructions to make a dist tarball: -# git clone https://github.com/projg2/eclass-to-manpage.git -# cd eclass-to-manpage -# make dist ECLASSDIR=~/g/eclass/ - -DESCRIPTION="Collection of Gentoo eclass manpages" -HOMEPAGE="https://github.com/projg2/eclass-to-manpage" -SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz" - -LICENSE="GPL-2" -SLOT="0" -# Keep the keywords stable. No need to change to ~arch. -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" - -BDEPEND="sys-apps/gawk" - -src_install() { - emake install DESTDIR="${D}" PREFIX="${EPREFIX}/usr" -} diff --git a/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250711.ebuild b/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20260124.ebuild similarity index 94% rename from sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250711.ebuild rename to sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20260124.ebuild index 7a6c8d8b6f1..1427ea35350 100644 --- a/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250711.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20260124.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 From 01dab71c93a660d809c63fdfc9698e7a3a2d782a Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:41 +0000 Subject: [PATCH 027/291] app-editors/nano: Sync with Gentoo It's from Gentoo commit 840cd591abebf437ff980ab68a41452664957cee. Signed-off-by: Flatcar Buildbot --- .../portage-stable/app-editors/nano/Manifest | 3 + .../nano/files/nano-8.7-glibc-2.43-c23.patch | 142 ++++++++++++++++++ .../app-editors/nano/nano-8.7-r1.ebuild | 117 +++++++++++++++ .../app-editors/nano/nano-8.7.1.ebuild | 113 ++++++++++++++ .../app-editors/nano/nano-8.7.ebuild | 16 +- .../app-editors/nano/nano-9999.ebuild | 16 +- 6 files changed, 399 insertions(+), 8 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/app-editors/nano/files/nano-8.7-glibc-2.43-c23.patch create mode 100644 sdk_container/src/third_party/portage-stable/app-editors/nano/nano-8.7-r1.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/app-editors/nano/nano-8.7.1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/app-editors/nano/Manifest b/sdk_container/src/third_party/portage-stable/app-editors/nano/Manifest index 949c926f181..c716a24a634 100644 --- a/sdk_container/src/third_party/portage-stable/app-editors/nano/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-editors/nano/Manifest @@ -1,2 +1,5 @@ DIST nano-8.6.tar.xz 1707688 BLAKE2B f7e17085d237ec3512b21bb732c2ebcf71a96991344acd0efc3592a650be856aed3ad958df59e27f332f750ac5e46ba7ed06b23093c8b68c4bf0a94aeecd2af0 SHA512 f783c59d2fb47e121c63779c4ce8c6d5e90c31184ca28449c6c9270933d02e19ee60d29b6c9a1122fe59de1132d56d9e402cc63fc88f847cea2b4af6302524ea +DIST nano-8.7.1.tar.xz 1726976 BLAKE2B 25c73945c385c6615ad547cad65d6b7edc0098d5310951d09bd91991c93ef09ef2f58a5dec8a00a17c0326a64bce18a1819d2073af94a8afcf43df747843da3b SHA512 13ad1bfc7cbc43687d097b35f481d73021c3ef09c51753ac9e388661f3afe2b1f87c47f62cb51f19818f1f3abf9d2ee80424c44888c0bb3223112dd9b18a0a44 +DIST nano-8.7.1.tar.xz.asc 833 BLAKE2B 6d8e96c24cc9a5cf490d1ea8259fc26365fe2a923804e63eb079b3da4acb99bfb12b9adc37d9bdec0ca3f2ef3337b8c651e325962a5ef875e983614195489657 SHA512 71293b248d858b24fca5c150425f1fb89e572f76aa7cac1bec0689acfd6acda64b0f1ef8bb09a871a7f699e1dbd0e6ae277f5ff8dd201aabbff8fc8ed68fe0e1 DIST nano-8.7.tar.xz 1710220 BLAKE2B 4a7a67f854969960c96d1e3b2c7184f9d9c9fb305a14ff9764a39a8103ca5f5878f9e344b0dc522e27643f93e57582881ea8e664ac9c6eaa99c3b2d9632febdc SHA512 0aac5b1708b05a882cba57f718154e42a6cd8a57f1e1c13c76598fe85645c49703f0c17d2e650da90348eb60c2bdbe349925415b6511c27e5b1bea77d107ab37 +DIST nano-8.7.tar.xz.asc 833 BLAKE2B c5c12598bfa787ddcfcf48a0b6685f98f2577771d64eb7bec16e68767cfcbb928334bd4c729e7dd4fc919a49bf6a7f5ba145e0cb16b9af5b3c15d63c19b76ab6 SHA512 b525ae9bdd69eae326c364ffd76a03592f4012132fdbff061ec804741857f6cb7428ffa4ebb65ab584a3eb1ce310bf9865d4ad2f73b11d2b156b55bd2ade23c1 diff --git a/sdk_container/src/third_party/portage-stable/app-editors/nano/files/nano-8.7-glibc-2.43-c23.patch b/sdk_container/src/third_party/portage-stable/app-editors/nano/files/nano-8.7-glibc-2.43-c23.patch new file mode 100644 index 00000000000..1f375ec03c2 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-editors/nano/files/nano-8.7-glibc-2.43-c23.patch @@ -0,0 +1,142 @@ +https://bugs.gentoo.org/969220 +https://src.fedoraproject.org/rpms/nano/blob/rawhide/f/nano-8.7-gnulib-c23.patch + +From c028b6f1804a8fef398d7642d8ccb7d8f73150fb Mon Sep 17 00:00:00 2001 +From: Paul Eggert +Date: Sun, 23 Nov 2025 00:50:40 -0800 +Subject: [PATCH] Port to C23 qualifier-generic fns like strchr +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This ports Gnulib to strict C23 platforms that reject code +like ‘char *q = strchr (P, 'x');’ when P is a pointer to const, +because in C23 strchr is a qualifier-generic function so +strchr (P, 'x') returns char const *. +This patch does not attempt to do the following two things, +which might be useful in the future: +1. When compiling on non-C23 platforms, check user code for +portability to platforms that define qualifier-generic functions. +2. Port Gnulib to platforms that have qualifier-generic functions +not listed in the C23 standard, e.g., strchrnul. I don’t know +of any such platforms. +* lib/c++defs.h (_GL_FUNCDECL_SYS_NAME): New macro. +* lib/c++defs.h (_GL_FUNCDECL_SYS): +* lib/stdlib.in.h (bsearch): +Use it, to prevent C23 names like strchr from acting like macros. +* lib/string.in.h (memchr, strchr, strpbrk, strrchr): +Do not #undef when GNULIB_POSIXCHECK is defined, as this could +cause conforming C23 code to fail to conform. It’s not clear why +_GL_WARN_ON_USE_CXX; perhaps it was needed but isn’t any more? +But for now, limit the removal of #undef to these four functions +where #undeffing is clearly undesirable in C23. +* lib/wchar.in.h (wmemchr): Parenthesize function name in decl, +to prevent it from acting like a macro. + +Cherry-picked-by: Lukáš Zaoral +Upstream-commit: df17f4f37ed3ca373d23ad42eae51122bdb96626 +--- + lib/c++defs.h | 12 +++++++++++- + lib/stdlib.in.h | 6 +++--- + lib/string.in.h | 4 ---- + lib/wchar.in.h | 2 +- + 4 files changed, 15 insertions(+), 9 deletions(-) + +diff --git a/lib/c++defs.h b/lib/c++defs.h +index b77979a..7384457 100644 +--- a/lib/c++defs.h ++++ b/lib/c++defs.h +@@ -127,6 +127,16 @@ + #define _GL_FUNCDECL_RPL_1(rpl_func,rettype,parameters,...) \ + _GL_EXTERN_C_FUNC __VA_ARGS__ rettype rpl_func parameters + ++/* _GL_FUNCDECL_SYS_NAME (func) expands to plain func if C++, and to ++ parenthsized func otherwise. Parenthesization is needed in C23 if ++ the function is like strchr and so is a qualifier-generic macro ++ that expands to something more complicated. */ ++#ifdef __cplusplus ++# define _GL_FUNCDECL_SYS_NAME(func) func ++#else ++# define _GL_FUNCDECL_SYS_NAME(func) (func) ++#endif ++ + /* _GL_FUNCDECL_SYS (func, rettype, parameters, [attributes]); + declares the system function, named func, with the given prototype, + consisting of return type, parameters, and attributes. +@@ -139,7 +149,7 @@ + _GL_FUNCDECL_SYS (posix_openpt, int, (int flags), _GL_ATTRIBUTE_NODISCARD); + */ + #define _GL_FUNCDECL_SYS(func,rettype,parameters,...) \ +- _GL_EXTERN_C_FUNC __VA_ARGS__ rettype func parameters ++ _GL_EXTERN_C_FUNC __VA_ARGS__ rettype _GL_FUNCDECL_SYS_NAME (func) parameters + + /* _GL_CXXALIAS_RPL (func, rettype, parameters); + declares a C++ alias called GNULIB_NAMESPACE::func +diff --git a/lib/stdlib.in.h b/lib/stdlib.in.h +index bef0aaa..fd0e1e0 100644 +--- a/lib/stdlib.in.h ++++ b/lib/stdlib.in.h +@@ -224,9 +224,9 @@ _GL_INLINE_HEADER_BEGIN + + /* Declarations for ISO C N3322. */ + #if defined __GNUC__ && __GNUC__ >= 15 && !defined __clang__ +-_GL_EXTERN_C void *bsearch (const void *__key, +- const void *__base, size_t __nmemb, size_t __size, +- int (*__compare) (const void *, const void *)) ++_GL_EXTERN_C void *_GL_FUNCDECL_SYS_NAME (bsearch) ++ (const void *__key, const void *__base, size_t __nmemb, size_t __size, ++ int (*__compare) (const void *, const void *)) + _GL_ATTRIBUTE_NONNULL_IF_NONZERO (2, 3) _GL_ARG_NONNULL ((5)); + _GL_EXTERN_C void qsort (void *__base, size_t __nmemb, size_t __size, + int (*__compare) (const void *, const void *)) +diff --git a/lib/string.in.h b/lib/string.in.h +index fdcdd21..8b56acf 100644 +--- a/lib/string.in.h ++++ b/lib/string.in.h +@@ -409,7 +409,6 @@ _GL_CXXALIASWARN1 (memchr, void const *, + _GL_CXXALIASWARN (memchr); + # endif + #elif defined GNULIB_POSIXCHECK +-# undef memchr + /* Assume memchr is always declared. */ + _GL_WARN_ON_USE (memchr, "memchr has platform-specific bugs - " + "use gnulib module memchr for portability" ); +@@ -674,7 +673,6 @@ _GL_WARN_ON_USE (stpncpy, "stpncpy is unportable - " + #if defined GNULIB_POSIXCHECK + /* strchr() does not work with multibyte strings if the locale encoding is + GB18030 and the character to be searched is a digit. */ +-# undef strchr + /* Assume strchr is always declared. */ + _GL_WARN_ON_USE_CXX (strchr, + const char *, char *, (const char *, int), +@@ -981,7 +979,6 @@ _GL_CXXALIASWARN (strpbrk); + Even in this simple case, it does not work with multibyte strings if the + locale encoding is GB18030 and one of the characters to be searched is a + digit. */ +-# undef strpbrk + _GL_WARN_ON_USE_CXX (strpbrk, + const char *, char *, (const char *, const char *), + "strpbrk cannot work correctly on character strings " +@@ -1011,7 +1008,6 @@ _GL_WARN_ON_USE (strspn, "strspn cannot work correctly on character strings " + #if defined GNULIB_POSIXCHECK + /* strrchr() does not work with multibyte strings if the locale encoding is + GB18030 and the character to be searched is a digit. */ +-# undef strrchr + /* Assume strrchr is always declared. */ + _GL_WARN_ON_USE_CXX (strrchr, + const char *, char *, (const char *, int), +diff --git a/lib/wchar.in.h b/lib/wchar.in.h +index ab602a2..6be4515 100644 +--- a/lib/wchar.in.h ++++ b/lib/wchar.in.h +@@ -301,7 +301,7 @@ _GL_EXTERN_C int wcsncmp (const wchar_t *__s1, const wchar_t *__s2, size_t __n) + _GL_ATTRIBUTE_NONNULL_IF_NONZERO (1, 3) + _GL_ATTRIBUTE_NONNULL_IF_NONZERO (2, 3); + # ifndef __cplusplus +-_GL_EXTERN_C wchar_t *wmemchr (const wchar_t *__s, wchar_t __wc, size_t __n) ++_GL_EXTERN_C wchar_t *(wmemchr) (const wchar_t *__s, wchar_t __wc, size_t __n) + _GL_ATTRIBUTE_NONNULL_IF_NONZERO (1, 3); + # endif + _GL_EXTERN_C wchar_t *wmemset (wchar_t *__s, wchar_t __wc, size_t __n) +-- +2.52.0 diff --git a/sdk_container/src/third_party/portage-stable/app-editors/nano/nano-8.7-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-editors/nano/nano-8.7-r1.ebuild new file mode 100644 index 00000000000..9cb7919fc34 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-editors/nano/nano-8.7-r1.ebuild @@ -0,0 +1,117 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/nano.git" + inherit autotools git-r3 +else + MY_P="${PN}-${PV/_}" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bennoschulenberg.asc + inherit verify-sig + + SRC_URI=" + https://www.nano-editor.org/dist/v${PV:0:1}/${MY_P}.tar.xz + verify-sig? ( https://www.nano-editor.org/dist/v${PV:0:1}/${MY_P}.tar.xz.asc ) + " + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-bennoschulenberg )" +fi + +DESCRIPTION="GNU GPL'd Pico clone with more functionality" +HOMEPAGE="https://www.nano-editor.org/ https://wiki.gentoo.org/wiki/Nano/Guide" + +LICENSE="GPL-3+ LGPL-2.1+ || ( GPL-3+ FDL-1.2+ )" +SLOT="0" +IUSE="debug justify magic minimal ncurses nls +spell unicode" + +RDEPEND=" + >=sys-libs/ncurses-5.9-r1:=[unicode(+)?] + magic? ( sys-apps/file ) + nls? ( virtual/libintl ) +" +DEPEND="${RDEPEND}" +BDEPEND+=" + virtual/pkgconfig + nls? ( sys-devel/gettext ) +" + +REQUIRED_USE=" + magic? ( !minimal ) +" + +# gnulib FPs +QA_CONFIG_IMPL_DECL_SKIP=( unreachable MIN static_assert ) + +PATCHES=( + "${FILESDIR}"/${PN}-8.7-glibc-2.43-c23.patch +) + +src_prepare() { + default + + if [[ ${PV} == 9999 ]] ; then + eautoreconf + fi +} + +src_configure() { + local myconfargs=( + --bindir="${EPREFIX}"/bin + --htmldir=/trash + $(use_enable !minimal color) + $(use_enable !minimal multibuffer) + $(use_enable !minimal nanorc) + $(use_enable magic libmagic) + $(use_enable spell speller) + $(use_enable justify) + $(use_enable debug) + $(use_enable nls) + $(use_enable unicode utf8) + $(use_enable minimal tiny) + ) + + econf "${myconfargs[@]}" +} + +src_install() { + default + + # Don't use "${ED}" here or things break (#654534) + rm -r "${D}"/trash || die + + dodoc doc/sample.nanorc + docinto html + dodoc doc/faq.html + insinto /etc + newins doc/sample.nanorc nanorc + + if ! use minimal ; then + # Enable colorization by default. + sed -i \ + -e '/^# include /s:# *::' \ + "${ED}"/etc/nanorc || die + + # Since nano-5.0 these are no longer being "enabled" by default + # (bug #736848) + local rcdir="/usr/share/nano" + mv "${ED}"${rcdir}/extra/* "${ED}"/${rcdir}/ || die + rmdir "${ED}"${rcdir}/extra || die + + insinto "${rcdir}" + newins "${FILESDIR}/gentoo.nanorc-r1" gentoo.nanorc + fi +} + +pkg_postrm() { + [[ -n ${REPLACED_BY_VERSION} ]] && return + + local e + e=$(unset EDITOR; . "${EROOT}"/etc/profile &>/dev/null; echo "${EDITOR}") + if [[ ${e##*/} == nano ]]; then + ewarn "The EDITOR variable is still set to ${e}." + ewarn "You can update it with \"eselect editor\"." + fi +} diff --git a/sdk_container/src/third_party/portage-stable/app-editors/nano/nano-8.7.1.ebuild b/sdk_container/src/third_party/portage-stable/app-editors/nano/nano-8.7.1.ebuild new file mode 100644 index 00000000000..d53000a57bf --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-editors/nano/nano-8.7.1.ebuild @@ -0,0 +1,113 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/nano.git" + inherit autotools git-r3 +else + MY_P="${PN}-${PV/_}" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bennoschulenberg.asc + inherit verify-sig + + SRC_URI=" + https://www.nano-editor.org/dist/v${PV:0:1}/${MY_P}.tar.xz + verify-sig? ( https://www.nano-editor.org/dist/v${PV:0:1}/${MY_P}.tar.xz.asc ) + " + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-bennoschulenberg )" +fi + +DESCRIPTION="GNU GPL'd Pico clone with more functionality" +HOMEPAGE="https://www.nano-editor.org/ https://wiki.gentoo.org/wiki/Nano/Guide" + +LICENSE="GPL-3+ LGPL-2.1+ || ( GPL-3+ FDL-1.2+ )" +SLOT="0" +IUSE="debug justify magic minimal ncurses nls +spell unicode" + +RDEPEND=" + >=sys-libs/ncurses-5.9-r1:=[unicode(+)?] + magic? ( sys-apps/file ) + nls? ( virtual/libintl ) +" +DEPEND="${RDEPEND}" +BDEPEND+=" + virtual/pkgconfig + nls? ( sys-devel/gettext ) +" + +REQUIRED_USE=" + magic? ( !minimal ) +" + +# gnulib FPs +QA_CONFIG_IMPL_DECL_SKIP=( unreachable MIN static_assert ) + +src_prepare() { + default + + if [[ ${PV} == 9999 ]] ; then + eautoreconf + fi +} + +src_configure() { + local myconfargs=( + --bindir="${EPREFIX}"/bin + --htmldir=/trash + $(use_enable !minimal color) + $(use_enable !minimal multibuffer) + $(use_enable !minimal nanorc) + $(use_enable magic libmagic) + $(use_enable spell speller) + $(use_enable justify) + $(use_enable debug) + $(use_enable nls) + $(use_enable unicode utf8) + $(use_enable minimal tiny) + ) + + econf "${myconfargs[@]}" +} + +src_install() { + default + + # Don't use "${ED}" here or things break (#654534) + rm -r "${D}"/trash || die + + dodoc doc/sample.nanorc + docinto html + dodoc doc/faq.html + insinto /etc + newins doc/sample.nanorc nanorc + + if ! use minimal ; then + # Enable colorization by default. + sed -i \ + -e '/^# include /s:# *::' \ + "${ED}"/etc/nanorc || die + + # Since nano-5.0 these are no longer being "enabled" by default + # (bug #736848) + local rcdir="/usr/share/nano" + mv "${ED}"${rcdir}/extra/* "${ED}"/${rcdir}/ || die + rmdir "${ED}"${rcdir}/extra || die + + insinto "${rcdir}" + newins "${FILESDIR}/gentoo.nanorc-r1" gentoo.nanorc + fi +} + +pkg_postrm() { + [[ -n ${REPLACED_BY_VERSION} ]] && return + + local e + e=$(unset EDITOR; . "${EROOT}"/etc/profile &>/dev/null; echo "${EDITOR}") + if [[ ${e##*/} == nano ]]; then + ewarn "The EDITOR variable is still set to ${e}." + ewarn "You can update it with \"eselect editor\"." + fi +} diff --git a/sdk_container/src/third_party/portage-stable/app-editors/nano/nano-8.7.ebuild b/sdk_container/src/third_party/portage-stable/app-editors/nano/nano-8.7.ebuild index ab2720ef44c..ed81d2282d5 100644 --- a/sdk_container/src/third_party/portage-stable/app-editors/nano/nano-8.7.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-editors/nano/nano-8.7.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -8,8 +8,16 @@ if [[ ${PV} == 9999 ]] ; then inherit autotools git-r3 else MY_P="${PN}-${PV/_}" - SRC_URI="https://www.nano-editor.org/dist/v${PV:0:1}/${MY_P}.tar.xz" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bennoschulenberg.asc + inherit verify-sig + + SRC_URI=" + https://www.nano-editor.org/dist/v${PV:0:1}/${MY_P}.tar.xz + verify-sig? ( https://www.nano-editor.org/dist/v${PV:0:1}/${MY_P}.tar.xz.asc ) + " KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-bennoschulenberg )" fi DESCRIPTION="GNU GPL'd Pico clone with more functionality" @@ -25,9 +33,9 @@ RDEPEND=" nls? ( virtual/libintl ) " DEPEND="${RDEPEND}" -BDEPEND=" - nls? ( sys-devel/gettext ) +BDEPEND+=" virtual/pkgconfig + nls? ( sys-devel/gettext ) " REQUIRED_USE=" diff --git a/sdk_container/src/third_party/portage-stable/app-editors/nano/nano-9999.ebuild b/sdk_container/src/third_party/portage-stable/app-editors/nano/nano-9999.ebuild index 166cbbcd5a7..d53000a57bf 100644 --- a/sdk_container/src/third_party/portage-stable/app-editors/nano/nano-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-editors/nano/nano-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -8,8 +8,16 @@ if [[ ${PV} == 9999 ]] ; then inherit autotools git-r3 else MY_P="${PN}-${PV/_}" - SRC_URI="https://www.nano-editor.org/dist/v${PV:0:1}/${MY_P}.tar.xz" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bennoschulenberg.asc + inherit verify-sig + + SRC_URI=" + https://www.nano-editor.org/dist/v${PV:0:1}/${MY_P}.tar.xz + verify-sig? ( https://www.nano-editor.org/dist/v${PV:0:1}/${MY_P}.tar.xz.asc ) + " KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-bennoschulenberg )" fi DESCRIPTION="GNU GPL'd Pico clone with more functionality" @@ -25,9 +33,9 @@ RDEPEND=" nls? ( virtual/libintl ) " DEPEND="${RDEPEND}" -BDEPEND=" - nls? ( sys-devel/gettext ) +BDEPEND+=" virtual/pkgconfig + nls? ( sys-devel/gettext ) " REQUIRED_USE=" From e6ec92505c3c4d47b51bf4a38fef0b35d017ed9c Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:42 +0000 Subject: [PATCH 028/291] app-emulation/open-vmdk: Sync with Gentoo It's from Gentoo commit 2795317f30e1a28e41911ae9ec776536d20a73c8. Signed-off-by: Flatcar Buildbot --- .../app-emulation/open-vmdk/Manifest | 1 + .../app-emulation/open-vmdk/metadata.xml | 1 + .../open-vmdk/open-vmdk-0.3.13.ebuild | 81 +++++++++++++++++++ 3 files changed, 83 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/open-vmdk-0.3.13.ebuild diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/Manifest b/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/Manifest index b9dd2990b29..89a5ff8627b 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/Manifest @@ -1 +1,2 @@ DIST open-vmdk-0.3.12.tar.gz 72452 BLAKE2B 36600b454c45b8ac1c5fda3f4fde982baf02f4883f454d817eb0a5f7e388df7daefce148bd4d5baee1a6b97c90b29d70ef09c4de1db06342ad92c2583ae2df7f SHA512 4a038c899a9e3c013b830dab6514260e72d6905d6e5c2da864bdcc71f125639dc2aba68e9a4a27e96037a0200bd04d0ca2cc17306e8eaf2bf2913f9eaa0afb41 +DIST open-vmdk-0.3.13.tar.gz 85587 BLAKE2B b55e16c33eb2ac8f2700ff96f0e4008164df31c24a1f4f8ebd9f73d7343977a245cf15893830e9c1c9268714cefc5f82e858f12667281c5d24d1b6b7a9ad00d6 SHA512 ec729f4975d7d6c7206f1d4694abda9278a6203210415c9bcd0c17eb7174f947e5d0b841f33a6f211de42ec32f58937065edeb2e9e901f0c5f23f01a87ddbfea diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/metadata.xml b/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/metadata.xml index 8f2f214cac3..84d8b7bdddc 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/metadata.xml @@ -6,6 +6,7 @@ James Le Cuirot + Install the vmdk-fuse tool Install Python-based tools diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/open-vmdk-0.3.13.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/open-vmdk-0.3.13.ebuild new file mode 100644 index 00000000000..32fbb2ec3b0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/open-vmdk-0.3.13.ebuild @@ -0,0 +1,81 @@ +# Copyright 2025-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +inherit python-single-r1 toolchain-funcs + +DESCRIPTION="Tools for creating and converting OVA virtual appliance files" +HOMEPAGE="https://github.com/vmware/open-vmdk" +SRC_URI="https://github.com/vmware/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64" +IUSE="fuse +python test" +RESTRICT="!test? ( test )" +PROPERTIES="test_network fuse? ( test_privileged )" + +REQUIRED_USE=" + python? ( ${PYTHON_REQUIRED_USE} ) + test? ( ${PYTHON_REQUIRED_USE} ) +" + +PYDEPEND=" + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-libs/libxml2[python,${PYTHON_USEDEP}] + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/xmltodict[${PYTHON_USEDEP}] + ') +" +DEPEND=" + virtual/zlib + fuse? ( sys-fs/fuse:3= ) +" +RDEPEND=" + ${DEPEND} + python? ( ${PYDEPEND} ) +" +BDEPEND=" + fuse? ( virtual/pkgconfig ) + test? ( + fuse? ( sys-fs/e2fsprogs[fuse] ) + python? ( ${PYDEPEND} ) + $(python_gen_cond_dep ' + dev-python/pytest[${PYTHON_USEDEP}] + ') + ) +" + +pkg_setup() { + if use python || use test; then + python-single-r1_pkg_setup + fi +} + +my_emake() { + emake \ + "$(use python || echo DIRS='vmdk ova templates')" \ + PREFIX="${EPREFIX}/usr" \ + "${@}" +} + +src_compile() { + my_emake all $(usev fuse) CC="$(tc-getCC)" +} + +src_test() { + local ignore=() + use python || ignore+=( pytest/test_*configs.py $(grep -Flr .py pytest) ) + use fuse || ignore+=( pytest/test_fuse.py ) + use fuse && addwrite /dev/fuse + epytest "${ignore[@]/#/--ignore=}" +} + +src_install() { + my_emake install $(usex fuse install-fuse "") DESTDIR="${D}" + use python && python_fix_shebang "${ED}"/usr/bin +} From abe10200ccd58f11dab93d49400c0dc8b77fc33b Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:42 +0000 Subject: [PATCH 029/291] app-emulation/qemu: Sync with Gentoo It's from Gentoo commit 6330d73bba90d5420a54f9bc444a63828e120b53. Signed-off-by: Flatcar Buildbot --- .../app-emulation/qemu/Manifest | 1 - .../app-emulation/qemu/qemu-10.0.5.ebuild | 3 +- .../app-emulation/qemu/qemu-10.0.7.ebuild | 3 +- .../app-emulation/qemu/qemu-10.1.2.ebuild | 1022 ---------------- .../app-emulation/qemu/qemu-10.1.3-r1.ebuild | 3 +- .../app-emulation/qemu/qemu-10.2.0-r1.ebuild | 3 +- .../app-emulation/qemu/qemu-10.2.0.ebuild | 1025 ----------------- .../app-emulation/qemu/qemu-9.1.3-r2.ebuild | 3 +- .../app-emulation/qemu/qemu-9.2.3-r3.ebuild | 3 +- .../app-emulation/qemu/qemu-9.2.4.ebuild | 3 +- .../app-emulation/qemu/qemu-9999.ebuild | 1 + 11 files changed, 15 insertions(+), 2055 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.1.2.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.2.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/Manifest b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/Manifest index e786367a6fb..5c08d2191fa 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/Manifest @@ -6,7 +6,6 @@ DIST qemu-10.0.0-docs.tar.xz 2651472 BLAKE2B 38be083c0c046e975a829df280894284259 DIST qemu-10.0.5.tar.xz 141642600 BLAKE2B bd7abfd5a977cf47862f0a7b26ce4e36c857dd858e0d0def652c00e9186fe476f461005b673bac6031162b5de47d412c1b7faebdbf4456487501f6d4a37f69b7 SHA512 c87948868910f458aeb724ebfe71db10f0ca1e9e0e6b4c4f082c2776d1c8f64c36f65bc5714d4625f6919d4064452f4378a7578273b69db6d4295d90b75fc86f DIST qemu-10.0.7.tar.xz 141766020 BLAKE2B 13016dfe09da81417f3359f980b2b62a857a28e6acce2b01eba3f397b985c422e52f3c68724bfad73ce6fbeec65cabb02d2df09f08340f9dad68578d5e3f801e SHA512 6def50d5ed08fde787e982a5ae668f97323d40f1996bc299c4c79fbd2944eb14c3f4d1ceab977a0fe6f80298825a5285decc20afca1966a738900932fbfeb31d DIST qemu-10.1.0-docs.tar.xz 2788092 BLAKE2B c9f1138e6eb19966da05b5be6e28640cabf698cb7c4247e0a69b29ed71d462423ba356efc8c0f26a727a58b4adc84edc3eefbff12a35e0c93e475f0ab51e6ff7 SHA512 96d9133d83991014c3ce9a57273a017f45bf29ae3f7029c5b926c8c5fbfd0e8da80dbbecca038b981312cec68b931a0471837a0aebd3e5dbc1648eb49e28ecc9 -DIST qemu-10.1.2.tar.xz 142050300 BLAKE2B 6e6e27c5de4f70f928a19ef64c00adbcb9723882db3eabd6acd7543f6b3d886db2862cf75ddcec86012c103d6927be464f03e2a3e91873b87cbbcafa0be95671 SHA512 4defbcb78f65ba3d8079466bdb3ab29e26f10129723e045d34901e7d524656e5ff729dc97fb33537febe2596eb0b21a02aadd88007eb5b226e599bd236213263 DIST qemu-10.1.3.tar.xz 142006316 BLAKE2B d0e3781a7fe84190eb96e9dd34860222b74fd73da182684f289c359c2555e8b02c0f3e77d3342837fe2ff5c5ce3ad81dac642fae9eab1d9e52f2bcac28ffe6c0 SHA512 67608a5a422c93c494159d649a0afb296231ec2d96a6fc03b119375da4180162ba25a74bb6204a8cb36375709c1f682ef56c42961816dc2107f4d67bb8e10db4 DIST qemu-10.2.0-docs.tar.xz 2858324 BLAKE2B 0c7a66f401ace63568cb9bb09fbfa4a456037f2d9712576211c57674d3aa6dacf9c22e92f1b92bc92794b61f0bc674fa4e1c415fd4873330df4befc492395382 SHA512 f078f0a219a52a3bcb18d046b3b0b297cfba5dc1181ee67db45919fede46db2c0d83288ab430bff1673fca8ae39cb99d10d9b770b52970e324f4b6d94374c937 DIST qemu-10.2.0.tar.xz 141093360 BLAKE2B f0522a35221fbb4b2b2703c3a75be663e13a10357816ea60562323481c41bb18a93bf7202697df8a8b8f44e7685299ab3ffdc6bb791d785d8e4146658134d600 SHA512 cd910090cf8146fdd30151bded8bebe43d9e7fce8b84d9f87130a99d0bd908f310f4bef5484b53a56c29dd7a08410890d02d0a7ab90ce6af73522ff8ba5b364e diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.0.5.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.0.5.ebuild index 8ef7bd39958..2d0c5d1ec10 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.0.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.0.5.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -294,6 +294,7 @@ BDEPEND=" dev-python/distlib[${PYTHON_USEDEP}] dev-lang/perl >=dev-build/meson-0.63.0 + >=dev-util/gdbus-codegen-2.80.5-r1 app-alternatives/ninja virtual/pkgconfig doc? ( diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.0.7.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.0.7.ebuild index 48f9d389036..b05e04c2ea3 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.0.7.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.0.7.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -294,6 +294,7 @@ BDEPEND=" dev-python/distlib[${PYTHON_USEDEP}] dev-lang/perl >=dev-build/meson-0.63.0 + >=dev-util/gdbus-codegen-2.80.5-r1 app-alternatives/ninja virtual/pkgconfig doc? ( diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.1.2.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.1.2.ebuild deleted file mode 100644 index b2769d44c59..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.1.2.ebuild +++ /dev/null @@ -1,1022 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-qemu-docs -# Set to 1 if prebuilt, 0 if not -# (the construct below is to allow overriding from env for script) -QEMU_DOCS_PREBUILT=${QEMU_DOCS_PREBUILT:-1} -QEMU_DOCS_PREBUILT_DEV=sam -QEMU_DOCS_VERSION=$(ver_cut 1-2).0 -# Default to generating docs (inc. man pages) if no prebuilt; overridden later -# bug #830088 -QEMU_DOC_USEFLAG="+doc" - -PYTHON_COMPAT=( python3_{12..13} ) -PYTHON_REQ_USE="ensurepip(-),ncurses,readline" - -inherit eapi9-ver flag-o-matic linux-info toolchain-funcs python-r1 udev fcaps \ - readme.gentoo-r1 pax-utils xdg-utils - -if [[ ${PV} == *9999* ]]; then - QEMU_DOCS_PREBUILT=0 - - EGIT_REPO_URI="https://gitlab.com/qemu-project/qemu.git/" - EGIT_SUBMODULES=() - inherit git-r3 - declare -A SUBPROJECTS=( - [keycodemapdb]="f5772a62ec52591ff6870b7e8ef32482371f22c6" - [berkeley-softfloat-3]="b64af41c3276f97f0e181920400ee056b9c88037" - [berkeley-testfloat-3]="e7af9751d9f9fd3b47911f51a5cfd08af256a9ab" - ) - - for proj in "${!SUBPROJECTS[@]}"; do - c=${SUBPROJECTS[${proj}]} - SRC_URI+=" https://gitlab.com/qemu-project/${proj}/-/archive/${c}/${proj}-${c}.tar.bz2" - done -else - MY_P="${PN}-${PV/_rc/-rc}" - SRC_URI="https://download.qemu.org/${MY_P}.tar.xz" - - if [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then - SRC_URI+=" !doc? ( https://dev.gentoo.org/~${QEMU_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${QEMU_DOCS_VERSION}-docs.tar.xz )" - fi - - S="${WORKDIR}/${MY_P}" - [[ "${PV}" != *_rc* ]] && KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" -fi - -DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" -HOMEPAGE="https://www.qemu.org https://www.linux-kvm.org" - -LICENSE="GPL-2 LGPL-2 BSD-2" -SLOT="0" - -[[ ${QEMU_DOCS_PREBUILT} == 1 ]] && QEMU_DOC_USEFLAG="doc" - -IUSE="accessibility +aio alsa bpf bzip2 capstone +curl debug ${QEMU_DOC_USEFLAG} - +fdt fuse glusterfs +gnutls gtk infiniband iscsi io-uring - jack jemalloc +jpeg keyutils - lzo multipath - ncurses nfs nls numa opengl +oss pam passt +pin-upstream-blobs pipewire - plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux - +slirp - smartcard snappy spice ssh static-user systemtap test udev usb - usbredir valgrind vde +vhost-net virgl virtfs +vnc vte wayland X xattr xdp xen - zstd" - -COMMON_TARGETS=" - aarch64 - alpha - arm - hppa - i386 - loongarch64 - m68k - microblaze - microblazeel - mips - mips64 - mips64el - mipsel - or1k - ppc - ppc64 - riscv32 - riscv64 - s390x - sh4 - sh4eb - sparc - sparc64 - x86_64 - xtensa - xtensaeb -" -IUSE_SOFTMMU_TARGETS=" - ${COMMON_TARGETS} - avr - rx - tricore -" -IUSE_USER_TARGETS=" - ${COMMON_TARGETS} - aarch64_be - armeb - hexagon - mipsn32 - mipsn32el - ppc64le - sparc32plus -" - -use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS}) -use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS}) -IUSE+=" ${use_softmmu_targets} ${use_user_targets}" - -RESTRICT="!test? ( test )" - -# Allow no targets to be built so that people can get a tools-only build. -# Block USE flag configurations known to not work. -REQUIRED_USE=" - ${PYTHON_REQUIRED_USE} - qemu_softmmu_targets_arm? ( fdt ) - qemu_softmmu_targets_microblaze? ( fdt ) - qemu_softmmu_targets_mips64el? ( fdt ) - qemu_softmmu_targets_ppc64? ( fdt ) - qemu_softmmu_targets_ppc? ( fdt ) - qemu_softmmu_targets_riscv32? ( fdt ) - qemu_softmmu_targets_riscv64? ( fdt ) - qemu_softmmu_targets_x86_64? ( fdt ) - sdl-image? ( sdl ) - static-user? ( !plugins ) - virgl? ( opengl ) - virtfs? ( xattr ) - vnc? ( gnutls ) - vte? ( gtk ) - multipath? ( udev ) - plugins? ( !static-user ) - xdp? ( bpf ) -" -for smname in ${IUSE_SOFTMMU_TARGETS} ; do - REQUIRED_USE+=" qemu_softmmu_targets_${smname}? ( kernel_linux? ( seccomp ) )" -done - -# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...) -# and user/softmmu targets (qemu-*, qemu-system-*). -# -# Yep, you need both libcap and libcap-ng since virtfs only uses libcap. -# -# The attr lib isn't always linked in (although the USE flag is always -# respected). This is because qemu supports using the C library's API -# when available rather than always using the external library. -ALL_DEPEND=" - dev-libs/glib:2[static-libs(+)] - virtual/zlib:=[static-libs(+)] - python? ( ${PYTHON_DEPS} ) - systemtap? ( dev-debug/systemtap ) - xattr? ( sys-apps/attr[static-libs(+)] ) -" - -# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...) -# softmmu targets (qemu-system-*). -SOFTMMU_TOOLS_DEPEND=" - >=x11-libs/pixman-0.28.0[static-libs(+)] - accessibility? ( - app-accessibility/brltty[api] - app-accessibility/brltty[static-libs(+)] - ) - aio? ( dev-libs/libaio[static-libs(+)] ) - alsa? ( >=media-libs/alsa-lib-1.0.13 ) - bpf? ( >=dev-libs/libbpf-1.1.0:= ) - bzip2? ( app-arch/bzip2[static-libs(+)] ) - capstone? ( dev-libs/capstone:=[static-libs(+)] ) - curl? ( >=net-misc/curl-7.15.4[static-libs(+)] ) - fdt? ( >=sys-apps/dtc-1.5.1[static-libs(+)] ) - fuse? ( >=sys-fs/fuse-3.1:3=[static-libs(+)] ) - glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] ) - gnutls? ( - >=net-libs/gnutls-3.0:=[static-libs(+)] - dev-libs/nettle:=[static-libs(+)] - ) - gtk? ( - x11-libs/gtk+:3[wayland?,X?] - vte? ( x11-libs/vte:2.91 ) - ) - infiniband? ( sys-cluster/rdma-core[static-libs(+)] ) - iscsi? ( net-libs/libiscsi ) - io-uring? ( sys-libs/liburing:=[static-libs(+)] ) - jack? ( virtual/jack ) - jemalloc? ( dev-libs/jemalloc ) - jpeg? ( media-libs/libjpeg-turbo:=[static-libs(+)] ) - kernel_linux? ( sys-libs/libcap-ng[static-libs(+)] ) - keyutils? ( sys-apps/keyutils[static-libs(+)] ) - lzo? ( dev-libs/lzo:2[static-libs(+)] ) - multipath? ( sys-fs/multipath-tools ) - ncurses? ( - sys-libs/ncurses:=[unicode(+)] - sys-libs/ncurses:=[static-libs(+)] - ) - nfs? ( >=net-fs/libnfs-1.9.3:=[static-libs(+)] ) - numa? ( sys-process/numactl[static-libs(+)] ) - opengl? ( - virtual/opengl - media-libs/libepoxy[static-libs(+)] - media-libs/mesa[static-libs(+)] - media-libs/mesa[egl(+),gbm(+)] - ) - pam? ( sys-libs/pam ) - passt? ( net-misc/passt ) - pipewire? ( >=media-video/pipewire-0.3.60 ) - png? ( >=media-libs/libpng-1.6.34:=[static-libs(+)] ) - pulseaudio? ( media-libs/libpulse ) - rbd? ( sys-cluster/ceph ) - sasl? ( dev-libs/cyrus-sasl[static-libs(+)] ) - sdl? ( - media-libs/libsdl2[video] - media-libs/libsdl2[static-libs(+)] - ) - sdl-image? ( media-libs/sdl2-image[static-libs(+)] ) - seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] ) - slirp? ( net-libs/libslirp[static-libs(+)] ) - smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] ) - snappy? ( app-arch/snappy:= ) - spice? ( - >=app-emulation/spice-protocol-0.14.0 - >=app-emulation/spice-0.14.0[static-libs(+)] - ) - ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] ) - udev? ( virtual/libudev:= ) - usb? ( >=virtual/libusb-1-r2:1[static-libs(+)] ) - usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] ) - vde? ( net-misc/vde[static-libs(+)] ) - virgl? ( media-libs/virglrenderer[static-libs(+)] ) - virtfs? ( sys-libs/libcap ) - xdp? ( net-libs/xdp-tools ) - xen? ( app-emulation/xen-tools:= ) - zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] ) -" - -# -# With USE=+pin-upstream-blobs we pin firmware versions to known good -# version in order to minimize the frequency of disruptive changes. This -# avoids unnecessary frustration on user side because changing the firmware -# version can break resume of hibernated guest, inhibit live migrations, -# and might have other unwanted consequences. For now, let us try to -# synchronize firmware blobs with the ones bundled in upstream qemu. Simply -# check the upstream git repository for any changes, for example: -# https://github.com/qemu/qemu/tree/v10.0.2/roms for the 10.0.2 release. -# -# When changing pinned firmware versions -# - create a separate ebuild with revision -r50 -# - update the FIRMWARE_ABI_VERSION to the current package version -# - -FIRMWARE_ABI_VERSION="10.0.2" -EDK2_OVMF_VERSION="202408" -SEABIOS_VERSION="1.16.3" - -X86_FIRMWARE_DEPEND=" - pin-upstream-blobs? ( - ~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION} - ~sys-firmware/ipxe-1.21.1_p20230601[binary,qemu] - ~sys-firmware/seabios-bin-${SEABIOS_VERSION} - ~sys-firmware/sgabios-0.1_pre10[binary] - ) - !pin-upstream-blobs? ( - || ( - >=sys-firmware/edk2-${EDK2_OVMF_VERSION} - >=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION} - ) - sys-firmware/ipxe[qemu] - || ( - >=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios] - >=sys-firmware/seabios-bin-${SEABIOS_VERSION} - ) - sys-firmware/sgabios - ) -" -PPC_FIRMWARE_DEPEND=" - pin-upstream-blobs? ( - ~sys-firmware/seabios-bin-${SEABIOS_VERSION} - ) - !pin-upstream-blobs? ( - || ( - >=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios] - >=sys-firmware/seabios-bin-${SEABIOS_VERSION} - ) - ) -" - -# See bug #913084 for pip dep -BDEPEND=" - ${PYTHON_DEPS} - dev-python/distlib[${PYTHON_USEDEP}] - dev-lang/perl - >=dev-build/meson-0.63.0 - app-alternatives/ninja - virtual/pkgconfig - doc? ( - >=dev-python/sphinx-1.6.0[${PYTHON_USEDEP}] - dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}] - ) - gtk? ( nls? ( sys-devel/gettext ) ) - test? ( - app-alternatives/bc - dev-libs/glib[utils] - dev-python/pycotap[${PYTHON_USEDEP}] - ) -" -CDEPEND=" - ${ALL_DEPEND//\[static-libs(+)]} - ${SOFTMMU_TOOLS_DEPEND//\[static-libs(+)]} - qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} ) - qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} ) - qemu_softmmu_targets_ppc? ( ${PPC_FIRMWARE_DEPEND} ) - qemu_softmmu_targets_ppc64? ( ${PPC_FIRMWARE_DEPEND} ) -" -DEPEND=" - ${CDEPEND} - kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 ) - static-user? ( ${ALL_DEPEND} ) - valgrind? ( dev-debug/valgrind ) -" -RDEPEND=" - ${CDEPEND} - acct-group/kvm - selinux? ( - sec-policy/selinux-qemu - sys-libs/libselinux - ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-10.1.2-fix_passt.patch - "${FILESDIR}"/${PN}-9.0.0-disable-keymap.patch - "${FILESDIR}"/${PN}-9.2.0-capstone-include-path.patch - "${FILESDIR}"/${PN}-8.1.0-skip-tests.patch - "${FILESDIR}"/${PN}-8.1.0-find-sphinx.patch - "${FILESDIR}"/${PN}-7.2.16-optionrom-pass-Wl-no-error-rwx-segments.patch -) - -QA_PREBUILT=" - usr/share/qemu/hppa-firmware.img - usr/share/qemu/hppa-firmware64.img - usr/share/qemu/openbios-ppc - usr/share/qemu/openbios-sparc64 - usr/share/qemu/openbios-sparc32 - usr/share/qemu/opensbi-riscv64-generic-fw_dynamic.elf - usr/share/qemu/opensbi-riscv32-generic-fw_dynamic.elf - usr/share/qemu/palcode-clipper - usr/share/qemu/s390-ccw.img - usr/share/qemu/s390-netboot.img - usr/share/qemu/u-boot.e500 -" - -QA_WX_LOAD=" - usr/bin/qemu-i386 - usr/bin/qemu-x86_64 - usr/bin/qemu-alpha - usr/bin/qemu-arm - usr/bin/qemu-cris - usr/bin/qemu-m68k - usr/bin/qemu-microblaze - usr/bin/qemu-microblazeel - usr/bin/qemu-mips - usr/bin/qemu-mipsel - usr/bin/qemu-or1k - usr/bin/qemu-ppc - usr/bin/qemu-ppc64 - usr/bin/qemu-sh4 - usr/bin/qemu-sh4eb - usr/bin/qemu-sparc - usr/bin/qemu-sparc64 - usr/bin/qemu-armeb - usr/bin/qemu-sparc32plus - usr/bin/qemu-s390x - usr/bin/qemu-unicore32 -" - -DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure you have the -kernel module loaded before running kvm. The easiest way to ensure that the -kernel module is loaded is to load it on boot. - For AMD CPUs the module is called 'kvm-amd'. - For Intel CPUs the module is called 'kvm-intel'. -Please review /etc/conf.d/modules for how to load these. - -Make sure your user is in the 'kvm' group. Just run - # gpasswd -a kvm -then have re-login. - -For brand new installs, the default permissions on /dev/kvm might not let -you access it. You can tell udev to reset ownership/perms: - # udevadm trigger -c add /dev/kvm - -If you want to register binfmt handlers for qemu user targets: -For openrc: - # rc-update add qemu-binfmt -For systemd: - # ln -s /usr/share/qemu/binfmt.d/qemu.conf /etc/binfmt.d/qemu.conf" - -pkg_pretend() { - if use kernel_linux && kernel_is lt 2 6 25; then - eerror "This version of KVM requires a host kernel of 2.6.25 or higher." - elif use kernel_linux; then - if ! linux_config_exists; then - eerror "Unable to check your kernel for KVM support" - else - CONFIG_CHECK="~KVM ~TUN ~BRIDGE" - ERROR_KVM="You must enable KVM in your kernel to continue" - ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in" - ERROR_KVM_AMD+=" your kernel configuration." - ERROR_KVM_INTEL="If you have an Intel CPU, you must enable" - ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration." - ERROR_TUN="You will need the Universal TUN/TAP driver compiled" - ERROR_TUN+=" into your kernel or loaded as a module to use the" - ERROR_TUN+=" virtual network device if using -net tap." - ERROR_BRIDGE="You will also need support for 802.1d" - ERROR_BRIDGE+=" Ethernet Bridging for some network configurations." - use vhost-net && CONFIG_CHECK+=" ~VHOST_NET" - ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net" - ERROR_VHOST_NET+=" support" - use test && CONFIG_CHECK+=" IP_MULTICAST" - ERROR_IP_MULTICAST="Test suite requires IP_MULTICAST" - - if use amd64 || use x86; then - if grep -q AuthenticAMD /proc/cpuinfo; then - CONFIG_CHECK+=" ~KVM_AMD" - elif grep -q GenuineIntel /proc/cpuinfo; then - CONFIG_CHECK+=" ~KVM_INTEL" - fi - fi - - use python && CONFIG_CHECK+=" ~DEBUG_FS" - ERROR_DEBUG_FS="debugFS support required for kvm_stat" - - # Now do the actual checks setup above - check_extra_config - fi - fi - - if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then - eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt" - eerror "instances are still pointing to it. Please update your" - eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag" - eerror "and the right system binary (e.g. qemu-system-x86_64)." - die "update your virt configs to not use qemu-kvm" - fi -} - -# Sanity check to make sure target lists are kept up-to-date. -check_targets() { - local var=$1 mak=$2 - local detected sorted - - pushd "${S}"/configs/targets/ >/dev/null || die - - # Force C locale until glibc is updated. #564936 - detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u)) - sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u)) - if [[ ${sorted} != "${detected}" ]] ; then - eerror "The ebuild needs to be kept in sync." - eerror "${var}: ${sorted}" - eerror "$(printf '%-*s' ${#var} configure): ${detected}" - die "sync ${var} to the list of targets" - fi - - popd >/dev/null -} - -src_unpack() { - if [[ ${PV} == 9999 ]] ; then - git-r3_src_unpack - for file in ${A}; do - unpack "${file}" - done - cd "${WORKDIR}" || die - for proj in "${!SUBPROJECTS[@]}"; do - mv "${proj}-${SUBPROJECTS[${proj}]}" "${S}/subprojects/${proj}" || die - done - cd "${S}" || die - meson subprojects packagefiles --apply || die - else - default - fi -} - -src_prepare() { - check_targets IUSE_SOFTMMU_TARGETS softmmu - check_targets IUSE_USER_TARGETS linux-user - - default - - # Use correct toolchain to fix cross-compiling - tc-export AR AS LD NM OBJCOPY PKG_CONFIG RANLIB STRINGS - export WINDRES=${CHOST}-windres - - # defang automagic dependencies - use X || append-flags -DGENTOO_GTK_HIDE_X11 - use wayland || append-flags -DGENTOO_GTK_HIDE_WAYLAND - - # Workaround for bug #938302 - if use systemtap && has_version "dev-debug/systemtap[-dtrace-symlink(+)]" ; then - cat >> "${S}"/configs/meson/linux.txt <<-EOF || die - [binaries] - dtrace='stap-dtrace' - EOF - fi - - # Verbose builds - MAKEOPTS+=" V=1" - - # Remove bundled modules - rm -r roms/*/ || die -} - -## -# configures qemu based on the build directory and the build type -# we are using. -# -qemu_src_configure() { - debug-print-function ${FUNCNAME} "$@" - - local buildtype=$1 - local builddir="${S}/${buildtype}-build" - - mkdir "${builddir}" || die - - local conf_opts=( - --prefix=/usr - --sysconfdir=/etc - --bindir=/usr/bin - --libdir=/usr/$(get_libdir) - --datadir=/usr/share - --docdir=/usr/share/doc/${PF}/html - --mandir=/usr/share/man - --localstatedir=/var - --disable-bsd-user - --disable-containers # bug #732972 - --disable-guest-agent - --disable-strip - --disable-download - --python="${PYTHON}" - - # bug #746752: TCG interpreter has a few limitations: - # - it does not support FPU - # - it's generally slower on non-self-modifying code - # It's advantage is support for host architectures - # where native codegeneration is not implemented. - # Gentoo has qemu keyworded only on targets with - # native code generation available. Avoid the interpreter. - --disable-tcg-interpreter - - --disable-werror - # We support gnutls/nettle for crypto operations. It is possible - # to use gcrypt when gnutls/nettle are disabled (but not when they - # are enabled), but it's not really worth the hassle. Disable it - # all the time to avoid automatically detecting it. #568856 - --disable-gcrypt - --cc="$(tc-getCC)" - --cxx="$(tc-getCXX)" - --objcc="$(tc-getCC)" - --host-cc="$(tc-getBUILD_CC)" - - $(use_enable alsa) - $(use_enable debug debug-info) - $(use_enable debug debug-tcg) - $(use_enable jack) - $(use_enable nls gettext) - $(use_enable oss) - $(use_enable pipewire) - $(use_enable plugins) - $(use_enable pulseaudio pa) - $(use_enable selinux) - $(use_enable xattr attr) - $(use_enable valgrind) - ) - - # Disable options not used by user targets. This simplifies building - # static user targets (USE=static-user) considerably. - conf_notuser() { - if [[ ${buildtype} == "user" ]] ; then - echo "--disable-${2:-$1}" - else - use_enable "$@" - fi - } - # Enable option only for softmmu build, but not 'user' or 'tools' - conf_softmmu() { - if [[ ${buildtype} == "softmmu" ]] ; then - use_enable "$@" - else - echo "--disable-${2:-$1}" - fi - } - # Enable option only for tools build, but not 'user' or 'softmmu' - conf_tools() { - if [[ ${buildtype} == "tools" ]] ; then - use_enable "$@" - else - echo "--disable-${2:-$1}" - fi - } - # Special case for the malloc flag, because the --disable flag does - # not exist and trying like above will break configuring. - conf_malloc() { - if [[ ! ${buildtype} == "user" ]] ; then - usex "${1}" "--enable-malloc=${1}" "" - fi - } - conf_opts+=( - $(conf_notuser accessibility brlapi) - $(conf_notuser aio linux-aio) - $(conf_softmmu bpf) - $(conf_notuser bzip2) - $(conf_notuser capstone) - $(conf_notuser curl) - $(conf_tools doc docs) - $(conf_notuser fdt) - $(conf_notuser fuse) - $(conf_notuser glusterfs) - $(conf_notuser gnutls) - $(conf_notuser gnutls nettle) - $(conf_notuser gtk) - $(conf_notuser infiniband rdma) - $(conf_notuser iscsi libiscsi) - $(conf_notuser io-uring linux-io-uring) - $(conf_malloc jemalloc) - $(conf_notuser jpeg vnc-jpeg) - $(conf_notuser kernel_linux kvm) - $(conf_notuser keyutils libkeyutils) - $(conf_notuser lzo) - $(conf_notuser multipath mpath) - $(conf_notuser ncurses curses) - $(conf_notuser nfs libnfs) - $(conf_notuser numa) - $(conf_notuser opengl) - $(conf_notuser pam auth-pam) - $(conf_notuser passt) - $(conf_notuser passt gio) - $(conf_notuser png) - $(conf_notuser rbd) - $(conf_notuser sasl vnc-sasl) - $(conf_notuser sdl) - $(conf_softmmu sdl-image) - $(conf_notuser seccomp) - $(conf_notuser slirp) - $(conf_notuser smartcard) - $(conf_notuser snappy) - $(conf_notuser spice) - $(conf_notuser ssh libssh) - $(conf_notuser udev libudev) - $(conf_notuser usb libusb) - $(conf_notuser usbredir usb-redir) - $(conf_notuser vde) - $(conf_notuser vhost-net) - $(conf_notuser virgl virglrenderer) - $(conf_softmmu virtfs) - $(conf_notuser vnc) - $(conf_notuser vte) - $(conf_softmmu xdp af-xdp) - $(conf_notuser xen) - $(conf_notuser xen xen-pci-passthrough) - # use prebuilt keymaps, bug #759604 - --disable-xkbcommon - $(conf_notuser zstd) - ) - - if [[ ! ${buildtype} == "user" ]] ; then - # audio options - local audio_opts=( - # Note: backend order matters here: #716202 - # We iterate from higher-level to lower level. - $(usex pulseaudio pa "") - $(usev pipewire) - $(usev jack) - $(usev sdl) - $(usev alsa) - $(usev oss) - ) - conf_opts+=( - --audio-drv-list=$(IFS=,; echo "${audio_opts[*]}") - ) - fi - - case ${buildtype} in - user) - conf_opts+=( - --enable-linux-user - --disable-system - --disable-tools - --disable-cap-ng - --disable-seccomp - ) - local static_flag="static-user" - ;; - softmmu) - conf_opts+=( - --disable-linux-user - --enable-system - --disable-tools - --enable-cap-ng - --enable-seccomp - --disable-libcbor - ) - local static_flag="none" - ;; - tools) - conf_opts+=( - --disable-linux-user - --disable-system - --enable-tools - --enable-cap-ng - ) - local static_flag="none" - ;; - esac - - local targets="${buildtype}_targets" - [[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" ) - - # Add support for SystemTap - use systemtap && conf_opts+=( --enable-trace-backends="dtrace" ) - - # We always want to attempt to build with PIE support as it results - # in a more secure binary. But it doesn't work with static or if - # the current GCC doesn't have PIE support. - if [[ ${static_flag} != "none" ]] && use ${static_flag}; then - conf_opts+=( --static --disable-pie ) - else - tc-enables-pie && conf_opts+=( --enable-pie ) - fi - - # Meson will not use a cross-file unless cross_prefix is set. - tc-is-cross-compiler && conf_opts+=( --cross-prefix="${CHOST}-" ) - - # Plumb through equivalent of EXTRA_ECONF to allow experiments - # like bug #747928. - conf_opts+=( ${EXTRA_CONF_QEMU} ) - - echo "../configure ${conf_opts[*]}" - cd "${builddir}" - ../configure "${conf_opts[@]}" || die "configure failed" -} - -src_configure() { - local target - - python_setup - - softmmu_targets= softmmu_bins=() - user_targets= user_bins=() - - for target in ${IUSE_SOFTMMU_TARGETS} ; do - if use "qemu_softmmu_targets_${target}"; then - softmmu_targets+=",${target}-softmmu" - softmmu_bins+=( "qemu-system-${target}" ) - fi - done - - for target in ${IUSE_USER_TARGETS} ; do - if use "qemu_user_targets_${target}"; then - user_targets+=",${target}-linux-user" - user_bins+=( "qemu-${target}" ) - fi - done - - softmmu_targets=${softmmu_targets#,} - user_targets=${user_targets#,} - - [[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu" - [[ -n ${user_targets} ]] && qemu_src_configure "user" - qemu_src_configure "tools" -} - -src_compile() { - if [[ -n ${user_targets} ]]; then - cd "${S}/user-build" || die - default - fi - - if [[ -n ${softmmu_targets} ]]; then - cd "${S}/softmmu-build" || die - default - fi - - cd "${S}/tools-build" || die - default -} - -src_test() { - if [[ -n ${softmmu_targets} ]]; then - cd "${S}/softmmu-build" || die - pax-mark m */qemu-system-* #515550 - emake check - fi -} - -qemu_python_install() { - python_domodule "${S}/python/qemu" - - python_doscript "${S}/scripts/kvm/vmxcap" - python_doscript "${S}/scripts/qmp/qmp-shell" - python_doscript "${S}/scripts/qmp/qemu-ga-client" -} - -# Generate binfmt support files. -# - /etc/init.d/qemu-binfmt script which registers the user handlers (openrc) -# - /usr/share/qemu/binfmt.d/qemu.conf (for use with systemd-binfmt) -generate_initd() { - local out="${T}/qemu-binfmt" - local out_systemd="${T}/qemu.conf" - local d="${T}/binfmt.d" - - einfo "Generating qemu binfmt scripts and configuration files" - - # Generate the debian fragments first. - mkdir -p "${d}" - "${S}"/scripts/qemu-binfmt-conf.sh \ - --debian \ - --exportdir "${d}" \ - --qemu-path "${EPREFIX}/usr/bin" \ - || die - # Then turn the fragments into a shell script we can source. - sed -E -i \ - -e 's:^([^ ]+) (.*)$:\1="\2":' \ - "${d}"/* || die - - # Generate the init.d script by assembling the fragments from above. - local f qcpu package interpreter magic mask - cat "${FILESDIR}"/qemu-binfmt.initd.head >"${out}" || die - for f in "${d}"/qemu-* ; do - source "${f}" - - # Normalize the cpu logic like we do in the init.d for the native cpu. - qcpu=${package#qemu-} - case ${qcpu} in - arm*) qcpu="arm";; - mips*) qcpu="mips";; - ppc*) qcpu="ppc";; - s390*) qcpu="s390";; - sh*) qcpu="sh";; - sparc*) qcpu="sparc";; - esac - - # we use 'printf' here to be portable across 'sh' - # implementations: #679168 - cat <>"${out}" - if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then - printf '%s\n' ':${package}:M::${magic}:${mask}:${interpreter}:'"\${QEMU_BINFMT_FLAGS}" >/proc/sys/fs/binfmt_misc/register - fi -EOF - - echo ":${package}:M::${magic}:${mask}:${interpreter}:OC" >>"${out_systemd}" - - done - cat "${FILESDIR}"/qemu-binfmt.initd.tail >>"${out}" || die -} - -src_install() { - if [[ -n ${user_targets} ]]; then - cd "${S}/user-build" - emake DESTDIR="${ED}" install - - # Install binfmt handler init script for user targets. - generate_initd - doinitd "${T}/qemu-binfmt" - - # Install binfmt/qemu.conf. - insinto "/usr/share/qemu/binfmt.d" - doins "${T}/qemu.conf" - fi - - if [[ -n ${softmmu_targets} ]]; then - cd "${S}/softmmu-build" - emake DESTDIR="${ED}" install - - # This might not exist if the test failed. #512010 - [[ -e check-report.html ]] && dodoc check-report.html - - if use kernel_linux; then - udev_newrules "${FILESDIR}"/65-kvm.rules-r2 65-kvm.rules - fi - - if use python; then - python_foreach_impl qemu_python_install - fi - fi - - cd "${S}/tools-build" || die - emake DESTDIR="${ED}" install - - # If USE=doc, there'll be newly generated docs which we install instead. - if ! use doc && [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then - doman "${WORKDIR}"/${PN}-${QEMU_DOCS_VERSION}-docs/docs/*.[0-8] - fi - - # Disable mprotect on the qemu binaries as they use JITs to be fast #459348 - pushd "${ED}"/usr/bin >/dev/null || die - pax-mark mr "${softmmu_bins[@]}" "${user_bins[@]}" # bug 575594 - popd >/dev/null || die - - # suid in src_install to allow FEATURES=suidctl to work properly - fperms u+s /usr/libexec/qemu-bridge-helper - - # Install config file example for qemu-bridge-helper - insinto "/etc/qemu" - doins "${FILESDIR}/bridge.conf" - - cd "${S}" || die - dodoc MAINTAINERS - newdoc pc-bios/README README.pc-bios - - # Disallow stripping of prebuilt firmware files. - dostrip -x ${QA_PREBUILT} - - if [[ -n ${softmmu_targets} ]]; then - # Remove SeaBIOS since we're using the SeaBIOS packaged one - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../seabios/bios-256k.bin /usr/share/qemu/bios-256k.bin - fi - - # Remove vgabios since we're using the seavgabios packaged one - rm "${ED}/usr/share/qemu/vgabios.bin" - rm "${ED}/usr/share/qemu/vgabios-cirrus.bin" - rm "${ED}/usr/share/qemu/vgabios-qxl.bin" - rm "${ED}/usr/share/qemu/vgabios-stdvga.bin" - rm "${ED}/usr/share/qemu/vgabios-virtio.bin" - rm "${ED}/usr/share/qemu/vgabios-vmware.bin" - - # PPC/PPC64 loads vgabios-stdvga - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64; then - dosym ../seavgabios/vgabios-isavga.bin /usr/share/qemu/vgabios.bin - dosym ../seavgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin - dosym ../seavgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin - dosym ../seavgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin - dosym ../seavgabios/vgabios-virtio.bin /usr/share/qemu/vgabios-virtio.bin - dosym ../seavgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin - fi - - # Remove sgabios since we're using the sgabios packaged one - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin - fi - - # Remove iPXE since we're using the iPXE packaged one - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom - dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom - dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom - dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom - dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom - dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom - fi - fi - - DISABLE_AUTOFORMATTING=true - readme.gentoo_create_doc -} - -pkg_postinst() { - if [[ -n ${softmmu_targets} ]] && use kernel_linux; then - udev_reload - fi - - xdg_icon_cache_update - - [[ -z ${EPREFIX} ]] && [[ -f ${EROOT}/usr/libexec/qemu-bridge-helper ]] && \ - fcaps -M u-s cap_net_admin "${EROOT}"/usr/libexec/qemu-bridge-helper - - DISABLE_AUTOFORMATTING=true - readme.gentoo_print_elog - - if use pin-upstream-blobs && ver_replacing -lt ${FIRMWARE_ABI_VERSION}; then - ewarn "This version of qemu pins new versions of firmware blobs:" - - if has_version 'sys-firmware/edk2-bin'; then - ewarn " $(best_version sys-firmware/edk2-bin)" - else - ewarn " $(best_version sys-firmware/edk2)" - fi - - if has_version 'sys-firmware/seabios-bin'; then - ewarn " $(best_version sys-firmware/seabios-bin)" - else - ewarn " $(best_version sys-firmware/seabios)" - fi - - ewarn " $(best_version sys-firmware/ipxe)" - ewarn " $(best_version sys-firmware/sgabios)" - ewarn "This might break resume of hibernated guests (started with a different" - ewarn "firmware version) and live migration to/from qemu versions with different" - ewarn "firmware. Please (cold) restart all running guests. For functional" - ewarn "guest migration ensure that all hosts run at least" - ewarn " app-emulation/qemu-${FIRMWARE_ABI_VERSION}." - fi -} - -pkg_info() { - echo "Using:" - echo " $(best_version app-emulation/spice-protocol)" - - if has_version 'sys-firmware/edk2-bin'; then - echo " $(best_version sys-firmware/edk2-bin)" - else - echo " $(best_version sys-firmware/edk2)" - fi - - if has_version 'sys-firmware/seabios-bin'; then - echo " $(best_version sys-firmware/seabios-bin)" - else - echo " $(best_version sys-firmware/seabios)" - fi - - echo " $(best_version sys-firmware/ipxe)" - echo " $(best_version sys-firmware/sgabios)" -} - -pkg_postrm() { - xdg_icon_cache_update - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.1.3-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.1.3-r1.ebuild index 864338802d9..7a3319f7088 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.1.3-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.1.3-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -295,6 +295,7 @@ BDEPEND=" dev-python/distlib[${PYTHON_USEDEP}] dev-lang/perl >=dev-build/meson-0.63.0 + >=dev-util/gdbus-codegen-2.80.5-r1 app-alternatives/ninja virtual/pkgconfig doc? ( diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.2.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.2.0-r1.ebuild index e02c8f48db2..327e5f4fc96 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.2.0-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.2.0-r1.ebuild @@ -44,7 +44,7 @@ else fi S="${WORKDIR}/${MY_P}" - [[ "${PV}" != *_rc* ]] && KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" + [[ "${PV}" != *_rc* ]] && KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ppc64 ~riscv x86" fi # this is still required to support glibc-2.42 in qemu-user, bug 961307 @@ -300,6 +300,7 @@ BDEPEND=" dev-python/distlib[${PYTHON_USEDEP}] dev-lang/perl >=dev-build/meson-0.63.0 + >=dev-util/gdbus-codegen-2.80.5-r1 app-alternatives/ninja virtual/pkgconfig doc? ( diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.2.0.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.2.0.ebuild deleted file mode 100644 index 5afd9cdf740..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-10.2.0.ebuild +++ /dev/null @@ -1,1025 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-qemu-docs -# Set to 1 if prebuilt, 0 if not -# (the construct below is to allow overriding from env for script) -QEMU_DOCS_PREBUILT=${QEMU_DOCS_PREBUILT:-1} -QEMU_DOCS_PREBUILT_DEV=sam -QEMU_DOCS_VERSION=$(ver_cut 1-2).0 -# Default to generating docs (inc. man pages) if no prebuilt; overridden later -# bug #830088 -QEMU_DOC_USEFLAG="+doc" - -PYTHON_COMPAT=( python3_{12..14} ) -PYTHON_REQ_USE="ensurepip(-),ncurses,readline" - -inherit eapi9-ver flag-o-matic linux-info toolchain-funcs python-r1 udev fcaps \ - readme.gentoo-r1 pax-utils xdg-utils - -if [[ ${PV} == *9999* ]]; then - QEMU_DOCS_PREBUILT=0 - - EGIT_REPO_URI="https://gitlab.com/qemu-project/qemu.git/" - EGIT_SUBMODULES=() - inherit git-r3 - declare -A SUBPROJECTS=( - [keycodemapdb]="f5772a62ec52591ff6870b7e8ef32482371f22c6" - [berkeley-softfloat-3]="b64af41c3276f97f0e181920400ee056b9c88037" - [berkeley-testfloat-3]="e7af9751d9f9fd3b47911f51a5cfd08af256a9ab" - ) - - for proj in "${!SUBPROJECTS[@]}"; do - c=${SUBPROJECTS[${proj}]} - SRC_URI+=" https://gitlab.com/qemu-project/${proj}/-/archive/${c}/${proj}-${c}.tar.bz2" - done -else - MY_P="${PN}-${PV/_rc/-rc}" - SRC_URI="https://download.qemu.org/${MY_P}.tar.xz" - - if [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then - SRC_URI+=" !doc? ( https://dev.gentoo.org/~${QEMU_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${QEMU_DOCS_VERSION}-docs.tar.xz )" - fi - - S="${WORKDIR}/${MY_P}" - [[ "${PV}" != *_rc* ]] && KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" -fi - -DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" -HOMEPAGE="https://www.qemu.org https://www.linux-kvm.org" - -LICENSE="GPL-2 LGPL-2 BSD-2" -SLOT="0" - -[[ ${QEMU_DOCS_PREBUILT} == 1 ]] && QEMU_DOC_USEFLAG="doc" - -IUSE="accessibility +aio alsa bpf bzip2 capstone +curl debug ${QEMU_DOC_USEFLAG} - +fdt fuse glusterfs +gnutls gtk infiniband iscsi io-uring - jack jemalloc +jpeg keyutils - lzo multipath - ncurses nfs nls numa opengl +oss pam passt +pin-upstream-blobs pipewire - plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux - +slirp - smartcard snappy spice ssh static-user systemtap test udev usb - usbredir valgrind vde +vhost-net virgl virtfs +vnc vte wayland X xattr xdp xen - zstd" - -COMMON_TARGETS=" - aarch64 - alpha - arm - hppa - i386 - loongarch64 - m68k - microblaze - microblazeel - mips - mips64 - mips64el - mipsel - or1k - ppc - ppc64 - riscv32 - riscv64 - s390x - sh4 - sh4eb - sparc - sparc64 - x86_64 - xtensa - xtensaeb -" -IUSE_SOFTMMU_TARGETS=" - ${COMMON_TARGETS} - avr - rx - tricore -" -IUSE_USER_TARGETS=" - ${COMMON_TARGETS} - aarch64_be - armeb - hexagon - mipsn32 - mipsn32el - ppc64le - sparc32plus -" - -use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS}) -use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS}) -IUSE+=" ${use_softmmu_targets} ${use_user_targets}" - -RESTRICT="!test? ( test )" - -# Allow no targets to be built so that people can get a tools-only build. -# Block USE flag configurations known to not work. -REQUIRED_USE=" - ${PYTHON_REQUIRED_USE} - qemu_softmmu_targets_arm? ( fdt ) - qemu_softmmu_targets_microblaze? ( fdt ) - qemu_softmmu_targets_mips64el? ( fdt ) - qemu_softmmu_targets_ppc64? ( fdt ) - qemu_softmmu_targets_ppc? ( fdt ) - qemu_softmmu_targets_riscv32? ( fdt ) - qemu_softmmu_targets_riscv64? ( fdt ) - qemu_softmmu_targets_x86_64? ( fdt ) - sdl-image? ( sdl ) - static-user? ( !plugins ) - virgl? ( opengl ) - virtfs? ( xattr ) - vnc? ( gnutls ) - vte? ( gtk ) - multipath? ( udev ) - plugins? ( !static-user ) - xdp? ( bpf ) -" -for smname in ${IUSE_SOFTMMU_TARGETS} ; do - REQUIRED_USE+=" qemu_softmmu_targets_${smname}? ( kernel_linux? ( seccomp ) )" -done - -# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...) -# and user/softmmu targets (qemu-*, qemu-system-*). -# -# Yep, you need both libcap and libcap-ng since virtfs only uses libcap. -# -# The attr lib isn't always linked in (although the USE flag is always -# respected). This is because qemu supports using the C library's API -# when available rather than always using the external library. -ALL_DEPEND=" - dev-libs/glib:2[static-libs(+)] - virtual/zlib:=[static-libs(+)] - python? ( ${PYTHON_DEPS} ) - systemtap? ( dev-debug/systemtap ) - xattr? ( sys-apps/attr[static-libs(+)] ) -" - -# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...) -# softmmu targets (qemu-system-*). -SOFTMMU_TOOLS_DEPEND=" - >=x11-libs/pixman-0.28.0[static-libs(+)] - accessibility? ( - app-accessibility/brltty[api] - app-accessibility/brltty[static-libs(+)] - ) - aio? ( dev-libs/libaio[static-libs(+)] ) - alsa? ( >=media-libs/alsa-lib-1.0.13 ) - bpf? ( >=dev-libs/libbpf-1.1.0:= ) - bzip2? ( app-arch/bzip2[static-libs(+)] ) - capstone? ( dev-libs/capstone:=[static-libs(+)] ) - curl? ( >=net-misc/curl-7.15.4[static-libs(+)] ) - fdt? ( >=sys-apps/dtc-1.5.1[static-libs(+)] ) - fuse? ( >=sys-fs/fuse-3.1:3=[static-libs(+)] ) - glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] ) - gnutls? ( - >=net-libs/gnutls-3.7.5:=[static-libs(+)] - >=dev-libs/nettle-3.7.3:=[static-libs(+)] - ) - gtk? ( - x11-libs/gtk+:3[wayland?,X?] - vte? ( x11-libs/vte:2.91 ) - ) - infiniband? ( sys-cluster/rdma-core[static-libs(+)] ) - iscsi? ( net-libs/libiscsi ) - io-uring? ( sys-libs/liburing:=[static-libs(+)] ) - jack? ( virtual/jack ) - jemalloc? ( dev-libs/jemalloc ) - jpeg? ( media-libs/libjpeg-turbo:=[static-libs(+)] ) - kernel_linux? ( sys-libs/libcap-ng[static-libs(+)] ) - keyutils? ( sys-apps/keyutils[static-libs(+)] ) - lzo? ( dev-libs/lzo:2[static-libs(+)] ) - multipath? ( sys-fs/multipath-tools ) - ncurses? ( - sys-libs/ncurses:=[unicode(+)] - sys-libs/ncurses:=[static-libs(+)] - ) - nfs? ( >=net-fs/libnfs-1.9.3:=[static-libs(+)] ) - numa? ( sys-process/numactl[static-libs(+)] ) - opengl? ( - virtual/opengl - media-libs/libepoxy[static-libs(+)] - media-libs/mesa[static-libs(+)] - media-libs/mesa[egl(+),gbm(+)] - ) - pam? ( sys-libs/pam ) - passt? ( net-misc/passt ) - pipewire? ( >=media-video/pipewire-0.3.60 ) - png? ( >=media-libs/libpng-1.6.34:=[static-libs(+)] ) - pulseaudio? ( media-libs/libpulse ) - rbd? ( sys-cluster/ceph ) - sasl? ( dev-libs/cyrus-sasl[static-libs(+)] ) - sdl? ( - media-libs/libsdl2[video] - media-libs/libsdl2[static-libs(+)] - ) - sdl-image? ( media-libs/sdl2-image[static-libs(+)] ) - seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] ) - slirp? ( net-libs/libslirp[static-libs(+)] ) - smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] ) - snappy? ( app-arch/snappy:= ) - spice? ( - >=app-emulation/spice-protocol-0.14.0 - >=app-emulation/spice-0.14.0[static-libs(+)] - ) - ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] ) - udev? ( virtual/libudev:= ) - usb? ( >=virtual/libusb-1-r2:1[static-libs(+)] ) - usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] ) - vde? ( net-misc/vde[static-libs(+)] ) - virgl? ( media-libs/virglrenderer[static-libs(+)] ) - virtfs? ( sys-libs/libcap ) - xdp? ( net-libs/xdp-tools ) - xen? ( app-emulation/xen-tools:= ) - zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] ) -" - -# -# With USE=+pin-upstream-blobs we pin firmware versions to known good -# version in order to minimize the frequency of disruptive changes. This -# avoids unnecessary frustration on user side because changing the firmware -# version can break resume of hibernated guest, inhibit live migrations, -# and might have other unwanted consequences. For now, let us try to -# synchronize firmware blobs with the ones bundled in upstream qemu. Simply -# check the upstream git repository for any changes, for example: -# https://github.com/qemu/qemu/tree/v10.0.2/roms for the 10.0.2 release. -# -# When changing pinned firmware versions -# - create a separate ebuild with revision -r50 -# - update the FIRMWARE_ABI_VERSION to the current package version -# - -FIRMWARE_ABI_VERSION="10.0.2" -EDK2_OVMF_VERSION="202408" -SEABIOS_VERSION="1.16.3" - -X86_FIRMWARE_DEPEND=" - pin-upstream-blobs? ( - ~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION} - ~sys-firmware/ipxe-1.21.1_p20230601[binary,qemu] - ~sys-firmware/seabios-bin-${SEABIOS_VERSION} - ~sys-firmware/sgabios-0.1_pre10[binary] - ) - !pin-upstream-blobs? ( - || ( - >=sys-firmware/edk2-${EDK2_OVMF_VERSION} - >=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION} - ) - sys-firmware/ipxe[qemu] - || ( - >=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios] - >=sys-firmware/seabios-bin-${SEABIOS_VERSION} - ) - sys-firmware/sgabios - ) -" -PPC_FIRMWARE_DEPEND=" - pin-upstream-blobs? ( - ~sys-firmware/seabios-bin-${SEABIOS_VERSION} - ) - !pin-upstream-blobs? ( - || ( - >=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios] - >=sys-firmware/seabios-bin-${SEABIOS_VERSION} - ) - ) -" - -# See bug #913084 for pip dep -BDEPEND=" - ${PYTHON_DEPS} - dev-python/distlib[${PYTHON_USEDEP}] - dev-lang/perl - >=dev-build/meson-0.63.0 - app-alternatives/ninja - virtual/pkgconfig - doc? ( - >=dev-python/sphinx-1.6.0[${PYTHON_USEDEP}] - dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}] - ) - gtk? ( nls? ( sys-devel/gettext ) ) - test? ( - app-alternatives/bc - dev-libs/glib[utils] - dev-python/pycotap[${PYTHON_USEDEP}] - ) -" -CDEPEND=" - ${ALL_DEPEND//\[static-libs(+)]} - ${SOFTMMU_TOOLS_DEPEND//\[static-libs(+)]} - qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} ) - qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} ) - qemu_softmmu_targets_ppc? ( ${PPC_FIRMWARE_DEPEND} ) - qemu_softmmu_targets_ppc64? ( ${PPC_FIRMWARE_DEPEND} ) -" -DEPEND=" - ${CDEPEND} - kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 ) - static-user? ( ${ALL_DEPEND} ) - valgrind? ( dev-debug/valgrind ) -" -RDEPEND=" - ${CDEPEND} - acct-group/kvm - selinux? ( - sec-policy/selinux-qemu - sys-libs/libselinux - ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-10.1.2-fix_passt.patch - "${FILESDIR}"/${PN}-9.0.0-disable-keymap.patch - "${FILESDIR}"/${PN}-9.2.0-capstone-include-path.patch - "${FILESDIR}"/${PN}-8.1.0-skip-tests.patch - "${FILESDIR}"/${PN}-8.1.0-find-sphinx.patch - "${FILESDIR}"/${PN}-7.2.16-optionrom-pass-Wl-no-error-rwx-segments.patch -) - -QA_PREBUILT=" - usr/share/qemu/hppa-firmware.img - usr/share/qemu/hppa-firmware64.img - usr/share/qemu/openbios-ppc - usr/share/qemu/openbios-sparc64 - usr/share/qemu/openbios-sparc32 - usr/share/qemu/opensbi-riscv64-generic-fw_dynamic.elf - usr/share/qemu/opensbi-riscv32-generic-fw_dynamic.elf - usr/share/qemu/palcode-clipper - usr/share/qemu/s390-ccw.img - usr/share/qemu/s390-netboot.img - usr/share/qemu/u-boot.e500 -" - -QA_WX_LOAD=" - usr/bin/qemu-i386 - usr/bin/qemu-x86_64 - usr/bin/qemu-alpha - usr/bin/qemu-arm - usr/bin/qemu-cris - usr/bin/qemu-m68k - usr/bin/qemu-microblaze - usr/bin/qemu-microblazeel - usr/bin/qemu-mips - usr/bin/qemu-mipsel - usr/bin/qemu-or1k - usr/bin/qemu-ppc - usr/bin/qemu-ppc64 - usr/bin/qemu-sh4 - usr/bin/qemu-sh4eb - usr/bin/qemu-sparc - usr/bin/qemu-sparc64 - usr/bin/qemu-armeb - usr/bin/qemu-sparc32plus - usr/bin/qemu-s390x - usr/bin/qemu-unicore32 -" - -DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure you have the -kernel module loaded before running kvm. The easiest way to ensure that the -kernel module is loaded is to load it on boot. - For AMD CPUs the module is called 'kvm-amd'. - For Intel CPUs the module is called 'kvm-intel'. -Please review /etc/conf.d/modules for how to load these. - -Make sure your user is in the 'kvm' group. Just run - # gpasswd -a kvm -then have re-login. - -For brand new installs, the default permissions on /dev/kvm might not let -you access it. You can tell udev to reset ownership/perms: - # udevadm trigger -c add /dev/kvm - -If you want to register binfmt handlers for qemu user targets: -For openrc: - # rc-update add qemu-binfmt -For systemd: - # ln -s /usr/share/qemu/binfmt.d/qemu.conf /etc/binfmt.d/qemu.conf" - -pkg_pretend() { - if use kernel_linux && kernel_is lt 2 6 25; then - eerror "This version of KVM requires a host kernel of 2.6.25 or higher." - elif use kernel_linux; then - if ! linux_config_exists; then - eerror "Unable to check your kernel for KVM support" - else - CONFIG_CHECK="~KVM ~TUN ~BRIDGE" - ERROR_KVM="You must enable KVM in your kernel to continue" - ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in" - ERROR_KVM_AMD+=" your kernel configuration." - ERROR_KVM_INTEL="If you have an Intel CPU, you must enable" - ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration." - ERROR_TUN="You will need the Universal TUN/TAP driver compiled" - ERROR_TUN+=" into your kernel or loaded as a module to use the" - ERROR_TUN+=" virtual network device if using -net tap." - ERROR_BRIDGE="You will also need support for 802.1d" - ERROR_BRIDGE+=" Ethernet Bridging for some network configurations." - use vhost-net && CONFIG_CHECK+=" ~VHOST_NET" - ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net" - ERROR_VHOST_NET+=" support" - use test && CONFIG_CHECK+=" IP_MULTICAST" - ERROR_IP_MULTICAST="Test suite requires IP_MULTICAST" - - if use amd64 || use x86; then - if grep -q AuthenticAMD /proc/cpuinfo; then - CONFIG_CHECK+=" ~KVM_AMD" - elif grep -q GenuineIntel /proc/cpuinfo; then - CONFIG_CHECK+=" ~KVM_INTEL" - fi - fi - - use python && CONFIG_CHECK+=" ~DEBUG_FS" - ERROR_DEBUG_FS="debugFS support required for kvm_stat" - - # Now do the actual checks setup above - check_extra_config - fi - fi - - if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then - eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt" - eerror "instances are still pointing to it. Please update your" - eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag" - eerror "and the right system binary (e.g. qemu-system-x86_64)." - die "update your virt configs to not use qemu-kvm" - fi -} - -# Sanity check to make sure target lists are kept up-to-date. -check_targets() { - local var=$1 mak=$2 - local detected sorted - - pushd "${S}"/configs/targets/ >/dev/null || die - - # Force C locale until glibc is updated. #564936 - detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u)) - sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u)) - if [[ ${sorted} != "${detected}" ]] ; then - eerror "The ebuild needs to be kept in sync." - eerror "${var}: ${sorted}" - eerror "$(printf '%-*s' ${#var} configure): ${detected}" - die "sync ${var} to the list of targets" - fi - - popd >/dev/null -} - -src_unpack() { - if [[ ${PV} == 9999 ]] ; then - git-r3_src_unpack - for file in ${A}; do - unpack "${file}" - done - cd "${WORKDIR}" || die - for proj in "${!SUBPROJECTS[@]}"; do - mv "${proj}-${SUBPROJECTS[${proj}]}" "${S}/subprojects/${proj}" || die - done - cd "${S}" || die - meson subprojects packagefiles --apply || die - else - default - fi -} - -src_prepare() { - check_targets IUSE_SOFTMMU_TARGETS softmmu - check_targets IUSE_USER_TARGETS linux-user - - default - - # Use correct toolchain to fix cross-compiling - tc-export AR AS LD NM OBJCOPY PKG_CONFIG RANLIB STRINGS - export WINDRES=${CHOST}-windres - - # defang automagic dependencies - use X || append-flags -DGENTOO_GTK_HIDE_X11 - use wayland || append-flags -DGENTOO_GTK_HIDE_WAYLAND - - # Workaround for bug #938302 - if use systemtap && has_version "dev-debug/systemtap[-dtrace-symlink(+)]" ; then - cat >> "${S}"/configs/meson/linux.txt <<-EOF || die - [binaries] - dtrace='stap-dtrace' - EOF - fi - - # Verbose builds - MAKEOPTS+=" V=1" - - # Remove bundled modules - rm -r roms/*/ || die -} - -## -# configures qemu based on the build directory and the build type -# we are using. -# -qemu_src_configure() { - debug-print-function ${FUNCNAME} "$@" - - local buildtype=$1 - local builddir="${S}/${buildtype}-build" - - mkdir "${builddir}" || die - - local conf_opts=( - --prefix=/usr - --sysconfdir=/etc - --bindir=/usr/bin - --libdir=/usr/$(get_libdir) - --datadir=/usr/share - --docdir=/usr/share/doc/${PF}/html - --mandir=/usr/share/man - --localstatedir=/var - --disable-bsd-user - --disable-containers # bug #732972 - --disable-guest-agent - --disable-strip - --disable-download - --python="${PYTHON}" - - # bug #746752: TCG interpreter has a few limitations: - # - it does not support FPU - # - it's generally slower on non-self-modifying code - # It's advantage is support for host architectures - # where native codegeneration is not implemented. - # Gentoo has qemu keyworded only on targets with - # native code generation available. Avoid the interpreter. - --disable-tcg-interpreter - - --disable-werror - # We support gnutls/nettle for crypto operations. It is possible - # to use gcrypt when gnutls/nettle are disabled (but not when they - # are enabled), but it's not really worth the hassle. Disable it - # all the time to avoid automatically detecting it. #568856 - --disable-gcrypt - --cc="$(tc-getCC)" - --cxx="$(tc-getCXX)" - --objcc="$(tc-getCC)" - --host-cc="$(tc-getBUILD_CC)" - - $(use_enable alsa) - $(use_enable debug debug-info) - $(use_enable debug debug-tcg) - $(use_enable jack) - $(use_enable nls gettext) - $(use_enable oss) - $(use_enable pipewire) - $(use_enable plugins) - $(use_enable pulseaudio pa) - $(use_enable selinux) - $(use_enable xattr attr) - $(use_enable valgrind) - ) - - # Disable options not used by user targets. This simplifies building - # static user targets (USE=static-user) considerably. - conf_notuser() { - if [[ ${buildtype} == "user" ]] ; then - echo "--disable-${2:-$1}" - else - use_enable "$@" - fi - } - # Enable option only for softmmu build, but not 'user' or 'tools' - conf_softmmu() { - if [[ ${buildtype} == "softmmu" ]] ; then - use_enable "$@" - else - echo "--disable-${2:-$1}" - fi - } - # Enable option only for tools build, but not 'user' or 'softmmu' - conf_tools() { - if [[ ${buildtype} == "tools" ]] ; then - use_enable "$@" - else - echo "--disable-${2:-$1}" - fi - } - # Special case for the malloc flag, because the --disable flag does - # not exist and trying like above will break configuring. - conf_malloc() { - if [[ ! ${buildtype} == "user" ]] ; then - usex "${1}" "--enable-malloc=${1}" "" - fi - } - conf_opts+=( - $(conf_notuser accessibility brlapi) - $(conf_notuser aio linux-aio) - $(conf_softmmu bpf) - $(conf_notuser bzip2) - $(conf_notuser capstone) - $(conf_notuser curl) - $(conf_tools doc docs) - $(conf_notuser fdt) - $(conf_notuser fuse) - $(conf_notuser glusterfs) - $(conf_notuser gnutls) - $(conf_notuser gnutls nettle) - $(conf_notuser gtk) - $(conf_notuser infiniband rdma) - $(conf_notuser iscsi libiscsi) - $(conf_notuser io-uring linux-io-uring) - $(conf_malloc jemalloc) - $(conf_notuser jpeg vnc-jpeg) - $(conf_notuser kernel_linux kvm) - $(conf_notuser keyutils libkeyutils) - $(conf_notuser lzo) - $(conf_notuser multipath mpath) - $(conf_notuser ncurses curses) - $(conf_notuser nfs libnfs) - $(conf_notuser numa) - $(conf_notuser opengl) - $(conf_notuser pam auth-pam) - $(conf_notuser passt) - $(conf_notuser png) - $(conf_notuser rbd) - $(conf_notuser sasl vnc-sasl) - $(conf_notuser sdl) - $(conf_softmmu sdl-image) - $(conf_notuser seccomp) - $(conf_notuser slirp) - $(conf_notuser smartcard) - $(conf_notuser snappy) - $(conf_notuser spice) - $(conf_notuser ssh libssh) - $(conf_notuser udev libudev) - $(conf_notuser usb libusb) - $(conf_notuser usbredir usb-redir) - $(conf_notuser vde) - $(conf_notuser vhost-net) - $(conf_notuser virgl virglrenderer) - $(conf_softmmu virtfs) - $(conf_notuser vnc) - $(conf_notuser vte) - $(conf_softmmu xdp af-xdp) - $(conf_notuser xen) - $(conf_notuser xen xen-pci-passthrough) - # use prebuilt keymaps, bug #759604 - --disable-xkbcommon - $(conf_notuser zstd) - ) - - if [[ ! ${buildtype} == "user" ]] ; then - # used by passt and spice, enable it because glib is required anyway - conf_opts+=( - --enable-gio - ) - # audio options - local audio_opts=( - # Note: backend order matters here: #716202 - # We iterate from higher-level to lower level. - $(usex pulseaudio pa "") - $(usev pipewire) - $(usev jack) - $(usev sdl) - $(usev alsa) - $(usev oss) - ) - conf_opts+=( - --audio-drv-list=$(IFS=,; echo "${audio_opts[*]}") - ) - fi - - case ${buildtype} in - user) - conf_opts+=( - --enable-linux-user - --disable-system - --disable-tools - --disable-cap-ng - --disable-seccomp - ) - local static_flag="static-user" - ;; - softmmu) - conf_opts+=( - --disable-linux-user - --enable-system - --disable-tools - --enable-cap-ng - --enable-seccomp - --disable-libcbor - ) - local static_flag="none" - ;; - tools) - conf_opts+=( - --disable-linux-user - --disable-system - --enable-tools - --enable-cap-ng - ) - local static_flag="none" - ;; - esac - - local targets="${buildtype}_targets" - [[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" ) - - # Add support for SystemTap - use systemtap && conf_opts+=( --enable-trace-backends="dtrace" ) - - # We always want to attempt to build with PIE support as it results - # in a more secure binary. But it doesn't work with static or if - # the current GCC doesn't have PIE support. - if [[ ${static_flag} != "none" ]] && use ${static_flag}; then - conf_opts+=( --static --disable-pie ) - else - tc-enables-pie && conf_opts+=( --enable-pie ) - fi - - # Meson will not use a cross-file unless cross_prefix is set. - tc-is-cross-compiler && conf_opts+=( --cross-prefix="${CHOST}-" ) - - # Plumb through equivalent of EXTRA_ECONF to allow experiments - # like bug #747928. - conf_opts+=( ${EXTRA_CONF_QEMU} ) - - echo "../configure ${conf_opts[*]}" - cd "${builddir}" - ../configure "${conf_opts[@]}" || die "configure failed" -} - -src_configure() { - local target - - python_setup - - softmmu_targets= softmmu_bins=() - user_targets= user_bins=() - - for target in ${IUSE_SOFTMMU_TARGETS} ; do - if use "qemu_softmmu_targets_${target}"; then - softmmu_targets+=",${target}-softmmu" - softmmu_bins+=( "qemu-system-${target}" ) - fi - done - - for target in ${IUSE_USER_TARGETS} ; do - if use "qemu_user_targets_${target}"; then - user_targets+=",${target}-linux-user" - user_bins+=( "qemu-${target}" ) - fi - done - - softmmu_targets=${softmmu_targets#,} - user_targets=${user_targets#,} - - [[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu" - [[ -n ${user_targets} ]] && qemu_src_configure "user" - qemu_src_configure "tools" -} - -src_compile() { - if [[ -n ${user_targets} ]]; then - cd "${S}/user-build" || die - default - fi - - if [[ -n ${softmmu_targets} ]]; then - cd "${S}/softmmu-build" || die - default - fi - - cd "${S}/tools-build" || die - default -} - -src_test() { - if [[ -n ${softmmu_targets} ]]; then - cd "${S}/softmmu-build" || die - pax-mark m */qemu-system-* #515550 - emake check - fi -} - -qemu_python_install() { - python_domodule "${S}/python/qemu" - - python_doscript "${S}/scripts/kvm/vmxcap" - python_doscript "${S}/scripts/qmp/qmp-shell" - python_doscript "${S}/scripts/qmp/qemu-ga-client" -} - -# Generate binfmt support files. -# - /etc/init.d/qemu-binfmt script which registers the user handlers (openrc) -# - /usr/share/qemu/binfmt.d/qemu.conf (for use with systemd-binfmt) -generate_initd() { - local out="${T}/qemu-binfmt" - local out_systemd="${T}/qemu.conf" - local d="${T}/binfmt.d" - - einfo "Generating qemu binfmt scripts and configuration files" - - # Generate the debian fragments first. - mkdir -p "${d}" - "${S}"/scripts/qemu-binfmt-conf.sh \ - --debian \ - --exportdir "${d}" \ - --qemu-path "${EPREFIX}/usr/bin" \ - || die - # Then turn the fragments into a shell script we can source. - sed -E -i \ - -e 's:^([^ ]+) (.*)$:\1="\2":' \ - "${d}"/* || die - - # Generate the init.d script by assembling the fragments from above. - local f qcpu package interpreter magic mask - cat "${FILESDIR}"/qemu-binfmt.initd.head >"${out}" || die - for f in "${d}"/qemu-* ; do - source "${f}" - - # Normalize the cpu logic like we do in the init.d for the native cpu. - qcpu=${package#qemu-} - case ${qcpu} in - arm*) qcpu="arm";; - mips*) qcpu="mips";; - ppc*) qcpu="ppc";; - s390*) qcpu="s390";; - sh*) qcpu="sh";; - sparc*) qcpu="sparc";; - esac - - # we use 'printf' here to be portable across 'sh' - # implementations: #679168 - cat <>"${out}" - if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then - printf '%s\n' ':${package}:M::${magic}:${mask}:${interpreter}:'"\${QEMU_BINFMT_FLAGS}" >/proc/sys/fs/binfmt_misc/register - fi -EOF - - echo ":${package}:M::${magic}:${mask}:${interpreter}:OC" >>"${out_systemd}" - - done - cat "${FILESDIR}"/qemu-binfmt.initd.tail >>"${out}" || die -} - -src_install() { - if [[ -n ${user_targets} ]]; then - cd "${S}/user-build" - emake DESTDIR="${ED}" install - - # Install binfmt handler init script for user targets. - generate_initd - doinitd "${T}/qemu-binfmt" - - # Install binfmt/qemu.conf. - insinto "/usr/share/qemu/binfmt.d" - doins "${T}/qemu.conf" - fi - - if [[ -n ${softmmu_targets} ]]; then - cd "${S}/softmmu-build" - emake DESTDIR="${ED}" install - - # This might not exist if the test failed. #512010 - [[ -e check-report.html ]] && dodoc check-report.html - - if use kernel_linux; then - udev_newrules "${FILESDIR}"/65-kvm.rules-r2 65-kvm.rules - fi - - if use python; then - python_foreach_impl qemu_python_install - fi - fi - - cd "${S}/tools-build" || die - emake DESTDIR="${ED}" install - - # If USE=doc, there'll be newly generated docs which we install instead. - if ! use doc && [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then - doman "${WORKDIR}"/${PN}-${QEMU_DOCS_VERSION}-docs/docs/*.[0-8] - fi - - # Disable mprotect on the qemu binaries as they use JITs to be fast #459348 - pushd "${ED}"/usr/bin >/dev/null || die - pax-mark mr "${softmmu_bins[@]}" "${user_bins[@]}" # bug 575594 - popd >/dev/null || die - - # suid in src_install to allow FEATURES=suidctl to work properly - fperms u+s /usr/libexec/qemu-bridge-helper - - # Install config file example for qemu-bridge-helper - insinto "/etc/qemu" - doins "${FILESDIR}/bridge.conf" - - cd "${S}" || die - dodoc MAINTAINERS - newdoc pc-bios/README README.pc-bios - - # Disallow stripping of prebuilt firmware files. - dostrip -x ${QA_PREBUILT} - - if [[ -n ${softmmu_targets} ]]; then - # Remove SeaBIOS since we're using the SeaBIOS packaged one - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../seabios/bios-256k.bin /usr/share/qemu/bios-256k.bin - fi - - # Remove vgabios since we're using the seavgabios packaged one - rm "${ED}/usr/share/qemu/vgabios.bin" - rm "${ED}/usr/share/qemu/vgabios-cirrus.bin" - rm "${ED}/usr/share/qemu/vgabios-qxl.bin" - rm "${ED}/usr/share/qemu/vgabios-stdvga.bin" - rm "${ED}/usr/share/qemu/vgabios-virtio.bin" - rm "${ED}/usr/share/qemu/vgabios-vmware.bin" - - # PPC/PPC64 loads vgabios-stdvga - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64; then - dosym ../seavgabios/vgabios-isavga.bin /usr/share/qemu/vgabios.bin - dosym ../seavgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin - dosym ../seavgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin - dosym ../seavgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin - dosym ../seavgabios/vgabios-virtio.bin /usr/share/qemu/vgabios-virtio.bin - dosym ../seavgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin - fi - - # Remove sgabios since we're using the sgabios packaged one - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin - fi - - # Remove iPXE since we're using the iPXE packaged one - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom - dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom - dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom - dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom - dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom - dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom - fi - fi - - DISABLE_AUTOFORMATTING=true - readme.gentoo_create_doc -} - -pkg_postinst() { - if [[ -n ${softmmu_targets} ]] && use kernel_linux; then - udev_reload - fi - - xdg_icon_cache_update - - [[ -z ${EPREFIX} ]] && [[ -f ${EROOT}/usr/libexec/qemu-bridge-helper ]] && \ - fcaps -M u-s cap_net_admin "${EROOT}"/usr/libexec/qemu-bridge-helper - - DISABLE_AUTOFORMATTING=true - readme.gentoo_print_elog - - if use pin-upstream-blobs && ver_replacing -lt ${FIRMWARE_ABI_VERSION}; then - ewarn "This version of qemu pins new versions of firmware blobs:" - - if has_version 'sys-firmware/edk2-bin'; then - ewarn " $(best_version sys-firmware/edk2-bin)" - else - ewarn " $(best_version sys-firmware/edk2)" - fi - - if has_version 'sys-firmware/seabios-bin'; then - ewarn " $(best_version sys-firmware/seabios-bin)" - else - ewarn " $(best_version sys-firmware/seabios)" - fi - - ewarn " $(best_version sys-firmware/ipxe)" - ewarn " $(best_version sys-firmware/sgabios)" - ewarn "This might break resume of hibernated guests (started with a different" - ewarn "firmware version) and live migration to/from qemu versions with different" - ewarn "firmware. Please (cold) restart all running guests. For functional" - ewarn "guest migration ensure that all hosts run at least" - ewarn " app-emulation/qemu-${FIRMWARE_ABI_VERSION}." - fi -} - -pkg_info() { - echo "Using:" - echo " $(best_version app-emulation/spice-protocol)" - - if has_version 'sys-firmware/edk2-bin'; then - echo " $(best_version sys-firmware/edk2-bin)" - else - echo " $(best_version sys-firmware/edk2)" - fi - - if has_version 'sys-firmware/seabios-bin'; then - echo " $(best_version sys-firmware/seabios-bin)" - else - echo " $(best_version sys-firmware/seabios)" - fi - - echo " $(best_version sys-firmware/ipxe)" - echo " $(best_version sys-firmware/sgabios)" -} - -pkg_postrm() { - xdg_icon_cache_update - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.1.3-r2.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.1.3-r2.ebuild index 1d4209c8685..1677d478900 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.1.3-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.1.3-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -281,6 +281,7 @@ BDEPEND=" dev-python/distlib[${PYTHON_USEDEP}] dev-lang/perl >=dev-build/meson-0.63.0 + >=dev-util/gdbus-codegen-2.80.5-r1 app-alternatives/ninja virtual/pkgconfig doc? ( diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.2.3-r3.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.2.3-r3.ebuild index 8029491c960..c42206d85ed 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.2.3-r3.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.2.3-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -280,6 +280,7 @@ BDEPEND=" dev-python/distlib[${PYTHON_USEDEP}] dev-lang/perl >=dev-build/meson-0.63.0 + >=dev-util/gdbus-codegen-2.80.5-r1 app-alternatives/ninja virtual/pkgconfig doc? ( diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.2.4.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.2.4.ebuild index 75088f8913d..952d5b7e626 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.2.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.2.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -280,6 +280,7 @@ BDEPEND=" dev-python/distlib[${PYTHON_USEDEP}] dev-lang/perl >=dev-build/meson-0.63.0 + >=dev-util/gdbus-codegen-2.80.5-r1 app-alternatives/ninja virtual/pkgconfig doc? ( diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9999.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9999.ebuild index e02c8f48db2..27dbfa44dc7 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9999.ebuild @@ -300,6 +300,7 @@ BDEPEND=" dev-python/distlib[${PYTHON_USEDEP}] dev-lang/perl >=dev-build/meson-0.63.0 + >=dev-util/gdbus-codegen-2.80.5-r1 app-alternatives/ninja virtual/pkgconfig doc? ( From 69c075efb3be886d15907479faabdec02fde5202 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:43 +0000 Subject: [PATCH 030/291] app-emulation/virt-firmware: Sync with Gentoo It's from Gentoo commit dd29120b58f8166078af9b1e05af7576fec30d58. Signed-off-by: Flatcar Buildbot --- .../app-emulation/virt-firmware/Manifest | 2 + .../virt-firmware/virt-firmware-25.12.ebuild | 55 +++++++++++++++++++ .../virt-firmware/virt-firmware-26.2.ebuild | 55 +++++++++++++++++++ 3 files changed, 112 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/app-emulation/virt-firmware/virt-firmware-25.12.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/app-emulation/virt-firmware/virt-firmware-26.2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/virt-firmware/Manifest b/sdk_container/src/third_party/portage-stable/app-emulation/virt-firmware/Manifest index 2e4225830b7..dccccdf8626 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/virt-firmware/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-emulation/virt-firmware/Manifest @@ -1,3 +1,5 @@ DIST virt_firmware-24.11.tar.gz 115385 BLAKE2B 2edfe718fd60dcd8a13b143f9fcf5f6beb604737ef4855cb0f16376e625f5bf2965bb08b7ddd037a6b8b6420c928abceefe1034135ab66763695fa8c359786b5 SHA512 0c6b4d34d518835b4489404c784b263cd6ac8348834ba654d27ae3741d3d229ea5f6036870399390fa4fa33e01c8113d64faba0c6068e4b2fb5bbdd9429bf72f DIST virt_firmware-25.10.tar.gz 137685 BLAKE2B d1ab74eae907048549e2129aa256597752c5219110606bd623e0e6f0b90f88dd38226d8b7a992fe05ef49ab8c4ddf3a917184051715ebd6224cdbda4303754a5 SHA512 2fdf609f0ba335d6064cb595c5e4b465b0a148f258f87292f0b82d1aa653f5bfd1f9b851d36f1c46a94fb8be36d6cd6c5c3f5d633e86d34b8f6159186f872908 +DIST virt_firmware-25.12.tar.gz 143352 BLAKE2B f456a444e529ed7abf9fbba4491b56b1b1f76bf9c9d76c3a82e1c3a716b88c952bd494330680a4b21576a792a516e69b74203126dc4bac688e083185f1589924 SHA512 faa2f8abd0f8f633f2c620a2b7fd6ff91809e2a546b01088154e48d5151426f5b7b6134de0325664028419fe50376214b575f9da25095d2522edb814024ff8dc DIST virt_firmware-25.4.1.tar.gz 120061 BLAKE2B ef22266944cae225cf817c9b67a7aae5ee95908be419b870f451f6eba391998be082b1cf8f2dad62ed84551323cb56854b785a93d0c0ff83340fdb9a5f571aeb SHA512 2f82299415a0bf5dd8874764fe7d71cfe9a12e489657237f6a889288294e69fed9076219ae91a2d60084ae1ffac6bc4f3e2760999e8030aad045cb59ea152367 +DIST virt_firmware-26.2.tar.gz 143457 BLAKE2B fd0b977539af0cde4059e67e86ddf97c6dcffc3f7b1cf5975d181dd51b698334c8b22b2c6a951da2e39327a0dd43b44d03a05d0ff56be6defb4a48f872ac4e80 SHA512 6e7fa94009da095e15880b6be850b130ea3097394572c01fe0404b6d4bc11117b9ae730ca43408cb02b5ae9dc2671ef5635520dd2c8776bb2b6b68c8246d06c7 diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/virt-firmware/virt-firmware-25.12.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/virt-firmware/virt-firmware-25.12.ebuild new file mode 100644 index 00000000000..2460c7c17d0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-emulation/virt-firmware/virt-firmware-25.12.ebuild @@ -0,0 +1,55 @@ +# Copyright 2024-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..14} ) +DISTUTILS_USE_PEP517=setuptools + +inherit distutils-r1 optfeature pypi systemd + +DESCRIPTION="Tools for ovmf/armvirt firmware volumes" +HOMEPAGE=" + https://gitlab.com/kraxel/virt-firmware + https://pypi.org/project/virt-firmware/ +" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~x86" + +RDEPEND=" + dev-python/cryptography[${PYTHON_USEDEP}] + dev-python/pefile[${PYTHON_USEDEP}] +" + +# Need systemd-detect-virt +BDEPEND=" + test? ( + sys-apps/systemd + ) +" + +distutils_enable_tests unittest + +python_test() { + eunittest tests +} + +python_install_all() { + distutils-r1_python_install_all + + doman man/*.1 + + doinitd "${FILESDIR}/kernel-bootcfg-boot-successful" + systemd_dounit systemd/kernel-bootcfg-boot-successful.service + + # Use our own provided by sys-kernel/installkernel[efistub,systemd] + #exeinto /usr/lib/kernel/install.d + #doexe systemd/99-uki-uefi-setup.install +} + +pkg_postinst() { + optfeature "automatically updating UEFI configuration on each kernel installation or removal" \ + "sys-kernel/installkernel[systemd,efistub]" +} diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/virt-firmware/virt-firmware-26.2.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/virt-firmware/virt-firmware-26.2.ebuild new file mode 100644 index 00000000000..2460c7c17d0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-emulation/virt-firmware/virt-firmware-26.2.ebuild @@ -0,0 +1,55 @@ +# Copyright 2024-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..14} ) +DISTUTILS_USE_PEP517=setuptools + +inherit distutils-r1 optfeature pypi systemd + +DESCRIPTION="Tools for ovmf/armvirt firmware volumes" +HOMEPAGE=" + https://gitlab.com/kraxel/virt-firmware + https://pypi.org/project/virt-firmware/ +" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~x86" + +RDEPEND=" + dev-python/cryptography[${PYTHON_USEDEP}] + dev-python/pefile[${PYTHON_USEDEP}] +" + +# Need systemd-detect-virt +BDEPEND=" + test? ( + sys-apps/systemd + ) +" + +distutils_enable_tests unittest + +python_test() { + eunittest tests +} + +python_install_all() { + distutils-r1_python_install_all + + doman man/*.1 + + doinitd "${FILESDIR}/kernel-bootcfg-boot-successful" + systemd_dounit systemd/kernel-bootcfg-boot-successful.service + + # Use our own provided by sys-kernel/installkernel[efistub,systemd] + #exeinto /usr/lib/kernel/install.d + #doexe systemd/99-uki-uefi-setup.install +} + +pkg_postinst() { + optfeature "automatically updating UEFI configuration on each kernel installation or removal" \ + "sys-kernel/installkernel[systemd,efistub]" +} From cff0297a1aff337c13334ed27a1049d104541885 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:45 +0000 Subject: [PATCH 031/291] app-eselect/eselect-pinentry: Sync with Gentoo It's from Gentoo commit 2d25fad95cbaa525c8945d8e582c749d49524f49. Signed-off-by: Flatcar Buildbot --- .../app-eselect/eselect-pinentry/eselect-pinentry-0.7.4.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/portage-stable/app-eselect/eselect-pinentry/eselect-pinentry-0.7.4.ebuild b/sdk_container/src/third_party/portage-stable/app-eselect/eselect-pinentry/eselect-pinentry-0.7.4.ebuild index 812e5773f6d..07c76a6f73d 100644 --- a/sdk_container/src/third_party/portage-stable/app-eselect/eselect-pinentry/eselect-pinentry-0.7.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-eselect/eselect-pinentry/eselect-pinentry-0.7.4.ebuild @@ -9,7 +9,7 @@ S="${WORKDIR}" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" RDEPEND=">=app-eselect/eselect-lib-bin-symlink-0.1.1" From f4aac32adab828d3b679566cf10b29a35e051315 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:48 +0000 Subject: [PATCH 032/291] app-misc/pax-utils: Sync with Gentoo It's from Gentoo commit b84780d27fe9049f79ee32f2f52574abfc8e87ed. Signed-off-by: Flatcar Buildbot --- .../portage-stable/app-misc/pax-utils/pax-utils-1.3.10.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/app-misc/pax-utils/pax-utils-1.3.10.ebuild b/sdk_container/src/third_party/portage-stable/app-misc/pax-utils/pax-utils-1.3.10.ebuild index 1db6955b1c0..7bc9cf2c835 100644 --- a/sdk_container/src/third_party/portage-stable/app-misc/pax-utils/pax-utils-1.3.10.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-misc/pax-utils/pax-utils-1.3.10.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -24,7 +24,7 @@ else SRC_URI=" https://dev.gentoo.org/~floppym/dist/${P}.tar.xz " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE+=" man" fi From b8e94b91ce3dac94b3ad99bd9b0cd9c3991ee6c5 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:49 +0000 Subject: [PATCH 033/291] app-portage/gentoolkit: Sync with Gentoo It's from Gentoo commit 42fa0f1ae12a169130b23ac476d7a9a3d14e2a26. Signed-off-by: Flatcar Buildbot --- .../app-portage/gentoolkit/Manifest | 1 + .../gentoolkit/gentoolkit-0.6.11.ebuild | 4 +- .../gentoolkit/gentoolkit-0.7.1.ebuild | 130 ++++++++++++++++++ 3 files changed, 133 insertions(+), 2 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.7.1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/Manifest b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/Manifest index 05a46f1761d..aa713f10727 100644 --- a/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/Manifest @@ -1,2 +1,3 @@ DIST gentoolkit-0.6.11.tar.bz2 3190283 BLAKE2B 57e671c0f3a5fab9f19cbc9659bfabc5d58e53c73871aa5c51d1af06c08ca5b841e8b0c54e5e572f8563d7c7f132f951ea951a1a03b251d308f859eadb54d6e2 SHA512 5f75ca5409dd1b6d52a2a53e7f8cec5a7def2662bdb0a0cd601dc38ad27a6fafa376acd1074f6b6ce496815872a2874109430cb13c0772c977bc370c6e80e6b7 DIST gentoolkit-0.6.8.tar.bz2 3190065 BLAKE2B 2f792d174a25c03e0f1b895fe06282412d383561e5456d5b4d2d918f7648790846fa9390b3bb9c862618ffefe749d9ccc236682be9fecde12ef8fda17c79359d SHA512 91ba97d8000d90350ea63c4d3be69dda919795b62ae84fe264ae8fee24ce6f6250599e03b086a334344df402781372ba9ced4cedb1c2fc66e2a4f6115ee57fc5 +DIST gentoolkit-0.7.1.tar.bz2 3191162 BLAKE2B 0c76aa32d8ba59776dc02a5a04337c175822cddb3857e3cc060d50de166e0e8996a72fb132bec06a44f694f867a781c72a6f0e3a120a93e771f6683d314ec319 SHA512 b0d6f5a567290d106bbb093a3fba7fe9e90aaeea885c6369962f4f830a20ffed02380024bbc6ae4bbe541a222adde56c52b199c2127f686a9e4532994d16feed diff --git a/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.6.11.ebuild b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.6.11.ebuild index 8d9223b1a26..fe7fac2130e 100644 --- a/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.6.11.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.6.11.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -16,7 +16,7 @@ if [[ ${PV} = 9999* ]]; then inherit git-r3 else SRC_URI="https://gitweb.gentoo.org/proj/gentoolkit.git/snapshot/${P}.tar.bz2" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" fi DESCRIPTION="Collection of administration scripts for Gentoo" diff --git a/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.7.1.ebuild b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.7.1.ebuild new file mode 100644 index 00000000000..fe7fac2130e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.7.1.ebuild @@ -0,0 +1,130 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{12..14} ) +PYTHON_REQ_USE="xml(+),threads(+)" + +inherit meson python-r1 tmpfiles + +if [[ ${PV} = 9999* ]]; then + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/gentoolkit.git + https://github.com/gentoo/gentoolkit + " + inherit git-r3 +else + SRC_URI="https://gitweb.gentoo.org/proj/gentoolkit.git/snapshot/${P}.tar.bz2" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +DESCRIPTION="Collection of administration scripts for Gentoo" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage-Tools" + +LICENSE="GPL-2" +SLOT="0" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +IUSE="test" +RESTRICT="!test? ( test )" + +# Need newer Portage for eclean-pkg API, bug #900224 +DEPEND=" + >=sys-apps/portage-3.0.57[${PYTHON_USEDEP}] +" +RDEPEND=" + ${DEPEND} + ${PYTHON_DEPS} + app-alternatives/awk + sys-apps/gentoo-functions +" + +# setuptools is still needed as a workaround for Python 3.12+ for now. +# https://github.com/mesonbuild/meson/issues/7702 +# +# >=meson-1.2.1-r1 for bug #912051 +BDEPEND=" + ${PYTHON_DEPS} + >=dev-build/meson-1.2.1-r1 + $(python_gen_cond_dep ' + dev-python/setuptools[${PYTHON_USEDEP}] + ' python3_12) + test? ( + dev-python/pytest[${PYTHON_USEDEP}] + ) +" + +src_prepare() { + default + if use prefix-guest ; then + # use correct repo name, bug #632223 + sed -i \ + -e "/load_profile_data/s/repo='gentoo'/repo='gentoo_prefix'/" \ + pym/gentoolkit/profile.py || die + fi +} + +src_configure() { + local code_only=false + python_foreach_impl my_src_configure +} + +my_src_configure() { + local emesonargs=( + -Dcode-only=${code_only} + $(meson_use test tests) + -Deprefix="${EPREFIX}" + -Ddocdir="${EPREFIX}/usr/share/doc/${PF}" + ) + + meson_src_configure + code_only=true +} + +src_compile() { + python_foreach_impl meson_src_compile +} + +src_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + python_foreach_impl epytest +} + +src_install() { + python_foreach_impl my_src_install + dotmpfiles data/tmpfiles.d/revdep-rebuild.conf + + local scripts + mapfile -t scripts < <(awk '/^#!.*python/ {print FILENAME} {nextfile}' "${ED}"/usr/bin/* || die) + python_replicate_script "${scripts[@]}" +} + +my_src_install() { + local pydirs=( + "${D}$(python_get_sitedir)" + ) + + meson_src_install + python_optimize "${pydirs[@]}" +} + +pkg_postinst() { + tmpfiles_process revdep-rebuild.conf + + # Only show the elog information on a new install + if [[ ! ${REPLACING_VERSIONS} ]]; then + elog + elog "For further information on gentoolkit, please read the gentoolkit" + elog "guide: https://wiki.gentoo.org/wiki/Gentoolkit" + elog + elog "Another alternative to equery is app-portage/portage-utils" + elog + elog "Additional tools that may be of interest:" + elog + elog " app-admin/eclean-kernel" + elog " app-portage/diffmask" + elog " app-portage/flaggie" + elog " app-portage/portpeek" + elog " app-portage/smart-live-rebuild" + fi +} From 8d4c3233b0686eba79954b57e49fcbcc56297986 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:49 +0000 Subject: [PATCH 034/291] app-portage/getuto: Sync with Gentoo It's from Gentoo commit 36a0506150ebeec99e6b079776a2c6d102584a92. Signed-off-by: Flatcar Buildbot --- .../portage-stable/app-portage/getuto/getuto-1.15-r1.ebuild | 3 ++- .../portage-stable/app-portage/getuto/getuto-9999.ebuild | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/app-portage/getuto/getuto-1.15-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-portage/getuto/getuto-1.15-r1.ebuild index fc6f7718041..e76ca23e1a8 100644 --- a/sdk_container/src/third_party/portage-stable/app-portage/getuto/getuto-1.15-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-portage/getuto/getuto-1.15-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -26,6 +26,7 @@ IUSE="test" RESTRICT="!test? ( test )" # gpg[sequoia] fails w/ 0.13.1 because of missing --lsign-key +# https://gitlab.com/sequoia-pgp/sequoia-chameleon-gnupg/-/work_items/152 RDEPEND=" || ( app-alternatives/gpg[reference] diff --git a/sdk_container/src/third_party/portage-stable/app-portage/getuto/getuto-9999.ebuild b/sdk_container/src/third_party/portage-stable/app-portage/getuto/getuto-9999.ebuild index 7315cccec2d..f62e5bbad8c 100644 --- a/sdk_container/src/third_party/portage-stable/app-portage/getuto/getuto-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-portage/getuto/getuto-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -26,6 +26,7 @@ IUSE="test" RESTRICT="!test? ( test )" # gpg[sequoia] fails w/ 0.13.1 because of missing --lsign-key +# https://gitlab.com/sequoia-pgp/sequoia-chameleon-gnupg/-/work_items/152 RDEPEND=" || ( app-alternatives/gpg[reference] From b51e2805f5cb3f541594cfb268c33970a06ab6a3 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:49 +0000 Subject: [PATCH 035/291] app-portage/portage-utils: Sync with Gentoo It's from Gentoo commit 16055ab8fb11ee25250bd21b0198e89464eb73c8. Signed-off-by: Flatcar Buildbot --- .../app-portage/portage-utils/Manifest | 2 +- ....99.ebuild => portage-utils-0.97.1.ebuild} | 30 ++----------------- .../portage-utils/portage-utils-9999.ebuild | 3 +- 3 files changed, 5 insertions(+), 30 deletions(-) rename sdk_container/src/third_party/portage-stable/app-portage/portage-utils/{portage-utils-0.99.ebuild => portage-utils-0.97.1.ebuild} (74%) diff --git a/sdk_container/src/third_party/portage-stable/app-portage/portage-utils/Manifest b/sdk_container/src/third_party/portage-stable/app-portage/portage-utils/Manifest index 1047f1ff581..0d67c82efa7 100644 --- a/sdk_container/src/third_party/portage-stable/app-portage/portage-utils/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-portage/portage-utils/Manifest @@ -1,2 +1,2 @@ +DIST portage-utils-0.97.1.tar.xz 1972632 BLAKE2B 3f04718d8662d298e4494c1563d4a8e0dcfe16b960cc95f8c24eecef0d5f2ed2c39155d813754ec168570b584de6d450276663247a04e3dda64dc221fb02ad93 SHA512 686ecc70522acb8e4be7b0d515a8311b12e0e6bbb950391177636cfd7b9ce346ccc63b444cf8fbf3f2797190dd8540122df8ac089b575386054829e6e746b02b DIST portage-utils-0.97.tar.xz 1861616 BLAKE2B bdb4c6c1260a00304fb2c659629e0ddd4ca0378b1a060ea8b1f02ecb6060b4101c6e8984a6befd8b831a2b415fcdc5a51b6dac2fb203b36585f4a7d389ea0913 SHA512 f0f9ecf87df6e08b7f7dbdfe758c1a585a6836478d3adbcecdc2e33c9cfd78a5a10ae3090f0aa5ad0fa8a1eff88bf9e512d861b46bc77e5a536b46a3b36cd466 -DIST portage-utils-0.99.tar.xz 2093056 BLAKE2B 8c857140103b01a51e3a1acb38df2d9e281e17b522445628b14c0eb4894ec929682d5417a056902ab9640ccd8e3ed31310d11b26856b443dbc7ffb4ad256c870 SHA512 10952eedb055dd064e59ad00c76d20bb13c683908d27c431e1d403c07b1896d0882f75fe96b23b1335dda6ac9670acc476f716420130a45e17fc64eafc2da084 diff --git a/sdk_container/src/third_party/portage-stable/app-portage/portage-utils/portage-utils-0.99.ebuild b/sdk_container/src/third_party/portage-stable/app-portage/portage-utils/portage-utils-0.97.1.ebuild similarity index 74% rename from sdk_container/src/third_party/portage-stable/app-portage/portage-utils/portage-utils-0.99.ebuild rename to sdk_container/src/third_party/portage-stable/app-portage/portage-utils/portage-utils-0.97.1.ebuild index f2dde63249a..78a1975446b 100644 --- a/sdk_container/src/third_party/portage-stable/app-portage/portage-utils/portage-utils-0.99.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-portage/portage-utils/portage-utils-0.97.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -18,21 +18,9 @@ fi LICENSE="GPL-2" SLOT="0" -IUSE="+gpkg gtree openmp +qmanifest static" +IUSE="openmp +qmanifest static" RDEPEND=" - gpkg? ( - !static? ( - app-crypt/gpgme:= - app-arch/libarchive:= - ) - ) - gtree? ( - !static? ( - app-crypt/gpgme:= - app-arch/libarchive:=[zstd] - ) - ) openmp? ( || ( sys-devel/gcc:*[openmp] llvm-runtimes/openmp @@ -45,18 +33,6 @@ RDEPEND=" ) )" DEPEND="${RDEPEND} - gpkg? ( - static? ( - app-crypt/gpgme[static-libs] - app-arch/libarchive[static-libs] - ) - ) - gtree? ( - static? ( - app-crypt/gpgme[static-libs] - app-arch/libarchive[static-libs,zstd] - ) - ) qmanifest? ( static? ( app-crypt/gpgme[static-libs] @@ -89,8 +65,6 @@ src_configure() { econf \ --disable-maintainer-mode \ --with-eprefix="${EPREFIX}" \ - $(use_enable gpkg) \ - $(use_enable gtree) \ $(use_enable qmanifest) \ $(use_enable openmp) } diff --git a/sdk_container/src/third_party/portage-stable/app-portage/portage-utils/portage-utils-9999.ebuild b/sdk_container/src/third_party/portage-stable/app-portage/portage-utils/portage-utils-9999.ebuild index 3d8a079dc14..26b6aa9ed20 100644 --- a/sdk_container/src/third_party/portage-stable/app-portage/portage-utils/portage-utils-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-portage/portage-utils/portage-utils-9999.ebuild @@ -64,7 +64,8 @@ DEPEND="${RDEPEND} virtual/zlib:=[static-libs] ) )" -BDEPEND="virtual/pkgconfig" +BDEPEND="virtual/pkgconfig + dev-python/pyyaml" # bug #898362, gnulib explicit checks QA_CONFIG_IMPL_DECL_SKIP=( From 809258809a4257101af1474a6a00274433e54aef Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:50 +0000 Subject: [PATCH 036/291] app-shells/bash: Sync with Gentoo It's from Gentoo commit 68531e0634cc5114e0759bbb657f13bb63569371. Signed-off-by: Flatcar Buildbot --- .../portage-stable/app-shells/bash/Manifest | 3 - .../app-shells/bash/bash-5.3_p3-r3.ebuild | 464 ----------------- .../app-shells/bash/bash-5.3_p8.ebuild | 463 ----------------- .../bash/bash-5.4_alpha_pre20251027.ebuild | 468 ------------------ .../bash/bash-5.4_alpha_pre20251119.ebuild | 468 ------------------ .../bash/bash-5.4_alpha_pre20251124.ebuild | 468 ------------------ .../bash/files/bash-5.3-read-sys.patch | 19 - 7 files changed, 2353 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_p3-r3.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_p8.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.4_alpha_pre20251027.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.4_alpha_pre20251119.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.4_alpha_pre20251124.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/app-shells/bash/files/bash-5.3-read-sys.patch diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash/Manifest b/sdk_container/src/third_party/portage-stable/app-shells/bash/Manifest index 98a1ea99105..332795ab8e8 100644 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-shells/bash/Manifest @@ -24,9 +24,6 @@ DIST bash-5.2.tar.gz 10950833 BLAKE2B 51b196e710794ebad8eac28c31c93eb99ac1a7db30 DIST bash-5.2.tar.gz.sig 95 BLAKE2B 2991b7c46ef1cdca08062f419be47fca7551f4c5d9aad8a5c1da74974f5e7707d23914b4cecf9b6c9610471146b2c49b611bb62a5d974f1c37cceb77b719851c SHA512 a161664f124f906be32709f66702f8f780e6d52e558ea45e71ec60a959c9435ff68477ee65a0a9f6c0051d5592f5044fb3b410cf3cd3ae5a8a323789b01be258 DIST bash-5.3.tar.gz 11355854 BLAKE2B 82d1b54322bbd1e8c2a93380f1b2888a42a1d7186e504f41cee705a0fdd41463d8f20baa1755051e1396192f8ebd089524767d933a9e0b5fb76f2588601539bb SHA512 426702c8b0fb9e0c9956259973ce5b657890fd47f4f807a64febf20077bb48d0b91474ed6e843d2ef277186b46c5fffa79b808da9b48d4ec027d5e2de1b28ed8 DIST bash-5.3.tar.gz.sig 95 BLAKE2B 2fb04e4f699fdee6e583581821cf9a5fa435a00febf7893a344371f11ccb964545386c98dfb2d8f5d0efc74aafe9d491b544e90ae4716bdc286ac48d942430f0 SHA512 c77c0898f03e80a042574a486686cc296b96426f6cdb7a6d2376ecd5182ba03477bfcbd95ea3db499c11866d3f4ae99012a37662ccb6f83dfd6b59f671349dc7 -DIST bash-5.4_alpha_pre20251027-c299f535be51179b1e0c989ad9ba4365e182ec28.tar.gz 16575720 BLAKE2B d3bc83b5ad252f84037d9639b1eaee13e56a006f2c0fe4b4bc00c662f05067965d8f26dca886137947f80bd923491fb5feaebb992e1f7515b7298715237b35dc SHA512 52698edc1d70029c8212a23457b5384942614e05c225cf66cea34290aacaf2e85f07ca4106f2ce242dff84d89ed45051f79cb4646cb2a22c4f74513f62c6393d -DIST bash-5.4_alpha_pre20251119-bcac47f08a6e8f04893f3f282bb841ddc07fc2e8.tar.gz 16577303 BLAKE2B 4a19a480deee6ce1d160081bb0b40c7dbcbd25ae8cb5bf06149c5f270ca4a8bad4f76263d65b2a7cd4ef2f70108536f71f5d0c1502b0b72f9ec1f0d6b6efa795 SHA512 ae5139f300bcee7434df202754ba6b8fea263ee25b5fa8dd69e2ac828d1004a8ab903660dc80dec379283bebc0bc7b7148b7277dc66c0c2141feb2b05c3422ce -DIST bash-5.4_alpha_pre20251124-4e705ed53ac364ee110f0b2fbeeab9d3301fcb6b.tar.gz 16578133 BLAKE2B 2208bbb4c81fe9d844bbf91e24226bf03e2f9f21fd736fa4f8703b050ea18ab7fa2301ec697687d768138cf0641a26b33829312426c5d5b47eff875e0c5c2aa6 SHA512 460b8992abfde82be90b50f46ecb32ae92bb0052c888591e0b16c7523eb4290d6b1594c1ab3c6a9ec33c23da5847ace4bf8dceb6036e7e33bbb5c712a95044c2 DIST bash-5.4_alpha_pre20251202-5a104e96d869e2bbf0f7f364f45d21e6fc151721.tar.gz 16555426 BLAKE2B b8c28236cbc70c54b8aacb2e0826904e4cc6a00d9385c99aa07241c98f921fdb2d3f1ce8499103e30ca512b2a65b2654d956eabc3b5126b047c0941f976e9302 SHA512 31f5d9e1576c8652281e13a4bf975beefefc0cf11fb218e70cdfcb4ea48333d7d9f3208adac6b89a3b2cbf02bea8f75df8e17ec57412071abfcec88553f88601 DIST bash205b-001 1132 BLAKE2B 0c5eef29777d54ef05957ea3d63b1556fb380bd20c238dc28993d822b37bc4e78ff4048ad069f6b8cd25da77ccdeb7aecd86c4349cb9d81e5e94c7001eeae5e6 SHA512 5ce4357468821b05e747201f3aa57225ad8f540c9e2c87051720490e039c30b478b9b662a68f14a0800fefe40184e4495e2645665200f9d75e9a115b2ac08071 DIST bash205b-002 755 BLAKE2B 6a6ed5679d451f02f8104b345c1722d11718ce3b4043b581c17786d40d8da69a34786fb56d0c363dba277b8e9dd33f12f70c9cc73a9fc39ba4a8319406f0458d SHA512 46947b0229478d5c2cfeff68b8ebc00e4ef0c8b94e336ca12f72b4490ba3622c0240c01c17c1641c3b07adc2c64ec94d6d780365e8990768ec8888f3a9526883 diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_p3-r3.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_p3-r3.ebuild deleted file mode 100644 index 8ab4ea18714..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_p3-r3.ebuild +++ /dev/null @@ -1,464 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc -inherit flag-o-matic toolchain-funcs prefix verify-sig - -# Uncomment if we have a patchset. -#GENTOO_PATCH_DEV="sam" -#GENTOO_PATCH_VER="${PV}" - -MY_PV=${PV/_p*} -MY_PV=${MY_PV/_/-} -MY_P=${PN}-${MY_PV} -MY_PATCHES=() - -# Determine the patchlevel. See https://ftp.gnu.org/gnu/bash/bash-5.3-patches/. -case ${PV} in - 9999|*_alpha*|*_beta*|*_rc*) - # Set a negative patchlevel to indicate that it's a pre-release. - PLEVEL=-1 - if [[ ${PV} =~ _pre[0-9]{8}$ ]]; then - BASH_COMMIT= - fi - ;; - *_p*) - PLEVEL=${PV##*_p} - ;; - *) - PLEVEL=0 -esac - -# The version of readline this bash normally ships with. Note that we only use -# the bundled copy of readline for pre-releases. -READLINE_VER="8.3" - -DESCRIPTION="The standard GNU Bourne again shell" -HOMEPAGE="https://tiswww.case.edu/php/chet/bash/bashtop.html https://git.savannah.gnu.org/cgit/bash.git" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/bash.git" - EGIT_BRANCH=devel - inherit git-r3 -elif (( PLEVEL < 0 )) && [[ ${BASH_COMMIT} ]]; then - # It can be useful to have snapshots in the pre-release period once - # the first alpha is out, as various bugs get reported and fixed from - # the alpha, and the next pre-release is usually quite far away. - # - # i.e. if it's worth packaging the alpha, it's worth packaging a followup. - SRC_URI="https://git.savannah.gnu.org/cgit/bash.git/snapshot/bash-${BASH_COMMIT}.tar.gz -> ${P}-${BASH_COMMIT}.tar.gz" - S=${WORKDIR}/${PN}-${BASH_COMMIT} -else - my_urls=( "mirror://gnu/bash/${MY_P}.tar.gz" ) - - # bash-5.1 -> bash51 - my_p=${PN}$(ver_cut 1-2) my_p=${my_p/.} - - for (( my_patch_idx = 1; my_patch_idx <= PLEVEL; my_patch_idx++ )); do - printf -v my_patch_ver %s-%03d "${my_p}" "${my_patch_idx}" - my_urls+=( "mirror://gnu/bash/${MY_P}-patches/${my_patch_ver}" ) - MY_PATCHES+=( "${DISTDIR}/${my_patch_ver}" ) - done - - SRC_URI="${my_urls[*]} verify-sig? ( ${my_urls[*]/%/.sig} )" - S=${WORKDIR}/${MY_P} - - unset -v my_urls my_p my_patch_idx my_patch_ver -fi - -if [[ ${GENTOO_PATCH_VER} ]]; then - SRC_URI+=" https://dev.gentoo.org/~${GENTOO_PATCH_DEV:?}/distfiles/${CATEGORY}/${PN}/${PN}-${GENTOO_PATCH_VER:?}-patches.tar.xz" -fi - -LICENSE="GPL-3+" -SLOT="0" -if (( PLEVEL >= 0 )); then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" -fi -IUSE="afs bashlogger examples mem-scramble +net nls plugins pgo +readline" - -DEPEND=" - >=sys-libs/ncurses-5.2-r2:= - nls? ( virtual/libintl ) -" -if (( PLEVEL >= 0 )); then - DEPEND+=" readline? ( >=sys-libs/readline-${READLINE_VER}:= )" -fi -RDEPEND=" - ${DEPEND} -" -# We only need bison (yacc) when the .y files get patched (bash42-005, bash51-011). -BDEPEND=" - pgo? ( dev-util/gperf ) - verify-sig? ( sec-keys/openpgp-keys-chetramey ) -" - -# EAPI 8 tries to append it but it doesn't exist here. -QA_CONFIGURE_OPTIONS="--disable-static" - -PATCHES=( - #"${WORKDIR}"/${PN}-${GENTOO_PATCH_VER}/ - - # Patches to or from Chet, posted to the bug-bash mailing list. - "${FILESDIR}"/${PN}-5.0-syslog-history-extern.patch - "${FILESDIR}"/${PN}-5.3-read-sys.patch -) - -pkg_setup() { - # bug #7332 - if is-flag -malign-double; then - eerror "Detected bad CFLAGS '-malign-double'. Do not use this" - eerror "as it breaks LFS (struct stat64) on x86." - die "remove -malign-double from your CFLAGS mr ricer" - fi - - if use bashlogger; then - ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs." - ewarn "This will log ALL output you enter into the shell, you have been warned." - fi -} - -src_unpack() { - local patch - - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - elif (( PLEVEL < 0 )) && [[ ${BASH_COMMIT} ]]; then - default - else - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig} - - for patch in "${MY_PATCHES[@]}"; do - verify-sig_verify_detached "${patch}"{,.sig} - done - fi - - unpack "${MY_P}.tar.gz" - - if [[ ${GENTOO_PATCH_VER} ]]; then - unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz" - fi - fi -} - -src_prepare() { - # Include official patches. - (( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}" - - # Prefixify hardcoded path names. No-op for non-prefix. - hprefixify pathnames.h.in - - # Avoid regenerating docs after patches, bug #407985. - sed -i -E '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in \ - && touch -r . doc/* \ - || die - - # Sometimes hangs (more noticeable w/ pgo), bug #907403. - rm tests/run-jobs || die - - eapply -p0 "${PATCHES[@]}" - eapply_user -} - -src_configure() { - local -a myconf - - # Upstream only test with Bison and require GNUisms like YYEOF and - # YYERRCODE. The former at least may be in POSIX soon: - # https://www.austingroupbugs.net/view.php?id=1269. - # - # configure warns on use of non-Bison but doesn't abort. The result - # may misbehave at runtime. Chet also advises against use of byacc: - # https://lists.gnu.org/archive/html/bug-bash/2025-08/msg00115.html - unset -v YACC - - if tc-is-cross-compiler; then - export CFLAGS_FOR_BUILD="${BUILD_CFLAGS} -std=gnu17" - fi - - myconf=( - --disable-profiling - - # Force linking with system curses ... the bundled termcap lib - # sucks bad compared to ncurses. For the most part, ncurses - # is here because readline needs it. But bash itself calls - # ncurses in one or two small places :(. - --with-curses - - $(use_enable mem-scramble) - $(use_enable net net-redirections) - $(use_enable readline) - $(use_enable readline bang-history) - $(use_enable readline history) - $(use_with afs) - $(use_with mem-scramble bash-malloc) - ) - - # For descriptions of these, see config-top.h. - # bashrc/#26952 bash_logout/#90488 ssh/#24762 mktemp/#574426 - append-cppflags \ - -DDEFAULT_PATH_VALUE=\'\""${EPREFIX}"/usr/local/sbin:"${EPREFIX}"/usr/local/bin:"${EPREFIX}"/usr/sbin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/bin\"\' \ - -DSTANDARD_UTILS_PATH=\'\""${EPREFIX}"/bin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/usr/sbin\"\' \ - -DDEFAULT_LOADABLE_BUILTINS_PATH=\'\""${EPREFIX}"/usr/local/$(get_libdir)/bash:"${EPREFIX}"/usr/$(get_libdir)/bash\"\' \ - -DSYS_BASHRC=\'\""${EPREFIX}"/etc/bash/bashrc\"\' \ - -DSYS_BASH_LOGOUT=\'\""${EPREFIX}"/etc/bash/bash_logout\"\' \ - -DNON_INTERACTIVE_LOGIN_SHELLS \ - -DSSH_SOURCE_BASHRC \ - $(use bashlogger && echo -DSYSLOG_HISTORY) - - use nls || myconf+=( --disable-nls ) - - if (( PLEVEL >= 0 )); then - # Historically, we always used the builtin readline, but since - # our handling of SONAME upgrades has gotten much more stable - # in the PM (and the readline ebuild itself preserves the old - # libs during upgrades), linking against the system copy should - # be safe. - # Exact cached version here doesn't really matter as long as it - # is at least what's in the DEPEND up above. - export ac_cv_rl_version=${READLINE_VER%%_*} - - # Use system readline only with released versions. - myconf+=( --with-installed-readline=. ) - fi - - if use plugins; then - append-ldflags "-Wl,-rpath,${EPREFIX}/usr/$(get_libdir)/bash" - else - # Disable the plugins logic by hand since bash doesn't provide - # a way of doing it. - export ac_cv_func_dl{close,open,sym}=no \ - ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no - - sed -i -e '/LOCAL_LDFLAGS=/s:-rdynamic::' configure || die - fi - - # bug #444070 - tc-export AR - - econf "${myconf[@]}" -} - -src_compile() { - local -a pgo_generate_flags pgo_use_flags - local flag - - # -fprofile-partial-training because upstream notes the test suite isn't - # super comprehensive. - # https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo - if use pgo; then - pgo_generate_flags=( - -fprofile-update=atomic - -fprofile-dir="${T}"/pgo - -fprofile-generate="${T}"/pgo - ) - pgo_use_flags=( - -fprofile-use="${T}"/pgo - -fprofile-dir="${T}"/pgo - ) - if flag=$(test-flags-CC -fprofile-partial-training); then - pgo_generate_flags+=( "${flag}" ) - pgo_use_flags+=( "${flag}" ) - fi - fi - - emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" - use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" all others - - # Build Bash and run its tests to generate profiles. - if (( ${#pgo_generate_flags[@]} )); then - # Used in test suite. - unset -v A - - emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" -k check - - if tc-is-clang; then - llvm-profdata merge "${T}"/pgo --output="${T}"/pgo/default.profdata || die - fi - - # Rebuild Bash using the profiling data we just generated. - emake clean - emake CFLAGS="${CFLAGS} ${pgo_use_flags[*]}" - use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_use_flags[*]}" all others - fi -} - -src_test() { - # Used in test suite. - unset -v A - - default -} - -src_install() { - local d f - - default - - my_prefixify() { - while read -r; do - if [[ $REPLY == *$1* ]]; then - REPLY=${REPLY/"/etc/"/"${EPREFIX}/etc/"} - fi - printf '%s\n' "${REPLY}" || ! break - done < "$2" || die - } - - dodir /bin - mv -- "${ED}"/usr/bin/bash "${ED}"/bin/ || die - dosym bash /bin/rbash - - insinto /etc/bash - doins "${FILESDIR}"/bash_logout - my_prefixify bashrc.d "${FILESDIR}"/bashrc-r2 | newins - bashrc - - insinto /etc/bash/bashrc.d - my_prefixify DIR_COLORS "${FILESDIR}"/bashrc.d/10-gentoo-color-r2.bash | newins - 10-gentoo-color.bash - newins "${FILESDIR}"/bashrc.d/10-gentoo-title-r3.bash 10-gentoo-title.bash - - insinto /etc/profile.d - doins "${FILESDIR}/profile.d/00-prompt-command.sh" - - insinto /etc/skel - for f in bash{_logout,_profile,rc}; do - newins "${FILESDIR}/skel/dot-${f}" ".${f}" - done - - if use plugins; then - exeinto "/usr/$(get_libdir)/bash" - set -- examples/loadables/*.o - doexe "${@%.o}" - - insinto /usr/include/bash-plugins - doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h} - fi - - if use examples; then - for d in examples/{functions,misc,scripts,startup-files}; do - exeinto "/usr/share/doc/${PF}/${d}" - docinto "${d}" - for f in "${d}"/*; do - if [[ ${f##*/} != @(PERMISSION|*README) ]]; then - doexe "${f}" - else - dodoc "${f}" - fi - done - done - fi - - # Install bash_builtins.1 and rbash.1. - emake -C doc DESTDIR="${D}" install_builtins - sed 's:bash\.1:man1/&:' doc/rbash.1 > "${T}"/rbash.1 || die - doman "${T}"/rbash.1 - - newdoc CWRU/changelog ChangeLog - dosym bash.info /usr/share/info/bashref.info -} - -pkg_preinst() { - if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]]; then - mkdir -p -- "${EROOT}"/etc/bash \ - && mv -f -- "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/ \ - || die - fi -} - -pkg_postinst() { - local IFS old_ver ver - local -a versions - - # If /bin/sh does not exist, provide it. - if [[ ! -e ${EROOT}/bin/sh ]]; then - ln -sf -- bash "${EROOT}"/bin/sh || die - fi - - if [[ -e ${EROOT}/etc/bash/bashrc.d/15-gentoo-bashrc-check.bash ]]; then - ewarn "The following file is no longer packaged and can safely be deleted:" - ewarn "${EROOT}/etc/bash/bashrc.d/15-gentoo-bashrc-check.bash" - fi - - read -rd '' -a versions <<<"${REPLACING_VERSIONS}" - for ver in "${versions[@]}"; do - if [[ ! ${old_ver} ]] || ver_test "${ver}" -lt "${old_ver}"; then - old_ver=${ver} - fi - done - - if [[ ! ${old_ver} ]]; then - return - fi - - { - if ver_test "${old_ver}" -ge "5.2" \ - && ver_test "${old_ver}" -ge "5.2_p26-r8" - then - : - elif ver_test "${old_ver}" -lt "5.2" \ - && ver_test "${old_ver}" -ge "5.1_p16-r8" - then - : - else - cat <<'EOF' -Files under /etc/bash/bashrc.d must now have a suffix of .sh or .bash. - -Gentoo now defaults to defining PROMPT_COMMAND as an array. Depending on the -characteristics of the operating environment, it may contain a command to set -the terminal's window title. Those who were already choosing to customise the -PROMPT_COMMAND variable are now advised to append their commands like so: - -PROMPT_COMMAND+=('custom command goes here') - -Gentoo no longer defaults to having bash set the window title in the case -that the terminal is controlled by sshd(8), unless screen is launched on the -remote side or the terminal reliably supports saving and restoring the title -(as alacritty, foot and tmux do). Those wanting for the title to be set -regardless may adjust ~/.bashrc - or create a custom /etc/bash/bashrc.d -drop-in - to set PROMPT_COMMMAND like so: - -PROMPT_COMMAND=(genfun_set_win_title) - -Those who would prefer for bash never to interfere with the window title may -now opt out of the default title setting behaviour, either with the "unset -v -PROMPT_COMMAND" command or by re-defining PROMPT_COMMAND as desired. -EOF - fi - - if ver_test "${old_ver}" -ge "5.3" \ - && ver_test "${old_ver}" -ge "5.3_p3-r3" - then - : - elif ver_test "${old_ver}" -lt "5.3" \ - && ver_test "${old_ver}" -ge "5.2_p37-r5" - then - : - else - cat <<'EOF' -The window title setting behaviour has been improved. It is now formatted as -"\u@\h \W", in accordance with the prompting mechanism of bash. For example, -after switching to the home directory, the current working directory will be -shown as the character. - -The value of PROMPT_DIRTRIM is now respected. If this variable is unset, the -use of the \W prompt string escape will prevail, with the current working -directory typically being shown as its basename. If set to 0 or greater, \w -will be used instead, which may be trimmed. This also means that the title -can be made to show the full path by setting PROMPT_DIRTRIM=0. - -For further information, run info '(bash)Bash Variables' or visit -https://www.gnu.org/software/bash/manual/bash.html#index-PROMPT_005fDIRTRIM. -EOF - fi - } \ - | if [[ ${COLUMNS} == [1-9]*([0-9]) ]] && (( COLUMNS > 80 )); then - fmt -w "$(( COLUMNS - 3 ))" - else - cat - fi \ - | while read -r; do - ewarn "${REPLY}" - done -} diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_p8.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_p8.ebuild deleted file mode 100644 index b33b1c6d4e1..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_p8.ebuild +++ /dev/null @@ -1,463 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc -inherit flag-o-matic toolchain-funcs prefix verify-sig - -# Uncomment if we have a patchset. -#GENTOO_PATCH_DEV="sam" -#GENTOO_PATCH_VER="${PV}" - -MY_PV=${PV/_p*} -MY_PV=${MY_PV/_/-} -MY_P=${PN}-${MY_PV} -MY_PATCHES=() - -# Determine the patchlevel. See https://ftp.gnu.org/gnu/bash/bash-5.3-patches/. -case ${PV} in - 9999|*_alpha*|*_beta*|*_rc*) - # Set a negative patchlevel to indicate that it's a pre-release. - PLEVEL=-1 - if [[ ${PV} =~ _pre[0-9]{8}$ ]]; then - BASH_COMMIT= - fi - ;; - *_p*) - PLEVEL=${PV##*_p} - ;; - *) - PLEVEL=0 -esac - -# The version of readline this bash normally ships with. Note that we only use -# the bundled copy of readline for pre-releases. -READLINE_VER="8.3" - -DESCRIPTION="The standard GNU Bourne again shell" -HOMEPAGE="https://tiswww.case.edu/php/chet/bash/bashtop.html https://git.savannah.gnu.org/cgit/bash.git" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/bash.git" - EGIT_BRANCH=devel - inherit git-r3 -elif (( PLEVEL < 0 )) && [[ ${BASH_COMMIT} ]]; then - # It can be useful to have snapshots in the pre-release period once - # the first alpha is out, as various bugs get reported and fixed from - # the alpha, and the next pre-release is usually quite far away. - # - # i.e. if it's worth packaging the alpha, it's worth packaging a followup. - SRC_URI="https://git.savannah.gnu.org/cgit/bash.git/snapshot/bash-${BASH_COMMIT}.tar.gz -> ${P}-${BASH_COMMIT}.tar.gz" - S=${WORKDIR}/${PN}-${BASH_COMMIT} -else - my_urls=( "mirror://gnu/bash/${MY_P}.tar.gz" ) - - # bash-5.1 -> bash51 - my_p=${PN}$(ver_cut 1-2) my_p=${my_p/.} - - for (( my_patch_idx = 1; my_patch_idx <= PLEVEL; my_patch_idx++ )); do - printf -v my_patch_ver %s-%03d "${my_p}" "${my_patch_idx}" - my_urls+=( "mirror://gnu/bash/${MY_P}-patches/${my_patch_ver}" ) - MY_PATCHES+=( "${DISTDIR}/${my_patch_ver}" ) - done - - SRC_URI="${my_urls[*]} verify-sig? ( ${my_urls[*]/%/.sig} )" - S=${WORKDIR}/${MY_P} - - unset -v my_urls my_p my_patch_idx my_patch_ver -fi - -if [[ ${GENTOO_PATCH_VER} ]]; then - SRC_URI+=" https://dev.gentoo.org/~${GENTOO_PATCH_DEV:?}/distfiles/${CATEGORY}/${PN}/${PN}-${GENTOO_PATCH_VER:?}-patches.tar.xz" -fi - -LICENSE="GPL-3+" -SLOT="0" -if (( PLEVEL >= 0 )); then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" -fi -IUSE="afs bashlogger examples mem-scramble +net nls plugins pgo +readline" - -DEPEND=" - >=sys-libs/ncurses-5.2-r2:= - nls? ( virtual/libintl ) -" -if (( PLEVEL >= 0 )); then - DEPEND+=" readline? ( >=sys-libs/readline-${READLINE_VER}:= )" -fi -RDEPEND=" - ${DEPEND} -" -# We only need bison (yacc) when the .y files get patched (bash42-005, bash51-011). -BDEPEND=" - pgo? ( dev-util/gperf ) - verify-sig? ( sec-keys/openpgp-keys-chetramey ) -" - -# EAPI 8 tries to append it but it doesn't exist here. -QA_CONFIGURE_OPTIONS="--disable-static" - -PATCHES=( - #"${WORKDIR}"/${PN}-${GENTOO_PATCH_VER}/ - - # Patches to or from Chet, posted to the bug-bash mailing list. - "${FILESDIR}"/${PN}-5.0-syslog-history-extern.patch -) - -pkg_setup() { - # bug #7332 - if is-flag -malign-double; then - eerror "Detected bad CFLAGS '-malign-double'. Do not use this" - eerror "as it breaks LFS (struct stat64) on x86." - die "remove -malign-double from your CFLAGS mr ricer" - fi - - if use bashlogger; then - ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs." - ewarn "This will log ALL output you enter into the shell, you have been warned." - fi -} - -src_unpack() { - local patch - - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - elif (( PLEVEL < 0 )) && [[ ${BASH_COMMIT} ]]; then - default - else - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig} - - for patch in "${MY_PATCHES[@]}"; do - verify-sig_verify_detached "${patch}"{,.sig} - done - fi - - unpack "${MY_P}.tar.gz" - - if [[ ${GENTOO_PATCH_VER} ]]; then - unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz" - fi - fi -} - -src_prepare() { - # Include official patches. - (( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}" - - # Prefixify hardcoded path names. No-op for non-prefix. - hprefixify pathnames.h.in - - # Avoid regenerating docs after patches, bug #407985. - sed -i -E '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in \ - && touch -r . doc/* \ - || die - - # Sometimes hangs (more noticeable w/ pgo), bug #907403. - rm tests/run-jobs || die - - eapply -p0 "${PATCHES[@]}" - eapply_user -} - -src_configure() { - local -a myconf - - # Upstream only test with Bison and require GNUisms like YYEOF and - # YYERRCODE. The former at least may be in POSIX soon: - # https://www.austingroupbugs.net/view.php?id=1269. - # - # configure warns on use of non-Bison but doesn't abort. The result - # may misbehave at runtime. Chet also advises against use of byacc: - # https://lists.gnu.org/archive/html/bug-bash/2025-08/msg00115.html - unset -v YACC - - if tc-is-cross-compiler; then - export CFLAGS_FOR_BUILD="${BUILD_CFLAGS} -std=gnu17" - fi - - myconf=( - --disable-profiling - - # Force linking with system curses ... the bundled termcap lib - # sucks bad compared to ncurses. For the most part, ncurses - # is here because readline needs it. But bash itself calls - # ncurses in one or two small places :(. - --with-curses - - $(use_enable mem-scramble) - $(use_enable net net-redirections) - $(use_enable readline) - $(use_enable readline bang-history) - $(use_enable readline history) - $(use_with afs) - $(use_with mem-scramble bash-malloc) - ) - - # For descriptions of these, see config-top.h. - # bashrc/#26952 bash_logout/#90488 ssh/#24762 mktemp/#574426 - append-cppflags \ - -DDEFAULT_PATH_VALUE=\'\""${EPREFIX}"/usr/local/sbin:"${EPREFIX}"/usr/local/bin:"${EPREFIX}"/usr/sbin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/bin\"\' \ - -DSTANDARD_UTILS_PATH=\'\""${EPREFIX}"/bin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/usr/sbin\"\' \ - -DDEFAULT_LOADABLE_BUILTINS_PATH=\'\""${EPREFIX}"/usr/local/$(get_libdir)/bash:"${EPREFIX}"/usr/$(get_libdir)/bash\"\' \ - -DSYS_BASHRC=\'\""${EPREFIX}"/etc/bash/bashrc\"\' \ - -DSYS_BASH_LOGOUT=\'\""${EPREFIX}"/etc/bash/bash_logout\"\' \ - -DNON_INTERACTIVE_LOGIN_SHELLS \ - -DSSH_SOURCE_BASHRC \ - $(use bashlogger && echo -DSYSLOG_HISTORY) - - use nls || myconf+=( --disable-nls ) - - if (( PLEVEL >= 0 )); then - # Historically, we always used the builtin readline, but since - # our handling of SONAME upgrades has gotten much more stable - # in the PM (and the readline ebuild itself preserves the old - # libs during upgrades), linking against the system copy should - # be safe. - # Exact cached version here doesn't really matter as long as it - # is at least what's in the DEPEND up above. - export ac_cv_rl_version=${READLINE_VER%%_*} - - # Use system readline only with released versions. - myconf+=( --with-installed-readline=. ) - fi - - if use plugins; then - append-ldflags "-Wl,-rpath,${EPREFIX}/usr/$(get_libdir)/bash" - else - # Disable the plugins logic by hand since bash doesn't provide - # a way of doing it. - export ac_cv_func_dl{close,open,sym}=no \ - ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no - - sed -i -e '/LOCAL_LDFLAGS=/s:-rdynamic::' configure || die - fi - - # bug #444070 - tc-export AR - - econf "${myconf[@]}" -} - -src_compile() { - local -a pgo_generate_flags pgo_use_flags - local flag - - # -fprofile-partial-training because upstream notes the test suite isn't - # super comprehensive. - # https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo - if use pgo; then - pgo_generate_flags=( - -fprofile-update=atomic - -fprofile-dir="${T}"/pgo - -fprofile-generate="${T}"/pgo - ) - pgo_use_flags=( - -fprofile-use="${T}"/pgo - -fprofile-dir="${T}"/pgo - ) - if flag=$(test-flags-CC -fprofile-partial-training); then - pgo_generate_flags+=( "${flag}" ) - pgo_use_flags+=( "${flag}" ) - fi - fi - - emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" - use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" all others - - # Build Bash and run its tests to generate profiles. - if (( ${#pgo_generate_flags[@]} )); then - # Used in test suite. - unset -v A - - emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" -k check - - if tc-is-clang; then - llvm-profdata merge "${T}"/pgo --output="${T}"/pgo/default.profdata || die - fi - - # Rebuild Bash using the profiling data we just generated. - emake clean - emake CFLAGS="${CFLAGS} ${pgo_use_flags[*]}" - use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_use_flags[*]}" all others - fi -} - -src_test() { - # Used in test suite. - unset -v A - - default -} - -src_install() { - local d f - - default - - my_prefixify() { - while read -r; do - if [[ $REPLY == *$1* ]]; then - REPLY=${REPLY/"/etc/"/"${EPREFIX}/etc/"} - fi - printf '%s\n' "${REPLY}" || ! break - done < "$2" || die - } - - dodir /bin - mv -- "${ED}"/usr/bin/bash "${ED}"/bin/ || die - dosym bash /bin/rbash - - insinto /etc/bash - doins "${FILESDIR}"/bash_logout - my_prefixify bashrc.d "${FILESDIR}"/bashrc-r2 | newins - bashrc - - insinto /etc/bash/bashrc.d - my_prefixify DIR_COLORS "${FILESDIR}"/bashrc.d/10-gentoo-color-r2.bash | newins - 10-gentoo-color.bash - newins "${FILESDIR}"/bashrc.d/10-gentoo-title-r3.bash 10-gentoo-title.bash - - insinto /etc/profile.d - doins "${FILESDIR}/profile.d/00-prompt-command.sh" - - insinto /etc/skel - for f in bash{_logout,_profile,rc}; do - newins "${FILESDIR}/skel/dot-${f}" ".${f}" - done - - if use plugins; then - exeinto "/usr/$(get_libdir)/bash" - set -- examples/loadables/*.o - doexe "${@%.o}" - - insinto /usr/include/bash-plugins - doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h} - fi - - if use examples; then - for d in examples/{functions,misc,scripts,startup-files}; do - exeinto "/usr/share/doc/${PF}/${d}" - docinto "${d}" - for f in "${d}"/*; do - if [[ ${f##*/} != @(PERMISSION|*README) ]]; then - doexe "${f}" - else - dodoc "${f}" - fi - done - done - fi - - # Install bash_builtins.1 and rbash.1. - emake -C doc DESTDIR="${D}" install_builtins - sed 's:bash\.1:man1/&:' doc/rbash.1 > "${T}"/rbash.1 || die - doman "${T}"/rbash.1 - - newdoc CWRU/changelog ChangeLog - dosym bash.info /usr/share/info/bashref.info -} - -pkg_preinst() { - if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]]; then - mkdir -p -- "${EROOT}"/etc/bash \ - && mv -f -- "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/ \ - || die - fi -} - -pkg_postinst() { - local IFS old_ver ver - local -a versions - - # If /bin/sh does not exist, provide it. - if [[ ! -e ${EROOT}/bin/sh ]]; then - ln -sf -- bash "${EROOT}"/bin/sh || die - fi - - if [[ -e ${EROOT}/etc/bash/bashrc.d/15-gentoo-bashrc-check.bash ]]; then - ewarn "The following file is no longer packaged and can safely be deleted:" - ewarn "${EROOT}/etc/bash/bashrc.d/15-gentoo-bashrc-check.bash" - fi - - read -rd '' -a versions <<<"${REPLACING_VERSIONS}" - for ver in "${versions[@]}"; do - if [[ ! ${old_ver} ]] || ver_test "${ver}" -lt "${old_ver}"; then - old_ver=${ver} - fi - done - - if [[ ! ${old_ver} ]]; then - return - fi - - { - if ver_test "${old_ver}" -ge "5.2" \ - && ver_test "${old_ver}" -ge "5.2_p26-r8" - then - : - elif ver_test "${old_ver}" -lt "5.2" \ - && ver_test "${old_ver}" -ge "5.1_p16-r8" - then - : - else - cat <<'EOF' -Files under /etc/bash/bashrc.d must now have a suffix of .sh or .bash. - -Gentoo now defaults to defining PROMPT_COMMAND as an array. Depending on the -characteristics of the operating environment, it may contain a command to set -the terminal's window title. Those who were already choosing to customise the -PROMPT_COMMAND variable are now advised to append their commands like so: - -PROMPT_COMMAND+=('custom command goes here') - -Gentoo no longer defaults to having bash set the window title in the case -that the terminal is controlled by sshd(8), unless screen is launched on the -remote side or the terminal reliably supports saving and restoring the title -(as alacritty, foot and tmux do). Those wanting for the title to be set -regardless may adjust ~/.bashrc - or create a custom /etc/bash/bashrc.d -drop-in - to set PROMPT_COMMMAND like so: - -PROMPT_COMMAND=(genfun_set_win_title) - -Those who would prefer for bash never to interfere with the window title may -now opt out of the default title setting behaviour, either with the "unset -v -PROMPT_COMMAND" command or by re-defining PROMPT_COMMAND as desired. -EOF - fi - - if ver_test "${old_ver}" -ge "5.3" \ - && ver_test "${old_ver}" -ge "5.3_p3-r3" - then - : - elif ver_test "${old_ver}" -lt "5.3" \ - && ver_test "${old_ver}" -ge "5.2_p37-r5" - then - : - else - cat <<'EOF' -The window title setting behaviour has been improved. It is now formatted as -"\u@\h \W", in accordance with the prompting mechanism of bash. For example, -after switching to the home directory, the current working directory will be -shown as the character. - -The value of PROMPT_DIRTRIM is now respected. If this variable is unset, the -use of the \W prompt string escape will prevail, with the current working -directory typically being shown as its basename. If set to 0 or greater, \w -will be used instead, which may be trimmed. This also means that the title -can be made to show the full path by setting PROMPT_DIRTRIM=0. - -For further information, run info '(bash)Bash Variables' or visit -https://www.gnu.org/software/bash/manual/bash.html#index-PROMPT_005fDIRTRIM. -EOF - fi - } \ - | if [[ ${COLUMNS} == [1-9]*([0-9]) ]] && (( COLUMNS > 80 )); then - fmt -w "$(( COLUMNS - 3 ))" - else - cat - fi \ - | while read -r; do - ewarn "${REPLY}" - done -} diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.4_alpha_pre20251027.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.4_alpha_pre20251027.ebuild deleted file mode 100644 index af1b788c12b..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.4_alpha_pre20251027.ebuild +++ /dev/null @@ -1,468 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc -inherit flag-o-matic toolchain-funcs prefix verify-sig - -# Uncomment if we have a patchset. -#GENTOO_PATCH_DEV="sam" -#GENTOO_PATCH_VER="${PV}" - -MY_PV=${PV/_p*} -MY_PV=${MY_PV/_/-} -MY_P=${PN}-${MY_PV} -MY_PATCHES=() - -# Determine the patchlevel. -case ${PV} in - 9999|*_alpha*|*_beta*|*_rc*) - # Set a negative patchlevel to indicate that it's a pre-release. - PLEVEL=-1 - if [[ ${PV} =~ _pre[0-9]{8}$ ]]; then - BASH_COMMIT="c299f535be51179b1e0c989ad9ba4365e182ec28" - fi - ;; - *_p*) - PLEVEL=${PV##*_p} - ;; - *) - PLEVEL=0 -esac - -# The version of readline this bash normally ships with. Note that we only use -# the bundled copy of readline for pre-releases. -READLINE_VER="8.3" - -DESCRIPTION="The standard GNU Bourne again shell" -HOMEPAGE="https://tiswww.case.edu/php/chet/bash/bashtop.html https://git.savannah.gnu.org/cgit/bash.git" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/bash.git" - EGIT_BRANCH=devel - inherit git-r3 -elif (( PLEVEL < 0 )) && [[ ${BASH_COMMIT} ]]; then - # It can be useful to have snapshots in the pre-release period once - # the first alpha is out, as various bugs get reported and fixed from - # the alpha, and the next pre-release is usually quite far away. - # - # i.e. if it's worth packaging the alpha, it's worth packaging a followup. - SRC_URI="https://git.savannah.gnu.org/cgit/bash.git/snapshot/bash-${BASH_COMMIT}.tar.gz -> ${P}-${BASH_COMMIT}.tar.gz" - S=${WORKDIR}/${PN}-${BASH_COMMIT} -else - my_urls=( "mirror://gnu/bash/${MY_P}.tar.gz" ) - - # bash-5.1 -> bash51 - my_p=${PN}$(ver_cut 1-2) my_p=${my_p/.} - - for (( my_patch_idx = 1; my_patch_idx <= PLEVEL; my_patch_idx++ )); do - printf -v my_patch_ver %s-%03d "${my_p}" "${my_patch_idx}" - my_urls+=( "mirror://gnu/bash/${MY_P}-patches/${my_patch_ver}" ) - MY_PATCHES+=( "${DISTDIR}/${my_patch_ver}" ) - done - - SRC_URI="${my_urls[*]} verify-sig? ( ${my_urls[*]/%/.sig} )" - S=${WORKDIR}/${MY_P} - - unset -v my_urls my_p my_patch_idx my_patch_ver -fi - -if [[ ${GENTOO_PATCH_VER} ]]; then - SRC_URI+=" https://dev.gentoo.org/~${GENTOO_PATCH_DEV:?}/distfiles/${CATEGORY}/${PN}/${PN}-${GENTOO_PATCH_VER:?}-patches.tar.xz" -fi - -LICENSE="GPL-3+" -SLOT="0" -if (( PLEVEL >= 0 )); then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" -fi -IUSE="afs bashlogger examples mem-scramble +net nls plugins pgo +readline" -# As of 5.4_alpha_pre20251016, bash tests finally exit non-0 on failure. -# The differences look harmless but need investigation and fixing. -RESTRICT="test" - -DEPEND=" - >=sys-libs/ncurses-5.2-r2:= - nls? ( virtual/libintl ) -" -if (( PLEVEL >= 0 )); then - DEPEND+=" readline? ( >=sys-libs/readline-${READLINE_VER}:= )" -fi -RDEPEND=" - ${DEPEND} -" -# We only need bison (yacc) when the .y files get patched (bash42-005, bash51-011). -BDEPEND=" - pgo? ( dev-util/gperf ) - verify-sig? ( sec-keys/openpgp-keys-chetramey ) -" - -# EAPI 8 tries to append it but it doesn't exist here. -QA_CONFIGURE_OPTIONS="--disable-static" - -PATCHES=( - #"${WORKDIR}"/${PN}-${GENTOO_PATCH_VER}/ - - # Patches to or from Chet, posted to the bug-bash mailing list. - "${FILESDIR}/${PN}-5.0-syslog-history-extern.patch" -) - -pkg_setup() { - # bug #7332 - if is-flag -malign-double; then - eerror "Detected bad CFLAGS '-malign-double'. Do not use this" - eerror "as it breaks LFS (struct stat64) on x86." - die "remove -malign-double from your CFLAGS mr ricer" - fi - - if use bashlogger; then - ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs." - ewarn "This will log ALL output you enter into the shell, you have been warned." - fi -} - -src_unpack() { - local patch - - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - elif (( PLEVEL < 0 )) && [[ ${BASH_COMMIT} ]]; then - default - else - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig} - - for patch in "${MY_PATCHES[@]}"; do - verify-sig_verify_detached "${patch}"{,.sig} - done - fi - - unpack "${MY_P}.tar.gz" - - if [[ ${GENTOO_PATCH_VER} ]]; then - unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz" - fi - fi -} - -src_prepare() { - # Include official patches. - (( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}" - - # Prefixify hardcoded path names. No-op for non-prefix. - hprefixify pathnames.h.in - - # Avoid regenerating docs after patches, bug #407985. - sed -i -E '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in \ - && touch -r . doc/* \ - || die - - # Sometimes hangs (more noticeable w/ pgo), bug #907403. - rm tests/run-jobs || die - - eapply -p0 "${PATCHES[@]}" - eapply_user -} - -src_configure() { - local -a myconf - - # Upstream only test with Bison and require GNUisms like YYEOF and - # YYERRCODE. The former at least may be in POSIX soon: - # https://www.austingroupbugs.net/view.php?id=1269. - # - # configure warns on use of non-Bison but doesn't abort. The result - # may misbehave at runtime. Chet also advises against use of byacc: - # https://lists.gnu.org/archive/html/bug-bash/2025-08/msg00115.html - unset -v YACC - - if tc-is-cross-compiler; then - export CFLAGS_FOR_BUILD="${BUILD_CFLAGS} -std=gnu17" - fi - - myconf=( - --disable-profiling - - # Force linking with system curses ... the bundled termcap lib - # sucks bad compared to ncurses. For the most part, ncurses - # is here because readline needs it. But bash itself calls - # ncurses in one or two small places :(. - --with-curses - - $(use_enable mem-scramble) - $(use_enable net net-redirections) - $(use_enable readline) - $(use_enable readline bang-history) - $(use_enable readline history) - $(use_with afs) - $(use_with mem-scramble bash-malloc) - ) - - # For descriptions of these, see config-top.h. - # bashrc/#26952 bash_logout/#90488 ssh/#24762 mktemp/#574426 - append-cppflags \ - -DDEFAULT_PATH_VALUE=\'\""${EPREFIX}"/usr/local/sbin:"${EPREFIX}"/usr/local/bin:"${EPREFIX}"/usr/sbin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/bin\"\' \ - -DSTANDARD_UTILS_PATH=\'\""${EPREFIX}"/bin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/usr/sbin\"\' \ - -DDEFAULT_LOADABLE_BUILTINS_PATH=\'\""${EPREFIX}"/usr/local/$(get_libdir)/bash:"${EPREFIX}"/usr/$(get_libdir)/bash\"\' \ - -DSYS_BASHRC=\'\""${EPREFIX}"/etc/bash/bashrc\"\' \ - -DSYS_BASH_LOGOUT=\'\""${EPREFIX}"/etc/bash/bash_logout\"\' \ - -DNON_INTERACTIVE_LOGIN_SHELLS \ - -DSSH_SOURCE_BASHRC \ - $(use bashlogger && echo -DSYSLOG_HISTORY) - - use nls || myconf+=( --disable-nls ) - - if (( PLEVEL >= 0 )); then - # Historically, we always used the builtin readline, but since - # our handling of SONAME upgrades has gotten much more stable - # in the PM (and the readline ebuild itself preserves the old - # libs during upgrades), linking against the system copy should - # be safe. - # Exact cached version here doesn't really matter as long as it - # is at least what's in the DEPEND up above. - export ac_cv_rl_version=${READLINE_VER%%_*} - - # Use system readline only with released versions. - myconf+=( --with-installed-readline=. ) - fi - - if use plugins; then - append-ldflags "-Wl,-rpath,${EPREFIX}/usr/$(get_libdir)/bash" - else - # Disable the plugins logic by hand since bash doesn't provide - # a way of doing it. - export ac_cv_func_dl{close,open,sym}=no \ - ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no - - sed -i -e '/LOCAL_LDFLAGS=/s:-rdynamic::' configure || die - fi - - # bug #444070 - tc-export AR - - econf "${myconf[@]}" -} - -src_compile() { - local -a pgo_generate_flags pgo_use_flags - local flag - - # -fprofile-partial-training because upstream notes the test suite isn't - # super comprehensive. - # https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo - if use pgo; then - pgo_generate_flags=( - -fprofile-update=atomic - -fprofile-dir="${T}"/pgo - -fprofile-generate="${T}"/pgo - ) - pgo_use_flags=( - -fprofile-use="${T}"/pgo - -fprofile-dir="${T}"/pgo - ) - if flag=$(test-flags-CC -fprofile-partial-training); then - pgo_generate_flags+=( "${flag}" ) - pgo_use_flags+=( "${flag}" ) - fi - fi - - emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" - use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" all others - - # Build Bash and run its tests to generate profiles. - if (( ${#pgo_generate_flags[@]} )); then - # Used in test suite. - unset -v A - - # Testsuite isn't expected to pass for bash right now, but it - # also doesn't matter for PGO. - nonfatal emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" -k check - - if tc-is-clang; then - llvm-profdata merge "${T}"/pgo --output="${T}"/pgo/default.profdata || die - fi - - # Rebuild Bash using the profiling data we just generated. - emake clean - emake CFLAGS="${CFLAGS} ${pgo_use_flags[*]}" - use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_use_flags[*]}" all others - fi -} - -src_test() { - # Used in test suite. - unset -v A - - default -} - -src_install() { - local d f - - default - - my_prefixify() { - while read -r; do - if [[ $REPLY == *$1* ]]; then - REPLY=${REPLY/"/etc/"/"${EPREFIX}/etc/"} - fi - printf '%s\n' "${REPLY}" || ! break - done < "$2" || die - } - - dodir /bin - mv -- "${ED}"/usr/bin/bash "${ED}"/bin/ || die - dosym bash /bin/rbash - - insinto /etc/bash - doins "${FILESDIR}"/bash_logout - my_prefixify bashrc.d "${FILESDIR}"/bashrc-r2 | newins - bashrc - - insinto /etc/bash/bashrc.d - my_prefixify DIR_COLORS "${FILESDIR}"/bashrc.d/10-gentoo-color-r2.bash | newins - 10-gentoo-color.bash - newins "${FILESDIR}"/bashrc.d/10-gentoo-title-r3.bash 10-gentoo-title.bash - - insinto /etc/profile.d - doins "${FILESDIR}/profile.d/00-prompt-command.sh" - - insinto /etc/skel - for f in bash{_logout,_profile,rc}; do - newins "${FILESDIR}/skel/dot-${f}" ".${f}" - done - - if use plugins; then - exeinto "/usr/$(get_libdir)/bash" - set -- examples/loadables/*.o - doexe "${@%.o}" - - insinto /usr/include/bash-plugins - doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h} - fi - - if use examples; then - for d in examples/{functions,misc,scripts,startup-files}; do - exeinto "/usr/share/doc/${PF}/${d}" - docinto "${d}" - for f in "${d}"/*; do - if [[ ${f##*/} != @(PERMISSION|*README) ]]; then - doexe "${f}" - else - dodoc "${f}" - fi - done - done - fi - - # Install bash_builtins.1 and rbash.1. - emake -C doc DESTDIR="${D}" install_builtins - sed 's:bash\.1:man1/&:' doc/rbash.1 > "${T}"/rbash.1 || die - doman "${T}"/rbash.1 - - newdoc CWRU/changelog ChangeLog - dosym bash.info /usr/share/info/bashref.info -} - -pkg_preinst() { - if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]]; then - mkdir -p -- "${EROOT}"/etc/bash \ - && mv -f -- "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/ \ - || die - fi -} - -pkg_postinst() { - local IFS old_ver ver - local -a versions - - # If /bin/sh does not exist, provide it. - if [[ ! -e ${EROOT}/bin/sh ]]; then - ln -sf -- bash "${EROOT}"/bin/sh || die - fi - - if [[ -e ${EROOT}/etc/bash/bashrc.d/15-gentoo-bashrc-check.bash ]]; then - ewarn "The following file is no longer packaged and can safely be deleted:" - ewarn "${EROOT}/etc/bash/bashrc.d/15-gentoo-bashrc-check.bash" - fi - - read -rd '' -a versions <<<"${REPLACING_VERSIONS}" - for ver in "${versions[@]}"; do - if [[ ! ${old_ver} ]] || ver_test "${ver}" -lt "${old_ver}"; then - old_ver=${ver} - fi - done - - if [[ ! ${old_ver} ]]; then - return - fi - - { - if ver_test "${old_ver}" -ge "5.2" \ - && ver_test "${old_ver}" -ge "5.2_p26-r8" - then - : - elif ver_test "${old_ver}" -lt "5.2" \ - && ver_test "${old_ver}" -ge "5.1_p16-r8" - then - : - else - cat <<'EOF' -Files under /etc/bash/bashrc.d must now have a suffix of .sh or .bash. - -Gentoo now defaults to defining PROMPT_COMMAND as an array. Depending on the -characteristics of the operating environment, it may contain a command to set -the terminal's window title. Those who were already choosing to customise the -PROMPT_COMMAND variable are now advised to append their commands like so: - -PROMPT_COMMAND+=('custom command goes here') - -Gentoo no longer defaults to having bash set the window title in the case -that the terminal is controlled by sshd(8), unless screen is launched on the -remote side or the terminal reliably supports saving and restoring the title -(as alacritty, foot and tmux do). Those wanting for the title to be set -regardless may adjust ~/.bashrc - or create a custom /etc/bash/bashrc.d -drop-in - to set PROMPT_COMMMAND like so: - -PROMPT_COMMAND=(genfun_set_win_title) - -Those who would prefer for bash never to interfere with the window title may -now opt out of the default title setting behaviour, either with the "unset -v -PROMPT_COMMAND" command or by re-defining PROMPT_COMMAND as desired. -EOF - fi - - if ver_test "${old_ver}" -ge "5.3" \ - && ver_test "${old_ver}" -ge "5.3_p3-r3" - then - : - elif ver_test "${old_ver}" -lt "5.3" \ - && ver_test "${old_ver}" -ge "5.2_p37-r5" - then - : - else - cat <<'EOF' -The window title setting behaviour has been improved. It is now formatted as -"\u@\h \W", in accordance with the prompting mechanism of bash. For example, -after switching to the home directory, the current working directory will be -shown as the character. - -The value of PROMPT_DIRTRIM is now respected. If this variable is unset, the -use of the \W prompt string escape will prevail, with the current working -directory typically being shown as its basename. If set to 0 or greater, \w -will be used instead, which may be trimmed. This also means that the title -can be made to show the full path by setting PROMPT_DIRTRIM=0. - -For further information, run info '(bash)Bash Variables' or visit -https://www.gnu.org/software/bash/manual/bash.html#index-PROMPT_005fDIRTRIM. -EOF - fi - } \ - | if [[ ${COLUMNS} == [1-9]*([0-9]) ]] && (( COLUMNS > 80 )); then - fmt -w "$(( COLUMNS - 3 ))" - else - cat - fi \ - | while read -r; do - ewarn "${REPLY}" - done -} diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.4_alpha_pre20251119.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.4_alpha_pre20251119.ebuild deleted file mode 100644 index 0992b56e7d7..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.4_alpha_pre20251119.ebuild +++ /dev/null @@ -1,468 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc -inherit flag-o-matic toolchain-funcs prefix verify-sig - -# Uncomment if we have a patchset. -#GENTOO_PATCH_DEV="sam" -#GENTOO_PATCH_VER="${PV}" - -MY_PV=${PV/_p*} -MY_PV=${MY_PV/_/-} -MY_P=${PN}-${MY_PV} -MY_PATCHES=() - -# Determine the patchlevel. -case ${PV} in - 9999|*_alpha*|*_beta*|*_rc*) - # Set a negative patchlevel to indicate that it's a pre-release. - PLEVEL=-1 - if [[ ${PV} =~ _pre[0-9]{8}$ ]]; then - BASH_COMMIT="bcac47f08a6e8f04893f3f282bb841ddc07fc2e8" - fi - ;; - *_p*) - PLEVEL=${PV##*_p} - ;; - *) - PLEVEL=0 -esac - -# The version of readline this bash normally ships with. Note that we only use -# the bundled copy of readline for pre-releases. -READLINE_VER="8.3" - -DESCRIPTION="The standard GNU Bourne again shell" -HOMEPAGE="https://tiswww.case.edu/php/chet/bash/bashtop.html https://git.savannah.gnu.org/cgit/bash.git" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/bash.git" - EGIT_BRANCH=devel - inherit git-r3 -elif (( PLEVEL < 0 )) && [[ ${BASH_COMMIT} ]]; then - # It can be useful to have snapshots in the pre-release period once - # the first alpha is out, as various bugs get reported and fixed from - # the alpha, and the next pre-release is usually quite far away. - # - # i.e. if it's worth packaging the alpha, it's worth packaging a followup. - SRC_URI="https://git.savannah.gnu.org/cgit/bash.git/snapshot/bash-${BASH_COMMIT}.tar.gz -> ${P}-${BASH_COMMIT}.tar.gz" - S=${WORKDIR}/${PN}-${BASH_COMMIT} -else - my_urls=( "mirror://gnu/bash/${MY_P}.tar.gz" ) - - # bash-5.1 -> bash51 - my_p=${PN}$(ver_cut 1-2) my_p=${my_p/.} - - for (( my_patch_idx = 1; my_patch_idx <= PLEVEL; my_patch_idx++ )); do - printf -v my_patch_ver %s-%03d "${my_p}" "${my_patch_idx}" - my_urls+=( "mirror://gnu/bash/${MY_P}-patches/${my_patch_ver}" ) - MY_PATCHES+=( "${DISTDIR}/${my_patch_ver}" ) - done - - SRC_URI="${my_urls[*]} verify-sig? ( ${my_urls[*]/%/.sig} )" - S=${WORKDIR}/${MY_P} - - unset -v my_urls my_p my_patch_idx my_patch_ver -fi - -if [[ ${GENTOO_PATCH_VER} ]]; then - SRC_URI+=" https://dev.gentoo.org/~${GENTOO_PATCH_DEV:?}/distfiles/${CATEGORY}/${PN}/${PN}-${GENTOO_PATCH_VER:?}-patches.tar.xz" -fi - -LICENSE="GPL-3+" -SLOT="0" -if (( PLEVEL >= 0 )); then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" -fi -IUSE="afs bashlogger examples mem-scramble +net nls plugins pgo +readline" -# As of 5.4_alpha_pre20251016, bash tests finally exit non-0 on failure. -# The differences look harmless but need investigation and fixing. -RESTRICT="test" - -DEPEND=" - >=sys-libs/ncurses-5.2-r2:= - nls? ( virtual/libintl ) -" -if (( PLEVEL >= 0 )); then - DEPEND+=" readline? ( >=sys-libs/readline-${READLINE_VER}:= )" -fi -RDEPEND=" - ${DEPEND} -" -# We only need bison (yacc) when the .y files get patched (bash42-005, bash51-011). -BDEPEND=" - pgo? ( dev-util/gperf ) - verify-sig? ( sec-keys/openpgp-keys-chetramey ) -" - -# EAPI 8 tries to append it but it doesn't exist here. -QA_CONFIGURE_OPTIONS="--disable-static" - -PATCHES=( - #"${WORKDIR}"/${PN}-${GENTOO_PATCH_VER}/ - - # Patches to or from Chet, posted to the bug-bash mailing list. - "${FILESDIR}/${PN}-5.0-syslog-history-extern.patch" -) - -pkg_setup() { - # bug #7332 - if is-flag -malign-double; then - eerror "Detected bad CFLAGS '-malign-double'. Do not use this" - eerror "as it breaks LFS (struct stat64) on x86." - die "remove -malign-double from your CFLAGS mr ricer" - fi - - if use bashlogger; then - ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs." - ewarn "This will log ALL output you enter into the shell, you have been warned." - fi -} - -src_unpack() { - local patch - - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - elif (( PLEVEL < 0 )) && [[ ${BASH_COMMIT} ]]; then - default - else - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig} - - for patch in "${MY_PATCHES[@]}"; do - verify-sig_verify_detached "${patch}"{,.sig} - done - fi - - unpack "${MY_P}.tar.gz" - - if [[ ${GENTOO_PATCH_VER} ]]; then - unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz" - fi - fi -} - -src_prepare() { - # Include official patches. - (( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}" - - # Prefixify hardcoded path names. No-op for non-prefix. - hprefixify pathnames.h.in - - # Avoid regenerating docs after patches, bug #407985. - sed -i -E '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in \ - && touch -r . doc/* \ - || die - - # Sometimes hangs (more noticeable w/ pgo), bug #907403. - rm tests/run-jobs || die - - eapply -p0 "${PATCHES[@]}" - eapply_user -} - -src_configure() { - local -a myconf - - # Upstream only test with Bison and require GNUisms like YYEOF and - # YYERRCODE. The former at least may be in POSIX soon: - # https://www.austingroupbugs.net/view.php?id=1269. - # - # configure warns on use of non-Bison but doesn't abort. The result - # may misbehave at runtime. Chet also advises against use of byacc: - # https://lists.gnu.org/archive/html/bug-bash/2025-08/msg00115.html - unset -v YACC - - if tc-is-cross-compiler; then - export CFLAGS_FOR_BUILD="${BUILD_CFLAGS} -std=gnu17" - fi - - myconf=( - --disable-profiling - - # Force linking with system curses ... the bundled termcap lib - # sucks bad compared to ncurses. For the most part, ncurses - # is here because readline needs it. But bash itself calls - # ncurses in one or two small places :(. - --with-curses - - $(use_enable mem-scramble) - $(use_enable net net-redirections) - $(use_enable readline) - $(use_enable readline bang-history) - $(use_enable readline history) - $(use_with afs) - $(use_with mem-scramble bash-malloc) - ) - - # For descriptions of these, see config-top.h. - # bashrc/#26952 bash_logout/#90488 ssh/#24762 mktemp/#574426 - append-cppflags \ - -DDEFAULT_PATH_VALUE=\'\""${EPREFIX}"/usr/local/sbin:"${EPREFIX}"/usr/local/bin:"${EPREFIX}"/usr/sbin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/bin\"\' \ - -DSTANDARD_UTILS_PATH=\'\""${EPREFIX}"/bin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/usr/sbin\"\' \ - -DDEFAULT_LOADABLE_BUILTINS_PATH=\'\""${EPREFIX}"/usr/local/$(get_libdir)/bash:"${EPREFIX}"/usr/$(get_libdir)/bash\"\' \ - -DSYS_BASHRC=\'\""${EPREFIX}"/etc/bash/bashrc\"\' \ - -DSYS_BASH_LOGOUT=\'\""${EPREFIX}"/etc/bash/bash_logout\"\' \ - -DNON_INTERACTIVE_LOGIN_SHELLS \ - -DSSH_SOURCE_BASHRC \ - $(use bashlogger && echo -DSYSLOG_HISTORY) - - use nls || myconf+=( --disable-nls ) - - if (( PLEVEL >= 0 )); then - # Historically, we always used the builtin readline, but since - # our handling of SONAME upgrades has gotten much more stable - # in the PM (and the readline ebuild itself preserves the old - # libs during upgrades), linking against the system copy should - # be safe. - # Exact cached version here doesn't really matter as long as it - # is at least what's in the DEPEND up above. - export ac_cv_rl_version=${READLINE_VER%%_*} - - # Use system readline only with released versions. - myconf+=( --with-installed-readline=. ) - fi - - if use plugins; then - append-ldflags "-Wl,-rpath,${EPREFIX}/usr/$(get_libdir)/bash" - else - # Disable the plugins logic by hand since bash doesn't provide - # a way of doing it. - export ac_cv_func_dl{close,open,sym}=no \ - ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no - - sed -i -e '/LOCAL_LDFLAGS=/s:-rdynamic::' configure || die - fi - - # bug #444070 - tc-export AR - - econf "${myconf[@]}" -} - -src_compile() { - local -a pgo_generate_flags pgo_use_flags - local flag - - # -fprofile-partial-training because upstream notes the test suite isn't - # super comprehensive. - # https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo - if use pgo; then - pgo_generate_flags=( - -fprofile-update=atomic - -fprofile-dir="${T}"/pgo - -fprofile-generate="${T}"/pgo - ) - pgo_use_flags=( - -fprofile-use="${T}"/pgo - -fprofile-dir="${T}"/pgo - ) - if flag=$(test-flags-CC -fprofile-partial-training); then - pgo_generate_flags+=( "${flag}" ) - pgo_use_flags+=( "${flag}" ) - fi - fi - - emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" - use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" all others - - # Build Bash and run its tests to generate profiles. - if (( ${#pgo_generate_flags[@]} )); then - # Used in test suite. - unset -v A - - # Testsuite isn't expected to pass for bash right now, but it - # also doesn't matter for PGO. - nonfatal emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" -k check - - if tc-is-clang; then - llvm-profdata merge "${T}"/pgo --output="${T}"/pgo/default.profdata || die - fi - - # Rebuild Bash using the profiling data we just generated. - emake clean - emake CFLAGS="${CFLAGS} ${pgo_use_flags[*]}" - use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_use_flags[*]}" all others - fi -} - -src_test() { - # Used in test suite. - unset -v A - - default -} - -src_install() { - local d f - - default - - my_prefixify() { - while read -r; do - if [[ $REPLY == *$1* ]]; then - REPLY=${REPLY/"/etc/"/"${EPREFIX}/etc/"} - fi - printf '%s\n' "${REPLY}" || ! break - done < "$2" || die - } - - dodir /bin - mv -- "${ED}"/usr/bin/bash "${ED}"/bin/ || die - dosym bash /bin/rbash - - insinto /etc/bash - doins "${FILESDIR}"/bash_logout - my_prefixify bashrc.d "${FILESDIR}"/bashrc-r2 | newins - bashrc - - insinto /etc/bash/bashrc.d - my_prefixify DIR_COLORS "${FILESDIR}"/bashrc.d/10-gentoo-color-r2.bash | newins - 10-gentoo-color.bash - newins "${FILESDIR}"/bashrc.d/10-gentoo-title-r3.bash 10-gentoo-title.bash - - insinto /etc/profile.d - doins "${FILESDIR}/profile.d/00-prompt-command.sh" - - insinto /etc/skel - for f in bash{_logout,_profile,rc}; do - newins "${FILESDIR}/skel/dot-${f}" ".${f}" - done - - if use plugins; then - exeinto "/usr/$(get_libdir)/bash" - set -- examples/loadables/*.o - doexe "${@%.o}" - - insinto /usr/include/bash-plugins - doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h} - fi - - if use examples; then - for d in examples/{functions,misc,scripts,startup-files}; do - exeinto "/usr/share/doc/${PF}/${d}" - docinto "${d}" - for f in "${d}"/*; do - if [[ ${f##*/} != @(PERMISSION|*README) ]]; then - doexe "${f}" - else - dodoc "${f}" - fi - done - done - fi - - # Install bash_builtins.1 and rbash.1. - emake -C doc DESTDIR="${D}" install_builtins - sed 's:bash\.1:man1/&:' doc/rbash.1 > "${T}"/rbash.1 || die - doman "${T}"/rbash.1 - - newdoc CWRU/changelog ChangeLog - dosym bash.info /usr/share/info/bashref.info -} - -pkg_preinst() { - if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]]; then - mkdir -p -- "${EROOT}"/etc/bash \ - && mv -f -- "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/ \ - || die - fi -} - -pkg_postinst() { - local IFS old_ver ver - local -a versions - - # If /bin/sh does not exist, provide it. - if [[ ! -e ${EROOT}/bin/sh ]]; then - ln -sf -- bash "${EROOT}"/bin/sh || die - fi - - if [[ -e ${EROOT}/etc/bash/bashrc.d/15-gentoo-bashrc-check.bash ]]; then - ewarn "The following file is no longer packaged and can safely be deleted:" - ewarn "${EROOT}/etc/bash/bashrc.d/15-gentoo-bashrc-check.bash" - fi - - read -rd '' -a versions <<<"${REPLACING_VERSIONS}" - for ver in "${versions[@]}"; do - if [[ ! ${old_ver} ]] || ver_test "${ver}" -lt "${old_ver}"; then - old_ver=${ver} - fi - done - - if [[ ! ${old_ver} ]]; then - return - fi - - { - if ver_test "${old_ver}" -ge "5.2" \ - && ver_test "${old_ver}" -ge "5.2_p26-r8" - then - : - elif ver_test "${old_ver}" -lt "5.2" \ - && ver_test "${old_ver}" -ge "5.1_p16-r8" - then - : - else - cat <<'EOF' -Files under /etc/bash/bashrc.d must now have a suffix of .sh or .bash. - -Gentoo now defaults to defining PROMPT_COMMAND as an array. Depending on the -characteristics of the operating environment, it may contain a command to set -the terminal's window title. Those who were already choosing to customise the -PROMPT_COMMAND variable are now advised to append their commands like so: - -PROMPT_COMMAND+=('custom command goes here') - -Gentoo no longer defaults to having bash set the window title in the case -that the terminal is controlled by sshd(8), unless screen is launched on the -remote side or the terminal reliably supports saving and restoring the title -(as alacritty, foot and tmux do). Those wanting for the title to be set -regardless may adjust ~/.bashrc - or create a custom /etc/bash/bashrc.d -drop-in - to set PROMPT_COMMMAND like so: - -PROMPT_COMMAND=(genfun_set_win_title) - -Those who would prefer for bash never to interfere with the window title may -now opt out of the default title setting behaviour, either with the "unset -v -PROMPT_COMMAND" command or by re-defining PROMPT_COMMAND as desired. -EOF - fi - - if ver_test "${old_ver}" -ge "5.3" \ - && ver_test "${old_ver}" -ge "5.3_p3-r3" - then - : - elif ver_test "${old_ver}" -lt "5.3" \ - && ver_test "${old_ver}" -ge "5.2_p37-r5" - then - : - else - cat <<'EOF' -The window title setting behaviour has been improved. It is now formatted as -"\u@\h \W", in accordance with the prompting mechanism of bash. For example, -after switching to the home directory, the current working directory will be -shown as the character. - -The value of PROMPT_DIRTRIM is now respected. If this variable is unset, the -use of the \W prompt string escape will prevail, with the current working -directory typically being shown as its basename. If set to 0 or greater, \w -will be used instead, which may be trimmed. This also means that the title -can be made to show the full path by setting PROMPT_DIRTRIM=0. - -For further information, run info '(bash)Bash Variables' or visit -https://www.gnu.org/software/bash/manual/bash.html#index-PROMPT_005fDIRTRIM. -EOF - fi - } \ - | if [[ ${COLUMNS} == [1-9]*([0-9]) ]] && (( COLUMNS > 80 )); then - fmt -w "$(( COLUMNS - 3 ))" - else - cat - fi \ - | while read -r; do - ewarn "${REPLY}" - done -} diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.4_alpha_pre20251124.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.4_alpha_pre20251124.ebuild deleted file mode 100644 index 06a1ffffd9a..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.4_alpha_pre20251124.ebuild +++ /dev/null @@ -1,468 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc -inherit flag-o-matic toolchain-funcs prefix verify-sig - -# Uncomment if we have a patchset. -#GENTOO_PATCH_DEV="sam" -#GENTOO_PATCH_VER="${PV}" - -MY_PV=${PV/_p*} -MY_PV=${MY_PV/_/-} -MY_P=${PN}-${MY_PV} -MY_PATCHES=() - -# Determine the patchlevel. -case ${PV} in - 9999|*_alpha*|*_beta*|*_rc*) - # Set a negative patchlevel to indicate that it's a pre-release. - PLEVEL=-1 - if [[ ${PV} =~ _pre[0-9]{8}$ ]]; then - BASH_COMMIT="4e705ed53ac364ee110f0b2fbeeab9d3301fcb6b" - fi - ;; - *_p*) - PLEVEL=${PV##*_p} - ;; - *) - PLEVEL=0 -esac - -# The version of readline this bash normally ships with. Note that we only use -# the bundled copy of readline for pre-releases. -READLINE_VER="8.3" - -DESCRIPTION="The standard GNU Bourne again shell" -HOMEPAGE="https://tiswww.case.edu/php/chet/bash/bashtop.html https://git.savannah.gnu.org/cgit/bash.git" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/bash.git" - EGIT_BRANCH=devel - inherit git-r3 -elif (( PLEVEL < 0 )) && [[ ${BASH_COMMIT} ]]; then - # It can be useful to have snapshots in the pre-release period once - # the first alpha is out, as various bugs get reported and fixed from - # the alpha, and the next pre-release is usually quite far away. - # - # i.e. if it's worth packaging the alpha, it's worth packaging a followup. - SRC_URI="https://git.savannah.gnu.org/cgit/bash.git/snapshot/bash-${BASH_COMMIT}.tar.gz -> ${P}-${BASH_COMMIT}.tar.gz" - S=${WORKDIR}/${PN}-${BASH_COMMIT} -else - my_urls=( "mirror://gnu/bash/${MY_P}.tar.gz" ) - - # bash-5.1 -> bash51 - my_p=${PN}$(ver_cut 1-2) my_p=${my_p/.} - - for (( my_patch_idx = 1; my_patch_idx <= PLEVEL; my_patch_idx++ )); do - printf -v my_patch_ver %s-%03d "${my_p}" "${my_patch_idx}" - my_urls+=( "mirror://gnu/bash/${MY_P}-patches/${my_patch_ver}" ) - MY_PATCHES+=( "${DISTDIR}/${my_patch_ver}" ) - done - - SRC_URI="${my_urls[*]} verify-sig? ( ${my_urls[*]/%/.sig} )" - S=${WORKDIR}/${MY_P} - - unset -v my_urls my_p my_patch_idx my_patch_ver -fi - -if [[ ${GENTOO_PATCH_VER} ]]; then - SRC_URI+=" https://dev.gentoo.org/~${GENTOO_PATCH_DEV:?}/distfiles/${CATEGORY}/${PN}/${PN}-${GENTOO_PATCH_VER:?}-patches.tar.xz" -fi - -LICENSE="GPL-3+" -SLOT="0" -if (( PLEVEL >= 0 )); then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" -fi -IUSE="afs bashlogger examples mem-scramble +net nls plugins pgo +readline" -# As of 5.4_alpha_pre20251016, bash tests finally exit non-0 on failure. -# The differences look harmless but need investigation and fixing. -RESTRICT="test" - -DEPEND=" - >=sys-libs/ncurses-5.2-r2:= - nls? ( virtual/libintl ) -" -if (( PLEVEL >= 0 )); then - DEPEND+=" readline? ( >=sys-libs/readline-${READLINE_VER}:= )" -fi -RDEPEND=" - ${DEPEND} -" -# We only need bison (yacc) when the .y files get patched (bash42-005, bash51-011). -BDEPEND=" - pgo? ( dev-util/gperf ) - verify-sig? ( sec-keys/openpgp-keys-chetramey ) -" - -# EAPI 8 tries to append it but it doesn't exist here. -QA_CONFIGURE_OPTIONS="--disable-static" - -PATCHES=( - #"${WORKDIR}"/${PN}-${GENTOO_PATCH_VER}/ - - # Patches to or from Chet, posted to the bug-bash mailing list. - "${FILESDIR}/${PN}-5.0-syslog-history-extern.patch" -) - -pkg_setup() { - # bug #7332 - if is-flag -malign-double; then - eerror "Detected bad CFLAGS '-malign-double'. Do not use this" - eerror "as it breaks LFS (struct stat64) on x86." - die "remove -malign-double from your CFLAGS mr ricer" - fi - - if use bashlogger; then - ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs." - ewarn "This will log ALL output you enter into the shell, you have been warned." - fi -} - -src_unpack() { - local patch - - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - elif (( PLEVEL < 0 )) && [[ ${BASH_COMMIT} ]]; then - default - else - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig} - - for patch in "${MY_PATCHES[@]}"; do - verify-sig_verify_detached "${patch}"{,.sig} - done - fi - - unpack "${MY_P}.tar.gz" - - if [[ ${GENTOO_PATCH_VER} ]]; then - unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz" - fi - fi -} - -src_prepare() { - # Include official patches. - (( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}" - - # Prefixify hardcoded path names. No-op for non-prefix. - hprefixify pathnames.h.in - - # Avoid regenerating docs after patches, bug #407985. - sed -i -E '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in \ - && touch -r . doc/* \ - || die - - # Sometimes hangs (more noticeable w/ pgo), bug #907403. - rm tests/run-jobs || die - - eapply -p0 "${PATCHES[@]}" - eapply_user -} - -src_configure() { - local -a myconf - - # Upstream only test with Bison and require GNUisms like YYEOF and - # YYERRCODE. The former at least may be in POSIX soon: - # https://www.austingroupbugs.net/view.php?id=1269. - # - # configure warns on use of non-Bison but doesn't abort. The result - # may misbehave at runtime. Chet also advises against use of byacc: - # https://lists.gnu.org/archive/html/bug-bash/2025-08/msg00115.html - unset -v YACC - - if tc-is-cross-compiler; then - export CFLAGS_FOR_BUILD="${BUILD_CFLAGS} -std=gnu17" - fi - - myconf=( - --disable-profiling - - # Force linking with system curses ... the bundled termcap lib - # sucks bad compared to ncurses. For the most part, ncurses - # is here because readline needs it. But bash itself calls - # ncurses in one or two small places :(. - --with-curses - - $(use_enable mem-scramble) - $(use_enable net net-redirections) - $(use_enable readline) - $(use_enable readline bang-history) - $(use_enable readline history) - $(use_with afs) - $(use_with mem-scramble bash-malloc) - ) - - # For descriptions of these, see config-top.h. - # bashrc/#26952 bash_logout/#90488 ssh/#24762 mktemp/#574426 - append-cppflags \ - -DDEFAULT_PATH_VALUE=\'\""${EPREFIX}"/usr/local/sbin:"${EPREFIX}"/usr/local/bin:"${EPREFIX}"/usr/sbin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/bin\"\' \ - -DSTANDARD_UTILS_PATH=\'\""${EPREFIX}"/bin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/usr/sbin\"\' \ - -DDEFAULT_LOADABLE_BUILTINS_PATH=\'\""${EPREFIX}"/usr/local/$(get_libdir)/bash:"${EPREFIX}"/usr/$(get_libdir)/bash\"\' \ - -DSYS_BASHRC=\'\""${EPREFIX}"/etc/bash/bashrc\"\' \ - -DSYS_BASH_LOGOUT=\'\""${EPREFIX}"/etc/bash/bash_logout\"\' \ - -DNON_INTERACTIVE_LOGIN_SHELLS \ - -DSSH_SOURCE_BASHRC \ - $(use bashlogger && echo -DSYSLOG_HISTORY) - - use nls || myconf+=( --disable-nls ) - - if (( PLEVEL >= 0 )); then - # Historically, we always used the builtin readline, but since - # our handling of SONAME upgrades has gotten much more stable - # in the PM (and the readline ebuild itself preserves the old - # libs during upgrades), linking against the system copy should - # be safe. - # Exact cached version here doesn't really matter as long as it - # is at least what's in the DEPEND up above. - export ac_cv_rl_version=${READLINE_VER%%_*} - - # Use system readline only with released versions. - myconf+=( --with-installed-readline=. ) - fi - - if use plugins; then - append-ldflags "-Wl,-rpath,${EPREFIX}/usr/$(get_libdir)/bash" - else - # Disable the plugins logic by hand since bash doesn't provide - # a way of doing it. - export ac_cv_func_dl{close,open,sym}=no \ - ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no - - sed -i -e '/LOCAL_LDFLAGS=/s:-rdynamic::' configure || die - fi - - # bug #444070 - tc-export AR - - econf "${myconf[@]}" -} - -src_compile() { - local -a pgo_generate_flags pgo_use_flags - local flag - - # -fprofile-partial-training because upstream notes the test suite isn't - # super comprehensive. - # https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo - if use pgo; then - pgo_generate_flags=( - -fprofile-update=atomic - -fprofile-dir="${T}"/pgo - -fprofile-generate="${T}"/pgo - ) - pgo_use_flags=( - -fprofile-use="${T}"/pgo - -fprofile-dir="${T}"/pgo - ) - if flag=$(test-flags-CC -fprofile-partial-training); then - pgo_generate_flags+=( "${flag}" ) - pgo_use_flags+=( "${flag}" ) - fi - fi - - emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" - use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" all others - - # Build Bash and run its tests to generate profiles. - if (( ${#pgo_generate_flags[@]} )); then - # Used in test suite. - unset -v A - - # Testsuite isn't expected to pass for bash right now, but it - # also doesn't matter for PGO. - nonfatal emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" -k check - - if tc-is-clang; then - llvm-profdata merge "${T}"/pgo --output="${T}"/pgo/default.profdata || die - fi - - # Rebuild Bash using the profiling data we just generated. - emake clean - emake CFLAGS="${CFLAGS} ${pgo_use_flags[*]}" - use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_use_flags[*]}" all others - fi -} - -src_test() { - # Used in test suite. - unset -v A - - default -} - -src_install() { - local d f - - default - - my_prefixify() { - while read -r; do - if [[ $REPLY == *$1* ]]; then - REPLY=${REPLY/"/etc/"/"${EPREFIX}/etc/"} - fi - printf '%s\n' "${REPLY}" || ! break - done < "$2" || die - } - - dodir /bin - mv -- "${ED}"/usr/bin/bash "${ED}"/bin/ || die - dosym bash /bin/rbash - - insinto /etc/bash - doins "${FILESDIR}"/bash_logout - my_prefixify bashrc.d "${FILESDIR}"/bashrc-r2 | newins - bashrc - - insinto /etc/bash/bashrc.d - my_prefixify DIR_COLORS "${FILESDIR}"/bashrc.d/10-gentoo-color-r2.bash | newins - 10-gentoo-color.bash - newins "${FILESDIR}"/bashrc.d/10-gentoo-title-r3.bash 10-gentoo-title.bash - - insinto /etc/profile.d - doins "${FILESDIR}/profile.d/00-prompt-command.sh" - - insinto /etc/skel - for f in bash{_logout,_profile,rc}; do - newins "${FILESDIR}/skel/dot-${f}" ".${f}" - done - - if use plugins; then - exeinto "/usr/$(get_libdir)/bash" - set -- examples/loadables/*.o - doexe "${@%.o}" - - insinto /usr/include/bash-plugins - doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h} - fi - - if use examples; then - for d in examples/{functions,misc,scripts,startup-files}; do - exeinto "/usr/share/doc/${PF}/${d}" - docinto "${d}" - for f in "${d}"/*; do - if [[ ${f##*/} != @(PERMISSION|*README) ]]; then - doexe "${f}" - else - dodoc "${f}" - fi - done - done - fi - - # Install bash_builtins.1 and rbash.1. - emake -C doc DESTDIR="${D}" install_builtins - sed 's:bash\.1:man1/&:' doc/rbash.1 > "${T}"/rbash.1 || die - doman "${T}"/rbash.1 - - newdoc CWRU/changelog ChangeLog - dosym bash.info /usr/share/info/bashref.info -} - -pkg_preinst() { - if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]]; then - mkdir -p -- "${EROOT}"/etc/bash \ - && mv -f -- "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/ \ - || die - fi -} - -pkg_postinst() { - local IFS old_ver ver - local -a versions - - # If /bin/sh does not exist, provide it. - if [[ ! -e ${EROOT}/bin/sh ]]; then - ln -sf -- bash "${EROOT}"/bin/sh || die - fi - - if [[ -e ${EROOT}/etc/bash/bashrc.d/15-gentoo-bashrc-check.bash ]]; then - ewarn "The following file is no longer packaged and can safely be deleted:" - ewarn "${EROOT}/etc/bash/bashrc.d/15-gentoo-bashrc-check.bash" - fi - - read -rd '' -a versions <<<"${REPLACING_VERSIONS}" - for ver in "${versions[@]}"; do - if [[ ! ${old_ver} ]] || ver_test "${ver}" -lt "${old_ver}"; then - old_ver=${ver} - fi - done - - if [[ ! ${old_ver} ]]; then - return - fi - - { - if ver_test "${old_ver}" -ge "5.2" \ - && ver_test "${old_ver}" -ge "5.2_p26-r8" - then - : - elif ver_test "${old_ver}" -lt "5.2" \ - && ver_test "${old_ver}" -ge "5.1_p16-r8" - then - : - else - cat <<'EOF' -Files under /etc/bash/bashrc.d must now have a suffix of .sh or .bash. - -Gentoo now defaults to defining PROMPT_COMMAND as an array. Depending on the -characteristics of the operating environment, it may contain a command to set -the terminal's window title. Those who were already choosing to customise the -PROMPT_COMMAND variable are now advised to append their commands like so: - -PROMPT_COMMAND+=('custom command goes here') - -Gentoo no longer defaults to having bash set the window title in the case -that the terminal is controlled by sshd(8), unless screen is launched on the -remote side or the terminal reliably supports saving and restoring the title -(as alacritty, foot and tmux do). Those wanting for the title to be set -regardless may adjust ~/.bashrc - or create a custom /etc/bash/bashrc.d -drop-in - to set PROMPT_COMMMAND like so: - -PROMPT_COMMAND=(genfun_set_win_title) - -Those who would prefer for bash never to interfere with the window title may -now opt out of the default title setting behaviour, either with the "unset -v -PROMPT_COMMAND" command or by re-defining PROMPT_COMMAND as desired. -EOF - fi - - if ver_test "${old_ver}" -ge "5.3" \ - && ver_test "${old_ver}" -ge "5.3_p3-r3" - then - : - elif ver_test "${old_ver}" -lt "5.3" \ - && ver_test "${old_ver}" -ge "5.2_p37-r5" - then - : - else - cat <<'EOF' -The window title setting behaviour has been improved. It is now formatted as -"\u@\h \W", in accordance with the prompting mechanism of bash. For example, -after switching to the home directory, the current working directory will be -shown as the character. - -The value of PROMPT_DIRTRIM is now respected. If this variable is unset, the -use of the \W prompt string escape will prevail, with the current working -directory typically being shown as its basename. If set to 0 or greater, \w -will be used instead, which may be trimmed. This also means that the title -can be made to show the full path by setting PROMPT_DIRTRIM=0. - -For further information, run info '(bash)Bash Variables' or visit -https://www.gnu.org/software/bash/manual/bash.html#index-PROMPT_005fDIRTRIM. -EOF - fi - } \ - | if [[ ${COLUMNS} == [1-9]*([0-9]) ]] && (( COLUMNS > 80 )); then - fmt -w "$(( COLUMNS - 3 ))" - else - cat - fi \ - | while read -r; do - ewarn "${REPLY}" - done -} diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash/files/bash-5.3-read-sys.patch b/sdk_container/src/third_party/portage-stable/app-shells/bash/files/bash-5.3-read-sys.patch deleted file mode 100644 index 9491d727cce..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash/files/bash-5.3-read-sys.patch +++ /dev/null @@ -1,19 +0,0 @@ -Extracted from https://cgit.git.savannah.gnu.org/cgit/bash.git/commit/?h=devel&id=01070d43248fb97f3b2a08d780ae5a392573ce34 -(note https://lists.gnu.org/archive/html/bug-readline/2025-07/msg00001.html wrt Chet not discouraging -such cherry-picking) - -https://lists.gnu.org/archive/html/bug-bash/2025-07/msg00031.html -https://github.com/desultory/ugrd/pull/328 ---- builtins/evalfile.c -+++ builtins/evalfile.c -@@ -160,8 +160,10 @@ file_error_and_exit: - nr = read (fd, string, file_size); - if (nr >= 0) - string[nr] = '\0'; -+#if 0 - if (nr != file_size) - nr = -1; /* XXX - didn't get the whole file */ -+#endif - } - else - nr = zmapfd (fd, &string, 0); From cf958450288341006f0e2234937a5f64640a4850 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:54 +0000 Subject: [PATCH 037/291] app-text/scdoc: Sync with Gentoo It's from Gentoo commit 917af23da3dc8cbee1606223ab319eebddf1b480. Signed-off-by: Flatcar Buildbot --- .../portage-stable/app-text/scdoc/Manifest | 1 - .../app-text/scdoc/metadata.xml | 1 + .../app-text/scdoc/scdoc-1.11.3.ebuild | 45 ------------------- .../app-text/scdoc/scdoc-1.11.4.ebuild | 4 +- .../app-text/scdoc/scdoc-9999.ebuild | 4 +- 5 files changed, 5 insertions(+), 50 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/app-text/scdoc/scdoc-1.11.3.ebuild diff --git a/sdk_container/src/third_party/portage-stable/app-text/scdoc/Manifest b/sdk_container/src/third_party/portage-stable/app-text/scdoc/Manifest index f7f4e973fbb..cd6fa1a6c3b 100644 --- a/sdk_container/src/third_party/portage-stable/app-text/scdoc/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-text/scdoc/Manifest @@ -1,2 +1 @@ -DIST scdoc-1.11.3.tar.gz 12768 BLAKE2B c39ed51f9279aa8a08bbd99a3d3780ef37654a37f687c7de340266d9c7a6edceb8f6824baaa34c756440d45bd51611ab28f7f2e42ea632b943f6018d6e5f5a04 SHA512 fbecc505b44c396890c53c05183d34336160dbd02993ee120421fc6e2a3ec78ba349747e8acfe97af956a0081c923309290ff97fb7babafbc3ca8addc9ec92f9 DIST scdoc-1.11.4.tar.gz 13081 BLAKE2B 17dc77a09125356e99c50708d5053fe88f3c204f78e8a3e54d28970d8b549d8904f426ff88cac01fc3daf634c37467975342956a807757265cfd642ab8ce3725 SHA512 f8950bbef5213a89746185d5ed29fbee2502235632db883afaaac515dc87c60559bc1a39e2a3ea3bb019675e6039bd2d3b5c5d117a0ad022b61c958fb9407877 diff --git a/sdk_container/src/third_party/portage-stable/app-text/scdoc/metadata.xml b/sdk_container/src/third_party/portage-stable/app-text/scdoc/metadata.xml index 4160f5fe1fa..f39f9a4df68 100644 --- a/sdk_container/src/third_party/portage-stable/app-text/scdoc/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/app-text/scdoc/metadata.xml @@ -7,5 +7,6 @@ ~sircmpwn/scdoc + https://git.sr.ht/~sircmpwn/scdoc/refs diff --git a/sdk_container/src/third_party/portage-stable/app-text/scdoc/scdoc-1.11.3.ebuild b/sdk_container/src/third_party/portage-stable/app-text/scdoc/scdoc-1.11.3.ebuild deleted file mode 100644 index 6e51ab50d4c..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-text/scdoc/scdoc-1.11.3.ebuild +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit toolchain-funcs - -DESCRIPTION="Standalone tool for generating man pages with a simple syntax" -HOMEPAGE="https://git.sr.ht/~sircmpwn/scdoc" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://git.sr.ht/~sircmpwn/scdoc" - inherit git-r3 -else - SRC_URI="https://git.sr.ht/~sircmpwn/scdoc/archive/${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -fi - -LICENSE="MIT" -SLOT="0" - -src_prepare() { - default - - sed -e 's/-Werror//' \ - -i Makefile || die 'Failed to patch Makefile' -} - -src_compile() { - local MY_HS="./scdoc" - if tc-is-cross-compiler; then - tc-export_build_env - MY_HS="./hostscdoc" - emake scdoc HOST_SCDOC="./hostscdoc" OUTDIR="${S}/.build.host" CC="$(tc-getBUILD_CC)" \ - CFLAGS="${BUILD_CFLAGS} -DVERSION='\"${PV}\"'" LDFLAGS="${BUILD_LDFLAGS}" - mv scdoc hostscdoc || die 'Failed to rename host scdoc' - fi - - emake CC="$(tc-getCC)" LDFLAGS="${LDFLAGS}" PREFIX="${EPREFIX}/usr" HOST_SCDOC="${MY_HS}" -} - -src_install() { - emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" HOST_SCDOC="${MY_HS}" \ - PCDIR="${EPREFIX}/usr/$(get_libdir)/pkgconfig" install -} diff --git a/sdk_container/src/third_party/portage-stable/app-text/scdoc/scdoc-1.11.4.ebuild b/sdk_container/src/third_party/portage-stable/app-text/scdoc/scdoc-1.11.4.ebuild index 6e51ab50d4c..28252710ea0 100644 --- a/sdk_container/src/third_party/portage-stable/app-text/scdoc/scdoc-1.11.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-text/scdoc/scdoc-1.11.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -13,7 +13,7 @@ if [[ ${PV} == 9999 ]]; then inherit git-r3 else SRC_URI="https://git.sr.ht/~sircmpwn/scdoc/archive/${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" fi LICENSE="MIT" diff --git a/sdk_container/src/third_party/portage-stable/app-text/scdoc/scdoc-9999.ebuild b/sdk_container/src/third_party/portage-stable/app-text/scdoc/scdoc-9999.ebuild index 938aa8493a7..0d7f80fd70c 100644 --- a/sdk_container/src/third_party/portage-stable/app-text/scdoc/scdoc-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-text/scdoc/scdoc-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -13,7 +13,7 @@ if [[ ${PV} == 9999 ]]; then inherit git-r3 else SRC_URI="https://git.sr.ht/~sircmpwn/scdoc/archive/${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~x86" fi LICENSE="MIT" From 3bf6afcff191b2c1779ff56cd44405a69fd20342 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:55 +0000 Subject: [PATCH 038/291] dev-build/autoconf: Sync with Gentoo It's from Gentoo commit c500cb8e600bf97d6d980d06b146e2eb1bec4e40. Signed-off-by: Flatcar Buildbot --- .../dev-build/autoconf/Manifest | 2 + .../autoconf/autoconf-2.71-r6.ebuild | 91 ---------------- .../autoconf/autoconf-2.72-r4.ebuild | 103 ------------------ ...2.72-r1.ebuild => autoconf-2.72.90.ebuild} | 36 +++--- .../dev-build/autoconf/autoconf-9999.ebuild | 26 +++-- 5 files changed, 40 insertions(+), 218 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-2.71-r6.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-2.72-r4.ebuild rename sdk_container/src/third_party/portage-stable/dev-build/autoconf/{autoconf-2.72-r1.ebuild => autoconf-2.72.90.ebuild} (71%) diff --git a/sdk_container/src/third_party/portage-stable/dev-build/autoconf/Manifest b/sdk_container/src/third_party/portage-stable/dev-build/autoconf/Manifest index 08c6d1ab3d7..7698a4ec3a5 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/autoconf/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-build/autoconf/Manifest @@ -4,5 +4,7 @@ DIST autoconf-2.69.tar.xz 1214744 BLAKE2B 71d33d72a06e9a05fbed0eda73bc9d8a3805c7 DIST autoconf-2.69.tar.xz.sig 556 BLAKE2B 07eaae3429f4bbd3ea40b4b366db383d9e322b03def7956f8961a20a6759072e8c327d4723313097f75caba0513928c37270beda8f8b491888fdd47a2ee80ad6 SHA512 e54082e00522463ba7d6b6ea6d700b8799a41177b34e057dd72abbe46219f0ce58674575d60fb106e37deeee8871d4ccfd85746c2d0e096a71eb096ffdb3020c DIST autoconf-2.71.tar.xz 1292296 BLAKE2B 7fd4b98b4cfff10720e8da6ee91045637991643b50fcb3e47a0ecfcc01600f7b7b36fd1c0a5f08b68a418f1bdbd8d5a98de1008157595dd37cc3a31facb61416 SHA512 73d32b4adcbe24e3bafa9f43f59ed3b6efbd3de0f194e5ec90375f35da1199c583f5d3e89139b7edbad35171403709270e339ffa56a2ecb9b3123e9285021ff0 DIST autoconf-2.71.tar.xz.sig 833 BLAKE2B a2641a0bec3b475874811dd21dc32d34672f4f084ea16d48bd0655df37251be810026c20e35869503e664701edcb64f260b142db671e160a554c2ee982838355 SHA512 83e6bf4504f5d188cad1387ce1f1ce4b14f5ee4961bbfd5c83dd281d724392a95b394079bfaa093eb81129873e668b6ca1eee013a60cfb76edf34454756f6667 +DIST autoconf-2.72.90.tar.xz 1409292 BLAKE2B 1d0a30ba22b25d7298676f40b56541b25906e95dc0381914e8941f8bd716585098efa8295ed3db9b4e234a073af6771f33db9397907d4beeadf5b9460842c9b2 SHA512 f485f10b2917759245dc1d5e7e7b6724d8b626543757853ae9de354a4c14b8ed3a016d1823d9553072fe08634d4fb9e0f5110637622b3c95e0f625b328f96f01 +DIST autoconf-2.72.90.tar.xz.sig 870 BLAKE2B 01eddca0f27ee008f3b833ed2e34040243fab369003a92352fc9b11a419353814604bc12c67ffc699b79752df90ffaab6e148469806ec3948def9d64e174f888 SHA512 87233fe09c17b752b97f68b4a4b159ccc96da89b279fed0a2e5b7fe72989a677d8303da9cc3bad21a6c074baa425120a7bcf289f0c65d1be4e89594449415dcb DIST autoconf-2.72.tar.xz 1389680 BLAKE2B 01caeced9e53d8bd39fb0cf4929322f0d463971b0a96368aa55892026897a9e98c2ca84a77db1b3c6c4483aea54b96da16a7bc00b7ac15e23c6b0471438012db SHA512 c4e9fbd858666d3e5c3b4fe7f89aa3e8e3a0a00dc7e166f8147d937d911b77ba3ac6a016f9d223ccdd830bc8960b3e60397c0607cc6a1fd2c50c7492839ddd17 DIST autoconf-2.72.tar.xz.sig 833 BLAKE2B cc33101c5d2bd28f233e54a2843d3c81dc9729238b0900a8f23ef17b982aa0e0194892c07b1365246b6c9c0ea74becd288ae581ee34d593131b83538c69a6204 SHA512 7a0d350b23cf47c45811ae35928a4fec67ce1f3adb1965904fe6d9a0fad68139df4902662bcf4731a2f809381cae0b265a8f1f57d0a9a39777250a97a3c481d9 diff --git a/sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-2.71-r6.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-2.71-r6.ebuild deleted file mode 100644 index 9d2597c5574..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-2.71-r6.ebuild +++ /dev/null @@ -1,91 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/autoconf.git" - inherit git-r3 -else - # For _beta handling replace with real version number - MY_PV="${PV}" - MY_P="${PN}-${MY_PV}" - #PATCH_TARBALL_NAME="${PN}-2.70-patches-01" - SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.xz - https://alpha.gnu.org/pub/gnu/${PN}/${MY_P}.tar.xz" - #SRC_URI+=" https://dev.gentoo.org/~polynomial-c/${PATCH_TARBALL_NAME}.tar.xz" - - if ! [[ ${PV} == *_beta* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" - fi - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain-autoconf multiprocessing - -DESCRIPTION="Used to create autoconfiguration files" -HOMEPAGE="https://www.gnu.org/software/autoconf/autoconf.html" - -LICENSE="GPL-3+" -SLOT="${PV/_*}" -IUSE="emacs" - -# for 2.71, our Perl time resolution patch changes our min Perl from 5.6 -# (vanilla upstream for 2.71) to 5.8. -BDEPEND=">=sys-devel/m4-1.4.16 - >=dev-lang/perl-5.8" -RDEPEND="${BDEPEND} - >=dev-build/autoconf-wrapper-15 - sys-devel/gnuconfig - !~${CATEGORY}/${P}:2.5" -[[ ${PV} == 9999 ]] && BDEPEND+=" >=sys-apps/texinfo-4.3" -PDEPEND="emacs? ( app-emacs/autoconf-mode )" - -PATCHES=( - "${FILESDIR}"/${P}-AC_LANG_CALL_C_cxx.patch - "${FILESDIR}"/${P}-time.patch - "${FILESDIR}"/${P}-AC_C_BIGENDIAN-lto.patch - "${FILESDIR}"/${P}-K-R-decls-clang.patch - "${FILESDIR}"/${P}-make-4.4.patch - "${FILESDIR}"/${P}-K-R-decls-clang-deux.patch -) - -src_prepare() { - # usr/bin/libtool is provided by binutils-apple, need gnu libtool - if [[ ${CHOST} == *-darwin* ]] ; then - PATCHES+=( "${FILESDIR}"/${PN}-2.71-darwin.patch ) - fi - - # Save timestamp to avoid later makeinfo call - touch -r doc/{,old_}autoconf.texi || die - - local pdir - for pdir in "${WORKDIR}"/{upstream_,}patches ; do - if [[ -d "${pdir}" ]] ; then - eapply ${pdir} - fi - done - - toolchain-autoconf_src_prepare - - # Restore timestamp to avoid makeinfo call - # We already have an up to date autoconf.info page at this point. - touch -r doc/{old_,}autoconf.texi || die -} - -src_test() { - emake check TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)" -} - -src_install() { - toolchain-autoconf_src_install - - # dissuade Portage from removing our dir file - touch "${ED}"/usr/share/${P}/info/.keepinfodir || die - - local f - for f in config.{guess,sub} ; do - ln -fs ../../gnuconfig/${f} \ - "${ED}"/usr/share/autoconf-*/build-aux/${f} || die - done -} diff --git a/sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-2.72-r4.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-2.72-r4.ebuild deleted file mode 100644 index 5e5ee6c5ea9..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-2.72-r4.ebuild +++ /dev/null @@ -1,103 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Bumping notes: -# * Remember to modify LAST_KNOWN_VER 'upstream' in dev-build/autoconf-wrapper -# on new autoconf releases, as well as the dependency in RDEPEND below too. -# * Update _WANT_AUTOCONF and _autoconf_atom case statement in autotools.eclass. - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/autoconf.git" - inherit git-r3 -else - # For _beta handling replace with real version number - MY_PV="${PV}" - MY_P="${PN}-${MY_PV}" - #PATCH_TARBALL_NAME="${PN}-2.70-patches-01" - - VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/zackweinberg.asc - inherit verify-sig - - SRC_URI=" - mirror://gnu/${PN}/${MY_P}.tar.xz - https://alpha.gnu.org/pub/gnu/${PN}/${MY_P}.tar.xz - https://meyering.net/ac/${P}.tar.xz - verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.xz.sig ) - " - S="${WORKDIR}"/${MY_P} - - if [[ ${PV} != *_beta* ]] && ! [[ $(ver_cut 3) =~ [a-z] ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" - fi - - BDEPEND="verify-sig? ( sec-keys/openpgp-keys-zackweinberg )" -fi - -inherit toolchain-autoconf multiprocessing - -DESCRIPTION="Used to create autoconfiguration files" -HOMEPAGE="https://www.gnu.org/software/autoconf/autoconf.html" - -LICENSE="GPL-3+" -SLOT="$(ver_cut 1-2)" - -BDEPEND+=" - >=dev-lang/perl-5.10 - >=sys-devel/m4-1.4.16 -" -RDEPEND=" - ${BDEPEND} - >=dev-build/autoconf-wrapper-20231224 - sys-devel/gnuconfig - !~${CATEGORY}/${P}:2.5 -" -[[ ${PV} == 9999 ]] && BDEPEND+=" >=sys-apps/texinfo-4.3" - -PATCHES=( - "${FILESDIR}"/${PN}-2.72-gettext-0.25-autoreconf-Invoke-autopoint-in-more-situations.patch - "${FILESDIR}"/${PN}-2.72-gettext-0.25-autoreconf-Adapt-to-the-on-disk-situation-after-auto.patch -) - -src_prepare() { - if [[ ${PV} == *9999 ]] ; then - # Avoid the "dirty" suffix in the git version by generating it - # before we run later stages which might modify source files. - local ver=$(./build-aux/git-version-gen .tarball-version) - echo "${ver}" > .tarball-version || die - - autoreconf -f -i || die - fi - - # usr/bin/libtool is provided by binutils-apple, need gnu libtool - if [[ ${CHOST} == *-darwin* ]] ; then - PATCHES+=( "${FILESDIR}"/${PN}-2.71-darwin.patch ) - fi - - # Save timestamp to avoid later makeinfo call - touch -r doc/{,old_}autoconf.texi || die - - toolchain-autoconf_src_prepare - - # Restore timestamp to avoid makeinfo call - # We already have an up to date autoconf.info page at this point. - touch -r doc/{old_,}autoconf.texi || die -} - -src_test() { - emake check TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)" -} - -src_install() { - toolchain-autoconf_src_install - - # dissuade Portage from removing our dir file - touch "${ED}"/usr/share/${P}/info/.keepinfodir || die - - local f - for f in config.{guess,sub} ; do - ln -fs ../../gnuconfig/${f} \ - "${ED}"/usr/share/autoconf-*/build-aux/${f} || die - done -} diff --git a/sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-2.72-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-2.72.90.ebuild similarity index 71% rename from sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-2.72-r1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-2.72.90.ebuild index d9838276756..ec41a181b66 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-2.72-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-2.72.90.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -11,25 +11,31 @@ EAPI=8 if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://git.savannah.gnu.org/git/autoconf.git" inherit git-r3 + AUTOCONF_SLOT="9999" else - # For _beta handling replace with real version number - MY_PV="${PV}" - MY_P="${PN}-${MY_PV}" #PATCH_TARBALL_NAME="${PN}-2.70-patches-01" VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/zackweinberg.asc inherit verify-sig SRC_URI=" - mirror://gnu/${PN}/${MY_P}.tar.xz - https://alpha.gnu.org/pub/gnu/${PN}/${MY_P}.tar.xz + mirror://gnu/${PN}/${P}.tar.xz + https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz https://meyering.net/ac/${P}.tar.xz - verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.xz.sig ) + verify-sig? ( + https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz.sig + mirror://gnu/${PN}/${P}.tar.xz.sig + ) " - S="${WORKDIR}"/${MY_P} - if [[ ${PV} != *_beta* ]] && ! [[ $(ver_cut 3) =~ [a-z] ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + AUTOCONF_EXTRA_VER=$(ver_cut 3) + if [[ ${AUTOCONF_EXTRA_VER} -ge 90 ]] ; then + # Prereleases get no keywords and their slot bumped up + # e.g. SLOT for 2.72(.90) -> 2.73 + AUTOCONF_SLOT=$(ver_cut 1).$((($(ver_cut 2) + 1))) + else + AUTOCONF_SLOT=$(ver_cut 1-2) + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" fi BDEPEND="verify-sig? ( sec-keys/openpgp-keys-zackweinberg )" @@ -41,8 +47,7 @@ DESCRIPTION="Used to create autoconfiguration files" HOMEPAGE="https://www.gnu.org/software/autoconf/autoconf.html" LICENSE="GPL-3+" -SLOT="$(ver_cut 1-2)" -IUSE="emacs" +SLOT="${AUTOCONF_SLOT}" BDEPEND+=" >=dev-lang/perl-5.10 @@ -55,7 +60,6 @@ RDEPEND=" !~${CATEGORY}/${P}:2.5 " [[ ${PV} == 9999 ]] && BDEPEND+=" >=sys-apps/texinfo-4.3" -PDEPEND="emacs? ( app-emacs/autoconf-mode )" src_prepare() { if [[ ${PV} == *9999 ]] ; then @@ -64,7 +68,11 @@ src_prepare() { local ver=$(./build-aux/git-version-gen .tarball-version) echo "${ver}" > .tarball-version || die - autoreconf -f -i || die + export WANT_AUTOCONF=2.5 + export WANT_AUTOMAKE=1.17 + # Don't try wrapping the autotools - this thing runs as it tends + # to be a bit esoteric, and the script does `set -e` itself. + ./bootstrap || die fi # usr/bin/libtool is provided by binutils-apple, need gnu libtool diff --git a/sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-9999.ebuild index f4d209e6760..ec41a181b66 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-build/autoconf/autoconf-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -11,24 +11,30 @@ EAPI=8 if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://git.savannah.gnu.org/git/autoconf.git" inherit git-r3 + AUTOCONF_SLOT="9999" else - # For _beta handling replace with real version number - MY_PV="${PV}" - MY_P="${PN}-${MY_PV}" #PATCH_TARBALL_NAME="${PN}-2.70-patches-01" VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/zackweinberg.asc inherit verify-sig SRC_URI=" - mirror://gnu/${PN}/${MY_P}.tar.xz - https://alpha.gnu.org/pub/gnu/${PN}/${MY_P}.tar.xz + mirror://gnu/${PN}/${P}.tar.xz + https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz https://meyering.net/ac/${P}.tar.xz - verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.xz.sig ) + verify-sig? ( + https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz.sig + mirror://gnu/${PN}/${P}.tar.xz.sig + ) " - S="${WORKDIR}"/${MY_P} - if [[ ${PV} != *_beta* ]] && ! [[ $(ver_cut 3) =~ [a-z] ]] ; then + AUTOCONF_EXTRA_VER=$(ver_cut 3) + if [[ ${AUTOCONF_EXTRA_VER} -ge 90 ]] ; then + # Prereleases get no keywords and their slot bumped up + # e.g. SLOT for 2.72(.90) -> 2.73 + AUTOCONF_SLOT=$(ver_cut 1).$((($(ver_cut 2) + 1))) + else + AUTOCONF_SLOT=$(ver_cut 1-2) KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" fi @@ -41,7 +47,7 @@ DESCRIPTION="Used to create autoconfiguration files" HOMEPAGE="https://www.gnu.org/software/autoconf/autoconf.html" LICENSE="GPL-3+" -SLOT="$(ver_cut 1-2)" +SLOT="${AUTOCONF_SLOT}" BDEPEND+=" >=dev-lang/perl-5.10 From b7229191bd1a16ae8fa1bfe7e39e482d85d2b882 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:57 +0000 Subject: [PATCH 039/291] dev-build/cmake: Sync with Gentoo It's from Gentoo commit 0b43085cc660597c308c4c7eca6876829c23291c. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-build/cmake/Manifest | 13 +- .../dev-build/cmake/cmake-3.31.10.ebuild | 317 ------------------ .../dev-build/cmake/cmake-3.31.9-r1.ebuild | 317 ------------------ ...{cmake-4.1.3.ebuild => cmake-4.2.3.ebuild} | 1 - .../cmake/files/cmake-3.31.7-hdf5.patch | 34 -- 5 files changed, 3 insertions(+), 679 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-3.31.10.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-3.31.9-r1.ebuild rename sdk_container/src/third_party/portage-stable/dev-build/cmake/{cmake-4.1.3.ebuild => cmake-4.2.3.ebuild} (99%) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-build/cmake/files/cmake-3.31.7-hdf5.patch diff --git a/sdk_container/src/third_party/portage-stable/dev-build/cmake/Manifest b/sdk_container/src/third_party/portage-stable/dev-build/cmake/Manifest index 3d091833f75..74a1e55ea06 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/cmake/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-build/cmake/Manifest @@ -1,20 +1,13 @@ -DIST cmake-3.31.0-docs.tar.xz 562756 BLAKE2B ef1d145658fd197ea515f05fbbad54b213bf458f3068829634242bc43bdb4f97bd45fcc45c9958919d2a78276ffc1d14d507822831f44fe9be5080ecc62e75fe SHA512 b4025633a0f42003005dfacdaea55c67e08d8f9082c8c6c564540b4d536246acedece41adb76cb00042d2f25f85b3817d23f70e393eb22a0857693d51ca60748 -DIST cmake-3.31.10-SHA-256.txt 1663 BLAKE2B 4994c30970db219a9c8f2ecce9bcb53e9caebca4b38d411b4a12b8e1e72cebd14342faa73e26170eff11b5122d4792a6310ef61d13c6988e7da5c38c61500e4d SHA512 9406075dc8ab2cfab30b7164806b978c99a2139d126c3636702a38ad0ee4322495ddd27ca88a748ccf1138e0e80c556eaa5a3083f9393c81a7ee69c4f8cadd6d -DIST cmake-3.31.10-SHA-256.txt.asc 833 BLAKE2B d48b5faa4180da4b8e9f2e665dff2e105d9eba4d7175b15992c9f5c62aad6a62c4db32af6a127a6ae1ec7be845dd417a74a870a494b4797220e9edc9ff4d5a71 SHA512 da7f3efd071b57007d41a555fa00fa10b7eec1c4b3e9963dc3a3c27babb8c98c47544df5f8e565e5befe146886bbb50938b953d1638505a63eb5e94fb83f00f5 -DIST cmake-3.31.10.tar.gz 11715172 BLAKE2B cb93ad802d8a047463aa1cbb1ab67aa50101168335db1c260c4a89b0cb5e0608af0696fc93b4c04e2f17a3d75d52b6819b11cb48a9f5a2fc483fdacfe5befbc9 SHA512 ae1eed42c143b5afd70124853367dab130b3a668fd161a8fd794a44d2eb42f0a64367d152eb43edbf167ffa95612ffe10f8f18c6db9410ff473b97d4f04a978e -DIST cmake-3.31.9-SHA-256.txt 1646 BLAKE2B 0806782ad7afaafa600e185a8e84ccb9cd4456d65eb8686be4f71f10fffc16996b3dfecc3f5620036b534040d0abf6253a3ae0b7a2e4ad7350b6f7df2bfe75be SHA512 cfe75c647578ed4a60267d08d3794c35ba738ee7f358e969fea067b56f688946dfe2c737ca06fb175f524a7f6af7ffd5b391d48ab9516a280fee41a2c0d8aa2a -DIST cmake-3.31.9-SHA-256.txt.asc 833 BLAKE2B d168612ca7bf09b4ee1c12342c147a5fd129719c48c4ca785f0ccb81df61ef61d61cec517d7a0ed6cf408efb2194ff23d7ddbb1f0553ef3e598c92505ba0c7ca SHA512 6dfc53cf097bb3d0563623e6f1170fe31c337049dbb82b3fc3d1f2a7598738a096b5653fd839ff6ad33dbd37eb847f7677ff58a049557c488d6ef47bbddf2a61 -DIST cmake-3.31.9.tar.gz 11714375 BLAKE2B cfbc9aeff695b99134234171fd515c49eaac8c875b2a84b305da08392d7b886bef756c60ca00ba57b427127fc0a2307b4e9b00cfb1382995466cc0092b549b1f SHA512 4fff8d02d3d1d938184f6a62b7b436404bdbb97a13e697bb10e325a0559e214a6010120f309fd1ed363a6e23b3042bc52a21d5da5b39732537af8bb37f4d4591 DIST cmake-4.0.0_rc1-docs.tar.xz 577536 BLAKE2B 74a742ffef8e1af1652746e1c177d4198155145a039635e6a0ea40af463f3a2d45b6c6ce7d3a9b1fee24f0c1cfd1c3aa95c27669ca3c6281d54e701fc0ece202 SHA512 74c20067d3b82493024b2f2711b55b93998ce3b5f35ab5a154f33a8268a35a29d01127c55ce6b85b80ff252d15284ed1065e1338422124f6722a4190a984637c DIST cmake-4.1.2-SHA-256.txt 2015 BLAKE2B f627a8089da03f59bf257d79751f2f46ce48a95eebe79e597faf7f541eef5cb17dde4bb01db3d269efa18167a0c177e808085d813dde72f5d85aa73216ecb81c SHA512 47d8530ec08caaef28f949e0b23dc4a155898b9e72e9f8d038785f74284df0dfc7fb22ffbad3f7d0d17ceeafdc1784090d7c1fca8177dcd9f88d15916d5beeb4 DIST cmake-4.1.2-SHA-256.txt.asc 833 BLAKE2B e14f3140aeddc3a63dc2c2a86f6188631a26740d24529508ea363942d12da0565c428da13148108a4fcc6ef79938f14f48e04eade66ec0e3a8c7073242e77023 SHA512 3344bed89dd64533bb74b805af9044af27d490449d2d4eb8491b9c3591e04c86d06bd10955753fd0ad14eef83e26428bb221c88b1eff341dee0d1ba4b2652e1c DIST cmake-4.1.2.tar.gz 12048810 BLAKE2B a15dcfa25d22373bcd0a92109fe9e4a42b37ee4d9bcc1a635cadd13d18f9bafe3a7b08db2cdd0fa0a5269655b873159fffac617ecd7a610f1516c9545691e9a3 SHA512 169b8ebfbd2c880a1f3ed8c3da8d4b8e9252a5a1ff9f0011e39bb3bb84d183f0379eea880b80e2e052c333db91e49b80e5a65131f71fc8582709b604e94bf280 -DIST cmake-4.1.3-SHA-256.txt 2015 BLAKE2B d87dc222c3aee5c92e880142d115e9debc0cbdc7567c08e6d3425431c5fcba32f54ca63382d01829aa5f8389d6aca5dbdfded006ea8174eaa9d7f4a776c86f26 SHA512 408e03535cc0377123b0c17ba46955e45e6ca23849b48536253ff9d2b2268cc8f44f3365c79ebfe3861a5fd68f8dfc61d005ed77f2fa262477b5103060ecacb1 -DIST cmake-4.1.3-SHA-256.txt.asc 833 BLAKE2B e6327f6ef0b18048340c17a5ba53dc76632d2834c8cd831e9456996da6bac3bf67edf64364e4cf6d75b3a7955c72e412f665847ab3f33715697cd727adada0f2 SHA512 f3ca38fecd65020c80cc870a9ef5926d28ac5cc8de716c446b7aca3a6614e5163931f1721e166f1d50038478eb2d7dcc054cb740aaace141c0dadc91f2e037b3 -DIST cmake-4.1.3.tar.gz 12049989 BLAKE2B fa220d86e9fc8f9bdfb20123b6b326f47fced48fddbd0e05dade82b0273fcb936ea727bb2bfb87495600e2b8212235e58a737d9d480d7c1f951bbc12b28b9ff7 SHA512 98623542c1076c425aad68ee31b13f60da2374a44b6fc8f60ca5eee7f5c4e941bfc97d14f7856fd3b7b0e1f6263f2a881795d410d5519226a24976059fb8ec77 DIST cmake-4.1.4-SHA-256.txt 2015 BLAKE2B 6e8b2f7c769fbf7b5dbdec081edd8c9169f80fb9b16119b5ace3e5596a14394abe8287f45c537dc2ded972e521745c909d9b33e242c1d8fe34abda9791cec71d SHA512 c806bc17dbad51b5bd90354bf3df31232bd39f7a8dee30205807cc7e2ba63eaddc1138f8512c860e86d21cc7075f58cda85f4f9f3f9001810a243e6ebef0261c DIST cmake-4.1.4-SHA-256.txt.asc 833 BLAKE2B e2685feadb1565a5d14eea89eb5e505dd3988a10f3539d40d44411f425db7baba7fea7cabe894a706e86f58ff8c7332ed26a56711113d099ab27f874177036c3 SHA512 b316dec0ed3f5df1d03b8fdd17afa997df5da723072c4958fe728d4abf5156b36c9e79e0344735a20d31d4a2366aa22b4ae23f334b831ce67ed6bf23183631da DIST cmake-4.1.4.tar.gz 12051840 BLAKE2B 0d43042b70b1fe27bb1e1eeb2bda1b24923887cb0fdaca2fff11771c980b7a9b24637559315f58c53066a53aa40dd3e2127de8cf4fd7eb0d25844e27a7a08f17 SHA512 c8a5eb269f98f70db1f52675822e1b371864fa86037ed4f1714f77abaf5c7b3fae307bfc4392add29c2c600b502d8876d7d1bb260e331ee6607cb02356a7e8a8 DIST cmake-4.2.1-SHA-256.txt 2015 BLAKE2B 6896490b0da207448bdcda863296b47fa6be38069743f00e77065427cd68bd7fb7b8893ce4e6dc6213f9d7fe34bc764bd5e48cf32fccbaf24350870188a7dc33 SHA512 1adeac1b105bd16b9f593e87ba3d8ffbf285ec78a36f565549b97c2e796a4bbb594f00184809e0118ad71137b33c9d3298a673d296cf42b7a37ab32b9c05b882 DIST cmake-4.2.1-SHA-256.txt.asc 833 BLAKE2B 8dbb976c39be74f680070cb9b23689d334daf7518317548fe3ab8eace7007329161b6307aca441238222a8f1cd5674f01e117bab143364eb87876a50e5ca6b1a SHA512 4a07deb385ab72aa20b1fe7d5defa790101e0e6454ef66bdf125feab5ab363e58e856884ebcdbe75677978a616dc99eb181dfdeb9bcc4a67fd8a28ce48019410 DIST cmake-4.2.1.tar.gz 12341564 BLAKE2B ba5f7acf8b0c8acadab93b159171b12ee866215a2f16f01d424c05520b97dcc7ad19acb19ed047d38cd4e5766e4676b43df0d092ae18db6be7218df58c4933cc SHA512 75617692e975f5974bc015d62983e48d0dedaed2daa1e25d93807d25c6ed836e73e37de064e1e924078162fc20f38f9210ac1c4d699c9bd795050119abc848ce +DIST cmake-4.2.3-SHA-256.txt 2015 BLAKE2B e04b03570ca74d7c3a2f2137afef4b4d26e83c43b434490171423cf0cb44719067f92a05d602a3d9f72ad483afee57c5155e416309b37afe5a19ce37265382e6 SHA512 d548f8154d5f346029bbc2222260b97e92e3064d91fcb5bf13716a5d1444c6bacefebabc9dca0ffb7db8730272afdf8bf786700af8e3e2add1479b875fe3c348 +DIST cmake-4.2.3-SHA-256.txt.asc 833 BLAKE2B d9f53c59b44adff483ef3f552c8df4862dff07872dca73414a8233f5ddbb2de80d176ef1e8d89c9bd729f6e0cd4cda87bd94ff5bd7c13dcec4da8db7a85ca684 SHA512 e4b4a0f2db36814b138127ccd5677c2c6171a8e4e5bf5c03c3d0d7113fe2e61be767521a9999af5126c0475105b6a8105320f4d41e3490bfb9b15f738c0e7c1d +DIST cmake-4.2.3.tar.gz 12345147 BLAKE2B b2bbd1fddc0516808fc340c978dd95bfa64ff9ae80f4fab44d1a3c0cdeb9c8e1e0098545050d085b991e0e13dae1705f1973dfcb244215610e6d5d8684e2ed94 SHA512 56cac755277bc3fcf190d6c947c99a718ee555b0524132427989a5d2d51d030c76c07f198ddeea0d9c7e57b24488d352e9b29bb106c1ad15397b92fb4487a88f diff --git a/sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-3.31.10.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-3.31.10.ebuild deleted file mode 100644 index 1a4175d323e..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-3.31.10.ebuild +++ /dev/null @@ -1,317 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs -# Set to 1 if prebuilt, 0 if not -# (the construct below is to allow overriding from env for script) -: ${CMAKE_DOCS_PREBUILT:=1} - -CMAKE_DOCS_PREBUILT_DEV=sam -CMAKE_DOCS_VERSION=$(ver_cut 1-2).0 -# Default to generating docs (inc. man pages) if no prebuilt; overridden later -# See bug #784815 -CMAKE_DOCS_USEFLAG="+doc" - -CMAKE_QA_COMPAT_SKIP=1 # bug #964514; cmake itself is the last pkg we worry about - -# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja -# ... but seems fine as of 3.22.3? -# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759. -CMAKE_MAKEFILE_GENERATOR="emake" -CMAKE_REMOVE_MODULES_LIST=() -inherit bash-completion-r1 cmake flag-o-matic multiprocessing \ - toolchain-funcs xdg-utils - -MY_P="${P/_/-}" - -DESCRIPTION="Cross platform Make" -HOMEPAGE="https://cmake.org/" -if [[ ${PV} == *9999* ]] ; then - CMAKE_DOCS_PREBUILT=0 - - EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git" - inherit git-r3 -else - SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz" - - if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then - SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )" - fi - - if [[ ${PV} != *_rc* ]] ; then - VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradking.asc - inherit verify-sig - - SRC_URI+=" verify-sig? ( - https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt - https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt.asc - )" - - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" - - BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20240902 )" - fi -fi - -[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc" - -S="${WORKDIR}/${MY_P}" - -LICENSE="BSD" -SLOT="0" -IUSE="${CMAKE_DOCS_USEFLAG} dap gui ncurses test" -RESTRICT="!test? ( test )" - -# >= 1.51.0-r1 for ppc32 workaround (bug #941738) -RDEPEND=" - >=app-arch/libarchive-3.3.3:= - app-crypt/rhash:0= - >=dev-libs/expat-2.0.1 - >=dev-libs/jsoncpp-1.9.2-r2:0= - >=dev-libs/libuv-1.51.0-r1:= - >=net-misc/curl-7.21.5[ssl] - virtual/zlib:= - virtual/pkgconfig - dap? ( dev-cpp/cppdap ) - gui? ( dev-qt/qtbase:6[gui,widgets] ) - ncurses? ( sys-libs/ncurses:= ) -" -DEPEND="${RDEPEND}" -BDEPEND+=" - doc? ( - dev-python/requests - dev-python/sphinx - ) - test? ( app-arch/libarchive[zstd] ) -" - -SITEFILE="50${PN}-gentoo.el" - -PATCHES=( - # Prefix - "${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch - "${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch - # Misc - "${FILESDIR}"/${PN}-3.31.6-Prefer-pkgconfig-in-FindBLAS.patch - "${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch - "${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch - # Cuda - "${FILESDIR}"/${PN}-3.30.3-cudahostld.patch - - # Upstream fixes (can usually be removed with a version bump) - "${FILESDIR}"/${PN}-3.31.7-hdf5.patch -) - -cmake_src_bootstrap() { - # disable running of cmake in bootstrap command - sed -i \ - -e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \ - bootstrap || die "sed failed" - - # execinfo.h on Solaris isn't quite what it is on Darwin - if [[ ${CHOST} == *-solaris* ]] ; then - sed -i -e 's/execinfo\.h/blablabla.h/' \ - Source/kwsys/CMakeLists.txt || die - fi - - # bootstrap script isn't exactly /bin/sh compatible - tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \ - --prefix="${T}/cmakestrap/" \ - --parallel=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") \ - || die "Bootstrap failed" -} - -pkg_pretend() { - if [[ -z ${EPREFIX} ]] ; then - local file - local errant_files=() - - # See bug #599684 and bug #753581 (at least) - for file in /etc/arch-release /etc/redhat-release /etc/debian_version ; do - if [[ -e ${file} ]]; then - errant_files+=( "${file}" ) - fi - done - - # If errant files exist - if [[ ${#errant_files[@]} -gt 0 ]]; then - eerror "Errant files found!" - eerror "The presence of these files is known to confuse CMake's" - eerror "library path logic. Please (re)move these files:" - - for file in "${errant_files[@]}"; do - eerror " mv ${file} ${file}.bak" - done - - die "Stray files found in /etc/, see above message" - fi - fi -} - -src_unpack() { - if [[ ${PV} == 9999 ]] ; then - git-r3_src_unpack - elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then - default - else - cd "${DISTDIR}" || die - - # See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature - verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc} - verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz - - cd "${WORKDIR}" || die - - default - fi -} - -src_prepare() { - cmake_src_prepare - - if [[ ${CHOST} == *-darwin* ]] ; then - # Disable Xcode hooks, bug #652134 - sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \ - Source/CMakeLists.txt || die - sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \ - -e '/cmGlobalXCodeGenerator.h/d' \ - Source/cmake.cxx || die - # Disable system integration, bug #933744 - sed -i -e 's/__APPLE__/__DISABLED__/' \ - Source/cmFindProgramCommand.cxx \ - Source/CPack/cmCPackGeneratorFactory.cxx || die - sed -i -e 's/__MAC_OS_X_VERSION_MIN_REQUIRED/__DISABLED__/' \ - Source/cmMachO.cxx || die - sed -i -e 's:CPack/cmCPack\(Bundle\|DragNDrop\|PKG\|ProductBuild\)Generator.cxx::' \ - Source/CMakeLists.txt || die - - # Disable isysroot usage with GCC, we've properly instructed - # where things are via GCC configuration and ldwrapper - sed -i -e '/cmake_gnu_set_sysroot_flag/d' \ - Modules/Platform/Apple-GNU-*.cmake || die - # Disable isysroot usage with clang as well - sed -i -e '/_SYSROOT_FLAG/d' \ - Modules/Platform/Apple-Clang.cmake || die - # Don't set a POSIX standard, system headers don't like that, #757426 - sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ - Source/cmLoadCommandCommand.cxx \ - Source/cmStandardLexer.h \ - Source/cmSystemTools.cxx \ - Source/cmTimestamp.cxx - sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ - Source/cmStandardLexer.h - fi - - # Add gcc libs to the default link paths - sed -i \ - -e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \ - -e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \ - -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \ - Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed" - - ## in theory we could handle these flags in src_configure, as we do in many other packages. But we *must* - ## handle them as part of bootstrapping, sadly. - - # Fix linking on Solaris - [[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl - - # ODR warnings, bug #858335 - # https://gitlab.kitware.com/cmake/cmake/-/issues/20740 - filter-lto - - if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then - CMAKE_BINARY="${S}/Bootstrap.cmk/cmake" - cmake_src_bootstrap - fi -} - -src_configure() { - local mycmakeargs=( - -DCMAKE_USE_SYSTEM_LIBRARIES=ON - -DCMake_ENABLE_DEBUGGER=$(usex dap) - -DCMAKE_DOC_DIR=/share/doc/${PF} - -DCMAKE_MAN_DIR=/share/man - -DCMAKE_DATA_DIR=/share/${PN} - -DSPHINX_MAN=$(usex doc) - -DSPHINX_HTML=$(usex doc) - -DBUILD_CursesDialog="$(usex ncurses)" - -DBUILD_TESTING=$(usex test) - -DBUILD_QtDialog=$(usex gui) - ) - - use gui && mycmakeargs+=( -DCMake_QT_MAJOR_VERSION=6 ) - - cmake_src_configure -} - -src_test() { - # Fix OutDir and SelectLibraryConfigurations tests - # these are altered thanks to our eclass - sed -i -e 's:^#_cmake_modify_IGNORE ::g' \ - "${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \ - || die - - unset CLICOLOR CLICOLOR_FORCE CMAKE_COMPILER_COLOR_DIAGNOSTICS CMAKE_COLOR_DIAGNOSTICS - - pushd "${BUILD_DIR}" > /dev/null || die - - # Excluded tests: - # BootstrapTest: we actually bootstrap it every time so why test it? - # BundleUtilities: bundle creation broken - # CMakeOnly.AllFindModules: pthread issues - # CTest.updatecvs: which fails to commit as root - # Fortran: requires fortran - # RunCMake.CompilerLauncher: also requires fortran - # RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because - # debugedit binary is not in the expected location - # RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because - # it can't find a deb package that owns libc - # TestUpload, which requires network access - # RunCMake.CMP0125, known failure reported upstream (bug #829414) - local myctestargs=( - --output-on-failure - -E "(BootstrapTest|BundleUtilities|CMakeOnly.AllFindModules|CompileOptions|CTest.UpdateCVS|Fortran|RunCMake.CompilerLauncher|RunCMake.CPack_(DEB|RPM)|TestUpload|RunCMake.CMP0125)" \ - ) - - local -x QT_QPA_PLATFORM=offscreen - - cmake_src_test -} - -src_install() { - cmake_src_install - - # If USE=doc, there'll be newly generated docs which we install instead. - if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then - doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8] - fi - - insinto /usr/share/vim/vimfiles/syntax - doins Auxiliary/vim/syntax/cmake.vim - - insinto /usr/share/vim/vimfiles/indent - doins Auxiliary/vim/indent/cmake.vim - - insinto /usr/share/vim/vimfiles/ftdetect - doins "${FILESDIR}/${PN}.vim" - - dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack} -} - -pkg_postinst() { - if use gui; then - xdg_icon_cache_update - xdg_desktop_database_update - xdg_mimeinfo_database_update - fi -} - -pkg_postrm() { - if use gui; then - xdg_icon_cache_update - xdg_desktop_database_update - xdg_mimeinfo_database_update - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-3.31.9-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-3.31.9-r1.ebuild deleted file mode 100644 index 0eea8fdda4d..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-3.31.9-r1.ebuild +++ /dev/null @@ -1,317 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs -# Set to 1 if prebuilt, 0 if not -# (the construct below is to allow overriding from env for script) -: ${CMAKE_DOCS_PREBUILT:=1} - -CMAKE_DOCS_PREBUILT_DEV=sam -CMAKE_DOCS_VERSION=$(ver_cut 1-2).0 -# Default to generating docs (inc. man pages) if no prebuilt; overridden later -# See bug #784815 -CMAKE_DOCS_USEFLAG="+doc" - -CMAKE_QA_COMPAT_SKIP=1 # bug #964514; cmake itself is the last pkg we worry about - -# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja -# ... but seems fine as of 3.22.3? -# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759. -CMAKE_MAKEFILE_GENERATOR="emake" -CMAKE_REMOVE_MODULES_LIST=() -inherit bash-completion-r1 cmake flag-o-matic multiprocessing \ - toolchain-funcs xdg-utils - -MY_P="${P/_/-}" - -DESCRIPTION="Cross platform Make" -HOMEPAGE="https://cmake.org/" -if [[ ${PV} == *9999* ]] ; then - CMAKE_DOCS_PREBUILT=0 - - EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git" - inherit git-r3 -else - SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz" - - if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then - SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )" - fi - - if [[ ${PV} != *_rc* ]] ; then - VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradking.asc - inherit verify-sig - - SRC_URI+=" verify-sig? ( - https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt - https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt.asc - )" - - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" - - BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20240902 )" - fi -fi - -[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc" - -S="${WORKDIR}/${MY_P}" - -LICENSE="BSD" -SLOT="0" -IUSE="${CMAKE_DOCS_USEFLAG} dap gui ncurses test" -RESTRICT="!test? ( test )" - -# >= 1.51.0-r1 for ppc32 workaround (bug #941738) -RDEPEND=" - >=app-arch/libarchive-3.3.3:= - app-crypt/rhash:0= - >=dev-libs/expat-2.0.1 - >=dev-libs/jsoncpp-1.9.2-r2:0= - >=dev-libs/libuv-1.51.0-r1:= - >=net-misc/curl-7.21.5[ssl] - virtual/zlib:= - virtual/pkgconfig - dap? ( dev-cpp/cppdap ) - gui? ( dev-qt/qtbase:6[gui,widgets] ) - ncurses? ( sys-libs/ncurses:= ) -" -DEPEND="${RDEPEND}" -BDEPEND+=" - doc? ( - dev-python/requests - dev-python/sphinx - ) - test? ( app-arch/libarchive[zstd] ) -" - -SITEFILE="50${PN}-gentoo.el" - -PATCHES=( - # Prefix - "${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch - "${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch - # Misc - "${FILESDIR}"/${PN}-3.31.6-Prefer-pkgconfig-in-FindBLAS.patch - "${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch - "${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch - # Cuda - "${FILESDIR}"/${PN}-3.30.3-cudahostld.patch - - # Upstream fixes (can usually be removed with a version bump) - "${FILESDIR}"/${PN}-3.31.7-hdf5.patch -) - -cmake_src_bootstrap() { - # disable running of cmake in bootstrap command - sed -i \ - -e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \ - bootstrap || die "sed failed" - - # execinfo.h on Solaris isn't quite what it is on Darwin - if [[ ${CHOST} == *-solaris* ]] ; then - sed -i -e 's/execinfo\.h/blablabla.h/' \ - Source/kwsys/CMakeLists.txt || die - fi - - # bootstrap script isn't exactly /bin/sh compatible - tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \ - --prefix="${T}/cmakestrap/" \ - --parallel=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") \ - || die "Bootstrap failed" -} - -pkg_pretend() { - if [[ -z ${EPREFIX} ]] ; then - local file - local errant_files=() - - # See bug #599684 and bug #753581 (at least) - for file in /etc/arch-release /etc/redhat-release /etc/debian_version ; do - if [[ -e ${file} ]]; then - errant_files+=( "${file}" ) - fi - done - - # If errant files exist - if [[ ${#errant_files[@]} -gt 0 ]]; then - eerror "Errant files found!" - eerror "The presence of these files is known to confuse CMake's" - eerror "library path logic. Please (re)move these files:" - - for file in "${errant_files[@]}"; do - eerror " mv ${file} ${file}.bak" - done - - die "Stray files found in /etc/, see above message" - fi - fi -} - -src_unpack() { - if [[ ${PV} == 9999 ]] ; then - git-r3_src_unpack - elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then - default - else - cd "${DISTDIR}" || die - - # See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature - verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc} - verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz - - cd "${WORKDIR}" || die - - default - fi -} - -src_prepare() { - cmake_src_prepare - - if [[ ${CHOST} == *-darwin* ]] ; then - # Disable Xcode hooks, bug #652134 - sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \ - Source/CMakeLists.txt || die - sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \ - -e '/cmGlobalXCodeGenerator.h/d' \ - Source/cmake.cxx || die - # Disable system integration, bug #933744 - sed -i -e 's/__APPLE__/__DISABLED__/' \ - Source/cmFindProgramCommand.cxx \ - Source/CPack/cmCPackGeneratorFactory.cxx || die - sed -i -e 's/__MAC_OS_X_VERSION_MIN_REQUIRED/__DISABLED__/' \ - Source/cmMachO.cxx || die - sed -i -e 's:CPack/cmCPack\(Bundle\|DragNDrop\|PKG\|ProductBuild\)Generator.cxx::' \ - Source/CMakeLists.txt || die - - # Disable isysroot usage with GCC, we've properly instructed - # where things are via GCC configuration and ldwrapper - sed -i -e '/cmake_gnu_set_sysroot_flag/d' \ - Modules/Platform/Apple-GNU-*.cmake || die - # Disable isysroot usage with clang as well - sed -i -e '/_SYSROOT_FLAG/d' \ - Modules/Platform/Apple-Clang.cmake || die - # Don't set a POSIX standard, system headers don't like that, #757426 - sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ - Source/cmLoadCommandCommand.cxx \ - Source/cmStandardLexer.h \ - Source/cmSystemTools.cxx \ - Source/cmTimestamp.cxx - sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ - Source/cmStandardLexer.h - fi - - # Add gcc libs to the default link paths - sed -i \ - -e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \ - -e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \ - -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \ - Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed" - - ## in theory we could handle these flags in src_configure, as we do in many other packages. But we *must* - ## handle them as part of bootstrapping, sadly. - - # Fix linking on Solaris - [[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl - - # ODR warnings, bug #858335 - # https://gitlab.kitware.com/cmake/cmake/-/issues/20740 - filter-lto - - if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then - CMAKE_BINARY="${S}/Bootstrap.cmk/cmake" - cmake_src_bootstrap - fi -} - -src_configure() { - local mycmakeargs=( - -DCMAKE_USE_SYSTEM_LIBRARIES=ON - -DCMake_ENABLE_DEBUGGER=$(usex dap) - -DCMAKE_DOC_DIR=/share/doc/${PF} - -DCMAKE_MAN_DIR=/share/man - -DCMAKE_DATA_DIR=/share/${PN} - -DSPHINX_MAN=$(usex doc) - -DSPHINX_HTML=$(usex doc) - -DBUILD_CursesDialog="$(usex ncurses)" - -DBUILD_TESTING=$(usex test) - -DBUILD_QtDialog=$(usex gui) - ) - - use gui && mycmakeargs+=( -DCMake_QT_MAJOR_VERSION=6 ) - - cmake_src_configure -} - -src_test() { - # Fix OutDir and SelectLibraryConfigurations tests - # these are altered thanks to our eclass - sed -i -e 's:^#_cmake_modify_IGNORE ::g' \ - "${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \ - || die - - unset CLICOLOR CLICOLOR_FORCE CMAKE_COMPILER_COLOR_DIAGNOSTICS CMAKE_COLOR_DIAGNOSTICS - - pushd "${BUILD_DIR}" > /dev/null || die - - # Excluded tests: - # BootstrapTest: we actually bootstrap it every time so why test it? - # BundleUtilities: bundle creation broken - # CMakeOnly.AllFindModules: pthread issues - # CTest.updatecvs: which fails to commit as root - # Fortran: requires fortran - # RunCMake.CompilerLauncher: also requires fortran - # RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because - # debugedit binary is not in the expected location - # RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because - # it can't find a deb package that owns libc - # TestUpload, which requires network access - # RunCMake.CMP0125, known failure reported upstream (bug #829414) - local myctestargs=( - --output-on-failure - -E "(BootstrapTest|BundleUtilities|CMakeOnly.AllFindModules|CompileOptions|CTest.UpdateCVS|Fortran|RunCMake.CompilerLauncher|RunCMake.CPack_(DEB|RPM)|TestUpload|RunCMake.CMP0125)" \ - ) - - local -x QT_QPA_PLATFORM=offscreen - - cmake_src_test -} - -src_install() { - cmake_src_install - - # If USE=doc, there'll be newly generated docs which we install instead. - if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then - doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8] - fi - - insinto /usr/share/vim/vimfiles/syntax - doins Auxiliary/vim/syntax/cmake.vim - - insinto /usr/share/vim/vimfiles/indent - doins Auxiliary/vim/indent/cmake.vim - - insinto /usr/share/vim/vimfiles/ftdetect - doins "${FILESDIR}/${PN}.vim" - - dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack} -} - -pkg_postinst() { - if use gui; then - xdg_icon_cache_update - xdg_desktop_database_update - xdg_mimeinfo_database_update - fi -} - -pkg_postrm() { - if use gui; then - xdg_icon_cache_update - xdg_desktop_database_update - xdg_mimeinfo_database_update - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-4.1.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-4.2.3.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-4.1.3.ebuild rename to sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-4.2.3.ebuild index 0d6efc533ee..f9c756e86b3 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-4.1.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-4.2.3.ebuild @@ -98,7 +98,6 @@ PATCHES=( "${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch "${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch # Misc - "${FILESDIR}"/${PN}-3.31.6-Prefer-pkgconfig-in-FindBLAS.patch "${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch "${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch # Cuda diff --git a/sdk_container/src/third_party/portage-stable/dev-build/cmake/files/cmake-3.31.7-hdf5.patch b/sdk_container/src/third_party/portage-stable/dev-build/cmake/files/cmake-3.31.7-hdf5.patch deleted file mode 100644 index c68c5eeec98..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-build/cmake/files/cmake-3.31.7-hdf5.patch +++ /dev/null @@ -1,34 +0,0 @@ -https://bugs.gentoo.org/954378#c14 -https://gitlab.kitware.com/cmake/cmake/-/issues/23261 -https://gitlab.kitware.com/cmake/cmake/-/commit/a869b79c5921412c91fb71a761748ae5f7d3fb23 - -From a869b79c5921412c91fb71a761748ae5f7d3fb23 Mon Sep 17 00:00:00 2001 -From: Atri Bhattacharya -Date: Mon, 10 Mar 2025 20:55:36 +0530 -Subject: [PATCH] FindHDF5: Prefer h5hl* compilers for HDF5_FIND_HL - -Prefer `h5hlcc`, `h5hlc++`, and `h5hlfc` compilers when HDF5's HL libraries -are requested. These include the `-lhdf_hl` in the command line, whereas -the non-hl compilers (like `h5cc`) do not. Using the latter, therefore, -leads to cmake complaining about not finding the `HDF5_HL` libraries even -though they are present in the same location as the `hdf5` library itself. - -Fixes: #23261 ---- a/Modules/FindHDF5.cmake -+++ b/Modules/FindHDF5.cmake -@@ -218,6 +218,13 @@ else() - set(HDF5_Fortran_COMPILER_NAMES h5fc h5pfc) - endif() - -+# Prefer h5hl compilers if HDF5_FIND_HL is enabled -+if(HDF5_FIND_HL) -+ list(PREPEND HDF5_C_COMPILER_NAMES h5hlcc) -+ list(PREPEND HDF5_CXX_COMPILER_NAMES h5hlc++) -+ list(PREPEND HDF5_Fortran_COMPILER_NAMES h5hlfc) -+endif() -+ - # Test first if the current compilers automatically wrap HDF5 - function(_HDF5_test_regular_compiler_C success version is_parallel) - if(NOT ${success} OR --- -GitLab From aded973a3b45cdae09133006005f069f52800b20 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:23:59 +0000 Subject: [PATCH 040/291] dev-build/meson: Sync with Gentoo It's from Gentoo commit 6471197322ffa28d165c26dcbe6609f17bdb6ba5. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-build/meson/Manifest | 3 + .../dev-build/meson/meson-1.10.0.ebuild | 4 +- .../dev-build/meson/meson-1.10.1.ebuild | 232 ++++++++++++++++++ .../dev-build/meson/meson-1.6.1.ebuild | 4 +- .../dev-build/meson/meson-1.7.2.ebuild | 4 +- .../dev-build/meson/meson-1.8.5.ebuild | 4 +- .../dev-build/meson/meson-1.9.1.ebuild | 4 +- .../dev-build/meson/meson-1.9.2.ebuild | 6 +- .../dev-build/meson/meson-9999.ebuild | 4 +- 9 files changed, 250 insertions(+), 15 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.10.1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-build/meson/Manifest b/sdk_container/src/third_party/portage-stable/dev-build/meson/Manifest index 29e6d8caa52..8fec048c9a8 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/meson/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-build/meson/Manifest @@ -2,6 +2,8 @@ DIST meson-1.1.1.tar.gz 2125503 BLAKE2B 295b46d19c8a1d64d326a6c826e2abe11d976890 DIST meson-1.1.1.tar.gz.asc 833 BLAKE2B 165f3a0e8093995e82efcdea78b8cf0d2479505aeec145cf0c4bf3448dd74f0b5d1631e574e7d945d5b5976e11c065043ab0a6efe5646484a5bcd6386050a073 SHA512 004ec7e530ad21b012e461c8d50322295e4ec96a1a3197dbcbeb24b8bd6465a34008541e6fc547e451a50dce53f7ce170ec1bfd8c465ded56a5924e880aa0539 DIST meson-1.10.0.tar.gz 2412381 BLAKE2B 5344f3e6990618d226038a34b99c2f0d56fd539c17fed8fa51aef6e5389566436040cb223bd8b53709e1552d0d59fde5e77349ecc61540ff2572d6bd74045466 SHA512 4e6ad56e18c7d5b244b94b99c7e42489b8d4e79634abb97607c3f277f74b0c3c1cb043ba48816f444d2960fe96dc38459c404207e415a1401f5fad7c6f5d60e5 DIST meson-1.10.0.tar.gz.asc 833 BLAKE2B cfbb66ea439bb5993b121d32a72f73588b9ba5085f932ddfa7fe79887cadd8550994af2f01ebf42d9bfe7b9bb3197256affd68c809379bc5085f1ac36453968a SHA512 0bd520d1e3e452e0973b396808bfb6b1f80a13d4e950c33fcb61ef83b7151e10ce9348509700b04d5cedfaa6f6d94ce0972a06d32848e510b186cc4e9c4495fc +DIST meson-1.10.1.tar.gz 2413969 BLAKE2B 0d99736cdc1b3576026bce775a15c805c8178e2b21615829e028a05f5265cb5c72bd04a9ac5a45a9cf247d54f37f25a98f094efb5e1addb78e9a6ff863629642 SHA512 69fe938dad22728a969d1848f1e3ba43c72a2083158431fd639eb51ebce4f2b38e4a2797663d2e4bb251ed0870533bfab57705da6ae941f541769290b126fd45 +DIST meson-1.10.1.tar.gz.asc 833 BLAKE2B b217b03c8e56526a2489487ababbee3fa59de9f7d515f32a34c6d4410b3d74416df1896468039997d664fddd2b657888f77371f630bdef550208b494f38b1a3a SHA512 984e49a7e20721f839fc1d79cfc74bd585481b4a878556523c01e9760dd444a95a7e148402be585f300e0604fd79811e4bb87f312ebaf2f0d8025eaa9f2cb5a3 DIST meson-1.2.3.tar.gz 2184484 BLAKE2B 7d76c54bddba249ab97ebd5dd0afc448177ff9fa70812a8ca0cc9fe308c9b145b3fbc3ee068acae0fdc73edff42134b7a0b618cd80a05347a424aca7bc8bbef8 SHA512 cdcadc731effc1ffb2de98b795ba37955f934ed9b54b9f7f3ac5fe96ab33268d4de4fce734a4c2ef7d2ecc5051616df127e1f8665e197ff954310bf1483b81fc DIST meson-1.2.3.tar.gz.asc 833 BLAKE2B 1416c49302aab80b5f647cc1d6cd18c36f6199e79c7d13ea284143b2423267b5823850218578626937c14589ebcdf19069b310394c63bc762ab8f59d7ebe3780 SHA512 852c031ecfe032cb48d284bb270597d114294b7d1be5dd0df6ec2f78a62e1a5ba82711bc14ae410e47ced54f99a639055a1628b0acf7aa07a3a80034fce5ebc9 DIST meson-1.3.2.tar.gz 2223798 BLAKE2B 72b061598a0cb22517460de4df25394a9dfbddb536c5b8e75b7267ae21292fe2a6a3ec16d64aa81cde63d33022decebcc051cf2d87d677f9b40eb2f4106a40cd SHA512 6369c6d64f91c769f0f4d3e2445bb3615785998489d41acba2134b44ec89abd04bd97a3d3d17c64779eb40b0bf4808e3419eb47638169446a98824d680f37a7b @@ -21,6 +23,7 @@ DIST meson-1.9.1.tar.gz.asc 992 BLAKE2B 5271c87e19da0f0776c01b1f9f71eef0540e532a DIST meson-1.9.2.tar.gz 2382854 BLAKE2B f099352abbc0fa8d358cbe406955ddf817453cdc244b36f322e11b5b3020013641d162c68c9bce119cf866e8082a14a3f7db9930b66dfba15805afb32440f555 SHA512 3237e55bb8374f65f40dccd8a93493a42fc425337758b8600b377c5e9795a1bdc97942fc19fedd4c3cb697f87c1d54364a637110704a5dc1a391d712be1463bc DIST meson-1.9.2.tar.gz.asc 833 BLAKE2B f161b2918c341172de5f141ac367d7d62a60f2d0eadd793f71fb6a19e8944b4ad6bbfbb25d233862066eec8e422295d46e03ce8aca26e1081f2bcb456b7c1057 SHA512 c8cace334e31d5ba3e4f2da687ed945182e3039dc8bbea94015caa82d373c4b4d96a425eccb7617793fd471040705711b00ab37705dcd2070be6ba089586652b DIST meson-reference-1.10.0.3 365875 BLAKE2B 2f180158dd31e1bf527947407425d211cf95ab84cd7f4f4c2063036dd46dda4318435b69097d7fae6b812ab402358c438b1d264f1d90716ea471293f70d56e60 SHA512 98f03a9976fee84f9e53987611e524f98d490c6cbe4de652b770e15a3c95cb578ce806b3c17cb75a702f9ee361e20549e2e797692310af8e36177a53e13eec4d +DIST meson-reference-1.10.1.3 365875 BLAKE2B 8b24e9370b3356c3f3ff23f5c4c0c977abe5936b67425e9e3e37597d96db14e6800bc97083f4c77b011c1f9304adc26e71409a35fd888df70fbcacea0515879b SHA512 6cf65dc7aaf56e53cb543bf7e64a64df90b2595009174ac99688e0c3488b6718c439740d494dc0fbf49f2f669ebf43ef16557de0a3e3661e3f6259637e3c828a DIST meson-reference-1.4.2.3 339324 BLAKE2B 1a4fbd8c27a8cfba773777eabd2ebaa0f76ec0c61dcfe1c7b4483737b348ff9528d68f26e68d7d40b2e1875611eed5b9a31c1cf55fed8eabb42fc1e31d9ef14b SHA512 8b8ec43e812599203ec44c08805eb6818485805c45b9c69802261eaa35efc97846a96f6472c6b1ef5f6c703e7153fd957df7b805f173ca3400a2030dfbe002ca DIST meson-reference-1.5.2.3 341110 BLAKE2B 0d588b796f7f2da2dcb0e7822acde6a9a461930da4bfead3cf9148fa0fac18cd0ccbc6e891f555c973836f1c16b4eae299908a838a0b6843293de8815d30fc23 SHA512 64715ce2113e362e7d67179fe13566bc8f84ce7f4e6d795b836f42455a871173fee06e3e969e2996022d7e6c9b4b5379587a4c0c3d97b4bca527fb8902d3547f DIST meson-reference-1.6.1.3 343730 BLAKE2B 55df822192781a70e4bc44cfe14fb363e3f820406260ca9705d7fdb5fad1bf0117e3f1325d37e58e23477bc075ab6bd84056409355ec694f72eeaa5bf982ecc7 SHA512 553cdcd86a7a600cda05ac970cc285c4c50017d1e7d2925645d7f19a62b34c2f079673cafecf4111aa102afbe9d8e4d56f166d1d9940b740eeec0bb99d6cbc0d diff --git a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.10.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.10.0.ebuild index d6479e2e5a7..0a2f94bea5f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.10.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.10.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 2016-2025 Gentoo Authors +# Copyright 2016-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -90,7 +90,7 @@ DEPEND=" dev-qt/qtbase:6[gui,widgets] dev-qt/qtdeclarative:6 dev-qt/qttools:6 - dev-util/gdbus-codegen + >=dev-util/gdbus-codegen-2.80.5-r1 x11-libs/gtk+:3 dev-libs/wayland diff --git a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.10.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.10.1.ebuild new file mode 100644 index 00000000000..0a2f94bea5f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.10.1.ebuild @@ -0,0 +1,232 @@ +# Copyright 2016-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..14} pypy3_11 ) +DISTUTILS_USE_PEP517=setuptools + +inherit shell-completion edo distutils-r1 flag-o-matic toolchain-funcs + +if [[ ${PV} = *9999* ]]; then + EGIT_REPO_URI="https://github.com/mesonbuild/meson" + inherit ninja-utils git-r3 + + BDEPEND=" + ${NINJA_DEPEND} + $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]') + " + +else + inherit verify-sig + + MY_PV=${PV/_/} + MY_P=${P/_/} + S=${WORKDIR}/${MY_P} + + SRC_URI=" + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz + verify-sig? ( https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz.asc ) + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/meson-reference.3 -> meson-reference-${MY_PV}.3 + " + # Releases may be signed by those listed in Releasing.md. Jussi + # remains the default release manager. + # https://github.com/mesonbuild/meson/commit/c2d795735fa1c46c54d6aed4d4a30f36a1f853cb + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-eschwartz-20250723-r1 sec-keys/openpgp-keys-jpakkane )" + #VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/eschwartz.asc + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi +fi + +DESCRIPTION="Open source build system" +HOMEPAGE="https://mesonbuild.com/" + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="test test-full" +RESTRICT="!test? ( test )" +REQUIRED_USE="test-full? ( test )" + +DEPEND=" + test? ( + dev-libs/glib:2 + >=dev-libs/gobject-introspection-1.82.0-r2 + app-alternatives/ninja + dev-vcs/git + virtual/zlib:=[static-libs(+)] + virtual/pkgconfig + dev-build/cmake + ) + test-full? ( + || ( dev-lang/rust dev-lang/rust-bin ) + dev-lang/nasm + >=dev-lang/pypy-3 + dev-lang/vala + dev-python/cython + virtual/fortran + virtual/jdk + + app-text/doxygen + dev-cpp/gtest + dev-libs/protobuf + dev-util/bindgen + dev-util/gtk-doc + dev-util/itstool + llvm-core/llvm + media-libs/libsdl2 + media-libs/libwmf + net-libs/libpcap + sci-libs/hdf5[cxx,fortran] + sci-libs/netcdf + sys-cluster/openmpi[fortran] + sys-devel/bison + sys-devel/flex + + dev-qt/linguist-tools:5 + dev-qt/qtwidgets:5 + dev-qt/qtbase:6[gui,widgets] + dev-qt/qtdeclarative:6 + dev-qt/qttools:6 + >=dev-util/gdbus-codegen-2.80.5-r1 + x11-libs/gtk+:3 + + dev-libs/wayland + dev-util/wayland-scanner + ) +" +RDEPEND=" + !/dev/null) + + ${EPYTHON} -u run_tests.py + ) || die "Testing failed with ${EPYTHON}" +} + +python_install_all() { + distutils-r1_python_install_all + + insinto /usr/share/vim/vimfiles + doins -r data/syntax-highlighting/vim/{ftdetect,indent,syntax} + + dozshcomp data/shell-completions/zsh/_meson + dobashcomp data/shell-completions/bash/meson + + if [[ ${PV} = *9999* ]]; then + DESTDIR="${ED}" eninja -C docs/builddir install + else + newman "${DISTDIR}"/meson-reference-${MY_PV}.3 meson-reference.3 + fi +} diff --git a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.6.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.6.1.ebuild index f0b7aaf713d..8c244c30782 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.6.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.6.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 2016-2025 Gentoo Authors +# Copyright 2016-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -85,7 +85,7 @@ DEPEND=" dev-qt/qtwidgets:5 dev-qt/qtbase:6[gui,widgets] dev-qt/qttools:6 - dev-util/gdbus-codegen + >=dev-util/gdbus-codegen-2.80.5-r1 x11-libs/gtk+:3 dev-libs/wayland diff --git a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.7.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.7.2.ebuild index b49c4b5b84a..82761148749 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.7.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.7.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 2016-2025 Gentoo Authors +# Copyright 2016-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -89,7 +89,7 @@ DEPEND=" dev-qt/qtbase:6[gui,widgets] dev-qt/qtdeclarative:6 dev-qt/qttools:6 - dev-util/gdbus-codegen + >=dev-util/gdbus-codegen-2.80.5-r1 x11-libs/gtk+:3 dev-libs/wayland diff --git a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.8.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.8.5.ebuild index 20b5cab3933..24f3e1159a0 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.8.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.8.5.ebuild @@ -1,4 +1,4 @@ -# Copyright 2016-2025 Gentoo Authors +# Copyright 2016-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -90,7 +90,7 @@ DEPEND=" dev-qt/qtbase:6[gui,widgets] dev-qt/qtdeclarative:6 dev-qt/qttools:6 - dev-util/gdbus-codegen + >=dev-util/gdbus-codegen-2.80.5-r1 x11-libs/gtk+:3 dev-libs/wayland diff --git a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.9.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.9.1.ebuild index f3b1db77320..ee0a748e903 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.9.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.9.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 2016-2025 Gentoo Authors +# Copyright 2016-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -90,7 +90,7 @@ DEPEND=" dev-qt/qtbase:6[gui,widgets] dev-qt/qtdeclarative:6 dev-qt/qttools:6 - dev-util/gdbus-codegen + >=dev-util/gdbus-codegen-2.80.5-r1 x11-libs/gtk+:3 dev-libs/wayland diff --git a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.9.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.9.2.ebuild index 59d302bd834..6a076c6a137 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.9.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.9.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 2016-2025 Gentoo Authors +# Copyright 2016-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -37,7 +37,7 @@ else VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" fi fi @@ -90,7 +90,7 @@ DEPEND=" dev-qt/qtbase:6[gui,widgets] dev-qt/qtdeclarative:6 dev-qt/qttools:6 - dev-util/gdbus-codegen + >=dev-util/gdbus-codegen-2.80.5-r1 x11-libs/gtk+:3 dev-libs/wayland diff --git a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-9999.ebuild index d6479e2e5a7..0a2f94bea5f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 2016-2025 Gentoo Authors +# Copyright 2016-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -90,7 +90,7 @@ DEPEND=" dev-qt/qtbase:6[gui,widgets] dev-qt/qtdeclarative:6 dev-qt/qttools:6 - dev-util/gdbus-codegen + >=dev-util/gdbus-codegen-2.80.5-r1 x11-libs/gtk+:3 dev-libs/wayland From a5d7ffc8e8080c1177f9800f6a2c9fb008822c32 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:00 +0000 Subject: [PATCH 041/291] dev-cpp/azure-core: Sync with Gentoo It's from Gentoo commit 15b81bcecfb1984c912efd340e662f1e21ca7ad0. Signed-off-by: Flatcar Buildbot --- .../dev-cpp/azure-core/Manifest | 1 + .../azure-core/azure-core-1.16.2.ebuild | 46 +++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-cpp/azure-core/azure-core-1.16.2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/azure-core/Manifest b/sdk_container/src/third_party/portage-stable/dev-cpp/azure-core/Manifest index 1334c3fda41..7fb81a86d65 100644 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/azure-core/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-cpp/azure-core/Manifest @@ -1 +1,2 @@ +DIST azure-sdk-for-cpp-1144e4ad18f63bc2084552e1b4fbf737c974261a.tar.gz 3420176 BLAKE2B 3e1953e823894bc788827dd0091334609daf3f73aa2279704a4b8b43c639f8d729430ad15503a6f0be894af8aae05c89014aba6196b4ce0cf78f5f5e8f940c7b SHA512 96919f4c25ca7af915038a460e48adbd448dc44dc0f75ab3121af62f895c7f6493efa82b34dde40cbc6d99e3d10c88d27ad2ac5be4053585f10f6ed4a372707a DIST azure-sdk-for-cpp-11a2a38aa79daf573c2a16353dd9121536ac9fc1.tar.gz 3375477 BLAKE2B ee381975a7464c62b6a2d6a7aeaa52118cf6941a6c91b81eb8e056cc5deef9cd0d23dc7e56f273796fa906a064e9e23acb763762013b9c27837788cc261253ce SHA512 892223ff787bf68dd782e058962120b06f12891383fe26e157d9efd59ecc4d5d216f4fb1df6d46a46a57167ec1c3cfe864757e4e198a3c8a6a721603d7c51695 diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/azure-core/azure-core-1.16.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-cpp/azure-core/azure-core-1.16.2.ebuild new file mode 100644 index 00000000000..6e97dc1b2eb --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-cpp/azure-core/azure-core-1.16.2.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +COMMIT="1144e4ad18f63bc2084552e1b4fbf737c974261a" +MY_P="azure-sdk-for-cpp-${COMMIT}" +DESCRIPTION="Azure SDK for C++" +HOMEPAGE="https://azure.github.io/azure-sdk-for-cpp/" +SRC_URI="https://github.com/Azure/azure-sdk-for-cpp/archive/${COMMIT}.tar.gz -> ${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}/sdk/core/${PN}" +LICENSE="MIT" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~arm64" +IUSE="doc" +RESTRICT="test" # Too many online tests. + +RDEPEND=" + dev-libs/openssl:= + net-misc/curl[ssl] +" +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + virtual/pkgconfig + doc? ( app-text/doxygen ) +" + +src_configure() { + local mycmakeargs=( + -DBUILD_DOCUMENTATION=$(usex doc) + -DWARNINGS_AS_ERRORS=no + ) + + AZURE_SDK_DISABLE_AUTO_VCPKG=yes \ + cmake_src_configure +} + +src_install() { + cmake_src_install + rm -v "${ED}"/usr/share/*/copyright || die + use doc && dodoc -r "${BUILD_DIR}"/docs/html +} From e6cb063efef184444d5dbb6bce7cc87e828de812 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:00 +0000 Subject: [PATCH 042/291] dev-cpp/azure-identity: Sync with Gentoo It's from Gentoo commit d7b4253867daa019117df7970b7cc24b88a71fd9. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-cpp/azure-identity/Manifest | 2 +- .../dev-cpp/azure-identity/azure-identity-1.13.2.ebuild | 4 ++-- ...-identity-1.13.1.ebuild => azure-identity-1.13.3.ebuild} | 6 +++--- 3 files changed, 6 insertions(+), 6 deletions(-) rename sdk_container/src/third_party/portage-stable/dev-cpp/azure-identity/{azure-identity-1.13.1.ebuild => azure-identity-1.13.3.ebuild} (88%) diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/azure-identity/Manifest b/sdk_container/src/third_party/portage-stable/dev-cpp/azure-identity/Manifest index 8dd25a608a3..eb35c0c6b78 100644 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/azure-identity/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-cpp/azure-identity/Manifest @@ -1,2 +1,2 @@ -DIST azure-sdk-for-cpp-11a2a38aa79daf573c2a16353dd9121536ac9fc1.tar.gz 3375477 BLAKE2B ee381975a7464c62b6a2d6a7aeaa52118cf6941a6c91b81eb8e056cc5deef9cd0d23dc7e56f273796fa906a064e9e23acb763762013b9c27837788cc261253ce SHA512 892223ff787bf68dd782e058962120b06f12891383fe26e157d9efd59ecc4d5d216f4fb1df6d46a46a57167ec1c3cfe864757e4e198a3c8a6a721603d7c51695 +DIST azure-sdk-for-cpp-1144e4ad18f63bc2084552e1b4fbf737c974261a.tar.gz 3420176 BLAKE2B 3e1953e823894bc788827dd0091334609daf3f73aa2279704a4b8b43c639f8d729430ad15503a6f0be894af8aae05c89014aba6196b4ce0cf78f5f5e8f940c7b SHA512 96919f4c25ca7af915038a460e48adbd448dc44dc0f75ab3121af62f895c7f6493efa82b34dde40cbc6d99e3d10c88d27ad2ac5be4053585f10f6ed4a372707a DIST azure-sdk-for-cpp-fe5e5ad9e50423ad992648a60151696ed896b7c6.tar.gz 3399411 BLAKE2B dba68b4c673bfa48c3e8bb08d51f4e677e82cdd9a2eb651ec91f62b0a658d22493d5ded51346ee08c43b3da369ab6dbd77dc57396544facf48fe5082d8682312 SHA512 7fe149e37d17e54fb3669f143b7ba16c8d4bde3caf56e132786aa97d7c3d662b753a99d0ed460ca29dfc469776aaf5e0d36df17e419458c4f941c1c5763990dd diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/azure-identity/azure-identity-1.13.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-cpp/azure-identity/azure-identity-1.13.2.ebuild index f521a19b95d..2f97c9a447f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/azure-identity/azure-identity-1.13.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-cpp/azure-identity/azure-identity-1.13.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -13,7 +13,7 @@ SRC_URI="https://github.com/Azure/azure-sdk-for-cpp/archive/${COMMIT}.tar.gz -> S="${WORKDIR}/${MY_P}/sdk/identity/${PN}" LICENSE="MIT" SLOT="0/${PV}" -KEYWORDS="~amd64" +KEYWORDS="amd64" IUSE="doc" RESTRICT="test" # Too many online tests. diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/azure-identity/azure-identity-1.13.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-cpp/azure-identity/azure-identity-1.13.3.ebuild similarity index 88% rename from sdk_container/src/third_party/portage-stable/dev-cpp/azure-identity/azure-identity-1.13.1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-cpp/azure-identity/azure-identity-1.13.3.ebuild index b0e5af77564..95f52606460 100644 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/azure-identity/azure-identity-1.13.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-cpp/azure-identity/azure-identity-1.13.3.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit cmake -COMMIT="11a2a38aa79daf573c2a16353dd9121536ac9fc1" +COMMIT="1144e4ad18f63bc2084552e1b4fbf737c974261a" MY_P="azure-sdk-for-cpp-${COMMIT}" DESCRIPTION="Azure SDK for C++" HOMEPAGE="https://azure.github.io/azure-sdk-for-cpp/" @@ -13,7 +13,7 @@ SRC_URI="https://github.com/Azure/azure-sdk-for-cpp/archive/${COMMIT}.tar.gz -> S="${WORKDIR}/${MY_P}/sdk/identity/${PN}" LICENSE="MIT" SLOT="0/${PV}" -KEYWORDS="amd64" +KEYWORDS="~amd64 ~arm64" IUSE="doc" RESTRICT="test" # Too many online tests. From 7e47b4ae80e8e8c62698ed955eaf3b267dfd0298 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:00 +0000 Subject: [PATCH 043/291] dev-cpp/azure-security-keyvault-certificates: Sync with Gentoo It's from Gentoo commit 900c0ee7e1d9216e47aab2ce63f20136500abec8. Signed-off-by: Flatcar Buildbot --- .../azure-security-keyvault-certificates-4.2.1.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/azure-security-keyvault-certificates/azure-security-keyvault-certificates-4.2.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-cpp/azure-security-keyvault-certificates/azure-security-keyvault-certificates-4.2.1.ebuild index 1d54a4d397c..9ea59b77f7a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/azure-security-keyvault-certificates/azure-security-keyvault-certificates-4.2.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-cpp/azure-security-keyvault-certificates/azure-security-keyvault-certificates-4.2.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -13,7 +13,7 @@ SRC_URI="https://github.com/Azure/azure-sdk-for-cpp/archive/${COMMIT}.tar.gz -> S="${WORKDIR}/${MY_P}/sdk/keyvault/${PN}" LICENSE="MIT" SLOT="0/${PV}" -KEYWORDS="amd64" +KEYWORDS="amd64 ~arm64" IUSE="doc" RESTRICT="test" # Too many online tests. From f0d3cb8fc5dba61bbb3ff8e0e902fd15e5cc4cdd Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:01 +0000 Subject: [PATCH 044/291] dev-cpp/azure-security-keyvault-keys: Sync with Gentoo It's from Gentoo commit 1206ca1cdfd6f2471b013856e40bc109bef8a386. Signed-off-by: Flatcar Buildbot --- .../azure-security-keyvault-keys-4.4.1.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/azure-security-keyvault-keys/azure-security-keyvault-keys-4.4.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-cpp/azure-security-keyvault-keys/azure-security-keyvault-keys-4.4.1.ebuild index 1d54a4d397c..9ea59b77f7a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/azure-security-keyvault-keys/azure-security-keyvault-keys-4.4.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-cpp/azure-security-keyvault-keys/azure-security-keyvault-keys-4.4.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -13,7 +13,7 @@ SRC_URI="https://github.com/Azure/azure-sdk-for-cpp/archive/${COMMIT}.tar.gz -> S="${WORKDIR}/${MY_P}/sdk/keyvault/${PN}" LICENSE="MIT" SLOT="0/${PV}" -KEYWORDS="amd64" +KEYWORDS="amd64 ~arm64" IUSE="doc" RESTRICT="test" # Too many online tests. From 9bd659d75c3d70b7c42bf4b1007748eb222a393c Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:02 +0000 Subject: [PATCH 045/291] dev-db/sqlite: Sync with Gentoo It's from Gentoo commit b786e027006bd213f69b1424879d0862074211d7. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-db/sqlite/Manifest | 2 + .../dev-db/sqlite/sqlite-3.51.2.ebuild | 444 ++++++++++++++++++ 2 files changed, 446 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-db/sqlite/sqlite-3.51.2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-db/sqlite/Manifest b/sdk_container/src/third_party/portage-stable/dev-db/sqlite/Manifest index a05cf6bd33a..1da620ec207 100644 --- a/sdk_container/src/third_party/portage-stable/dev-db/sqlite/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-db/sqlite/Manifest @@ -1,4 +1,6 @@ DIST sqlite-doc-3500400.zip 11398708 BLAKE2B a179191767c86b10604ad03ebd6408ebc3e6b14ce5a85d7dd14cfc933da8e92b76a7ad8b40616699c54022259ba852e30e6f7eeb34640326d51623a7c52c0065 SHA512 24db55ec5d29a6389cf930e3fa3c7205ca47973f5857f7cc5444166bd10d00109cbe4141e87cbb94f75711cb981e60bde286b15c0384cdcfb41337f0f0eaa446 DIST sqlite-doc-3510100.zip 11481722 BLAKE2B d0f2a746c9c6e946bd1086854ce6720b29e29fcfc4af0aa780b6fdc3003dc630133b1f95ac045aa0cdfd63086a9fa5ee62af3bb1fb58c853c6798fde349ffe62 SHA512 fc6b4441d833c6ad988fbd5ce6793a4f259e5a8d5925182828a49e7ca3ce85ad5279af155450f77c8cbdfd5b3c9e066ae70e0d76ba8d595ffd9f3da0f347195e +DIST sqlite-doc-3510200.zip 11620595 BLAKE2B c799fc3285b61200ff4cbdbfd0cd126183d84fe71db9f1bcb59db93117deadd38f9a5ca719768ba0cd923daa2f68da759dc887cc18923fedb83b5cb40707e74b SHA512 7f6151f61748c6b9c081be5b52755f963a913009864e667cadd014744d14009f28e8ff61e940e971f9db69144106a51e87e88c25a12d5b157decc58178e63d59 DIST sqlite-src-3500400.zip 14393367 BLAKE2B e94589cb80ce64b5b8c0a2d28582b223a7cb9355424366fc3135c261ca33b4a93dcdeafb86252deeb9beca0ea94490ec6461ba5ab9e8f16b33e9628a85a19813 SHA512 003b03ddc4dd9618b48370e2aaf339c12c3384963f142f1f97110d6ed74f45aa7477477f53bc8b24b6d9f473b899ecb5d13889f52b8cd4fbdce2e6e5fa24502f DIST sqlite-src-3510100.zip 14200172 BLAKE2B a9e163d8a4fae948fc5eed4de41b2c4842b0642af555176bbc34df4e0affe8600d8f9f8e81e1a1868dbda2d09709c58f274dab2d5c6a2ac07dab4a5d06f816bc SHA512 43f4e50a2e0257bfb6c7694e7226d120ec122e3c8558ace547452d381f72a3484037e79d7e27db05ea6ad256012fd2f660b595591e127db4db7bf74301c9503f +DIST sqlite-src-3510200.zip 14202690 BLAKE2B d723603b6ba38a980442c730827c8ac3b6fef2a3e431ce9afefc3814c184873794e5005850a4e75ced56fab4a062a072ff9005b08febed1119fa5e2fda1de14e SHA512 89e1c76d6cae41f2ececb85af2e8bfd5cf60e8b9e3d8a48f98f3913513762bc8846f6b5c28e76cca12505ce670cdaf6ca95ecb2267b9527e47929fb928847605 diff --git a/sdk_container/src/third_party/portage-stable/dev-db/sqlite/sqlite-3.51.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-db/sqlite/sqlite-3.51.2.ebuild new file mode 100644 index 00000000000..06981e6d847 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-db/sqlite/sqlite-3.51.2.ebuild @@ -0,0 +1,444 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic multilib multilib-minimal toolchain-funcs + +DESCRIPTION="SQL database engine" +HOMEPAGE="https://sqlite.org/" + +# On version updates, make sure to read the forum (https://sqlite.org/forum/forum) +# for hints regarding test failures, backports, etc. +if [[ ${PV} == 9999 ]]; then + S="${WORKDIR}"/${PN} + PROPERTIES="live" +else + printf -v SRC_PV "%u%02u%02u%02u" $(ver_rs 1- " ") + DOC_PV="${SRC_PV}" + #printf -v DOC_PV "%u%02u%02u00" $(ver_rs 1-3 " ") + + SRC_URI=" + https://sqlite.org/2026/${PN}-src-${SRC_PV}.zip + doc? ( https://sqlite.org/2026/${PN}-doc-${DOC_PV}.zip ) + " + S="${WORKDIR}/${PN}-src-${SRC_PV}" + + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="public-domain" +SLOT="3" +IUSE="debug doc icu +readline secure-delete static-libs tcl test tools" +RESTRICT="!test? ( test )" + +RDEPEND=" + virtual/zlib:=[${MULTILIB_USEDEP}] + icu? ( dev-libs/icu:=[${MULTILIB_USEDEP}] ) + readline? ( sys-libs/readline:=[${MULTILIB_USEDEP}] ) + tcl? ( dev-lang/tcl:=[${MULTILIB_USEDEP}] ) + tools? ( dev-lang/tcl:= ) +" +DEPEND=" + ${RDEPEND} + test? ( >=dev-lang/tcl-8.6:0[${MULTILIB_USEDEP}] ) +" +if [[ ${PV} == 9999 ]]; then + BDEPEND+=" dev-vcs/fossil" +else + BDEPEND+=" app-arch/unzip" +fi + +PATCHES=( + "${FILESDIR}"/${PN}-3.47.2-hwtime.h-Don-t-use-rdtsc-on-i486.patch +) + +_fossil_fetch() { + local distdir="${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}" + local repo_id="${1}" + local repo_uri="${2}" + + local -x FOSSIL_HOME="${HOME}" + + mkdir -p "${T}/fossil/${repo_id}" || die + pushd "${T}/fossil/${repo_id}" > /dev/null || die + + if [[ -n "${EVCS_OFFLINE}" ]]; then + if [[ ! -f "${distdir}/fossil-src/${repo_id}/${repo_id}.fossil" ]]; then + die "Network activity disabled using EVCS_OFFLINE and clone of repository missing: \"${distdir}/fossil-src/${repo_id}/${repo_id}.fossil\"" + fi + else + if [[ ! -f "${distdir}/fossil-src/${repo_id}/${repo_id}.fossil" ]]; then + einfo fossil clone --verbose "${repo_uri}" "${repo_id}.fossil" + fossil clone --verbose "${repo_uri}" "${repo_id}.fossil" || die + echo + else + cp -p "${distdir}/fossil-src/${repo_id}/${repo_id}.fossil" . || die + einfo fossil pull --repository "${repo_id}.fossil" --verbose "${repo_uri}" + fossil pull --repository "${repo_id}.fossil" --verbose "${repo_uri}" || die + echo + fi + + ( + addwrite "${distdir}" + mkdir -p "${distdir}/fossil-src/${repo_id}" || die + cp -p "${repo_id}.fossil" "${distdir}/fossil-src/${repo_id}/${repo_id}.fossil" || die + ) + fi + + popd > /dev/null || die +} + +_fossil_checkout() { + local distdir="${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}" + local repo_id="${1}" + local branch_or_commit="${2}" + local target_directory="${3}" + + local -x FOSSIL_HOME="${HOME}" + + if [[ ! -f "${distdir}/fossil-src/${repo_id}/${repo_id}.fossil" ]]; then + die "Clone of repository missing: \"${distdir}/fossil-src/${repo_id}/${repo_id}.fossil\"" + fi + + if [[ ! -f "${T}/fossil/${repo_id}/${repo_id}.fossil" ]]; then + mkdir -p "${T}/fossil/${repo_id}" || die + cp -p "${distdir}/fossil-src/${repo_id}/${repo_id}.fossil" "${T}/fossil/${repo_id}" || die + fi + + mkdir "${target_directory}" || die + pushd "${target_directory}" > /dev/null || die + + einfo fossil open --quiet "${T}/fossil/${repo_id}/${repo_id}.fossil" "${branch_or_commit}" + fossil open --quiet "${T}/fossil/${repo_id}/${repo_id}.fossil" "${branch_or_commit}" || die + echo + + popd > /dev/null || die +} + +fossil_fetch() { + local repo_id="${1}" + local repo_uri="${2}" + local target_directory="${3}" + + local branch_or_commit="${EFOSSIL_COMMIT:-${EFOSSIL_BRANCH:-trunk}}" + + _fossil_fetch "${repo_id}" "${repo_uri}" + _fossil_checkout "${repo_id}" "${branch_or_commit}" "${target_directory}" +} + +src_unpack() { + if [[ ${PV} == 9999 ]]; then + fossil_fetch sqlite https://sqlite.org/src "${WORKDIR}/${PN}" + if use doc; then + fossil_fetch sqlite-doc https://sqlite.org/docsrc "${WORKDIR}/${PN}-doc" + fi + else + default + fi +} + +src_prepare() { + default + + multilib_copy_sources +} + +multilib_src_configure() { + local -x CPPFLAGS="${CPPFLAGS}" CFLAGS="${CFLAGS}" + local options=() + + options+=( + --enable-load-extension + --enable-threadsafe + ) + + # Support detection of misuse of SQLite API. + # https://sqlite.org/compile.html#enable_api_armor + append-cppflags -DSQLITE_ENABLE_API_ARMOR + + # Support bytecode and tables_used virtual tables. + # https://sqlite.org/compile.html#enable_bytecode_vtab + # https://sqlite.org/bytecodevtab.html + append-cppflags -DSQLITE_ENABLE_BYTECODE_VTAB + + # Support column metadata functions. + # https://sqlite.org/compile.html#enable_column_metadata + # https://sqlite.org/c3ref/column_database_name.html + append-cppflags -DSQLITE_ENABLE_COLUMN_METADATA + + # Support sqlite_dbpage virtual table. + # https://sqlite.org/compile.html#enable_dbpage_vtab + # https://sqlite.org/dbpage.html + append-cppflags -DSQLITE_ENABLE_DBPAGE_VTAB + + # Support dbstat virtual table. + # https://sqlite.org/compile.html#enable_dbstat_vtab + # https://sqlite.org/dbstat.html + append-cppflags -DSQLITE_ENABLE_DBSTAT_VTAB + + # Support sqlite3_serialize() and sqlite3_deserialize() functions. + # https://sqlite.org/compile.html#enable_deserialize + # https://sqlite.org/c3ref/serialize.html + # https://sqlite.org/c3ref/deserialize.html + append-cppflags -DSQLITE_ENABLE_DESERIALIZE + + # Support comments in output of EXPLAIN. + # https://sqlite.org/compile.html#enable_explain_comments + append-cppflags -DSQLITE_ENABLE_EXPLAIN_COMMENTS + + # Support Full-Text Search versions 3, 4 and 5. + # https://sqlite.org/compile.html#enable_fts3 + # https://sqlite.org/compile.html#enable_fts3_parenthesis + # https://sqlite.org/compile.html#enable_fts4 + # https://sqlite.org/compile.html#enable_fts5 + # https://sqlite.org/fts3.html + # https://sqlite.org/fts5.html + append-cppflags -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS + options+=( --enable-fts4 ) + options+=( --enable-fts5 ) + + # Support hidden columns. + append-cppflags -DSQLITE_ENABLE_HIDDEN_COLUMNS + + # Support memsys5 memory allocator. + # https://sqlite.org/compile.html#enable_memsys5 + # https://sqlite.org/malloc.html#memsys5 + options+=( --enable-memsys5 ) + + # Support sqlite3_normalized_sql() function. + # https://sqlite.org/c3ref/expanded_sql.html + append-cppflags -DSQLITE_ENABLE_NORMALIZE + + # Support sqlite_offset() function. + # https://sqlite.org/compile.html#enable_offset_sql_func + # https://sqlite.org/lang_corefunc.html#sqlite_offset + append-cppflags -DSQLITE_ENABLE_OFFSET_SQL_FUNC + + # Support pre-update hook functions. + # https://sqlite.org/compile.html#enable_preupdate_hook + # https://sqlite.org/c3ref/preupdate_count.html + append-cppflags -DSQLITE_ENABLE_PREUPDATE_HOOK + + # Support Resumable Bulk Update extension. + # https://sqlite.org/compile.html#enable_rbu + # https://sqlite.org/rbu.html + append-cppflags -DSQLITE_ENABLE_RBU + + # Support R*Trees. + # https://sqlite.org/compile.html#enable_rtree + # https://sqlite.org/compile.html#enable_geopoly + # https://sqlite.org/rtree.html + # https://sqlite.org/geopoly.html + options+=( --enable-rtree --enable-geopoly ) + + # Support Session extension. + # https://sqlite.org/compile.html#enable_session + # https://sqlite.org/sessionintro.html + options+=( --enable-session ) + + # Support scan status functions. + # https://sqlite.org/compile.html#enable_stmt_scanstatus + # https://sqlite.org/c3ref/stmt_scanstatus.html + # https://sqlite.org/c3ref/stmt_scanstatus_reset.html + append-cppflags -DSQLITE_ENABLE_STMT_SCANSTATUS + + # Support sqlite_stmt virtual table. + # https://sqlite.org/compile.html#enable_stmtvtab + # https://sqlite.org/stmt.html + append-cppflags -DSQLITE_ENABLE_STMTVTAB + + # Support unknown() function. + # https://sqlite.org/compile.html#enable_unknown_sql_function + append-cppflags -DSQLITE_ENABLE_UNKNOWN_SQL_FUNCTION + + # Support unlock notification. + # https://sqlite.org/compile.html#enable_unlock_notify + # https://sqlite.org/c3ref/unlock_notify.html + # https://sqlite.org/unlock_notify.html + append-cppflags -DSQLITE_ENABLE_UNLOCK_NOTIFY + + # Support LIMIT and ORDER BY clauses on DELETE and UPDATE statements. + # https://sqlite.org/compile.html#enable_update_delete_limit + # https://sqlite.org/lang_delete.html#optional_limit_and_order_by_clauses + # https://sqlite.org/lang_update.html#optional_limit_and_order_by_clauses + append-cppflags -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT + + # Support soundex() function. + # https://sqlite.org/compile.html#soundex + # https://sqlite.org/lang_corefunc.html#soundex + append-cppflags -DSQLITE_SOUNDEX + + # Support URI filenames. + # https://sqlite.org/compile.html#use_uri + # https://sqlite.org/uri.html + append-cppflags -DSQLITE_USE_URI + + options+=( $(use_enable debug) ) + + if use icu; then + # Support ICU extension. + # https://sqlite.org/compile.html#enable_icu + options+=( --with-icu-config ) + fi + + options+=( + --disable-editline + $(use_enable readline) + ) + + if use readline; then + options+=( --with-readline-inc="-I${ESYSROOT}/usr/include/readline" ) + fi + + if use secure-delete; then + # Enable secure_delete pragma by default. + # https://sqlite.org/compile.html#secure_delete + # https://sqlite.org/pragma.html#pragma_secure_delete + append-cppflags -DSQLITE_SECURE_DELETE + fi + + options+=( $(use_enable static-libs static) ) + + # tcl, test, tools USE flags. + if use tcl || use test || { use tools && multilib_is_native_abi; }; then + options+=( + --enable-tcl + --with-tcl="${ESYSROOT}/usr/$(get_libdir)" + ) + else + options+=( --disable-tcl ) + fi + + if [[ "${ABI}" == "x86" ]]; then + if $(tc-getCC) ${CPPFLAGS} ${CFLAGS} -E -P -dM - < /dev/null 2> /dev/null | grep -q "^#define __SSE__ 1$"; then + append-cflags -mfpmath=sse + else + append-cflags -ffloat-store + fi + fi + + if [[ ${CHOST} != *-darwin* ]] ; then + # set SONAME for the library + options+=( --soname=legacy ) + else + # to allow install_name_tool id change + append-ldflags -headerpad_max_install_names + fi + + # https://sqlite.org/forum/forumpost/4f4d06a9f6683bb9 + tc-export_build_env BUILD_CC + + CC_FOR_BUILD=${BUILD_CC} econf "${options[@]}" +} + +multilib_src_compile() { + emake HAVE_TCL="$(usex tcl 1 0)" TCLLIBDIR="${EPREFIX}/usr/$(get_libdir)/${P}" + + if use tools && multilib_is_native_abi; then + emake changeset dbdump dbhash dbtotxt index_usage rbu scrub showdb showjournal showshm showstat4 showwal sqldiff sqlite3_analyzer sqlite3_checker sqlite3_expert sqltclsh + fi + + if [[ ${PV} == 9999 ]] && use doc && multilib_is_native_abi; then + emake tclsqlite3.c + + local build_directory="$(pwd)" + build_directory="${build_directory##*/}" + + mkdir "${WORKDIR}/${PN}-doc-build" || die + pushd "${WORKDIR}/${PN}-doc-build" > /dev/null || die + + emake -f "../${PN}-doc/Makefile" -j1 SRC="../${PN}" BLD="../${build_directory}" DOC="../${PN}-doc" CC="$(tc-getBUILD_CC)" TCLINC="" TCLFLAGS="$($(tc-getBUILD_PKG_CONFIG) --libs tcl) -ldl -lm" base doc + rmdir doc/matrix{/*,} || die + + popd > /dev/null || die + fi +} + +multilib_src_test() { + if [[ "${EUID}" -eq 0 ]]; then + ewarn "Skipping tests due to root permissions" + return + fi + + local -x SQLITE_HISTORY="${T}/sqlite_history_${ABI}" + + # e_uri.test tries to open files in /. + # bug #839798 + local SANDBOX_PREDICT=${SANDBOX_PREDICT} + addpredict "/test.db" + addpredict "/ÿ.db" + + emake -Onone $(usex debug 'fulltest' 'test') +} + +multilib_src_install() { + emake DESTDIR="${D}" HAVE_TCL="$(usex tcl 1 "")" TCLLIBDIR="${EPREFIX}/usr/$(get_libdir)/${P}" install + + if [[ ${CHOST} == *-darwin* ]] ; then + # fix install_name, soname=legacy doesn't work for this (but + # breaks the build instead) + install_name_tool \ + -id "${EPREFIX}/usr/$(get_libdir)/libsqlite3$(get_libname 0)" \ + "${ED}/usr/$(get_libdir)/libsqlite3$(get_libname ${PV})" \ + || die "failed to fix install_name" + fi + + if use tools && multilib_is_native_abi; then + install_tool() { + if [[ -f ".libs/${1}" ]]; then + newbin ".libs/${1}" "${2}" + else + newbin "${1}" "${2}" + fi + } + + install_tool changeset sqlite3-changeset + install_tool dbdump sqlite3-db-dump + install_tool dbhash sqlite3-db-hash + install_tool dbtotxt sqlite3-db-to-txt + install_tool index_usage sqlite3-index-usage + install_tool rbu sqlite3-rbu + install_tool scrub sqlite3-scrub + install_tool showdb sqlite3-show-db + install_tool showjournal sqlite3-show-journal + install_tool showshm sqlite3-show-shm + install_tool showstat4 sqlite3-show-stat4 + install_tool showwal sqlite3-show-wal + install_tool sqldiff sqlite3-diff + install_tool sqlite3_analyzer sqlite3-analyzer + install_tool sqlite3_checker sqlite3-checker + install_tool sqlite3_expert sqlite3-expert + install_tool sqltclsh sqlite3-tclsh + + unset -f install_tool + fi +} + +multilib_src_install_all() { + find "${ED}" -name "*.la" -delete || die + + doman sqlite3.1 + + if use doc; then + if [[ ${PV} == 9999 ]]; then + pushd "${WORKDIR}/${PN}-doc-build/doc" > /dev/null || die + else + pushd "${WORKDIR}/${PN}-doc-${DOC_PV}" > /dev/null || die + fi + + find "(" -name "*.db" -o -name "*.txt" ")" -delete || die + if [[ ${PV} != 9999 ]]; then + rm search search.d/admin || die + rmdir search.d || die + find -name "*~" -delete || die + fi + + ( + docinto html + dodoc -r * + ) + + popd > /dev/null || die + fi +} From bfd9d7ae868dff7a1bae2d165b80a0b97d8188ff Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:03 +0000 Subject: [PATCH 046/291] dev-debug/gdb: Sync with Gentoo It's from Gentoo commit d13b85c350532840a2d84fc45ade8da2f3c865fa. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-debug/gdb/gdb-16.3.ebuild | 4 ++-- .../portage-stable/dev-debug/gdb/gdb-17.1.ebuild | 6 +++--- .../portage-stable/dev-debug/gdb/gdb-9999.ebuild | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-16.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-16.3.ebuild index 4c359466640..251ee127c64 100644 --- a/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-16.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-16.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -77,7 +77,7 @@ SRC_URI=" LICENSE="GPL-3+ LGPL-2.1+" SLOT="0" -IUSE="babeltrace cet debuginfod guile lzma multitarget nls +python rocm +server sim source-highlight test vanilla xml xxhash zstd" +IUSE="babeltrace cet +debuginfod guile lzma multitarget nls +python rocm +server sim source-highlight test vanilla xml xxhash zstd" if [[ -n ${REGULAR_RELEASE} ]] ; then KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos ~x64-solaris" fi diff --git a/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-17.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-17.1.ebuild index 35d537e2113..56ecbfb9e82 100644 --- a/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-17.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-17.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -77,9 +77,9 @@ SRC_URI=" LICENSE="GPL-3+ LGPL-2.1+" SLOT="0" -IUSE="babeltrace cet debuginfod guile lzma multitarget nls +python rocm +server sim source-highlight test vanilla +xml xxhash zstd" +IUSE="babeltrace cet +debuginfod guile lzma multitarget nls +python rocm +server sim source-highlight test vanilla +xml xxhash zstd" if [[ -n ${REGULAR_RELEASE} ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos ~x64-solaris" fi REQUIRED_USE=" guile? ( ${GUILE_REQUIRED_USE} ) diff --git a/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-9999.ebuild index 35d537e2113..8af8888c792 100644 --- a/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -77,7 +77,7 @@ SRC_URI=" LICENSE="GPL-3+ LGPL-2.1+" SLOT="0" -IUSE="babeltrace cet debuginfod guile lzma multitarget nls +python rocm +server sim source-highlight test vanilla +xml xxhash zstd" +IUSE="babeltrace cet +debuginfod guile lzma multitarget nls +python rocm +server sim source-highlight test vanilla +xml xxhash zstd" if [[ -n ${REGULAR_RELEASE} ]] ; then KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris" fi From 79bd6a4921fd32f388c60a01b599599035402d63 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:03 +0000 Subject: [PATCH 047/291] dev-debug/strace: Sync with Gentoo It's from Gentoo commit 41fe5afc9953ae9d497dd936f40f9a9ab6c26f07. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-debug/strace/Manifest | 2 + .../dev-debug/strace/strace-6.18.ebuild | 4 +- .../dev-debug/strace/strace-6.19.ebuild | 120 ++++++++++++++++++ 3 files changed, 124 insertions(+), 2 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-debug/strace/strace-6.19.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-debug/strace/Manifest b/sdk_container/src/third_party/portage-stable/dev-debug/strace/Manifest index d0a98df55ee..e1f6a2731d6 100644 --- a/sdk_container/src/third_party/portage-stable/dev-debug/strace/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-debug/strace/Manifest @@ -4,3 +4,5 @@ DIST strace-6.17.tar.xz 2682684 BLAKE2B 273bc58a555dda92e34fa242ce9072214d110797 DIST strace-6.17.tar.xz.asc 801 BLAKE2B 69883e1a1bd1bebfd1e800d5a921cd1dfe7d86cf0de6744c696f42d6fafce823f0b757e4be00ff2c4efb7882b2b942c8c931bd2d53f869e71cc7ddc2895dbc47 SHA512 d025ae6ebbfed219b2629b2c25713f04de3774bbabe8ebea3e070f0df645cceeeb58943f93bb2ca542e6b73fc580be090ee8b2501e65778de249ef2a4f69a90f DIST strace-6.18.tar.xz 2722572 BLAKE2B ba9798496102c2c1d2310d9dea746d9517d58c2e9ad7e630beee294806d24a617c8a8950d0e118d6190b61ab17f5d8020d02b0a56c4740df62104dd2906206c0 SHA512 421b75971cb04f5e3b09a1a12bd14fff9c8b315ca394f47d299937fe82f828d6c7231981797e12eab4a95b1c96e359224756c65067c8d9aec36ef18d06cfbc85 DIST strace-6.18.tar.xz.asc 833 BLAKE2B 86903fae348250d614aa7c499f8c262810028000bfca86e3f632d0f84332c3402c86d2792e5d5711101b2f5f8f796e07893e5ea33aa80d61e796222bc00f8e4d SHA512 d887a97f7df4c2cd8c06dea8de502c8637f80c9717cffc6d067169534ba607002ffe9ec5e4927ef95b6f5226cbd75e6b9ab7b8405b744e0d7eb3ee8e5e39afaa +DIST strace-6.19.tar.xz 2743524 BLAKE2B f46ff7788bfebef06af467cac1554fa2bfdb44397f635f04bd039ad6cf8b2339eece99a4d9cbfa2c747eb243a750e6efa446d550a83a2746c178e6a4857270db SHA512 d8088eef80f8007e0cae0e0a342cd171447cade8e2433f55b2592b33c704e4dcb5016c00104e536e858cf7d5ea5d2e4320073a2691b0bfb1a7ff87d932fac197 +DIST strace-6.19.tar.xz.asc 833 BLAKE2B e79d60b763e813d09cf1062b62edaa3be8c4b012d2d6b5c80b4b3de6fa97fd5d47ab6ff25ab232534d3dafddd709e63d7ca2eb6a140b4e95b48e753e66e23834 SHA512 953bd7819692d39f3fc71cc98600c4fdf3aa1ea4ba847a0d6d66cf5f83825e2f5e3424b172d62b91505ee80d85a732f226356692f02cc25f4c6905d0a6ee5990 diff --git a/sdk_container/src/third_party/portage-stable/dev-debug/strace/strace-6.18.ebuild b/sdk_container/src/third_party/portage-stable/dev-debug/strace/strace-6.18.ebuild index 1f92cf7fe7e..559d09c1bc4 100644 --- a/sdk_container/src/third_party/portage-stable/dev-debug/strace/strace-6.18.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-debug/strace/strace-6.18.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -16,7 +16,7 @@ else https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz verify-sig? ( https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz.asc ) " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" fi VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/strace.asc diff --git a/sdk_container/src/third_party/portage-stable/dev-debug/strace/strace-6.19.ebuild b/sdk_container/src/third_party/portage-stable/dev-debug/strace/strace-6.19.ebuild new file mode 100644 index 00000000000..36d8df9b14c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-debug/strace/strace-6.19.ebuild @@ -0,0 +1,120 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools edo flag-o-matic toolchain-funcs verify-sig + +DESCRIPTION="Useful diagnostic, instructional, and debugging tool" +HOMEPAGE="https://strace.io/" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/strace/strace.git" + inherit git-r3 +else + SRC_URI=" + https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz + verify-sig? ( https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz.asc ) + " + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/strace.asc + +LICENSE="LGPL-2.1+ test? ( GPL-2+ )" +SLOT="0" +IUSE="aio perl selinux static test unwind elfutils" +RESTRICT="!test? ( test )" +REQUIRED_USE="?? ( unwind elfutils )" + +BDEPEND=" + virtual/pkgconfig + verify-sig? ( >=sec-keys/openpgp-keys-strace-20251130 ) +" +LIB_DEPEND=" + unwind? ( sys-libs/libunwind[static-libs(+)] ) + elfutils? ( dev-libs/elfutils[static-libs(+)] ) + selinux? ( sys-libs/libselinux[static-libs(+)] ) +" +# strace only uses the header from libaio to decode structs +DEPEND=" + static? ( ${LIB_DEPEND} ) + aio? ( >=dev-libs/libaio-0.3.106 ) +" +RDEPEND=" + !static? ( ${LIB_DEPEND//\[static-libs(+)]} ) + perl? ( dev-lang/perl ) +" + +PATCHES=( + "${FILESDIR}/${PN}-6.5-static.patch" +) + +src_prepare() { + default + + if [[ ! -e configure ]] ; then + # git generation + sed /autoreconf/d -i bootstrap || die + edo ./bootstrap + [[ ! -e CREDITS ]] && cp CREDITS{.in,} + fi + + eautoreconf + + # Stub out the -k test since it's known to be flaky. bug #545812 + sed -i '1iexit 77' tests*/strace-k.test || die +} + +src_configure() { + # Set up the default build settings, and then use the names strace expects. + tc-export_build_env BUILD_{CC,CPP} + local v bv + for v in CC CPP {C,CPP,LD}FLAGS ; do + bv="BUILD_${v}" + export "${v}_FOR_BUILD=${!bv}" + done + + filter-lfs-flags # configure handles this sanely + + export ac_cv_header_libaio_h=$(usex aio) + use elibc_musl && export ac_cv_header_stdc=no + + local myeconfargs=( + --disable-gcc-Werror + + # Don't require mpers support on non-multilib systems. #649560 + --enable-mpers=check + + # We don't want to pin to exact linux-headers versions (bug #950309) + --enable-bundled=yes + + $(use_enable static) + $(use_with unwind libunwind) + $(use_with elfutils libdw) + $(use_with selinux libselinux) + ) + + econf "${myeconfargs[@]}" +} + +src_test() { + if has usersandbox ${FEATURES} ; then + # bug #643044 + ewarn "Test suite is known to fail with FEATURES=usersandbox -- skipping ..." + return 0 + fi + + default +} + +src_install() { + default + + if use perl ; then + exeinto /usr/bin + doexe src/strace-graph + fi + + dodoc CREDITS +} From 885fbdb25eb7418b0a27cb7f8207d4a56a07674e Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:03 +0000 Subject: [PATCH 048/291] dev-embedded/u-boot-tools: Sync with Gentoo It's from Gentoo commit a25550068e83334990cbde591af4e17f0d9ffc48. Signed-off-by: Flatcar Buildbot --- .../u-boot-tools-2025.01-no-bundled-dtc.patch | 27 +++++ ....ebuild => u-boot-tools-2024.01-r2.ebuild} | 3 +- .../u-boot-tools-2024.01-r3.ebuild | 112 ++++++++++++++++++ ....ebuild => u-boot-tools-2025.01-r2.ebuild} | 11 +- .../u-boot-tools-2025.01-r3.ebuild | 111 +++++++++++++++++ 5 files changed, 261 insertions(+), 3 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/files/u-boot-tools-2025.01-no-bundled-dtc.patch rename sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/{u-boot-tools-2024.01-r1.ebuild => u-boot-tools-2024.01-r2.ebuild} (96%) create mode 100644 sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2024.01-r3.ebuild rename sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/{u-boot-tools-2025.01.ebuild => u-boot-tools-2025.01-r2.ebuild} (89%) create mode 100644 sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2025.01-r3.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/files/u-boot-tools-2025.01-no-bundled-dtc.patch b/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/files/u-boot-tools-2025.01-no-bundled-dtc.patch new file mode 100644 index 00000000000..33cd6731ee1 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/files/u-boot-tools-2025.01-no-bundled-dtc.patch @@ -0,0 +1,27 @@ +Don't attempt to build the bundled dtc as we're not going to use it, +and it would require dtc[python] too anyway. +--- a/Makefile ++++ b/Makefile +@@ -594,7 +594,7 @@ else + # Carefully list dependencies so we do not try to build scripts twice + # in parallel + PHONY += scripts +-scripts: scripts_basic scripts_dtc include/config/auto.conf ++scripts: scripts_basic include/config/auto.conf + $(Q)$(MAKE) $(build)=$(@) + + ifeq ($(dot-config),1) +@@ -2057,11 +2057,11 @@ endif + + ifneq ($(dtstree),) + +-%.dtb: prepare3 scripts_dtc ++%.dtb: prepare3 + $(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@ + + PHONY += dtbs dtbs_install +-dtbs: prepare3 scripts_dtc ++dtbs: prepare3 + $(Q)$(MAKE) $(build)=$(dtstree) + + dtbs_install: diff --git a/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2024.01-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2024.01-r2.ebuild similarity index 96% rename from sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2024.01-r1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2024.01-r2.ebuild index 1e13270fe5a..ef729c46f5e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2024.01-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2024.01-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -23,6 +23,7 @@ IUSE="envtools" RDEPEND=" dev-libs/openssl:= net-libs/gnutls:= + sys-apps/dtc[python] sys-apps/util-linux:= " DEPEND="${RDEPEND}" diff --git a/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2024.01-r3.ebuild b/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2024.01-r3.ebuild new file mode 100644 index 00000000000..d58691bd9cf --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2024.01-r3.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +MY_P="u-boot-${PV/_/-}" +DESCRIPTION="utilities for working with Das U-Boot" +HOMEPAGE="https://www.denx.de/wiki/U-Boot/WebHome" +SRC_URI=" + https://ftp.denx.de/pub/u-boot/${MY_P}.tar.bz2 + https://github.com/u-boot/u-boot/commit/88b9b9c44c859bdd9bb227e2fdbc4cbf686c3343.patch + -> u-boot-tools-2024.01-fix-invalid-escape-sequence.patch +" +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" +IUSE="envtools" + +RDEPEND=" + dev-libs/openssl:= + net-libs/gnutls:= + sys-apps/dtc[python] + sys-apps/util-linux:= +" +DEPEND="${RDEPEND}" +BDEPEND=" + dev-lang/swig + app-alternatives/yacc + app-alternatives/lex + virtual/pkgconfig +" + +PATCHES=( + # https://github.com/u-boot/u-boot/pull/489 + "${DISTDIR}"/u-boot-tools-2024.01-fix-invalid-escape-sequence.patch +) + +src_prepare() { + default + sed -i 's:\bpkg-config\b:${PKG_CONFIG}:g' \ + scripts/kconfig/{g,m,n,q}conf-cfg.sh \ + scripts/kconfig/Makefile \ + tools/Makefile || die + sed -i -e 's/cross_tools: tools/& envtools /' "${S}/Makefile" +} + +src_configure() { + tc-export AR BUILD_CC CC PKG_CONFIG + tc-export_build_env +} + +src_compile() { + # Unset a few KBUILD variables. Bug #540476 + unset KBUILD_OUTPUT KBUILD_SRC + + if [[ ${CBUILD} != ${CHOST} ]] ; then + local myemakeargs=( + CROSS_COMPILE="${CHOST}"- + CROSS_BUILD=y + ) + local maketarget=$(usex envtools envtools cross_tools) + else + local myemakeargs=( + AR="${AR}" + CC="${CC}" + HOSTCC="${BUILD_CC}" + HOSTCFLAGS="${CFLAGS} ${CPPFLAGS}"' $(HOSTCPPFLAGS)' + HOSTLDFLAGS="${LDFLAGS}" + ) + local maketarget=$(usex envtools envtools tools-all) + fi + + myemakeargs+=( + V=1 + ) + + emake "${myemakeargs[@]}" tools-only_defconfig + + emake "${myemakeargs[@]}" \ + NO_SDL=1 \ + HOSTSTRIP=: \ + STRIP=: \ + CONFIG_ENV_OVERWRITE=y \ + "${maketarget}" +} + +src_test() { :; } + +src_install() { + cd tools || die + + if ! use envtools; then + dobin dumpimage fdtgrep img2srec mkeficapsule mkenvimage mkimage + fi + + if [[ ${CBUILD} == ${CHOST} ]]; then + dobin gen_eth_addr + fi + + dobin env/fw_printenv + + dosym fw_printenv /usr/bin/fw_setenv + + insinto /etc + doins env/fw_env.config + + doman ../doc/mkimage.1 +} diff --git a/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2025.01.ebuild b/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2025.01-r2.ebuild similarity index 89% rename from sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2025.01.ebuild rename to sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2025.01-r2.ebuild index 004feee18e7..50bb0d3033e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2025.01.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2025.01-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -21,6 +21,7 @@ IUSE="envtools" RDEPEND=" dev-libs/openssl:= net-libs/gnutls:= + >=sys-apps/dtc-1.4.6 sys-apps/util-linux:= " DEPEND="${RDEPEND}" @@ -31,6 +32,10 @@ BDEPEND=" virtual/pkgconfig " +PATCHES=( + "${FILESDIR}"/${PN}-2025.01-no-bundled-dtc.patch +) + src_prepare() { default sed -i 's:\bpkg-config\b:${PKG_CONFIG}:g' \ @@ -55,10 +60,12 @@ src_compile() { HOSTCC="${BUILD_CC}" HOSTCFLAGS="${BUILD_CFLAGS} ${BUILD_CPPFLAGS}"' $(HOSTCPPFLAGS)' HOSTLDFLAGS="${BUILD_LDFLAGS}" + DTC="dtc" + # Provided by sys-apps/dtc[python] + NO_PYTHON=1 ) emake "${myemakeargs[@]}" tools-only_defconfig - emake "${myemakeargs[@]}" \ NO_SDL=1 \ HOSTSTRIP=: \ diff --git a/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2025.01-r3.ebuild b/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2025.01-r3.ebuild new file mode 100644 index 00000000000..6f739854c3a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-embedded/u-boot-tools/u-boot-tools-2025.01-r3.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +MY_P="u-boot-${PV/_/-}" +DESCRIPTION="utilities for working with Das U-Boot" +HOMEPAGE="https://www.denx.de/wiki/U-Boot/WebHome" +SRC_URI=" + https://ftp.denx.de/pub/u-boot/${MY_P}.tar.bz2 +" +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" +IUSE="envtools" + +RDEPEND=" + dev-libs/openssl:= + net-libs/gnutls:= + >=sys-apps/dtc-1.4.6 + sys-apps/util-linux:= +" +DEPEND="${RDEPEND}" +BDEPEND=" + dev-lang/swig + app-alternatives/yacc + app-alternatives/lex + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-2025.01-no-bundled-dtc.patch +) + +src_prepare() { + default + sed -i 's:\bpkg-config\b:${PKG_CONFIG}:g' \ + scripts/kconfig/{g,m,n,q}conf-cfg.sh \ + scripts/kconfig/Makefile \ + tools/Makefile || die + sed -i -e 's/cross_tools: tools/& envtools /' "${S}/Makefile" +} + +src_configure() { + tc-export AR BUILD_CC CC PKG_CONFIG + tc-export_build_env +} + +src_compile() { + # Unset a few KBUILD variables. Bug #540476 + unset KBUILD_OUTPUT KBUILD_SRC + + if [[ ${CBUILD} != ${CHOST} ]] ; then + local myemakeargs=( + CROSS_COMPILE="${CHOST}"- + CROSS_BUILD=y + ) + local maketarget=$(usex envtools envtools cross_tools) + else + local myemakeargs=( + AR="${AR}" + CC="${CC}" + HOSTCC="${BUILD_CC}" + HOSTCFLAGS="${CFLAGS} ${CPPFLAGS}"' $(HOSTCPPFLAGS)' + HOSTLDFLAGS="${LDFLAGS}" + ) + local maketarget=$(usex envtools envtools tools-all) + fi + + myemakeargs+=( + V=1 + DTC="dtc" + # Provided by sys-apps/dtc[python] + NO_PYTHON=1 + ) + + emake "${myemakeargs[@]}" tools-only_defconfig + emake "${myemakeargs[@]}" \ + NO_SDL=1 \ + HOSTSTRIP=: \ + STRIP=: \ + CONFIG_ENV_OVERWRITE=y \ + "${maketarget}" +} + +src_test() { :; } + +src_install() { + cd tools || die + + if ! use envtools; then + dobin dumpimage fdtgrep img2srec mkeficapsule mkenvimage mkimage + fi + + if [[ ${CBUILD} == ${CHOST} ]]; then + dobin gen_eth_addr + fi + + dobin env/fw_printenv + + dosym fw_printenv /usr/bin/fw_setenv + + insinto /etc + doins env/fw_env.config + + doman ../doc/mkimage.1 +} From ae931521a4ae026a18542daefed68f7f8e4d75b6 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:05 +0000 Subject: [PATCH 049/291] dev-lang/go: Sync with Gentoo It's from Gentoo commit c77b9c1188474c82c8ec6aeed59d8a3008fd2d6b. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-lang/go/Manifest | 2 + ...go-1.24.11.ebuild => go-1.24.11-r1.ebuild} | 6 +- .../dev-lang/go/go-1.24.12-r1.ebuild | 133 +++++++++++++++++ .../{go-1.25.5.ebuild => go-1.25.5-r1.ebuild} | 6 +- .../dev-lang/go/go-1.25.6-r1.ebuild | 135 ++++++++++++++++++ .../portage-stable/dev-lang/go/go-9999.ebuild | 6 +- 6 files changed, 285 insertions(+), 3 deletions(-) rename sdk_container/src/third_party/portage-stable/dev-lang/go/{go-1.24.11.ebuild => go-1.24.11-r1.ebuild} (94%) create mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.24.12-r1.ebuild rename sdk_container/src/third_party/portage-stable/dev-lang/go/{go-1.25.5.ebuild => go-1.25.5-r1.ebuild} (95%) create mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.25.6-r1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/go/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/go/Manifest index d9f56e3f467..deec5096bbe 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/go/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-lang/go/Manifest @@ -1,2 +1,4 @@ DIST go1.24.11.src.tar.gz 30801851 BLAKE2B 04463c4a238b0303df88ad2d7670bdb208deced4f38c9bfc2b98ec04cc2e182a03fcf029334481507efa766b17e81c92bac9d63fc93948f94ee2b2c8adff40b4 SHA512 9344039d231e50b63f52acbdd6cf2f483a4052d95b5fcc3e8a6d8fde80f0195f66ac5588302809ff0425de4d7c6b428ae842ec33b468c7020873acedbdea16ef +DIST go1.24.12.src.tar.gz 30803950 BLAKE2B b3f7d2f1392d3337e6645c4fa53e2e53c4258aa9ecf12b38a10305d172f0c2172d98d273dd030c17f82df17fa3cd5ec464986836261ffdb3324e8f97b2f2b437 SHA512 2de51c56f7ca04003b16d0fecc4cb35a3c5a42bd54f4da1f1e49d45b702d7a872057756d389f2283b4f7283fb33f0618465e231a6333b7cb6cfff98f67b2454e DIST go1.25.5.src.tar.gz 31983405 BLAKE2B b6349931e6174b1b11c00360fb7a3040a80f3d3d463894b29393a464548398bad37be685923c725eb8a3fb71d42849254319102c833418f81eca477f52579222 SHA512 97ec368521253bce610e1e3a6f10460f4a38eba440289553a40ab27afcdf2bb9b426d150ffaa3be8db50e84a00a4eb723a631ebc4f39168bc133bf7b2f1ccf66 +DIST go1.25.6.src.tar.gz 31987986 BLAKE2B f9937808018f058d0f50fd0c0c1fa8f5a0f25d983a477e158e310d46dea30e33f3e0ea3d97ab550b6e5ed8d9f3b5354e76923b539ddb16a081f42e24fd3e4cfc SHA512 214b2d82b5322d544e80d7202db9169c24e5f097338f2d0e6d34189bd5bde9e7c1656f06611062c78a156181f03956181971b346172fc14617726bfece5e61e9 diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.24.11.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.24.11-r1.ebuild similarity index 94% rename from sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.24.11.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.24.11-r1.ebuild index 8e2a906df10..9c64792aecd 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.24.11.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.24.11-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -49,6 +49,10 @@ QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*" QA_PREBUILT="*" QA_PRESTRIPPED="*.syso" +# The Go data race detector (go test -race) requires an unstripped Go toolchain. +# https://bugs.gentoo.org/961618 +RESTRICT="strip" + DOCS=( CONTRIBUTING.md PATENTS diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.24.12-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.24.12-r1.ebuild new file mode 100644 index 00000000000..ba024c432e0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.24.12-r1.ebuild @@ -0,0 +1,133 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +export CBUILD=${CBUILD:-${CHOST}} +export CTARGET=${CTARGET:-${CHOST}} + +# See "Bootstrap" in release notes +GO_BOOTSTRAP_MIN=1.22.12 +MY_PV=${PV/_/} + +inherit go-env toolchain-funcs + +case ${PV} in +*9999*) + EGIT_REPO_URI="https://github.com/golang/go.git" + inherit git-r3 + ;; +*) + SRC_URI="https://go.dev/dl/go${MY_PV}.src.tar.gz " + S="${WORKDIR}"/go + KEYWORDS="-* ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~s390 ~x86 ~x64-macos ~x64-solaris" + ;; +esac + +DESCRIPTION="A concurrent garbage collected and typesafe programming language" +HOMEPAGE="https://go.dev" + +LICENSE="BSD" +SLOT="0/${PV}" +IUSE="cpu_flags_x86_sse2" + +BDEPEND="|| ( + >=dev-lang/go-${GO_BOOTSTRAP_MIN} + >=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN} )" + +# the *.syso files have writable/executable stacks +QA_EXECSTACK='*.syso' + +# Do not complain about CFLAGS, etc, since Go doesn't use them. +QA_FLAGS_IGNORED='.*' + +# The tools in /usr/lib/go should not cause the multilib-strict check to fail. +QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*" + +# This package triggers "unrecognized elf file(s)" notices on riscv. +# https://bugs.gentoo.org/794046 +QA_PREBUILT="*" +QA_PRESTRIPPED="*.syso" + +# The Go data race detector (go test -race) requires an unstripped Go toolchain. +# https://bugs.gentoo.org/961618 +RESTRICT="strip" + +DOCS=( + CONTRIBUTING.md + PATENTS + README.md + SECURITY.md +) + +go_tuple() { + echo "$(go-env_goos $@)_$(go-env_goarch $@)" +} + +go_cross_compile() { + [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]] +} + +PATCHES=( + "${FILESDIR}"/go-1.24-skip-gdb-tests.patch + "${FILESDIR}"/go-1.24-dont-force-gold-arm.patch + "${FILESDIR}"/go-never-download-newer-toolchains.patch +) + +src_compile() { + if has_version -b ">=dev-lang/go-${GO_BOOTSTRAP_MIN}"; then + export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go" + elif has_version -b ">=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN}"; then + export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap" + else + eerror "Go cannot be built without go or go-bootstrap installed" + die "Should not be here, please report a bug" + fi + + # Go's build script does not use BUILD/HOST/TARGET consistently. :( + export GOHOSTARCH=$(go-env_goarch ${CBUILD}) + export GOHOSTOS=$(go-env_goos ${CBUILD}) + export CC=$(tc-getBUILD_CC) + + export GOARCH=$(go-env_goarch) + export GOOS=$(go-env_goos) + export CC_FOR_TARGET=$(tc-getCC) + export CXX_FOR_TARGET=$(tc-getCXX) + use arm && export GOARM=$(go-env_goarm) + use x86 && export GO386=$(go-env_go386) + + cd src + bash -x ./make.bash || die "build failed" +} + +src_test() { + go_cross_compile && return 0 + cd src + PATH="${GOBIN}:${PATH}" \ + ./run.bash -no-rebuild -k || die "tests failed" +} + +src_install() { + dodir /usr/lib/go + # The use of cp is deliberate in order to retain permissions + cp -R . "${ED}"/usr/lib/go + einstalldocs + + # testdata directories are not needed on the installed system + # The other files we remove are installed by einstalldocs + rm -r $(find "${ED}"/usr/lib/go -iname testdata -type d -print) || die + rm "${ED}"/usr/lib/go/{CONTRIBUTING.md,PATENTS,README.md} || die + rm "${ED}"/usr/lib/go/{SECURITY.md,codereview.cfg,LICENSE} || die + + local bin_path + if go_cross_compile; then + bin_path="bin/$(go_tuple)" + else + bin_path=bin + fi + local f x + for x in ${bin_path}/*; do + f=${x##*/} + dosym ../lib/go/${bin_path}/${f} /usr/bin/${f} + done +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.25.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.25.5-r1.ebuild similarity index 95% rename from sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.25.5.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.25.5-r1.ebuild index 21b21ffb02b..208dee89dbe 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.25.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.25.5-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -49,6 +49,10 @@ QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*" QA_PREBUILT="*" QA_PRESTRIPPED="*.syso" +# The Go data race detector (go test -race) requires an unstripped Go toolchain. +# https://bugs.gentoo.org/961618 +RESTRICT="strip" + DOCS=( CONTRIBUTING.md PATENTS diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.25.6-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.25.6-r1.ebuild new file mode 100644 index 00000000000..8655037fb5e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.25.6-r1.ebuild @@ -0,0 +1,135 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +export CBUILD=${CBUILD:-${CHOST}} +export CTARGET=${CTARGET:-${CHOST}} + +# See "Bootstrap" in release notes +GO_BOOTSTRAP_MIN=1.22.12 +MY_PV=${PV/_/} + +inherit go-env toolchain-funcs + +case ${PV} in +*9999*) + EGIT_REPO_URI="https://github.com/golang/go.git" + inherit git-r3 + ;; +*) + SRC_URI="https://go.dev/dl/go${MY_PV}.src.tar.gz " + S="${WORKDIR}"/go + KEYWORDS="-* ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~s390 ~x86 ~x64-macos ~x64-solaris" + ;; +esac + +DESCRIPTION="A concurrent garbage collected and typesafe programming language" +HOMEPAGE="https://go.dev" + +LICENSE="BSD" +SLOT="0/${PV}" +IUSE="cpu_flags_x86_sse2" + +BDEPEND="|| ( + >=dev-lang/go-${GO_BOOTSTRAP_MIN} + >=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN} )" + +# the *.syso files have writable/executable stacks +QA_EXECSTACK='*.syso' + +# Do not complain about CFLAGS, etc, since Go doesn't use them. +QA_FLAGS_IGNORED='.*' + +# The tools in /usr/lib/go should not cause the multilib-strict check to fail. +QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*" + +# This package triggers "unrecognized elf file(s)" notices on riscv. +# https://bugs.gentoo.org/794046 +QA_PREBUILT="*" +QA_PRESTRIPPED="*.syso" + +# The Go data race detector (go test -race) requires an unstripped Go toolchain. +# https://bugs.gentoo.org/961618 +RESTRICT="strip" + +DOCS=( + CONTRIBUTING.md + PATENTS + README.md + SECURITY.md +) + +go_tuple() { + echo "$(go-env_goos $@)_$(go-env_goarch $@)" +} + +go_cross_compile() { + [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]] +} + +PATCHES=( + "${FILESDIR}"/go-1.24-skip-gdb-tests.patch + "${FILESDIR}"/go-1.24-dont-force-gold-arm.patch + "${FILESDIR}"/go-1.25-no-dwarf5.patch + "${FILESDIR}"/go-1.25-strip-top-level-const.patch + "${FILESDIR}"/go-never-download-newer-toolchains.patch +) + +src_compile() { + if has_version -b ">=dev-lang/go-${GO_BOOTSTRAP_MIN}"; then + export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go" + elif has_version -b ">=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN}"; then + export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap" + else + eerror "Go cannot be built without go or go-bootstrap installed" + die "Should not be here, please report a bug" + fi + + # Go's build script does not use BUILD/HOST/TARGET consistently. :( + export GOHOSTARCH=$(go-env_goarch ${CBUILD}) + export GOHOSTOS=$(go-env_goos ${CBUILD}) + export CC=$(tc-getBUILD_CC) + + export GOARCH=$(go-env_goarch) + export GOOS=$(go-env_goos) + export CC_FOR_TARGET=$(tc-getCC) + export CXX_FOR_TARGET=$(tc-getCXX) + use arm && export GOARM=$(go-env_goarm) + use x86 && export GO386=$(go-env_go386) + + cd src + bash -x ./make.bash || die "build failed" +} + +src_test() { + go_cross_compile && return 0 + cd src + PATH="${GOBIN}:${PATH}" \ + ./run.bash -no-rebuild -k || die "tests failed" +} + +src_install() { + dodir /usr/lib/go + # The use of cp is deliberate in order to retain permissions + cp -R . "${ED}"/usr/lib/go + einstalldocs + + # testdata directories are not needed on the installed system + # The other files we remove are installed by einstalldocs + rm -r $(find "${ED}"/usr/lib/go -iname testdata -type d -print) || die + rm "${ED}"/usr/lib/go/{CONTRIBUTING.md,PATENTS,README.md} || die + rm "${ED}"/usr/lib/go/{SECURITY.md,codereview.cfg,LICENSE} || die + + local bin_path + if go_cross_compile; then + bin_path="bin/$(go_tuple)" + else + bin_path=bin + fi + local f x + for x in ${bin_path}/*; do + f=${x##*/} + dosym ../lib/go/${bin_path}/${f} /usr/bin/${f} + done +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/go/go-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-9999.ebuild index 8931e941a39..8a70623142f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/go/go-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -49,6 +49,10 @@ QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*" QA_PREBUILT="*" QA_PRESTRIPPED="*.syso" +# The Go data race detector (go test -race) requires an unstripped Go toolchain. +# https://bugs.gentoo.org/961618 +RESTRICT="strip" + DOCS=( CONTRIBUTING.md PATENTS From 5b7b2dd8f89ce22d814688b5bbd8175ad0d0c9bc Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:06 +0000 Subject: [PATCH 050/291] dev-lang/python: Sync with Gentoo It's from Gentoo commit db7e79e5ac0391047752f5015c94d6d15fb3a22d. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-lang/python/Manifest | 53 +- ...3.13.10.ebuild => python-0.3.13.12.ebuild} | 2 +- .../dev-lang/python/python-0.3.13.5_p1.ebuild | 611 ----------------- .../dev-lang/python/python-0.3.13.7.ebuild | 611 ----------------- .../dev-lang/python/python-0.3.13.8.ebuild | 611 ----------------- .../dev-lang/python/python-0.3.14.0.ebuild | 635 ----------------- ...0.3.14.1.ebuild => python-0.3.14.3.ebuild} | 6 +- .../python/python-0.3.15.0_alpha1.ebuild | 598 ---------------- ...2.ebuild => python-0.3.15.0_alpha5.ebuild} | 2 +- ...3.ebuild => python-0.3.15.0_alpha6.ebuild} | 2 +- .../dev-lang/python/python-3.10.18_p2.ebuild | 572 ---------------- .../dev-lang/python/python-3.11.13_p1.ebuild | 619 ----------------- .../dev-lang/python/python-3.12.11_p1.ebuild | 602 ---------------- .../dev-lang/python/python-3.13.11.ebuild | 4 +- ...n-3.13.10.ebuild => python-3.13.12.ebuild} | 2 +- .../dev-lang/python/python-3.13.5_p1.ebuild | 616 ----------------- .../dev-lang/python/python-3.13.7.ebuild | 616 ----------------- .../dev-lang/python/python-3.13.8.ebuild | 616 ----------------- .../dev-lang/python/python-3.14.0.ebuild | 646 ------------------ .../dev-lang/python/python-3.14.2.ebuild | 4 +- ...hon-3.14.1.ebuild => python-3.14.3.ebuild} | 6 +- .../python/python-3.15.0_alpha1.ebuild | 603 ---------------- ...ha2.ebuild => python-3.15.0_alpha5.ebuild} | 2 +- ...ha3.ebuild => python-3.15.0_alpha6.ebuild} | 2 +- .../dev-lang/python/python-3.9.23_p2.ebuild | 566 --------------- .../dev-lang/python/python-3.9.24.ebuild | 566 --------------- .../dev-lang/python/python-3.9.9999.ebuild | 550 --------------- 27 files changed, 28 insertions(+), 9695 deletions(-) rename sdk_container/src/third_party/portage-stable/dev-lang/python/{python-0.3.13.10.ebuild => python-0.3.13.12.ebuild} (99%) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.5_p1.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.7.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.8.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0.ebuild rename sdk_container/src/third_party/portage-stable/dev-lang/python/{python-0.3.14.1.ebuild => python-0.3.14.3.ebuild} (99%) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.0_alpha1.ebuild rename sdk_container/src/third_party/portage-stable/dev-lang/python/{python-0.3.15.0_alpha2.ebuild => python-0.3.15.0_alpha5.ebuild} (99%) rename sdk_container/src/third_party/portage-stable/dev-lang/python/{python-0.3.15.0_alpha3.ebuild => python-0.3.15.0_alpha6.ebuild} (99%) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18_p2.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13_p1.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.11_p1.ebuild rename sdk_container/src/third_party/portage-stable/dev-lang/python/{python-3.13.10.ebuild => python-3.13.12.ebuild} (99%) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.5_p1.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.7.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.8.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0.ebuild rename sdk_container/src/third_party/portage-stable/dev-lang/python/{python-3.14.1.ebuild => python-3.14.3.ebuild} (99%) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.0_alpha1.ebuild rename sdk_container/src/third_party/portage-stable/dev-lang/python/{python-3.15.0_alpha2.ebuild => python-3.15.0_alpha5.ebuild} (99%) rename sdk_container/src/third_party/portage-stable/dev-lang/python/{python-3.15.0_alpha3.ebuild => python-3.15.0_alpha6.ebuild} (99%) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23_p2.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.24.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.9999.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest index 8f6935c3e35..d1836041208 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest @@ -1,76 +1,47 @@ DIST Python-2.7.18.tar.xz 12854736 BLAKE2B 060a621c91dd8e3d321aec99d44c17aa67381998256a1a002d316b38288349884d5960de35c49352d03129ed0bae599e641ec2225898158ebce50a7a2fd74d2c SHA512 a7bb62b51f48ff0b6df0b18f5b0312a523e3110f49c3237936bfe56ed0e26838c0274ff5401bda6fc21bf24337477ccac49e8026c5d651e4b4cafb5eb5086f6c DIST Python-2.7.18.tar.xz.asc 833 BLAKE2B 1d98770e46171971fb99994508d238c01d2755281d2f94353314014d9e83e0ec5f0b3e3950ea1fdf5fce9ba6b8f55312355845c2a3fc4291c27ee56fe6215448 SHA512 c2a5f5a52f47dec52460ad3275758d4e5de6e7075c3def4353c988d74d563a39b42cae2d5eb24e2a23a6247cef69100f91620b11a49c2359fbf99b203c9cbda8 -DIST Python-3.10.18.tar.xz 19619316 BLAKE2B 312d2cb6ba3bdc8e1eea4493d73c6adbe80063cd271a8738d9e772b2d9aa2d8628c8b0f96fc6ddb91db6f91ca58e2fb38950a90547fb131a10344b926b661a39 SHA512 2c444f024cd15babd156964b50aa0245020a17c0c600250ffcf112e91594a3d6e1fb87c9b87a57cb7a802dae90004d801ed95a3103d79aefb8ed714279997708 -DIST Python-3.10.18.tar.xz.asc 833 BLAKE2B 834d0e7ea65b653d748e7844157ee215302e4b48aa63a45fa8d548b03e78d2cb36b6ebbb6bb6214f9eec3200d6a32d3a22d31691d1580114a14e67e4dd7c5abc SHA512 dbe1426b1b8371bf390b53595d2c656fbd311fed55ad3c705e175fa0c72d51a022f286877ec55ad74547a3b57ae945c9af7ece4dacc7132e21b9b7eb4421add6 DIST Python-3.10.19.tar.xz 19873020 BLAKE2B 194c36643fbdfaa777523ede07cc751c8de7dc549223ba1e48d55796fc8c7b1b6f835d62e8cd1d34e011497a9df971ad073a3949dfdfe88043a65e9cb7bb7f72 SHA512 9ea1e952bb5f7c9cc8d3efd8e7ae0059c129b6e09d12ded7d4e22476fad35f2c8186b1e003ea35a0099ffa5ff0a114985c3e960fba84e7037670b840a3e19c68 DIST Python-3.10.19.tar.xz.asc 833 BLAKE2B 7378ba5751974d758cbedb0b14d239883da8f6e514232909056952be5f66496d5b59d0435f6cc34b9df85fdf3969537c85eea044e6af9faed7041d2a78e77b2a SHA512 64bcee68c2f4e0718daaf19d405f4a5bd0ce3fc3d13bb5cbae8d4a36e419dd104c94323b497f1d06110f6b62a1b3b351279c534145f4e8cea9af0d7bb0a8b5c9 -DIST Python-3.11.13.tar.xz 20117496 BLAKE2B 444de8eef3a938a387374b152350414b7e2659920784ebc57d5491cacc78cde406b557237fc7f06627e2855f60219b86fe41cb8b82e61fd3b1b448fc7b98af5c SHA512 70f57464d548eac4fe0d0c7f85a14b0e549a4e25ef66de4fc36b06ce72a3efe87dadfcd56ee275c10483cf802fbc9d73b61f9fb2941a46e2f92f075aeb1afe85 -DIST Python-3.11.13.tar.xz.asc 833 BLAKE2B c6860aa8687e53b8d9df5d8442490adaff202bfb23817801562577c8d7b81383376342d8e15c5451e25e270746a6d28167f39cfdd75be589e0d58187026a4830 SHA512 6e261490bc7777f0bcebd0464867df98b7955b32f13a445aab3cb6a1a1d3fb804817638f67a8586910fb97291a805b64f130909c06257903f431f8634c691c3b DIST Python-3.11.14.tar.xz 20326860 BLAKE2B d0db72842e46fd2b95d245e8fe4550a52ad2eabcb95900d8beb2f871ed25494dba395bf30e93591ecc42b99cd587c6ecb06578d1232fe51a04e37bf00dec307d SHA512 8b5aa917fe67dbaa3c306239ed56c16cd7a3b4b701fab0b3dc0d342d60176c75440713bcab0c59a3289ac4a0f06103bd31140c492556e1937fcdbd990675f9e5 DIST Python-3.11.14.tar.xz.asc 833 BLAKE2B 5b32ac50e6e725d9949bb6e89179d1c06c4e7d04ea82f6b80b64573c7e05b94da12de5738d0d7a5b73ad8d4cf1a5b35c5738c9e5a4ef93f97bb660f6f8b7cfc7 SHA512 d0049fd6f6d06ae5d86b3587080be060d522dd52e7e56270125541d5617582ea3977b75c7e585da005694665cfc5657e39033a730187c506edc252965f4df769 -DIST Python-3.12.11.tar.xz 20525812 BLAKE2B 08eed9d91fe0be305fe9832f5fae5ed4ffdb524283079b6473ed77cc277671356ce2b8f6ca97f55f8ee4954a35fe399099773d0699d6bfbc0aa87a7e9271ba8b SHA512 81f259c5bb293a5b685ebead1dff56c7c9d28eed12edb508b3e5e1a882991e762fc959803cf2734f4233bb1c5407b4f5303324c67b25d860b069d38bbebe4454 -DIST Python-3.12.11.tar.xz.asc 963 BLAKE2B 4c7eea750312ba996f88c452e51b58c0176d53f43e5bd30fd41a931540320b598b6d1e93d79996ce30dfa22858c4c3ed2cb24d16ba0a891a146fbf81ec60b07b SHA512 3589deba17c5adcfcd614387a5207ad20db56cd9c7937eb44e21035a8745f1c6bb9a1b7cfe8bc5b58ecc7cca09ed49fd4c2878f65baecb2514e79c666f85a22e DIST Python-3.12.12.tar.xz 20798712 BLAKE2B 3ce140b5b2c5e3b055118c8595385c7d79582c64cd8dfe9dbd062f8e38a7a995bf51f7c61e1faa768bd36c315c3493d27cd81c7425c7416454f41f77431eac0f SHA512 4b99d240dd96a6e154909dcffe87f8bb38193d634cd80a1c3d9e819b7a63af2afa46d5e6423e81f00dd388840dc29a4a71580f6aa1ce9a12e559c1d63f65a205 DIST Python-3.12.12.tar.xz.asc 963 BLAKE2B 243d7e8000768b562ff771ec8dd8fdc6be2bc36174a1f0f8b00038df2264c9d1c8a14913d07df2826fead822a16db18ef08b40d553f6a9bdc0ea39645d6d798a SHA512 32c10fd427c6f9f11595493d1b4d4c3cade85bffd439fe11e8b0b2c619e06734097b6aaedfdb4fe035b7fdd7196714dba77cdc806923e4454d5bcf60056991a0 -DIST Python-3.13.10.tar.xz 22714348 BLAKE2B 3668feb55810ea9d1b47972060b38dde476008df1c759875f1433a7540a95483d11097024e5f8b0b46ba31078995fa32ec5a854ad10614934a42103a3a439bd6 SHA512 7edf3c1008b1df3a067bf03b8218fbd9f5da7226ba17d8ec54e54a30aca5051e6435eb447a999a9665097dbe65fde27356103c3ea5227b5605b233482e037b07 -DIST Python-3.13.10.tar.xz.asc 963 BLAKE2B 3a6339d73ce3ed847ea6d227ad471d1da96aaacf261d93b1e57dacd7902ed4c63efbb81a2fea35d8abe63a4aa139f8ea47e1e1c2a370093947c7578e44c7284a SHA512 b7ef2e4fe9d206e1d20c166224401f6b9bd782323d424e996e0a1cd38a0b7407b994bcc13a63bfa3558482c6775470769c4f11f873b515b8072b75c4cf835011 DIST Python-3.13.11.tar.xz 22704352 BLAKE2B 6c9c4dddcda36a0210155b759c01101b0429b17622d76a50881533b454335298e9f71ba300710afea2039425a08e4e1ea7eab27a18dc871950c3a32ad93ce663 SHA512 11a910785bb3edeb3888331f29d2514d539f08b07d3125186364ab0e261dab29c7e7c70fe08d89718c38b6053cbe932ac4a6062ac291871e6f4173d29425264a DIST Python-3.13.11.tar.xz.asc 963 BLAKE2B a6e21908f8161ed014455a609004b9bce461cae61f1b3b26d56c2582e01134f7adb1634c12dc99a8c3a290564a42e5b1bdbec6cb6faaf3ea41245e8a2e17ed1c SHA512 10beaba6d0e84f0335c0add480114e98a64133ec70d320593349de86091ccbdd69743559297f9c8c5e9926089890fd0e7881388e86084f46a413e9579c59d23c -DIST Python-3.13.5.tar.xz 22856016 BLAKE2B 9caacad8745dcd238b208022cb140a6655ae57ae0b7f5ac88efc84a96635c310102a5de20cbaa43ef3c329f454b142a0a019141279d49a4d657be5682a1d6521 SHA512 2a058072e87b614b204bd1321b2bfa9c4b6614dbd5ded98dc0ee51c0d6b81504f902b7c003ad14295b371a37918f6975dc37d5a9c836dd9c30f8b086e4759193 -DIST Python-3.13.5.tar.xz.asc 963 BLAKE2B 2db0162d18129ec42b48393108a72c28e7f8f8c3fa40b2e231c87fe0bdc3c166fb6ca4a1c1dfb3fffe1aa0c2618c7ccb245513beb7a0919b4aaca5ec7eb23b36 SHA512 07c1a2ec2d6ba2805680b7f1dc262fdc5dc3eec4503780ecdc08cd570ccbb5f1efa736ee03c83d36bdb33ce87db06be5892cf5a6eaf4018d5fe78fff99e615ae -DIST Python-3.13.7.tar.xz 22769492 BLAKE2B 8654588ed12e8cd1d691a1869ed1db0d4b9dbb8e265bb0189cfb3cd1f21a298c1d8e9678e27c23b31e6c7f86478f33f3fc6bb66488a550bed60d64b7a801e65a SHA512 73fa04db860e8b98c204f84d403598fcb802b19bfc8f2675df2fddb6b153b1643daf081746a043f57c8fa71b950a439581aa5204c2bfadb8cfd8864ca4f42f0d -DIST Python-3.13.7.tar.xz.asc 963 BLAKE2B ae8721488c7ce01c9c6fe1b184526044900b39d033b0ba1ac573c742cf99a902b32cfefc9b73af8573667b47c71b8356fced5abf0a4b581ef8d0aff1bbcacf47 SHA512 71cd002c18ebb47861abd3309c8cf38972d3d916cca5595d895ba3940719243c66fa28595c2370a8846d9d1c4b3cb4ac5baeda9e9cf94be30302892d01df5e87 -DIST Python-3.13.8.tar.xz 22681576 BLAKE2B 83054e8d26b0f5641ef19b86e3fa692e4474495acf7d38eb1dee654811116def55ed742b60ee64e9e78a1895b74830d6e71bd8758529c70d8d78880e66082d2f SHA512 8569959f24083824f6644b839c6ebd587e67fb74b3c5fed9ef44bfbbba46076e98db33a27218b2d44edd15b3b05ae85e94b71491598cbb871d7d43a9d6fa2b84 -DIST Python-3.13.8.tar.xz.asc 963 BLAKE2B 83b334a8a8c456776ad91a52f153808938eddcaf4a34209b94174f8859ddb207a6d57fafb48749cd5578fd9547ca4f20339946c7d89d8d1e26c724b8224bbf25 SHA512 ea5bae3f5a909d16526b614085cd4543153800348dd82ef90945ceed19acbab8db76f7c1279e39d26b9e69608aa0f7cf1eab9a562d00fd1c9badd5b0fafc5c21 +DIST Python-3.13.12.tar.xz 22926488 BLAKE2B a744a81e39e4897abcaf11d6186c106d703c668ca41beefc8d56003d3b37b84a64284f0e9ca9dcc26a6b7ac6faf495b98e5172159ff91e8c01d52993cdc354b7 SHA512 5edecdf13999d8629f31543dffdcba521dbb5633577e481ee49275e377509a2f6d700624c26f95b57a8ff9501378d10d7c07c1d0e7e19be0d6c88f05b6315a13 +DIST Python-3.13.12.tar.xz.asc 963 BLAKE2B c3e70ac00672c04692ff773d1dc0ae5495bc863782f65e20c8804c7888968471f9a16f42277ca88e1d256abb7d17cdcbc70b311ad35834054cf5be2445930eb5 SHA512 6d42bc51b3658e1b092e7ab44306f6fc968646a7a9aeb63a3c443d1f75e27153a2138e88c15cebf8d559ce6d7744acecd4e6026c6d0be6fde070f804042d4aea DIST Python-3.13.9.tar.xz 22681368 BLAKE2B 8fbf9b9e0dcc480a5bac82d5c18d6fdb630769364c6963d40a86f222a5b77b2b596a743c771e710f4ada9c5dada5b65fcbf2fdf3601179ad7aea4fddb61fbadd SHA512 ffc9b6e545bf5cf8f3b945f85442eb4bd28cca9adb92d8c253f44078ec2e9758f802bf72c48e0d7e503c02b2dc754c58ee913cd3b7d8e8808fac2a0aa4e006a8 DIST Python-3.13.9.tar.xz.asc 963 BLAKE2B 7989940e3dfc62c553016f9d2b9aef447e770d63b2508f287e14495ba3e98326279d2bdb3b96bbc65ff2a859253bc43d8ce5387873842f656a66abef8380a3b7 SHA512 c33fba3a6b22dccc08beb7f13bd61a25a30f609a54da7c8dfd3b3b4a3490a7b24c11f9617a835388f22709fb09375d35febc417cf104a18f5bec3b43ec999e82 DIST Python-3.14.0.tar.xz 23595844 BLAKE2B 0fe495d62819c9066240927ceff022dc36920cfd9aa7f80f09fd82a6baf42fe0ef85aed7087418ad9769504e62dc0592cf9c06a542335d83ab65fc6399b5ac76 SHA512 46e9e205c3a084cba68bf7f267ab2fd0862a05430165e0eb713f2d6b3a1a4452f72f563de5de55caea824be9df56f66dd568f4814941667a9bb0954229772c53 DIST Python-3.14.0.tar.xz.sigstore 5374 BLAKE2B 50ed6dada3a7dfcfeb47e0cc55568c0e2ea01a5710f341d6423bb5b0982897b13a7a7c91d8b7c995499f687b17a6cf432fdcd3338b0ac658d19a8ad032438957 SHA512 147bf060a55b9108efb6f6a7f478c0b4dc1e7b1e215b842fb8adfe1b96bbe8d1b49ad352455e047d694638130f8533e3ea1c3a246e9ed0fde0d08e80113a6c44 -DIST Python-3.14.1.tar.xz 23563532 BLAKE2B c75d6048ca6b504217578041a6777b507a783f639736d580e0a2964a7d0411011d025a4562c38f68ffe46ee2f35135426f6c6c5d070c1d9106477421d6f92266 SHA512 b5ec011190536126fedade5c33a4afabc081a133ad5c734f4b872769d376735775219d63a482812d139fdd90c46707927065ab9dc733d0bce2d1ebc59fe705a2 -DIST Python-3.14.1.tar.xz.sigstore 5123 BLAKE2B b20634370ea0915c564c586b7537cfc19b8fb6f032fd6ad5df795fe818eea85e78375a32f3f079afdcd86e9aa4e5c2eae8933a326e0699e5c16ba094c39ddd94 SHA512 5b668deafa301d6eb69a7ffb03627c89d2f5de794be292f34cf44f6a1d81b46778f469282a746147a6ca5767a7b4c093b89d25a3a14fcb8f3b9c3e4f40808b27 DIST Python-3.14.2.tar.xz 23566248 BLAKE2B f010a11192ba8e2e4a5e6e3b1aa67c56e67af3114892b3f7741a3b6fa7b8465b4f4ed573968a17e45ec39e90e44e8af11e98f4087d134065c789126efa26c691 SHA512 165256b4c713e0262767cd7a2c65622f3f086423524646a39bfa64912376be9e5b70863d5a3c95224b516152d0b79e7ccbfe2f2cf35b809d132f2c38ebb3ab3b DIST Python-3.14.2.tar.xz.sigstore 5119 BLAKE2B 7a975c9a2956cc672889bb08cacbae3f1d6024df72ef47de3a1438a7561daae3b67489c04851a97199f82ee047bac8cec00c3964deb80e9849a3a5373aa9dc9b SHA512 85e62f237d03d6065dcb0d0d7fdadfc6a3b9f55fd96bc3312178a1359c08b1931fd288a87f215b19ed610aeae3316cd4ee1ceda079d8447dd076fd867008c7f5 -DIST Python-3.15.0a1.tar.xz 23646768 BLAKE2B 63ccff58638d59b8c0061bf0a91c437c441bb2c08c6a76f51d38021c9122ea884474d52643389e10cddfa37644da69c3fd4267358c5dcf0bd86d4a3aaf5786a6 SHA512 5b86de5c935403b46b718d3a151f26c18e6ff5e468ee03c4dd09fd49c31b57560523ea24b5cd2e5283bbc0daf5621c7145d0af4ba67a23671b0652ce5cdad483 -DIST Python-3.15.0a1.tar.xz.sigstore 5138 BLAKE2B 58268279c2f1db2e0350a3219300c2a96780df8d9f524db1526e3792c8b2ca94d1088ca8dabca8a583eeca7a0f429f90687643b5fe4c8e20414e68a3b138d969 SHA512 3f77187359658235c016dd8a8f42e87b23e1e1f5fd7c693e612267344e00aa8e464995f197ab8b0d44a0cf1c53311ecdf323ae670e6e7ee0375e01c80a7de37a -DIST Python-3.15.0a2.tar.xz 23728836 BLAKE2B 56d655bc9ae7bbac97345c156b252667a8e0fcb2c017df6528e87464db7cdfc2731d095362849386eae1013e1468f42918f0cedf6cb59d87c6f97bbe3e5bc3dd SHA512 17187961b8cdcba2971ad1a523d4fc8b6339c19fac0e284e02622fa905c7fce93b1d68bf15c0966e0d6f731e7957291aea056e62f8a64fd36f7fbb9877a4f917 -DIST Python-3.15.0a2.tar.xz.sigstore 5171 BLAKE2B 89adb64b047d96a5e1683eb52085ed6348bfbdbf9be950d111920311f890d9bd845ad1f1e9b6494d683cb85ca22d5492470a8ea87c0a3f75f30971377f6cac6a SHA512 fcaaab5a7f06bfa5e7d26adcce7fdb5bd4aa981f00963ff0934baed16c18c7e49e25ced7934efc5f6f26eb90faa92d323bca1f322418747f399b6330dac1214f -DIST Python-3.15.0a3.tar.xz 34723712 BLAKE2B a1ec08eeefdcdbd8da2311961b0c4fd8cef0b23138e8dd5e727edee15127cedee4592e5d1b16cc95bf250b6de4fe46064d8869c95870871b56966de1f66ff17c SHA512 6c37053be1276d09ac040bd413150ab0b90c9be419aaf0803ccf45f4c7a44001d4beebf3ed687a6d5d823fa94cf9e7589cea4fef4d69ae6c0f1b00a4660adfeb -DIST Python-3.15.0a3.tar.xz.sigstore 5215 BLAKE2B 89e37210adc451036ac0e7f91e0292bf021d757d53b8dc72f0ca7a43658e9b9c46900e07def55f86c45928d011bc5fc462a6b4d2521e0d04acb8b0d89bdb5b0f SHA512 ea22f5fab86050b066cb299e642b49fb9c162087ba7de1cb3c0e146e906b0dcc29670d4c6f1dec3504b40916d2c9f02fd1d10a230a312292c03f20fe863bda00 +DIST Python-3.14.3.tar.xz 23778568 BLAKE2B 9312d28b8bd44c642eeb2d608827984610154f3adba0cdb318b959fc643f58a90f7e10c84b485a844577b1fe1f374ec85d585e6664b5b532531b60f77c951e27 SHA512 9fd875f7a1d96d64e7150913ef38b72b0aeecfcbc24ba46967e57b6495146b0cba6b940c273561fc4d656b6d0ce2e23ffb7bd32bcd0b61fd59a6d90585998c07 +DIST Python-3.14.3.tar.xz.sigstore 5215 BLAKE2B bb6b0aae97c9b7312b7a6f6bf3fc200a95432ae28d49e6b8bbf2ff97d6c6c65f3a60d3adad96eee3bf5f18163dda0a46768f22c6cf18b3be83fda536d73ac048 SHA512 0eda4ba0e9920ef927882507dc41e5bb35758ada6b5d54d312715ffd258a281edd776695109577f8ec54c915b5d4dcf19c2ba79efc2cb3dc3b3d85c82acf49f0 +DIST Python-3.15.0a5.tar.xz 34829268 BLAKE2B adda3409a5b3308da1f39effc0b01b317b21922bda739b65587007bd912f10540bc02637afa48e1a5630d44e23ed9a82df8bbbb6e766547d1ae66d08f43c5123 SHA512 c09f004cbd629d676e626ffc707a971d85147f3a03df1a666916473908cc25884237ba1a56edd15c679619ccf044cab9913118a0e67da5610dc406c8e2597b96 +DIST Python-3.15.0a5.tar.xz.sigstore 5311 BLAKE2B e214228fe5211d5df51fb7cd85b2c22b616f01f5f9ea75a8312fd08a37dd7e5444935b8ade81c44b1cf92dd8c61e0a15c3a929e9ecd71ee164d38936e76628d6 SHA512 b395e2e61a6bc0d406b28583f9aecea731fa13ada39936b7474baa24a6d1674dd3f83f54ab0ca5e38e1cda211ddaded71117e3c733dfd4373a3ba161053060b2 +DIST Python-3.15.0a6.tar.xz 34950024 BLAKE2B 96fb82a52bb504df886dd89d7a04538eb60285f5ad84a736a3eff8fa19ade1c2026a327c336fd1c249c7016e6a0c5e3d6d7275a499e6b99f72ce386f27a1c4b8 SHA512 d941b26a57b292f388b425186af9584843d220ca729b8b4cea1874831496eeb2a6e3432ca81722134fb86f3e7078cd955ff5774e79b44749bf01994e4349624d +DIST Python-3.15.0a6.tar.xz.sigstore 5171 BLAKE2B 368f3e18c48b3dd0c1f4281b9bb4a28a9f5e5f7d138990bbccd80637c29f1fad5ca793dd09e49b0c7998fba8c4b9338990910e9bc99b2b71a64114f633727d82 SHA512 098b60d659b72f6f06b428619ddc9bb6b1c2ee3d3c6b5860436c507737f8efbe71a76d3758e53e760392df08b103740c5fd6e84f98f8e0e314300ccbc27a641e DIST Python-3.8.20.tar.xz 18962788 BLAKE2B 715c75e0c0a3d3b77af7f07478311bb0554b80aac72915be703aa2d0dd6459a972e5669808e64da14a0b91bb183e00655055c1726f302dc3ccd8721e3b4ae3e6 SHA512 3c9341ee1fd33cb687958dcf2b7c0c7700489726c4d530c3e9d9537d46a6ab534541a4b312232d8505bea395a07e4518c42d75fb7571103e6b266f8f44115c61 DIST Python-3.8.20.tar.xz.asc 833 BLAKE2B 5c86c15a1090b42e42bb7512565b1a7ad9d2137d59e9fd1ab0f83fdfc37dfcf184389418d6703db809e9c8c04a169af292665a2b58bf5dc61b7724ecbb4132d9 SHA512 a751ae0407a593d97acac4d5f8a0456580c753efa12a7d960125c219b4897fdb26fc1ffd43d8ea33ad1449162dd3b2904c16b6c51c57561ba73de3ffa62e0eed -DIST Python-3.9.23.tar.xz 19659284 BLAKE2B 17c7c9acec1e2f2e9d146b2c35738ea05cf16609f267dd784668ab43bcce7be93e164c14106f9640a060326ebb2b8bd4ee4e58086bdced4ca611d7f96dbb3699 SHA512 ad2eb2eebff286a16ad631339bc0890b0686cf5e669d28905a98f96e9b1af6673d255f36bf19e146aa4de8d012587dc6b3193e903718f9cdba4b97041318f418 -DIST Python-3.9.23.tar.xz.asc 833 BLAKE2B a17a88b1997ece75e6447398d20c67e4b1be6d64204e6ac20aa4650e465b0657e7ae8bd497602d2e3c7193b50ecf7d15a1eb996942a05aab117eb25446dab159 SHA512 10187b0df66743308548780f82872d032530f8233f539cf66a2cfbdef1095b760f81f2fcc1759f003cc6f20752be91bdef71e4d821e76a75c0c85df112335698 -DIST Python-3.9.24.tar.xz 20176216 BLAKE2B fbd910311debada90533946c64e5749c710d336e915fe4f6cfa17362a490896b53a2289d653a96905652522d6b51d4bb4cbd7e73189aebc817dbf8aaa3a0d38b SHA512 54be1c0805e66aa68b4c71e07a4234176203868ecdb6dfdc1859b04b95858bde26990dd1c5ac1001ce4b55513c05cd63310155c6c6666707e27fb79c159870bb -DIST Python-3.9.24.tar.xz.asc 833 BLAKE2B 683ad8fce00518c2b31f1221d208dc8d57ec20cd2b20442b031964444b38b6e5a1e39e736417b64deb11d6a68cdeb7d17b1ebfd9176275dab64e07b33e87afca SHA512 50459b5a540e5e699ee2dffd8988369c0a15bd00cfa76d8b148ea7ad648205b8454521bd0a30dc39d6497b0ebcb85a037aedd56d8188c854d1d4409859aeead2 DIST Python-3.9.25.tar.xz 20183236 BLAKE2B 01c5af78659324e2a596611c11c0fa982f81faf9b401afe1a96399b58321e39c41e46a932e1e4437f3f2bb2d76d8482e852fc66e6f960a4928f7fc99b62dfb7e SHA512 33fd65952cc3ce5df83825aa32a103935815bdd5a016e5fd9896cafb068a3f89b3a6134458a2694e4f0f4f8a9fbe84739b53116264728b32cde0f03ab210cb19 DIST Python-3.9.25.tar.xz.asc 833 BLAKE2B 3ab506f78b53aed0b3ebbeb620e3763857aafca7756f0f9a594fdc27c2fc8b002e338ae34d54f7e9e5a52fa701d3ab4de44ab4f4328034d77a207f066abafc2e SHA512 83f0a0e558aa89a106bdffeeb9b0fa2685fbd7be5c5954f9176c59c6c7023716207b07239f202b3508cbb98ca34572161955f0bfd3732fdb9265721cd6723dbe DIST python-gentoo-patches-2.7.18_p16.tar.xz 35448 BLAKE2B 0139c0944f62f9cdd236f6a8557e0ed19704c7d72869af1cb7d8bd3e646a746cd4a0201e1b44232a5e78ef49f254db20b0d0271bf744fbfd4fe0f1e99b8f3e6c SHA512 810be590d0e06fab4b2165e6852ca49662f09dcd7e20b47a29f613ad7653252c8dfac3f0eb228d77c8a914efa7c08788b2fbd552a4b47504f5fd0ec17450c48f DIST python-gentoo-patches-3.10.18.tar.xz 29664 BLAKE2B dd69f7866cebad2536b41056571d74cbd90800062b06612b7509c9ce8f258aef66586f3c6e08f52caaceb7b0a01a52502b9c763b6f7d94caac0e929d9d77219b SHA512 b4cf4ff2d7e5b73e1102acc2183c4da3e734bdbec1c284d1fef8aceba0d49246dcdc954d3e4119521fde1e895bab0754b34b346b736b46ce45aff1afc6d38cef -DIST python-gentoo-patches-3.10.18_p2.tar.xz 40708 BLAKE2B 9fb59889ffec1215511b0a1540d4765366ae850c43ea4fa41cdb65ffbae073b03288cf4071a0451cfc240a0e3a172224121c583ede5baa0784e47509aba83a1f SHA512 58404ae035becbac51031ac1dab84191f2ea342f763f9ac9ca0ded10bc2c3ece4c68d1b49f202c1ccf8faf5c5417f779d56a977da93af27c15aa08754e8bded8 DIST python-gentoo-patches-3.10.19.tar.xz 29136 BLAKE2B 3dc3719a4e36d34529f81107c4b57a905df68c072732999cc701b8c8323361eef554b3b8db45d82eecb2eafff65892355ff85b19a3963c9a04077f660fd242b0 SHA512 3f55917563f3adf62c7e11e7411ddfc28ac1fdca1ba7d567c770897a4ae969a10911344c5808564b99bce1839a87bfc98bf41ce42719ba2885c2d35644cf260b DIST python-gentoo-patches-3.11.13.tar.xz 16492 BLAKE2B 8b188742dd3f25974cead290e5793c31f02741a901dce65137c596045fa2fbd5baaef332204af90f95ddcd864ee542b252c00b190e15c25af60a7bda771b116f SHA512 b5abad341d2eede81df445b56a98720466ec23df40a8a2e99a04dba5a106205655c8e2b64df0ca2630f036c8fe457ba64524280d137bbc99f52e4fd8e6bbd5ae -DIST python-gentoo-patches-3.11.13_p1.tar.xz 27748 BLAKE2B 26e0b5397d7927711bcc40330f72f54fb16c660c56a2f87166c5336eb2f53ccd4e920b906854ee122d64360b414e11a38a31a410936b4a49f6610626203f4322 SHA512 7c7eca7bf827255925e073c0ed5c69e9036b79e35e8f6ccb2684709bdc41fec80823a1df192c3decf56ba6d53e2c9feaf7fb81f3a214da69773da6a2997ca19b DIST python-gentoo-patches-3.11.14.tar.xz 15968 BLAKE2B 5bd091046feee03afd59a87b72c44b3a0874b23f89eb98020cc057f5651d31857721eb095bd056dae8bef85220dbe5aff2900cf8411dceb14e8775a4a2f09a93 SHA512 760df16f98c1a91164b43c13eb36073c74169321569791125fdad8682419b818736fe02e40c1aa1232a11081b1007c923a8fd2afd002eb4fdff0800da92d03e2 DIST python-gentoo-patches-3.12.11.tar.xz 12020 BLAKE2B b419d32b1d7bef9408027edda7eac9a920a877e1b8f521483df595199bad1bbadd9dd9500079c09beab63286a801bfb25da5f93a5d31462ed3e457a6e40ad6af SHA512 1b0eaff4c0df06554525a50576da7eadb4067c4f2970851e5c9e3e527a9ccc4216cbd65c45fd562af4a1cedc2c66278a74bee5cf5c1a65df8feb22f34f5a19e4 -DIST python-gentoo-patches-3.12.11_p1.tar.xz 23276 BLAKE2B 794485d0fa596f0f2797e2aa505f888a05e2ef63840068b3214efbe51b592586bcfdf193b71e239beb3c3037f01ca086b6b97aeff092b2a344e74d962fb9dffc SHA512 1402b0bbeb189ed4a16364398495fcccc31da0aad4fc88e30978e7754575fbd8f51974dcd97d2a57a581072f083233dfb00b30af687455ad170fc3c64875a9d5 DIST python-gentoo-patches-3.12.12.tar.xz 12012 BLAKE2B 4a030f976e73160f74dd760a8cac55a5889bf821e998b717962aac8b79780c314dfbabf93a6919daa75565c3ef31dcf6af87f3ec6768db0ff02154c4c112ab08 SHA512 d5ee32b93fb4a1910a8e3aa0486ae284885c05bd03ada3540f4990b4f12c837cd154e76511db663542dde74d652c3d1d279098319dcc991e7195e8db5befea12 -DIST python-gentoo-patches-3.13.10.tar.xz 8948 BLAKE2B 015f92b6522be1087bfe796d3b1bc93ec46997d618367b871ef1c43bc6a2401f55e95a16ce2e72d6553931e99d7c0991fdc953faf7a99795a511944dd7c650d2 SHA512 691c2ead6f6c63cb714c989d5a1cd2fe6073c96fe244ba7768abf79678aa1ecc7039ee11e137678d793f6b43c742655546d7f65efe38d39b5a35a81d7ddfae8f DIST python-gentoo-patches-3.13.11.tar.xz 8948 BLAKE2B bb6402400f931fed5d0fa2530f816ba78d7f6aff766e72692884a391929df76cedcc9a9b7a709d8ebffb38fe9256dd78a2b668d49951e07bf61a5388bce49b34 SHA512 f184a682a888a8781aa1a4eb3983d5861d4eec2d0c0729ab95f867aa4a901c65865cc429e9b871c62d5d113509c3f621c7c81d7c7e4600b8a712a8ec256270a9 +DIST python-gentoo-patches-3.13.12.tar.xz 8992 BLAKE2B e7a26ddbd76f337a0f3958e55d6f77864308d3db5b5b8bec36aa50c1845d28284c6d0ce4c847eb0ca2a51367baaf454be9c62bc1932ffdff5a4ee06c9701c3b4 SHA512 ef87942f8d1d145112b2275d1fce9f6faea19c37ed3e37fd8762f4470ecaa1d87f5a471f287d3e1bf7507af351894c15872ceea0ea41d4903707c12d4cf0c4d0 DIST python-gentoo-patches-3.13.4.tar.xz 8912 BLAKE2B e3d9f2a12f801dc75e09c5301757f35216d712b5e5394f2ec3ce1d79d0cb57571dbca525e3d5c35b90fa059c2b78ee24341b6a51cbe9691deac84c9ee0578824 SHA512 1a7141accb7aa70c7bd8dd12528f7de031dfeab9ff089f3d044da0b7b52461e2d6d7d1467161e0fe1e259d9fa06d70bcf107d86ad3590e8cf73aa1132ef3aaf9 -DIST python-gentoo-patches-3.13.5_p1.tar.xz 19756 BLAKE2B ecc594573bbe3a28364d541d5e1014778c342b6e8ecb09e5e9def238ce73d51f178d02ae91bedce3f7aee4a753f2653aee4f4035f238fa60d603baa59ce4e89b SHA512 a60f3cf65b57aa6c85f59dc5f36fbabe1fa19a5225c3e224c99696bb3d1186b54bdad94627638a3a73b66ceb5958b3a5dcb2b83d13357c71ded04c98ad7da0b9 -DIST python-gentoo-patches-3.13.7_p1.tar.xz 8944 BLAKE2B f7d7769328fc5cb83f03a8e30602a556be032b71bf068871d22a2ae234fbe865a8f3801300c959d216274025b824fa1d0e5c8cc866c5e6ab38c0b484dc1c1b75 SHA512 a102b66d3b1766261b5bc56ed08c88dc0b34480750177b1d6051bc8b5e9e51df956dc604c5e3509b02fb0dd09d00473f7955652d41cf76299537e18c9bc16389 -DIST python-gentoo-patches-3.13.8.tar.xz 8956 BLAKE2B a98766abfe50feb591e3aa7b7964fdcecd43cadff088735152417d6bad5fe6e6055bc41cdfa74332790775c8b333f35e28f381dc557b9c89c7bd4aafb0e846f3 SHA512 9ee23e972a90eb9578c469af255d2559d4aa454a9b8716075baded60ff6e457a96b69cce3427bba8daddbb4a47d388b1316019fd397b13c8db71cf4882e3f3f5 DIST python-gentoo-patches-3.13.9.tar.xz 8952 BLAKE2B 9941b3dd241adcdde64b38bdc3a610e8f3a820b0b4ff03b06ed6d1c26c91af0567cd1e979a8f1d0cfcd05a1568a182ee87944b27ecef22ec139de001e9085624 SHA512 bd12075b144300f1f922175077345fe38a7067282c057fbc256ef646a3e58dca68c029f1449ce4c40d6e7b62444579d6f892f28d73ddc8f859b48636012e3814 -DIST python-gentoo-patches-3.14.0.tar.xz 7992 BLAKE2B 8faff97c198abc1549d7c871c82ff649bbdbe18f9cfdad31aa7b6535391fff8e6adc387a120a6298ede8842421bc103cfae27da807e651c9898d4edb192f4fd7 SHA512 7bc425a89d0f3ebbdab4f52ce1300e16512bda4f08968222e8e68f22d3a794fc7d32a00644f4949810ebb41da0ffd4a5a962dcbee86c7660cd4214406ad16b01 DIST python-gentoo-patches-3.14.0_p1.tar.xz 8952 BLAKE2B d53c5a055be72e3f92a63e18cf75d2f6eb1e352a7529f7ce8256aaf0fa5ac92443646fe07bdbc707a28c1ed395c4c2edd29db0b8fc591679c7602aedfc968489 SHA512 ec03a259281d675063ad82dfd9c0fcb08402120663b9c2a56e37de45bb03e678fccd0c3723b6deffc4f5b8ea4ad17492040a98c7434853da2007f31cdb549bdd DIST python-gentoo-patches-3.14.0b1.tar.xz 5680 BLAKE2B 514b3edc3025e5bf675d371b5ada17dea426856edf1fb6095c2ee400eae95bd4265ef81fe593ae9338e801e7d0a25b1d5ba2d05ca563fd9dd020114b13575746 SHA512 74289e42cf532b54bb1b66a283ec19156f8a36ba38764209c133842314c9efb2ce2ebcba5aa9213bcf7fc0c8a5ca9b6e7adbd5dbfa4397233136d7cd55f53ee7 -DIST python-gentoo-patches-3.14.1.tar.xz 8008 BLAKE2B 52b47d49126a9e93ccc8425322fb3055337cacd8b913104cfec320acae267d44140286b8be720fa5a98b146257e4847b8df46a6f9124d8e81368a1ad24194c0e SHA512 28f6a746dd5e06e432a79eef33fc80faa8ac589f1d328e4e86fdd9e6aa5012f248c81e47204c1fe64ed16cc15038eafef27d6fffb947dbbc4705b559d5639b13 DIST python-gentoo-patches-3.14.2.tar.xz 8008 BLAKE2B aa454e26901a36a34dedb1deabfc4f6766ef2ee099443ea2d155061f1d005f883528d4a6984d22af0f3feaaee6fc1acf66f144ae701ce60b1e5b0b225600f42e SHA512 3cee495d3b7d579a75a30ed8747d7ba1fe70c0abc06b868d68b26e64452b014c7c6c51ff9782673702375ece87abf8a3e3f5dbd2ea48257ea14416fa8794ea53 -DIST python-gentoo-patches-3.15.0a1.tar.xz 3820 BLAKE2B 1ee2ae65f079807d2665b050d4fbd744e71a7db8b14b80f52c32ae0c4593220037f0f7793cb8889fa3cde08b27ca8a2325e578bdf594f0eb1d1fdba90598369c SHA512 ddd00f3d6e22e7757ffe7c55ef7137e8d69377524c4047796594aca73f8d430efef2cb4a6dfe48b6d0fbef3cfae4812ead888ed49270d9b951e872879d2396ab -DIST python-gentoo-patches-3.15.0a2.tar.xz 3812 BLAKE2B cef6e13033d90f119e24d560b27849ccc5082b6eb4fe13959bdc01d084c381ea5aa0d179b044b36f457bec9e2cdf794b2e3c0b94dd6dff31eb98edafec00657f SHA512 6858c320c86a4ca65be918a2c579a9cf62af861d5f3f052b5529de0b8e2905f3a80ff39b22c1860305d1682b8cc61d8f09bb3b42eaf309998a6a0f96953ac45e -DIST python-gentoo-patches-3.15.0a3.tar.xz 3392 BLAKE2B 0d52593060a07638da0da60894172a5c03260f79f81aa65b44ff493267d1cc1fdf73749a6b9e5d20bab2e86b092cd4a8284df360d7e028de62e154105da38724 SHA512 3f77cc17868673febcfe83e19cec1f113c18d64e4946ae3bb19ad8b0e1f7e8ec8ef4d88ddfa79f580256c4a7b8ff48c5f52acb44ff05776cea77111cfa6a7770 +DIST python-gentoo-patches-3.14.3.tar.xz 8012 BLAKE2B a8106360a6c77e0e19ecdf55e924b85cfd6dae65d54b7c306a793b08da5214993631b92b1cff385c2d995799055a4e4ca3a461d4e1e049ada38e97b4eae54a31 SHA512 1747a99cdc2ec29b985bc75f53f9f4cbd6f9377bfb06f6576b2970bd30ae8461a39ba870021866cf0f79320e2775047b2f70d53a06c5687ebac23b3ae68c157a +DIST python-gentoo-patches-3.15.0a5.tar.xz 3392 BLAKE2B 3016725f3a460c35ce7ef872939449dc4385f19cb88f3047e0cb50d33bf155898933573d25d10490f83d1669a96cb86c9be7e5071a55abc40d439df972a5e468 SHA512 f7940891fd2f2e8b691dde7007b59016a04e0557207cf4272d20e72d248dfe48f604fa3abaf0bc4cb085ae5d9bb56781a51e5b6e604ef7f3be1f14519f7fb6ce +DIST python-gentoo-patches-3.15.0a6.tar.xz 3388 BLAKE2B 24f1b54aa6010568f925db7d7bd58f253ee7e87c0f12ef2d69faa71fcfca05477596189bc191306d98ffffff5f837167eec00b995aeffdf7c1e992125cc2c6de SHA512 9ecdbf0f44d8f49aa203b5cfeb08104002117f962cff3141f66a577f9ddd9ffefc2a576f498c9c65f7c9487d4eea948e7bead6c5ff220f16b34576f7b84fc4cd DIST python-gentoo-patches-3.8.20_p7.tar.xz 54544 BLAKE2B e31fc9fb5e98b62b0f70165670ec58ed4fa932cfc95d5287c249015a3a372fdbf0d1ba08cb98f63c2dc500700edfd6ffea6db670385d2c86a4fdb92ffb991192 SHA512 a9e7e4976be226931a503af2c986da207d060d4ce436af61f5e8427da513639adbed32bb0061963b83fef275a5de91707ab13b7a9abf3a7472ee0e2c5310eda1 -DIST python-gentoo-patches-3.9.23.tar.xz 37148 BLAKE2B a7c0514037169b9938b2180ec2dd22063621d532367f6febfa47da43f47534559baab992d9c5257271121af755b8445346d4d92582e7e11b6468a1c359f28bf2 SHA512 73ef00a7aa671016de396c9e1c4bb5f5c1a97dc735739f806d809f987e802ec440370bf4c85468097547284a5d2b476cbffcec3cf219b7cb6fc890d5029eb5bd -DIST python-gentoo-patches-3.9.23_p2.tar.xz 48060 BLAKE2B 2d4ddd3aa48fc52b9f63fbc6020e534234b4183366d121e836544cab93632cd05439205893a11bb505f679946b0690f0962eb0fc029e624cb1c61bc0936127be SHA512 61b3e2c7e8629e1c522c9de8ce9384ee8d1f90ca5ef0f7b902e6315c80196e5f13e0258f8002405a2a752e1c9b5e60f5c3c767c07554d83635fa074bce8a86bd -DIST python-gentoo-patches-3.9.24.tar.xz 36604 BLAKE2B 216cb86380a7655b991ae2b19d6bdb5016a29b5051213d0eb34bc463a7c763c01db982786a69d729c1cfe2be93ced2c35dd0df47861a9a89cc240369a54eb19b SHA512 df2eb206e765f8fa73fe9e9cf69d9660c277f64effdbda01b18ef16a77391b3ff4bffe7d29c45cabf0403496ede0cf5759bfe047b330e8e8d2594fe14336fee1 DIST python-gentoo-patches-3.9.25.tar.xz 36604 BLAKE2B 11d35dcbc8979fe37e27a00dfef9683f0bf40514415be416d322f0509109edeb58a2e0b9218cfa3b3326654f5923d165511d203504ca2b52971ad136f8a454d1 SHA512 234bae116b2a5af00506cb76a0b86dfb8cf1f84ee980a358f3642bb717cff4d6f10388b2a07f12118588a174de4d2fd6ad2e3ab24704f9c85f36cb33d51f0c65 diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.10.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.12.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.10.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.12.ebuild index b87de46d79e..66afeaa9d1f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.10.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.12.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="8" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.5_p1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.5_p1.ebuild deleted file mode 100644 index b87de46d79e..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.5_p1.ebuild +++ /dev/null @@ -1,611 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -WANT_LIBTOOL="none" - -inherit autotools check-reqs flag-o-matic linux-info -inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs -inherit verify-sig - -REAL_PV=${PV#0.} -MY_PV=${REAL_PV} -MY_P="Python-${MY_PV%_p*}" -PYVER="$(ver_cut 2-3)t" -PATCHSET="python-gentoo-patches-${MY_PV}" - -DESCRIPTION="Freethreading (no-GIL) version of Python programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz.asc - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE=" - bluetooth debug +ensurepip examples gdbm libedit +ncurses pgo - +readline +sqlite +ssl test tk valgrind -" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-crypt/libb2 - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=virtual/zlib-1.1.3:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( - !libedit? ( >=sys-libs/readline-4.1:= ) - libedit? ( dev-libs/libedit:= ) - ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi -PDEPEND=" - ensurepip? ( dev-python/ensurepip-pip ) -" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER%t} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -declare -rgA PYTHON_KERNEL_CHECKS=( - ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589 - ["DNOTIFY"]="test_fcntl" # bug 938662 -) - -pkg_pretend() { - if use pgo || use test; then - check-reqs_pkg_pretend - fi - - ewarn "Freethreading build is considered experimental upstream. Using it" - ewarn "could lead to unexpected breakage, including race conditions" - ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless" - ewarn "you can reproduce the problem with dev-lang/python. Instead," - ewarn "please consider reporting freethreading problems upstream." -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use test || use pgo; then - check-reqs_pkg_setup - - local CONFIG_CHECK - for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do - CONFIG_CHECK+="~${f} " - done - linux-info_pkg_setup - fi - fi -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - # TODO: Makefile has annoying deps on expat headers - #rm -r Modules/expat || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die - - # breaks tests when using --with-wheel-pkg-dir - rm -r Lib/test/wheeldata || die - - eautoreconf -} - -build_cbuild_python() { - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --prefix="${BROOT}"/usr - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross to satisfy --with-build-python. - --without-lto - --without-readline - --disable-optimizations - ) - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - - # Avoid as many dependencies as possible for the cross build. - mkdir Modules || die - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - _dbm _gdbm - _sqlite3 - _hashlib _ssl - _curses _curses_panel - readline - _tkinter - pyexpat - zlib - # We disabled these for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. This should be rechecked for the pure Makefile approach, - # and uncommented if needed. - #_ctypes - EOF - - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the --with-build-python value - # immediately. - emake - popd &> /dev/null || die -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # running gdb inside an ebuild as non-root, within sandbox, - # and possibly within a container is unreliable - -x test_gdb - # this is actually test_gdb.test_pretty_print - -x test_pretty_print - # https://bugs.gentoo.org/933840 - -x test_perf_profiler - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # Kernel-config specific skips - for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do - if ! linux_config_exists || ! linux_chkconfig_present "${option}" - then - COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" ) - fi - done - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - --verbose3 - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - ) - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - # PGO sometimes fails randomly - local -x PROFILE_TASK="${profile_task_flags[*]} || true" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --without-static-libpython - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-libmpdec - --with-platlibdir=lib - --with-pkg-config=yes - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - --disable-gil - - $(use_with debug assertions) - $(use_enable pgo optimizations) - $(use_with readline readline "$(usex libedit editline readline)") - $(use_with valgrind) - ) - - if tc-is-lto; then - myeconfargs+=( - --with-lto - ) - fi - - # Force-disable modules we don't want built. - # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - $(usev !gdbm '_gdbm _dbm') - $(usev !sqlite '_sqlite3') - $(usev !ssl '_hashlib _ssl') - $(usev !ncurses '_curses _curses_panel') - $(usev !readline 'readline') - $(usev !tk '_tkinter') - EOF - - # disable implicit optimization/debugging flags - local -x OPT= - - if tc-is-cross-compiler ; then - build_cbuild_python - myeconfargs+=( - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python - ) - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - export PYTHONSTRICTEXTENSIONBUILD=1 - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # this just happens to skip test_support.test_freeze that is broken - # without bundled expat - # TODO: get a proper skip for it upstream - local -x LOGNAME=buildbot - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - # -j1 hack for now for bug #843458 - emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - # Fix collision with GIL-enabled build. - rm "${ED}/usr/bin/python${PYVER%t}" || die - mv "${ED}"/usr/bin/pydoc{${PYVER%t},${PYVER}} || die - mv "${ED}"/usr/share/man/man1/python{${PYVER%t},${PYVER}}.1 || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use sqlite; then - rm -r "${libdir}/"sqlite3 || die - fi - if use tk; then - # rename to avoid collision with dev-lang/python - mv "${ED}"/usr/bin/idle{${PYVER%t},${PYVER}} || die - else - rm -r "${ED}/usr/bin/idle${PYVER%t}" || die - rm -r "${libdir}/"{idlelib,tkinter} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" - - # python-exec wrapping support - local pymajor=${PYVER%.*} - local EPYTHON=python${PYVER} - local scriptdir=${D}$(python_get_scriptdir) - mkdir -p "${scriptdir}" || die - # python and pythonX - ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die - ln -s "python${pymajor}" "${scriptdir}/python" || die - # python-config and pythonX-config - # note: we need to create a wrapper rather than symlinking it due - # to some random dirname(argv[0]) magic performed by python-config - cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die - #!/bin/sh - exec "${abiver}-config" "\${@}" - EOF - chmod +x "${scriptdir}/python${pymajor}-config" || die - ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die - # pydoc - ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die - # idle - if use tk; then - ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.7.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.7.ebuild deleted file mode 100644 index ef6de0833d7..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.7.ebuild +++ /dev/null @@ -1,611 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -WANT_LIBTOOL="none" - -inherit autotools check-reqs flag-o-matic linux-info -inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs -inherit verify-sig - -REAL_PV=${PV#0.} -MY_PV=${REAL_PV} -MY_P="Python-${MY_PV%_p*}" -PYVER="$(ver_cut 2-3)t" -PATCHSET="python-gentoo-patches-${MY_PV}_p1" - -DESCRIPTION="Freethreading (no-GIL) version of Python programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz.asc - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE=" - bluetooth debug +ensurepip examples gdbm libedit +ncurses pgo - +readline +sqlite +ssl test tk valgrind -" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-crypt/libb2 - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=virtual/zlib-1.1.3:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( - !libedit? ( >=sys-libs/readline-4.1:= ) - libedit? ( dev-libs/libedit:= ) - ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi -PDEPEND=" - ensurepip? ( dev-python/ensurepip-pip ) -" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER%t} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -declare -rgA PYTHON_KERNEL_CHECKS=( - ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589 - ["DNOTIFY"]="test_fcntl" # bug 938662 -) - -pkg_pretend() { - if use pgo || use test; then - check-reqs_pkg_pretend - fi - - ewarn "Freethreading build is considered experimental upstream. Using it" - ewarn "could lead to unexpected breakage, including race conditions" - ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless" - ewarn "you can reproduce the problem with dev-lang/python. Instead," - ewarn "please consider reporting freethreading problems upstream." -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use test || use pgo; then - check-reqs_pkg_setup - - local CONFIG_CHECK - for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do - CONFIG_CHECK+="~${f} " - done - linux-info_pkg_setup - fi - fi -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - # TODO: Makefile has annoying deps on expat headers - #rm -r Modules/expat || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die - - # breaks tests when using --with-wheel-pkg-dir - rm -r Lib/test/wheeldata || die - - eautoreconf -} - -build_cbuild_python() { - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --prefix="${BROOT}"/usr - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross to satisfy --with-build-python. - --without-lto - --without-readline - --disable-optimizations - ) - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - - # Avoid as many dependencies as possible for the cross build. - mkdir Modules || die - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - _dbm _gdbm - _sqlite3 - _hashlib _ssl - _curses _curses_panel - readline - _tkinter - pyexpat - zlib - # We disabled these for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. This should be rechecked for the pure Makefile approach, - # and uncommented if needed. - #_ctypes - EOF - - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the --with-build-python value - # immediately. - emake - popd &> /dev/null || die -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # running gdb inside an ebuild as non-root, within sandbox, - # and possibly within a container is unreliable - -x test_gdb - # this is actually test_gdb.test_pretty_print - -x test_pretty_print - # https://bugs.gentoo.org/933840 - -x test_perf_profiler - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # Kernel-config specific skips - for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do - if ! linux_config_exists || ! linux_chkconfig_present "${option}" - then - COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" ) - fi - done - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - --verbose3 - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - ) - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - # PGO sometimes fails randomly - local -x PROFILE_TASK="${profile_task_flags[*]} || true" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --without-static-libpython - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-libmpdec - --with-platlibdir=lib - --with-pkg-config=yes - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - --disable-gil - - $(use_with debug assertions) - $(use_enable pgo optimizations) - $(use_with readline readline "$(usex libedit editline readline)") - $(use_with valgrind) - ) - - if tc-is-lto; then - myeconfargs+=( - --with-lto - ) - fi - - # Force-disable modules we don't want built. - # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - $(usev !gdbm '_gdbm _dbm') - $(usev !sqlite '_sqlite3') - $(usev !ssl '_hashlib _ssl') - $(usev !ncurses '_curses _curses_panel') - $(usev !readline 'readline') - $(usev !tk '_tkinter') - EOF - - # disable implicit optimization/debugging flags - local -x OPT= - - if tc-is-cross-compiler ; then - build_cbuild_python - myeconfargs+=( - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python - ) - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - export PYTHONSTRICTEXTENSIONBUILD=1 - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # this just happens to skip test_support.test_freeze that is broken - # without bundled expat - # TODO: get a proper skip for it upstream - local -x LOGNAME=buildbot - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - # -j1 hack for now for bug #843458 - emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - # Fix collision with GIL-enabled build. - rm "${ED}/usr/bin/python${PYVER%t}" || die - mv "${ED}"/usr/bin/pydoc{${PYVER%t},${PYVER}} || die - mv "${ED}"/usr/share/man/man1/python{${PYVER%t},${PYVER}}.1 || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use sqlite; then - rm -r "${libdir}/"sqlite3 || die - fi - if use tk; then - # rename to avoid collision with dev-lang/python - mv "${ED}"/usr/bin/idle{${PYVER%t},${PYVER}} || die - else - rm -r "${ED}/usr/bin/idle${PYVER%t}" || die - rm -r "${libdir}/"{idlelib,tkinter} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" - - # python-exec wrapping support - local pymajor=${PYVER%.*} - local EPYTHON=python${PYVER} - local scriptdir=${D}$(python_get_scriptdir) - mkdir -p "${scriptdir}" || die - # python and pythonX - ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die - ln -s "python${pymajor}" "${scriptdir}/python" || die - # python-config and pythonX-config - # note: we need to create a wrapper rather than symlinking it due - # to some random dirname(argv[0]) magic performed by python-config - cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die - #!/bin/sh - exec "${abiver}-config" "\${@}" - EOF - chmod +x "${scriptdir}/python${pymajor}-config" || die - ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die - # pydoc - ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die - # idle - if use tk; then - ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.8.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.8.ebuild deleted file mode 100644 index b87de46d79e..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.8.ebuild +++ /dev/null @@ -1,611 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -WANT_LIBTOOL="none" - -inherit autotools check-reqs flag-o-matic linux-info -inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs -inherit verify-sig - -REAL_PV=${PV#0.} -MY_PV=${REAL_PV} -MY_P="Python-${MY_PV%_p*}" -PYVER="$(ver_cut 2-3)t" -PATCHSET="python-gentoo-patches-${MY_PV}" - -DESCRIPTION="Freethreading (no-GIL) version of Python programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz.asc - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE=" - bluetooth debug +ensurepip examples gdbm libedit +ncurses pgo - +readline +sqlite +ssl test tk valgrind -" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-crypt/libb2 - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=virtual/zlib-1.1.3:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( - !libedit? ( >=sys-libs/readline-4.1:= ) - libedit? ( dev-libs/libedit:= ) - ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi -PDEPEND=" - ensurepip? ( dev-python/ensurepip-pip ) -" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER%t} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -declare -rgA PYTHON_KERNEL_CHECKS=( - ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589 - ["DNOTIFY"]="test_fcntl" # bug 938662 -) - -pkg_pretend() { - if use pgo || use test; then - check-reqs_pkg_pretend - fi - - ewarn "Freethreading build is considered experimental upstream. Using it" - ewarn "could lead to unexpected breakage, including race conditions" - ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless" - ewarn "you can reproduce the problem with dev-lang/python. Instead," - ewarn "please consider reporting freethreading problems upstream." -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use test || use pgo; then - check-reqs_pkg_setup - - local CONFIG_CHECK - for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do - CONFIG_CHECK+="~${f} " - done - linux-info_pkg_setup - fi - fi -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - # TODO: Makefile has annoying deps on expat headers - #rm -r Modules/expat || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die - - # breaks tests when using --with-wheel-pkg-dir - rm -r Lib/test/wheeldata || die - - eautoreconf -} - -build_cbuild_python() { - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --prefix="${BROOT}"/usr - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross to satisfy --with-build-python. - --without-lto - --without-readline - --disable-optimizations - ) - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - - # Avoid as many dependencies as possible for the cross build. - mkdir Modules || die - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - _dbm _gdbm - _sqlite3 - _hashlib _ssl - _curses _curses_panel - readline - _tkinter - pyexpat - zlib - # We disabled these for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. This should be rechecked for the pure Makefile approach, - # and uncommented if needed. - #_ctypes - EOF - - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the --with-build-python value - # immediately. - emake - popd &> /dev/null || die -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # running gdb inside an ebuild as non-root, within sandbox, - # and possibly within a container is unreliable - -x test_gdb - # this is actually test_gdb.test_pretty_print - -x test_pretty_print - # https://bugs.gentoo.org/933840 - -x test_perf_profiler - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # Kernel-config specific skips - for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do - if ! linux_config_exists || ! linux_chkconfig_present "${option}" - then - COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" ) - fi - done - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - --verbose3 - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - ) - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - # PGO sometimes fails randomly - local -x PROFILE_TASK="${profile_task_flags[*]} || true" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --without-static-libpython - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-libmpdec - --with-platlibdir=lib - --with-pkg-config=yes - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - --disable-gil - - $(use_with debug assertions) - $(use_enable pgo optimizations) - $(use_with readline readline "$(usex libedit editline readline)") - $(use_with valgrind) - ) - - if tc-is-lto; then - myeconfargs+=( - --with-lto - ) - fi - - # Force-disable modules we don't want built. - # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - $(usev !gdbm '_gdbm _dbm') - $(usev !sqlite '_sqlite3') - $(usev !ssl '_hashlib _ssl') - $(usev !ncurses '_curses _curses_panel') - $(usev !readline 'readline') - $(usev !tk '_tkinter') - EOF - - # disable implicit optimization/debugging flags - local -x OPT= - - if tc-is-cross-compiler ; then - build_cbuild_python - myeconfargs+=( - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python - ) - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - export PYTHONSTRICTEXTENSIONBUILD=1 - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # this just happens to skip test_support.test_freeze that is broken - # without bundled expat - # TODO: get a proper skip for it upstream - local -x LOGNAME=buildbot - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - # -j1 hack for now for bug #843458 - emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - # Fix collision with GIL-enabled build. - rm "${ED}/usr/bin/python${PYVER%t}" || die - mv "${ED}"/usr/bin/pydoc{${PYVER%t},${PYVER}} || die - mv "${ED}"/usr/share/man/man1/python{${PYVER%t},${PYVER}}.1 || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use sqlite; then - rm -r "${libdir}/"sqlite3 || die - fi - if use tk; then - # rename to avoid collision with dev-lang/python - mv "${ED}"/usr/bin/idle{${PYVER%t},${PYVER}} || die - else - rm -r "${ED}/usr/bin/idle${PYVER%t}" || die - rm -r "${libdir}/"{idlelib,tkinter} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" - - # python-exec wrapping support - local pymajor=${PYVER%.*} - local EPYTHON=python${PYVER} - local scriptdir=${D}$(python_get_scriptdir) - mkdir -p "${scriptdir}" || die - # python and pythonX - ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die - ln -s "python${pymajor}" "${scriptdir}/python" || die - # python-config and pythonX-config - # note: we need to create a wrapper rather than symlinking it due - # to some random dirname(argv[0]) magic performed by python-config - cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die - #!/bin/sh - exec "${abiver}-config" "\${@}" - EOF - chmod +x "${scriptdir}/python${pymajor}-config" || die - ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die - # pydoc - ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die - # idle - if use tk; then - ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0.ebuild deleted file mode 100644 index 231a1c6034f..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0.ebuild +++ /dev/null @@ -1,635 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -VERIFY_SIG_METHOD=sigstore -WANT_LIBTOOL="none" - -inherit autotools check-reqs eapi9-ver flag-o-matic linux-info -inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs -inherit verify-sig - -REAL_PV=${PV#0.} -MY_PV=${REAL_PV/_/} -MY_P="Python-${MY_PV%_p*}" -PYVER="$(ver_cut 2-3)t" -PATCHSET="python-gentoo-patches-${MY_PV}" - -DESCRIPTION="Freethreading (no-GIL) version of Python programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz.sigstore - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE=" - bluetooth debug +ensurepip examples gdbm libedit +ncurses pgo - +readline +sqlite +ssl tail-call-interp test tk valgrind -" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-arch/zstd:= - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=virtual/zlib-1.1.3:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( - !libedit? ( >=sys-libs/readline-4.1:= ) - libedit? ( dev-libs/libedit:= ) - ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - tail-call-interp? ( - || ( - >=sys-devel/gcc-15:* - >=llvm-core/clang-19:* - ) - ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi -PDEPEND=" - ensurepip? ( dev-python/ensurepip-pip ) -" - -# https://www.python.org/downloads/metadata/sigstore/ -VERIFY_SIG_CERT_IDENTITY=hugo@python.org -VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER%t} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -declare -rgA PYTHON_KERNEL_CHECKS=( - ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589 - ["DNOTIFY"]="test_fcntl" # bug 938662 -) - -pkg_pretend() { - if use pgo || use test; then - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use test || use pgo; then - check-reqs_pkg_setup - - local CONFIG_CHECK - for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do - CONFIG_CHECK+="~${f} " - done - linux-info_pkg_setup - fi - if use tail-call-interp; then - tc-check-min_ver gcc 15 - tc-check-min_ver clang 19 - fi - fi -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - # TODO: Makefile has annoying deps on expat headers - #rm -r Modules/expat || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die - - # breaks tests when using --with-wheel-pkg-dir - rm -r Lib/test/wheeldata || die - - eautoreconf -} - -build_cbuild_python() { - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --prefix="${BROOT}"/usr - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross to satisfy --with-build-python. - --without-lto - --without-readline - --disable-optimizations - ) - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - - # Avoid as many dependencies as possible for the cross build. - mkdir Modules || die - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - _dbm _gdbm - _sqlite3 - _hashlib _ssl - _curses _curses_panel - readline - _tkinter - pyexpat - zlib - # We disabled these for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. This should be rechecked for the pure Makefile approach, - # and uncommented if needed. - #_ctypes - EOF - - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the --with-build-python value - # immediately. - emake - popd &> /dev/null || die -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # running gdb inside an ebuild as non-root, within sandbox, - # and possibly within a container is unreliable - -x test_gdb - # this is actually test_gdb.test_pretty_print - -x test_pretty_print - # https://bugs.gentoo.org/933840 - -x test_perf_profiler - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # Kernel-config specific skips - for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do - if ! linux_config_exists || ! linux_chkconfig_present "${option}" - then - COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" ) - fi - done - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - --verbose3 - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - - # Test terminates abruptly which corrupts written profile data - # bug #964023 - -x test_pyrepl - ) - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - # PGO sometimes fails randomly - local -x PROFILE_TASK="${profile_task_flags[*]} || true" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --without-static-libpython - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-libmpdec - --with-platlibdir=lib - --with-pkg-config=yes - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - --disable-gil - - $(use_with debug assertions) - $(use_enable pgo optimizations) - $(use_with readline readline "$(usex libedit editline readline)") - $(use_with tail-call-interp) - $(use_with valgrind) - ) - - if tc-is-lto; then - myeconfargs+=( - --with-lto - ) - fi - - # Force-disable modules we don't want built. - # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - $(usev !gdbm '_gdbm _dbm') - $(usev !sqlite '_sqlite3') - $(usev !ssl '_hashlib _ssl') - $(usev !ncurses '_curses _curses_panel') - $(usev !readline 'readline') - $(usev !tk '_tkinter') - EOF - - # disable implicit optimization/debugging flags - local -x OPT= - - if tc-is-cross-compiler ; then - build_cbuild_python - myeconfargs+=( - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python - ) - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - export PYTHONSTRICTEXTENSIONBUILD=1 - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # this just happens to skip test_support.test_freeze that is broken - # without bundled expat - # TODO: get a proper skip for it upstream - local -x LOGNAME=buildbot - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - # -j1 hack for now for bug #843458 - emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - # Fix collision with GIL-enabled build. - rm "${ED}/usr/bin/python${PYVER%t}" || die - mv "${ED}"/usr/bin/pydoc{${PYVER%t},${PYVER}} || die - mv "${ED}"/usr/share/man/man1/python{${PYVER%t},${PYVER}}.1 || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use sqlite; then - rm -r "${libdir}/"sqlite3 || die - fi - if use tk; then - # rename to avoid collision with dev-lang/python - mv "${ED}"/usr/bin/idle{${PYVER%t},${PYVER}} || die - else - rm -r "${ED}/usr/bin/idle${PYVER%t}" || die - rm -r "${libdir}/"{idlelib,tkinter} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" - - # python-exec wrapping support - local pymajor=${PYVER%.*} - local EPYTHON=python${PYVER} - local scriptdir=${D}$(python_get_scriptdir) - mkdir -p "${scriptdir}" || die - # python and pythonX - ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die - ln -s "python${pymajor}" "${scriptdir}/python" || die - # python-config and pythonX-config - # note: we need to create a wrapper rather than symlinking it due - # to some random dirname(argv[0]) magic performed by python-config - cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die - #!/bin/sh - exec "${abiver}-config" "\${@}" - EOF - chmod +x "${scriptdir}/python${pymajor}-config" || die - ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die - # pydoc - ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die - # idle - if use tk; then - ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die - fi -} - -pkg_postinst() { - if ver_replacing -lt 0.3.14.0_beta3; then - ewarn "Python 3.14.0b3 has changed its module ABI. The .pyc files" - ewarn "installed previously are no longer valid and will be regenerated" - ewarn "(or ignored) on the next import. This may cause sandbox failures" - ewarn "when installing some packages and checksum mismatches when removing" - ewarn "old versions. To actively prevent this, rebuild all packages" - ewarn "installing Python 3.14 modules, e.g. using:" - ewarn - ewarn " emerge -1v /usr/lib/python3.14t/site-packages" - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.3.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.3.ebuild index 231a1c6034f..af4de7124c2 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="8" @@ -88,7 +88,7 @@ BDEPEND=" virtual/pkgconfig tail-call-interp? ( || ( - >=sys-devel/gcc-15:* + >=sys-devel/gcc-16:* >=llvm-core/clang-19:* ) ) @@ -136,7 +136,7 @@ pkg_setup() { linux-info_pkg_setup fi if use tail-call-interp; then - tc-check-min_ver gcc 15 + tc-check-min_ver gcc 16 tc-check-min_ver clang 19 fi fi diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.0_alpha1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.0_alpha1.ebuild deleted file mode 100644 index d4df9a53af7..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.0_alpha1.ebuild +++ /dev/null @@ -1,598 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -VERIFY_SIG_METHOD=sigstore -WANT_LIBTOOL="none" - -inherit autotools check-reqs flag-o-matic linux-info -inherit multiprocessing pax-utils toolchain-funcs verify-sig - -REAL_PV=${PV#0.} -MY_PV=${REAL_PV/_alpha/a} -MY_P="Python-${MY_PV%_p*}" -PYVER="$(ver_cut 2-3)t" -PATCHSET="python-gentoo-patches-${MY_PV}" - -DESCRIPTION="Freethreading (no-GIL) version of Python programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz.sigstore - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -IUSE=" - bluetooth debug +ensurepip examples gdbm libedit +ncurses pgo - +readline +sqlite +ssl tail-call-interp test tk valgrind -" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-arch/zstd:= - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=virtual/zlib-1.1.3:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( - !libedit? ( >=sys-libs/readline-4.1:= ) - libedit? ( dev-libs/libedit:= ) - ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - dev-python/ensurepip-wheel - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - tail-call-interp? ( - || ( - >=sys-devel/gcc-16:* - >=llvm-core/clang-19:* - ) - ) -" -PDEPEND=" - ensurepip? ( dev-python/ensurepip-pip ) -" - -# https://www.python.org/downloads/metadata/sigstore/ -VERIFY_SIG_CERT_IDENTITY=hugo@python.org -VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER%t} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -declare -rgA PYTHON_KERNEL_CHECKS=( - ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589 - ["DNOTIFY"]="test_fcntl" # bug 938662 -) - -pkg_pretend() { - if use pgo || use test; then - check-reqs_pkg_pretend - fi - - ewarn "Freethreading build is considered experimental upstream. Using it" - ewarn "could lead to unexpected breakage, including race conditions" - ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless" - ewarn "you can reproduce the problem with dev-lang/python. Instead," - ewarn "please consider reporting freethreading problems upstream." -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use test || use pgo; then - check-reqs_pkg_setup - - local CONFIG_CHECK - for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do - CONFIG_CHECK+="~${f} " - done - linux-info_pkg_setup - fi - if use tail-call-interp; then - tc-check-min_ver gcc 16 - tc-check-min_ver clang 19 - fi - fi -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - # TODO: Makefile has annoying deps on expat headers - #rm -r Modules/expat || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die - - # breaks tests when using --with-wheel-pkg-dir - rm -r Lib/test/wheeldata || die - - eautoreconf -} - -build_cbuild_python() { - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --prefix="${BROOT}"/usr - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross to satisfy --with-build-python. - --without-lto - --without-readline - --disable-optimizations - ) - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - - # Avoid as many dependencies as possible for the cross build. - mkdir Modules || die - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - _dbm _gdbm - _sqlite3 - _hashlib _ssl - _curses _curses_panel - readline - _tkinter - pyexpat - zlib - # We disabled these for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. This should be rechecked for the pure Makefile approach, - # and uncommented if needed. - #_ctypes - EOF - - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the --with-build-python value - # immediately. - emake - popd &> /dev/null || die -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # running gdb inside an ebuild as non-root, within sandbox, - # and possibly within a container is unreliable - -x test_gdb - # this is actually test_gdb.test_pretty_print - -x test_pretty_print - # https://bugs.gentoo.org/933840 - -x test_perf_profiler - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # Kernel-config specific skips - for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do - if ! linux_config_exists || ! linux_chkconfig_present "${option}" - then - COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" ) - fi - done - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - --verbose3 - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - - # Test terminates abruptly which corrupts written profile data - # bug #964023 - -x test_pyrepl - ) - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - # PGO sometimes fails randomly - local -x PROFILE_TASK="${profile_task_flags[*]} || true" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --without-static-libpython - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-libmpdec - --with-platlibdir=lib - --with-pkg-config=yes - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - --disable-gil - - $(use_with debug assertions) - $(use_enable pgo optimizations) - $(use_with readline readline "$(usex libedit editline readline)") - $(use_with tail-call-interp) - $(use_with valgrind) - ) - - if tc-is-lto; then - myeconfargs+=( - --with-lto - ) - fi - - # Force-disable modules we don't want built. - # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - $(usev !gdbm '_gdbm _dbm') - $(usev !sqlite '_sqlite3') - $(usev !ssl '_hashlib _ssl') - $(usev !ncurses '_curses _curses_panel') - $(usev !readline 'readline') - $(usev !tk '_tkinter') - EOF - - # disable implicit optimization/debugging flags - local -x OPT= - - if tc-is-cross-compiler ; then - build_cbuild_python - myeconfargs+=( - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python - ) - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - export PYTHONSTRICTEXTENSIONBUILD=1 - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # this just happens to skip test_support.test_freeze that is broken - # without bundled expat - # TODO: get a proper skip for it upstream - local -x LOGNAME=buildbot - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - # -j1 hack for now for bug #843458 - emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - # Fix collision with GIL-enabled build. - rm "${ED}/usr/bin/python${PYVER%t}" || die - mv "${ED}"/usr/bin/pydoc{${PYVER%t},${PYVER}} || die - mv "${ED}"/usr/share/man/man1/python{${PYVER%t},${PYVER}}.1 || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use sqlite; then - rm -r "${libdir}/"sqlite3 || die - fi - if use tk; then - # rename to avoid collision with dev-lang/python - mv "${ED}"/usr/bin/idle{${PYVER%t},${PYVER}} || die - else - rm -r "${ED}/usr/bin/idle${PYVER%t}" || die - rm -r "${libdir}/"{idlelib,tkinter} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.0_alpha2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.0_alpha5.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.0_alpha2.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.0_alpha5.ebuild index d4df9a53af7..8d0f400d880 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.0_alpha2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.0_alpha5.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="8" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.0_alpha3.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.0_alpha6.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.0_alpha3.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.0_alpha6.ebuild index d4df9a53af7..8d0f400d880 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.0_alpha3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.0_alpha6.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="8" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18_p2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18_p2.ebuild deleted file mode 100644 index 38b550df491..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18_p2.ebuild +++ /dev/null @@ -1,572 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" -WANT_LIBTOOL="none" - -inherit autotools check-reqs flag-o-matic multiprocessing pax-utils -inherit prefix toolchain-funcs verify-sig - -MY_PV=${PV/_rc/rc} -MY_P="Python-${MY_PV%_p*}" -PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-${MY_PV}" - -DESCRIPTION="An interpreted, interactive, object-oriented programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE=" - bluetooth debug +ensurepip examples gdbm libedit +ncurses pgo - +readline +sqlite +ssl test tk valgrind -" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=virtual/zlib-1.1.3:= - virtual/libcrypt:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( - !libedit? ( >=sys-libs/readline-4.1:= ) - libedit? ( dev-libs/libedit:= ) - ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - app-arch/xz-utils - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-python ) -" -PDEPEND=" - ensurepip? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) -" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -pkg_pretend() { - use test && check-reqs_pkg_pretend -} - -pkg_setup() { - use test && check-reqs_pkg_setup -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - rm -r Modules/expat || die - rm -r Modules/_ctypes/libffi* || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # https://bugs.gentoo.org/850151 - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - local jobs=$(makeopts_jobs) - sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die - sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die - - eautoreconf -} - -build_cbuild_python() { - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 and bug #864911. - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --prefix="${BROOT}"/usr - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross. - --without-lto - --disable-optimizations - ) - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. - PYTHON_DISABLE_MODULES+=" _ctypes _crypt" \ - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Avoid as many dependencies as possible for the cross build. - cat >> Makefile <<-EOF || die - MODULE_NIS=disabled - MODULE__DBM=disabled - MODULE__GDBM=disabled - MODULE__DBM=disabled - MODULE__SQLITE3=disabled - MODULE__HASHLIB=disabled - MODULE__SSL=disabled - MODULE__CURSES=disabled - MODULE__CURSES_PANEL=disabled - MODULE_READLINE=disabled - MODULE__TKINTER=disabled - MODULE_PYEXPAT=disabled - MODULE_ZLIB=disabled - EOF - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the Python it was pointed to - # immediately. - PYTHON_DISABLE_MODULES+=" _ctypes _crypt" emake - popd &> /dev/null || die -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - local disable - use gdbm || disable+=" gdbm" - use ncurses || disable+=" _curses _curses_panel" - use readline || disable+=" readline" - use sqlite || disable+=" _sqlite3" - use ssl || export PYTHON_DISABLE_SSL="1" - use tk || disable+=" _tkinter" - export PYTHON_DISABLE_MODULES="${disable}" - - if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then - einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}" - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # running gdb inside an ebuild as non-root, within sandbox, - # and possibly within a container is unreliable - -x test_gdb - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_descr - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - -x test_descr - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_concurrent_futures - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - profile_task_flags+=( - -x test_os - ) - ;; - hppa*) - profile_task_flags+=( - -x test_descr - # bug 931908 - -x test_exceptions - -x test_os - ) - ;; - powerpc64-*) # big endian - profile_task_flags+=( - # bug 931908 - -x test_exceptions - ) - ;; - riscv*) - profile_task_flags+=( - -x test_statistics - ) - ;; - esac - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - local -x PROFILE_TASK="${profile_task_flags[*]}" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --without-static-libpython - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-ffi - --with-system-libmpdec - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - - $(use_with debug assertions) - $(use_enable pgo optimizations) - $(use_with readline readline "$(usex libedit editline readline)") - $(use_with valgrind) - ) - - # disable implicit optimization/debugging flags - local -x OPT= - - # https://bugs.gentoo.org/700012 - if tc-is-lto; then - append-cflags $(test-flags-CC -ffat-lto-objects) - myeconfargs+=( - --with-lto - ) - fi - - if tc-is-cross-compiler ; then - build_cbuild_python - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - export PATH="${WORKDIR}/${P}-${CBUILD}:${PATH}" - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - hprefixify setup.py - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - # Prevent using distutils bundled by setuptools. - # https://bugs.gentoo.org/823728 - export SETUPTOOLS_USE_DISTUTILS=stdlib - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - emake DESTDIR="${D}" TEST_MODULES=no altinstall - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use ensurepip; then - rm -r "${libdir}"/ensurepip || die - fi - if ! use sqlite; then - rm -r "${libdir}/"sqlite3 || die - fi - if ! use tk; then - rm -r "${ED}/usr/bin/idle${PYVER}" || die - rm -r "${libdir}/"{idlelib,tkinter} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13_p1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13_p1.ebuild deleted file mode 100644 index 83a4e1b54b2..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13_p1.ebuild +++ /dev/null @@ -1,619 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" -WANT_LIBTOOL="none" - -inherit autotools check-reqs flag-o-matic multiprocessing pax-utils -inherit prefix python-utils-r1 toolchain-funcs verify-sig - -MY_PV=${PV/_rc/rc} -MY_P="Python-${MY_PV%_p*}" -PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-${MY_PV}" - -DESCRIPTION="An interpreted, interactive, object-oriented programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE=" - bluetooth debug +ensurepip examples gdbm libedit +ncurses pgo - +readline +sqlite +ssl test tk valgrind -" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-crypt/libb2 - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=virtual/zlib-1.1.3:= - virtual/libcrypt:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( - !libedit? ( >=sys-libs/readline-4.1:= ) - libedit? ( dev-libs/libedit:= ) - ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - app-arch/xz-utils - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-python ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi -PDEPEND=" - ensurepip? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) -" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -pkg_pretend() { - use test && check-reqs_pkg_pretend -} - -pkg_setup() { - use test && check-reqs_pkg_setup -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - rm -r Modules/expat || die - rm -r Modules/_ctypes/libffi* || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # https://bugs.gentoo.org/850151 - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - local jobs=$(makeopts_jobs) - sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die - sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die - - eautoreconf -} - -build_cbuild_python() { - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --prefix="${BROOT}"/usr - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross to satisfy --with-build-python. - --without-lto - --without-readline - --disable-optimizations - ) - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. - PYTHON_DISABLE_MODULES+=" _ctypes _crypt" \ - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Avoid as many dependencies as possible for the cross build. - cat >> Makefile <<-EOF || die - MODULE_NIS_STATE=disabled - MODULE__DBM_STATE=disabled - MODULE__GDBM_STATE=disabled - MODULE__DBM_STATE=disabled - MODULE__SQLITE3_STATE=disabled - MODULE__HASHLIB_STATE=disabled - MODULE__SSL_STATE=disabled - MODULE__CURSES_STATE=disabled - MODULE__CURSES_PANEL_STATE=disabled - MODULE_READLINE_STATE=disabled - MODULE__TKINTER_STATE=disabled - MODULE_PYEXPAT_STATE=disabled - MODULE_ZLIB_STATE=disabled - EOF - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the --with-build-python value - # immediately. - PYTHON_DISABLE_MODULES+=" _ctypes _crypt" emake - popd &> /dev/null || die -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # running gdb inside an ebuild as non-root, within sandbox, - # and possibly within a container is unreliable - -x test_gdb - # this is actually test_gdb.test_pretty_print - -x test_pretty_print - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_descr - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - -x test_descr - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_concurrent_futures - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - profile_task_flags+=( - -x test_os - ) - ;; - hppa*) - profile_task_flags+=( - -x test_descr - # bug 931908 - -x test_exceptions - -x test_os - ) - ;; - powerpc64-*) # big endian - profile_task_flags+=( - # bug 931908 - -x test_exceptions - ) - ;; - riscv*) - profile_task_flags+=( - -x test_statistics - ) - ;; - esac - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - local -x PROFILE_TASK="${profile_task_flags[*]}" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --without-static-libpython - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-ffi - --with-system-libmpdec - --with-platlibdir=lib - --with-pkg-config=yes - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - - $(use_with debug assertions) - $(use_enable pgo optimizations) - $(use_with readline readline "$(usex libedit editline readline)") - $(use_with valgrind) - ) - - # disable implicit optimization/debugging flags - local -x OPT= - - # https://bugs.gentoo.org/700012 - if tc-is-lto; then - append-cflags $(test-flags-CC -ffat-lto-objects) - myeconfargs+=( - --with-lto - ) - fi - - if tc-is-cross-compiler ; then - build_cbuild_python - myeconfargs+=( - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python - ) - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - hprefixify setup.py - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # force-disable modules we don't want built - local disable_modules=( NIS ) - use gdbm || disable_modules+=( _GDBM _DBM ) - use sqlite || disable_modules+=( _SQLITE3 ) - use ssl || disable_modules+=( _HASHLIB _SSL ) - use ncurses || disable_modules+=( _CURSES _CURSES_PANEL ) - use readline || disable_modules+=( READLINE ) - use tk || disable_modules+=( _TKINTER ) - - local mod - for mod in "${disable_modules[@]}"; do - echo "MODULE_${mod}_STATE=disabled" - done >> Makefile || die - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - # Prevent using distutils bundled by setuptools. - # https://bugs.gentoo.org/823728 - export SETUPTOOLS_USE_DISTUTILS=stdlib - export PYTHONSTRICTEXTENSIONBUILD=1 - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # this just happens to skip test_support.test_freeze that is broken - # without bundled expat - # TODO: get a proper skip for it upstream - local -x LOGNAME=buildbot - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - # -j1 hack for now for bug #843458 - emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use ensurepip; then - rm -r "${libdir}"/ensurepip || die - fi - if ! use sqlite; then - rm -r "${libdir}/"sqlite3 || die - fi - if ! use tk; then - rm -r "${ED}/usr/bin/idle${PYVER}" || die - rm -r "${libdir}/"{idlelib,tkinter} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" - - # python-exec wrapping support - local pymajor=${PYVER%.*} - local EPYTHON=python${PYVER} - local scriptdir=${D}$(python_get_scriptdir) - mkdir -p "${scriptdir}" || die - # python and pythonX - ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die - ln -s "python${pymajor}" "${scriptdir}/python" || die - # python-config and pythonX-config - # note: we need to create a wrapper rather than symlinking it due - # to some random dirname(argv[0]) magic performed by python-config - cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die - #!/bin/sh - exec "${abiver}-config" "\${@}" - EOF - chmod +x "${scriptdir}/python${pymajor}-config" || die - ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die - # 2to3, pydoc - ln -s "../../../bin/2to3-${PYVER}" "${scriptdir}/2to3" || die - ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die - # idle - if use tk; then - ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.11_p1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.11_p1.ebuild deleted file mode 100644 index 07f18eaa382..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.11_p1.ebuild +++ /dev/null @@ -1,602 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" -WANT_LIBTOOL="none" - -inherit autotools check-reqs flag-o-matic multiprocessing pax-utils -inherit python-utils-r1 toolchain-funcs verify-sig - -MY_PV=${PV/_rc/rc} -MY_P="Python-${MY_PV%_p*}" -PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-${MY_PV}" - -DESCRIPTION="An interpreted, interactive, object-oriented programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE=" - bluetooth debug +ensurepip examples gdbm libedit +ncurses pgo - +readline +sqlite +ssl test tk valgrind -" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-crypt/libb2 - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=virtual/zlib-1.1.3:= - virtual/libcrypt:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( - !libedit? ( >=sys-libs/readline-4.1:= ) - libedit? ( dev-libs/libedit:= ) - ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - app-arch/xz-utils - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - dev-python/ensurepip-wheel - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi -PDEPEND=" - ensurepip? ( dev-python/ensurepip-pip ) -" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -pkg_pretend() { - use test && check-reqs_pkg_pretend -} - -pkg_setup() { - use test && check-reqs_pkg_setup -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - # TODO: Makefile has annoying deps on expat headers - #rm -r Modules/expat || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die - - # breaks tests when using --with-wheel-pkg-dir - rm -r Lib/test/wheeldata || die - - eautoreconf -} - -build_cbuild_python() { - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --prefix="${BROOT}"/usr - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross to satisfy --with-build-python. - --without-lto - --without-readline - --disable-optimizations - ) - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - - # Avoid as many dependencies as possible for the cross build. - mkdir Modules || die - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - _dbm _gdbm - _sqlite3 - _hashlib _ssl - _curses _curses_panel - readline - _tkinter - pyexpat - zlib - # We disabled these for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. This should be rechecked for the pure Makefile approach, - # and uncommented if needed. - #_ctypes _crypt - EOF - - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the --with-build-python value - # immediately. - emake - popd &> /dev/null || die -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # running gdb inside an ebuild as non-root, within sandbox, - # and possibly within a container is unreliable - -x test_gdb - # this is actually test_gdb.test_pretty_print - -x test_pretty_print - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_concurrent_futures - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - profile_task_flags+=( - -x test_os - ) - ;; - hppa*) - profile_task_flags+=( - -x test_descr - # bug 931908 - -x test_exceptions - -x test_os - ) - ;; - powerpc64-*) # big endian - profile_task_flags+=( - # bug 931908 - -x test_exceptions - ) - ;; - riscv*) - profile_task_flags+=( - -x test_statistics - ) - ;; - esac - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - local -x PROFILE_TASK="${profile_task_flags[*]}" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --without-static-libpython - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-libmpdec - --with-platlibdir=lib - --with-pkg-config=yes - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - - $(use_with debug assertions) - $(use_enable pgo optimizations) - $(use_with readline readline "$(usex libedit editline readline)") - $(use_with valgrind) - ) - - if tc-is-lto; then - myeconfargs+=( - --with-lto - ) - fi - - # Force-disable modules we don't want built. - # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - $(usev !gdbm '_gdbm _dbm') - $(usev !sqlite '_sqlite3') - $(usev !ssl '_hashlib _ssl') - $(usev !ncurses '_curses _curses_panel') - $(usev !readline 'readline') - $(usev !tk '_tkinter') - EOF - - # disable implicit optimization/debugging flags - local -x OPT= - - if tc-is-cross-compiler ; then - build_cbuild_python - myeconfargs+=( - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python - ) - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - export PYTHONSTRICTEXTENSIONBUILD=1 - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # this just happens to skip test_support.test_freeze that is broken - # without bundled expat - # TODO: get a proper skip for it upstream - local -x LOGNAME=buildbot - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - # the Makefile rules are broken - # https://github.com/python/cpython/issues/100221 - mkdir -p "${libdir}"/lib-dynload || die - - # -j1 hack for now for bug #843458 - emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use sqlite; then - rm -r "${libdir}/"sqlite3 || die - fi - if ! use tk; then - rm -r "${ED}/usr/bin/idle${PYVER}" || die - rm -r "${libdir}/"{idlelib,tkinter} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" - - # python-exec wrapping support - local pymajor=${PYVER%.*} - local EPYTHON=python${PYVER} - local scriptdir=${D}$(python_get_scriptdir) - mkdir -p "${scriptdir}" || die - # python and pythonX - ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die - ln -s "python${pymajor}" "${scriptdir}/python" || die - # python-config and pythonX-config - # note: we need to create a wrapper rather than symlinking it due - # to some random dirname(argv[0]) magic performed by python-config - cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die - #!/bin/sh - exec "${abiver}-config" "\${@}" - EOF - chmod +x "${scriptdir}/python${pymajor}-config" || die - ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die - # 2to3, pydoc - ln -s "../../../bin/2to3-${PYVER}" "${scriptdir}/2to3" || die - ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die - # idle - if use tk; then - ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.11.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.11.ebuild index 7f49f2d3cf7..ba9ad75214d 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.11.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.11.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="8" @@ -32,7 +32,7 @@ S="${WORKDIR}/${MY_P}" LICENSE="PSF-2" SLOT="${PYVER}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" IUSE=" bluetooth debug +ensurepip examples gdbm jit libedit +ncurses pgo +readline +sqlite +ssl test tk valgrind diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.10.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.12.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.10.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.12.ebuild index 7f49f2d3cf7..b30dc24d04f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.10.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.12.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="8" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.5_p1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.5_p1.ebuild deleted file mode 100644 index 9193ed8daa1..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.5_p1.ebuild +++ /dev/null @@ -1,616 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -LLVM_COMPAT=( 18 ) -LLVM_OPTIONAL=1 -WANT_LIBTOOL="none" - -inherit autotools check-reqs flag-o-matic linux-info llvm-r1 -inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs -inherit verify-sig - -MY_PV=${PV} -MY_P="Python-${MY_PV%_p*}" -PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-${MY_PV}" - -DESCRIPTION="An interpreted, interactive, object-oriented programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE=" - bluetooth debug +ensurepip examples gdbm jit libedit +ncurses pgo - +readline +sqlite +ssl test tk valgrind -" -REQUIRED_USE="jit? ( ${LLVM_REQUIRED_USE} )" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-crypt/libb2 - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=virtual/zlib-1.1.3:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( - !libedit? ( >=sys-libs/readline-4.1:= ) - libedit? ( dev-libs/libedit:= ) - ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - jit? ( - $(llvm_gen_dep ' - llvm-core/clang:${LLVM_SLOT} - llvm-core/llvm:${LLVM_SLOT} - ') - ) - verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi -PDEPEND=" - ensurepip? ( dev-python/ensurepip-pip ) -" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -declare -rgA PYTHON_KERNEL_CHECKS=( - ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589 - ["DNOTIFY"]="test_fcntl" # bug 938662 -) - -pkg_pretend() { - if use pgo || use test; then - check-reqs_pkg_pretend - fi - - if use jit; then - ewarn "USE=jit is considered experimental upstream. Using it" - ewarn "could lead to unexpected breakage, including race conditions" - ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless" - ewarn "you can reproduce the problem with dev-lang/python[-jit]. Instead," - ewarn "please consider reporting JIT problems upstream." - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - use jit && llvm-r1_pkg_setup - if use test || use pgo; then - check-reqs_pkg_setup - - local CONFIG_CHECK - for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do - CONFIG_CHECK+="~${f} " - done - linux-info_pkg_setup - fi - fi -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - # TODO: Makefile has annoying deps on expat headers - #rm -r Modules/expat || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die - - # breaks tests when using --with-wheel-pkg-dir - rm -r Lib/test/wheeldata || die - - eautoreconf -} - -build_cbuild_python() { - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --prefix="${BROOT}"/usr - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross to satisfy --with-build-python. - --without-lto - --without-readline - --disable-optimizations - ) - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - - # Avoid as many dependencies as possible for the cross build. - mkdir Modules || die - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - _dbm _gdbm - _sqlite3 - _hashlib _ssl - _curses _curses_panel - readline - _tkinter - pyexpat - zlib - # We disabled these for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. This should be rechecked for the pure Makefile approach, - # and uncommented if needed. - #_ctypes - EOF - - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the --with-build-python value - # immediately. - emake - popd &> /dev/null || die -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # running gdb inside an ebuild as non-root, within sandbox, - # and possibly within a container is unreliable - -x test_gdb - # this is actually test_gdb.test_pretty_print - -x test_pretty_print - # https://bugs.gentoo.org/933840 - -x test_perf_profiler - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # Kernel-config specific skips - for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do - if ! linux_config_exists || ! linux_chkconfig_present "${option}" - then - COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" ) - fi - done - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - --verbose3 - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - ) - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - # PGO sometimes fails randomly - local -x PROFILE_TASK="${profile_task_flags[*]} || true" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --without-static-libpython - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-libmpdec - --with-platlibdir=lib - --with-pkg-config=yes - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - --enable-gil - - $(use_with debug assertions) - $(use_enable jit experimental-jit) - $(use_enable pgo optimizations) - $(use_with readline readline "$(usex libedit editline readline)") - $(use_with valgrind) - ) - - if tc-is-lto; then - myeconfargs+=( - --with-lto - ) - fi - - # Force-disable modules we don't want built. - # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - $(usev !gdbm '_gdbm _dbm') - $(usev !sqlite '_sqlite3') - $(usev !ssl '_hashlib _ssl') - $(usev !ncurses '_curses _curses_panel') - $(usev !readline 'readline') - $(usev !tk '_tkinter') - EOF - - # disable implicit optimization/debugging flags - local -x OPT= - - if tc-is-cross-compiler ; then - build_cbuild_python - myeconfargs+=( - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python - ) - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - export PYTHONSTRICTEXTENSIONBUILD=1 - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # this just happens to skip test_support.test_freeze that is broken - # without bundled expat - # TODO: get a proper skip for it upstream - local -x LOGNAME=buildbot - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - # -j1 hack for now for bug #843458 - emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use sqlite; then - rm -r "${libdir}/"sqlite3 || die - fi - if ! use tk; then - rm -r "${ED}/usr/bin/idle${PYVER}" || die - rm -r "${libdir}/"{idlelib,tkinter} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" - - # python-exec wrapping support - local pymajor=${PYVER%.*} - local EPYTHON=python${PYVER} - local scriptdir=${D}$(python_get_scriptdir) - mkdir -p "${scriptdir}" || die - # python and pythonX - ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die - ln -s "python${pymajor}" "${scriptdir}/python" || die - # python-config and pythonX-config - # note: we need to create a wrapper rather than symlinking it due - # to some random dirname(argv[0]) magic performed by python-config - cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die - #!/bin/sh - exec "${abiver}-config" "\${@}" - EOF - chmod +x "${scriptdir}/python${pymajor}-config" || die - ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die - # pydoc - ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die - # idle - if use tk; then - ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.7.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.7.ebuild deleted file mode 100644 index 83136dda312..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.7.ebuild +++ /dev/null @@ -1,616 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -LLVM_COMPAT=( 18 ) -LLVM_OPTIONAL=1 -WANT_LIBTOOL="none" - -inherit autotools check-reqs flag-o-matic linux-info llvm-r1 -inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs -inherit verify-sig - -MY_PV=${PV} -MY_P="Python-${MY_PV%_p*}" -PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-${MY_PV}_p1" - -DESCRIPTION="An interpreted, interactive, object-oriented programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE=" - bluetooth debug +ensurepip examples gdbm jit libedit +ncurses pgo - +readline +sqlite +ssl test tk valgrind -" -REQUIRED_USE="jit? ( ${LLVM_REQUIRED_USE} )" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-crypt/libb2 - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=virtual/zlib-1.1.3:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( - !libedit? ( >=sys-libs/readline-4.1:= ) - libedit? ( dev-libs/libedit:= ) - ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - jit? ( - $(llvm_gen_dep ' - llvm-core/clang:${LLVM_SLOT} - llvm-core/llvm:${LLVM_SLOT} - ') - ) - verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi -PDEPEND=" - ensurepip? ( dev-python/ensurepip-pip ) -" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -declare -rgA PYTHON_KERNEL_CHECKS=( - ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589 - ["DNOTIFY"]="test_fcntl" # bug 938662 -) - -pkg_pretend() { - if use pgo || use test; then - check-reqs_pkg_pretend - fi - - if use jit; then - ewarn "USE=jit is considered experimental upstream. Using it" - ewarn "could lead to unexpected breakage, including race conditions" - ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless" - ewarn "you can reproduce the problem with dev-lang/python[-jit]. Instead," - ewarn "please consider reporting JIT problems upstream." - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - use jit && llvm-r1_pkg_setup - if use test || use pgo; then - check-reqs_pkg_setup - - local CONFIG_CHECK - for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do - CONFIG_CHECK+="~${f} " - done - linux-info_pkg_setup - fi - fi -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - # TODO: Makefile has annoying deps on expat headers - #rm -r Modules/expat || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die - - # breaks tests when using --with-wheel-pkg-dir - rm -r Lib/test/wheeldata || die - - eautoreconf -} - -build_cbuild_python() { - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --prefix="${BROOT}"/usr - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross to satisfy --with-build-python. - --without-lto - --without-readline - --disable-optimizations - ) - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - - # Avoid as many dependencies as possible for the cross build. - mkdir Modules || die - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - _dbm _gdbm - _sqlite3 - _hashlib _ssl - _curses _curses_panel - readline - _tkinter - pyexpat - zlib - # We disabled these for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. This should be rechecked for the pure Makefile approach, - # and uncommented if needed. - #_ctypes - EOF - - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the --with-build-python value - # immediately. - emake - popd &> /dev/null || die -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # running gdb inside an ebuild as non-root, within sandbox, - # and possibly within a container is unreliable - -x test_gdb - # this is actually test_gdb.test_pretty_print - -x test_pretty_print - # https://bugs.gentoo.org/933840 - -x test_perf_profiler - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # Kernel-config specific skips - for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do - if ! linux_config_exists || ! linux_chkconfig_present "${option}" - then - COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" ) - fi - done - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - --verbose3 - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - ) - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - # PGO sometimes fails randomly - local -x PROFILE_TASK="${profile_task_flags[*]} || true" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --without-static-libpython - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-libmpdec - --with-platlibdir=lib - --with-pkg-config=yes - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - --enable-gil - - $(use_with debug assertions) - $(use_enable jit experimental-jit) - $(use_enable pgo optimizations) - $(use_with readline readline "$(usex libedit editline readline)") - $(use_with valgrind) - ) - - if tc-is-lto; then - myeconfargs+=( - --with-lto - ) - fi - - # Force-disable modules we don't want built. - # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - $(usev !gdbm '_gdbm _dbm') - $(usev !sqlite '_sqlite3') - $(usev !ssl '_hashlib _ssl') - $(usev !ncurses '_curses _curses_panel') - $(usev !readline 'readline') - $(usev !tk '_tkinter') - EOF - - # disable implicit optimization/debugging flags - local -x OPT= - - if tc-is-cross-compiler ; then - build_cbuild_python - myeconfargs+=( - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python - ) - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - export PYTHONSTRICTEXTENSIONBUILD=1 - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # this just happens to skip test_support.test_freeze that is broken - # without bundled expat - # TODO: get a proper skip for it upstream - local -x LOGNAME=buildbot - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - # -j1 hack for now for bug #843458 - emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use sqlite; then - rm -r "${libdir}/"sqlite3 || die - fi - if ! use tk; then - rm -r "${ED}/usr/bin/idle${PYVER}" || die - rm -r "${libdir}/"{idlelib,tkinter} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" - - # python-exec wrapping support - local pymajor=${PYVER%.*} - local EPYTHON=python${PYVER} - local scriptdir=${D}$(python_get_scriptdir) - mkdir -p "${scriptdir}" || die - # python and pythonX - ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die - ln -s "python${pymajor}" "${scriptdir}/python" || die - # python-config and pythonX-config - # note: we need to create a wrapper rather than symlinking it due - # to some random dirname(argv[0]) magic performed by python-config - cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die - #!/bin/sh - exec "${abiver}-config" "\${@}" - EOF - chmod +x "${scriptdir}/python${pymajor}-config" || die - ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die - # pydoc - ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die - # idle - if use tk; then - ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.8.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.8.ebuild deleted file mode 100644 index 7f49f2d3cf7..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.8.ebuild +++ /dev/null @@ -1,616 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -LLVM_COMPAT=( 18 ) -LLVM_OPTIONAL=1 -WANT_LIBTOOL="none" - -inherit autotools check-reqs flag-o-matic linux-info llvm-r1 -inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs -inherit verify-sig - -MY_PV=${PV} -MY_P="Python-${MY_PV%_p*}" -PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-${MY_PV}" - -DESCRIPTION="An interpreted, interactive, object-oriented programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE=" - bluetooth debug +ensurepip examples gdbm jit libedit +ncurses pgo - +readline +sqlite +ssl test tk valgrind -" -REQUIRED_USE="jit? ( ${LLVM_REQUIRED_USE} )" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-crypt/libb2 - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=virtual/zlib-1.1.3:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( - !libedit? ( >=sys-libs/readline-4.1:= ) - libedit? ( dev-libs/libedit:= ) - ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - jit? ( - $(llvm_gen_dep ' - llvm-core/clang:${LLVM_SLOT} - llvm-core/llvm:${LLVM_SLOT} - ') - ) - verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi -PDEPEND=" - ensurepip? ( dev-python/ensurepip-pip ) -" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -declare -rgA PYTHON_KERNEL_CHECKS=( - ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589 - ["DNOTIFY"]="test_fcntl" # bug 938662 -) - -pkg_pretend() { - if use pgo || use test; then - check-reqs_pkg_pretend - fi - - if use jit; then - ewarn "USE=jit is considered experimental upstream. Using it" - ewarn "could lead to unexpected breakage, including race conditions" - ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless" - ewarn "you can reproduce the problem with dev-lang/python[-jit]. Instead," - ewarn "please consider reporting JIT problems upstream." - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - use jit && llvm-r1_pkg_setup - if use test || use pgo; then - check-reqs_pkg_setup - - local CONFIG_CHECK - for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do - CONFIG_CHECK+="~${f} " - done - linux-info_pkg_setup - fi - fi -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - # TODO: Makefile has annoying deps on expat headers - #rm -r Modules/expat || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die - - # breaks tests when using --with-wheel-pkg-dir - rm -r Lib/test/wheeldata || die - - eautoreconf -} - -build_cbuild_python() { - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --prefix="${BROOT}"/usr - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross to satisfy --with-build-python. - --without-lto - --without-readline - --disable-optimizations - ) - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - - # Avoid as many dependencies as possible for the cross build. - mkdir Modules || die - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - _dbm _gdbm - _sqlite3 - _hashlib _ssl - _curses _curses_panel - readline - _tkinter - pyexpat - zlib - # We disabled these for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. This should be rechecked for the pure Makefile approach, - # and uncommented if needed. - #_ctypes - EOF - - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the --with-build-python value - # immediately. - emake - popd &> /dev/null || die -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # running gdb inside an ebuild as non-root, within sandbox, - # and possibly within a container is unreliable - -x test_gdb - # this is actually test_gdb.test_pretty_print - -x test_pretty_print - # https://bugs.gentoo.org/933840 - -x test_perf_profiler - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # Kernel-config specific skips - for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do - if ! linux_config_exists || ! linux_chkconfig_present "${option}" - then - COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" ) - fi - done - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - --verbose3 - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - ) - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - # PGO sometimes fails randomly - local -x PROFILE_TASK="${profile_task_flags[*]} || true" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --without-static-libpython - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-libmpdec - --with-platlibdir=lib - --with-pkg-config=yes - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - --enable-gil - - $(use_with debug assertions) - $(use_enable jit experimental-jit) - $(use_enable pgo optimizations) - $(use_with readline readline "$(usex libedit editline readline)") - $(use_with valgrind) - ) - - if tc-is-lto; then - myeconfargs+=( - --with-lto - ) - fi - - # Force-disable modules we don't want built. - # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - $(usev !gdbm '_gdbm _dbm') - $(usev !sqlite '_sqlite3') - $(usev !ssl '_hashlib _ssl') - $(usev !ncurses '_curses _curses_panel') - $(usev !readline 'readline') - $(usev !tk '_tkinter') - EOF - - # disable implicit optimization/debugging flags - local -x OPT= - - if tc-is-cross-compiler ; then - build_cbuild_python - myeconfargs+=( - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python - ) - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - export PYTHONSTRICTEXTENSIONBUILD=1 - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # this just happens to skip test_support.test_freeze that is broken - # without bundled expat - # TODO: get a proper skip for it upstream - local -x LOGNAME=buildbot - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - # -j1 hack for now for bug #843458 - emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use sqlite; then - rm -r "${libdir}/"sqlite3 || die - fi - if ! use tk; then - rm -r "${ED}/usr/bin/idle${PYVER}" || die - rm -r "${libdir}/"{idlelib,tkinter} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" - - # python-exec wrapping support - local pymajor=${PYVER%.*} - local EPYTHON=python${PYVER} - local scriptdir=${D}$(python_get_scriptdir) - mkdir -p "${scriptdir}" || die - # python and pythonX - ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die - ln -s "python${pymajor}" "${scriptdir}/python" || die - # python-config and pythonX-config - # note: we need to create a wrapper rather than symlinking it due - # to some random dirname(argv[0]) magic performed by python-config - cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die - #!/bin/sh - exec "${abiver}-config" "\${@}" - EOF - chmod +x "${scriptdir}/python${pymajor}-config" || die - ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die - # pydoc - ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die - # idle - if use tk; then - ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0.ebuild deleted file mode 100644 index a714a578a97..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0.ebuild +++ /dev/null @@ -1,646 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -LLVM_COMPAT=( 19 ) -LLVM_OPTIONAL=1 -VERIFY_SIG_METHOD=sigstore -WANT_LIBTOOL="none" - -inherit autotools check-reqs eapi9-ver flag-o-matic linux-info llvm-r1 -inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs -inherit verify-sig - -MY_PV=${PV/_/} -MY_P="Python-${MY_PV%_p*}" -PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-${MY_PV}" - -DESCRIPTION="An interpreted, interactive, object-oriented programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.sigstore - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE=" - bluetooth debug +ensurepip examples gdbm jit libedit +ncurses pgo - +readline +sqlite +ssl tail-call-interp test tk valgrind -" -REQUIRED_USE="jit? ( ${LLVM_REQUIRED_USE} )" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-arch/zstd:= - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=virtual/zlib-1.1.3:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( - !libedit? ( >=sys-libs/readline-4.1:= ) - libedit? ( dev-libs/libedit:= ) - ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - jit? ( - $(llvm_gen_dep ' - llvm-core/clang:${LLVM_SLOT} - llvm-core/llvm:${LLVM_SLOT} - ') - ) - tail-call-interp? ( - || ( - >=sys-devel/gcc-15:* - >=llvm-core/clang-19:* - ) - ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi -PDEPEND=" - ensurepip? ( dev-python/ensurepip-pip ) -" - -# https://www.python.org/downloads/metadata/sigstore/ -VERIFY_SIG_CERT_IDENTITY=hugo@python.org -VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER%t} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -declare -rgA PYTHON_KERNEL_CHECKS=( - ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589 - ["DNOTIFY"]="test_fcntl" # bug 938662 -) - -pkg_pretend() { - if use pgo || use test; then - check-reqs_pkg_pretend - fi - - if use jit; then - ewarn "USE=jit is considered experimental upstream. Using it" - ewarn "could lead to unexpected breakage, including race conditions" - ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless" - ewarn "you can reproduce the problem with dev-lang/python[-jit]. Instead," - ewarn "please consider reporting JIT problems upstream." - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - use jit && llvm-r1_pkg_setup - if use test || use pgo; then - check-reqs_pkg_setup - - local CONFIG_CHECK - for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do - CONFIG_CHECK+="~${f} " - done - linux-info_pkg_setup - fi - if use tail-call-interp; then - tc-check-min_ver gcc 15 - tc-check-min_ver clang 19 - fi - fi -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - # TODO: Makefile has annoying deps on expat headers - #rm -r Modules/expat || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die - - # breaks tests when using --with-wheel-pkg-dir - rm -r Lib/test/wheeldata || die - - eautoreconf -} - -build_cbuild_python() { - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --prefix="${BROOT}"/usr - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross to satisfy --with-build-python. - --without-lto - --without-readline - --disable-optimizations - ) - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - - # Avoid as many dependencies as possible for the cross build. - mkdir Modules || die - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - _dbm _gdbm - _sqlite3 - _hashlib _ssl - _curses _curses_panel - readline - _tkinter - pyexpat - zlib - # We disabled these for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. This should be rechecked for the pure Makefile approach, - # and uncommented if needed. - #_ctypes - EOF - - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the --with-build-python value - # immediately. - emake - popd &> /dev/null || die -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # running gdb inside an ebuild as non-root, within sandbox, - # and possibly within a container is unreliable - -x test_gdb - # this is actually test_gdb.test_pretty_print - -x test_pretty_print - # https://bugs.gentoo.org/933840 - -x test_perf_profiler - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # Kernel-config specific skips - for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do - if ! linux_config_exists || ! linux_chkconfig_present "${option}" - then - COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" ) - fi - done - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - --verbose3 - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - - # Test terminates abruptly which corrupts written profile data - # bug #964023 - -x test_pyrepl - ) - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - # PGO sometimes fails randomly - local -x PROFILE_TASK="${profile_task_flags[*]} || true" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --without-static-libpython - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-libmpdec - --with-platlibdir=lib - --with-pkg-config=yes - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - --enable-gil - - $(use_with debug assertions) - $(use_enable jit experimental-jit) - $(use_enable pgo optimizations) - $(use_with readline readline "$(usex libedit editline readline)") - $(use_with tail-call-interp) - $(use_with valgrind) - ) - - if tc-is-lto; then - myeconfargs+=( - --with-lto - ) - fi - - # Force-disable modules we don't want built. - # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - $(usev !gdbm '_gdbm _dbm') - $(usev !sqlite '_sqlite3') - $(usev !ssl '_hashlib _ssl') - $(usev !ncurses '_curses _curses_panel') - $(usev !readline 'readline') - $(usev !tk '_tkinter') - EOF - - # disable implicit optimization/debugging flags - local -x OPT= - - if tc-is-cross-compiler ; then - build_cbuild_python - myeconfargs+=( - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python - ) - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - export PYTHONSTRICTEXTENSIONBUILD=1 - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # this just happens to skip test_support.test_freeze that is broken - # without bundled expat - # TODO: get a proper skip for it upstream - local -x LOGNAME=buildbot - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - # -j1 hack for now for bug #843458 - emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use sqlite; then - rm -r "${libdir}/"sqlite3 || die - fi - if ! use tk; then - rm -r "${ED}/usr/bin/idle${PYVER}" || die - rm -r "${libdir}/"{idlelib,tkinter} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" - - # python-exec wrapping support - local pymajor=${PYVER%.*} - local EPYTHON=python${PYVER} - local scriptdir=${D}$(python_get_scriptdir) - mkdir -p "${scriptdir}" || die - # python and pythonX - ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die - ln -s "python${pymajor}" "${scriptdir}/python" || die - # python-config and pythonX-config - # note: we need to create a wrapper rather than symlinking it due - # to some random dirname(argv[0]) magic performed by python-config - cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die - #!/bin/sh - exec "${abiver}-config" "\${@}" - EOF - chmod +x "${scriptdir}/python${pymajor}-config" || die - ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die - # pydoc - ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die - # idle - if use tk; then - ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die - fi -} - -pkg_postinst() { - if ver_replacing -lt 3.14.0_beta3; then - ewarn "Python 3.14.0b3 has changed its module ABI. The .pyc files" - ewarn "installed previously are no longer valid and will be regenerated" - ewarn "(or ignored) on the next import. This may cause sandbox failures" - ewarn "when installing some packages and checksum mismatches when removing" - ewarn "old versions. To actively prevent this, rebuild all packages" - ewarn "installing Python 3.14 modules, e.g. using:" - ewarn - ewarn " emerge -1v /usr/lib/python3.14/site-packages" - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.2.ebuild index a22feaa7581..88d6e82e181 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="8" @@ -33,7 +33,7 @@ S="${WORKDIR}/${MY_P}" LICENSE="PSF-2" SLOT="${PYVER}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" IUSE=" bluetooth debug +ensurepip examples gdbm jit libedit +ncurses pgo +readline +sqlite +ssl tail-call-interp test tk valgrind diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.3.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.3.ebuild index 23b36510447..9d6cb54f1b1 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="8" @@ -96,7 +96,7 @@ BDEPEND=" ) tail-call-interp? ( || ( - >=sys-devel/gcc-15:* + >=sys-devel/gcc-16:* >=llvm-core/clang-19:* ) ) @@ -153,7 +153,7 @@ pkg_setup() { linux-info_pkg_setup fi if use tail-call-interp; then - tc-check-min_ver gcc 15 + tc-check-min_ver gcc 16 tc-check-min_ver clang 19 fi fi diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.0_alpha1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.0_alpha1.ebuild deleted file mode 100644 index aa17c91c384..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.0_alpha1.ebuild +++ /dev/null @@ -1,603 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -LLVM_COMPAT=( 19 ) -LLVM_OPTIONAL=1 -VERIFY_SIG_METHOD=sigstore -WANT_LIBTOOL="none" - -inherit autotools check-reqs flag-o-matic linux-info llvm-r1 -inherit multiprocessing pax-utils toolchain-funcs verify-sig - -MY_PV=${PV/_alpha/a} -MY_P="Python-${MY_PV%_p*}" -PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-${MY_PV}" - -DESCRIPTION="An interpreted, interactive, object-oriented programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.sigstore - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -IUSE=" - bluetooth debug +ensurepip examples gdbm jit libedit +ncurses pgo - +readline +sqlite +ssl tail-call-interp test tk valgrind -" -REQUIRED_USE="jit? ( ${LLVM_REQUIRED_USE} )" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-arch/zstd:= - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=virtual/zlib-1.1.3:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( - !libedit? ( >=sys-libs/readline-4.1:= ) - libedit? ( dev-libs/libedit:= ) - ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - dev-python/ensurepip-wheel - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - jit? ( - $(llvm_gen_dep ' - llvm-core/clang:${LLVM_SLOT} - llvm-core/llvm:${LLVM_SLOT} - ') - ) - tail-call-interp? ( - || ( - >=sys-devel/gcc-16:* - >=llvm-core/clang-19:* - ) - ) -" -PDEPEND=" - ensurepip? ( dev-python/ensurepip-pip ) -" - -# https://www.python.org/downloads/metadata/sigstore/ -VERIFY_SIG_CERT_IDENTITY=hugo@python.org -VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER%t} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -declare -rgA PYTHON_KERNEL_CHECKS=( - ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589 - ["DNOTIFY"]="test_fcntl" # bug 938662 -) - -pkg_pretend() { - if use pgo || use test; then - check-reqs_pkg_pretend - fi - - if use jit; then - ewarn "USE=jit is considered experimental upstream. Using it" - ewarn "could lead to unexpected breakage, including race conditions" - ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless" - ewarn "you can reproduce the problem with dev-lang/python[-jit]. Instead," - ewarn "please consider reporting JIT problems upstream." - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - use jit && llvm-r1_pkg_setup - if use test || use pgo; then - check-reqs_pkg_setup - - local CONFIG_CHECK - for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do - CONFIG_CHECK+="~${f} " - done - linux-info_pkg_setup - fi - if use tail-call-interp; then - tc-check-min_ver gcc 16 - tc-check-min_ver clang 19 - fi - fi -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - # TODO: Makefile has annoying deps on expat headers - #rm -r Modules/expat || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die - - # breaks tests when using --with-wheel-pkg-dir - rm -r Lib/test/wheeldata || die - - eautoreconf -} - -build_cbuild_python() { - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --prefix="${BROOT}"/usr - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross to satisfy --with-build-python. - --without-lto - --without-readline - --disable-optimizations - ) - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - - # Avoid as many dependencies as possible for the cross build. - mkdir Modules || die - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - _dbm _gdbm - _sqlite3 - _hashlib _ssl - _curses _curses_panel - readline - _tkinter - pyexpat - zlib - # We disabled these for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. This should be rechecked for the pure Makefile approach, - # and uncommented if needed. - #_ctypes - EOF - - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the --with-build-python value - # immediately. - emake - popd &> /dev/null || die -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # running gdb inside an ebuild as non-root, within sandbox, - # and possibly within a container is unreliable - -x test_gdb - # this is actually test_gdb.test_pretty_print - -x test_pretty_print - # https://bugs.gentoo.org/933840 - -x test_perf_profiler - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # Kernel-config specific skips - for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do - if ! linux_config_exists || ! linux_chkconfig_present "${option}" - then - COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" ) - fi - done - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - --verbose3 - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - - # Test terminates abruptly which corrupts written profile data - # bug #964023 - -x test_pyrepl - ) - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - # PGO sometimes fails randomly - local -x PROFILE_TASK="${profile_task_flags[*]} || true" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --without-static-libpython - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-libmpdec - --with-platlibdir=lib - --with-pkg-config=yes - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - --enable-gil - - $(use_with debug assertions) - $(use_enable jit experimental-jit) - $(use_enable pgo optimizations) - $(use_with readline readline "$(usex libedit editline readline)") - $(use_with tail-call-interp) - $(use_with valgrind) - ) - - if tc-is-lto; then - myeconfargs+=( - --with-lto - ) - fi - - # Force-disable modules we don't want built. - # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - $(usev !gdbm '_gdbm _dbm') - $(usev !sqlite '_sqlite3') - $(usev !ssl '_hashlib _ssl') - $(usev !ncurses '_curses _curses_panel') - $(usev !readline 'readline') - $(usev !tk '_tkinter') - EOF - - # disable implicit optimization/debugging flags - local -x OPT= - - if tc-is-cross-compiler ; then - build_cbuild_python - myeconfargs+=( - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python - ) - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - export PYTHONSTRICTEXTENSIONBUILD=1 - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # this just happens to skip test_support.test_freeze that is broken - # without bundled expat - # TODO: get a proper skip for it upstream - local -x LOGNAME=buildbot - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - # -j1 hack for now for bug #843458 - emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use sqlite; then - rm -r "${libdir}/"sqlite3 || die - fi - if ! use tk; then - rm -r "${ED}/usr/bin/idle${PYVER}" || die - rm -r "${libdir}/"{idlelib,tkinter} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.0_alpha2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.0_alpha5.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.0_alpha2.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.0_alpha5.ebuild index aa17c91c384..89c7211773e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.0_alpha2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.0_alpha5.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="8" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.0_alpha3.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.0_alpha6.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.0_alpha3.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.0_alpha6.ebuild index aa17c91c384..89c7211773e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.0_alpha3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.0_alpha6.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="8" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23_p2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23_p2.ebuild deleted file mode 100644 index 669020f55da..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23_p2.ebuild +++ /dev/null @@ -1,566 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" -WANT_LIBTOOL="none" - -inherit autotools check-reqs flag-o-matic multiprocessing pax-utils -inherit prefix toolchain-funcs verify-sig - -MY_PV=${PV/_rc/rc} -MY_P="Python-${MY_PV%_p*}" -PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-${MY_PV}" - -DESCRIPTION="An interpreted, interactive, object-oriented programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE=" - bluetooth debug +ensurepip examples gdbm +ncurses pgo +readline - +sqlite +ssl test tk valgrind -" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=virtual/zlib-1.1.3:= - virtual/libcrypt:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( >=sys-libs/readline-4.1:= ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - app-arch/xz-utils - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-python ) -" -PDEPEND=" - ensurepip? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) -" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -pkg_pretend() { - use test && check-reqs_pkg_pretend -} - -pkg_setup() { - use test && check-reqs_pkg_setup -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - rm -r Modules/expat || die - rm -r Modules/_ctypes/libffi* || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # https://bugs.gentoo.org/850151 - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - local jobs=$(makeopts_jobs) - sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die - sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die - - eautoreconf -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - local disable - use gdbm || disable+=" gdbm" - use ncurses || disable+=" _curses _curses_panel" - use readline || disable+=" readline" - use sqlite || disable+=" _sqlite3" - use ssl || export PYTHON_DISABLE_SSL="1" - use tk || disable+=" _tkinter" - export PYTHON_DISABLE_MODULES="${disable}" - - if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then - einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}" - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # running gdb inside an ebuild as non-root, within sandbox, - # and possibly within a container is unreliable - -x test_gdb - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_descr - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - -x test_descr - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_concurrent_futures - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - profile_task_flags+=( - -x test_os - ) - ;; - hppa*) - profile_task_flags+=( - -x test_descr - # bug 931908 - -x test_exceptions - -x test_os - ) - ;; - powerpc64-*) # big endian - profile_task_flags+=( - # bug 931908 - -x test_exceptions - ) - ;; - riscv*) - profile_task_flags+=( - -x test_statistics - ) - ;; - esac - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - local -x PROFILE_TASK="${profile_task_flags[*]}" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-ffi - --with-system-libmpdec - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - - $(use_with debug assertions) - $(use_enable pgo optimizations) - $(use_with valgrind) - ) - - # disable implicit optimization/debugging flags - local -x OPT= - - # https://bugs.gentoo.org/700012 - if tc-is-lto; then - append-cflags $(test-flags-CC -ffat-lto-objects) - myeconfargs+=( - --with-lto - ) - fi - - if tc-is-cross-compiler ; then - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 and bug #864911. - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross. - --without-lto - --disable-optimizations - ) - - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - export PATH="${WORKDIR}/${P}-${CBUILD}:${PATH}" - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. - PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" \ - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Avoid as many dependencies as possible for the cross build. - cat >> Makefile <<-EOF || die - MODULE_NIS=disabled - MODULE__DBM=disabled - MODULE__GDBM=disabled - MODULE__DBM=disabled - MODULE__SQLITE3=disabled - MODULE__HASHLIB=disabled - MODULE__SSL=disabled - MODULE__CURSES=disabled - MODULE__CURSES_PANEL=disabled - MODULE_READLINE=disabled - MODULE__TKINTER=disabled - MODULE_PYEXPAT=disabled - MODULE_ZLIB=disabled - EOF - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the Python it was pointed to - # immediately. - PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" emake - popd &> /dev/null || die - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - hprefixify setup.py - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - # Prevent using distutils bundled by setuptools. - # https://bugs.gentoo.org/823728 - export SETUPTOOLS_USE_DISTUTILS=stdlib - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - emake DESTDIR="${D}" altinstall - - # Remove static library - rm "${ED}"/usr/$(get_libdir)/libpython*.a || die - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use ensurepip; then - rm -r "${libdir}"/ensurepip || die - fi - if ! use sqlite; then - rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die - fi - if ! use tk; then - rm -r "${ED}/usr/bin/idle${PYVER}" || die - rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.24.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.24.ebuild deleted file mode 100644 index 64c6412b21c..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.24.ebuild +++ /dev/null @@ -1,566 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" -WANT_LIBTOOL="none" - -inherit autotools check-reqs flag-o-matic multiprocessing pax-utils -inherit prefix toolchain-funcs verify-sig - -MY_PV=${PV/_rc/rc} -MY_P="Python-${MY_PV%_p*}" -PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-${MY_PV}" - -DESCRIPTION="An interpreted, interactive, object-oriented programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE=" - bluetooth debug +ensurepip examples gdbm +ncurses pgo +readline - +sqlite +ssl test tk valgrind -" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=virtual/zlib-1.1.3:= - virtual/libcrypt:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( >=sys-libs/readline-4.1:= ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - app-arch/xz-utils - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-python ) -" -PDEPEND=" - ensurepip? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) -" - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -pkg_pretend() { - use test && check-reqs_pkg_pretend -} - -pkg_setup() { - use test && check-reqs_pkg_setup -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - rm -r Modules/expat || die - rm -r Modules/_ctypes/libffi* || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # https://bugs.gentoo.org/850151 - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - local jobs=$(makeopts_jobs) - sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die - sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die - - eautoreconf -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - local disable - use gdbm || disable+=" gdbm" - use ncurses || disable+=" _curses _curses_panel" - use readline || disable+=" readline" - use sqlite || disable+=" _sqlite3" - use ssl || export PYTHON_DISABLE_SSL="1" - use tk || disable+=" _tkinter" - export PYTHON_DISABLE_MODULES="${disable}" - - if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then - einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}" - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # running gdb inside an ebuild as non-root, within sandbox, - # and possibly within a container is unreliable - -x test_gdb - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_descr - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - -x test_descr - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_concurrent_futures - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - profile_task_flags+=( - -x test_os - ) - ;; - hppa*) - profile_task_flags+=( - -x test_descr - # bug 931908 - -x test_exceptions - -x test_os - ) - ;; - powerpc64-*) # big endian - profile_task_flags+=( - # bug 931908 - -x test_exceptions - ) - ;; - riscv*) - profile_task_flags+=( - -x test_statistics - ) - ;; - esac - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - local -x PROFILE_TASK="${profile_task_flags[*]}" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-ffi - --with-system-libmpdec - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - - $(use_with debug assertions) - $(use_enable pgo optimizations) - $(use_with valgrind) - ) - - # disable implicit optimization/debugging flags - local -x OPT= - - # https://bugs.gentoo.org/700012 - if tc-is-lto; then - append-cflags $(test-flags-CC -ffat-lto-objects) - myeconfargs+=( - --with-lto - ) - fi - - if tc-is-cross-compiler ; then - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 and bug #864911. - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross. - --without-lto - --disable-optimizations - ) - - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - export PATH="${WORKDIR}/${P}-${CBUILD}:${PATH}" - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. - PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" \ - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Avoid as many dependencies as possible for the cross build. - cat >> Makefile <<-EOF || die - MODULE_NIS=disabled - MODULE__DBM=disabled - MODULE__GDBM=disabled - MODULE__DBM=disabled - MODULE__SQLITE3=disabled - MODULE__HASHLIB=disabled - MODULE__SSL=disabled - MODULE__CURSES=disabled - MODULE__CURSES_PANEL=disabled - MODULE_READLINE=disabled - MODULE__TKINTER=disabled - MODULE_PYEXPAT=disabled - MODULE_ZLIB=disabled - EOF - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the Python it was pointed to - # immediately. - PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" emake - popd &> /dev/null || die - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - hprefixify setup.py - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - # Prevent using distutils bundled by setuptools. - # https://bugs.gentoo.org/823728 - export SETUPTOOLS_USE_DISTUTILS=stdlib - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - emake DESTDIR="${D}" altinstall - - # Remove static library - rm "${ED}"/usr/$(get_libdir)/libpython*.a || die - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use ensurepip; then - rm -r "${libdir}"/ensurepip || die - fi - if ! use sqlite; then - rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die - fi - if ! use tk; then - rm -r "${ED}/usr/bin/idle${PYVER}" || die - rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.9999.ebuild deleted file mode 100644 index 9d95a8100cc..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.9999.ebuild +++ /dev/null @@ -1,550 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" -WANT_LIBTOOL="none" - -inherit autotools check-reqs flag-o-matic git-r3 multiprocessing pax-utils -inherit prefix toolchain-funcs - -PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-3.9.23" - -DESCRIPTION="An interpreted, interactive, object-oriented programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz -" -EGIT_REPO_URI="https://github.com/python/cpython.git" -EGIT_BRANCH=${PYVER} - -LICENSE="PSF-2" -SLOT="${PYVER}" -IUSE=" - bluetooth debug +ensurepip examples gdbm +ncurses pgo +readline - +sqlite +ssl test tk valgrind -" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=virtual/zlib-1.1.3:= - virtual/libcrypt:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( >=sys-libs/readline-4.1:= ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - app-arch/xz-utils - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig -" -PDEPEND=" - ensurepip? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) -" - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -pkg_pretend() { - use test && check-reqs_pkg_pretend -} - -pkg_setup() { - use test && check-reqs_pkg_setup -} - -src_unpack() { - git-r3_src_unpack - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - rm -r Modules/expat || die - rm -r Modules/_ctypes/libffi* || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # https://bugs.gentoo.org/850151 - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - local jobs=$(makeopts_jobs) - sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die - sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die - - eautoreconf -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - local disable - use gdbm || disable+=" gdbm" - use ncurses || disable+=" _curses _curses_panel" - use readline || disable+=" readline" - use sqlite || disable+=" _sqlite3" - use ssl || export PYTHON_DISABLE_SSL="1" - use tk || disable+=" _tkinter" - export PYTHON_DISABLE_MODULES="${disable}" - - if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then - einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}" - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # running gdb inside an ebuild as non-root, within sandbox, - # and possibly within a container is unreliable - -x test_gdb - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - -x test_descr - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_concurrent_futures - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - profile_task_flags+=( - -x test_os - ) - ;; - hppa*) - profile_task_flags+=( - -x test_descr - # bug 931908 - -x test_exceptions - -x test_os - ) - ;; - powerpc64-*) # big endian - profile_task_flags+=( - # bug 931908 - -x test_exceptions - ) - ;; - riscv*) - profile_task_flags+=( - -x test_statistics - ) - ;; - esac - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - local -x PROFILE_TASK="${profile_task_flags[*]}" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-ffi - --with-system-libmpdec - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - - $(use_with debug assertions) - $(use_enable pgo optimizations) - $(use_with valgrind) - ) - - # disable implicit optimization/debugging flags - local -x OPT= - - # https://bugs.gentoo.org/700012 - if tc-is-lto; then - append-cflags $(test-flags-CC -ffat-lto-objects) - myeconfargs+=( - --with-lto - ) - fi - - if tc-is-cross-compiler ; then - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 and bug #864911. - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross. - --without-lto - --disable-optimizations - ) - - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - export PATH="${WORKDIR}/${P}-${CBUILD}:${PATH}" - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. - PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" \ - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Avoid as many dependencies as possible for the cross build. - cat >> Makefile <<-EOF || die - MODULE_NIS=disabled - MODULE__DBM=disabled - MODULE__GDBM=disabled - MODULE__DBM=disabled - MODULE__SQLITE3=disabled - MODULE__HASHLIB=disabled - MODULE__SSL=disabled - MODULE__CURSES=disabled - MODULE__CURSES_PANEL=disabled - MODULE_READLINE=disabled - MODULE__TKINTER=disabled - MODULE_PYEXPAT=disabled - MODULE_ZLIB=disabled - EOF - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the Python it was pointed to - # immediately. - PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" emake - popd &> /dev/null || die - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - hprefixify setup.py - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - # Prevent using distutils bundled by setuptools. - # https://bugs.gentoo.org/823728 - export SETUPTOOLS_USE_DISTUTILS=stdlib - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - emake DESTDIR="${D}" altinstall - - # Remove static library - rm "${ED}"/usr/$(get_libdir)/libpython*.a || die - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use ensurepip; then - rm -r "${libdir}"/ensurepip || die - fi - if ! use sqlite; then - rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die - fi - if ! use tk; then - rm -r "${ED}/usr/bin/idle${PYVER}" || die - rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" -} From c4040b46908111b0b220f501bd511eddb16e1386 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:08 +0000 Subject: [PATCH 051/291] dev-lang/rust: Sync with Gentoo It's from Gentoo commit f363f98d6a19453a397af537f7102d59e431a1ad. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-lang/rust/Manifest | 12 + .../portage-stable/dev-lang/rust/metadata.xml | 4 - .../dev-lang/rust/rust-1.90.0-r1.ebuild | 8 +- .../dev-lang/rust/rust-1.91.0.ebuild | 8 +- .../dev-lang/rust/rust-1.92.0_p1-r1.ebuild | 10 +- .../dev-lang/rust/rust-1.93.0.ebuild | 890 ++++++++++++++++++ .../dev-lang/rust/rust-1.93.1.ebuild | 890 ++++++++++++++++++ .../rust/rust-1.94.0_beta20260126.ebuild | 890 ++++++++++++++++++ .../rust/rust-1.94.0_beta20260213.ebuild | 890 ++++++++++++++++++ .../dev-lang/rust/rust-9999.ebuild | 17 +- 10 files changed, 3605 insertions(+), 14 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.93.0.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.93.1.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.94.0_beta20260126.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.94.0_beta20260213.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/rust/Manifest index fb8814c5d2a..31984909e3f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/Manifest @@ -19,6 +19,10 @@ DIST rust-patches-1.89.0.tar.bz2 4091 BLAKE2B 0fea3488a39d2b00627084f6b192dfbd7e DIST rust-patches-1.90.0_p1.tar.bz2 6095 BLAKE2B d94899021a2ad0bd2de00c15a04b6a5437fa156f7a1b0b18d31e9487312004dfb2d9cb487eacd30592066ef168e088608bd4fc0c7e383c2fe5ec0a8bfd666b0b SHA512 351ea7dcdea3767b7affe40dc3d2684b7fc56cd0dcd06a6feb86ecb5d62d0451083fae20f878eb1a04c0f8cb31c6f7c96cb5bc84fc22844328fbcfcdf0ae03fb DIST rust-patches-1.91.0.tar.bz2 6041 BLAKE2B 7ebc846e0ae7b496b4ed89a8b0a5c397923e4dd6c83a1289e0b98f57477feea35978224b9c4ae19a129282a8c53bdd68f8ab615821f62e4bb5fda8e39b03eeb9 SHA512 fee179ec4e4c90aacfc7f8de2b4d41c80472e1fee17dbfc5ebf384d0fb8ec5afb3f8110a429abaf5a74a924fd1926ab69b29d1b2bafd3b5014b2ad360ca24cce DIST rust-patches-1.92.0_p1.tar.bz2 5993 BLAKE2B aa3183a46834b9442fd79fcda61a308b6b1831c9eab6c5a48c6fca7eef49267af815a3d53c0f17563483dbb58e4c4cb9ab09e4f00c32c37b5411d184e222079b SHA512 c2ec50796e8037b1bb1074c516816c9edc815db503ccac0cde4884a7f190e186897cb91ecbad7e1bb7e34b6753d2ccbbc59e83c8efdff452c1ed446850347000 +DIST rust-patches-1.93.0.tar.bz2 3175 BLAKE2B 4849208072cf0a047a9fe2ee27d384349b713149b7d087a6ff39a41ec1a7b77884710374dcac44c4378b320da0b4061fa531edd8b2b1cc04199fd51cdb1c2e78 SHA512 b818e14653a66447a221f84363cad54ee893842025c2b6c02c08df76bdf8666664564a5bc405ee988223048c2b986ea818d685babfddee5ff7559f9567bb9dbb +DIST rust-patches-1.93.1.tar.bz2 3186 BLAKE2B 6ff137eb2c1b43857922ac3d9b0cc3dbe71180c05d318c5b0f54c371117426ad8daa8ec19cffc19c2550564ac4b7cfd38f4c0fa42a5b8d2ae94fe668a94aa567 SHA512 ded2af5cc9516d8bbce675f323747a96fea814f2344065a45ca7968a21e31aaa5e0bf0a45f6f831a9d62047e782306d5319c6c3ed887e3ceb75011d1849a5303 +DIST rust-patches-1.94.0_beta20260126.tar.bz2 3173 BLAKE2B 003a78d43575127fcadb423be6d231269753cb75cdc35eb063ff65293031bdfbd32ea91456f454aeeaae5e411aeacbddb388c6b08f079129482bef841277f497 SHA512 1fe20b04d7537d02fbe1d73e348d66543472c7938ee5eb18e283c2185a7e9253ddbf6600c4e56175744d62ba7f453b77624f3aa252bc2c9f07ce797c0bc0707d +DIST rust-patches-1.94.0_beta20260213.tar.bz2 3170 BLAKE2B c71adad5a61fc0d90865c29193490ddf908885a2712f5b180917797bdc7b7dc3cd836b6410a32341a6c2512d937ad2ecbaecfdbd1a97cd32be527a2adabb680c SHA512 d94c6cdb79c88df42708cd8800d5dab5d65491ba16b99e8c79d1c50321f685aeecf4513d8431e5643805f5e0cd7addc80fd14bb05ef1ba8a7b084e03c67a275f DIST rustc-1.74.1-src.tar.xz 155968724 BLAKE2B e05f2379ac94b286f85791a138e1928e5b5b5a7749f0981d82c40c2a12860f55bf96bb2f0e924e35a0f8b2447b13052d38adea909aaa3199105787bb5a4861b3 SHA512 14c7e7ed2f38ab60299d8c7d41d78f042b6b57ef822d577b5138e60bdde31cf141eccd4332a25bc5da3d58eb5313d63c1448b5dfe9e11b8055bb8ea133a9038d DIST rustc-1.74.1-src.tar.xz.asc 801 BLAKE2B ddf73175b164233babf31ca3a381b03e20c0f36d017c1d5f85d6ab11f0986d861ab23b11c061e6b2444ced70c3d6a494cc3de4ec86f0deb221a805491bd75420 SHA512 9a96ff9ba9a4e2af4e267b2ec126fc0675c78d0eb767703daa2f28491c3d85c2ab00fbd8584390bf658812ec6c4ab6c57e43b386db59fd505bd3134a8873a09e DIST rustc-1.75.0-src.tar.xz 159624388 BLAKE2B 8937b80585eddaa3e1f1ef948899d14a170308518c6fef9fe569560cdd870053776956743f796055f2119399b9ca6c0df12fedd789ae46324d071e5126c4e495 SHA512 7b0f25d91b1b5c317980fc88e059200bd43b56a70b445fbc72fb9b96e09775bfd3a98e9bd9d662af80f0ce3aef527c777ee82777e96ca876f47a972d63da8606 @@ -61,3 +65,11 @@ DIST rustc-1.91.0-src.tar.xz 270987196 BLAKE2B 18ea8075c288d1c2cc8c247120ae5fa15 DIST rustc-1.91.0-src.tar.xz.asc 801 BLAKE2B 11b157fafcfa9887b591ffff8b87641f62e81e44d32d5c4ae99a410179905ae64fe760d6c3a6614bd479f51457542a57b171aaa53baad73d5030e496e62f1e67 SHA512 17c99b273d7e84c54b40817448cb7f543b61a5b262d2bfb1c2d1ff108ccf010295c42ae1ae74593fdab1d6caa3cd3f6713e9966a9a5057c01cd85ae3f24a6f89 DIST rustc-1.92.0-src.tar.xz 271887480 BLAKE2B 765e0f216dde8d375e19ca5b1cd3e051b182cc058e16a1307e82e60bac06de6919d18b6506cb14b3ff5e29c2730ef7d1c6e0d86c3bbf6b8148bbf683048eb99b SHA512 a2c0b127933595b9bc2063d7b7c88d9af512c4664b18f29d44c9a6e2c68d194b87a3071717e8f1b7c858ae940baca888e10be95cd31e0201916d0bfc312a3b15 DIST rustc-1.92.0-src.tar.xz.asc 801 BLAKE2B 0d223a763b4a3bf0583c4c2c19b2a30dfbe48b6b06c17a764c894ec29d1d0543201a78a263df3c1314c4ad9e050009e1cacb580633f8c2a8e6b2bf35d9a87fce SHA512 7355e5d641ac6f1d27decdf24dbf4af5640ae4f3177a678f8c040aa7288e660c87ed3de33efdcf4e881691b1c13cd9b2a0b6ff3067892aaed1649a4b73b610df +DIST rustc-1.93.0-src.tar.xz 270925104 BLAKE2B f96a05dae3494452471f6797fdc2246cc0f5e8205b2a664da72fcae25399b3729aac6d8c3e0a8ed86daaa7081ca803fb5d58c6fdcf9e1d5c5d598ef9976e1da7 SHA512 9362a4b56529ce29362e256daf382b73c73204d0e9fe5b39addf07ff66a30aa66c967e34df9021ea007c13a9f3bb6efdefca1c8e4ea1bde9aac050a9fb0c736b +DIST rustc-1.93.0-src.tar.xz.asc 801 BLAKE2B 9c1762c0bb431da8fda0a8a47f5745998ff31434bb0b2747aa4aafc34e09c1507207eb91b7ba80f7a780b7f7258a4b8e49b5c5b06f9fa9f4cfabf72edb9cb07e SHA512 a6ea05bb6b7d3b429a1c863622c93ac4c97b25f56027f7f06f085acde26d1395f3515cc764ae3ef941d1669556a02365755b34e28ccaebe70c1ccb84c977228f +DIST rustc-1.93.1-src.tar.xz 270888296 BLAKE2B fe5a9072161cf758221974f1f59b1a198b2c62b2317360cdb8b2516cfac8eecf40cd5e69bb186053555688a167cabae3a3227b9079c360d238b12c229ff2ddc1 SHA512 fbff2e960e20a5b4c1320bfe22aca445a5792c10f902c6eb69fc7de2a1f8965b06b0906141526a5f0fa02bcbb6b02d80865481bd62656f7b9a11fbdcf5bc9f02 +DIST rustc-1.93.1-src.tar.xz.asc 801 BLAKE2B 9e059c894770a402d5fee2a29ffdb42030d8d723a40d6312d983e53cd4fa64e97019a0ea6054dcb17ba2ead7f27db17eec2632950f13e4ef1410324afc4dcaf8 SHA512 8a290300e370b3833d2d365a451ed4708dbe1fa69fc57b73eef0b2b5d9dd4fb3d87344315aee3aea474d4071cfb535234e167f6576abf2e06ef3225c85e3c30d +DIST rustc-1.94.0_beta20260126-src.tar.xz 273937952 BLAKE2B 14deb9a1a837283ae544c9e05a490d6d2b6fe924838505f22ee821713ada640ec6c11ddc5fdf11bb7925fd4bff0e1399975bbe5ef47c926aab4ed10976db60dc SHA512 3e0517ebd37a9b459a92a432e9c6c7e276878bb8453007ce3b3c1ef53dbee8b436252d09cdfbe4482321076c9b4a0d49a3ab74b6ae845260ce4d4f47112d0b68 +DIST rustc-1.94.0_beta20260126-src.tar.xz.asc 801 BLAKE2B 6b807dce7ca74cec7cefd7886aa569e0f5a908a9199149624f4d641d94e9daea4ea837a6dd96792efaebd6b21e70acd6654e78f01325e36f9108b0e0b3bc5c4e SHA512 c425b9ff8eeb4973ce3b53eca5cc35f78983062195be9b671565fc48fc7fe2edf424d7618ccc98fec89c2ca8f7f43e176f06c624c1d1172b7033ea66cee6d575 +DIST rustc-1.94.0_beta20260213-src.tar.xz 273898560 BLAKE2B be0fa61b6677de16352628c9c5243bc75b6697c7511cf97d6a02bce8cb09f5fb7aeafeedce29837d3812f0fbee1f4cdc48dae27dc7d02878c06144b3941a8510 SHA512 d48a821ab4adf1a8e8d2b313a6d1c460b28aecf4fa0bd3af7f81318b49abffb71d87a5bc08335adc62b6d4a99c074969a98e6516f679d484ed74086982686457 +DIST rustc-1.94.0_beta20260213-src.tar.xz.asc 801 BLAKE2B aa6662652ce4f92abd50f0a2dfb914d93dc877b71b406aacd57346a62b0139ff296df951d20b3c91a5e187b50876c465b44b396a7d2abcf92d343013c4f3a3a2 SHA512 4c5d17df5aa9979735c2a2784c53251a1c5a120007cc581fb49fd6eb56c35a81a054840f1d9b40f3da18a6e372b054bc7bf8213295ff874ef428f1337d7756cb diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-lang/rust/metadata.xml index b32f018381d..ad33a5ca1d8 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/metadata.xml @@ -5,10 +5,6 @@ rust@gentoo.org Rust Project - - navi@vlhl.dev - Anna Figueiredo Gomes - Install clippy, Rust code linter Install dist tarballs (used for bootstrapping) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.90.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.90.0-r1.ebuild index 23b3deb58e8..574b2a3a342 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.90.0-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.90.0-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -641,6 +641,12 @@ src_configure() { musl-root = "$(${cross_toolchain}-gcc -print-sysroot)/usr" _EOF_ fi + if [[ "${cross_rust_target}" == *-uefi ]]; then + # Profiler is not supported on bare-metal + cat <<- _EOF_ >> "${S}"/bootstrap.toml + profiler = false + _EOF_ + fi # append cross target to "normal" target list # example 'target = ["powerpc64le-unknown-linux-gnu"]' diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.91.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.91.0.ebuild index c88a61d4333..47a1f638f60 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.91.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.91.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -636,6 +636,12 @@ src_configure() { musl-root = "$(${cross_toolchain}-gcc -print-sysroot)/usr" _EOF_ fi + if [[ "${cross_rust_target}" == *-uefi ]]; then + # Profiler is not supported on bare-metal + cat <<- _EOF_ >> "${S}"/bootstrap.toml + profiler = false + _EOF_ + fi # append cross target to "normal" target list # example 'target = ["powerpc64le-unknown-linux-gnu"]' diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.92.0_p1-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.92.0_p1-r1.ebuild index 6086b58e2f2..2cdc9ca8516 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.92.0_p1-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.92.0_p1-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -62,7 +62,7 @@ else " S="${WORKDIR}/${MY_P}-src" - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" + KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" fi DESCRIPTION="Systems programming language originally developed by Mozilla" @@ -669,6 +669,12 @@ src_configure() { musl-root = "$(${cross_toolchain}-gcc -print-sysroot)/usr" _EOF_ fi + if [[ "${cross_rust_target}" == *-uefi ]]; then + # Profiler is not supported on bare-metal + cat <<- _EOF_ >> "${S}"/bootstrap.toml + profiler = false + _EOF_ + fi # append cross target to "normal" target list # example 'target = ["powerpc64le-unknown-linux-gnu"]' diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.93.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.93.0.ebuild new file mode 100644 index 00000000000..9da8a4266e6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.93.0.ebuild @@ -0,0 +1,890 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Bump notes: https://wiki.gentoo.org/wiki/Project:Rust/Rust_bump + +LLVM_COMPAT=( 21 ) +PYTHON_COMPAT=( python3_{11..14} ) + +# Patches are kept in rust-patches.git, see its README.rst for the versioning +# scheme. +# +# We use _pN from the ebuild version for the patchset but it can be overridden +# in the ebuild for changes that don't require a revbump. +# +# Uncomment this line when the ebuild needs a patchset update but no revbump. +#RUST_PATCH_VER=${PV}-1 + +RUST_MAX_VER=${PV%%_*} +RUST_PV=${PV%%_p*} +RUST_P=${PN}-${RUST_PV} +[[ -z ${RUST_PATCH_VER} ]] && RUST_PATCH_VER=${PV} + +if [[ ${PV} == *9999* ]]; then + # Update this as new `beta` releases come out. + RUST_MIN_VER="1.92.0" +elif [[ ${PV} == *beta* ]]; then + RUST_MIN_VER="$(ver_cut 1).$(($(ver_cut 2) - 1)).0" +else + RUST_MIN_VER="$(ver_cut 1).$(($(ver_cut 2) - 1)).0" +fi + +inherit check-reqs estack flag-o-matic llvm-r1 multiprocessing optfeature +inherit multilib multilib-build python-any-r1 rust rust-toolchain toolchain-funcs +inherit verify-sig + +if [[ ${PV} = *9999* ]]; then + inherit git-r3 +elif [[ ${PV} == *beta* ]]; then + # Identify the snapshot date of the beta release: + # curl -Ls static.rust-lang.org/dist/channel-rust-beta.toml | grep beta-src.tar.xz + betaver=${PV//*beta} + BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}" + MY_P="rustc-beta" + SRC_URI=" + https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz -> rustc-${RUST_PV}-src.tar.xz + https://gitweb.gentoo.org/proj/rust-patches.git/snapshot/rust-patches-${RUST_PATCH_VER}.tar.bz2 + verify-sig? ( + https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz.asc + -> rustc-${RUST_PV}-src.tar.xz.asc + ) + " + S="${WORKDIR}/${MY_P}-src" +else + MY_P="rustc-${RUST_PV}" + SRC_URI=" + https://static.rust-lang.org/dist/${MY_P}-src.tar.xz + https://gitweb.gentoo.org/proj/rust-patches.git/snapshot/rust-patches-${RUST_PATCH_VER}.tar.bz2 + verify-sig? ( https://static.rust-lang.org/dist/${MY_P}-src.tar.xz.asc ) + " + S="${WORKDIR}/${MY_P}-src" + + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +fi + +DESCRIPTION="Systems programming language originally developed by Mozilla" +HOMEPAGE="https://www.rust-lang.org/" + +# keep in sync with llvm ebuild of the same version as bundled one. +ALL_LLVM_TARGETS=( AArch64 AMDGPU ARC ARM AVR BPF CSKY DirectX Hexagon Lanai ) +ALL_LLVM_TARGETS+=( LoongArch M68k Mips MSP430 NVPTX PowerPC RISCV Sparc SPIRV ) +ALL_LLVM_TARGETS+=( SystemZ VE WebAssembly X86 XCore Xtensa ) +ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" ) +LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/(-)?} + +# https://github.com/rust-lang/llvm-project/blob/rustc-1.87.0/llvm/CMakeLists.txt +_ALL_RUST_EXPERIMENTAL_TARGETS=( ARC CSKY DirectX M68k Xtensa ) +declare -A ALL_RUST_EXPERIMENTAL_TARGETS +for _x in "${_ALL_RUST_EXPERIMENTAL_TARGETS[@]}"; do + ALL_RUST_EXPERIMENTAL_TARGETS["llvm_targets_${_x}"]=0 +done + +# Bare metal targets which can be built on the host system and have no +# dependency on compiler runtime, libc and unwinder. +ALL_RUST_SYSROOTS=( bpf wasm ) +ALL_RUST_SYSROOTS=( "${ALL_RUST_SYSROOTS[@]/#/rust_sysroots_}" ) + +LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" +SLOT="${PV%%_*}" # Beta releases get to share the same SLOT as the eventual stable + +IUSE="big-endian +clippy cpu_flags_x86_sse2 debug dist +doc llvm-libunwind lto" +IUSE+=" +rustfmt rust-analyzer rust-src +system-llvm test" +IUSE+=" ${ALL_LLVM_TARGETS[*]} ${ALL_RUST_SYSROOTS[*]}" + +if [[ ${PV} = *9999* ]]; then + # These USE flags require nightly rust + IUSE+=" miri" +fi + +LLVM_DEPEND=() +# splitting usedeps needed to avoid CI/pkgcheck's UncheckableDep limitation +for _x in "${ALL_LLVM_TARGETS[@]}"; do + LLVM_DEPEND+=( " ${_x}? ( $(llvm_gen_dep "llvm-core/llvm:\${LLVM_SLOT}[${_x}=]") )" ) + if [[ -v ALL_RUST_EXPERIMENTAL_TARGETS["${_x}"] ]] ; then + ALL_RUST_EXPERIMENTAL_TARGETS["${_x}"]=1 + fi +done +LLVM_DEPEND+=( " rust_sysroots_wasm? ( $(llvm_gen_dep 'llvm-core/lld:${LLVM_SLOT}') )" ) +LLVM_DEPEND+=( " $(llvm_gen_dep 'llvm-core/llvm:${LLVM_SLOT}')" ) + +# dev-libs/oniguruma is used for documentation +BDEPEND=" + ${PYTHON_DEPS} + app-eselect/eselect-rust + dev-libs/oniguruma + || ( + >=sys-devel/gcc-4.7[cxx] + >=llvm-core/clang-3.5 + ) + lto? ( system-llvm? ( + || ( + $(llvm_gen_dep 'llvm-core/lld:${LLVM_SLOT}') + sys-devel/mold + ) + ) ) + rust_sysroots_wasm? ( llvm-core/clang ) + !system-llvm? ( + >=dev-build/cmake-3.13.4 + app-alternatives/ninja + ) + test? ( dev-debug/gdb ) + verify-sig? ( sec-keys/openpgp-keys-rust ) +" + +DEPEND=" + >=app-arch/xz-utils-5.2 + net-misc/curl:=[http2,ssl] + virtual/zlib:= + dev-libs/openssl:0= + system-llvm? ( + ${LLVM_DEPEND[*]} + llvm-libunwind? ( llvm-runtimes/libunwind:= ) + ) + !system-llvm? ( + !llvm-libunwind? ( + elibc_musl? ( sys-libs/libunwind:= ) + ) + ) +" + +RDEPEND=" + ${DEPEND} + app-eselect/eselect-rust + dev-lang/rust-common + sys-apps/lsb-release + !dev-lang/rust:stable + !dev-lang/rust-bin:stable +" + +REQUIRED_USE=" + || ( ${ALL_LLVM_TARGETS[*]} ) + rust-analyzer? ( rust-src ) + test? ( ${ALL_LLVM_TARGETS[*]} ) + rust_sysroots_bpf? ( llvm_targets_BPF ) + rust_sysroots_wasm? ( llvm_targets_WebAssembly ) + x86? ( cpu_flags_x86_sse2 ) +" + +# we don't use cmake.eclass, but can get a warning +CMAKE_WARN_UNUSED_CLI=no + +QA_FLAGS_IGNORED=" + usr/lib/${PN}/${SLOT}/bin/.* + usr/lib/${PN}/${SLOT}/libexec/.* + usr/lib/${PN}/${SLOT}/lib/lib.*.so + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/bin/.* + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/lib/lib.*.so +" + +QA_SONAME=" + usr/lib/${PN}/${SLOT}/lib/lib.*.so.* + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/lib/lib.*.so +" + +QA_PRESTRIPPED=" + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/bin/rust-llvm-dwp + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/lib/self-contained/crtn.o +" + +# An rmeta file is custom binary format that contains the metadata for the crate. +# rmeta files do not support linking, since they do not contain compiled object files. +# so we can safely silence the warning for this QA check. +QA_EXECSTACK="usr/lib/${PN}/${SLOT}/lib/rustlib/*/lib*.rlib:lib.rmeta" + +# causes double bootstrap +RESTRICT="test" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/rust.asc + +clear_vendor_checksums() { + sed -i 's/\("files":{\)[^}]*/\1/' "vendor/${1}/.cargo-checksum.json" || die +} + +toml_usex() { + usex "${1}" true false +} + +pre_build_checks() { + local M=9216 + # multiply requirements by 1.3 if we are doing x86-multilib + if use amd64; then + M=$(( $(usex abi_x86_32 13 10) * ${M} / 10 )) + fi + M=$(( $(usex clippy 128 0) + ${M} )) + if [[ ${PV} == *9999* ]]; then + M=$(( $(usex miri 128 0) + ${M} )) + fi + M=$(( $(usex rustfmt 256 0) + ${M} )) + # add 2G if we compile llvm and 256M per llvm_target + if ! use system-llvm; then + M=$(( 2048 + ${M} )) + local ltarget + for ltarget in ${ALL_LLVM_TARGETS[@]}; do + M=$(( $(usex ${ltarget} 256 0) + ${M} )) + done + fi + M=$(( $(usex rust_sysroots_bpf 256 0) + ${M} )) + M=$(( $(usex rust_sysroots_wasm 256 0) + ${M} )) + M=$(( $(usex debug 2 1) * ${M} )) + eshopts_push -s extglob + if is-flagq '-g?(gdb)?([1-9])'; then + M=$(( 15 * ${M} / 10 )) + fi + eshopts_pop + M=$(( $(usex doc 256 0) + ${M} )) + CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE} +} + +llvm_check_deps() { + has_version -r "llvm-core/llvm:${LLVM_SLOT}[${LLVM_TARGET_USEDEPS// /,}]" +} + +# Is LLVM being linked against libc++? +is_libcxx_linked() { + local code='#include +#if defined(_LIBCPP_VERSION) + HAVE_LIBCXX +#endif +' + local out=$($(tc-getCXX) ${CXXFLAGS} ${CPPFLAGS} -x c++ -E -P - <<<"${code}") || return 1 + [[ ${out} == *HAVE_LIBCXX* ]] +} + +pkg_pretend() { + pre_build_checks +} + +pkg_setup() { + pre_build_checks + python-any-r1_pkg_setup + + export LIBGIT2_NO_PKG_CONFIG=1 #749381 + if tc-is-cross-compiler; then + use system-llvm && die "USE=system-llvm not allowed when cross-compiling" + local cross_llvm_target="$(llvm_tuple_to_target "${CBUILD}")" + use "llvm_targets_${cross_llvm_target}" || \ + die "Must enable LLVM_TARGETS=${cross_llvm_target} matching CBUILD=${CBUILD} when cross-compiling" + fi + + rust_pkg_setup + + if use system-llvm; then + llvm-r1_pkg_setup + + local llvm_config="$(get_llvm_prefix)/bin/llvm-config" + export LLVM_LINK_SHARED=1 + export RUSTFLAGS="${RUSTFLAGS} -Lnative=$("${llvm_config}" --libdir)" + fi +} + +rust_live_get_sources() { + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/rust-patches.git + " + EGIT_CHECKOUT_DIR="${WORKDIR}/rust-patches-${RUST_PATCH_VER}" + git-r3_src_unpack + + EGIT_REPO_URI=" + https://github.com/rust-lang/rust.git + " + EGIT_SUBMODULES=( + "*" + "-src/gcc" + ) + S="${WORKDIR}/rust" + EGIT_CHECKOUT_DIR="${S}" + git-r3_src_unpack +} + +src_unpack() { + if [[ ${PV} == *9999* ]] ; then + rust_live_get_sources + + # Vendor dependencies + mkdir "${S}/.cargo" || die # The vendor script has a check for .cargo/config{,.toml} + touch "${S}/.cargo/bootstrap.toml" || die + local rust_stage0_root="$(${RUSTC} --print sysroot || die "Can't determine rust's sysroot")" + # Configure vendor to use the portage-provided toolchain. This prevents it from + # attempting to fetch a `beta` toolchain from the internet. + cat <<- _EOF_ > "${T}/vendor-bootstrap.toml" + # Suppresses a warning about tracking changes which we don't care about. + change-id = "ignore" + [build] + build = "$(rust_abi "${CBUILD}")" + host = ["$(rust_abi "${CHOST}")"] + target = ["$(rust_abi "${CHOST}")"] + cargo = "${rust_stage0_root}/bin/cargo" + rustc = "${rust_stage0_root}/bin/rustc" + rustfmt = "${rust_stage0_root}/bin/rustfmt" + _EOF_ + # We're using git sources so we need to run the Vendor script + # to ensure that all dependencies are present and up-to-date + mkdir "${S}/vendor" || die + # This also compiles the 'build helper', there's no way to avoid this. + ${EPYTHON} "${S}"/x.py vendor -v --config="${T}"/vendor-bootstrap.toml -j$(makeopts_jobs) || + die "Failed to vendor dependencies" + # TODO: This has to be generated somehow, this is from a 1.84.x tarball I had lying around. + cat <<- _EOF_ > "${S}/.cargo/config.toml" + [source.crates-io] + replace-with = "vendored-sources" + + [source."git+https://github.com/rust-lang/team"] + git = "https://github.com/rust-lang/team" + replace-with = "vendored-sources" + + [source.vendored-sources] + directory = "vendor" + _EOF_ + elif use verify-sig ; then + # Patch tarballs are not signed (but we trust Gentoo infra) + verify-sig_verify_detached "${DISTDIR}"/rustc-${RUST_PV}-src.tar.xz{,.asc} + default + else + default + fi +} + +src_prepare() { + # Commit patches to the appropriate branch in proj/rust-patches.git + # then cut a new tag / tarball. Don't add patches to ${FILESDIR} + PATCHES=( + "${WORKDIR}/rust-patches-${RUST_PATCH_VER}/" + ) + + if use lto && tc-is-clang && ! tc-ld-is-lld && ! tc-ld-is-mold; then + export RUSTFLAGS+=" -C link-arg=-fuse-ld=lld" + fi + + default +} + +src_configure() { + if tc-is-cross-compiler; then + export PKG_CONFIG_ALLOW_CROSS=1 + export PKG_CONFIG_PATH="${ESYSROOT}/usr/$(get_libdir)/pkgconfig" + export OPENSSL_INCLUDE_DIR="${ESYSROOT}/usr/include" + export OPENSSL_LIB_DIR="${ESYSROOT}/usr/$(get_libdir)" + fi + + # Avoid bundled copies of libraries + export RUSTONIG_SYSTEM_LIBONIG=1 + # Need to check if these can be optional + #export LIBSQLITE3_SYS_USE_PKG_CONFIG=1 + #export LIBSSH2_SYS_USE_PKG_CONFIG=1 + + filter-lto # https://bugs.gentoo.org/862109 https://bugs.gentoo.org/866231 + + local rust_target="" rust_targets="" arch_cflags + + # Collect rust target names to compile standard libs for all ABIs. + for v in $(multilib_get_enabled_abi_pairs); do + rust_targets+=",\"$(rust_abi $(get_abi_CHOST ${v##*.}))\"" + done + if use rust_sysroots_bpf; then + rust_targets+=",\"bpfeb-unknown-none\",\"bpfel-unknown-none\"" + fi + if use rust_sysroots_wasm; then + rust_targets+=",\"wasm32-unknown-unknown\"" + if use system-llvm; then + # un-hardcode rust-lld linker for this target + # https://bugs.gentoo.org/715348 + sed -i '/linker:/ s/rust-lld/wasm-ld/' compiler/rustc_target/src/spec/base/wasm.rs || die + fi + fi + rust_targets="${rust_targets#,}" + + # cargo and rustdoc are mandatory and should always be included + local tools='"cargo","rustdoc"' + use clippy && tools+=',"clippy"' + use rustfmt && tools+=',"rustfmt"' + use rust-analyzer && tools+=',"rust-analyzer","rust-analyzer-proc-macro-srv"' + use rust-src && tools+=',"src"' + + if [[ ${PV} == *9999* ]]; then + use miri && tools+=',"miri"' + fi + + local rust_stage0_root="$(${RUSTC} --print sysroot || die "Can't determine rust's sysroot")" + # in case of prefix it will be already prefixed, as --print sysroot returns full path + [[ -d ${rust_stage0_root} ]] || die "${rust_stage0_root} is not a directory" + + rust_target="$(rust_abi)" + rust_build="$(rust_abi "${CBUILD}")" + rust_host="$(rust_abi "${CHOST}")" + + RUST_EXPERIMENTAL_TARGETS=() + for _x in "${!ALL_RUST_EXPERIMENTAL_TARGETS[@]}"; do + if [[ ${ALL_RUST_EXPERIMENTAL_TARGETS[${_x}]} == 1 ]] && use ${_x} ; then + RUST_EXPERIMENTAL_TARGETS+=( ${_x#llvm_targets_} ) + fi + done + RUST_EXPERIMENTAL_TARGETS=${RUST_EXPERIMENTAL_TARGETS[@]} + + local cm_btype="$(usex debug DEBUG RELEASE)" + local build_channel + local build_miri="false" + case "${PV}" in + *9999*) + build_channel="nightly" + ;; + *beta*) + build_channel="beta" + ;; + *) + build_channel="stable" + ;; + esac + + # TODO: Add optimized-compiler-builtins for system-llvm to avoid + # building bundled compiler-rt. + cat <<- _EOF_ > "${S}"/bootstrap.toml + # Suppresses a warning about tracking changes which we don't care about. + change-id = "ignore" + # https://github.com/rust-lang/rust/issues/135358 (bug #947897) + profile = "dist" + [llvm] + download-ci-llvm = false + optimize = $(toml_usex !debug) + release-debuginfo = $(toml_usex debug) + assertions = $(toml_usex debug) + ninja = true + targets = "${LLVM_TARGETS// /;}" + experimental-targets = "${RUST_EXPERIMENTAL_TARGETS// /;}" + link-shared = $(toml_usex system-llvm) + $(if is_libcxx_linked; then + # https://bugs.gentoo.org/732632 + echo "use-libcxx = true" + echo "static-libstdcpp = false" + fi) + $(case "${rust_target}" in + i586-*-linux-*) + # https://github.com/rust-lang/rust/issues/93059 + echo 'cflags = "-fcf-protection=none"' + echo 'cxxflags = "-fcf-protection=none"' + echo 'ldflags = "-fcf-protection=none"' + ;; + *) + ;; + esac) + enable-warnings = false + [llvm.build-config] + CMAKE_VERBOSE_MAKEFILE = "ON" + $(if ! tc-is-cross-compiler; then + # When cross-compiling, LLVM is compiled twice, once for host and + # once for target. Unfortunately, this build configuration applies + # to both, which means any flags applicable to one target but not + # the other will break. Conditionally disable respecting user + # flags when cross-compiling. + echo "CMAKE_C_FLAGS_${cm_btype} = \"${CFLAGS}\"" + echo "CMAKE_CXX_FLAGS_${cm_btype} = \"${CXXFLAGS}\"" + echo "CMAKE_EXE_LINKER_FLAGS_${cm_btype} = \"${LDFLAGS}\"" + echo "CMAKE_MODULE_LINKER_FLAGS_${cm_btype} = \"${LDFLAGS}\"" + echo "CMAKE_SHARED_LINKER_FLAGS_${cm_btype} = \"${LDFLAGS}\"" + echo "CMAKE_STATIC_LINKER_FLAGS_${cm_btype} = \"${ARFLAGS}\"" + fi) + [build] + build-stage = 2 + test-stage = 2 + build = "${rust_build}" + host = ["${rust_host}"] + target = [${rust_targets}] + cargo = "${rust_stage0_root}/bin/cargo" + rustc = "${rust_stage0_root}/bin/rustc" + rustfmt = "${rust_stage0_root}/bin/rustfmt" + description = "gentoo" + docs = $(toml_usex doc) + compiler-docs = false + submodules = false + python = "${EPYTHON}" + locked-deps = true + vendor = true + extended = true + tools = [${tools}] + verbose = 2 + sanitizers = false + profiler = true + cargo-native-static = false + [install] + prefix = "${EPREFIX}/usr/lib/${PN}/${SLOT}" + sysconfdir = "etc" + docdir = "share/doc/rust" + bindir = "bin" + libdir = "lib" + mandir = "share/man" + [rust] + # https://github.com/rust-lang/rust/issues/54872 + codegen-units-std = 1 + optimize = true + debug = $(toml_usex debug) + debug-assertions = $(toml_usex debug) + debug-assertions-std = $(toml_usex debug) + debuginfo-level = $(usex debug 2 0) + debuginfo-level-rustc = $(usex debug 2 0) + debuginfo-level-std = $(usex debug 2 0) + debuginfo-level-tools = $(usex debug 2 0) + debuginfo-level-tests = 0 + backtrace = true + incremental = false + $(if ! tc-is-cross-compiler; then + echo "default-linker = \"${CHOST}-cc\"" + fi) + channel = "${build_channel}" + rpath = true + verbose-tests = true + optimize-tests = $(toml_usex !debug) + codegen-tests = true + omit-git-hash = false + dist-src = false + remap-debuginfo = true + lld = $(usex system-llvm false $(toml_usex rust_sysroots_wasm)) + $(if use lto && tc-is-clang && ! tc-ld-is-mold; then + echo "use-lld = true" + fi) + # only deny warnings if doc+wasm are NOT requested, documenting stage0 wasm std fails without it + # https://github.com/rust-lang/rust/issues/74976 + # https://github.com/rust-lang/rust/issues/76526 + deny-warnings = $(usex rust_sysroots_wasm $(usex doc false true) true) + backtrace-on-ice = true + jemalloc = false + # See https://github.com/rust-lang/rust/issues/121124 + lto = "$(usex lto thin off)" + [dist] + src-tarball = false + compression-formats = ["xz"] + compression-profile = "balanced" + _EOF_ + + for v in $(multilib_get_enabled_abi_pairs); do + rust_target=$(rust_abi $(get_abi_CHOST ${v##*.})) + arch_cflags="$(get_abi_CFLAGS ${v##*.})" + + export CFLAGS_${rust_target//-/_}="${arch_cflags}" + + cat <<- _EOF_ >> "${S}"/bootstrap.toml + [target.${rust_target}] + ar = "$(tc-getAR)" + cc = "$(tc-getCC)" + cxx = "$(tc-getCXX)" + linker = "$(tc-getCC)" + ranlib = "$(tc-getRANLIB)" + llvm-libunwind = "$(usex llvm-libunwind $(usex system-llvm system in-tree) no)" + _EOF_ + if use system-llvm; then + cat <<- _EOF_ >> "${S}"/bootstrap.toml + llvm-config = "$(get_llvm_prefix)/bin/llvm-config" + _EOF_ + fi + # by default librustc_target/spec/linux_musl_base.rs sets base.crt_static_default = true; + # but we patch it and set to false here as well + if use elibc_musl; then + cat <<- _EOF_ >> "${S}"/bootstrap.toml + crt-static = false + musl-root = "$($(tc-getCC) -print-sysroot)/usr" + _EOF_ + fi + done + if use rust_sysroots_wasm; then + wasm_target="wasm32-unknown-unknown" + if tc-is-clang; then + local wasm_cc=$(tc-getCC) + local wasm_cxx=$(tc-getCXX) + else + local wasm_cc=${CHOST}-clang + local wasm_cxx=${CHOST}-clang++ + fi + export CFLAGS_${wasm_target//-/_}="$( + CC="${wasm_cc} --target=wasm32-unknown-unknown" + filter-flags '-mcpu*' '-march*' '-mtune*' + strip-unsupported-flags + echo "${CFLAGS}" + )" + cat <<- _EOF_ >> "${S}"/bootstrap.toml + [target.wasm32-unknown-unknown] + cc = "${wasm_cc}" + cxx = "${wasm_cxx}" + linker = "$(usex system-llvm lld rust-lld)" + # wasm target does not have profiler_builtins https://bugs.gentoo.org/848483 + profiler = false + _EOF_ + fi + + if [[ -n ${I_KNOW_WHAT_I_AM_DOING_CROSS} ]]; then # whitespace intentionally shifted below + # experimental cross support + # discussion: https://bugs.gentoo.org/679878 + # TODO: c*flags, clang, system-llvm, cargo.eclass target support + # it would be much better if we could split out stdlib + # complilation to separate ebuild and abuse CATEGORY to + # just install to /usr/lib/rustlib/ + + # extra targets defined as a bash array + # spec format: :: + # best place would be /etc/portage/env/dev-lang/rust + # Example: + # RUST_CROSS_TARGETS=( + # "AArch64:aarch64-unknown-linux-gnu:aarch64-unknown-linux-gnu" + # ) + # no extra hand holding is done, no target transformations, all + # values are passed as-is with just basic checks, so it's up to user to supply correct values + # valid rust targets can be obtained with + # rustc --print target-list + # matching cross toolchain has to be installed + # matching LLVM_TARGET has to be enabled for both rust and llvm (if using system one) + # only gcc toolchains installed with crossdev are checked for now. + + # BUG: we can't pass host flags to cross compiler, so just filter for now + # BUG: this should be more fine-grained. + filter-flags '-mcpu=*' '-march=*' '-mtune=*' + + local cross_target_spec + for cross_target_spec in "${RUST_CROSS_TARGETS[@]}";do + # extracts first element form :: + local cross_llvm_target="${cross_target_spec%%:*}" + # extracts toolchain triples, : + local cross_triples="${cross_target_spec#*:}" + # extracts first element after before : separator + local cross_rust_target="${cross_triples%%:*}" + # extracts last element after : separator + local cross_toolchain="${cross_triples##*:}" + use llvm_targets_${cross_llvm_target} || die "need llvm_targets_${cross_llvm_target} target enabled" + command -v ${cross_toolchain}-gcc > /dev/null 2>&1 || die "need ${cross_toolchain} cross toolchain" + + cat <<- _EOF_ >> "${S}"/bootstrap.toml + [target.${cross_rust_target}] + ar = "${cross_toolchain}-ar" + cc = "${cross_toolchain}-gcc" + cxx = "${cross_toolchain}-g++" + linker = "${cross_toolchain}-gcc" + ranlib = "${cross_toolchain}-ranlib" + _EOF_ + if use system-llvm; then + cat <<- _EOF_ >> "${S}"/bootstrap.toml + llvm-config = "$(get_llvm_prefix)/bin/llvm-config" + _EOF_ + fi + if [[ "${cross_toolchain}" == *-musl* ]]; then + cat <<- _EOF_ >> "${S}"/bootstrap.toml + musl-root = "$(${cross_toolchain}-gcc -print-sysroot)/usr" + _EOF_ + fi + if [[ "${cross_rust_target}" == *-uefi ]]; then + # Profiler is not supported on bare-metal + cat <<- _EOF_ >> "${S}"/bootstrap.toml + profiler = false + _EOF_ + fi + + # append cross target to "normal" target list + # example 'target = ["powerpc64le-unknown-linux-gnu"]' + # becomes 'target = ["powerpc64le-unknown-linux-gnu","aarch64-unknown-linux-gnu"]' + + rust_targets="${rust_targets},\"${cross_rust_target}\"" + sed -i "/^target = \[/ s#\[.*\]#\[${rust_targets}\]#" bootstrap.toml || die + + ewarn + ewarn "Enabled ${cross_rust_target} rust target" + ewarn "Using ${cross_toolchain} cross toolchain" + ewarn + if ! has_version -b 'sys-devel/binutils[multitarget]' ; then + ewarn "'sys-devel/binutils[multitarget]' is not installed" + ewarn "'strip' will be unable to strip cross libraries" + ewarn "cross targets will be installed with full debug information" + ewarn "enable 'multitarget' USE flag for binutils to be able to strip object files" + ewarn + ewarn "Alternatively llvm-strip can be used, it supports stripping any target" + ewarn "define STRIP=\"llvm-strip\" to use it (experimental)" + ewarn + fi + done + fi # I_KNOW_WHAT_I_AM_DOING_CROSS + + einfo "Rust configured with the following flags:" + echo + echo RUSTFLAGS="\"${RUSTFLAGS}\"" + echo RUSTFLAGS_BOOTSTRAP="\"${RUSTFLAGS_BOOTSTRAP}\"" + echo RUSTFLAGS_NOT_BOOTSTRAP="\"${RUSTFLAGS_NOT_BOOTSTRAP}\"" + echo MAGIC_EXTRA_RUSTFLAGS="\"${MAGIC_EXTRA_RUSTFLAGS}\"" + env | grep "CARGO_TARGET_.*_RUSTFLAGS=" + env | grep "CFLAGS_.*" + echo + einfo "bootstrap.toml contents:" + cat "${S}"/bootstrap.toml || die + echo +} + +src_compile() { + # -v will show invocations, -vv "very verbose" is overkill, -vvv "very very verbose" is insane + RUST_BACKTRACE=1 "${EPYTHON}" ./x.py build -v --config="${S}"/bootstrap.toml -j$(makeopts_jobs) || die +} + +src_test() { + # https://rustc-dev-guide.rust-lang.org/tests/intro.html + + # those are basic and codegen tests. + local tests=( + codegen + codegen-units + compile-fail + incremental + mir-opt + pretty + run-make + ) + + # fails if llvm is not built with ALL targets. + # and known to fail with system llvm sometimes. + use system-llvm || tests+=( assembly ) + + # fragile/expensive/less important tests + # or tests that require extra builds + # TODO: instead of skipping, just make some nonfatal. + if [[ ${ERUST_RUN_EXTRA_TESTS:-no} != no ]]; then + tests+=( + rustdoc + rustdoc-js + rustdoc-js-std + rustdoc-ui + run-make-fulldeps + ui + ui-fulldeps + ) + fi + + local i failed=() + einfo "rust_src_test: enabled tests ${tests[@]/#/src/test/}" + for i in "${tests[@]}"; do + local t="src/test/${i}" + einfo "rust_src_test: running ${t}" + if ! RUST_BACKTRACE=1 "${EPYTHON}" ./x.py test -vv --config="${S}"/bootstrap.toml \ + -j$(makeopts_jobs) --no-doc --no-fail-fast "${t}" + then + failed+=( "${t}" ) + eerror "rust_src_test: ${t} failed" + fi + done + + if [[ ${#failed[@]} -ne 0 ]]; then + eerror "rust_src_test: failure summary: ${failed[@]}" + die "aborting due to test failures" + fi +} + +src_install() { + DESTDIR="${D}" "${EPYTHON}" ./x.py install -v --config="${S}"/bootstrap.toml -j$(makeopts_jobs) || die + + docompress /usr/lib/${PN}/${SLOT}/share/man/ + + # bash-completion files are installed by dev-lang/rust-common instead + # bug #689562, #689160. + rm -v "${ED}/usr/lib/${PN}/${SLOT}/etc/bash_completion.d/cargo" || die + rmdir -v "${ED}/usr/lib/${PN}/${SLOT}/etc/bash_completion.d" || die + + local symlinks=( + cargo + rustc + rustdoc + rust-gdb + rust-gdbgui + rust-lldb + ) + + use clippy && symlinks+=( clippy-driver cargo-clippy ) + if [[ ${PV} = *9999* ]]; then + use miri && symlinks+=( miri cargo-miri ) + fi + use rustfmt && symlinks+=( rustfmt cargo-fmt ) + use rust-analyzer && symlinks+=( rust-analyzer ) + + einfo "installing eselect-rust symlinks and paths: ${symlinks[@]}" + local i + for i in "${symlinks[@]}"; do + # we need realpath on /usr/bin/* symlink return version-appended binary path. + # so /usr/bin/rustc should point to /usr/lib/rust//bin/rustc- + # need to fix eselect-rust to remove this hack. + local ver_i="${i}-${RUST_PV%%_*}" + if [[ -f "${ED}/usr/lib/${PN}/${SLOT}/bin/${i}" ]]; then + einfo "Installing ${i} symlink" + ln -v "${ED}/usr/lib/${PN}/${SLOT}/bin/${i}" "${ED}/usr/lib/${PN}/${SLOT}/bin/${ver_i}" || die + else + ewarn "${i} symlink requested, but source file not found" + ewarn "please report this" + fi + dosym "../lib/${PN}/${SLOT}/bin/${ver_i}" "/usr/bin/${ver_i}" + done + + # symlinks to switch components to active rust in eselect + dosym "${SLOT}/lib" "/usr/lib/${PN}/lib-${SLOT}" + use rust-analyzer && dosym "${SLOT}/libexec" "/usr/lib/${PN}/libexec-${SLOT}" + dosym "${SLOT}/share/man" "/usr/lib/${PN}/man-${SLOT}" + dosym "rust/${SLOT}/lib/rustlib" "/usr/lib/rustlib-${SLOT}" + dosym "../../lib/${PN}/${SLOT}/share/doc/rust" "/usr/share/doc/${RUST_P}" + + newenvd - "50${RUST_P}" <<-_EOF_ + MANPATH="${EPREFIX}/usr/lib/rust/man-${SLOT}" + _EOF_ + + rm -rf "${ED}/usr/lib/${PN}/${SLOT}"/*.old || die + rm -rf "${ED}/usr/lib/${PN}/${SLOT}/bin"/*.old || die + rm -rf "${ED}/usr/lib/${PN}/${SLOT}/doc"/*.old || die + + # note: eselect-rust adds EROOT to all paths below + cat <<-_EOF_ > "${T}/provider-${PN}-${SLOT}" + /usr/bin/cargo + /usr/bin/rustdoc + /usr/bin/rust-gdb + /usr/bin/rust-gdbgui + /usr/bin/rust-lldb + /usr/lib/rustlib + /usr/lib/rust/lib + /usr/lib/rust/man + /usr/share/doc/rust + _EOF_ + + if use clippy; then + echo /usr/bin/clippy-driver >> "${T}/provider-${RUST_P}" + echo /usr/bin/cargo-clippy >> "${T}/provider-${RUST_P}" + fi + if [[ ${SLOT} == *9999* ]] && use miri; then + echo /usr/bin/miri >> "${T}/provider-${RUST_P}" + echo /usr/bin/cargo-miri >> "${T}/provider-${RUST_P}" + fi + if use rustfmt; then + echo /usr/bin/rustfmt >> "${T}/provider-${RUST_P}" + echo /usr/bin/cargo-fmt >> "${T}/provider-${RUST_P}" + fi + if use rust-analyzer; then + echo /usr/lib/rust/libexec >> "${T}/provider-${RUST_P}" + echo /usr/bin/rust-analyzer >> "${T}/provider-${RUST_P}" + fi + + insinto /etc/env.d/rust + doins "${T}/provider-${PN}-${SLOT}" + + if use dist; then + "${EPYTHON}" ./x.py dist -v --config="${S}"/bootstrap.toml -j$(makeopts_jobs) || die + insinto "/usr/lib/${PN}/${SLOT}/dist" + doins -r "${S}/build/dist/." + fi +} + +pkg_postinst() { + eselect rust update + + if has_version dev-debug/gdb || has_version llvm-core/lldb; then + elog "Rust installs helper scripts for calling GDB and LLDB," + elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${RUST_PV}." + fi + + if has_version app-editors/emacs; then + optfeature "emacs support for rust" app-emacs/rust-mode + fi + + if has_version app-editors/gvim || has_version app-editors/vim; then + optfeature "vim support for rust" app-vim/rust-vim + fi +} + +pkg_postrm() { + eselect rust cleanup +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.93.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.93.1.ebuild new file mode 100644 index 00000000000..9da8a4266e6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.93.1.ebuild @@ -0,0 +1,890 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Bump notes: https://wiki.gentoo.org/wiki/Project:Rust/Rust_bump + +LLVM_COMPAT=( 21 ) +PYTHON_COMPAT=( python3_{11..14} ) + +# Patches are kept in rust-patches.git, see its README.rst for the versioning +# scheme. +# +# We use _pN from the ebuild version for the patchset but it can be overridden +# in the ebuild for changes that don't require a revbump. +# +# Uncomment this line when the ebuild needs a patchset update but no revbump. +#RUST_PATCH_VER=${PV}-1 + +RUST_MAX_VER=${PV%%_*} +RUST_PV=${PV%%_p*} +RUST_P=${PN}-${RUST_PV} +[[ -z ${RUST_PATCH_VER} ]] && RUST_PATCH_VER=${PV} + +if [[ ${PV} == *9999* ]]; then + # Update this as new `beta` releases come out. + RUST_MIN_VER="1.92.0" +elif [[ ${PV} == *beta* ]]; then + RUST_MIN_VER="$(ver_cut 1).$(($(ver_cut 2) - 1)).0" +else + RUST_MIN_VER="$(ver_cut 1).$(($(ver_cut 2) - 1)).0" +fi + +inherit check-reqs estack flag-o-matic llvm-r1 multiprocessing optfeature +inherit multilib multilib-build python-any-r1 rust rust-toolchain toolchain-funcs +inherit verify-sig + +if [[ ${PV} = *9999* ]]; then + inherit git-r3 +elif [[ ${PV} == *beta* ]]; then + # Identify the snapshot date of the beta release: + # curl -Ls static.rust-lang.org/dist/channel-rust-beta.toml | grep beta-src.tar.xz + betaver=${PV//*beta} + BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}" + MY_P="rustc-beta" + SRC_URI=" + https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz -> rustc-${RUST_PV}-src.tar.xz + https://gitweb.gentoo.org/proj/rust-patches.git/snapshot/rust-patches-${RUST_PATCH_VER}.tar.bz2 + verify-sig? ( + https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz.asc + -> rustc-${RUST_PV}-src.tar.xz.asc + ) + " + S="${WORKDIR}/${MY_P}-src" +else + MY_P="rustc-${RUST_PV}" + SRC_URI=" + https://static.rust-lang.org/dist/${MY_P}-src.tar.xz + https://gitweb.gentoo.org/proj/rust-patches.git/snapshot/rust-patches-${RUST_PATCH_VER}.tar.bz2 + verify-sig? ( https://static.rust-lang.org/dist/${MY_P}-src.tar.xz.asc ) + " + S="${WORKDIR}/${MY_P}-src" + + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +fi + +DESCRIPTION="Systems programming language originally developed by Mozilla" +HOMEPAGE="https://www.rust-lang.org/" + +# keep in sync with llvm ebuild of the same version as bundled one. +ALL_LLVM_TARGETS=( AArch64 AMDGPU ARC ARM AVR BPF CSKY DirectX Hexagon Lanai ) +ALL_LLVM_TARGETS+=( LoongArch M68k Mips MSP430 NVPTX PowerPC RISCV Sparc SPIRV ) +ALL_LLVM_TARGETS+=( SystemZ VE WebAssembly X86 XCore Xtensa ) +ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" ) +LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/(-)?} + +# https://github.com/rust-lang/llvm-project/blob/rustc-1.87.0/llvm/CMakeLists.txt +_ALL_RUST_EXPERIMENTAL_TARGETS=( ARC CSKY DirectX M68k Xtensa ) +declare -A ALL_RUST_EXPERIMENTAL_TARGETS +for _x in "${_ALL_RUST_EXPERIMENTAL_TARGETS[@]}"; do + ALL_RUST_EXPERIMENTAL_TARGETS["llvm_targets_${_x}"]=0 +done + +# Bare metal targets which can be built on the host system and have no +# dependency on compiler runtime, libc and unwinder. +ALL_RUST_SYSROOTS=( bpf wasm ) +ALL_RUST_SYSROOTS=( "${ALL_RUST_SYSROOTS[@]/#/rust_sysroots_}" ) + +LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" +SLOT="${PV%%_*}" # Beta releases get to share the same SLOT as the eventual stable + +IUSE="big-endian +clippy cpu_flags_x86_sse2 debug dist +doc llvm-libunwind lto" +IUSE+=" +rustfmt rust-analyzer rust-src +system-llvm test" +IUSE+=" ${ALL_LLVM_TARGETS[*]} ${ALL_RUST_SYSROOTS[*]}" + +if [[ ${PV} = *9999* ]]; then + # These USE flags require nightly rust + IUSE+=" miri" +fi + +LLVM_DEPEND=() +# splitting usedeps needed to avoid CI/pkgcheck's UncheckableDep limitation +for _x in "${ALL_LLVM_TARGETS[@]}"; do + LLVM_DEPEND+=( " ${_x}? ( $(llvm_gen_dep "llvm-core/llvm:\${LLVM_SLOT}[${_x}=]") )" ) + if [[ -v ALL_RUST_EXPERIMENTAL_TARGETS["${_x}"] ]] ; then + ALL_RUST_EXPERIMENTAL_TARGETS["${_x}"]=1 + fi +done +LLVM_DEPEND+=( " rust_sysroots_wasm? ( $(llvm_gen_dep 'llvm-core/lld:${LLVM_SLOT}') )" ) +LLVM_DEPEND+=( " $(llvm_gen_dep 'llvm-core/llvm:${LLVM_SLOT}')" ) + +# dev-libs/oniguruma is used for documentation +BDEPEND=" + ${PYTHON_DEPS} + app-eselect/eselect-rust + dev-libs/oniguruma + || ( + >=sys-devel/gcc-4.7[cxx] + >=llvm-core/clang-3.5 + ) + lto? ( system-llvm? ( + || ( + $(llvm_gen_dep 'llvm-core/lld:${LLVM_SLOT}') + sys-devel/mold + ) + ) ) + rust_sysroots_wasm? ( llvm-core/clang ) + !system-llvm? ( + >=dev-build/cmake-3.13.4 + app-alternatives/ninja + ) + test? ( dev-debug/gdb ) + verify-sig? ( sec-keys/openpgp-keys-rust ) +" + +DEPEND=" + >=app-arch/xz-utils-5.2 + net-misc/curl:=[http2,ssl] + virtual/zlib:= + dev-libs/openssl:0= + system-llvm? ( + ${LLVM_DEPEND[*]} + llvm-libunwind? ( llvm-runtimes/libunwind:= ) + ) + !system-llvm? ( + !llvm-libunwind? ( + elibc_musl? ( sys-libs/libunwind:= ) + ) + ) +" + +RDEPEND=" + ${DEPEND} + app-eselect/eselect-rust + dev-lang/rust-common + sys-apps/lsb-release + !dev-lang/rust:stable + !dev-lang/rust-bin:stable +" + +REQUIRED_USE=" + || ( ${ALL_LLVM_TARGETS[*]} ) + rust-analyzer? ( rust-src ) + test? ( ${ALL_LLVM_TARGETS[*]} ) + rust_sysroots_bpf? ( llvm_targets_BPF ) + rust_sysroots_wasm? ( llvm_targets_WebAssembly ) + x86? ( cpu_flags_x86_sse2 ) +" + +# we don't use cmake.eclass, but can get a warning +CMAKE_WARN_UNUSED_CLI=no + +QA_FLAGS_IGNORED=" + usr/lib/${PN}/${SLOT}/bin/.* + usr/lib/${PN}/${SLOT}/libexec/.* + usr/lib/${PN}/${SLOT}/lib/lib.*.so + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/bin/.* + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/lib/lib.*.so +" + +QA_SONAME=" + usr/lib/${PN}/${SLOT}/lib/lib.*.so.* + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/lib/lib.*.so +" + +QA_PRESTRIPPED=" + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/bin/rust-llvm-dwp + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/lib/self-contained/crtn.o +" + +# An rmeta file is custom binary format that contains the metadata for the crate. +# rmeta files do not support linking, since they do not contain compiled object files. +# so we can safely silence the warning for this QA check. +QA_EXECSTACK="usr/lib/${PN}/${SLOT}/lib/rustlib/*/lib*.rlib:lib.rmeta" + +# causes double bootstrap +RESTRICT="test" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/rust.asc + +clear_vendor_checksums() { + sed -i 's/\("files":{\)[^}]*/\1/' "vendor/${1}/.cargo-checksum.json" || die +} + +toml_usex() { + usex "${1}" true false +} + +pre_build_checks() { + local M=9216 + # multiply requirements by 1.3 if we are doing x86-multilib + if use amd64; then + M=$(( $(usex abi_x86_32 13 10) * ${M} / 10 )) + fi + M=$(( $(usex clippy 128 0) + ${M} )) + if [[ ${PV} == *9999* ]]; then + M=$(( $(usex miri 128 0) + ${M} )) + fi + M=$(( $(usex rustfmt 256 0) + ${M} )) + # add 2G if we compile llvm and 256M per llvm_target + if ! use system-llvm; then + M=$(( 2048 + ${M} )) + local ltarget + for ltarget in ${ALL_LLVM_TARGETS[@]}; do + M=$(( $(usex ${ltarget} 256 0) + ${M} )) + done + fi + M=$(( $(usex rust_sysroots_bpf 256 0) + ${M} )) + M=$(( $(usex rust_sysroots_wasm 256 0) + ${M} )) + M=$(( $(usex debug 2 1) * ${M} )) + eshopts_push -s extglob + if is-flagq '-g?(gdb)?([1-9])'; then + M=$(( 15 * ${M} / 10 )) + fi + eshopts_pop + M=$(( $(usex doc 256 0) + ${M} )) + CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE} +} + +llvm_check_deps() { + has_version -r "llvm-core/llvm:${LLVM_SLOT}[${LLVM_TARGET_USEDEPS// /,}]" +} + +# Is LLVM being linked against libc++? +is_libcxx_linked() { + local code='#include +#if defined(_LIBCPP_VERSION) + HAVE_LIBCXX +#endif +' + local out=$($(tc-getCXX) ${CXXFLAGS} ${CPPFLAGS} -x c++ -E -P - <<<"${code}") || return 1 + [[ ${out} == *HAVE_LIBCXX* ]] +} + +pkg_pretend() { + pre_build_checks +} + +pkg_setup() { + pre_build_checks + python-any-r1_pkg_setup + + export LIBGIT2_NO_PKG_CONFIG=1 #749381 + if tc-is-cross-compiler; then + use system-llvm && die "USE=system-llvm not allowed when cross-compiling" + local cross_llvm_target="$(llvm_tuple_to_target "${CBUILD}")" + use "llvm_targets_${cross_llvm_target}" || \ + die "Must enable LLVM_TARGETS=${cross_llvm_target} matching CBUILD=${CBUILD} when cross-compiling" + fi + + rust_pkg_setup + + if use system-llvm; then + llvm-r1_pkg_setup + + local llvm_config="$(get_llvm_prefix)/bin/llvm-config" + export LLVM_LINK_SHARED=1 + export RUSTFLAGS="${RUSTFLAGS} -Lnative=$("${llvm_config}" --libdir)" + fi +} + +rust_live_get_sources() { + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/rust-patches.git + " + EGIT_CHECKOUT_DIR="${WORKDIR}/rust-patches-${RUST_PATCH_VER}" + git-r3_src_unpack + + EGIT_REPO_URI=" + https://github.com/rust-lang/rust.git + " + EGIT_SUBMODULES=( + "*" + "-src/gcc" + ) + S="${WORKDIR}/rust" + EGIT_CHECKOUT_DIR="${S}" + git-r3_src_unpack +} + +src_unpack() { + if [[ ${PV} == *9999* ]] ; then + rust_live_get_sources + + # Vendor dependencies + mkdir "${S}/.cargo" || die # The vendor script has a check for .cargo/config{,.toml} + touch "${S}/.cargo/bootstrap.toml" || die + local rust_stage0_root="$(${RUSTC} --print sysroot || die "Can't determine rust's sysroot")" + # Configure vendor to use the portage-provided toolchain. This prevents it from + # attempting to fetch a `beta` toolchain from the internet. + cat <<- _EOF_ > "${T}/vendor-bootstrap.toml" + # Suppresses a warning about tracking changes which we don't care about. + change-id = "ignore" + [build] + build = "$(rust_abi "${CBUILD}")" + host = ["$(rust_abi "${CHOST}")"] + target = ["$(rust_abi "${CHOST}")"] + cargo = "${rust_stage0_root}/bin/cargo" + rustc = "${rust_stage0_root}/bin/rustc" + rustfmt = "${rust_stage0_root}/bin/rustfmt" + _EOF_ + # We're using git sources so we need to run the Vendor script + # to ensure that all dependencies are present and up-to-date + mkdir "${S}/vendor" || die + # This also compiles the 'build helper', there's no way to avoid this. + ${EPYTHON} "${S}"/x.py vendor -v --config="${T}"/vendor-bootstrap.toml -j$(makeopts_jobs) || + die "Failed to vendor dependencies" + # TODO: This has to be generated somehow, this is from a 1.84.x tarball I had lying around. + cat <<- _EOF_ > "${S}/.cargo/config.toml" + [source.crates-io] + replace-with = "vendored-sources" + + [source."git+https://github.com/rust-lang/team"] + git = "https://github.com/rust-lang/team" + replace-with = "vendored-sources" + + [source.vendored-sources] + directory = "vendor" + _EOF_ + elif use verify-sig ; then + # Patch tarballs are not signed (but we trust Gentoo infra) + verify-sig_verify_detached "${DISTDIR}"/rustc-${RUST_PV}-src.tar.xz{,.asc} + default + else + default + fi +} + +src_prepare() { + # Commit patches to the appropriate branch in proj/rust-patches.git + # then cut a new tag / tarball. Don't add patches to ${FILESDIR} + PATCHES=( + "${WORKDIR}/rust-patches-${RUST_PATCH_VER}/" + ) + + if use lto && tc-is-clang && ! tc-ld-is-lld && ! tc-ld-is-mold; then + export RUSTFLAGS+=" -C link-arg=-fuse-ld=lld" + fi + + default +} + +src_configure() { + if tc-is-cross-compiler; then + export PKG_CONFIG_ALLOW_CROSS=1 + export PKG_CONFIG_PATH="${ESYSROOT}/usr/$(get_libdir)/pkgconfig" + export OPENSSL_INCLUDE_DIR="${ESYSROOT}/usr/include" + export OPENSSL_LIB_DIR="${ESYSROOT}/usr/$(get_libdir)" + fi + + # Avoid bundled copies of libraries + export RUSTONIG_SYSTEM_LIBONIG=1 + # Need to check if these can be optional + #export LIBSQLITE3_SYS_USE_PKG_CONFIG=1 + #export LIBSSH2_SYS_USE_PKG_CONFIG=1 + + filter-lto # https://bugs.gentoo.org/862109 https://bugs.gentoo.org/866231 + + local rust_target="" rust_targets="" arch_cflags + + # Collect rust target names to compile standard libs for all ABIs. + for v in $(multilib_get_enabled_abi_pairs); do + rust_targets+=",\"$(rust_abi $(get_abi_CHOST ${v##*.}))\"" + done + if use rust_sysroots_bpf; then + rust_targets+=",\"bpfeb-unknown-none\",\"bpfel-unknown-none\"" + fi + if use rust_sysroots_wasm; then + rust_targets+=",\"wasm32-unknown-unknown\"" + if use system-llvm; then + # un-hardcode rust-lld linker for this target + # https://bugs.gentoo.org/715348 + sed -i '/linker:/ s/rust-lld/wasm-ld/' compiler/rustc_target/src/spec/base/wasm.rs || die + fi + fi + rust_targets="${rust_targets#,}" + + # cargo and rustdoc are mandatory and should always be included + local tools='"cargo","rustdoc"' + use clippy && tools+=',"clippy"' + use rustfmt && tools+=',"rustfmt"' + use rust-analyzer && tools+=',"rust-analyzer","rust-analyzer-proc-macro-srv"' + use rust-src && tools+=',"src"' + + if [[ ${PV} == *9999* ]]; then + use miri && tools+=',"miri"' + fi + + local rust_stage0_root="$(${RUSTC} --print sysroot || die "Can't determine rust's sysroot")" + # in case of prefix it will be already prefixed, as --print sysroot returns full path + [[ -d ${rust_stage0_root} ]] || die "${rust_stage0_root} is not a directory" + + rust_target="$(rust_abi)" + rust_build="$(rust_abi "${CBUILD}")" + rust_host="$(rust_abi "${CHOST}")" + + RUST_EXPERIMENTAL_TARGETS=() + for _x in "${!ALL_RUST_EXPERIMENTAL_TARGETS[@]}"; do + if [[ ${ALL_RUST_EXPERIMENTAL_TARGETS[${_x}]} == 1 ]] && use ${_x} ; then + RUST_EXPERIMENTAL_TARGETS+=( ${_x#llvm_targets_} ) + fi + done + RUST_EXPERIMENTAL_TARGETS=${RUST_EXPERIMENTAL_TARGETS[@]} + + local cm_btype="$(usex debug DEBUG RELEASE)" + local build_channel + local build_miri="false" + case "${PV}" in + *9999*) + build_channel="nightly" + ;; + *beta*) + build_channel="beta" + ;; + *) + build_channel="stable" + ;; + esac + + # TODO: Add optimized-compiler-builtins for system-llvm to avoid + # building bundled compiler-rt. + cat <<- _EOF_ > "${S}"/bootstrap.toml + # Suppresses a warning about tracking changes which we don't care about. + change-id = "ignore" + # https://github.com/rust-lang/rust/issues/135358 (bug #947897) + profile = "dist" + [llvm] + download-ci-llvm = false + optimize = $(toml_usex !debug) + release-debuginfo = $(toml_usex debug) + assertions = $(toml_usex debug) + ninja = true + targets = "${LLVM_TARGETS// /;}" + experimental-targets = "${RUST_EXPERIMENTAL_TARGETS// /;}" + link-shared = $(toml_usex system-llvm) + $(if is_libcxx_linked; then + # https://bugs.gentoo.org/732632 + echo "use-libcxx = true" + echo "static-libstdcpp = false" + fi) + $(case "${rust_target}" in + i586-*-linux-*) + # https://github.com/rust-lang/rust/issues/93059 + echo 'cflags = "-fcf-protection=none"' + echo 'cxxflags = "-fcf-protection=none"' + echo 'ldflags = "-fcf-protection=none"' + ;; + *) + ;; + esac) + enable-warnings = false + [llvm.build-config] + CMAKE_VERBOSE_MAKEFILE = "ON" + $(if ! tc-is-cross-compiler; then + # When cross-compiling, LLVM is compiled twice, once for host and + # once for target. Unfortunately, this build configuration applies + # to both, which means any flags applicable to one target but not + # the other will break. Conditionally disable respecting user + # flags when cross-compiling. + echo "CMAKE_C_FLAGS_${cm_btype} = \"${CFLAGS}\"" + echo "CMAKE_CXX_FLAGS_${cm_btype} = \"${CXXFLAGS}\"" + echo "CMAKE_EXE_LINKER_FLAGS_${cm_btype} = \"${LDFLAGS}\"" + echo "CMAKE_MODULE_LINKER_FLAGS_${cm_btype} = \"${LDFLAGS}\"" + echo "CMAKE_SHARED_LINKER_FLAGS_${cm_btype} = \"${LDFLAGS}\"" + echo "CMAKE_STATIC_LINKER_FLAGS_${cm_btype} = \"${ARFLAGS}\"" + fi) + [build] + build-stage = 2 + test-stage = 2 + build = "${rust_build}" + host = ["${rust_host}"] + target = [${rust_targets}] + cargo = "${rust_stage0_root}/bin/cargo" + rustc = "${rust_stage0_root}/bin/rustc" + rustfmt = "${rust_stage0_root}/bin/rustfmt" + description = "gentoo" + docs = $(toml_usex doc) + compiler-docs = false + submodules = false + python = "${EPYTHON}" + locked-deps = true + vendor = true + extended = true + tools = [${tools}] + verbose = 2 + sanitizers = false + profiler = true + cargo-native-static = false + [install] + prefix = "${EPREFIX}/usr/lib/${PN}/${SLOT}" + sysconfdir = "etc" + docdir = "share/doc/rust" + bindir = "bin" + libdir = "lib" + mandir = "share/man" + [rust] + # https://github.com/rust-lang/rust/issues/54872 + codegen-units-std = 1 + optimize = true + debug = $(toml_usex debug) + debug-assertions = $(toml_usex debug) + debug-assertions-std = $(toml_usex debug) + debuginfo-level = $(usex debug 2 0) + debuginfo-level-rustc = $(usex debug 2 0) + debuginfo-level-std = $(usex debug 2 0) + debuginfo-level-tools = $(usex debug 2 0) + debuginfo-level-tests = 0 + backtrace = true + incremental = false + $(if ! tc-is-cross-compiler; then + echo "default-linker = \"${CHOST}-cc\"" + fi) + channel = "${build_channel}" + rpath = true + verbose-tests = true + optimize-tests = $(toml_usex !debug) + codegen-tests = true + omit-git-hash = false + dist-src = false + remap-debuginfo = true + lld = $(usex system-llvm false $(toml_usex rust_sysroots_wasm)) + $(if use lto && tc-is-clang && ! tc-ld-is-mold; then + echo "use-lld = true" + fi) + # only deny warnings if doc+wasm are NOT requested, documenting stage0 wasm std fails without it + # https://github.com/rust-lang/rust/issues/74976 + # https://github.com/rust-lang/rust/issues/76526 + deny-warnings = $(usex rust_sysroots_wasm $(usex doc false true) true) + backtrace-on-ice = true + jemalloc = false + # See https://github.com/rust-lang/rust/issues/121124 + lto = "$(usex lto thin off)" + [dist] + src-tarball = false + compression-formats = ["xz"] + compression-profile = "balanced" + _EOF_ + + for v in $(multilib_get_enabled_abi_pairs); do + rust_target=$(rust_abi $(get_abi_CHOST ${v##*.})) + arch_cflags="$(get_abi_CFLAGS ${v##*.})" + + export CFLAGS_${rust_target//-/_}="${arch_cflags}" + + cat <<- _EOF_ >> "${S}"/bootstrap.toml + [target.${rust_target}] + ar = "$(tc-getAR)" + cc = "$(tc-getCC)" + cxx = "$(tc-getCXX)" + linker = "$(tc-getCC)" + ranlib = "$(tc-getRANLIB)" + llvm-libunwind = "$(usex llvm-libunwind $(usex system-llvm system in-tree) no)" + _EOF_ + if use system-llvm; then + cat <<- _EOF_ >> "${S}"/bootstrap.toml + llvm-config = "$(get_llvm_prefix)/bin/llvm-config" + _EOF_ + fi + # by default librustc_target/spec/linux_musl_base.rs sets base.crt_static_default = true; + # but we patch it and set to false here as well + if use elibc_musl; then + cat <<- _EOF_ >> "${S}"/bootstrap.toml + crt-static = false + musl-root = "$($(tc-getCC) -print-sysroot)/usr" + _EOF_ + fi + done + if use rust_sysroots_wasm; then + wasm_target="wasm32-unknown-unknown" + if tc-is-clang; then + local wasm_cc=$(tc-getCC) + local wasm_cxx=$(tc-getCXX) + else + local wasm_cc=${CHOST}-clang + local wasm_cxx=${CHOST}-clang++ + fi + export CFLAGS_${wasm_target//-/_}="$( + CC="${wasm_cc} --target=wasm32-unknown-unknown" + filter-flags '-mcpu*' '-march*' '-mtune*' + strip-unsupported-flags + echo "${CFLAGS}" + )" + cat <<- _EOF_ >> "${S}"/bootstrap.toml + [target.wasm32-unknown-unknown] + cc = "${wasm_cc}" + cxx = "${wasm_cxx}" + linker = "$(usex system-llvm lld rust-lld)" + # wasm target does not have profiler_builtins https://bugs.gentoo.org/848483 + profiler = false + _EOF_ + fi + + if [[ -n ${I_KNOW_WHAT_I_AM_DOING_CROSS} ]]; then # whitespace intentionally shifted below + # experimental cross support + # discussion: https://bugs.gentoo.org/679878 + # TODO: c*flags, clang, system-llvm, cargo.eclass target support + # it would be much better if we could split out stdlib + # complilation to separate ebuild and abuse CATEGORY to + # just install to /usr/lib/rustlib/ + + # extra targets defined as a bash array + # spec format: :: + # best place would be /etc/portage/env/dev-lang/rust + # Example: + # RUST_CROSS_TARGETS=( + # "AArch64:aarch64-unknown-linux-gnu:aarch64-unknown-linux-gnu" + # ) + # no extra hand holding is done, no target transformations, all + # values are passed as-is with just basic checks, so it's up to user to supply correct values + # valid rust targets can be obtained with + # rustc --print target-list + # matching cross toolchain has to be installed + # matching LLVM_TARGET has to be enabled for both rust and llvm (if using system one) + # only gcc toolchains installed with crossdev are checked for now. + + # BUG: we can't pass host flags to cross compiler, so just filter for now + # BUG: this should be more fine-grained. + filter-flags '-mcpu=*' '-march=*' '-mtune=*' + + local cross_target_spec + for cross_target_spec in "${RUST_CROSS_TARGETS[@]}";do + # extracts first element form :: + local cross_llvm_target="${cross_target_spec%%:*}" + # extracts toolchain triples, : + local cross_triples="${cross_target_spec#*:}" + # extracts first element after before : separator + local cross_rust_target="${cross_triples%%:*}" + # extracts last element after : separator + local cross_toolchain="${cross_triples##*:}" + use llvm_targets_${cross_llvm_target} || die "need llvm_targets_${cross_llvm_target} target enabled" + command -v ${cross_toolchain}-gcc > /dev/null 2>&1 || die "need ${cross_toolchain} cross toolchain" + + cat <<- _EOF_ >> "${S}"/bootstrap.toml + [target.${cross_rust_target}] + ar = "${cross_toolchain}-ar" + cc = "${cross_toolchain}-gcc" + cxx = "${cross_toolchain}-g++" + linker = "${cross_toolchain}-gcc" + ranlib = "${cross_toolchain}-ranlib" + _EOF_ + if use system-llvm; then + cat <<- _EOF_ >> "${S}"/bootstrap.toml + llvm-config = "$(get_llvm_prefix)/bin/llvm-config" + _EOF_ + fi + if [[ "${cross_toolchain}" == *-musl* ]]; then + cat <<- _EOF_ >> "${S}"/bootstrap.toml + musl-root = "$(${cross_toolchain}-gcc -print-sysroot)/usr" + _EOF_ + fi + if [[ "${cross_rust_target}" == *-uefi ]]; then + # Profiler is not supported on bare-metal + cat <<- _EOF_ >> "${S}"/bootstrap.toml + profiler = false + _EOF_ + fi + + # append cross target to "normal" target list + # example 'target = ["powerpc64le-unknown-linux-gnu"]' + # becomes 'target = ["powerpc64le-unknown-linux-gnu","aarch64-unknown-linux-gnu"]' + + rust_targets="${rust_targets},\"${cross_rust_target}\"" + sed -i "/^target = \[/ s#\[.*\]#\[${rust_targets}\]#" bootstrap.toml || die + + ewarn + ewarn "Enabled ${cross_rust_target} rust target" + ewarn "Using ${cross_toolchain} cross toolchain" + ewarn + if ! has_version -b 'sys-devel/binutils[multitarget]' ; then + ewarn "'sys-devel/binutils[multitarget]' is not installed" + ewarn "'strip' will be unable to strip cross libraries" + ewarn "cross targets will be installed with full debug information" + ewarn "enable 'multitarget' USE flag for binutils to be able to strip object files" + ewarn + ewarn "Alternatively llvm-strip can be used, it supports stripping any target" + ewarn "define STRIP=\"llvm-strip\" to use it (experimental)" + ewarn + fi + done + fi # I_KNOW_WHAT_I_AM_DOING_CROSS + + einfo "Rust configured with the following flags:" + echo + echo RUSTFLAGS="\"${RUSTFLAGS}\"" + echo RUSTFLAGS_BOOTSTRAP="\"${RUSTFLAGS_BOOTSTRAP}\"" + echo RUSTFLAGS_NOT_BOOTSTRAP="\"${RUSTFLAGS_NOT_BOOTSTRAP}\"" + echo MAGIC_EXTRA_RUSTFLAGS="\"${MAGIC_EXTRA_RUSTFLAGS}\"" + env | grep "CARGO_TARGET_.*_RUSTFLAGS=" + env | grep "CFLAGS_.*" + echo + einfo "bootstrap.toml contents:" + cat "${S}"/bootstrap.toml || die + echo +} + +src_compile() { + # -v will show invocations, -vv "very verbose" is overkill, -vvv "very very verbose" is insane + RUST_BACKTRACE=1 "${EPYTHON}" ./x.py build -v --config="${S}"/bootstrap.toml -j$(makeopts_jobs) || die +} + +src_test() { + # https://rustc-dev-guide.rust-lang.org/tests/intro.html + + # those are basic and codegen tests. + local tests=( + codegen + codegen-units + compile-fail + incremental + mir-opt + pretty + run-make + ) + + # fails if llvm is not built with ALL targets. + # and known to fail with system llvm sometimes. + use system-llvm || tests+=( assembly ) + + # fragile/expensive/less important tests + # or tests that require extra builds + # TODO: instead of skipping, just make some nonfatal. + if [[ ${ERUST_RUN_EXTRA_TESTS:-no} != no ]]; then + tests+=( + rustdoc + rustdoc-js + rustdoc-js-std + rustdoc-ui + run-make-fulldeps + ui + ui-fulldeps + ) + fi + + local i failed=() + einfo "rust_src_test: enabled tests ${tests[@]/#/src/test/}" + for i in "${tests[@]}"; do + local t="src/test/${i}" + einfo "rust_src_test: running ${t}" + if ! RUST_BACKTRACE=1 "${EPYTHON}" ./x.py test -vv --config="${S}"/bootstrap.toml \ + -j$(makeopts_jobs) --no-doc --no-fail-fast "${t}" + then + failed+=( "${t}" ) + eerror "rust_src_test: ${t} failed" + fi + done + + if [[ ${#failed[@]} -ne 0 ]]; then + eerror "rust_src_test: failure summary: ${failed[@]}" + die "aborting due to test failures" + fi +} + +src_install() { + DESTDIR="${D}" "${EPYTHON}" ./x.py install -v --config="${S}"/bootstrap.toml -j$(makeopts_jobs) || die + + docompress /usr/lib/${PN}/${SLOT}/share/man/ + + # bash-completion files are installed by dev-lang/rust-common instead + # bug #689562, #689160. + rm -v "${ED}/usr/lib/${PN}/${SLOT}/etc/bash_completion.d/cargo" || die + rmdir -v "${ED}/usr/lib/${PN}/${SLOT}/etc/bash_completion.d" || die + + local symlinks=( + cargo + rustc + rustdoc + rust-gdb + rust-gdbgui + rust-lldb + ) + + use clippy && symlinks+=( clippy-driver cargo-clippy ) + if [[ ${PV} = *9999* ]]; then + use miri && symlinks+=( miri cargo-miri ) + fi + use rustfmt && symlinks+=( rustfmt cargo-fmt ) + use rust-analyzer && symlinks+=( rust-analyzer ) + + einfo "installing eselect-rust symlinks and paths: ${symlinks[@]}" + local i + for i in "${symlinks[@]}"; do + # we need realpath on /usr/bin/* symlink return version-appended binary path. + # so /usr/bin/rustc should point to /usr/lib/rust//bin/rustc- + # need to fix eselect-rust to remove this hack. + local ver_i="${i}-${RUST_PV%%_*}" + if [[ -f "${ED}/usr/lib/${PN}/${SLOT}/bin/${i}" ]]; then + einfo "Installing ${i} symlink" + ln -v "${ED}/usr/lib/${PN}/${SLOT}/bin/${i}" "${ED}/usr/lib/${PN}/${SLOT}/bin/${ver_i}" || die + else + ewarn "${i} symlink requested, but source file not found" + ewarn "please report this" + fi + dosym "../lib/${PN}/${SLOT}/bin/${ver_i}" "/usr/bin/${ver_i}" + done + + # symlinks to switch components to active rust in eselect + dosym "${SLOT}/lib" "/usr/lib/${PN}/lib-${SLOT}" + use rust-analyzer && dosym "${SLOT}/libexec" "/usr/lib/${PN}/libexec-${SLOT}" + dosym "${SLOT}/share/man" "/usr/lib/${PN}/man-${SLOT}" + dosym "rust/${SLOT}/lib/rustlib" "/usr/lib/rustlib-${SLOT}" + dosym "../../lib/${PN}/${SLOT}/share/doc/rust" "/usr/share/doc/${RUST_P}" + + newenvd - "50${RUST_P}" <<-_EOF_ + MANPATH="${EPREFIX}/usr/lib/rust/man-${SLOT}" + _EOF_ + + rm -rf "${ED}/usr/lib/${PN}/${SLOT}"/*.old || die + rm -rf "${ED}/usr/lib/${PN}/${SLOT}/bin"/*.old || die + rm -rf "${ED}/usr/lib/${PN}/${SLOT}/doc"/*.old || die + + # note: eselect-rust adds EROOT to all paths below + cat <<-_EOF_ > "${T}/provider-${PN}-${SLOT}" + /usr/bin/cargo + /usr/bin/rustdoc + /usr/bin/rust-gdb + /usr/bin/rust-gdbgui + /usr/bin/rust-lldb + /usr/lib/rustlib + /usr/lib/rust/lib + /usr/lib/rust/man + /usr/share/doc/rust + _EOF_ + + if use clippy; then + echo /usr/bin/clippy-driver >> "${T}/provider-${RUST_P}" + echo /usr/bin/cargo-clippy >> "${T}/provider-${RUST_P}" + fi + if [[ ${SLOT} == *9999* ]] && use miri; then + echo /usr/bin/miri >> "${T}/provider-${RUST_P}" + echo /usr/bin/cargo-miri >> "${T}/provider-${RUST_P}" + fi + if use rustfmt; then + echo /usr/bin/rustfmt >> "${T}/provider-${RUST_P}" + echo /usr/bin/cargo-fmt >> "${T}/provider-${RUST_P}" + fi + if use rust-analyzer; then + echo /usr/lib/rust/libexec >> "${T}/provider-${RUST_P}" + echo /usr/bin/rust-analyzer >> "${T}/provider-${RUST_P}" + fi + + insinto /etc/env.d/rust + doins "${T}/provider-${PN}-${SLOT}" + + if use dist; then + "${EPYTHON}" ./x.py dist -v --config="${S}"/bootstrap.toml -j$(makeopts_jobs) || die + insinto "/usr/lib/${PN}/${SLOT}/dist" + doins -r "${S}/build/dist/." + fi +} + +pkg_postinst() { + eselect rust update + + if has_version dev-debug/gdb || has_version llvm-core/lldb; then + elog "Rust installs helper scripts for calling GDB and LLDB," + elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${RUST_PV}." + fi + + if has_version app-editors/emacs; then + optfeature "emacs support for rust" app-emacs/rust-mode + fi + + if has_version app-editors/gvim || has_version app-editors/vim; then + optfeature "vim support for rust" app-vim/rust-vim + fi +} + +pkg_postrm() { + eselect rust cleanup +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.94.0_beta20260126.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.94.0_beta20260126.ebuild new file mode 100644 index 00000000000..d0e4413c459 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.94.0_beta20260126.ebuild @@ -0,0 +1,890 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Bump notes: https://wiki.gentoo.org/wiki/Project:Rust/Rust_bump + +LLVM_COMPAT=( 21 ) +PYTHON_COMPAT=( python3_{11..14} ) + +# Patches are kept in rust-patches.git, see its README.rst for the versioning +# scheme. +# +# We use _pN from the ebuild version for the patchset but it can be overridden +# in the ebuild for changes that don't require a revbump. +# +# Uncomment this line when the ebuild needs a patchset update but no revbump. +#RUST_PATCH_VER=${PV}-1 + +RUST_MAX_VER=${PV%%_*} +RUST_PV=${PV%%_p*} +RUST_P=${PN}-${RUST_PV} +[[ -z ${RUST_PATCH_VER} ]] && RUST_PATCH_VER=${PV} + +if [[ ${PV} == *9999* ]]; then + # Update this as new `beta` releases come out. + RUST_MIN_VER="1.93.0" +elif [[ ${PV} == *beta* ]]; then + RUST_MIN_VER="$(ver_cut 1).$(($(ver_cut 2) - 1)).0" +else + RUST_MIN_VER="$(ver_cut 1).$(($(ver_cut 2) - 1)).0" +fi + +inherit check-reqs estack flag-o-matic llvm-r1 multiprocessing optfeature +inherit multilib multilib-build python-any-r1 rust rust-toolchain toolchain-funcs +inherit verify-sig + +if [[ ${PV} = *9999* ]]; then + inherit git-r3 +elif [[ ${PV} == *beta* ]]; then + # Identify the snapshot date of the beta release: + # curl -Ls static.rust-lang.org/dist/channel-rust-beta.toml | grep beta-src.tar.xz + betaver=${PV//*beta} + BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}" + MY_P="rustc-beta" + SRC_URI=" + https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz -> rustc-${RUST_PV}-src.tar.xz + https://gitweb.gentoo.org/proj/rust-patches.git/snapshot/rust-patches-${RUST_PATCH_VER}.tar.bz2 + verify-sig? ( + https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz.asc + -> rustc-${RUST_PV}-src.tar.xz.asc + ) + " + S="${WORKDIR}/${MY_P}-src" +else + MY_P="rustc-${RUST_PV}" + SRC_URI=" + https://static.rust-lang.org/dist/${MY_P}-src.tar.xz + https://gitweb.gentoo.org/proj/rust-patches.git/snapshot/rust-patches-${RUST_PATCH_VER}.tar.bz2 + verify-sig? ( https://static.rust-lang.org/dist/${MY_P}-src.tar.xz.asc ) + " + S="${WORKDIR}/${MY_P}-src" + + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +fi + +DESCRIPTION="Systems programming language originally developed by Mozilla" +HOMEPAGE="https://www.rust-lang.org/" + +# keep in sync with llvm ebuild of the same version as bundled one. +ALL_LLVM_TARGETS=( AArch64 AMDGPU ARC ARM AVR BPF CSKY DirectX Hexagon Lanai ) +ALL_LLVM_TARGETS+=( LoongArch M68k Mips MSP430 NVPTX PowerPC RISCV Sparc SPIRV ) +ALL_LLVM_TARGETS+=( SystemZ VE WebAssembly X86 XCore Xtensa ) +ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" ) +LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/(-)?} + +# https://github.com/rust-lang/llvm-project/blob/rustc-1.87.0/llvm/CMakeLists.txt +_ALL_RUST_EXPERIMENTAL_TARGETS=( ARC CSKY DirectX M68k Xtensa ) +declare -A ALL_RUST_EXPERIMENTAL_TARGETS +for _x in "${_ALL_RUST_EXPERIMENTAL_TARGETS[@]}"; do + ALL_RUST_EXPERIMENTAL_TARGETS["llvm_targets_${_x}"]=0 +done + +# Bare metal targets which can be built on the host system and have no +# dependency on compiler runtime, libc and unwinder. +ALL_RUST_SYSROOTS=( bpf wasm ) +ALL_RUST_SYSROOTS=( "${ALL_RUST_SYSROOTS[@]/#/rust_sysroots_}" ) + +LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" +SLOT="${PV%%_*}" # Beta releases get to share the same SLOT as the eventual stable + +IUSE="big-endian +clippy cpu_flags_x86_sse2 debug dist +doc llvm-libunwind lto" +IUSE+=" +rustfmt rust-analyzer rust-src +system-llvm test" +IUSE+=" ${ALL_LLVM_TARGETS[*]} ${ALL_RUST_SYSROOTS[*]}" + +if [[ ${PV} = *9999* ]]; then + # These USE flags require nightly rust + IUSE+=" miri" +fi + +LLVM_DEPEND=() +# splitting usedeps needed to avoid CI/pkgcheck's UncheckableDep limitation +for _x in "${ALL_LLVM_TARGETS[@]}"; do + LLVM_DEPEND+=( " ${_x}? ( $(llvm_gen_dep "llvm-core/llvm:\${LLVM_SLOT}[${_x}=]") )" ) + if [[ -v ALL_RUST_EXPERIMENTAL_TARGETS["${_x}"] ]] ; then + ALL_RUST_EXPERIMENTAL_TARGETS["${_x}"]=1 + fi +done +LLVM_DEPEND+=( " rust_sysroots_wasm? ( $(llvm_gen_dep 'llvm-core/lld:${LLVM_SLOT}') )" ) +LLVM_DEPEND+=( " $(llvm_gen_dep 'llvm-core/llvm:${LLVM_SLOT}')" ) + +# dev-libs/oniguruma is used for documentation +BDEPEND=" + ${PYTHON_DEPS} + app-eselect/eselect-rust + dev-libs/oniguruma + || ( + >=sys-devel/gcc-4.7[cxx] + >=llvm-core/clang-3.5 + ) + lto? ( system-llvm? ( + || ( + $(llvm_gen_dep 'llvm-core/lld:${LLVM_SLOT}') + sys-devel/mold + ) + ) ) + rust_sysroots_wasm? ( llvm-core/clang ) + !system-llvm? ( + >=dev-build/cmake-3.13.4 + app-alternatives/ninja + ) + test? ( dev-debug/gdb ) + verify-sig? ( sec-keys/openpgp-keys-rust ) +" + +DEPEND=" + >=app-arch/xz-utils-5.2 + net-misc/curl:=[http2,ssl] + virtual/zlib:= + dev-libs/openssl:0= + system-llvm? ( + ${LLVM_DEPEND[*]} + llvm-libunwind? ( llvm-runtimes/libunwind:= ) + ) + !system-llvm? ( + !llvm-libunwind? ( + elibc_musl? ( sys-libs/libunwind:= ) + ) + ) +" + +RDEPEND=" + ${DEPEND} + app-eselect/eselect-rust + dev-lang/rust-common + sys-apps/lsb-release + !dev-lang/rust:stable + !dev-lang/rust-bin:stable +" + +REQUIRED_USE=" + || ( ${ALL_LLVM_TARGETS[*]} ) + rust-analyzer? ( rust-src ) + test? ( ${ALL_LLVM_TARGETS[*]} ) + rust_sysroots_bpf? ( llvm_targets_BPF ) + rust_sysroots_wasm? ( llvm_targets_WebAssembly ) + x86? ( cpu_flags_x86_sse2 ) +" + +# we don't use cmake.eclass, but can get a warning +CMAKE_WARN_UNUSED_CLI=no + +QA_FLAGS_IGNORED=" + usr/lib/${PN}/${SLOT}/bin/.* + usr/lib/${PN}/${SLOT}/libexec/.* + usr/lib/${PN}/${SLOT}/lib/lib.*.so + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/bin/.* + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/lib/lib.*.so +" + +QA_SONAME=" + usr/lib/${PN}/${SLOT}/lib/lib.*.so.* + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/lib/lib.*.so +" + +QA_PRESTRIPPED=" + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/bin/rust-llvm-dwp + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/lib/self-contained/crtn.o +" + +# An rmeta file is custom binary format that contains the metadata for the crate. +# rmeta files do not support linking, since they do not contain compiled object files. +# so we can safely silence the warning for this QA check. +QA_EXECSTACK="usr/lib/${PN}/${SLOT}/lib/rustlib/*/lib*.rlib:lib.rmeta" + +# causes double bootstrap +RESTRICT="test" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/rust.asc + +clear_vendor_checksums() { + sed -i 's/\("files":{\)[^}]*/\1/' "vendor/${1}/.cargo-checksum.json" || die +} + +toml_usex() { + usex "${1}" true false +} + +pre_build_checks() { + local M=9216 + # multiply requirements by 1.3 if we are doing x86-multilib + if use amd64; then + M=$(( $(usex abi_x86_32 13 10) * ${M} / 10 )) + fi + M=$(( $(usex clippy 128 0) + ${M} )) + if [[ ${PV} == *9999* ]]; then + M=$(( $(usex miri 128 0) + ${M} )) + fi + M=$(( $(usex rustfmt 256 0) + ${M} )) + # add 2G if we compile llvm and 256M per llvm_target + if ! use system-llvm; then + M=$(( 2048 + ${M} )) + local ltarget + for ltarget in ${ALL_LLVM_TARGETS[@]}; do + M=$(( $(usex ${ltarget} 256 0) + ${M} )) + done + fi + M=$(( $(usex rust_sysroots_bpf 256 0) + ${M} )) + M=$(( $(usex rust_sysroots_wasm 256 0) + ${M} )) + M=$(( $(usex debug 2 1) * ${M} )) + eshopts_push -s extglob + if is-flagq '-g?(gdb)?([1-9])'; then + M=$(( 15 * ${M} / 10 )) + fi + eshopts_pop + M=$(( $(usex doc 256 0) + ${M} )) + CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE} +} + +llvm_check_deps() { + has_version -r "llvm-core/llvm:${LLVM_SLOT}[${LLVM_TARGET_USEDEPS// /,}]" +} + +# Is LLVM being linked against libc++? +is_libcxx_linked() { + local code='#include +#if defined(_LIBCPP_VERSION) + HAVE_LIBCXX +#endif +' + local out=$($(tc-getCXX) ${CXXFLAGS} ${CPPFLAGS} -x c++ -E -P - <<<"${code}") || return 1 + [[ ${out} == *HAVE_LIBCXX* ]] +} + +pkg_pretend() { + pre_build_checks +} + +pkg_setup() { + pre_build_checks + python-any-r1_pkg_setup + + export LIBGIT2_NO_PKG_CONFIG=1 #749381 + if tc-is-cross-compiler; then + use system-llvm && die "USE=system-llvm not allowed when cross-compiling" + local cross_llvm_target="$(llvm_tuple_to_target "${CBUILD}")" + use "llvm_targets_${cross_llvm_target}" || \ + die "Must enable LLVM_TARGETS=${cross_llvm_target} matching CBUILD=${CBUILD} when cross-compiling" + fi + + rust_pkg_setup + + if use system-llvm; then + llvm-r1_pkg_setup + + local llvm_config="$(get_llvm_prefix)/bin/llvm-config" + export LLVM_LINK_SHARED=1 + export RUSTFLAGS="${RUSTFLAGS} -Lnative=$("${llvm_config}" --libdir)" + fi +} + +rust_live_get_sources() { + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/rust-patches.git + " + EGIT_CHECKOUT_DIR="${WORKDIR}/rust-patches-${RUST_PATCH_VER}" + git-r3_src_unpack + + EGIT_REPO_URI=" + https://github.com/rust-lang/rust.git + " + EGIT_SUBMODULES=( + "*" + "-src/gcc" + ) + S="${WORKDIR}/rust" + EGIT_CHECKOUT_DIR="${S}" + git-r3_src_unpack +} + +src_unpack() { + if [[ ${PV} == *9999* ]] ; then + rust_live_get_sources + + # Vendor dependencies + mkdir "${S}/.cargo" || die # The vendor script has a check for .cargo/config{,.toml} + touch "${S}/.cargo/bootstrap.toml" || die + local rust_stage0_root="$(${RUSTC} --print sysroot || die "Can't determine rust's sysroot")" + # Configure vendor to use the portage-provided toolchain. This prevents it from + # attempting to fetch a `beta` toolchain from the internet. + cat <<- _EOF_ > "${T}/vendor-bootstrap.toml" + # Suppresses a warning about tracking changes which we don't care about. + change-id = "ignore" + [build] + build = "$(rust_abi "${CBUILD}")" + host = ["$(rust_abi "${CHOST}")"] + target = ["$(rust_abi "${CHOST}")"] + cargo = "${rust_stage0_root}/bin/cargo" + rustc = "${rust_stage0_root}/bin/rustc" + rustfmt = "${rust_stage0_root}/bin/rustfmt" + _EOF_ + # We're using git sources so we need to run the Vendor script + # to ensure that all dependencies are present and up-to-date + mkdir "${S}/vendor" || die + # This also compiles the 'build helper', there's no way to avoid this. + ${EPYTHON} "${S}"/x.py vendor -v --config="${T}"/vendor-bootstrap.toml -j$(makeopts_jobs) || + die "Failed to vendor dependencies" + # TODO: This has to be generated somehow, this is from a 1.84.x tarball I had lying around. + cat <<- _EOF_ > "${S}/.cargo/config.toml" + [source.crates-io] + replace-with = "vendored-sources" + + [source."git+https://github.com/rust-lang/team"] + git = "https://github.com/rust-lang/team" + replace-with = "vendored-sources" + + [source.vendored-sources] + directory = "vendor" + _EOF_ + elif use verify-sig ; then + # Patch tarballs are not signed (but we trust Gentoo infra) + verify-sig_verify_detached "${DISTDIR}"/rustc-${RUST_PV}-src.tar.xz{,.asc} + default + else + default + fi +} + +src_prepare() { + # Commit patches to the appropriate branch in proj/rust-patches.git + # then cut a new tag / tarball. Don't add patches to ${FILESDIR} + PATCHES=( + "${WORKDIR}/rust-patches-${RUST_PATCH_VER}/" + ) + + if use lto && tc-is-clang && ! tc-ld-is-lld && ! tc-ld-is-mold; then + export RUSTFLAGS+=" -C link-arg=-fuse-ld=lld" + fi + + default +} + +src_configure() { + if tc-is-cross-compiler; then + export PKG_CONFIG_ALLOW_CROSS=1 + export PKG_CONFIG_PATH="${ESYSROOT}/usr/$(get_libdir)/pkgconfig" + export OPENSSL_INCLUDE_DIR="${ESYSROOT}/usr/include" + export OPENSSL_LIB_DIR="${ESYSROOT}/usr/$(get_libdir)" + fi + + # Avoid bundled copies of libraries + export RUSTONIG_SYSTEM_LIBONIG=1 + # Need to check if these can be optional + #export LIBSQLITE3_SYS_USE_PKG_CONFIG=1 + #export LIBSSH2_SYS_USE_PKG_CONFIG=1 + + filter-lto # https://bugs.gentoo.org/862109 https://bugs.gentoo.org/866231 + + local rust_target="" rust_targets="" arch_cflags + + # Collect rust target names to compile standard libs for all ABIs. + for v in $(multilib_get_enabled_abi_pairs); do + rust_targets+=",\"$(rust_abi $(get_abi_CHOST ${v##*.}))\"" + done + if use rust_sysroots_bpf; then + rust_targets+=",\"bpfeb-unknown-none\",\"bpfel-unknown-none\"" + fi + if use rust_sysroots_wasm; then + rust_targets+=",\"wasm32-unknown-unknown\"" + if use system-llvm; then + # un-hardcode rust-lld linker for this target + # https://bugs.gentoo.org/715348 + sed -i '/linker:/ s/rust-lld/wasm-ld/' compiler/rustc_target/src/spec/base/wasm.rs || die + fi + fi + rust_targets="${rust_targets#,}" + + # cargo and rustdoc are mandatory and should always be included + local tools='"cargo","rustdoc"' + use clippy && tools+=',"clippy"' + use rustfmt && tools+=',"rustfmt"' + use rust-analyzer && tools+=',"rust-analyzer","rust-analyzer-proc-macro-srv"' + use rust-src && tools+=',"src"' + + if [[ ${PV} == *9999* ]]; then + use miri && tools+=',"miri"' + fi + + local rust_stage0_root="$(${RUSTC} --print sysroot || die "Can't determine rust's sysroot")" + # in case of prefix it will be already prefixed, as --print sysroot returns full path + [[ -d ${rust_stage0_root} ]] || die "${rust_stage0_root} is not a directory" + + rust_target="$(rust_abi)" + rust_build="$(rust_abi "${CBUILD}")" + rust_host="$(rust_abi "${CHOST}")" + + RUST_EXPERIMENTAL_TARGETS=() + for _x in "${!ALL_RUST_EXPERIMENTAL_TARGETS[@]}"; do + if [[ ${ALL_RUST_EXPERIMENTAL_TARGETS[${_x}]} == 1 ]] && use ${_x} ; then + RUST_EXPERIMENTAL_TARGETS+=( ${_x#llvm_targets_} ) + fi + done + RUST_EXPERIMENTAL_TARGETS=${RUST_EXPERIMENTAL_TARGETS[@]} + + local cm_btype="$(usex debug DEBUG RELEASE)" + local build_channel + local build_miri="false" + case "${PV}" in + *9999*) + build_channel="nightly" + ;; + *beta*) + build_channel="beta" + ;; + *) + build_channel="stable" + ;; + esac + + # TODO: Add optimized-compiler-builtins for system-llvm to avoid + # building bundled compiler-rt. + cat <<- _EOF_ > "${S}"/bootstrap.toml + # Suppresses a warning about tracking changes which we don't care about. + change-id = "ignore" + # https://github.com/rust-lang/rust/issues/135358 (bug #947897) + profile = "dist" + [llvm] + download-ci-llvm = false + optimize = $(toml_usex !debug) + release-debuginfo = $(toml_usex debug) + assertions = $(toml_usex debug) + ninja = true + targets = "${LLVM_TARGETS// /;}" + experimental-targets = "${RUST_EXPERIMENTAL_TARGETS// /;}" + link-shared = $(toml_usex system-llvm) + $(if is_libcxx_linked; then + # https://bugs.gentoo.org/732632 + echo "use-libcxx = true" + echo "static-libstdcpp = false" + fi) + $(case "${rust_target}" in + i586-*-linux-*) + # https://github.com/rust-lang/rust/issues/93059 + echo 'cflags = "-fcf-protection=none"' + echo 'cxxflags = "-fcf-protection=none"' + echo 'ldflags = "-fcf-protection=none"' + ;; + *) + ;; + esac) + enable-warnings = false + [llvm.build-config] + CMAKE_VERBOSE_MAKEFILE = "ON" + $(if ! tc-is-cross-compiler; then + # When cross-compiling, LLVM is compiled twice, once for host and + # once for target. Unfortunately, this build configuration applies + # to both, which means any flags applicable to one target but not + # the other will break. Conditionally disable respecting user + # flags when cross-compiling. + echo "CMAKE_C_FLAGS_${cm_btype} = \"${CFLAGS}\"" + echo "CMAKE_CXX_FLAGS_${cm_btype} = \"${CXXFLAGS}\"" + echo "CMAKE_EXE_LINKER_FLAGS_${cm_btype} = \"${LDFLAGS}\"" + echo "CMAKE_MODULE_LINKER_FLAGS_${cm_btype} = \"${LDFLAGS}\"" + echo "CMAKE_SHARED_LINKER_FLAGS_${cm_btype} = \"${LDFLAGS}\"" + echo "CMAKE_STATIC_LINKER_FLAGS_${cm_btype} = \"${ARFLAGS}\"" + fi) + [build] + build-stage = 2 + test-stage = 2 + build = "${rust_build}" + host = ["${rust_host}"] + target = [${rust_targets}] + cargo = "${rust_stage0_root}/bin/cargo" + rustc = "${rust_stage0_root}/bin/rustc" + rustfmt = "${rust_stage0_root}/bin/rustfmt" + description = "gentoo" + docs = $(toml_usex doc) + compiler-docs = false + submodules = false + python = "${EPYTHON}" + locked-deps = true + vendor = true + extended = true + tools = [${tools}] + verbose = 2 + sanitizers = false + profiler = true + cargo-native-static = false + [install] + prefix = "${EPREFIX}/usr/lib/${PN}/${SLOT}" + sysconfdir = "etc" + docdir = "share/doc/rust" + bindir = "bin" + libdir = "lib" + mandir = "share/man" + [rust] + # https://github.com/rust-lang/rust/issues/54872 + codegen-units-std = 1 + optimize = true + debug = $(toml_usex debug) + debug-assertions = $(toml_usex debug) + debug-assertions-std = $(toml_usex debug) + debuginfo-level = $(usex debug 2 0) + debuginfo-level-rustc = $(usex debug 2 0) + debuginfo-level-std = $(usex debug 2 0) + debuginfo-level-tools = $(usex debug 2 0) + debuginfo-level-tests = 0 + backtrace = true + incremental = false + $(if ! tc-is-cross-compiler; then + echo "default-linker = \"${CHOST}-cc\"" + fi) + channel = "${build_channel}" + rpath = true + verbose-tests = true + optimize-tests = $(toml_usex !debug) + codegen-tests = true + omit-git-hash = false + dist-src = false + remap-debuginfo = true + lld = $(usex system-llvm false $(toml_usex rust_sysroots_wasm)) + $(if use lto && tc-is-clang && ! tc-ld-is-mold; then + echo "use-lld = true" + fi) + # only deny warnings if doc+wasm are NOT requested, documenting stage0 wasm std fails without it + # https://github.com/rust-lang/rust/issues/74976 + # https://github.com/rust-lang/rust/issues/76526 + deny-warnings = $(usex rust_sysroots_wasm $(usex doc false true) true) + backtrace-on-ice = true + jemalloc = false + # See https://github.com/rust-lang/rust/issues/121124 + lto = "$(usex lto thin off)" + [dist] + src-tarball = false + compression-formats = ["xz"] + compression-profile = "balanced" + _EOF_ + + for v in $(multilib_get_enabled_abi_pairs); do + rust_target=$(rust_abi $(get_abi_CHOST ${v##*.})) + arch_cflags="$(get_abi_CFLAGS ${v##*.})" + + export CFLAGS_${rust_target//-/_}="${arch_cflags}" + + cat <<- _EOF_ >> "${S}"/bootstrap.toml + [target.${rust_target}] + ar = "$(tc-getAR)" + cc = "$(tc-getCC)" + cxx = "$(tc-getCXX)" + linker = "$(tc-getCC)" + ranlib = "$(tc-getRANLIB)" + llvm-libunwind = "$(usex llvm-libunwind $(usex system-llvm system in-tree) no)" + _EOF_ + if use system-llvm; then + cat <<- _EOF_ >> "${S}"/bootstrap.toml + llvm-config = "$(get_llvm_prefix)/bin/llvm-config" + _EOF_ + fi + # by default librustc_target/spec/linux_musl_base.rs sets base.crt_static_default = true; + # but we patch it and set to false here as well + if use elibc_musl; then + cat <<- _EOF_ >> "${S}"/bootstrap.toml + crt-static = false + musl-root = "$($(tc-getCC) -print-sysroot)/usr" + _EOF_ + fi + done + if use rust_sysroots_wasm; then + wasm_target="wasm32-unknown-unknown" + if tc-is-clang; then + local wasm_cc=$(tc-getCC) + local wasm_cxx=$(tc-getCXX) + else + local wasm_cc=${CHOST}-clang + local wasm_cxx=${CHOST}-clang++ + fi + export CFLAGS_${wasm_target//-/_}="$( + CC="${wasm_cc} --target=wasm32-unknown-unknown" + filter-flags '-mcpu*' '-march*' '-mtune*' + strip-unsupported-flags + echo "${CFLAGS}" + )" + cat <<- _EOF_ >> "${S}"/bootstrap.toml + [target.wasm32-unknown-unknown] + cc = "${wasm_cc}" + cxx = "${wasm_cxx}" + linker = "$(usex system-llvm lld rust-lld)" + # wasm target does not have profiler_builtins https://bugs.gentoo.org/848483 + profiler = false + _EOF_ + fi + + if [[ -n ${I_KNOW_WHAT_I_AM_DOING_CROSS} ]]; then # whitespace intentionally shifted below + # experimental cross support + # discussion: https://bugs.gentoo.org/679878 + # TODO: c*flags, clang, system-llvm, cargo.eclass target support + # it would be much better if we could split out stdlib + # complilation to separate ebuild and abuse CATEGORY to + # just install to /usr/lib/rustlib/ + + # extra targets defined as a bash array + # spec format: :: + # best place would be /etc/portage/env/dev-lang/rust + # Example: + # RUST_CROSS_TARGETS=( + # "AArch64:aarch64-unknown-linux-gnu:aarch64-unknown-linux-gnu" + # ) + # no extra hand holding is done, no target transformations, all + # values are passed as-is with just basic checks, so it's up to user to supply correct values + # valid rust targets can be obtained with + # rustc --print target-list + # matching cross toolchain has to be installed + # matching LLVM_TARGET has to be enabled for both rust and llvm (if using system one) + # only gcc toolchains installed with crossdev are checked for now. + + # BUG: we can't pass host flags to cross compiler, so just filter for now + # BUG: this should be more fine-grained. + filter-flags '-mcpu=*' '-march=*' '-mtune=*' + + local cross_target_spec + for cross_target_spec in "${RUST_CROSS_TARGETS[@]}";do + # extracts first element form :: + local cross_llvm_target="${cross_target_spec%%:*}" + # extracts toolchain triples, : + local cross_triples="${cross_target_spec#*:}" + # extracts first element after before : separator + local cross_rust_target="${cross_triples%%:*}" + # extracts last element after : separator + local cross_toolchain="${cross_triples##*:}" + use llvm_targets_${cross_llvm_target} || die "need llvm_targets_${cross_llvm_target} target enabled" + command -v ${cross_toolchain}-gcc > /dev/null 2>&1 || die "need ${cross_toolchain} cross toolchain" + + cat <<- _EOF_ >> "${S}"/bootstrap.toml + [target.${cross_rust_target}] + ar = "${cross_toolchain}-ar" + cc = "${cross_toolchain}-gcc" + cxx = "${cross_toolchain}-g++" + linker = "${cross_toolchain}-gcc" + ranlib = "${cross_toolchain}-ranlib" + _EOF_ + if use system-llvm; then + cat <<- _EOF_ >> "${S}"/bootstrap.toml + llvm-config = "$(get_llvm_prefix)/bin/llvm-config" + _EOF_ + fi + if [[ "${cross_toolchain}" == *-musl* ]]; then + cat <<- _EOF_ >> "${S}"/bootstrap.toml + musl-root = "$(${cross_toolchain}-gcc -print-sysroot)/usr" + _EOF_ + fi + if [[ "${cross_rust_target}" == *-uefi ]]; then + # Profiler is not supported on bare-metal + cat <<- _EOF_ >> "${S}"/bootstrap.toml + profiler = false + _EOF_ + fi + + # append cross target to "normal" target list + # example 'target = ["powerpc64le-unknown-linux-gnu"]' + # becomes 'target = ["powerpc64le-unknown-linux-gnu","aarch64-unknown-linux-gnu"]' + + rust_targets="${rust_targets},\"${cross_rust_target}\"" + sed -i "/^target = \[/ s#\[.*\]#\[${rust_targets}\]#" bootstrap.toml || die + + ewarn + ewarn "Enabled ${cross_rust_target} rust target" + ewarn "Using ${cross_toolchain} cross toolchain" + ewarn + if ! has_version -b 'sys-devel/binutils[multitarget]' ; then + ewarn "'sys-devel/binutils[multitarget]' is not installed" + ewarn "'strip' will be unable to strip cross libraries" + ewarn "cross targets will be installed with full debug information" + ewarn "enable 'multitarget' USE flag for binutils to be able to strip object files" + ewarn + ewarn "Alternatively llvm-strip can be used, it supports stripping any target" + ewarn "define STRIP=\"llvm-strip\" to use it (experimental)" + ewarn + fi + done + fi # I_KNOW_WHAT_I_AM_DOING_CROSS + + einfo "Rust configured with the following flags:" + echo + echo RUSTFLAGS="\"${RUSTFLAGS}\"" + echo RUSTFLAGS_BOOTSTRAP="\"${RUSTFLAGS_BOOTSTRAP}\"" + echo RUSTFLAGS_NOT_BOOTSTRAP="\"${RUSTFLAGS_NOT_BOOTSTRAP}\"" + echo MAGIC_EXTRA_RUSTFLAGS="\"${MAGIC_EXTRA_RUSTFLAGS}\"" + env | grep "CARGO_TARGET_.*_RUSTFLAGS=" + env | grep "CFLAGS_.*" + echo + einfo "bootstrap.toml contents:" + cat "${S}"/bootstrap.toml || die + echo +} + +src_compile() { + # -v will show invocations, -vv "very verbose" is overkill, -vvv "very very verbose" is insane + RUST_BACKTRACE=1 "${EPYTHON}" ./x.py build -v --config="${S}"/bootstrap.toml -j$(makeopts_jobs) || die +} + +src_test() { + # https://rustc-dev-guide.rust-lang.org/tests/intro.html + + # those are basic and codegen tests. + local tests=( + codegen + codegen-units + compile-fail + incremental + mir-opt + pretty + run-make + ) + + # fails if llvm is not built with ALL targets. + # and known to fail with system llvm sometimes. + use system-llvm || tests+=( assembly ) + + # fragile/expensive/less important tests + # or tests that require extra builds + # TODO: instead of skipping, just make some nonfatal. + if [[ ${ERUST_RUN_EXTRA_TESTS:-no} != no ]]; then + tests+=( + rustdoc + rustdoc-js + rustdoc-js-std + rustdoc-ui + run-make-fulldeps + ui + ui-fulldeps + ) + fi + + local i failed=() + einfo "rust_src_test: enabled tests ${tests[@]/#/src/test/}" + for i in "${tests[@]}"; do + local t="src/test/${i}" + einfo "rust_src_test: running ${t}" + if ! RUST_BACKTRACE=1 "${EPYTHON}" ./x.py test -vv --config="${S}"/bootstrap.toml \ + -j$(makeopts_jobs) --no-doc --no-fail-fast "${t}" + then + failed+=( "${t}" ) + eerror "rust_src_test: ${t} failed" + fi + done + + if [[ ${#failed[@]} -ne 0 ]]; then + eerror "rust_src_test: failure summary: ${failed[@]}" + die "aborting due to test failures" + fi +} + +src_install() { + DESTDIR="${D}" "${EPYTHON}" ./x.py install -v --config="${S}"/bootstrap.toml -j$(makeopts_jobs) || die + + docompress /usr/lib/${PN}/${SLOT}/share/man/ + + # bash-completion files are installed by dev-lang/rust-common instead + # bug #689562, #689160. + rm -v "${ED}/usr/lib/${PN}/${SLOT}/etc/bash_completion.d/cargo" || die + rmdir -v "${ED}/usr/lib/${PN}/${SLOT}/etc/bash_completion.d" || die + + local symlinks=( + cargo + rustc + rustdoc + rust-gdb + rust-gdbgui + rust-lldb + ) + + use clippy && symlinks+=( clippy-driver cargo-clippy ) + if [[ ${PV} = *9999* ]]; then + use miri && symlinks+=( miri cargo-miri ) + fi + use rustfmt && symlinks+=( rustfmt cargo-fmt ) + use rust-analyzer && symlinks+=( rust-analyzer ) + + einfo "installing eselect-rust symlinks and paths: ${symlinks[@]}" + local i + for i in "${symlinks[@]}"; do + # we need realpath on /usr/bin/* symlink return version-appended binary path. + # so /usr/bin/rustc should point to /usr/lib/rust//bin/rustc- + # need to fix eselect-rust to remove this hack. + local ver_i="${i}-${RUST_PV%%_*}" + if [[ -f "${ED}/usr/lib/${PN}/${SLOT}/bin/${i}" ]]; then + einfo "Installing ${i} symlink" + ln -v "${ED}/usr/lib/${PN}/${SLOT}/bin/${i}" "${ED}/usr/lib/${PN}/${SLOT}/bin/${ver_i}" || die + else + ewarn "${i} symlink requested, but source file not found" + ewarn "please report this" + fi + dosym "../lib/${PN}/${SLOT}/bin/${ver_i}" "/usr/bin/${ver_i}" + done + + # symlinks to switch components to active rust in eselect + dosym "${SLOT}/lib" "/usr/lib/${PN}/lib-${SLOT}" + use rust-analyzer && dosym "${SLOT}/libexec" "/usr/lib/${PN}/libexec-${SLOT}" + dosym "${SLOT}/share/man" "/usr/lib/${PN}/man-${SLOT}" + dosym "rust/${SLOT}/lib/rustlib" "/usr/lib/rustlib-${SLOT}" + dosym "../../lib/${PN}/${SLOT}/share/doc/rust" "/usr/share/doc/${RUST_P}" + + newenvd - "50${RUST_P}" <<-_EOF_ + MANPATH="${EPREFIX}/usr/lib/rust/man-${SLOT}" + _EOF_ + + rm -rf "${ED}/usr/lib/${PN}/${SLOT}"/*.old || die + rm -rf "${ED}/usr/lib/${PN}/${SLOT}/bin"/*.old || die + rm -rf "${ED}/usr/lib/${PN}/${SLOT}/doc"/*.old || die + + # note: eselect-rust adds EROOT to all paths below + cat <<-_EOF_ > "${T}/provider-${PN}-${SLOT}" + /usr/bin/cargo + /usr/bin/rustdoc + /usr/bin/rust-gdb + /usr/bin/rust-gdbgui + /usr/bin/rust-lldb + /usr/lib/rustlib + /usr/lib/rust/lib + /usr/lib/rust/man + /usr/share/doc/rust + _EOF_ + + if use clippy; then + echo /usr/bin/clippy-driver >> "${T}/provider-${RUST_P}" + echo /usr/bin/cargo-clippy >> "${T}/provider-${RUST_P}" + fi + if [[ ${SLOT} == *9999* ]] && use miri; then + echo /usr/bin/miri >> "${T}/provider-${RUST_P}" + echo /usr/bin/cargo-miri >> "${T}/provider-${RUST_P}" + fi + if use rustfmt; then + echo /usr/bin/rustfmt >> "${T}/provider-${RUST_P}" + echo /usr/bin/cargo-fmt >> "${T}/provider-${RUST_P}" + fi + if use rust-analyzer; then + echo /usr/lib/rust/libexec >> "${T}/provider-${RUST_P}" + echo /usr/bin/rust-analyzer >> "${T}/provider-${RUST_P}" + fi + + insinto /etc/env.d/rust + doins "${T}/provider-${PN}-${SLOT}" + + if use dist; then + "${EPYTHON}" ./x.py dist -v --config="${S}"/bootstrap.toml -j$(makeopts_jobs) || die + insinto "/usr/lib/${PN}/${SLOT}/dist" + doins -r "${S}/build/dist/." + fi +} + +pkg_postinst() { + eselect rust update + + if has_version dev-debug/gdb || has_version llvm-core/lldb; then + elog "Rust installs helper scripts for calling GDB and LLDB," + elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${RUST_PV}." + fi + + if has_version app-editors/emacs; then + optfeature "emacs support for rust" app-emacs/rust-mode + fi + + if has_version app-editors/gvim || has_version app-editors/vim; then + optfeature "vim support for rust" app-vim/rust-vim + fi +} + +pkg_postrm() { + eselect rust cleanup +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.94.0_beta20260213.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.94.0_beta20260213.ebuild new file mode 100644 index 00000000000..d0e4413c459 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.94.0_beta20260213.ebuild @@ -0,0 +1,890 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Bump notes: https://wiki.gentoo.org/wiki/Project:Rust/Rust_bump + +LLVM_COMPAT=( 21 ) +PYTHON_COMPAT=( python3_{11..14} ) + +# Patches are kept in rust-patches.git, see its README.rst for the versioning +# scheme. +# +# We use _pN from the ebuild version for the patchset but it can be overridden +# in the ebuild for changes that don't require a revbump. +# +# Uncomment this line when the ebuild needs a patchset update but no revbump. +#RUST_PATCH_VER=${PV}-1 + +RUST_MAX_VER=${PV%%_*} +RUST_PV=${PV%%_p*} +RUST_P=${PN}-${RUST_PV} +[[ -z ${RUST_PATCH_VER} ]] && RUST_PATCH_VER=${PV} + +if [[ ${PV} == *9999* ]]; then + # Update this as new `beta` releases come out. + RUST_MIN_VER="1.93.0" +elif [[ ${PV} == *beta* ]]; then + RUST_MIN_VER="$(ver_cut 1).$(($(ver_cut 2) - 1)).0" +else + RUST_MIN_VER="$(ver_cut 1).$(($(ver_cut 2) - 1)).0" +fi + +inherit check-reqs estack flag-o-matic llvm-r1 multiprocessing optfeature +inherit multilib multilib-build python-any-r1 rust rust-toolchain toolchain-funcs +inherit verify-sig + +if [[ ${PV} = *9999* ]]; then + inherit git-r3 +elif [[ ${PV} == *beta* ]]; then + # Identify the snapshot date of the beta release: + # curl -Ls static.rust-lang.org/dist/channel-rust-beta.toml | grep beta-src.tar.xz + betaver=${PV//*beta} + BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}" + MY_P="rustc-beta" + SRC_URI=" + https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz -> rustc-${RUST_PV}-src.tar.xz + https://gitweb.gentoo.org/proj/rust-patches.git/snapshot/rust-patches-${RUST_PATCH_VER}.tar.bz2 + verify-sig? ( + https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz.asc + -> rustc-${RUST_PV}-src.tar.xz.asc + ) + " + S="${WORKDIR}/${MY_P}-src" +else + MY_P="rustc-${RUST_PV}" + SRC_URI=" + https://static.rust-lang.org/dist/${MY_P}-src.tar.xz + https://gitweb.gentoo.org/proj/rust-patches.git/snapshot/rust-patches-${RUST_PATCH_VER}.tar.bz2 + verify-sig? ( https://static.rust-lang.org/dist/${MY_P}-src.tar.xz.asc ) + " + S="${WORKDIR}/${MY_P}-src" + + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +fi + +DESCRIPTION="Systems programming language originally developed by Mozilla" +HOMEPAGE="https://www.rust-lang.org/" + +# keep in sync with llvm ebuild of the same version as bundled one. +ALL_LLVM_TARGETS=( AArch64 AMDGPU ARC ARM AVR BPF CSKY DirectX Hexagon Lanai ) +ALL_LLVM_TARGETS+=( LoongArch M68k Mips MSP430 NVPTX PowerPC RISCV Sparc SPIRV ) +ALL_LLVM_TARGETS+=( SystemZ VE WebAssembly X86 XCore Xtensa ) +ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" ) +LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/(-)?} + +# https://github.com/rust-lang/llvm-project/blob/rustc-1.87.0/llvm/CMakeLists.txt +_ALL_RUST_EXPERIMENTAL_TARGETS=( ARC CSKY DirectX M68k Xtensa ) +declare -A ALL_RUST_EXPERIMENTAL_TARGETS +for _x in "${_ALL_RUST_EXPERIMENTAL_TARGETS[@]}"; do + ALL_RUST_EXPERIMENTAL_TARGETS["llvm_targets_${_x}"]=0 +done + +# Bare metal targets which can be built on the host system and have no +# dependency on compiler runtime, libc and unwinder. +ALL_RUST_SYSROOTS=( bpf wasm ) +ALL_RUST_SYSROOTS=( "${ALL_RUST_SYSROOTS[@]/#/rust_sysroots_}" ) + +LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" +SLOT="${PV%%_*}" # Beta releases get to share the same SLOT as the eventual stable + +IUSE="big-endian +clippy cpu_flags_x86_sse2 debug dist +doc llvm-libunwind lto" +IUSE+=" +rustfmt rust-analyzer rust-src +system-llvm test" +IUSE+=" ${ALL_LLVM_TARGETS[*]} ${ALL_RUST_SYSROOTS[*]}" + +if [[ ${PV} = *9999* ]]; then + # These USE flags require nightly rust + IUSE+=" miri" +fi + +LLVM_DEPEND=() +# splitting usedeps needed to avoid CI/pkgcheck's UncheckableDep limitation +for _x in "${ALL_LLVM_TARGETS[@]}"; do + LLVM_DEPEND+=( " ${_x}? ( $(llvm_gen_dep "llvm-core/llvm:\${LLVM_SLOT}[${_x}=]") )" ) + if [[ -v ALL_RUST_EXPERIMENTAL_TARGETS["${_x}"] ]] ; then + ALL_RUST_EXPERIMENTAL_TARGETS["${_x}"]=1 + fi +done +LLVM_DEPEND+=( " rust_sysroots_wasm? ( $(llvm_gen_dep 'llvm-core/lld:${LLVM_SLOT}') )" ) +LLVM_DEPEND+=( " $(llvm_gen_dep 'llvm-core/llvm:${LLVM_SLOT}')" ) + +# dev-libs/oniguruma is used for documentation +BDEPEND=" + ${PYTHON_DEPS} + app-eselect/eselect-rust + dev-libs/oniguruma + || ( + >=sys-devel/gcc-4.7[cxx] + >=llvm-core/clang-3.5 + ) + lto? ( system-llvm? ( + || ( + $(llvm_gen_dep 'llvm-core/lld:${LLVM_SLOT}') + sys-devel/mold + ) + ) ) + rust_sysroots_wasm? ( llvm-core/clang ) + !system-llvm? ( + >=dev-build/cmake-3.13.4 + app-alternatives/ninja + ) + test? ( dev-debug/gdb ) + verify-sig? ( sec-keys/openpgp-keys-rust ) +" + +DEPEND=" + >=app-arch/xz-utils-5.2 + net-misc/curl:=[http2,ssl] + virtual/zlib:= + dev-libs/openssl:0= + system-llvm? ( + ${LLVM_DEPEND[*]} + llvm-libunwind? ( llvm-runtimes/libunwind:= ) + ) + !system-llvm? ( + !llvm-libunwind? ( + elibc_musl? ( sys-libs/libunwind:= ) + ) + ) +" + +RDEPEND=" + ${DEPEND} + app-eselect/eselect-rust + dev-lang/rust-common + sys-apps/lsb-release + !dev-lang/rust:stable + !dev-lang/rust-bin:stable +" + +REQUIRED_USE=" + || ( ${ALL_LLVM_TARGETS[*]} ) + rust-analyzer? ( rust-src ) + test? ( ${ALL_LLVM_TARGETS[*]} ) + rust_sysroots_bpf? ( llvm_targets_BPF ) + rust_sysroots_wasm? ( llvm_targets_WebAssembly ) + x86? ( cpu_flags_x86_sse2 ) +" + +# we don't use cmake.eclass, but can get a warning +CMAKE_WARN_UNUSED_CLI=no + +QA_FLAGS_IGNORED=" + usr/lib/${PN}/${SLOT}/bin/.* + usr/lib/${PN}/${SLOT}/libexec/.* + usr/lib/${PN}/${SLOT}/lib/lib.*.so + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/bin/.* + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/lib/lib.*.so +" + +QA_SONAME=" + usr/lib/${PN}/${SLOT}/lib/lib.*.so.* + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/lib/lib.*.so +" + +QA_PRESTRIPPED=" + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/bin/rust-llvm-dwp + usr/lib/${PN}/${SLOT}/lib/rustlib/.*/lib/self-contained/crtn.o +" + +# An rmeta file is custom binary format that contains the metadata for the crate. +# rmeta files do not support linking, since they do not contain compiled object files. +# so we can safely silence the warning for this QA check. +QA_EXECSTACK="usr/lib/${PN}/${SLOT}/lib/rustlib/*/lib*.rlib:lib.rmeta" + +# causes double bootstrap +RESTRICT="test" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/rust.asc + +clear_vendor_checksums() { + sed -i 's/\("files":{\)[^}]*/\1/' "vendor/${1}/.cargo-checksum.json" || die +} + +toml_usex() { + usex "${1}" true false +} + +pre_build_checks() { + local M=9216 + # multiply requirements by 1.3 if we are doing x86-multilib + if use amd64; then + M=$(( $(usex abi_x86_32 13 10) * ${M} / 10 )) + fi + M=$(( $(usex clippy 128 0) + ${M} )) + if [[ ${PV} == *9999* ]]; then + M=$(( $(usex miri 128 0) + ${M} )) + fi + M=$(( $(usex rustfmt 256 0) + ${M} )) + # add 2G if we compile llvm and 256M per llvm_target + if ! use system-llvm; then + M=$(( 2048 + ${M} )) + local ltarget + for ltarget in ${ALL_LLVM_TARGETS[@]}; do + M=$(( $(usex ${ltarget} 256 0) + ${M} )) + done + fi + M=$(( $(usex rust_sysroots_bpf 256 0) + ${M} )) + M=$(( $(usex rust_sysroots_wasm 256 0) + ${M} )) + M=$(( $(usex debug 2 1) * ${M} )) + eshopts_push -s extglob + if is-flagq '-g?(gdb)?([1-9])'; then + M=$(( 15 * ${M} / 10 )) + fi + eshopts_pop + M=$(( $(usex doc 256 0) + ${M} )) + CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE} +} + +llvm_check_deps() { + has_version -r "llvm-core/llvm:${LLVM_SLOT}[${LLVM_TARGET_USEDEPS// /,}]" +} + +# Is LLVM being linked against libc++? +is_libcxx_linked() { + local code='#include +#if defined(_LIBCPP_VERSION) + HAVE_LIBCXX +#endif +' + local out=$($(tc-getCXX) ${CXXFLAGS} ${CPPFLAGS} -x c++ -E -P - <<<"${code}") || return 1 + [[ ${out} == *HAVE_LIBCXX* ]] +} + +pkg_pretend() { + pre_build_checks +} + +pkg_setup() { + pre_build_checks + python-any-r1_pkg_setup + + export LIBGIT2_NO_PKG_CONFIG=1 #749381 + if tc-is-cross-compiler; then + use system-llvm && die "USE=system-llvm not allowed when cross-compiling" + local cross_llvm_target="$(llvm_tuple_to_target "${CBUILD}")" + use "llvm_targets_${cross_llvm_target}" || \ + die "Must enable LLVM_TARGETS=${cross_llvm_target} matching CBUILD=${CBUILD} when cross-compiling" + fi + + rust_pkg_setup + + if use system-llvm; then + llvm-r1_pkg_setup + + local llvm_config="$(get_llvm_prefix)/bin/llvm-config" + export LLVM_LINK_SHARED=1 + export RUSTFLAGS="${RUSTFLAGS} -Lnative=$("${llvm_config}" --libdir)" + fi +} + +rust_live_get_sources() { + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/rust-patches.git + " + EGIT_CHECKOUT_DIR="${WORKDIR}/rust-patches-${RUST_PATCH_VER}" + git-r3_src_unpack + + EGIT_REPO_URI=" + https://github.com/rust-lang/rust.git + " + EGIT_SUBMODULES=( + "*" + "-src/gcc" + ) + S="${WORKDIR}/rust" + EGIT_CHECKOUT_DIR="${S}" + git-r3_src_unpack +} + +src_unpack() { + if [[ ${PV} == *9999* ]] ; then + rust_live_get_sources + + # Vendor dependencies + mkdir "${S}/.cargo" || die # The vendor script has a check for .cargo/config{,.toml} + touch "${S}/.cargo/bootstrap.toml" || die + local rust_stage0_root="$(${RUSTC} --print sysroot || die "Can't determine rust's sysroot")" + # Configure vendor to use the portage-provided toolchain. This prevents it from + # attempting to fetch a `beta` toolchain from the internet. + cat <<- _EOF_ > "${T}/vendor-bootstrap.toml" + # Suppresses a warning about tracking changes which we don't care about. + change-id = "ignore" + [build] + build = "$(rust_abi "${CBUILD}")" + host = ["$(rust_abi "${CHOST}")"] + target = ["$(rust_abi "${CHOST}")"] + cargo = "${rust_stage0_root}/bin/cargo" + rustc = "${rust_stage0_root}/bin/rustc" + rustfmt = "${rust_stage0_root}/bin/rustfmt" + _EOF_ + # We're using git sources so we need to run the Vendor script + # to ensure that all dependencies are present and up-to-date + mkdir "${S}/vendor" || die + # This also compiles the 'build helper', there's no way to avoid this. + ${EPYTHON} "${S}"/x.py vendor -v --config="${T}"/vendor-bootstrap.toml -j$(makeopts_jobs) || + die "Failed to vendor dependencies" + # TODO: This has to be generated somehow, this is from a 1.84.x tarball I had lying around. + cat <<- _EOF_ > "${S}/.cargo/config.toml" + [source.crates-io] + replace-with = "vendored-sources" + + [source."git+https://github.com/rust-lang/team"] + git = "https://github.com/rust-lang/team" + replace-with = "vendored-sources" + + [source.vendored-sources] + directory = "vendor" + _EOF_ + elif use verify-sig ; then + # Patch tarballs are not signed (but we trust Gentoo infra) + verify-sig_verify_detached "${DISTDIR}"/rustc-${RUST_PV}-src.tar.xz{,.asc} + default + else + default + fi +} + +src_prepare() { + # Commit patches to the appropriate branch in proj/rust-patches.git + # then cut a new tag / tarball. Don't add patches to ${FILESDIR} + PATCHES=( + "${WORKDIR}/rust-patches-${RUST_PATCH_VER}/" + ) + + if use lto && tc-is-clang && ! tc-ld-is-lld && ! tc-ld-is-mold; then + export RUSTFLAGS+=" -C link-arg=-fuse-ld=lld" + fi + + default +} + +src_configure() { + if tc-is-cross-compiler; then + export PKG_CONFIG_ALLOW_CROSS=1 + export PKG_CONFIG_PATH="${ESYSROOT}/usr/$(get_libdir)/pkgconfig" + export OPENSSL_INCLUDE_DIR="${ESYSROOT}/usr/include" + export OPENSSL_LIB_DIR="${ESYSROOT}/usr/$(get_libdir)" + fi + + # Avoid bundled copies of libraries + export RUSTONIG_SYSTEM_LIBONIG=1 + # Need to check if these can be optional + #export LIBSQLITE3_SYS_USE_PKG_CONFIG=1 + #export LIBSSH2_SYS_USE_PKG_CONFIG=1 + + filter-lto # https://bugs.gentoo.org/862109 https://bugs.gentoo.org/866231 + + local rust_target="" rust_targets="" arch_cflags + + # Collect rust target names to compile standard libs for all ABIs. + for v in $(multilib_get_enabled_abi_pairs); do + rust_targets+=",\"$(rust_abi $(get_abi_CHOST ${v##*.}))\"" + done + if use rust_sysroots_bpf; then + rust_targets+=",\"bpfeb-unknown-none\",\"bpfel-unknown-none\"" + fi + if use rust_sysroots_wasm; then + rust_targets+=",\"wasm32-unknown-unknown\"" + if use system-llvm; then + # un-hardcode rust-lld linker for this target + # https://bugs.gentoo.org/715348 + sed -i '/linker:/ s/rust-lld/wasm-ld/' compiler/rustc_target/src/spec/base/wasm.rs || die + fi + fi + rust_targets="${rust_targets#,}" + + # cargo and rustdoc are mandatory and should always be included + local tools='"cargo","rustdoc"' + use clippy && tools+=',"clippy"' + use rustfmt && tools+=',"rustfmt"' + use rust-analyzer && tools+=',"rust-analyzer","rust-analyzer-proc-macro-srv"' + use rust-src && tools+=',"src"' + + if [[ ${PV} == *9999* ]]; then + use miri && tools+=',"miri"' + fi + + local rust_stage0_root="$(${RUSTC} --print sysroot || die "Can't determine rust's sysroot")" + # in case of prefix it will be already prefixed, as --print sysroot returns full path + [[ -d ${rust_stage0_root} ]] || die "${rust_stage0_root} is not a directory" + + rust_target="$(rust_abi)" + rust_build="$(rust_abi "${CBUILD}")" + rust_host="$(rust_abi "${CHOST}")" + + RUST_EXPERIMENTAL_TARGETS=() + for _x in "${!ALL_RUST_EXPERIMENTAL_TARGETS[@]}"; do + if [[ ${ALL_RUST_EXPERIMENTAL_TARGETS[${_x}]} == 1 ]] && use ${_x} ; then + RUST_EXPERIMENTAL_TARGETS+=( ${_x#llvm_targets_} ) + fi + done + RUST_EXPERIMENTAL_TARGETS=${RUST_EXPERIMENTAL_TARGETS[@]} + + local cm_btype="$(usex debug DEBUG RELEASE)" + local build_channel + local build_miri="false" + case "${PV}" in + *9999*) + build_channel="nightly" + ;; + *beta*) + build_channel="beta" + ;; + *) + build_channel="stable" + ;; + esac + + # TODO: Add optimized-compiler-builtins for system-llvm to avoid + # building bundled compiler-rt. + cat <<- _EOF_ > "${S}"/bootstrap.toml + # Suppresses a warning about tracking changes which we don't care about. + change-id = "ignore" + # https://github.com/rust-lang/rust/issues/135358 (bug #947897) + profile = "dist" + [llvm] + download-ci-llvm = false + optimize = $(toml_usex !debug) + release-debuginfo = $(toml_usex debug) + assertions = $(toml_usex debug) + ninja = true + targets = "${LLVM_TARGETS// /;}" + experimental-targets = "${RUST_EXPERIMENTAL_TARGETS// /;}" + link-shared = $(toml_usex system-llvm) + $(if is_libcxx_linked; then + # https://bugs.gentoo.org/732632 + echo "use-libcxx = true" + echo "static-libstdcpp = false" + fi) + $(case "${rust_target}" in + i586-*-linux-*) + # https://github.com/rust-lang/rust/issues/93059 + echo 'cflags = "-fcf-protection=none"' + echo 'cxxflags = "-fcf-protection=none"' + echo 'ldflags = "-fcf-protection=none"' + ;; + *) + ;; + esac) + enable-warnings = false + [llvm.build-config] + CMAKE_VERBOSE_MAKEFILE = "ON" + $(if ! tc-is-cross-compiler; then + # When cross-compiling, LLVM is compiled twice, once for host and + # once for target. Unfortunately, this build configuration applies + # to both, which means any flags applicable to one target but not + # the other will break. Conditionally disable respecting user + # flags when cross-compiling. + echo "CMAKE_C_FLAGS_${cm_btype} = \"${CFLAGS}\"" + echo "CMAKE_CXX_FLAGS_${cm_btype} = \"${CXXFLAGS}\"" + echo "CMAKE_EXE_LINKER_FLAGS_${cm_btype} = \"${LDFLAGS}\"" + echo "CMAKE_MODULE_LINKER_FLAGS_${cm_btype} = \"${LDFLAGS}\"" + echo "CMAKE_SHARED_LINKER_FLAGS_${cm_btype} = \"${LDFLAGS}\"" + echo "CMAKE_STATIC_LINKER_FLAGS_${cm_btype} = \"${ARFLAGS}\"" + fi) + [build] + build-stage = 2 + test-stage = 2 + build = "${rust_build}" + host = ["${rust_host}"] + target = [${rust_targets}] + cargo = "${rust_stage0_root}/bin/cargo" + rustc = "${rust_stage0_root}/bin/rustc" + rustfmt = "${rust_stage0_root}/bin/rustfmt" + description = "gentoo" + docs = $(toml_usex doc) + compiler-docs = false + submodules = false + python = "${EPYTHON}" + locked-deps = true + vendor = true + extended = true + tools = [${tools}] + verbose = 2 + sanitizers = false + profiler = true + cargo-native-static = false + [install] + prefix = "${EPREFIX}/usr/lib/${PN}/${SLOT}" + sysconfdir = "etc" + docdir = "share/doc/rust" + bindir = "bin" + libdir = "lib" + mandir = "share/man" + [rust] + # https://github.com/rust-lang/rust/issues/54872 + codegen-units-std = 1 + optimize = true + debug = $(toml_usex debug) + debug-assertions = $(toml_usex debug) + debug-assertions-std = $(toml_usex debug) + debuginfo-level = $(usex debug 2 0) + debuginfo-level-rustc = $(usex debug 2 0) + debuginfo-level-std = $(usex debug 2 0) + debuginfo-level-tools = $(usex debug 2 0) + debuginfo-level-tests = 0 + backtrace = true + incremental = false + $(if ! tc-is-cross-compiler; then + echo "default-linker = \"${CHOST}-cc\"" + fi) + channel = "${build_channel}" + rpath = true + verbose-tests = true + optimize-tests = $(toml_usex !debug) + codegen-tests = true + omit-git-hash = false + dist-src = false + remap-debuginfo = true + lld = $(usex system-llvm false $(toml_usex rust_sysroots_wasm)) + $(if use lto && tc-is-clang && ! tc-ld-is-mold; then + echo "use-lld = true" + fi) + # only deny warnings if doc+wasm are NOT requested, documenting stage0 wasm std fails without it + # https://github.com/rust-lang/rust/issues/74976 + # https://github.com/rust-lang/rust/issues/76526 + deny-warnings = $(usex rust_sysroots_wasm $(usex doc false true) true) + backtrace-on-ice = true + jemalloc = false + # See https://github.com/rust-lang/rust/issues/121124 + lto = "$(usex lto thin off)" + [dist] + src-tarball = false + compression-formats = ["xz"] + compression-profile = "balanced" + _EOF_ + + for v in $(multilib_get_enabled_abi_pairs); do + rust_target=$(rust_abi $(get_abi_CHOST ${v##*.})) + arch_cflags="$(get_abi_CFLAGS ${v##*.})" + + export CFLAGS_${rust_target//-/_}="${arch_cflags}" + + cat <<- _EOF_ >> "${S}"/bootstrap.toml + [target.${rust_target}] + ar = "$(tc-getAR)" + cc = "$(tc-getCC)" + cxx = "$(tc-getCXX)" + linker = "$(tc-getCC)" + ranlib = "$(tc-getRANLIB)" + llvm-libunwind = "$(usex llvm-libunwind $(usex system-llvm system in-tree) no)" + _EOF_ + if use system-llvm; then + cat <<- _EOF_ >> "${S}"/bootstrap.toml + llvm-config = "$(get_llvm_prefix)/bin/llvm-config" + _EOF_ + fi + # by default librustc_target/spec/linux_musl_base.rs sets base.crt_static_default = true; + # but we patch it and set to false here as well + if use elibc_musl; then + cat <<- _EOF_ >> "${S}"/bootstrap.toml + crt-static = false + musl-root = "$($(tc-getCC) -print-sysroot)/usr" + _EOF_ + fi + done + if use rust_sysroots_wasm; then + wasm_target="wasm32-unknown-unknown" + if tc-is-clang; then + local wasm_cc=$(tc-getCC) + local wasm_cxx=$(tc-getCXX) + else + local wasm_cc=${CHOST}-clang + local wasm_cxx=${CHOST}-clang++ + fi + export CFLAGS_${wasm_target//-/_}="$( + CC="${wasm_cc} --target=wasm32-unknown-unknown" + filter-flags '-mcpu*' '-march*' '-mtune*' + strip-unsupported-flags + echo "${CFLAGS}" + )" + cat <<- _EOF_ >> "${S}"/bootstrap.toml + [target.wasm32-unknown-unknown] + cc = "${wasm_cc}" + cxx = "${wasm_cxx}" + linker = "$(usex system-llvm lld rust-lld)" + # wasm target does not have profiler_builtins https://bugs.gentoo.org/848483 + profiler = false + _EOF_ + fi + + if [[ -n ${I_KNOW_WHAT_I_AM_DOING_CROSS} ]]; then # whitespace intentionally shifted below + # experimental cross support + # discussion: https://bugs.gentoo.org/679878 + # TODO: c*flags, clang, system-llvm, cargo.eclass target support + # it would be much better if we could split out stdlib + # complilation to separate ebuild and abuse CATEGORY to + # just install to /usr/lib/rustlib/ + + # extra targets defined as a bash array + # spec format: :: + # best place would be /etc/portage/env/dev-lang/rust + # Example: + # RUST_CROSS_TARGETS=( + # "AArch64:aarch64-unknown-linux-gnu:aarch64-unknown-linux-gnu" + # ) + # no extra hand holding is done, no target transformations, all + # values are passed as-is with just basic checks, so it's up to user to supply correct values + # valid rust targets can be obtained with + # rustc --print target-list + # matching cross toolchain has to be installed + # matching LLVM_TARGET has to be enabled for both rust and llvm (if using system one) + # only gcc toolchains installed with crossdev are checked for now. + + # BUG: we can't pass host flags to cross compiler, so just filter for now + # BUG: this should be more fine-grained. + filter-flags '-mcpu=*' '-march=*' '-mtune=*' + + local cross_target_spec + for cross_target_spec in "${RUST_CROSS_TARGETS[@]}";do + # extracts first element form :: + local cross_llvm_target="${cross_target_spec%%:*}" + # extracts toolchain triples, : + local cross_triples="${cross_target_spec#*:}" + # extracts first element after before : separator + local cross_rust_target="${cross_triples%%:*}" + # extracts last element after : separator + local cross_toolchain="${cross_triples##*:}" + use llvm_targets_${cross_llvm_target} || die "need llvm_targets_${cross_llvm_target} target enabled" + command -v ${cross_toolchain}-gcc > /dev/null 2>&1 || die "need ${cross_toolchain} cross toolchain" + + cat <<- _EOF_ >> "${S}"/bootstrap.toml + [target.${cross_rust_target}] + ar = "${cross_toolchain}-ar" + cc = "${cross_toolchain}-gcc" + cxx = "${cross_toolchain}-g++" + linker = "${cross_toolchain}-gcc" + ranlib = "${cross_toolchain}-ranlib" + _EOF_ + if use system-llvm; then + cat <<- _EOF_ >> "${S}"/bootstrap.toml + llvm-config = "$(get_llvm_prefix)/bin/llvm-config" + _EOF_ + fi + if [[ "${cross_toolchain}" == *-musl* ]]; then + cat <<- _EOF_ >> "${S}"/bootstrap.toml + musl-root = "$(${cross_toolchain}-gcc -print-sysroot)/usr" + _EOF_ + fi + if [[ "${cross_rust_target}" == *-uefi ]]; then + # Profiler is not supported on bare-metal + cat <<- _EOF_ >> "${S}"/bootstrap.toml + profiler = false + _EOF_ + fi + + # append cross target to "normal" target list + # example 'target = ["powerpc64le-unknown-linux-gnu"]' + # becomes 'target = ["powerpc64le-unknown-linux-gnu","aarch64-unknown-linux-gnu"]' + + rust_targets="${rust_targets},\"${cross_rust_target}\"" + sed -i "/^target = \[/ s#\[.*\]#\[${rust_targets}\]#" bootstrap.toml || die + + ewarn + ewarn "Enabled ${cross_rust_target} rust target" + ewarn "Using ${cross_toolchain} cross toolchain" + ewarn + if ! has_version -b 'sys-devel/binutils[multitarget]' ; then + ewarn "'sys-devel/binutils[multitarget]' is not installed" + ewarn "'strip' will be unable to strip cross libraries" + ewarn "cross targets will be installed with full debug information" + ewarn "enable 'multitarget' USE flag for binutils to be able to strip object files" + ewarn + ewarn "Alternatively llvm-strip can be used, it supports stripping any target" + ewarn "define STRIP=\"llvm-strip\" to use it (experimental)" + ewarn + fi + done + fi # I_KNOW_WHAT_I_AM_DOING_CROSS + + einfo "Rust configured with the following flags:" + echo + echo RUSTFLAGS="\"${RUSTFLAGS}\"" + echo RUSTFLAGS_BOOTSTRAP="\"${RUSTFLAGS_BOOTSTRAP}\"" + echo RUSTFLAGS_NOT_BOOTSTRAP="\"${RUSTFLAGS_NOT_BOOTSTRAP}\"" + echo MAGIC_EXTRA_RUSTFLAGS="\"${MAGIC_EXTRA_RUSTFLAGS}\"" + env | grep "CARGO_TARGET_.*_RUSTFLAGS=" + env | grep "CFLAGS_.*" + echo + einfo "bootstrap.toml contents:" + cat "${S}"/bootstrap.toml || die + echo +} + +src_compile() { + # -v will show invocations, -vv "very verbose" is overkill, -vvv "very very verbose" is insane + RUST_BACKTRACE=1 "${EPYTHON}" ./x.py build -v --config="${S}"/bootstrap.toml -j$(makeopts_jobs) || die +} + +src_test() { + # https://rustc-dev-guide.rust-lang.org/tests/intro.html + + # those are basic and codegen tests. + local tests=( + codegen + codegen-units + compile-fail + incremental + mir-opt + pretty + run-make + ) + + # fails if llvm is not built with ALL targets. + # and known to fail with system llvm sometimes. + use system-llvm || tests+=( assembly ) + + # fragile/expensive/less important tests + # or tests that require extra builds + # TODO: instead of skipping, just make some nonfatal. + if [[ ${ERUST_RUN_EXTRA_TESTS:-no} != no ]]; then + tests+=( + rustdoc + rustdoc-js + rustdoc-js-std + rustdoc-ui + run-make-fulldeps + ui + ui-fulldeps + ) + fi + + local i failed=() + einfo "rust_src_test: enabled tests ${tests[@]/#/src/test/}" + for i in "${tests[@]}"; do + local t="src/test/${i}" + einfo "rust_src_test: running ${t}" + if ! RUST_BACKTRACE=1 "${EPYTHON}" ./x.py test -vv --config="${S}"/bootstrap.toml \ + -j$(makeopts_jobs) --no-doc --no-fail-fast "${t}" + then + failed+=( "${t}" ) + eerror "rust_src_test: ${t} failed" + fi + done + + if [[ ${#failed[@]} -ne 0 ]]; then + eerror "rust_src_test: failure summary: ${failed[@]}" + die "aborting due to test failures" + fi +} + +src_install() { + DESTDIR="${D}" "${EPYTHON}" ./x.py install -v --config="${S}"/bootstrap.toml -j$(makeopts_jobs) || die + + docompress /usr/lib/${PN}/${SLOT}/share/man/ + + # bash-completion files are installed by dev-lang/rust-common instead + # bug #689562, #689160. + rm -v "${ED}/usr/lib/${PN}/${SLOT}/etc/bash_completion.d/cargo" || die + rmdir -v "${ED}/usr/lib/${PN}/${SLOT}/etc/bash_completion.d" || die + + local symlinks=( + cargo + rustc + rustdoc + rust-gdb + rust-gdbgui + rust-lldb + ) + + use clippy && symlinks+=( clippy-driver cargo-clippy ) + if [[ ${PV} = *9999* ]]; then + use miri && symlinks+=( miri cargo-miri ) + fi + use rustfmt && symlinks+=( rustfmt cargo-fmt ) + use rust-analyzer && symlinks+=( rust-analyzer ) + + einfo "installing eselect-rust symlinks and paths: ${symlinks[@]}" + local i + for i in "${symlinks[@]}"; do + # we need realpath on /usr/bin/* symlink return version-appended binary path. + # so /usr/bin/rustc should point to /usr/lib/rust//bin/rustc- + # need to fix eselect-rust to remove this hack. + local ver_i="${i}-${RUST_PV%%_*}" + if [[ -f "${ED}/usr/lib/${PN}/${SLOT}/bin/${i}" ]]; then + einfo "Installing ${i} symlink" + ln -v "${ED}/usr/lib/${PN}/${SLOT}/bin/${i}" "${ED}/usr/lib/${PN}/${SLOT}/bin/${ver_i}" || die + else + ewarn "${i} symlink requested, but source file not found" + ewarn "please report this" + fi + dosym "../lib/${PN}/${SLOT}/bin/${ver_i}" "/usr/bin/${ver_i}" + done + + # symlinks to switch components to active rust in eselect + dosym "${SLOT}/lib" "/usr/lib/${PN}/lib-${SLOT}" + use rust-analyzer && dosym "${SLOT}/libexec" "/usr/lib/${PN}/libexec-${SLOT}" + dosym "${SLOT}/share/man" "/usr/lib/${PN}/man-${SLOT}" + dosym "rust/${SLOT}/lib/rustlib" "/usr/lib/rustlib-${SLOT}" + dosym "../../lib/${PN}/${SLOT}/share/doc/rust" "/usr/share/doc/${RUST_P}" + + newenvd - "50${RUST_P}" <<-_EOF_ + MANPATH="${EPREFIX}/usr/lib/rust/man-${SLOT}" + _EOF_ + + rm -rf "${ED}/usr/lib/${PN}/${SLOT}"/*.old || die + rm -rf "${ED}/usr/lib/${PN}/${SLOT}/bin"/*.old || die + rm -rf "${ED}/usr/lib/${PN}/${SLOT}/doc"/*.old || die + + # note: eselect-rust adds EROOT to all paths below + cat <<-_EOF_ > "${T}/provider-${PN}-${SLOT}" + /usr/bin/cargo + /usr/bin/rustdoc + /usr/bin/rust-gdb + /usr/bin/rust-gdbgui + /usr/bin/rust-lldb + /usr/lib/rustlib + /usr/lib/rust/lib + /usr/lib/rust/man + /usr/share/doc/rust + _EOF_ + + if use clippy; then + echo /usr/bin/clippy-driver >> "${T}/provider-${RUST_P}" + echo /usr/bin/cargo-clippy >> "${T}/provider-${RUST_P}" + fi + if [[ ${SLOT} == *9999* ]] && use miri; then + echo /usr/bin/miri >> "${T}/provider-${RUST_P}" + echo /usr/bin/cargo-miri >> "${T}/provider-${RUST_P}" + fi + if use rustfmt; then + echo /usr/bin/rustfmt >> "${T}/provider-${RUST_P}" + echo /usr/bin/cargo-fmt >> "${T}/provider-${RUST_P}" + fi + if use rust-analyzer; then + echo /usr/lib/rust/libexec >> "${T}/provider-${RUST_P}" + echo /usr/bin/rust-analyzer >> "${T}/provider-${RUST_P}" + fi + + insinto /etc/env.d/rust + doins "${T}/provider-${PN}-${SLOT}" + + if use dist; then + "${EPYTHON}" ./x.py dist -v --config="${S}"/bootstrap.toml -j$(makeopts_jobs) || die + insinto "/usr/lib/${PN}/${SLOT}/dist" + doins -r "${S}/build/dist/." + fi +} + +pkg_postinst() { + eselect rust update + + if has_version dev-debug/gdb || has_version llvm-core/lldb; then + elog "Rust installs helper scripts for calling GDB and LLDB," + elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${RUST_PV}." + fi + + if has_version app-editors/emacs; then + optfeature "emacs support for rust" app-emacs/rust-mode + fi + + if has_version app-editors/gvim || has_version app-editors/vim; then + optfeature "vim support for rust" app-vim/rust-vim + fi +} + +pkg_postrm() { + eselect rust cleanup +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-9999.ebuild index 6086b58e2f2..3739d543bf8 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-9999.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 # Bump notes: https://wiki.gentoo.org/wiki/Project:Rust/Rust_bump -LLVM_COMPAT=( 21 ) +LLVM_COMPAT=( 22 ) PYTHON_COMPAT=( python3_{11..14} ) # Patches are kept in rust-patches.git, see its README.rst for the versioning @@ -24,9 +24,8 @@ RUST_P=${PN}-${RUST_PV} if [[ ${PV} == *9999* ]]; then # Update this as new `beta` releases come out. - RUST_MIN_VER="1.88.0" + RUST_MIN_VER="1.94.0" elif [[ ${PV} == *beta* ]]; then - RUST_MAX_VER="$(ver_cut 1).$(ver_cut 2).0" RUST_MIN_VER="$(ver_cut 1).$(($(ver_cut 2) - 1)).0" else RUST_MIN_VER="$(ver_cut 1).$(($(ver_cut 2) - 1)).0" @@ -90,8 +89,8 @@ ALL_RUST_SYSROOTS=( "${ALL_RUST_SYSROOTS[@]/#/rust_sysroots_}" ) LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" SLOT="${PV%%_*}" # Beta releases get to share the same SLOT as the eventual stable -IUSE="big-endian clippy cpu_flags_x86_sse2 debug dist doc llvm-libunwind lto" -IUSE+=" rustfmt rust-analyzer rust-src +system-llvm test" +IUSE="big-endian +clippy cpu_flags_x86_sse2 debug dist +doc llvm-libunwind lto" +IUSE+=" +rustfmt rust-analyzer rust-src +system-llvm test" IUSE+=" ${ALL_LLVM_TARGETS[*]} ${ALL_RUST_SYSROOTS[*]}" if [[ ${PV} = *9999* ]]; then @@ -669,6 +668,12 @@ src_configure() { musl-root = "$(${cross_toolchain}-gcc -print-sysroot)/usr" _EOF_ fi + if [[ "${cross_rust_target}" == *-uefi ]]; then + # Profiler is not supported on bare-metal + cat <<- _EOF_ >> "${S}"/bootstrap.toml + profiler = false + _EOF_ + fi # append cross target to "normal" target list # example 'target = ["powerpc64le-unknown-linux-gnu"]' From 76bab3efcadce18e8eaf9e822753ea4b8251525e Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:08 +0000 Subject: [PATCH 052/291] dev-lang/rust-bin: Sync with Gentoo It's from Gentoo commit f363f98d6a19453a397af537f7102d59e431a1ad. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-lang/rust-bin/Manifest | 116 ++++++ .../dev-lang/rust-bin/metadata.xml | 4 - .../dev-lang/rust-bin/rust-bin-1.92.0.ebuild | 4 +- .../dev-lang/rust-bin/rust-bin-1.93.0.ebuild | 337 ++++++++++++++++++ .../dev-lang/rust-bin/rust-bin-1.93.1.ebuild | 337 ++++++++++++++++++ .../rust-bin-1.94.0_beta20260126.ebuild | 337 ++++++++++++++++++ .../rust-bin-1.94.0_beta20260213.ebuild | 337 ++++++++++++++++++ .../dev-lang/rust-bin/rust-bin-9999.ebuild | 10 +- 8 files changed, 1472 insertions(+), 10 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.93.0.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.93.1.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.94.0_beta20260126.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.94.0_beta20260213.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/Manifest index e37a9c538ee..a9f95346995 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/Manifest @@ -738,6 +738,118 @@ DIST rust-1.92.0-x86_64-unknown-linux-gnu.tar.xz 192171372 BLAKE2B a4d300f49db61 DIST rust-1.92.0-x86_64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 6b5705cee0a257eb54836da4c351bc3e5367938cdf8dc317137c13b88a52b63361b647602c5a2f087fc145c1d490e40513ee74e232f0f5c304d71c55c4f55dc0 SHA512 15a54c497a450211e09701e7c4158dff3b4a32ed4bbc5dc36e6920de1d2a42563b7bca69180b3456b088e5079b9d07d2bd0656f1a9491e4445a4aa9eeb45140a DIST rust-1.92.0-x86_64-unknown-linux-musl.tar.xz 295461400 BLAKE2B 9eb8a7ab9c3bbd4ab8f6bb1d6cec7c2f47461ec48144cb9bf3c6f71dc63e0db79d3fb9eddf5373626259e1bfc60a7c693d0dc7908ed651dea0478067985f9c32 SHA512 974e589f2f530b98cf378593a0b6a5fdcc39b6f163bb252ab8a7dec4270465830fd72b60b9d0bbcff44feb354a004fd2e2e2aef45dac51533a905a01e35a061a DIST rust-1.92.0-x86_64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B e23b48bf40fe709084f8792c563d47f1ede9e91e78d6e270b05dc58ac60ce71277ad8f72b2d67b81d7434c0f73df4d97f4eb5896c2d1864964344ab341b41125 SHA512 f427c992b45585b484fa6171d35bf56d47cdb05199ff8af35cee76e6ecb2138df31b383e3b4b786846cfdc38ebed370c4dec9573434d941c0a03ef16f9aa8945 +DIST rust-1.93.0-aarch64-unknown-linux-gnu.tar.xz 169930452 BLAKE2B 17236d3ae7583eecc2b159cfdd75a604070b41c0410fe1ce5b8d32a4d27b08968e5e3369bf9bb64b845c13f4f2c26ef6d3b1a53f3d00f9f086b18eb22f043698 SHA512 5f77bcbc69989a9ccb71f092f4624ee8d59741bc0a84047eed8c7d9c1bef84c4cf3b32138e1d0f027ce007b50ca083f1b08d315b917b04f2066d843de63c7379 +DIST rust-1.93.0-aarch64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 35c6dd7ea9f6f04137688b3a13e9a33fffba9766f5b19fd416af7c1cd996ae3db66ec0cff5722973a71895e05c682d27befb1b407db6f4c0a919ecd7a5d77c77 SHA512 85c01b683f25aa46556f70682500cb4066a6089bcdf6ad6aeca4129f84527183acfe344a25e1fb90343dc63022a7c0a509a7266840af3ab45c598d48c0e4ca7e +DIST rust-1.93.0-aarch64-unknown-linux-musl.tar.xz 244304812 BLAKE2B 554a34c6de09359e33826b595e752408098fa32cdba6bfd47f3a6d2a0c42170ab3643d30a6954ac1623e5d8814b9da6fb1c5e85b154ece696e954a7605b2aca1 SHA512 64c28fbcf5b886c6ad9c9d3a1bfd7989a0707e19d5236f2765180aa5f6cfb2d71acf203254cc44be4baf1e1260f827e2ee095819e8d509c4c970d4f7a1742090 +DIST rust-1.93.0-aarch64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B 47d34f86f2857f8dac1d0bd2e5851e24217984a1fcaa988a099f0e61dd7efae5ae9702f8e8f8d0342993d9ec83027409535559243699e7f8c47c7bd8644683b4 SHA512 bdab75d0574e930f42c805f404a1bcf8465cf32689ec3df02ee63441f0875125944705a5cb849101b5842daac08cb9bc23c65739524b84fc6fc3a9dc0fd38266 +DIST rust-1.93.0-arm-unknown-linux-gnueabi.tar.xz 226078060 BLAKE2B 6aea90f78fdd87dbc1b2d95fc9e55c472deb4eba27787568500e8b95e112bbf99ddd1aacad30a892e6c6f8d92286639d72ea04dd7464edc3b603661ad0b1bbe8 SHA512 6208e436d292099b956eaf8b41f621ca2845d55c424e14836c53975aca6ac237172f8f5982db5358b368b852d66e15e00f64dc8fa487a5e22e84a15e62d65c47 +DIST rust-1.93.0-arm-unknown-linux-gnueabi.tar.xz.asc 801 BLAKE2B 01214a7762659175abe06d12ba5fe5db50b05fbc3fae2925705f6151901a4dc37ab5f93f97aa2c36e6e45d981cc22602d074fb9df82781f4c4567c9a5fb3bfab SHA512 4f0340ad17ee76a43ebd4275f2fac920d9cdcdefd0c4e701010706ea8834cdbc4cecb198cc3dac7c266ce08e9bf8d06a3910b534b96f9b1cc90db592f3eae546 +DIST rust-1.93.0-arm-unknown-linux-gnueabihf.tar.xz 226590496 BLAKE2B 94ab6f423012f9fd522f6f1cbcf532172e96d3d3b235838db5f627dae78e80d7d5524ff8db749ce3eed8f698491cf4e7327ecdd826877812efa9cf54dbf26388 SHA512 429bd05b83aec2bc845a7fde079bb1bf6df4de092f58f05a5457cebe6b2deed13a18c9a1c562b0db84cafc8f1f6e66e4de6b2f2512c0ad6fe786cbea7809a7e5 +DIST rust-1.93.0-arm-unknown-linux-gnueabihf.tar.xz.asc 801 BLAKE2B 76cf3718a581b6d152bbcc55578f20da33c077b8cafa99df4faf276e49b3d450d46b1c4dba9a39757c87f66e7aa67956d1354663834befd77d98c7783565def6 SHA512 694628f96946af2d10396d868aee502686f4b88ba7f05c70920a5b1d3894bb83adc34e6adfab71d8c5279ff4054bb431fb756f94eb203918938f13a0133cd6eb +DIST rust-1.93.0-armv7-unknown-linux-gnueabihf.tar.xz 227377400 BLAKE2B d7901c2bbe6a3a14d987c2fcf76e21eeaac7a1cd2ab38ef1b03a93acff5693b106241f218885f0fd3bc16a82747f39b60a2190cad27476fed0d5ebed3ee28aa3 SHA512 3ff40a3622d4031480cbc0d467a15ebf45522342b3ee2fe5966bc8c5eddf5e39d89fbfbb97274a24c7becbd77e480af662f4db1ce49befe7763c70a32af0e09f +DIST rust-1.93.0-armv7-unknown-linux-gnueabihf.tar.xz.asc 801 BLAKE2B f83f364e7f0f48dd3d7da1df0a46345d5bd77bf215ad57fa2a2a71aa1a656c1febb644fcab209ca343552dccd84071e99567468151f441020ce35ed129dfbc68 SHA512 7397907a7556e947e34c812f43ae084f19e53f8833b074b319971a60c39aa837df59b42beed98e839e02d9d9a6cb9afc8a4bf15e6e246d7b6a8a48e56f56d9e3 +DIST rust-1.93.0-i686-unknown-linux-gnu.tar.xz 267055732 BLAKE2B d1be43556d32e055e00b7dadb351f20301c03678723b9aeaab43a8c90a6f97d280c12070ec20fd60c7af9eed2766f6904c3753a3f8c4e972d70e0833979a9d8c SHA512 f5ce4fbb0d696b1fae4f9d8632ee6e80fa4669b675e564197a09871f68fa2044b42c1c09e49077bef97cb3fed4ac10eb44255f6434a821ab311f7ca25d4ec53d +DIST rust-1.93.0-i686-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 4a89bfc9293a3ef46f7142a112409b55c2de8f9bd0b6029003722b4417fff01e182d96e5c1b4cf54365298b7cab69400391385f777abec0d4c4ce30374e0b3c4 SHA512 2489533ed1366fdc299552d116f84f52a55969db38fdc973967ccbcc33156578140267c9152e032033fbae1cb6e109975c7ddda033969e4941c98bacdfea3d15 +DIST rust-1.93.0-loongarch64-unknown-linux-gnu.tar.xz 260040328 BLAKE2B 09cdeb74e46cc4d66bd19c15cb5a8762a3d377add63be8d035618cfac5c1be7d3e99f392fa34b11ac4f9abaaf271379504c9aa1450aac62910743cfe5ebd9014 SHA512 06834f0489c3c7a56ae7c041adabd3df5e370e7b5451a9ba1e722bee5795870e93ee0de2112065dff6fc0f18ecf7f5d288c290b1b0f2c55c9eac561c56e8e170 +DIST rust-1.93.0-loongarch64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B eadf34ec84ea8893afe3f9825716ab6b6be3564af8e49ab7e154fc63cd6c75bdba7ed630dda5b837bdbafa439cb15a7a24c4e1c65cbbc6e7219b9d9c9395c38e SHA512 352f593d72c38f07e028a445e6c11dd8d9415f60a839c49bea8956d75894771bbc541e0291dc73d330cbb3d59923c598d9ae89b5f2a4fba2aa4a558f4eb7a755 +DIST rust-1.93.0-powerpc-unknown-linux-gnu.tar.xz 248934060 BLAKE2B 52603ceee69db7c341b112325f12629483e92e6d0018d84bac2d09fa3997e5ab415ff997da9ec964d1bcfd8d5a4291a06b2987220ed9c07d7433542be25963f5 SHA512 afbe0c734c241d178c6493d44d8ac6d1f9d96becb04a306b3524396d08022ae358563b8770ff70f8454c3ddefc24ced990705fb9a00d41cbd5e166e6323afc31 +DIST rust-1.93.0-powerpc-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B a20d189c1202a75f0eae849f36c6da20f97fe788cf9363ad3e0ab601116638b59ebf80e952d33b31da9d37f99c269982902d3b8cd484e428cedcc96bd9bd6f3e SHA512 efdd238c7170b8c816b1651919079c3f87133af0d2e41f1a287775d4b58d5075fe2dbd36bd20bb1b41b79132236576e800a0465f8c6c42263080b0deb92aa2ba +DIST rust-1.93.0-powerpc64-unknown-linux-gnu.tar.xz 250774468 BLAKE2B f1aa5f6a6b8e7a7d20178a0c5f5cc49301a729f492ed9b3206288809efb06b94fb353ea04185c24a20c78c6a8389f1e76220b96e42a73dfd2542f7e683efa279 SHA512 1ca4a3eea705b2d8e02c7fa0ca7e5e8b76e18790af7773f37ba03342b6d19b74700d833ce0392d00bb6618d7fda7631d4bca8601796a594bb0bcd8a103c85f82 +DIST rust-1.93.0-powerpc64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 12b922662842ebf660a330431fefeb9c70fa9d846c67378b012cb3fc9e6cf1ec3cd8c5b4555d3d890ce60285f6e640e3dee9308b026fddd24832b7aa4dbeddba SHA512 d4fab972ed29bbc95411800d49771c649450919574af25b58f9a6cbc2ba9879d86b997d39703ad885fae4d501d31b03195c33c599a5eef4b4bea9754afc8335b +DIST rust-1.93.0-powerpc64le-unknown-linux-gnu.tar.xz 267645356 BLAKE2B b1c85b15a755c84295e83fb3939c82d86237be038a1a7d0a33c55349b00c52091e0d775fad3d2a7c3fcad20a622c2275f1eb7daf566fb2864f5dd0fd6d7f852b SHA512 d04be972bc4ed74add2133a96668f1e4df0721bec57e01a58010ac4ad5b7584b90d2346f184ef7a5435c13341693bb19b1e973cf8f87e8f7a50909fd83318776 +DIST rust-1.93.0-powerpc64le-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B cabce663a760fce4be8c63c4897103dd52ea0332e1d025aede06262a18d699c67f2dc6b4b41d47f633e93e06bae53a0c16d9ef68b5920546160d6c4a09f8c4ed SHA512 9cdf5e2581f6c34467f791db07440b45efe68350a3840b9b220827a7b2d4925d2a89355fa471edf589ab4837959facbf19610d9919d561cd55c84c0ea753e091 +DIST rust-1.93.0-riscv64gc-unknown-linux-gnu.tar.xz 247839288 BLAKE2B 99997a629f2db024a49c49725771e52665b7ed53a080146b27f8809a662564f55fce6075a4561834589809f323eaf5c0f7dee8eeee916fc83cebd627dc6a9096 SHA512 d3a8b2b68db0610fbedb06d6968b7745b002a1ca45becf1501bf5ffb4af675dbe97234d8fd3acac45c05dc25b44c8815d958af201e692f8f56d29788c07b5b27 +DIST rust-1.93.0-riscv64gc-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B c66f5620b7724c74ea5b6e659a3ea3eda116bc1fa7fe7b5907b0c73f0358d5d59309316e9324495a71d30b8c0a3b12d95c2847643a9fd6f47682eb50fd9bb5a2 SHA512 c2804689cc6308aa504f39a21ce893108d7092b5ce0325d22b199395cd6bb4cec5c5802e48eb13a0096210cf617f1fa4d201f20224dc94fdc12f796af16ad823 +DIST rust-1.93.0-s390x-unknown-linux-gnu.tar.xz 237804380 BLAKE2B 7a1fc51cce23ac4b43e125976488eee2502e60ab543505e17e241c8c0bd28c31664f9a04c214754fdd417a82a8e4a0570afba7a0feafd22d3cfa565f6ac06bb2 SHA512 60b3c58f3afe4ea95dffc4e6bf65e9909964f65ff1caa9bd69e82c5b23cdd27cb6d4bb7f7e9c6c72d7250016a4a4d02fa76a6a05a0f048fc17efb8ac74bd47fd +DIST rust-1.93.0-s390x-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 7a68f37f491348cd8d78f56a946ba27282754d263682cc4da1cdbff48b63ed8073c297af0c10dfa42337dd51819366ff9ee0108bf6317369925719a76dd4fc9b SHA512 7252f1f6e446e0cb9804e2bf6ecdc6a696c846f3e0b5972b88125c6cf62a491a2cd5054ad3aee71584c67ffd2e8c03ad3b252e967f021fdddfdab3cf3eab876e +DIST rust-1.93.0-x86_64-unknown-linux-gnu.tar.xz 192930828 BLAKE2B e94ce84407bb71eb60b866e31faa77cbf448f666f8a07555803bda061054bde5356c054f1cf8e6ed4cd79736f7363627ba2757992259160e8f8c377744cb1d9e SHA512 972d240fc302c135c75384185c0c21a4be1ae5c38d510606be7b9d2b55582d2c2869252e3cc39e1988815968ab48260f2611389f8e2da70b1d3233d8f316b51c +DIST rust-1.93.0-x86_64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B e02d037cf941d062b22304dcd526c6da8847d55abf8a4a634ffae0af2242d0db052aa7c3b05d483276e30d6352c6c139d991f0990264c538ed0b601424a93ed7 SHA512 024461a3bd1eedca3fa98fe586a6ab4dca7300358d9e95379fe83dd51005e7447ee9de5b08f1cac06d7415de420e47e10288e5fa80cf22f27ce883f3de09a748 +DIST rust-1.93.0-x86_64-unknown-linux-musl.tar.xz 295317012 BLAKE2B a467ceb75991bf0e464de4d4ea16dc288e06176d6af0a7c9ebfd8dd694bbc5bb7b9cc677ae232997106c404daa72d0734e30234dbbb92af51ba68d70176c7168 SHA512 a3e6677698b9e556583a335b80736ac04b391da4f4e24a943ae472de92dc8c9bff5ecba4165f069041142df54b7d6a9dfda61c30405fb5b25dc4b5d6b9ffb812 +DIST rust-1.93.0-x86_64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B ffc668e7a4309f078b2c032e21054d988010d2d07a7fb041b0db413f5c8b1a5a68d99f9d94099d270b43ac44b04392981a29fdb8a8c063570f33c345281743cd SHA512 f530ab1e1aae5036587c6bbf11864c38c290d47951a053217d5ea6f943f419798dfc92f33fdca17fde07fbd5817b2573e82f5a136f2cc745a6fd11cf8705ea41 +DIST rust-1.93.1-aarch64-unknown-linux-gnu.tar.xz 169781296 BLAKE2B 5cc411865373c857e60e6a086ac5fcfc7f17f471034c2576d023d9356423516641e6eab3727b930d278e77121ad781f3866e3bed09417e43faf8355b4ecbda89 SHA512 ba24d928d037fec864ce09b796e077655cd62c8cc07b69b99f629069e67417c6b62a9ac829e37005e50f01274d796d8e95aee03c9c04315bac63b88fb7a372f5 +DIST rust-1.93.1-aarch64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B b0f2b8bfd8e1ca5a76acdca9d47b5e5131f522057be0dc9666c74bcf5c6835ed79d3c38e7842351f123a999a170225b70bb8f3c8f14bcfeec8fbe7531c795a2b SHA512 8cae62fc0fd34755bf41da69f32349c23e56824f101716aee1978965cee5b9e81f1a5b16228668a137345992bfee19f05d14e29a464ce7cb409f104788f3dce4 +DIST rust-1.93.1-aarch64-unknown-linux-musl.tar.xz 244143464 BLAKE2B 61815229a24345b61d6dd7138d8b7475072d14b19c20a65412afbe4500bed6b5b6be0e5fca685f0460f6c1408e8a7de36e52eb4c8864ceca0e41ba40dd2572fb SHA512 904790cd8eddb2610e916329a4f8218079eb0381937704348ccc44e805ea6afceac7623b30f5febcbf566ee7dd72e71518d8395a0d8fdbacc7633df34701f59a +DIST rust-1.93.1-aarch64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B 4ca681b890493041acccaaf11d5c64ea125f02198548d2e05b3c7591ec8c000b1925cef75b6fabffd11e7d955fab5992e3799305b02f7256cf5404fe53e84e06 SHA512 8a07504fc0bc3e904351cd4b9ea6e2f498606f53c76508a0b9e6370ca77a0b32f4cf365d4066db6fbf892ee11c96cf695a2c28eb03f5115468bd07903a70c094 +DIST rust-1.93.1-arm-unknown-linux-gnueabi.tar.xz 225501336 BLAKE2B 021e3a3c11fed9cb2670a32938abfa1a466b32086708415df3b4231c7df1af5dbfc25542a65928487aea1faba93996de7d5b587a01bb0899918e9f044af27bf9 SHA512 e0099c5cea9d669f715577ea68d4174e93b45c9c1bdc72643569ae69f5ef1f19d055d0ddc92e8b24eb4a2c87d231126260d219ac2bd155590317ab306ad3ce96 +DIST rust-1.93.1-arm-unknown-linux-gnueabi.tar.xz.asc 801 BLAKE2B ce12b43f34dee34597e1df09b6bc322db98f4e7372291b3c62ce68f5d820dc34c1f40d3fb2291a91b08936262c7b9fa12b908e50476fa4ba4e63aeb4aa79c0d1 SHA512 0f6ce2b392192e16bebb29ef579c5a1016347641d14c7a1e228e1ec8d598a744ed3b20de2e5e58725a8c7a5e4ef1039e3851c3103ae8b95adc0b8367a42741e4 +DIST rust-1.93.1-arm-unknown-linux-gnueabihf.tar.xz 225914300 BLAKE2B e0ee608325326f14e008af13dd109652c493557f92a66e9fbb4ff34dbcdd7578fc81df9f1a68356dd6209c3dab5b6924f61f30d6efe2afcb3e585c409d9396f9 SHA512 c032cfd530619ea8ee78dd885557e3f16daca2c5154ba7acada7e07ece202546f04dba5c7070f2941cf3cf5a0f2c76328e6d35d87983943d6c3a039e5d61933e +DIST rust-1.93.1-arm-unknown-linux-gnueabihf.tar.xz.asc 801 BLAKE2B 6815e5f17f31eac119bfd7f1bc3a72df3a9f8352d2fb36396af4253c98fabe7107407fed68830123ba80c397cff7aea2ad7c2f737e1f7da8c6cfc0a579d6ac90 SHA512 e1cf9279bfdc8d8edbcf3df1f66f62970cd3e73faafd27f5c07fb87d459408d0d8fabeaa9ad298c50c0c96f7d771e13c38b37b02af988cb45ce0c634e3c5408b +DIST rust-1.93.1-armv7-unknown-linux-gnueabihf.tar.xz 227522816 BLAKE2B a238d773a0d724e6a94d7ad5ded9ff1ed3f4f2bec8f085f3180e82dc538a49fa22f8725bf4ffd0c411630dc49a26893a8296e69c255f8c1814289852aaddc550 SHA512 1a1540f95c51bd7699658bf943ff2a0baef131404b8308db4a9db202cd1d701822e970c046254a38ea90975bc4d12dc59e8700365f100b30ab540c2e39738c51 +DIST rust-1.93.1-armv7-unknown-linux-gnueabihf.tar.xz.asc 801 BLAKE2B 94c6c471c7c4d97fe44c3975929173a633f2d8fc3ef833fcf0c3ed37ceb3414dfca4732238ba33d603c4be2c8d9f623305477a7109a44b32f7c2fa11147ed888 SHA512 6ae9f955bc24226059f5b9b0e412bbf64af080f6f77a02afc72b6f72b7af61f66d3a8700c8c44604e217696c6290d1e9e39056444b84d8ceb72a12ea30406b33 +DIST rust-1.93.1-i686-unknown-linux-gnu.tar.xz 267242468 BLAKE2B 7784c64d3e2a57ca497bef0656897d17a1fe28176c46a857fdeaf8193b29f72c9e10fe78221d39b3e101a97a82d0e53ae4a07307b04883029ac87ba1cc388131 SHA512 d842438236816e498b1a5d845f2e09d8a7fc75500c4b0c565911adf67387ae4e1ec2d6ca231fe489800aa57ef6e4f4aa8daa713cabf84b09189ded79010e75bd +DIST rust-1.93.1-i686-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B d064833f4887d4f265b04f9b53eb8153e90206e894641f8140e9a933e78d5f326f600aee9c0c7c2fd37d3711b6e73dda3ecb67d8367766a3dee25542a2da2123 SHA512 b6369337deeb055f56fd622ff4481215aab017e8f32a1eaa54efa6d921bd8e136dec159eccc742c2bd75fe785869b8583d461c2114c651dcffa05c5d9523a902 +DIST rust-1.93.1-loongarch64-unknown-linux-gnu.tar.xz 260093372 BLAKE2B 37a503be2311101fd14c2274c8f03cd66931bc9bbd9cc1991eccefa7e27552f24262795e0e8dd9b8a552e6dfe716a17a2c21be510f766a06a2c8229270e6f565 SHA512 27360935c2c2b76fdc7029dd737c10e1507c86a4d66f92339af47699c972cbfdfe4c9c76efd6f797587a842f32d03a824a7040cd2cf632ea8e72d808dd256f9a +DIST rust-1.93.1-loongarch64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 245fd3da533a8825ab5c37dbdc06056a0e33215f4960ae29e15592efc4cce830f4ce7b635f056a4875c438345447c176ca580e59712833d37cc2fa279dad8877 SHA512 1393601274ddca503d53f442831d3bcb74c9ecbbdf05a71edaeca704fd6593e699546c70596031ad75f8a50420ab69a72934655ea72175dded6708f8fcc08428 +DIST rust-1.93.1-powerpc-unknown-linux-gnu.tar.xz 248960324 BLAKE2B 2198131dbac56d4797687ab43ad795440e99ba9538c82e11d595bd84696f1d59fa390b0dd5f73b75cf07383fc9b727bfe4742fd1f3e4eb53eb7bfaf43ff4dd95 SHA512 6b6c0b6ca2f2d26889eca3767913e4c18edb8c22ba30714fd215ff475d08d834e3a4fd0d179c1fa7f8174aec4f79ab5b84fc6438a81a8d42d3471bb7b8eacfa3 +DIST rust-1.93.1-powerpc-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 6109e743f7829f6c5ef2885eb9859a94fd301e693810cf8df2a9396e45a656315cb7e32bda733a708515b01d6142a735f10c276b86f9169552ad00460c7891a7 SHA512 b904c3de40715389f91f10f8ce7781951e22510a13f3fc740376ebe1953fcd8197ad8590327fd5c5b537de0c78e7a7366e097bfeee560a318d262774f16e52b4 +DIST rust-1.93.1-powerpc64-unknown-linux-gnu.tar.xz 250785352 BLAKE2B 1838ef2f74f8cafa6a122ac1c6a25909e57a5ed2da9ce6ccaf91999413e326b92358fe32b3f21df9c9fc6ed95c8482d97c425f7663bf452cdfa88d50cd3bd504 SHA512 6302daeee7039f5c1b1c68dfeeb0e722582c419f6f47a85590cc379b5632308dad8ce8b2c08240c5232769170948322b1e8cb759ddb3a5ae87fb2baa76940992 +DIST rust-1.93.1-powerpc64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B d7ad185b8764ae420aadd6eb3739610f2ed61ddc56a41dc72386effaeb04f3fbaae013c7954ee336e42ff6946519e58a38c9dfde912f1e1fd88728e864dee5bb SHA512 e0fef1c123650c9ef85863a7994c0a20023d065853da48880a9e4088ebd56c643fa701a210aef68d89e52d36fe78a134952f48852c5ce4d1067aaf5c85ba0b33 +DIST rust-1.93.1-powerpc64le-unknown-linux-gnu.tar.xz 268583976 BLAKE2B da1c803065d4c0e60b2b31199015e48298620d9cec916023ec0ae540eaf25a5ffcad6413f53dbab6865367923dc785413e6aab758de342d20aa1b1f7f405f0d1 SHA512 d577bf80a752e171b454ac7dd45a5d5c11ded071ee2ad003a7bb054cb80f688f1ee244114509ea1ef92cf6725ac6cfb9bc65f416d462339807b6995d531a6ecd +DIST rust-1.93.1-powerpc64le-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 31c777095a14cddddb4312fb3a5e8d68e86efc8054c245d5ef0638695eaa359b8eef4677c89d7bb1780d4a76422674e85129493b1882956a1978b0f0e2d8f178 SHA512 0c4f9730c3cdb9993c4dac40206fbc4fd25783601cca4051be259c34752364067bab83e66f6e5c7ce23889cc0eb2b2077d1b240565fc14bcbb3004890f40f90e +DIST rust-1.93.1-riscv64gc-unknown-linux-gnu.tar.xz 246512252 BLAKE2B 84adb4e1410ff887a68becec561f7c5fe8cb031e295f27026cac3afa105c09d4b98a5fd2a75af6c2507c335f1155b0b7fc7ebe38525c9426c983c34a745b766c SHA512 e2c8fe32710cca402b366e54fb53e2bf46ca6fd963e381bc276fc3384c64abf90cbe1744484c0c83b4c656e643a73dd48a6e6fc8aa761a1448b087bdc6a8ca83 +DIST rust-1.93.1-riscv64gc-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B b216d82a8c99420b24a59faf9cc20220fe671ca6c11067e93456e39009c04ec8fd1fceb7edbf6b24e9fb95abf7b8b3ba4c746f8945e1f0f8254826abc4e21617 SHA512 4c119de8c7a5e6f877521634c45ea35d1fbe84b3d36bb0c54bb489f4e940976ba9661df3bfdb9122d4e05eecb67e9f1c159f61e3c52252cbea8b0d085924c8a2 +DIST rust-1.93.1-s390x-unknown-linux-gnu.tar.xz 239133552 BLAKE2B 0d8b5d585a82f41a660427a7adffd775b9f6dfc772b2f229bbed8ce558051d2314f36674051aee3608728d1bada53b0fde3cb828829d8b5dfefb19eb196c72c9 SHA512 48b96de42fcc849ed13edb7b737c8baba936abe17396abf1b7ffef208406a78642670b0a9761d1c4e790d4012dead9fde8d2f5b0514b3be637908f6b95a8bcbd +DIST rust-1.93.1-s390x-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 860defcd5f5ed8f8989dfe6c8afab18bc9e95bcac98abb53672685acf2b09d111af12748b3b77b25ae097d813b7bff60c252ae3fe8216b63667c363a185d7f31 SHA512 f00606b882ee1dea556c6766b6f784c61c3c018bb7a0fa598669d6eb34830d5c805a045804dff4d89e2aa64f9a737594968b25b8b7a1619154481fe0a97842ee +DIST rust-1.93.1-x86_64-unknown-linux-gnu.tar.xz 193192180 BLAKE2B fd8d2f3ab45f390e33ba3244ce5aae49c415fe286c8b42da70a4fa741127b6e6b2e1adebd3c0e586ebb8ad347bfa20960d9231352b51b31b48838d1658b2e952 SHA512 2c111986db72ca33b3d5c73445f1d89af9f417546574993c5bc2ffc721f176d603f16809007c722f22bb337303277ed1175270ddc9b0261c0338a9900c969a90 +DIST rust-1.93.1-x86_64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B adf891709bd5c87dafdbd8e8498956257a0fbfb179147f00f23dd00ac2eb43ab19a2d51850632f7a3d9adaa403461144983a2bb172d6eabd6e2e148eda570662 SHA512 25b658237207ef5f99ff3e276412f9ac08b5c5504df066d9178e22e22d3d4e3dfa897313a6393a6a6833ccda09c0c5dbcfeacfce53c09bf5a97e7b36afbb3f3f +DIST rust-1.93.1-x86_64-unknown-linux-musl.tar.xz 295454356 BLAKE2B 1e40b50ff65d42a7445ff4d3f4a79fec7e8f729c245ba06d0bea90a05c387ac895df736ff59d27799512aa94703205aeb5235802badd56c3e0b681269e66ab41 SHA512 c805770236eee08cc222022d46e09ba6835c08241644d1d76eeab42463a9faafa26f1d50796faf0223e6601940ff52c507eb04ecc3f26066900c0185341bec4f +DIST rust-1.93.1-x86_64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B 40dfd17d105de1bcfb3fecf0b41c066c3f9c93a563396a0bf88d975667776b1c1d2784a0cc495a14c78878b9c3b0043800b06de702eca6720f0f340f7afd1989 SHA512 6f584cbe33f7678632929f9395ac92a75721da376883432c6608fd0383fa713342a8971f85645a4dc9311477a7c2a6cc905f4e25fca47eb8a35dc9996f8fbb3f +DIST rust-1.94.0_beta20260126-aarch64-unknown-linux-gnu.tar.xz 168363516 BLAKE2B 38c623524417e98bfbe448f0be605552598b1b879fabac744d8263c5baa1d5eadd1a757582531eddc9bf7924b382073f33fe72f6fe6c3839f67410ba8456c2ab SHA512 c06171cfca7bc42ac62a718541147ab6c3dc0221468ce3de673cd9fac0bde86f1b7d5fee060acf53f090f6cebb386c701625cde4658e0ae876417993cec6c872 +DIST rust-1.94.0_beta20260126-aarch64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B a81116d147b0bccc93944ed0ec82e1c4666620b4e45c0c38a18e6454fbc7b6a890ad04147f4a17e156a5e6cfdd08815f579cd8b5cdb806d001ee445e51e3b534 SHA512 dd1843c35cbcecf70d14da312a8340e3c523f8e2e37526a499a37bc94616852e597768d6fd6cd2e9f467674634b79c71b54b7cd40151b82e10cb446de5ef4f28 +DIST rust-1.94.0_beta20260126-aarch64-unknown-linux-musl.tar.xz 242112904 BLAKE2B af6a5ffa79ecebf271e09a2aecde8fa5a83e3aae421b7d1069464774345dcba122f6231a288c3f56cf0bb1e5195f80f149a9d851390494313c132166c6c27c7b SHA512 083a69343a86244e006e78e4a4de39e42a6e4a4b91ace04a9706132fd38457be7227ece588245159a78d31fa5f87828d403190429a472dec847a203054cf9d98 +DIST rust-1.94.0_beta20260126-aarch64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B 9f64539c02ab37f08841c2b12dace4b11e9870beadfcc20b404ada679feae1f50b7e748f58a89868b2819722fee4178b6052bf709bae0e74aa6d4875579cf6ad SHA512 4a6488a95514fc1e9b722ba8b26e4e517a8e674cb77968ab46586709a2ca366403150d6b7b0de1ee8d255690b787fdfb6a9e44ce2244ac847e813372305625e1 +DIST rust-1.94.0_beta20260126-arm-unknown-linux-gnueabi.tar.xz 225124840 BLAKE2B a7794569ef299580dc66e8cade5d3ccafceb1dba124326f06b49f557bea82c2bb0bd471f8d10f20dc10bb74bb2461bd5b1dc44b078b3f7f6db9ce6cc9ca335a5 SHA512 fd06b6f9eb358b83c4bc4e9df79adfa66be1e4a05f2bb225af5e7b3b5b4bf1f98291b6b322105a818e38d1e96c71f1b19f97cc61ac7b152dc3a97fa1b952a542 +DIST rust-1.94.0_beta20260126-arm-unknown-linux-gnueabi.tar.xz.asc 801 BLAKE2B c16911baf1d5562386a67dba11d7015f2241536352430547563705fac4cbacb481cc43501481258d8cea323691be4145a6ff5d902980e1e41843e9c790297eca SHA512 487cea04137280d2d8096fb72d699fa87686113768392f9d5fbb8ac11d9331d2efc8ecfe033313f76a9ceb768e94d1afc0981222883481fb17712bc9c24b2034 +DIST rust-1.94.0_beta20260126-arm-unknown-linux-gnueabihf.tar.xz 224825776 BLAKE2B 3d1314e6f5b094f959740ac3a69a275f8b5db2856a603f06f21ead3834a1fbd7bf608896f4d29b1f85c8ca0a8d890149b22d321067788f474fef84b21c9b403c SHA512 6324bad16d47e988a7ad3f70627a6c167e84931b608948116e831abc98ec1db5433afc94e8e23973d55f2fc49cfa7164fd6a3a3899dbfbc1ccc55e90c4083d5f +DIST rust-1.94.0_beta20260126-arm-unknown-linux-gnueabihf.tar.xz.asc 801 BLAKE2B fd85fe16dac668afcde65e34a3b1ac5c677c284032b84a7da35fdce437bfe2b37f73f6f911bb86780d3cbfbed6fae973967e3eed854125a0f910098169e2452f SHA512 663cde4e969f9ca6823549e5383413bb3f12ed4c4901dc7deb92bbe2db12e7e8ce19fcb79dcbd0c8a73a7ba50ca0887995af9322d90bf52b378c7d68f05784ce +DIST rust-1.94.0_beta20260126-armv7-unknown-linux-gnueabihf.tar.xz 227744888 BLAKE2B f5b1689909aded7fae0450180eb314f04c79ef85457fafc9b851bc773ac049b8c31539b169beca0613a7e4543be2fe52e5c172ef4572b79ca8051c96a5a54ca2 SHA512 fac8e465e76811e0f777e5c33d49a72274c7ee4d431bdb4a840be4483c6cca8109ae8e1495619b73869b81e37a8e8ddaa4f3f1057e80d30982cb967e6397a1b7 +DIST rust-1.94.0_beta20260126-armv7-unknown-linux-gnueabihf.tar.xz.asc 801 BLAKE2B 8eb297501d62405b88e3030b619ffd0717857c9bfd6ccebcf3557759c6497755f41966ea590ac52ae029c177f9d54d0c6b895176e6bf39072aed2abc19ff24a3 SHA512 75ebc0b18f51131ceb11521b73b6c7f92b42f97d0ebb0bd9a7f7af78d030e29bf03193aea8843369e6b04751a2ae0dfdcdfb7e39053b007a841d432bd5104539 +DIST rust-1.94.0_beta20260126-i686-unknown-linux-gnu.tar.xz 265952540 BLAKE2B f354fb7fc9f2ed6f65722517be8481f7b874d4dec16758e9adf317017663ddbfc3d1c790e10d564238d91269f0d229a625e112d4a344c59344fa87631d599d4e SHA512 21e4df8ea185cf0076f5ac9508af7694b92b771d98a7347767424bed56d4d26c61d3fca7a1fe641a930aaaa0a1180dade7c114fa01bc6b3afe3b2bbcda93207f +DIST rust-1.94.0_beta20260126-i686-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 5c8a0f2d6b28c13448f8e544400640391865549b87834c7d7b602868170ba9a0d16b598ab5388c78d4e60e67603eeb1f4ae79c5816317feed285bcdea38b1b3e SHA512 7a692c6d0525287e8ec2435d4b49da0fddc76a69632a690eb6f82f8dcd0978d5998718bc79a64dd7362631a50df4c1f9e8f3d6593dd6b0d876714ba754fff76d +DIST rust-1.94.0_beta20260126-loongarch64-unknown-linux-gnu.tar.xz 258096488 BLAKE2B 431ad674b4dbafdcaa8a3b3435f46234b83aec66d3ed2f569dc883f9e39e759eb891492ae68833d1ee521d68cf2d6becfab3a80bdbf0c79c55a56a3f2bdb01e0 SHA512 ab5dd6e064713308a20269d71d7b052c7aeaba5146e3c326c0156abf9148cf4270dc59ff5380259a6109549054e8d6dabb8fa46d24f8bbbbf4461e54052c09d5 +DIST rust-1.94.0_beta20260126-loongarch64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B f0389163837d610f035ce7b363054bb36179f0f474836ddcdd09fdef62b30c49e526e2e59a25236e3bf5a65693fea57d44974a0b42afd9ab01cea7fc6272b3d3 SHA512 58b239444d0c9c18540ea957c1f736143c14ea8cddb391887f87239ca4baf20a3fb607e542ea91b831e1eadbdd2eb71edb38e08b02c90666db904ba65b356f35 +DIST rust-1.94.0_beta20260126-powerpc-unknown-linux-gnu.tar.xz 248126076 BLAKE2B 520e1d74affde610d76fc861fa3e8ae559ea13fda710aff94f1d2249fcf5429f8dcc830c73a97c89d13ac61d8fcacde8bbf88c915c9ad30ddc93a2948c38c2ce SHA512 6e2185004d66500770c4efdb469008781d5c5e23b5843401d1919757828a91250d12db2277dee15585b980258a3f71defa6ae24bba276407f709a11cec837870 +DIST rust-1.94.0_beta20260126-powerpc-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 1d604e54feba24deef8245bc3cc871d6467b3ff5aa3197c72fc53b5908d4b9b477f096b0f2fd7837eea00071788d3d1fe163b88857354b085f47f721c51b87a8 SHA512 df629935aa4366635dfa391d1fe860b557d9c9322c306b0c15dbefc55d1d15c061f556bf0d280c8e6b11feee22c3ded466341315f36293e387246ea974d0ad5b +DIST rust-1.94.0_beta20260126-powerpc64-unknown-linux-gnu.tar.xz 249692872 BLAKE2B bbf95391a8900d09bde3c28653508c74e0bc6897507f2163a093f1884f087395ed1667665c85d8a85f504ef9029f0d587b2ff4060e4135c78bc571f360d6031f SHA512 5062e42c2fb42db11d8424278864a0b4b8c4cdb96d24141561ddf0f94319b446eae29872dadd4be402cc66c46aa7d2cbb948682be954b2f27f1afc779251ef15 +DIST rust-1.94.0_beta20260126-powerpc64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 46f123aec3459c687107445c7e8a50a6717b3c17d106ffb25c882e6620aef256ee9856d2a9d55b5ff94c2f07f6961688738ed0092aaddb10c1cfbb5abad68327 SHA512 50b3bcf3b57ed7d1fb58a270adcae46bf964fd2eea439985ec744b09505b227abdb0a2ecdec4c31401e0f413e5760d9826315f4f432db1cc90bc0264b9cfa138 +DIST rust-1.94.0_beta20260126-powerpc64le-unknown-linux-gnu.tar.xz 266994340 BLAKE2B 995b50a64114a8f2f215e8f4a9510628de4ed51b5ff4bdcc7d3410569a6417f04c1003c481b590f284e0649cbc9116974fe12837bb31daa546766022e0a61d1b SHA512 e653f419369f69f94285cf231104d8f1e0e86e8dcb91e77a5e1f8de03ef3153326663144db1d57f654002619b64a5af725d9a8f5bec840ce07581b8e1711083a +DIST rust-1.94.0_beta20260126-powerpc64le-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 102286e5c201fd5f9dc639b5fc26c7807c7f9721f3f60a9430445be32ab150f28bc1c90f5dee670a9ccfdb1e4038ef8c5598546bb95a676a523b685e92e36e84 SHA512 9a031be32ad26f14b7dd2d6f650d8cd8c20db53d1ae1b16628a29e6a1f9b55ea969d7252cea8ffc67eb23741f460d2daafbf9c15954a7801d33805744ee4893c +DIST rust-1.94.0_beta20260126-riscv64gc-unknown-linux-gnu.tar.xz 246822616 BLAKE2B 15328924c3edcc448814bac354af6571b5e7360eec7a91d275e8b871f3e7328b58622f3c0b07e38c63bf5a1de4310e20bcea684fa7c938516e6236d35a303d8c SHA512 62c95b717be034da38740ed48dfe33483ed556c25f9372182dd5e28e2dec90a59f63a6c2e00de859f2c6316ccbcf13b33945f39aa0b2d5efd0b0501ef0c8eb84 +DIST rust-1.94.0_beta20260126-riscv64gc-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 9a7010e29271bdffa0c7a24ce818176065a70f78f9cb90d8c91c377835384bc7f23dcbd42df22835d02c8761c2c063f4f6d7fc8534c6e5c552c1998fab27b28b SHA512 a095f45c3e157c0ce227688e3a09afb0fb1367ff38d626e9a2b9f1f26c319ff0f2914d64a04c284057444ea93007aac0394d7aa9fdb05206b9ffca48c89b011b +DIST rust-1.94.0_beta20260126-s390x-unknown-linux-gnu.tar.xz 236999948 BLAKE2B 16ecefaa58141ca2f65d8ecbcd8a9df76aafea347bb7e7ba4355ddebc9e517c6735e73ddbaad33e7e265843d2afe8dabd9117b43a38571d42f66d370caefacc4 SHA512 b0c2864d0dd50b549a61ed1028469fe499097ad4e785b8f655e5349ed0ee3d4ad6f8134e40664d831ad2c710fa12adacc1b3c6b48474c4958011ed4e62aa5f21 +DIST rust-1.94.0_beta20260126-s390x-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B ec88f6fedaac59a67ac3c122860956d9271216f87bd5a8a1c74bca66429938f4cbd4557a09ec64e75f46e46ff5fb01203bd2861e259c54f54d47503250d1edf9 SHA512 bc61d8d7bc3d7067e7e68049488b0d79b6ba7a3b3121bb4a655c3b5f675f2cba75129fc80d9fdd760ca9729fae4f39c8ad2a2ed339ec73560041510ab7df6517 +DIST rust-1.94.0_beta20260126-x86_64-unknown-linux-gnu.tar.xz 191891384 BLAKE2B 2b898c06d3a508a01e265d912868dc6fece9e3ce81cde02d2393becc93ec8cb8fb22f5dbd0d45a85211834d267a29f6854ac329dda99620dcf483e387829006c SHA512 3d3513c20dab261c8d453e2c43c408f9a4723131a14ccb1cd152f79f2f1781ae46c9bb9aeae600894a24d3eaa3873960f695b30b7bf0b187f42315598e40c66c +DIST rust-1.94.0_beta20260126-x86_64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 880837aa601de29e7537fbe3315bb937bf59afcc297d83dccdf166218b877bd587b6338b4af1cdc959b62cc4bdcb43cac42740870225fc1f5b3772de23f1a2f4 SHA512 155b4ae5fa98172ef759a645e14bdf354ccdfe317e28687fa5a6f22881ac7d31a3ef3b2e96070ce9ca109e2483f1b8c5db18d854852eb707b74fdc6e1cb62a6f +DIST rust-1.94.0_beta20260126-x86_64-unknown-linux-musl.tar.xz 294116548 BLAKE2B 6d67a659672ee76562ae2e8d1d0d8ab0467d97c58cff7a6d6efd339965a6f772f742cc6351738435e5c85055af12e8da13c55619b655cae41e8a52c6652c67ce SHA512 aa29d147b0c4dccce2ebbcfe33eef7be6579ddd37a5a546b5d130a21e95baefff692611351d0d2ab3338924932d349ae5991aa9d621076e6fa6ac763b8d33ac9 +DIST rust-1.94.0_beta20260126-x86_64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B 897574c08c7c21f4e9a48ade315b19c4c0b3e68334f48f38faa6db8b1de1bbfa219b48abefa2ed227e452d321acf2b2e933206667a640d443b8f33db54c90882 SHA512 a6ce3d04f08169b6cb4e0d44629ebd7016605ffe5f48499a3b83fe841dc1e3cc99e5363f109db5be8a85836b2d74442de440b0d8e14024cf5781e401429a1d63 +DIST rust-1.94.0_beta20260213-aarch64-unknown-linux-gnu.tar.xz 168378596 BLAKE2B d7dd9bc35cdd1e9fc73c1aa1ccd5d80cb6d6d512f1b6302c4da1b786ad6201a26f6021a1b570b4dca5d020de7d9188a8ba1e4c0978fb2a6f89beb5b9cddd15e4 SHA512 40e35c1002963abd2e0a084b891af25e2cf2fe89fec4bf1c50f7f535031e602960c3bfb1ee2416a513c16166fe8f2ae7cdda801dbd5bdd80611bd0155698e9c6 +DIST rust-1.94.0_beta20260213-aarch64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 5ea94b80ac9801461f1896dd0d9c45b7d7608171b1275fc30d88a39abc89608f9a0ba31fa379be7df5a1d87b34575d0cb05f584099c8ea4be8c1073d230a62d0 SHA512 4a23732c0e3b338c627e362dc9e12cb643534c1a28881a7073a885822c847ed6a510ce128acd1c60bc7592ebd60566082dd50b7e65ab069710199a8eabe0ddf7 +DIST rust-1.94.0_beta20260213-aarch64-unknown-linux-musl.tar.xz 242012348 BLAKE2B cda1d8c3330407aa29100ae9474a7be001c2f043632af84f8b3244353a990e05566008a1f60374b74bc7463837563e96357b6df3e9fe191dd6708d1fc9fb8b78 SHA512 26a43374c9d23a293d34d0f624b49194d7ce25329ff3f4338e43d7df2b90cb331f73d13522b7d0429b682a693a034a195a3dfa9ba28fb1de128817459c1792fd +DIST rust-1.94.0_beta20260213-aarch64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B 6a85c2598c78a1fad685aef0a3c9f4c0d1ba897ce2aab37f582cdaf9ab282ee45af0b79984460eef744fd148d943ed22623ffbc8a08d940c3f386a8e73d1bb39 SHA512 bb5a22982096ab0235602e84e049ab9d53e6249848d110e5bf2997951dfd7ad2b7d09905de879e7c551eee06f436dae8888c09929aaaf94981d018218ece7893 +DIST rust-1.94.0_beta20260213-arm-unknown-linux-gnueabi.tar.xz 225064504 BLAKE2B 36b548367d10c23ac064627ad1a2556c9af89419c6890f9fd2023d32445d97ce2a9158d093287fbe2f219077198023017b87db59e2b6b05ad18f8656f95788b0 SHA512 2cdcd7007ffa2865878aec8d71f6b0263fe10f26e997687ecbc0e56a07e28bb2f152e41cb89f1af5031f2bfa58661c5e0eb436e4b6c1a1199c54ffe8b80585d6 +DIST rust-1.94.0_beta20260213-arm-unknown-linux-gnueabi.tar.xz.asc 801 BLAKE2B b0b8096bfc10605c7f5a7f43f82e46a1c6e5e8cc968df247d18c0bdbab3c9bc76f1907f012c351537188aca9115becbaa9af1cf8ff5c27b5c637a991f5b1a372 SHA512 61384fd238d1145d5a828a0689e00bbe1dfd2071e7b4467cfadb77e8ee6992061b1ad0d71cc726a5ab7b736e2a7d2e8300759930302507322cb218ec066c73ab +DIST rust-1.94.0_beta20260213-arm-unknown-linux-gnueabihf.tar.xz 224786000 BLAKE2B 46d0b8e221777c7e290ac70cc613c74c74cefac476008f5b8eaa11abc2e7bce778d5c56b9067626a93bcb287bd196518b9bfa8ef97a6216f4814250b216a0891 SHA512 24047257f5dfccb1de49d032443ca2fd78bc7aac74baf63cb8fbc09561eefa599be8292fdd17cf11248c3949424c178ea174f47914a31753bb97d60804cc1714 +DIST rust-1.94.0_beta20260213-arm-unknown-linux-gnueabihf.tar.xz.asc 801 BLAKE2B 838bc2a98f68592f674900efc483005363901475b7b6f020f6681735491929f946a29c43ba3d6d60aa3d25fb26219028b03d3306f79fdbacf5721a1b5cbdd79c SHA512 a7258bb03ead1c75fd9acec225281a26ef9024f0149ddd8c0b8dc797745ae8dd5adb0e983f07646c041d48e46608a658810c10048fa50fed60d8d7740daa1849 +DIST rust-1.94.0_beta20260213-armv7-unknown-linux-gnueabihf.tar.xz 227673448 BLAKE2B 9bb073bb896e06f0889ca7f4138c6e9a005abdc7633736c86c83969315481646a075c94ea3c5d260d885816551a43e35b80b3926c17c6cceb0ef362b5fc9a3e9 SHA512 637224d287981671fa710f4e35d97f9786409afd5dac2001c98cc04d7bff9cbc8bb47aa38dc8d27b9d99d9bf40068b929be98c711fc32ab7146f4babc55b022a +DIST rust-1.94.0_beta20260213-armv7-unknown-linux-gnueabihf.tar.xz.asc 801 BLAKE2B 4c5b9365c5ba2726ef82d49bb635e0c343054c599237106184ee7ba00e41f7b1a2463464e392bdfc154e817205b3820ef4e85e1215d64a8712b94a1c839e5f1e SHA512 8f34ec52fc3887994493334a5193e975fdceb83373606640d3b7a79731f02a1d9e3ee6548b997c459fde11cfafbe13bd8e1e81769e9319f3af383e98965e2a86 +DIST rust-1.94.0_beta20260213-i686-unknown-linux-gnu.tar.xz 265927492 BLAKE2B 3018f8f08ce38ad0493915272ec188cd6f2161ea9bed401a2efa62a6719dde7b0684e3d3dafed48a63983b8f66e5490165d64f898a452be92a2cbab811b895be SHA512 78a22a5ea69d7468b9c6cff3a8a44ce4eb8ebf9bc3b85bf04627516528cf659d1f106b01050db79f0735d6cc748bd31d564b6d717c905daa87332179f9fc996f +DIST rust-1.94.0_beta20260213-i686-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 028b2e1389ddaf85354a6add23cac9d67d4ef0bb0fdcdc848b791572216a2c2b4909be65e6275f0b626618edfa4cdfe50115a50d5b753c699d828d759bd874e5 SHA512 97fc8839e869949708dfd1feb2fa84d02b0f51d31b70aa905a531eb7bd69897573e4b989dee9a22a383b20bab16775b24a56a47607ac5d5439f8707b6b9e34f1 +DIST rust-1.94.0_beta20260213-loongarch64-unknown-linux-gnu.tar.xz 258143500 BLAKE2B aa3012864319906bfd4f6baddfdcc5ea597ee76710d6da0ba1df121fc1eec3f3af42c8bd46c9238112d3a0b0e0916128238e555181d10761b49462d9a0a0c8a9 SHA512 6f2be53f6dfe00fc3a3cf979f353ab01bb410eaf0c5fac4b6286491f4d5d0faaa188fd69f7161bdb9cf3c40537f5569816e320967b0a4868110dad058d0bccd1 +DIST rust-1.94.0_beta20260213-loongarch64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 2c1f2f4b267baca2cf6ee4dfde77de2c02942205cfe1c1ab83a0995f4bbfff8168e7dccbcfebe7bd10df8a232d60edf6a90d541e30be4b2d154b6396b26ce8a0 SHA512 a8e4cf9b5901674544b9c3c85f7eb6911c5a8119721f7387f1c673aa71a685120146fd2109ab08f29c745ecc47cd7d92b1cf79b2e012c0bb814ef876e9cf0fda +DIST rust-1.94.0_beta20260213-powerpc-unknown-linux-gnu.tar.xz 248121252 BLAKE2B bd66faaaa98990e130efa13db942ab0ecd47e0e38cee1bc5b25813cea4e5c9d26a58038c6bd96f97b9370a44e8fd13aa4b61f468d7517a46bea21be20dd8f7ca SHA512 146ab109761ae429f1be19401a0935d8ee8c0b755fa4dd6b9d0871c1c6c5c064714b50281e888f1454d83e1f32dcd1e119d02b204b35b92b5af592b51a65ecb0 +DIST rust-1.94.0_beta20260213-powerpc-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 2a05fb4c3e5df4217ad491e946aae0f2474a9d716fa3d9a9b9f87b3681c3a29c1cad732aca4178b6a7fbed73a2b5309b5579a6b84b266b500f0a6ed336b745f7 SHA512 517d9e93e34efd5e3becf4489a14ed621d98f8696dba99cb8a33941c0717d1fa37b17ffda1696223fdf1cb8373cc07b92981967a15d225469276929a4a258197 +DIST rust-1.94.0_beta20260213-powerpc64-unknown-linux-gnu.tar.xz 249758504 BLAKE2B ce574b427cd19be98bf6901102d7c2e8d00e2b966af7ff7029b7a6c420af5cf4dfffe86b50c9d6c6e55e80fb428ab29f86599761c0245b2e03fd5a1f8d73af06 SHA512 2c3407ed52fdcc5dea7c80b808fdba8afb829a9b823ca071657b047c27f2978be83b8afb6d4e9313ac0d12d797b9ba14c3685a2a9d2ffd27c4a0f00418f679bf +DIST rust-1.94.0_beta20260213-powerpc64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B b269d802fee0690a5932414241d522b0de95b57745244f7f616bb853e1f9e64ca6e47fc4313187ff656c68a38241d57c0d25c3a005f3716df6492e6906782715 SHA512 4c589e68009a7a46289eae4482724adef0c944d2992e50ab16aef119c18abec53f7e16c4b38f96e5c69e05bcacd068796283c963de1d081b0ed82c78fc42897e +DIST rust-1.94.0_beta20260213-powerpc64le-unknown-linux-gnu.tar.xz 266999560 BLAKE2B f99d2019b47bd1caa3f33d5e563e989fbde528c9183d285c5a4c7c1b72704662ba805a82c1b15797bfcaa0f602979ff8e13fed0895779f10267d3d3709fa2c9a SHA512 41696bee646c791bb53e8377d06ba99de5374e3ab6c88b24748c04d15f90616b935d5ea83cfecea6c7524a3435c68c687265094716ec147637fb9ac77172208d +DIST rust-1.94.0_beta20260213-powerpc64le-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 043c7e19b2b7b3cce860e2427d9137ad7641b36bf102ad345a7b9e07a4bf0325413b03dceaf743d981ec6228ce60b5ccca1f7103cc1c46b42b2a6e5baf758846 SHA512 2fab867116c6d53865871f08e1d2da367a3aacb104dde41e019832d3447f54a30f1aa1cb910a1e39578eecb13241a2ebcb2833dc4ff192a02d15bdc29e31eeb8 +DIST rust-1.94.0_beta20260213-riscv64gc-unknown-linux-gnu.tar.xz 246928356 BLAKE2B 43b1a3413baa20ca573ca7653a8f07520bb446a0438e27475d753fbc6ba9becdf84ae409525e0dd65a456e51ea9276713ffec3af0ccef6adc7f33ba29598e47c SHA512 d342c250d90e1e6d6b4d5b7b5a41b4406152a414435de7a32ad0eb8b779d03b54def8c48e1ed23310ae3a0aa570e94693dd72932952421bc3dc5249a38b1119d +DIST rust-1.94.0_beta20260213-riscv64gc-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B b59fc15a1b946680952992e8738105bc7e36d0dde27e7e9e275f46e9f6e9748c503cc74571797d5af65788ef7ba61a2983e62f3c5fbf6e254acd6482cf3af0c6 SHA512 55a7fc8d93600708d6c524c1c99c492074de9aa87d259d6c390dbab41ce979d4ed7bff5b5230745ab0ae83134661719688b9e7d613470a3225f5b3ad75388611 +DIST rust-1.94.0_beta20260213-s390x-unknown-linux-gnu.tar.xz 236977636 BLAKE2B 77bcb47b9c0ea77eb2929fe590ee362ab394021cf9814958a2faaf855ad2dae086b6c86742112cd0ad5bceb9b8f4fa8eaea5208f38fccdd9ad83c1088bac2f93 SHA512 749366d29077bd7307e83e81cb74f78aaa5d068a2097027070e0043c28314fb169613bcc4ec1adfa09af5a2f206ab44a91b99ce7826ca0c3e8b81fe5476ff77d +DIST rust-1.94.0_beta20260213-s390x-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 0ebc2f5acaf3f980ce9ffce2fa01dafb799ff3d1b515350abe76c282764869557c8ccd8e5308ff8a8238a2cf6fce21b326fa78b9e887d756076338997e9ed8ad SHA512 147624d9f6429fe0048f05580b6f7064585e73978457c2a0e36137b7daef5ccd8d86d94627aec319898ca38a02b86d6a2b95851799d227c9a1e6833b8a339381 +DIST rust-1.94.0_beta20260213-x86_64-unknown-linux-gnu.tar.xz 191900460 BLAKE2B a9f47c1c27e0663e5ee9bb9f7d3b47197dea73a29ac5eb007bd4682e2628050c1144009577226a893289f7d767d1d18fb697cb10ef57910a554125372338b23d SHA512 059721324a6a7ba49edc1fbab870f0bef36ea65d18f0ba60a7e15760ea2f384f4e8515402884ce8287d0530c0ce24580a12dd9c18d604d9eeb02c00bfc54a948 +DIST rust-1.94.0_beta20260213-x86_64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 8842baaff09b295e48aa493e28bb48175983410b602322765a0bad5018ad0e9b0ec4579d04377da35258d12dcec5348371119b12dd2b874f702ed4a65d24b404 SHA512 e86fa5386d02b080854bf1613512a40531c61a940c5df7368508574dc8882413f9085ace73251d2ee464ec51713ef637ed8eb3fbdf3597f72a191a1125fb022b +DIST rust-1.94.0_beta20260213-x86_64-unknown-linux-musl.tar.xz 294179400 BLAKE2B a006895e25fcec37dab3ffeace1661933cc0f38a0043839093194e41584e9d40beb2d900c93e4cd49089a4c2191249c8454d058acf6e528aeb459ba83f7b0611 SHA512 4e178cae7ee2a94c5e4a9266a4afcbb3fe2446e19a99f27b8257087a8d54a86248768eeaddb635191cb7348875d18fdb5308bbc7d4691516575686273eafa105 +DIST rust-1.94.0_beta20260213-x86_64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B 485555c731b3e4d693e8d7f3dcbc8efc6b956a3203527c4f1323c7392668a3b6f0dddce73df2480d8fb073a0e3c6f535cd4fd1128a42211fb4828dc7478e4984 SHA512 7f7ea1fcc2b0f699b1a11dbcd840d7b9e9d117d7e893c2fb6ff37e83c71d98bdb256835680b1f766a08e100275d5e69ad4603fcb714d6736f76653feaf119dc8 DIST rust-src-1.74.1.tar.xz 2544036 BLAKE2B d95431b69f102782f51878ff73ce8802cac6dab7909497c3231d1c479b95dc2a618cc6efd8bac9c6bd59a2b10dc6be05199f1e1bd74e45cc640ee52352c29268 SHA512 11467d0936193c5a5be8c2eba1aefe2b7028af48494698863de2c4057d68ce33dcee1fc66dc2d68b1d32f0202ce49e9b906727849de8f8d904dd07930e76d5a4 DIST rust-src-1.75.0.tar.xz 2570256 BLAKE2B 9db7ccff07ffe6991233e9f530321fd6ba48c561dcf1226537afa70c7d045421d8e83c5300b0866ec6fccfaae96dd67b9f204e9e0e12108c0c766d467cd78909 SHA512 e7565cea2f1658a05237a698e38880df2544319b41b6d8b0805db5f1f94fd3bb4f986967d0440fcdfe3a135e33246f3c747665b964f57ff5942f56133af78cdd DIST rust-src-1.76.0.tar.xz 2590884 BLAKE2B d1a6215dab34d7b10c3177d2b248f997d3a846388f3442567572880aa5c5bc51b56398f5d4dc32727cee7c9dbef494430d6534a76b66c4ae5ac4fed07266644d SHA512 39d2fe58fae8c8c5a6cb3fb1ef2a1c7548c018fef6ccea531659fdfecd68a4aa77125299d2cbe5b58e500337b4d074928318fa9ebce358af500d0ef27260e3ca @@ -759,3 +871,7 @@ DIST rust-src-1.89.0.tar.xz 3461444 BLAKE2B b1e43def4cc0f47f0e776d383954b339a62b DIST rust-src-1.90.0.tar.xz 3473408 BLAKE2B 09e9d17af7acb38b99e33874cd4b14ad7e0e15b0580846cc32bc78657432b13091bcbf3fe95494c520bcdbabd5491b9445cb3ce3177fa149d0b89991b67b06e3 SHA512 88dd1a5f1a69ab9e4586fee4a31d7dea51a664ac32b501cab771739b8127eb4ac873d2353e819ef057734522c1bcd64d664bda3d1ff957b1448b4653be766638 DIST rust-src-1.91.0.tar.xz 3509292 BLAKE2B b1cf99db4cbd864fda34c2068a19e8b36c99f6bb5c2fa3c22ef7aa006d4c084bd706fff872a7f87a0ded3db3dead5927153183e4425ffd90e51af468a29db48e SHA512 8d7c5a3aa11b42d5b89b38d1167f6be64de49288738e0fd949d1fe9ac3312830301d578a13de2030b45a7c51179b5adb934deb52e1070afa76520944050baa2e DIST rust-src-1.92.0.tar.xz 3530724 BLAKE2B 1385e8cc8062dffa69829e4ffeee7daaaeddc35c20c5e841e5183952d2eb8e3c33fe64deff46a7017057723ac3623f1b918d6a61ba2efadc6501bae36241c161 SHA512 be31d704b936d421dae7774dd7243d2a2668c54eac07f3e8d6c289a994c9e238a6e775be2735c4b609e710d8bbb1afe9bf028375e573e5d16def58a53ebc4ba7 +DIST rust-src-1.93.0.tar.xz 3722768 BLAKE2B 9b80cd62e3345cb523fc1596dc1957c03a5edb42e9144fdf1466959ebf347dba3725a1a777e9197dcdbdb7b99ef3cc6d2de9e6359c245db2a919064a2a92f91e SHA512 02535cf5aca3efdc708d959c641994dc3f7f60385afbe3c4aa14037b5b7107ddfe1af0bca6493b97e0144e5d31e45937fe86b026e48bf6231ac7efd404762d83 +DIST rust-src-1.93.1.tar.xz 3722488 BLAKE2B 61a63c8eb169917dd9140ddba06fbbf8e05ce54ee7331e6fb906eb705c69615922502da72f3646d35cf2a126b1624f3afe3ca45b611b6c7ebed843a38f8e6a3a SHA512 5d4a5a3dede3b0334c779e9936030cfa46577600ee6d69e92e190d04c26c6020d262a6fd4e9b4516e7325a0e256ad18bc6d659bab0c638aa53dbe76f7d4dfa0f +DIST rust-src-1.94.0_beta20260126.tar.xz 3749064 BLAKE2B ff884008033aac3b7bb9282ec3d4d4d43c2280a0514d3e43ccb588c545057a4df241b7645dfe679d6b4dfc1ac7de1f5df02ad33c8a5fc16185e2c3c775b27acd SHA512 9a76eff1af369eb29f646d1125e37cf140685c3aa4930a75bfa7a6b299672c46525db06b2459626ddfa5ddabd26dcde297e8dadf0158ce302c2fcd5663769cc2 +DIST rust-src-1.94.0_beta20260213.tar.xz 3749440 BLAKE2B cd8e864bc1f09d365e1810429e294693f79b72e945f913e9a16c5f423544c584784388a3ae3ec6da661720ad16040ff5a70259b8b65f6100249ac4ffd97e4a17 SHA512 841bab85c546d262d1b35f751e18e7b27585e3fcf21b6d2a185daa07294ff7dfaffc50c59b04334595c2f61e80b3582986c4bc2fe38716ab4ef89aa1ff86c656 diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/metadata.xml index 4dca673dc67..74a0ec35c5a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/metadata.xml @@ -5,10 +5,6 @@ rust@gentoo.org Rust Project - - navi@vlhl.dev - Anna Figueiredo Gomes - Install clippy, Rust code linter Install rust-analyzer, A Rust compiler front-end for IDEs (language server) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.92.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.92.0.ebuild index 6263ae968e1..11515dfa5df 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.92.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.92.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -27,7 +27,7 @@ else $(rust_arch_uri powerpc64le-unknown-linux-musl rust-${PV}) ) ) ) " - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" fi GENTOO_BIN_BASEURI="https://github.com/projg2/rust-bootstrap/releases/download/${PVR}" # omit trailing slash diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.93.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.93.0.ebuild new file mode 100644 index 00000000000..edbb857a50c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.93.0.ebuild @@ -0,0 +1,337 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_COMPAT=( 21 ) +LLVM_OPTIONAL="yes" + +inherit edo llvm-r1 multilib prefix rust-toolchain verify-sig multilib-minimal optfeature + +if [[ ${PV} == *9999* ]]; then + # We need to fetch a tarball in src_unpack + PROPERTIES+=" live" +elif [[ ${PV} == *beta* ]]; then + # curl -Ls static.rust-lang.org/dist/channel-rust-beta.toml | grep "xz_url.*rust-src" + betaver=${PV//*beta} + BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}" + RUST_TOOLCHAIN_BASEURL=https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/ + SRC_URI="$(rust_all_arch_uris rust-beta rust-${PV}) + rust-src? ( ${RUST_TOOLCHAIN_BASEURL%/}/rust-src-beta.tar.xz -> rust-src-${PV}.tar.xz ) + " +else + # curl -Ls static.rust-lang.org/dist/channel-rust-${PV}.toml | grep "xz_url.*rust-src" + SRC_URI="$(rust_all_arch_uris "rust-${PV}") + rust-src? ( ${RUST_TOOLCHAIN_BASEURL%/}/2026-01-22/rust-src-${PV}.tar.xz ) + " + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86" +fi + +GENTOO_BIN_BASEURI="https://github.com/projg2/rust-bootstrap/releases/download/${PVR}" # omit trailing slash + +DESCRIPTION="Systems programming language from Mozilla" +HOMEPAGE="https://www.rust-lang.org/" + +if false ; then #[[ ${PV} != *9999* && ${PV} != *beta* ]] ; then + # Keep this separate to allow easy commenting out if not yet built + SRC_URI+=" sparc? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-sparc64-unknown-linux-gnu.tar.xz ) " + SRC_URI+=" mips? ( + abi_mips_o32? ( + big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips-unknown-linux-gnu.tar.xz ) + !big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mipsel-unknown-linux-gnu.tar.xz ) + ) + abi_mips_n64? ( + big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips64-unknown-linux-gnuabi64.tar.xz ) + !big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips64el-unknown-linux-gnuabi64.tar.xz ) + ) + )" + SRC_URI+=" riscv? ( + elibc_musl? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-riscv64gc-unknown-linux-musl.tar.xz ) + )" + SRC_URI+=" ppc64? ( elibc_musl? ( + big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-powerpc64-unknown-linux-musl.tar.xz ) + !big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-powerpc64le-unknown-linux-musl.tar.xz ) + ) )" +fi + +LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" +SLOT="${PV%%_*}" # Beta releases get to share the same SLOT as the eventual stable +IUSE="big-endian +clippy cpu_flags_x86_sse2 +doc prefix rust-analyzer rust-src +rustfmt" + +# net-misc/curl is needed for our own bootstrapped rustc, since cross-compiling bundled curl is not supported +RDEPEND=" + >=app-eselect/eselect-rust-20190311 + dev-libs/openssl + net-misc/curl + sys-apps/lsb-release + || ( + llvm-runtimes/libgcc + sys-devel/gcc:* + ) + !dev-lang/rust:stable + !dev-lang/rust-bin:stable +" +BDEPEND=" + prefix? ( dev-util/patchelf ) + verify-sig? ( sec-keys/openpgp-keys-rust ) +" +[[ ${PV} == *9999* ]] && BDEPEND+=" net-misc/curl" + +REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )" + +# stripping rust may break it (at least on x86_64) +# https://github.com/rust-lang/rust/issues/112286 +RESTRICT="strip" + +QA_PREBUILT=" + opt/rust-bin-${SLOT}/bin/.* + opt/rust-bin-${SLOT}/lib/.*.so* + opt/rust-bin-${SLOT}/libexec/.* + opt/rust-bin-${SLOT}/lib/rustlib/.*/bin/.* + opt/rust-bin-${SLOT}/lib/rustlib/.*/lib/.* +" + +# An rmeta file is custom binary format that contains the metadata for the crate. +# rmeta files do not support linking, since they do not contain compiled object files. +# so we can safely silence the warning for this QA check. +QA_EXECSTACK="opt/${PN}-${SLOT}/lib/rustlib/*/lib*.rlib:lib.rmeta" + +VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc" + +src_unpack() { + if [[ ${PV} == *9999* ]]; then + # We need to fetch the latest nightly listing and get the apprapriate src_uri for our arch + local rust_bin_url rustc_src_url + # Cut down on webrequests by fetching the nightly toml once + curl -Ls static.rust-lang.org/dist/channel-rust-nightly.toml > "${WORKDIR}/channel-rust-nightly.toml" || + die "Failed to fetch nightly revision info" + rustc_src_url=$(grep 'xz_url.*rust-src' "${WORKDIR}/channel-rust-nightly.toml" | cut -d '"' -f 2) + + if use rust-src; then + einfo "Using nightly Rust-src from: ${rustc_src_url}" + # We need to fetch the rust-src tarball + einfo "Fetching nightly rust-src tarball ..." + curl --progress-bar -L "${rustc_src_url}" -o "${WORKDIR}/rust-src-${PV}.tar.xz" || + die "Failed to fetch nightly rust-src tarball." + # no verify-sig here, just unpack it + tar -xf "${WORKDIR}/rust-src-${PV}.tar.xz" || die "Failed to unpack nightly rust-src tarball" + fi + + local v + for v in $(multilib_get_enabled_abi_pairs); do + rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))" + rust_bin_url=$(grep "xz_url.*rust-nightly-${rust_target}" "${WORKDIR}/channel-rust-nightly.toml" | cut -d '"' -f 2) + einfo "Using nightly Rust from ${rust_bin_url} for ${rust_target}" + + einfo "Fetching nightly Rust tarball for ${rust_target} ..." + curl --progress-bar -L "${rust_bin_url}" -O || die "Failed to fetch nightly tarball for ${rust_target}" + if use verify-sig; then + einfo "Fetching nightly signature for ${rust_target} ..." + curl --progress-bar -L "${rust_bin_url}.asc" -O || die "Failed to fetch nightly signature for ${rust_target}" + verify-sig_verify_detached "${WORKDIR}/rust-nightly-${rust_target}.tar.xz" \ + "${WORKDIR}/rust-nightly-${rust_target}.tar.xz.asc" + fi + + tar -xf "${WORKDIR}/rust-nightly-${rust_target}.tar.xz" || die "Failed to unpack nightly tarball for ${rust_target}" + done + else + # sadly rust-src tarball does not have corresponding .asc file + # so do partial verification + if use verify-sig; then + for f in ${A}; do + if [[ -f ${DISTDIR}/${f}.asc ]]; then + verify-sig_verify_detached "${DISTDIR}/${f}" "${DISTDIR}/${f}.asc" + fi + done + fi + + default_src_unpack + fi + + # We only want to do this for the native ABI. Non-native ABIs are + # handled differently in multilib_src_install. + case ${PV} in + *9999*) + mv "${WORKDIR}/rust-nightly-$(rust_abi)" "${S}" || die + ;; + *beta*) + mv "${WORKDIR}/rust-beta-$(rust_abi)" "${S}" || die + ;; + *) + mv "${WORKDIR}/rust-${PV}-$(rust_abi)" "${S}" || die + ;; + esac +} + +patchelf_for_bin() { + local filetype=$(file -b ${1}) + if [[ ${filetype} == *ELF*interpreter* ]]; then + einfo "${1}'s interpreter changed" + patchelf ${1} --set-interpreter ${2} || die + elif [[ ${filetype} == *script* ]]; then + hprefixify ${1} + fi +} + +rust_native_abi_install() { + pushd "${S}" >/dev/null || die + local std="$(grep 'std' ./components || die "std not found in components")" + local components=( "rustc" "cargo" "${std}" ) + use doc && components+=( "rust-docs" ) + use clippy && components+=( "clippy-preview" ) + use rustfmt && components+=( "rustfmt-preview" ) + if use rust-analyzer; then + local analysis="$(grep 'analysis' ./components || die "analysis not found in components")" + components+=( "rust-analyzer-preview" "${analysis}" ) + fi + # Rust component 'rust-src' is extracted from separate archive + if use rust-src; then + einfo "Combining rust and rust-src installers" + case ${PV} in + *9999*) + mv -v "${WORKDIR}/rust-src-nightly/rust-src" "${S}" || die + ;; + *beta*) + mv -v "${WORKDIR}/rust-src-beta/rust-src" "${S}" || die + ;; + *) + mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die + ;; + esac + echo rust-src >> ./components || die + components+=( "rust-src" ) + fi + edo ./install.sh \ + --components="$(IFS=,; echo "${components[*]}")" \ + --disable-verify \ + --prefix="${ED}/opt/rust-bin-${SLOT}" \ + --mandir="${ED}/opt/rust-bin-${SLOT}/man" \ + --disable-ldconfig + + docompress /opt/${P}/man/ + + if use prefix; then + local interpreter=$(patchelf --print-interpreter "${EPREFIX}"/bin/bash) + ebegin "Changing interpreter to ${interpreter} for Gentoo prefix at ${ED}/opt/rust-bin-${SLOT}/bin" + find "${ED}/opt/rust-bin-${SLOT}/bin" -type f -print0 | \ + while IFS= read -r -d '' filename; do + patchelf_for_bin ${filename} ${interpreter} \; || die + done + eend $? + fi + + local symlinks=( + cargo + rustc + rustdoc + rust-gdb + rust-gdbgui + rust-lldb + ) + + use clippy && symlinks+=( clippy-driver cargo-clippy ) + use rustfmt && symlinks+=( rustfmt cargo-fmt ) + use rust-analyzer && symlinks+=( rust-analyzer ) + + einfo "installing eselect-rust symlinks and paths" + local i + for i in "${symlinks[@]}"; do + # we need realpath on /usr/bin/* symlink return version-appended binary path. + # so /usr/bin/rustc should point to /opt/rust-bin-/bin/rustc- + local ver_i="${i}-bin-${SLOT}" + ln -v "${ED}/opt/rust-bin-${SLOT}/bin/${i}" "${ED}/opt/rust-bin-${SLOT}/bin/${ver_i}" || die + dosym -r "/opt/rust-bin-${SLOT}/bin/${ver_i}" "/usr/bin/${ver_i}" + done + + # symlinks to switch components to active rust in eselect + dosym -r "/opt/rust-bin-${SLOT}/lib" "/usr/lib/rust/lib-bin-${SLOT}" + dosym -r "/opt/rust-bin-${SLOT}/man" "/usr/lib/rust/man-bin-${SLOT}" + dosym -r "/opt/rust-bin-${SLOT}/lib/rustlib" "/usr/lib/rustlib-bin-${SLOT}" + dosym -r "/opt/rust-bin-${SLOT}/share/doc/rust" "/usr/share/doc/rust-bin-${SLOT}" + + # make all capital underscored variable + local CARGO_TRIPLET="$(rust_abi)" + CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" + CARGO_TRIPLET="${CARGO_TRIPLET^^}" + cat <<-_EOF_ > "${T}/50${P}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${SLOT}" + $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") + _EOF_ + doenvd "${T}/50${P}" + + # note: eselect-rust adds EROOT to all paths below + cat <<-_EOF_ > "${T}/provider-${PN}-${SLOT}" + /usr/bin/cargo + /usr/bin/rustdoc + /usr/bin/rust-gdb + /usr/bin/rust-gdbgui + /usr/bin/rust-lldb + /usr/lib/rustlib + /usr/lib/rust/lib + /usr/lib/rust/man + /usr/share/doc/rust + _EOF_ + + if use clippy; then + echo /usr/bin/clippy-driver >> "${T}/provider-${PN}-${SLOT}" + echo /usr/bin/cargo-clippy >> "${T}/provider-${PN}-${SLOT}" + fi + if use rustfmt; then + echo /usr/bin/rustfmt >> "${T}/provider-${PN}-${SLOT}" + echo /usr/bin/cargo-fmt >> "${T}/provider-${PN}-${SLOT}" + fi + if use rust-analyzer; then + echo /usr/bin/rust-analyzer >> "${T}/provider-${PN}-${SLOT}" + fi + + insinto /etc/env.d/rust + doins "${T}/provider-${PN}-${SLOT}" + popd >/dev/null || die +} + +multilib_src_install() { + if multilib_is_native_abi; then + rust_native_abi_install + else + local rust_target version + case ${PV} in + *9999*) + version=nightly + ;; + *beta*) + version=beta + ;; + *) + version=${PV} + ;; + esac + rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))" + dodir "/opt/${P}/lib/rustlib" + cp -vr "${WORKDIR}/rust-${version}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\ + "${ED}/opt/${P}/lib/rustlib" || die + fi + + # BUG: installs x86_64 binary on other arches + rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die +} + +pkg_postinst() { + eselect rust update + + if has_version dev-debug/gdb || has_version llvm-core/lldb; then + elog "Rust installs helper scripts for calling GDB and LLDB," + elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${PV}." + fi + + if has_version app-editors/emacs; then + optfeature "emacs support for rust" app-emacs/rust-mode + fi + + if has_version app-editors/gvim || has_version app-editors/vim; then + optfeature "vim support for rust" app-vim/rust-vim + fi +} + +pkg_postrm() { + eselect rust cleanup +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.93.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.93.1.ebuild new file mode 100644 index 00000000000..e72d947db8d --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.93.1.ebuild @@ -0,0 +1,337 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_COMPAT=( 21 ) +LLVM_OPTIONAL="yes" + +inherit edo llvm-r1 multilib prefix rust-toolchain verify-sig multilib-minimal optfeature + +if [[ ${PV} == *9999* ]]; then + # We need to fetch a tarball in src_unpack + PROPERTIES+=" live" +elif [[ ${PV} == *beta* ]]; then + # curl -Ls static.rust-lang.org/dist/channel-rust-beta.toml | grep "xz_url.*rust-src" + betaver=${PV//*beta} + BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}" + RUST_TOOLCHAIN_BASEURL=https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/ + SRC_URI="$(rust_all_arch_uris rust-beta rust-${PV}) + rust-src? ( ${RUST_TOOLCHAIN_BASEURL%/}/rust-src-beta.tar.xz -> rust-src-${PV}.tar.xz ) + " +else + # curl -Ls static.rust-lang.org/dist/channel-rust-${PV}.toml | grep "xz_url.*rust-src" + SRC_URI="$(rust_all_arch_uris "rust-${PV}") + rust-src? ( ${RUST_TOOLCHAIN_BASEURL%/}/2026-02-12/rust-src-${PV}.tar.xz ) + " + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86" +fi + +GENTOO_BIN_BASEURI="https://github.com/projg2/rust-bootstrap/releases/download/${PVR}" # omit trailing slash + +DESCRIPTION="Systems programming language from Mozilla" +HOMEPAGE="https://www.rust-lang.org/" + +if false ; then #[[ ${PV} != *9999* && ${PV} != *beta* ]] ; then + # Keep this separate to allow easy commenting out if not yet built + SRC_URI+=" sparc? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-sparc64-unknown-linux-gnu.tar.xz ) " + SRC_URI+=" mips? ( + abi_mips_o32? ( + big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips-unknown-linux-gnu.tar.xz ) + !big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mipsel-unknown-linux-gnu.tar.xz ) + ) + abi_mips_n64? ( + big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips64-unknown-linux-gnuabi64.tar.xz ) + !big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips64el-unknown-linux-gnuabi64.tar.xz ) + ) + )" + SRC_URI+=" riscv? ( + elibc_musl? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-riscv64gc-unknown-linux-musl.tar.xz ) + )" + SRC_URI+=" ppc64? ( elibc_musl? ( + big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-powerpc64-unknown-linux-musl.tar.xz ) + !big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-powerpc64le-unknown-linux-musl.tar.xz ) + ) )" +fi + +LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" +SLOT="${PV%%_*}" # Beta releases get to share the same SLOT as the eventual stable +IUSE="big-endian +clippy cpu_flags_x86_sse2 +doc prefix rust-analyzer rust-src +rustfmt" + +# net-misc/curl is needed for our own bootstrapped rustc, since cross-compiling bundled curl is not supported +RDEPEND=" + >=app-eselect/eselect-rust-20190311 + dev-libs/openssl + net-misc/curl + sys-apps/lsb-release + || ( + llvm-runtimes/libgcc + sys-devel/gcc:* + ) + !dev-lang/rust:stable + !dev-lang/rust-bin:stable +" +BDEPEND=" + prefix? ( dev-util/patchelf ) + verify-sig? ( sec-keys/openpgp-keys-rust ) +" +[[ ${PV} == *9999* ]] && BDEPEND+=" net-misc/curl" + +REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )" + +# stripping rust may break it (at least on x86_64) +# https://github.com/rust-lang/rust/issues/112286 +RESTRICT="strip" + +QA_PREBUILT=" + opt/rust-bin-${SLOT}/bin/.* + opt/rust-bin-${SLOT}/lib/.*.so* + opt/rust-bin-${SLOT}/libexec/.* + opt/rust-bin-${SLOT}/lib/rustlib/.*/bin/.* + opt/rust-bin-${SLOT}/lib/rustlib/.*/lib/.* +" + +# An rmeta file is custom binary format that contains the metadata for the crate. +# rmeta files do not support linking, since they do not contain compiled object files. +# so we can safely silence the warning for this QA check. +QA_EXECSTACK="opt/${PN}-${SLOT}/lib/rustlib/*/lib*.rlib:lib.rmeta" + +VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc" + +src_unpack() { + if [[ ${PV} == *9999* ]]; then + # We need to fetch the latest nightly listing and get the apprapriate src_uri for our arch + local rust_bin_url rustc_src_url + # Cut down on webrequests by fetching the nightly toml once + curl -Ls static.rust-lang.org/dist/channel-rust-nightly.toml > "${WORKDIR}/channel-rust-nightly.toml" || + die "Failed to fetch nightly revision info" + rustc_src_url=$(grep 'xz_url.*rust-src' "${WORKDIR}/channel-rust-nightly.toml" | cut -d '"' -f 2) + + if use rust-src; then + einfo "Using nightly Rust-src from: ${rustc_src_url}" + # We need to fetch the rust-src tarball + einfo "Fetching nightly rust-src tarball ..." + curl --progress-bar -L "${rustc_src_url}" -o "${WORKDIR}/rust-src-${PV}.tar.xz" || + die "Failed to fetch nightly rust-src tarball." + # no verify-sig here, just unpack it + tar -xf "${WORKDIR}/rust-src-${PV}.tar.xz" || die "Failed to unpack nightly rust-src tarball" + fi + + local v + for v in $(multilib_get_enabled_abi_pairs); do + rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))" + rust_bin_url=$(grep "xz_url.*rust-nightly-${rust_target}" "${WORKDIR}/channel-rust-nightly.toml" | cut -d '"' -f 2) + einfo "Using nightly Rust from ${rust_bin_url} for ${rust_target}" + + einfo "Fetching nightly Rust tarball for ${rust_target} ..." + curl --progress-bar -L "${rust_bin_url}" -O || die "Failed to fetch nightly tarball for ${rust_target}" + if use verify-sig; then + einfo "Fetching nightly signature for ${rust_target} ..." + curl --progress-bar -L "${rust_bin_url}.asc" -O || die "Failed to fetch nightly signature for ${rust_target}" + verify-sig_verify_detached "${WORKDIR}/rust-nightly-${rust_target}.tar.xz" \ + "${WORKDIR}/rust-nightly-${rust_target}.tar.xz.asc" + fi + + tar -xf "${WORKDIR}/rust-nightly-${rust_target}.tar.xz" || die "Failed to unpack nightly tarball for ${rust_target}" + done + else + # sadly rust-src tarball does not have corresponding .asc file + # so do partial verification + if use verify-sig; then + for f in ${A}; do + if [[ -f ${DISTDIR}/${f}.asc ]]; then + verify-sig_verify_detached "${DISTDIR}/${f}" "${DISTDIR}/${f}.asc" + fi + done + fi + + default_src_unpack + fi + + # We only want to do this for the native ABI. Non-native ABIs are + # handled differently in multilib_src_install. + case ${PV} in + *9999*) + mv "${WORKDIR}/rust-nightly-$(rust_abi)" "${S}" || die + ;; + *beta*) + mv "${WORKDIR}/rust-beta-$(rust_abi)" "${S}" || die + ;; + *) + mv "${WORKDIR}/rust-${PV}-$(rust_abi)" "${S}" || die + ;; + esac +} + +patchelf_for_bin() { + local filetype=$(file -b ${1}) + if [[ ${filetype} == *ELF*interpreter* ]]; then + einfo "${1}'s interpreter changed" + patchelf ${1} --set-interpreter ${2} || die + elif [[ ${filetype} == *script* ]]; then + hprefixify ${1} + fi +} + +rust_native_abi_install() { + pushd "${S}" >/dev/null || die + local std="$(grep 'std' ./components || die "std not found in components")" + local components=( "rustc" "cargo" "${std}" ) + use doc && components+=( "rust-docs" ) + use clippy && components+=( "clippy-preview" ) + use rustfmt && components+=( "rustfmt-preview" ) + if use rust-analyzer; then + local analysis="$(grep 'analysis' ./components || die "analysis not found in components")" + components+=( "rust-analyzer-preview" "${analysis}" ) + fi + # Rust component 'rust-src' is extracted from separate archive + if use rust-src; then + einfo "Combining rust and rust-src installers" + case ${PV} in + *9999*) + mv -v "${WORKDIR}/rust-src-nightly/rust-src" "${S}" || die + ;; + *beta*) + mv -v "${WORKDIR}/rust-src-beta/rust-src" "${S}" || die + ;; + *) + mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die + ;; + esac + echo rust-src >> ./components || die + components+=( "rust-src" ) + fi + edo ./install.sh \ + --components="$(IFS=,; echo "${components[*]}")" \ + --disable-verify \ + --prefix="${ED}/opt/rust-bin-${SLOT}" \ + --mandir="${ED}/opt/rust-bin-${SLOT}/man" \ + --disable-ldconfig + + docompress /opt/${P}/man/ + + if use prefix; then + local interpreter=$(patchelf --print-interpreter "${EPREFIX}"/bin/bash) + ebegin "Changing interpreter to ${interpreter} for Gentoo prefix at ${ED}/opt/rust-bin-${SLOT}/bin" + find "${ED}/opt/rust-bin-${SLOT}/bin" -type f -print0 | \ + while IFS= read -r -d '' filename; do + patchelf_for_bin ${filename} ${interpreter} \; || die + done + eend $? + fi + + local symlinks=( + cargo + rustc + rustdoc + rust-gdb + rust-gdbgui + rust-lldb + ) + + use clippy && symlinks+=( clippy-driver cargo-clippy ) + use rustfmt && symlinks+=( rustfmt cargo-fmt ) + use rust-analyzer && symlinks+=( rust-analyzer ) + + einfo "installing eselect-rust symlinks and paths" + local i + for i in "${symlinks[@]}"; do + # we need realpath on /usr/bin/* symlink return version-appended binary path. + # so /usr/bin/rustc should point to /opt/rust-bin-/bin/rustc- + local ver_i="${i}-bin-${SLOT}" + ln -v "${ED}/opt/rust-bin-${SLOT}/bin/${i}" "${ED}/opt/rust-bin-${SLOT}/bin/${ver_i}" || die + dosym -r "/opt/rust-bin-${SLOT}/bin/${ver_i}" "/usr/bin/${ver_i}" + done + + # symlinks to switch components to active rust in eselect + dosym -r "/opt/rust-bin-${SLOT}/lib" "/usr/lib/rust/lib-bin-${SLOT}" + dosym -r "/opt/rust-bin-${SLOT}/man" "/usr/lib/rust/man-bin-${SLOT}" + dosym -r "/opt/rust-bin-${SLOT}/lib/rustlib" "/usr/lib/rustlib-bin-${SLOT}" + dosym -r "/opt/rust-bin-${SLOT}/share/doc/rust" "/usr/share/doc/rust-bin-${SLOT}" + + # make all capital underscored variable + local CARGO_TRIPLET="$(rust_abi)" + CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" + CARGO_TRIPLET="${CARGO_TRIPLET^^}" + cat <<-_EOF_ > "${T}/50${P}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${SLOT}" + $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") + _EOF_ + doenvd "${T}/50${P}" + + # note: eselect-rust adds EROOT to all paths below + cat <<-_EOF_ > "${T}/provider-${PN}-${SLOT}" + /usr/bin/cargo + /usr/bin/rustdoc + /usr/bin/rust-gdb + /usr/bin/rust-gdbgui + /usr/bin/rust-lldb + /usr/lib/rustlib + /usr/lib/rust/lib + /usr/lib/rust/man + /usr/share/doc/rust + _EOF_ + + if use clippy; then + echo /usr/bin/clippy-driver >> "${T}/provider-${PN}-${SLOT}" + echo /usr/bin/cargo-clippy >> "${T}/provider-${PN}-${SLOT}" + fi + if use rustfmt; then + echo /usr/bin/rustfmt >> "${T}/provider-${PN}-${SLOT}" + echo /usr/bin/cargo-fmt >> "${T}/provider-${PN}-${SLOT}" + fi + if use rust-analyzer; then + echo /usr/bin/rust-analyzer >> "${T}/provider-${PN}-${SLOT}" + fi + + insinto /etc/env.d/rust + doins "${T}/provider-${PN}-${SLOT}" + popd >/dev/null || die +} + +multilib_src_install() { + if multilib_is_native_abi; then + rust_native_abi_install + else + local rust_target version + case ${PV} in + *9999*) + version=nightly + ;; + *beta*) + version=beta + ;; + *) + version=${PV} + ;; + esac + rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))" + dodir "/opt/${P}/lib/rustlib" + cp -vr "${WORKDIR}/rust-${version}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\ + "${ED}/opt/${P}/lib/rustlib" || die + fi + + # BUG: installs x86_64 binary on other arches + rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die +} + +pkg_postinst() { + eselect rust update + + if has_version dev-debug/gdb || has_version llvm-core/lldb; then + elog "Rust installs helper scripts for calling GDB and LLDB," + elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${PV}." + fi + + if has_version app-editors/emacs; then + optfeature "emacs support for rust" app-emacs/rust-mode + fi + + if has_version app-editors/gvim || has_version app-editors/vim; then + optfeature "vim support for rust" app-vim/rust-vim + fi +} + +pkg_postrm() { + eselect rust cleanup +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.94.0_beta20260126.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.94.0_beta20260126.ebuild new file mode 100644 index 00000000000..ef680a10f8e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.94.0_beta20260126.ebuild @@ -0,0 +1,337 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_COMPAT=( 21 ) +LLVM_OPTIONAL="yes" + +inherit edo llvm-r1 multilib prefix rust-toolchain verify-sig multilib-minimal optfeature + +if [[ ${PV} == *9999* ]]; then + # We need to fetch a tarball in src_unpack + PROPERTIES+=" live" +elif [[ ${PV} == *beta* ]]; then + # curl -Ls static.rust-lang.org/dist/channel-rust-beta.toml | grep "xz_url.*rust-src" + betaver=${PV//*beta} + BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}" + RUST_TOOLCHAIN_BASEURL=https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/ + SRC_URI="$(rust_all_arch_uris rust-beta rust-${PV}) + rust-src? ( ${RUST_TOOLCHAIN_BASEURL%/}/rust-src-beta.tar.xz -> rust-src-${PV}.tar.xz ) + " +else + # curl -Ls static.rust-lang.org/dist/channel-rust-${PV}.toml | grep "xz_url.*rust-src" + SRC_URI="$(rust_all_arch_uris "rust-${PV}") + rust-src? ( ${RUST_TOOLCHAIN_BASEURL%/}/2026-01-22/rust-src-${PV}.tar.xz ) + " + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +GENTOO_BIN_BASEURI="https://github.com/projg2/rust-bootstrap/releases/download/${PVR}" # omit trailing slash + +DESCRIPTION="Systems programming language from Mozilla" +HOMEPAGE="https://www.rust-lang.org/" + +if [[ ${PV} != *9999* && ${PV} != *beta* ]] ; then + # Keep this separate to allow easy commenting out if not yet built + SRC_URI+=" sparc? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-sparc64-unknown-linux-gnu.tar.xz ) " + SRC_URI+=" mips? ( + abi_mips_o32? ( + big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips-unknown-linux-gnu.tar.xz ) + !big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mipsel-unknown-linux-gnu.tar.xz ) + ) + abi_mips_n64? ( + big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips64-unknown-linux-gnuabi64.tar.xz ) + !big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips64el-unknown-linux-gnuabi64.tar.xz ) + ) + )" + SRC_URI+=" riscv? ( + elibc_musl? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-riscv64gc-unknown-linux-musl.tar.xz ) + )" + SRC_URI+=" ppc64? ( elibc_musl? ( + big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-powerpc64-unknown-linux-musl.tar.xz ) + !big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-powerpc64le-unknown-linux-musl.tar.xz ) + ) )" +fi + +LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" +SLOT="${PV%%_*}" # Beta releases get to share the same SLOT as the eventual stable +IUSE="big-endian +clippy cpu_flags_x86_sse2 +doc prefix rust-analyzer rust-src +rustfmt" + +# net-misc/curl is needed for our own bootstrapped rustc, since cross-compiling bundled curl is not supported +RDEPEND=" + >=app-eselect/eselect-rust-20190311 + dev-libs/openssl + net-misc/curl + sys-apps/lsb-release + || ( + llvm-runtimes/libgcc + sys-devel/gcc:* + ) + !dev-lang/rust:stable + !dev-lang/rust-bin:stable +" +BDEPEND=" + prefix? ( dev-util/patchelf ) + verify-sig? ( sec-keys/openpgp-keys-rust ) +" +[[ ${PV} == *9999* ]] && BDEPEND+=" net-misc/curl" + +REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )" + +# stripping rust may break it (at least on x86_64) +# https://github.com/rust-lang/rust/issues/112286 +RESTRICT="strip" + +QA_PREBUILT=" + opt/rust-bin-${SLOT}/bin/.* + opt/rust-bin-${SLOT}/lib/.*.so* + opt/rust-bin-${SLOT}/libexec/.* + opt/rust-bin-${SLOT}/lib/rustlib/.*/bin/.* + opt/rust-bin-${SLOT}/lib/rustlib/.*/lib/.* +" + +# An rmeta file is custom binary format that contains the metadata for the crate. +# rmeta files do not support linking, since they do not contain compiled object files. +# so we can safely silence the warning for this QA check. +QA_EXECSTACK="opt/${PN}-${SLOT}/lib/rustlib/*/lib*.rlib:lib.rmeta" + +VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc" + +src_unpack() { + if [[ ${PV} == *9999* ]]; then + # We need to fetch the latest nightly listing and get the apprapriate src_uri for our arch + local rust_bin_url rustc_src_url + # Cut down on webrequests by fetching the nightly toml once + curl -Ls static.rust-lang.org/dist/channel-rust-nightly.toml > "${WORKDIR}/channel-rust-nightly.toml" || + die "Failed to fetch nightly revision info" + rustc_src_url=$(grep 'xz_url.*rust-src' "${WORKDIR}/channel-rust-nightly.toml" | cut -d '"' -f 2) + + if use rust-src; then + einfo "Using nightly Rust-src from: ${rustc_src_url}" + # We need to fetch the rust-src tarball + einfo "Fetching nightly rust-src tarball ..." + curl --progress-bar -L "${rustc_src_url}" -o "${WORKDIR}/rust-src-${PV}.tar.xz" || + die "Failed to fetch nightly rust-src tarball." + # no verify-sig here, just unpack it + tar -xf "${WORKDIR}/rust-src-${PV}.tar.xz" || die "Failed to unpack nightly rust-src tarball" + fi + + local v + for v in $(multilib_get_enabled_abi_pairs); do + rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))" + rust_bin_url=$(grep "xz_url.*rust-nightly-${rust_target}" "${WORKDIR}/channel-rust-nightly.toml" | cut -d '"' -f 2) + einfo "Using nightly Rust from ${rust_bin_url} for ${rust_target}" + + einfo "Fetching nightly Rust tarball for ${rust_target} ..." + curl --progress-bar -L "${rust_bin_url}" -O || die "Failed to fetch nightly tarball for ${rust_target}" + if use verify-sig; then + einfo "Fetching nightly signature for ${rust_target} ..." + curl --progress-bar -L "${rust_bin_url}.asc" -O || die "Failed to fetch nightly signature for ${rust_target}" + verify-sig_verify_detached "${WORKDIR}/rust-nightly-${rust_target}.tar.xz" \ + "${WORKDIR}/rust-nightly-${rust_target}.tar.xz.asc" + fi + + tar -xf "${WORKDIR}/rust-nightly-${rust_target}.tar.xz" || die "Failed to unpack nightly tarball for ${rust_target}" + done + else + # sadly rust-src tarball does not have corresponding .asc file + # so do partial verification + if use verify-sig; then + for f in ${A}; do + if [[ -f ${DISTDIR}/${f}.asc ]]; then + verify-sig_verify_detached "${DISTDIR}/${f}" "${DISTDIR}/${f}.asc" + fi + done + fi + + default_src_unpack + fi + + # We only want to do this for the native ABI. Non-native ABIs are + # handled differently in multilib_src_install. + case ${PV} in + *9999*) + mv "${WORKDIR}/rust-nightly-$(rust_abi)" "${S}" || die + ;; + *beta*) + mv "${WORKDIR}/rust-beta-$(rust_abi)" "${S}" || die + ;; + *) + mv "${WORKDIR}/rust-${PV}-$(rust_abi)" "${S}" || die + ;; + esac +} + +patchelf_for_bin() { + local filetype=$(file -b ${1}) + if [[ ${filetype} == *ELF*interpreter* ]]; then + einfo "${1}'s interpreter changed" + patchelf ${1} --set-interpreter ${2} || die + elif [[ ${filetype} == *script* ]]; then + hprefixify ${1} + fi +} + +rust_native_abi_install() { + pushd "${S}" >/dev/null || die + local std="$(grep 'std' ./components || die "std not found in components")" + local components=( "rustc" "cargo" "${std}" ) + use doc && components+=( "rust-docs" ) + use clippy && components+=( "clippy-preview" ) + use rustfmt && components+=( "rustfmt-preview" ) + if use rust-analyzer; then + local analysis="$(grep 'analysis' ./components || die "analysis not found in components")" + components+=( "rust-analyzer-preview" "${analysis}" ) + fi + # Rust component 'rust-src' is extracted from separate archive + if use rust-src; then + einfo "Combining rust and rust-src installers" + case ${PV} in + *9999*) + mv -v "${WORKDIR}/rust-src-nightly/rust-src" "${S}" || die + ;; + *beta*) + mv -v "${WORKDIR}/rust-src-beta/rust-src" "${S}" || die + ;; + *) + mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die + ;; + esac + echo rust-src >> ./components || die + components+=( "rust-src" ) + fi + edo ./install.sh \ + --components="$(IFS=,; echo "${components[*]}")" \ + --disable-verify \ + --prefix="${ED}/opt/rust-bin-${SLOT}" \ + --mandir="${ED}/opt/rust-bin-${SLOT}/man" \ + --disable-ldconfig + + docompress /opt/${P}/man/ + + if use prefix; then + local interpreter=$(patchelf --print-interpreter "${EPREFIX}"/bin/bash) + ebegin "Changing interpreter to ${interpreter} for Gentoo prefix at ${ED}/opt/rust-bin-${SLOT}/bin" + find "${ED}/opt/rust-bin-${SLOT}/bin" -type f -print0 | \ + while IFS= read -r -d '' filename; do + patchelf_for_bin ${filename} ${interpreter} \; || die + done + eend $? + fi + + local symlinks=( + cargo + rustc + rustdoc + rust-gdb + rust-gdbgui + rust-lldb + ) + + use clippy && symlinks+=( clippy-driver cargo-clippy ) + use rustfmt && symlinks+=( rustfmt cargo-fmt ) + use rust-analyzer && symlinks+=( rust-analyzer ) + + einfo "installing eselect-rust symlinks and paths" + local i + for i in "${symlinks[@]}"; do + # we need realpath on /usr/bin/* symlink return version-appended binary path. + # so /usr/bin/rustc should point to /opt/rust-bin-/bin/rustc- + local ver_i="${i}-bin-${SLOT}" + ln -v "${ED}/opt/rust-bin-${SLOT}/bin/${i}" "${ED}/opt/rust-bin-${SLOT}/bin/${ver_i}" || die + dosym -r "/opt/rust-bin-${SLOT}/bin/${ver_i}" "/usr/bin/${ver_i}" + done + + # symlinks to switch components to active rust in eselect + dosym -r "/opt/rust-bin-${SLOT}/lib" "/usr/lib/rust/lib-bin-${SLOT}" + dosym -r "/opt/rust-bin-${SLOT}/man" "/usr/lib/rust/man-bin-${SLOT}" + dosym -r "/opt/rust-bin-${SLOT}/lib/rustlib" "/usr/lib/rustlib-bin-${SLOT}" + dosym -r "/opt/rust-bin-${SLOT}/share/doc/rust" "/usr/share/doc/rust-bin-${SLOT}" + + # make all capital underscored variable + local CARGO_TRIPLET="$(rust_abi)" + CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" + CARGO_TRIPLET="${CARGO_TRIPLET^^}" + cat <<-_EOF_ > "${T}/50${P}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${SLOT}" + $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") + _EOF_ + doenvd "${T}/50${P}" + + # note: eselect-rust adds EROOT to all paths below + cat <<-_EOF_ > "${T}/provider-${PN}-${SLOT}" + /usr/bin/cargo + /usr/bin/rustdoc + /usr/bin/rust-gdb + /usr/bin/rust-gdbgui + /usr/bin/rust-lldb + /usr/lib/rustlib + /usr/lib/rust/lib + /usr/lib/rust/man + /usr/share/doc/rust + _EOF_ + + if use clippy; then + echo /usr/bin/clippy-driver >> "${T}/provider-${PN}-${SLOT}" + echo /usr/bin/cargo-clippy >> "${T}/provider-${PN}-${SLOT}" + fi + if use rustfmt; then + echo /usr/bin/rustfmt >> "${T}/provider-${PN}-${SLOT}" + echo /usr/bin/cargo-fmt >> "${T}/provider-${PN}-${SLOT}" + fi + if use rust-analyzer; then + echo /usr/bin/rust-analyzer >> "${T}/provider-${PN}-${SLOT}" + fi + + insinto /etc/env.d/rust + doins "${T}/provider-${PN}-${SLOT}" + popd >/dev/null || die +} + +multilib_src_install() { + if multilib_is_native_abi; then + rust_native_abi_install + else + local rust_target version + case ${PV} in + *9999*) + version=nightly + ;; + *beta*) + version=beta + ;; + *) + version=${PV} + ;; + esac + rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))" + dodir "/opt/${P}/lib/rustlib" + cp -vr "${WORKDIR}/rust-${version}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\ + "${ED}/opt/${P}/lib/rustlib" || die + fi + + # BUG: installs x86_64 binary on other arches + rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die +} + +pkg_postinst() { + eselect rust update + + if has_version dev-debug/gdb || has_version llvm-core/lldb; then + elog "Rust installs helper scripts for calling GDB and LLDB," + elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${PV}." + fi + + if has_version app-editors/emacs; then + optfeature "emacs support for rust" app-emacs/rust-mode + fi + + if has_version app-editors/gvim || has_version app-editors/vim; then + optfeature "vim support for rust" app-vim/rust-vim + fi +} + +pkg_postrm() { + eselect rust cleanup +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.94.0_beta20260213.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.94.0_beta20260213.ebuild new file mode 100644 index 00000000000..ef680a10f8e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.94.0_beta20260213.ebuild @@ -0,0 +1,337 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_COMPAT=( 21 ) +LLVM_OPTIONAL="yes" + +inherit edo llvm-r1 multilib prefix rust-toolchain verify-sig multilib-minimal optfeature + +if [[ ${PV} == *9999* ]]; then + # We need to fetch a tarball in src_unpack + PROPERTIES+=" live" +elif [[ ${PV} == *beta* ]]; then + # curl -Ls static.rust-lang.org/dist/channel-rust-beta.toml | grep "xz_url.*rust-src" + betaver=${PV//*beta} + BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}" + RUST_TOOLCHAIN_BASEURL=https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/ + SRC_URI="$(rust_all_arch_uris rust-beta rust-${PV}) + rust-src? ( ${RUST_TOOLCHAIN_BASEURL%/}/rust-src-beta.tar.xz -> rust-src-${PV}.tar.xz ) + " +else + # curl -Ls static.rust-lang.org/dist/channel-rust-${PV}.toml | grep "xz_url.*rust-src" + SRC_URI="$(rust_all_arch_uris "rust-${PV}") + rust-src? ( ${RUST_TOOLCHAIN_BASEURL%/}/2026-01-22/rust-src-${PV}.tar.xz ) + " + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +GENTOO_BIN_BASEURI="https://github.com/projg2/rust-bootstrap/releases/download/${PVR}" # omit trailing slash + +DESCRIPTION="Systems programming language from Mozilla" +HOMEPAGE="https://www.rust-lang.org/" + +if [[ ${PV} != *9999* && ${PV} != *beta* ]] ; then + # Keep this separate to allow easy commenting out if not yet built + SRC_URI+=" sparc? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-sparc64-unknown-linux-gnu.tar.xz ) " + SRC_URI+=" mips? ( + abi_mips_o32? ( + big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips-unknown-linux-gnu.tar.xz ) + !big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mipsel-unknown-linux-gnu.tar.xz ) + ) + abi_mips_n64? ( + big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips64-unknown-linux-gnuabi64.tar.xz ) + !big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips64el-unknown-linux-gnuabi64.tar.xz ) + ) + )" + SRC_URI+=" riscv? ( + elibc_musl? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-riscv64gc-unknown-linux-musl.tar.xz ) + )" + SRC_URI+=" ppc64? ( elibc_musl? ( + big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-powerpc64-unknown-linux-musl.tar.xz ) + !big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-powerpc64le-unknown-linux-musl.tar.xz ) + ) )" +fi + +LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" +SLOT="${PV%%_*}" # Beta releases get to share the same SLOT as the eventual stable +IUSE="big-endian +clippy cpu_flags_x86_sse2 +doc prefix rust-analyzer rust-src +rustfmt" + +# net-misc/curl is needed for our own bootstrapped rustc, since cross-compiling bundled curl is not supported +RDEPEND=" + >=app-eselect/eselect-rust-20190311 + dev-libs/openssl + net-misc/curl + sys-apps/lsb-release + || ( + llvm-runtimes/libgcc + sys-devel/gcc:* + ) + !dev-lang/rust:stable + !dev-lang/rust-bin:stable +" +BDEPEND=" + prefix? ( dev-util/patchelf ) + verify-sig? ( sec-keys/openpgp-keys-rust ) +" +[[ ${PV} == *9999* ]] && BDEPEND+=" net-misc/curl" + +REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )" + +# stripping rust may break it (at least on x86_64) +# https://github.com/rust-lang/rust/issues/112286 +RESTRICT="strip" + +QA_PREBUILT=" + opt/rust-bin-${SLOT}/bin/.* + opt/rust-bin-${SLOT}/lib/.*.so* + opt/rust-bin-${SLOT}/libexec/.* + opt/rust-bin-${SLOT}/lib/rustlib/.*/bin/.* + opt/rust-bin-${SLOT}/lib/rustlib/.*/lib/.* +" + +# An rmeta file is custom binary format that contains the metadata for the crate. +# rmeta files do not support linking, since they do not contain compiled object files. +# so we can safely silence the warning for this QA check. +QA_EXECSTACK="opt/${PN}-${SLOT}/lib/rustlib/*/lib*.rlib:lib.rmeta" + +VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc" + +src_unpack() { + if [[ ${PV} == *9999* ]]; then + # We need to fetch the latest nightly listing and get the apprapriate src_uri for our arch + local rust_bin_url rustc_src_url + # Cut down on webrequests by fetching the nightly toml once + curl -Ls static.rust-lang.org/dist/channel-rust-nightly.toml > "${WORKDIR}/channel-rust-nightly.toml" || + die "Failed to fetch nightly revision info" + rustc_src_url=$(grep 'xz_url.*rust-src' "${WORKDIR}/channel-rust-nightly.toml" | cut -d '"' -f 2) + + if use rust-src; then + einfo "Using nightly Rust-src from: ${rustc_src_url}" + # We need to fetch the rust-src tarball + einfo "Fetching nightly rust-src tarball ..." + curl --progress-bar -L "${rustc_src_url}" -o "${WORKDIR}/rust-src-${PV}.tar.xz" || + die "Failed to fetch nightly rust-src tarball." + # no verify-sig here, just unpack it + tar -xf "${WORKDIR}/rust-src-${PV}.tar.xz" || die "Failed to unpack nightly rust-src tarball" + fi + + local v + for v in $(multilib_get_enabled_abi_pairs); do + rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))" + rust_bin_url=$(grep "xz_url.*rust-nightly-${rust_target}" "${WORKDIR}/channel-rust-nightly.toml" | cut -d '"' -f 2) + einfo "Using nightly Rust from ${rust_bin_url} for ${rust_target}" + + einfo "Fetching nightly Rust tarball for ${rust_target} ..." + curl --progress-bar -L "${rust_bin_url}" -O || die "Failed to fetch nightly tarball for ${rust_target}" + if use verify-sig; then + einfo "Fetching nightly signature for ${rust_target} ..." + curl --progress-bar -L "${rust_bin_url}.asc" -O || die "Failed to fetch nightly signature for ${rust_target}" + verify-sig_verify_detached "${WORKDIR}/rust-nightly-${rust_target}.tar.xz" \ + "${WORKDIR}/rust-nightly-${rust_target}.tar.xz.asc" + fi + + tar -xf "${WORKDIR}/rust-nightly-${rust_target}.tar.xz" || die "Failed to unpack nightly tarball for ${rust_target}" + done + else + # sadly rust-src tarball does not have corresponding .asc file + # so do partial verification + if use verify-sig; then + for f in ${A}; do + if [[ -f ${DISTDIR}/${f}.asc ]]; then + verify-sig_verify_detached "${DISTDIR}/${f}" "${DISTDIR}/${f}.asc" + fi + done + fi + + default_src_unpack + fi + + # We only want to do this for the native ABI. Non-native ABIs are + # handled differently in multilib_src_install. + case ${PV} in + *9999*) + mv "${WORKDIR}/rust-nightly-$(rust_abi)" "${S}" || die + ;; + *beta*) + mv "${WORKDIR}/rust-beta-$(rust_abi)" "${S}" || die + ;; + *) + mv "${WORKDIR}/rust-${PV}-$(rust_abi)" "${S}" || die + ;; + esac +} + +patchelf_for_bin() { + local filetype=$(file -b ${1}) + if [[ ${filetype} == *ELF*interpreter* ]]; then + einfo "${1}'s interpreter changed" + patchelf ${1} --set-interpreter ${2} || die + elif [[ ${filetype} == *script* ]]; then + hprefixify ${1} + fi +} + +rust_native_abi_install() { + pushd "${S}" >/dev/null || die + local std="$(grep 'std' ./components || die "std not found in components")" + local components=( "rustc" "cargo" "${std}" ) + use doc && components+=( "rust-docs" ) + use clippy && components+=( "clippy-preview" ) + use rustfmt && components+=( "rustfmt-preview" ) + if use rust-analyzer; then + local analysis="$(grep 'analysis' ./components || die "analysis not found in components")" + components+=( "rust-analyzer-preview" "${analysis}" ) + fi + # Rust component 'rust-src' is extracted from separate archive + if use rust-src; then + einfo "Combining rust and rust-src installers" + case ${PV} in + *9999*) + mv -v "${WORKDIR}/rust-src-nightly/rust-src" "${S}" || die + ;; + *beta*) + mv -v "${WORKDIR}/rust-src-beta/rust-src" "${S}" || die + ;; + *) + mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die + ;; + esac + echo rust-src >> ./components || die + components+=( "rust-src" ) + fi + edo ./install.sh \ + --components="$(IFS=,; echo "${components[*]}")" \ + --disable-verify \ + --prefix="${ED}/opt/rust-bin-${SLOT}" \ + --mandir="${ED}/opt/rust-bin-${SLOT}/man" \ + --disable-ldconfig + + docompress /opt/${P}/man/ + + if use prefix; then + local interpreter=$(patchelf --print-interpreter "${EPREFIX}"/bin/bash) + ebegin "Changing interpreter to ${interpreter} for Gentoo prefix at ${ED}/opt/rust-bin-${SLOT}/bin" + find "${ED}/opt/rust-bin-${SLOT}/bin" -type f -print0 | \ + while IFS= read -r -d '' filename; do + patchelf_for_bin ${filename} ${interpreter} \; || die + done + eend $? + fi + + local symlinks=( + cargo + rustc + rustdoc + rust-gdb + rust-gdbgui + rust-lldb + ) + + use clippy && symlinks+=( clippy-driver cargo-clippy ) + use rustfmt && symlinks+=( rustfmt cargo-fmt ) + use rust-analyzer && symlinks+=( rust-analyzer ) + + einfo "installing eselect-rust symlinks and paths" + local i + for i in "${symlinks[@]}"; do + # we need realpath on /usr/bin/* symlink return version-appended binary path. + # so /usr/bin/rustc should point to /opt/rust-bin-/bin/rustc- + local ver_i="${i}-bin-${SLOT}" + ln -v "${ED}/opt/rust-bin-${SLOT}/bin/${i}" "${ED}/opt/rust-bin-${SLOT}/bin/${ver_i}" || die + dosym -r "/opt/rust-bin-${SLOT}/bin/${ver_i}" "/usr/bin/${ver_i}" + done + + # symlinks to switch components to active rust in eselect + dosym -r "/opt/rust-bin-${SLOT}/lib" "/usr/lib/rust/lib-bin-${SLOT}" + dosym -r "/opt/rust-bin-${SLOT}/man" "/usr/lib/rust/man-bin-${SLOT}" + dosym -r "/opt/rust-bin-${SLOT}/lib/rustlib" "/usr/lib/rustlib-bin-${SLOT}" + dosym -r "/opt/rust-bin-${SLOT}/share/doc/rust" "/usr/share/doc/rust-bin-${SLOT}" + + # make all capital underscored variable + local CARGO_TRIPLET="$(rust_abi)" + CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" + CARGO_TRIPLET="${CARGO_TRIPLET^^}" + cat <<-_EOF_ > "${T}/50${P}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${SLOT}" + $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") + _EOF_ + doenvd "${T}/50${P}" + + # note: eselect-rust adds EROOT to all paths below + cat <<-_EOF_ > "${T}/provider-${PN}-${SLOT}" + /usr/bin/cargo + /usr/bin/rustdoc + /usr/bin/rust-gdb + /usr/bin/rust-gdbgui + /usr/bin/rust-lldb + /usr/lib/rustlib + /usr/lib/rust/lib + /usr/lib/rust/man + /usr/share/doc/rust + _EOF_ + + if use clippy; then + echo /usr/bin/clippy-driver >> "${T}/provider-${PN}-${SLOT}" + echo /usr/bin/cargo-clippy >> "${T}/provider-${PN}-${SLOT}" + fi + if use rustfmt; then + echo /usr/bin/rustfmt >> "${T}/provider-${PN}-${SLOT}" + echo /usr/bin/cargo-fmt >> "${T}/provider-${PN}-${SLOT}" + fi + if use rust-analyzer; then + echo /usr/bin/rust-analyzer >> "${T}/provider-${PN}-${SLOT}" + fi + + insinto /etc/env.d/rust + doins "${T}/provider-${PN}-${SLOT}" + popd >/dev/null || die +} + +multilib_src_install() { + if multilib_is_native_abi; then + rust_native_abi_install + else + local rust_target version + case ${PV} in + *9999*) + version=nightly + ;; + *beta*) + version=beta + ;; + *) + version=${PV} + ;; + esac + rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))" + dodir "/opt/${P}/lib/rustlib" + cp -vr "${WORKDIR}/rust-${version}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\ + "${ED}/opt/${P}/lib/rustlib" || die + fi + + # BUG: installs x86_64 binary on other arches + rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die +} + +pkg_postinst() { + eselect rust update + + if has_version dev-debug/gdb || has_version llvm-core/lldb; then + elog "Rust installs helper scripts for calling GDB and LLDB," + elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${PV}." + fi + + if has_version app-editors/emacs; then + optfeature "emacs support for rust" app-emacs/rust-mode + fi + + if has_version app-editors/gvim || has_version app-editors/vim; then + optfeature "vim support for rust" app-vim/rust-vim + fi +} + +pkg_postrm() { + eselect rust cleanup +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-9999.ebuild index 167c2f4d422..0886bc92734 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-9999.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -LLVM_COMPAT=( 21 ) +LLVM_COMPAT=( 22 ) LLVM_OPTIONAL="yes" inherit edo llvm-r1 multilib prefix rust-toolchain verify-sig multilib-minimal optfeature @@ -22,7 +22,7 @@ elif [[ ${PV} == *beta* ]]; then else # curl -Ls static.rust-lang.org/dist/channel-rust-${PV}.toml | grep "xz_url.*rust-src" SRC_URI="$(rust_all_arch_uris "rust-${PV}") - rust-src? ( ${RUST_TOOLCHAIN_BASEURL%/}/2025-09-18/rust-src-${PV}.tar.xz ) + rust-src? ( ${RUST_TOOLCHAIN_BASEURL%/}/2026-01-22/rust-src-${PV}.tar.xz ) " KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" fi @@ -56,11 +56,13 @@ fi LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" SLOT="${PV%%_*}" # Beta releases get to share the same SLOT as the eventual stable -IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src rustfmt" +IUSE="big-endian +clippy cpu_flags_x86_sse2 +doc prefix rust-analyzer rust-src +rustfmt" +# net-misc/curl is needed for our own bootstrapped rustc, since cross-compiling bundled curl is not supported RDEPEND=" >=app-eselect/eselect-rust-20190311 dev-libs/openssl + net-misc/curl sys-apps/lsb-release || ( llvm-runtimes/libgcc From d57dffcbf515cf888ae44634bbe09eca8fb9ac8f Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:08 +0000 Subject: [PATCH 053/291] dev-lang/rust-common: Sync with Gentoo It's from Gentoo commit f363f98d6a19453a397af537f7102d59e431a1ad. Signed-off-by: Flatcar Buildbot --- .../dev-lang/rust-common/Manifest | 8 ++ .../rust-common/rust-common-1.92.0.ebuild | 4 +- .../rust-common/rust-common-1.93.0.ebuild | 73 +++++++++++++++++++ .../rust-common/rust-common-1.93.1.ebuild | 73 +++++++++++++++++++ .../rust-common-1.94.0_beta20260126.ebuild | 73 +++++++++++++++++++ .../rust-common-1.94.0_beta20260213.ebuild | 73 +++++++++++++++++++ 6 files changed, 302 insertions(+), 2 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.93.0.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.93.1.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.94.0_beta20260126.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.94.0_beta20260213.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/Manifest index f52ff1998e5..e4d86a99d2b 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/Manifest @@ -22,3 +22,11 @@ DIST rustc-1.91.0-src.tar.xz 270987196 BLAKE2B 18ea8075c288d1c2cc8c247120ae5fa15 DIST rustc-1.91.0-src.tar.xz.asc 801 BLAKE2B 11b157fafcfa9887b591ffff8b87641f62e81e44d32d5c4ae99a410179905ae64fe760d6c3a6614bd479f51457542a57b171aaa53baad73d5030e496e62f1e67 SHA512 17c99b273d7e84c54b40817448cb7f543b61a5b262d2bfb1c2d1ff108ccf010295c42ae1ae74593fdab1d6caa3cd3f6713e9966a9a5057c01cd85ae3f24a6f89 DIST rustc-1.92.0-src.tar.xz 271887480 BLAKE2B 765e0f216dde8d375e19ca5b1cd3e051b182cc058e16a1307e82e60bac06de6919d18b6506cb14b3ff5e29c2730ef7d1c6e0d86c3bbf6b8148bbf683048eb99b SHA512 a2c0b127933595b9bc2063d7b7c88d9af512c4664b18f29d44c9a6e2c68d194b87a3071717e8f1b7c858ae940baca888e10be95cd31e0201916d0bfc312a3b15 DIST rustc-1.92.0-src.tar.xz.asc 801 BLAKE2B 0d223a763b4a3bf0583c4c2c19b2a30dfbe48b6b06c17a764c894ec29d1d0543201a78a263df3c1314c4ad9e050009e1cacb580633f8c2a8e6b2bf35d9a87fce SHA512 7355e5d641ac6f1d27decdf24dbf4af5640ae4f3177a678f8c040aa7288e660c87ed3de33efdcf4e881691b1c13cd9b2a0b6ff3067892aaed1649a4b73b610df +DIST rustc-1.93.0-src.tar.xz 270925104 BLAKE2B f96a05dae3494452471f6797fdc2246cc0f5e8205b2a664da72fcae25399b3729aac6d8c3e0a8ed86daaa7081ca803fb5d58c6fdcf9e1d5c5d598ef9976e1da7 SHA512 9362a4b56529ce29362e256daf382b73c73204d0e9fe5b39addf07ff66a30aa66c967e34df9021ea007c13a9f3bb6efdefca1c8e4ea1bde9aac050a9fb0c736b +DIST rustc-1.93.0-src.tar.xz.asc 801 BLAKE2B 9c1762c0bb431da8fda0a8a47f5745998ff31434bb0b2747aa4aafc34e09c1507207eb91b7ba80f7a780b7f7258a4b8e49b5c5b06f9fa9f4cfabf72edb9cb07e SHA512 a6ea05bb6b7d3b429a1c863622c93ac4c97b25f56027f7f06f085acde26d1395f3515cc764ae3ef941d1669556a02365755b34e28ccaebe70c1ccb84c977228f +DIST rustc-1.93.1-src.tar.xz 270888296 BLAKE2B fe5a9072161cf758221974f1f59b1a198b2c62b2317360cdb8b2516cfac8eecf40cd5e69bb186053555688a167cabae3a3227b9079c360d238b12c229ff2ddc1 SHA512 fbff2e960e20a5b4c1320bfe22aca445a5792c10f902c6eb69fc7de2a1f8965b06b0906141526a5f0fa02bcbb6b02d80865481bd62656f7b9a11fbdcf5bc9f02 +DIST rustc-1.93.1-src.tar.xz.asc 801 BLAKE2B 9e059c894770a402d5fee2a29ffdb42030d8d723a40d6312d983e53cd4fa64e97019a0ea6054dcb17ba2ead7f27db17eec2632950f13e4ef1410324afc4dcaf8 SHA512 8a290300e370b3833d2d365a451ed4708dbe1fa69fc57b73eef0b2b5d9dd4fb3d87344315aee3aea474d4071cfb535234e167f6576abf2e06ef3225c85e3c30d +DIST rustc-1.94.0_beta20260126-src.tar.xz 273937952 BLAKE2B 14deb9a1a837283ae544c9e05a490d6d2b6fe924838505f22ee821713ada640ec6c11ddc5fdf11bb7925fd4bff0e1399975bbe5ef47c926aab4ed10976db60dc SHA512 3e0517ebd37a9b459a92a432e9c6c7e276878bb8453007ce3b3c1ef53dbee8b436252d09cdfbe4482321076c9b4a0d49a3ab74b6ae845260ce4d4f47112d0b68 +DIST rustc-1.94.0_beta20260126-src.tar.xz.asc 801 BLAKE2B 6b807dce7ca74cec7cefd7886aa569e0f5a908a9199149624f4d641d94e9daea4ea837a6dd96792efaebd6b21e70acd6654e78f01325e36f9108b0e0b3bc5c4e SHA512 c425b9ff8eeb4973ce3b53eca5cc35f78983062195be9b671565fc48fc7fe2edf424d7618ccc98fec89c2ca8f7f43e176f06c624c1d1172b7033ea66cee6d575 +DIST rustc-1.94.0_beta20260213-src.tar.xz 273898560 BLAKE2B be0fa61b6677de16352628c9c5243bc75b6697c7511cf97d6a02bce8cb09f5fb7aeafeedce29837d3812f0fbee1f4cdc48dae27dc7d02878c06144b3941a8510 SHA512 d48a821ab4adf1a8e8d2b313a6d1c460b28aecf4fa0bd3af7f81318b49abffb71d87a5bc08335adc62b6d4a99c074969a98e6516f679d484ed74086982686457 +DIST rustc-1.94.0_beta20260213-src.tar.xz.asc 801 BLAKE2B aa6662652ce4f92abd50f0a2dfb914d93dc877b71b406aacd57346a62b0139ff296df951d20b3c91a5e187b50876c465b44b396a7d2abcf92d343013c4f3a3a2 SHA512 4c5d17df5aa9979735c2a2784c53251a1c5a120007cc581fb49fd6eb56c35a81a054840f1d9b40f3da18a6e372b054bc7bf8213295ff874ef428f1337d7756cb diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.92.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.92.0.ebuild index 26c4792d0fb..44d5013f245 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.92.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.92.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -32,7 +32,7 @@ else verify-sig? ( https://static.rust-lang.org/dist/rustc-${PV}-src.tar.xz.asc ) " S="${WORKDIR}/rustc-${MY_PV}-src" - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" + KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" fi LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.93.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.93.0.ebuild new file mode 100644 index 00000000000..1037d635a09 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.93.0.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/rust.asc +inherit shell-completion verify-sig + +DESCRIPTION="Common files shared between multiple slots of Rust" +HOMEPAGE="https://www.rust-lang.org/" + +if [[ ${PV} = *9999* ]]; then + inherit git-r3 + # In case cargo is not in sync we'll fetch it as a submodule + # Nightly users will probably already have the repo cloned and up-to-date anyway. + EGIT_REPO_URI="https://github.com/rust-lang/rust.git" + EGIT_SUBMODULES=( "-*" "src/tools/cargo" ) +elif [[ ${PV} == *beta* ]]; then + # Identify the snapshot date of the beta release: + # curl -Ls static.rust-lang.org/dist/channel-rust-beta.toml | grep beta-src.tar.xz + MY_PV=beta + betaver=${PV//*beta} + BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}" + SRC_URI="https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz -> rustc-${PV}-src.tar.xz + verify-sig? ( https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz.asc + -> rustc-${PV}-src.tar.xz.asc ) + " + S="${WORKDIR}/rustc-${MY_PV}-src" +else + MY_PV=${PV} + SRC_URI="https://static.rust-lang.org/dist/rustc-${PV}-src.tar.xz + verify-sig? ( https://static.rust-lang.org/dist/rustc-${PV}-src.tar.xz.asc ) + " + S="${WORKDIR}/rustc-${MY_PV}-src" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +fi + +LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" +SLOT="0" + +# Legacy non-slotted versions bash completions will collide. +RDEPEND=" + !dev-lang/rust:stable + !dev-lang/rust-bin:stable +" +BDEPEND="verify-sig? ( sec-keys/openpgp-keys-rust )" + +src_unpack() { + if [[ ${PV} == *9999* ]]; then + git-r3_src_unpack + else + if use verify-sig ; then + verify-sig_verify_detached "${DISTDIR}"/rustc-${PV}-src.tar.xz "${DISTDIR}"/rustc-${PV}-src.tar.xz.asc + fi + + # Avoid unpacking the whole tarball which would need check-reqs + tar -xf "${DISTDIR}"/rustc-${PV}-src.tar.xz \ + "rustc-${MY_PV}-src/src/tools/cargo/src/etc/"{_cargo,cargo.bashcomp.sh} || die + fi +} + +src_configure() { + : +} + +src_compile() { + : +} + +src_install() { + newbashcomp src/tools/cargo/src/etc/cargo.bashcomp.sh cargo + dozshcomp src/tools/cargo/src/etc/_cargo +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.93.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.93.1.ebuild new file mode 100644 index 00000000000..1037d635a09 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.93.1.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/rust.asc +inherit shell-completion verify-sig + +DESCRIPTION="Common files shared between multiple slots of Rust" +HOMEPAGE="https://www.rust-lang.org/" + +if [[ ${PV} = *9999* ]]; then + inherit git-r3 + # In case cargo is not in sync we'll fetch it as a submodule + # Nightly users will probably already have the repo cloned and up-to-date anyway. + EGIT_REPO_URI="https://github.com/rust-lang/rust.git" + EGIT_SUBMODULES=( "-*" "src/tools/cargo" ) +elif [[ ${PV} == *beta* ]]; then + # Identify the snapshot date of the beta release: + # curl -Ls static.rust-lang.org/dist/channel-rust-beta.toml | grep beta-src.tar.xz + MY_PV=beta + betaver=${PV//*beta} + BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}" + SRC_URI="https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz -> rustc-${PV}-src.tar.xz + verify-sig? ( https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz.asc + -> rustc-${PV}-src.tar.xz.asc ) + " + S="${WORKDIR}/rustc-${MY_PV}-src" +else + MY_PV=${PV} + SRC_URI="https://static.rust-lang.org/dist/rustc-${PV}-src.tar.xz + verify-sig? ( https://static.rust-lang.org/dist/rustc-${PV}-src.tar.xz.asc ) + " + S="${WORKDIR}/rustc-${MY_PV}-src" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +fi + +LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" +SLOT="0" + +# Legacy non-slotted versions bash completions will collide. +RDEPEND=" + !dev-lang/rust:stable + !dev-lang/rust-bin:stable +" +BDEPEND="verify-sig? ( sec-keys/openpgp-keys-rust )" + +src_unpack() { + if [[ ${PV} == *9999* ]]; then + git-r3_src_unpack + else + if use verify-sig ; then + verify-sig_verify_detached "${DISTDIR}"/rustc-${PV}-src.tar.xz "${DISTDIR}"/rustc-${PV}-src.tar.xz.asc + fi + + # Avoid unpacking the whole tarball which would need check-reqs + tar -xf "${DISTDIR}"/rustc-${PV}-src.tar.xz \ + "rustc-${MY_PV}-src/src/tools/cargo/src/etc/"{_cargo,cargo.bashcomp.sh} || die + fi +} + +src_configure() { + : +} + +src_compile() { + : +} + +src_install() { + newbashcomp src/tools/cargo/src/etc/cargo.bashcomp.sh cargo + dozshcomp src/tools/cargo/src/etc/_cargo +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.94.0_beta20260126.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.94.0_beta20260126.ebuild new file mode 100644 index 00000000000..1037d635a09 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.94.0_beta20260126.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/rust.asc +inherit shell-completion verify-sig + +DESCRIPTION="Common files shared between multiple slots of Rust" +HOMEPAGE="https://www.rust-lang.org/" + +if [[ ${PV} = *9999* ]]; then + inherit git-r3 + # In case cargo is not in sync we'll fetch it as a submodule + # Nightly users will probably already have the repo cloned and up-to-date anyway. + EGIT_REPO_URI="https://github.com/rust-lang/rust.git" + EGIT_SUBMODULES=( "-*" "src/tools/cargo" ) +elif [[ ${PV} == *beta* ]]; then + # Identify the snapshot date of the beta release: + # curl -Ls static.rust-lang.org/dist/channel-rust-beta.toml | grep beta-src.tar.xz + MY_PV=beta + betaver=${PV//*beta} + BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}" + SRC_URI="https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz -> rustc-${PV}-src.tar.xz + verify-sig? ( https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz.asc + -> rustc-${PV}-src.tar.xz.asc ) + " + S="${WORKDIR}/rustc-${MY_PV}-src" +else + MY_PV=${PV} + SRC_URI="https://static.rust-lang.org/dist/rustc-${PV}-src.tar.xz + verify-sig? ( https://static.rust-lang.org/dist/rustc-${PV}-src.tar.xz.asc ) + " + S="${WORKDIR}/rustc-${MY_PV}-src" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +fi + +LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" +SLOT="0" + +# Legacy non-slotted versions bash completions will collide. +RDEPEND=" + !dev-lang/rust:stable + !dev-lang/rust-bin:stable +" +BDEPEND="verify-sig? ( sec-keys/openpgp-keys-rust )" + +src_unpack() { + if [[ ${PV} == *9999* ]]; then + git-r3_src_unpack + else + if use verify-sig ; then + verify-sig_verify_detached "${DISTDIR}"/rustc-${PV}-src.tar.xz "${DISTDIR}"/rustc-${PV}-src.tar.xz.asc + fi + + # Avoid unpacking the whole tarball which would need check-reqs + tar -xf "${DISTDIR}"/rustc-${PV}-src.tar.xz \ + "rustc-${MY_PV}-src/src/tools/cargo/src/etc/"{_cargo,cargo.bashcomp.sh} || die + fi +} + +src_configure() { + : +} + +src_compile() { + : +} + +src_install() { + newbashcomp src/tools/cargo/src/etc/cargo.bashcomp.sh cargo + dozshcomp src/tools/cargo/src/etc/_cargo +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.94.0_beta20260213.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.94.0_beta20260213.ebuild new file mode 100644 index 00000000000..1037d635a09 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.94.0_beta20260213.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/rust.asc +inherit shell-completion verify-sig + +DESCRIPTION="Common files shared between multiple slots of Rust" +HOMEPAGE="https://www.rust-lang.org/" + +if [[ ${PV} = *9999* ]]; then + inherit git-r3 + # In case cargo is not in sync we'll fetch it as a submodule + # Nightly users will probably already have the repo cloned and up-to-date anyway. + EGIT_REPO_URI="https://github.com/rust-lang/rust.git" + EGIT_SUBMODULES=( "-*" "src/tools/cargo" ) +elif [[ ${PV} == *beta* ]]; then + # Identify the snapshot date of the beta release: + # curl -Ls static.rust-lang.org/dist/channel-rust-beta.toml | grep beta-src.tar.xz + MY_PV=beta + betaver=${PV//*beta} + BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}" + SRC_URI="https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz -> rustc-${PV}-src.tar.xz + verify-sig? ( https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz.asc + -> rustc-${PV}-src.tar.xz.asc ) + " + S="${WORKDIR}/rustc-${MY_PV}-src" +else + MY_PV=${PV} + SRC_URI="https://static.rust-lang.org/dist/rustc-${PV}-src.tar.xz + verify-sig? ( https://static.rust-lang.org/dist/rustc-${PV}-src.tar.xz.asc ) + " + S="${WORKDIR}/rustc-${MY_PV}-src" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +fi + +LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" +SLOT="0" + +# Legacy non-slotted versions bash completions will collide. +RDEPEND=" + !dev-lang/rust:stable + !dev-lang/rust-bin:stable +" +BDEPEND="verify-sig? ( sec-keys/openpgp-keys-rust )" + +src_unpack() { + if [[ ${PV} == *9999* ]]; then + git-r3_src_unpack + else + if use verify-sig ; then + verify-sig_verify_detached "${DISTDIR}"/rustc-${PV}-src.tar.xz "${DISTDIR}"/rustc-${PV}-src.tar.xz.asc + fi + + # Avoid unpacking the whole tarball which would need check-reqs + tar -xf "${DISTDIR}"/rustc-${PV}-src.tar.xz \ + "rustc-${MY_PV}-src/src/tools/cargo/src/etc/"{_cargo,cargo.bashcomp.sh} || die + fi +} + +src_configure() { + : +} + +src_compile() { + : +} + +src_install() { + newbashcomp src/tools/cargo/src/etc/cargo.bashcomp.sh cargo + dozshcomp src/tools/cargo/src/etc/_cargo +} From 3aa42ef03fa9c1db5cc18eecc02b3c2abcdfc4bd Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:09 +0000 Subject: [PATCH 054/291] dev-lang/tcl: Sync with Gentoo It's from Gentoo commit dff3a48e955aee6f9b95677c72b2164bdef962b4. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-lang/tcl/Manifest | 3 - ...13-tclConfig-TCL_PACKAGE_PATH-braces.patch | 16 --- .../dev-lang/tcl/tcl-8.6.13-r1.ebuild | 130 ----------------- .../dev-lang/tcl/tcl-8.6.14.ebuild | 136 ------------------ .../dev-lang/tcl/tcl-8.6.15.ebuild | 135 ----------------- 5 files changed, 420 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/tcl/files/tcl-8.6.13-tclConfig-TCL_PACKAGE_PATH-braces.patch delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-8.6.13-r1.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-8.6.14.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-8.6.15.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/tcl/Manifest index 96307dd6de8..1789820f14a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-lang/tcl/Manifest @@ -1,5 +1,2 @@ -DIST tcl-core8.6.13-src.tar.gz 6370805 BLAKE2B f5af3c0fa2d52c09ab16578c9147cb5ac4a06b81882c49f1ef23642bed32adccbe2a5acbddc5d18bd1757e1991daf864707d842e675f92c6de70be6f4275b95e SHA512 c1c953ac0f9a530d8256514c0cb78f166d0063db725b87fa19272716a955cd390ff8f1c5f17e791cf463284d88bb136d61194779a913a6a78f46146d485c71ee -DIST tcl-core8.6.14-src.tar.gz 7081644 BLAKE2B 7148c889954d78774c4352ceae5d814498a1670423a2b3ed288786dce97b87d42395b817ef92fc6561358d84736619ef03d1c2e2c502433c4b3f5eb7c80a62e8 SHA512 495b13af817c68d81533c45345d003efd711ddbc5c1a3d1fbbdb10452fa62d91e649f77835239e547355ade84abfea6ae843d2e76de6108532054170a672ddc0 -DIST tcl-core8.6.15-src.tar.gz 7019390 BLAKE2B e88b974c005e3acd680f672a13b76bd736730f13c4af1c4538390c0d624b1cd752c8305ac2f6d7f7df5d2fbb43b08614b715c7688ea61184d552cd77117d8533 SHA512 9ca62941405ea2bca3099bf65f03a87071f3d88ff23367ab8af80bba7692caca5f63ec4d9c2282b7ba3433124c5f952578a763888e0a9ba9205e52248539e9e7 DIST tcl-core8.6.16-src.tar.gz 7022932 BLAKE2B 9a20cc72a2654c8b4f2c9088fabef13321c414d4cc1125afbb0151ae198c6e665a7f18ffa798fcf2ed0ae1160e586819b834d745c5dfbb2b2ed5dc6d0e022d4d SHA512 b25de457523e1f884326db37acebc329d5f1a8ac2a2e0fbdfcefafc76de202ff8d1efe8ff687afa5da486c0a95ab4bde893aad6f70f0e570fa6911c5cf56d458 DIST tcl-core8.6.17-src.tar.gz 7030881 BLAKE2B 3120f53dfe238a750eface9b6f2c715432e8a640b65748c2ccafcebb0c8f4b9ee49d214fa708ea3cf17a7563e8a993a7b7fc1dbdde70055358e1c0d35a62efb4 SHA512 cc6ef374b4d005365d2453a1d25b22d9961631c8f4081ccdfba43c55901edd9f925d0ef66132b7d9d6c285445738028def243e727ecc5ffad94fb4851e5ae735 diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/files/tcl-8.6.13-tclConfig-TCL_PACKAGE_PATH-braces.patch b/sdk_container/src/third_party/portage-stable/dev-lang/tcl/files/tcl-8.6.13-tclConfig-TCL_PACKAGE_PATH-braces.patch deleted file mode 100644 index 2ae38234ca7..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/files/tcl-8.6.13-tclConfig-TCL_PACKAGE_PATH-braces.patch +++ /dev/null @@ -1,16 +0,0 @@ -https://bugs.gentoo.org/892029 -https://core.tcl-lang.org/tcltls/tktview?name=37bbdb9fb2 ---- a/unix/configure.in -+++ b/unix/configure.in -@@ -866,9 +866,9 @@ if test "$FRAMEWORK_BUILD" = "1" ; then - test -z "$TCL_MODULE_PATH" && \ - TCL_MODULE_PATH="~/Library/Tcl /Library/Tcl" - elif test "$prefix/lib" != "$libdir"; then -- test -z "$TCL_PACKAGE_PATH" && TCL_PACKAGE_PATH="{${libdir}} {${prefix}/lib} ${TCL_PACKAGE_PATH}" -+ test -z "$TCL_PACKAGE_PATH" && TCL_PACKAGE_PATH="${libdir} ${prefix}/lib ${TCL_PACKAGE_PATH}" - else -- test -z "$TCL_PACKAGE_PATH" && TCL_PACKAGE_PATH="{${prefix}/lib} ${TCL_PACKAGE_PATH}" -+ test -z "$TCL_PACKAGE_PATH" && TCL_PACKAGE_PATH="${prefix}/lib ${TCL_PACKAGE_PATH}" - fi - - #-------------------------------------------------------------------- diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-8.6.13-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-8.6.13-r1.ebuild deleted file mode 100644 index ebe525b85d5..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-8.6.13-r1.ebuild +++ /dev/null @@ -1,130 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -# Please bump with dev-lang/tk! - -inherit autotools flag-o-matic multilib-minimal multilib toolchain-funcs - -MY_P="${PN}${PV}" - -DESCRIPTION="Tool Command Language" -HOMEPAGE="http://www.tcl.tk/" -SRC_URI="https://downloads.sourceforge.net/tcl/${PN}-core${PV}-src.tar.gz" - -LICENSE="tcltk Spencer-99" -SLOT="0/8.6" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" -IUSE="debug +threads" - -RDEPEND=">=virtual/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]" -DEPEND="${RDEPEND}" - -SPARENT="${WORKDIR}/${MY_P}" -S="${SPARENT}"/unix - -PATCHES=( - "${FILESDIR}"/${PN}-8.6.10-multilib.patch - "${FILESDIR}"/${PN}-8.6.8-conf.patch # Bug 125971 - "${FILESDIR}"/${PN}-8.6.9-include-spec.patch # Bug 731120 - "${FILESDIR}"/${PN}-8.6.13-tclConfig-TCL_PACKAGE_PATH-braces.patch # Bug 892029 -) - -QA_CONFIG_IMPL_DECL_SKIP=( - stat64 opendir64 rewinddir64 closedir64 # used to test for Large File Support -) - -src_prepare() { - # By dropping the compat directory a lot of licensing and attribution burden - # (BSD-3, zlib,...) is lifted from the user - find \ - "${SPARENT}"/compat/* \ - "${SPARENT}"/doc/try.n \ - -delete || die - - pushd "${SPARENT}" &>/dev/null || die - default - popd &>/dev/null || die - - # httpold tests require netowk - rm ../tests/httpold.test \ - ../tests/env.test \ - ../tests/http.test \ - || die - - # workaround stack check issues, bug #280934 - use hppa && append-cflags "-DTCL_NO_STACK_CHECK=1" - - tc-export CC - - sed \ - -e '/chmod/s:555:755:g' \ - -i Makefile.in || die - - sed \ - -e 's:-O[2s]\?::g' \ - -i tcl.m4 || die - - mv configure.{in,ac} || die - - eautoconf - - multilib_copy_sources -} - -multilib_src_configure() { - # We went ahead and deleted the whole compat/ subdir which means - # the configure tests to detect broken versions need to pass (else - # we'll fail to build). This comes up when cross-compiling, but - # might as well get a minor configure speed up normally. - export ac_cv_func_memcmp_working="yes" - export tcl_cv_str{str,toul,tod}_unbroken="ok" - export tcl_cv_strtod_buggy="no" - - econf \ - $(use_enable threads) \ - $(use_enable debug symbols) -} - -multilib_src_install() { - #short version number - local v1=$(ver_cut 1-2) - local mylibdir=$(get_libdir) - - S= default - # fix the tclConfig.sh to eliminate refs to the build directory - # and drop unnecessary -L inclusion to default system libdir - - sed \ - -e "/^TCL_BUILD_LIB_SPEC=/s:-L$(pwd) *::g" \ - -e "/^TCL_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \ - -e "/^TCL_SRC_DIR=/s:${SPARENT}:${EPREFIX}/usr/${mylibdir}/tcl${v1}/include:g" \ - -e "/^TCL_BUILD_STUB_LIB_SPEC=/s:-L$(pwd) *::g" \ - -e "/^TCL_STUB_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \ - -e "/^TCL_BUILD_STUB_LIB_PATH=/s:$(pwd):${EPREFIX}/usr/${mylibdir}:g" \ - -e "/^TCL_LIBW_FILE=/s:'libtcl${v1}..TCL_DBGX..so':\"libtcl${v1}\$\{TCL_DBGX\}.so\":g" \ - -i "${ED}"/usr/${mylibdir}/tclConfig.sh || die - if use prefix && [[ ${CHOST} != *-darwin* ]] ; then - sed \ - -e "/^TCL_CC_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|g" \ - -e "/^TCL_LD_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|" \ - -i "${ED}"/usr/${mylibdir}/tclConfig.sh || die - fi - - # install private headers - insinto /usr/${mylibdir}/tcl${v1}/include/unix - doins *.h - insinto /usr/${mylibdir}/tcl${v1}/include/generic - doins "${SPARENT}"/generic/*.h - rm -f "${ED}"/usr/${mylibdir}/tcl${v1}/include/generic/{tcl,tclDecls,tclPlatDecls}.h || die - - # install symlink for libraries - dosym libtcl${v1}$(get_libname) /usr/${mylibdir}/libtcl$(get_libname) - dosym libtclstub${v1}.a /usr/${mylibdir}/libtclstub.a - - if multilib_is_native_abi; then - dosym tclsh${v1} /usr/bin/tclsh - dodoc "${SPARENT}"/{ChangeLog*,README.md,changes} - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-8.6.14.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-8.6.14.ebuild deleted file mode 100644 index 8718582df35..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-8.6.14.ebuild +++ /dev/null @@ -1,136 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -# Please bump with dev-lang/tk! - -inherit autotools flag-o-matic multilib-minimal multilib toolchain-funcs - -MY_P="${PN}${PV}" - -DESCRIPTION="Tool Command Language" -HOMEPAGE="http://www.tcl.tk/" -SRC_URI="https://downloads.sourceforge.net/tcl/${PN}-core${PV}-src.tar.gz" - -LICENSE="tcltk Spencer-99" -SLOT="0/8.6" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" -IUSE="debug +threads" - -RDEPEND=">=virtual/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]" -DEPEND="${RDEPEND}" - -SPARENT="${WORKDIR}/${MY_P}" -S="${SPARENT}"/unix - -PATCHES=( - "${FILESDIR}"/${PN}-8.6.10-multilib.patch - "${FILESDIR}"/${PN}-8.6.8-conf.patch # Bug 125971 - "${FILESDIR}"/${PN}-8.6.9-include-spec.patch # Bug 731120 - "${FILESDIR}"/${PN}-8.6.13-tclConfig-TCL_PACKAGE_PATH-braces.patch # Bug 892029 -) - -QA_CONFIG_IMPL_DECL_SKIP=( - stat64 opendir64 rewinddir64 closedir64 # used to test for Large File Support -) - -src_prepare() { - # By dropping the compat directory a lot of licensing and attribution burden - # (BSD-3, zlib,...) is lifted from the user - find \ - "${SPARENT}"/compat/* \ - "${SPARENT}"/doc/try.n \ - -delete || die - - # Drop -Werror - sed -i \ - -e "s: -Werror::g" \ - dltest/Makefile.in \ - || die - - pushd "${SPARENT}" &>/dev/null || die - default - popd &>/dev/null || die - - # httpold tests require netowk - rm ../tests/httpold.test \ - ../tests/env.test \ - ../tests/http.test \ - || die - - # workaround stack check issues, bug #280934 - use hppa && append-cflags "-DTCL_NO_STACK_CHECK=1" - - tc-export CC - - sed \ - -e '/chmod/s:555:755:g' \ - -i Makefile.in || die - - sed \ - -e 's:-O[2s]\?::g' \ - -i tcl.m4 || die - - mv configure.{in,ac} || die - - eautoconf - - multilib_copy_sources -} - -multilib_src_configure() { - # We went ahead and deleted the whole compat/ subdir which means - # the configure tests to detect broken versions need to pass (else - # we'll fail to build). This comes up when cross-compiling, but - # might as well get a minor configure speed up normally. - export ac_cv_func_memcmp_working="yes" - export tcl_cv_str{str,toul,tod}_unbroken="ok" - export tcl_cv_strtod_buggy="no" - - econf \ - $(use_enable threads) \ - $(use_enable debug symbols) -} - -multilib_src_install() { - #short version number - local v1=$(ver_cut 1-2) - local mylibdir=$(get_libdir) - - S= default - # fix the tclConfig.sh to eliminate refs to the build directory - # and drop unnecessary -L inclusion to default system libdir - - sed \ - -e "/^TCL_BUILD_LIB_SPEC=/s:-L$(pwd) *::g" \ - -e "/^TCL_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \ - -e "/^TCL_SRC_DIR=/s:${SPARENT}:${EPREFIX}/usr/${mylibdir}/tcl${v1}/include:g" \ - -e "/^TCL_BUILD_STUB_LIB_SPEC=/s:-L$(pwd) *::g" \ - -e "/^TCL_STUB_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \ - -e "/^TCL_BUILD_STUB_LIB_PATH=/s:$(pwd):${EPREFIX}/usr/${mylibdir}:g" \ - -e "/^TCL_LIBW_FILE=/s:'libtcl${v1}..TCL_DBGX..so':\"libtcl${v1}\$\{TCL_DBGX\}.so\":g" \ - -i "${ED}"/usr/${mylibdir}/tclConfig.sh || die - if use prefix && [[ ${CHOST} != *-darwin* ]] ; then - sed \ - -e "/^TCL_CC_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|g" \ - -e "/^TCL_LD_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|" \ - -i "${ED}"/usr/${mylibdir}/tclConfig.sh || die - fi - - # install private headers - insinto /usr/${mylibdir}/tcl${v1}/include/unix - doins *.h - insinto /usr/${mylibdir}/tcl${v1}/include/generic - doins "${SPARENT}"/generic/*.h - rm -f "${ED}"/usr/${mylibdir}/tcl${v1}/include/generic/{tcl,tclDecls,tclPlatDecls}.h || die - - # install symlink for libraries - dosym libtcl${v1}$(get_libname) /usr/${mylibdir}/libtcl$(get_libname) - dosym libtclstub${v1}.a /usr/${mylibdir}/libtclstub.a - - if multilib_is_native_abi; then - dosym tclsh${v1} /usr/bin/tclsh - dodoc "${SPARENT}"/{ChangeLog*,README.md,changes} - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-8.6.15.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-8.6.15.ebuild deleted file mode 100644 index dabb62d11cd..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-8.6.15.ebuild +++ /dev/null @@ -1,135 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with dev-lang/tk! - -inherit autotools flag-o-matic multilib-minimal multilib toolchain-funcs - -MY_P="${PN}${PV}" - -DESCRIPTION="Tool Command Language" -HOMEPAGE="http://www.tcl.tk/" -SRC_URI="https://downloads.sourceforge.net/tcl/${PN}-core${PV}-src.tar.gz" - -SPARENT="${WORKDIR}/${MY_P}" -S="${SPARENT}"/unix - -LICENSE="tcltk Spencer-99" -SLOT="0/8.6" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" -IUSE="debug +threads" - -RDEPEND=">=virtual/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]" -DEPEND="${RDEPEND}" - -PATCHES=( - "${FILESDIR}"/${PN}-8.6.10-multilib.patch - "${FILESDIR}"/${PN}-8.6.8-conf.patch # Bug 125971 - "${FILESDIR}"/${PN}-8.6.9-include-spec.patch # Bug 731120 -) - -QA_CONFIG_IMPL_DECL_SKIP=( - stat64 opendir64 rewinddir64 closedir64 # used to test for Large File Support -) - -src_prepare() { - # By dropping the compat directory a lot of licensing and attribution burden - # (BSD-3, zlib,...) is lifted from the user - find \ - "${SPARENT}"/compat/* \ - "${SPARENT}"/doc/try.n \ - -delete || die - - # Drop -Werror - sed -i \ - -e "s: -Werror::g" \ - dltest/Makefile.in \ - || die - - pushd "${SPARENT}" &>/dev/null || die - default - popd &>/dev/null || die - - # httpold tests require netowk - rm ../tests/httpold.test \ - ../tests/env.test \ - ../tests/http.test \ - || die - - # workaround stack check issues, bug #280934 - use hppa && append-cflags "-DTCL_NO_STACK_CHECK=1" - - tc-export CC - - sed \ - -e '/chmod/s:555:755:g' \ - -i Makefile.in || die - - sed \ - -e 's:-O[2s]\?::g' \ - -i tcl.m4 || die - - mv configure.{in,ac} || die - - eautoconf - - multilib_copy_sources -} - -multilib_src_configure() { - # We went ahead and deleted the whole compat/ subdir which means - # the configure tests to detect broken versions need to pass (else - # we'll fail to build). This comes up when cross-compiling, but - # might as well get a minor configure speed up normally. - export ac_cv_func_memcmp_working="yes" - export tcl_cv_str{str,toul,tod}_unbroken="ok" - export tcl_cv_strtod_buggy="no" - - econf \ - $(use_enable threads) \ - $(use_enable debug symbols) -} - -multilib_src_install() { - #short version number - local v1=$(ver_cut 1-2) - local mylibdir=$(get_libdir) - - S= default - # fix the tclConfig.sh to eliminate refs to the build directory - # and drop unnecessary -L inclusion to default system libdir - - sed \ - -e "/^TCL_BUILD_LIB_SPEC=/s:-L$(pwd) *::g" \ - -e "/^TCL_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \ - -e "/^TCL_SRC_DIR=/s:${SPARENT}:${EPREFIX}/usr/${mylibdir}/tcl${v1}/include:g" \ - -e "/^TCL_BUILD_STUB_LIB_SPEC=/s:-L$(pwd) *::g" \ - -e "/^TCL_STUB_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \ - -e "/^TCL_BUILD_STUB_LIB_PATH=/s:$(pwd):${EPREFIX}/usr/${mylibdir}:g" \ - -e "/^TCL_LIBW_FILE=/s:'libtcl${v1}..TCL_DBGX..so':\"libtcl${v1}\$\{TCL_DBGX\}.so\":g" \ - -i "${ED}"/usr/${mylibdir}/tclConfig.sh || die - if use prefix && [[ ${CHOST} != *-darwin* ]] ; then - sed \ - -e "/^TCL_CC_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|g" \ - -e "/^TCL_LD_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|" \ - -i "${ED}"/usr/${mylibdir}/tclConfig.sh || die - fi - - # install private headers - insinto /usr/${mylibdir}/tcl${v1}/include/unix - doins *.h - insinto /usr/${mylibdir}/tcl${v1}/include/generic - doins "${SPARENT}"/generic/*.h - rm -f "${ED}"/usr/${mylibdir}/tcl${v1}/include/generic/{tcl,tclDecls,tclPlatDecls}.h || die - - # install symlink for libraries - dosym libtcl${v1}$(get_libname) /usr/${mylibdir}/libtcl$(get_libname) - dosym libtclstub${v1}.a /usr/${mylibdir}/libtclstub.a - - if multilib_is_native_abi; then - dosym tclsh${v1} /usr/bin/tclsh - dodoc "${SPARENT}"/{ChangeLog*,README.md,changes} - fi -} From fad29c8c6f7fdd2db40e4f74ea6ec2f296db95b6 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:12 +0000 Subject: [PATCH 055/291] dev-libs/elfutils: Sync with Gentoo It's from Gentoo commit 514db4d6ac702c0bde9f75467615380150fdf3aa. Signed-off-by: Flatcar Buildbot --- .../dev-libs/elfutils/elfutils-0.193-r1.ebuild | 4 ++-- .../dev-libs/elfutils/elfutils-0.194.ebuild | 9 +++++---- .../dev-libs/elfutils/elfutils-9999.ebuild | 7 ++++--- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.193-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.193-r1.ebuild index af128279f7b..6b7ee7cfe36 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.193-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.193-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 2003-2025 Gentoo Authors +# Copyright 2003-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -28,7 +28,7 @@ fi LICENSE="|| ( GPL-2+ LGPL-3+ ) utils? ( GPL-3+ )" SLOT="0" -IUSE="bzip2 debuginfod +lzma nls static-libs stacktrace test +utils valgrind zstd" +IUSE="bzip2 +debuginfod +lzma nls static-libs stacktrace test +utils valgrind zstd" RESTRICT="!test? ( test )" RDEPEND=" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.194.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.194.ebuild index 6f34b761289..dcb73bf5449 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.194.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.194.ebuild @@ -1,4 +1,4 @@ -# Copyright 2003-2025 Gentoo Authors +# Copyright 2003-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -21,14 +21,14 @@ else SRC_URI="https://sourceware.org/elfutils/ftp/${PV}/${P}.tar.bz2" SRC_URI+=" verify-sig? ( https://sourceware.org/elfutils/ftp/${PV}/${P}.tar.bz2.sig )" - KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-elfutils-20240301 )" fi LICENSE="|| ( GPL-2+ LGPL-3+ ) utils? ( GPL-3+ )" SLOT="0" -IUSE="bzip2 debuginfod libarchive +lzma nls static-libs stacktrace test +utils valgrind zstd" +IUSE="bzip2 +debuginfod +libarchive +lzma nls static-libs stacktrace test +utils valgrind zstd" RESTRICT="!test? ( test )" REQUIRED_USE="debuginfod? ( libarchive )" @@ -109,7 +109,8 @@ multilib_src_configure() { local myeconfargs=( $(use_enable nls) $(multilib_native_use_enable debuginfod) - # Could do dummy if needed? + # Could do dummy if needed? We could also split libdebuginfod + # (client support) into its own USE if required. $(use_enable debuginfod libdebuginfod) $(multilib_native_use_enable stacktrace) $(use_enable valgrind valgrind-annotations) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-9999.ebuild index 1aa4e2bbb7d..0a0a771b81b 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 2003-2025 Gentoo Authors +# Copyright 2003-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -28,7 +28,7 @@ fi LICENSE="|| ( GPL-2+ LGPL-3+ ) utils? ( GPL-3+ )" SLOT="0" -IUSE="bzip2 debuginfod libarchive +lzma nls static-libs stacktrace test +utils valgrind zstd" +IUSE="bzip2 +debuginfod +libarchive +lzma nls static-libs stacktrace test +utils valgrind zstd" RESTRICT="!test? ( test )" REQUIRED_USE="debuginfod? ( libarchive )" @@ -108,7 +108,8 @@ multilib_src_configure() { local myeconfargs=( $(use_enable nls) $(multilib_native_use_enable debuginfod) - # Could do dummy if needed? + # Could do dummy if needed? We could also split libdebuginfod + # (client support) into its own USE if required. $(use_enable debuginfod libdebuginfod) $(multilib_native_use_enable stacktrace) $(use_enable valgrind valgrind-annotations) From 435d98bbcf175127c45b132e22ea838da1644987 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:12 +0000 Subject: [PATCH 056/291] dev-libs/expat: Sync with Gentoo It's from Gentoo commit a170c21d9f7d5e58af62d25c57b91d4527b7aba0. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-libs/expat/Manifest | 1 + .../dev-libs/expat/expat-2.7.4.ebuild | 100 ++++++++++++++++++ 2 files changed, 101 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/expat/expat-2.7.4.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/expat/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/expat/Manifest index 9a6606b6706..2739860a87a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/expat/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/expat/Manifest @@ -4,3 +4,4 @@ DIST expat-2.7.0.tar.xz 493060 BLAKE2B 44567e955b8cf2053665140b3557897c6e0e66c7e DIST expat-2.7.1.tar.xz 496108 BLAKE2B 243ef1c3578234135018d31b567c88a50cadddac86441e4d4a6d6330e113596edbad13b40c79f541d49487e7df98d798032d39ec28b7d67d22f46e4290d14519 SHA512 4c9a6c1c1769d2c4404da083dd3013dbc73883da50e2b7353db2349a420e9b6d27cac7dbcb645991d6c7cdbf79bd88486fc1ac353084ce48e61081fb56e13d46 DIST expat-2.7.2.tar.xz 503392 BLAKE2B 35525274817dab4d6ae8698f5f83978e633a6e4afe7cf3b126c87d5aba4b64bcb9d26ec3e4a39b1ea82a7430e290950595bfa4150266ef3806026b423a870e33 SHA512 da64ae6d1762388873acbad9bc0edc80094c693bccacf89ca90d1626f53866c5e87c2019276e39643963d6479fb8a6d7b1f05f38caa1be84a24ff9d603449e38 DIST expat-2.7.3.tar.xz 504744 BLAKE2B 26d4c9cb2c9b2a5b9ca9a86e9ea754e832f397bdb8ef266587b146591ff1358b2f439153f2eadb584180be6aee85050f19987565bbedf215993061ce5c85c5c9 SHA512 d2e495a9a2b902d38d838ec514da67ff56b76cdefcf89d0c320e2f319a35e439bd697880334d0ee70ca79b4515ac94c0c9b9ff97f899bcaa89308f1c8efaee0d +DIST expat-2.7.4.tar.xz 507328 BLAKE2B 167518530b3e88f7ecb6aecc5eb54a41a740f7184732dd72fafe9bfdcda0b94c537331543744b8b0eaf918d5f0b82dbe311ee4192a592b74e5d65dc577ed8f6a SHA512 a5533b99b1e0b73adcbe1f1b4816ce04e963fb6b734e6018c823597297a367a0524f31e040e3320122398833371f3f7caf4f9bf3cb91594a38151b2672edfa8f diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/expat/expat-2.7.4.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/expat/expat-2.7.4.ebuild new file mode 100644 index 00000000000..f7bffbba014 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/expat/expat-2.7.4.ebuild @@ -0,0 +1,100 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +AUTOTOOLS_AUTO_DEPEND=no +inherit autotools multilib-minimal + +DESCRIPTION="Stream-oriented XML parser library" +HOMEPAGE="https://libexpat.github.io/" +SRC_URI="https://github.com/libexpat/libexpat/releases/download/R_${PV//\./_}/expat-${PV}.tar.xz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="examples static-libs test unicode" +RESTRICT="!test? ( test )" +BDEPEND="unicode? ( ${AUTOTOOLS_DEPEND} )" + +DOCS=( README.md ) + +QA_CONFIG_IMPL_DECL_SKIP=( + # https://bugs.gentoo.org/906384 + arc4random + arc4random_buf +) + +src_prepare() { + default + + # fix interpreter to be a recent/good shell + sed -i -e "1s:/bin/sh:${BASH}:" conftools/get-version.sh || die + if use unicode; then + cp -R "${S}" "${S}"w || die + pushd "${S}"w >/dev/null + find -name Makefile.am \ + -exec sed \ + -e 's,libexpat\.la,libexpatw.la,' \ + -e 's,libexpat_la,libexpatw_la,' \ + -i {} + || die + eautoreconf + popd >/dev/null + fi +} + +multilib_src_configure() { + local myconf="$(use_with test tests) $(use_enable static-libs static) --without-docbook" + + mkdir -p "${BUILD_DIR}"w || die + + if use unicode; then + pushd "${BUILD_DIR}"w >/dev/null + CPPFLAGS="${CPPFLAGS} -DXML_UNICODE" ECONF_SOURCE="${S}"w econf ${myconf} + popd >/dev/null + fi + + ECONF_SOURCE="${S}" econf ${myconf} +} + +multilib_src_compile() { + emake + + if use unicode; then + pushd "${BUILD_DIR}"w >/dev/null + emake -C lib + popd >/dev/null + fi +} + +multilib_src_install() { + emake install DESTDIR="${D}" + + if use unicode; then + pushd "${BUILD_DIR}"w >/dev/null + emake -C lib install DESTDIR="${D}" + popd >/dev/null + + pushd "${ED}"/usr/$(get_libdir)/pkgconfig >/dev/null + cp expat.pc expatw.pc + sed -i -e '/^Libs/s:-lexpat:&w:' expatw.pc || die + popd >/dev/null + fi +} + +multilib_src_install_all() { + einstalldocs + + doman doc/xmlwf.1 + + # Note: Use of HTML_DOCS would add unwanted "doc" subfolder + docinto html + dodoc doc/*.{css,html} + + if use examples; then + docinto examples + dodoc examples/*.c + docompress -x usr/share/doc/${PF}/examples + fi + + find "${D}" -name '*.la' -type f -delete || die +} From 4e15ef0eb28e41498c8869d3b28a759ded2bf553 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:13 +0000 Subject: [PATCH 057/291] dev-libs/glib: Sync with Gentoo It's from Gentoo commit 9d183f2001f6e768cdfb2d6c191f160f55f00564. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-libs/glib/Manifest | 2 +- .../glib-2.84.4-setlocale-glibc-2.43.patch | 78 +++ .../dev-libs/glib/glib-2.84.4-r1.ebuild | 17 +- .../dev-libs/glib/glib-2.84.4-r2.ebuild | 481 ++++++++++++++++++ .../dev-libs/glib/glib-2.84.4.ebuild | 17 +- ...{glib-2.86.1.ebuild => glib-2.86.4.ebuild} | 18 +- 6 files changed, 584 insertions(+), 29 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/glib/files/glib-2.84.4-setlocale-glibc-2.43.patch create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.84.4-r2.ebuild rename sdk_container/src/third_party/portage-stable/dev-libs/glib/{glib-2.86.1.ebuild => glib-2.86.4.ebuild} (97%) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/glib/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/glib/Manifest index b20b9c34a66..7c84572f2d2 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/glib/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/glib/Manifest @@ -1,4 +1,4 @@ DIST glib-2.84.4.tar.xz 5618200 BLAKE2B 5faee382433085cd598545a99e2e95ce430be4ac5ca10106b70f2404ddacf328f4223bc092a23025f9bf8b936619a88a9dfb220674a07e9250cf4213c6213be9 SHA512 2de9b2f7376c0e5f6ee585087090675d597c474199a10d04aad18df688b6ca77d17e93a86ec07482898663f51c82121992272496318138f77ca5ad2c340a4bd3 -DIST glib-2.86.1.tar.xz 5673928 BLAKE2B 571f8738e7ca5568ee9a71f0fddb9eba0eba0ec33cad7540515eb744c3104f69ffe02d5966e47eb568abd04cd111e0b3b004d7c2817177fd5f7bc26e354dec0a SHA512 b2e9a3a35cd4cbe0bb6ca493a4250df480eeb0570a0877880ff4ec6d7f1f98d828249b3b60f839b81f17a33494d95be9d42b5f20fa6bb1acb15bcf5734adba51 +DIST glib-2.86.4.tar.xz 5692304 BLAKE2B 20dee8c99fdb410d7f9c09366f1688dbc075638fdecd44f67562cc9cc46e34712cd1357d5a4facadd36f3c45fceeb83c7910be4f9c819ad20778339cdfb34452 SHA512 13e8beb84f3464f50c9764d0d3c6822a4bb41ae65e6c3ffac4200a5b441acdd2eb6f838a6b0722cae501e367ce9cfd4f8516b684a391c2f088a593172abcacd9 DIST gobject-introspection-1.82.0.tar.xz 1052872 BLAKE2B 8336ae26d48a71a203655d9d268076f603055ceabb55dbfa676f2c67b4096b83afc106d485dc45d02b3a8be806f9ef50d54806a82e61f2a252ae59543c61e934 SHA512 e139fadb4174c72b648914f3774d89fc0e5eaee45bba0c13edf05de883664dad8276dbc34006217bb09871ed4bad23adab51ff232a17b9eb131329b2926cafb7 DIST gobject-introspection-1.86.0.tar.xz 1083172 BLAKE2B 425d60c8c4bd582c55030ed91b4c2f3982e3c502da1c6f2579c4cc1e05d82d8a8c9a533af3e4a7ae8f6a031761d763d7f7ad8031e38ae3bd7d2549c9f6bcf7f3 SHA512 a9d2edbe1cea710e10ef1ea8059a45cf5689bace43b5d2a6861809e863a6de7114b4763db8df3916ad6202c9967f48f7997acd0810a86e5e88dea7e0be88b585 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/glib/files/glib-2.84.4-setlocale-glibc-2.43.patch b/sdk_container/src/third_party/portage-stable/dev-libs/glib/files/glib-2.84.4-setlocale-glibc-2.43.patch new file mode 100644 index 00000000000..5ccaf21b093 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/glib/files/glib-2.84.4-setlocale-glibc-2.43.patch @@ -0,0 +1,78 @@ +https://bugs.gentoo.org/969959 +https://gitlab.gnome.org/GNOME/glib/-/merge_requests/5035 + +From 7c837a520f51db74e482bc8196ed5ff40e432307 Mon Sep 17 00:00:00 2001 +From: Philip Withnall +Date: Mon, 23 Feb 2026 12:30:08 +0000 +Subject: [PATCH] gdatetime: Fix comparison against cached LC_TIME value +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The string pointer returned by `setlocale (LC_TIME, NULL)` may change if +other code calls `setlocale()` again. But because internally glibc +implements it using `strdup()`, the pointer value itself may actually +stay the same even if the string contents change. + +This started happening more commonly in glibc 2.43, due to an internal +`malloc()` change which happened to trigger this latent bug. + +In the situations where this happened, it resulted in an outdated cached +era value being used. + +Fix it by taking a copy of the `LC_TIME` string. Unfortunately this +means a reachable (‘leaked’) static string allocation at the end of the +process’ life, but tooling should ignore that if we mark it with +`g_ignore_leak()`. + +Debugged by Sam James, Wilco and Douglas R. Reno. See also +https://sourceware.org/bugzilla/show_bug.cgi?id=33899#c6. + +Signed-off-by: Philip Withnall +Fixes: #3895 +--- + glib/gdatetime.c | 9 ++++++--- + 1 file changed, 6 insertions(+), 3 deletions(-) + +diff --git a/glib/gdatetime.c b/glib/gdatetime.c +index c4d7445432..8d67354cf2 100644 +--- a/glib/gdatetime.c ++++ b/glib/gdatetime.c +@@ -65,6 +65,7 @@ + #include + #endif + ++#include "glib-private.h" + #include "gatomic.h" + #include "gcharset.h" + #include "gcharsetprivate.h" +@@ -2981,14 +2982,14 @@ date_time_lookup_era (GDateTime *datetime, + { + static GMutex era_mutex; + static GPtrArray *static_era_description = NULL; /* (mutex era_mutex) (element-type GEraDescriptionSegment) */ +- static const char *static_era_description_locale = NULL; /* (mutex era_mutex) */ ++ static char *static_era_description_locale = NULL; /* (mutex era_mutex) (owned) */ + const char *current_lc_time = setlocale (LC_TIME, NULL); + GPtrArray *local_era_description; /* (element-type GEraDescriptionSegment) */ + GEraDate datetime_date; + + g_mutex_lock (&era_mutex); + +- if (static_era_description_locale != current_lc_time) ++ if (g_strcmp0 (static_era_description_locale, current_lc_time) != 0) + { + const char *era_description_str; + size_t era_description_str_len; +@@ -3061,7 +3062,9 @@ date_time_lookup_era (GDateTime *datetime, + + g_free (tmp); + +- static_era_description_locale = current_lc_time; ++ g_free (static_era_description_locale); ++ static_era_description_locale = g_strdup (current_lc_time); ++ g_ignore_leak (static_era_description_locale); + } + + if (static_era_description == NULL) +-- +GitLab diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.84.4-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.84.4-r1.ebuild index f6f213fa087..c694d0c5393 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.84.4-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.84.4-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -43,16 +43,16 @@ RDEPEND=" >=dev-libs/libffi-3.0.13-r1:=[${MULTILIB_USEDEP}] >=virtual/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] >=virtual/libintl-0-r2[${MULTILIB_USEDEP}] - introspection? ( - >=dev-libs/gobject-introspection-common-${INTROSPECTION_PV} - ) kernel_linux? ( >=sys-apps/util-linux-2.23[${MULTILIB_USEDEP}] ) selinux? ( >=sys-libs/libselinux-2.2.2-r5[${MULTILIB_USEDEP}] ) xattr? ( !elibc_glibc? ( >=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}] ) ) elf? ( virtual/libelf:0= ) sysprof? ( >=dev-util/sysprof-capture-3.40.1:4[${MULTILIB_USEDEP}] ) " -DEPEND="${RDEPEND}" +DEPEND=" + ${RDEPEND} + systemtap? ( >=dev-debug/systemtap-1.3 ) +" # libxml2 used for optional tests that get automatically skipped BDEPEND=" app-text/docbook-xsl-stylesheets @@ -356,13 +356,12 @@ multilib_src_configure() { ) # Workaround for bug #938302 - if use systemtap && has_version "dev-debug/systemtap[-dtrace-symlink(+)]" ; then - local native_file="${T}"/meson.${CHOST}.ini.local - cat >> ${native_file} <<-EOF || die + if use systemtap; then + tc-export CC + meson_add_machine_file dtrace <<-EOF [binaries] dtrace='stap-dtrace' EOF - emesonargs+=( --native-file "${native_file}" ) fi meson_src_configure diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.84.4-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.84.4-r2.ebuild new file mode 100644 index 00000000000..456395ce2e2 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.84.4-r2.ebuild @@ -0,0 +1,481 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_REQ_USE="xml(+)" +PYTHON_COMPAT=( python3_{11..14} ) + +inherit dot-a eapi9-ver gnome.org gnome2-utils linux-info meson-multilib multilib python-any-r1 toolchain-funcs xdg + +DESCRIPTION="The GLib library of C routines" +HOMEPAGE="https://www.gtk.org/" + +INTROSPECTION_PN="gobject-introspection" +INTROSPECTION_PV="1.82.0" +INTROSPECTION_P="${INTROSPECTION_PN}-${INTROSPECTION_PV}" +SRC_URI=" + ${SRC_URI} + introspection? ( mirror://gnome/sources/gobject-introspection/${INTROSPECTION_PV%.*}/gobject-introspection-${INTROSPECTION_PV}.tar.${GNOME_TARBALL_SUFFIX} ) +" +INTROSPECTION_SOURCE_DIR="${WORKDIR}/${INTROSPECTION_P}" +INTROSPECTION_BUILD_DIR="${WORKDIR}/${INTROSPECTION_P}-build" + +LICENSE="LGPL-2.1+" +SLOT="2" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="dbus debug +elf doc +introspection +mime selinux static-libs sysprof systemtap test utils xattr" +RESTRICT="!test? ( test )" + +# * elfutils (via libelf) does not build on Windows. gresources are not embedded +# within ELF binaries on that platform anyway and inspecting ELF binaries from +# other platforms is not that useful so exclude the dependency in this case. +# * Technically static-libs is needed on zlib, util-linux and perhaps more, but +# these are used by GIO, which glib[static-libs] consumers don't really seem +# to need at all, thus not imposing the deps for now and once some consumers +# are actually found to static link libgio-2.0.a, we can revisit and either add +# them or just put the (build) deps in that rare consumer instead of recursive +# RDEPEND here (due to lack of recursive DEPEND). +RDEPEND=" + !=virtual/libiconv-0-r1[${MULTILIB_USEDEP}] + >=dev-libs/libpcre2-10.32:0=[${MULTILIB_USEDEP},unicode(+),static-libs?] + >=dev-libs/libffi-3.0.13-r1:=[${MULTILIB_USEDEP}] + >=virtual/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] + >=virtual/libintl-0-r2[${MULTILIB_USEDEP}] + kernel_linux? ( >=sys-apps/util-linux-2.23[${MULTILIB_USEDEP}] ) + selinux? ( >=sys-libs/libselinux-2.2.2-r5[${MULTILIB_USEDEP}] ) + xattr? ( !elibc_glibc? ( >=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}] ) ) + elf? ( virtual/libelf:0= ) + sysprof? ( >=dev-util/sysprof-capture-3.40.1:4[${MULTILIB_USEDEP}] ) +" +DEPEND=" + ${RDEPEND} + systemtap? ( >=dev-debug/systemtap-1.3 ) +" +# libxml2 used for optional tests that get automatically skipped +BDEPEND=" + app-text/docbook-xsl-stylesheets + >=dev-build/meson-1.4.0 + dev-libs/libxslt + >=sys-devel/gettext-0.19.8 + doc? ( >=dev-util/gi-docgen-2023.1 ) + dev-python/docutils + systemtap? ( >=dev-debug/systemtap-1.3 ) + ${PYTHON_DEPS} + test? ( >=sys-apps/dbus-1.2.14 ) + virtual/pkgconfig + + introspection? ( + $(python_gen_any_dep ' + dev-python/setuptools[${PYTHON_USEDEP}] + ') + virtual/pkgconfig + sys-devel/bison + app-alternatives/lex + ${PYTHON_DEPS} + ) +" +# TODO: >=dev-util/gdbus-codegen-${PV} test dep once we modify gio/tests/meson.build to use external gdbus-codegen + +PDEPEND=" + dbus? ( gnome-base/dconf ) + mime? ( x11-misc/shared-mime-info ) +" +# shared-mime-info needed for gio/xdgmime, bug #409481 +# dconf is needed to be able to save settings, bug #498436 + +MULTILIB_CHOST_TOOLS=( + /usr/bin/gio-querymodules$(get_exeext) +) + +PATCHES=( + "${FILESDIR}"/${PN}-2.64.1-mark-gdbus-server-auth-test-flaky.patch + "${FILESDIR}"/${PN}-2.84.4-libpcre2-10.47.patch + "${FILESDIR}"/${PN}-2.86-MR-4912.patch + "${FILESDIR}"/${PN}-2.86-MR-4915-CVE-2025-13601.patch + "${FILESDIR}"/${PN}-2.86-MR-4934-CVE-2025-14087.patch + "${FILESDIR}"/${PN}-2.86-MR-4936.patch + "${FILESDIR}"/${PN}-2.84.4-setlocale-glibc-2.43.patch +) + +python_check_deps() { + if use introspection ; then + python_has_version "dev-python/setuptools[${PYTHON_USEDEP}]" + fi +} + +pkg_setup() { + if use kernel_linux ; then + CONFIG_CHECK="~INOTIFY_USER" + if use test ; then + CONFIG_CHECK="~IPV6" + WARNING_IPV6="Your kernel needs IPV6 support for running some tests, skipping them." + fi + linux-info_pkg_setup + fi + python-any-r1_pkg_setup +} + +src_prepare() { + if use test; then + # TODO: Review the test exclusions, especially now with meson + # gdesktopappinfo requires existing terminal (gnome-terminal or any + # other), falling back to xterm if one doesn't exist + #if ! has_version x11-terms/xterm && ! has_version x11-terms/gnome-terminal ; then + # ewarn "Some tests will be skipped due to missing terminal program" + # These tests seem to sometimes fail even with a terminal; skip for now and reevulate with meson + # Also try https://gitlab.gnome.org/GNOME/glib/issues/1601 once ready + # for backport (or in a bump) and file new issue if still fails + sed -i -e "/appinfo\/launch/d" gio/tests/appinfo.c || die + # desktop-app-info/launch* might fail similarly + sed -i -e "/desktop-app-info\/launch-as-manager/d" gio/tests/desktop-app-info.c || die + #fi + + # https://bugzilla.gnome.org/show_bug.cgi?id=722604 + sed -i -e "/timer\/stop/d" glib/tests/timer.c || die + sed -i -e "/timer\/basic/d" glib/tests/timer.c || die + + ewarn "Tests for search-utils have been skipped" + sed -i -e "/search-utils/d" glib/tests/meson.build || die + + # Running gdb inside a test within sandbox is brittle + sed -i -e '/self.__gdb = shutil.which("gdb")/s:"gdb":"gdb-idonotexist":' glib/tests/assert-msg-test.py || die + + # Play nice with network-sandbox, but this approach would defeat the purpose of the test + #sed -i -e "s/localhost/127.0.0.1/g" gio/tests/gsocketclient-slow.c || die + else + # Don't build tests, also prevents extra deps, bug #512022 + sed -i -e '/subdir.*tests/d' {.,gio,glib}/meson.build || die + fi + + # Don't build fuzzing binaries - not used + sed -i -e '/subdir.*fuzzing/d' meson.build || die + + # gdbus-codegen is a separate package + sed -i -e '/install_dir/d' gio/gdbus-2.0/codegen/meson.build || die + sed -i -e '/install : true/d' gio/gdbus-2.0/codegen/meson.build || die + + # Same kind of meson-0.50 issue with some installed-tests files; will likely be fixed upstream soon + sed -i -e '/install_dir/d' gio/tests/meson.build || die + + cat > "${T}/glib-test-ld-wrapper" <<-EOF + #!/usr/bin/env sh + exec \${LD:-ld} "\$@" + EOF + chmod a+x "${T}/glib-test-ld-wrapper" || die + sed -i -e "s|'ld'|'${T}/glib-test-ld-wrapper'|g" gio/tests/meson.build || die + + # make default sane for us + if use prefix ; then + sed -i -e "s:/usr/local:${EPREFIX}/usr:" gio/xdgmime/xdgmime.c || die + # bug #308609, without path, bug #314057 + export PERL=perl + fi + + if [[ ${CHOST} == *-solaris* ]] ; then + # fix standards conflicts + sed -i \ + -e 's/\<\(_XOPEN_SOURCE_EXTENDED\)\>/_POSIX_PTHREAD_SEMANTICS/' \ + -e '/\<_XOPEN_SOURCE\>/s/\<2\>/600/' \ + meson.build || die + sed -i -e '/#define\s\+_POSIX_SOURCE/d' \ + glib/giounix.c || die + fi + + # disable native macOS integrations + sed -i -e '/glib_conf.set(.HAVE_\(CARBON\|COCOA\).,/s/true/false/' \ + meson.build || die + sed -i \ + -e '/AvailabilityMacros.h/d' \ + gio/giomodule.c || die + + # Link the glib source to the introspection subproject directory so it can be built there first + if use introspection ; then + ln -s "${S}" "${INTROSPECTION_SOURCE_DIR}/subprojects/glib" + fi + + default + gnome2_environment_reset + # TODO: python_name sedding for correct python shebang? Might be relevant mainly for glib-utils only +} + +src_configure() { + lto-guarantee-fat + meson-multilib_src_configure +} + +multilib_src_configure() { + # TODO: figure a way to pass appropriate values for all cross properties + # that glib uses (search for get_cross_property) + #if tc-is-cross-compiler ; then + # https://bugzilla.gnome.org/show_bug.cgi?id=756473 + # TODO-meson: This should be in meson cross file as 'growing_stack' + # property; and more, look at get_cross_property + #case ${CHOST} in + #hppa*|metag*) export glib_cv_stack_grows=yes ;; + #*) export glib_cv_stack_grows=no ;; + #esac + #fi + + _need_bootstrap_gi() { + if ! multilib_native_use introspection ; then + return 1 + fi + + if ! has_version ">=dev-libs/${INTROSPECTION_P}" ; then + return 0 + fi + + # Is the installed gobject-introspection usable? + if ! g-ir-scanner --version &> /dev/null ; then + return 0 + fi + + # Do we somehow have a dev-libs/gobject-introspection installed + # with an unsatisfied dependency? (bug #951487) + if ! $(tc-getPKG_CONFIG) --cflags gobject-introspection-1.0 &> /dev/null ; then + return 0 + fi + + # Make sure has_version didn't lie to us while at it as well, + # given bug #951487. + if ! $(tc-getPKG_CONFIG) --atleast-version=${INTROSPECTION_PV} gobject-introspection-1.0 &> /dev/null ; then + return 0 + fi + + return 1 + } + + # Build internal copy of gobject-introspection to avoid circular dependency (built for native abi only) + if _need_bootstrap_gi ; then + einfo "Bootstrapping gobject-introspection..." + INTROSPECTION_BIN_DIR="${T}/bootstrap-gi-prefix/usr/bin" + INTROSPECTION_LIB_DIR="${T}/bootstrap-gi-prefix/usr/$(get_libdir)" + + local emesonargs=( + --prefix="${T}/bootstrap-gi-prefix/usr" + -Dpython="${EPYTHON}" + -Dbuild_introspection_data=true + # Build an internal copy of glib for the internal copy of gobject-introspection + --force-fallback-for=glib + # Make the paths in pkgconfig files relative as we used to not + # do a proper install here and it seems less risky to keep it + # this way. + -Dpkgconfig.relocatable=true + + # We want as minimal a build as possible here to speed things up + # and reduce the risk of failures. + -Dglib:selinux=disabled + -Dglib:xattr=false + -Dglib:libmount=disabled + -Dglib:man-pages=disabled + -Dglib:dtrace=disabled + -Dglib:systemtap=disabled + -Dglib:sysprof=disabled + -Dglib:documentation=false + -Dglib:tests=false + -Dglib:installed_tests=false + -Dglib:nls=disabled + -Dglib:oss_fuzz=disabled + -Dglib:libelf=disabled + -Dglib:multiarch=false + ) + + ORIG_SOURCE_DIR=${EMESON_SOURCE} + EMESON_SOURCE=${INTROSPECTION_SOURCE_DIR} + + # g-ir-scanner has some relocatable logic but it searches + # for 'lib', not 'lib64', so it can't find itself and eventually + # falls back to the system installation. See bug #946221. + sed -i -e "/^pylibdir =/s:'lib:'$(get_libdir):" "${EMESON_SOURCE}"/tools/g-ir-tool-template.in || die + + ORIG_BUILD_DIR=${BUILD_DIR} + BUILD_DIR=${INTROSPECTION_BUILD_DIR} + + pushd ${INTROSPECTION_SOURCE_DIR} || die + + meson_src_configure + meson_src_compile + # We already provide a prefix in ${T} above. Blank DESTDIR + # as it may be set in the environment by Portage (though not + # guaranteed in src_configure). + meson_src_install --destdir "" + + popd || die + + EMESON_SOURCE=${ORIG_SOURCE_DIR} + BUILD_DIR=${ORIG_BUILD_DIR} + + # Add gobject-introspection binaries and pkgconfig files to path + export PATH="${INTROSPECTION_BIN_DIR}:${PATH}" + + # Override primary pkgconfig search paths to prioritize our internal copy + local -x PKG_CONFIG_LIBDIR="${INTROSPECTION_LIB_DIR}/pkgconfig:${INTROSPECTION_BUILD_DIR}/meson-private:$($(tc-getPKG_CONFIG) --variable pc_system_libdirs pkg-config)" + + # Set the normal primary pkgconfig search paths as secondary + # (We also need to prepend our just-built one for later use of + # g-ir-scanner to use the new one and to help workaround bugs like + # bug #946221.) + local -x PKG_CONFIG_PATH="${PKG_CONFIG_LIBDIR}:$($(tc-getPKG_CONFIG) --variable pc_path pkg-config)" + + # Add the paths to the built glib libraries to the library path so that gobject-introspection can load them + local gliblib + for gliblib in glib gobject gthread gmodule gio girepository; do + export LD_LIBRARY_PATH="${BUILD_DIR}/${gliblib}:${LD_LIBRARY_PATH}" + done + + # Add the path to introspection libraries so that glib can call gir utilities + export LD_LIBRARY_PATH="${INTROSPECTION_LIB_DIR}:${LD_LIBRARY_PATH}" + + # Add the paths to the gobject-introspection python modules to python path so they can be imported + export PYTHONPATH="${INTROSPECTION_LIB_DIR}/gobject-introspection:${PYTHONPATH}" + fi + + # TODO: Can this be cleaned up now we have -Dglib_debug? (bug #946485) + use debug && EMESON_BUILD_TYPE=debug + + local emesonargs=( + -Ddefault_library=$(usex static-libs both shared) + -Druntime_dir="${EPREFIX}"/run + $(meson_feature debug glib_debug) + $(meson_feature selinux) + $(meson_use xattr) + -Dlibmount=enabled # only used if host_system == 'linux' + -Dman-pages=enabled + $(meson_feature systemtap dtrace) + $(meson_feature systemtap) + $(meson_feature sysprof) + $(meson_use doc documentation) + $(meson_use test tests) + -Dinstalled_tests=false + -Dnls=enabled + -Doss_fuzz=disabled + $(meson_native_use_feature elf libelf) + -Dmultiarch=false + $(meson_native_use_feature introspection) + ) + + # Workaround for bug #938302 + if use systemtap; then + tc-export CC + meson_add_machine_file dtrace <<-EOF + [binaries] + dtrace='stap-dtrace' + EOF + fi + + meson_src_configure +} + +multilib_src_test() { + export XDG_CONFIG_DIRS=/etc/xdg + export XDG_DATA_DIRS=/usr/local/share:/usr/share + # TODO: Use ${ABI} here to be unique for multilib? + export G_DBUS_COOKIE_SHA1_KEYRING_DIR="${T}/temp" + export LC_TIME=C # bug #411967 + export TZ=UTC + unset GSETTINGS_BACKEND # bug #596380 + python_setup + + # https://bugs.gentoo.org/839807 + local -x SANDBOX_PREDICT=${SANDBOX_PREDICT} + addpredict /usr/b + + # Related test is a bit nitpicking + mkdir -p "$G_DBUS_COOKIE_SHA1_KEYRING_DIR" || die + chmod 0700 "$G_DBUS_COOKIE_SHA1_KEYRING_DIR" || die + + meson_src_test --timeout-multiplier 20 --no-suite flaky +} + +multilib_src_install() { + meson_src_install + keepdir /usr/$(get_libdir)/gio/modules +} + +multilib_src_install_all() { + strip-lto-bytecode + + # These are installed by dev-util/glib-utils + # TODO: With patching we might be able to get rid of the python-any deps + # and removals, and test depend on glib-utils instead; revisit now with + # meson + rm "${ED}/usr/bin/glib-genmarshal" || die + rm "${ED}/usr/share/man/man1/glib-genmarshal.1" || die + rm "${ED}/usr/bin/glib-mkenums" || die + rm "${ED}/usr/share/man/man1/glib-mkenums.1" || die + rm "${ED}/usr/bin/gtester-report" || die + rm "${ED}/usr/share/man/man1/gtester-report.1" || die + # gdbus-codegen manpage installed by dev-util/gdbus-codegen + rm "${ED}/usr/share/man/man1/gdbus-codegen.1" || die +} + +pkg_preinst() { + xdg_pkg_preinst + + # Make gschemas.compiled belong to glib alone + local cache="/usr/share/glib-2.0/schemas/gschemas.compiled" + + if [[ -e ${EROOT}${cache} ]]; then + cp "${EROOT}"${cache} "${ED}"/${cache} || die + else + touch "${ED}"${cache} || die + fi + + multilib_pkg_preinst() { + # Make giomodule.cache belong to glib alone + local cache="/usr/$(get_libdir)/gio/modules/giomodule.cache" + + if [[ -e ${EROOT}${cache} ]]; then + cp "${EROOT}"${cache} "${ED}"${cache} || die + else + touch "${ED}"${cache} || die + fi + } + + # Don't run the cache ownership when cross-compiling, as it would end up with an empty cache + # file due to inability to create it and GIO might not look at any of the modules there + if ! tc-is-cross-compiler ; then + multilib_foreach_abi multilib_pkg_preinst + fi +} + +pkg_postinst() { + xdg_pkg_postinst + # glib installs no schemas itself, but we force update for fresh install in case + # something has dropped in a schemas file without direct glib dep; and for upgrades + # in case the compiled schema format could have changed + gnome2_schemas_update + + multilib_pkg_postinst() { + gnome2_giomodule_cache_update \ + || die "Update GIO modules cache failed (for ${ABI})" + } + if ! tc-is-cross-compiler ; then + multilib_foreach_abi multilib_pkg_postinst + else + ewarn "Updating of GIO modules cache skipped due to cross-compilation." + ewarn "You might want to run gio-querymodules manually on the target for" + ewarn "your final image for performance reasons and re-run it when packages" + ewarn "installing GIO modules get upgraded or added to the image." + fi + + if ver_replacing "-lt" "2.63.6"; then + ewarn "glib no longer installs the gio-launch-desktop binary. You may need" + ewarn "to restart your session for \"Open With\" dialogs to work." + fi +} + +pkg_postrm() { + xdg_pkg_postrm + gnome2_schemas_update + + if [[ -z ${REPLACED_BY_VERSION} ]]; then + multilib_pkg_postrm() { + rm -f "${EROOT}"/usr/$(get_libdir)/gio/modules/giomodule.cache || die + } + multilib_foreach_abi multilib_pkg_postrm + rm -f "${EROOT}"/usr/share/glib-2.0/schemas/gschemas.compiled || die + fi +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.84.4.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.84.4.ebuild index 70f333647b6..8ea22773079 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.84.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.84.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -43,16 +43,16 @@ RDEPEND=" >=dev-libs/libffi-3.0.13-r1:=[${MULTILIB_USEDEP}] >=virtual/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] >=virtual/libintl-0-r2[${MULTILIB_USEDEP}] - introspection? ( - >=dev-libs/gobject-introspection-common-${INTROSPECTION_PV} - ) kernel_linux? ( >=sys-apps/util-linux-2.23[${MULTILIB_USEDEP}] ) selinux? ( >=sys-libs/libselinux-2.2.2-r5[${MULTILIB_USEDEP}] ) xattr? ( !elibc_glibc? ( >=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}] ) ) elf? ( virtual/libelf:0= ) sysprof? ( >=dev-util/sysprof-capture-3.40.1:4[${MULTILIB_USEDEP}] ) " -DEPEND="${RDEPEND}" +DEPEND=" + ${RDEPEND} + systemtap? ( >=dev-debug/systemtap-1.3 ) +" # libxml2 used for optional tests that get automatically skipped BDEPEND=" app-text/docbook-xsl-stylesheets @@ -352,13 +352,12 @@ multilib_src_configure() { ) # Workaround for bug #938302 - if use systemtap && has_version "dev-debug/systemtap[-dtrace-symlink(+)]" ; then - local native_file="${T}"/meson.${CHOST}.ini.local - cat >> ${native_file} <<-EOF || die + if use systemtap; then + tc-export CC + meson_add_machine_file dtrace <<-EOF [binaries] dtrace='stap-dtrace' EOF - emesonargs+=( --native-file "${native_file}" ) fi meson_src_configure diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.86.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.86.4.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.86.1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.86.4.ebuild index dad63c11782..7424bd5ef29 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.86.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.86.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -43,16 +43,16 @@ RDEPEND=" >=dev-libs/libffi-3.0.13-r1:=[${MULTILIB_USEDEP}] >=virtual/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] >=virtual/libintl-0-r2[${MULTILIB_USEDEP}] - introspection? ( - >=dev-libs/gobject-introspection-common-${INTROSPECTION_PV} - ) kernel_linux? ( >=sys-apps/util-linux-2.23[${MULTILIB_USEDEP}] ) selinux? ( >=sys-libs/libselinux-2.2.2-r5[${MULTILIB_USEDEP}] ) xattr? ( !elibc_glibc? ( >=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}] ) ) elf? ( virtual/libelf:0= ) sysprof? ( >=dev-util/sysprof-capture-3.40.1:4[${MULTILIB_USEDEP}] ) " -DEPEND="${RDEPEND}" +DEPEND=" + ${RDEPEND} + systemtap? ( >=dev-debug/systemtap-1.3 ) +" # libxml2 used for optional tests that get automatically skipped BDEPEND=" app-text/docbook-xsl-stylesheets @@ -91,7 +91,6 @@ MULTILIB_CHOST_TOOLS=( PATCHES=( "${FILESDIR}"/${PN}-2.64.1-mark-gdbus-server-auth-test-flaky.patch - "${FILESDIR}"/${PN}-2.84.4-libpcre2-10.47.patch ) python_check_deps() { @@ -352,13 +351,12 @@ multilib_src_configure() { ) # Workaround for bug #938302 - if use systemtap && has_version "dev-debug/systemtap[-dtrace-symlink(+)]" ; then - local native_file="${T}"/meson.${CHOST}.ini.local - cat >> ${native_file} <<-EOF || die + if use systemtap; then + tc-export CC + meson_add_machine_file dtrace <<-EOF [binaries] dtrace='stap-dtrace' EOF - emesonargs+=( --native-file "${native_file}" ) fi meson_src_configure From 3881c57e9e3f42be2d61b194bc30e758150ccd86 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:13 +0000 Subject: [PATCH 058/291] dev-libs/gmp: Sync with Gentoo It's from Gentoo commit 2d3e6eaa08af5dc94b70e5ce5755a823cd3d6ae3. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-libs/gmp/Manifest | 1 + .../portage-stable/dev-libs/gmp/gmp-6.3.0-r1.ebuild | 13 +++++++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/gmp/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/gmp/Manifest index 9ad925e475b..2f3e6470dbd 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/gmp/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/gmp/Manifest @@ -1,2 +1,3 @@ DIST gmp-6.3.0.tar.xz 2094196 BLAKE2B a865129e2b3f634ec5bad7f97ed89532e43f5662ac47a7d8ab7f0df8c9f8d0886bd984651422e2573c2163bca69c0547c248147ec90880accbd53db97dc0ddee SHA512 e85a0dab5195889948a3462189f0e0598d331d3457612e2d3350799dba2e244316d256f8161df5219538eb003e4b5343f989aaa00f96321559063ed8c8f29fd2 +DIST gmp-6.3.0.tar.xz.sig 374 BLAKE2B 36d2e0dfe7c23aa083526e53884ab70332e6bdbcf04a53d9a97c52935f15a337743dccf9239441c3de7c84a95e06228d83bdfa6ef537c9f092101fd9f201d29b SHA512 7ac61b09a5dae5247fd75031dc5d13c615f20af40700506b6940d92df1bde6224f6ada4894b7c3fd18f340407116188ffc3efb35f90e1a5fefb42f62aa68010d DIST gmp-man-6.2.1.pdf 827583 BLAKE2B 9aa25457a3c488e37cc7d54d825253ab749a3780919570579b319cf607001de50b212ca387b70213abcc5ab428b4525bdb9cd8ae932798a2d7928da98ce3f353 SHA512 f2d9d02e97975355ef490e921fedc94fb7687c3661eec8fa2e94a1622b6e59b17b3879eb3ec1f2df8edac100f727175144d107f4c49c602b773c43bc9e91dbcb diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/gmp/gmp-6.3.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/gmp/gmp-6.3.0-r1.ebuild index d265cbc8e80..4de48f340c6 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/gmp/gmp-6.3.0-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/gmp/gmp-6.3.0-r1.ebuild @@ -1,9 +1,10 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit gnuconfig libtool flag-o-matic multilib-minimal toolchain-funcs +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gmp.asc +inherit gnuconfig libtool flag-o-matic multilib-minimal toolchain-funcs verify-sig MY_PV=${PV/_p*} MY_PV=${MY_PV/_/-} @@ -19,6 +20,7 @@ SRC_URI=" https://gmplib.org/download/gmp/${MY_P}.tar.xz mirror://gnu/${PN}/${MY_P}.tar.xz doc? ( https://gmplib.org/${PN}-man-${MANUAL_PV}.pdf ) + verify-sig? ( https://gmplib.org/download/gmp/${MY_P}.tar.xz.sig ) " S="${WORKDIR}"/${MY_P%a} @@ -33,6 +35,7 @@ RESTRICT="!cpudetection? ( bindist )" BDEPEND=" app-arch/xz-utils sys-devel/m4 + verify-sig? ( sec-keys/openpgp-keys-gmp ) " DOCS=( AUTHORS ChangeLog NEWS README doc/configuration doc/isa_abi_headache ) @@ -53,6 +56,12 @@ pkg_pretend() { fi } +src_unpack() { + use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sig} + + default +} + src_prepare() { default From 65ef82de44ee9f88eb37b2d32e09fd146f0c16c6 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:16 +0000 Subject: [PATCH 059/291] dev-libs/json-c: Sync with Gentoo It's from Gentoo commit b35f47e12294d793dbd2edca4698fc482f99dd3b. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-libs/json-c/json-c-0.18.ebuild | 4 ++-- .../portage-stable/dev-libs/json-c/json-c-9999.ebuild | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/json-c/json-c-0.18.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/json-c/json-c-0.18.ebuild index 18183966526..12d3aa67560 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/json-c/json-c-0.18.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/json-c/json-c-0.18.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -14,7 +14,7 @@ if [[ ${PV} == 9999 ]] ; then else SRC_URI="https://s3.amazonaws.com/json-c_releases/releases/${P}.tar.gz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" fi LICENSE="MIT" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/json-c/json-c-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/json-c/json-c-9999.ebuild index d9853738ac3..eab32d2d809 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/json-c/json-c-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/json-c/json-c-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -14,7 +14,7 @@ if [[ ${PV} == 9999 ]] ; then else SRC_URI="https://s3.amazonaws.com/json-c_releases/releases/${P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" fi LICENSE="MIT" From 5515cd769a32b617b591d5f58ff9e5a7e8bf7a6b Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:18 +0000 Subject: [PATCH 060/291] dev-libs/libbsd: Sync with Gentoo It's from Gentoo commit 31d2a94eac6e785ae20e003c849ed66f2f3a90bc. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-libs/libbsd/libbsd-0.11.8.ebuild | 4 ++-- .../portage-stable/dev-libs/libbsd/libbsd-0.12.1.ebuild | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libbsd/libbsd-0.11.8.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libbsd/libbsd-0.11.8.ebuild index e7a2a69a2b2..aed6dacbad1 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libbsd/libbsd-0.11.8.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libbsd/libbsd-0.11.8.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -46,7 +46,7 @@ multilib_src_configure() { multilib_src_install() { emake DESTDIR="${D}" install # always strip due to libbsd-ctor.a - strip-lto-bytecode #"${ED}" + strip-lto-bytecode "${ED}" find "${ED}" -type f -name "*.la" -delete || die diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libbsd/libbsd-0.12.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libbsd/libbsd-0.12.1.ebuild index ae39adf3ff9..ef9d3a8af7d 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libbsd/libbsd-0.12.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libbsd/libbsd-0.12.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -44,7 +44,7 @@ multilib_src_configure() { multilib_src_install() { emake DESTDIR="${D}" install # always strip due to libbsd-ctor.a - strip-lto-bytecode #"${ED}" + strip-lto-bytecode "${ED}" find "${ED}" -type f -name "*.la" -delete || die From 60a1b567dae8aecd8bc64a205954cf6b2dd4cfef Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:18 +0000 Subject: [PATCH 061/291] dev-libs/libdnet: Sync with Gentoo It's from Gentoo commit 528bc788ed5367e2e3b970c34fef7153204a9ce4. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-libs/libdnet/Manifest | 1 + .../dev-libs/libdnet/libdnet-1.18.2.ebuild | 112 ++++++++++++++++++ 2 files changed, 113 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/libdnet/libdnet-1.18.2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libdnet/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libdnet/Manifest index 0cd3fd14a6e..986f05422e5 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libdnet/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libdnet/Manifest @@ -1 +1,2 @@ DIST libdnet-1.18.0.tar.gz 740145 BLAKE2B 67f9257e0a05c6c768609c288de9a8704a7ba9d66142bcf849929fa3dbc7b59e379cef2a917d01d4ccfa63b5dfffaf7225f9c67f94e6e91c528a3066fae8c933 SHA512 c074828a1ecd21c292f9120c7afb6b3c11e967d1e0aaca78e75a5558e96f5e65e0d24b68b8386c33c1c28734a3d30f5857d394796e049d521c8b4a9a2c8dcea9 +DIST libdnet-1.18.2.tar.gz 584212 BLAKE2B b8be1547109e6e10781dccfd9addb85440a521ea31831a7270dc4bd44a1fe446927c0303c2f97d7d25fe20d7b5a212b99fa7173815db5c3b65707bbb0c6364f0 SHA512 924541e81b8f4f78a8e682641d0b2cbeb731ce59422582b22171da9d72af7928db25d891b9949f89d12cb71a132ebc7513eb909e2e36018bb7ddb982b1547ef3 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libdnet/libdnet-1.18.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libdnet/libdnet-1.18.2.ebuild new file mode 100644 index 00000000000..652ad956b83 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libdnet/libdnet-1.18.2.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..14} ) +DISTUTILS_EXT=1 +DISTUTILS_OPTIONAL=1 +DISTUTILS_USE_PEP517=setuptools + +inherit autotools distutils-r1 + +DESCRIPTION="Simplified, portable interface to several low-level networking routines" +HOMEPAGE="https://github.com/ofalk/libdnet" +SRC_URI="https://github.com/ofalk/${PN}/archive/${P}.tar.gz" +S="${WORKDIR}/${PN}-${P}" + +LICENSE="LGPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" +IUSE="python test" +RESTRICT="!test? ( test )" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +DEPEND=" + dev-libs/libbsd + python? ( + ${PYTHON_DEPS} + dev-python/netifaces[${PYTHON_USEDEP}] + ) +" +RDEPEND="${DEPEND}" +BDEPEND=" + python? ( + ${DISTUTILS_DEPS} + dev-python/cython[${PYTHON_USEDEP}] + ) + test? ( dev-libs/check ) +" + +DOCS=( README.md THANKS ) + +src_prepare() { + default + + sed -i \ + -e 's/libcheck.a/libcheck.so/g' \ + configure.ac || die + sed -i \ + -e "s/lib\/libcheck/$(get_libdir)\/libcheck/g" \ + configure.ac || die + sed -i \ + -e 's|-L$libdir ||g' \ + dnet-config.in || die + sed -i \ + -e '/^SUBDIRS/s|python||g' \ + Makefile.am || die + + # Stale e.g. pkg-config macros w/ bashisms + rm aclocal.m4 {config,m4}/libtool.m4 || die + + AT_M4DIR="config" eautoreconf + + if use python; then + cd python || die + distutils-r1_src_prepare + fi +} + +src_configure() { + econf \ + $(use_with python) \ + $(use_enable test check) +} + +src_compile() { + default + + if use python; then + cd python || die + distutils-r1_src_compile + fi +} + +src_test() { + # https://bugs.gentoo.org/778797#c4 + # check_ip needs privileges and check_fw can't work on Linux + emake check XFAIL_TESTS="check_fw check_ip" + + # Needs network access, tries to access 8.8.8.8 to get IP/interfaces. + # We could maybe run a daemon or just patch it to avoid that. + #if use python; then + # cd python || die + # distutils-r1_src_test + #fi +} + +python_test() { + eunittest +} + +src_install() { + default + + if use python; then + cd python || die + unset DOCS + distutils-r1_src_install + fi + + find "${ED}" -name '*.la' -delete || die +} From 7169615f881188be544aa1273a155fb3107a0a55 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:19 +0000 Subject: [PATCH 062/291] dev-libs/libgcrypt: Sync with Gentoo It's from Gentoo commit 923c030c8f3a8e3a2b7d6be5126c0de64bba07eb. Signed-off-by: Flatcar Buildbot --- .../dev-libs/libgcrypt/Manifest | 2 + .../libgcrypt-1.12.0-multilib-syspath.patch | 18 ++ .../libgcrypt/libgcrypt-1.11.2-r1.ebuild | 2 +- .../libgcrypt/libgcrypt-1.12.1.ebuild | 185 ++++++++++++++++++ 4 files changed, 206 insertions(+), 1 deletion(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/files/libgcrypt-1.12.0-multilib-syspath.patch create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.12.1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/Manifest index 0326787e528..61c74077eaa 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/Manifest @@ -1,2 +1,4 @@ DIST libgcrypt-1.11.2.tar.bz2 4237802 BLAKE2B 8ad2dd84e8ec2bddb5c008c6823a6d72b8f2d6237972966bc590be0d89bb6b50a5cbba1b42631d0950c4bea125a6d9a845fbf703b756a38088f66054712efa9c SHA512 b706cea602cc8f0896e57ce979643bf78974b05faec27c1b053b773c57d8b04250e30e95a4ef5899e1df981d01d8d08f0a36e10b5820a5ec4183e74c02e5f1f0 DIST libgcrypt-1.11.2.tar.bz2.sig 147 BLAKE2B 5126fa06a9a67b2b71711f76ecbf9f3596f300f97256378961768a2f3c3927321da649eb0df4ddfb653e4503712b8b3c363c252bcb83ca53c7eea89a3ac8d4d4 SHA512 73b1d6d53e2f9061f06628a0fe983919f745c1c92930fd6a9871a0a3a589878efe68ec48b4e17e3fd3c1e098bc38c38cc8895246cee25463377a8bfa8590b164 +DIST libgcrypt-1.12.1.tar.bz2 4441330 BLAKE2B 6656d9edc5c702b5b76aa2a7504ed9f224718dc0047494f51de63f98a52e334fab1ade05e4c0ec44f92c406292090cf02193ec3f1eb754e886f3a71f9bbe1435 SHA512 e4be1f9d32bb672663499a1203454b9c646b7f237d9acb64303b991798fe3f4c3366793b0564b94c6687885353f6e7fef6ae6e74a57ccb5eb5606e77c81b3738 +DIST libgcrypt-1.12.1.tar.bz2.sig 147 BLAKE2B c18304651b08872c0a42c7c87ac40e32214b9b17e56fa2528975919c75ccb08ab05d9befaeddcee5b60d0015fe0677463cfdd6ae140d53ba8268c575a153d3e9 SHA512 9068d38fe4b55af181202982c3beb7345782c03fb48eb32c26fe34405e01669db751fd8e3f58c2d4173d6523069165ce93ce447a89f8d856280b5fd0cf8a7d1b diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/files/libgcrypt-1.12.0-multilib-syspath.patch b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/files/libgcrypt-1.12.0-multilib-syspath.patch new file mode 100644 index 00000000000..1b8ba46927f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/files/libgcrypt-1.12.0-multilib-syspath.patch @@ -0,0 +1,18 @@ +--- a/src/libgcrypt-config.in ++++ b/src/libgcrypt-config.in +@@ -166,9 +166,12 @@ if test "$echo_libs" = "yes"; then + libs_final="$libs" + + # Set up `libdirs'. +- if test "x$libdir" != "x/usr/lib" && test "x$libdir" != "x/lib"; then +- libdirs="-L$libdir" +- fi ++ case "$libdir" in ++ /usr/lib|/usr/lib64|/lib|/lib64) ;; ++ *) ++ libdirs="-L$libdir" ++ ;; ++ esac + + # Set up `libs_final'. + libs_final="$libs_final $gpg_error_libs" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.11.2-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.11.2-r1.ebuild index 2e0c41f539d..71378ab2fe9 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.11.2-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.11.2-r1.ebuild @@ -13,7 +13,7 @@ SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )" LICENSE="LGPL-2.1+ GPL-2+ MIT" SLOT="0/20" # subslot = soname major version -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="+asm doc +getentropy static-libs" IUSE+=" cpu_flags_arm_neon cpu_flags_arm_aes cpu_flags_arm_sha1 cpu_flags_arm_sha2 cpu_flags_arm_sve" IUSE+=" cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 cpu_flags_ppc_vsx3" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.12.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.12.1.ebuild new file mode 100644 index 00000000000..9e9d7fb63e2 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.12.1.ebuild @@ -0,0 +1,185 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc +inherit autotools flag-o-matic linux-info multilib-minimal toolchain-funcs verify-sig + +DESCRIPTION="General purpose crypto library based on the code used in GnuPG" +HOMEPAGE="https://www.gnupg.org/" +SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2" +SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )" + +LICENSE="LGPL-2.1+ GPL-2+ MIT" +SLOT="0/20" # subslot = soname major version +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="+asm doc +getentropy static-libs" +IUSE+=" cpu_flags_arm_neon cpu_flags_arm_aes cpu_flags_arm_sha1 cpu_flags_arm_sha2 cpu_flags_arm_sve" +IUSE+=" cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 cpu_flags_ppc_vsx3" +IUSE+=" cpu_flags_x86_aes cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_avx512f cpu_flags_x86_padlock cpu_flags_x86_sha cpu_flags_x86_sse4_1" + +# Build system only has --disable-arm-crypto-support right now +# If changing this, update src_configure logic too. +# ARM CPUs seem to, right now, support all-or-nothing for crypto extensions, +# but this looks like it might change in future. This is just a safety check +# in case people somehow do have a CPU which only supports some. They must +# for now disable them all if that's the case. +REQUIRED_USE=" + cpu_flags_arm_aes? ( cpu_flags_arm_sha1 cpu_flags_arm_sha2 ) + cpu_flags_arm_sha1? ( cpu_flags_arm_aes cpu_flags_arm_sha2 ) + cpu_flags_arm_sha2? ( cpu_flags_arm_aes cpu_flags_arm_sha1 ) + cpu_flags_ppc_vsx3? ( cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 ) + cpu_flags_ppc_vsx2? ( cpu_flags_ppc_altivec ) +" + +RDEPEND=" + >=dev-libs/libgpg-error-1.56[${MULTILIB_USEDEP}] + getentropy? ( + kernel_linux? ( + elibc_glibc? ( >=sys-libs/glibc-2.25 ) + elibc_musl? ( >=sys-libs/musl-1.1.20 ) + ) + ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + doc? ( virtual/texi2dvi ) + verify-sig? ( sec-keys/openpgp-keys-gnupg ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.12.0-multilib-syspath.patch + "${FILESDIR}"/${PN}-powerpc-darwin.patch +) + +MULTILIB_CHOST_TOOLS=( + /usr/bin/libgcrypt-config +) + +pkg_pretend() { + if [[ ${MERGE_TYPE} == buildonly ]]; then + return + fi + if use kernel_linux && use getentropy; then + unset KV_FULL + get_running_version + if [[ -n ${KV_FULL} ]] && kernel_is -lt 3 17; then + eerror "The getentropy function requires the getrandom syscall." + eerror "This was introduced in Linux 3.17." + eerror "Your system is currently running Linux ${KV_FULL}." + eerror "Disable the 'getentropy' USE flag or upgrade your kernel." + die "Kernel is too old for getentropy" + fi + fi +} + +pkg_setup() { + : +} + +src_prepare() { + default + eautoreconf +} + +src_configure() { + # Temporary workaround for a build failure (known gcc issue): + # * https://bugs.gentoo.org/956605 + # * https://gcc.gnu.org/PR110812 + use riscv && filter-lto + + # Temporary workaround for mfpmath=sse on x86 causing issues when -msse is + # stripped as it's not clear cut on how to handle in flag-o-matic we can at + # least solve it the ebuild see https://bugs.gentoo.org/959349 + use x86 && filter-flags -mfpmath=sse + + # Hardcodes the path to FGREP in libgcrypt-config + export ac_cv_path_SED="sed" + export ac_cv_path_EGREP="grep -E" + export ac_cv_path_EGREP_TRADITIONAL="grep -E" + export ac_cv_path_FGREP="grep -F" + export ac_cv_path_GREP="grep" + + multilib-minimal_src_configure +} + +multilib_src_configure() { + if [[ ${CHOST} == powerpc* ]] ; then + # ./configure does a lot of automagic, prevent that + # generic ppc32+ppc64 altivec + use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec=no + use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec_cflags=no + # power8 vector extension, aka arch 2.07 ISA, also checked below via ppc-crypto-support + use cpu_flags_ppc_vsx2 || local -x gcry_cv_gcc_inline_asm_ppc_altivec=no + # power9 vector extension, aka arch 3.00 ISA + use cpu_flags_ppc_vsx3 || local -x gcry_cv_gcc_inline_asm_ppc_arch_3_00=no + fi + + append-ldflags $(test-flags-CCLD -Wl,--undefined-version) + + local myeconfargs=( + CC_FOR_BUILD="$(tc-getBUILD_CC)" + + --enable-noexecstack + $(use_enable cpu_flags_arm_neon neon-support) + # See REQUIRED_USE comment above + $(use_enable cpu_flags_arm_aes arm-crypto-support) + $(use_enable cpu_flags_arm_sve sve-support) + $(use_enable cpu_flags_ppc_vsx2 ppc-crypto-support) + $(use_enable cpu_flags_x86_aes aesni-support) + $(use_enable cpu_flags_x86_avx avx-support) + $(use_enable cpu_flags_x86_avx2 avx2-support) + $(use_enable cpu_flags_x86_avx512f avx512-support) + $(use_enable cpu_flags_x86_padlock padlock-support) + $(use_enable cpu_flags_x86_sha shaext-support) + $(use_enable cpu_flags_x86_sse4_1 sse41-support) + # required for sys-power/suspend[crypt], bug 751568 + $(use_enable static-libs static) + + # disabled due to various applications requiring privileges + # after libgcrypt drops them (bug #468616) + --without-capabilities + + $(use asm || echo "--disable-asm") + + GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config" + GPGRT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpgrt-config" + ) + + if use kernel_linux; then + # --enable-random=getentropy requires getentropy/getrandom. + # --enable-random=linux enables legacy code that tries getrandom + # and falls back to reading /dev/random. + myeconfargs+=( --enable-random=$(usex getentropy getentropy linux) ) + fi + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" \ + $("${S}/configure" --help | grep -o -- '--without-.*-prefix') +} + +multilib_src_compile() { + default + multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf +} + +multilib_src_test() { + # t-secmem and t-sexp need mlock which requires extra privileges; nspawn + # at least disallows that by default. + local -x GCRYPT_IN_ASAN_TEST=1 + # Avoid running (very) expensive bench-slope test. On hppa, it + # takes at least 7 hours. + local -x GCRYPT_NO_BENCHMARKS=1 + + default +} + +multilib_src_install() { + emake DESTDIR="${D}" install + multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf +} + +multilib_src_install_all() { + default + find "${ED}" -type f -name '*.la' -delete || die +} From 2868f824accb4bba38b7f407c372681ddcab6d52 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:20 +0000 Subject: [PATCH 063/291] dev-libs/libgpg-error: Sync with Gentoo It's from Gentoo commit 168bf7364b8246cbb8b44eb30f5cc9ef2fa983c5. Signed-off-by: Flatcar Buildbot --- .../dev-libs/libgpg-error/Manifest | 2 + .../libgpg-error/libgpg-error-1.58.ebuild | 4 +- .../libgpg-error/libgpg-error-1.59.ebuild | 89 +++++++++++++++++++ 3 files changed, 93 insertions(+), 2 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/libgpg-error/libgpg-error-1.59.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgpg-error/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libgpg-error/Manifest index 0be659d86a8..5e0d5d732ff 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgpg-error/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgpg-error/Manifest @@ -4,3 +4,5 @@ DIST libgpg-error-1.57.tar.bz2 1123531 BLAKE2B fb48564c32d2f7dc47eaf4ac26b88d47b DIST libgpg-error-1.57.tar.bz2.sig 147 BLAKE2B 9c6ca75160daff73c99b6807d9c89c1195288bc507df1f53b0f01d42a3d530c32b62bf51d4c3a4c6b741a39136855bd42b5fb43f4278d778b0d1f5228bef03ab SHA512 136818c9f2c9bddd3b91b8dbf08ae63dd8e6f9924b06883dc37238a3ee8e5a975f7e8c6749fcb972039642050d181167ccee9efcd73c2c068941127c8a81235f DIST libgpg-error-1.58.tar.bz2 1123899 BLAKE2B 7d1c0d54094d870e9e92aebadc4a8a3cf0e7a1ae7841b445896105583a8885439ca8364b2e364639759912ea46f801b41e5025db9aa292c4fce43713430711e1 SHA512 4f4cb7f24e6cf4266c30da3985b9e62d4ab6012d8f43e9969d6edfd344d2a08f6277ab10610627597f6c58d064b3127fd286ae678381b84610d611645db5bbb4 DIST libgpg-error-1.58.tar.bz2.sig 147 BLAKE2B edef17d406ea390d2463e06ec0dc3f1dbc1304198bdcd0079b2cbeba8d0078c89574a658697710844dd38ac8af4e6efa9936901fc85d8541f6745ca9c82af244 SHA512 8c3ecc7fe9616bc00ff1d9b4ea7adac8eaa63778d757c9fff1b143ecf1542d95b0fbce1e3de4e3ee1112fab30558419489dc3b97abd8030c838d0eb64fd27d40 +DIST libgpg-error-1.59.tar.bz2 1123184 BLAKE2B 04dcdf411fbeecbfcb84c69949b42940793e725cf261eaac705677dc9071b395b0f5d38741f4d59411646cd45a1a8c44edbd2a8204a962e9948b1d7e223041f5 SHA512 86a2b4f94928e88aab23c84e0febb702453617edf3cddf45d0ed9ea817007085a6d132214fd2c855d816ec296514401157e89dab2790aea1edf5c376ea7e1f56 +DIST libgpg-error-1.59.tar.bz2.sig 147 BLAKE2B f95040c1bbd4e5807a351e77c73a6901b706478ffcaa19c3fa58a6d561e17ea1764b88ae24ea7f0651a633fafc465bb0457a3279e3db4d899bf30e094e652728 SHA512 6d89fdbd0f1151861d19832d12ebc92ed3d4263d6a44223d0f5ff8d1026898cd99cced1b864217c0d7501255db2c5586a7ddfd0a7fd2b8f36fbb98e768cb3c83 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgpg-error/libgpg-error-1.58.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgpg-error/libgpg-error-1.58.ebuild index 6be1b0353b5..97873532d3e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgpg-error/libgpg-error-1.58.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgpg-error/libgpg-error-1.58.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -19,7 +19,7 @@ SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )" LICENSE="GPL-2 LGPL-2.1" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="common-lisp nls static-libs test" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgpg-error/libgpg-error-1.59.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgpg-error/libgpg-error-1.59.ebuild new file mode 100644 index 00000000000..7d0c653a663 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgpg-error/libgpg-error-1.59.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintainers should: +# 1. Join the "Gentoo" project at https://dev.gnupg.org/project/view/27/ +# 2. Subscribe to release tasks like https://dev.gnupg.org/T6159 +# (find the one for the current release then subscribe to it + +# any subsequent ones linked within so you're covered for a while.) + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc +inherit libtool multilib-minimal toolchain-funcs verify-sig + +DESCRIPTION="Contains error handling functions used by GnuPG software" +HOMEPAGE="https://www.gnupg.org/related_software/libgpg-error/" +SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2" +SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )" + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="common-lisp nls static-libs test" +RESTRICT="!test? ( test )" + +RDEPEND="nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )" +DEPEND="${RDEPEND}" +BDEPEND=" + nls? ( sys-devel/gettext ) + verify-sig? ( sec-keys/openpgp-keys-gnupg ) +" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/gpg-error.h + /usr/include/gpgrt.h +) + +MULTILIB_CHOST_TOOLS=( + /usr/bin/gpg-error-config + /usr/bin/gpgrt-config +) + +src_prepare() { + default + elibtoolize + + if use prefix ; then + # don't hardcode /usr/xpg4/bin/sh as shell on Solaris + sed -i -e 's:INSTALLSHELLPATH=/usr/xpg4/bin/sh:INSTALLSHELLPATH=/bin/sh:g' configure.ac configure || die + fi + + # This check breaks multilib + cat <<-EOF > src/gpg-error-config-test.sh.in || die + #!@INSTALLSHELLPATH@ + exit 0 + EOF + + # only necessary for as long as we run eautoreconf, configure.ac + # uses ./autogen.sh to generate PACKAGE_VERSION, but autogen.sh is + # not a pure /bin/sh script, so it fails on some hosts + #sed -i -e "1s:.*:#\!${BASH}:" autogen.sh || die + #eautoreconf +} + +multilib_src_configure() { + local myeconfargs=( + $(multilib_is_native_abi || echo --disable-languages) + $(use_enable common-lisp languages) + $(use_enable nls) + # required for sys-power/suspend[crypt], bug 751568 + $(use_enable static-libs static) + $(use_enable test tests) + + # See bug #699206 and its duplicates wrt gpgme-config + # Upstream no longer install this by default and we should + # seek to disable it at some point. + --enable-install-gpg-error-config + + --enable-threads + CC_FOR_BUILD="$(tc-getBUILD_CC)" + $("${S}/configure" --help | grep -o -- '--without-.*-prefix') + ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_install_all() { + einstalldocs + find "${ED}" -type f -name '*.la' -delete || die +} From 8cf4f69ed3e01d5270fa7deae49b5bf16ecb4e5e Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:20 +0000 Subject: [PATCH 064/291] dev-libs/libksba: Sync with Gentoo It's from Gentoo commit 0bf386e412822b87e81fbc4c31b11e4ef0ce30de. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-libs/libksba/Manifest | 2 + .../dev-libs/libksba/libksba-1.6.8.ebuild | 63 +++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/libksba/libksba-1.6.8.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libksba/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libksba/Manifest index 250b2f5895c..74009c630d4 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libksba/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libksba/Manifest @@ -1,2 +1,4 @@ DIST libksba-1.6.7.tar.bz2 706437 BLAKE2B 95f51bc9a0a7ee14b91089aded3a420cf2f986a1599e39e36dc46fd0b71bef465af9c6576c19516d0aadae67399eca69ae0448239216ba486812884ebefa1ae7 SHA512 60cb9df9f502ca479818f45b78c4bc2b78f6f359be2b8da489ea98f8896a43ab2c20cf97526b79a3220fb32f1701e62a6481fe61e91e567186ecf4f33d8e64d3 DIST libksba-1.6.7.tar.bz2.sig 119 BLAKE2B 74b3fd7682ae526c7430fe3792f873838c366ec0de1d80b699370a8cefdfdfc386f883b1d45df8df62e64d9de992f4bbfa7f74cfbb38419694f1a11ff1d3110a SHA512 97df523f0640f8fed0c3c7603218058021475d5b0e47a36610aa88312a6bb5f302e1e2016f5721a9077d0d27b35b28c7c96d9843866c957c965b2c580d3ee60b +DIST libksba-1.6.8.tar.bz2 716917 BLAKE2B 13efba4f1f22de8e149049443ac1b68dea75c7526678f0a462c6922fb2f6de71c8c20d6c41b726e3083076f201576645b2f9181340fa2c49ca4de2ed1f6064fb SHA512 23522376b4ce89c9847d464723ba6052e410d2450dcd10e0da3f07e074c1169585823eea30a70aa572f4e8ec86121844476eeb90c8599dd21f22eab71333d5a8 +DIST libksba-1.6.8.tar.bz2.sig 147 BLAKE2B 354363b66c12e72d1a5dcc888d74a9ce13f0154038f809e459b8d073c67665ac4434ee1198cd5d6a3ff011325802da5b5eace9ca41878db4f333fdeb08a0b9a8 SHA512 ac5fadfc57219aa5b350d9e8572c0389f58e9a9730fc38bc7a967b5345e7b2f7d5575517a1080577046a4a0d8ad9bced37bfb17f267a3b9be9bc03a486819c06 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libksba/libksba-1.6.8.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libksba/libksba-1.6.8.ebuild new file mode 100644 index 00000000000..7aeb0d2b91b --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libksba/libksba-1.6.8.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintainers should: +# 1. Join the "Gentoo" project at https://dev.gnupg.org/project/view/27/ +# 2. Subscribe to release tasks like https://dev.gnupg.org/T6159 +# (find the one for the current release then subscribe to it + +# any subsequent ones linked within so you're covered for a while.) + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc +# in-source builds are not supported: https://dev.gnupg.org/T6313#166339 +inherit toolchain-funcs out-of-source verify-sig libtool + +DESCRIPTION="X.509 and CMS (PKCS#7) library" +HOMEPAGE="https://www.gnupg.org/related_software/libksba" +SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2" +SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )" + +LICENSE="LGPL-3+ GPL-2+ GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="static-libs" + +RDEPEND=">=dev-libs/libgpg-error-1.33" +DEPEND="${RDEPEND}" +BDEPEND=" + app-alternatives/yacc + verify-sig? ( sec-keys/openpgp-keys-gnupg ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.6.0-no-fgrep-ksba-config.patch +) + +src_prepare() { + default + + elibtoolize # necessary on Solaris for shared lib support +} + +my_src_configure() { + export CC_FOR_BUILD="$(tc-getBUILD_CC)" + + local myeconfargs=( + --disable-valgrind-tests + $(use_enable static-libs static) + + GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config" + LIBGCRYPT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-libgcrypt-config" + GPGRT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpgrt-config" + ) + + econf "${myeconfargs[@]}" +} + +my_src_install() { + default + + # People need to use ksba-config for --cflags and --libs + find "${ED}" -type f -name '*.la' -delete || die +} From 22d0cfae6a9a00ae93fd218a38244be1266ed325 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:22 +0000 Subject: [PATCH 065/291] dev-libs/libnl: Sync with Gentoo It's from Gentoo commit bb1d0f576638f4fb1dca5ab0cc955418834fcd9d. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-libs/libnl/Manifest | 3 + .../libnl/files/libnl-3.12.0-tests.patch | 201 ++++++++++++++++++ .../dev-libs/libnl/libnl-3.11.0.ebuild | 19 +- .../dev-libs/libnl/libnl-3.12.0.ebuild | 145 +++++++++++++ .../dev-libs/libnl/libnl-9999.ebuild | 20 +- 5 files changed, 377 insertions(+), 11 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-3.12.0-tests.patch create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.12.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/Manifest index 4f3a214de00..7f4aea6c2ec 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/Manifest @@ -1,2 +1,5 @@ DIST libnl-3.10.0.tar.gz 1116186 BLAKE2B 13383c4ef49be3bcf89122b24d1d5dc9834353aa7128f04f50993203add14aa7f97a4500164982ddcb82f481f7324a26efc2375036d5a23bfa62b15c4fe07473 SHA512 c95e79fba69308c63a08d0c576503b4398710ea9cd1d0097851500a7fbc5fbe87fb32ac281cf42bbfe57eab07b110055e6bc9b95d82244bba3df8a31fe562962 DIST libnl-3.11.0.tar.gz 1124072 BLAKE2B 8e2792620f56e1e9e05e4fe1f9bece70938c82c2d1a9f4e0f9de1ce0b1a7a2bf60f31a42e6056407b383875c08c575b26df87b9bd6b421d5053e96983e193c54 SHA512 69ecec6e792fc7b9c443fff8742cf45782af5c5c4664687440942eaeb616ba7b4ed2b606e33c5d86e44e6b49a9c79a1fed4b7c77781a059e13cf6a844d94530e +DIST libnl-3.11.0.tar.gz.sig 862 BLAKE2B 48386ba3821e4876d425a929a562b5c85a8da3db26effa81c8e2494458b9cb840425bd795924b79a068ddf2ccb6ca56e5874cd91b64b10f9a3948e069d42a810 SHA512 de98fdd254ec587c1e467b590b6f876c8dee0ef10be86b0644c6de366f4deba9205ffa1881d6a6c394af9543dea38eb4553139ad9293c5788ef23c15db4381df +DIST libnl-3.12.0.tar.gz 1191546 BLAKE2B 103bec122b3d021cbed5096a50fda2a480e03cf31a4ed4bb996bb7b9d3be77489ba9a0a9c4129bbba570cdb9775cd98f0b93c8b16464802073485501a1134e6e SHA512 6230b8cab608355346030cf32f37c43983b1d1b632cb7677ae383d4f2369b4a3773b35d2d51007d3b9c16f333aaf351682c4602b3d229cd602eec5ad53efd6f3 +DIST libnl-3.12.0.tar.gz.sig 512 BLAKE2B e0f34aa7738187b48b340a399b3edaa818fec355898315a6a45db22ce413ae456de771f33971e3fd3cb2b8d826d545ba7d70f8fc893b41fc126af8830590df02 SHA512 b6241ec76fd43884e1e9122e215b0b1a21a5b003fce6532775bb4393f6b7e462d154f95104dee9387d68583a9c9e202e953a2c1d31b34b508cd84ef37c79bf22 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-3.12.0-tests.patch b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-3.12.0-tests.patch new file mode 100644 index 00000000000..c757be96280 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-3.12.0-tests.patch @@ -0,0 +1,201 @@ +https://github.com/thom311/libnl/issues/448 +https://github.com/thom311/libnl/commit/f680f27d61be1de3f4a0e50c7158c1cd0d6df585 +https://github.com/thom311/libnl/commit/1ac4b3216501574e7621618477d91b8fab13164a + +From f680f27d61be1de3f4a0e50c7158c1cd0d6df585 Mon Sep 17 00:00:00 2001 +From: Thomas Haller +Date: Tue, 23 Dec 2025 21:31:06 +0100 +Subject: [PATCH] tests: add and use _nltst_skip_eopnotsupp() helper + +--- + tests/cksuite-all-netns.c | 3 +-- + tests/cksuite-route-nh.c | 4 +--- + tests/nl-test-util.c | 11 +++++++++++ + tests/nl-test-util.h | 4 ++++ + 4 files changed, 17 insertions(+), 5 deletions(-) + +diff --git a/tests/cksuite-all-netns.c b/tests/cksuite-all-netns.c +index ff6fd6576..4714db268 100644 +--- a/tests/cksuite-all-netns.c ++++ b/tests/cksuite-all-netns.c +@@ -273,8 +273,7 @@ START_TEST(test_create_iface) + } + + r = rtnl_link_add(sk, link, NLM_F_CREATE); +- if (r == -NLE_OPNOTSUPP) { +- /* Hm, no kernel module? Skip the test. */ ++ if (_nltst_skip_eopnotsupp(r)) { + _nltst_assert_link_not_exists(IFNAME); + IFNAME = NULL; + return; +diff --git a/tests/cksuite-route-nh.c b/tests/cksuite-route-nh.c +index d31cecf3c..e05c94df1 100644 +--- a/tests/cksuite-route-nh.c ++++ b/tests/cksuite-route-nh.c +@@ -1054,10 +1054,8 @@ START_TEST(test_kernel_roundtrip_encap_ila) + ck_assert_int_eq(rtnl_nh_set_oif(nh, (uint32_t)ifindex_dummy), 0); + ck_assert_int_eq(rtnl_nh_set_family(nh, AF_INET6), 0); + ret = rtnl_nh_add(sk, nh, NLM_F_CREATE); +- if (ret == -NLE_OPNOTSUPP) { +- /* ila module is not loaded - skipping */ ++ if (_nltst_skip_eopnotsupp(ret)) + return; +- } + ck_assert_int_eq(ret, 0); + + ck_assert_int_eq(rtnl_nh_alloc_cache(sk, AF_UNSPEC, &cache), 0); +diff --git a/tests/nl-test-util.c b/tests/nl-test-util.c +index 51c04c69f..75bb54035 100644 +--- a/tests/nl-test-util.c ++++ b/tests/nl-test-util.c +@@ -838,6 +838,17 @@ bool _nltst_skip_no_iproute2(const char *msg) + + /*****************************************************************************/ + ++bool _nltst_skip_eopnotsupp(int err) ++{ ++ if (err != -NLE_OPNOTSUPP) ++ return false; ++ ++ printf("skip test after operation failed with NLE_OPNOTSUPP. This indicates missing kernel support"); ++ return true; ++} ++ ++/*****************************************************************************/ ++ + void _nltst_add_dummy_and_up(struct nl_sock *sk, const char *ifname, + int *out_ifindex) + { +diff --git a/tests/nl-test-util.h b/tests/nl-test-util.h +index ecae8856a..a2c0e3b3f 100644 +--- a/tests/nl-test-util.h ++++ b/tests/nl-test-util.h +@@ -449,6 +449,10 @@ bool _nltst_skip_no_iproute2(const char *msg); + + /*****************************************************************************/ + ++bool _nltst_skip_eopnotsupp(int err); ++ ++/*****************************************************************************/ ++ + typedef struct { + int addr_family; + int ifindex; + +From 1ac4b3216501574e7621618477d91b8fab13164a Mon Sep 17 00:00:00 2001 +From: Thomas Haller +Date: Tue, 23 Dec 2025 21:35:06 +0100 +Subject: [PATCH] tests: skip various tests when kernel returns EOPNOTSUPP + (NLE_OPNOTSUPP) + +https://github.com/thom311/libnl/issues/448 +--- + tests/cksuite-link-ip6tnl.c | 2 ++ + tests/cksuite-route-nexthop.c | 6 +++++- + tests/cksuite-route-nh.c | 21 ++++++++++++++++++--- + 3 files changed, 25 insertions(+), 4 deletions(-) + +diff --git a/tests/cksuite-link-ip6tnl.c b/tests/cksuite-link-ip6tnl.c +index ea785b864..c5dc35341 100644 +--- a/tests/cksuite-link-ip6tnl.c ++++ b/tests/cksuite-link-ip6tnl.c +@@ -97,6 +97,8 @@ START_TEST(test_kernel_roundtrip_all) + * This tests the netlink-message construction. + */ + r = rtnl_link_add(sk, link, NLM_F_CREATE); ++ if (_nltst_skip_eopnotsupp(r)) ++ return; + ck_assert_int_eq(r, 0); + + /* Now, query it and check whether all the attributes passed. +diff --git a/tests/cksuite-route-nexthop.c b/tests/cksuite-route-nexthop.c +index 34fc1d3b3..971a580bd 100644 +--- a/tests/cksuite-route-nexthop.c ++++ b/tests/cksuite-route-nexthop.c +@@ -416,6 +416,7 @@ START_TEST(test_kernel_route_roundtrip_nh_mpls_encap_v4) + struct rtnl_nh_encap *encap2; + struct rtnl_nexthop *nh = NULL; + int ifindex_dummy; ++ int r; + + if (_nltst_skip_no_netns()) + return; +@@ -447,7 +448,10 @@ START_TEST(test_kernel_route_roundtrip_nh_mpls_encap_v4) + ck_assert_int_eq(rtnl_route_nh_set_encap(nh, encap2), 0); + rtnl_route_add_nexthop(route, nh); + +- ck_assert_int_eq(rtnl_route_add(sk, route, NLM_F_CREATE), 0); ++ r = rtnl_route_add(sk, route, NLM_F_CREATE); ++ if (_nltst_skip_eopnotsupp(r)) ++ return; ++ ck_assert_int_eq(r, 0); + + /* Retrieve the route back by its prefix and validate MPLS encap on nexthop */ + ck_assert_int_eq(nltst_route_get_by_dst(sk, dst, &got), 0); +diff --git a/tests/cksuite-route-nh.c b/tests/cksuite-route-nh.c +index e05c94df1..b6ab8dc1e 100644 +--- a/tests/cksuite-route-nh.c ++++ b/tests/cksuite-route-nh.c +@@ -91,6 +91,7 @@ START_TEST(test_kernel_roundtrip_encap_mpls) + _nl_auto_nl_addr struct nl_addr *labels = NULL; + struct rtnl_nh_encap *encap = NULL; + int ifindex_dummy; ++ int r; + + if (_nltst_skip_no_netns()) + return; +@@ -127,7 +128,11 @@ START_TEST(test_kernel_roundtrip_encap_mpls) + ck_assert_int_eq(rtnl_nh_add(sk, nh, NLM_F_CREATE), -NLE_INVAL); + + ck_assert_int_eq(rtnl_nh_set_family(nh, AF_INET), 0); +- ck_assert_int_eq(rtnl_nh_add(sk, nh, NLM_F_CREATE), 0); ++ ++ r = rtnl_nh_add(sk, nh, NLM_F_CREATE); ++ if (_nltst_skip_eopnotsupp(r)) ++ return; ++ ck_assert_int_eq(r, 0); + + /* Query and verify */ + ck_assert_int_eq(rtnl_nh_alloc_cache(sk, AF_UNSPEC, &cache), 0); +@@ -944,6 +949,7 @@ START_TEST(test_kernel_roundtrip_encap_ip6) + _nl_auto_rtnl_nh_encap struct rtnl_nh_encap *encap = NULL; + uint16_t flags; + int ifindex_dummy; ++ int r; + + if (_nltst_skip_no_netns()) + return; +@@ -980,7 +986,11 @@ START_TEST(test_kernel_roundtrip_encap_ip6) + /* Set required attributes and add */ + ck_assert_int_eq(rtnl_nh_set_oif(nh, (uint32_t)ifindex_dummy), 0); + ck_assert_int_eq(rtnl_nh_set_family(nh, AF_INET6), 0); +- ck_assert_int_eq(rtnl_nh_add(sk, nh, NLM_F_CREATE), 0); ++ ++ r = rtnl_nh_add(sk, nh, NLM_F_CREATE); ++ if (_nltst_skip_eopnotsupp(r)) ++ return; ++ ck_assert_int_eq(r, 0); + + /* Query and verify */ + ck_assert_int_eq(rtnl_nh_alloc_cache(sk, AF_UNSPEC, &cache), 0); +@@ -1097,6 +1107,7 @@ START_TEST(test_kernel_roundtrip_encap_ip) + _nl_auto_rtnl_nh_encap struct rtnl_nh_encap *encap = NULL; + int ifindex_dummy; + uint64_t id = 0; ++ int r; + + if (_nltst_skip_no_netns()) + return; +@@ -1132,7 +1143,11 @@ START_TEST(test_kernel_roundtrip_encap_ip) + /* Set required attributes and add */ + ck_assert_int_eq(rtnl_nh_set_oif(nh, (uint32_t)ifindex_dummy), 0); + ck_assert_int_eq(rtnl_nh_set_family(nh, AF_INET), 0); +- ck_assert_int_eq(rtnl_nh_add(sk, nh, NLM_F_CREATE), 0); ++ ++ r = rtnl_nh_add(sk, nh, NLM_F_CREATE); ++ if (_nltst_skip_eopnotsupp(r)) ++ return; ++ ck_assert_int_eq(r, 0); + + /* Query and verify */ + ck_assert_int_eq(rtnl_nh_alloc_cache(sk, AF_UNSPEC, &cache), 0); diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.11.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.11.0.ebuild index 3cd69d2292b..b90fc0883bf 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.11.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.11.0.ebuild @@ -9,6 +9,7 @@ DISTUTILS_EXT=1 DISTUTILS_OPTIONAL=1 DISTUTILS_USE_PEP517=setuptools PYTHON_COMPAT=( python3_{11..14} ) +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/thomashaller.asc inherit autotools distutils-r1 multilib-minimal LIBNL_P=${P/_/-} @@ -17,24 +18,32 @@ LIBNL_DIR=${LIBNL_DIR//./_} DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces" HOMEPAGE="https://www.infradead.org/~tgr/libnl/ https://github.com/thom311/libnl" + if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/thom311/libnl" inherit git-r3 else - SRC_URI="https://github.com/thom311/${PN}/releases/download/${PN}${LIBNL_DIR}/${P/_rc/-rc}.tar.gz" - KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86" - + inherit verify-sig + SRC_URI=" + https://github.com/thom311/${PN}/releases/download/${PN}${LIBNL_DIR}/${P/_rc/-rc}.tar.gz + verify-sig? ( https://github.com/thom311/${PN}/releases/download/${PN}${LIBNL_DIR}/${P/_rc/-rc}.tar.gz.sig ) + " S="${WORKDIR}/${LIBNL_P}" + + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-thomashaller )" fi LICENSE="LGPL-2.1 utils? ( GPL-2 )" SLOT="3" IUSE="+debug python test utils" -RESTRICT="!test? ( test )" +# bug #968602 +RESTRICT="!test? ( test ) test" RDEPEND="python? ( ${PYTHON_DEPS} )" DEPEND="${RDEPEND}" -BDEPEND=" +BDEPEND+=" ${RDEPEND} sys-devel/bison sys-devel/flex diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.12.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.12.0.ebuild new file mode 100644 index 00000000000..5a6c3889126 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.12.0.ebuild @@ -0,0 +1,145 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Make sure to test USE=utils on bumps and update MULTILIB_WRAPPED_HEADERS if needed + +DISTUTILS_EXT=1 +DISTUTILS_OPTIONAL=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{11..14} ) +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/thomashaller.asc +inherit autotools distutils-r1 multilib-minimal + +LIBNL_P=${P/_/-} +LIBNL_DIR=${PV/_/} +LIBNL_DIR=${LIBNL_DIR//./_} + +DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces" +HOMEPAGE="https://www.infradead.org/~tgr/libnl/ https://github.com/thom311/libnl" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/thom311/libnl" + inherit git-r3 +else + inherit verify-sig + SRC_URI=" + https://github.com/thom311/${PN}/releases/download/${PN}${LIBNL_DIR}/${P/_rc/-rc}.tar.gz + verify-sig? ( https://github.com/thom311/${PN}/releases/download/${PN}${LIBNL_DIR}/${P/_rc/-rc}.tar.gz.sig ) + " + S="${WORKDIR}/${LIBNL_P}" + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-thomashaller )" +fi + +LICENSE="LGPL-2.1 utils? ( GPL-2 )" +SLOT="3" +IUSE="+debug python test utils" +# test_kernel_route_roundtrip_* fais in 3.12.0 +RESTRICT="!test? ( test ) test" + +RDEPEND="python? ( ${PYTHON_DEPS} )" +DEPEND="${RDEPEND}" +BDEPEND+=" + ${RDEPEND} + sys-devel/bison + sys-devel/flex + virtual/pkgconfig + python? ( + ${DISTUTILS_DEPS} + dev-lang/swig + ) + test? ( dev-libs/check ) +" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +MULTILIB_WRAPPED_HEADERS=( + # We do not install CLI stuff for non-native + /usr/include/libnl3/netlink/cli/addr.h + /usr/include/libnl3/netlink/cli/class.h + /usr/include/libnl3/netlink/cli/cls.h + /usr/include/libnl3/netlink/cli/ct.h + /usr/include/libnl3/netlink/cli/exp.h + /usr/include/libnl3/netlink/cli/link.h + /usr/include/libnl3/netlink/cli/mdb.h + /usr/include/libnl3/netlink/cli/nh.h + /usr/include/libnl3/netlink/cli/neigh.h + /usr/include/libnl3/netlink/cli/qdisc.h + /usr/include/libnl3/netlink/cli/route.h + /usr/include/libnl3/netlink/cli/rule.h + /usr/include/libnl3/netlink/cli/tc.h + /usr/include/libnl3/netlink/cli/utils.h +) + +PATCHES=( + "${FILESDIR}"/${PN}-3.11.0-no-iproute2.patch + "${FILESDIR}"/${P}-tests.patch +) + +src_prepare() { + default + + eautoreconf + + if use python; then + pushd "${S}"/python > /dev/null || die + distutils-r1_src_prepare + popd > /dev/null || die + fi +} + +multilib_src_configure() { + # bug #884277 + export YACC=yacc.bison + + ECONF_SOURCE="${S}" econf \ + $(multilib_native_use_enable utils cli) \ + $(use_enable debug) +} + +multilib_src_compile() { + default + + if multilib_is_native_abi && use python ; then + pushd python > /dev/null || die + distutils-r1_src_compile + popd > /dev/null || die + fi +} + +multilib_src_test() { + CK_VERBOSITY=verbose emake check VERBOSE=1 + + if multilib_is_native_abi && use python ; then + pushd python > /dev/null || die + # TODO: run python/tests/test-create-bridge.py + distutils-r1_src_test + popd > /dev/null || die + fi +} + +multilib_src_install() { + default + + if multilib_is_native_abi && use python ; then + # Unset DOCS= since distutils-r1.eclass interferes + local DOCS=() + + pushd python > /dev/null || die + + distutils-r1_src_install + + popd > /dev/null || die + fi +} + +multilib_src_install_all() { + DOCS=( ChangeLog ) + + einstalldocs + + find "${ED}" -name '*.la' -delete || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-9999.ebuild index f7369de736a..b30cfa19ebc 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -9,6 +9,7 @@ DISTUTILS_EXT=1 DISTUTILS_OPTIONAL=1 DISTUTILS_USE_PEP517=setuptools PYTHON_COMPAT=( python3_{11..14} ) +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/thomashaller.asc inherit autotools distutils-r1 multilib-minimal LIBNL_P=${P/_/-} @@ -17,24 +18,32 @@ LIBNL_DIR=${LIBNL_DIR//./_} DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces" HOMEPAGE="https://www.infradead.org/~tgr/libnl/ https://github.com/thom311/libnl" + if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/thom311/libnl" inherit git-r3 else - SRC_URI="https://github.com/thom311/${PN}/releases/download/${PN}${LIBNL_DIR}/${P/_rc/-rc}.tar.gz" + inherit verify-sig + SRC_URI=" + https://github.com/thom311/${PN}/releases/download/${PN}${LIBNL_DIR}/${P/_rc/-rc}.tar.gz + verify-sig? ( https://github.com/thom311/${PN}/releases/download/${PN}${LIBNL_DIR}/${P/_rc/-rc}.tar.gz.sig ) + " + S="${WORKDIR}/${LIBNL_P}" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - S="${WORKDIR}/${LIBNL_P}" + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-thomashaller )" fi LICENSE="LGPL-2.1 utils? ( GPL-2 )" SLOT="3" IUSE="+debug python test utils" -RESTRICT="!test? ( test )" +# test_kernel_route_roundtrip_* fais in 3.12.0 +RESTRICT="!test? ( test ) test" RDEPEND="python? ( ${PYTHON_DEPS} )" DEPEND="${RDEPEND}" -BDEPEND=" +BDEPEND+=" ${RDEPEND} sys-devel/bison sys-devel/flex @@ -66,7 +75,6 @@ MULTILIB_WRAPPED_HEADERS=( ) PATCHES=( - "${FILESDIR}"/0001-Fix-compilation-error-in-GCC-14.patch "${FILESDIR}"/${PN}-3.11.0-no-iproute2.patch ) From e39b29214423227ace1cf376bc8aaee09cd6bc34 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:22 +0000 Subject: [PATCH 066/291] dev-libs/libp11: Sync with Gentoo It's from Gentoo commit d74ddb081de4df9b7aef5ac8f41e76a9f72b3288. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-libs/libp11/Manifest | 3 ++ .../dev-libs/libp11/libp11-0.4.16.ebuild | 12 +++-- .../dev-libs/libp11/libp11-0.4.17.ebuild | 54 +++++++++++++++++++ 3 files changed, 66 insertions(+), 3 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/libp11/libp11-0.4.17.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libp11/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libp11/Manifest index df7fe707e79..5f8fc2d4743 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libp11/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libp11/Manifest @@ -1,3 +1,6 @@ DIST libp11-0.4.12.tar.gz 516414 BLAKE2B a816749984753a1916dd58860c51b49d316946b59eb3bc839f6a21dcff14de48d7a4937f55fc7ad96a26b914591854d5cf11a1fbac2d5f2f5e04c833973c0e42 SHA512 674cfca2c9eaf162262204c94f9d59d3095dabbc348c1842e758b897e1a5bd4ba08b2d589ec3b2a2d1343a8760eab253e7008dc09ef5b499e2f16385efe5c8cc DIST libp11-0.4.13.tar.gz 531147 BLAKE2B ea31e56966cc22e6a6dad2d4923bd89ad110f537172af1dca912d8449df8a6a118ceca45912e7c3d38979dd3e591a9fb110091fd5474b41d6159d489b7c9ba37 SHA512 7936e5e3e37b424caff2ce95b416e67d6bf082676c5a3efb23651d414eacdbdbc1f5e11b05097b500a9d0ca5a97e628f54dd7d1e5ba2a7b5e3a36b3b7b75b5ed DIST libp11-0.4.16.tar.gz 561088 BLAKE2B a6fd869ac18aba2dfce5d4c0d135b2e90b337f53300ee0b4042d669c15e4849788a0e2a7b6aa7f463bbeb7ade7a45d79a9dc4ba52e4b2ff7a02fe2ad5f7a0866 SHA512 91248a39b30fc032079441506b49cfe1a8784b2cc4dd795a7633694d9e292dbf1075244366227d3924692d58129eecabae3e62ec006838bb1ac8942a4aed236b +DIST libp11-0.4.16.tar.gz.asc 833 BLAKE2B 887d809606dea57f28bd51c1f84748ee480d28ae816d6475ef7ea5acdc41f4b281be1125907c39c50a333a3ee7be68da6fc26740c4229c0a23ff7e32e10543c3 SHA512 22e3d3850ce239ba513cebada23cd8d468f305069ade0aee21581109841606497774a5045650dde5a740600e61425d4a6daff4798c2980265ddb02b41971e2b9 +DIST libp11-0.4.17.tar.gz 575870 BLAKE2B a1fd51b67a2a84becabbcecfce7e2bb5205e00fc1d3ebd54cc865fbe00801de27cdc586e8a354d11cb0ce2b6b8b826e2aa6421ee9f31f3996867c05f91643f11 SHA512 05bbadf69c433d32e99052bf94d8979cc858ea156fc2c6462c3822577e762e36dd19e8e2d1d459184c7bba996319e3e2eb51244b9c5c830e11635ece6736e63e +DIST libp11-0.4.17.tar.gz.asc 833 BLAKE2B 1a3e66c2f048e760ba5a7dd9c47d9b4ca2a5f9402e5d234f937706fccddc621bbc09b6f72a08b1188a6f760e4b2c93741c58218cb4156fc05e96c4ae3fc20a17 SHA512 134c51b26494be9a13848a5b0da71ceff7bb99015223ab728598a4595c42f70d734cc7a42345b3c5a0dd0f97ab54ded429760031ad9f6505994f3c7f4cda7486 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libp11/libp11-0.4.16.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libp11/libp11-0.4.16.ebuild index ab0122da1bc..0ca1b8952bf 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libp11/libp11-0.4.16.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libp11/libp11-0.4.16.ebuild @@ -1,13 +1,18 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit autotools +# Releases are signed by Michał Trojnara of stunnel +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/stunnel.asc +inherit autotools verify-sig DESCRIPTION="Abstraction layer to simplify PKCS#11 API" HOMEPAGE="https://github.com/opensc/libp11/wiki" -SRC_URI="https://github.com/OpenSC/${PN}/releases/download/${P}/${P}.tar.gz" +SRC_URI=" + https://github.com/OpenSC/${PN}/releases/download/${P}/${P}.tar.gz + verify-sig? ( https://github.com/OpenSC/${PN}/releases/download/${P}/${P}.tar.gz.asc ) +" LICENSE="LGPL-2.1" SLOT="0" @@ -25,6 +30,7 @@ BDEPEND=" virtual/pkgconfig doc? ( app-text/doxygen ) test? ( >=dev-libs/opensc-0.23.0-r2 ) + verify-sig? ( sec-keys/openpgp-keys-stunnel ) " src_prepare() { diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libp11/libp11-0.4.17.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libp11/libp11-0.4.17.ebuild new file mode 100644 index 00000000000..0ca1b8952bf --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libp11/libp11-0.4.17.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Releases are signed by Michał Trojnara of stunnel +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/stunnel.asc +inherit autotools verify-sig + +DESCRIPTION="Abstraction layer to simplify PKCS#11 API" +HOMEPAGE="https://github.com/opensc/libp11/wiki" +SRC_URI=" + https://github.com/OpenSC/${PN}/releases/download/${P}/${P}.tar.gz + verify-sig? ( https://github.com/OpenSC/${PN}/releases/download/${P}/${P}.tar.gz.asc ) +" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="doc static-libs test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-libs/openssl-3.0.0:=[bindist(+)] +" +DEPEND="${RDEPEND} + test? ( dev-libs/softhsm ) +" +BDEPEND=" + virtual/pkgconfig + doc? ( app-text/doxygen ) + test? ( >=dev-libs/opensc-0.23.0-r2 ) + verify-sig? ( sec-keys/openpgp-keys-stunnel ) +" + +src_prepare() { + default + eautoreconf +} + +src_configure() { + local args=( + --enable-shared + $(use_enable static-libs static) + $(use_enable doc api-doc) + ) + econf "${args[@]}" +} + +src_install() { + default + + find "${ED}" -name '*.la' -delete || die +} From 36db27e4fc8612d6f08b747d6a0caa4accbe842e Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:23 +0000 Subject: [PATCH 067/291] dev-libs/libpipeline: Sync with Gentoo It's from Gentoo commit 4e81343c0da6feeba38b90b0cf5d0ac3c8e2b939. Signed-off-by: Flatcar Buildbot --- .../dev-libs/libpipeline/Manifest | 1 + .../libpipeline/libpipeline-1.5.8.ebuild | 17 ++++++++++++----- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libpipeline/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libpipeline/Manifest index 8839976f0ec..05e4b9daacd 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libpipeline/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libpipeline/Manifest @@ -1 +1,2 @@ DIST libpipeline-1.5.8.tar.gz 1070254 BLAKE2B 1feb1a9493fd0850b4e3e446619e7e042bd97d8c0bbb3e13a91d90d6cde3ca2c17fb8a3ca256f65291dadc4d8703ad5d3a795839bf8280adc4547b3ec3d2da7d SHA512 0ae94df4bd508f0e664fa5430687d64904c60d69d9565c18cacb70251f8653cb7c571325d1406c859fdd149048adce8c4b3bf028573064496d7da3436e27b9b0 +DIST libpipeline-1.5.8.tar.gz.asc 833 BLAKE2B a40bdddc43258f2f8f34ea2336d1d30ad5b9ce3740e86f84b259b06be6bbf5551617784d79e44fe2a522083e8e70a10b66934d75f9acf4827710b54ea04ffa9c SHA512 d8feb32c3344b7e1d95469a34bf2d23d194556c4ef3821d61fc4bc3b9368d5cf5c5261ab759034fcf4cf341b704f0ee685f842cf407671b0ec3f3c56f1a5b260 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libpipeline/libpipeline-1.5.8.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libpipeline/libpipeline-1.5.8.ebuild index ac03cc4e16a..dc79242ab24 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libpipeline/libpipeline-1.5.8.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libpipeline/libpipeline-1.5.8.ebuild @@ -1,13 +1,17 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit libtool +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/cjwatson.asc +inherit libtool verify-sig -DESCRIPTION="A pipeline manipulation library" +DESCRIPTION="Pipeline manipulation library" HOMEPAGE="https://libpipeline.nongnu.org/" -SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz" +SRC_URI=" + mirror://nongnu/${PN}/${P}.tar.gz + verify-sig? ( mirror://nongnu/${PN}/${P}.tar.gz.asc ) +" LICENSE="GPL-3" SLOT="0" @@ -16,7 +20,10 @@ IUSE="test" RESTRICT="!test? ( test )" DEPEND="test? ( dev-libs/check )" -BDEPEND="virtual/pkgconfig" +BDEPEND=" + virtual/pkgconfig + verify-sig? ( sec-keys/openpgp-keys-cjwatson ) +" src_prepare() { default From 19326dfa3ce0b16ae2f04bde437cea0c75102cad Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:23 +0000 Subject: [PATCH 068/291] dev-libs/libsodium: Sync with Gentoo It's from Gentoo commit c39263fa38487403d472066559fbdb3453f483a9. Signed-off-by: Flatcar Buildbot --- .../dev-libs/libsodium/Manifest | 4 + .../libsodium/libsodium-1.0.21.ebuild | 76 +++++++++++++++++++ .../libsodium-1.0.21_p20260122.ebuild | 76 +++++++++++++++++++ 3 files changed, 156 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/libsodium/libsodium-1.0.21.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/libsodium/libsodium-1.0.21_p20260122.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libsodium/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libsodium/Manifest index f6f7591fe3d..cd3dcba60bf 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libsodium/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libsodium/Manifest @@ -2,3 +2,7 @@ DIST libsodium-1.0.20.tar.gz 1925167 BLAKE2B 2f1d8b2dc8a65f95433132b12bdccb7e0e4 DIST libsodium-1.0.20.tar.gz.minisig 318 BLAKE2B b5939a9ca9b25332c39484b3ef02ced54aa75b2dc732d384d4f42daa0b6bd276f0c3359a8cbe8c97d8ab76b8c49e9f66959dcf350e3cf00fae10a279826109ae SHA512 fc5a4282093d58eb42559f88ccf75ea3788449afda9d882d313714e448e78ef11c22ff1e52091af026f6bf3ba01917d606040b1dca240dd1a32278c901b4affb DIST libsodium-1.0.20_p20250606.tar.gz 1987810 BLAKE2B d423f516312fa1108b7e49b9c69d49abc3ebb2db5e6d81698e08ded33a2f11079738d261be7e8bd5ff87080cb6e225ee7c32d9ebf2bf8cc840c4e04454621987 SHA512 afe584c735e439202f6168032800b30afed9b15cf24305043a8fcb9356ba812f3f13e08e8d99ba2da4711da2390d2d7d6c2598285ac3dc1056d48588ba743c76 DIST libsodium-1.0.20_p20250606.tar.gz.minisig 318 BLAKE2B 131ed9064a414e2f7dd7a2509c367eceed2784e47a903262e4c037d27ca5809e343943e26a5e87eb9a00be122393acc920861797ac303ab7bf005a74a1bf02a0 SHA512 cafcdcc2de7e34a57f9bd8ae526ed22b3310467e89a51d68035feb298bfff30e6d2ea9100973de18eb3abc11b70d0b05238a726afacbe621287cfac509503dcb +DIST libsodium-1.0.21.tar.gz 2046164 BLAKE2B df68159bbf0b5198ab185e93857b4f07af1d4aa7ffd178b7cb78ff5b020b6ee93ab5c3e71f59812b79906ff4df19e42845435c2bc22bbe8b0a0804076b0ddd05 SHA512 ee8cc2f3f5707b172bf75d8c04afbd5f0c83c6f94dbab3f988f07aab716d96f1662556a59e09b3d83c3bd5c22f59327ad95937bf499d523c86146f4df830f777 +DIST libsodium-1.0.21.tar.gz.minisig 318 BLAKE2B 3ce78469d01575e7ffbcd52c078a50e894b7dbdc631a8d44adf70df6d8f81adaabed8cea7c3d8ebdcfc768932713de02a4026c64068f212efd524e3f07f2503e SHA512 5d6df371692c0d13f7ea82b4d15df7b24c445eb66dcf9fb528e9b055270e7ad5d27d60193cde9cf0182789694972b9d620844d55547df3d45f3da3dfd17aa46b +DIST libsodium-1.0.21_p20260122.tar.gz 2049837 BLAKE2B e55ffacb5355935980faac65cd21c1677f5904e20b9b752959bbbf08738b2ef677ffc341a67f866625167688b2a3488a24e11adc78f565b79684e8b1b0628e88 SHA512 8e65aae18a26fc7e7dc7fee7c078b5964a094de0d4fb01d571366ffa4c57d1fab6391b8e5a6fd8a22450c6ad57060f7ad7760f5caa215ded49579af71fa8fc9b +DIST libsodium-1.0.21_p20260122.tar.gz.minisig 318 BLAKE2B 0cb95f535f0da4345652aac7e7a36a23923c1fb925de25ed087cbe1a7f0b62be611201a947c0c360515d0e2a5f93e76aff6feff5df78dfd0e5ae659bb71feab5 SHA512 73c0d6ab4816eb10c731517d95405e817a12aa716173fee874d10fb9e843cad4aa921ddeef4b3d69c26a3ec0e1a9f0695416a2a5c542638c31292a49231ff14e diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libsodium/libsodium-1.0.21.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libsodium/libsodium-1.0.21.ebuild new file mode 100644 index 00000000000..b89d904af65 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libsodium/libsodium-1.0.21.ebuild @@ -0,0 +1,76 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libsodium.minisig +VERIFY_SIG_METHOD=minisig +inherit autotools multilib-minimal verify-sig + +DESCRIPTION="Portable fork of NaCl, a higher-level cryptographic library" +HOMEPAGE="https://libsodium.org" + +if [[ ${PV} == *_p* ]] ; then + MY_P=${PN}-$(ver_cut 1-3)-stable-$(ver_cut 5-) + + # We use _pN to represent 'stable releases' + # These are backports from upstream to the last release branch + # See https://download.libsodium.org/libsodium/releases/README.html + SRC_URI=" + https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_P}.tar.gz -> ${P}.tar.gz + verify-sig? ( https://dev.gentoo.org/~sam/distfiles/dev-libs/libsodium/${MY_P}.tar.gz.minisig -> ${P}.tar.gz.minisig ) + " + S="${WORKDIR}"/${PN}-stable +else + SRC_URI=" + https://download.libsodium.org/${PN}/releases/${P}.tar.gz + verify-sig? ( https://download.libsodium.org/${PN}/releases/${P}.tar.gz.minisig ) + " +fi + +LICENSE="ISC" +SLOT="0/26" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" +IUSE="+asm static-libs +urandom" + +CPU_USE=( cpu_flags_x86_{aes,sse4_1} ) +IUSE+=" ${CPU_USE[@]}" + +BDEPEND=" verify-sig? ( sec-keys/minisig-keys-libsodium )" + +QA_CONFIG_IMPL_DECL_SKIP=( + _rdrand64_step # depends on target, bug #924154 +) + +PATCHES=( + "${FILESDIR}"/${PN}-1.0.19-cpuflags.patch +) + +src_prepare() { + default + + eautoreconf +} + +multilib_src_configure() { + local myeconfargs=( + $(use_enable asm) + $(use_enable cpu_flags_x86_aes aesni) + $(use_enable cpu_flags_x86_sse4_1 sse4_1) + $(use_enable static-libs static) + $(use_enable !urandom blocking-random) + ) + + # --disable-pie is needed on x86, see bug #512734 + # TODO: Check if still needed? + if [[ ${ABI} == x86 ]] ; then + myeconfargs+=( --disable-pie ) + fi + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_install_all() { + default + find "${ED}" -type f -name "*.la" -delete || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libsodium/libsodium-1.0.21_p20260122.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libsodium/libsodium-1.0.21_p20260122.ebuild new file mode 100644 index 00000000000..b8759cbfee3 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libsodium/libsodium-1.0.21_p20260122.ebuild @@ -0,0 +1,76 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libsodium.minisig +VERIFY_SIG_METHOD=minisig +inherit autotools multilib-minimal verify-sig + +DESCRIPTION="Portable fork of NaCl, a higher-level cryptographic library" +HOMEPAGE="https://libsodium.org" + +if [[ ${PV} == *_p* ]] ; then + MY_P=${PN}-$(ver_cut 1-3)-stable-$(ver_cut 5-) + + # We use _pN to represent 'stable releases' + # These are backports from upstream to the last release branch + # See https://download.libsodium.org/libsodium/releases/README.html + SRC_URI=" + https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_P}.tar.gz -> ${P}.tar.gz + verify-sig? ( https://dev.gentoo.org/~sam/distfiles/dev-libs/libsodium/${MY_P}.tar.gz.minisig -> ${P}.tar.gz.minisig ) + " + S="${WORKDIR}"/${PN}-stable +else + SRC_URI=" + https://download.libsodium.org/${PN}/releases/${P}.tar.gz + verify-sig? ( https://download.libsodium.org/${PN}/releases/${P}.tar.gz.minisig ) + " +fi + +LICENSE="ISC" +SLOT="0/26" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos" +IUSE="+asm static-libs +urandom" + +CPU_USE=( cpu_flags_x86_{aes,sse4_1} ) +IUSE+=" ${CPU_USE[@]}" + +BDEPEND=" verify-sig? ( sec-keys/minisig-keys-libsodium )" + +QA_CONFIG_IMPL_DECL_SKIP=( + _rdrand64_step # depends on target, bug #924154 +) + +PATCHES=( + "${FILESDIR}"/${PN}-1.0.19-cpuflags.patch +) + +src_prepare() { + default + + eautoreconf +} + +multilib_src_configure() { + local myeconfargs=( + $(use_enable asm) + $(use_enable cpu_flags_x86_aes aesni) + $(use_enable cpu_flags_x86_sse4_1 sse4_1) + $(use_enable static-libs static) + $(use_enable !urandom blocking-random) + ) + + # --disable-pie is needed on x86, see bug #512734 + # TODO: Check if still needed? + if [[ ${ABI} == x86 ]] ; then + myeconfargs+=( --disable-pie ) + fi + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_install_all() { + default + find "${ED}" -type f -name "*.la" -delete || die +} From 61f33511113dee64a8b11c3f33b68c545e3dfe1d Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:24 +0000 Subject: [PATCH 069/291] dev-libs/libtasn1: Sync with Gentoo It's from Gentoo commit d38aadd70b6a973eefa1d93140607eb7429ecd52. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-libs/libtasn1/Manifest | 2 + .../dev-libs/libtasn1/libtasn1-4.19.0.ebuild | 4 +- .../dev-libs/libtasn1/libtasn1-4.20.0.ebuild | 4 +- .../dev-libs/libtasn1/libtasn1-4.21.0.ebuild | 54 +++++++++++++++++++ 4 files changed, 60 insertions(+), 4 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.21.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/Manifest index 576a9c7c86f..04a5a982a98 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/Manifest @@ -2,3 +2,5 @@ DIST libtasn1-4.19.0.tar.gz 1786576 BLAKE2B 6e8232590cd87da3bfd9182ed44eccdfbdfc DIST libtasn1-4.19.0.tar.gz.sig 228 BLAKE2B f45b8c53844fad4d1044ef6915d88337affb0287973a0ffab2d77a6a61c850cebdea6904f077fcc13a8bc29ba7cbbef7cdf2a5e325c8180d574020eb3cb9f432 SHA512 e0417625f8df22c6421914bf2d4f19d7f27260c24c04f50e59669681f326debe06ddef9dc5a2e20fda50feb30bbbf3f41597e64961257304ec2c407aa76d107e DIST libtasn1-4.20.0.tar.gz 1783873 BLAKE2B 3219b48e691abd7f6f4e32164ab708bc7c29832a2a7669aa03751d4a519dffb78d5a5f94530a3f35cd6516b39400da9e634d7f46245ab934465c305a1d387561 SHA512 0c0660085f5e80537aa3d65197967029be6cc5e27d7029789713902989c1694fdb49421ae0415b79b953e11893bb4bdaada85f7aff847dd0bb4075c91887e7b4 DIST libtasn1-4.20.0.tar.gz.sig 1223 BLAKE2B c9bff7ae5b7f4939e4df1c0d67b634a1fde57554a5dae26a20fbe600dd9d5b79239a04d1531acdf1f6dedf2eb06bc2bab46c432dbe6c9ad991d0e06b41dcf268 SHA512 bb5da128c20ed8f1e7c681c779ac3d2e455c661d779a4a7a70a6cabc1ea4139df9d0acfd145545acc8fe41df6490fd7d3c2df4b8d7560891291abbf56ac3afdb +DIST libtasn1-4.21.0.tar.gz 1816537 BLAKE2B 0dc478a6be6cbfb26264f1d92361f02f384ee01d54ee3822805d660f9eeef65e37562e8daea3c2b21adb8033296a1eea8d33ab0dae37e6c2b42644c03fcdb7ac SHA512 6a581c4c072b168bf29a0dec7e59a9329a798e392b7d1033791d0e3166a5d1164e2a7065373a84018d500a01563657900c318b1fd437c227c3174b754f9998d3 +DIST libtasn1-4.21.0.tar.gz.sig 1223 BLAKE2B f1215b8a54c3e0b0c6467846668584068a1cfed9826ee1b053d54691ec83c4e427008113e60f82efb9ed8fb7fe8168464da6af3c407cf7234d30ae307175c430 SHA512 2347e04e9214b295fd20490a237ae394f02cb26950a07456364311437c23324728fa9547f83ceba2ba829a5473c004e129cf72a891e50a2f4f96f16ee37a0bb9 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.19.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.19.0.ebuild index ad3fc556158..7256835d40f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.19.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.19.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -11,7 +11,7 @@ HOMEPAGE="https://www.gnu.org/software/libtasn1/" SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.gz.sig )" -LICENSE="LGPL-2.1+" +LICENSE="LGPL-2.1+ GPL-3+ FDL-1.3+" SLOT="0/6" # subslot = libtasn1 soname version KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="static-libs test" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.20.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.20.0.ebuild index 759b12fe07f..cb829046874 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.20.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.20.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -11,7 +11,7 @@ HOMEPAGE="https://www.gnu.org/software/libtasn1/" SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.gz.sig )" -LICENSE="LGPL-2.1+" +LICENSE="LGPL-2.1+ GPL-3+ FDL-1.3+" SLOT="0/6" # subslot = libtasn1 soname version KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="static-libs test" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.21.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.21.0.ebuild new file mode 100644 index 00000000000..8cf7637b0f5 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.21.0.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libtasn1.asc +inherit multilib-minimal libtool verify-sig + +DESCRIPTION="ASN.1 library" +HOMEPAGE="https://www.gnu.org/software/libtasn1/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" +SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.gz.sig )" + +LICENSE="LGPL-2.1+ GPL-3+ FDL-1.3+" +SLOT="0/6" # subslot = libtasn1 soname version +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="static-libs" + +BDEPEND=" + sys-apps/help2man + app-alternatives/yacc + verify-sig? ( >=sec-keys/openpgp-keys-libtasn1-20260112 ) +" + +DOCS=( AUTHORS ChangeLog NEWS README.md THANKS ) + +src_prepare() { + default + + # For Solaris shared library + elibtoolize +} + +multilib_src_configure() { + # -fanalyzer substantially slows down the build and isn't useful for + # us. It's useful for upstream as it's static analysis, but it's not + # useful when just getting something built. + export gl_cv_warn_c__fanalyzer=no + + local myeconfargs=( + --disable-valgrind-tests + $(use_enable static-libs static) + ) + + # https://gitlab.com/gnutls/libtasn1/-/issues/57 (bug #968661) + export MAKEINFO=: + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_install_all() { + einstalldocs + + find "${ED}" -type f -name '*.la' -delete || die +} From 3835269573141e315aca030453ac8a51a522184b Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:24 +0000 Subject: [PATCH 070/291] dev-libs/libtraceevent: Sync with Gentoo It's from Gentoo commit ef816f1d71a8b8d49a0e4ddf496f1173d868d5b9. Signed-off-by: Flatcar Buildbot --- .../dev-libs/libtraceevent/Manifest | 1 + .../libtraceevent/libtraceevent-1.9.0.ebuild | 48 +++++++++++++++++++ 2 files changed, 49 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/libtraceevent/libtraceevent-1.9.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libtraceevent/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libtraceevent/Manifest index b58fae6a95e..90412912f9b 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libtraceevent/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libtraceevent/Manifest @@ -2,3 +2,4 @@ DIST libtraceevent-1.8.3.tar.gz 156029 BLAKE2B 91df67b7ba2bb76f594b9b6ab457394d3 DIST libtraceevent-1.8.4.tar.gz 156227 BLAKE2B da8be57eba0003f0fde8dc19f7c6987b0cd3c79bf006093191a1884e535828661d0384309b7ac9cee7870f8e7de51ba4527a9e44ed70d44ad2c95819633443f9 SHA512 8db691d1d8e96c73a30a79aa498fead2d9df2b41fd7b39865a3299a603e8c73a3268930a42324cef38d79b0a87f4f13a43ebf146a8e31aee91ede459d8da7b84 DIST libtraceevent-1.8.6.tar.gz 157164 BLAKE2B 4b5d0604e0b31b4560ca913de8e9d18a2e4a4152e6b59cc99f0eaae95143fb9716ddd9e4d9611c6252fd1a642953c52c9fc4ca1fdfa7e1f6b1de380e42fa72f2 SHA512 36b04bf78c1c8b984dfb5a5f32037ae3862f195d8e91c79d5efb410c0c9315037b0e6f7d5c0022d0089785be6c2c6efd0b9eff0f820f3e39f245711faae68355 DIST libtraceevent-1.8.7.tar.gz 157556 BLAKE2B 15d32abe2128587ab3f887fca00a1196068fce2f366ffa53a964e87e82aeae211c03c972f334701aa12c01e2e968b7fd9f21ab61a45487c9597172ac3c9b8524 SHA512 63c520794effe8e570bef80b7e81696b59de0e095c8a184722e79450856ebaed5e9e89c1c679a010da75043e80db2b2968a9af47da1f436f844ca7112e1d0451 +DIST libtraceevent-1.9.0.tar.gz 165065 BLAKE2B e731501f19fcfafc7b3d5dc16bebc9eb0d100c5ed28fef174c1c6c6ef23b74132d6f20a7648064927d0e013349b8891a93b5682f4e86e3f8c712bb9453c823f7 SHA512 9afb3c20ec1161f38ae8ad507dd1bf5841861f76c567e0cd4a195044eddf72b790301e7f628db40597bae34822eb15ceb57de4eb5bb34758931a4a994991f6ee diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libtraceevent/libtraceevent-1.9.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libtraceevent/libtraceevent-1.9.0.ebuild new file mode 100644 index 00000000000..f4a5155786e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libtraceevent/libtraceevent-1.9.0.ebuild @@ -0,0 +1,48 @@ +# Copyright 2019-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit meson + +DESCRIPTION="Linux kernel trace event library" +HOMEPAGE="https://www.trace-cmd.org/" + +if [[ ${PV} =~ [9]{4,} ]]; then + EGIT_REPO_URI="https://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git/" + inherit git-r3 +else + SRC_URI="https://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git/snapshot/${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" +fi + +LICENSE="LGPL-2.1" +SLOT="0" +IUSE="doc test" +RESTRICT="!test? ( test )" + +RDEPEND=" + ! Date: Mon, 2 Mar 2026 07:24:25 +0000 Subject: [PATCH 071/291] dev-libs/libusb: Sync with Gentoo It's from Gentoo commit 1daa50055a6c0c9a66f281da838c425d61919633. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-libs/libusb/Manifest | 1 + .../dev-libs/libusb/libusb-1.0.29.ebuild | 15 +++++++++++---- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libusb/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libusb/Manifest index ebab64f35b3..107dc8a9fef 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libusb/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libusb/Manifest @@ -1,3 +1,4 @@ DIST libusb-1.0.27.tar.bz2 643680 BLAKE2B bec2eb053159ffa719c794d234f8e99b895a4fae336b862a3197b88deb3d307a53ebb98d2aa993a2f390f14264f796b96ac47274c19f56db30440484ee336c8a SHA512 42abbbcf2564f86cc2f05826aeefa6beb03c9f89dc9fe05bdfa351caa3dbd07713ce193daadecf29557604dd3cbc770c8031a78e1ad0a8df3627c3f551d28ff0 DIST libusb-1.0.28.tar.bz2 658053 BLAKE2B 9bf506455fc1b981de155600936ab229f089ea28e58491076eab632455c4e814bf0336cd9326056a255508aa3956643c503af3ff2feda80bac036cf5cad86e80 SHA512 0f4efa6b54e6195d2e5446652c2dc07358583e205d63bf438c4409511b8637d1700a71268c40499755747827d23cc730d9122267386f847bf781993c045c519f DIST libusb-1.0.29.tar.bz2 645381 BLAKE2B 74db11918fa704eae3a320838c84dd06427acd5e3f73263e965decd1a09f0a14ed2d1a3916bf7eada26ab1164a3955a9fa3bdff8e3294264c6f8e1137866652a SHA512 04f8bda8197c9ecf52709609b8fbfea762fd82ddb5cde153a7630b0e8ed557d42da8cbc44f2f593aa22fdd0762e16716300565d67adb0c5240d7f3723321f690 +DIST libusb-1.0.29.tar.bz2.asc 833 BLAKE2B 2adbee3202e2f9480bafccc405a708eee4e281ec9c2a9d802771f79760692cb2d2d125837e34adb43755f92b86074e0b8700071a0e6fea07f70376a75fe1de7b SHA512 57e12d3a58d8ac418e28f6d83a7cb8c0268ed5d2752707796aa5bf1f8bcf2a8083aa664d36ffcdcc96da62153afa792728662fa8230be9e2865d4a37003e199d diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libusb/libusb-1.0.29.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libusb/libusb-1.0.29.ebuild index 2d170c96355..1215350080e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libusb/libusb-1.0.29.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libusb/libusb-1.0.29.ebuild @@ -1,13 +1,17 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit libtool multilib-minimal +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libusb.asc +inherit libtool multilib-minimal verify-sig DESCRIPTION="Userspace access to USB devices" HOMEPAGE="https://libusb.info/ https://github.com/libusb/libusb" -SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.bz2" +SRC_URI=" + https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.bz2 + verify-sig? ( https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.bz2.asc ) +" LICENSE="LGPL-2.1" SLOT="1" @@ -21,7 +25,10 @@ DEPEND=" ${RDEPEND} !udev? ( virtual/os-headers ) " -BDEPEND="doc? ( app-text/doxygen )" +BDEPEND=" + doc? ( app-text/doxygen ) + verify-sig? ( sec-keys/openpgp-keys-libusb ) +" src_prepare() { default From 15e0eacb0a169a2826cd1c6066caa4a9debf737d Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:27 +0000 Subject: [PATCH 072/291] dev-libs/libxslt: Sync with Gentoo It's from Gentoo commit 911ddc8b0164274b61fba811070edea3758c5e4b. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-libs/libxslt/libxslt-1.1.45.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libxslt/libxslt-1.1.45.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libxslt/libxslt-1.1.45.ebuild index a03e63c187a..c4b51788b67 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libxslt/libxslt-1.1.45.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libxslt/libxslt-1.1.45.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -15,7 +15,7 @@ if [[ ${PV} == 9999 ]] ; then inherit autotools git-r3 else inherit libtool gnome.org - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" fi LICENSE="MIT" From b7bc6927409bdb430520c657f803a809380cc932 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:29 +0000 Subject: [PATCH 073/291] dev-libs/mpc: Sync with Gentoo It's from Gentoo commit fb707288d6414f38b5ae1eda1bfc059890b561d6. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-libs/mpc/Manifest | 1 + .../portage-stable/dev-libs/mpc/mpc-1.3.1.ebuild | 13 ++++++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/mpc/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/mpc/Manifest index 0b2e2d8ce90..c9f2a693738 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/mpc/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/mpc/Manifest @@ -1 +1,2 @@ DIST mpc-1.3.1.tar.gz 773573 BLAKE2B 76434e6f8830af3571836d51576bfebbc9701e9bbb5c4686f134081cd96cd90ae02f7ff42bf9e3957c7a7ba92b6b2d9cdabe18f0269271147521cd7f6a2d551c SHA512 4bab4ef6076f8c5dfdc99d810b51108ced61ea2942ba0c1c932d624360a5473df20d32b300fc76f2ba4aa2a97e1f275c9fd494a1ba9f07c4cb2ad7ceaeb1ae97 +DIST mpc-1.3.1.tar.gz.sig 119 BLAKE2B ec48cf3a37c3b4a923b354d5e321d73561361586dd6dee2ccfaf7e05021ec43dd34e6045dec475a47fae36cf5b36d9b3901ba677cb1bfc9016c3f28392c46099 SHA512 5c2e6cccf9c5e6a401095e4abf4c4c8eb44ae4cd81debaa94da817f68f7ef39a732e969d5c264912b0a44fd2a0575e2f903d71def38cb95fa073851e3a537e5c diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/mpc/mpc-1.3.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/mpc/mpc-1.3.1.ebuild index 05bd1660274..c1a56414074 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/mpc/mpc-1.3.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/mpc/mpc-1.3.1.ebuild @@ -1,9 +1,10 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit multilib-minimal +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/mpc.asc +inherit multilib-minimal verify-sig DESCRIPTION="A library for multiprecision complex arithmetic with exact rounding" HOMEPAGE="https://www.multiprecision.org/mpc/ https://gitlab.inria.fr/mpc/mpc" @@ -12,7 +13,10 @@ if [[ ${PV} == *_rc* ]] ; then SRC_URI="https://www.multiprecision.org/downloads/${P/_}.tar.gz" S="${WORKDIR}"/${PN}-$(ver_cut 1-3) else - SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" + SRC_URI=" + mirror://gnu/${PN}/${P}.tar.gz + verify-sig? ( mirror://gnu/${PN}/${P}.tar.gz.sig ) + " KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" fi @@ -26,6 +30,9 @@ DEPEND=" >=dev-libs/mpfr-4.1.0:=[${MULTILIB_USEDEP},static-libs?] " RDEPEND="${DEPEND}" +BDEPEND=" + verify-sig? ( sec-keys/openpgp-keys-mpc ) +" multilib_src_configure() { ECONF_SOURCE="${S}" econf $(use_enable static-libs static) From f2fc0aa07516d3742d6eedf2e43514d4048068f6 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:30 +0000 Subject: [PATCH 074/291] dev-libs/nettle: Sync with Gentoo It's from Gentoo commit f8cc8883444a686cf0bd5e1f88af9c7d99bb967b. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-libs/nettle/Manifest | 2 - .../dev-libs/nettle/nettle-3.10.1.ebuild | 101 ------------------ 2 files changed, 103 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/nettle/nettle-3.10.1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/nettle/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/nettle/Manifest index d41c8f14f5b..30eaf20f4e2 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/nettle/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/nettle/Manifest @@ -1,4 +1,2 @@ -DIST nettle-3.10.1.tar.gz 2643267 BLAKE2B da2e82e647904e855a0e0bd1efee3b610b33de1a722f5d652deeca083d1983c5ee66754233a0917d3bb91bb5a527a3e80cd5fe18f7c25986076b2388910995b5 SHA512 e8673bbcde9cde859ccae75ed6c9c30591e68a995a7c6d724106cfd67a5a5bd45b3468d742443b6565628849d0fd29505a28ca5ee4e89dd13197cdb51429f96c -DIST nettle-3.10.1.tar.gz.sig 374 BLAKE2B 1264636002893e80e3001035ce2f17a3e0077405b74050752f1901abc44c882d2be643823d3476282a8dc78bfe3f19cda75d86e00f58dbb546e4347c59cc0963 SHA512 d074a921df31070a6e6562a9f7e213e67b8e6ce331e2683e8180f387aca92058a5fe8610800817a0aa5098b47176dfcb42b52d617648c84cc6262a09ef557eb8 DIST nettle-3.10.2.tar.gz 2644644 BLAKE2B 2bcd54c97d793238a9c6527f0ba4851dd9e5b53c80abc1ed012ef53e9dbed1fc47c474ca7c29a2c0a989830e45f85eb61db4752dd8b8487cffc8559f43788c89 SHA512 bf37ddd7dca8e78488da2a5286dcf16761d527d620572b42f2ad27bb8ee8c12999d92b0272e06f53766e7155a3f4a1ab7ad9c4b1c3caec47c031878b6b1772fb DIST nettle-3.10.2.tar.gz.sig 374 BLAKE2B 4060a6c7910c69be185191443c400135882171cc6679f2f9fcc9efd8e8d5ab8bca967085352f14096416479d190d1d27a1343d72e0436344574a88158d825d7d SHA512 82d82ba83b65b191d0ad9af24603df8dbc1b4172118618be66c267e51bad470d902e7194de1948e3570f144e0021afb7ddfb81badbe71fd57999d3d3227f0d39 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/nettle/nettle-3.10.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/nettle/nettle-3.10.1.ebuild deleted file mode 100644 index 5a65c3c361f..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/nettle/nettle-3.10.1.ebuild +++ /dev/null @@ -1,101 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/nettle.asc -inherit multilib-build multilib-minimal toolchain-funcs verify-sig flag-o-matic - -DESCRIPTION="Low-level cryptographic library" -HOMEPAGE="https://www.lysator.liu.se/~nisse/nettle/ https://git.lysator.liu.se/nettle/nettle" -SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" -SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.gz.sig )" - -LICENSE="|| ( GPL-2+ LGPL-3+ )" -# Subslot = libnettle - libhogweed soname version -SLOT="0/8-6" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" -IUSE="+asm doc +gmp static-libs cpu_flags_arm_neon cpu_flags_arm_aes cpu_flags_arm_sha1 cpu_flags_arm_sha2 cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 cpu_flags_ppc_vsx3 cpu_flags_x86_aes cpu_flags_x86_sha cpu_flags_x86_pclmul" -# The arm64 crypto option controls AES, SHA1, and SHA2 usage. -REQUIRED_USE=" - cpu_flags_arm_aes? ( cpu_flags_arm_sha1 cpu_flags_arm_sha2 ) - cpu_flags_arm_sha1? ( cpu_flags_arm_aes cpu_flags_arm_sha2 ) - cpu_flags_arm_sha2? ( cpu_flags_arm_aes cpu_flags_arm_sha1 ) -" - -DEPEND="gmp? ( >=dev-libs/gmp-6.1:=[static-libs?,${MULTILIB_USEDEP}] )" -RDEPEND="${DEPEND}" -BDEPEND=" - sys-devel/m4 - doc? ( sys-apps/texinfo ) - verify-sig? ( sec-keys/openpgp-keys-nettle ) -" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/nettle/version.h -) - -DOCS=() -HTML_DOCS=() - -src_prepare() { - default - - # I do not see in config.sub reference to sunldsolaris. - # if someone complains readd - # -e 's/solaris\*)/sunldsolaris*)/' \ - sed -e '/CFLAGS=/s: -ggdb3::' \ - -i configure.ac configure || die - - if use doc ; then - DOCS+=( nettle.pdf ) - HTML_DOCS+=( nettle.html ) - fi -} - -multilib_src_configure() { - # We don't want to run Valgrind within ebuilds, it often gets - # confused by sandbox, etc. - export nettle_cv_prog_valgrind=no - - use elibc_musl && append-cppflags -D__GNU_LIBRARY__ #945970 - - # TODO: USE=debug w/ --enable-extra-asserts? - local myeconfargs=( - CC_FOR_BUILD="$(tc-getBUILD_CC)" - - $(tc-is-static-only && echo --disable-shared) - - # Intrinsics - $(use_enable cpu_flags_arm_neon arm-neon) - $(use_enable cpu_flags_arm_aes arm64-crypto) - $(use_enable cpu_flags_ppc_altivec power-altivec) - $(use_enable cpu_flags_ppc_vsx2 power-crypto-ext) - $(use_enable cpu_flags_ppc_vsx3 power9) - $(use_enable cpu_flags_x86_aes x86-aesni) - $(use_enable cpu_flags_x86_sha x86-sha-ni) - $(use_enable cpu_flags_x86_pclmul x86-pclmul) - $([[ ${CHOST} == *-solaris* ]] && echo '--disable-symbol-versions') - # TODO: cpu_flags_s390? - --disable-s390x-vf - --disable-s390x-msa - - $(use_enable asm assembler) - $(multilib_native_use_enable doc documentation) - $(use_enable gmp public-key) - $(use_enable static-libs static) - --disable-fat - - # openssl is just used for benchmarks (bug #427526) - --disable-openssl - ) - - # https://git.lysator.liu.se/nettle/nettle/-/issues/7 - if use cpu_flags_ppc_altivec && ! tc-cpp-is-true "defined(__VSX__) && __VSX__ == 1" ${CPPFLAGS} ${CFLAGS} ; then - ewarn "cpu_flags_ppc_altivec is enabled, but nettle's asm requires >=P7." - ewarn "Disabling, sorry! See bug #920234." - myeconfargs+=( --disable-power-altivec ) - fi - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} From 66fa3ba81a76159da8a31c1d153be48a3560d607 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:31 +0000 Subject: [PATCH 075/291] dev-libs/nspr: Sync with Gentoo It's from Gentoo commit 6d1e7c4b64b5f2dad745d87fcb45f957cbe39cce. Signed-off-by: Flatcar Buildbot --- .../dev-libs/nspr/nspr-4.38.2.ebuild | 24 ++++--------------- 1 file changed, 4 insertions(+), 20 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/nspr/nspr-4.38.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/nspr/nspr-4.38.2.ebuild index a50b8c57707..03eea63a237 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/nspr/nspr-4.38.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/nspr/nspr-4.38.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -96,25 +96,9 @@ multilib_src_configure() { # that trigger some code conditional to platform & arch. This really # matters for the few common arches (x86, ppc) but we pass a little # more of them to be future-proof. - - # use ABI first, this will work for most cases - case "${ABI}" in - alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86) ;; - n32) myconf+=( --enable-n32 );; - x32) myconf+=( --enable-x32 );; - s390x|*64) myconf+=( --enable-64bit );; - default) # no abi actually set, fall back to old check - einfo "Running a short build test to determine 64bit'ness" - # TODO: Port this to toolchain-funcs tc-get-ptr-size/tc-get-build-ptr-size - echo > "${T}"/test.c || die - ${CC} ${CFLAGS} ${CPPFLAGS} -fno-lto -c "${T}"/test.c -o "${T}"/test.o || die - case $(file -S "${T}"/test.o) in - *32-bit*x86-64*) myconf+=( --enable-x32 );; - *64-bit*|*ppc64*|*x86_64*) myconf+=( --enable-64bit );; - *32-bit*|*ppc*|*i386*) ;; - *) die "Failed to detect whether your arch is 64bits or 32bits, disable distcc if you're using it, please";; - esac ;; - *) ;; + case $(tc-get-ptr-size) in + 4) use abi_x86_x32 && myconf+=( --enable-x32 );; + 8) myconf+=( --enable-64bit );; esac # Ancient autoconf needs help finding the right tools. From 70655e827c9894dea5559b28fb9ff15072c88c2c Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:32 +0000 Subject: [PATCH 076/291] dev-libs/openssl: Sync with Gentoo It's from Gentoo commit a2a8c4d5e3dbfa27c94f5ef9de5649f14e34f9fc. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-libs/openssl/Manifest | 15 - .../openssl/files/gentoo.config-1.0.2 | 180 ----------- .../openssl-1.1.0j-parallel_install_fix.patch | 21 -- .../files/openssl-1.1.1i-riscv32.patch | 61 ---- .../files/openssl-3.5.5-ppc64-be.patch | 45 +++ .../openssl/files/openssl-3.5.5-ppc64.patch | 45 +++ .../dev-libs/openssl/metadata.xml | 4 - .../dev-libs/openssl/openssl-1.0.2u-r1.ebuild | 303 ------------------ .../dev-libs/openssl/openssl-1.1.1w.ebuild | 268 ---------------- .../dev-libs/openssl/openssl-3.0.18.ebuild | 289 ----------------- .../dev-libs/openssl/openssl-3.0.19.ebuild | 2 +- .../dev-libs/openssl/openssl-3.2.6.ebuild | 297 ----------------- .../dev-libs/openssl/openssl-3.2.9999.ebuild | 296 ----------------- .../dev-libs/openssl/openssl-3.4.3.ebuild | 297 ----------------- ...l-3.5.4.ebuild => openssl-3.5.5-r1.ebuild} | 81 +++-- ...l-3.3.5.ebuild => openssl-3.5.5-r2.ebuild} | 94 ++++-- .../dev-libs/openssl/openssl-3.5.9999.ebuild | 77 +++-- ...l-3.6.1.ebuild => openssl-3.6.1-r1.ebuild} | 77 +++-- .../dev-libs/openssl/openssl-3.6.9999.ebuild | 77 +++-- 19 files changed, 392 insertions(+), 2137 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/gentoo.config-1.0.2 delete mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-1.1.0j-parallel_install_fix.patch delete mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-1.1.1i-riscv32.patch create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.5.5-ppc64-be.patch create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.5.5-ppc64.patch delete mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-1.0.2u-r1.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-1.1.1w.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.18.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.2.6.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.2.9999.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.4.3.ebuild rename sdk_container/src/third_party/portage-stable/dev-libs/openssl/{openssl-3.5.4.ebuild => openssl-3.5.5-r1.ebuild} (84%) rename sdk_container/src/third_party/portage-stable/dev-libs/openssl/{openssl-3.3.5.ebuild => openssl-3.5.5-r2.ebuild} (81%) rename sdk_container/src/third_party/portage-stable/dev-libs/openssl/{openssl-3.6.1.ebuild => openssl-3.6.1-r1.ebuild} (86%) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/Manifest index cf4aa2fa2ec..abfc5962eec 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/Manifest @@ -1,24 +1,9 @@ -DIST openssl-1.0.2-patches-1.5.tar.xz 12404 BLAKE2B 6c1b8c28f339f539b2ab8643379502a24cf62bffde00041dce54d5dd9e8d2620b181362ee5464b0ab32ba4948e209697bfabadbea2944a409a1009100d298f24 SHA512 5725e2d9d1ee8cc074bcef3bed61c71bdab2ff1c114362110c3fb8da11ad5bc8f2ff28e90a293f5f3a5cf96ecda54dffdb7ab3fb3f8b23ef6472250dc3037659 -DIST openssl-1.0.2t-bindist-1.0.tar.xz 13872 BLAKE2B b2aade96a6e0ca6209a39e205b1c838de945903fcf959c62cc29ddcd1a0cb360fc5db234df86860a6a4c096f5ecc237611e4c2946b986a5500c24ba93c208ef4 SHA512 a48a7efb9b973b865bcc5009d450b428ed6b4b95e4cefe70c51056e47392c8a7bec58215168d8b07712419dc74646c2bd2fd23bcfbba2031376e292249a6b1b6 -DIST openssl-1.0.2u.tar.gz 5355412 BLAKE2B b2ff2a10e5851af5aca4093422a9a072c794e87b997263826c1c35910c040f695fac63decac5856cb49399ed03d410f97701d9fd4e1ebfbcacd8f3a74ce8bf57 SHA512 c455bb309e20e2c2d47fdc5619c734d107d5c8c38c1409903ce979acc120b0d5fa0312917c0aa0d630e402d092a703d4249643f36078e8528a3cafc9dac6ab32 -DIST openssl-1.1.1w.tar.gz 9893384 BLAKE2B 2fdba6ca0188928ab2f74e606136afca66cfa0467170fa6298ef160b64ac6fdcad1e81e5dd14013ce0e9921d0f7417edec531cd0beaf1196fec704c2c6d48395 SHA512 b4c625fe56a4e690b57b6a011a225ad0cb3af54bd8fb67af77b5eceac55cc7191291d96a660c5b568a08a2fbf62b4612818e7cca1bb95b2b6b4fc649b0552b6d -DIST openssl-1.1.1w.tar.gz.asc 833 BLAKE2B d990be69ed913509d52b78e7473668429d4485adb29ef03e4612dd0cadbac4f04c7289d8e5baf6f397bcedeaac9f802f18fc719964d882ae0514ed1ca16ae277 SHA512 0f3d7aa48b1cabf8dd43e8108aeed10a4dffb4f5a244d4da9c86ea358b0c8b90c46da561d21e01c567c2f5035d824ed82ec104aad1776b7f33a1be85990e98ef -DIST openssl-3.0.18.tar.gz 15348046 BLAKE2B 2cb9cefecab790f6e857a63e2ade93e1b28fdfab7110e4ed6049c36c7cc2131e88454cb49e70e0802adf6f9317b3f21e950446a9152b58074f9ffb787732716a SHA512 6bdd16f33b83ae2a12777230c4ff00d0595bbc00253ac8c3ac31e1375e818fc74d7f491bd2e507ff33cab9f0498cfb28fa8690f75a98663568d40901523cdf3c -DIST openssl-3.0.18.tar.gz.asc 833 BLAKE2B bfa698106e314bf8800c5bdf9ec892611a91a2bcb006b7e5f52afc5d0af64be65bf8512e042b37d36db041964aa83c17f4b1ee2f22dcb127d4e4665d3b6c9440 SHA512 cd4cd8afab68cbe0a5b034039112901cf8a25711c55556681f86b04e47389bcffae85a98f155a517156dd9fb29ceb82f627e371881feb928e887053f145bddfd DIST openssl-3.0.19.tar.gz 15280904 BLAKE2B 0d21fd9037b87c5d22c75e2201208394fa7d6a37ed7a44cc6ae760ab95ff6743a00d26b90141871ba5bd76a56500142df33d04219379e51b6f74e411e9d2b3af SHA512 6e602ac7217e1b4423793ee5c4c10745f70fcde3f9820d6c894ebeedb4f29566e2d0c3c590ae210484dcea4eb53db5bb8dbbfee14bbaca3e147406b1343c3cd7 DIST openssl-3.0.19.tar.gz.asc 833 BLAKE2B f5ed372d80afc3fde1c4298166fabb512bb0f350725497d98a83575b98b049dd8ec3dc169043b11f9135702d37d762bb24afd98eab75d5a42b6554bec2064c8f SHA512 3ae5adb82d071658c3a839d7713c7d4fd09b13dc36860327d0347ca94cb0c712081f03d3e8251af2297b7d1792345a078e18ffa8b92e5f90fe6d5370152813e8 -DIST openssl-3.2.6.tar.gz 17805999 BLAKE2B 3c1410d8f8aea119828259cd88d6e8336d20b5176a4b0e1907c79d76fef5954f658bb5c7fd2b20985ed7ee5930842a39c6b1a9aa1a0944c00ead0f81f2c3603d SHA512 a183b9ecfcf75f1dbc7911d726adb26f9da83e307b593dbbd7ded5f46170b63bac44e403cef53d16daf2d8dc116f8c2eb820c9de50d073c75681ef8e5de01c05 -DIST openssl-3.2.6.tar.gz.asc 833 BLAKE2B 9f332db499dea93760e1d2f881115cd5c8574141e42b86429d2b009ac6f698ef7341f1a5ff407803506c06fd59e3fe243387befb2ee68584ce88893364c09a17 SHA512 2bfbe94619349fa7af86109a7ad84588a033e690a45d5500e3f1332891e5cb39f18ee631a307b6c8aa5724f2c684b90f276d071a91556f01312bed83d7b30aa3 -DIST openssl-3.3.5.tar.gz 18125182 BLAKE2B 377a9a2cbc1f97fb34f1f314789354e047e1bc875eddc4e2aa50578009a3352e196ea33b0d6f57ede199b16d4b0e6096782a0d70ea1a4d923d5543b1caf6ca02 SHA512 4fe2d51afefd21af4e50225bde6dfd2c12eb00ce2a144ee1aadba48463604cd180135b5f71fcea3908977b043ffceb7d2824fa30b969a017df016dccd8519aad -DIST openssl-3.3.5.tar.gz.asc 833 BLAKE2B 7a6e93e68981436932bf3e019e9021863dfafd2699065959086ac1b1f2bda278b94965f5027794ee565e2a80d8c4c0b796b6e17063eccd38e5ec723cfb2411ba SHA512 b79526a5cf0326b63828d534a3ddd2cb5699a226a485345017c9a1ef34fe7610a62a2b6b90d171da8b4660a9937cdf7688c08b93d6e05629a8648627a928676c DIST openssl-3.3.6.tar.gz 18035615 BLAKE2B 3cc0b33885449192863edc4600d144a98903d2c323f4a6f11e2aba8e6dfa5fa45a9d025d5de60c0511972cb42de9ef7fc81073d8abc5d1d2886b660089b9aaf5 SHA512 3c0840420f30f74404446a9d9fe9ee48222e867190ddc9e51e1c0f1f45c3c0caad6cb41068f65adc2be2aa5e0b8447c42ee821dd28e2ec60140cf004dc3493c1 DIST openssl-3.3.6.tar.gz.asc 833 BLAKE2B 93ea9f040912defd9a228309ce110b1dc535e219223afb0299eacbabb17c333bc282a7656bd870f3d01aa69856c409908d3d0610e541a56d919b1f204bd0b571 SHA512 90f7a392b1348f74e3617212fbad8974d92b8d48832a8d5c338ad792ae25a067ae102475ba935cd41d1a5d89e80458a5f05ef921e942279149d8534bf9ac01e6 -DIST openssl-3.4.3.tar.gz 18369414 BLAKE2B e74392b93696d4967d8ec1d0edc2f2d559e56cf6cb28207708d5288a3df2854b37e21b33c9a816829d4215a7575285dd91b65770d0333e966fcc800837bfe3d5 SHA512 84d73d8ee1032b911bd60c8c0c69cca14e37c80c57735789f23d49b968388c641a75add3b347b222228cbb629f0c10c17a2f6c139547bdd261f4bab4a78eb94c -DIST openssl-3.4.3.tar.gz.asc 833 BLAKE2B 52c5c0753230812ce251b274e2e934e9746c51e11aeed73046a5408356d620a32d5703bffe3c0d8933ebc03c659b80d8b1d7d6a77d4876620d0fea3aa54b27ed SHA512 510fbbb693549b0aad3004739f001f8569ca17a859848b48a58afac3f1bd2f92aa2bac649a492fa32bad4e5d5c14f4a6e341253bc6cc9536428307be71daf516 DIST openssl-3.4.4.tar.gz 18278255 BLAKE2B 022d97f839120bdb21a8fa011b42cd1e0f732253f4b7e02172a8cfb5f6a60c855500ce542d49e256ff3cb6428a929487e921ee4834f74dd57d10165ec44924ab SHA512 2f75b045f0dddd2421ecd7b1817a4e5a7608293e797135eb945573d1115b2d89f0fd3706ee5e02c7de2e50b3bfc59ac73014e2cb6270ff6b9e1515691347dbb2 DIST openssl-3.4.4.tar.gz.asc 833 BLAKE2B c8c4e9338e5e6f4630701e894e551bd0606401462762755832e607d3145688624b61beba0c6128f6fbc632d50b8eac13da7c4530300e5579527ad4523251f521 SHA512 a599e8d77426de126a6358d159b46ab9d301962016fa85219f0294e6eb667733436ceeccb0de6017adb71c1b9cd52a496882919e9edd65e749a8ae95d5143cb4 -DIST openssl-3.5.4.tar.gz 53190367 BLAKE2B 07e02f88af05e189385eef28599b81bd16d242130975c79df46e565a0dd92f74e59807d4770a2b3316adf08f2ca6a0dd2bfc96ab2a88a8dfb5c0d19197fe8fbf SHA512 365aca6f2e59b5c8261fba683425d177874cf6024b0d216ca309112b879c1f4e8da78617e23c3c95d0b4a26b83ecd0d8348038b999d30e597d19f466c4761227 -DIST openssl-3.5.4.tar.gz.asc 833 BLAKE2B 837dfd4778073dbecdf5859dfe11b81dcecd9796a13c06c36c6dadfed04f9cee158759d96116ae8d0985ba29bcaefad874824b8f633f13c252b79a9e28fa7303 SHA512 7bf10c965e5f376979c8cd0a24560ba9d0169ee41d43c54f78642d50d9a27bf111c5553b1ee4c6c1b459b00d465681dea8ba983d0a0396ecc52b9e561769ffe5 DIST openssl-3.5.5.tar.gz 53104821 BLAKE2B 5fe5f7e768ade2dcffdd90841875de3e3a463aac979d57462fa5c69ec5e7288063dfc35cd6b049db007cff9135089fa05956f715476e12efc58a7d6969f6d29a SHA512 7cf0eb91bac175f7fe0adcafef457790d43fe7f98e2d4bef681c2fd5ca365e1fa5b562c645a60ab602365adedf9d91c074624eea66d3d7e155639fc50d5861ec DIST openssl-3.5.5.tar.gz.asc 833 BLAKE2B 122e9abcadb8559ef42dda7cc985c1457852243f8e8fb12e9a1d3b824853a56f311726252c6b1cfde47c3d5500bf36c18d8f7f19c42582c8f40d974dac22011f SHA512 82645f4fb427467b1e52f096ef6c6ccbdaa5aefcd28c8d3149a92f7c7711d0936e1e097f4168db6196809c19f83c1b85068d327cc1f0c5ad9f33d9d3686003d7 DIST openssl-3.6.0.tar.gz 54974351 BLAKE2B 4a0150aa9a78581e74119b338848458249630c94a43589a5b311d41c669b817b043007ddd13b3fb81233da10af3ccd455f3fbf3b09cf45016c475a8e2044e965 SHA512 866825a1cdf0b705b409402fbc7a713e7d9b8e7736c5126be57b354927954c148a341fc52b02c0629c1e015a889bfd40217f8e703b73235892e91da060909b76 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/gentoo.config-1.0.2 b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/gentoo.config-1.0.2 deleted file mode 100644 index 66a8b368170..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/gentoo.config-1.0.2 +++ /dev/null @@ -1,180 +0,0 @@ -#!/usr/bin/env bash -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 -# -# Openssl doesn't play along nicely with cross-compiling -# like autotools based projects, so let's teach it new tricks. -# -# Review the bundled 'config' script to see why kind of targets -# we can pass to the 'Configure' script. - - -# Testing routines -if [[ $1 == "test" ]] ; then - for c in \ - "arm-gentoo-linux-uclibc |linux-generic32 -DL_ENDIAN" \ - "armv5b-linux-gnu |linux-armv4 -DB_ENDIAN" \ - "x86_64-pc-linux-gnu |linux-x86_64" \ - "alpha-linux-gnu |linux-alpha-gcc" \ - "alphaev56-unknown-linux-gnu |linux-alpha+bwx-gcc" \ - "i686-pc-linux-gnu |linux-elf" \ - "whatever-gentoo-freebsdX.Y |BSD-generic32" \ - "i686-gentoo-freebsdX.Y |BSD-x86-elf" \ - "sparc64-alpha-freebsdX.Y |BSD-sparc64" \ - "ia64-gentoo-freebsd5.99234 |BSD-ia64" \ - "x86_64-gentoo-freebsdX.Y |BSD-x86_64" \ - "hppa64-aldsF-linux-gnu5.3 |linux-generic32 -DB_ENDIAN" \ - "powerpc-gentOO-linux-uclibc |linux-ppc" \ - "powerpc64-unk-linux-gnu |linux-ppc64" \ - "powerpc64le-linux-gnu |linux-ppc64le" \ - "x86_64-apple-darwinX |darwin64-x86_64-cc" \ - "powerpc64-apple-darwinX |darwin64-ppc-cc" \ - "i686-apple-darwinX |darwin-i386-cc" \ - "i386-apple-darwinX |darwin-i386-cc" \ - "powerpc-apple-darwinX |darwin-ppc-cc" \ - "i586-pc-winnt |winnt-parity" \ - "s390-ibm-linux-gnu |linux-generic32 -DB_ENDIAN" \ - "s390x-linux-gnu |linux64-s390x" \ - ;do - CHOST=${c/|*} - ret_want=${c/*|} - ret_got=$(CHOST=${CHOST} "$0") - - if [[ ${ret_want} == "${ret_got}" ]] ; then - echo "PASS: ${CHOST}" - else - echo "FAIL: ${CHOST}" - echo -e "\twanted: ${ret_want}" - echo -e "\twe got: ${ret_got}" - fi - done - exit 0 -fi -[[ -z ${CHOST} && -n $1 ]] && CHOST=$1 - - -# Detect the operating system -case ${CHOST} in - *-aix*) system="aix";; - *-darwin*) system="darwin";; - *-freebsd*) system="BSD";; - *-hpux*) system="hpux";; - *-linux*) system="linux";; - *-solaris*) system="solaris";; - *-winnt*) system="winnt";; - x86_64-*-mingw*) system="mingw64";; - *mingw*) system="mingw";; - *-gnu*) system="hurd";; - *) exit 0;; -esac - - -# Compiler munging -compiler="gcc" -if [[ ${CC} == "ccc" ]] ; then - compiler=${CC} -fi - - -# Detect target arch -machine="" -chost_machine=${CHOST%%-*} -case ${system} in -linux) - case ${chost_machine}:${ABI} in - aarch64*be*) machine="aarch64 -DB_ENDIAN";; - aarch64*) machine="aarch64 -DL_ENDIAN";; - alphaev56*|\ - alphaev[678]*)machine=alpha+bwx-${compiler};; - alpha*) machine=alpha-${compiler};; - armv[4-9]*b*) machine="armv4 -DB_ENDIAN";; - armv[4-9]*) machine="armv4 -DL_ENDIAN";; - arm*b*) machine="generic32 -DB_ENDIAN";; - arm*) machine="generic32 -DL_ENDIAN";; - avr*) machine="generic32 -DL_ENDIAN";; - bfin*) machine="generic32 -DL_ENDIAN";; - # hppa64*) machine=parisc64;; - hppa*) machine="generic32 -DB_ENDIAN";; - i[0-9]86*|\ - x86_64*:x86) machine=elf;; - ia64*) machine=ia64;; - loongarch64*) machine="generic64 -DL_ENDIAN";; - m68*) machine="generic32 -DB_ENDIAN";; - mips*el*) machine="generic32 -DL_ENDIAN";; - mips*) machine="generic32 -DB_ENDIAN";; - powerpc64*le*)machine=ppc64le;; - powerpc64*) machine=ppc64;; - powerpc*le*) machine="generic32 -DL_ENDIAN";; - powerpc*) machine=ppc;; - riscv32*) machine="generic32 -DL_ENDIAN";; - riscv64*) machine="generic64 -DL_ENDIAN";; - # sh64*) machine=elf;; - sh*b*) machine="generic32 -DB_ENDIAN";; - sh*) machine="generic32 -DL_ENDIAN";; - # TODO: Might want to do -mcpu probing like glibc to determine a - # better default for sparc-linux-gnu targets. This logic will - # break v7 and older systems when they use it. - sparc*v7*) machine="generic32 -DB_ENDIAN";; - sparc64*) machine=sparcv9 system=linux64;; - sparc*v9*) machine=sparcv9;; - sparc*v8*) machine=sparcv8;; - sparc*) machine=sparcv8;; - s390x*) machine=s390x system=linux64;; - s390*) machine="generic32 -DB_ENDIAN";; - x86_64*:x32) machine=x32;; - x86_64*) machine=x86_64;; - esac - ;; -BSD) - case ${chost_machine} in - alpha*) machine=generic64;; - i[6-9]86*) machine=x86-elf;; - ia64*) machine=ia64;; - sparc64*) machine=sparc64;; - x86_64*) machine=x86_64;; - *) machine=generic32;; - esac - ;; -aix) - machine=${compiler} - ;; -darwin) - case ${chost_machine} in - powerpc64) machine=ppc-cc; system=${system}64;; - powerpc) machine=ppc-cc;; - i?86*) machine=i386-cc;; - x86_64) machine=x86_64-cc; system=${system}64;; - esac - ;; -hpux) - case ${chost_machine} in - ia64) machine=ia64-${compiler} ;; - esac - ;; -solaris) - case ${chost_machine} in - i386) machine=x86-${compiler} ;; - x86_64*) machine=x86_64-${compiler}; system=${system}64;; - sparcv9*) machine=sparcv9-${compiler}; system=${system}64;; - sparc*) machine=sparcv8-${compiler};; - esac - ;; -winnt) - machine=parity - ;; -mingw*) - # special case ... no xxx-yyy style name - echo ${system} - ;; -hurd) - case ${chost_machine} in - i[0-9]86*) machine=x86;; - x86_64*) machine=x86_64;; - *) machine=generic32;; - esac - ;; -esac - - -# If we have something, show it -[[ -n ${machine} ]] && echo ${system}-${machine} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-1.1.0j-parallel_install_fix.patch b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-1.1.0j-parallel_install_fix.patch deleted file mode 100644 index c837e208cf6..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-1.1.0j-parallel_install_fix.patch +++ /dev/null @@ -1,21 +0,0 @@ -https://github.com/openssl/openssl/issues/7679 - ---- a/Configurations/unix-Makefile.tmpl -+++ b/Configurations/unix-Makefile.tmpl -@@ -77,8 +77,14 @@ - # to. You're welcome. - sub dependmagic { - my $target = shift; -- -- return "$target: build_generated\n\t\$(MAKE) depend && \$(MAKE) _$target\n_$target"; -+ my $magic = <<"_____"; -+$target: build_generated depend -+ \$(MAKE) _$target -+_$target -+_____ -+ # Remove line ending -+ $magic =~ s|\R$||; -+ return $magic; - } - ''; - -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-1.1.1i-riscv32.patch b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-1.1.1i-riscv32.patch deleted file mode 100644 index c94b0323eb4..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-1.1.1i-riscv32.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 5b5e2985f355c8e99c196d9ce5d02c15bebadfbc Mon Sep 17 00:00:00 2001 -From: Alistair Francis -Date: Thu, 29 Aug 2019 13:56:21 -0700 -Subject: [PATCH] Add support for io_pgetevents_time64 syscall - -32-bit architectures that are y2038 safe don't include syscalls that use -32-bit time_t. Instead these architectures have suffixed syscalls that -always use a 64-bit time_t. In the case of the io_getevents syscall the -syscall has been replaced with the io_pgetevents_time64 syscall instead. - -This patch changes the io_getevents() function to use the correct -syscall based on the avaliable syscalls and the time_t size. We will -only use the new 64-bit time_t syscall if the architecture is using a -64-bit time_t. This is to avoid having to deal with 32/64-bit -conversions and relying on a 64-bit timespec struct on 32-bit time_t -platforms. As of Linux 5.3 there are no 32-bit time_t architectures -without __NR_io_getevents. In the future if a 32-bit time_t architecture -wants to use the 64-bit syscalls we can handle the conversion. - -This fixes build failures on 32-bit RISC-V. - -Signed-off-by: Alistair Francis - -Reviewed-by: Richard Levitte -Reviewed-by: Paul Dale -(Merged from https://github.com/openssl/openssl/pull/9819) ---- - engines/e_afalg.c | 16 ++++++++++++++++ - 1 file changed, 16 insertions(+) - -diff --git a/engines/e_afalg.c b/engines/e_afalg.c -index dacbe358cb..99516cb1bb 100644 ---- a/engines/e_afalg.c -+++ b/engines/e_afalg.c -@@ -125,7 +125,23 @@ static ossl_inline int io_getevents(aio_context_t ctx, long min, long max, - struct io_event *events, - struct timespec *timeout) - { -+#if defined(__NR_io_getevents) - return syscall(__NR_io_getevents, ctx, min, max, events, timeout); -+#elif defined(__NR_io_pgetevents_time64) -+ /* Let's only support the 64 suffix syscalls for 64-bit time_t. -+ * This simplifies the code for us as we don't need to use a 64-bit -+ * version of timespec with a 32-bit time_t and handle converting -+ * between 64-bit and 32-bit times and check for overflows. -+ */ -+ if (sizeof(timeout->tv_sec) == 8) -+ return syscall(__NR_io_pgetevents_time64, ctx, min, max, events, timeout, NULL); -+ else { -+ errno = ENOSYS; -+ return -1; -+ } -+#else -+# error "We require either the io_getevents syscall or __NR_io_pgetevents_time64." -+#endif - } - - static void afalg_waitfd_cleanup(ASYNC_WAIT_CTX *ctx, const void *key, --- -2.26.2 - diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.5.5-ppc64-be.patch b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.5.5-ppc64-be.patch new file mode 100644 index 00000000000..fa28166a460 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.5.5-ppc64-be.patch @@ -0,0 +1,45 @@ +https://github.com/openssl/openssl/issues/29845 +https://github.com/openssl/openssl/commit/b02b04fbad809c82efbf1e3274e6a22caf997b8d + +From b02b04fbad809c82efbf1e3274e6a22caf997b8d Mon Sep 17 00:00:00 2001 +From: Neil Horman +Date: Mon, 9 Feb 2026 12:55:50 -0500 +Subject: [PATCH] don't use asm accelerated path on big endian power9 + +https://github.com/openssl/openssl/issues/29845 + +Found that our hardware accelerated path doesn't work on big endian +systems, so make sure that we only use it when little endian is defined + +We also noted that PPC_AES_GCM_CAPABLE gets defined to zero when the +capabilities register notes that the hardware isn't capable of the +needed instructions, but that still includes the asm path as +PPC_AES_GCM_CAPABLE is still defined. + +Fix both issues + +Fixes #29845 + +Reviewed-by: Tomas Mraz +Reviewed-by: Tom Cosgrove +MergeDate: Tue Feb 17 14:11:46 2026 +(Merged from https://github.com/openssl/openssl/pull/29968) +--- + include/crypto/aes_platform.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/include/crypto/aes_platform.h b/include/crypto/aes_platform.h +index 496b08f46d5ce..95d13d22e191b 100644 +--- a/include/crypto/aes_platform.h ++++ b/include/crypto/aes_platform.h +@@ -77,7 +77,9 @@ void AES_xts_decrypt(const unsigned char *inp, unsigned char *out, size_t len, + #define HWAES_xts_decrypt aes_p8_xts_decrypt + #endif /* OPENSSL_SYS_MACOSX */ + #if !defined(OPENSSL_SYS_AIX) && !defined(OPENSSL_SYS_MACOSX) ++#if defined(__BYTE_ORDER__) && __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ + #define PPC_AES_GCM_CAPABLE (OPENSSL_ppccap_P & PPC_MADD300) ++#endif + #define AES_GCM_ENC_BYTES 128 + #define AES_GCM_DEC_BYTES 128 + size_t ppc_aes_gcm_encrypt(const unsigned char *in, unsigned char *out, + diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.5.5-ppc64.patch b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.5.5-ppc64.patch new file mode 100644 index 00000000000..2d4e7a13341 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.5.5-ppc64.patch @@ -0,0 +1,45 @@ +https://bugs.gentoo.org/969389 +https://github.com/openssl/openssl/issues/29815 +--- a/crypto/modes/asm/aes-gcm-ppc.pl ++++ b/crypto/modes/asm/aes-gcm-ppc.pl +@@ -409,7 +409,6 @@ + ################################################################################ + .align 4 + aes_gcm_crypt_1x: +-.localentry aes_gcm_crypt_1x,0 + + cmpdi 5, 16 + bge __More_1x +@@ -492,7 +491,6 @@ + ################################################################################ + .align 4 + __Process_partial: +-.localentry __Process_partial,0 + + # create partial mask + vspltisb 16, -1 +@@ -564,7 +562,6 @@ + .global ppc_aes_gcm_encrypt + .align 5 + ppc_aes_gcm_encrypt: +-.localentry ppc_aes_gcm_encrypt,0 + + SAVE_REGS + LOAD_HASH_TABLE +@@ -752,7 +749,6 @@ + .global ppc_aes_gcm_decrypt + .align 5 + ppc_aes_gcm_decrypt: +-.localentry ppc_aes_gcm_decrypt, 0 + + SAVE_REGS + LOAD_HASH_TABLE +@@ -1032,7 +1028,6 @@ + .size ppc_aes_gcm_decrypt,.-ppc_aes_gcm_decrypt + + aes_gcm_out: +-.localentry aes_gcm_out,0 + + mr 3, 11 # return count + + diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/metadata.xml index a00bd02d7b0..638a3475a9b 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/metadata.xml @@ -6,15 +6,11 @@ Gentoo Base System - Disable/Restrict EC algorithms (as they seem to be patented) -- note: changes the ABI Enable FIPS provider Enable support for Kernel implementation of TLS (kTLS) Enable support for QUIC (RFC 9000); a UDP-based protocol intended to replace TCP Enable support for RFC 3779 (X.509 Extensions for IP Addresses and AS Identifiers) - Support for the old/insecure SSLv2 protocol -- note: not required for TLS/https - Support for the old/insecure SSLv3 protocol -- note: not required for TLS/https Enable support for discouraged TLS compression - Enable the Heartbeat Extension in TLS and DTLS Build support for SSL/TLS ciphers that are considered "weak" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-1.0.2u-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-1.0.2u-r1.ebuild deleted file mode 100644 index d0c876578de..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-1.0.2u-r1.ebuild +++ /dev/null @@ -1,303 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -inherit flag-o-matic toolchain-funcs multilib-minimal - -# openssl-1.0.2-patches-1.6 contain additional CVE patches -# which got fixed with this release. -# Please use 1.7 version number when rolling a new tarball! -PATCH_SET="openssl-1.0.2-patches-1.5" - -MY_P=${P/_/-} - -# This patch set is based on the following files from Fedora 25, -# see https://src.fedoraproject.org/rpms/openssl/blob/25/f/openssl.spec -# for more details: -# - hobble-openssl (SOURCE1) -# - ec_curve.c (SOURCE12) -- MODIFIED -# - ectest.c (SOURCE13) -# - openssl-1.1.1-ec-curves.patch (PATCH37) -- MODIFIED -BINDIST_PATCH_SET="openssl-1.0.2t-bindist-1.0.tar.xz" - -DESCRIPTION="full-strength general purpose cryptography library (including SSL and TLS)" -HOMEPAGE="https://openssl-library.org/" -SRC_URI="mirror://openssl/source/${MY_P}.tar.gz - bindist? ( - mirror://gentoo/bb/${BINDIST_PATCH_SET} - ) - !vanilla? ( - https://dev.gentoo.org/~chutzpah/dist/${PN}/${PATCH_SET}.tar.xz - )" - -LICENSE="openssl" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos" -IUSE="+asm bindist gmp kerberos rfc3779 sctp cpu_flags_x86_sse2 sslv2 +sslv3 static-libs test tls-compression +tls-heartbeat vanilla" -RESTRICT="!bindist? ( bindist ) - !test? ( test )" - -RDEPEND=">=app-misc/c_rehash-1.7-r1 - gmp? ( >=dev-libs/gmp-5.1.3-r1[static-libs(+)?,${MULTILIB_USEDEP}] ) - kerberos? ( >=app-crypt/mit-krb5-1.11.4[${MULTILIB_USEDEP}] ) - tls-compression? ( >=virtual/zlib-1.2.8-r1:=[static-libs(+)?,${MULTILIB_USEDEP}] )" -DEPEND="${RDEPEND}" -BDEPEND=" - >=dev-lang/perl-5 - sctp? ( >=net-misc/lksctp-tools-1.0.12 ) - test? ( - sys-apps/diffutils - app-alternatives/bc - )" -PDEPEND="app-misc/ca-certificates" - -S="${WORKDIR}/${MY_P}" - -MULTILIB_WRAPPED_HEADERS=( - usr/include/openssl/opensslconf.h -) - -src_prepare() { - if use bindist; then - mv "${WORKDIR}"/bindist-patches/hobble-openssl "${WORKDIR}" || die - bash "${WORKDIR}"/hobble-openssl || die - - cp -f "${WORKDIR}"/bindist-patches/ec_curve.c "${S}"/crypto/ec/ || die - cp -f "${WORKDIR}"/bindist-patches/ectest.c "${S}"/crypto/ec/ || die - - eapply "${WORKDIR}"/bindist-patches/ec-curves.patch - - # Also see the configure parts below: - # enable-ec \ - # $(use_ssl !bindist ec2m) \ - # $(use_ssl !bindist srp) \ - fi - - # keep this in sync with app-misc/c_rehash - SSL_CNF_DIR="/etc/ssl" - - # Make sure we only ever touch Makefile.org and avoid patching a file - # that gets blown away anyways by the Configure script in src_configure - rm -f Makefile - - if ! use vanilla ; then - eapply "${WORKDIR}"/patch/*.patch - fi - - eapply_user - - # disable fips in the build - # make sure the man pages are suffixed #302165 - # don't bother building man pages if they're disabled - sed -i \ - -e '/DIRS/s: fips : :g' \ - -e '/^MANSUFFIX/s:=.*:=ssl:' \ - -e '/^MAKEDEPPROG/s:=.*:=$(CC):' \ - -e $(has noman FEATURES \ - && echo '/^install:/s:install_docs::' \ - || echo '/^MANDIR=/s:=.*:='${EPREFIX}'/usr/share/man:') \ - Makefile.org \ - || die - # show the actual commands in the log - sed -i '/^SET_X/s:=.*:=set -x:' Makefile.shared - - # since we're forcing $(CC) as makedep anyway, just fix - # the conditional as always-on - # helps clang (#417795), and versioned gcc (#499818) - # this breaks build with 1.0.2p, not sure if it is needed anymore - #sed -i 's/expr.*MAKEDEPEND.*;/true;/' util/domd || die - - # quiet out unknown driver argument warnings since openssl - # doesn't have well-split CFLAGS and we're making it even worse - # and 'make depend' uses -Werror for added fun (#417795 again) - [[ ${CC} == *clang* ]] && append-flags -Qunused-arguments - - # allow openssl to be cross-compiled - cp "${FILESDIR}"/gentoo.config-1.0.2 gentoo.config || die - chmod a+rx gentoo.config || die - - append-flags -fno-strict-aliasing - append-flags $(test-flags-CC -Wa,--noexecstack) - append-cppflags -DOPENSSL_NO_BUF_FREELISTS - - sed -i '1s,^:$,#!'${EPREFIX}'/usr/bin/perl,' Configure #141906 - # The config script does stupid stuff to prompt the user. Kill it. - sed -i '/stty -icanon min 0 time 50; read waste/d' config || die - ./config --test-sanity || die "I AM NOT SANE" - - multilib_copy_sources -} - -multilib_src_configure() { - unset APPS #197996 - unset SCRIPTS #312551 - unset CROSS_COMPILE #311473 - - tc-export CC AR RANLIB RC - - # Clean out patent-or-otherwise-encumbered code - # Camellia: Royalty Free https://en.wikipedia.org/wiki/Camellia_(cipher) - # IDEA: Expired https://en.wikipedia.org/wiki/International_Data_Encryption_Algorithm - # EC: ????????? ??/??/2015 https://en.wikipedia.org/wiki/Elliptic_Curve_Cryptography - # MDC2: Expired https://en.wikipedia.org/wiki/MDC-2 - # RC5: Expired https://en.wikipedia.org/wiki/RC5 - - use_ssl() { usex $1 "enable-${2:-$1}" "no-${2:-$1}" " ${*:3}" ; } - echoit() { echo "$@" ; "$@" ; } - - local krb5=$(has_version app-crypt/mit-krb5 && echo "MIT" || echo "Heimdal") - - # See if our toolchain supports __uint128_t. If so, it's 64bit - # friendly and can use the nicely optimized code paths, bug #460790. - #local ec_nistp_64_gcc_128 - # - # Disable it for now though (bug #469976) - # Do NOT re-enable without substantial discussion first! - # - #echo "__uint128_t i;" > "${T}"/128.c - #if ${CC} ${CFLAGS} -c "${T}"/128.c -o /dev/null >&/dev/null ; then - # ec_nistp_64_gcc_128="enable-ec_nistp_64_gcc_128" - #fi - - local sslout=$(./gentoo.config) - einfo "Use configuration ${sslout:-(openssl knows best)}" - local config="Configure" - [[ -z ${sslout} ]] && config="config" - - # Fedora hobbled-EC needs 'no-ec2m', 'no-srp' - # Make sure user flags don't get added *yet* to avoid duplicated - # flags. - CFLAGS= LDFLAGS= echoit \ - ./${config} \ - ${sslout} \ - $(use cpu_flags_x86_sse2 || echo "no-sse2") \ - enable-camellia \ - enable-ec \ - $(use_ssl !bindist ec2m) \ - $(use_ssl !bindist srp) \ - ${ec_nistp_64_gcc_128} \ - enable-idea \ - enable-mdc2 \ - enable-rc5 \ - enable-tlsext \ - $(use_ssl asm) \ - $(use_ssl gmp gmp -lgmp) \ - $(use_ssl kerberos krb5 --with-krb5-flavor=${krb5}) \ - $(use_ssl rfc3779) \ - $(use_ssl sctp) \ - $(use_ssl sslv2 ssl2) \ - $(use_ssl sslv3 ssl3) \ - $(use_ssl tls-compression zlib) \ - $(use_ssl tls-heartbeat heartbeats) \ - --prefix="${EPREFIX}"/usr \ - --openssldir="${EPREFIX}"${SSL_CNF_DIR} \ - --libdir=$(get_libdir) \ - shared threads \ - || die - - # Clean out hardcoded flags that openssl uses - local DEFAULT_CFLAGS=$(grep ^CFLAG= Makefile | LC_ALL=C sed \ - -e 's:^CFLAG=::' \ - -e 's:\(^\| \)-fomit-frame-pointer::g' \ - -e 's:\(^\| \)-O[^ ]*::g' \ - -e 's:\(^\| \)-march=[^ ]*::g' \ - -e 's:\(^\| \)-mcpu=[^ ]*::g' \ - -e 's:\(^\| \)-m[^ ]*::g' \ - -e 's:^ *::' \ - -e 's: *$::' \ - -e 's: \+: :g' \ - -e 's:\\:\\\\:g' - ) - - # Now insert clean default flags with user flags - sed -i \ - -e "/^CFLAG/s|=.*|=${DEFAULT_CFLAGS} ${CFLAGS}|" \ - -e "/^LDFLAGS=/s|=[[:space:]]*$|=${LDFLAGS}|" \ - Makefile || die -} - -multilib_src_compile() { - # depend is needed to use $confopts; it also doesn't matter - # that it's -j1 as the code itself serializes subdirs - emake -j1 V=1 depend - emake all - # rehash is needed to prep the certs/ dir; do this - # separately to avoid parallel build issues. - emake rehash -} - -multilib_src_test() { - emake -j1 test -} - -multilib_src_install() { - # We need to create $ED/usr on our own to avoid a race condition #665130 - if [[ ! -d "${ED}/usr" ]]; then - # We can only create this directory once - mkdir "${ED}"/usr || die - fi - - # Only -j1 is supported for the install targets: - # https://github.com/openssl/openssl/issues/21999#issuecomment-1771150305 - emake INSTALL_PREFIX="${D}" -j1 install - - # This is crappy in that the static archives are still built even - # when USE=static-libs. But this is due to a failing in the openssl - # build system: the static archives are built as PIC all the time. - # Only way around this would be to manually configure+compile openssl - # twice; once with shared lib support enabled and once without. - if ! use static-libs; then - rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die - fi -} - -multilib_src_install_all() { - # openssl installs perl version of c_rehash by default, but - # we provide a shell version via app-misc/c_rehash - rm "${ED}"/usr/bin/c_rehash || die - - local -a DOCS=( CHANGES* FAQ NEWS README doc/*.txt doc/c-indentation.el ) - einstalldocs - - use rfc3779 && dodoc engines/ccgost/README.gost - - # create the certs directory - dodir ${SSL_CNF_DIR}/certs - cp -RP certs/* "${ED}"${SSL_CNF_DIR}/certs/ || die - rm -r "${ED}"${SSL_CNF_DIR}/certs/{demo,expired} - - # Namespace openssl programs to prevent conflicts with other man pages - cd "${ED}"/usr/share/man - local m d s - for m in $(find . -type f | xargs grep -L '#include') ; do - d=${m%/*} ; d=${d#./} ; m=${m##*/} - [[ ${m} == openssl.1* ]] && continue - [[ -n $(find -L ${d} -type l) ]] && die "erp, broken links already!" - mv ${d}/{,ssl-}${m} - # fix up references to renamed man pages - sed -i '/^[.]SH "SEE ALSO"/,/^[.]/s:\([^(, ]*(1)\):ssl-\1:g' ${d}/ssl-${m} - ln -s ssl-${m} ${d}/openssl-${m} - # locate any symlinks that point to this man page ... we assume - # that any broken links are due to the above renaming - for s in $(find -L ${d} -type l) ; do - s=${s##*/} - rm -f ${d}/${s} - ln -s ssl-${m} ${d}/ssl-${s} - ln -s ssl-${s} ${d}/openssl-${s} - done - done - [[ -n $(find -L ${d} -type l) ]] && die "broken manpage links found :(" - - dodir /etc/sandbox.d #254521 - echo 'SANDBOX_PREDICT="/dev/crypto"' > "${ED}"/etc/sandbox.d/10openssl - - diropts -m0700 - keepdir ${SSL_CNF_DIR}/private -} - -pkg_postinst() { - ebegin "Running 'c_rehash ${EROOT}${SSL_CNF_DIR}/certs/' to rebuild hashes #333069" - c_rehash "${EROOT}${SSL_CNF_DIR}/certs" >/dev/null - eend $? -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-1.1.1w.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-1.1.1w.ebuild deleted file mode 100644 index c8826028e09..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-1.1.1w.ebuild +++ /dev/null @@ -1,268 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openssl.org.asc -inherit edo flag-o-matic toolchain-funcs multilib-minimal verify-sig - -MY_P=${P/_/-} -DESCRIPTION="Full-strength general purpose cryptography library (including SSL and TLS)" -HOMEPAGE="https://openssl-library.org/" -SRC_URI="mirror://openssl/source/${MY_P}.tar.gz - verify-sig? ( mirror://openssl/source/${MY_P}.tar.gz.asc )" -S="${WORKDIR}/${MY_P}" - -LICENSE="openssl" -SLOT="0/1.1" # .so version of libssl/libcrypto -if [[ ${PV} != *_pre* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" -fi -IUSE="+asm rfc3779 sctp cpu_flags_x86_sse2 sslv3 static-libs test tls-compression tls-heartbeat vanilla verify-sig weak-ssl-ciphers" -RESTRICT="!test? ( test )" - -RDEPEND=" - tls-compression? ( >=virtual/zlib-1.2.8-r1:=[static-libs(+)?,${MULTILIB_USEDEP}] )" -DEPEND="${RDEPEND}" -BDEPEND=" - >=dev-lang/perl-5 - sctp? ( >=net-misc/lksctp-tools-1.0.12 ) - test? ( - sys-apps/diffutils - app-alternatives/bc - kernel_linux? ( sys-process/procps ) - ) - verify-sig? ( /dev/null) - if [[ -z "${sctp_auth_status}" ]] || [[ ${sctp_auth_status} != 1 ]]; then - die "FEATURES=test with USE=sctp requires net.sctp.auth_enable=1!" - fi - fi -} - -src_unpack() { - # Can delete this once test fix patch is dropped - if use verify-sig ; then - # Needed for downloaded patch (which is unsigned, which is fine) - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.gz{,.asc} - fi - - default -} - -src_prepare() { - # Make sure we only ever touch Makefile.org and avoid patching a file - # that gets blown away anyways by the Configure script in src_configure - rm -f Makefile - - if ! use vanilla ; then - PATCHES+=( - # Add patches which are Gentoo-specific customisations here - ) - fi - - default - - if use test && use sctp && has network-sandbox ${FEATURES}; then - einfo "Disabling test '80-test_ssl_new.t' which is known to fail with FEATURES=network-sandbox ..." - rm test/recipes/80-test_ssl_new.t || die - fi - - # Test fails depending on kernel configuration, bug #699134 - rm test/recipes/30-test_afalg.t || die - - # Remove test target when FEATURES=test isn't set - if ! use test ; then - sed \ - -e '/^$config{dirs}/s@ "test",@@' \ - -i Configure || die - fi - - if use prefix && [[ ${CHOST} == *-solaris* ]] ; then - # use GNU ld full option, not to confuse it on Solaris - sed -i \ - -e 's/-Wl,-M,/-Wl,--version-script=/' \ - -e 's/-Wl,-h,/-Wl,--soname=/' \ - Configurations/10-main.conf || die - fi - - # The config script does stupid stuff to prompt the user. Kill it. - sed -i '/stty -icanon min 0 time 50; read waste/d' config || die -} - -src_configure() { - # Keep this in sync with app-misc/c_rehash - SSL_CNF_DIR="/etc/ssl" - - # Quiet out unknown driver argument warnings since openssl - # doesn't have well-split CFLAGS and we're making it even worse - # and 'make depend' uses -Werror for added fun (bug #417795 again) - tc-is-clang && append-flags -Qunused-arguments - - # We really, really need to build OpenSSL w/ strict aliasing disabled. - # It's filled with violations and it *will* result in miscompiled - # code. This has been in the ebuild for > 10 years but even in 2022, - # it's still relevant: - # - https://github.com/llvm/llvm-project/issues/55255 - # - https://github.com/openssl/openssl/issues/12247 - # - https://github.com/openssl/openssl/issues/18225 - # - https://github.com/openssl/openssl/issues/18663#issuecomment-1181478057 - # Don't remove the no strict aliasing bits below! - filter-flags -fstrict-aliasing - append-flags -fno-strict-aliasing - # The OpenSSL developers don't test with LTO right now, it leads to various - # warnings/errors (which may or may not be false positives), it's considered - # unsupported, and it's not tested in CI: https://github.com/openssl/openssl/issues/18663. - filter-lto - - append-cppflags -DOPENSSL_NO_BUF_FREELISTS - - append-flags $(test-flags-CC -Wa,--noexecstack) - - # bug #197996 - unset APPS - # bug #312551 - unset SCRIPTS - # bug #311473 - unset CROSS_COMPILE - - tc-export AR CC CXX RANLIB RC - - multilib-minimal_src_configure -} - -multilib_src_configure() { - use_ssl() { usex $1 "enable-${2:-$1}" "no-${2:-$1}" " ${*:3}" ; } - - local krb5=$(has_version app-crypt/mit-krb5 && echo "MIT" || echo "Heimdal") - - # See if our toolchain supports __uint128_t. If so, it's 64bit - # friendly and can use the nicely optimized code paths, bug #460790. - #local ec_nistp_64_gcc_128 - # - # Disable it for now though (bug #469976) - # Do NOT re-enable without substantial discussion first! - # - #echo "__uint128_t i;" > "${T}"/128.c - #if ${CC} ${CFLAGS} -c "${T}"/128.c -o /dev/null >&/dev/null ; then - # ec_nistp_64_gcc_128="enable-ec_nistp_64_gcc_128" - #fi - - local sslout=$(bash "${FILESDIR}/gentoo.config-1.0.4") - einfo "Use configuration ${sslout:-(openssl knows best)}" - local config=( perl "${S}/Configure" ) - [[ -z ${sslout} ]] && config=( sh "${S}/config" -v ) - - # "disable-deprecated" option breaks too many consumers. - # Don't set it without thorough revdeps testing. - # Make sure user flags don't get added *yet* to avoid duplicated - # flags. - local myeconfargs=( - ${sslout} - - $(use cpu_flags_x86_sse2 || echo "no-sse2") - enable-camellia - enable-ec - enable-ec2m - enable-sm2 - enable-srp - $(use elibc_musl && echo "no-async") - ${ec_nistp_64_gcc_128} - enable-idea - enable-mdc2 - enable-rc5 - $(use_ssl sslv3 ssl3) - $(use_ssl sslv3 ssl3-method) - $(use_ssl asm) - $(use_ssl rfc3779) - $(use_ssl sctp) - $(use test || echo "no-tests") - $(use_ssl tls-compression zlib) - $(use_ssl tls-heartbeat heartbeats) - $(use_ssl weak-ssl-ciphers) - - --prefix="${EPREFIX}"/usr - --openssldir="${EPREFIX}"${SSL_CNF_DIR} - --libdir=$(get_libdir) - - shared - threads - ) - - edo "${config[@]}" "${myeconfargs[@]}" -} - -multilib_src_compile() { - emake all -} - -multilib_src_test() { - emake -j1 test -} - -multilib_src_install() { - # Only -j1 is supported for the install targets: - # https://github.com/openssl/openssl/issues/21999#issuecomment-1771150305 - emake DESTDIR="${D}" -j1 install_sw - - if multilib_is_native_abi; then - emake DESTDIR="${D}" -j1 install_ssldirs - emake DESTDIR="${D}" DOCDIR='$(INSTALLTOP)'/share/doc/${PF} MANSUFFIX=ssl -j1 install_docs - fi - - # This is crappy in that the static archives are still built even - # when USE=static-libs. But this is due to a failing in the openssl - # build system: the static archives are built as PIC all the time. - # Only way around this would be to manually configure+compile openssl - # twice; once with shared lib support enabled and once without. - if ! use static-libs; then - rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die - fi -} - -multilib_src_install_all() { - # openssl installs perl version of c_rehash by default, but - # we provide a shell version via app-misc/c_rehash - rm "${ED}"/usr/bin/c_rehash || die - - dodoc CHANGES* FAQ NEWS README doc/*.txt doc/${PN}-c-indent.el - - # Create the certs directory - keepdir ${SSL_CNF_DIR}/certs - - # bug #254521 - dodir /etc/sandbox.d - echo 'SANDBOX_PREDICT="/dev/crypto"' > "${ED}"/etc/sandbox.d/10openssl - - diropts -m0700 - keepdir ${SSL_CNF_DIR}/private -} - -pkg_postinst() { - ebegin "Running 'openssl rehash ${EROOT}${SSL_CNF_DIR}/certs' to rebuild hashes (bug #333069)" - openssl rehash "${EROOT}${SSL_CNF_DIR}/certs" - eend $? -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.18.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.18.ebuild deleted file mode 100644 index 3395bae6620..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.18.ebuild +++ /dev/null @@ -1,289 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openssl.org.asc -inherit edo flag-o-matic linux-info toolchain-funcs -inherit multilib multilib-minimal multiprocessing preserve-libs - -DESCRIPTION="Robust, full-featured Open Source Toolkit for the Transport Layer Security (TLS)" -HOMEPAGE="https://openssl-library.org/" - -MY_P=${P/_/-} - -if [[ ${PV} == *9999 ]] ; then - [[ ${PV} == *.*.9999 ]] && EGIT_BRANCH="openssl-${PV%%.9999}" - EGIT_REPO_URI="https://github.com/openssl/openssl.git" - - inherit git-r3 -else - inherit verify-sig - SRC_URI=" - https://github.com/openssl/openssl/releases/download/${P}/${P}.tar.gz - verify-sig? ( - https://github.com/openssl/openssl/releases/download/${P}/${P}.tar.gz.asc - ) - " - - if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" - fi - - BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-openssl-20240920 )" -fi - -S="${WORKDIR}"/${MY_P} - -LICENSE="Apache-2.0" -SLOT="0/3" # .so version of libssl/libcrypto -IUSE="+asm cpu_flags_x86_sse2 fips ktls rfc3779 sctp static-libs test tls-compression vanilla weak-ssl-ciphers" -RESTRICT="!test? ( test )" - -COMMON_DEPEND=" - tls-compression? ( >=virtual/zlib-1.2.8-r1:=[static-libs(+)?,${MULTILIB_USEDEP}] ) -" -BDEPEND+=" - >=dev-lang/perl-5 - sctp? ( >=net-misc/lksctp-tools-1.0.12 ) - test? ( - sys-apps/diffutils - app-alternatives/bc - sys-process/procps - ) -" -DEPEND="${COMMON_DEPEND}" -RDEPEND="${COMMON_DEPEND}" -PDEPEND="app-misc/ca-certificates" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/openssl/configuration.h -) - -pkg_setup() { - if use ktls ; then - if kernel_is -lt 4 18 ; then - ewarn "Kernel implementation of TLS (USE=ktls) requires kernel >=4.18!" - else - CONFIG_CHECK="~TLS ~TLS_DEVICE" - ERROR_TLS="You will be unable to offload TLS to kernel because CONFIG_TLS is not set!" - ERROR_TLS_DEVICE="You will be unable to offload TLS to kernel because CONFIG_TLS_DEVICE is not set!" - use test && CONFIG_CHECK+=" ~CRYPTO_USER_API_SKCIPHER" - - linux-info_pkg_setup - fi - fi - - [[ ${MERGE_TYPE} == binary ]] && return - - # must check in pkg_setup; sysctl doesn't work with userpriv! - if use test && use sctp ; then - # test_ssl_new will fail with "Ensure SCTP AUTH chunks are enabled in kernel" - # if sctp.auth_enable is not enabled. - local sctp_auth_status=$(sysctl -n net.sctp.auth_enable 2>/dev/null) - if [[ -z "${sctp_auth_status}" ]] || [[ ${sctp_auth_status} != 1 ]] ; then - die "FEATURES=test with USE=sctp requires net.sctp.auth_enable=1!" - fi - fi -} - -src_prepare() { - # Make sure we only ever touch Makefile.org and avoid patching a file - # that gets blown away anyways by the Configure script in src_configure - rm -f Makefile || die - - if ! use vanilla ; then - PATCHES+=( - # Add patches which are Gentoo-specific customisations here - ) - fi - - default - - if use test && use sctp && has network-sandbox ${FEATURES} ; then - einfo "Disabling test '80-test_ssl_new.t' which is known to fail with FEATURES=network-sandbox ..." - rm test/recipes/80-test_ssl_new.t || die - fi - - # Test fails depending on kernel configuration, bug #699134 - rm test/recipes/30-test_afalg.t || die -} - -src_configure() { - # Keep this in sync with app-misc/c_rehash - SSL_CNF_DIR="/etc/ssl" - - # Quiet out unknown driver argument warnings since openssl - # doesn't have well-split CFLAGS and we're making it even worse - # and 'make depend' uses -Werror for added fun (bug #417795 again) - tc-is-clang && append-flags -Qunused-arguments - - # We really, really need to build OpenSSL w/ strict aliasing disabled. - # It's filled with violations and it *will* result in miscompiled - # code. This has been in the ebuild for > 10 years but even in 2022, - # it's still relevant: - # - https://github.com/llvm/llvm-project/issues/55255 - # - https://github.com/openssl/openssl/issues/12247 - # - https://github.com/openssl/openssl/issues/18225 - # - https://github.com/openssl/openssl/issues/18663#issuecomment-1181478057 - # Don't remove the no strict aliasing bits below! - filter-flags -fstrict-aliasing - append-flags -fno-strict-aliasing - # The OpenSSL developers don't test with LTO right now, it leads to various - # warnings/errors (which may or may not be false positives), it's considered - # unsupported, and it's not tested in CI: https://github.com/openssl/openssl/issues/18663. - filter-lto - - append-flags $(test-flags-CC -Wa,--noexecstack) - - # bug #895308 - append-atomic-flags - # Configure doesn't respect LIBS - export LDLIBS="${LIBS}" - - # bug #197996 - unset APPS - # bug #312551 - unset SCRIPTS - # bug #311473 - unset CROSS_COMPILE - - tc-export AR CC CXX RANLIB RC - - multilib-minimal_src_configure -} - -multilib_src_configure() { - use_ssl() { usex $1 "enable-${2:-$1}" "no-${2:-$1}" " ${*:3}" ; } - - local krb5=$(has_version app-crypt/mit-krb5 && echo "MIT" || echo "Heimdal") - - # See if our toolchain supports __uint128_t. If so, it's 64bit - # friendly and can use the nicely optimized code paths, bug #460790. - #local ec_nistp_64_gcc_128 - # - # Disable it for now though (bug #469976) - # Do NOT re-enable without substantial discussion first! - # - #echo "__uint128_t i;" > "${T}"/128.c - #if ${CC} ${CFLAGS} -c "${T}"/128.c -o /dev/null >&/dev/null ; then - # ec_nistp_64_gcc_128="enable-ec_nistp_64_gcc_128" - #fi - - local sslout=$(bash "${FILESDIR}/gentoo.config-1.0.4") - einfo "Using configuration: ${sslout:-(openssl knows best)}" - - # https://github.com/openssl/openssl/blob/master/INSTALL.md#enable-and-disable-features - local myeconfargs=( - ${sslout} - - $(use cpu_flags_x86_sse2 || echo "no-sse2") - enable-camellia - enable-ec - enable-ec2m - enable-sm2 - enable-srp - $(use elibc_musl && echo "no-async") - enable-idea - enable-mdc2 - enable-rc5 - $(use fips && echo "enable-fips") - $(use_ssl asm) - $(use_ssl ktls) - $(use_ssl rfc3779) - $(use_ssl sctp) - $(use test || echo "no-tests") - $(use_ssl tls-compression zlib) - $(use_ssl weak-ssl-ciphers) - - --prefix="${EPREFIX}"/usr - --openssldir="${EPREFIX}"${SSL_CNF_DIR} - --libdir=$(get_libdir) - - shared - threads - ) - - edo perl "${S}/Configure" "${myeconfargs[@]}" -} - -multilib_src_compile() { - emake build_sw - - if multilib_is_native_abi; then - emake build_docs - fi -} - -multilib_src_test() { - # VFP = show subtests verbosely and show failed tests verbosely - # Normal V=1 would show everything verbosely but this slows things down. - emake HARNESS_JOBS="$(makeopts_jobs)" -Onone VFP=1 test -} - -multilib_src_install() { - # Only -j1 is supported for the install targets: - # https://github.com/openssl/openssl/issues/21999#issuecomment-1771150305 - emake DESTDIR="${D}" -j1 install_sw - if use fips; then - emake DESTDIR="${D}" -j1 install_fips - # Regen this in pkg_preinst, bug 900625 - rm "${ED}${SSL_CNF_DIR}"/fipsmodule.cnf || die - fi - - if multilib_is_native_abi; then - emake DESTDIR="${D}" -j1 install_ssldirs - emake DESTDIR="${D}" DOCDIR='$(INSTALLTOP)'/share/doc/${PF} -j1 install_docs - fi - - # This is crappy in that the static archives are still built even - # when USE=static-libs. But this is due to a failing in the openssl - # build system: the static archives are built as PIC all the time. - # Only way around this would be to manually configure+compile openssl - # twice; once with shared lib support enabled and once without. - if ! use static-libs ; then - rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die - fi -} - -multilib_src_install_all() { - # openssl installs perl version of c_rehash by default, but - # we provide a shell version via app-misc/c_rehash - rm "${ED}"/usr/bin/c_rehash || die - - dodoc {AUTHORS,CHANGES,NEWS,README,README-PROVIDERS}.md doc/*.txt doc/${PN}-c-indent.el - - # Create the certs directory - keepdir ${SSL_CNF_DIR}/certs - - # bug #254521 - dodir /etc/sandbox.d - echo 'SANDBOX_PREDICT="/dev/crypto"' > "${ED}"/etc/sandbox.d/10openssl - - diropts -m0700 - keepdir ${SSL_CNF_DIR}/private -} - -pkg_preinst() { - if use fips; then - # Regen fipsmodule.cnf, bug 900625 - ebegin "Running openssl fipsinstall" - LD_LIBRARY_PATH="${ED}/usr/$(get_libdir)" \ - "${ED}/usr/bin/openssl" fipsinstall -quiet \ - -out "${ED}${SSL_CNF_DIR}/fipsmodule.cnf" \ - -module "${ED}/usr/$(get_libdir)/ossl-modules/fips.so" - eend $? - fi - - preserve_old_lib /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1) \ - /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1.1) -} - -pkg_postinst() { - ebegin "Running 'openssl rehash ${EROOT}${SSL_CNF_DIR}/certs' to rebuild hashes (bug #333069)" - openssl rehash "${EROOT}${SSL_CNF_DIR}/certs" - eend $? - - preserve_old_lib_notify /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1) \ - /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1.1) -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.19.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.19.ebuild index 18d9d7eda54..5a790b1794a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.19.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.19.ebuild @@ -27,7 +27,7 @@ else " if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" fi BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-openssl-20240920 )" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.2.6.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.2.6.ebuild deleted file mode 100644 index 3036c7f3992..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.2.6.ebuild +++ /dev/null @@ -1,297 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openssl.org.asc -inherit edo flag-o-matic linux-info toolchain-funcs -inherit multilib multilib-minimal multiprocessing preserve-libs verify-sig - -DESCRIPTION="Robust, full-featured Open Source Toolkit for the Transport Layer Security (TLS)" -HOMEPAGE="https://openssl-library.org/" - -MY_P=${P/_/-} - -if [[ ${PV} == *9999 ]] ; then - [[ ${PV} == *.*.9999 ]] && EGIT_BRANCH="openssl-${PV%%.9999}" - EGIT_REPO_URI="https://github.com/openssl/openssl.git" - - inherit git-r3 -else - inherit verify-sig - SRC_URI=" - https://github.com/openssl/openssl/releases/download/${P}/${P}.tar.gz - verify-sig? ( - https://github.com/openssl/openssl/releases/download/${P}/${P}.tar.gz.asc - ) - " - - if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" - fi - - BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-openssl-20240920 )" -fi - -S="${WORKDIR}"/${MY_P} - -LICENSE="Apache-2.0" -SLOT="0/$(ver_cut 1)" # .so version of libssl/libcrypto -IUSE="+asm cpu_flags_x86_sse2 fips ktls rfc3779 sctp static-libs test tls-compression vanilla verify-sig weak-ssl-ciphers" -RESTRICT="!test? ( test )" - -COMMON_DEPEND=" - !=virtual/zlib-1.2.8-r1:=[static-libs(+)?,${MULTILIB_USEDEP}] ) -" -BDEPEND+=" - >=dev-lang/perl-5 - sctp? ( >=net-misc/lksctp-tools-1.0.12 ) - test? ( - sys-apps/diffutils - app-alternatives/bc - sys-process/procps - ) - verify-sig? ( >=sec-keys/openpgp-keys-openssl-20240920 ) -" -DEPEND="${COMMON_DEPEND}" -RDEPEND="${COMMON_DEPEND}" -PDEPEND="app-misc/ca-certificates" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/openssl/configuration.h -) - -pkg_setup() { - if use ktls ; then - if kernel_is -lt 4 18 ; then - ewarn "Kernel implementation of TLS (USE=ktls) requires kernel >=4.18!" - else - CONFIG_CHECK="~TLS ~TLS_DEVICE" - ERROR_TLS="You will be unable to offload TLS to kernel because CONFIG_TLS is not set!" - ERROR_TLS_DEVICE="You will be unable to offload TLS to kernel because CONFIG_TLS_DEVICE is not set!" - use test && CONFIG_CHECK+=" ~CRYPTO_USER_API_SKCIPHER" - - linux-info_pkg_setup - fi - fi - - [[ ${MERGE_TYPE} == binary ]] && return - - # must check in pkg_setup; sysctl doesn't work with userpriv! - if use test && use sctp ; then - # test_ssl_new will fail with "Ensure SCTP AUTH chunks are enabled in kernel" - # if sctp.auth_enable is not enabled. - local sctp_auth_status=$(sysctl -n net.sctp.auth_enable 2>/dev/null) - if [[ -z "${sctp_auth_status}" ]] || [[ ${sctp_auth_status} != 1 ]] ; then - die "FEATURES=test with USE=sctp requires net.sctp.auth_enable=1!" - fi - fi -} - -src_prepare() { - # Make sure we only ever touch Makefile.org and avoid patching a file - # that gets blown away anyways by the Configure script in src_configure - rm -f Makefile - - if ! use vanilla ; then - PATCHES+=( - # Add patches which are Gentoo-specific customisations here - ) - fi - - default - - if use test && use sctp && has network-sandbox ${FEATURES} ; then - einfo "Disabling test '80-test_ssl_new.t' which is known to fail with FEATURES=network-sandbox ..." - rm test/recipes/80-test_ssl_new.t || die - fi - - # Test fails depending on kernel configuration, bug #699134 - rm test/recipes/30-test_afalg.t || die -} - -src_configure() { - # Keep this in sync with app-misc/c_rehash - SSL_CNF_DIR="/etc/ssl" - - # Quiet out unknown driver argument warnings since openssl - # doesn't have well-split CFLAGS and we're making it even worse - # and 'make depend' uses -Werror for added fun (bug #417795 again) - tc-is-clang && append-flags -Qunused-arguments - - # We really, really need to build OpenSSL w/ strict aliasing disabled. - # It's filled with violations and it *will* result in miscompiled - # code. This has been in the ebuild for > 10 years but even in 2022, - # it's still relevant: - # - https://github.com/llvm/llvm-project/issues/55255 - # - https://github.com/openssl/openssl/issues/12247 - # - https://github.com/openssl/openssl/issues/18225 - # - https://github.com/openssl/openssl/issues/18663#issuecomment-1181478057 - # Don't remove the no strict aliasing bits below! - filter-flags -fstrict-aliasing - append-flags -fno-strict-aliasing - # The OpenSSL developers don't test with LTO right now, it leads to various - # warnings/errors (which may or may not be false positives), it's considered - # unsupported, and it's not tested in CI: https://github.com/openssl/openssl/issues/18663. - filter-lto - - append-flags $(test-flags-CC -Wa,--noexecstack) - - # bug #895308 -- check inserts GNU ld-compatible arguments - [[ ${CHOST} == *-darwin* ]] || append-atomic-flags - # Configure doesn't respect LIBS - export LDLIBS="${LIBS}" - - # bug #197996 - unset APPS - # bug #312551 - unset SCRIPTS - # bug #311473 - unset CROSS_COMPILE - - tc-export AR CC CXX RANLIB RC - - multilib-minimal_src_configure -} - -multilib_src_configure() { - use_ssl() { usex $1 "enable-${2:-$1}" "no-${2:-$1}" " ${*:3}" ; } - - local krb5=$(has_version app-crypt/mit-krb5 && echo "MIT" || echo "Heimdal") - - # See if our toolchain supports __uint128_t. If so, it's 64bit - # friendly and can use the nicely optimized code paths, bug #460790. - #local ec_nistp_64_gcc_128 - # - # Disable it for now though (bug #469976) - # Do NOT re-enable without substantial discussion first! - # - #echo "__uint128_t i;" > "${T}"/128.c - #if ${CC} ${CFLAGS} -c "${T}"/128.c -o /dev/null >&/dev/null ; then - # ec_nistp_64_gcc_128="enable-ec_nistp_64_gcc_128" - #fi - - local sslout=$(bash "${FILESDIR}/gentoo.config-1.0.4") - einfo "Using configuration: ${sslout:-(openssl knows best)}" - - # https://github.com/openssl/openssl/blob/master/INSTALL.md#enable-and-disable-features - local myeconfargs=( - ${sslout} - - $(use cpu_flags_x86_sse2 || echo "no-sse2") - enable-camellia - enable-ec - enable-ec2m - enable-sm2 - enable-srp - $(use elibc_musl && echo "no-async") - enable-idea - enable-mdc2 - enable-rc5 - $(use fips && echo "enable-fips") - $(use_ssl asm) - $(use_ssl ktls) - $(use_ssl rfc3779) - $(use_ssl sctp) - $(use test || echo "no-tests") - $(use_ssl tls-compression zlib) - $(use_ssl weak-ssl-ciphers) - - --prefix="${EPREFIX}"/usr - --openssldir="${EPREFIX}"${SSL_CNF_DIR} - --libdir=$(get_libdir) - - shared - threads - ) - - edo perl "${S}/Configure" "${myeconfargs[@]}" -} - -multilib_src_compile() { - emake build_sw - - if multilib_is_native_abi; then - emake build_docs - fi -} - -multilib_src_test() { - # See https://github.com/openssl/openssl/blob/master/test/README.md for options. - # - # VFP = show subtests verbosely and show failed tests verbosely - # Normal V=1 would show everything verbosely but this slows things down. - # - # -j1 here for https://github.com/openssl/openssl/issues/21999, but it - # shouldn't matter as tests were already built earlier, and HARNESS_JOBS - # controls running the tests. - emake -Onone -j1 HARNESS_JOBS="$(makeopts_jobs)" VFP=1 test -} - -multilib_src_install() { - # Only -j1 is supported for the install targets: - # https://github.com/openssl/openssl/issues/21999#issuecomment-1771150305 - emake DESTDIR="${D}" -j1 install_sw - if use fips; then - emake DESTDIR="${D}" -j1 install_fips - # Regen this in pkg_preinst, bug 900625 - rm "${ED}${SSL_CNF_DIR}"/fipsmodule.cnf || die - fi - - if multilib_is_native_abi; then - emake DESTDIR="${D}" -j1 install_ssldirs - emake DESTDIR="${D}" DOCDIR='$(INSTALLTOP)'/share/doc/${PF} -j1 install_docs - fi - - # This is crappy in that the static archives are still built even - # when USE=static-libs. But this is due to a failing in the openssl - # build system: the static archives are built as PIC all the time. - # Only way around this would be to manually configure+compile openssl - # twice; once with shared lib support enabled and once without. - if ! use static-libs ; then - rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die - fi -} - -multilib_src_install_all() { - # openssl installs perl version of c_rehash by default, but - # we provide a shell version via app-misc/c_rehash - rm "${ED}"/usr/bin/c_rehash || die - - dodoc {AUTHORS,CHANGES,NEWS,README,README-PROVIDERS}.md doc/*.txt doc/${PN}-c-indent.el - - # Create the certs directory - keepdir ${SSL_CNF_DIR}/certs - - # bug #254521 - dodir /etc/sandbox.d - echo 'SANDBOX_PREDICT="/dev/crypto"' > "${ED}"/etc/sandbox.d/10openssl - - diropts -m0700 - keepdir ${SSL_CNF_DIR}/private -} - -pkg_preinst() { - if use fips; then - # Regen fipsmodule.cnf, bug 900625 - ebegin "Running openssl fipsinstall" - LD_LIBRARY_PATH="${ED}/usr/$(get_libdir)" \ - "${ED}/usr/bin/openssl" fipsinstall -quiet \ - -out "${ED}${SSL_CNF_DIR}/fipsmodule.cnf" \ - -module "${ED}/usr/$(get_libdir)/ossl-modules/fips.so" - eend $? - fi - - preserve_old_lib /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1) \ - /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1.1) -} - -pkg_postinst() { - ebegin "Running 'openssl rehash ${EROOT}${SSL_CNF_DIR}/certs' to rebuild hashes (bug #333069)" - openssl rehash "${EROOT}${SSL_CNF_DIR}/certs" - eend $? - - preserve_old_lib_notify /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1) \ - /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1.1) -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.2.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.2.9999.ebuild deleted file mode 100644 index dfa2ed35554..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.2.9999.ebuild +++ /dev/null @@ -1,296 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openssl.org.asc -inherit edo flag-o-matic linux-info toolchain-funcs -inherit multilib multilib-minimal multiprocessing preserve-libs - -DESCRIPTION="Robust, full-featured Open Source Toolkit for the Transport Layer Security (TLS)" -HOMEPAGE="https://openssl-library.org/" - -MY_P=${P/_/-} - -if [[ ${PV} == *9999 ]] ; then - [[ ${PV} == *.*.9999 ]] && EGIT_BRANCH="openssl-${PV%%.9999}" - EGIT_REPO_URI="https://github.com/openssl/openssl.git" - - inherit git-r3 -else - inherit verify-sig - SRC_URI=" - https://github.com/openssl/openssl/releases/download/${P}/${P}.tar.gz - verify-sig? ( - https://github.com/openssl/openssl/releases/download/${P}/${P}.tar.gz.asc - ) - " - - if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" - fi - - BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-openssl-20240920 )" -fi - -S="${WORKDIR}"/${MY_P} - -LICENSE="Apache-2.0" -SLOT="0/$(ver_cut 1)" # .so version of libssl/libcrypto -IUSE="+asm cpu_flags_x86_sse2 fips ktls rfc3779 sctp static-libs test tls-compression vanilla weak-ssl-ciphers" -RESTRICT="!test? ( test )" - -COMMON_DEPEND=" - !=virtual/zlib-1.2.8-r1:=[static-libs(+)?,${MULTILIB_USEDEP}] ) -" -BDEPEND+=" - >=dev-lang/perl-5 - sctp? ( >=net-misc/lksctp-tools-1.0.12 ) - test? ( - sys-apps/diffutils - app-alternatives/bc - sys-process/procps - ) -" -DEPEND="${COMMON_DEPEND}" -RDEPEND="${COMMON_DEPEND}" -PDEPEND="app-misc/ca-certificates" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/openssl/configuration.h -) - -pkg_setup() { - if use ktls ; then - if kernel_is -lt 4 18 ; then - ewarn "Kernel implementation of TLS (USE=ktls) requires kernel >=4.18!" - else - CONFIG_CHECK="~TLS ~TLS_DEVICE" - ERROR_TLS="You will be unable to offload TLS to kernel because CONFIG_TLS is not set!" - ERROR_TLS_DEVICE="You will be unable to offload TLS to kernel because CONFIG_TLS_DEVICE is not set!" - use test && CONFIG_CHECK+=" ~CRYPTO_USER_API_SKCIPHER" - - linux-info_pkg_setup - fi - fi - - [[ ${MERGE_TYPE} == binary ]] && return - - # must check in pkg_setup; sysctl doesn't work with userpriv! - if use test && use sctp ; then - # test_ssl_new will fail with "Ensure SCTP AUTH chunks are enabled in kernel" - # if sctp.auth_enable is not enabled. - local sctp_auth_status=$(sysctl -n net.sctp.auth_enable 2>/dev/null) - if [[ -z "${sctp_auth_status}" ]] || [[ ${sctp_auth_status} != 1 ]] ; then - die "FEATURES=test with USE=sctp requires net.sctp.auth_enable=1!" - fi - fi -} - -src_prepare() { - # Make sure we only ever touch Makefile.org and avoid patching a file - # that gets blown away anyways by the Configure script in src_configure - rm -f Makefile - - if ! use vanilla ; then - PATCHES+=( - # Add patches which are Gentoo-specific customisations here - ) - fi - - default - - if use test && use sctp && has network-sandbox ${FEATURES} ; then - einfo "Disabling test '80-test_ssl_new.t' which is known to fail with FEATURES=network-sandbox ..." - rm test/recipes/80-test_ssl_new.t || die - fi - - # Test fails depending on kernel configuration, bug #699134 - rm test/recipes/30-test_afalg.t || die -} - -src_configure() { - # Keep this in sync with app-misc/c_rehash - SSL_CNF_DIR="/etc/ssl" - - # Quiet out unknown driver argument warnings since openssl - # doesn't have well-split CFLAGS and we're making it even worse - # and 'make depend' uses -Werror for added fun (bug #417795 again) - tc-is-clang && append-flags -Qunused-arguments - - # We really, really need to build OpenSSL w/ strict aliasing disabled. - # It's filled with violations and it *will* result in miscompiled - # code. This has been in the ebuild for > 10 years but even in 2022, - # it's still relevant: - # - https://github.com/llvm/llvm-project/issues/55255 - # - https://github.com/openssl/openssl/issues/12247 - # - https://github.com/openssl/openssl/issues/18225 - # - https://github.com/openssl/openssl/issues/18663#issuecomment-1181478057 - # Don't remove the no strict aliasing bits below! - filter-flags -fstrict-aliasing - append-flags -fno-strict-aliasing - # The OpenSSL developers don't test with LTO right now, it leads to various - # warnings/errors (which may or may not be false positives), it's considered - # unsupported, and it's not tested in CI: https://github.com/openssl/openssl/issues/18663. - filter-lto - - append-flags $(test-flags-CC -Wa,--noexecstack) - - # bug #895308 -- check inserts GNU ld-compatible arguments - [[ ${CHOST} == *-darwin* ]] || append-atomic-flags - # Configure doesn't respect LIBS - export LDLIBS="${LIBS}" - - # bug #197996 - unset APPS - # bug #312551 - unset SCRIPTS - # bug #311473 - unset CROSS_COMPILE - - tc-export AR CC CXX RANLIB RC - - multilib-minimal_src_configure -} - -multilib_src_configure() { - use_ssl() { usex $1 "enable-${2:-$1}" "no-${2:-$1}" " ${*:3}" ; } - - local krb5=$(has_version app-crypt/mit-krb5 && echo "MIT" || echo "Heimdal") - - # See if our toolchain supports __uint128_t. If so, it's 64bit - # friendly and can use the nicely optimized code paths, bug #460790. - #local ec_nistp_64_gcc_128 - # - # Disable it for now though (bug #469976) - # Do NOT re-enable without substantial discussion first! - # - #echo "__uint128_t i;" > "${T}"/128.c - #if ${CC} ${CFLAGS} -c "${T}"/128.c -o /dev/null >&/dev/null ; then - # ec_nistp_64_gcc_128="enable-ec_nistp_64_gcc_128" - #fi - - local sslout=$(bash "${FILESDIR}/gentoo.config-1.0.4") - einfo "Using configuration: ${sslout:-(openssl knows best)}" - - # https://github.com/openssl/openssl/blob/master/INSTALL.md#enable-and-disable-features - local myeconfargs=( - ${sslout} - - $(use cpu_flags_x86_sse2 || echo "no-sse2") - enable-camellia - enable-ec - enable-ec2m - enable-sm2 - enable-srp - $(use elibc_musl && echo "no-async") - enable-idea - enable-mdc2 - enable-rc5 - $(use fips && echo "enable-fips") - $(use_ssl asm) - $(use_ssl ktls) - $(use_ssl rfc3779) - $(use_ssl sctp) - $(use test || echo "no-tests") - $(use_ssl tls-compression zlib) - $(use_ssl weak-ssl-ciphers) - - --prefix="${EPREFIX}"/usr - --openssldir="${EPREFIX}"${SSL_CNF_DIR} - --libdir=$(get_libdir) - - shared - threads - ) - - edo perl "${S}/Configure" "${myeconfargs[@]}" -} - -multilib_src_compile() { - emake build_sw - - if multilib_is_native_abi; then - emake build_docs - fi -} - -multilib_src_test() { - # See https://github.com/openssl/openssl/blob/master/test/README.md for options. - # - # VFP = show subtests verbosely and show failed tests verbosely - # Normal V=1 would show everything verbosely but this slows things down. - # - # -j1 here for https://github.com/openssl/openssl/issues/21999, but it - # shouldn't matter as tests were already built earlier, and HARNESS_JOBS - # controls running the tests. - emake -Onone -j1 HARNESS_JOBS="$(makeopts_jobs)" VFP=1 test -} - -multilib_src_install() { - # Only -j1 is supported for the install targets: - # https://github.com/openssl/openssl/issues/21999#issuecomment-1771150305 - emake DESTDIR="${D}" -j1 install_sw - if use fips; then - emake DESTDIR="${D}" -j1 install_fips - # Regen this in pkg_preinst, bug 900625 - rm "${ED}${SSL_CNF_DIR}"/fipsmodule.cnf || die - fi - - if multilib_is_native_abi; then - emake DESTDIR="${D}" -j1 install_ssldirs - emake DESTDIR="${D}" DOCDIR='$(INSTALLTOP)'/share/doc/${PF} -j1 install_docs - fi - - # This is crappy in that the static archives are still built even - # when USE=static-libs. But this is due to a failing in the openssl - # build system: the static archives are built as PIC all the time. - # Only way around this would be to manually configure+compile openssl - # twice; once with shared lib support enabled and once without. - if ! use static-libs ; then - rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die - fi -} - -multilib_src_install_all() { - # openssl installs perl version of c_rehash by default, but - # we provide a shell version via app-misc/c_rehash - rm "${ED}"/usr/bin/c_rehash || die - - dodoc {AUTHORS,CHANGES,NEWS,README,README-PROVIDERS}.md doc/*.txt doc/${PN}-c-indent.el - - # Create the certs directory - keepdir ${SSL_CNF_DIR}/certs - - # bug #254521 - dodir /etc/sandbox.d - echo 'SANDBOX_PREDICT="/dev/crypto"' > "${ED}"/etc/sandbox.d/10openssl - - diropts -m0700 - keepdir ${SSL_CNF_DIR}/private -} - -pkg_preinst() { - if use fips; then - # Regen fipsmodule.cnf, bug 900625 - ebegin "Running openssl fipsinstall" - LD_LIBRARY_PATH="${ED}/usr/$(get_libdir)" \ - "${ED}/usr/bin/openssl" fipsinstall -quiet \ - -out "${ED}${SSL_CNF_DIR}/fipsmodule.cnf" \ - -module "${ED}/usr/$(get_libdir)/ossl-modules/fips.so" - eend $? - fi - - preserve_old_lib /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1) \ - /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1.1) -} - -pkg_postinst() { - ebegin "Running 'openssl rehash ${EROOT}${SSL_CNF_DIR}/certs' to rebuild hashes (bug #333069)" - openssl rehash "${EROOT}${SSL_CNF_DIR}/certs" - eend $? - - preserve_old_lib_notify /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1) \ - /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1.1) -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.4.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.4.3.ebuild deleted file mode 100644 index a0741999964..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.4.3.ebuild +++ /dev/null @@ -1,297 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openssl.org.asc -inherit edo flag-o-matic linux-info toolchain-funcs -inherit multilib multilib-minimal multiprocessing preserve-libs - -DESCRIPTION="Robust, full-featured Open Source Toolkit for the Transport Layer Security (TLS)" -HOMEPAGE="https://openssl-library.org/" - -MY_P=${P/_/-} - -if [[ ${PV} == *9999 ]] ; then - [[ ${PV} == *.*.9999 ]] && EGIT_BRANCH="openssl-${PV%%.9999}" - EGIT_REPO_URI="https://github.com/openssl/openssl.git" - - inherit git-r3 -else - inherit verify-sig - SRC_URI=" - https://github.com/openssl/openssl/releases/download/${P}/${P}.tar.gz - verify-sig? ( - https://github.com/openssl/openssl/releases/download/${P}/${P}.tar.gz.asc - ) - " - - if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" - fi - - BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-openssl-20240920 )" -fi - -S="${WORKDIR}"/${MY_P} - -LICENSE="Apache-2.0" -SLOT="0/$(ver_cut 1)" # .so version of libssl/libcrypto -IUSE="+asm cpu_flags_x86_sse2 fips ktls +quic rfc3779 sctp static-libs test tls-compression vanilla weak-ssl-ciphers" -RESTRICT="!test? ( test )" - -COMMON_DEPEND=" - !=virtual/zlib-1.2.8-r1:=[static-libs(+)?,${MULTILIB_USEDEP}] ) -" -BDEPEND+=" - >=dev-lang/perl-5 - sctp? ( >=net-misc/lksctp-tools-1.0.12 ) - test? ( - sys-apps/diffutils - app-alternatives/bc - sys-process/procps - ) -" -DEPEND="${COMMON_DEPEND}" -RDEPEND="${COMMON_DEPEND}" -PDEPEND="app-misc/ca-certificates" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/openssl/configuration.h -) - -pkg_setup() { - if use ktls ; then - if kernel_is -lt 4 18 ; then - ewarn "Kernel implementation of TLS (USE=ktls) requires kernel >=4.18!" - else - CONFIG_CHECK="~TLS ~TLS_DEVICE" - ERROR_TLS="You will be unable to offload TLS to kernel because CONFIG_TLS is not set!" - ERROR_TLS_DEVICE="You will be unable to offload TLS to kernel because CONFIG_TLS_DEVICE is not set!" - use test && CONFIG_CHECK+=" ~CRYPTO_USER_API_SKCIPHER" - - linux-info_pkg_setup - fi - fi - - [[ ${MERGE_TYPE} == binary ]] && return - - # must check in pkg_setup; sysctl doesn't work with userpriv! - if use test && use sctp ; then - # test_ssl_new will fail with "Ensure SCTP AUTH chunks are enabled in kernel" - # if sctp.auth_enable is not enabled. - local sctp_auth_status=$(sysctl -n net.sctp.auth_enable 2>/dev/null) - if [[ -z "${sctp_auth_status}" ]] || [[ ${sctp_auth_status} != 1 ]] ; then - die "FEATURES=test with USE=sctp requires net.sctp.auth_enable=1!" - fi - fi -} - -src_prepare() { - # Make sure we only ever touch Makefile.org and avoid patching a file - # that gets blown away anyways by the Configure script in src_configure - rm -f Makefile || die - - if ! use vanilla ; then - PATCHES+=( - # Add patches which are Gentoo-specific customisations here - ) - fi - - default - - if use test && use sctp && has network-sandbox ${FEATURES} ; then - einfo "Disabling test '80-test_ssl_new.t' which is known to fail with FEATURES=network-sandbox ..." - rm test/recipes/80-test_ssl_new.t || die - fi - - # Test fails depending on kernel configuration, bug #699134 - rm test/recipes/30-test_afalg.t || die -} - -src_configure() { - # Keep this in sync with app-misc/c_rehash - SSL_CNF_DIR="/etc/ssl" - - # Quiet out unknown driver argument warnings since openssl - # doesn't have well-split CFLAGS and we're making it even worse - # and 'make depend' uses -Werror for added fun (bug #417795 again) - tc-is-clang && append-flags -Qunused-arguments - - # We really, really need to build OpenSSL w/ strict aliasing disabled. - # It's filled with violations and it *will* result in miscompiled - # code. This has been in the ebuild for > 10 years but even in 2022, - # it's still relevant: - # - https://github.com/llvm/llvm-project/issues/55255 - # - https://github.com/openssl/openssl/issues/12247 - # - https://github.com/openssl/openssl/issues/18225 - # - https://github.com/openssl/openssl/issues/18663#issuecomment-1181478057 - # Don't remove the no strict aliasing bits below! - filter-flags -fstrict-aliasing - append-flags -fno-strict-aliasing - # The OpenSSL developers don't test with LTO right now, it leads to various - # warnings/errors (which may or may not be false positives), it's considered - # unsupported, and it's not tested in CI: https://github.com/openssl/openssl/issues/18663. - filter-lto - - append-flags $(test-flags-CC -Wa,--noexecstack) - - # bug #895308 -- check inserts GNU ld-compatible arguments - [[ ${CHOST} == *-darwin* ]] || append-atomic-flags - # Configure doesn't respect LIBS - export LDLIBS="${LIBS}" - - # bug #197996 - unset APPS - # bug #312551 - unset SCRIPTS - # bug #311473 - unset CROSS_COMPILE - - tc-export AR CC CXX RANLIB RC - - multilib-minimal_src_configure -} - -multilib_src_configure() { - use_ssl() { usex $1 "enable-${2:-$1}" "no-${2:-$1}" " ${*:3}" ; } - - local krb5=$(has_version app-crypt/mit-krb5 && echo "MIT" || echo "Heimdal") - - # See if our toolchain supports __uint128_t. If so, it's 64bit - # friendly and can use the nicely optimized code paths, bug #460790. - #local ec_nistp_64_gcc_128 - # - # Disable it for now though (bug #469976) - # Do NOT re-enable without substantial discussion first! - # - #echo "__uint128_t i;" > "${T}"/128.c - #if ${CC} ${CFLAGS} -c "${T}"/128.c -o /dev/null >&/dev/null ; then - # ec_nistp_64_gcc_128="enable-ec_nistp_64_gcc_128" - #fi - - local sslout=$(bash "${FILESDIR}/gentoo.config-1.0.4") - einfo "Using configuration: ${sslout:-(openssl knows best)}" - - # https://github.com/openssl/openssl/blob/master/INSTALL.md#enable-and-disable-features - local myeconfargs=( - ${sslout} - - $(multilib_is_native_abi || echo "no-docs") - $(use cpu_flags_x86_sse2 || echo "no-sse2") - enable-camellia - enable-ec - enable-ec2m - enable-sm2 - enable-srp - $(use elibc_musl && echo "no-async") - enable-idea - enable-mdc2 - enable-rc5 - $(use fips && echo "enable-fips") - $(use quic && echo "enable-quic") - $(use_ssl asm) - $(use_ssl ktls) - $(use_ssl rfc3779) - $(use_ssl sctp) - $(use test || echo "no-tests") - $(use_ssl tls-compression zlib) - $(use_ssl weak-ssl-ciphers) - - --prefix="${EPREFIX}"/usr - --openssldir="${EPREFIX}"${SSL_CNF_DIR} - --libdir=$(get_libdir) - - shared - threads - ) - - edo perl "${S}/Configure" "${myeconfargs[@]}" -} - -multilib_src_compile() { - emake build_sw - if multilib_is_native_abi; then - emake build_docs - fi -} - -multilib_src_test() { - # See https://github.com/openssl/openssl/blob/master/test/README.md for options. - # - # VFP = show subtests verbosely and show failed tests verbosely - # Normal V=1 would show everything verbosely but this slows things down. - # - # -j1 here for https://github.com/openssl/openssl/issues/21999, but it - # shouldn't matter as tests were already built earlier, and HARNESS_JOBS - # controls running the tests. - emake -Onone -j1 HARNESS_JOBS="$(makeopts_jobs)" VFP=1 test -} - -multilib_src_install() { - # Only -j1 is supported for the install targets: - # https://github.com/openssl/openssl/issues/21999#issuecomment-1771150305 - emake DESTDIR="${D}" -j1 install_sw - if use fips; then - emake DESTDIR="${D}" -j1 install_fips - # Regen this in pkg_preinst, bug 900625 - rm "${ED}${SSL_CNF_DIR}"/fipsmodule.cnf || die - fi - - if multilib_is_native_abi; then - emake DESTDIR="${D}" -j1 install_ssldirs - emake DESTDIR="${D}" DOCDIR='$(INSTALLTOP)'/share/doc/${PF} -j1 install_docs - fi - - # This is crappy in that the static archives are still built even - # when USE=static-libs. But this is due to a failing in the openssl - # build system: the static archives are built as PIC all the time. - # Only way around this would be to manually configure+compile openssl - # twice; once with shared lib support enabled and once without. - if ! use static-libs ; then - rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die - fi -} - -multilib_src_install_all() { - # openssl installs perl version of c_rehash by default, but - # we provide a shell version via app-misc/c_rehash - rm "${ED}"/usr/bin/c_rehash || die - - dodoc {AUTHORS,CHANGES,NEWS,README,README-PROVIDERS}.md doc/*.txt doc/${PN}-c-indent.el - - # Create the certs directory - keepdir ${SSL_CNF_DIR}/certs - - # bug #254521 - dodir /etc/sandbox.d - echo 'SANDBOX_PREDICT="/dev/crypto"' > "${ED}"/etc/sandbox.d/10openssl - - diropts -m0700 - keepdir ${SSL_CNF_DIR}/private -} - -pkg_preinst() { - if use fips; then - # Regen fipsmodule.cnf, bug 900625 - ebegin "Running openssl fipsinstall" - LD_LIBRARY_PATH="${ED}/usr/$(get_libdir)" \ - "${ED}/usr/bin/openssl" fipsinstall -quiet \ - -out "${ED}${SSL_CNF_DIR}/fipsmodule.cnf" \ - -module "${ED}/usr/$(get_libdir)/ossl-modules/fips.so" - eend $? - fi - - preserve_old_lib /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1) \ - /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1.1) -} - -pkg_postinst() { - ebegin "Running 'openssl rehash ${EROOT}${SSL_CNF_DIR}/certs' to rebuild hashes (bug #333069)" - openssl rehash "${EROOT}${SSL_CNF_DIR}/certs" - eend $? - - preserve_old_lib_notify /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1) \ - /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1.1) -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.5.4.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.5.5-r1.ebuild similarity index 84% rename from sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.5.4.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.5.5-r1.ebuild index 42a318f0f28..ff44bcfaaa4 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.5.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.5.5-r1.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openssl.org.asc inherit edo flag-o-matic linux-info sysroot toolchain-funcs -inherit multilib multilib-minimal multiprocessing preserve-libs +inherit multibuild multilib multilib-build multiprocessing preserve-libs DESCRIPTION="Robust, full-featured Open Source Toolkit for the Transport Layer Security (TLS)" HOMEPAGE="https://openssl-library.org/" @@ -27,7 +27,7 @@ else " if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" fi BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-openssl-20240920 )" @@ -110,6 +110,27 @@ src_prepare() { rm test/recipes/30-test_afalg.t || die } +_openssl_variant() { + local OPENSSL_VARIANT=${MULTIBUILD_VARIANT} + mkdir -p "${BUILD_DIR}" || die + pushd "${BUILD_DIR}" >/dev/null || die + "$@" + popd >/dev/null || die +} + +openssl_foreach_variant() { + local MULTIBUILD_VARIANTS=( "${OPENSSL_VARIANTS[@]}" ) + multibuild_foreach_variant _openssl_variant "$@" +} + +openssl_run_phase() { + multilib_foreach_abi openssl_foreach_variant "$@" +} + +openssl_is_default_variant() { + [[ ${OPENSSL_VARIANT} == shared ]] && multilib_is_native_abi +} + src_configure() { # Keep this in sync with app-misc/c_rehash SSL_CNF_DIR="/etc/ssl" @@ -151,10 +172,13 @@ src_configure() { tc-export AR CC CXX RANLIB RC - multilib-minimal_src_configure + OPENSSL_VARIANTS=( shared ) + use static-libs && OPENSSL_VARIANTS+=( static ) + + openssl_run_phase openssl_src_configure } -multilib_src_configure() { +openssl_src_configure() { use_ssl() { usex $1 "enable-${2:-$1}" "no-${2:-$1}" " ${*:3}" ; } local krb5=$(has_version app-crypt/mit-krb5 && echo "MIT" || echo "Heimdal") @@ -178,7 +202,7 @@ multilib_src_configure() { local myeconfargs=( ${sslout} - $(multilib_is_native_abi || echo "no-docs") + $(openssl_is_default_variant || echo "no-docs") $(use cpu_flags_x86_sse2 || echo "no-sse2") enable-camellia enable-ec @@ -203,21 +227,32 @@ multilib_src_configure() { --openssldir="${EPREFIX}"${SSL_CNF_DIR} --libdir=$(get_libdir) - shared threads ) + if [[ ${OPENSSL_VARIANT} == static ]]; then + myeconfargs+=( no-module no-shared ) + fi + edo perl "${S}/Configure" "${myeconfargs[@]}" } -multilib_src_compile() { +src_compile() { + openssl_run_phase openssl_src_compile +} + +openssl_src_compile() { emake build_sw - if multilib_is_native_abi; then + if openssl_is_default_variant; then emake build_docs fi } -multilib_src_test() { +src_test() { + openssl_run_phase openssl_src_test +} + +openssl_src_test() { # See https://github.com/openssl/openssl/blob/master/test/README.md for options. # # VFP = show subtests verbosely and show failed tests verbosely @@ -229,32 +264,36 @@ multilib_src_test() { emake -Onone -j1 HARNESS_JOBS="$(makeopts_jobs)" VFP=1 test } -multilib_src_install() { +openssl_src_install() { + if [[ ${OPENSSL_VARIANT} == static ]]; then + dolib.a libcrypto.a libssl.a + return + fi + # Only -j1 is supported for the install targets: # https://github.com/openssl/openssl/issues/21999#issuecomment-1771150305 emake DESTDIR="${D}" -j1 install_sw + rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die + if use fips; then emake DESTDIR="${D}" -j1 install_fips # Regen this in pkg_preinst, bug 900625 rm "${ED}${SSL_CNF_DIR}"/fipsmodule.cnf || die fi - if multilib_is_native_abi; then + if openssl_is_default_variant; then emake DESTDIR="${D}" -j1 install_ssldirs emake DESTDIR="${D}" DOCDIR='$(INSTALLTOP)'/share/doc/${PF} -j1 install_docs fi - # This is crappy in that the static archives are still built even - # when USE=static-libs. But this is due to a failing in the openssl - # build system: the static archives are built as PIC all the time. - # Only way around this would be to manually configure+compile openssl - # twice; once with shared lib support enabled and once without. - if ! use static-libs ; then - rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die - fi + multilib_prepare_wrappers + multilib_check_headers } -multilib_src_install_all() { +src_install() { + openssl_run_phase openssl_src_install + multilib_install_wrappers + # openssl installs perl version of c_rehash by default, but # we provide a shell version via app-misc/c_rehash rm "${ED}"/usr/bin/c_rehash || die diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.5.5-r2.ebuild similarity index 81% rename from sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.5.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.5.5-r2.ebuild index 3813d5430f0..ae7ed6ef47d 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.5.5-r2.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openssl.org.asc -inherit edo flag-o-matic linux-info toolchain-funcs -inherit multilib multilib-minimal multiprocessing preserve-libs +inherit edo flag-o-matic linux-info sysroot toolchain-funcs +inherit multibuild multilib multilib-build multiprocessing preserve-libs DESCRIPTION="Robust, full-featured Open Source Toolkit for the Transport Layer Security (TLS)" HOMEPAGE="https://openssl-library.org/" @@ -27,7 +27,7 @@ else " if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" fi BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-openssl-20240920 )" @@ -62,7 +62,8 @@ MULTILIB_WRAPPED_HEADERS=( ) PATCHES=( - "${FILESDIR}"/${PN}-3.3.2-silence-warning.patch + "${FILESDIR}"/${PN}-3.5.5-ppc64.patch + "${FILESDIR}"/${PN}-3.5.5-ppc64-be.patch ) pkg_setup() { @@ -114,6 +115,27 @@ src_prepare() { rm test/recipes/30-test_afalg.t || die } +_openssl_variant() { + local OPENSSL_VARIANT=${MULTIBUILD_VARIANT} + mkdir -p "${BUILD_DIR}" || die + pushd "${BUILD_DIR}" >/dev/null || die + "$@" + popd >/dev/null || die +} + +openssl_foreach_variant() { + local MULTIBUILD_VARIANTS=( "${OPENSSL_VARIANTS[@]}" ) + multibuild_foreach_variant _openssl_variant "$@" +} + +openssl_run_phase() { + multilib_foreach_abi openssl_foreach_variant "$@" +} + +openssl_is_default_variant() { + [[ ${OPENSSL_VARIANT} == shared ]] && multilib_is_native_abi +} + src_configure() { # Keep this in sync with app-misc/c_rehash SSL_CNF_DIR="/etc/ssl" @@ -155,10 +177,13 @@ src_configure() { tc-export AR CC CXX RANLIB RC - multilib-minimal_src_configure + OPENSSL_VARIANTS=( shared ) + use static-libs && OPENSSL_VARIANTS+=( static ) + + openssl_run_phase openssl_src_configure } -multilib_src_configure() { +openssl_src_configure() { use_ssl() { usex $1 "enable-${2:-$1}" "no-${2:-$1}" " ${*:3}" ; } local krb5=$(has_version app-crypt/mit-krb5 && echo "MIT" || echo "Heimdal") @@ -182,7 +207,7 @@ multilib_src_configure() { local myeconfargs=( ${sslout} - $(multilib_is_native_abi || echo "no-docs") + $(openssl_is_default_variant || echo "no-docs") $(use cpu_flags_x86_sse2 || echo "no-sse2") enable-camellia enable-ec @@ -207,21 +232,32 @@ multilib_src_configure() { --openssldir="${EPREFIX}"${SSL_CNF_DIR} --libdir=$(get_libdir) - shared threads ) + if [[ ${OPENSSL_VARIANT} == static ]]; then + myeconfargs+=( no-module no-shared ) + fi + edo perl "${S}/Configure" "${myeconfargs[@]}" } -multilib_src_compile() { +src_compile() { + openssl_run_phase openssl_src_compile +} + +openssl_src_compile() { emake build_sw - if multilib_is_native_abi; then + if openssl_is_default_variant; then emake build_docs fi } -multilib_src_test() { +src_test() { + openssl_run_phase openssl_src_test +} + +openssl_src_test() { # See https://github.com/openssl/openssl/blob/master/test/README.md for options. # # VFP = show subtests verbosely and show failed tests verbosely @@ -233,32 +269,36 @@ multilib_src_test() { emake -Onone -j1 HARNESS_JOBS="$(makeopts_jobs)" VFP=1 test } -multilib_src_install() { +openssl_src_install() { + if [[ ${OPENSSL_VARIANT} == static ]]; then + dolib.a libcrypto.a libssl.a + return + fi + # Only -j1 is supported for the install targets: # https://github.com/openssl/openssl/issues/21999#issuecomment-1771150305 emake DESTDIR="${D}" -j1 install_sw + rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die + if use fips; then emake DESTDIR="${D}" -j1 install_fips # Regen this in pkg_preinst, bug 900625 rm "${ED}${SSL_CNF_DIR}"/fipsmodule.cnf || die fi - if multilib_is_native_abi; then + if openssl_is_default_variant; then emake DESTDIR="${D}" -j1 install_ssldirs emake DESTDIR="${D}" DOCDIR='$(INSTALLTOP)'/share/doc/${PF} -j1 install_docs fi - # This is crappy in that the static archives are still built even - # when USE=static-libs. But this is due to a failing in the openssl - # build system: the static archives are built as PIC all the time. - # Only way around this would be to manually configure+compile openssl - # twice; once with shared lib support enabled and once without. - if ! use static-libs ; then - rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die - fi + multilib_prepare_wrappers + multilib_check_headers } -multilib_src_install_all() { +src_install() { + openssl_run_phase openssl_src_install + multilib_install_wrappers + # openssl installs perl version of c_rehash by default, but # we provide a shell version via app-misc/c_rehash rm "${ED}"/usr/bin/c_rehash || die @@ -279,12 +319,12 @@ multilib_src_install_all() { pkg_preinst() { if use fips; then # Regen fipsmodule.cnf, bug 900625 - ebegin "Running openssl fipsinstall" + einfo "Running openssl fipsinstall" LD_LIBRARY_PATH="${ED}/usr/$(get_libdir)" \ - "${ED}/usr/bin/openssl" fipsinstall -quiet \ + sysroot_run_prefixed "${ED}/usr/bin/openssl" fipsinstall \ -out "${ED}${SSL_CNF_DIR}/fipsmodule.cnf" \ - -module "${ED}/usr/$(get_libdir)/ossl-modules/fips.so" - eend $? + -module "${ED}/usr/$(get_libdir)/ossl-modules/fips.so" \ + || die "fipsinstall failed" fi preserve_old_lib /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1) \ diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.5.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.5.9999.ebuild index 2de7e8ce8aa..63e02f74931 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.5.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.5.9999.ebuild @@ -5,7 +5,7 @@ EAPI=8 VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openssl.org.asc inherit edo flag-o-matic linux-info sysroot toolchain-funcs -inherit multilib multilib-minimal multiprocessing preserve-libs +inherit multibuild multilib multilib-build multiprocessing preserve-libs DESCRIPTION="Robust, full-featured Open Source Toolkit for the Transport Layer Security (TLS)" HOMEPAGE="https://openssl-library.org/" @@ -110,6 +110,27 @@ src_prepare() { rm test/recipes/30-test_afalg.t || die } +_openssl_variant() { + local OPENSSL_VARIANT=${MULTIBUILD_VARIANT} + mkdir -p "${BUILD_DIR}" || die + pushd "${BUILD_DIR}" >/dev/null || die + "$@" + popd >/dev/null || die +} + +openssl_foreach_variant() { + local MULTIBUILD_VARIANTS=( "${OPENSSL_VARIANTS[@]}" ) + multibuild_foreach_variant _openssl_variant "$@" +} + +openssl_run_phase() { + multilib_foreach_abi openssl_foreach_variant "$@" +} + +openssl_is_default_variant() { + [[ ${OPENSSL_VARIANT} == shared ]] && multilib_is_native_abi +} + src_configure() { # Keep this in sync with app-misc/c_rehash SSL_CNF_DIR="/etc/ssl" @@ -151,10 +172,13 @@ src_configure() { tc-export AR CC CXX RANLIB RC - multilib-minimal_src_configure + OPENSSL_VARIANTS=( shared ) + use static-libs && OPENSSL_VARIANTS+=( static ) + + openssl_run_phase openssl_src_configure } -multilib_src_configure() { +openssl_src_configure() { use_ssl() { usex $1 "enable-${2:-$1}" "no-${2:-$1}" " ${*:3}" ; } local krb5=$(has_version app-crypt/mit-krb5 && echo "MIT" || echo "Heimdal") @@ -178,7 +202,7 @@ multilib_src_configure() { local myeconfargs=( ${sslout} - $(multilib_is_native_abi || echo "no-docs") + $(openssl_is_default_variant || echo "no-docs") $(use cpu_flags_x86_sse2 || echo "no-sse2") enable-camellia enable-ec @@ -203,21 +227,32 @@ multilib_src_configure() { --openssldir="${EPREFIX}"${SSL_CNF_DIR} --libdir=$(get_libdir) - shared threads ) + if [[ ${OPENSSL_VARIANT} == static ]]; then + myeconfargs+=( no-module no-shared ) + fi + edo perl "${S}/Configure" "${myeconfargs[@]}" } -multilib_src_compile() { +src_compile() { + openssl_run_phase openssl_src_compile +} + +openssl_src_compile() { emake build_sw - if multilib_is_native_abi; then + if openssl_is_default_variant; then emake build_docs fi } -multilib_src_test() { +src_test() { + openssl_run_phase openssl_src_test +} + +openssl_src_test() { # See https://github.com/openssl/openssl/blob/master/test/README.md for options. # # VFP = show subtests verbosely and show failed tests verbosely @@ -229,32 +264,36 @@ multilib_src_test() { emake -Onone -j1 HARNESS_JOBS="$(makeopts_jobs)" VFP=1 test } -multilib_src_install() { +openssl_src_install() { + if [[ ${OPENSSL_VARIANT} == static ]]; then + dolib.a libcrypto.a libssl.a + return + fi + # Only -j1 is supported for the install targets: # https://github.com/openssl/openssl/issues/21999#issuecomment-1771150305 emake DESTDIR="${D}" -j1 install_sw + rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die + if use fips; then emake DESTDIR="${D}" -j1 install_fips # Regen this in pkg_preinst, bug 900625 rm "${ED}${SSL_CNF_DIR}"/fipsmodule.cnf || die fi - if multilib_is_native_abi; then + if openssl_is_default_variant; then emake DESTDIR="${D}" -j1 install_ssldirs emake DESTDIR="${D}" DOCDIR='$(INSTALLTOP)'/share/doc/${PF} -j1 install_docs fi - # This is crappy in that the static archives are still built even - # when USE=static-libs. But this is due to a failing in the openssl - # build system: the static archives are built as PIC all the time. - # Only way around this would be to manually configure+compile openssl - # twice; once with shared lib support enabled and once without. - if ! use static-libs ; then - rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die - fi + multilib_prepare_wrappers + multilib_check_headers } -multilib_src_install_all() { +src_install() { + openssl_run_phase openssl_src_install + multilib_install_wrappers + # openssl installs perl version of c_rehash by default, but # we provide a shell version via app-misc/c_rehash rm "${ED}"/usr/bin/c_rehash || die diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.6.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.6.1-r1.ebuild similarity index 86% rename from sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.6.1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.6.1-r1.ebuild index 63fbdb12b30..a31a3060870 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.6.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.6.1-r1.ebuild @@ -5,7 +5,7 @@ EAPI=8 VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openssl.org.asc inherit edo flag-o-matic linux-info sysroot toolchain-funcs -inherit multilib multilib-minimal multiprocessing preserve-libs +inherit multibuild multilib multilib-build multiprocessing preserve-libs DESCRIPTION="Robust, full-featured Open Source Toolkit for the Transport Layer Security (TLS)" HOMEPAGE="https://openssl-library.org/" @@ -110,6 +110,27 @@ src_prepare() { rm test/recipes/30-test_afalg.t || die } +_openssl_variant() { + local OPENSSL_VARIANT=${MULTIBUILD_VARIANT} + mkdir -p "${BUILD_DIR}" || die + pushd "${BUILD_DIR}" >/dev/null || die + "$@" + popd >/dev/null || die +} + +openssl_foreach_variant() { + local MULTIBUILD_VARIANTS=( "${OPENSSL_VARIANTS[@]}" ) + multibuild_foreach_variant _openssl_variant "$@" +} + +openssl_run_phase() { + multilib_foreach_abi openssl_foreach_variant "$@" +} + +openssl_is_default_variant() { + [[ ${OPENSSL_VARIANT} == shared ]] && multilib_is_native_abi +} + src_configure() { # Keep this in sync with app-misc/c_rehash SSL_CNF_DIR="/etc/ssl" @@ -151,10 +172,13 @@ src_configure() { tc-export AR CC CXX RANLIB RC - multilib-minimal_src_configure + OPENSSL_VARIANTS=( shared ) + use static-libs && OPENSSL_VARIANTS+=( static ) + + openssl_run_phase openssl_src_configure } -multilib_src_configure() { +openssl_src_configure() { use_ssl() { usex $1 "enable-${2:-$1}" "no-${2:-$1}" " ${*:3}" ; } local krb5=$(has_version app-crypt/mit-krb5 && echo "MIT" || echo "Heimdal") @@ -178,7 +202,7 @@ multilib_src_configure() { local myeconfargs=( ${sslout} - $(multilib_is_native_abi || echo "no-docs") + $(openssl_is_default_variant || echo "no-docs") $(use cpu_flags_x86_sse2 || echo "no-sse2") enable-camellia enable-ec @@ -203,21 +227,32 @@ multilib_src_configure() { --openssldir="${EPREFIX}"${SSL_CNF_DIR} --libdir=$(get_libdir) - shared threads ) + if [[ ${OPENSSL_VARIANT} == static ]]; then + myeconfargs+=( no-module no-shared ) + fi + edo perl "${S}/Configure" "${myeconfargs[@]}" } -multilib_src_compile() { +src_compile() { + openssl_run_phase openssl_src_compile +} + +openssl_src_compile() { emake build_sw - if multilib_is_native_abi; then + if openssl_is_default_variant; then emake build_docs fi } -multilib_src_test() { +src_test() { + openssl_run_phase openssl_src_test +} + +openssl_src_test() { # See https://github.com/openssl/openssl/blob/master/test/README.md for options. # # VFP = show subtests verbosely and show failed tests verbosely @@ -229,32 +264,36 @@ multilib_src_test() { emake -Onone -j1 HARNESS_JOBS="$(makeopts_jobs)" VFP=1 test } -multilib_src_install() { +openssl_src_install() { + if [[ ${OPENSSL_VARIANT} == static ]]; then + dolib.a libcrypto.a libssl.a + return + fi + # Only -j1 is supported for the install targets: # https://github.com/openssl/openssl/issues/21999#issuecomment-1771150305 emake DESTDIR="${D}" -j1 install_sw + rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die + if use fips; then emake DESTDIR="${D}" -j1 install_fips # Regen this in pkg_preinst, bug 900625 rm "${ED}${SSL_CNF_DIR}"/fipsmodule.cnf || die fi - if multilib_is_native_abi; then + if openssl_is_default_variant; then emake DESTDIR="${D}" -j1 install_ssldirs emake DESTDIR="${D}" DOCDIR='$(INSTALLTOP)'/share/doc/${PF} -j1 install_docs fi - # This is crappy in that the static archives are still built even - # when USE=static-libs. But this is due to a failing in the openssl - # build system: the static archives are built as PIC all the time. - # Only way around this would be to manually configure+compile openssl - # twice; once with shared lib support enabled and once without. - if ! use static-libs ; then - rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die - fi + multilib_prepare_wrappers + multilib_check_headers } -multilib_src_install_all() { +src_install() { + openssl_run_phase openssl_src_install + multilib_install_wrappers + # openssl installs perl version of c_rehash by default, but # we provide a shell version via app-misc/c_rehash rm "${ED}"/usr/bin/c_rehash || die diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.6.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.6.9999.ebuild index 2de7e8ce8aa..63e02f74931 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.6.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.6.9999.ebuild @@ -5,7 +5,7 @@ EAPI=8 VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openssl.org.asc inherit edo flag-o-matic linux-info sysroot toolchain-funcs -inherit multilib multilib-minimal multiprocessing preserve-libs +inherit multibuild multilib multilib-build multiprocessing preserve-libs DESCRIPTION="Robust, full-featured Open Source Toolkit for the Transport Layer Security (TLS)" HOMEPAGE="https://openssl-library.org/" @@ -110,6 +110,27 @@ src_prepare() { rm test/recipes/30-test_afalg.t || die } +_openssl_variant() { + local OPENSSL_VARIANT=${MULTIBUILD_VARIANT} + mkdir -p "${BUILD_DIR}" || die + pushd "${BUILD_DIR}" >/dev/null || die + "$@" + popd >/dev/null || die +} + +openssl_foreach_variant() { + local MULTIBUILD_VARIANTS=( "${OPENSSL_VARIANTS[@]}" ) + multibuild_foreach_variant _openssl_variant "$@" +} + +openssl_run_phase() { + multilib_foreach_abi openssl_foreach_variant "$@" +} + +openssl_is_default_variant() { + [[ ${OPENSSL_VARIANT} == shared ]] && multilib_is_native_abi +} + src_configure() { # Keep this in sync with app-misc/c_rehash SSL_CNF_DIR="/etc/ssl" @@ -151,10 +172,13 @@ src_configure() { tc-export AR CC CXX RANLIB RC - multilib-minimal_src_configure + OPENSSL_VARIANTS=( shared ) + use static-libs && OPENSSL_VARIANTS+=( static ) + + openssl_run_phase openssl_src_configure } -multilib_src_configure() { +openssl_src_configure() { use_ssl() { usex $1 "enable-${2:-$1}" "no-${2:-$1}" " ${*:3}" ; } local krb5=$(has_version app-crypt/mit-krb5 && echo "MIT" || echo "Heimdal") @@ -178,7 +202,7 @@ multilib_src_configure() { local myeconfargs=( ${sslout} - $(multilib_is_native_abi || echo "no-docs") + $(openssl_is_default_variant || echo "no-docs") $(use cpu_flags_x86_sse2 || echo "no-sse2") enable-camellia enable-ec @@ -203,21 +227,32 @@ multilib_src_configure() { --openssldir="${EPREFIX}"${SSL_CNF_DIR} --libdir=$(get_libdir) - shared threads ) + if [[ ${OPENSSL_VARIANT} == static ]]; then + myeconfargs+=( no-module no-shared ) + fi + edo perl "${S}/Configure" "${myeconfargs[@]}" } -multilib_src_compile() { +src_compile() { + openssl_run_phase openssl_src_compile +} + +openssl_src_compile() { emake build_sw - if multilib_is_native_abi; then + if openssl_is_default_variant; then emake build_docs fi } -multilib_src_test() { +src_test() { + openssl_run_phase openssl_src_test +} + +openssl_src_test() { # See https://github.com/openssl/openssl/blob/master/test/README.md for options. # # VFP = show subtests verbosely and show failed tests verbosely @@ -229,32 +264,36 @@ multilib_src_test() { emake -Onone -j1 HARNESS_JOBS="$(makeopts_jobs)" VFP=1 test } -multilib_src_install() { +openssl_src_install() { + if [[ ${OPENSSL_VARIANT} == static ]]; then + dolib.a libcrypto.a libssl.a + return + fi + # Only -j1 is supported for the install targets: # https://github.com/openssl/openssl/issues/21999#issuecomment-1771150305 emake DESTDIR="${D}" -j1 install_sw + rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die + if use fips; then emake DESTDIR="${D}" -j1 install_fips # Regen this in pkg_preinst, bug 900625 rm "${ED}${SSL_CNF_DIR}"/fipsmodule.cnf || die fi - if multilib_is_native_abi; then + if openssl_is_default_variant; then emake DESTDIR="${D}" -j1 install_ssldirs emake DESTDIR="${D}" DOCDIR='$(INSTALLTOP)'/share/doc/${PF} -j1 install_docs fi - # This is crappy in that the static archives are still built even - # when USE=static-libs. But this is due to a failing in the openssl - # build system: the static archives are built as PIC all the time. - # Only way around this would be to manually configure+compile openssl - # twice; once with shared lib support enabled and once without. - if ! use static-libs ; then - rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die - fi + multilib_prepare_wrappers + multilib_check_headers } -multilib_src_install_all() { +src_install() { + openssl_run_phase openssl_src_install + multilib_install_wrappers + # openssl installs perl version of c_rehash by default, but # we provide a shell version via app-misc/c_rehash rm "${ED}"/usr/bin/c_rehash || die From 88cd38720a1d46cd18a82af8736602a9dfea0384 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:38 +0000 Subject: [PATCH 077/291] dev-libs/tree-sitter: Sync with Gentoo It's from Gentoo commit 3d0ea530037307459b3f24fda21921b8b92470cd. Signed-off-by: Flatcar Buildbot --- .../dev-libs/tree-sitter/Manifest | 3 ++ .../files/tree-sitter-0.26.3-no-static.patch | 21 ++++++++ .../tree-sitter/tree-sitter-0.26.3.ebuild | 50 +++++++++++++++++++ .../tree-sitter/tree-sitter-0.26.5.ebuild | 50 +++++++++++++++++++ .../tree-sitter/tree-sitter-0.26.6.ebuild | 28 +++++++++++ .../tree-sitter/tree-sitter-9999.ebuild | 4 +- 6 files changed, 154 insertions(+), 2 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/files/tree-sitter-0.26.3-no-static.patch create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-0.26.3.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-0.26.5.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-0.26.6.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/Manifest index 0753b4a9881..a77382ed146 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/Manifest @@ -2,3 +2,6 @@ DIST tree-sitter-0.24.3.tar.gz 3018668 BLAKE2B fa703b6250e11274d0c5ebccb741cc41f DIST tree-sitter-0.25.10.tar.gz 864648 BLAKE2B ae80d0e995cc5e3b40198caa3a7845f209f7df87948020d6b0a6669899bbeb113d852e2197cdaf1fe54944cdc8362cb73487af33960969fac087f45d33025c48 SHA512 f0465a2fabe303c1b62f1f55ed08aa57372ac11370d229adcccd99b5e8067be53e92da281cdfbcd034e2ecefb33ac90a119eeac9035670ac8fbaa4242cb87a11 DIST tree-sitter-0.25.6.tar.gz 857070 BLAKE2B 3bb6b6130e1a96c96b5af4608bf60f8bbd00cbf1fdc9905b7a6169db52351c2ae3a907eca444363ab2b3185a54d0080aa487cbe252e6e015c1cd7a735e420679 SHA512 47213b68233d376e145e3f42b4674d64e7ff27436f4a028e751d9ad8494469ff67b002ce184346d3f6848df2c91386c28127827c43a8bea34da5e84f2530f02f DIST tree-sitter-0.25.8.tar.gz 857462 BLAKE2B aa3f0d9056544bb6ef1127723563449c7672e06b5289e1596f2c1b5826905c578830c7e6c3bc58a91e388d647a5a5629e71f5f0af2a431e73c3be4f93ce5b6f4 SHA512 0d26d0699f61fa27b5adbc298ff53f8e0f5b9f2f1b216744200f6f50cff777c9c5a5a5b92304a4d1889fccd9d8a6dd6b7d4947bac907a91850322281f754ea53 +DIST tree-sitter-0.26.3.tar.gz 900789 BLAKE2B 8532bd460f3fd4e1cec9daecc45fcc85638e5ebde474fc32ccbb9ba77611cf8aff41653295b9b1c267aac62f8e2cf23345193271cc64c975895dd04a3d988c11 SHA512 ae2b59938ce41f6936d98e454adfc05a3890b2b3d24485b0d992e6f1d2dd1e8d9124e6a3eddc3d594f0cdb831362ff2c9b44b72364b22d3526150d23a9d15781 +DIST tree-sitter-0.26.5.tar.gz 905701 BLAKE2B 3771c0b31704f6182ae10c2629566984883a9bfcfc914e40a3d30889eb3ef30f19213a45e9732b067042893dd89e27b51b8f5fa50f2d7d8cec81aeb8666ebece SHA512 c8ffa86caf5841208dd2c987c6437111c7514635ebc76e910deb38ba64252caa99ae8453f1acd8af8e167cc2c7fe7194d481cd53533802601b331c60d20f2a49 +DIST tree-sitter-0.26.6.tar.gz 906770 BLAKE2B c6fcbc901f86795d6e5de5e22d4b7f34425f1f25ff9134de27baa0a68d917c376accd4a7a9d33faaee4e82e4dd7440085a06b55d5f57e5fe9756c195147867d5 SHA512 33ce5617ac53e276cccc8fa34e3a6b3e29a5bd572b381da4a7d6d78cbb7485d85120be8c0e25e02d3fbae4c36793b02bcfd788a2cdfe73f026742b184e16d572 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/files/tree-sitter-0.26.3-no-static.patch b/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/files/tree-sitter-0.26.3-no-static.patch new file mode 100644 index 00000000000..544b9f0b53c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/files/tree-sitter-0.26.3-no-static.patch @@ -0,0 +1,21 @@ +diff --git a/Makefile b/Makefile +index 2098d27..0bbacaf 100644 +--- a/Makefile ++++ b/Makefile +@@ -52,7 +52,7 @@ ifneq ($(filter $(shell uname),FreeBSD NetBSD DragonFly),) + endif + endif + +-all: libtree-sitter.a libtree-sitter.$(SOEXT) tree-sitter.pc ++all: libtree-sitter.$(SOEXT) tree-sitter.pc + + libtree-sitter.a: $(OBJ) + $(AR) $(ARFLAGS) $@ $^ +@@ -86,7 +86,6 @@ install: all + install -d '$(DESTDIR)$(INCLUDEDIR)'/tree_sitter '$(DESTDIR)$(PCLIBDIR)' '$(DESTDIR)$(LIBDIR)' + install -m644 lib/include/tree_sitter/api.h '$(DESTDIR)$(INCLUDEDIR)'/tree_sitter/api.h + install -m644 tree-sitter.pc '$(DESTDIR)$(PCLIBDIR)'/tree-sitter.pc +- install -m644 libtree-sitter.a '$(DESTDIR)$(LIBDIR)'/libtree-sitter.a + ifneq ($(findstring mingw32,$(MACHINE)),) + install -d '$(DESTDIR)$(BINDIR)' + install -m755 libtree-sitter.dll '$(DESTDIR)$(BINDIR)'/libtree-sitter.dll diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-0.26.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-0.26.3.ebuild new file mode 100644 index 00000000000..9c308e76169 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-0.26.3.ebuild @@ -0,0 +1,50 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +inherit optfeature toolchain-funcs + +DESCRIPTION="Tree-sitter is a parser generator tool and an incremental parsing library" +HOMEPAGE="https://github.com/tree-sitter/tree-sitter" + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/${PN}/${PN}" +else + SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" +fi + +LICENSE="MIT" +# ABI is not stable. Revisit after tree-sitter-1.0. +# https://bugs.gentoo.org/930039 +# https://github.com/tree-sitter/tree-sitter/pull/3302 +SLOT="0/${PV}" +RESTRICT="test" # tests are for CLI and not the lib + +PATCHES=( + "${FILESDIR}/${PN}-0.26.3-no-static.patch" +) + +src_prepare() { + default + tc-export CC +} + +src_compile() { + emake \ + PREFIX="${EPREFIX}/usr" \ + LIBDIR="${EPREFIX}/usr/$(get_libdir)" \ + STRIP="" # bug 930020 +} + +src_install() { + emake DESTDIR="${D}" \ + PREFIX="${EPREFIX}/usr" \ + LIBDIR="${EPREFIX}/usr/$(get_libdir)" \ + install +} + +pkg_postinst() { + optfeature "building and testing grammars" dev-util/tree-sitter-cli +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-0.26.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-0.26.5.ebuild new file mode 100644 index 00000000000..9c308e76169 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-0.26.5.ebuild @@ -0,0 +1,50 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +inherit optfeature toolchain-funcs + +DESCRIPTION="Tree-sitter is a parser generator tool and an incremental parsing library" +HOMEPAGE="https://github.com/tree-sitter/tree-sitter" + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/${PN}/${PN}" +else + SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" +fi + +LICENSE="MIT" +# ABI is not stable. Revisit after tree-sitter-1.0. +# https://bugs.gentoo.org/930039 +# https://github.com/tree-sitter/tree-sitter/pull/3302 +SLOT="0/${PV}" +RESTRICT="test" # tests are for CLI and not the lib + +PATCHES=( + "${FILESDIR}/${PN}-0.26.3-no-static.patch" +) + +src_prepare() { + default + tc-export CC +} + +src_compile() { + emake \ + PREFIX="${EPREFIX}/usr" \ + LIBDIR="${EPREFIX}/usr/$(get_libdir)" \ + STRIP="" # bug 930020 +} + +src_install() { + emake DESTDIR="${D}" \ + PREFIX="${EPREFIX}/usr" \ + LIBDIR="${EPREFIX}/usr/$(get_libdir)" \ + install +} + +pkg_postinst() { + optfeature "building and testing grammars" dev-util/tree-sitter-cli +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-0.26.6.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-0.26.6.ebuild new file mode 100644 index 00000000000..693cc691286 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-0.26.6.ebuild @@ -0,0 +1,28 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake optfeature + +DESCRIPTION="Tree-sitter is a parser generator tool and an incremental parsing library" +HOMEPAGE="https://github.com/tree-sitter/tree-sitter" + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/${PN}/${PN}" +else + SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" +fi + +LICENSE="MIT" +# ABI is not stable. Revisit after tree-sitter-1.0. +# https://bugs.gentoo.org/930039 +# https://github.com/tree-sitter/tree-sitter/pull/3302 +SLOT="0/${PV}" +RESTRICT="test" # tests are for CLI and not the lib + +pkg_postinst() { + optfeature "building and testing grammars" dev-util/tree-sitter-cli +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-9999.ebuild index b85048c678f..424dd8528a1 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -23,7 +23,7 @@ SLOT="0/${PV}" RESTRICT="test" # tests are for CLI and not the lib PATCHES=( - "${FILESDIR}/${PN}-0.22.2-no-static.patch" + "${FILESDIR}/${PN}-0.26.3-no-static.patch" ) src_prepare() { From 785908f4589347f0e0a6ec77610452fb578c28b0 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:38 +0000 Subject: [PATCH 078/291] dev-libs/tree-sitter-bash: Sync with Gentoo It's from Gentoo commit 48d3defb10b7537f918c2556d27c49a9971a14be. Signed-off-by: Flatcar Buildbot --- .../dev-libs/tree-sitter-bash/tree-sitter-bash-0.25.1.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter-bash/tree-sitter-bash-0.25.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter-bash/tree-sitter-bash-0.25.1.ebuild index 25e75f3a11a..7a219784f1e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter-bash/tree-sitter-bash-0.25.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter-bash/tree-sitter-bash-0.25.1.ebuild @@ -12,4 +12,4 @@ HOMEPAGE="https://github.com/tree-sitter/tree-sitter-bash" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" From ce3159837954ab701cedb2d9609d3c8cc958bf61 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:38 +0000 Subject: [PATCH 079/291] dev-libs/userspace-rcu: Sync with Gentoo It's from Gentoo commit 96f27c21d09dc7148fcf0279f169eb7c9488a8d2. Signed-off-by: Flatcar Buildbot --- .../dev-libs/userspace-rcu/Manifest | 3 ++- ...-replace-assert-by-urcu_posix_assert.patch | 25 ------------------- ...5.3.ebuild => userspace-rcu-0.15.6.ebuild} | 18 ++++++++----- 3 files changed, 14 insertions(+), 32 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/files/userspace-rcu-0.14.1-replace-assert-by-urcu_posix_assert.patch rename sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/{userspace-rcu-0.15.3.ebuild => userspace-rcu-0.15.6.ebuild} (65%) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/Manifest index aff40d77f29..8e1292d8146 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/Manifest @@ -1,2 +1,3 @@ -DIST userspace-rcu-0.15.3.tar.bz2 684175 BLAKE2B e636b04fe3bac7bb8f4afff0a7b2153e38d396a9c08e8ca19e705fcda81adda5256817db87305382c7adc3630ef5b1d25ff81af818a6b8c70232df11c9bee862 SHA512 9461f5f1ebfcfdb28bc9548738a030d0a29e754ae5340581d057c405c0fa5c17560a251fa15a20cf14d35f1fcc9aceac80841b37a5f348698da52a71ee4d4fe5 DIST userspace-rcu-0.15.5.tar.bz2 685498 BLAKE2B 3e0ad236f77f1146ac3e7fe93ae8f3ea86632af38b78c6648a19c9df33959ff08e42779f6d34b47dfd3f7188efc39f8f4daaba81d702743e357d3bd9327000fc SHA512 48c7e137b986c1a33d91ecd8e5101ed8783b7c4e15b8324660c72bce9879373b80ffd97aca0c3b8015a47dfe2c11b5f4acf9d4a065185d9ba405d4e50a2b58d8 +DIST userspace-rcu-0.15.6.tar.bz2 686061 BLAKE2B 7bc4892f7a322051a1326e7857a14ebdde5867dbccd6a7ceaf1ce0e74668e5ff5f829f6b9d5b6be2163ae000fe2a07bf937fb62b67e7959d7ed8021f67f6ce04 SHA512 53c28821dabfc1e8803c4299f6a9e589c9949d0062dd8aaa4aabb6d77641dfbd2b2c035c50680991d9f228499c12b9b23469044726a6ffce5e84f21f17cabff3 +DIST userspace-rcu-0.15.6.tar.bz2.asc 488 BLAKE2B 86f8a5e22de4ee21c748c3d0e1f1a3f6b3f31a34b072f9a0899d4e9b397fe3563de59b06b23590e82ac80d8f01421c813c58e53aef2991acaaec38cedb85c39a SHA512 cd1b0fac74c01ef82d6e09a909b65026ccccec9b7bf042ec38783631c6a9e99993b570b2200ba814303483c99aaa44dc6ac2e58d7cd24ee5e5027becff724ff0 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/files/userspace-rcu-0.14.1-replace-assert-by-urcu_posix_assert.patch b/sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/files/userspace-rcu-0.14.1-replace-assert-by-urcu_posix_assert.patch deleted file mode 100644 index 2ac035a87ec..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/files/userspace-rcu-0.14.1-replace-assert-by-urcu_posix_assert.patch +++ /dev/null @@ -1,25 +0,0 @@ -From bbff88f8091752ee19dca672bec197e49cc2ef5d Mon Sep 17 00:00:00 2001 -From: "Z. Liu" -Date: Mon, 9 Jun 2025 10:39:54 +0800 -Subject: [PATCH] src/urcu-bp.c: assert => urcu_posix_assert - -otherwise build failed if has -DNDEBUG - -Signed-off-by: Z. Liu - -diff --git a/src/urcu-bp.c b/src/urcu-bp.c -index 8e9afd8..e23ca95 100644 ---- a/src/urcu-bp.c -+++ b/src/urcu-bp.c -@@ -409,7 +409,7 @@ void expand_arena(struct registry_arena *arena) - new_chunk_size_bytes, 0); - if (new_chunk != MAP_FAILED) { - /* Should not have moved. */ -- assert(new_chunk == last_chunk); -+ urcu_posix_assert(new_chunk == last_chunk); - memset((char *) last_chunk + old_chunk_size_bytes, 0, - new_chunk_size_bytes - old_chunk_size_bytes); - last_chunk->capacity = new_capacity; --- -2.45.2 - diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/userspace-rcu-0.15.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/userspace-rcu-0.15.6.ebuild similarity index 65% rename from sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/userspace-rcu-0.15.3.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/userspace-rcu-0.15.6.ebuild index ee806704c6e..f0a7c6ffe85 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/userspace-rcu-0.15.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/userspace-rcu-0.15.6.ebuild @@ -1,25 +1,31 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit autotools +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/mathieudesnoyers.asc +inherit autotools verify-sig DESCRIPTION="Userspace RCU (read-copy-update) library" HOMEPAGE="https://liburcu.org/" -SRC_URI="https://lttng.org/files/urcu/${P}.tar.bz2" +SRC_URI=" + https://lttng.org/files/urcu/${P}.tar.bz2 + verify-sig? ( https://lttng.org/files/urcu/${P}.tar.bz2.asc ) +" LICENSE="LGPL-2.1" SLOT="0/8" # subslot = soname version -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="static-libs test" RESTRICT="!test? ( test )" -BDEPEND="test? ( sys-process/time )" +BDEPEND=" + test? ( sys-process/time ) + verify-sig? ( sec-keys/openpgp-keys-mathieudesnoyers ) +" PATCHES=( "${FILESDIR}"/${PN}-0.13.1-tests-no-benchmark.patch - "${FILESDIR}"/${PN}-0.14.1-replace-assert-by-urcu_posix_assert.patch ) src_prepare() { From fa2f240b6367c1fc464aec2326d519c33aaf015b Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:40 +0000 Subject: [PATCH 080/291] dev-libs/xxhash: Sync with Gentoo It's from Gentoo commit 6cb8017d761e428796f3564508c3e0d2e56986da. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-libs/xxhash/Manifest | 1 - .../dev-libs/xxhash/xxhash-0.8.2.ebuild | 43 ------------------- ...0.8.3-r1.ebuild => xxhash-0.8.3-r2.ebuild} | 13 ++++-- 3 files changed, 10 insertions(+), 47 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/xxhash/xxhash-0.8.2.ebuild rename sdk_container/src/third_party/portage-stable/dev-libs/xxhash/{xxhash-0.8.3-r1.ebuild => xxhash-0.8.3-r2.ebuild} (82%) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/xxhash/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/xxhash/Manifest index 1ea2e70343b..5f8c9fb2059 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/xxhash/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/xxhash/Manifest @@ -1,2 +1 @@ -DIST xxhash-0.8.2.tar.gz 1141188 BLAKE2B 735408256240760778fa516e01bed428f04837eb4e059c512e924f13e4a96db6cacbbefb04dea65a37b0f25b52cf13c4927a6e7870dc8c0d45b1b955d4ba3da1 SHA512 3e3eef21432fe88bc4dd9940ccad0308fdea3537b06fa5ac0e74c1bde53413dff29c8b3fc617a8a42b9ce88fcf213311d338a31b1ce73b3729342c9e68f06c78 DIST xxhash-0.8.3.tar.gz 1147630 BLAKE2B 75923c7c5df3490062791fa02ccddfb7281b3646e2b3e4b4a0c0d611c339e07c8d9cb656777fd0fcec9cda484f7b33edf080116bb011f70d6b8299cda63afa4e SHA512 8b5c8b9aad4e869f28310b12cc314037feda81d92f26c23eaecdb35dc65042ca2e65f2e9606033e62a31bcc737a9a950500ffcbdb8677d6ab20e820ea14f2b79 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/xxhash/xxhash-0.8.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/xxhash/xxhash-0.8.2.ebuild deleted file mode 100644 index 1a4ff1b5707..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/xxhash/xxhash-0.8.2.ebuild +++ /dev/null @@ -1,43 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit multilib-minimal toolchain-funcs - -DESCRIPTION="Extremely fast non-cryptographic hash algorithm" -HOMEPAGE="https://xxhash.com/" -SRC_URI="https://github.com/Cyan4973/xxHash/archive/v${PV}.tar.gz -> ${P}.tar.gz" -S=${WORKDIR}/xxHash-${PV} - -LICENSE="BSD-2 GPL-2+" -# https://abi-laboratory.pro/tracker/timeline/xxhash -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" - -src_prepare() { - default - - multilib_copy_sources -} - -multilib_src_compile() { - emake AR="$(tc-getAR)" CC="$(tc-getCC)" -} - -multilib_src_test() { - emake CC="$(tc-getCC)" check -} - -multilib_src_install() { - local emakeargs=( - DESTDIR="${D}" - PREFIX="${EPREFIX}"/usr - LIBDIR="${EPREFIX}"/usr/$(get_libdir) - ) - - emake "${emakeargs[@]}" install - einstalldocs - - rm "${ED}"/usr/$(get_libdir)/libxxhash.a || die -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/xxhash/xxhash-0.8.3-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/xxhash/xxhash-0.8.3-r2.ebuild similarity index 82% rename from sdk_container/src/third_party/portage-stable/dev-libs/xxhash/xxhash-0.8.3-r1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/xxhash/xxhash-0.8.3-r2.ebuild index ca5f8b1f492..11eac40a32a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/xxhash/xxhash-0.8.3-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/xxhash/xxhash-0.8.3-r2.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit flag-o-matic multilib-minimal toolchain-funcs +inherit dot-a flag-o-matic multilib-minimal toolchain-funcs DESCRIPTION="Extremely fast non-cryptographic hash algorithm" HOMEPAGE="https://xxhash.com/" @@ -13,6 +13,7 @@ S=${WORKDIR}/xxHash-${PV} LICENSE="BSD-2 GPL-2+" SLOT="0" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="static-libs" src_prepare() { default @@ -25,6 +26,8 @@ src_configure() { # https://github.com/Cyan4973/xxHash?tab=readme-ov-file#binary-size-control is-flagq '-Og' && append-cppflags -DXXH_NO_INLINE_HINTS multilib-minimal_src_configure + + use static-libs && lto-guarantee-fat } myemake() { @@ -51,5 +54,9 @@ multilib_src_install() { myemake DESTDIR="${D}" install einstalldocs - rm "${ED}"/usr/$(get_libdir)/libxxhash.a || die + if ! use static-libs; then + rm "${ED}"/usr/$(get_libdir)/libxxhash.a || die + else + strip-lto-bytecode + fi } From 3697f88723aa7d43e4a28556a4a96bf1f6d8a48a Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:44 +0000 Subject: [PATCH 081/291] dev-python/cffi: Sync with Gentoo It's from Gentoo commit 5519912ac07f338472a146ddf011647dc4fd145f. Signed-off-by: Flatcar Buildbot --- .../dev-python/cffi/cffi-2.0.0.ebuild | 3 +- .../files/cffi-2.0.0-pycparser-tests.patch | 106 ++++++++++++++++++ 2 files changed, 108 insertions(+), 1 deletion(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/cffi/files/cffi-2.0.0-pycparser-tests.patch diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cffi/cffi-2.0.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/cffi/cffi-2.0.0.ebuild index 022eab5bd79..8579f8054cb 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/cffi/cffi-2.0.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/cffi/cffi-2.0.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 8 -- sys-apps/portage dep @@ -47,6 +47,7 @@ distutils_enable_tests pytest PATCHES=( "${FILESDIR}"/cffi-1.14.0-darwin-no-brew.patch + "${FILESDIR}"/${P}-pycparser-tests.patch ) src_prepare() { diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cffi/files/cffi-2.0.0-pycparser-tests.patch b/sdk_container/src/third_party/portage-stable/dev-python/cffi/files/cffi-2.0.0-pycparser-tests.patch new file mode 100644 index 00000000000..aff09198d65 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/cffi/files/cffi-2.0.0-pycparser-tests.patch @@ -0,0 +1,106 @@ +https://github.com/python-cffi/cffi/commit/c36c02fa6f4f1d12a9cead81861c6f42af47da22 + +From c36c02fa6f4f1d12a9cead81861c6f42af47da22 Mon Sep 17 00:00:00 2001 +From: Eli Bendersky +Date: Sat, 24 Jan 2026 17:54:58 -0800 +Subject: [PATCH] Make test_parsing more resilient to changes in pycparser + (#224) + +* Make test_parsing more resilient to changes in pycparser + +Several tests expect precise error messages from pycparser, which pycparser +doesn't guarantee. While testing CFFI with pycparser 3.0, some tests needed +to be made more resilient. I've used the .startswith() approach already used +in this file, instead of exact string matching. + +Ref #223 + +* Loosen error message assertion even more +--- + testing/cffi0/test_parsing.py | 18 +++++++++--------- + 1 file changed, 9 insertions(+), 9 deletions(-) + +diff --git a/testing/cffi0/test_parsing.py b/testing/cffi0/test_parsing.py +index 8d4dd016..3e47bcdd 100644 +--- a/testing/cffi0/test_parsing.py ++++ b/testing/cffi0/test_parsing.py +@@ -197,7 +197,7 @@ def test_dont_remove_comment_in_line_directives(): + + some syntax error here + """) +- assert str(e.value) == "parse error\nbaz.c:9:14: before: syntax" ++ assert str(e.value).startswith("parse error\nbaz.c:9:") + # + e = pytest.raises(CDefError, ffi.cdef, """ + #line 7 "foo//bar.c" +@@ -205,21 +205,21 @@ def test_dont_remove_comment_in_line_directives(): + some syntax error here + """) + # +- assert str(e.value) == "parse error\nfoo//bar.c:8:14: before: syntax" ++ assert str(e.value).startswith("parse error\nfoo//bar.c:8:") + ffi = FFI(backend=FakeBackend()) + e = pytest.raises(CDefError, ffi.cdef, """ + \t # \t 8 \t "baz.c" \t + + some syntax error here + """) +- assert str(e.value) == "parse error\nbaz.c:9:14: before: syntax" ++ assert str(e.value).startswith("parse error\nbaz.c:9:") + # + e = pytest.raises(CDefError, ffi.cdef, """ + # 7 "foo//bar.c" + + some syntax error here + """) +- assert str(e.value) == "parse error\nfoo//bar.c:8:14: before: syntax" ++ assert str(e.value).startswith("parse error\nfoo//bar.c:8:") + + def test_multiple_line_directives(): + ffi = FFI(backend=FakeBackend()) +@@ -233,7 +233,7 @@ def test_multiple_line_directives(): + #line 8 "yadda.c" + extern int zz; + """) +- assert str(e.value) == "parse error\nbaz.c:7:14: before: syntax" ++ assert str(e.value).startswith("parse error\nbaz.c:7:") + # + e = pytest.raises(CDefError, ffi.cdef, + """ # 5 "foo.c" +@@ -245,7 +245,7 @@ def test_multiple_line_directives(): + # 8 "yadda.c" + extern int zz; + """) +- assert str(e.value) == "parse error\nbaz.c:7:14: before: syntax" ++ assert str(e.value).startswith("parse error\nbaz.c:7:") + + def test_commented_line_directive(): + ffi = FFI(backend=FakeBackend()) +@@ -262,7 +262,7 @@ def test_commented_line_directive(): + some syntax error + """) + # +- assert str(e.value) == "parse error\nbar.c:9:14: before: syntax" ++ assert str(e.value).startswith("parse error\nbar.c:9:") + e = pytest.raises(CDefError, ffi.cdef, """ + /* + # 5 "foo.c" +@@ -275,7 +275,7 @@ def test_commented_line_directive(): + */ + some syntax error + """) +- assert str(e.value) == "parse error\nbar.c:9:14: before: syntax" ++ assert str(e.value).startswith("parse error\nbar.c:9:") + + def test_line_continuation_in_defines(): + ffi = FFI(backend=FakeBackend()) +@@ -365,7 +365,7 @@ def test_unknown_name(): + e = pytest.raises(CDefError, ffi.cast, "foobarbazunknown*", 0) + assert str(e.value).startswith('cannot parse "foobarbazunknown*"') + e = pytest.raises(CDefError, ffi.cast, "int(*)(foobarbazunknown)", 0) +- assert str(e.value).startswith('cannot parse "int(*)(foobarbazunknown)"') ++ assert 'foobarbazunknown' in str(e.value) + + def test_redefine_common_type(): + prefix = "" if sys.version_info < (3,) else "b" + From a8217040cebe5376b80a28efbc0d0056ef3e9560 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:45 +0000 Subject: [PATCH 082/291] dev-python/chardet: Sync with Gentoo It's from Gentoo commit 7107b650f20b7bf4bfe21633418784de8891e10a. Signed-off-by: Flatcar Buildbot --- .../dev-python/chardet/Manifest | 1 + .../chardet/chardet-6.0.0_p1.ebuild | 37 +++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/chardet/chardet-6.0.0_p1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/chardet/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/chardet/Manifest index 41980181b32..e098bc0ddf1 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/chardet/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/chardet/Manifest @@ -1 +1,2 @@ DIST chardet-5.2.0.gh.tar.gz 2067352 BLAKE2B e9b960bad6ad7e9933f0fcd6e445bdefdd795f6150bf96e59714bfb9bd0cf63adeba80b608a1890f07be81565c160977fa96140984720407d93b0919eeb71a8b SHA512 3c6614882b251e53322eb75fdd01c3d7664c5f611bbfc1480fa10d57f02906b4be42a8b7ff4d3bdc00465340a2ca46b31f1f0d25f64d4f69df0ac0876e71e87f +DIST chardet-6.0.0.post1.tar.gz 12521798 BLAKE2B 1aac9c3fa5a7e7ac3dd366e02a2395f929a9df3141e7bf609415be471d82179e9f72de7a8584bcad34a04f9ebf426be61205c3c6932a792b770f3971500fe3d0 SHA512 c0581f1c108413407e4155ea1beceb84626c91472640657f2e17359624f7649046882ce2815330c7ce96a4320b1a85840b0235c4329637eb73f21bae85504c31 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/chardet/chardet-6.0.0_p1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/chardet/chardet-6.0.0_p1.ebuild new file mode 100644 index 00000000000..e4af02e4598 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/chardet/chardet-6.0.0_p1.ebuild @@ -0,0 +1,37 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( python3_{11..14} pypy3_11 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Universal encoding detector" +HOMEPAGE=" + https://github.com/chardet/chardet/ + https://pypi.org/project/chardet/ +" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris" + +BDEPEND=" + dev-python/hatch-vcs[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=( hypothesis ) +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # super flaky test + # https://github.com/chardet/chardet/issues/256 + test.py::test_detect_all_and_detect_one_should_agree + ) + + epytest -o addopts= +} From 0dcac84ff97d2ee8a369fbb9ce2a7b0c63678940 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:48 +0000 Subject: [PATCH 083/291] dev-python/cryptography: Sync with Gentoo It's from Gentoo commit 91624fea57fff531ef41a62d8a8f62c2d421f155. Signed-off-by: Flatcar Buildbot --- .../dev-python/cryptography/Manifest | 31 +--- .../cryptography/cryptography-45.0.6.ebuild | 133 ----------------- .../cryptography/cryptography-46.0.2.ebuild | 134 ------------------ ....0.3.ebuild => cryptography-46.0.5.ebuild} | 17 ++- .../cryptography-46.0.5-stray-files.patch | 48 +++++++ 5 files changed, 67 insertions(+), 296 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-45.0.6.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-46.0.2.ebuild rename sdk_container/src/third_party/portage-stable/dev-python/cryptography/{cryptography-46.0.3.ebuild => cryptography-46.0.5.ebuild} (83%) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/cryptography/files/cryptography-46.0.5-stray-files.patch diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cryptography/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/cryptography/Manifest index 5a9ad5073f0..60a4959ef53 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/cryptography/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/cryptography/Manifest @@ -1,63 +1,40 @@ -DIST asn1-0.21.3.crate 40295 BLAKE2B 83135948a525b0ed432bd8e76e87f7400c56887c4a7cc505210014b8f4c9e47f9d139f723bf61165dfc772b9d86c0fe6a471336e480613ec556114afcf9fee83 SHA512 5f7b484e6081569cb1bd86b690ffcb49b51c5dff20dc08fedd9f803d634265fb4c157e2912b4763152cf8baf5556807aee109787618c3ecdb4a7307863502417 DIST asn1-0.22.0.crate 47124 BLAKE2B d3ebce2752152968862a957c3bf87291d09dd7895ec1ac8012e4b968174b7a8013c98dde65f54dedf3c4ed4a206d1c306393e93c5b39783af44dbe36bb1b3116 SHA512 403c9fccf8a4c7f487a52528b23fd37790770526b75187b3634744ab9aff072eccdec5bf309e8532df6eb86fe70e60535d0783638c77c248b37296a0993feedf -DIST asn1_derive-0.21.3.crate 8570 BLAKE2B 3b94274d1c1ecbf5dd1c70cbacfbf6885a68734483eb990b090f230b6d8da3b7f2400355ce944c456b8712a1ae01b1b5a42cc277609ba752acb664337751dcec SHA512 b7feb53a380fec0a2db010a0af2ba1228aa45de99246ac7d388f5164735beff12ca882356eaa2c0eb710a099ac51ec8e739080715790af8f3d1ced6b3ff6c69e DIST asn1_derive-0.22.0.crate 8953 BLAKE2B ef2f3d248b0b5980b2475b4eb8127f4846ac200d2f8c7324757b571359ddf393f664b5b7189020bb12a390840c8fe0c423ab4c58e2359bf667d244d2e8f4e13c SHA512 bbbf3b498d2a59f19f044b627335e1b75a5341ee75b5cb281b09e3ab6e23c9f5a3d5f0eb09435fbeda211daedd9f9a867dbd99400b74e95f192fb0e09e694ab1 -DIST autocfg-1.4.0.crate 17712 BLAKE2B 7f7300439899be03d001dd32b7e797bc4b9a58103081b6f7353c4b5897813cedf870b3fb1fa25d320a75326b334b44d8287e8603de34fc560d0b567143915cc6 SHA512 3b5e7c30bc73e105e4bfcab584c24fc4016db41fac9c356c6649fd841051704bbe8848e09546eb50d7c1f18ea8ce1cb72fbc268a620d5c609b3472114b5be73c DIST autocfg-1.5.0.crate 18729 BLAKE2B 27580e39b366c6fca02c9db09997b6415c409f12068f1249184268bf96fd85ba659e25ec730f99e10caf452f96c486f3d7442bf09c4552b5f39519b21d6f88cc SHA512 f279856f234d39d369623576acf9546a1ca24d7fe449f36d4fb93ea75a7efaf2c4015b9616a69bbbed358c5e5882e16b045352f046aa4c049b3d13b1e8257b08 DIST base64-0.22.1.crate 81597 BLAKE2B 6f216a560bd36e6e6b74e908344b457594cc768d9763070e269b56a14b150cbfc4b7f599d4c2a0a5f783638170ee132f0796fefb14fcac7fd73c58db0791007a SHA512 91cf2e4e7fc8815f9b8a86a7fa722a20eee3dc1dd57111b29e420de87ce7836bcdb1db01d3cafb9a977710ef63e7cc41b7772762323e68e0e832156858aace20 -DIST bitflags-2.9.1.crate 47913 BLAKE2B b14ee41348336981ab86459417b9feab90879a11a6524a8b43f2b89c09c844b4441c31e315c471be00ad21fa88b5dcc7671b56567fdcd72bb0790ceeaa25813b SHA512 6baeac42e4227e58030e317125a3c23997beceb44f9262f029e59c6dc36dd1733f2e88b3c3c8ad22f806245ef404512a880b16f3c8c52fa5c4aab287bb3cfe27 DIST bitflags-2.9.4.crate 47950 BLAKE2B b880246b54377ef161c54a811f09ced975d1f2049400c1bbba944712b8ef8b9ea79599d2354cc2a9ccd4c1b1329faad78738ed4e051735b14b642a9451ce68ae SHA512 a832e01985551db9d700ba177bb2ffe436e78e3bdcf7b2d8e86fc7cb885674d5656fce05bffb5a4cbe0df7b015dcfa6df8dbc1351c097d2c3a3dac199d3f37b1 -DIST cc-1.2.23.crate 106527 BLAKE2B 0fd9e69ad743f4df15da3d25f85e1a422ef64b81b72af491001ccfba5c0c39e448deecc92e3a553bf74574460ecd2bf8f4056a1cd05d05856a1f3f36fa25bc19 SHA512 3fced846c630c09f629854754dc247affeae3e71375953617d77947b2bdfb479369db159cec941c7b094fd9d2fee62f7d5898d6d76de920dbd70de24ee35fd0b DIST cc-1.2.37.crate 90111 BLAKE2B c97656ab4642b180af1adf16736de03b5117774a2fd85d3cbbeb06744ab14a1f20accf8eb59c43dfc7fd803c59f92f30ccd7b2a6e3b53d8ecf45c8a2adb71483 SHA512 062bf65f73e5ae092391efaad510af39c96913d5647073eaa32e9475b34b6d87d2e4448f0dd54ecdf9b979a84819f861d05daf7fdbc06885f6b41162d55bb81f -DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff DIST cfg-if-1.0.3.crate 8719 BLAKE2B 5cd0ac122110740895b45cdf8e0f738f2de1882d5a06c696d08e906765e4ddcd72a866dcc115da52d9fece205c9ad15dc25ad98dff36b32517012a7586e986ee SHA512 afe424a191c2aaaffec3d114e0116d0324d12117aeb22df78e47ad6752444bc5acb074ab0a174476b71e584a37743f9dcc2b0e8036d590fcc5afc7c55f86122b -DIST cryptography-45.0.6.tar.gz 744949 BLAKE2B 271143188d0a7485066b5c89fc0397e6f9e5f5219844961a85e9fd382fb0b05521a093fb943252ea2985bb89645a285345fcf66a6022a58176fe809a83376a81 SHA512 2c675834fa26db0773fe51855c248927a2a7d45963e07144afdfa73573ce1e6940d40849d23fb45f7599c0821e4dbbec956ce2bd993c614617312b8e67fe7f1f -DIST cryptography-46.0.2.tar.gz 749293 BLAKE2B 15b519da25b4ab61db084d577b3045c4f00e3a8d51eedcdfcd73e282222ad0eb3c5b3cec73641ba16d3585699d9188e4421d3bbb6f68c18b5e495a5e98e12405 SHA512 f9bac5e4cc22c5c2914604bae596548356a4b62c0242ae9ffc11014167eb33fcac8b14c2c18778e2272424a80ffc2cd0ae97bea3ea61e2a143bc8c63664bab03 -DIST cryptography-46.0.3.tar.gz 749258 BLAKE2B aa7eab6b6a39551034c8ade545a0b8c52d2d778a9e74dbf306eada2dc5314e3cdc7dee23af2fba8d2aa14ece260e3ace920f890f3e02370e8e86b20001ade2ee SHA512 b4e1af6e8ef676396e25806c64a981bb70372ca0162c2fe7d6a242243686d9fed35262080a3d0241afbf71963fc7d753a46fd31489fff3a734ef6c1203b64d02 -DIST cryptography_vectors-45.0.6.tar.gz 35344645 BLAKE2B 78e8cc7b27eefdf9f499ce64479c67be9ea320967fa6791f19e89c298b783972845728fe43b3c7e6d37fbe1bcd894b268a63cf47be7cc10c5487612cd3587cc5 SHA512 0571c8b5b6e6f7b8787f6bcd395f75460ef615cb9cfd2c779b11326c74b38f285dcb1d84123d3a7996530976fdda78ec266d5c849ea9d6c51835c5ef933b9bfa -DIST cryptography_vectors-46.0.2.tar.gz 33809237 BLAKE2B 8f12b78e8fd5e4e8c28315fd7e3883669fd8a88f6e29cb03e41d98d4fc0327a1cabb836c77f9ac638a5dce0cc24b445c09ecccd7f1210fc2635d89c27631d54a SHA512 842f9886aa6e02e6cb7f105c705678ef1a6fef1c68397422aa27d93074f072fafb218f71f1d8900f69885b0068639dbb9beda80104bcc41d22b6f6b313fa36d5 -DIST cryptography_vectors-46.0.3.tar.gz 33809245 BLAKE2B c5832c11ba23fd44c745cd766a83ceb39a622ebbaca0dc463785776dd36d4d8065a4780894b7ff8260408893527a86e5f90367cf6b26f50c99a2f0db325e64e9 SHA512 6ebb80c4040143484bcc69239144362e7cef479dab2b9ebd68993ade3da1ed812cc1b7f3c41dc1a9a7ae0874c2e794e32f2762c896e768507ac55596fa45d765 +DIST cryptography-46.0.5.tar.gz 750064 BLAKE2B 7ae24a245583daf64a01cfbb9269e9d5aca82929543957572bea56f9e295593e81f836c87bd32bcb7aaa58253b7a156401a1d29992b60e73fd5926016fbbb4cd SHA512 5bc5ea5b85c600504c46e2376a45cee749f41e2b4a6eb639b05d289370dcdc82b2ace423532f5591da16ca56ea32919e47ec154cb72bf7e1f5f3f923c744a185 +DIST cryptography-46.0.5.tar.gz.provenance 9455 BLAKE2B 43796d3302d572eed76aadcab803b95217172945d77838f6fb1171fdd6f61bc811690aa73434479ac228fa98ad39cb513e781a6bc9c11311447350a6b7e1036f SHA512 317dcd14b36f056c1e5486c65cb5f8d82cfc0c2e3324279093e9d3533553bf2b120f3b0ecc99033c8d915fa712825eed2070b9b61fd8e98ceb6c21cf7bdd755d +DIST cryptography_vectors-46.0.5.tar.gz 33809256 BLAKE2B 26d428128708491bff05eb09939b22cec0f1b2248379ed063c078504663775b3e0a5a2223355674a4fc0c7bf563a73724098032f8f1a5c963fc21f5616afd653 SHA512 44197977e2c46680d9c78061bb04e8ba9e5118666a90c76e560d2f5b2ca1488615b380dd23429ab2bec75bc73c8c9b87bb51a7d6220067a8eb548fbfb5b23c8e +DIST cryptography_vectors-46.0.5.tar.gz.provenance 9561 BLAKE2B e8da4de62146333dbe154e913b8f6ac6b6e7fe7b334ba89ad09a446a85b0ebba65d4bae63d805becca692c2ad22e46d39efd54cf2db3b1505c017dbde377522c SHA512 199ea26934c99fc5097cc3c56f2991e34a9c9a2dae4881ba27fcefb0dcf2cb17b19568388d52fdadbb80c1cff6bb6bcd6d61afc0ef1d93b0fe28995984957457 DIST find-msvc-tools-0.1.1.crate 30228 BLAKE2B 9f6d84697a0310021a59789a0aebcf5895490e4dd719a2ef820ddf2f225ecd13c814e2c03e8d4de4089a2d1599b469a900c0c1072f9b57dcce9fb8634dcea6b2 SHA512 cc91ce79858db4a6feb3ff0fe24d7b29a523285247116a42b27affacc3f034afc0d458ac8716922f5fec5f23deafd62e875ec899d4ea58531d028535c22e137e DIST foreign-types-0.3.2.crate 7504 BLAKE2B 520818b702d990d296ecd31a8646850202509ccfa18edd0e1b260289619a6c351e758f317ec0824bd76eccb209b6f087057c25f1bd01a47897715013dd834867 SHA512 bf27b8243ed482c202d120383374f19ff09422535e24b9c1aebccc66529bf300ca17b8bbc76d67f98ac092e614497afe3add9dc68aa69c93074df05762f91232 DIST foreign-types-shared-0.1.1.crate 5672 BLAKE2B d2e42e04b6657e7a69fe0bd20c672176629c743e49a55fd007bb30e289710b70045d445ae9cae0eeaa747ee708c90e8abd9b5fc39bad8ec0666befe1b696d4f1 SHA512 bafdb2143e136fb0818e2ffd90b5c862b7181647d6568947d4e4531012bbf7a57b597221ec7056c1b562dfc0c3b5dead26d1a4111ebc15e7863737a873518a4a DIST heck-0.5.0.crate 11517 BLAKE2B 5365ec43b2239a76b33a174f1a4292ece4147f9d382a68c6c60db78fdc8bad0afb1d51a65bcb25e96675372faa4ea37c318265030b0546ba51942f7c929e1835 SHA512 f044fc9c3d22466629fd8f772ec0555350fd611c0cfadca51d99a3d2f10e155f77c1091916c8a95a6b9b499f366c2e99a5fbf45b010f988bfb9b2501bf9f6a76 DIST indoc-2.0.6.crate 17164 BLAKE2B 1a6cff95bc12ea885ef36b935bf4f1c7870d65be0ff31ffc67dcab904fa80215c1254c1803c5d0c5686252addfad3512e9e1ec79d3edcba026a879f4706926d1 SHA512 e2ea2e5c8226c802bbe0631c1a99d2edd088cbafbf978b2a7b71c7c7f47754c6d4653f466e286441b61cc46def1c7f7a02d4785caab93a61dd785211dba7d1a9 DIST itoa-1.0.15.crate 11231 BLAKE2B 17c261baf95bff2f6cf0dbc33ab78ebbab0cf5dc56aeb7f8977377af868deb5957918f1763c2fe8c080e931489ea89ebcc16b3ebd976eeeb7663ff74989a1071 SHA512 158ca5dd4b04cb12d9292a4df63c72443adaf5aab1bd9aacdb964dc58878d847a64251f84897cb25c34648d4c973b44fef5b4c175d7c04cabc2c13b4631c2e42 -DIST libc-0.2.172.crate 791646 BLAKE2B 3a6eb0eba1e31cf89ac792a8e667c0f68b2a0e62502710ffe77c2b06321103a30ffdc4516c0a91fd3ff44508d5304dfb04ab919bd3e723e34c66b560a20e7f86 SHA512 7bfe400ee65c1b7e540fd19a9b7eb1429a66863d5e94ee7caa83a227d19a4143316d3b401013fb7f88c8e4cdb1a40cfbd58826597c8e23799e02e29553b67e34 DIST libc-0.2.175.crate 788728 BLAKE2B dfbcc891a6da7d327916883deec54dbcb0ee5e7fda0b805926f06088dbbbef0520a838c07a62ea075d6a5a035994ea8130efbbc88e08b928c13b06bc5cf75bb9 SHA512 02fa1b6e61ecec3b626f3c802b53e7f46c98558f6e8c810b46d7322c2e4825f1be87068942ac81c07a2188356c6e2b6836b0dddd784396e43ab3712a62cd17ea DIST memoffset-0.9.1.crate 9032 BLAKE2B 0aab55fe084134bb599c52d77c96400db40949b1013e7037747ada4fcec8dc4a124b6f3755f04b36e057eb2fb4a6bd6f07d6eebcf166f8a71405ef434d802fbf SHA512 3a236c0f481e36973b9f805e454c2efe4dd375e6b4ee406b57145136c70d5fbf4e1183d563ebf3b5fbde7363bbf5f08f0d88e507aae5bda4cc75664ecd0e33aa DIST once_cell-1.21.3.crate 34534 BLAKE2B 3578aaef305cad2fdffdc40c392775a3540bfab3f3aeafd22466d9507bf8346b9fcc200929d48525b051070c0aaa423ecbcaa12868b34dca007991effb224166 SHA512 32a87506c6f4598f3ca2c88556014ef2093d5db9a08602335e847caa537a866492fa74c894e7e1da2e4289a1d3dbffcb90a9e37a4a1453203832f434b8206990 -DIST openssl-0.10.72.crate 283852 BLAKE2B a221ff329fd068da6d88b98e32c0fb9750e074fd87eb261614ba08771df0879fefb80ed0b60a26fcf4ef808e0ff6484f7e4fcbc38146186d30ca4e74d17fa803 SHA512 ee4cfb893e7112fd274baef3283f3bc44385a3e014c9bb4eb24ffc6153fe56e2f66807d8d5874f97254390041cec3affc41bf7b2bc7e5d39bf60413ffb747786 -DIST openssl-0.10.73.crate 283994 BLAKE2B 06675b7c6bb1c73b10826577d7d928f4d001494a4c2add24a593c8dd82731a91974147981a63f56b2f11f769b1b93194b9cbcd14e77a578d6d649ad8119e856c SHA512 be1b5384ba72984fbca1aec534764d7b5180cbafe33433cda9662c492fcf219a3a3fe4148fc3c0702aeef63e2570ae7f27dc6a8dba95c7471d4a4c20f7ab1926 DIST openssl-0.10.74.crate 285425 BLAKE2B 2d736aa20701a97230f10f4a75b3c3c0cea0a86b52facbb639dfe425ea052a4bd0abf494708ab96aad276000736ab4ce7dd8c47951f01181cd17c6e0be692107 SHA512 02f60bf13826a4225b4c849d7dee33fbb648c173bc32bc2139a50c38fdf5aeb9d5cfb092d86edeb6f281206454ccf2b41cc23c7af74ed976423b933eefe50867 DIST openssl-macros-0.1.1.crate 5601 BLAKE2B 69dc1c1f3b7bc4f934cae0dce64c3efa501162e5279efd6af3b74f7a7716c04b6996b306b310f1c045cfa2eff2895314a47ecbb020a817e461c6d77d0bc11e92 SHA512 57e75c84f78fb83f884eeaedb0dd135ecb40192dad2facd908e6a575c9b65b38a2c93bca4630e09ea5a82c77d8bc8364cb2f5778cbfe9d8f484cafe3346b883c -DIST openssl-sys-0.9.108.crate 78190 BLAKE2B 202b0a380bb8d462842c7c2190d8d61e3d959b10aba462a75a3f1722a2a975f6f5eaaa30078dde7b56a7c2bb3a93d776b30cf3f718a8e723c2ef14d9ca400294 SHA512 f1d2cbf26b6bf7faf840e9afa6e86e7a38a303c169f54c098433c106cfb3aa264a692419ef2ca31f734551b5f7b97cffb1a3e28984eec0324cfb60e9cf3f1865 -DIST openssl-sys-0.9.109.crate 78247 BLAKE2B 3bf1da4b999a0c9a0891baafccdc541809169921837166b31381590aedc5356992cd71f21a374877dea4cf8015eaf5d8ac7c7ffccb11511893d5d0b8e57e037c SHA512 2dbb01e3b734554d85f9fedfbf9f3ef55132fdd5a328e2930ce056d05ed55a579c3fb12b907f3989ffe15344e7f1633ccd610524d56fe6c9a687acba2d0e6fc9 DIST openssl-sys-0.9.110.crate 80412 BLAKE2B c59794f0b31013231829db4c9b495a5083b4adcaed5779b4ee013bafe4667fdcee12ef7e2a0c30d4abbe340ef036dbf8c40a41e8293231d7f4137c9bc7bfa820 SHA512 8e43f0cc67ebb084c18df410322df75bc384adfcf8fcafe2b0febcd6ee47a1825037db880012c7076c7b11153a101d6d0006437ba0d53a7182f1bcdf51af8d65 DIST pem-3.0.5.crate 18140 BLAKE2B 1a19acf6c5d4dafb4411688d87b668d2ea1abe8f561dc2d5de8894066c06e32c5c1392d0e6963d07bab27368a1b39a4f0520485500a1312e2ae43b5c0959ab16 SHA512 09b4a75bda0df6153799e56cdf175d88b7c88b49fda3e19fffba5aa821e433bf3bc9f254f5016131d3dd2d3146c3f6b73e71e04b81ac7d52b581c638cd60d0ff DIST pkg-config-0.3.32.crate 21370 BLAKE2B 74ded191f066bc223739b3d4afec58f23de57566e7604e3dd62001d9a095a7b6a3633fdb01fdc46960c8134a694d6bf097d9ecec62b38c4f14acafbbabd6e893 SHA512 59569110185fa665f76a13e884a67ad1578c55246abacfc18cb9f037b2d2d9ec3f2078a3adfe5cc82a451892c9ad55f918ee01362a741f57dc9ff6846a4e32e5 -DIST portable-atomic-1.11.0.crate 181258 BLAKE2B 627bd7c306f6c4d7991abd9f995b7e0ce110a7ace738690c287a43ce3b979691214e525876f8ace0c2f0d10d781fba95c7d3bf29aea28e09b05b06f4764db03f SHA512 71774f8308963c5399095c6b755befdf9ff3d28f9529b4bae1fe0f2aba733339a267aa6f0ff854e59fa5044a9b0c2c86bad3bc4fcaa951724c839b0d6a22041e DIST portable-atomic-1.11.1.crate 185506 BLAKE2B 953bb1f2059dc1d891305eb89945f1f6a172fa50972725aee499de72b5dd9b4ad8ccefe4e891183ff8e6b64f4d1bb45ec33b06e0f5af34c940f817b290f746d9 SHA512 4c037ae0b4aef43077bdbf803389bc078d963f20d023e2e1d339a54f67fa9b27c174e7c1b6eca8881ecf301e30c431632d2c0dcedfb5b19552892fac0f81e2e1 DIST proc-macro2-1.0.101.crate 53886 BLAKE2B db566c4fb6a197e0aa45cc074310853eaa24ceeafe9fb91f2014ba47cf6b1cbc34e4e9391456c946587540c8e270e1a37f5195cf03bd15ea5d4f171bba9772db SHA512 3171c807d24371da2931f9c706fb3129bb9bf3ac40418e5d14cfc372baf96e5fee9ede72091163858e3ba0b4f88594efa1031b0bb7128ca68e7b847dead6856c -DIST proc-macro2-1.0.95.crate 51820 BLAKE2B 93229d80556ec03bce4031607d13c7902cacc2d7e2586a692ffe8543d52e3f3ba253c9c311ddedf6d9348ce8758ae8ff64577675cda2dac557f936a328de47e3 SHA512 f78e4d47ecd29c1b2315554705e445507bbfb9449afd0bf1b74df28f266ac6382ca8c3ce135ddc55c989eaee64d1794a0933a941c8ff55f543fa21c400016547 -DIST pyo3-0.25.0.crate 1120850 BLAKE2B 6f373129d032e6980d058ec5dbfea58a7ce0cb8ed2b32aa852a14746cfd3a541b02286676c934a5d7f7bc1bea03e986e93e44de42114f7620b487977c0092d85 SHA512 83336d284eefdef5bc26dec4880e21c608a001b4676b3628eb59b7c0011fb672ca81fca035666b714eeb158809064f9b5b0720802045d5ff8fc9f6af02813c30 DIST pyo3-0.26.0.crate 1151579 BLAKE2B bcc8236785502928bf4a0b7a320e0a8f3d6140c562de4351a52d015aaebb8dd6b4d68fe607c8ea13ec66941c8f01d2c18c4249adfacb521355d4bf158667f3a3 SHA512 e073a4d893f88aa0301ef0ead78048137515edd93c490e6dccbc301ff65a208534c65c1d216b04639d4b1ec1e4b69bc87bd34974e5d0659134c28dcce589c194 -DIST pyo3-build-config-0.25.0.crate 34122 BLAKE2B ba098ff1c963c43d0cd1fdfaec43573ee0d9afff7cc010b7b371504ab66e1fec9233bab04c8c7656c382366d622589d0d5e865a8a271c68a9831ca657b49fcb9 SHA512 f6580bcc12bf8235bd8bdc09908f861645adfcdee31cf88d6443e628601bf3107c1d823c09dacb8e1bdaa171ae49f15e19811b9752600b799a4e86cdea081d40 DIST pyo3-build-config-0.26.0.crate 34309 BLAKE2B 5ea8b51da2f425674cd3bfcc1090ffdd08da01d2161dc66b08995c20cc859422f9f84077c545e5a0580182910aeb9dbba97838915148a82b86948d1cca3c8722 SHA512 a982d0a0baa4af58c2cef7c0c4b2671e3f559ca7f30586eda9fbd05e842efa2bfea0089ddbc729225b848871f6a25f85e86576e1dff519192ba289cd92c6aa8b -DIST pyo3-ffi-0.25.0.crate 77991 BLAKE2B 0474051570bf71070eab2578e0f9278327ccc48510419d292a81887fffad753ba434db6b795536512a688426eff42ea9805f99b1a3237ec927f6c731033850b2 SHA512 e03cb71493c898408a0692ba7fb4cd704e48c307f5115159f3375fae879e46f5cd7536325d70e7dbd3aeca8ea282a0fb5b5ac609bc807e8b9cb6abbd3a9a2ca5 DIST pyo3-ffi-0.26.0.crate 78247 BLAKE2B 65f1c399bc763bf8afc36ccac27d28242ebcccebd08ab8d9b3165ca5c9abb10f76e76fe5a250aa1e0cdc1d1e8a613160660f07bc0dbc2812675acb9dfc8e89c2 SHA512 91c2ae828e997dee5e48d839794727e94576228e9329c358a3bc77a59f8f37fa0ae6c2579229782b3f46ab90725844ce9194b9de4d3849d824adf1d40743bf7e -DIST pyo3-macros-0.25.0.crate 8876 BLAKE2B 09c37cc5bdaec6859461a7bb4d1c28d0ddd77a448fb5097275fe7be373897900e2dcdb1c43eb4cc915e1089ac1204f4a7155c4b69478b0778e179aded1449ff0 SHA512 ee1218b6981d94a228bf55f31f0131c094728b12c19b312a77386cace2c4768ad8fc8a1a1999bf27c6a30012e20a1eb7a574d918ccacc421930c12cb1a6386ef DIST pyo3-macros-0.26.0.crate 8906 BLAKE2B 60eef72d27b5bc922b75f71ae24bb6f380288cb3a619bf2940b0de47b27e86cce0ffdb1fbdc9c0540d3f15c9df4884497aa1e6efec0f1579ac722b414818a428 SHA512 07bcddba0926c3dff7629da3260f9a38593fbb337b6a68d55c223f5944d912885e5319cd635ae1785026fed4adea1fcc19695ae83aca5bea127c5a8868fd2c43 -DIST pyo3-macros-backend-0.25.0.crate 75089 BLAKE2B ea4d87e16616782c60f46f97d87a002ea2873a2ab6f7335da68bab32d636988fa30834c946943d4c56c6e5992c78ba6dc2cf8b613c2a402218599ef3e7a6c5be SHA512 dc2e567a09e746893d7cea57aa456124df31b1e3cb25f5b1fabdc97cd2ae73eea1d57aa642268bdbef3dc1ba0e383893d1b5dfd9cf1f3e818f77b9fc0ef2c486 DIST pyo3-macros-backend-0.26.0.crate 81809 BLAKE2B 73885035855daf00b001e97e0a5ebe09412d212c8f01aa4db6638ef09990bf1bccbacf2e5a7e6ec21929bb1c2beba06587ecdb6ee954eda9e9c51c6c276cea95 SHA512 4146011a8ef18ecaa44b425eebe6e5e1370945063b98aaa83452e57b66aefbf5d483367b1d4d44aa5091303c4ba7f568c6428ecec0cfa6c90ba41631d4e99367 DIST quote-1.0.40.crate 31063 BLAKE2B 09036ff3e5ebbd775c466bb936de91d4c070481eb4b98c62a4cddcda57cd7b67d63f979b321f6ec64aabee3f5da6c28e7a3efb83f4647768ba578f1bd0bd0bdb SHA512 45a76e22a2b0bec47e4ba73c3b73cc41d821dfcce9876134c5d8eed514da214aee4ce7612e372c8709f888c0d8b9b7e5442f27adb7a59f3571f0339ed7e2ac99 DIST self_cell-1.2.0.crate 16883 BLAKE2B 56bd187fabc138c530aa23dfc69a330a7d0a8f86609801924fd1f4b0cefc43a99a8ba21d05e59272c9d32b83405b4c980df4f01e529772b760a9564dd8eb0c0a SHA512 41addc9b737d0379c0236b1821d6051d31dca6a76f463e6e56c3bac9015da4243f9fedc3d57e051f68f6f0aa610383a0b2cade07b1ea17e92173e2088a625af0 DIST shlex-1.3.0.crate 18713 BLAKE2B 18800c364d3a628f1a3125097ea82fe6286550c2997235df0bf8483a3906aacabc81308cb239887d46ba2f457cc6f8acd5aca78316707eea5098cd5666aea67d SHA512 5c8cedbe666a14b8a0874defb9208146ce64579cde52ed483e4a794cac5dde6a24bf8d684404edff582f842e1fd4fa3fbeddbe074f191e4ec4aa517aa456fe8a -DIST syn-2.0.101.crate 299250 BLAKE2B 7018cdede66dca82e7d7a7e07e52a178687957fcfd69f1a2862094497d2fb9d78ada14b94761679bbc5f6c76c808a63e948ed071e4f65c2f9580a40bf58c9426 SHA512 05e4233a51f4d229dd4c9bd23c5224c42ec5554d02fd316dad10dfdb876aa1d379c7ea30b1ace979537da91ee746ca4fdcef7690885f83fd41ec8c9dc5984101 DIST syn-2.0.106.crate 301514 BLAKE2B 6b28b30ee067c23dc4bd1b38365d14c1700245c974e785173965b0822301966d642b36bdda25210d61f17a99fc71eb81e29a56c89d1649773908bae32778fb1f SHA512 e07e1058770fa3f1039eaf335340cefb597c0dd11bb90fec9fa777ca5815d0e0bb1711bb4db52cac77e205dd68fbe2bce0e1aa9895c2a52a1ea6d7758d13424c -DIST target-lexicon-0.13.2.crate 27923 BLAKE2B 0761f0ffdc23b9c9df86b384d59611c7b8b5e29ff068f03367ad2fe84cfb6d11e1af149b9338236978e9566fedc51387db9f239d2a602db41045ac3db907faec SHA512 d25e3cc3d679cb6b6f24c03e0c24db9d6ca31b8ed42ac9531bd7637557fbba225a6c8ac4f68a8eaf3569195814d599e668a968afbc73b940a77cbc27552cc90a DIST target-lexicon-0.13.3.crate 28498 BLAKE2B 397315667737abde41949081f8377f704c3a1105790162249a9f0c08b60f012e67d66550e9063d900ac98f5191d13c5ed23d1a8045f99373e7a673a3cfc029e7 SHA512 23422df6edb2a8cb0a9f048864faf76ccb27d6e97fbed7b208b77206941b196f155896a0381150e387142e976439a0a296dcf4cbb4df6bc0e11c65f97f979443 -DIST unicode-ident-1.0.18.crate 47743 BLAKE2B 517ab42a847020515b2b871844d0571ea672340f89a762631a791eac18935ac122122fa5566e58b99ab47de179eadb5298e8ff1d05b123c4e93b7fa989c8e31f SHA512 d11f89fb696f9e2953c96a40b5478832651b268c83b9c7a700b07e768e795d6e8dc346597d1226df21219d36866768d1f640bd8edb68db8bd3d5d437b2bfd324 DIST unicode-ident-1.0.19.crate 47480 BLAKE2B d1b9d26833fcd1f3a8498abe2f4ba4202e4547315e48aa927c0f6e4a760c6c7000ff0c18d0cf45af362323c42843d745958c1b0419835f39e13dbc1559487026 SHA512 b17fcf6bffdb4745e0b1bf4983a0dcc4c84f8b4e2c2c618eefbbeae83f94ec75df87b55f9e2dede8c3b4c6e22107fcfc589475c0cbc2c58dfb8630db8d362183 DIST unindent-0.2.4.crate 7422 BLAKE2B 2e7870cd4f78240dbb1e5fb9c0f9b55c57bb40242fe668f105a0e862f1d6300e31efbffe0cdff676a5f96a8d19dfb148f88bfef1cd8a710556d777fd0f4ee37f SHA512 58bd4fd20a0b0a7200e0ea3ea70553cea135a5a8f7a2fb178520c41228f435becce4b9981019b7c73a17df87a2ee9b2a47c4cec29a3011bfe848d48b2473761b DIST vcpkg-0.2.15.crate 228735 BLAKE2B 6b6bacd9a7fa38919241f45a97f58cae957e58d3aac99df208a26aa718e4f1644f4ccefa31b09151e5c1952288e0e5837c363918b98c7f55079a948a952c1c50 SHA512 7322a21e8811b2fe4e79e09dc321458068ecdf1953f05d36233f3278ecc0b1dfc64194db7010dd46fcf692285f42475beb090c6c6cac0c8f9fe0eb5c770e3172 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-45.0.6.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-45.0.6.ebuild deleted file mode 100644 index 480bf10f0be..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-45.0.6.ebuild +++ /dev/null @@ -1,133 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -CARGO_OPTIONAL=yes -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=maturin -PYTHON_COMPAT=( python3_{11..14} pypy3_11 ) -PYTHON_REQ_USE="threads(+)" - -CRATES=" - asn1@0.21.3 - asn1_derive@0.21.3 - autocfg@1.4.0 - base64@0.22.1 - bitflags@2.9.1 - cc@1.2.23 - cfg-if@1.0.0 - foreign-types-shared@0.1.1 - foreign-types@0.3.2 - heck@0.5.0 - indoc@2.0.6 - itoa@1.0.15 - libc@0.2.172 - memoffset@0.9.1 - once_cell@1.21.3 - openssl-macros@0.1.1 - openssl-sys@0.9.108 - openssl@0.10.72 - pem@3.0.5 - pkg-config@0.3.32 - portable-atomic@1.11.0 - proc-macro2@1.0.95 - pyo3-build-config@0.25.0 - pyo3-ffi@0.25.0 - pyo3-macros-backend@0.25.0 - pyo3-macros@0.25.0 - pyo3@0.25.0 - quote@1.0.40 - self_cell@1.2.0 - shlex@1.3.0 - syn@2.0.101 - target-lexicon@0.13.2 - unicode-ident@1.0.18 - unindent@0.2.4 - vcpkg@0.2.15 -" - -inherit cargo distutils-r1 flag-o-matic pypi - -VEC_P=cryptography_vectors-$(ver_cut 1-3) -DESCRIPTION="Library providing cryptographic recipes and primitives" -HOMEPAGE=" - https://github.com/pyca/cryptography/ - https://pypi.org/project/cryptography/ -" -SRC_URI+=" - ${CARGO_CRATE_URIS} - test? ( - $(pypi_sdist_url cryptography_vectors "$(ver_cut 1-3)") - ) -" - -LICENSE="|| ( Apache-2.0 BSD ) PSF-2" -# Dependent crate licenses -LICENSE+=" - Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT Unicode-3.0 -" -SLOT="0" -KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" - -RDEPEND=" - >=dev-libs/openssl-1.0.2o-r6:0= - $(python_gen_cond_dep ' - >=dev-python/cffi-1.8:=[${PYTHON_USEDEP}] - ' 'python*') -" -DEPEND=" - ${RDEPEND} -" - -BDEPEND=" - ${RUST_DEPEND} - >=dev-util/maturin-1.8.6[${PYTHON_USEDEP}] - dev-python/setuptools[${PYTHON_USEDEP}] - test? ( - dev-python/certifi[${PYTHON_USEDEP}] - dev-python/iso8601[${PYTHON_USEDEP}] - dev-python/pretend[${PYTHON_USEDEP}] - dev-python/pyasn1-modules[${PYTHON_USEDEP}] - dev-python/pytz[${PYTHON_USEDEP}] - ) -" - -# Files built without CFLAGS/LDFLAGS, acceptable for rust -QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/cryptography/hazmat/bindings/_rust.*.so" - -EPYTEST_PLUGINS=( hypothesis pytest-subtests ) -EPYTEST_XDIST=1 -distutils_enable_tests pytest - -src_unpack() { - cargo_src_unpack -} - -src_prepare() { - distutils-r1_src_prepare - - sed -i -e 's:--benchmark-disable::' pyproject.toml || die - - # work around availability macros not supported in GCC (yet) - if [[ ${CHOST} == *-darwin* ]] ; then - local darwinok=0 - if [[ ${CHOST##*-darwin} -ge 16 ]] ; then - darwinok=1 - fi - sed -i -e 's/__builtin_available(macOS 10\.12, \*)/'"${darwinok}"'/' \ - src/_cffi_src/openssl/src/osrandom_engine.c || die - fi -} - -python_configure_all() { - filter-lto # bug #903908 -} - -python_test() { - local -x PYTHONPATH="${PYTHONPATH}:${WORKDIR}/cryptography_vectors-${PV}" - local EPYTEST_IGNORE=( - tests/bench - ) - epytest -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-46.0.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-46.0.2.ebuild deleted file mode 100644 index 304f85dfb88..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-46.0.2.ebuild +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -CARGO_OPTIONAL=yes -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=maturin -PYTHON_COMPAT=( python3_{11..14} pypy3_11 ) -PYTHON_REQ_USE="threads(+)" - -CRATES=" - asn1@0.22.0 - asn1_derive@0.22.0 - autocfg@1.5.0 - base64@0.22.1 - bitflags@2.9.4 - cc@1.2.37 - cfg-if@1.0.3 - find-msvc-tools@0.1.1 - foreign-types-shared@0.1.1 - foreign-types@0.3.2 - heck@0.5.0 - indoc@2.0.6 - itoa@1.0.15 - libc@0.2.175 - memoffset@0.9.1 - once_cell@1.21.3 - openssl-macros@0.1.1 - openssl-sys@0.9.109 - openssl@0.10.73 - pem@3.0.5 - pkg-config@0.3.32 - portable-atomic@1.11.1 - proc-macro2@1.0.101 - pyo3-build-config@0.26.0 - pyo3-ffi@0.26.0 - pyo3-macros-backend@0.26.0 - pyo3-macros@0.26.0 - pyo3@0.26.0 - quote@1.0.40 - self_cell@1.2.0 - shlex@1.3.0 - syn@2.0.106 - target-lexicon@0.13.3 - unicode-ident@1.0.19 - unindent@0.2.4 - vcpkg@0.2.15 -" - -inherit cargo distutils-r1 flag-o-matic pypi - -VEC_P=cryptography_vectors-$(ver_cut 1-3) -DESCRIPTION="Library providing cryptographic recipes and primitives" -HOMEPAGE=" - https://github.com/pyca/cryptography/ - https://pypi.org/project/cryptography/ -" -SRC_URI+=" - ${CARGO_CRATE_URIS} - test? ( - $(pypi_sdist_url cryptography_vectors "$(ver_cut 1-3)") - ) -" - -LICENSE="|| ( Apache-2.0 BSD ) PSF-2" -# Dependent crate licenses -LICENSE+=" - Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT Unicode-3.0 -" -SLOT="0" -KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" - -RDEPEND=" - >=dev-libs/openssl-1.0.2o-r6:0= - $(python_gen_cond_dep ' - >=dev-python/cffi-2.0.0:=[${PYTHON_USEDEP}] - ' 'python*') -" -DEPEND=" - ${RDEPEND} -" - -BDEPEND=" - ${RUST_DEPEND} - >=dev-util/maturin-1.9.4[${PYTHON_USEDEP}] - dev-python/setuptools[${PYTHON_USEDEP}] - test? ( - dev-python/certifi[${PYTHON_USEDEP}] - dev-python/iso8601[${PYTHON_USEDEP}] - dev-python/pretend[${PYTHON_USEDEP}] - dev-python/pyasn1-modules[${PYTHON_USEDEP}] - dev-python/pytz[${PYTHON_USEDEP}] - ) -" - -# Files built without CFLAGS/LDFLAGS, acceptable for rust -QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/cryptography/hazmat/bindings/_rust.*.so" - -EPYTEST_PLUGINS=( hypothesis pytest-subtests ) -EPYTEST_XDIST=1 -distutils_enable_tests pytest - -src_unpack() { - cargo_src_unpack -} - -src_prepare() { - distutils-r1_src_prepare - - sed -i -e 's:--benchmark-disable::' pyproject.toml || die - - # work around availability macros not supported in GCC (yet) - if [[ ${CHOST} == *-darwin* ]] ; then - local darwinok=0 - if [[ ${CHOST##*-darwin} -ge 16 ]] ; then - darwinok=1 - fi - sed -i -e 's/__builtin_available(macOS 10\.12, \*)/'"${darwinok}"'/' \ - src/_cffi_src/openssl/src/osrandom_engine.c || die - fi -} - -python_configure_all() { - filter-lto # bug #903908 -} - -python_test() { - local -x PYTHONPATH="${PYTHONPATH}:${WORKDIR}/cryptography_vectors-${PV}" - local EPYTEST_IGNORE=( - tests/bench - ) - epytest -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-46.0.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-46.0.5.ebuild similarity index 83% rename from sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-46.0.3.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-46.0.5.ebuild index 87baa82c34d..b6bb5899e18 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-46.0.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-46.0.5.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -6,6 +6,7 @@ EAPI=8 CARGO_OPTIONAL=yes DISTUTILS_EXT=1 DISTUTILS_USE_PEP517=maturin +PYPI_VERIFY_REPO=https://github.com/pyca/cryptography PYTHON_COMPAT=( python3_{11..14} pypy3_11 ) PYTHON_REQ_USE="threads(+)" @@ -60,6 +61,8 @@ SRC_URI+=" ${CARGO_CRATE_URIS} test? ( $(pypi_sdist_url cryptography_vectors "$(ver_cut 1-3)") + $(pypi_provenance_url "${VEC_P}.tar.gz" cryptography_vectors "$(ver_cut 1-3)") + -> ${VEC_P}.tar.gz.provenance ) " @@ -101,7 +104,17 @@ EPYTEST_PLUGINS=( hypothesis pytest-subtests ) EPYTEST_XDIST=1 distutils_enable_tests pytest +PATCHES=( + # https://github.com/pyca/cryptography/pull/14319 + "${FILESDIR}/${PN}-46.0.5-stray-files.patch" +) + src_unpack() { + if use verify-provenance; then + pypi_verify_provenance "${DISTDIR}/${P}.tar.gz"{,.provenance} + use test && pypi_verify_provenance "${DISTDIR}/${VEC_P}.tar.gz"{,.provenance} + fi + cargo_src_unpack } @@ -126,7 +139,7 @@ python_configure_all() { } python_test() { - local -x PYTHONPATH="${PYTHONPATH}:${WORKDIR}/cryptography_vectors-${PV}" + local -x PYTHONPATH="${PYTHONPATH}:${WORKDIR}/${VEC_P}" local EPYTEST_IGNORE=( tests/bench ) diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cryptography/files/cryptography-46.0.5-stray-files.patch b/sdk_container/src/third_party/portage-stable/dev-python/cryptography/files/cryptography-46.0.5-stray-files.patch new file mode 100644 index 00000000000..e13bb4f560c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/cryptography/files/cryptography-46.0.5-stray-files.patch @@ -0,0 +1,48 @@ +From b89a7737e3f135333125b0984e75ea553a485203 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= +Date: Sun, 15 Feb 2026 17:47:48 +0100 +Subject: [PATCH] Fix installing stray files into site-packages +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Fix the `include` pattern in `pyproject.toml` not to install stray files +such as `CHANGELOG.rst`, `CONTRIBUTING.rst`, `docs` and `tests` straight +into site-packages. Apparently Maturin did not install them before due +to a bug, but it was fixed in maturin 1.12.0, leading to the files being +suddenly installed. + +Originally reported as https://bugs.gentoo.org/970090. + +Signed-off-by: Michał Górny +--- + pyproject.toml | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/pyproject.toml b/pyproject.toml +index e26b38628..8640cb6e5 100644 +--- a/pyproject.toml ++++ b/pyproject.toml +@@ -106,10 +106,10 @@ module-name = "cryptography.hazmat.bindings._rust" + locked = true + sdist-generator = "git" + include = [ +- "CHANGELOG.rst", +- "CONTRIBUTING.rst", ++ { path = "CHANGELOG.rst", format = "sdist" }, ++ { path = "CONTRIBUTING.rst", format = "sdist" }, + +- "docs/**/*", ++ { path = "docs/**/*", format = "sdist" }, + + { path = "src/_cffi_src/**/*.py", format = "sdist" }, + { path = "src/_cffi_src/**/*.c", format = "sdist" }, +@@ -121,7 +121,7 @@ include = [ + { path = "src/rust/**/Cargo.lock", format = "sdist" }, + { path = "src/rust/**/*.rs", format = "sdist" }, + +- "tests/**/*.py", ++ { path = "tests/**/*.py", format = "sdist" }, + ] + exclude = [ + "vectors/**/*", From 58877d3728d7dc3c434c5e83745537146913b610 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:51 +0000 Subject: [PATCH 084/291] dev-python/docutils: Sync with Gentoo It's from Gentoo commit 0e773061e61f7a28ef1e2b9c9e2c8884cdef3d5b. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-python/docutils/docutils-0.22.4.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.22.4.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.22.4.ebuild index 5012dfcda78..3c1a3cec656 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.22.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.22.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -17,7 +17,7 @@ HOMEPAGE=" # GPL-3+ only for emacs/rst.el LICENSE="BSD BSD-2 GPL-3+ PSF-2.4 public-domain" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" RDEPEND=" dev-python/pillow[${PYTHON_USEDEP}] From e4c1cb7b034d5dbb48d941b79b64472c305441b7 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:52 +0000 Subject: [PATCH 085/291] dev-python/ensurepip-pip: Sync with Gentoo It's from Gentoo commit 818a6c9caa7465af0c55dcf447422e05fbe2d53e. Signed-off-by: Flatcar Buildbot --- .../dev-python/ensurepip-pip/Manifest | 3 +- ...5.2.ebuild => ensurepip-pip-26.0.1.ebuild} | 20 +- .../ensurepip-pip/ensurepip-pip-26.0.ebuild | 191 ++++++++++++++++++ .../files/pip-26.0-test-wheels.patch | 74 +++++++ 4 files changed, 282 insertions(+), 6 deletions(-) rename sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/{ensurepip-pip-25.2.ebuild => ensurepip-pip-26.0.1.ebuild} (88%) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-26.0.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/files/pip-26.0-test-wheels.patch diff --git a/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/Manifest index 3d2fa10525d..ae87a228235 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/Manifest @@ -1,3 +1,4 @@ DIST flit_core-3.12.0-py3-none-any.whl 45594 BLAKE2B 7c6cb6eb03d45bbba27f27b3728881b57fe82dd38e03f884d3b7c46116eb2b9dd76f92bdaf7f594ef8ccbe12ec8f9a56424ff9e9fc7a839c4818a113fdf0c3d3 SHA512 790c12b1f43201e365fb3f8f2f0a54e1a578876799dfdf8bfeea679a25ea096bf62946d006618c1458ae6e37ce6d00998f37e9aba426d5ab80d32ef2d75da4e0 -DIST pip-25.2.gh.tar.gz 9121715 BLAKE2B 3bfe61d6d0d6f3a79c3fd801f5cb40b203fd12085d925ae7cde53adca3c5ee523fdfd9449546e1bc8ca719b3e8766cfef3162919e13a77f7adc0d20a951d11c7 SHA512 5cc65c9091fdda7905e26ce32ddaa3a1c2fd287d69fd3da67c814ba7e8e5be59301d8327c06cdca78c1b95f4a5b5f75c87f36a549022408cc0e8f9411c0db11e DIST pip-25.3.gh.tar.gz 9115712 BLAKE2B 87d848c497163a45ee3de8f6f75c80b5051b07062c5a15450ae98b59a6cebc6bf03ca8525d57929493f2cfeb28d5623401eba69f0bdfc734389efbb84eafdf53 SHA512 f50db092213ec3bb819d3da5669f73d119b5ec7f7ac5e8a587a17c27eafa32bc17a057df09389c526a3769ef3577f5553187d54ceffa89aed63f4b4498ff044e +DIST pip-26.0.1.gh.tar.gz 9227871 BLAKE2B 96a2fab2de472b3cde570f3bcbd6bc5e5c48ef2f0808ca9b2b6c0f57a611f723cd0f5d592b6b5f553fb57a6909459f57b4130f2451cd95c3b18678e02215e0c9 SHA512 3786df7522ea65bc20fb9885ce5c2ddc60200a536a1f754a8d7dc278115c73258863e4c51ac7e9a60dda0b70263730dc194f70e1e8f8d00178a8b3c724333bf0 +DIST pip-26.0.gh.tar.gz 9226836 BLAKE2B fe24bd8fca7fa2b64ed865a880a430c420a9e73e35a9f1f2405473d4778467f48a8bc0607c1423760ff23706d3e11ddfeb20cd5a7f6522530a679994278ee1d8 SHA512 62a62b2db4e7a6c795cf01ab553b94068f0d1c62470c1f5c2b3164344a84fa68f7854eec99d93b9f56193c61276d95d8af21a3cb6b78f0db4f013d9997e78199 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-25.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-26.0.1.ebuild similarity index 88% rename from sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-25.2.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-26.0.1.ebuild index 795aa03abe7..3dac6039603 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-25.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-26.0.1.ebuild @@ -1,14 +1,16 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -DISTUTILS_USE_PEP517=setuptools +DISTUTILS_USE_PEP517=flit # PYTHON_COMPAT is used only for testing PYTHON_COMPAT=( pypy3_11 python3_{11..14} ) PYTHON_REQ_USE="ssl(+),threads(+)" -inherit distutils-r1 +inherit distutils-r1 pypi + +FLIT_CORE_PV=3.12.0 MY_P=${P#ensurepip-} DESCRIPTION="Shared pip wheel for ensurepip Python module" @@ -19,12 +21,15 @@ HOMEPAGE=" " SRC_URI=" https://github.com/pypa/pip/archive/${PV}.tar.gz -> ${MY_P}.gh.tar.gz + test? ( + $(pypi_wheel_url flit-core "${FLIT_CORE_PV}") + ) " S=${WORKDIR}/${MY_P} LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="test test-rust" RESTRICT="!test? ( test )" @@ -78,7 +83,7 @@ python_prepare_all() { local PATCHES=( # remove coverage & pytest-subket wheel expectation from test suite # (from dev-python/pip) - "${FILESDIR}/pip-25.2-test-wheels.patch" + "${FILESDIR}/pip-26.0-test-wheels.patch" ) distutils-r1_python_prepare_all @@ -86,6 +91,7 @@ python_prepare_all() { if use test; then local wheels=( "${BROOT}"/usr/lib/python/ensurepip/{setuptools,wheel}-*.whl + "${DISTDIR}/$(pypi_wheel_name flit-core "${FLIT_CORE_PV}")" ) mkdir tests/data/common_wheels/ || die cp "${wheels[@]}" tests/data/common_wheels/ || die @@ -151,6 +157,10 @@ python_test() { # unexpected tempfiles? tests/functional/test_install_config.py::test_do_not_prompt_for_authentication tests/functional/test_install_config.py::test_prompt_for_authentication + # wrong path + tests/functional/test_install.py::test_install_editable_with_prefix_setup_py + # wrong exception assumptions + tests/unit/test_utils_datetime.py::test_parse_iso_datetime_invalid ) ;; esac diff --git a/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-26.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-26.0.ebuild new file mode 100644 index 00000000000..3dac6039603 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-26.0.ebuild @@ -0,0 +1,191 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +# PYTHON_COMPAT is used only for testing +PYTHON_COMPAT=( pypy3_11 python3_{11..14} ) +PYTHON_REQ_USE="ssl(+),threads(+)" + +inherit distutils-r1 pypi + +FLIT_CORE_PV=3.12.0 + +MY_P=${P#ensurepip-} +DESCRIPTION="Shared pip wheel for ensurepip Python module" +HOMEPAGE=" + https://pip.pypa.io/en/stable/ + https://pypi.org/project/pip/ + https://github.com/pypa/pip/ +" +SRC_URI=" + https://github.com/pypa/pip/archive/${PV}.tar.gz -> ${MY_P}.gh.tar.gz + test? ( + $(pypi_wheel_url flit-core "${FLIT_CORE_PV}") + ) +" +S=${WORKDIR}/${MY_P} + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test test-rust" +RESTRICT="!test? ( test )" + +BDEPEND=" + ${RDEPEND} + test? ( + +Date: Thu, 31 Jul 2025 05:10:08 +0200 +Subject: [PATCH] Disable coverage & socket plugins inside test venvs + +--- + tests/conftest.py | 33 --------------------------------- + 1 file changed, 33 deletions(-) + +diff --git a/tests/conftest.py b/tests/conftest.py +index 1b65e9d57..69b6f38c9 100644 +--- a/tests/conftest.py ++++ b/tests/conftest.py +@@ -440,25 +440,6 @@ def setuptools_install( + return _common_wheel_editable_install(tmpdir_factory, common_wheels, "setuptools") + + +-@pytest.fixture(scope="session") +-def coverage_install( +- tmpdir_factory: pytest.TempPathFactory, common_wheels: Path +-) -> Path: +- return _common_wheel_editable_install(tmpdir_factory, common_wheels, "coverage") +- +- +-@pytest.fixture(scope="session") +-def socket_install(tmpdir_factory: pytest.TempPathFactory, common_wheels: Path) -> Path: +- lib_dir = _common_wheel_editable_install( +- tmpdir_factory, common_wheels, "pytest_subket" +- ) +- # pytest-subket is only included so it can intercept and block unexpected +- # network requests. It should NOT be visible to the pip under test. +- dist_info = next(lib_dir.glob("*.dist-info")) +- shutil.rmtree(dist_info) +- return lib_dir +- +- + def install_pth_link( + venv: VirtualEnvironment, project_name: str, lib_dir: Path + ) -> None: +@@ -474,8 +455,6 @@ def virtualenv_template( + pip_src: Path, + pip_editable_parts: tuple[Path, ...], + setuptools_install: Path, +- coverage_install: Path, +- socket_install: Path, + ) -> VirtualEnvironment: + venv_type: VirtualEnvironmentType + if request.config.getoption("--use-venv"): +@@ -489,10 +468,6 @@ def virtualenv_template( + + # Install setuptools, pytest-subket, and pip. + install_pth_link(venv, "setuptools", setuptools_install) +- install_pth_link(venv, "pytest_subket", socket_install) +- # Also copy pytest-subket's .pth file so it can intercept socket calls. +- with open(venv.site / "pytest_socket.pth", "w") as f: +- f.write(socket_install.joinpath("pytest_socket.pth").read_text()) + + pth, dist_info = pip_editable_parts + +@@ -505,14 +480,6 @@ def virtualenv_template( + # detects changed files. + venv.site.joinpath("easy-install.pth").touch() + +- if request.config.getoption("--cov"): +- # Install coverage and pth file for executing it in any spawned processes +- # in this virtual environment. +- install_pth_link(venv, "coverage", coverage_install) +- # zz prefix ensures the file is after easy-install.pth. +- with open(venv.site / "zz-coverage-helper.pth", "a") as f: +- f.write("import coverage; coverage.process_startup()") +- + # Drop (non-relocatable) launchers. + for exe in os.listdir(venv.bin): + if not exe.startswith(("python", "libpy")): # Don't remove libpypy-c.so... From ae09c7c85e5325626046cd78b406b0d09a304972 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:52 +0000 Subject: [PATCH 086/291] dev-python/ensurepip-setuptools: Sync with Gentoo It's from Gentoo commit e0d03747b3555a2b5c6c98838383f7b9e7843bcc. Signed-off-by: Flatcar Buildbot --- .../dev-python/ensurepip-setuptools/Manifest | 3 + .../ensurepip-setuptools-80.10.2.ebuild | 134 +++++++++++++++++ .../ensurepip-setuptools-81.0.0.ebuild | 137 ++++++++++++++++++ .../ensurepip-setuptools-82.0.0.ebuild | 137 ++++++++++++++++++ 4 files changed, 411 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/ensurepip-setuptools/ensurepip-setuptools-80.10.2.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/ensurepip-setuptools/ensurepip-setuptools-81.0.0.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/ensurepip-setuptools/ensurepip-setuptools-82.0.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-setuptools/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-setuptools/Manifest index 36450563226..24c40d8d6c3 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-setuptools/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-setuptools/Manifest @@ -1,2 +1,5 @@ DIST setuptools-79.0.1-py3-none-any.whl 1256281 BLAKE2B 8ae51bdd1c0ccada116757c2bd765225fcf4bedc7ada18567ae12f09b6978cdbcddd4f635a39a5568b6d3ed4388e4f73af5c33a7060f2ac0d0907fc82d8fd74f SHA512 fef6cfc6f95a5bb7320f1680e1c665cb8d9a4e4227cde4d8aab8a50bed4bcf04320085b9d7d5343359f887008db5c5a861e57f3d08b7b0b2311a28adaeee6b4a +DIST setuptools-80.10.2.tar.gz 1200343 BLAKE2B 575eacccf3f9f846658d55d55425263d8847419644e62506b9e953c5a5db541dc6b3d8c4fcf096ec1e46406ecad545569111dc265aa8474ba17ebe57a10b382d SHA512 7dbc657878b418a9bdba124e5b8f98228af0590ffbb02c6396ac5b3d84be8f04b327780a7b1f9fa223d4c179004e822e2b00eec673f8eeb700b08b095ff6491d DIST setuptools-80.9.0.tar.gz 1319958 BLAKE2B ab367912eec92b0d1251916d09c1dd2e311767eec87225beaff870dff923b47ba1732d2f7393b7d9e55d1ff1249c612e4403019e0021048951f9fc3b775c04c9 SHA512 36eb1f219d29c6b9e135936bde2001ad70a971c8069cd0175d3a5325b450e6843a903d3f70043c9f534768ebeab8ab0c544b8f44456555d333f1ed72daa5c18b +DIST setuptools-81.0.0.tar.gz 1198299 BLAKE2B a92fa15e03c99f6d7acbc0a24e6d3b4b31d514c031195b1dd0ae238611c44c3c979847c45437e5e4221fb8f750a7264fb55235ee7d4a8207ef19a67306d5360c SHA512 4dda2f0796d1a32d160e0786fc6ebb9908483e16edac6b0335df4779a0a8331f13b70fbf69986a27cc8f6ff10c1f696599059710fef99f36ff1e766f04220466 +DIST setuptools-82.0.0.tar.gz 1144893 BLAKE2B dae5c129ba4f490f7e9e7cfc42ff4147010fcd2f63e7e5bf6635a4153e5c3882f2ee265f01baa23d8c0f6c562c90c5408a998db0b95e5ea9c5a2fade167059d5 SHA512 52424f813bb8efa1d3aa8cb910338d29c36c6a641f7ded91d298c1abe7c1a24d572c60c14c028f3825af29b46d57a4ee454845b1d22b73b03278a9500d957dd9 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-setuptools/ensurepip-setuptools-80.10.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-setuptools/ensurepip-setuptools-80.10.2.ebuild new file mode 100644 index 00000000000..f801cf0b808 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-setuptools/ensurepip-setuptools-80.10.2.ebuild @@ -0,0 +1,134 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=standalone +PYPI_PN=${PN#ensurepip-} +# PYTHON_COMPAT used only for testing +PYTHON_COMPAT=( python3_{11..14} pypy3_11 ) +PYTHON_REQ_USE="xml(+)" + +inherit distutils-r1 pypi + +DESCRIPTION="Shared setuptools wheel for ensurepip Python module" +HOMEPAGE=" + https://github.com/pypa/setuptools/ + https://pypi.org/project/setuptools/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + ${RDEPEND} + test? ( + >=dev-python/build-1.0.3[${PYTHON_USEDEP}] + >=dev-python/ini2toml-0.14[${PYTHON_USEDEP}] + >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}] + >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-path-3.7.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-test-5.5[${PYTHON_USEDEP}] + dev-python/pip[${PYTHON_USEDEP}] + dev-python/pyproject-hooks[${PYTHON_USEDEP}] + >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] + >=dev-python/virtualenv-20[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-{home,subprocess,timeout} ) +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +declare -A VENDOR_LICENSES=( + [autocommand]=LGPL-3 + [backports.tarfile]=MIT + [importlib_metadata]=Apache-2.0 + [jaraco_context]=MIT + [jaraco_functools]=MIT + [jaraco.text]=MIT + [more_itertools]=MIT + [packaging]="|| ( Apache-2.0 MIT )" + [platformdirs]=MIT + [tomli]=MIT + [wheel]=MIT + [zipp]=MIT +) +LICENSE+=" ${VENDOR_LICENSES[*]}" + +src_prepare() { + distutils-r1_src_prepare + + # Verify that we've covered licenses for all vendored packages + cd setuptools/_vendor || die + local packages=( *.dist-info ) + local pkg missing=() + for pkg in "${packages[@]%%-*}"; do + if [[ ! -v "VENDOR_LICENSES[${pkg}]" ]]; then + missing+=( "${pkg}" ) + else + unset "VENDOR_LICENSES[${pkg}]" + fi + done + + if [[ ${missing[@]} || ${VENDOR_LICENSES[@]} ]]; then + [[ ${missing[@]} ]] && + eerror "License missing for packages: ${missing[*]}" + [[ ${VENDOR_LICENSES[@]} ]] && + eerror "Vendored packages removed: ${!VENDOR_LICENSES[*]}" + die "VENDOR_LICENSES outdated" + fi +} + +python_compile() { + # If we're testing, install for all implementations. + # If we're not, just get one wheel built. + if use test || [[ -z ${DISTUTILS_WHEEL_PATH} ]]; then + distutils-r1_python_compile + fi +} + +python_test() { + local EPYTEST_DESELECT=( + # TODO + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors + # TODO, probably some random package + setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass + # relies on -Werror + setuptools/_static.py::setuptools._static.Dict + setuptools/_static.py::setuptools._static.List + # Internet + setuptools/tests/test_namespaces.py::TestNamespaces::test_mixed_site_and_non_site + setuptools/tests/test_namespaces.py::TestNamespaces::test_namespace_package_installed_and_cwd + setuptools/tests/test_namespaces.py::TestNamespaces::test_packages_in_the_same_namespace_installed_and_cwd + setuptools/tests/test_namespaces.py::TestNamespaces::test_pkg_resources_import + # broken by warnings from setuptools-scm + setuptools/tests/config/test_apply_pyprojecttoml.py::TestPresetField::test_scripts_dont_require_dynamic_entry_points + ) + + case ${EPYTHON} in + pypy3.11) + EPYTEST_DESELECT+=( + # fails and breaks other tests + setuptools/tests/test_editable_install.py + ) + ;; + esac + + local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH} + epytest -o tmp_path_retention_policy=all \ + -m "not uses_network" setuptools +} + +src_install() { + if [[ ${DISTUTILS_WHEEL_PATH} != *py3-none-any.whl ]]; then + die "Non-pure wheel produced?! ${DISTUTILS_WHEEL_PATH}" + fi + # TODO: compress it? + insinto /usr/lib/python/ensurepip + doins "${DISTUTILS_WHEEL_PATH}" +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-setuptools/ensurepip-setuptools-81.0.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-setuptools/ensurepip-setuptools-81.0.0.ebuild new file mode 100644 index 00000000000..b21255f360c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-setuptools/ensurepip-setuptools-81.0.0.ebuild @@ -0,0 +1,137 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=standalone +PYPI_PN=${PN#ensurepip-} +# PYTHON_COMPAT used only for testing +PYTHON_COMPAT=( python3_{11..14} pypy3_11 ) +PYTHON_REQ_USE="xml(+)" + +inherit distutils-r1 pypi + +DESCRIPTION="Shared setuptools wheel for ensurepip Python module" +HOMEPAGE=" + https://github.com/pypa/setuptools/ + https://pypi.org/project/setuptools/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + ${RDEPEND} + test? ( + >=dev-python/build-1.0.3[${PYTHON_USEDEP}] + >=dev-python/ini2toml-0.14[${PYTHON_USEDEP}] + >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}] + >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-path-3.7.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-test-5.5[${PYTHON_USEDEP}] + dev-python/pip[${PYTHON_USEDEP}] + dev-python/pyproject-hooks[${PYTHON_USEDEP}] + >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] + >=dev-python/virtualenv-20[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-{home,subprocess,timeout} ) +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +declare -A VENDOR_LICENSES=( + [autocommand]=LGPL-3 + [backports.tarfile]=MIT + [importlib_metadata]=Apache-2.0 + [jaraco_context]=MIT + [jaraco_functools]=MIT + [jaraco.text]=MIT + [more_itertools]=MIT + [packaging]="|| ( Apache-2.0 MIT )" + [platformdirs]=MIT + [tomli]=MIT + [wheel]=MIT + [zipp]=MIT +) +LICENSE+=" ${VENDOR_LICENSES[*]}" + +src_prepare() { + distutils-r1_src_prepare + + # Verify that we've covered licenses for all vendored packages + cd setuptools/_vendor || die + local packages=( *.dist-info ) + local pkg missing=() + for pkg in "${packages[@]%%-*}"; do + if [[ ! -v "VENDOR_LICENSES[${pkg}]" ]]; then + missing+=( "${pkg}" ) + else + unset "VENDOR_LICENSES[${pkg}]" + fi + done + + if [[ ${missing[@]} || ${VENDOR_LICENSES[@]} ]]; then + [[ ${missing[@]} ]] && + eerror "License missing for packages: ${missing[*]}" + [[ ${VENDOR_LICENSES[@]} ]] && + eerror "Vendored packages removed: ${!VENDOR_LICENSES[*]}" + die "VENDOR_LICENSES outdated" + fi +} + +python_compile() { + # If we're testing, install for all implementations. + # If we're not, just get one wheel built. + if use test || [[ -z ${DISTUTILS_WHEEL_PATH} ]]; then + distutils-r1_python_compile + fi +} + +python_test() { + local EPYTEST_DESELECT=( + # TODO + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors + # TODO, probably some random package + setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass + # relies on -Werror + setuptools/_static.py::setuptools._static.Dict + setuptools/_static.py::setuptools._static.List + # Internet + setuptools/tests/test_namespaces.py::TestNamespaces::test_mixed_site_and_non_site + setuptools/tests/test_namespaces.py::TestNamespaces::test_namespace_package_installed_and_cwd + setuptools/tests/test_namespaces.py::TestNamespaces::test_packages_in_the_same_namespace_installed_and_cwd + setuptools/tests/test_namespaces.py::TestNamespaces::test_pkg_resources_import + # broken by warnings from setuptools-scm + setuptools/tests/config/test_apply_pyprojecttoml.py::TestPresetField::test_scripts_dont_require_dynamic_entry_points + # TODO + setuptools/tests/test_config_discovery.py::TestDiscoverPackagesAndPyModules::test_py_modules_when_wheel_dir_is_cwd + 'setuptools/tests/test_egg_info.py::TestEggInfo::test_requires[setup_requires_with_markers]' + ) + + case ${EPYTHON} in + pypy3.11) + EPYTEST_DESELECT+=( + # fails and breaks other tests + setuptools/tests/test_editable_install.py + ) + ;; + esac + + local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH} + epytest -o tmp_path_retention_policy=all \ + -m "not uses_network" setuptools +} + +src_install() { + if [[ ${DISTUTILS_WHEEL_PATH} != *py3-none-any.whl ]]; then + die "Non-pure wheel produced?! ${DISTUTILS_WHEEL_PATH}" + fi + # TODO: compress it? + insinto /usr/lib/python/ensurepip + doins "${DISTUTILS_WHEEL_PATH}" +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-setuptools/ensurepip-setuptools-82.0.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-setuptools/ensurepip-setuptools-82.0.0.ebuild new file mode 100644 index 00000000000..b21255f360c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-setuptools/ensurepip-setuptools-82.0.0.ebuild @@ -0,0 +1,137 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=standalone +PYPI_PN=${PN#ensurepip-} +# PYTHON_COMPAT used only for testing +PYTHON_COMPAT=( python3_{11..14} pypy3_11 ) +PYTHON_REQ_USE="xml(+)" + +inherit distutils-r1 pypi + +DESCRIPTION="Shared setuptools wheel for ensurepip Python module" +HOMEPAGE=" + https://github.com/pypa/setuptools/ + https://pypi.org/project/setuptools/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + ${RDEPEND} + test? ( + >=dev-python/build-1.0.3[${PYTHON_USEDEP}] + >=dev-python/ini2toml-0.14[${PYTHON_USEDEP}] + >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}] + >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-path-3.7.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-test-5.5[${PYTHON_USEDEP}] + dev-python/pip[${PYTHON_USEDEP}] + dev-python/pyproject-hooks[${PYTHON_USEDEP}] + >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] + >=dev-python/virtualenv-20[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-{home,subprocess,timeout} ) +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +declare -A VENDOR_LICENSES=( + [autocommand]=LGPL-3 + [backports.tarfile]=MIT + [importlib_metadata]=Apache-2.0 + [jaraco_context]=MIT + [jaraco_functools]=MIT + [jaraco.text]=MIT + [more_itertools]=MIT + [packaging]="|| ( Apache-2.0 MIT )" + [platformdirs]=MIT + [tomli]=MIT + [wheel]=MIT + [zipp]=MIT +) +LICENSE+=" ${VENDOR_LICENSES[*]}" + +src_prepare() { + distutils-r1_src_prepare + + # Verify that we've covered licenses for all vendored packages + cd setuptools/_vendor || die + local packages=( *.dist-info ) + local pkg missing=() + for pkg in "${packages[@]%%-*}"; do + if [[ ! -v "VENDOR_LICENSES[${pkg}]" ]]; then + missing+=( "${pkg}" ) + else + unset "VENDOR_LICENSES[${pkg}]" + fi + done + + if [[ ${missing[@]} || ${VENDOR_LICENSES[@]} ]]; then + [[ ${missing[@]} ]] && + eerror "License missing for packages: ${missing[*]}" + [[ ${VENDOR_LICENSES[@]} ]] && + eerror "Vendored packages removed: ${!VENDOR_LICENSES[*]}" + die "VENDOR_LICENSES outdated" + fi +} + +python_compile() { + # If we're testing, install for all implementations. + # If we're not, just get one wheel built. + if use test || [[ -z ${DISTUTILS_WHEEL_PATH} ]]; then + distutils-r1_python_compile + fi +} + +python_test() { + local EPYTEST_DESELECT=( + # TODO + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors + # TODO, probably some random package + setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass + # relies on -Werror + setuptools/_static.py::setuptools._static.Dict + setuptools/_static.py::setuptools._static.List + # Internet + setuptools/tests/test_namespaces.py::TestNamespaces::test_mixed_site_and_non_site + setuptools/tests/test_namespaces.py::TestNamespaces::test_namespace_package_installed_and_cwd + setuptools/tests/test_namespaces.py::TestNamespaces::test_packages_in_the_same_namespace_installed_and_cwd + setuptools/tests/test_namespaces.py::TestNamespaces::test_pkg_resources_import + # broken by warnings from setuptools-scm + setuptools/tests/config/test_apply_pyprojecttoml.py::TestPresetField::test_scripts_dont_require_dynamic_entry_points + # TODO + setuptools/tests/test_config_discovery.py::TestDiscoverPackagesAndPyModules::test_py_modules_when_wheel_dir_is_cwd + 'setuptools/tests/test_egg_info.py::TestEggInfo::test_requires[setup_requires_with_markers]' + ) + + case ${EPYTHON} in + pypy3.11) + EPYTEST_DESELECT+=( + # fails and breaks other tests + setuptools/tests/test_editable_install.py + ) + ;; + esac + + local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH} + epytest -o tmp_path_retention_policy=all \ + -m "not uses_network" setuptools +} + +src_install() { + if [[ ${DISTUTILS_WHEEL_PATH} != *py3-none-any.whl ]]; then + die "Non-pure wheel produced?! ${DISTUTILS_WHEEL_PATH}" + fi + # TODO: compress it? + insinto /usr/lib/python/ensurepip + doins "${DISTUTILS_WHEEL_PATH}" +} From 2bedcbf0058f9e62c03a7b7727fec91d67a3ca43 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:57 +0000 Subject: [PATCH 087/291] dev-python/hatchling: Sync with Gentoo It's from Gentoo commit 77808a6844438397506b008dd5a61ce4de846613. Signed-off-by: Flatcar Buildbot --- .../dev-python/hatchling/Manifest | 1 + .../hatchling/hatchling-1.29.0.ebuild | 98 +++++++++++++++++++ 2 files changed, 99 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.29.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/hatchling/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/hatchling/Manifest index e81a36e877e..91f364775c6 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/hatchling/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/hatchling/Manifest @@ -1,2 +1,3 @@ DIST hatch-hatchling-v1.27.0.gh.tar.gz 5275714 BLAKE2B 5db266a4efa8d315ac991b4f109834cbe3710d6b944de78591f3707d1552a60ac24c1970c093190c2b3fdb8515d7ed5f4af7a32a1a364cefe9f4c08eef84b369 SHA512 d519428c4c7c21950df2484f38332b5c89525347f3557ff21a55a85811955c8466f6eb4f919d824ab7a576cd35d8a59e4a5e7827100f6ea1e38c10c0f1864a29 DIST hatch-hatchling-v1.28.0.gh.tar.gz 5296066 BLAKE2B 2def4eee372b0fbf2019c716f63fdd35b110ce6a17a0fcfd4208a52334cd16ab1db9bd73d3a46ab652dd43ac8be02fb1bd4f5b7df44016895523f7900001ab99 SHA512 cbf29be0d0e2e0053c39034a697b4bebce4754205713c9dc35c9f3c9ea9be2652924664c0d11b90869443995c6f9f06ce20ca06afe10a2ac174a0e9dc2e737a2 +DIST hatch-hatchling-v1.29.0.gh.tar.gz 5301488 BLAKE2B d1e36649483f213c56488caf018ad3a3310fafa944e11484ae613021e081999a80321d353c68cfb64bc149558e2c996b788f7b11a228d2f658175165d515bdcd SHA512 321f9ab996dcab54341653e2abf5bdb893c4ac307c62aa9f0dd222609a18f82cd502fb0d0ac598f109d519a0dc8ab40866a37d1ea4023d7d58fe442da7c32ff9 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.29.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.29.0.ebuild new file mode 100644 index 00000000000..df05e77c380 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.29.0.ebuild @@ -0,0 +1,98 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=standalone +PYTHON_TESTED=( pypy3_11 python3_{11..14} ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" python3_{13,14}t ) + +inherit distutils-r1 + +TAG=${P/-/-v} +MY_P=hatch-${TAG} +DESCRIPTION="Modern, extensible Python build backend" +HOMEPAGE=" + https://pypi.org/project/hatchling/ + https://github.com/pypa/hatch/ +" +SRC_URI=" + https://github.com/pypa/hatch/archive/${TAG}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P}/backend + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +# deps are listed in backend/src/hatchling/ouroboros.py +# editables are optional but required for editable installs +RDEPEND=" + >=dev-python/editables-0.3[${PYTHON_USEDEP}] + >=dev-python/packaging-24.2[${PYTHON_USEDEP}] + >=dev-python/pathspec-0.10.1[${PYTHON_USEDEP}] + >=dev-python/pluggy-1.0.0[${PYTHON_USEDEP}] + dev-python/trove-classifiers[${PYTHON_USEDEP}] +" +BDEPEND=" + ${RDEPEND} + test? ( + $(python_gen_cond_dep ' + dev-python/atomicwrites[${PYTHON_USEDEP}] + dev-python/click[${PYTHON_USEDEP}] + dev-python/httpx[${PYTHON_USEDEP}] + dev-python/platformdirs[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/rich[${PYTHON_USEDEP}] + dev-python/tomli-w[${PYTHON_USEDEP}] + dev-python/virtualenv[${PYTHON_USEDEP}] + ' "${PYTHON_TESTED[@]}") + ) +" + +src_test() { + # top-level "tests" directory contains tests both for hatch + # and hatchling + cd "${WORKDIR}/${MY_P}" || die + + # sigh; standalone test suites are overrated, right? + echo "__version__ = '${PV}'" > src/hatch/_version.py || die + local -x PYTHONPATH="src:${PYTHONPATH}" + + # do not require uv for portability, sigh + mkdir "${T}/bin" || die + cat > "${T}/bin/uv" <<-EOF || die + #!/bin/sh + exit 127 + EOF + chmod +x "${T}/bin/uv" || die + local -x PATH=${T}/bin:${PATH} + + # tests mock cargo subprocess call but the backend raises if CARGO + # is not set and shutil.which() can't find it + local -x CARGO=cargo + + distutils-r1_src_test +} + +python_test() { + if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then + einfo "Skipping tests on ${EPYTHON}" + return + fi + + local -x EPYTEST_DESELECT=( + # most of these run uv to install stuff + # the few remaining tests aren't worth running + tests/backend/dep/test_core.py + # broken if CARGO is set + tests/backend/builders/test_binary.py::TestBuildBootstrap::test_no_cargo + ) + + local EPYTEST_PLUGINS=( pytest-mock ) + epytest tests/backend +} From bd57474bb84431fdc63ca401093f1b921f1c146d Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:59 +0000 Subject: [PATCH 088/291] dev-python/jaraco-context: Sync with Gentoo It's from Gentoo commit b60d7503529669e4337726ac27992ccf81c58d38. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-python/jaraco-context/Manifest | 2 +- .../dev-python/jaraco-context/jaraco-context-6.0.2.ebuild | 4 ++-- ...co-context-6.0.1-r1.ebuild => jaraco-context-6.1.0.ebuild} | 3 ++- 3 files changed, 5 insertions(+), 4 deletions(-) rename sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/{jaraco-context-6.0.1-r1.ebuild => jaraco-context-6.1.0.ebuild} (96%) diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/Manifest index 5db39c7dea7..120a86b0dee 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/Manifest @@ -1,2 +1,2 @@ -DIST jaraco_context-6.0.1.tar.gz 13912 BLAKE2B e249916d41e936c4f261e5e4330f3d6b26b159772a1284521168313f41ef296ca82930e46837ae8ea7c895f7471bc039d5b42a8d4eceb0718056ff4b82d79cba SHA512 5711f581a616a18f7b7dbac65550255c7eecfae39df04b675817b16fbc5d61b833617d853c40f0b910c0ba5d144baf4c4b2add155c9b91001209b27da594a801 DIST jaraco_context-6.0.2.tar.gz 14994 BLAKE2B e89f31c411ec2a383fe9125b6cc87931c0d223375632d76efe3fb63da6eb0db818862feefb53cc95e2384ff4fe044fe3bf9e495ea75cc6e14ae04a94eea9889c SHA512 18cc7381eeadea82df21219df0886c486f0b2338aea01e53c471c29d5a289e92d92f41a9943535f27a9f113ae889ee03d8f3323d777006b0dd653b422a412a09 +DIST jaraco_context-6.1.0.tar.gz 15850 BLAKE2B e7d25d18fa97e77ce152b9152326e4980f305fd9ade71cc890546d8400c4102bb5bcc896b8ae079876f69e7d685d88d3c14bfae7aed46be5e28bad0c89caa77d SHA512 19f9fe4e00cc94f46177604e2a6e44af3c21be22b2059f8f7d0c586a77007196a163df68e545808b5f73d10c4e429903ff33274f110a15601481f4eff8cf9f8f diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-6.0.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-6.0.2.ebuild index 1c00cd09ebb..208f6c5506b 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-6.0.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-6.0.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 8 -- sys-apps/portage dep @@ -18,7 +18,7 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" RDEPEND=" $(python_gen_cond_dep ' diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-6.0.1-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-6.1.0.ebuild similarity index 96% rename from sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-6.0.1-r1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-6.1.0.ebuild index 9f9b42e83da..208f6c5506b 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-6.0.1-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-6.1.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 8 -- sys-apps/portage dep @@ -31,6 +31,7 @@ BDEPEND=" ) " +EPYTEST_PLUGINS=() distutils_enable_tests pytest EPYTEST_DESELECT=( From 336e564c3a7b353a7753c69044d7dc27884d98c0 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:24:59 +0000 Subject: [PATCH 089/291] dev-python/jaraco-functools: Sync with Gentoo It's from Gentoo commit 76529f96062f9bf828e632ede93f7b7e3a6d4cef. Signed-off-by: Flatcar Buildbot --- .../dev-python/jaraco-functools/jaraco-functools-4.4.0.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/jaraco-functools-4.4.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/jaraco-functools-4.4.0.ebuild index 46295092347..00a86640341 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/jaraco-functools-4.4.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/jaraco-functools-4.4.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 8 -- sys-apps/portage dep @@ -18,7 +18,7 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" RDEPEND=" >=dev-python/more-itertools-0.12.0-r1[${PYTHON_USEDEP}] From ae4f2166ec0b0cf0a730aeab59dfdc23129d5a05 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:00 +0000 Subject: [PATCH 090/291] dev-python/jaraco-text: Sync with Gentoo It's from Gentoo commit e305febaf2026ece56646c2c7aaef046f3142bb2. Signed-off-by: Flatcar Buildbot --- .../dev-python/jaraco-text/Manifest | 2 + .../jaraco-text/jaraco-text-4.1.0.ebuild | 57 +++++++++++++++++++ .../jaraco-text/jaraco-text-4.2.0.ebuild | 50 ++++++++++++++++ 3 files changed, 109 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-4.1.0.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-4.2.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/Manifest index 1858a3339ee..b7533e22e01 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/Manifest @@ -1 +1,3 @@ DIST jaraco_text-4.0.0.tar.gz 17009 BLAKE2B 4aa4381de0988383f4442a1caaab48eae79f2cbe564438b540adfed12d9cfb3680de1e5579029be204024256ba9f3327af225db73f2bd68fed7b2bdd4859a799 SHA512 240c4f6f3df6916e9015479147474a43ea9e858e22821f53263c1ef42c61336c36a34baa9c7384b9d345cf42e10b7499e2efa3c85178a0c2abc47fcd82b63fb3 +DIST jaraco_text-4.1.0.tar.gz 19153 BLAKE2B 8585bb938ce694e7d438fe0faf17c51f9fd8392cc7157a4816a94a043aa1cd1e047d25c34fc0e27b82ccae1a73d000a82a90493c1b72f20fe8375c5bade02565 SHA512 8af0377c47c673b5d2a7d6d92f37b945bbe6aa451df7dd152669a8ef1f378c8b04283e23291393c70b818d32a96acffd16f71d401d9115775469a94c19926413 +DIST jaraco_text-4.2.0.tar.gz 20077 BLAKE2B c2c991586f5696995ad60b0238c110fb1094c8b51c35961e01faec6a4b18f5ca1951d1c273c3908d41f1bf26fab7e639f5f4903328e106b7f770416c9990c218 SHA512 63cd8b4c7a66231b4951e2c5d5b8fcc6cab2fd3bddee0f6fb254eafdf131fc1cd8ed88430e0a822096dfd7d871acef335ac30e899b7f715832800cce4005f1dd diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-4.1.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-4.1.0.ebuild new file mode 100644 index 00000000000..837e46d167f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-4.1.0.ebuild @@ -0,0 +1,57 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYPI_PN=${PN/-/.} +PYTHON_COMPAT=( python3_{11..14} python3_{13,14}t pypy3_11 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Text utilities used by other projects by developer jaraco" +HOMEPAGE=" + https://github.com/jaraco/jaraco.text/ + https://pypi.org/project/jaraco.text/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + +RDEPEND=" + >=dev-python/jaraco-context-4.1.1-r1[${PYTHON_USEDEP}] + >=dev-python/jaraco-functools-3.5.0-r1[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +src_configure() { + grep -q 'build-backend = "setuptools' pyproject.toml || + die "Upstream changed build-backend, recheck" + # write a custom pyproject.toml to ease setuptools bootstrap + cat > pyproject.toml <<-EOF || die + [build-system] + requires = ["flit_core >=3.2,<4"] + build-backend = "flit_core.buildapi" + + [project] + name = "jaraco.text" + version = "${PV}" + description = "Module for text manipulation" + EOF + + # remove CLI tools, they have annoying deps, no entry points + # and since there are dashes in their names, they can't be imported + # anyway + rm jaraco/text/*-*.py || die +} + +python_install() { + distutils-r1_python_install + # rename to workaround a bug in pkg_resources + # https://bugs.gentoo.org/834522 + mv "${D}$(python_get_sitedir)"/jaraco{_,.}text-${PV}.dist-info || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-4.2.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-4.2.0.ebuild new file mode 100644 index 00000000000..bd02f14b5eb --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-4.2.0.ebuild @@ -0,0 +1,50 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYPI_PN=${PN/-/.} +PYTHON_COMPAT=( python3_{11..14} python3_{13,14}t pypy3_11 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Text utilities used by other projects by developer jaraco" +HOMEPAGE=" + https://github.com/jaraco/jaraco.text/ + https://pypi.org/project/jaraco.text/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + +RDEPEND=" + >=dev-python/jaraco-context-4.1.1-r1[${PYTHON_USEDEP}] + >=dev-python/jaraco-functools-3.5.0-r1[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +src_configure() { + grep -q 'build-backend = "setuptools' pyproject.toml || + die "Upstream changed build-backend, recheck" + # write a custom pyproject.toml to ease setuptools bootstrap + cat > pyproject.toml <<-EOF || die + [build-system] + requires = ["flit_core >=3.2,<4"] + build-backend = "flit_core.buildapi" + + [project] + name = "jaraco.text" + version = "${PV}" + description = "Module for text manipulation" + EOF + + # remove CLI tools, they have annoying deps, no entry points + # and since there are dashes in their names, they can't be imported + # anyway + rm jaraco/text/*-*.py || die +} From bce8d1526acb4f84a41531c973237b4e4fb7d02b Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:02 +0000 Subject: [PATCH 091/291] dev-python/linkify-it-py: Sync with Gentoo It's from Gentoo commit e269b742c1d0c62c8022a59d590b454a3c522b9c. Signed-off-by: Flatcar Buildbot --- .../dev-python/linkify-it-py/Manifest | 2 ++ .../linkify-it-py/linkify-it-py-2.1.0.ebuild | 27 +++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/linkify-it-py/linkify-it-py-2.1.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/linkify-it-py/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/linkify-it-py/Manifest index e0addc5ca66..6cabd4386c5 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/linkify-it-py/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/linkify-it-py/Manifest @@ -1 +1,3 @@ DIST linkify-it-py-2.0.3.gh.tar.gz 76727 BLAKE2B df0d2c8f31a9715c6eadd1f8fb295990b5ed82b8f49231071f8220045d9b64ec21098477d43a74afa21592b2a345357654a23df38636e852a767c62443580e34 SHA512 6621533246a42f3b13fb7dd9f1366cadb0e3c291bcb92fd899bc6389cb9f7904ababf4b5dbae51a561a4f50f8a20597badf03c82653ae8db75d9a5a484bc1229 +DIST linkify_it_py-2.1.0.tar.gz 29158 BLAKE2B 6421c09a9018036f97639a164186ff702c9d54d4381f3c9cc51d6bd106a6e5814b32d76d992b7c6981052574758bfc891d5006c34fe953c5cea21580dfc2bc35 SHA512 298d25a9bd9df57b6caf6157b642018e828c2b5fbacaa2ff11c0007b48f2090d7f14680efe3a365d9bb0f2a97660eb9e95424c8b63dfd8f9aeee6a5a5c70211d +DIST linkify_it_py-2.1.0.tar.gz.provenance 9582 BLAKE2B f78f211d5ffca6a85f695fb037a0885aedc3caa10801c1165355b3698a7b08b1205de0265eb8f40e83aec3e94294e595196bc1d4fb46022ac4ca7ea055dee5fd SHA512 01ea5d707b170fcdcd8dac6ddb88a5100c4eb7e532b15bb50ae1c0091b1feec7950e331b8ba53477225cc878968e57ea7a113a5472847882c03ac1dce19e1ebd diff --git a/sdk_container/src/third_party/portage-stable/dev-python/linkify-it-py/linkify-it-py-2.1.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/linkify-it-py/linkify-it-py-2.1.0.ebuild new file mode 100644 index 00000000000..d2771ae953e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/linkify-it-py/linkify-it-py-2.1.0.ebuild @@ -0,0 +1,27 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_VERIFY_REPO=https://github.com/tsutsu3/linkify-it-py +PYTHON_COMPAT=( pypy3_11 python3_{11..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Links recognition library with full unicode support" +HOMEPAGE=" + https://github.com/tsutsu3/linkify-it-py/ + https://pypi.org/project/linkify-it-py/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-python/uc-micro-py[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest From 9e59dd1e7fcbc18084a5d1461f14d97a33ebc74c Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:07 +0000 Subject: [PATCH 092/291] dev-python/packaging: Sync with Gentoo It's from Gentoo commit 0fad2ca47b8861b50c599cd8e7c2af9e23a91f33. Signed-off-by: Flatcar Buildbot --- .../dev-python/packaging/Manifest | 6 +++ .../packaging/packaging-26.0.ebuild | 40 +++++++++++++++++++ .../packaging/packaging-26.0_rc2.ebuild | 40 +++++++++++++++++++ .../packaging/packaging-26.0_rc3.ebuild | 40 +++++++++++++++++++ 4 files changed, 126 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/packaging/packaging-26.0.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/packaging/packaging-26.0_rc2.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/packaging/packaging-26.0_rc3.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/packaging/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/packaging/Manifest index fd4c68d97fc..fb0772645bb 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/packaging/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/packaging/Manifest @@ -1,3 +1,9 @@ DIST packaging-25.0.tar.gz 165727 BLAKE2B ad665526339ccc63bbca1e21649f773e626b13f984f0800c6362d5642e8de701d88f7793015bc406f3dc39fa6ce2784f099f925b08d7b5c1d3614d390470080c SHA512 0672602d2e18c3aee71b3e567b0de572bc8613ee3d24a79a655ded23ac08ec4582193225bc0c0ea390ed81cf5efbb46e8afbe0798d14f2235f811f263c25728c +DIST packaging-26.0.tar.gz 143416 BLAKE2B 0f64797c7dc0c1d452bef437f3c61959efe17db4d0281ca475a45a433b349693a6e2a5183c17921cc233086da765d5af6cd902e4c3cba8975d42908de553a389 SHA512 27a066a7d65ba76189212973b6a0d162f3d361848b1b0c34a82865cf180b3284a837cc34206c297f002a73feae414e25a26c5960bb884a74ea337f582585f1d2 +DIST packaging-26.0.tar.gz.provenance 9319 BLAKE2B 95a46bf39757ebc5daa5a847413936dbf9067c50129009cca898b3010d2cc7d7175b1091ba4b8b3f5c13106a9f9da0b6dc858ab65fd0dbe7164e2c99752c539b SHA512 b1280f2554b17244745ac2c566922c1bb2b68e45a18020633d52c12a0e6be784506f10c0dfcf9a528ff6dedb7a4bfac0f240367fe26707435ee7cc15fb4c45a8 DIST packaging-26.0rc1.tar.gz 142273 BLAKE2B 164a8cc27b161c7aa9214ff545a8c26fc44ebc943a4914bcf58ba050d6d3f243aa0a08033b669066cdb3bc8926ad5bcd30651e5490ee92078c41b559e8ba905b SHA512 6b9a18f23821d957546a022c0efcff3af5fa393c3938132868cd6468128820a606a2235642928cb05afea40ae51b071b5403344c308a251d1d31f83047d1d72a DIST packaging-26.0rc1.tar.gz.provenance 9673 BLAKE2B 47a90dc7d169887beb4671e2e665b00b0754a7bfe5ab2a3d0ae7e6e044c7ab3abd7c30d5b859af3f6d380c5061f74f77e4a29dc16f5a52e3fc46ed59e92d8067 SHA512 443e51791c9da3b5cdc467af8dfe4d0afa73be748b22b26b58ec81526177f048a6b86ab0c2654cb3b8fa87b741b73416a39eb32dd26a10265fe307443d93eb0a +DIST packaging-26.0rc2.tar.gz 142648 BLAKE2B b423ef17498b3557ca2d6f369b92e583b45b368a32faba816c2a09fc183a5c5ccd190c49cc1b9f511658ebf4fe4aac9e57195e02119426496bffe2061364bb31 SHA512 b643f9ea9fde13d2337812eb91a4a296807a98163e7f2603f5edbb60dfa06044077fa699d4b576b7ad303d63f92488525f77d5b2f6c253282b4693db5825cbf9 +DIST packaging-26.0rc2.tar.gz.provenance 9323 BLAKE2B 19f6af3f3f6c1daae851725b838251bd35d045b666793ee5895f3ada96c019f4360ec02c7bd7378d6a2f0ba1bed056e21c8261ce359cc9fd18187d697c2859d1 SHA512 e009d6831252c977f3cea52387bafa7cde0db9e1e101919cf568a2468e211c6219606d8a09a0e5c0b9a1dc19b57a177b00f0136e7ea782ef4d2728fd25085cb6 +DIST packaging-26.0rc3.tar.gz 142715 BLAKE2B 41cad27b7215594e94bd04a86451bcd52fb6fce5871b4447c4f6129e3558f4d6d38c0a2889218c35f366e8c1817813307e87c4cebffb5825b0fb4f55b6c70253 SHA512 79369189655db431dde77b84484b88a1e526438805145ee9edab1bb12b2c62d997856802032317194c59bf79a8ebf0884ccf43148f6b20aefda0ed9455d1c7c0 +DIST packaging-26.0rc3.tar.gz.provenance 9272 BLAKE2B f7df3f4887b91807217d83629fc5b1eeb46c42237c63c0d897e86e4838d8f022ccd26e1dc1d05be312c6fa8991d5fbe7c5cb29655c837b06d80fd7d92c93f96f SHA512 722bc45f2abfcf631cc3c65c39e44b260e433eaab0c835e518c9c3de8c46b1784ea0bd9bda7feb758699f7e563e566f5fefc0e3945b1f8f894002be89c7a0ca4 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/packaging/packaging-26.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/packaging/packaging-26.0.ebuild new file mode 100644 index 00000000000..ecbe60e92e2 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/packaging/packaging-26.0.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYPI_VERIFY_REPO=https://github.com/pypa/packaging +PYTHON_COMPAT=( python3_{11..14} python3_{13,14}t pypy3_11 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Core utilities for Python packages" +HOMEPAGE=" + https://github.com/pypa/packaging/ + https://pypi.org/project/packaging/ +" + +LICENSE="|| ( Apache-2.0 BSD-2 )" +SLOT="0" +if [[ ${PV} != *_rc* ]]; then + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +RDEPEND=" + ! Date: Mon, 2 Mar 2026 07:25:07 +0000 Subject: [PATCH 093/291] dev-python/pathspec: Sync with Gentoo It's from Gentoo commit 3fbcadd8759a51b87c53b208b12ada5459a2e819. Signed-off-by: Flatcar Buildbot --- .../dev-python/pathspec/Manifest | 2 ++ .../dev-python/pathspec/pathspec-1.0.4.ebuild | 22 +++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/pathspec/pathspec-1.0.4.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pathspec/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/pathspec/Manifest index 7dad9c04992..29f998844b4 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/pathspec/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/pathspec/Manifest @@ -7,3 +7,5 @@ DIST pathspec-1.0.2.tar.gz 130502 BLAKE2B f1557a9b1b110f7e3611aba0dd34e260ab404c DIST pathspec-1.0.2.tar.gz.provenance 9518 BLAKE2B 26e62b12d506e5bb58a01945381dbaa2e3c894c3d0259aeba6ef19050b1535380c85a5df9c2612e034ddbbf32f27945f9b978a65fc9b38901a1d1d533ffcb558 SHA512 99884148ab3c59b823c335d60f665c59521aaa6d5bb90472f5e7dd223a861fafc625a9d3730383fe8ad4e856942548dadc999e431d5058f44f1a218f904d27cd DIST pathspec-1.0.3.tar.gz 130841 BLAKE2B c8c092c579b8214595b9a081857d4df9b5373858a7c64b26a681c1748c6764eb7ecb1df14025ccae47759df48d80e7b6497ea07ae587030db3ae2a0eef9650db SHA512 8ca509c3085949827274efd73f5bb618b7446eab5e08e0c1a19b27dc5910d35b3e9dac36dc2f60152c2db4c95c776e5c4b9a436a17d9ade5da71a2bcf098dea8 DIST pathspec-1.0.3.tar.gz.provenance 9471 BLAKE2B f521d6821e6a39ae2caef6cf513bf5ede906888528bf12c4d6a207f264e25f4aade217fae7943da762dd3e6df49922f1244a0816ef52cdefd5de3c65611db50c SHA512 ed78f5b351c1434e040ef9f67dc243880de977a462e2cf3e82f1775c80d5e2600a9a131428d890b15a96a23a3c2d92e82e55aa7a05241f24c8992312642a16ea +DIST pathspec-1.0.4.tar.gz 131200 BLAKE2B 32af605bb8f2e85adfe97627af35d31f4e9a92d864343ec8f290468ac5637600b6869b0a241a77fa2b2f7a41a899f158359f16672cffd6d35506e2e23f39e8d5 SHA512 1004dc55111a4cbf8767775894ed79da465598cd700afbeb96f6ef1f997dcb43cfba8af0b0a1de6232da9725a6e08577ce531da7faa16125c2b7bda0a378d5c3 +DIST pathspec-1.0.4.tar.gz.provenance 9992 BLAKE2B 5468d5c3fd4054f1f253247901203faa00d0e3d1c8a083942945adefac5ad8d7dec82a802e3d6f4f5d748938e02a54ac464c30d6c87e9206ff34cf5582fbe493 SHA512 5fafada724fddd4e6611f62913b9e59a8a6f8df04d638f85c3fa2764450d66d621425d7a2d5039e490b491828fa8a67f82149aded45dfb561024f5b57f5caec8 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pathspec/pathspec-1.0.4.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pathspec/pathspec-1.0.4.ebuild new file mode 100644 index 00000000000..423fa7e2c9a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/pathspec/pathspec-1.0.4.ebuild @@ -0,0 +1,22 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYPI_VERIFY_REPO=https://github.com/cpburnz/python-pathspec +PYTHON_COMPAT=( python3_{11..14} python3_{13,14}t pypy3_11 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Utility library for gitignore style pattern matching of file paths" +HOMEPAGE=" + https://github.com/cpburnz/python-pathspec/ + https://pypi.org/project/pathspec/ +" + +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + +distutils_enable_tests unittest From 129a3fd7bbfe5e408b84755ef63e16ce2b3a5faf Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:09 +0000 Subject: [PATCH 094/291] dev-python/pip: Sync with Gentoo It's from Gentoo commit 371caa4b673879a878ae207fc31c3bb27e077ab3. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-python/pip/Manifest | 3 +- .../pip/files/pip-26.0-test-wheels.patch | 74 +++++++ .../{pip-25.2.ebuild => pip-26.0.1.ebuild} | 27 ++- .../dev-python/pip/pip-26.0.ebuild | 204 ++++++++++++++++++ 4 files changed, 300 insertions(+), 8 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/pip/files/pip-26.0-test-wheels.patch rename sdk_container/src/third_party/portage-stable/dev-python/pip/{pip-25.2.ebuild => pip-26.0.1.ebuild} (85%) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/pip/pip-26.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pip/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/pip/Manifest index 3d2fa10525d..ae87a228235 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/pip/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/pip/Manifest @@ -1,3 +1,4 @@ DIST flit_core-3.12.0-py3-none-any.whl 45594 BLAKE2B 7c6cb6eb03d45bbba27f27b3728881b57fe82dd38e03f884d3b7c46116eb2b9dd76f92bdaf7f594ef8ccbe12ec8f9a56424ff9e9fc7a839c4818a113fdf0c3d3 SHA512 790c12b1f43201e365fb3f8f2f0a54e1a578876799dfdf8bfeea679a25ea096bf62946d006618c1458ae6e37ce6d00998f37e9aba426d5ab80d32ef2d75da4e0 -DIST pip-25.2.gh.tar.gz 9121715 BLAKE2B 3bfe61d6d0d6f3a79c3fd801f5cb40b203fd12085d925ae7cde53adca3c5ee523fdfd9449546e1bc8ca719b3e8766cfef3162919e13a77f7adc0d20a951d11c7 SHA512 5cc65c9091fdda7905e26ce32ddaa3a1c2fd287d69fd3da67c814ba7e8e5be59301d8327c06cdca78c1b95f4a5b5f75c87f36a549022408cc0e8f9411c0db11e DIST pip-25.3.gh.tar.gz 9115712 BLAKE2B 87d848c497163a45ee3de8f6f75c80b5051b07062c5a15450ae98b59a6cebc6bf03ca8525d57929493f2cfeb28d5623401eba69f0bdfc734389efbb84eafdf53 SHA512 f50db092213ec3bb819d3da5669f73d119b5ec7f7ac5e8a587a17c27eafa32bc17a057df09389c526a3769ef3577f5553187d54ceffa89aed63f4b4498ff044e +DIST pip-26.0.1.gh.tar.gz 9227871 BLAKE2B 96a2fab2de472b3cde570f3bcbd6bc5e5c48ef2f0808ca9b2b6c0f57a611f723cd0f5d592b6b5f553fb57a6909459f57b4130f2451cd95c3b18678e02215e0c9 SHA512 3786df7522ea65bc20fb9885ce5c2ddc60200a536a1f754a8d7dc278115c73258863e4c51ac7e9a60dda0b70263730dc194f70e1e8f8d00178a8b3c724333bf0 +DIST pip-26.0.gh.tar.gz 9226836 BLAKE2B fe24bd8fca7fa2b64ed865a880a430c420a9e73e35a9f1f2405473d4778467f48a8bc0607c1423760ff23706d3e11ddfeb20cd5a7f6522530a679994278ee1d8 SHA512 62a62b2db4e7a6c795cf01ab553b94068f0d1c62470c1f5c2b3164344a84fa68f7854eec99d93b9f56193c61276d95d8af21a3cb6b78f0db4f013d9997e78199 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pip/files/pip-26.0-test-wheels.patch b/sdk_container/src/third_party/portage-stable/dev-python/pip/files/pip-26.0-test-wheels.patch new file mode 100644 index 00000000000..55fb04f8f65 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/pip/files/pip-26.0-test-wheels.patch @@ -0,0 +1,74 @@ +From f8f2b7760bfc8d64607b3bf2cdc9867fcce8276a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= +Date: Thu, 31 Jul 2025 05:10:08 +0200 +Subject: [PATCH] Disable coverage & socket plugins inside test venvs + +--- + tests/conftest.py | 33 --------------------------------- + 1 file changed, 33 deletions(-) + +diff --git a/tests/conftest.py b/tests/conftest.py +index 1b65e9d57..69b6f38c9 100644 +--- a/tests/conftest.py ++++ b/tests/conftest.py +@@ -440,25 +440,6 @@ def setuptools_install( + return _common_wheel_editable_install(tmpdir_factory, common_wheels, "setuptools") + + +-@pytest.fixture(scope="session") +-def coverage_install( +- tmpdir_factory: pytest.TempPathFactory, common_wheels: Path +-) -> Path: +- return _common_wheel_editable_install(tmpdir_factory, common_wheels, "coverage") +- +- +-@pytest.fixture(scope="session") +-def socket_install(tmpdir_factory: pytest.TempPathFactory, common_wheels: Path) -> Path: +- lib_dir = _common_wheel_editable_install( +- tmpdir_factory, common_wheels, "pytest_subket" +- ) +- # pytest-subket is only included so it can intercept and block unexpected +- # network requests. It should NOT be visible to the pip under test. +- dist_info = next(lib_dir.glob("*.dist-info")) +- shutil.rmtree(dist_info) +- return lib_dir +- +- + def install_pth_link( + venv: VirtualEnvironment, project_name: str, lib_dir: Path + ) -> None: +@@ -474,8 +455,6 @@ def virtualenv_template( + pip_src: Path, + pip_editable_parts: tuple[Path, ...], + setuptools_install: Path, +- coverage_install: Path, +- socket_install: Path, + ) -> VirtualEnvironment: + venv_type: VirtualEnvironmentType + if request.config.getoption("--use-venv"): +@@ -489,10 +468,6 @@ def virtualenv_template( + + # Install setuptools, pytest-subket, and pip. + install_pth_link(venv, "setuptools", setuptools_install) +- install_pth_link(venv, "pytest_subket", socket_install) +- # Also copy pytest-subket's .pth file so it can intercept socket calls. +- with open(venv.site / "pytest_socket.pth", "w") as f: +- f.write(socket_install.joinpath("pytest_socket.pth").read_text()) + + pth, dist_info = pip_editable_parts + +@@ -505,14 +480,6 @@ def virtualenv_template( + # detects changed files. + venv.site.joinpath("easy-install.pth").touch() + +- if request.config.getoption("--cov"): +- # Install coverage and pth file for executing it in any spawned processes +- # in this virtual environment. +- install_pth_link(venv, "coverage", coverage_install) +- # zz prefix ensures the file is after easy-install.pth. +- with open(venv.site / "zz-coverage-helper.pth", "a") as f: +- f.write("import coverage; coverage.process_startup()") +- + # Drop (non-relocatable) launchers. + for exe in os.listdir(venv.bin): + if not exe.startswith(("python", "libpy")): # Don't remove libpypy-c.so... diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pip/pip-25.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pip/pip-26.0.1.ebuild similarity index 85% rename from sdk_container/src/third_party/portage-stable/dev-python/pip/pip-25.2.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/pip/pip-26.0.1.ebuild index 22fc7730642..604ce5887b5 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/pip/pip-25.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/pip/pip-26.0.1.ebuild @@ -1,16 +1,17 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 # please bump dev-python/ensurepip-pip along with this package! -DISTUTILS_USE_PEP517=setuptools +DISTUTILS_USE_PEP517=flit PYTHON_TESTED=( pypy3_11 python3_{11..14} ) PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) PYTHON_REQ_USE="ssl(+),threads(+)" -inherit distutils-r1 shell-completion +inherit distutils-r1 pypi shell-completion +FLIT_CORE_PV=3.12.0 DESCRIPTION="The PyPA recommended tool for installing Python packages" HOMEPAGE=" @@ -20,11 +21,14 @@ HOMEPAGE=" " SRC_URI=" https://github.com/pypa/pip/archive/${PV}.tar.gz -> ${P}.gh.tar.gz + test? ( + $(pypi_wheel_url flit-core "${FLIT_CORE_PV}") + ) " LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="test test-rust" RESTRICT="!test? ( test )" @@ -51,7 +55,6 @@ BDEPEND=" test? ( $(python_gen_cond_dep ' dev-python/ensurepip-setuptools - dev-python/ensurepip-wheel dev-python/freezegun[${PYTHON_USEDEP}] dev-python/pretend[${PYTHON_USEDEP}] dev-python/pytest[${PYTHON_USEDEP}] @@ -61,7 +64,6 @@ BDEPEND=" completion.bash || die + "${EPYTHON}" -c "${pipcmd}" completion --zsh > completion.zsh || die +} + +python_test() { + if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then + einfo "Skipping tests on ${EPYTHON}" + return 0 + fi + + local EPYTEST_DESELECT=( + tests/functional/test_inspect.py::test_inspect_basic + # Internet + tests/functional/test_config_settings.py::test_backend_sees_config_via_sdist + tests/functional/test_install.py::test_double_install_fail + tests/functional/test_install.py::test_install_sdist_links + tests/functional/test_install_config.py::test_prompt_for_keyring_if_needed + tests/functional/test_lock.py::test_lock_archive + tests/functional/test_lock.py::test_lock_vcs + # broken by system site-packages use + tests/functional/test_freeze.py::test_freeze_with_setuptools + tests/functional/test_install.py::test_install_subprocess_output_handling + tests/functional/test_pip_runner_script.py::test_runner_work_in_environments_with_no_pip + tests/functional/test_uninstall.py::test_basic_uninstall_distutils + tests/unit/test_base_command.py::test_base_command_global_tempdir_cleanup + tests/unit/test_base_command.py::test_base_command_local_tempdir_cleanup + tests/unit/test_base_command.py::test_base_command_provides_tempdir_helpers + # broken by unbundling + "tests/functional/test_debug.py::test_debug[vendored library versions:]" + tests/functional/test_debug.py::test_debug__library_versions + tests/functional/test_freeze.py::test_freeze_multiple_exclude_with_all + tests/functional/test_install.py::test_install_package_with_same_name_in_curdir + tests/functional/test_pep517.py::test_nested_builds + tests/functional/test_python_option.py::test_python_interpreter + tests/functional/test_uninstall.py::test_basic_uninstall + tests/functional/test_uninstall.py::test_uninstall_non_local_distutils + ) + local EPYTEST_IGNORE=( + # from upstream options + tests/tests_cache + # requires proxy.py + tests/functional/test_proxy.py + ) + + case ${EPYTHON} in + pypy3*) + EPYTEST_DESELECT+=( + # unexpected tempfiles? + tests/functional/test_install_config.py::test_do_not_prompt_for_authentication + tests/functional/test_install_config.py::test_prompt_for_authentication + # wrong path + tests/functional/test_install.py::test_install_editable_with_prefix_setup_py + # wrong exception assumptions + tests/unit/test_utils_datetime.py::test_parse_iso_datetime_invalid + ) + ;; + esac + + if ! has_version "dev-python/cryptography[${PYTHON_USEDEP}]"; then + EPYTEST_DESELECT+=( + tests/functional/test_install.py::test_install_sends_client_cert + tests/functional/test_install_config.py::test_do_not_prompt_for_authentication + tests/functional/test_install_config.py::test_prompt_for_authentication + tests/functional/test_install_config.py::test_prompt_for_keyring_if_needed + ) + fi + + local -x PIP_DISABLE_PIP_VERSION_CHECK=1 + local EPYTEST_PLUGINS=() + # rerunfailures because test suite breaks if packages are installed + # to system site-packages while it's running + local EPYTEST_RERUNS=5 + local EPYTEST_XDIST=1 + epytest -m "not network" -o addopts= -o tmp_path_retention_policy=all \ + --use-venv +} + +python_install_all() { + local DOCS=( AUTHORS.txt docs/html/**/*.rst ) + distutils-r1_python_install_all + + newbashcomp completion.bash pip + newzshcomp completion.zsh _pip +} From 1855d4eb548707218e3e1be22ea769430f026943 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:09 +0000 Subject: [PATCH 095/291] dev-python/platformdirs: Sync with Gentoo It's from Gentoo commit d0b9feecfcb5cfdb6574a308ca380fbce2b98af9. Signed-off-by: Flatcar Buildbot --- .../dev-python/platformdirs/Manifest | 8 +++ .../platformdirs/platformdirs-4.7.0.ebuild | 50 +++++++++++++++++++ .../platformdirs/platformdirs-4.8.0.ebuild | 50 +++++++++++++++++++ .../platformdirs/platformdirs-4.9.1.ebuild | 50 +++++++++++++++++++ .../platformdirs/platformdirs-4.9.2.ebuild | 50 +++++++++++++++++++ 5 files changed, 208 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.7.0.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.8.0.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.9.1.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.9.2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/Manifest index 8319378c54a..8a1de8fd905 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/Manifest @@ -1,3 +1,11 @@ DIST platformdirs-4.5.0.tar.gz 21632 BLAKE2B 06de7250dd254e03c29d32d2dbb9da65078c480e2cbdafe3dafd5602182b4472f5078d66a30a04e22c8493904097a60c82ac734b1d0ba304088b0180878dbf7f SHA512 cefe512f8f6cbe989eacdffbbb98a964000855cca46faade62180837d7e21dd6c43eb172211e55fd04090df04e2ef416d49e92d7ccc3a0253ce2a88fc3fb9358 DIST platformdirs-4.5.1.tar.gz 21715 BLAKE2B f987cafe13a440716d73c6f98183bc1b4ae7d778931a81a4f140273d9fd1bc51e56633ff4a4381dbc2050284d9d0fa085ab54adbf504807c715f3441b8c8dab3 SHA512 33651a2aba8e844027d22f1e7a48fb32750a81a8d73807a4f10f37f1ba7ee8c8d3b2c391920328fb34fce1d3653e6d7f097a2c5e09b350a8ebfb6f21e3b1c488 DIST platformdirs-4.5.1.tar.gz.provenance 9300 BLAKE2B ede576d4aa1a03871bd448efcd9613a209651bfcd91681a7afd680cf8f75e5dd8fbe6bca298a9cb51807da06f32fd80b27ba6adedf8b504c556724bfc18c3bf9 SHA512 6ad9983c790a1765ac70544f1ab04ecae0697d883fb355b6771688ac1b564e3b0fa7e8f538e586315d8a1e2f8e970b5818ba254546c6ed578ecbc56d6bfa42b0 +DIST platformdirs-4.7.0.tar.gz 23118 BLAKE2B d34ca4b0bdd0ab7a4ec95c5422c6bfa6250d5303366e1d925034e0c13fb49f97ee1632f5e7b633cf71ed2e12380386e010a8c62514a76ba61b7f6b26b0660333 SHA512 d5e28eb05c73c7a0187ccfa9df9b3819804fcb92ba4237f3c788d1d8722d1ec0fea54708c1d976077e4189b2187bf8f19657f05dc51a515ffa53c07da07e93ca +DIST platformdirs-4.7.0.tar.gz.provenance 9603 BLAKE2B c447cf6506e949e8581ee8be02c04ce744f1073e9b01bc3df0e2c30d03b83c1ac3e846077a2ecdbd7efeae385bbd7e1dadf2acfd72adc38bf8bffe8b937357b3 SHA512 67ab398c3993028f1439a1caaf90962574c949efd7edd1617addf85d0fe4aa344f6bfc94ac9077bcd8a9cb75cd40b91759b602c510223c4b9ca2f9843cbc92e0 +DIST platformdirs-4.8.0.tar.gz 27607 BLAKE2B 4b528902dc5843d832b20e4519f5b979025705a46fb436814cfc749bad372449e1a92043ef682f177378c16d5271a4950f6845fe50c7cc5509399e33cc87782d SHA512 fedf1c0afd7146345fece2ab54a53b1b60564258ca26e0bf099240a9ef51feede4228f95ec743e8a4719c647697458a115d1eae4793113867cf85b461b150de9 +DIST platformdirs-4.8.0.tar.gz.provenance 9748 BLAKE2B a707a61953bfcd8a3cc23e9bee0abb8f84d1f4ac1cd82dc6d334bef7e828fba53798f76bf63d7a4f1e70996166b610037c17f3f71c2e3cf6fd3d11a99ab33fab SHA512 369c4dded10a7a2432429cdd5f7ce6b2edca62d9c4af31c32fe5560258693e084621ae88b98b963274a23805fb63c9d233eab5ae674dff44cce5965ab9bc6c43 +DIST platformdirs-4.9.1.tar.gz 28392 BLAKE2B 4f471fee64760430175dbc01eb8d3384146d8b68a97fac0b714ad351daae1ee72629ad2a369f60b157444ae1e37093d183c7ad9557c35124647c6c0b727e5011 SHA512 3e4fc0841d1f23539947b765d397e50e7b4f4dc639b1286dbc082b685561e0f64af661a5dbb22ef0a3433a99ec88987a693e1462a5d4b150ea205982dae98c45 +DIST platformdirs-4.9.1.tar.gz.provenance 9415 BLAKE2B 208160d5268e2f3fa48836def656e9c11936b268b882de278d07bb7ad4039ead7374b9450701439de09e54fb1b402362417b08494e5099ce7e86d3283832483c SHA512 6a5dcc1a186d9d8bc41169a898690d957312974f9754e104a9721da1347ad6a29c7c232c48c1b57a84745da4ddb1c71371eb298ca99ea6fe8de0bde4f42da53b +DIST platformdirs-4.9.2.tar.gz 28394 BLAKE2B 2a44ddd40489767c7961a202d70ebf49ff01b7ea6f098d67e99cc55693c11fb9ca598414f0f9433895295bc1ce43981ff1c942a3aaff6014024c9a77c9e9e8b2 SHA512 3abd4570abae3964c6afd52493b5f99f81c5543833f01ca8f8c59cbd00108b4d8030b0dc8e7991cb807b6817f28552f008e962c88b12db4fc07ce4015f05e8ec +DIST platformdirs-4.9.2.tar.gz.provenance 9509 BLAKE2B d5631eb6e1cd8f2916a6900d085ff03e10a7a31a24a15984715f2b06525fe2b620ffe1676bd62a3a0b730fef1c99245086bc02eb5fd22344c1f338837e4d9f18 SHA512 18bc0ae845dbf90ac50cff9a071a0e6df28c8e13aa5a849590db739137f67edd85230357d1a5337262753f2c5416b5a8f880c8e82e0d85b3800b17a312c8a7fc diff --git a/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.7.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.7.0.ebuild new file mode 100644 index 00000000000..559e2ecad51 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.7.0.ebuild @@ -0,0 +1,50 @@ +# Copyright 2021-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYPI_VERIFY_REPO=https://github.com/tox-dev/platformdirs +PYTHON_COMPAT=( python3_{11..14} python3_{13,14}t pypy3_11 ) + +inherit distutils-r1 pypi + +DESCRIPTION="A small Python module for determining appropriate platform-specific dirs" +HOMEPAGE=" + https://pypi.org/project/platformdirs/ + https://github.com/tox-dev/platformdirs/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + +BDEPEND=" + test? ( + dev-python/appdirs[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-mock ) +distutils_enable_tests pytest + +src_configure() { + grep -q 'build-backend = "hatchling' pyproject.toml || + die "Upstream changed build-backend, recheck" + # write a custom pyproject.toml to ease setuptools bootstrap + cat > pyproject.toml <<-EOF || die + [build-system] + requires = ["flit_core >=3.2,<4"] + build-backend = "flit_core.buildapi" + + [project] + name = "${PN}" + version = "${PV}" + description = 'A small Python package for determining appropriate platform-specific dirs, e.g. a "user data dir".' + EOF + # sigh + cat > src/platformdirs/version.py <<-EOF || die + __version__ = version = '${PV}' + __version_tuple__ = version_tuple = (${PV//./, }) + EOF +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.8.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.8.0.ebuild new file mode 100644 index 00000000000..559e2ecad51 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.8.0.ebuild @@ -0,0 +1,50 @@ +# Copyright 2021-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYPI_VERIFY_REPO=https://github.com/tox-dev/platformdirs +PYTHON_COMPAT=( python3_{11..14} python3_{13,14}t pypy3_11 ) + +inherit distutils-r1 pypi + +DESCRIPTION="A small Python module for determining appropriate platform-specific dirs" +HOMEPAGE=" + https://pypi.org/project/platformdirs/ + https://github.com/tox-dev/platformdirs/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + +BDEPEND=" + test? ( + dev-python/appdirs[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-mock ) +distutils_enable_tests pytest + +src_configure() { + grep -q 'build-backend = "hatchling' pyproject.toml || + die "Upstream changed build-backend, recheck" + # write a custom pyproject.toml to ease setuptools bootstrap + cat > pyproject.toml <<-EOF || die + [build-system] + requires = ["flit_core >=3.2,<4"] + build-backend = "flit_core.buildapi" + + [project] + name = "${PN}" + version = "${PV}" + description = 'A small Python package for determining appropriate platform-specific dirs, e.g. a "user data dir".' + EOF + # sigh + cat > src/platformdirs/version.py <<-EOF || die + __version__ = version = '${PV}' + __version_tuple__ = version_tuple = (${PV//./, }) + EOF +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.9.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.9.1.ebuild new file mode 100644 index 00000000000..559e2ecad51 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.9.1.ebuild @@ -0,0 +1,50 @@ +# Copyright 2021-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYPI_VERIFY_REPO=https://github.com/tox-dev/platformdirs +PYTHON_COMPAT=( python3_{11..14} python3_{13,14}t pypy3_11 ) + +inherit distutils-r1 pypi + +DESCRIPTION="A small Python module for determining appropriate platform-specific dirs" +HOMEPAGE=" + https://pypi.org/project/platformdirs/ + https://github.com/tox-dev/platformdirs/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + +BDEPEND=" + test? ( + dev-python/appdirs[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-mock ) +distutils_enable_tests pytest + +src_configure() { + grep -q 'build-backend = "hatchling' pyproject.toml || + die "Upstream changed build-backend, recheck" + # write a custom pyproject.toml to ease setuptools bootstrap + cat > pyproject.toml <<-EOF || die + [build-system] + requires = ["flit_core >=3.2,<4"] + build-backend = "flit_core.buildapi" + + [project] + name = "${PN}" + version = "${PV}" + description = 'A small Python package for determining appropriate platform-specific dirs, e.g. a "user data dir".' + EOF + # sigh + cat > src/platformdirs/version.py <<-EOF || die + __version__ = version = '${PV}' + __version_tuple__ = version_tuple = (${PV//./, }) + EOF +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.9.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.9.2.ebuild new file mode 100644 index 00000000000..559e2ecad51 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.9.2.ebuild @@ -0,0 +1,50 @@ +# Copyright 2021-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYPI_VERIFY_REPO=https://github.com/tox-dev/platformdirs +PYTHON_COMPAT=( python3_{11..14} python3_{13,14}t pypy3_11 ) + +inherit distutils-r1 pypi + +DESCRIPTION="A small Python module for determining appropriate platform-specific dirs" +HOMEPAGE=" + https://pypi.org/project/platformdirs/ + https://github.com/tox-dev/platformdirs/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + +BDEPEND=" + test? ( + dev-python/appdirs[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-mock ) +distutils_enable_tests pytest + +src_configure() { + grep -q 'build-backend = "hatchling' pyproject.toml || + die "Upstream changed build-backend, recheck" + # write a custom pyproject.toml to ease setuptools bootstrap + cat > pyproject.toml <<-EOF || die + [build-system] + requires = ["flit_core >=3.2,<4"] + build-backend = "flit_core.buildapi" + + [project] + name = "${PN}" + version = "${PV}" + description = 'A small Python package for determining appropriate platform-specific dirs, e.g. a "user data dir".' + EOF + # sigh + cat > src/platformdirs/version.py <<-EOF || die + __version__ = version = '${PV}' + __version_tuple__ = version_tuple = (${PV//./, }) + EOF +} From 1540965e932945dd1a6533df7e75d61a0db07d0e Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:10 +0000 Subject: [PATCH 096/291] dev-python/poetry-core: Sync with Gentoo It's from Gentoo commit 39d00187878e009aefcaae8590979a9cc6494e03. Signed-off-by: Flatcar Buildbot --- .../dev-python/poetry-core/Manifest | 4 ++ .../poetry-core/poetry-core-2.3.0.ebuild | 67 +++++++++++++++++++ .../poetry-core/poetry-core-2.3.1.ebuild | 67 +++++++++++++++++++ 3 files changed, 138 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-2.3.0.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-2.3.1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/Manifest index 379e3f95a66..f8a353f9fd4 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/Manifest @@ -1 +1,5 @@ DIST poetry_core-2.2.1.tar.gz 378867 BLAKE2B 973ffc150b9d7942d56378756d9297b4c190322f01048421f4de34dd432ca7af880950c1adc0fcde8fbf4a7e8143e4e0027ab7faebd5789476a7431ba4d09fdc SHA512 786ccaad8cfdd5991d755f811661ce2493b335e6ad927c1a15c62b1055571180759eef63ed14b243677e0bfcedcf08e471bab9e0b261f65096984d2b7370f972 +DIST poetry_core-2.3.0.tar.gz 380922 BLAKE2B 597d1ac22679ced340b0efd78fb5cf7f1250a2625ded3ea945da4d0836d6222239c269961e08a72e7b88bf3d137241eae6f8828516cfbe81dc39f9873ed40c0f SHA512 6bf2e33d6f7268eb0c598fd64eade580f410d68c1669663d2a472675a04b1a09dc23a97bb7fa9c9a13d9eca646a560a4907faf08d5494dc9a0a0572134f10baf +DIST poetry_core-2.3.0.tar.gz.provenance 9465 BLAKE2B 9053b932d721c5bdb20a2b2f015fa9430f538c94f1d4baeaa6c59a3d7c19d1f21d6eae7fae7a26e6f863716724725da5fa67870673eac9eaf41b4f71a61c71ce SHA512 19b05fcb2220defdf2f724978cde6e6cf1e538c9e44a385bd0de0568811fa192e9b34c701ea430bbfc824095d329d60e7b7159bd463e2244cd849fdd74ae2a75 +DIST poetry_core-2.3.1.tar.gz 381093 BLAKE2B f83eff637a980938304d971c4cd6060c0708be15cb1358627d2d27349024ce1b6e3b79b855e600056e6ad4618edb5afa783c175a0fbfe5ef246a1c5c29680b92 SHA512 65b4f606439d31056c75182d9d73d4b48c05fb40bc3aaa956728d9b73f006322567c957b7a6fe27359dcbfa10eb37da99bf10d7219de91c537284a21b5c1c3a3 +DIST poetry_core-2.3.1.tar.gz.provenance 9606 BLAKE2B 6ca145a74c90fc1029d5b8a35e0e40f6fc13f5bf4a8b4d5bbc1d365222699f3ab33d8bd86ed0782bbd51fe37509e8963ad6231a4f249defc1e99475e8bc681db SHA512 5f4f1b7e9eceff54725ea7888d5fbbeb6668721ffa0b9c1267e619f2e3223b514762d5c76924cca7a4e28ac577a35cd7ffa063c7638bd2b7c4a588a2a01978b4 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-2.3.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-2.3.0.ebuild new file mode 100644 index 00000000000..680262a9bd0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-2.3.0.ebuild @@ -0,0 +1,67 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=standalone +PYPI_VERIFY_REPO=https://github.com/python-poetry/poetry-core +PYTHON_TESTED=( pypy3_11 python3_{11..14} ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) + +inherit distutils-r1 pypi + +DESCRIPTION="Poetry PEP 517 Build Backend" +HOMEPAGE=" + https://github.com/python-poetry/poetry-core/ + https://pypi.org/project/poetry-core/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos" +IUSE="test" +RESTRICT="!test? ( test )" + +# check inside vendors/pyproject.toml +# (note that some are indirect deps) +RDEPEND=" + >=dev-python/fastjsonschema-2.21.2[${PYTHON_USEDEP}] + >=dev-python/lark-1.3.1[${PYTHON_USEDEP}] + >=dev-python/packaging-25.0[${PYTHON_USEDEP}] +" +BDEPEND=" + ${RDEPEND} + test? ( + $(python_gen_cond_dep ' + dev-python/build[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/tomli-w[${PYTHON_USEDEP}] + >=dev-python/trove-classifiers-2022.5.19[${PYTHON_USEDEP}] + >=dev-python/virtualenv-20.21[${PYTHON_USEDEP}] + dev-vcs/git + ' "${PYTHON_TESTED[@]}") + ) +" + +src_prepare() { + # remove vendoring of dependencies + rm -r src/poetry/core/_vendor || die + sed -e '/__vendor_site__/d' -i src/poetry/core/__init__.py || die + + distutils-r1_src_prepare +} + +python_test() { + if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then + einfo "Skipping tests on ${EPYTHON} (unported deps)" + return + fi + + # Poetry expects test to be run inside a git repository, otherwise + # VCS-related logic doesn't get triggered. An empty repository + # suffices, though. + git init || die + + local EPYTEST_PLUGINS=( pytest-mock ) + epytest +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-2.3.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-2.3.1.ebuild new file mode 100644 index 00000000000..e8ed1928c37 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-2.3.1.ebuild @@ -0,0 +1,67 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=standalone +PYPI_VERIFY_REPO=https://github.com/python-poetry/poetry-core +PYTHON_TESTED=( pypy3_11 python3_{11..14} ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) + +inherit distutils-r1 pypi + +DESCRIPTION="Poetry PEP 517 Build Backend" +HOMEPAGE=" + https://github.com/python-poetry/poetry-core/ + https://pypi.org/project/poetry-core/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" +IUSE="test" +RESTRICT="!test? ( test )" + +# check inside vendors/pyproject.toml +# (note that some are indirect deps) +RDEPEND=" + >=dev-python/fastjsonschema-2.21.2[${PYTHON_USEDEP}] + >=dev-python/lark-1.3.1[${PYTHON_USEDEP}] + >=dev-python/packaging-25.0[${PYTHON_USEDEP}] +" +BDEPEND=" + ${RDEPEND} + test? ( + $(python_gen_cond_dep ' + dev-python/build[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/tomli-w[${PYTHON_USEDEP}] + >=dev-python/trove-classifiers-2022.5.19[${PYTHON_USEDEP}] + >=dev-python/virtualenv-20.21[${PYTHON_USEDEP}] + dev-vcs/git + ' "${PYTHON_TESTED[@]}") + ) +" + +src_prepare() { + # remove vendoring of dependencies + rm -r src/poetry/core/_vendor || die + sed -e '/__vendor_site__/d' -i src/poetry/core/__init__.py || die + + distutils-r1_src_prepare +} + +python_test() { + if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then + einfo "Skipping tests on ${EPYTHON} (unported deps)" + return + fi + + # Poetry expects test to be run inside a git repository, otherwise + # VCS-related logic doesn't get triggered. An empty repository + # suffices, though. + git init || die + + local EPYTEST_PLUGINS=( pytest-mock ) + epytest +} From f5d3c2559fdca2c5f11c16d575b17f980b8fc359 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:11 +0000 Subject: [PATCH 097/291] dev-python/pycparser: Sync with Gentoo It's from Gentoo commit e526837d19a99bda44f45b0e5adf1856aa94aa37. Signed-off-by: Flatcar Buildbot --- .../dev-python/pycparser/Manifest | 1 + .../dev-python/pycparser/pycparser-3.0.ebuild | 64 +++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/pycparser/pycparser-3.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pycparser/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/pycparser/Manifest index ce3cbc3af6d..d67b0388aa9 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/pycparser/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/pycparser/Manifest @@ -1,2 +1,3 @@ DIST pycparser-2.22.tar.gz 172736 BLAKE2B a080df68cf114c355949b2911a80e89ed02a64b8d1d03e3c5807222249e5dfd2491f691962885dbadcdaf323b55a05c5597319ac082dcf6c67a9ac952be9a7e2 SHA512 c9a81c78d87162f71281a32a076b279f4f7f2e17253fe14c89c6db5f9b3554a6563ff700c385549a8b51ef8832f99f7bb4ac07f22754c7c475dd91feeb0cf87f DIST pycparser-2.23.tar.gz 173734 BLAKE2B f9a11de129f6b5495df9a25778cfc73c1ed236f522b2c8ca2676fac14b78f35e2928547ea654adff4ea28a2dfa8a51d3a5b2085ab9f40e0d7b9ed5ec4568eb2b SHA512 317f02bf58482b9d80b7395fe6fe5f756230915473b65b219755ccf0f4f1d3b227f508925fcf81fe28bcd6c113cf93e0075bf16a9a499cb306e1627222b1b1a7 +DIST pycparser-3.0.tar.gz 103492 BLAKE2B 20415045953c72f2aa90f1edd2dbace57958dcae74d8ce4fb5676576e30fc94c3657bbb3f688edaa082263844b0fdb98ef0acb2c06825accc81f52270909ada1 SHA512 333504ef076e369661823abcd1d1f0d4e01ebadd43b7039e403d80fc2418500c2ed2c42e7b997c6eaf9c56b16085dfccacc6d0be2d45f0033a90eac1a7ed49d0 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pycparser/pycparser-3.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pycparser/pycparser-3.0.ebuild new file mode 100644 index 00000000000..024f349337b --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/pycparser/pycparser-3.0.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{11..14} python3_{13,14}t pypy3_11 ) + +inherit distutils-r1 pypi + +DESCRIPTION="C parser and AST generator written in Python" +HOMEPAGE=" + https://github.com/eliben/pycparser/ + https://pypi.org/project/pycparser/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + +RDEPEND=" + dev-python/ply:=[${PYTHON_USEDEP}] +" +BDEPEND=" + ${RDEPEND} +" + +distutils_enable_tests unittest + +python_prepare_all() { + # c_ast.py is preprocessed from _c_ast.cfg, really no point + # in regenerating it + + # kill sys.path manipulations to force the tests to use built files + sed -i -e '/sys\.path/d' tests/*.py || die + + # Ensure we can find tests in our directory + sed -i -e 's/from tests.test_util/from test_util/g' tests/test_*.py || die + + ln -s "${S}"/examples tests/examples || die + + rm tests/test_examples.py || die + + distutils-r1_python_prepare_all +} + +python_test() { + # Skip tests if cpp is not in PATH + type -P cpp >/dev/null || return 0 + # change workdir to avoid '.' import + cd tests || die + + # Ensure that 'cpp' is called with the right arguments + # Tests don't seem to always pass the include they intend to use. + mkdir -p "${T}"/bin || die + cat > "${T}"/bin/cpp <<-EOF || die + #!${BROOT}/bin/bash + exec ${BROOT}/usr/bin/cpp -I${S}/utils/fake_libc_include/ \$@ + EOF + chmod +x "${T}"/bin/cpp || die + + PATH="${T}/bin:${PATH}" eunittest +} From 7728babd77a1ef0579dc17c4f2d5ab3c86e28afd Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:16 +0000 Subject: [PATCH 098/291] dev-python/requests: Sync with Gentoo It's from Gentoo commit 64a9ee14843b40b7a4b5c7cda7ea8b1796b6c11b. Signed-off-by: Flatcar Buildbot --- .../requests/requests-2.32.5-r1.ebuild | 73 +++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/requests/requests-2.32.5-r1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/requests/requests-2.32.5-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/requests/requests-2.32.5-r1.ebuild new file mode 100644 index 00000000000..a62bff0d236 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/requests/requests-2.32.5-r1.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{11..14} pypy3_11 ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 pypi + +DESCRIPTION="HTTP library for human beings" +HOMEPAGE=" + https://requests.readthedocs.io/ + https://github.com/psf/requests/ + https://pypi.org/project/requests/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" +IUSE="socks5 test-rust" + +RDEPEND=" + >=dev-python/certifi-2017.4.17[${PYTHON_USEDEP}] + =dev-python/pysocks-1.5.6[${PYTHON_USEDEP}] ) +" + +BDEPEND=" + test? ( + >=dev-python/pysocks-1.5.6[${PYTHON_USEDEP}] + test-rust? ( + dev-python/trustme[${PYTHON_USEDEP}] + ) + ) +" + +EPYTEST_PLUGINS=( pytest-{httpbin,mock} ) +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + distutils-r1_src_prepare + + # remove useless dependency check spam + sed -i -e '/def check_compatibility/a\ + return' src/requests/__init__.py || die +} + +python_test() { + local EPYTEST_DESELECT=( + # Internet (doctests) + requests/__init__.py::requests + requests/api.py::requests.api.request + requests/models.py::requests.models.PreparedRequest + requests/sessions.py::requests.sessions.Session + # require IPv4 interface in 10.* range + tests/test_requests.py::TestTimeout::test_connect_timeout + tests/test_requests.py::TestTimeout::test_total_timeout_connect + ) + + if ! has_version "dev-python/trustme[${PYTHON_USEDEP}]"; then + EPYTEST_DESELECT+=( + tests/test_requests.py::TestRequests::test_https_warnings + ) + fi + + epytest +} From 61b919269dace5f9994ec1905258463137741e6b Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:18 +0000 Subject: [PATCH 099/291] dev-python/rich: Sync with Gentoo It's from Gentoo commit ccf6cc94dbe0c11a99aca1a448bc7a867700739a. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-python/rich/Manifest | 4 +- .../rich/files/rich-14.0.0-py314.patch | 84 ------------------- ...{rich-14.1.0.ebuild => rich-14.3.1.ebuild} | 20 +---- .../dev-python/rich/rich-14.3.2.ebuild | 68 +++++++++++++++ .../dev-python/rich/rich-14.3.3.ebuild | 70 ++++++++++++++++ 5 files changed, 143 insertions(+), 103 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-python/rich/files/rich-14.0.0-py314.patch rename sdk_container/src/third_party/portage-stable/dev-python/rich/{rich-14.1.0.ebuild => rich-14.3.1.ebuild} (76%) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/rich/rich-14.3.2.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/rich/rich-14.3.3.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/rich/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/rich/Manifest index 9ce159c9f86..f0957b88e00 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/rich/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/rich/Manifest @@ -1,2 +1,4 @@ -DIST rich-14.1.0.gh.tar.gz 15070577 BLAKE2B b1ce2783dc3292df250f416812a6bd7d1c6cc2f15a979f50dd6811771de3beb01f4baf8d5b1ec50c2929dd572578daac58e332017e62e60f51b45e34ed5ac953 SHA512 39971d8811b754e708aa422f71a777164aee1ec0b76df3b350b637fdd6c3d3a715ccc36dfce587355b4ec95ce73a8d197da1179be13c7c1d936ba45bd2073a64 DIST rich-14.2.0.gh.tar.gz 15072049 BLAKE2B a44560624c3e3b77f279885935a239b162251087a4a58688c40ec7feb84fd7f4948b5966091231e71067131875c3ad71fd8ee4f5e72d90a872c5dc6f08d1d071 SHA512 8e1f7ee149ceac9074cf60ad1298f2b96cdeeb1f71e1e4181101ab0b0da858d03907998a8667fb73154abf02ae511c595257618bcc3321136df253842f8e4a85 +DIST rich-14.3.1.gh.tar.gz 15087781 BLAKE2B c89a1c935db2be86423835ce0f026ec488741cca1de08b32604e89f56ff4f1b7a00758f8bac74a8841803544a49ce5166c786cb8846178288f23ac8f167a8af2 SHA512 7d99cf7a2fa3682d27792d37b39a6ffd5ce403498581b7f19e829c709e49ca01f8a1290b5909eea8323879cccaafdad0301e2de81b4312f0c16751905afbc146 +DIST rich-14.3.2.gh.tar.gz 15086838 BLAKE2B 4ed2d676273dcb671b602982709179e7e2d317ce39ee1b882ee3c52c844b0357b6c4ab11e0617dd4db9edcd4865a01975f453b2fde8f97e73bced962467e315e SHA512 68a82b2c19c9ccf475549f5c096b646b40606626d86425ab2b87a18010039fca275ab431d96775a2770530ae975213109d984ed1934127c361c56f705c0dc13a +DIST rich-14.3.3.gh.tar.gz 15087403 BLAKE2B 3d21a0b1e5b5441bdcb9d0051a552ffe771287707bc0ab24d75cea5f6dc14b8fad9daffd0d4b1f0704c96883259d11a0c57701ae7c2628b86157912a1b7fa591 SHA512 61026597c8224f64bb113231dc1e991b7ed471793c72700ca8d52adf5234f96c84de09ec8d175a60582e68d8ff935c507fdb2599d0a567832f739abcb599ef96 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/rich/files/rich-14.0.0-py314.patch b/sdk_container/src/third_party/portage-stable/dev-python/rich/files/rich-14.0.0-py314.patch deleted file mode 100644 index 4684f2b469e..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/rich/files/rich-14.0.0-py314.patch +++ /dev/null @@ -1,84 +0,0 @@ -https://github.com/Textualize/rich/pull/3622 - -From 91bbeac3ec8b87790865be974260d44adc8def61 Mon Sep 17 00:00:00 2001 -From: Karolina Surma -Date: Tue, 28 Jan 2025 10:03:26 +0100 -Subject: [PATCH] Skip tests which are expected to fail with Python 3.14 - ---- - tests/test_inspect.py | 9 +++++++++ - tests/test_pretty.py | 5 +++++ - 2 files changed, 14 insertions(+) - -diff --git a/tests/test_inspect.py b/tests/test_inspect.py -index 130e8df12..fd1d26e2c 100644 ---- a/tests/test_inspect.py -+++ b/tests/test_inspect.py -@@ -43,6 +43,11 @@ - reason="rendered differently on py3.13", - ) - -+skip_py314 = pytest.mark.skipif( -+ sys.version_info.minor == 14 and sys.version_info.major == 3, -+ reason="rendered differently on py3.14", -+) -+ - skip_pypy3 = pytest.mark.skipif( - hasattr(sys, "pypy_version_info"), - reason="rendered differently on pypy3", -@@ -139,6 +144,7 @@ def test_inspect_empty_dict(): - assert render({}).startswith(expected) - - -+@skip_py314 - @skip_py313 - @skip_py312 - @skip_py311 -@@ -219,6 +225,7 @@ def test_inspect_integer_with_value(): - @skip_py311 - @skip_py312 - @skip_py313 -+@skip_py314 - def test_inspect_integer_with_methods_python38_and_python39(): - expected = ( - "╭──────────────── ─────────────────╮\n" -@@ -257,6 +264,7 @@ def test_inspect_integer_with_methods_python38_and_python39(): - @skip_py311 - @skip_py312 - @skip_py313 -+@skip_py314 - def test_inspect_integer_with_methods_python310only(): - expected = ( - "╭──────────────── ─────────────────╮\n" -@@ -299,6 +307,7 @@ def test_inspect_integer_with_methods_python310only(): - @skip_py310 - @skip_py312 - @skip_py313 -+@skip_py314 - def test_inspect_integer_with_methods_python311(): - # to_bytes and from_bytes methods on int had minor signature change - - # they now, as of 3.11, have default values for all of their parameters -diff --git a/tests/test_pretty.py b/tests/test_pretty.py -index 90be42f87..29331d9d5 100644 ---- a/tests/test_pretty.py -+++ b/tests/test_pretty.py -@@ -38,6 +38,10 @@ - sys.version_info.minor == 13 and sys.version_info.major == 3, - reason="rendered differently on py3.13", - ) -+skip_py314 = pytest.mark.skipif( -+ sys.version_info.minor == 14 and sys.version_info.major == 3, -+ reason="rendered differently on py3.14", -+) - - - def test_install() -> None: -@@ -639,6 +643,7 @@ class Nada: - @skip_py311 - @skip_py312 - @skip_py313 -+@skip_py314 - def test_attrs_broken() -> None: - @attr.define - class Foo: - diff --git a/sdk_container/src/third_party/portage-stable/dev-python/rich/rich-14.1.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/rich/rich-14.3.1.ebuild similarity index 76% rename from sdk_container/src/third_party/portage-stable/dev-python/rich/rich-14.1.0.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/rich/rich-14.3.1.ebuild index d35f77f8b60..11e999ca01e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/rich/rich-14.1.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/rich/rich-14.3.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -20,7 +20,7 @@ SRC_URI=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" RDEPEND=" dev-python/colorama[${PYTHON_USEDEP}] @@ -33,11 +33,6 @@ BDEPEND=" ) " -PATCHES=( - # https://github.com/Textualize/rich/pull/3622 - "${FILESDIR}"/${PN}-14.0.0-py314.patch -) - EPYTEST_PLUGINS=() distutils_enable_tests pytest @@ -57,22 +52,11 @@ python_test() { ) # version-specific output -- the usual deal case ${EPYTHON} in - pypy3) - EPYTEST_DESELECT+=( - # pypy3.10, to be more precise - tests/test_inspect.py::test_inspect_integer_with_methods_python310only - ) - ;; pypy3.11) EPYTEST_DESELECT+=( tests/test_inspect.py::test_inspect_integer_with_methods_python311 ) ;; - python3.14*) - EPYTEST_DESELECT+=( - # Span vs Style - tests/test_text.py::test_assemble_meta - ) esac local -x COLUMNS=80 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/rich/rich-14.3.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/rich/rich-14.3.2.ebuild new file mode 100644 index 00000000000..11e999ca01e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/rich/rich-14.3.2.ebuild @@ -0,0 +1,68 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=poetry +PYTHON_COMPAT=( python3_{11..14} pypy3_11 ) + +inherit distutils-r1 optfeature + +DESCRIPTION="Python library for rendering rich text, tables, etc. to the terminal" +HOMEPAGE=" + https://github.com/Textualize/rich/ + https://pypi.org/project/rich/ +" +SRC_URI=" + https://github.com/Textualize/rich/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-python/colorama[${PYTHON_USEDEP}] + >=dev-python/markdown-it-py-2.2.0[${PYTHON_USEDEP}] + >=dev-python/pygments-2.13.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + >=dev-python/attrs-21.4.0[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # TODO + tests/test_console.py::test_size_can_fall_back_to_std_descriptors + # TODO: segfault in recursion (PyQt6 interfering?) + tests/test_traceback.py::test_recursive + # TODO: some random dep changes? + tests/test_markdown.py::test_inline_code + tests/test_syntax.py::test_blank_lines + tests/test_syntax.py::test_python_render_simple_indent_guides + # pygments version? + tests/test_syntax.py::test_from_path + tests/test_syntax.py::test_syntax_guess_lexer + ) + # version-specific output -- the usual deal + case ${EPYTHON} in + pypy3.11) + EPYTEST_DESELECT+=( + tests/test_inspect.py::test_inspect_integer_with_methods_python311 + ) + ;; + esac + + local -x COLUMNS=80 + epytest +} + +pkg_postinst() { + optfeature "integration with HTML widgets for Jupyter" dev-python/ipywidgets +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/rich/rich-14.3.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/rich/rich-14.3.3.ebuild new file mode 100644 index 00000000000..4dcc880bb5b --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/rich/rich-14.3.3.ebuild @@ -0,0 +1,70 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=poetry +PYTHON_COMPAT=( python3_{11..14} pypy3_11 ) + +inherit distutils-r1 optfeature + +DESCRIPTION="Python library for rendering rich text, tables, etc. to the terminal" +HOMEPAGE=" + https://github.com/Textualize/rich/ + https://pypi.org/project/rich/ +" +SRC_URI=" + https://github.com/Textualize/rich/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-python/colorama[${PYTHON_USEDEP}] + >=dev-python/markdown-it-py-2.2.0[${PYTHON_USEDEP}] + >=dev-python/pygments-2.13.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + >=dev-python/attrs-21.4.0[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # TODO + tests/test_console.py::test_size_can_fall_back_to_std_descriptors + # TODO: segfault in recursion (PyQt6 interfering?) + tests/test_traceback.py::test_recursive + # TODO: some random dep changes? + tests/test_markdown.py::test_inline_code + tests/test_syntax.py::test_blank_lines + tests/test_syntax.py::test_python_render_simple_indent_guides + # pygments version? + tests/test_syntax.py::test_from_path + tests/test_syntax.py::test_syntax_guess_lexer + # flaky? plain broken? + tests/test_console.py::test_brokenpipeerror + ) + # version-specific output -- the usual deal + case ${EPYTHON} in + pypy3.11) + EPYTEST_DESELECT+=( + tests/test_inspect.py::test_inspect_integer_with_methods_python311 + ) + ;; + esac + + local -x COLUMNS=80 + epytest +} + +pkg_postinst() { + optfeature "integration with HTML widgets for Jupyter" dev-python/ipywidgets +} From f33162619bd7dc7ffdb26e1d39ab7a012b8228af Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:18 +0000 Subject: [PATCH 100/291] dev-python/setuptools: Sync with Gentoo It's from Gentoo commit 568efdd37fb03badaa74b6b59b9b21a36733ab8e. Signed-off-by: Flatcar Buildbot --- .../dev-python/setuptools/Manifest | 3 + .../setuptools/setuptools-80.10.2.ebuild | 119 +++++++++++++++++ .../setuptools/setuptools-81.0.0.ebuild | 121 ++++++++++++++++++ .../setuptools/setuptools-82.0.0.ebuild | 121 ++++++++++++++++++ 4 files changed, 364 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-80.10.2.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-81.0.0.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-82.0.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/Manifest index c3c8b6c9b13..e7063abfcc0 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/Manifest @@ -1,2 +1,5 @@ DIST setuptools-79.0.1.tar.gz 1367909 BLAKE2B d495a22753400b3b0ef71423e2c9b5adaad1a065d1f9638b5da8161b29c453495701c3efaa3abd2482777e186ba992bd7b57090dfc711d9cdfdaa8254616a8ff SHA512 5b68d7cc775f4318e178f7d7f69c60a01b1abc607411e88c88e3507a08bd85eed241b915d4be5f3ada90df4b68718056c2ba032943c1f53fe68d171c7d728179 +DIST setuptools-80.10.2.tar.gz 1200343 BLAKE2B 575eacccf3f9f846658d55d55425263d8847419644e62506b9e953c5a5db541dc6b3d8c4fcf096ec1e46406ecad545569111dc265aa8474ba17ebe57a10b382d SHA512 7dbc657878b418a9bdba124e5b8f98228af0590ffbb02c6396ac5b3d84be8f04b327780a7b1f9fa223d4c179004e822e2b00eec673f8eeb700b08b095ff6491d DIST setuptools-80.9.0.tar.gz 1319958 BLAKE2B ab367912eec92b0d1251916d09c1dd2e311767eec87225beaff870dff923b47ba1732d2f7393b7d9e55d1ff1249c612e4403019e0021048951f9fc3b775c04c9 SHA512 36eb1f219d29c6b9e135936bde2001ad70a971c8069cd0175d3a5325b450e6843a903d3f70043c9f534768ebeab8ab0c544b8f44456555d333f1ed72daa5c18b +DIST setuptools-81.0.0.tar.gz 1198299 BLAKE2B a92fa15e03c99f6d7acbc0a24e6d3b4b31d514c031195b1dd0ae238611c44c3c979847c45437e5e4221fb8f750a7264fb55235ee7d4a8207ef19a67306d5360c SHA512 4dda2f0796d1a32d160e0786fc6ebb9908483e16edac6b0335df4779a0a8331f13b70fbf69986a27cc8f6ff10c1f696599059710fef99f36ff1e766f04220466 +DIST setuptools-82.0.0.tar.gz 1144893 BLAKE2B dae5c129ba4f490f7e9e7cfc42ff4147010fcd2f63e7e5bf6635a4153e5c3882f2ee265f01baa23d8c0f6c562c90c5408a998db0b95e5ea9c5a2fade167059d5 SHA512 52424f813bb8efa1d3aa8cb910338d29c36c6a641f7ded91d298c1abe7c1a24d572c60c14c028f3825af29b46d57a4ee454845b1d22b73b03278a9500d957dd9 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-80.10.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-80.10.2.ebuild new file mode 100644 index 00000000000..6c954549ef5 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-80.10.2.ebuild @@ -0,0 +1,119 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +# please bump dev-python/ensurepip-setuptools along with this package! + +DISTUTILS_USE_PEP517=standalone +PYTHON_TESTED=( python3_{11..14} pypy3_11 ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" python3_{13,14}t ) +PYTHON_REQ_USE="xml(+)" + +inherit distutils-r1 pypi + +DESCRIPTION="Collection of extensions to Distutils" +HOMEPAGE=" + https://github.com/pypa/setuptools/ + https://pypi.org/project/setuptools/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-python/jaraco-functools-4.4.0[${PYTHON_USEDEP}] + >=dev-python/jaraco-text-4.0.0[${PYTHON_USEDEP}] + >=dev-python/more-itertools-10.8.0[${PYTHON_USEDEP}] + >=dev-python/packaging-25.0[${PYTHON_USEDEP}] + >=dev-python/platformdirs-4.4.0[${PYTHON_USEDEP}] + >=dev-python/wheel-0.45.1[${PYTHON_USEDEP}] +" +BDEPEND=" + ${RDEPEND} + test? ( + $(python_gen_cond_dep ' + >=dev-python/build-1.0.3[${PYTHON_USEDEP}] + >=dev-python/ini2toml-0.14[${PYTHON_USEDEP}] + >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}] + >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-path-3.7.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-test-5.5[${PYTHON_USEDEP}] + dev-python/pip[${PYTHON_USEDEP}] + dev-python/pyproject-hooks[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + >=dev-python/pytest-home-0.5[${PYTHON_USEDEP}] + dev-python/pytest-subprocess[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] + >=dev-python/virtualenv-20[${PYTHON_USEDEP}] + ' "${PYTHON_TESTED[@]}") + ) +" +# setuptools-scm is here because installing plugins apparently breaks stuff at +# runtime, so let's pull it early. See bug #663324. +# +# trove-classifiers are optionally used in validation, if they are +# installed. Since we really oughtn't block them, let's always enforce +# the newest version for the time being to avoid errors. +# https://github.com/pypa/setuptools/issues/4459 +PDEPEND=" + dev-python/setuptools-scm[${PYTHON_USEDEP}] + >=dev-python/trove-classifiers-2024.10.16[${PYTHON_USEDEP}] +" + +src_prepare() { + local PATCHES=( + # https://github.com/abravalheri/validate-pyproject/pull/221 + "${FILESDIR}/setuptools-75.6.0-disable-trove-classifiers.patch" + ) + + distutils-r1_src_prepare + + # remove bundled dependencies + rm -r */_vendor || die +} + +python_test() { + if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then + return + fi + + local EPYTEST_DESELECT=( + # broken by unbundling (e.g. installs self-wheel into venv) + setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta + setuptools/tests/test_distutils_adoption.py + setuptools/tests/test_editable_install.py + setuptools/tests/test_sdist.py::test_sanity_check_setuptools_own_sdist + setuptools/tests/test_setuptools.py::test_wheel_includes_vendored_metadata + setuptools/tests/test_virtualenv.py::test_no_missing_dependencies + # TODO + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors + # TODO, probably some random package + setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass + # relies on -Werror + setuptools/_static.py::setuptools._static.Dict + setuptools/_static.py::setuptools._static.List + # Internet + setuptools/tests/test_build_py.py::TestTypeInfoFiles::test_type_files_included_by_default + setuptools/tests/test_dist.py::test_dist_fetch_build_egg + setuptools/tests/test_namespaces.py::TestNamespaces::test_mixed_site_and_non_site + setuptools/tests/test_namespaces.py::TestNamespaces::test_namespace_package_installed_and_cwd + setuptools/tests/test_namespaces.py::TestNamespaces::test_packages_in_the_same_namespace_installed_and_cwd + setuptools/tests/test_namespaces.py::TestNamespaces::test_pkg_resources_import + # broken by warnings from setuptools-scm + setuptools/tests/config/test_apply_pyprojecttoml.py::TestPresetField::test_scripts_dont_require_dynamic_entry_points + ) + + local EPYTEST_XDIST=1 + local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH} + local EPYTEST_PLUGINS=( pytest-{home,subprocess,timeout} ) + epytest -o tmp_path_retention_policy=all \ + -m "not uses_network" setuptools +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-81.0.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-81.0.0.ebuild new file mode 100644 index 00000000000..4daedc1b7e6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-81.0.0.ebuild @@ -0,0 +1,121 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +# please bump dev-python/ensurepip-setuptools along with this package! + +DISTUTILS_USE_PEP517=standalone +PYTHON_TESTED=( python3_{11..14} pypy3_11 ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" python3_{13,14}t ) +PYTHON_REQ_USE="xml(+)" + +inherit distutils-r1 pypi + +DESCRIPTION="Collection of extensions to Distutils" +HOMEPAGE=" + https://github.com/pypa/setuptools/ + https://pypi.org/project/setuptools/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-python/jaraco-functools-4.4.0[${PYTHON_USEDEP}] + >=dev-python/jaraco-text-4.0.0[${PYTHON_USEDEP}] + >=dev-python/more-itertools-10.8.0[${PYTHON_USEDEP}] + >=dev-python/packaging-25.0[${PYTHON_USEDEP}] + >=dev-python/platformdirs-4.4.0[${PYTHON_USEDEP}] + >=dev-python/wheel-0.45.1[${PYTHON_USEDEP}] +" +BDEPEND=" + ${RDEPEND} + test? ( + $(python_gen_cond_dep ' + >=dev-python/build-1.0.3[${PYTHON_USEDEP}] + >=dev-python/ini2toml-0.14[${PYTHON_USEDEP}] + >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}] + >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-path-3.7.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-test-5.5[${PYTHON_USEDEP}] + dev-python/pip[${PYTHON_USEDEP}] + dev-python/pyproject-hooks[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + >=dev-python/pytest-home-0.5[${PYTHON_USEDEP}] + dev-python/pytest-subprocess[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] + >=dev-python/virtualenv-20[${PYTHON_USEDEP}] + ' "${PYTHON_TESTED[@]}") + ) +" +# setuptools-scm is here because installing plugins apparently breaks stuff at +# runtime, so let's pull it early. See bug #663324. +# +# trove-classifiers are optionally used in validation, if they are +# installed. Since we really oughtn't block them, let's always enforce +# the newest version for the time being to avoid errors. +# https://github.com/pypa/setuptools/issues/4459 +PDEPEND=" + dev-python/setuptools-scm[${PYTHON_USEDEP}] + >=dev-python/trove-classifiers-2024.10.16[${PYTHON_USEDEP}] +" + +src_prepare() { + local PATCHES=( + # https://github.com/abravalheri/validate-pyproject/pull/221 + "${FILESDIR}/setuptools-75.6.0-disable-trove-classifiers.patch" + ) + + distutils-r1_src_prepare + + # remove bundled dependencies + rm -r */_vendor || die +} + +python_test() { + if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then + return + fi + + local EPYTEST_DESELECT=( + # broken by unbundling (e.g. installs self-wheel into venv) + setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta + setuptools/tests/test_distutils_adoption.py + setuptools/tests/test_editable_install.py + setuptools/tests/test_sdist.py::test_sanity_check_setuptools_own_sdist + setuptools/tests/test_setuptools.py::test_wheel_includes_vendored_metadata + setuptools/tests/test_virtualenv.py::test_no_missing_dependencies + # TODO + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors + # TODO, probably some random package + setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass + # relies on -Werror + setuptools/_static.py::setuptools._static.Dict + setuptools/_static.py::setuptools._static.List + # Internet + setuptools/tests/test_build_py.py::TestTypeInfoFiles::test_type_files_included_by_default + setuptools/tests/test_dist.py::test_dist_fetch_build_egg + setuptools/tests/test_namespaces.py::TestNamespaces::test_mixed_site_and_non_site + setuptools/tests/test_namespaces.py::TestNamespaces::test_namespace_package_installed_and_cwd + setuptools/tests/test_namespaces.py::TestNamespaces::test_packages_in_the_same_namespace_installed_and_cwd + setuptools/tests/test_namespaces.py::TestNamespaces::test_pkg_resources_import + # broken by warnings from setuptools-scm + setuptools/tests/config/test_apply_pyprojecttoml.py::TestPresetField::test_scripts_dont_require_dynamic_entry_points + # TODO + 'setuptools/tests/test_egg_info.py::TestEggInfo::test_requires[setup_requires_with_markers]' + ) + + local EPYTEST_XDIST=1 + local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH} + local EPYTEST_PLUGINS=( pytest-{home,subprocess,timeout} ) + epytest -o tmp_path_retention_policy=all \ + -m "not uses_network" setuptools +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-82.0.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-82.0.0.ebuild new file mode 100644 index 00000000000..4daedc1b7e6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-82.0.0.ebuild @@ -0,0 +1,121 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +# please bump dev-python/ensurepip-setuptools along with this package! + +DISTUTILS_USE_PEP517=standalone +PYTHON_TESTED=( python3_{11..14} pypy3_11 ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" python3_{13,14}t ) +PYTHON_REQ_USE="xml(+)" + +inherit distutils-r1 pypi + +DESCRIPTION="Collection of extensions to Distutils" +HOMEPAGE=" + https://github.com/pypa/setuptools/ + https://pypi.org/project/setuptools/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-python/jaraco-functools-4.4.0[${PYTHON_USEDEP}] + >=dev-python/jaraco-text-4.0.0[${PYTHON_USEDEP}] + >=dev-python/more-itertools-10.8.0[${PYTHON_USEDEP}] + >=dev-python/packaging-25.0[${PYTHON_USEDEP}] + >=dev-python/platformdirs-4.4.0[${PYTHON_USEDEP}] + >=dev-python/wheel-0.45.1[${PYTHON_USEDEP}] +" +BDEPEND=" + ${RDEPEND} + test? ( + $(python_gen_cond_dep ' + >=dev-python/build-1.0.3[${PYTHON_USEDEP}] + >=dev-python/ini2toml-0.14[${PYTHON_USEDEP}] + >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}] + >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-path-3.7.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-test-5.5[${PYTHON_USEDEP}] + dev-python/pip[${PYTHON_USEDEP}] + dev-python/pyproject-hooks[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + >=dev-python/pytest-home-0.5[${PYTHON_USEDEP}] + dev-python/pytest-subprocess[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] + >=dev-python/virtualenv-20[${PYTHON_USEDEP}] + ' "${PYTHON_TESTED[@]}") + ) +" +# setuptools-scm is here because installing plugins apparently breaks stuff at +# runtime, so let's pull it early. See bug #663324. +# +# trove-classifiers are optionally used in validation, if they are +# installed. Since we really oughtn't block them, let's always enforce +# the newest version for the time being to avoid errors. +# https://github.com/pypa/setuptools/issues/4459 +PDEPEND=" + dev-python/setuptools-scm[${PYTHON_USEDEP}] + >=dev-python/trove-classifiers-2024.10.16[${PYTHON_USEDEP}] +" + +src_prepare() { + local PATCHES=( + # https://github.com/abravalheri/validate-pyproject/pull/221 + "${FILESDIR}/setuptools-75.6.0-disable-trove-classifiers.patch" + ) + + distutils-r1_src_prepare + + # remove bundled dependencies + rm -r */_vendor || die +} + +python_test() { + if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then + return + fi + + local EPYTEST_DESELECT=( + # broken by unbundling (e.g. installs self-wheel into venv) + setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta + setuptools/tests/test_distutils_adoption.py + setuptools/tests/test_editable_install.py + setuptools/tests/test_sdist.py::test_sanity_check_setuptools_own_sdist + setuptools/tests/test_setuptools.py::test_wheel_includes_vendored_metadata + setuptools/tests/test_virtualenv.py::test_no_missing_dependencies + # TODO + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors + # TODO, probably some random package + setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass + # relies on -Werror + setuptools/_static.py::setuptools._static.Dict + setuptools/_static.py::setuptools._static.List + # Internet + setuptools/tests/test_build_py.py::TestTypeInfoFiles::test_type_files_included_by_default + setuptools/tests/test_dist.py::test_dist_fetch_build_egg + setuptools/tests/test_namespaces.py::TestNamespaces::test_mixed_site_and_non_site + setuptools/tests/test_namespaces.py::TestNamespaces::test_namespace_package_installed_and_cwd + setuptools/tests/test_namespaces.py::TestNamespaces::test_packages_in_the_same_namespace_installed_and_cwd + setuptools/tests/test_namespaces.py::TestNamespaces::test_pkg_resources_import + # broken by warnings from setuptools-scm + setuptools/tests/config/test_apply_pyprojecttoml.py::TestPresetField::test_scripts_dont_require_dynamic_entry_points + # TODO + 'setuptools/tests/test_egg_info.py::TestEggInfo::test_requires[setup_requires_with_markers]' + ) + + local EPYTEST_XDIST=1 + local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH} + local EPYTEST_PLUGINS=( pytest-{home,subprocess,timeout} ) + epytest -o tmp_path_retention_policy=all \ + -m "not uses_network" setuptools +} From 5fcb027c9380f5091f489dfd1341d7ebbde984b5 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:20 +0000 Subject: [PATCH 101/291] dev-python/snakeoil: Sync with Gentoo It's from Gentoo commit 2c773e026109ffd7b953ede0f19a0a3ffc95b7d7. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-python/snakeoil/snakeoil-0.11.0.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.11.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.11.0.ebuild index 48283cb36c6..2fcd7bf922b 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.11.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.11.0.ebuild @@ -13,7 +13,7 @@ if [[ ${PV} == *9999 ]] ; then https://github.com/pkgcore/snakeoil.git" inherit git-r3 else - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" inherit pypi fi From d0ebcd2ca07515cb542b4d573f285b8a4afe2bfc Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:23 +0000 Subject: [PATCH 102/291] dev-python/trove-classifiers: Sync with Gentoo It's from Gentoo commit e4a5a0d052957db69df93be18a34c0d4c7e27bc2. Signed-off-by: Flatcar Buildbot --- .../dev-python/trove-classifiers/Manifest | 6 ++- .../trove-classifiers-2025.12.1.14.ebuild | 4 +- .../trove-classifiers-2026.1.12.15.ebuild | 47 +++++++++++++++++++ ... => trove-classifiers-2026.1.14.14.ebuild} | 2 +- 4 files changed, 54 insertions(+), 5 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/trove-classifiers-2026.1.12.15.ebuild rename sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/{trove-classifiers-2025.9.11.17.ebuild => trove-classifiers-2026.1.14.14.ebuild} (97%) diff --git a/sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/Manifest index f3f62c6ddbd..801aead5fbf 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/Manifest @@ -2,5 +2,7 @@ DIST trove_classifiers-2025.11.14.15.tar.gz 16995 BLAKE2B 355786880d2f08c5b61025 DIST trove_classifiers-2025.11.14.15.tar.gz.provenance 9169 BLAKE2B ce6ee2506f391ebb957e3fe39a5ad0efa3bfca54da5cc05dcc604ceec1708f56bcca7ccef91da18f0c704f0ea6c5f9a575f329047da7186c8372a62a9c728047 SHA512 f7b3f5ef0c04b368d8b18b4d3c8b83463ca7cfbbcce0fef592787eb56c105a2d3ce2f4f1850622734fd7f070edba98717f1d9401dff1f078afa36c6be2124913 DIST trove_classifiers-2025.12.1.14.tar.gz 16985 BLAKE2B 0a47c36e8e688213f48e5a964098795a10a9752a62e7af18137932d025a7b85a199f1bbf3de7da204c6e29ff09b2e5d1809ecf46d50428ce4ac8fb1a2f3ca723 SHA512 1cc333b2abefc5efc2aba7943133bc976cd58a58401ebd5bc106924741d84f303cb38c5ab72d3558f1633b393179a7549019c5a53f428b504bae81fc6a219166 DIST trove_classifiers-2025.12.1.14.tar.gz.provenance 9306 BLAKE2B cd3a14e5ea484768785dd45c02112123fc6f1e8fbcc7f521875334c14e95da46eaf952311b79bf1fe6303c768bdb2ceffe7df954b0bf52ce7d789650dfd49f2d SHA512 d212f63e612c04856dfcd67cdbf60d4670e543f7643d11260463bc16b88d5053605b6437f126ab1b50f9e1ea4c0ec5ebb2a6e67a5097453cbfa7935b665408e0 -DIST trove_classifiers-2025.9.11.17.tar.gz 16975 BLAKE2B a00df0a1dbb15b6f7cd5455def2eb3ae9f593d1c3cdf84a8b49ac66352833bcd1f1f539fadf899fd25cf9dac9194d2883db87d7559128408d4c6662bca45dc3f SHA512 652514278a81cf81e62b5062a665f719c2a861f33416aa29e6446a88e57ab5fd68888569556bbc1d97d0a1c713b122a02107358b0b5f51f7e6772e37a9306abf -DIST trove_classifiers-2025.9.11.17.tar.gz.provenance 9341 BLAKE2B d50ae31eae2b9197d2a965de684229f01ab15bffdaef1a9dd826d2189ad3ad2e18eec50a4c4beb943e185f3172e39cbccab65483893935949934a80818a1b32c SHA512 ebfad1a94a1bf2f7fa34ae7409c7b375cb5d727d693c0da0c60f06bac7fa2dc665ef80c9516f232ce0afe6863c4cd825019a9a10c5b2d32c171b480e18cfd265 +DIST trove_classifiers-2026.1.12.15.tar.gz 16978 BLAKE2B d334375ea33ad0286f85a9a50dead750db565227f55c8a060fa9c05b3a4bd71ee08ae7029edd3bf3a9b90fd45716bfdbd4a03fc9f35017c4fd49431fee4343e9 SHA512 80d6ca1be31907c4ebacfbd1eecf80002a45b659d995dfb567ae2061dc316c479d1d9d5a58b6f7da16c4810767a58972aad9eb7cfd6b215bda1b386236b545fc +DIST trove_classifiers-2026.1.12.15.tar.gz.provenance 9486 BLAKE2B 50f113433641424df3571ba378b060c14a9bc84c0b69fbf42d6bcb12ce15180e820dba0f328209b4d6a441f1fab91b8103e753c3630867408abd2013ae957123 SHA512 dee0066fc4786e9dd70897c90cce7baef73be5ac8d10dc016c4cfcbaa81560e26557c9c3f4e79d5b50173650053443836b1f43685ab274a0e37e7cf88c90ec55 +DIST trove_classifiers-2026.1.14.14.tar.gz 16997 BLAKE2B cdf98684df73c358ab68641a857d869a9c6a7d25b781dd6a0c1a843fb76dbf57e201e9acafc24ff3a3923b5970d4b95196df82369bf1d1d12bfccbae95ef32e5 SHA512 8960c233f6c23d71c33e27d48e0e506314007fb09d5856c4018858f8f28cb4d2e417d16a84e7bb7931489f7f454b41b35a52ff42d88d937fe8447524f07147b5 +DIST trove_classifiers-2026.1.14.14.tar.gz.provenance 9482 BLAKE2B 2cbd78a771b3f8c9da5c6ce0e496cd4168ec5317bd1f6d44ec398e09b2742e18cc2bba5f3754171430a325a4b6e8ddb79478fcef625e56886e09a90bee9f2074 SHA512 c4347b04476c3ee81e8e5cc05610b98b1733bce499f59ea87001df5ae7fb56b50bb5d983473e6f69a5b1ec0137e15ebb9972bfafeef588ccf57bc2eb9271d1b2 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/trove-classifiers-2025.12.1.14.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/trove-classifiers-2025.12.1.14.ebuild index a8cd3ab1972..2301e315624 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/trove-classifiers-2025.12.1.14.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/trove-classifiers-2025.12.1.14.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -17,7 +17,7 @@ HOMEPAGE=" LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" EPYTEST_PLUGINS=() distutils_enable_tests pytest diff --git a/sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/trove-classifiers-2026.1.12.15.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/trove-classifiers-2026.1.12.15.ebuild new file mode 100644 index 00000000000..1b135237164 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/trove-classifiers-2026.1.12.15.ebuild @@ -0,0 +1,47 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYPI_VERIFY_REPO=https://github.com/pypa/trove-classifiers +PYTHON_COMPAT=( pypy3_11 python3_{11..14} python3_{13,14}t ) + +inherit distutils-r1 pypi + +DESCRIPTION="Canonical source for classifiers on PyPI (pypi.org)" +HOMEPAGE=" + https://github.com/pypa/trove-classifiers/ + https://pypi.org/project/trove-classifiers/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +src_configure() { + grep -q 'build-backend = "setuptools' pyproject.toml || + die "Upstream changed build-backend, recheck" + # write a custom pyproject.toml to ease hatchling bootstrap + cat > pyproject.toml <<-EOF || die + [build-system] + requires = ["flit_core >=3.2,<4"] + build-backend = "flit_core.buildapi" + + [project] + name = "trove-classifiers" + version = "${PV}" + description = "Canonical source for classifiers on PyPI (pypi.org)." + + [project.scripts] + trove-classifiers = "trove_classifiers.__main__:cli" + EOF +} + +python_test() { + epytest + "${EPYTHON}" -m tests.lib || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/trove-classifiers-2025.9.11.17.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/trove-classifiers-2026.1.14.14.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/trove-classifiers-2025.9.11.17.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/trove-classifiers-2026.1.14.14.ebuild index 8aa6c9a0c3a..2301e315624 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/trove-classifiers-2025.9.11.17.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/trove-classifiers/trove-classifiers-2026.1.14.14.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 From 12452763a368d6b8be08ce56edefc83fbe341963 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:26 +0000 Subject: [PATCH 103/291] dev-python/uc-micro-py: Sync with Gentoo It's from Gentoo commit 68e475d10cfd07d0f98fd4916d83d46a0b5a4946. Signed-off-by: Flatcar Buildbot --- .../dev-python/uc-micro-py/Manifest | 2 ++ .../uc-micro-py/uc-micro-py-2.0.0.ebuild | 23 +++++++++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/uc-micro-py/uc-micro-py-2.0.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/uc-micro-py/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/uc-micro-py/Manifest index 645eaf91b9b..fd280630a44 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/uc-micro-py/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/uc-micro-py/Manifest @@ -1 +1,3 @@ DIST uc-micro-py-1.0.3.tar.gz 6043 BLAKE2B 9d5b4d111d83b2385bb5abcce962d3c8b4a2b4a6e731dfde56aa1e88d02af5c177fbb4f59f475e87f8d863933132fe34b183754f74839acb7a6d1da6aeb2d340 SHA512 6f69c84718e16f5bdac08787f728801bcb95591d984f58044e3914b08a5a9c41885d1106ad8f53afd82940b18e638ed285ccf57d1725582a0c160d7b1e0f265f +DIST uc_micro_py-2.0.0.tar.gz 6611 BLAKE2B d00fb53eb42ce0825f145b53f1522df661547850ecdef9c837b61005c34148f0716bf5231690dd48f55068fff596a96013a40ef141924bef249235ad6ec7bf9e SHA512 cf1b6aca4e6cd01704842414ec2e9fac1ae21a5e5242427f4e3ac836012cd2d560a44796b9c67298eb1c9a9c56f6361f040ace3530cba3e466f0f118772e9866 +DIST uc_micro_py-2.0.0.tar.gz.provenance 9430 BLAKE2B 94f731b44589d0da6dcd6bcbb4e936c11f7ab2b0bd4fe036e839eebe3a5a58ef4b4a25014381ff316087de7ff7ff5b0fe847dfed144d2d39e91381896a088147 SHA512 574dc2c66ced25eccbfefe77d66dd5c18a97ee4dafb7cca02460f758f2156eb90d283afe7337b4ee15bc9d912172da27ea1ca913e8c9062db3062d89f95c95c3 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/uc-micro-py/uc-micro-py-2.0.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/uc-micro-py/uc-micro-py-2.0.0.ebuild new file mode 100644 index 00000000000..d16e3c5226e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/uc-micro-py/uc-micro-py-2.0.0.ebuild @@ -0,0 +1,23 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_VERIFY_REPO=https://github.com/tsutsu3/uc.micro-py +PYTHON_COMPAT=( pypy3_11 python3_{11..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Micro subset of unicode data files for linkify-it-py projects" +HOMEPAGE=" + https://github.com/tsutsu3/uc.micro-py/ + https://pypi.org/project/uc-micro-py/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest From fbff3d797c5aca9cbcaf602043bc887c22d1d42c Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:26 +0000 Subject: [PATCH 104/291] dev-python/urllib3: Sync with Gentoo It's from Gentoo commit 664aea98ee092190cc47555c482dd3447008be0f. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-python/urllib3/urllib3-2.6.3.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-python/urllib3/urllib3-2.6.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/urllib3/urllib3-2.6.3.ebuild index ce23c7a78c1..95ded3d81f9 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/urllib3/urllib3-2.6.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/urllib3/urllib3-2.6.3.ebuild @@ -28,7 +28,7 @@ SRC_URI+=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="brotli http2 test zstd" RESTRICT="!test? ( test )" From 1d7de2f707a5923025247b9a799674a90323093a Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:26 +0000 Subject: [PATCH 105/291] dev-python/wheel: Sync with Gentoo It's from Gentoo commit 8514bd64e30325715334ef78134f231c7c77e4b0. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-python/wheel/Manifest | 4 ++ .../dev-python/wheel/wheel-0.46.2.ebuild | 45 +++++++++++++++++++ .../dev-python/wheel/wheel-0.46.3.ebuild | 45 +++++++++++++++++++ 3 files changed, 94 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.46.2.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.46.3.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/wheel/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/wheel/Manifest index c6f56f57d7b..57190424fb6 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/wheel/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/wheel/Manifest @@ -1 +1,5 @@ DIST wheel-0.45.1.tar.gz 107545 BLAKE2B 13c8d60a2e39ded3d911c9e03915b01bda201f7e8cd6de456484ce6eeb2a990861a01f26e5d9f2ac4ca0ab2b6d0fea9db437d6f82cb39db9b1059c3c53202ec0 SHA512 df45f00e9eaeae2f27f813f31591590c961da2f6bff15bba6fb2a14d529c221f39b29894b8da408fe49cd4b760840a0e05c4baef377ccfacd9983c0bba83d6d8 +DIST wheel-0.46.2.tar.gz 60274 BLAKE2B f26a8d40f0fbe2da6bb8a406b79e5eca50de89309a16a8d0830a269e33340a78b624201400c211a69c991f470f14e99457bb63ec8db3bdf6b37c19d391545f34 SHA512 3337b53164ac1a7031e45708aba9cb259833d314d22564533c4af199ce12d8c89a4b22955ff0c0e9bcaa07bae78c81f08ff12c91d30b3c6be4d42dd9ccad1a31 +DIST wheel-0.46.2.tar.gz.provenance 9073 BLAKE2B 41f8c0d2a602ffab3d68bf57ddc18e4b4dd318beba4590037b2b7fa3811151e7b6fdbf8b8633462e47deba38a755fa8ce249c7d08abc98717f0a1f40eb6e3674 SHA512 b62349b72f682cd9667d0cec0732aab902db0659319850fa3882d3be4f5cbbae87a707f5371aef07fa35eb6f0a88558c439b2e0da4941466e3add9c19c47bf1b +DIST wheel-0.46.3.tar.gz 60605 BLAKE2B f896ffef160915d1a69bfa6dbd5a6cbefdd6b9e4f56867f15c6247d22ff0d6683171c51cf7e0f8808d8ffa536eb6540a1b2cd14ceba4a0e5cb9799d4261964ba SHA512 4bda170a085b00bead5bd5beb1cd865af3699a940774615c087b9e96c86a56a1f3992613df162bc055aebcc84bc0e13df310a38c6102cfc1d5d78e8af33d4e1a +DIST wheel-0.46.3.tar.gz.provenance 9316 BLAKE2B dc911d733141cf7f580e924665d08319f031175c96d4b65704484d153f7a24118ac612adcc33795cbfebd48e4a3fb9b59f7b3d04208b8fd27fa5c16e65819de5 SHA512 af6e542cf028921476106f8f7409f6012b3b7687f49fea45374096c428d114409e8494e8769820a3c2a71a2b94395669247ffce1bab25b6cd2f686dd70117e57 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.46.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.46.2.ebuild new file mode 100644 index 00000000000..0bca16de068 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.46.2.ebuild @@ -0,0 +1,45 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYPI_VERIFY_REPO=https://github.com/pypa/wheel +PYTHON_COMPAT=( python3_{11..14} python3_{13,14}t pypy3_11 ) + +inherit distutils-r1 pypi + +DESCRIPTION="A built-package format for Python" +HOMEPAGE=" + https://github.com/pypa/wheel/ + https://pypi.org/project/wheel/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + +RDEPEND=" + >=dev-python/packaging-26.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/setuptools[${PYTHON_USEDEP}] + ) +" + +# xdist is slightly flaky here +EPYTEST_PLUGINS=( pytest-rerunfailures ) +EPYTEST_RERUNS=5 +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # fails if any setuptools plugin imported the module first + tests/test_bdist_wheel.py::test_deprecated_import + ) + + epytest +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.46.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.46.3.ebuild new file mode 100644 index 00000000000..675acf8caf5 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.46.3.ebuild @@ -0,0 +1,45 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYPI_VERIFY_REPO=https://github.com/pypa/wheel +PYTHON_COMPAT=( python3_{11..14} python3_{13,14}t pypy3_11 ) + +inherit distutils-r1 pypi + +DESCRIPTION="A built-package format for Python" +HOMEPAGE=" + https://github.com/pypa/wheel/ + https://pypi.org/project/wheel/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + +RDEPEND=" + >=dev-python/packaging-26.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/setuptools[${PYTHON_USEDEP}] + ) +" + +# xdist is slightly flaky here +EPYTEST_PLUGINS=( pytest-rerunfailures ) +EPYTEST_RERUNS=5 +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # fails if any setuptools plugin imported the module first + tests/test_bdist_wheel.py::test_deprecated_import + ) + + epytest +} From 29f01f3c0f37aaa21ebbf6c8afa2a2b93c9658c4 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:27 +0000 Subject: [PATCH 106/291] dev-util/bpftool: Sync with Gentoo It's from Gentoo commit 163b57d839a7a6b92515d4d9e7947491ba8120a3. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-util/bpftool/bpftool-7.6.0.ebuild | 4 ++-- .../portage-stable/dev-util/bpftool/bpftool-9999.ebuild | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-util/bpftool/bpftool-7.6.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/bpftool/bpftool-7.6.0.ebuild index 8a8995dca62..26e7f97524d 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/bpftool/bpftool-7.6.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/bpftool/bpftool-7.6.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 2021-2025 Gentoo Authors +# Copyright 2021-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -LLVM_COMPAT=( {15..21} ) +LLVM_COMPAT=( {15..22} ) LLVM_OPTIONAL=1 PYTHON_COMPAT=( python3_{11..14} ) diff --git a/sdk_container/src/third_party/portage-stable/dev-util/bpftool/bpftool-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/bpftool/bpftool-9999.ebuild index 3f8d05a6053..f6ff9c2975a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/bpftool/bpftool-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/bpftool/bpftool-9999.ebuild @@ -1,9 +1,9 @@ -# Copyright 2021-2025 Gentoo Authors +# Copyright 2021-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -LLVM_COMPAT=( {15..21} ) +LLVM_COMPAT=( {15..22} ) LLVM_OPTIONAL=1 PYTHON_COMPAT=( python3_{11..14} ) From 3e92e2f7faadc0504e9c91e4a8fc6707e1ff6e32 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:27 +0000 Subject: [PATCH 107/291] dev-util/catalyst: Sync with Gentoo It's from Gentoo commit e090a6e23d108c2b58c673492bfa623e10c43068. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-util/catalyst/Manifest | 3 +- .../dev-util/catalyst/catalyst-4.0.1.ebuild | 126 ------------------ ...yst-4.0.0.ebuild => catalyst-4.1.1.ebuild} | 16 ++- 3 files changed, 14 insertions(+), 131 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-4.0.1.ebuild rename sdk_container/src/third_party/portage-stable/dev-util/catalyst/{catalyst-4.0.0.ebuild => catalyst-4.1.1.ebuild} (90%) diff --git a/sdk_container/src/third_party/portage-stable/dev-util/catalyst/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/catalyst/Manifest index 0ead15bf7a9..1cf37599efa 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/catalyst/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-util/catalyst/Manifest @@ -1,3 +1,2 @@ -DIST catalyst-4.0.0.tar.bz2 356445 BLAKE2B 1e3dc5fa5a3603b2c7e46277da00877ba34a4bd7a63a3e0f3728cdb9a76782e4dbb1b2f6f950e752e8814fa9da2db1e43280711bd7df44abe649c641760d9240 SHA512 332c9519fd59618c59367299ca1208280a973a0b99f03937831f9b39c643b090599733a0ad3735488de5b11d8581afd2b585a19bfb6a196c4eed899912388499 -DIST catalyst-4.0.1.tar.bz2 356558 BLAKE2B c0a0653fc3f184959bc32ae7daead622503fe901064887e529cb80cba68ca10bc97ed386166fddcc8b04260386eb1f652e196c2a27a0499c749945ce9600ea61 SHA512 b6eda73310d8daacaccfb3b9d7672dbdd22c847ddcd950f83260b7cd5e5931b09d68d4702d7d3444434993ad6baa34b924d7dd1eeaceb5cd609914229fc18eb3 DIST catalyst-4.1.0.tar.bz2 361207 BLAKE2B b8ff0cfe997a5867973f27baed7287c3e4bd87e0dbfd8d6c5b6434a77b9ab1eab4d48f5e360b18dbb744436458ab184d6a1a9f570ca1e28c7b1fe51c5f46f503 SHA512 bbf7a166b6aa86e75d98a00b1ebffebb614346c2b2601592162da2c1729bb671f237f819aa2f5ca82a6bf05a95bd7505894a5472ee72c69e38964b1a3d54d33d +DIST catalyst-4.1.1.tar.bz2 361752 BLAKE2B 881f2f9b5532ed27edab5bad8e99e4720c90d36b011fb475fb2619960abb5a606e1661a4bb357e1469d104a1410a3fe021053a5bf3c404e760de823cb6a0368b SHA512 f068993690b6b5585ce8e794cc7755387a81042301bf1449fd042d39c65a6eaf6512e8ab676c74d416fe99f85de8f2dbb1ca8b6020d6c1e5466f27cea9fd1c6b diff --git a/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-4.0.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-4.0.1.ebuild deleted file mode 100644 index c95797b8fd7..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-4.0.1.ebuild +++ /dev/null @@ -1,126 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -MY_P=${P/_/-} - -if [[ ${PV} == *9999* ]]; then - SRC_ECLASS="git-r3" - EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/catalyst.git" - EGIT_BRANCH="master" -else - SRC_URI="https://gitweb.gentoo.org/proj/catalyst.git/snapshot/${MY_P}.tar.bz2" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - S="${WORKDIR}/${MY_P/_/-}" -fi - -PYTHON_COMPAT=( python3_{12..13} ) -DISTUTILS_USE_PEP517=setuptools - -inherit distutils-r1 linux-info optfeature tmpfiles ${SRC_ECLASS} - -DESCRIPTION="Release metatool used for creating releases based on Gentoo Linux" -HOMEPAGE="https://wiki.gentoo.org/wiki/Catalyst" - -LICENSE="GPL-2+" -SLOT="0" -IUSE="doc +iso" - -BDEPEND=" - app-text/asciidoc -" -DEPEND=" - sys-apps/portage[${PYTHON_USEDEP}] - >=dev-python/snakeoil-0.6.5[${PYTHON_USEDEP}] - dev-python/fasteners[${PYTHON_USEDEP}] - dev-python/tomli[${PYTHON_USEDEP}] - sys-apps/util-linux[python,${PYTHON_USEDEP}] -" -RDEPEND=" - ${DEPEND} - >=dev-python/pydecomp-0.3[${PYTHON_USEDEP}] - app-arch/lbzip2 - app-arch/pixz - app-arch/tar[xattr] - dev-vcs/git - sys-fs/dosfstools - sys-fs/squashfs-tools-ng[tools] - - iso? ( - app-cdr/cdrtools - dev-libs/libisoburn - - amd64? ( - sys-boot/grub[grub_platforms_efi-32,grub_platforms_efi-64] - sys-fs/mtools - ) - arm64? ( - sys-boot/grub[grub_platforms_efi-64] - sys-fs/mtools - ) - ppc? ( - sys-boot/grub:2[grub_platforms_ieee1275] - ) - ppc64? ( - sys-boot/grub:2[grub_platforms_ieee1275] - ) - sparc? ( - sys-boot/grub:2[grub_platforms_ieee1275] - ) - x86? ( - sys-boot/grub[grub_platforms_efi-32] - ) - ) -" - -pkg_setup() { - CONFIG_CHECK=" - ~UTS_NS ~IPC_NS - ~SQUASHFS ~SQUASHFS_ZLIB - " - linux-info_pkg_setup -} - -python_prepare_all() { - python_setup - echo VERSION="${PV}" "${PYTHON}" setup.py set_version - VERSION="${PV}" "${PYTHON}" setup.py set_version || die - distutils-r1_python_prepare_all -} - -# Build man pages here so as to not clobber default src_compile -src_configure() { - # build the man pages and docs - emake -} - -python_install_all() { - distutils-r1_python_install_all - if use doc; then - dodoc files/HOWTO.html files/docbook-xsl.css - fi -} - -python_install() { - distutils-r1_python_install - rm -rv "${D}"$(python_get_sitedir)/usr -} - -src_install() { - distutils-r1_src_install - - echo 'd /var/tmp/catalyst 0755 root root' > "${T}"/catalyst-tmpdir.conf - dotmpfiles "${T}"/catalyst-tmpdir.conf - - doman files/catalyst.1 files/catalyst-config.5 files/catalyst-spec.5 - insinto /etc/catalyst - doins etc/* -} - -pkg_postinst() { - if [[ -z ${REPLACING_VERSIONS} ]]; then - optfeature "ccache support" dev-util/ccache - fi - tmpfiles_process catalyst-tmpdir.conf -} diff --git a/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-4.0.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-4.1.1.ebuild similarity index 90% rename from sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-4.0.0.ebuild rename to sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-4.1.1.ebuild index c95797b8fd7..1b5e0729438 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-4.0.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-4.1.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -25,7 +25,7 @@ HOMEPAGE="https://wiki.gentoo.org/wiki/Catalyst" LICENSE="GPL-2+" SLOT="0" -IUSE="doc +iso" +IUSE="doc +iso qcow2" BDEPEND=" app-text/asciidoc @@ -72,12 +72,22 @@ RDEPEND=" sys-boot/grub[grub_platforms_efi-32] ) ) + + qcow2? ( + amd64? ( + sys-boot/grub[grub_platforms_efi-32,grub_platforms_efi-64] + sys-fs/dosfstools + sys-fs/xfsprogs + sys-block/parted + app-emulation/qemu + ) + ) " pkg_setup() { CONFIG_CHECK=" ~UTS_NS ~IPC_NS - ~SQUASHFS ~SQUASHFS_ZLIB + ~SQUASHFS ~SQUASHFS_ZLIB ~XFS_FS ~VFAT_FS " linux-info_pkg_setup } From 48c8cf2207849d0bd6a1e9fe4da6a1fb36cf9f30 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:28 +0000 Subject: [PATCH 108/291] dev-util/gdbus-codegen: Sync with Gentoo It's from Gentoo commit a9ec86bbd9f78dde7a43afa7598f40cfe73d301a. Signed-off-by: Flatcar Buildbot --- .../third_party/portage-stable/dev-util/gdbus-codegen/Manifest | 2 +- ...{gdbus-codegen-2.86.1.ebuild => gdbus-codegen-2.86.4.ebuild} | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/{gdbus-codegen-2.86.1.ebuild => gdbus-codegen-2.86.4.ebuild} (98%) diff --git a/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/Manifest index fd51d5f62bd..f8c7fd7eaba 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/Manifest @@ -1,3 +1,3 @@ DIST glib-2.82.5.tar.xz 5554704 BLAKE2B e7853034be1137f8b793483df9e9ce1465dd10a990eb9b3cb9ac76c9f8f86ccc6fda85645b04b35963b28c33e0f6c02df4f3d03e06cc278b8515e588d6bd05f6 SHA512 a6b035c32a42b9d6f4c031a29da405848002619654b58c9205f2f78dbb9698cd5866f31ab213adc04aa214d2c48840a9592c0a1e9201e6851ebd435635f393ae DIST glib-2.84.4.tar.xz 5618200 BLAKE2B 5faee382433085cd598545a99e2e95ce430be4ac5ca10106b70f2404ddacf328f4223bc092a23025f9bf8b936619a88a9dfb220674a07e9250cf4213c6213be9 SHA512 2de9b2f7376c0e5f6ee585087090675d597c474199a10d04aad18df688b6ca77d17e93a86ec07482898663f51c82121992272496318138f77ca5ad2c340a4bd3 -DIST glib-2.86.1.tar.xz 5673928 BLAKE2B 571f8738e7ca5568ee9a71f0fddb9eba0eba0ec33cad7540515eb744c3104f69ffe02d5966e47eb568abd04cd111e0b3b004d7c2817177fd5f7bc26e354dec0a SHA512 b2e9a3a35cd4cbe0bb6ca493a4250df480eeb0570a0877880ff4ec6d7f1f98d828249b3b60f839b81f17a33494d95be9d42b5f20fa6bb1acb15bcf5734adba51 +DIST glib-2.86.4.tar.xz 5692304 BLAKE2B 20dee8c99fdb410d7f9c09366f1688dbc075638fdecd44f67562cc9cc46e34712cd1357d5a4facadd36f3c45fceeb83c7910be4f9c819ad20778339cdfb34452 SHA512 13e8beb84f3464f50c9764d0d3c6822a4bb41ae65e6c3ffac4200a5b441acdd2eb6f838a6b0722cae501e367ce9cfd4f8516b684a391c2f088a593172abcacd9 diff --git a/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.86.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.86.4.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.86.1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.86.4.ebuild index 38ec5af58a1..851f8ee3a96 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.86.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.86.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 From 139b2f64b2614d93fb3eb459ea60caf99d40c547 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:28 +0000 Subject: [PATCH 109/291] dev-util/glib-utils: Sync with Gentoo It's from Gentoo commit 1106911ec6bca7d2906981cedd9b7e76a083b5b1. Signed-off-by: Flatcar Buildbot --- .../src/third_party/portage-stable/dev-util/glib-utils/Manifest | 2 +- .../{glib-utils-2.86.1.ebuild => glib-utils-2.86.4.ebuild} | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename sdk_container/src/third_party/portage-stable/dev-util/glib-utils/{glib-utils-2.86.1.ebuild => glib-utils-2.86.4.ebuild} (97%) diff --git a/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/Manifest index fd51d5f62bd..f8c7fd7eaba 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/Manifest @@ -1,3 +1,3 @@ DIST glib-2.82.5.tar.xz 5554704 BLAKE2B e7853034be1137f8b793483df9e9ce1465dd10a990eb9b3cb9ac76c9f8f86ccc6fda85645b04b35963b28c33e0f6c02df4f3d03e06cc278b8515e588d6bd05f6 SHA512 a6b035c32a42b9d6f4c031a29da405848002619654b58c9205f2f78dbb9698cd5866f31ab213adc04aa214d2c48840a9592c0a1e9201e6851ebd435635f393ae DIST glib-2.84.4.tar.xz 5618200 BLAKE2B 5faee382433085cd598545a99e2e95ce430be4ac5ca10106b70f2404ddacf328f4223bc092a23025f9bf8b936619a88a9dfb220674a07e9250cf4213c6213be9 SHA512 2de9b2f7376c0e5f6ee585087090675d597c474199a10d04aad18df688b6ca77d17e93a86ec07482898663f51c82121992272496318138f77ca5ad2c340a4bd3 -DIST glib-2.86.1.tar.xz 5673928 BLAKE2B 571f8738e7ca5568ee9a71f0fddb9eba0eba0ec33cad7540515eb744c3104f69ffe02d5966e47eb568abd04cd111e0b3b004d7c2817177fd5f7bc26e354dec0a SHA512 b2e9a3a35cd4cbe0bb6ca493a4250df480eeb0570a0877880ff4ec6d7f1f98d828249b3b60f839b81f17a33494d95be9d42b5f20fa6bb1acb15bcf5734adba51 +DIST glib-2.86.4.tar.xz 5692304 BLAKE2B 20dee8c99fdb410d7f9c09366f1688dbc075638fdecd44f67562cc9cc46e34712cd1357d5a4facadd36f3c45fceeb83c7910be4f9c819ad20778339cdfb34452 SHA512 13e8beb84f3464f50c9764d0d3c6822a4bb41ae65e6c3ffac4200a5b441acdd2eb6f838a6b0722cae501e367ce9cfd4f8516b684a391c2f088a593172abcacd9 diff --git a/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.86.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.86.4.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.86.1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.86.4.ebuild index 7a6cede6331..37c201f7571 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.86.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.86.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 From fc3fe04bd002d0208483f4ecbad9f75a287e4f03 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:28 +0000 Subject: [PATCH 110/291] dev-util/maturin: Sync with Gentoo It's from Gentoo commit d4ea7bac8bf2c47e6e02d2a7309affa02625539e. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-util/maturin/Manifest | 10 +- .../dev-util/maturin/maturin-1.11.5.ebuild | 2 +- ...in-1.10.2.ebuild => maturin-1.12.3.ebuild} | 10 +- .../dev-util/maturin/maturin-1.12.4.ebuild | 157 ++++++++++++++++++ .../dev-util/maturin/maturin-1.12.5.ebuild | 157 ++++++++++++++++++ .../dev-util/maturin/maturin-1.12.6.ebuild | 157 ++++++++++++++++++ 6 files changed, 485 insertions(+), 8 deletions(-) rename sdk_container/src/third_party/portage-stable/dev-util/maturin/{maturin-1.10.2.ebuild => maturin-1.12.3.ebuild} (94%) create mode 100644 sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.4.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.5.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.6.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-util/maturin/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/maturin/Manifest index 0fbdc98162e..949619858d7 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/maturin/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-util/maturin/Manifest @@ -1,4 +1,10 @@ -DIST maturin-1.10.2-vendor.tar.xz 16239924 BLAKE2B 6561098c0e9c6d42239a53ed01a59d68967df6c26190ea8e35d207ee4631dca9eda588cac8de2f75c47f86f7866d45604bc19e12625fcb6286b2c75dabfda6f6 SHA512 80a588970b93e0cf9f4bca5aa4541bb7aa080c491285fe39cabc8747f2b43f8e7d6cb6bc0b37f24841181bd12a6ba8fe7d0518d5f2dea0f791f0266fda327bde -DIST maturin-1.10.2.gh.tar.gz 586416 BLAKE2B a1aa5edcdc40b96149605b4fbe3672a8f7ec69327b42a96915fd8ba55aa4a03798b59db9d228e8df5be195933613080768ade58ca8d393aae2c123508c9d28a0 SHA512 5b14426d8324e48ccce1979ddc6b71a2055b725d090156a5de5b54c598ed2da282da54e25fe5dfe260ab09f4788f4af6235272e266ee62bd6a690ce5476c758a DIST maturin-1.11.5-vendor.tar.xz 16507616 BLAKE2B 83b6607c91a0925ad52bbdb888eef01fa871a29129600471269d25c9a2a56206c845a56f1bfd5dbcaaf9b74da88df35e6f3c857d551834fc8564853d6e455b0e SHA512 94a8c8cb296afd33da5175e6ce39ecd8ccb739df30bfac0476551352a002032cefa5de6ea41c81f65cd905225d1cf8a13f473594560a8f2a29df563a4adc9e9a DIST maturin-1.11.5.gh.tar.gz 596610 BLAKE2B f78673c59d13211771d37b74468041255cb8f7fa2113851e3fda2da8811e34c1a6e5c0eeb5d61430653342b97f899fff24984446e533759d3db06458afab2eda SHA512 49e7976be5790f524d5a423519c4ee73ccb450f0e84fea5ba691421cd8e303cb4166324d42985b1ae321a71c4295f244632da194a5be7cacbe7951cdbc0dbb92 +DIST maturin-1.12.3-vendor.tar.xz 19238920 BLAKE2B a8e1595ee6a8a843f050308e639989544cb1f63e3587da313e4ed3452f2483ecf1302c569b557732eb990050979fe8b8943010316aff30aa837406b6b1d1f3cb SHA512 9035b935c77583053b79a580a66e0a8eaee5ee63d137b4598e911f4d5b5529dc8eefb2a5201715c7db034f9dbaff8b28c39e5c092770bf9c0d083524fd7130f8 +DIST maturin-1.12.3.gh.tar.gz 641410 BLAKE2B 34266c48f8751306b69791739316f7abdebee27a904ab428e14e8739d958f504993b111eff770cd277dd7f63847e0237e524368dcbedec0630e7172104774d0d SHA512 281e42f73e51c7851752ee1c807632fbabf14d794fd867cd38287531bff0ab1f0c5dd167638064aab44fa677c9d4eb4e3b71bd2ee034b7d97ddafa84b79e3dae +DIST maturin-1.12.4-vendor.tar.xz 19246564 BLAKE2B e641b0d3c1fc4ef84c2f75fed654fb719230c8d9abaac303b0c3b07fdffd3323fe8188d5af5f75f58b17f700a8fcf770975c67e1c65ae727a099911069b50f2c SHA512 5c0131ed31381622a90ae5bf4f6be12a54414ec89fc150affc00a0f9be9900687602c8c70a2c3dddfb2fa9df7135e44ec9bb392883cdb06c715be66e9ac9fe42 +DIST maturin-1.12.4.gh.tar.gz 643715 BLAKE2B 5021b14670738f6e295cc7e5f855488fde0829587aee9809a386ea83bfccf786c7e5c07fa8a3cecda3933c23dc2a18758d695714652345f9436a1d02d761c62a SHA512 bf4b7076f49cf02cd4fc3b463ce88e614c91085c7d02e450a90d3980222148c56afef0ea8c4dcd810075fe2fde4ea25e2cda6dae9d4b886a0c9aa36fe87e07a9 +DIST maturin-1.12.5-vendor.tar.xz 19322640 BLAKE2B e8c537c78ed6cf6a590185d3b5b152fa1761098bfd05c0d68c579d2e0ff4dada3b680c564a26750ff7ff0e4d6870d9922828d59a05d61bb933d02077e0acf65a SHA512 5cba7f88f4a8716441c11ae27f59b3f8dc7debffe5c0f8d41b3dea4944f3d293da3361cea037ea762c4f63e933c8afe502d90f2ba1d19ca9006ff3a4d131cd8b +DIST maturin-1.12.5.gh.tar.gz 648930 BLAKE2B 46f32b6dd0bc8af554841aac26800449737fdb7556df6497bfb7694e8444cabd6c43bc0ead9cb9ebec1d365333136c4e79853ee8606fad1556b3ae0fb27e01b5 SHA512 1f0ea04bdf568839cba8aa3f521e3dc3ff6ffc3b0212731ae6ce2b551992dcf1ee798ba2ac2064bc36d9fbcc4b8541b6ccf588a9e8834955a9976e507711dc07 +DIST maturin-1.12.6-vendor.tar.xz 19339996 BLAKE2B 5fa56bde7c2445eebd51802e58ae53cc9fa7742d04d0b79043f29bdedee8b3e0871042ca1481b310398c3ffd51b518f97bf74c13999c7bc0b83dd2b9e5e4799d SHA512 c32f476784de0d86e4d3ec47a92f9e7d17f5e257b81b7aef8914e76d03d822f8117bb45ea055cb6e391ca1dfa9b6ae211e1eab117cda9559316eff8a1111d2e3 +DIST maturin-1.12.6.gh.tar.gz 650246 BLAKE2B ea808aac177168947c059506ae19c53d322811fc8c0c20c01cf8a40364344daca0a3ffba09032352b0faea2f3f88286509d5fc4434658f30fbe6971aaa6d657f SHA512 49d4e6d759be491f7c689c37738586f0059ec4c0067ed9862858b124aad904504e7af44d2b58c1aa123b268a536ab2bdecef53564c8a0e649e37678fdf0170be diff --git a/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.11.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.11.5.ebuild index 944e25267ff..15ac1adad6e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.11.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.11.5.ebuild @@ -24,7 +24,7 @@ LICENSE+=" Unicode-3.0 ZLIB BZIP2 " # crates SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" IUSE="doc +ssl test" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.10.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.3.ebuild similarity index 94% rename from sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.10.2.ebuild rename to sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.3.ebuild index 69cccbb6929..8641c58221a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.10.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -6,7 +6,7 @@ EAPI=8 DISTUTILS_USE_PEP517=setuptools DISTUTILS_UPSTREAM_PEP517=standalone PYTHON_COMPAT=( pypy3_11 python3_{11..14} ) -RUST_MIN_VER=1.83.0 +RUST_MIN_VER=1.88.0 inherit cargo distutils-r1 flag-o-matic shell-completion toolchain-funcs DESCRIPTION="Build and publish crates with pyo3, rust-cpython and cffi bindings" @@ -20,11 +20,11 @@ SRC_URI=" LICENSE="|| ( Apache-2.0 MIT ) doc? ( OFL-1.1 )" LICENSE+=" - 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT MPL-2.0 - Unicode-3.0 ZLIB BZIP2 + 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD + CDLA-Permissive-2.0 MIT MPL-2.0 Unicode-3.0 ZLIB BZIP2 " # crates SLOT="0" -KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="doc +ssl test" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.4.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.4.ebuild new file mode 100644 index 00000000000..8641c58221a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.4.ebuild @@ -0,0 +1,157 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +DISTUTILS_UPSTREAM_PEP517=standalone +PYTHON_COMPAT=( pypy3_11 python3_{11..14} ) +RUST_MIN_VER=1.88.0 +inherit cargo distutils-r1 flag-o-matic shell-completion toolchain-funcs + +DESCRIPTION="Build and publish crates with pyo3, rust-cpython and cffi bindings" +HOMEPAGE="https://www.maturin.rs/" +SRC_URI=" + https://github.com/PyO3/maturin/archive/refs/tags/v${PV}.tar.gz + -> ${P}.gh.tar.gz + https://dev.gentoo.org/~ionen/distfiles/${P}-vendor.tar.xz +" +# ^ tarball also includes test-crates' Cargo.lock(s) crates for tests + +LICENSE="|| ( Apache-2.0 MIT ) doc? ( OFL-1.1 )" +LICENSE+=" + 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD + CDLA-Permissive-2.0 MIT MPL-2.0 Unicode-3.0 ZLIB BZIP2 +" # crates +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="doc +ssl test" +RESTRICT="!test? ( test )" + +RDEPEND=" + app-arch/xz-utils + app-arch/zstd:= + ssl? ( dev-libs/openssl:= ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig + doc? ( >=app-text/mdbook-0.5 ) + test? ( + $(python_gen_cond_dep 'dev-python/cffi[${PYTHON_USEDEP}]' 'python*') + dev-python/boltons[${PYTHON_USEDEP}] + dev-python/virtualenv[${PYTHON_USEDEP}] + dev-vcs/git + elibc_musl? ( dev-util/patchelf ) + ) +" + +QA_FLAGS_IGNORED="usr/bin/${PN}" + +src_prepare() { + distutils-r1_src_prepare + + # we build the Rust executable (just once) via cargo_src_compile + sed -i -e '/setuptools_rust/d' -e '/rust_extensions/d' setup.py || die + + if use test; then + # used to prevent use of network during tests, and silence pip + # if it finds unrelated issues with system packages (bug #913613) + cat > "${T}"/pip.conf <<-EOF || die + [global] + quiet = 2 + + [install] + no-index = yes + no-dependencies = yes + EOF + + # uv does not work easily w/ network-sandbox, force virtualenv + sed -i 's/"uv"/"uv-not-found"/' tests/common/mod.rs || die + + # increase timeouts for tests (bug #950332) + sed -i '/^#\[timeout/s/secs(60)/secs(300)/' tests/run.rs || die + + # used by *git_sdist_generator tests + git init -q || die + git config --global user.email "larry@gentoo.org" || die + git config --global user.name "Larry the Cow" || die + git add . || die + git commit -qm init || die + fi +} + +src_configure() { + export OPENSSL_NO_VENDOR=1 + export ZSTD_SYS_USE_PKG_CONFIG=1 + + # https://github.com/rust-lang/stacker/issues/79 + use s390 && ! is-flagq '-march=*' && + append-cflags $(test-flags-CC -march=z10) + + local myfeatures=( + # like release.yml + native-tls for better platform support than rustls + full + password-storage + $(usev ssl native-tls) + ) + + cargo_src_configure --no-default-features +} + +python_compile_all() { + cargo_src_compile + + use !doc || mdbook build -d "${T}"/html guide || die + + if ! tc-is-cross-compiler; then + local maturin=$(cargo_target_dir)/maturin + "${maturin}" completions bash > "${T}"/${PN} || die + "${maturin}" completions fish > "${T}"/${PN}.fish || die + "${maturin}" completions zsh > "${T}"/_${PN} || die + else + ewarn "shell completion files were skipped due to cross-compilation" + fi +} + +python_test() { + local -x MATURIN_TEST_PYTHON=${EPYTHON} + local -x PIP_CONFIG_FILE=${T}/pip.conf + local -x VIRTUALENV_SYSTEM_SITE_PACKAGES=1 + + # need this for (new) python versions not yet recognized by pyo3 + local -x PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1 + + local skip=( + # picky cli output test that easily benignly fail (bug #937992) + --skip cli_tests + # avoid need for wasm over a single hello world test + --skip integration_wasm_hello_world + # fragile depending on rust version, also wants libpypy*-c.so for pypy + --skip pyo3_no_extension_module + # unimportant tests that require uv, and not obvious to get it + # to work with network-sandbox (not worth the trouble) + --skip develop_hello_world::case_2 + --skip develop_pyo3_ffi_pure::case_2 + # compliance test using zig requires an old libc to pass (bug #946967) + --skip integration_pyo3_mixed_py_subdir + # these currently attempt to install tomli regardless of python version + --skip pep517_default_profile + --skip pep517_editable_profile + ) + + cargo_src_test -- "${skip[@]}" +} + +python_install_all() { + dobin "$(cargo_target_dir)"/maturin + + dodoc Changelog.md README.md + use doc && dodoc -r "${T}"/html + + if ! tc-is-cross-compiler; then + dobashcomp "${T}"/${PN} + dofishcomp "${T}"/${PN}.fish + dozshcomp "${T}"/_${PN} + fi +} diff --git a/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.5.ebuild new file mode 100644 index 00000000000..8641c58221a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.5.ebuild @@ -0,0 +1,157 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +DISTUTILS_UPSTREAM_PEP517=standalone +PYTHON_COMPAT=( pypy3_11 python3_{11..14} ) +RUST_MIN_VER=1.88.0 +inherit cargo distutils-r1 flag-o-matic shell-completion toolchain-funcs + +DESCRIPTION="Build and publish crates with pyo3, rust-cpython and cffi bindings" +HOMEPAGE="https://www.maturin.rs/" +SRC_URI=" + https://github.com/PyO3/maturin/archive/refs/tags/v${PV}.tar.gz + -> ${P}.gh.tar.gz + https://dev.gentoo.org/~ionen/distfiles/${P}-vendor.tar.xz +" +# ^ tarball also includes test-crates' Cargo.lock(s) crates for tests + +LICENSE="|| ( Apache-2.0 MIT ) doc? ( OFL-1.1 )" +LICENSE+=" + 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD + CDLA-Permissive-2.0 MIT MPL-2.0 Unicode-3.0 ZLIB BZIP2 +" # crates +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="doc +ssl test" +RESTRICT="!test? ( test )" + +RDEPEND=" + app-arch/xz-utils + app-arch/zstd:= + ssl? ( dev-libs/openssl:= ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig + doc? ( >=app-text/mdbook-0.5 ) + test? ( + $(python_gen_cond_dep 'dev-python/cffi[${PYTHON_USEDEP}]' 'python*') + dev-python/boltons[${PYTHON_USEDEP}] + dev-python/virtualenv[${PYTHON_USEDEP}] + dev-vcs/git + elibc_musl? ( dev-util/patchelf ) + ) +" + +QA_FLAGS_IGNORED="usr/bin/${PN}" + +src_prepare() { + distutils-r1_src_prepare + + # we build the Rust executable (just once) via cargo_src_compile + sed -i -e '/setuptools_rust/d' -e '/rust_extensions/d' setup.py || die + + if use test; then + # used to prevent use of network during tests, and silence pip + # if it finds unrelated issues with system packages (bug #913613) + cat > "${T}"/pip.conf <<-EOF || die + [global] + quiet = 2 + + [install] + no-index = yes + no-dependencies = yes + EOF + + # uv does not work easily w/ network-sandbox, force virtualenv + sed -i 's/"uv"/"uv-not-found"/' tests/common/mod.rs || die + + # increase timeouts for tests (bug #950332) + sed -i '/^#\[timeout/s/secs(60)/secs(300)/' tests/run.rs || die + + # used by *git_sdist_generator tests + git init -q || die + git config --global user.email "larry@gentoo.org" || die + git config --global user.name "Larry the Cow" || die + git add . || die + git commit -qm init || die + fi +} + +src_configure() { + export OPENSSL_NO_VENDOR=1 + export ZSTD_SYS_USE_PKG_CONFIG=1 + + # https://github.com/rust-lang/stacker/issues/79 + use s390 && ! is-flagq '-march=*' && + append-cflags $(test-flags-CC -march=z10) + + local myfeatures=( + # like release.yml + native-tls for better platform support than rustls + full + password-storage + $(usev ssl native-tls) + ) + + cargo_src_configure --no-default-features +} + +python_compile_all() { + cargo_src_compile + + use !doc || mdbook build -d "${T}"/html guide || die + + if ! tc-is-cross-compiler; then + local maturin=$(cargo_target_dir)/maturin + "${maturin}" completions bash > "${T}"/${PN} || die + "${maturin}" completions fish > "${T}"/${PN}.fish || die + "${maturin}" completions zsh > "${T}"/_${PN} || die + else + ewarn "shell completion files were skipped due to cross-compilation" + fi +} + +python_test() { + local -x MATURIN_TEST_PYTHON=${EPYTHON} + local -x PIP_CONFIG_FILE=${T}/pip.conf + local -x VIRTUALENV_SYSTEM_SITE_PACKAGES=1 + + # need this for (new) python versions not yet recognized by pyo3 + local -x PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1 + + local skip=( + # picky cli output test that easily benignly fail (bug #937992) + --skip cli_tests + # avoid need for wasm over a single hello world test + --skip integration_wasm_hello_world + # fragile depending on rust version, also wants libpypy*-c.so for pypy + --skip pyo3_no_extension_module + # unimportant tests that require uv, and not obvious to get it + # to work with network-sandbox (not worth the trouble) + --skip develop_hello_world::case_2 + --skip develop_pyo3_ffi_pure::case_2 + # compliance test using zig requires an old libc to pass (bug #946967) + --skip integration_pyo3_mixed_py_subdir + # these currently attempt to install tomli regardless of python version + --skip pep517_default_profile + --skip pep517_editable_profile + ) + + cargo_src_test -- "${skip[@]}" +} + +python_install_all() { + dobin "$(cargo_target_dir)"/maturin + + dodoc Changelog.md README.md + use doc && dodoc -r "${T}"/html + + if ! tc-is-cross-compiler; then + dobashcomp "${T}"/${PN} + dofishcomp "${T}"/${PN}.fish + dozshcomp "${T}"/_${PN} + fi +} diff --git a/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.6.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.6.ebuild new file mode 100644 index 00000000000..8641c58221a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.6.ebuild @@ -0,0 +1,157 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +DISTUTILS_UPSTREAM_PEP517=standalone +PYTHON_COMPAT=( pypy3_11 python3_{11..14} ) +RUST_MIN_VER=1.88.0 +inherit cargo distutils-r1 flag-o-matic shell-completion toolchain-funcs + +DESCRIPTION="Build and publish crates with pyo3, rust-cpython and cffi bindings" +HOMEPAGE="https://www.maturin.rs/" +SRC_URI=" + https://github.com/PyO3/maturin/archive/refs/tags/v${PV}.tar.gz + -> ${P}.gh.tar.gz + https://dev.gentoo.org/~ionen/distfiles/${P}-vendor.tar.xz +" +# ^ tarball also includes test-crates' Cargo.lock(s) crates for tests + +LICENSE="|| ( Apache-2.0 MIT ) doc? ( OFL-1.1 )" +LICENSE+=" + 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD + CDLA-Permissive-2.0 MIT MPL-2.0 Unicode-3.0 ZLIB BZIP2 +" # crates +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="doc +ssl test" +RESTRICT="!test? ( test )" + +RDEPEND=" + app-arch/xz-utils + app-arch/zstd:= + ssl? ( dev-libs/openssl:= ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig + doc? ( >=app-text/mdbook-0.5 ) + test? ( + $(python_gen_cond_dep 'dev-python/cffi[${PYTHON_USEDEP}]' 'python*') + dev-python/boltons[${PYTHON_USEDEP}] + dev-python/virtualenv[${PYTHON_USEDEP}] + dev-vcs/git + elibc_musl? ( dev-util/patchelf ) + ) +" + +QA_FLAGS_IGNORED="usr/bin/${PN}" + +src_prepare() { + distutils-r1_src_prepare + + # we build the Rust executable (just once) via cargo_src_compile + sed -i -e '/setuptools_rust/d' -e '/rust_extensions/d' setup.py || die + + if use test; then + # used to prevent use of network during tests, and silence pip + # if it finds unrelated issues with system packages (bug #913613) + cat > "${T}"/pip.conf <<-EOF || die + [global] + quiet = 2 + + [install] + no-index = yes + no-dependencies = yes + EOF + + # uv does not work easily w/ network-sandbox, force virtualenv + sed -i 's/"uv"/"uv-not-found"/' tests/common/mod.rs || die + + # increase timeouts for tests (bug #950332) + sed -i '/^#\[timeout/s/secs(60)/secs(300)/' tests/run.rs || die + + # used by *git_sdist_generator tests + git init -q || die + git config --global user.email "larry@gentoo.org" || die + git config --global user.name "Larry the Cow" || die + git add . || die + git commit -qm init || die + fi +} + +src_configure() { + export OPENSSL_NO_VENDOR=1 + export ZSTD_SYS_USE_PKG_CONFIG=1 + + # https://github.com/rust-lang/stacker/issues/79 + use s390 && ! is-flagq '-march=*' && + append-cflags $(test-flags-CC -march=z10) + + local myfeatures=( + # like release.yml + native-tls for better platform support than rustls + full + password-storage + $(usev ssl native-tls) + ) + + cargo_src_configure --no-default-features +} + +python_compile_all() { + cargo_src_compile + + use !doc || mdbook build -d "${T}"/html guide || die + + if ! tc-is-cross-compiler; then + local maturin=$(cargo_target_dir)/maturin + "${maturin}" completions bash > "${T}"/${PN} || die + "${maturin}" completions fish > "${T}"/${PN}.fish || die + "${maturin}" completions zsh > "${T}"/_${PN} || die + else + ewarn "shell completion files were skipped due to cross-compilation" + fi +} + +python_test() { + local -x MATURIN_TEST_PYTHON=${EPYTHON} + local -x PIP_CONFIG_FILE=${T}/pip.conf + local -x VIRTUALENV_SYSTEM_SITE_PACKAGES=1 + + # need this for (new) python versions not yet recognized by pyo3 + local -x PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1 + + local skip=( + # picky cli output test that easily benignly fail (bug #937992) + --skip cli_tests + # avoid need for wasm over a single hello world test + --skip integration_wasm_hello_world + # fragile depending on rust version, also wants libpypy*-c.so for pypy + --skip pyo3_no_extension_module + # unimportant tests that require uv, and not obvious to get it + # to work with network-sandbox (not worth the trouble) + --skip develop_hello_world::case_2 + --skip develop_pyo3_ffi_pure::case_2 + # compliance test using zig requires an old libc to pass (bug #946967) + --skip integration_pyo3_mixed_py_subdir + # these currently attempt to install tomli regardless of python version + --skip pep517_default_profile + --skip pep517_editable_profile + ) + + cargo_src_test -- "${skip[@]}" +} + +python_install_all() { + dobin "$(cargo_target_dir)"/maturin + + dodoc Changelog.md README.md + use doc && dodoc -r "${T}"/html + + if ! tc-is-cross-compiler; then + dobashcomp "${T}"/${PN} + dofishcomp "${T}"/${PN}.fish + dozshcomp "${T}"/_${PN} + fi +} From eb954674effb394300940a8efb29ffd66151c40a Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:29 +0000 Subject: [PATCH 111/291] dev-util/pahole: Sync with Gentoo It's from Gentoo commit e8d68f139708143910ac9212eb04553b5cdedf3c. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-util/pahole/pahole-1.30.ebuild | 9 +++------ .../portage-stable/dev-util/pahole/pahole-9999.ebuild | 9 +++------ 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-util/pahole/pahole-1.30.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/pahole/pahole-1.30.ebuild index a13829ecc1b..d01c685363a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/pahole/pahole-1.30.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/pahole/pahole-1.30.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -55,12 +55,9 @@ src_unpack() { return fi - # Upstream sign the decompressed .tar if use verify-sig; then - einfo "Unpacking ${MY_P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${MY_P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" + verify-sig_uncompress_verify_unpack "${DISTDIR}"/${MY_P}.tar.xz \ + "${DISTDIR}"/${MY_P}.tar.sign else default fi diff --git a/sdk_container/src/third_party/portage-stable/dev-util/pahole/pahole-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/pahole/pahole-9999.ebuild index e3c538fde17..9da0a41472e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/pahole/pahole-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/pahole/pahole-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -55,12 +55,9 @@ src_unpack() { return fi - # Upstream sign the decompressed .tar if use verify-sig; then - einfo "Unpacking ${MY_P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${MY_P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" + verify-sig_uncompress_verify_unpack "${DISTDIR}"/${MY_P}.tar.xz \ + "${DISTDIR}"/${MY_P}.tar.sign else default fi From 157be7cf4dcbfc23b1fe87fe59d235d8db9eafc6 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:29 +0000 Subject: [PATCH 112/291] dev-util/patchutils: Sync with Gentoo It's from Gentoo commit 0db7214d7f8460531e5c74dc8f4602678dafc1a8. Signed-off-by: Flatcar Buildbot --- .../dev-util/patchutils/Manifest | 1 + .../patchutils/patchutils-0.4.4-r2.ebuild | 52 +++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-util/patchutils/patchutils-0.4.4-r2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-util/patchutils/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/patchutils/Manifest index 779cb271db4..4e263331885 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/patchutils/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-util/patchutils/Manifest @@ -1,2 +1,3 @@ DIST patchutils-0.4.2.tar.xz 159504 BLAKE2B 3ffcda8497b010a88e8601005871fb691ea8cac6158276862ba8e4192c333a335965288f9b5451c2fbc0a873ef95eb4a485d265387b43b0cec31b6c18d38f88e SHA512 20970d52fd43c09dc7799297b9a9eb6f60ba29ecc750d49381a2dc52273dfe484a47696cddd541f623394fa3486734cf337297cbeab6b1b244511c7740f46897 +DIST patchutils-0.4.4-gnulib.patch.xz 37408 BLAKE2B 17978bdfa22e56d372f9f6180645acb2d172f543acd8a4ed388ce1bd7dd0adfed4025cabda87398bae225554ec28af415181cf5c1689dd3eed95f86ade91b542 SHA512 3511c249187c823ea1715fa772765137f1fd6e15856ef6a5e6539317e3525e7fdcffae814249209f80257f580abbb62ea6918db4bb4a9ff1396043ca124db5c9 DIST patchutils-0.4.4.tar.xz 424248 BLAKE2B 65a855a5164c193262002dc2a13a5a253d5b308ed431d49fd231ef587df2c9924b26b6c683c6162a9810290aaa65c9a4fba5e3b503517d1f815e0bd30e7be9dc SHA512 26f3ee959d7f8d7d5718ecf361436709559c62d6235114faac9a84442e9df4fb271f85eea5d96dae3969e96d88fdd9c1a9b5246696ef548fad71a8f29a026a84 diff --git a/sdk_container/src/third_party/portage-stable/dev-util/patchutils/patchutils-0.4.4-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/patchutils/patchutils-0.4.4-r2.ebuild new file mode 100644 index 00000000000..e37b9760f78 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-util/patchutils/patchutils-0.4.4-r2.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..14} ) + +inherit autotools python-single-r1 toolchain-funcs + +DESCRIPTION="Collection of tools that operate on patch files" +HOMEPAGE="https://cyberelk.net/tim/software/patchutils/" +SRC_URI="https://github.com/twaugh/patchutils/releases/download/${PV}/${P}.tar.xz + https://dev.gentoo.org/~dilfridge/distfiles/${P}-gnulib.patch.xz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="pcre" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ! Date: Mon, 2 Mar 2026 07:25:30 +0000 Subject: [PATCH 113/291] dev-util/perf: Sync with Gentoo It's from Gentoo commit c9a4d0fb09890a5283594462b773c56df99cf2fd. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-util/perf/Manifest | 4 +- .../perf/files/perf-6.18-subcmd.patch | 27 -- .../dev-util/perf/perf-6.16.ebuild | 349 ------------------ .../dev-util/perf/perf-6.17.ebuild | 338 ----------------- ...perf-6.18-r1.ebuild => perf-6.18.5.ebuild} | 3 +- .../{perf-6.16-r1.ebuild => perf-6.19.ebuild} | 12 +- 6 files changed, 8 insertions(+), 725 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/dev-util/perf/files/perf-6.18-subcmd.patch delete mode 100644 sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.16.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.17.ebuild rename sdk_container/src/third_party/portage-stable/dev-util/perf/{perf-6.18-r1.ebuild => perf-6.18.5.ebuild} (99%) rename sdk_container/src/third_party/portage-stable/dev-util/perf/{perf-6.16-r1.ebuild => perf-6.19.ebuild} (97%) diff --git a/sdk_container/src/third_party/portage-stable/dev-util/perf/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/perf/Manifest index 49e0247a916..ff0f8aaeba2 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/perf/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-util/perf/Manifest @@ -1,4 +1,4 @@ DIST linux-6.14.tar.xz 149408504 BLAKE2B 11835719804b406fe281ea1c276a84dc0cbaa808552ddcca9233d3eaeb1c001d0455c7205379b02de8e8db758c1bae6fe7ceb6697e63e3cf9ae7187dc7a9715e SHA512 71dcaa3772d8d9797c3ae30cae9c582b11a7047a3bbcb8dfd479a4dffb40ff0da74cf3d45175f50cc9992e338bcadd46c9c570f54054ca3bde6661768d3d22eb -DIST linux-6.16.tar.xz 152620004 BLAKE2B 87bc4da7e89cc8265aebffea7ec6c09f711be24fee87cb1c03a264c03fd5a538d66aa806640835aa5103926e612cdfbc52d7c861d7f7065f1a8bb11d893b0921 SHA512 55a00f89ad6db6db2e26ff5dc5cfc96bbf6654e5bd5d17d2a3b944a47640367e54139716d230923187bebc6cb7756edc9511a620fb8abc6f32c50a658a734784 -DIST linux-6.17.tar.xz 153382068 BLAKE2B 0edb2324be5638aa75984128aafdba3e50824187d2fcdff8794eab99d85c10c3a17d1e840053c2c83df5ee11fdf69f1c9452c57ecc9dae01c4af38180fe7821a SHA512 063999d7b819970657f6b7713fdb4173da2065ffdeed7cae197026dbb1edfd7f1d50374f073a1e19ef9686539594824ff6ecb8a930d97c4f272cb12f1c6d8355 DIST linux-6.18.tar.xz 154309096 BLAKE2B b94b7b9bf18aca0c3e50baf79b009a1448fc6cd9c3ee019f641cc247dcf53a4abef4274ee0608ad8cd4943af69854363a95d26e117ff23620bb07dccb158859f SHA512 88599ffdec96d150c1feb9b261ba93bb0301a9d0e1ad6bef7aeab1f5372cbfc57d8b43c7e902bd8f76921d1dbd8189663c142ea869e51d0e2b483b150ee00fe0 +DIST linux-6.19.tar.xz 156067644 BLAKE2B d1551c058e9a1201a0fa769b427255f13bb0d73fdd384e2c0302956cc9a1eeba255b013fa87a15fdad508bc00fdae2085590572c76cfe20fe2af31ba87b7d289 SHA512 01b29c7f4e5bc0c9802794c2cd027fece825f90417be229a71e60eefce530010d5d301749c54ae744e9d4a483518e769e2bb7e6e9209687681ad7fff11c3ed86 +DIST patch-6.18.5.xz 414548 BLAKE2B 50fe5af5616fb080d90111c9b10d7f24ffa40ea6bcd7a645250622ff4adf7923f09bd1a93c82947c6e56a77ea457eb5df14aa215f6c3cae036cc1f11cc20f3d0 SHA512 2c07af94135abbb1fc118be061c7b39e3b692783e67231954eabe1ccac8948a126084e651d5648aebd6d58667ac82ba41264057df1cc81fcaa161df5eee56395 diff --git a/sdk_container/src/third_party/portage-stable/dev-util/perf/files/perf-6.18-subcmd.patch b/sdk_container/src/third_party/portage-stable/dev-util/perf/files/perf-6.18-subcmd.patch deleted file mode 100644 index e3e067efdd0..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-util/perf/files/perf-6.18-subcmd.patch +++ /dev/null @@ -1,27 +0,0 @@ -Fix for --help command when no commands are excluded. - -Link: https://lore.kernel.org/lkml/20251202213632.2873731-1-sjayaram@akamai.com/ - -See also: https://lore.kernel.org/lkml/aTXQw9dtP5df7LmP@gentoo.org/ - ---- a/tools/lib/subcmd/help.c -+++ b/tools/lib/subcmd/help.c -@@ -97,11 +97,13 @@ void exclude_cmds(struct cmdnames *cmds, struct cmdnames *excludes) - ei++; - } - } -- if (ci != cj) { -- while (ci < cmds->cnt) { -- cmds->names[cj++] = cmds->names[ci]; -- cmds->names[ci++] = NULL; -+ while (ci < cmds->cnt) { -+ if (ci != cj) { -+ cmds->names[cj] = cmds->names[ci]; -+ cmds->names[ci] = NULL; - } -+ ci++; -+ cj++; - } - for (ci = cj; ci < cmds->cnt; ci++) - assert(cmds->names[ci] == NULL); --- diff --git a/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.16.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.16.ebuild deleted file mode 100644 index 8a4584cea41..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.16.ebuild +++ /dev/null @@ -1,349 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {18..20} ) -PYTHON_COMPAT=( python3_{11..14} python3_{13,14}t) -inherit bash-completion-r1 estack flag-o-matic linux-info llvm-r1 toolchain-funcs python-r1 - -DESCRIPTION="Userland tools for Linux Performance Counters" -HOMEPAGE="https://perfwiki.github.io/main/" - -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} -fi - -LINUX_SOURCES="linux-${LINUX_VER}.tar.xz" -SRC_URI+=" https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/${LINUX_SOURCES}" - -S_K="${WORKDIR}/linux-${LINUX_VER}" -S="${S_K}/tools/perf" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" -IUSE="abi_mips_o32 abi_mips_n32 abi_mips_n64 babeltrace capstone big-endian bpf caps crypt debug +doc gtk java libpfm +libtraceevent +libtracefs lzma numa perl +python +slang systemtap tcmalloc unwind" - -REQUIRED_USE=" - ${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}] - app-alternatives/yacc - app-alternatives/lex - sys-apps/which - virtual/pkgconfig - doc? ( - app-text/asciidoc - app-text/sgml-common - app-text/xmlto - sys-process/time - ) -" - -RDEPEND=" - babeltrace? ( dev-util/babeltrace:0/1 ) - bpf? ( - dev-libs/libbpf - dev-util/bpftool - dev-util/pahole - $(llvm_gen_dep ' - llvm-core/clang:${LLVM_SLOT}= - llvm-core/llvm:${LLVM_SLOT}= - ') - ) - caps? ( sys-libs/libcap ) - capstone? ( dev-libs/capstone ) - 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-debug/systemtap ) - tcmalloc? ( dev-util/google-perftools ) - unwind? ( sys-libs/libunwind:= ) - app-arch/zstd:= - dev-libs/elfutils - sys-libs/binutils-libs:= - virtual/zlib:= - virtual/libcrypt -" - -DEPEND="${RDEPEND} - >=sys-kernel/linux-headers-5.10 - java? ( virtual/jdk ) -" - -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() { - local CONFIG_CHECK=" - ~!SCHED_OMIT_FRAME_POINTER - ~DEBUG_INFO - ~FRAME_POINTER - ~FTRACE - ~FTRACE_SYSCALLS - ~FUNCTION_TRACER - ~KALLSYMS - ~KALLSYMS_ALL - ~KPROBES - ~KPROBE_EVENTS - ~PERF_EVENTS - ~STACKTRACE - ~TRACEPOINTS - ~UPROBES - ~UPROBE_EVENTS - " - - use bpf && llvm-r1_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 ~UNWINDER_FRAME_POINTER" - 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=( - 'arch/*/include/*' 'arch/*/lib/*' 'arch/*/tools/*' 'include/*' - 'kernel/bpf/*' 'lib/*' 'scripts/*' 'tools/arch/*' 'tools/bpf/*' - 'tools/build/*' 'tools/include/*' 'tools/lib/*' 'tools/perf/*' - 'tools/scripts/*' - ) - - # 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" - xzcat "${DISTDIR}"/${LINUX_PATCH} | filterdiff -p1 ${paths[@]/#/-i} > ${P}.patch - assert -n "Unpacking to ${P} from ${DISTDIR}/${LINUX_PATCH} failed" - eend $? || die "filterdiff failed" - test -s ${P}.patch || die "patch is empty?!" - 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 - # Gentoo patches go here - 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" - - # sync this with the whitelist in tools/perf/Makefile.config - local disable_libdw - if ! use amd64 && ! use x86 && \ - ! use arm && \ - ! use arm64 && \ - ! use ppc && ! use ppc64 \ - ! use s390 && \ - ! use riscv && \ - ! use loong - then - disable_libdw=1 - fi - - # perf directly invokes LD for linking without going through CC, on mips - # it is required to specify the emulation. port of below buildroot patch - # https://patchwork.ozlabs.org/project/buildroot/patch/20170217105905.32151-1-Vincent.Riera@imgtec.com/ - local linker="$(tc-getLD)" - if use mips - then - if use big-endian - then - use abi_mips_n64 && linker+=" -m elf64btsmip" - use abi_mips_n32 && linker+=" -m elf32btsmipn32" - use abi_mips_o32 && linker+=" -m elf32btsmip" - else - use abi_mips_n64 && linker+=" -m elf64ltsmip" - use abi_mips_n32 && linker+=" -m elf32ltsmipn32" - use abi_mips_o32 && linker+=" -m elf32ltsmip" - fi - fi - - # 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="${linker}" NM="$(tc-getNM)" - CLANG="${CHOST}-clang" - 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 "") - feature-gtk2-infobar=$(usex gtk 1 "") - NO_AUXTRACE= - NO_BACKTRACE= - NO_CAPSTONE=$(puse capstone) - NO_DEMANGLE= - NO_JVMTI=$(puse java) - NO_LIBAUDIT=1 - NO_LIBBABELTRACE=$(puse babeltrace) - NO_LIBBIONIC=1 - NO_LIBBPF=$(puse bpf) - NO_LIBCAP=$(puse caps) - NO_LIBCRYPTO=$(puse crypt) - NO_LIBDW_DWARF_UNWIND="${disable_libdw}" - NO_LIBELF= - NO_LIBLLVM=$(puse bpf) - 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_SDT=$(puse systemtap) - NO_SHELLCHECK=1 - NO_SLANG=$(puse slang) - NO_LZMA=$(puse lzma) - NO_ZLIB= - TCMALLOC=$(usex tcmalloc 1 "") - WERROR=0 - DEBUG=$(usex debug 1 "") - LIBDIR="/usr/libexec/perf-core" - libdir="${EPREFIX}/usr/$(get_libdir)" - plugindir="${EPREFIX}/usr/$(get_libdir)/perf/plugins" - "$@" - ) - NO_JEVENTS=$(puse python) emake "${emakeargs[@]}" -} - -src_compile() { - filter-lto - - 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/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.17.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.17.ebuild deleted file mode 100644 index 90ff2a61d5f..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.17.ebuild +++ /dev/null @@ -1,338 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {18..21} ) -PYTHON_COMPAT=( python3_{11..14} python3_{13,14}t) -inherit bash-completion-r1 estack flag-o-matic linux-info llvm-r1 toolchain-funcs python-single-r1 - -DESCRIPTION="Userland tools for Linux Performance Counters" -HOMEPAGE="https://perfwiki.github.io/main/" - -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} -fi - -LINUX_SOURCES="linux-${LINUX_VER}.tar.xz" -SRC_URI+=" https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/${LINUX_SOURCES}" - -S_K="${WORKDIR}/linux-${LINUX_VER}" -S="${S_K}/tools/perf" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" -IUSE="abi_mips_o32 abi_mips_n32 abi_mips_n64 babeltrace capstone big-endian bpf caps crypt debug gtk java libpfm +libtraceevent +libtracefs lzma numa perl +python +slang systemtap tcmalloc unwind" - -REQUIRED_USE=" - ${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 - $(python_gen_cond_dep ' - dev-python/setuptools[${PYTHON_USEDEP}] - ') - app-alternatives/yacc - app-alternatives/lex - sys-apps/which - virtual/pkgconfig - app-text/asciidoc - app-text/sgml-common - app-text/xmlto - sys-process/time -" - -RDEPEND=" - babeltrace? ( dev-util/babeltrace:0/1 ) - bpf? ( - dev-libs/libbpf - dev-util/bpftool - dev-util/pahole - $(llvm_gen_dep ' - llvm-core/clang:${LLVM_SLOT}= - llvm-core/llvm:${LLVM_SLOT}= - ') - ) - caps? ( sys-libs/libcap ) - capstone? ( dev-libs/capstone ) - 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-debug/systemtap ) - tcmalloc? ( dev-util/google-perftools ) - unwind? ( sys-libs/libunwind:= ) - app-arch/zstd:= - dev-libs/elfutils - sys-libs/binutils-libs:= - virtual/zlib:= - virtual/libcrypt -" - -DEPEND="${RDEPEND} - >=sys-kernel/linux-headers-5.10 - java? ( virtual/jdk ) -" - -QA_FLAGS_IGNORED=( - 'usr/bin/perf-read-vdso32' # not linked with anything except for libc - 'usr/libexec/perf-core/dlfilters/.*' # plugins -) - -pkg_setup() { - local CONFIG_CHECK=" - ~!SCHED_OMIT_FRAME_POINTER - ~DEBUG_INFO - ~FRAME_POINTER - ~FTRACE - ~FTRACE_SYSCALLS - ~FUNCTION_TRACER - ~KALLSYMS - ~KALLSYMS_ALL - ~KPROBES - ~KPROBE_EVENTS - ~PERF_EVENTS - ~STACKTRACE - ~TRACEPOINTS - ~UPROBES - ~UPROBE_EVENTS - " - - use bpf && llvm-r1_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 ~UNWINDER_FRAME_POINTER" - 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=( - 'arch/*/include/*' 'arch/*/lib/*' 'arch/*/tools/*' 'include/*' - 'kernel/bpf/*' 'lib/*' 'scripts/*' 'tools/arch/*' 'tools/bpf/*' - 'tools/build/*' 'tools/include/*' 'tools/lib/*' 'tools/perf/*' - 'tools/scripts/*' - ) - - # 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" - xzcat "${DISTDIR}"/${LINUX_PATCH} | filterdiff -p1 ${paths[@]/#/-i} > ${P}.patch - assert -n "Unpacking to ${P} from ${DISTDIR}/${LINUX_PATCH} failed" - eend $? || die "filterdiff failed" - test -s ${P}.patch || die "patch is empty?!" - 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 - # Gentoo patches go here - 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" - - # sync this with the whitelist in tools/perf/Makefile.config - local disable_libdw - if ! use amd64 && ! use x86 && \ - ! use arm && \ - ! use arm64 && \ - ! use ppc && ! use ppc64 \ - ! use s390 && \ - ! use riscv && \ - ! use loong - then - disable_libdw=1 - fi - - # perf directly invokes LD for linking without going through CC, on mips - # it is required to specify the emulation. port of below buildroot patch - # https://patchwork.ozlabs.org/project/buildroot/patch/20170217105905.32151-1-Vincent.Riera@imgtec.com/ - local linker="$(tc-getLD)" - if use mips - then - if use big-endian - then - use abi_mips_n64 && linker+=" -m elf64btsmip" - use abi_mips_n32 && linker+=" -m elf32btsmipn32" - use abi_mips_o32 && linker+=" -m elf32btsmip" - else - use abi_mips_n64 && linker+=" -m elf64ltsmip" - use abi_mips_n32 && linker+=" -m elf32ltsmipn32" - use abi_mips_o32 && linker+=" -m elf32ltsmip" - fi - fi - - # 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="${linker}" NM="$(tc-getNM)" - CLANG="${CHOST}-clang" - PKG_CONFIG="$(tc-getPKG_CONFIG)" - prefix="${EPREFIX}/usr" bindir_relative="bin" - tipdir="share/doc/${PF}" - EXTRA_CFLAGS="${CPPFLAGS} ${CFLAGS}" - EXTRA_LDFLAGS="${LDFLAGS}" - ARCH="${arch}" - BUILD_BPF_SKEL=$(usex bpf 1 "") \ - BUILD_NONDISTRO=1 - JDIR="${java_dir}" - CORESIGHT= - GTK2=$(usex gtk 1 "") - feature-gtk2-infobar=$(usex gtk 1 "") - NO_AUXTRACE= - NO_BACKTRACE= - NO_CAPSTONE=$(puse capstone) - NO_DEMANGLE= - NO_JVMTI=$(puse java) - NO_LIBAUDIT=1 - NO_LIBBABELTRACE=$(puse babeltrace) - NO_LIBBIONIC=1 - NO_LIBBPF=$(puse bpf) - NO_LIBCAP=$(puse caps) - NO_LIBCRYPTO=$(puse crypt) - NO_LIBDW_DWARF_UNWIND="${disable_libdw}" - NO_LIBELF= - NO_LIBLLVM=$(puse bpf) - 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_SDT=$(puse systemtap) - NO_SHELLCHECK=1 - NO_SLANG=$(puse slang) - NO_LZMA=$(puse lzma) - NO_ZLIB= - TCMALLOC=$(usex tcmalloc 1 "") - WERROR=0 - DEBUG=$(usex debug 1 "") - LIBDIR="/usr/libexec/perf-core" - libdir="${EPREFIX}/usr/$(get_libdir)" - plugindir="${EPREFIX}/usr/$(get_libdir)/perf/plugins" - "$@" - ) - NO_JEVENTS=$(puse python) emake "${emakeargs[@]}" -} - -src_compile() { - filter-lto - - # capstone-6 compatibility (#964350) - append-cppflags -DCAPSTONE_AARCH64_COMPAT_HEADER -DCAPSTONE_SYSTEMZ_COMPAT_HEADER - - perf_make -f Makefile.perf - perf_make -C Documentation man -} - -src_test() { - : -} - -src_install() { - perf_make -f Makefile.perf install DESTDIR="${D}" - - if use python; then - perf_make -f Makefile.perf install-python_ext DESTDIR="${D}" - 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 - - doman Documentation/*.1 -} diff --git a/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.18-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.18.5.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.18-r1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.18.5.ebuild index 40f86d17e90..5ad740b933c 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.18-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.18.5.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -177,7 +177,6 @@ src_prepare() { pushd "${S_K}" >/dev/null || die # Gentoo patches go here - eapply "${FILESDIR}/${P}-subcmd.patch" popd || die # Drop some upstream too-developer-oriented flags and fix the diff --git a/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.16-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.19.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.16-r1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.19.ebuild index 90ff2a61d5f..5ad740b933c 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.16-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.19.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -88,7 +88,6 @@ RDEPEND=" unwind? ( sys-libs/libunwind:= ) app-arch/zstd:= dev-libs/elfutils - sys-libs/binutils-libs:= virtual/zlib:= virtual/libcrypt " @@ -255,12 +254,13 @@ perf_make() { EXTRA_CFLAGS="${CPPFLAGS} ${CFLAGS}" EXTRA_LDFLAGS="${LDFLAGS}" ARCH="${arch}" - BUILD_BPF_SKEL=$(usex bpf 1 "") \ - BUILD_NONDISTRO=1 + BUILD_BPF_SKEL=$(usex bpf 1 "") + BUILD_NONDISTRO= JDIR="${java_dir}" CORESIGHT= GTK2=$(usex gtk 1 "") feature-gtk2-infobar=$(usex gtk 1 "") + LIBPERL=$(usex perl 1 "") NO_AUXTRACE= NO_BACKTRACE= NO_CAPSTONE=$(puse capstone) @@ -276,7 +276,6 @@ perf_make() { NO_LIBELF= NO_LIBLLVM=$(puse bpf) NO_LIBNUMA=$(puse numa) - NO_LIBPERL=$(puse perl) NO_LIBPFM4=$(puse libpfm) NO_LIBPYTHON=$(puse python) NO_LIBTRACEEVENT=$(puse libtraceevent) @@ -289,9 +288,8 @@ perf_make() { TCMALLOC=$(usex tcmalloc 1 "") WERROR=0 DEBUG=$(usex debug 1 "") - LIBDIR="/usr/libexec/perf-core" libdir="${EPREFIX}/usr/$(get_libdir)" - plugindir="${EPREFIX}/usr/$(get_libdir)/perf/plugins" + LIBDIR="${EPREFIX}/usr/libexec/perf-core" "$@" ) NO_JEVENTS=$(puse python) emake "${emakeargs[@]}" From 126532d613628ca7973409d3554620a526974c60 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:30 +0000 Subject: [PATCH 114/291] dev-util/pkgcheck: Sync with Gentoo It's from Gentoo commit 91e87d3dc8854e93142f2211d88ba4c8e65c2a75. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-util/pkgcheck/pkgcheck-0.10.39.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/portage-stable/dev-util/pkgcheck/pkgcheck-0.10.39.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/pkgcheck/pkgcheck-0.10.39.ebuild index 37c83fe5ac4..bcb1dde831c 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/pkgcheck/pkgcheck-0.10.39.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/pkgcheck/pkgcheck-0.10.39.ebuild @@ -12,7 +12,7 @@ if [[ ${PV} == *9999 ]] ; then https://github.com/pkgcore/pkgcheck.git" inherit git-r3 else - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" inherit pypi fi From 17257125b80fc0f98ce7efac9dba71bf1700e301 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:32 +0000 Subject: [PATCH 115/291] dev-vcs/git: Sync with Gentoo It's from Gentoo commit f4ca941c84329b45fb6081a0e09322eb14847de7. Signed-off-by: Flatcar Buildbot --- .../portage-stable/dev-vcs/git/Manifest | 3 + .../dev-vcs/git/git-2.53.0.ebuild | 492 ++++++++++++++++++ 2 files changed, 495 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.53.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/git/Manifest b/sdk_container/src/third_party/portage-stable/dev-vcs/git/Manifest index 6bbd842d4c7..b5b5b83ee1d 100644 --- a/sdk_container/src/third_party/portage-stable/dev-vcs/git/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-vcs/git/Manifest @@ -4,15 +4,18 @@ DIST git-2.51.0.tar.xz 7857228 BLAKE2B b385ee2c7aed601435952c983045055c970cdda60 DIST git-2.51.1.tar.xz 7865216 BLAKE2B 3bb26baee468498f882eb3bf995c58cf441a9e7537ca3dafbe58cf24a947d37a52749b62e3095446787514f0eb9e1d767d4efbee29a8d63851803e8c6bb4daa6 SHA512 bc22d26bbfad4a549d2fb6bed11eb019c2dee607c86bf8faaa986774e526e5b367d80c9a79ab50358624634d840e8e0d27e0b46411d1aabbf76728b7a7f138dd DIST git-2.51.2.tar.xz 7865980 BLAKE2B d567f52da82cabc5d2e4f542f02209aa170536864769fa49c9a24c5129e0603a940b1adf6dedf892c8971d947400a104d312b376f3f6aa23029cb57dffc9acb4 SHA512 547c3e522d9e6a2c2ccab24ee0c7f4f2d29878759563356e3a2ae9675884b7044ce5a236803170a203b79443760eb18a7089eec02bd105316e3ab045ab7603a7 DIST git-2.52.0.tar.xz 7957064 BLAKE2B f228174814b1048f12543a6a20f771017991f9a23778f12fc32020b38837990eb19bc69e891078692ac4ad4ae1cb2e0e77400760964e09c491046e4ed8b16f96 SHA512 965e5ebb72d1f080d64e34bdb75f0bb1689c9dd41dcf63b020d986bad49808ac09bfb1115962bc0c5b95bac8622367ac4cd09aa89266f73d2137fe94c90dd3ed +DIST git-2.53.0.tar.xz 7993096 BLAKE2B a23ccb2f793d37347e892f6094ad589510c93011a53fb2c14cdcbfbe6d87413edb4585a98253e4ca5124217f66ad783f4fa584f38dc25ffa34772da01dc45f02 SHA512 f9c0c0f527e10fe3eb524e368b1a24088bfd41097d8cac7854dae7ff21ab8ab2a1716384be53ea6174023ca5a2af3eeddca1d9feb57e447713f82e061df55c8d DIST git-htmldocs-2.49.1.tar.xz 1602244 BLAKE2B 8d6df9ff42660123577933a95971bdd47d94b650b2cb8abafa4f4cbd981d016d3d3fdcbb08f22616ee44f928fc0aaac4f0ffee8a1d1d0c659240fcc2db9e2a25 SHA512 39db559a507b732d18ce1fa3ac513e87ca27b1d5df0f6d26cdead7b5add4eb29889d4c81e09b25c6fdbd813a0f13c833a22a4b6bbba6dea3b126e841a61424f8 DIST git-htmldocs-2.50.1.tar.xz 1615796 BLAKE2B 6d340b552075bce7d724824eefd03540d558e24c07b49e48f1bb4262a5b3632b6aa7782bb02b15aaf424d22e5460bffee066f1e2bb0018791dcec8afa79dd3b8 SHA512 ebe437851b039bab4ec83be807583a23beaf43073248ffdcddee2328fc621b5b712c094faac3ee15a783f5a0cbdd92c2635879426007e8ef0ddcb70f227782f9 DIST git-htmldocs-2.51.0.tar.xz 1627664 BLAKE2B 17106db9d7edf8717281d5af88ec9b53c91f6ba56552d5952d25ff593b4d227194df53a33dd52eb4791dd5044a7d867f8bed2371087e6dfdb4a0110e09f70055 SHA512 55460724b73bc42ebb611a4c0657f59040e8e7b28d56cb26814ae97c1b13ce3577e57e5a66f2749a93b7b3496b8a665ce5a2c31ba471eadb3267813915dc7051 DIST git-htmldocs-2.51.1.tar.xz 1629412 BLAKE2B e135a355e84c4bd1a1d1e54dd6ff875b43145649cdc90696b1650f74ff3a0b2a94190d23ffffc22b621703fbb713d042283a5e65b0ed60860cc892d26b44226e SHA512 0abfbef358162d03fc033bca23bc95cae0561e8f4852abfd49d53d546005caf0b6f759776c7bbada8353cb340b3b48b0c1cd0415db0bbf04efe591e7b9411fe1 DIST git-htmldocs-2.51.2.tar.xz 1629724 BLAKE2B ed8593f9ccbd8017656af7193914638c25be7ed2a449d3509d49949a1eff2134b3a9c163802155610e32cb07f9ea4eced9ebd0758eb0f36b0ff028c0ee0462f0 SHA512 cafb7fa2f0a3be6bff006f65c8462047e6f2c80482b09df7c45e7caba12acee670ddb886c125dcc751a5d701ebf812737f981bd0bcbc3035432de26db981929a DIST git-htmldocs-2.52.0.tar.xz 1657524 BLAKE2B c21219b1059ee593ea850464473ba3466f83b44932261b70abecb7837a0e5c2434d71e29c495ac33faad9a34bda061b81187f691c57e8dc9557a56f8030dbeea SHA512 6fee6834bbd1400acef575fd206f58fb15472d45bad8f4ca9066930a3b4b1be8a633bb94c11f83644177266a06e2c4bb8a9478f10c4f1742016f59d07612c5e4 +DIST git-htmldocs-2.53.0.tar.xz 1675212 BLAKE2B b3df781089a91c36b91f46ee7801162ef925cfaee470813b0c33e58690a7494b1946ec487538769a153ec275d9dd13e5386fb8552185f274ca07e1e2e1a88afd SHA512 0c752d1aa78747f2ce9f73c3fca06ac69b543c4b546bfd13e1b22552a41a417982feee60adc6e525c88c6887e98c3b843c680ea6fd3a250f7e8317338dee3036 DIST git-manpages-2.49.1.tar.xz 594536 BLAKE2B b29aea1817053fefacc9a16abb86ea9fb4f2f239a268661a357cda16ab02b55ff3736b0c7d870fcacf4867bd063e14177bc46109115845fdea26b1870ff5f463 SHA512 0fbd824bfd68c72e8a6509989ffd016d1256cc3c5dfe4634170de2a07cdbdb4506f4b9136fa3176ac56c6f20f518a16758f1391bbd658be0caa8ebcc34158feb DIST git-manpages-2.50.1.tar.xz 598416 BLAKE2B c47be82829562057a99da3dc801958c2f7d1eeabb5af3c28cc3a66ec03a02b96e2d1d670ce39f7ab1d39fc113abe896c73b2126129cd98c3d33292267f160690 SHA512 9de90823bfb815ce31938794b80bf8526d162125afe23084114c47d360235a8d63b6fcdf78613bd91ee492b8d8c614d026cce51733bdd63bffe533f7da616d05 DIST git-manpages-2.51.0.tar.xz 602200 BLAKE2B 12b103871dcd8173e88e2eb96621620682c19aecfb6ecbd7a9b3d8bb7358eed78c00af0738c502c5ff71ac8d85894c68ed33f395aed426d580210d4c1d36faf6 SHA512 ee2eb3bc90a63cb28ccdc8716b2d610b55eefbc0da255b7360695bc686ba52841b147c879a4f8b2ecdb767814b815929f7e0dd57fa612a87ef5e36b862056144 DIST git-manpages-2.51.1.tar.xz 602552 BLAKE2B a8781e1b7b040b39ca17ee9ea20688bc14bdd0a948e1bab2e39e01747770a97f64119e4eacdedd07e3d281469025958ca34d73faacad7c36381e9a9c8f4fe4ab SHA512 e8f00835472c2078023e28cb9ae1ac2aac8c4e950a8ef453eafe894d9bb8411e3e89108606b3783c00883db2bb041defb0bf9dd5b3558bcbd6b07b7f28c66e92 DIST git-manpages-2.51.2.tar.xz 602340 BLAKE2B 856c4531ed27b53f390f738774d758813f717b378bd64e4736e8627fe898b34b64b8d4b9fb686573f21d90d8db859062371586c440f3c6efca38346a04f7120b SHA512 d6443f22590797eb6947fbb317e2ec52beeabd6d3117425e23d93085952c4d9eaa8d26ae677a8f4d73938f9611ac636f5f26e29527cc96d1a6612c2853103a94 DIST git-manpages-2.52.0.tar.xz 607864 BLAKE2B 6736100b503afd95aa7d6d9878a5c9420b44c5755b31c99e4b6db4a567db0984a6a786d2fac07baea95bf2b758c68fef042b75b10c848732add19fe17f3243bf SHA512 8e7998ed101fa4c7e9707721cbbc61e07bab56647c69f2d46d16c30465a825e223429cfab1ddfa58302a0563a12a8e5886133566bc6a1097ab0970d8ae4458d7 +DIST git-manpages-2.53.0.tar.xz 614136 BLAKE2B c2c309de1853ffceee4b3a334e2983fbfa5ce6a40ac60215aded917cff45b4e5eef7a38812cafec2515dd5538ceec8333a50525df09e15c012b4968435578487 SHA512 babb19223cd0da4e930449a4e246007283b5787b19b1c7ea341969bf6321f3de1164db9d1920de16535c4b18d03935c6e3fc329d9e2308aec4b4cb70514518a9 diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.53.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.53.0.ebuild new file mode 100644 index 00000000000..ee41b0eaa09 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.53.0.ebuild @@ -0,0 +1,492 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GENTOO_DEPEND_ON_PERL=no + +# bug #329479: git-remote-testgit is not multiple-version aware +PYTHON_COMPAT=( python3_{11..14} ) +RUST_OPTIONAL=1 +inherit flag-o-matic toolchain-funcs perl-module shell-completion optfeature +inherit plocale python-single-r1 rust systemd meson + +PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN" + +if [[ ${PV} == *9999 ]]; then + EGIT_REPO_URI="https://git.kernel.org/pub/scm/git/git.git" + + inherit git-r3 + # Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches. + # See https://git-scm.com/docs/gitworkflows#_graduation + # In order of stability: + # 9999-r0: maint + # 9999-r1: master + # 9999-r2: next + # 9999-r3: seen + case ${PVR} in + 9999) EGIT_BRANCH=maint ;; + 9999-r1) EGIT_BRANCH=master ;; + 9999-r2) EGIT_BRANCH=next;; + 9999-r3) EGIT_BRANCH=seen ;; + esac +fi + +MY_PV="${PV/_rc/.rc}" +MY_P="${PN}-${MY_PV}" + +DOC_VER="${MY_PV}" + +DESCRIPTION="Stupid content tracker: distributed VCS designed for speed and efficiency" +HOMEPAGE="https://www.git-scm.com/" + +if [[ ${PV} != *9999 ]]; then + SRC_URI_SUFFIX="xz" + SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git" + + [[ ${PV/rc} != ${PV} ]] && SRC_URI_KORG+='/testing' + + SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}" + SRC_URI+=" ${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}" + SRC_URI+=" doc? ( ${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} )" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi +fi + +S="${WORKDIR}"/${MY_P} + +LICENSE="GPL-2" +SLOT="0" +IUSE="+curl cgi cvs doc keyring +gpg highlight +iconv +nls +pcre perforce +perl rust +safe-directory selinux subversion test tk +webdav xinetd" + +# Common to both DEPEND and RDEPEND +DEPEND=" + dev-libs/openssl:= + virtual/zlib:= + curl? ( + net-misc/curl + webdav? ( dev-libs/expat ) + ) + keyring? ( + app-crypt/libsecret + dev-libs/glib:2 + ) + iconv? ( virtual/libiconv ) + pcre? ( dev-libs/libpcre2:= ) + perl? ( dev-lang/perl:=[-build(-)] ) + tk? ( dev-lang/tk:= ) +" +RDEPEND=" + ${DEPEND} + gpg? ( app-alternatives/gpg ) + perl? ( + dev-perl/Error + dev-perl/MailTools + dev-perl/Authen-SASL + >=virtual/perl-libnet-3.110.0-r4[ssl] + cgi? ( + dev-perl/CGI + highlight? ( app-text/highlight ) + ) + cvs? ( + >=dev-vcs/cvsps-2.1:0 + dev-perl/DBI + dev-perl/DBD-SQLite + ) + subversion? ( + dev-vcs/subversion[-dso(-),perl] + dev-perl/libwww-perl + dev-perl/TermReadKey + ) + ) + perforce? ( ${PYTHON_DEPS} ) + selinux? ( sec-policy/selinux-git ) +" + +# This is how info docs are created with Git: +# .txt/asciidoc --(asciidoc)---------> .xml/docbook +# .xml/docbook --(docbook2texi.pl)--> .texi +# .texi --(makeinfo)---------> .info +BDEPEND=" + doc? ( + app-text/asciidoc + app-text/docbook2X + app-text/xmlto + sys-apps/texinfo + ) + keyring? ( virtual/pkgconfig ) + nls? ( sys-devel/gettext ) + rust? ( ${RUST_DEPEND} ) + test? ( + app-arch/unzip + app-crypt/gnupg + dev-lang/perl + ) +" + +# Live ebuild builds man pages and HTML docs, additionally +if [[ ${PV} == *9999 ]]; then + BDEPEND+=" app-text/asciidoc" +fi + +SITEFILE="50${PN}-gentoo.el" + +REQUIRED_USE=" + cgi? ( perl ) + cvs? ( perl ) + perforce? ( ${PYTHON_REQUIRED_USE} ) + subversion? ( perl ) + webdav? ( curl ) +" + +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}"/${PN}-2.48.1-macos-no-fsmonitor.patch + + # This patch isn't merged upstream but is kept in the ebuild by + # demand from developers. It's opt-in (needs a config option) + # and the documentation mentions that it is a Gentoo addition. + "${FILESDIR}"/${PN}-2.50.0-diff-implement-config.diff.renames-copies-harder.patch + + "${FILESDIR}"/${PN}-2.52.0-0001-rust-don-t-pass-quiet-to-cargo.patch + "${FILESDIR}"/${PN}-2.52.0-0002-rust-respect-CARGO-environment-variable.patch +) + +pkg_setup() { + if use subversion && has_version "dev-vcs/subversion[dso]" ; then + ewarn "Per Gentoo bugs #223747, #238586, when subversion is built" + ewarn "with USE=dso, there may be weird crashes in git-svn. You" + ewarn "have been warned!" + fi + + if use perforce ; then + python-single-r1_pkg_setup + fi + + if use rust ; then + rust_pkg_setup + fi +} + +src_unpack() { + if [[ ${PV} != *9999 ]] ; then + unpack ${MY_P}.tar.${SRC_URI_SUFFIX} + + cd "${S}" || die + unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + + if use doc ; then + pushd "${S}"/Documentation &>/dev/null || die + unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + popd &>/dev/null || die + fi + else + git-r3_src_unpack + fi + +} + +src_prepare() { + if ! use safe-directory ; then + # This patch neuters the "safe directory" detection. + # bugs #838271, #838223 + PATCHES+=( + "${FILESDIR}"/git-2.46.2-unsafe-directory.patch + ) + fi + + default +} + +src_configure() { + local contrib=( + completion + subtree + + $(usev perl 'contacts') + ) + local credential_helpers=( + $(usev keyring 'libsecret') + $(usev perl 'netrc') + ) + + # Needs macOS Frameworks that can't currently be built with GCC. + if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then + credential_helpers+=( osxkeychain ) + fi + + local native_file="${T}"/meson.ini.local + cat >> ${native_file} <<-EOF || die + [binaries] + # We don't want to bake /usr/bin/sh from usrmerged systems into + # binaries. /bin/sh is required by POSIX. + sh='/bin/sh' + EOF + + local emesonargs=( + --native-file "${native_file}" + + $(meson_feature curl) + $(meson_feature cgi gitweb) + $(meson_feature webdav expat) + $(meson_feature iconv) + $(meson_feature nls gettext) + $(meson_feature pcre pcre2) + $(meson_feature perl) + $(meson_feature perforce python) + $(meson_feature rust) + $(meson_use test tests) + + -Dcontrib=$(IFS=, ; echo "${contrib[*]}" ) + -Dcredential_helpers=$(IFS=, ; echo "${credential_helpers[*]}" ) + + -Dmacos_use_homebrew_gettext=false + -Dperl_cpan_fallback=false + # TODO: allow zlib-ng + -Dzlib_backend=zlib + ) + + [[ ${CHOST} == *-darwin* ]] && emesonargs+=( -Dfsmonitor=false ) + [[ ${CHOST} == *-solaris* ]] && append-flags -D__EXTENSIONS__ + + # For non-live, we use a downloaded docs tarball instead. + if [[ ${PV} == *9999 ]] || use doc ; then + emesonargs+=( + -Ddocs="man$(usev doc ',html')" + -Dhtmldir="${EPREFIX}/usr/share/doc/${PF}/html" + ) + fi + + if [[ ${PV} != *9999 ]] ; then + # Non-live ebuilds download the sources from a tarball which does not + # include a .git directory. Coccinelle assumes it exists and fails + # otherwise. + # + # Fixes https://bugs.gentoo.org/952004 + emesonargs+=( + -Dcoccinelle=disabled + ) + fi + + meson_src_configure + + if use tk ; then + local tkdir + for tkdir in git-gui gitk-git ; do + ( + EMESON_SOURCE="${S}"/${tkdir} + BUILD_DIR="${WORKDIR}"/${tkdir}_build + emesonargs=() + meson_src_configure + ) + done + fi +} + +git_emake() { + local mymakeargs=( + prefix="${EPREFIX}"/usr + htmldir="${EPREFIX}"/usr/share/doc/${PF}/html + sysconfdir="${EPREFIX}"/etc + perllibdir="$(use perl && perl_get_raw_vendorlib)" + + CC="$(tc-getCC)" + CFLAGS="${CFLAGS}" + LDFLAGS="${LDFLAGS}" + PKG_CONFIG="$(tc-getPKG_CONFIG)" + OPTAR="$(tc-getAR)" + OPTCC="$(tc-getCC)" + OPTCFLAGS="${CFLAGS}" + OPTLDFLAGS="${LDFLAGS}" + + PERL_PATH="${EPREFIX}/usr/bin/perl" + PERL_MM_OPT="" + + V=1 + + "$@" + ) + + emake "${mymakeargs[@]}" +} + +src_compile() { + meson_src_compile + + if use tk ; then + local tkdir + for tkdir in git-gui gitk-git ; do + ( + EMESON_SOURCE="${S}"/${tkdir} + BUILD_DIR="${WORKDIR}"/${tkdir}_build + meson_src_compile + ) + done + fi + + if use doc ; then + # Workaround fragments that still use the Makefile and can't + # find the bits from Meson's out-of-source build + ln -s "${BUILD_DIR}"/Documentation/asciidoc.conf "${S}"/Documentation/asciidoc.conf || die + fi + + git_emake -C contrib/diff-highlight +} + +src_test() { + # t0610-reftable-basics.sh uses $A + local -x A= + + meson_src_test +} + +src_install() { + meson_src_install + + # Depending on the tarball and manual rebuild of the documentation, the + # manpages may exist in either OR both of these directories. + find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157] + find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157] + dodoc README* Documentation/{SubmittingPatches,CodingGuidelines} + + local d + for d in / /howto/ /technical/ ; do + docinto ${d} + dodoc Documentation${d}*.adoc + done + docinto / + + newbashcomp contrib/completion/git-completion.bash ${PN} + bashcomp_alias git gitk + newzshcomp contrib/completion/git-completion.zsh _${PN} + # Not really a bash-completion file (bug #477920) + # but still needed uncompressed (bug #507480) + insinto /usr/share/${PN} + doins contrib/completion/git-prompt.sh + + #dobin contrib/fast-import/git-p4 # Moved upstream + #dodoc contrib/fast-import/git-p4.txt # Moved upstream + newbin contrib/fast-import/import-tars.perl import-tars + + # diff-highlight + dobin contrib/diff-highlight/diff-highlight + newdoc contrib/diff-highlight/README README.diff-highlight + + # git-jump + exeinto /usr/libexec/git-core/ + doexe contrib/git-jump/git-jump + newdoc contrib/git-jump/README git-jump.txt + + dodir /usr/share/${PN}/contrib + # The following are excluded: + # completion - installed above + # diff-highlight - done above + # git-jump - done above + # gitview - installed above + # p4import - excluded because fast-import has a better one + # patches - stuff the Git guys made to go upstream to other places + # subtree - built seperately + # svnimport - use git-svn + # thunderbird-patch-inline - fixes thunderbird + local contrib_objects=( + buildsystems + fast-import + rerere-train.sh + stats + ) + local i + for i in "${contrib_objects[@]}" ; do + cp -rf "${S}"/contrib/${i} "${ED}"/usr/share/${PN}/contrib || die "Failed contrib ${i}" + done + + if use cgi ; then + # We used to install in /usr/share/${PN}/gitweb + # but upstream installs in /usr/share/gitweb + # so we will install a symlink and use their location for compat with other + # distros + dosym ../gitweb /usr/share/${PN}/gitweb + + # INSTALL discusses configuration issues, not just installation + docinto / + newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb + newdoc "${S}"/gitweb/README README.gitweb + + for d in "${ED}"/usr/lib{,64}/perl5/ ; do + if [[ -d "${d}" ]] ; then + find "${d}" -name .packlist -delete || die + fi + done + else + rm -rf "${ED}"/usr/share/gitweb + fi + + if use perl ; then + dodir "$(perl_get_vendorlib)" + mv "${ED}"/usr/share/perl5/Git.pm "${ED}/$(perl_get_vendorlib)" || die + mv "${ED}"/usr/share/perl5/Git "${ED}/$(perl_get_vendorlib)" || die + fi + + if ! use subversion ; then + rm -f "${ED}"/usr/libexec/git-core/git-svn \ + "${ED}"/usr/share/man/man1/git-svn.1* + fi + + if use xinetd ; then + insinto /etc/xinetd.d + newins "${FILESDIR}"/git-daemon.xinetd git-daemon + fi + + if ! use prefix ; then + newinitd "${FILESDIR}"/git-daemon-r2.initd git-daemon + newconfd "${FILESDIR}"/git-daemon.confd git-daemon + systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service" + systemd_dounit "${FILESDIR}/git-daemon.socket" + fi + + if use tk ; then + local tkdir + for tkdir in git-gui gitk-git ; do + ( + EMESON_SOURCE="${S}"/${tkdir} + BUILD_DIR="${WORKDIR}"/${tkdir}_build + meson_src_install + ) + done + fi + + perl_delete_localpod + + # Remove disabled linguas + # we could remove sources in src_prepare, but install does not + # handle missing locale dir well + rm_loc() { + if [[ -e "${ED}/usr/share/locale/${1}" ]] ; then + rm -r "${ED}/usr/share/locale/${1}" || die + fi + } + plocale_for_each_disabled_locale rm_loc +} + +pkg_postinst() { + if [[ -z ${REPLACING_VERSIONS} ]] ; then + elog "Please read /usr/share/bash-completion/completions/git for Git bash command" + elog "completion." + elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt" + elog "Note that the prompt bash code is now in that separate script" + fi + + if has_version app-shells/zsh ; then + elog 'There are two competing zsh completions available for Git.' + elog 'One is from app-shells/zsh, the other from dev-vcs/git.' + elog 'To choose between them, order the entries of $fpath so that your' + elog 'desired completion is earlier in the list or symlink the relevant' + elog 'script into a personal override directory early on fpath.' + fi + + optfeature_header "Some scripts require additional dependencies:" + optfeature git-quiltimport dev-util/quilt + optfeature git-instaweb www-servers/lighttpd www-servers/apache www-servers/nginx +} From 468d47815115c7935ce63f89b108be2719447403 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:33 +0000 Subject: [PATCH 116/291] eclass/acct-group: Sync with Gentoo It's from Gentoo commit f48084851b13df017bb9a4d817e9cba7392c71f5. Signed-off-by: Flatcar Buildbot --- .../src/third_party/portage-stable/eclass/acct-group.eclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/acct-group.eclass b/sdk_container/src/third_party/portage-stable/eclass/acct-group.eclass index 892a9ff9806..2db96aca097 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/acct-group.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/acct-group.eclass @@ -8,7 +8,7 @@ # @AUTHOR: # Michael Orlitzky # Michał Górny -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: Eclass used to create and maintain a single group entry # @DESCRIPTION: # This eclass represents and creates a single group entry. The name @@ -37,7 +37,7 @@ if [[ -z ${_ACCT_GROUP_ECLASS} ]]; then _ACCT_GROUP_ECLASS=1 case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac From 154e979356b055048bf46b5d7de7249c8b67cccb Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:33 +0000 Subject: [PATCH 117/291] eclass/acct-user: Sync with Gentoo It's from Gentoo commit 27dacd7568c0dacc8ef1e1946fa3adf8e5056fc2. Signed-off-by: Flatcar Buildbot --- .../src/third_party/portage-stable/eclass/acct-user.eclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/acct-user.eclass b/sdk_container/src/third_party/portage-stable/eclass/acct-user.eclass index e20b6fca481..a62a10c7d3e 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/acct-user.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/acct-user.eclass @@ -8,7 +8,7 @@ # @AUTHOR: # Michael Orlitzky # Michał Górny -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: Eclass used to create and maintain a single user entry # @DESCRIPTION: # This eclass represents and creates a single user entry. The name @@ -45,7 +45,7 @@ if [[ -z ${_ACCT_USER_ECLASS} ]]; then _ACCT_USER_ECLASS=1 case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac From a4b6d94d0db58b6644bbfa7ba81a219b0bd3057f Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:37 +0000 Subject: [PATCH 118/291] eclass/app-alternatives: Sync with Gentoo It's from Gentoo commit 5f444bd239553812f73ce86e6b4dcfce0beb85ca. Signed-off-by: Flatcar Buildbot --- .../portage-stable/eclass/app-alternatives.eclass | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/app-alternatives.eclass b/sdk_container/src/third_party/portage-stable/eclass/app-alternatives.eclass index 32afedba1e6..2873aad45c9 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/app-alternatives.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/app-alternatives.eclass @@ -1,4 +1,4 @@ -# Copyright 2022-2024 Gentoo Authors +# Copyright 2022-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: app-alternatives.eclass @@ -6,7 +6,7 @@ # Michał Górny # @AUTHOR: # Michał Górny -# @SUPPORTED_EAPIS: 8 +# @SUPPORTED_EAPIS: 8 9 # @BLURB: Common logic for app-alternatives/* # @DESCRIPTION: # This eclass provides common logic shared by app-alternatives/* @@ -16,14 +16,14 @@ # A get_alternative() function is provided that determines the selected # alternative and prints its respective flag name. +if [[ -z ${_APP_ALTERNATIVES_ECLASS} ]]; then +_APP_ALTERNATIVES_ECLASS=1 + case ${EAPI} in - 8) ;; + 8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} unsupported." esac -if [[ -z ${_APP_ALTERNATIVES_ECLASS} ]]; then -_APP_ALTERNATIVES_ECLASS=1 - # @ECLASS_VARIABLE: ALTERNATIVES # @PRE_INHERIT # @REQUIRED From a427cdd2b1bdcafe723d0d39a4c5495258dd9ae9 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:37 +0000 Subject: [PATCH 119/291] eclass/autotools: Sync with Gentoo It's from Gentoo commit 1d3eb2038cd5435ee997451db8a538d56d0d4c1d. Signed-off-by: Flatcar Buildbot --- .../src/third_party/portage-stable/eclass/autotools.eclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/autotools.eclass b/sdk_container/src/third_party/portage-stable/eclass/autotools.eclass index 1866bb5fa62..04a0bb15a3c 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/autotools.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/autotools.eclass @@ -4,7 +4,7 @@ # @ECLASS: autotools.eclass # @MAINTAINER: # base-system@gentoo.org -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: Regenerates auto* build scripts # @DESCRIPTION: # This eclass is for safely handling autotooled software packages that need to @@ -27,7 +27,7 @@ if [[ -z ${_AUTOTOOLS_ECLASS} ]] ; then _AUTOTOOLS_ECLASS=1 case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac From 600d9d985ce8a056e09eec3f30d2542f392d3369 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:38 +0000 Subject: [PATCH 120/291] eclass/cargo: Sync with Gentoo It's from Gentoo commit 88edeac4eff9f84f30898d487ac2c5e66321dd61. Signed-off-by: Flatcar Buildbot --- .../src/third_party/portage-stable/eclass/cargo.eclass | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/cargo.eclass b/sdk_container/src/third_party/portage-stable/eclass/cargo.eclass index cbde35be727..76d3b9a61a6 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/cargo.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/cargo.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: cargo.eclass @@ -257,6 +257,7 @@ _cargo_check_initialized() { # @FUNCTION: _cargo_set_crate_uris # @USAGE: +# @INTERNAL # @DESCRIPTION: # Generates the URIs to put in SRC_URI to help fetch dependencies. # Constructs a list of crates from its arguments. From 1b96f6d89f4d2625d02ab1fecd8360b4b239422f Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:40 +0000 Subject: [PATCH 121/291] eclass/crossdev: Sync with Gentoo It's from Gentoo commit e32e40f19f2417601c8c881780429aeade00c59f. Signed-off-by: Flatcar Buildbot --- .../portage-stable/eclass/crossdev.eclass | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/crossdev.eclass b/sdk_container/src/third_party/portage-stable/eclass/crossdev.eclass index d6c99e4f32b..bf9eab279bc 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/crossdev.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/crossdev.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: crossdev.eclass @@ -6,19 +6,19 @@ # cat@catcream.org # @AUTHOR: # Alfred Persson Forsberg (21 Jul 2023) -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: Convenience wrappers for packages used by the Crossdev tool. inherit toolchain-funcs +if [[ -z ${_CROSSDEV_ECLASS} ]]; then +_CROSSDEV_ECLASS=1 + case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -if [[ -z ${_CROSSDEV_ECLASS} ]]; then -_CROSSDEV_ECLASS=1 - # @ECLASS_VARIABLE: _CROSS_CATEGORY_PREFIX # @INTERNAL # @DESCRIPTION: From 954d823d4d470c2f402b8fe97226a26a65251a42 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 2 Mar 2026 07:25:44 +0000 Subject: [PATCH 122/291] eclass/desktop: Sync with Gentoo It's from Gentoo commit 25a0079ec2825c73656b3f20a4a33421bd2f90f6. Signed-off-by: Flatcar Buildbot --- .../portage-stable/eclass/desktop.eclass | 175 ++++++++++++++---- 1 file changed, 140 insertions(+), 35 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/desktop.eclass b/sdk_container/src/third_party/portage-stable/eclass/desktop.eclass index 5dcc695bfcd..b10e2647e87 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/desktop.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/desktop.eclass @@ -1,17 +1,17 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: desktop.eclass # @MAINTAINER: # base-system@gentoo.org -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: support for desktop files, menus, and icons if [[ -z ${_DESKTOP_ECLASS} ]]; then _DESKTOP_ECLASS=1 case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac @@ -63,20 +63,14 @@ _DESKTOP_IDS=() # @CODE make_desktop_entry() { local eapi9 - if [[ -n ${1} ]]; then + if [[ ${1} == --eapi9 ]]; then case ${EAPI} in 7|8) - if [[ ${1} == --eapi9 ]]; then - eapi9=1 - shift - fi + eapi9=1 + shift ;; *) - if [[ ${1} == --eapi9 ]]; then - ewarn "make_desktop_entry: --eapi9 arg is obsolete in EAPI-${EAPI} and may be cleaned up now." - shift - fi - eapi9=1 + die "make_desktop_entry: --eapi9 arg is obsolete in EAPI-${EAPI}!" ;; esac fi @@ -314,7 +308,7 @@ make_desktop_entry() { if [[ ${eapi9} && -n ${entries} ]]; then local entry - for entry in ${entries[@]}; do + for entry in "${entries[@]}"; do if [[ ${entry} =~ ^[A-Za-z0-9-]+=.* ]]; then printf "%s\n" "${entry}" >> "${desktop}" || die else @@ -342,35 +336,146 @@ make_desktop_entry() { } # @FUNCTION: make_session_desktop -# @USAGE: <command> [command args...] +# @USAGE: [--eapi9] <command> [options] # @DESCRIPTION: -# Make a GDM/KDM Session file. The title is the file to execute to start the -# Window Manager. The command is the name of the Window Manager. +# Make a session file to start a Wayland compositor or X window manager +# and install it in the appropriate location. # -# You can set the name of the file via the ${wm} variable. +# @CODE +# --eapi9: Switch to getopts style arguments instead of order based +# As the naming implies, this is off by default for EAPI=[78], +# but mandated by future EAPI. +# command: Exec command the session is being started with, also base +# for TryExec +# with --eapi9: must not contain arguments, use --args for that +# --- Options: +# name: Name that will be displayed in login managers; +# with --eapi9: defaults to PN +# --- Additional parameters available using --eapi9: +# args: Arguments (binary params) to add to Exec value, separated by +# space if multiple +# entry: Key=Value entry to append to the session desktop file; +# multiple allowed +# comment: Comment, defaults to generic text +# filename: <filename>.desktop will be created. defaults to <command> +# xsession: Create an XSession file (Type=XSession) and install into +# /usr/share/xsessions/ +# default is wayland session into /usr/share/wayland-sessions +# @CODE +# +# Example usage: +# @CODE +# Deprecated, in order: +# <name> <command> [command args...] +# You can set the file name of the session via the ${wm} variable. +# New style: +# --eapi9 <command> [-a args] [-f filename] [-C comment] +# --eapi9 <command> [-n name] [-e entry...] [-X] +# @CODE make_session_desktop() { - [[ -z $1 ]] && eerror "$0: You must specify the title" && return 1 - [[ -z $2 ]] && eerror "$0: You must specify the command" && return 1 - - local title=$1 - local command=$2 - local desktop=${T}/${wm:-${PN}}.desktop - shift 2 - - cat <<-EOF > "${desktop}" || die - [Desktop Entry] - Name=${title} - Comment=This session logs you into ${title} - Exec=${command} $* - TryExec=${command} - Type=XSession - EOF + local eapi9 + if [[ ${1} == --eapi9 ]]; then + case ${EAPI} in + 7|8) + eapi9=1 + shift + ;; + *) + die "make_session_desktop: --eapi9 arg is obsolete in EAPI-${EAPI}!" + ;; + esac + fi + [[ -z ${1} ]] && die "make_session_desktop: You must specify at least a command" + + if [[ ${eapi9} ]]; then + local args cmd comment entries filename name xsession + while [[ $# -gt 0 ]] ; do + case "${1}" in + -a|--args) + args="${2}"; shift 2 ;; + -C|--comment) + comment="${2}"; shift 2 ;; + -e|--entry) + entries+=( "${2}" ); shift 2 ;; + -f|--filename) + filename="${2}"; shift 2 ;; + -n|--name) + name="${2}"; shift 2 ;; + -X|--xsession) + xsession=1; shift 1 ;; + *) + if [[ -z ${cmd} ]] ; then + cmd="${1}" + else + die "make_session_desktop: Can only take one command! First got: ${cmd}; then got: ${1}" + fi + shift ;; + esac + done + [[ -z ${cmd} ]] && die "make_session_desktop: You must specify at least a command" + [[ -z ${name} ]] && name=${PN} + + if [[ -z ${filename} ]]; then + if [[ ${cmd} =~ .+[[:space:]].+ ]]; then + die "make_session_desktop: --filename must be provided when <command> contains a space" + fi + filename="${cmd##*/}" + fi + if [[ ! ${filename} =~ ^[A-Za-z0-9._-]+$ ]]; then + die "make_session_desktop: <filename> must only consist of ASCII letters, digits, dash, underscore and dots" + fi + local cmd_args="${cmd} ${args}" + else + local name=${1:-${PN}} + local cmd=${2} + local xsession=1 + local filename=${wm:-${PN}} + shift 2 + local cmd_args="${cmd} $*" + fi + + [[ -z ${comment} ]] && comment="This session logs you into ${name}" + + local desktop="${T}/${filename}.desktop" + if [[ ${xsession} ]]; then + local path="/usr/share/xsessions" + else + local path="/usr/share/wayland-sessions" + fi + if [[ -e ${ED}${path}/${filename}.desktop ]]; then + die "make_session_desktop: session \"${filename}\" already exists, must be unique" + fi + + cat > "${desktop}" <<- _EOF_ || die + [Desktop Entry] + Name=${name} + Comment=${comment} + Exec=${cmd_args%[[:space:]]} + TryExec=${cmd} + _EOF_ + + if [[ ${xsession} ]]; then + cat >> "${desktop}" <<- _EOF_ || die + Type=XSession + _EOF_ + fi + + if [[ -n ${entries} ]]; then + local entry + for entry in "${entries[@]}"; do + if [[ ${entry} =~ ^[A-Za-z0-9-]+=.* ]]; then + printf "%s\n" "${entry}" >> "${desktop}" || die + else + die "make_session_desktop: <entry> \"${entry}\" rejected; must be passed a Key=Value pair" + fi + done + fi ( # wrap the env here so that the 'insinto' call # doesn't corrupt the env of the caller insopts -m 0644 - insinto /usr/share/xsessions + insinto "${path}" doins "${desktop}" ) } From 9bc18b25d1a5a5c08b01c40fbf0624f3107d04d3 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:25:44 +0000 Subject: [PATCH 123/291] eclass/dist-kernel-utils: Sync with Gentoo It's from Gentoo commit 5d417624a82991d4786b59dff1213e10ee641a12. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../eclass/dist-kernel-utils.eclass | 39 ++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/dist-kernel-utils.eclass b/sdk_container/src/third_party/portage-stable/eclass/dist-kernel-utils.eclass index 975efd2d63c..1ebf17092b3 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/dist-kernel-utils.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/dist-kernel-utils.eclass @@ -1,4 +1,4 @@ -# Copyright 2020-2025 Gentoo Authors +# Copyright 2020-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: dist-kernel-utils.eclass @@ -215,6 +215,43 @@ dist-kernel_PV_to_KV() { echo "${kv}" } +# @FUNCTION: dist-kernel_get_compressor +# @USAGE: <kernel_config> +# @DESCRIPTION: +# Returns the compressor with arguments for compressing kernel modules +# based on the CONFIG_MODULES_COMPESS_* setting in the kernel config. +dist-kernel_get_compressor() { + debug-print-function ${FUNCNAME} "$@" + + [[ ${#} -eq 1 ]] || die "${FUNCNAME}: invalid arguments" + + local suffix=$(dist-kernel_get_module_suffix "${1}") + local compress=() + # Options taken from linux-mod-r1.eclass. + # We don't instruct the compressor to parallelize because it applies + # multithreading per file, so it works only for big files, and we have + # lots of small files instead. + case ${suffix} in + .ko) + return + ;; + .ko.gz) + compress+=( gzip ) + ;; + .ko.xz) + compress+=( xz --check=crc32 --lzma2=dict=1MiB ) + ;; + .ko.zst) + compress+=( zstd -q --rm ) + ;; + *) + die "Unknown compressor: ${suffix}" + ;; + esac + + echo "${compress[@]}" +} + # @FUNCTION: dist-kernel_get_module_suffix # @USAGE: <kernel_config> # @DESCRIPTION: From 2389aebee19664038dc0a9665485904ba8f1aa74 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:25:58 +0000 Subject: [PATCH 124/291] eclass/elisp-common: Sync with Gentoo It's from Gentoo commit b5d8a48a9ec556e59baf53a2476fd8527aea05f6. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/eclass/elisp-common.eclass | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/elisp-common.eclass b/sdk_container/src/third_party/portage-stable/eclass/elisp-common.eclass index 4870ef5b8db..b07ceaf63ce 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/elisp-common.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/elisp-common.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: elisp-common.eclass @@ -25,21 +25,21 @@ # When relying on the emacs USE flag, you need to add # # @CODE -# emacs? ( >=app-editors/emacs-25.3:* ) +# emacs? ( >=app-editors/emacs-26.3:* ) # @CODE # # to your DEPEND/RDEPEND line and use the functions provided here to # bring the files to the correct locations. # -# If your package requires a minimum Emacs version, e.g. Emacs 26.1, -# then the dependency should be on >=app-editors/emacs-26.1:* instead. +# If your package requires a minimum Emacs version, e.g. Emacs 30.1, +# then the dependency should be on >=app-editors/emacs-30.1:* instead. # Because the user can select the Emacs executable with eselect, you # should also make sure that the active Emacs version is sufficient. # The eclass will automatically ensure this if you assign variable # NEED_EMACS with the Emacs version, as in the following example: # # @CODE -# NEED_EMACS=26.1 +# NEED_EMACS=30.1 # @CODE # # Please note that this should be done only for packages that are known @@ -206,7 +206,7 @@ EMACS=${EPREFIX}/usr/bin/emacs # @ECLASS_VARIABLE: EMACSFLAGS # @DESCRIPTION: # Flags for executing Emacs in batch mode. -# These work for Emacs versions 18-24, so don't change them. +# These work for Emacs versions 18 to 30, so don't change them. EMACSFLAGS="-batch -q --no-site-file" # @ECLASS_VARIABLE: BYTECOMPFLAGS @@ -217,7 +217,7 @@ BYTECOMPFLAGS="-L ." # @ECLASS_VARIABLE: NEED_EMACS # @DESCRIPTION: # The minimum Emacs version required for the package. -: "${NEED_EMACS:=25.3}" +: "${NEED_EMACS:=26.3}" # @ECLASS_VARIABLE: _ELISP_EMACS_VERSION # @INTERNAL @@ -234,7 +234,7 @@ elisp-emacs-version() { local version ret tmout="timeout -k 5 55" # Run without timeout if the command is not available ${tmout} true &>/dev/null || tmout="" - # The following will work for at least versions 18-24. + # The following will work for at least versions 18 to 30. echo "(princ emacs-version)" >"${T}"/emacs-version.el version=$( # EMACS could be a microemacs variant that ignores the -batch From 670f039d24aedde8fcd41d99708709dba60b2651 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:26:03 +0000 Subject: [PATCH 125/291] eclass/flag-o-matic: Sync with Gentoo It's from Gentoo commit 12d28fc309bcb741676841c4a152236d41daf126. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../src/third_party/portage-stable/eclass/flag-o-matic.eclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/flag-o-matic.eclass b/sdk_container/src/third_party/portage-stable/eclass/flag-o-matic.eclass index 1c9abe1280b..830e42f1b9a 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/flag-o-matic.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/flag-o-matic.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: flag-o-matic.eclass @@ -84,7 +84,7 @@ _setup-allowed-flags() { # Cosmetic/output related, see e.g. bug #830534 -fno-diagnostics-color '-fmessage-length=*' -fno-ident -fpermissive -frecord-gcc-switches - -frecord-command-line + -frecord-command-line -freport-bug '-fdiagnostics*' '-fplugin*' '-W*' -w From 30dfb06d5c1397b377ea3e62aef656bc26089725 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:26:12 +0000 Subject: [PATCH 126/291] eclass/gnuconfig: Sync with Gentoo It's from Gentoo commit 18657216e7acc90b3292e64bf96e1c8af4527220. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../src/third_party/portage-stable/eclass/gnuconfig.eclass | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/gnuconfig.eclass b/sdk_container/src/third_party/portage-stable/eclass/gnuconfig.eclass index a7c9e1672f3..0fb27d4f6f0 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/gnuconfig.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/gnuconfig.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: gnuconfig.eclass @@ -6,7 +6,7 @@ # Sam James <sam@gentoo.org> # @AUTHOR: # Will Woods <wwoods@gentoo.org> -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: Refresh bundled gnuconfig files (config.guess, config.sub) # @DESCRIPTION: # This eclass is used to automatically update files that typically come with @@ -20,7 +20,7 @@ if [[ -z ${_GNUCONFIG_ECLASS} ]] ; then _GNUCONFIG_CLASS=1 case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac From 3407acf4db11a00fb08b4b03339b1257abb7617d Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:26:14 +0000 Subject: [PATCH 127/291] eclass/go-module: Sync with Gentoo It's from Gentoo commit 9f60bd05b57239f586594eebe7c8e1770a1c13ca. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../src/third_party/portage-stable/eclass/go-module.eclass | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/go-module.eclass b/sdk_container/src/third_party/portage-stable/eclass/go-module.eclass index 411d0cd8ea5..2399fb56e9a 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/go-module.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/go-module.eclass @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Gentoo Authors +# Copyright 2019-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: go-module.eclass @@ -389,6 +389,7 @@ go-module_src_unpack() { } # @FUNCTION: _go-module_src_unpack_gosum +# @INTERNAL # @DEPRECATED: none # @DESCRIPTION: # Populate a GOPROXY directory hierarchy with distfiles from EGO_SUM and @@ -435,6 +436,7 @@ _go-module_src_unpack_gosum() { } # @FUNCTION: _go-module_gosum_synthesize_files +# @INTERNAL # @DEPRECATED: none # @DESCRIPTION: # Given a path & version, populate all Goproxy metadata files which aren't @@ -463,6 +465,7 @@ _go-module_gosum_synthesize_files() { } # @FUNCTION: _go-module_src_unpack_verify_gosum +# @INTERNAL # @DEPRECATED: none # @DESCRIPTION: # Validate the Go modules declared by EGO_SUM are sufficient to cover building From 0ae1a91a0c55c39ad0a6bbc307a628273173b430 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:26:25 +0000 Subject: [PATCH 128/291] eclass/java-pkg-opt-2: Sync with Gentoo It's from Gentoo commit 52cc2a46f4baf95b8fb4a17ac80a5ac976229cbe. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/eclass/java-pkg-opt-2.eclass | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/java-pkg-opt-2.eclass b/sdk_container/src/third_party/portage-stable/eclass/java-pkg-opt-2.eclass index 47594c3b702..add3b232fa9 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/java-pkg-opt-2.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/java-pkg-opt-2.eclass @@ -6,21 +6,21 @@ # java@gentoo.org # @AUTHOR: # Thomas Matthijs <axxo@gentoo.org> -# @SUPPORTED_EAPIS: 8 +# @SUPPORTED_EAPIS: 8 9 # @PROVIDES: java-utils-2 # @BLURB: Eclass for package with optional Java support # @DESCRIPTION: # Inherit this eclass instead of java-pkg-2 if you only need optional Java # support. +if [[ -z ${_JAVA_PKG_OPT_2_ECLASS} ]] ; then +_JAVA_PKG_OPT_2_ECLASS=1 + case ${EAPI} in - 8) ;; + 8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -if [[ -z ${_JAVA_PKG_OPT_2_ECLASS} ]] ; then -_JAVA_PKG_OPT_2_ECLASS=1 - inherit java-utils-2 # @ECLASS_VARIABLE: JAVA_PKG_OPT_USE From 36565ff17093bfee5d2275b808d8e67e2d79e371 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:26:25 +0000 Subject: [PATCH 129/291] eclass/java-utils-2: Sync with Gentoo It's from Gentoo commit 6422c89097420c5510c6914dc82d5406d25c1e3e. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../third_party/portage-stable/eclass/java-utils-2.eclass | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/java-utils-2.eclass b/sdk_container/src/third_party/portage-stable/eclass/java-utils-2.eclass index 20d189ff8cf..8b4e4ea8eec 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/java-utils-2.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/java-utils-2.eclass @@ -6,7 +6,7 @@ # java@gentoo.org # @AUTHOR: # Thomas Matthijs <axxo@gentoo.org>, Karl Trygve Kalleberg <karltk@gentoo.org> -# @SUPPORTED_EAPIS: 8 +# @SUPPORTED_EAPIS: 8 9 # @BLURB: Base eclass for Java packages # @DESCRIPTION: # This eclass provides functionality which is used by java-pkg-2.eclass and @@ -20,7 +20,7 @@ if [[ -z ${_JAVA_UTILS_2_ECLASS} ]] ; then _JAVA_UTILS_2_ECLASS=1 case ${EAPI} in - 8) ;; + 8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac @@ -2017,7 +2017,7 @@ etestng() { java-utils-2_src_prepare() { # have default_src_prepare starting from EAPI 9, see https://bugs.gentoo.org/780585 case ${EAPI} in - [78]) eapply_user ;; + 8) eapply_user ;; *) default_src_prepare ;; esac From a5a40c77cbf1dfee8f1aca70f77ea9530ef6a9f1 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:26:28 +0000 Subject: [PATCH 130/291] eclass/libtool: Sync with Gentoo It's from Gentoo commit 10cd3af0dbcb6cb2ee3cb36658b9bfbc1d007908. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../src/third_party/portage-stable/eclass/libtool.eclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/libtool.eclass b/sdk_container/src/third_party/portage-stable/eclass/libtool.eclass index 18596a92230..de5656bfd2b 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/libtool.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/libtool.eclass @@ -4,7 +4,7 @@ # @ECLASS: libtool.eclass # @MAINTAINER: # base-system@gentoo.org -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: quickly update bundled libtool code # @DESCRIPTION: # This eclass patches ltmain.sh distributed with libtoolized packages with the @@ -18,7 +18,7 @@ if [[ -z ${_LIBTOOL_ECLASS} ]]; then _LIBTOOL_ECLASS=1 case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac From 3cf860f7ba6afb346cdf16e4c45350fddd3f3438 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:26:30 +0000 Subject: [PATCH 131/291] eclass/linux-mod-r1: Sync with Gentoo It's from Gentoo commit e9dcababf8eb2f85a5f4e057ed798bd6bd325021. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../third_party/portage-stable/eclass/linux-mod-r1.eclass | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/linux-mod-r1.eclass b/sdk_container/src/third_party/portage-stable/eclass/linux-mod-r1.eclass index 3e6bd159819..49ae882f7e9 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/linux-mod-r1.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/linux-mod-r1.eclass @@ -1,4 +1,4 @@ -# Copyright 2023-2025 Gentoo Authors +# Copyright 2023-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: linux-mod-r1.eclass @@ -211,14 +211,12 @@ fi # @DEFAULT_UNSET # @DESCRIPTION: # Used with USE=modules-sign. Can be set to hash algorithm to use -# during signature generation. +# during signature generation (e.g. sha512). # # Rather than set this, it is recommended to select using the kernel's # configuration to ensure proper support (e.g. CONFIG_MODULE_SIG_SHA256), # and then it will be auto-detected here. # -# Valid values: sha512,sha384,sha256,sha224,sha1 -# # Default if unset: kernel CONFIG_MODULE_SIG_HASH's value # @ECLASS_VARIABLE: MODULES_SIGN_KEY From 2b7e6dcdfebe1ee577489b28799b3d630db60e25 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:26:34 +0000 Subject: [PATCH 132/291] eclass/llvm-r1: Sync with Gentoo It's from Gentoo commit f21c532a57f594351d7e9cbdf99dd90a3b86ce11. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../src/third_party/portage-stable/eclass/llvm-r1.eclass | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/llvm-r1.eclass b/sdk_container/src/third_party/portage-stable/eclass/llvm-r1.eclass index fc9fab75e8f..55cb0c0cafd 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/llvm-r1.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/llvm-r1.eclass @@ -1,4 +1,4 @@ -# Copyright 2024-2025 Gentoo Authors +# Copyright 2024-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: llvm-r1.eclass @@ -9,6 +9,7 @@ # @SUPPORTED_EAPIS: 8 # @PROVIDES: llvm-utils # @BLURB: Provide LLVM_SLOT to build against slotted LLVM +# @DEPRECATED: llvm-r2.eclass # @DESCRIPTION: # An eclass to reliably depend on a set of LLVM-related packages # in a matching slot. To use the eclass: From 79444a38fdbeacdb72bef4d2841ad38a964e2b65 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:26:34 +0000 Subject: [PATCH 133/291] eclass/llvm-utils: Sync with Gentoo It's from Gentoo commit 7f6abb01edf5a677c6286d12810b4a7cbccf437e. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/eclass/llvm-utils.eclass | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/llvm-utils.eclass b/sdk_container/src/third_party/portage-stable/eclass/llvm-utils.eclass index 98fc8140841..c6cca05f796 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/llvm-utils.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/llvm-utils.eclass @@ -6,21 +6,21 @@ # Michał Górny <mgorny@gentoo.org> # @AUTHOR: # Michał Górny <mgorny@gentoo.org> -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: Common utility functions for building against installed LLVM # @DESCRIPTION: # The utility eclass providing shared functions reused between # llvm.eclass and llvm-r1.eclass. It may also be used directly # in ebuilds. +if [[ -z ${_LLVM_UTILS_ECLASS} ]]; then +_LLVM_UTILS_ECLASS=1 + case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -if [[ -z ${_LLVM_UTILS_ECLASS} ]]; then -_LLVM_UTILS_ECLASS=1 - # @FUNCTION: llvm_tuple_to_target # @USAGE: [<tuple>] # @DESCRIPTION: From 6f10fa4cf53b2e399eee98b8497e4a0527c7f806 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:26:35 +0000 Subject: [PATCH 134/291] eclass/llvm: Sync with Gentoo It's from Gentoo commit c088a1b6d651073ce434de200b5461efacf12def. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../src/third_party/portage-stable/eclass/llvm.eclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/llvm.eclass b/sdk_container/src/third_party/portage-stable/eclass/llvm.eclass index 7314fd38180..592bfe226c9 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/llvm.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/llvm.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: llvm.eclass @@ -9,7 +9,7 @@ # @SUPPORTED_EAPIS: 7 8 # @PROVIDES: llvm-utils # @BLURB: Utility functions to build against slotted LLVM -# @DEPRECATED: llvm-r1.eclass +# @DEPRECATED: llvm-r2.eclass # @DESCRIPTION: # The llvm.eclass provides utility functions that can be used to build # against specific version of slotted LLVM (with fallback to :0 for old From 8164e69e37b23ddd7cfe128e2ea8da900c262cd9 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:26:47 +0000 Subject: [PATCH 135/291] eclass/meson: Sync with Gentoo It's from Gentoo commit 3de1dd6e7da09404b32449eed5f19af12d72b9e3. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/eclass/meson.eclass | 31 +++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/meson.eclass b/sdk_container/src/third_party/portage-stable/eclass/meson.eclass index d43eccaa5cc..e07e4b87983 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/meson.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/meson.eclass @@ -76,8 +76,8 @@ BDEPEND=">=dev-build/meson-1.2.3 # @VARIABLE: emesonargs # @DEFAULT_UNSET # @DESCRIPTION: -# Optional meson arguments as Bash array; this should be defined before -# calling meson_src_configure. +# Optional meson arguments as Bash array; this should be defined before calling +# meson_src_configure, meson_add_machine_file, or meson_add_native_file. # @VARIABLE: MYMESONARGS # @DEFAULT_UNSET @@ -271,6 +271,33 @@ _meson_create_native_file() { echo "${fn}" } +# @FUNCTION: meson_add_machine_file +# @USAGE: <name> < <data> +# @DESCRIPTION: +# Appends --native-file or --cross-file to emesonargs with the data given via +# standard input. Assumes emesonargs has already been defined as an array. +meson_add_machine_file() { + local file=${T}/meson.${CHOST}.${ABI}.${1}.ini + cat > "${file}" || die + + if tc-is-cross-compiler || [[ ${ABI} != "${DEFAULT_ABI}" ]]; then + emesonargs+=( --cross-file "${file}" ) + else + emesonargs+=( --native-file "${file}" ) + fi +} + +# @FUNCTION: meson_add_native_file +# @USAGE: <name> < <data> +# @DESCRIPTION: +# Appends --native-file (never --cross-file) to emesonargs with the data given +# via standard input. Assumes emesonargs has already been defined as an array. +meson_add_native_file() { + # Ensure the filename is unique by including the target tuple and ABI. + local name=${CHOST}.${ABI}.${1} CHOST=${CBUILD} ABI=${DEFAULT_ABI} + meson_add_machine_file "${name}" +} + # @FUNCTION: meson_use # @USAGE: <USE flag> [option name] # @DESCRIPTION: From f81515f8d4a0ad45ddd5d1e57997da384bab8caa Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:26:54 +0000 Subject: [PATCH 136/291] eclass/multibuild: Sync with Gentoo It's from Gentoo commit 545fb5645d41803ed0b2a5eab55d5db9bb0ec16f. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../src/third_party/portage-stable/eclass/multibuild.eclass | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/multibuild.eclass b/sdk_container/src/third_party/portage-stable/eclass/multibuild.eclass index 652a938d566..cb63fd4d795 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/multibuild.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/multibuild.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: multibuild.eclass @@ -6,7 +6,7 @@ # Michał Górny <mgorny@gentoo.org> # @AUTHOR: # Author: Michał Górny <mgorny@gentoo.org> -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: A generic eclass for building multiple variants of packages. # @DESCRIPTION: # The multibuild eclass aims to provide a generic framework for building @@ -17,7 +17,7 @@ if [[ -z ${_MULTIBUILD_ECLASS} ]]; then _MULTIBUILD_ECLASS=1 case ${EAPI} in - 7|8) + 7|8|9) # backwards compatibility for run_in_build_dir inherit out-of-source-utils ;; From 2026ba3d6d6953e29bc57c4d1e06ed6f1b06b9fc Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:26:54 +0000 Subject: [PATCH 137/291] eclass/multilib-build: Sync with Gentoo It's from Gentoo commit acbdd26def24dd7633408a0666f700271d4fbc8b. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../eclass/multilib-build.eclass | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/multilib-build.eclass b/sdk_container/src/third_party/portage-stable/eclass/multilib-build.eclass index 375adc46531..14774fc0139 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/multilib-build.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/multilib-build.eclass @@ -1,4 +1,4 @@ -# Copyright 2013-2024 Gentoo Authors +# Copyright 2013-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: multilib-build.eclass @@ -6,7 +6,7 @@ # Michał Górny <mgorny@gentoo.org> # @AUTHOR: # Author: Michał Górny <mgorny@gentoo.org> -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: flags and utility functions for building multilib packages # @DESCRIPTION: # The multilib-build.eclass exports USE flags and utility functions @@ -21,7 +21,7 @@ if [[ -z ${_MULTILIB_BUILD_ECLASS} ]]; then _MULTILIB_BUILD_ECLASS=1 case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac @@ -168,9 +168,12 @@ multilib_get_enabled_abi_pairs() { # paludis is broken (bug #486592), and switching it locally # for the split is more complex than cheating like this for m_abi in ${m_abis//,/ }; do - if [[ ${m_abi} == ${abi} ]] \ - && { [[ ! "${MULTILIB_COMPAT[@]}" ]] || has "${m_flag}" "${MULTILIB_COMPAT[@]}"; } \ - && use "${m_flag}" + if [[ ${m_abi} == ${abi} ]] && + { + [[ ! "${MULTILIB_COMPAT[@]}" ]] || + has "${m_flag}" "${MULTILIB_COMPAT[@]}" + } && + use "${m_flag}" then echo "${m_flag}.${abi}" found=1 @@ -234,10 +237,12 @@ multilib_foreach_abi() { # is done. # # This function used to run multiple commands in parallel. Now it's just -# a deprecated alias to multilib_foreach_abi. +# a deprecated alias to multilib_foreach_abi. It is removed in EAPI 9. multilib_parallel_foreach_abi() { debug-print-function ${FUNCNAME} "$@" + [[ ${EAPI} != [78] ]] && die "${FUNCNAME} is banned since EAPI 9" + local MULTIBUILD_VARIANTS=( $(multilib_get_enabled_abi_pairs) ) multibuild_foreach_variant _multilib_multibuild_wrapper "${@}" } From d39f15cd8ce83c1919c90df479853b654df85e60 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:00 +0000 Subject: [PATCH 138/291] eclass/ninja-utils: Sync with Gentoo It's from Gentoo commit 2cc5ba09184fe30fd61ed0e00464e09f7852b936. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../src/third_party/portage-stable/eclass/ninja-utils.eclass | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/ninja-utils.eclass b/sdk_container/src/third_party/portage-stable/eclass/ninja-utils.eclass index 1ffb358d7fa..34987a7b66b 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/ninja-utils.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/ninja-utils.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: ninja-utils.eclass @@ -73,6 +73,7 @@ case ${NINJA} in esac # @FUNCTION: _ninja_uses_jobserver +# @INTERNAL # @DESCRIPTION: # Return true if current ${NINJA} has jobserver support and we have one # running (via MAKEFLAGS). From a5c7435660d7dadb6cac3063d358bb75c8dc87a2 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:03 +0000 Subject: [PATCH 139/291] eclass/out-of-source-utils: Sync with Gentoo It's from Gentoo commit b0f92067750e64f4027d301a9033728cfb44f5f2. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/eclass/out-of-source-utils.eclass | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/out-of-source-utils.eclass b/sdk_container/src/third_party/portage-stable/eclass/out-of-source-utils.eclass index b1b5fc05e37..7eb47405964 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/out-of-source-utils.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/out-of-source-utils.eclass @@ -1,4 +1,4 @@ -# Copyright 2022-2024 Gentoo Authors +# Copyright 2022-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: out-of-source-utils.eclass @@ -6,7 +6,7 @@ # Michał Górny <mgorny@gentoo.org> # @AUTHOR: # Michał Górny <mgorny@gentoo.org> -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: Utility functions for building packages out-of-source # @DESCRIPTION: # This eclass provides a run_in_build_dir() helper that can be used @@ -16,7 +16,7 @@ if [[ -z ${_OUT_OF_SOURCE_UTILS_ECLASS} ]]; then _OUT_OF_SOURCE_UTILS_ECLASS=1 case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac From c4d6da6a02b63ff9abb9b05dc11e8c50ec573e9f Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:03 +0000 Subject: [PATCH 140/291] eclass/out-of-source: Sync with Gentoo It's from Gentoo commit 934d72b8d024c7d7930138d230fc4536a56956c6. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/eclass/out-of-source.eclass | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/out-of-source.eclass b/sdk_container/src/third_party/portage-stable/eclass/out-of-source.eclass index dd54c8933d4..34720c0c3b8 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/out-of-source.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/out-of-source.eclass @@ -1,10 +1,10 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: out-of-source.eclass # @MAINTAINER: # Michał Górny <mgorny@gentoo.org> -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: convenient wrapper to build autotools packages out-of-source # @DESCRIPTION: # This eclass provides a minimalistic wrapper interface to easily @@ -32,14 +32,14 @@ # } # @CODE +if [[ -z ${_OUT_OF_SOURCE_ECLASS} ]]; then +_OUT_OF_SOURCE_ECLASS=1 + case ${EAPI} in - 7|8);; + 7|8|9);; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -if [[ -z ${_OUT_OF_SOURCE_ECLASS} ]]; then -_OUT_OF_SOURCE_ECLASS=1 - # @ECLASS_VARIABLE: BUILD_DIR # @OUTPUT_VARIABLE # @DEFAULT_UNSET From 652880fec3459aac80e065fb6e33c28d9233a766 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:13 +0000 Subject: [PATCH 141/291] eclass/plocale: Sync with Gentoo It's from Gentoo commit 569a75354e41d577183a600c48895a3ebb7d2416. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../third_party/portage-stable/eclass/plocale.eclass | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/plocale.eclass b/sdk_container/src/third_party/portage-stable/eclass/plocale.eclass index 954b0658574..cb706efc895 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/plocale.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/plocale.eclass @@ -1,4 +1,4 @@ -# Copyright 2012-2022 Gentoo Authors +# Copyright 2012-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: plocale.eclass @@ -6,7 +6,7 @@ # Ulrich Müller <ulm@gentoo.org> # @AUTHOR: # Ben de Groot <yngwin@gentoo.org> -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: convenience functions to handle localizations # @DESCRIPTION: # The plocale (localization) eclass offers a number of functions to more @@ -51,14 +51,14 @@ # maintenance. It can be used to scan a directory for available # translations and check if the ebuild's PLOCALES are still up to date. +if [[ -z ${_PLOCALE_ECLASS} ]]; then +_PLOCALE_ECLASS=1 + case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -if [[ -z ${_PLOCALE_ECLASS} ]]; then -_PLOCALE_ECLASS=1 - # @ECLASS_VARIABLE: PLOCALES # @DEFAULT_UNSET # @DESCRIPTION: From d5b108ebb1f43f50730c7e7c5d7e3f14648e1325 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:14 +0000 Subject: [PATCH 142/291] eclass/portability: Sync with Gentoo It's from Gentoo commit a014e9a79bd4c6c5b1ef6247327fc7e15f927d78. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../third_party/portage-stable/eclass/portability.eclass | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/portability.eclass b/sdk_container/src/third_party/portage-stable/eclass/portability.eclass index 9efc9bfe413..c583ebf7516 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/portability.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/portability.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: portability.eclass @@ -6,14 +6,14 @@ # base-system@gentoo.org # @AUTHOR: # Diego Pettenò <flameeyes@gentoo.org> -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: This eclass is created to avoid using non-portable GNUisms inside ebuilds if [[ -z ${_PORTABILITY_ECLASS} ]]; then _PORTABILITY_ECLASS=1 case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac From b12a1b35ede4f9ffeab08d07189a4816c6ac65a0 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:16 +0000 Subject: [PATCH 143/291] eclass/preserve-libs: Sync with Gentoo It's from Gentoo commit 4fcb75e8555f3649bc3c945d65ad8baf1107f986. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../third_party/portage-stable/eclass/preserve-libs.eclass | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/preserve-libs.eclass b/sdk_container/src/third_party/portage-stable/eclass/preserve-libs.eclass index e97e3f846a0..03d74b2660c 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/preserve-libs.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/preserve-libs.eclass @@ -1,17 +1,17 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: preserve-libs.eclass # @MAINTAINER: # base-system@gentoo.org -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: preserve libraries after SONAME changes if [[ -z ${_PRESERVE_LIBS_ECLASS} ]]; then _PRESERVE_LIBS_ECLASS=1 case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac From 6c541c2cb70968f76ea41e494e4aecddcadc2497 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:17 +0000 Subject: [PATCH 144/291] eclass/pypi: Sync with Gentoo It's from Gentoo commit 6839bbb1e7ca3c8f7bebd63dd4df157f9e3cd7bc. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- sdk_container/src/third_party/portage-stable/eclass/pypi.eclass | 1 + 1 file changed, 1 insertion(+) diff --git a/sdk_container/src/third_party/portage-stable/eclass/pypi.eclass b/sdk_container/src/third_party/portage-stable/eclass/pypi.eclass index 493abd8a95d..d98fdc547d3 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/pypi.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/pypi.eclass @@ -119,6 +119,7 @@ pypi_normalize_name() { # @FUNCTION: _pypi_translate_version # @USAGE: <version> +# @INTERNAL # @DESCRIPTION: # Internal version translation function, returns the result # via _PYPI_TRANSLATED_VERSION variable. From d13d9d03c45a6ffbf6e65ee81a3c991889ca67c2 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:24 +0000 Subject: [PATCH 145/291] eclass/qmake-utils: Sync with Gentoo It's from Gentoo commit 70a4eda488cbf41c1896d0bdedbc83ac0fc61dae. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/eclass/qmake-utils.eclass | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/qmake-utils.eclass b/sdk_container/src/third_party/portage-stable/eclass/qmake-utils.eclass index 5c5fa8dcb04..1be7524693a 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/qmake-utils.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/qmake-utils.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: qmake-utils.eclass @@ -6,7 +6,7 @@ # qt@gentoo.org # @AUTHOR: # Davide Pesavento <pesa@gentoo.org> -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 8 # @BLURB: Common functions for qmake-based packages. # @DESCRIPTION: # Utility eclass providing wrapper functions for Qt qmake. @@ -15,7 +15,7 @@ # functions. It can be inherited safely. case ${EAPI} in - 7|8) ;; + 8) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac @@ -141,6 +141,13 @@ qt6_get_libdir() { echo /usr/$(get_libdir) } +# @FUNCTION: qt6_get_libexecdir +# @DESCRIPTION: +# Echoes the directory where Qt6 libexec bins are installed. +qt6_get_libexecdir() { + echo $(qt6_get_libdir)/qt6/libexec +} + # @FUNCTION: qt6_get_mkspecsdir # @DESCRIPTION: # Echoes the directory where Qt6 mkspecs are installed. From ca337131e13a264c12a1d5ee516c4deda9251f2f Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:33 +0000 Subject: [PATCH 146/291] eclass/rust: Sync with Gentoo It's from Gentoo commit d67e5f688cd82820edcbb5a712e2c8964d7d3be3. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../src/third_party/portage-stable/eclass/rust.eclass | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/rust.eclass b/sdk_container/src/third_party/portage-stable/eclass/rust.eclass index a13ea067dba..bd00c436598 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/rust.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/rust.eclass @@ -1,4 +1,4 @@ -# Copyright 2024-2025 Gentoo Authors +# Copyright 2024-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: rust.eclass @@ -67,7 +67,10 @@ fi # @DESCRIPTION: # Definitive list of Rust slots and the associated LLVM slot, newest first. declare -A -g -r _RUST_LLVM_MAP=( - ["9999"]=21 + ["9999"]=22 + ["1.94.0"]=21 + ["1.93.1"]=21 + ["1.93.0"]=21 ["1.92.0"]=21 ["1.91.0"]=21 ["1.90.0"]=20 @@ -99,6 +102,9 @@ declare -A -g -r _RUST_LLVM_MAP=( # this array is used to store the Rust slots in a more convenient order for iteration. declare -a -g -r _RUST_SLOTS_ORDERED=( "9999" + "1.94.0" + "1.93.1" + "1.93.0" "1.92.0" "1.91.0" "1.90.0" @@ -325,6 +331,7 @@ unset -f _rust_set_globals # @FUNCTION: _get_rust_slot # @USAGE: [-b|-d] +# @INTERNAL # @DESCRIPTION: # Find the newest Rust install that is acceptable for the package, # and export its version (i.e. SLOT) and type (source or bin[ary]) From b716725ead18647fa59d8bed92a066df5ff429b5 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:39 +0000 Subject: [PATCH 147/291] eclass/sgml-catalog-r1: Sync with Gentoo It's from Gentoo commit 1d1c7ad8baf8e33ce44e30724966890e88d0c349. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/eclass/sgml-catalog-r1.eclass | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/sgml-catalog-r1.eclass b/sdk_container/src/third_party/portage-stable/eclass/sgml-catalog-r1.eclass index 4b4d5334670..0235936e604 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/sgml-catalog-r1.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/sgml-catalog-r1.eclass @@ -6,20 +6,20 @@ # Michał Górny <mgorny@gentoo.org> # @AUTHOR: # Michał Górny <mgorny@gentoo.org> -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: Functions for installing SGML catalogs # @DESCRIPTION: # This eclass regenerates /etc/sgml/catalog as necessary for the DocBook # tooling. This is done via exported pkg_postinst and pkg_postrm phases. +if [[ -z ${_SGML_CATALOG_R1_ECLASS} ]]; then +_SGML_CATALOG_R1_ECLASS=1 + case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -if [[ -z ${_SGML_CATALOG_R1_ECLASS} ]]; then -_SGML_CATALOG_R1_ECLASS=1 - if [[ ${CATEGORY}/${PN} != app-text/sgml-common ]]; then RDEPEND=">=app-text/sgml-common-0.6.3-r7" fi From d5bfde3ab25ddd5e7a8c7aefbcfcdde669a7fddb Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:40 +0000 Subject: [PATCH 148/291] eclass/strip-linguas: Sync with Gentoo It's from Gentoo commit ec2e0b254e8679570771408a47d62024bd2f2b29. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/eclass/strip-linguas.eclass | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/strip-linguas.eclass b/sdk_container/src/third_party/portage-stable/eclass/strip-linguas.eclass index 355bdcc6cd1..af8fc51150b 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/strip-linguas.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/strip-linguas.eclass @@ -1,4 +1,4 @@ -# Copyright 2004-2024 Gentoo Authors +# Copyright 2004-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: strip-linguas.eclass @@ -6,18 +6,18 @@ # Ulrich Müller <ulm@gentoo.org> # @AUTHOR: # Mike Frysinger <vapier@gentoo.org> -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: convenience function for LINGUAS support if [[ -z ${_STRIP_LINGUAS_ECLASS} ]]; then _STRIP_LINGUAS_ECLASS=1 case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -# FUNCTION: strip-linguas +# @FUNCTION: strip-linguas # @USAGE: [<allow LINGUAS>|<-i|-u> <directories of .po files>] # @DESCRIPTION: # Make sure that LINGUAS only contains languages that a package can From 14c28f426ccb26f86ab86db0df7f776483cfa5d7 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:45 +0000 Subject: [PATCH 149/291] eclass/sysroot: Sync with Gentoo It's from Gentoo commit bde3d41e27af56e0ce096c04108b4843507ae2a6. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/eclass/sysroot.eclass | 110 ++++++++++++++++-- 1 file changed, 100 insertions(+), 10 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/sysroot.eclass b/sdk_container/src/third_party/portage-stable/eclass/sysroot.eclass index f17d6bcec2b..3427c421bf2 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/sysroot.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/sysroot.eclass @@ -1,4 +1,4 @@ -# Copyright 2025 Gentoo Authors +# Copyright 2025-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: sysroot.eclass @@ -41,18 +41,55 @@ qemu_arch() { esac } +# @FUNCTION: qemu_arch_if_needed +# @DESCRIPTION: +# If QEMU is needed to run binaries for the given target or CHOST on the build +# system, return the QEMU architecture, otherwise return status code 1. +qemu_arch_if_needed() { + local target=${1:-${CHOST}} + local qemu_arch=$(qemu_arch "${target}") + + # We ideally compare CHOST against CBUILD, but binary packages cache the + # CBUILD value from the system that originally built them. + if [[ ${MERGE_TYPE} != binary ]]; then + if [[ ${qemu_arch} == $(qemu_arch "${CBUILD}") ]]; then + return 1 + else + echo "${qemu_arch}" + return 0 + fi + fi + + # So for binary packages, compare against the machine hardware name instead. + # Don't use uname because that may lie. /proc knows the real value. + case "${qemu_arch}/$(< /proc/sys/kernel/arch)" in + "${qemu_arch}/${qemu_arch}") return 1 ;; + arm/armv*) return 1 ;; + hppa/parisc*) return 1 ;; + i386/i?86) return 1 ;; + mips64*/mips64) return 1 ;; + mipsn32*/mips64) return 1 ;; + mips*/mips) return 1 ;; + esac + + echo "${qemu_arch}" + return 0 +} + # @FUNCTION: sysroot_make_run_prefixed # @DESCRIPTION: # Create a wrapper script for directly running executables within a (sys)root # without changing the root directory. The path to that script is returned. If -# no sysroot has been set, then this function returns unsuccessfully. +# no (sys)root has been set, then return status code 1. If the wrapper cannot be +# created for a permissible reason like QEMU being missing or broken, then +# return status code 2. # # The script explicitly uses QEMU if this is necessary and it is available in # this environment. It may otherwise implicitly use a QEMU outside this # environment if binfmt_misc has been used with the F flag. It is not feasible # to add a conditional dependency on QEMU. sysroot_make_run_prefixed() { - local QEMU_ARCH=$(qemu_arch) SCRIPT MYROOT MYEROOT LIBGCC + local QEMU_ARCH SCRIPT MYROOT MYEROOT LIBGCC if [[ ${EBUILD_PHASE_FUNC} == src_* ]]; then [[ -z ${SYSROOT} ]] && return 1 @@ -80,10 +117,31 @@ sysroot_make_run_prefixed() { fi fi - if [[ ${QEMU_ARCH} == $(qemu_arch "${CBUILD}") ]]; then + if [[ ${CHOST} = *-mingw32 ]]; then + if ! type -P wine >/dev/null; then + einfo "Wine not found. Continuing without ${SCRIPT##*/} wrapper." + return 2 + fi + + # UNIX paths can work, but programs will not expect this in %PATH%. + local winepath="Z:${LIBGCC};Z:${MYEROOT}/bin;Z:${MYEROOT}/usr/bin;Z:${MYEROOT}/$(get_libdir);Z:${MYEROOT}/usr/$(get_libdir)" + + # Assume that Wine can do its own CPU emulation. + install -m0755 /dev/stdin "${SCRIPT}" <<-EOF || die + #!/bin/sh + SANDBOX_ON=0 LD_PRELOAD= WINEPATH="\${WINEPATH}\${WINEPATH+;};${winepath//\//\\}" exec wine "\${@}" + EOF + elif ! QEMU_ARCH=$(qemu_arch_if_needed); then # glibc: ld.so is a symlink, ldd is a binary. # musl: ld.so doesn't exist, ldd is a symlink. - local DLINKER=$(find "${MYEROOT}"/usr/bin/{ld.so,ldd} -type l -print -quit 2>/dev/null || die "failed to find dynamic linker") + local DLINKER candidate + for candidate in "${MYEROOT}"/usr/bin/{ld.so,ldd}; do + if [[ -L ${candidate} ]]; then + DLINKER=${candidate} + break + fi + done + [[ -n ${DLINKER} ]] || die "failed to find dynamic linker" # musl symlinks ldd to ld-musl.so to libc.so. We want the ld-musl.so # path, not the libc.so path, so don't resolve the symlinks entirely. @@ -102,6 +160,19 @@ sysroot_make_run_prefixed() { #!/bin/sh QEMU_SET_ENV="\${QEMU_SET_ENV}\${QEMU_SET_ENV+,}LD_LIBRARY_PATH=\${LD_LIBRARY_PATH}\${LD_LIBRARY_PATH+:}${LIBGCC}" QEMU_LD_PREFIX="${MYROOT}" exec $(type -P "qemu-${QEMU_ARCH}") "\${@}" EOF + + # Meson will fail if the given exe_wrapper does not work, regardless of + # whether one is actually needed. This is bad if QEMU is not installed + # and worse if QEMU does not support the architecture. We therefore need + # to perform our own test up front. + local test="${SCRIPT}-test" + echo 'int main(void) { return 0; }' > "${test}.c" || die "failed to write ${test##*/}" + $(tc-getCC) ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} "${test}.c" -o "${test}" || die "failed to build ${test##*/}" + + if ! "${SCRIPT}" "${test}" &>/dev/null; then + einfo "Failed to run ${test##*/}. Continuing without ${SCRIPT##*/} wrapper." + return 2 + fi fi echo "${SCRIPT}" @@ -111,11 +182,30 @@ sysroot_make_run_prefixed() { # @DESCRIPTION: # Create a wrapper script with sysroot_make_run_prefixed if necessary, and use # it to execute the given command, otherwise just execute the command directly. +# Return unsuccessfully if the wrapper cannot be created. sysroot_run_prefixed() { local script - if script=$(sysroot_make_run_prefixed); then - "${script}" "${@}" - else - "${@}" - fi + script=$(sysroot_make_run_prefixed) + + case $? in + 0) "${script}" "${@}" ;; + 1) "${@}" ;; + *) return $? ;; + esac +} + +# @FUNCTION: sysroot_try_run_prefixed +# @DESCRIPTION: +# Create a wrapper script with sysroot_make_run_prefixed if necessary, and use +# it to execute the given command, otherwise just execute the command directly. +# Print a warning and return successfully if the wrapper cannot be created. +sysroot_try_run_prefixed() { + local script + script=$(sysroot_make_run_prefixed) + + case $? in + 0) "${script}" "${@}" ;; + 1) "${@}" ;; + *) ewarn "Unable to run command under prefix: $*" ;; + esac } From ee406c5f1d4466188ee7a81a3ed8fe1c5573cad9 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:49 +0000 Subject: [PATCH 150/291] eclass/toolchain-autoconf: Sync with Gentoo It's from Gentoo commit f91fe1660806f6ac0e103fa3eb339c6d44943dda. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/eclass/toolchain-autoconf.eclass | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/toolchain-autoconf.eclass b/sdk_container/src/third_party/portage-stable/eclass/toolchain-autoconf.eclass index 330ec45dd7d..f4eda613d27 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/toolchain-autoconf.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/toolchain-autoconf.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: toolchain-autoconf.eclass @@ -102,8 +102,9 @@ toolchain-autoconf_src_install() { else rm -f dir || die - local major="$(ver_cut 1)" - local minor="$(ver_cut 2)" + local major="$(ver_cut 1 ${SLOT})" + local minor="$(ver_cut 2 ${SLOT})" + local idx="$((99999-(major*1000+minor)))" newenvd - "${TC_AUTOCONF_ENVPREFIX}${PN}${idx}" <<-EOF INFOPATH="${TC_AUTOCONF_INFOPATH}" From f82d378e68d576f29456be027f34739423737b99 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:49 +0000 Subject: [PATCH 151/291] eclass/toolchain-funcs: Sync with Gentoo It's from Gentoo commit 99ab39a4c9e7f7c1f6277032ea391f6045ffc751. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/eclass/toolchain-funcs.eclass | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/toolchain-funcs.eclass b/sdk_container/src/third_party/portage-stable/eclass/toolchain-funcs.eclass index 3f820c2d855..89da26b867b 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/toolchain-funcs.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/toolchain-funcs.eclass @@ -1,10 +1,10 @@ -# Copyright 2002-2025 Gentoo Authors +# Copyright 2002-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: toolchain-funcs.eclass # @MAINTAINER: # Toolchain Ninjas <toolchain@gentoo.org> -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: functions to query common info about the toolchain # @DESCRIPTION: # The toolchain-funcs aims to provide a complete suite of functions @@ -17,7 +17,7 @@ if [[ -z ${_TOOLCHAIN_FUNCS_ECLASS} ]]; then _TOOLCHAIN_FUNCS_ECLASS=1 case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac @@ -1248,7 +1248,7 @@ tc-is-lto() { ;; gcc) $(tc-getCC) ${CFLAGS} -c -o "${f}" -x c - <<<"" || die - [[ $($(tc-getREADELF) -S "${f}") == *.gnu.lto* ]] && ret=0 + [[ $($(tc-getOBJDUMP) -s "${f}") == *.gnu.lto* ]] && ret=0 ;; esac rm -f "${f}" || die From 69b12371c5e9842d258788412bd90bcb9d0fce26 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:50 +0000 Subject: [PATCH 152/291] eclass/toolchain: Sync with Gentoo It's from Gentoo commit 41d623234817c221bacab5dff211a696d202af8f. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/eclass/toolchain.eclass | 72 +++++++++++-------- 1 file changed, 44 insertions(+), 28 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass b/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass index 0c62e34a5c3..d051ef4dc2e 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass @@ -900,6 +900,7 @@ setup_multilib_osdirnames() { # @FUNCTION: _get_bootstrap_gcc_info # @USAGE: [gcc_pkg|gcc_bin_base]... +# @INTERNAL # @DESCRIPTION: # Get some information about the gcc that would be used to build this package. # All the variables that are passed as arguments will be set to their apropriate @@ -1416,17 +1417,19 @@ toolchain_src_configure() { confgcc+=( --disable-libstdcxx-pch ) fi - # build-id was disabled for file collisions: bug #526144 - # - # # Turn on the -Wl,--build-id flag by default for ELF targets. bug #525942 - # # This helps with locating debug files. - # case ${CTARGET} in - # *-linux-*|*-elf|*-eabi) - # tc_version_is_at_least 4.5 && confgcc+=( - # --enable-linker-build-id - # ) - # ;; - # esac + # Turn on the -Wl,--build-id flag by default for ELF targets. bug #953869 + # This helps with locating debug files. + case ${CTARGET} in + *-linux-*|*-elf|*-eabi) + tc_version_is_at_least 4.5 && confgcc+=( + --enable-linker-build-id + ) + ;; + esac + + if in_iuse ada ; then + confgcc+=( $(use_enable ada libada) ) + fi ### Cross-compiler option # @@ -1449,11 +1452,15 @@ toolchain_src_configure() { ;; *-elf|*-eabi) needed_libc=newlib - # Bare-metal targets don't have access to clock_gettime() - # arm-none-eabi example: bug #589672 - # But we explicitly do --enable-libstdcxx-time above. - # Undoing it here. - confgcc+=( --disable-libstdcxx-time ) + confgcc+=( + # Bare-metal targets don't have access to clock_gettime() + # arm-none-eabi example: bug #589672 + # But we explicitly do --enable-libstdcxx-time above. + # Undoing it here. + --disable-libstdcxx-time + # bug #970098 + --disable-libada + ) ;; *-gnu*) needed_libc=glibc @@ -1778,10 +1785,6 @@ toolchain_src_configure() { fi fi - if in_iuse ada ; then - confgcc+=( $(use_enable ada libada) ) - fi - if in_iuse cet ; then # Usage: triple_arch triple_env cet_name enable_cet_for() { @@ -1809,7 +1812,7 @@ toolchain_src_configure() { # We patch this in w/ PR66487-object-lifetime-instrumentation-for-Valgrind.patch, # so it may not always be available. if grep -q -- '--enable-valgrind-interop' "${S}"/libgcc/configure.ac ; then - if ! is_crosscompile || $(unset CC; unset CPP; tc-getCPP ${CTARGET#accel-}) -E - <<<"#include <valgrind/memcheck.h>" >& /dev/null ; then + if ! is_crosscompile && $(unset CC; unset CPP; tc-getCPP ${CTARGET#accel-}) -E - <<<"#include <valgrind/memcheck.h>" >& /dev/null ; then confgcc+=( $(use_enable valgrind valgrind-interop) ) else confgcc+=( --disable-valgrind-interop ) @@ -1846,19 +1849,27 @@ toolchain_src_configure() { fi if in_iuse pie ; then - confgcc+=( $(use_enable pie default-pie) ) + # Workaround for broken configure logic (bug #970413) + if use pie ; then + confgcc+=( --enable-default-pie ) + fi if tc_version_is_at_least 14.1 ${PV} || tc_version_is_at_least 13.4.1_p20250814 ${PV} ; then - confgcc+=( --enable-host-pie ) + # Workaround for broken configure logic (bug #970413) + if use pie ; then + confgcc+=( --enable-host-pie ) + fi fi fi if in_iuse default-znow && { tc_version_is_at_least 14.1 ${PV} || tc_version_is_at_least 13.4.1_p20250814 ${PV} ; } ; then # See https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=33ebb0dff9bb022f1e0709e0e73faabfc3df7931. # TODO: Add to LDFLAGS_FOR_TARGET? - confgcc+=( - $(use_enable default-znow host-bind-now) - ) + # + # Workaround for broken configure logic (bug #970413) + if use default-znow ; then + confgcc+=( --enable-host-bind-now ) + fi fi if in_iuse ssp ; then @@ -2835,9 +2846,14 @@ gcc_movelibs() { # Without this, we end up either unable to find the libgomp spec/archive, or # we underlink and can't find gomp_nvptx_main (presumably because we can't find the plugin) # https://src.fedoraproject.org/rpms/gcc/blob/02c34dfa3627ef05d676d30e152a66e77b58529b/f/gcc.spec#_1445 - if [[ ${CATEGORY} == cross-accel-nvptx* ]] && is_fortran ; then + # + # openmp/fortran check is needed here to know if we're in the stage1 + # build or not. + if [[ ${CATEGORY} == cross-accel-nvptx* ]] && { _tc_use_if_iuse openmp || is_fortran ; } ; then rm -rf "${ED}"/usr/libexec/gcc/nvptx-none/${GCCMAJOR}/install-tools - rm -rf "${ED}"/usr/libexec/gcc/${CHOST}/${GCCMAJOR}/accel/nvptx-none/{install-tools,plugin,cc1,cc1plus,f951} + rm -rf "${ED}"/usr/libexec/gcc/${CHOST}/${GCCMAJOR}/accel/nvptx-none/{install-tools,plugin,cc1,cc1plus} + is_fortran && rm -rf "${ED}"/usr/libexec/gcc/${CHOST}/${GCCMAJOR}/accel/nvptx-none/f951 + rm -rf "${ED}"/usr/lib/gcc/nvptx-none/${GCCMAJOR}/{install-tools,plugin} rm -rf "${ED}"/usr/lib/gcc/${CHOST}/${GCCMAJOR}/accel/nvptx-none/{install-tools,plugin,include-fixed} mv "${ED}"/usr/nvptx-none/lib/*.{a,spec} "${ED}"/usr/lib/gcc/${CHOST}/${GCCMAJOR}/accel/nvptx-none/ From a9b4b07a852734bdd7b6142d75517745869f727b Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:53 +0000 Subject: [PATCH 153/291] eclass/unpacker: Sync with Gentoo It's from Gentoo commit 8932600dfca2ec57a4a5b2a56571824ecbf5a1af. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../src/third_party/portage-stable/eclass/unpacker.eclass | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/unpacker.eclass b/sdk_container/src/third_party/portage-stable/eclass/unpacker.eclass index 0ace3ae53cb..e51c51dfa33 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/unpacker.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/unpacker.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: unpacker.eclass @@ -218,7 +218,8 @@ unpack_makeself() { skip=$(head -n ${skip} "${src}" | wc -c) exe="dd" ;; - 2.4.5) + # 2.6.0's header also contains "2.5.0"; unpack_makeself works in both cases + 2.4.5|2.5.0|2.7.0|2.7.1) # e.g.: skip="713" skip=$( sed -n -e '/^skip=/{s:skip="\(.*\)":\1:p;q}' "${src}" From a079b143320739717dcf06fecff3ce4ffeef5276 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:53 +0000 Subject: [PATCH 154/291] eclass/user-info: Sync with Gentoo It's from Gentoo commit fbbce31f0e4ec8fc1da5cfb19feef4e0ace000d6. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../third_party/portage-stable/eclass/user-info.eclass | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/user-info.eclass b/sdk_container/src/third_party/portage-stable/eclass/user-info.eclass index 848622fe94e..3e2bdecfe04 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/user-info.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/user-info.eclass @@ -5,17 +5,17 @@ # @MAINTAINER: # base-system@gentoo.org (Linux) # Michał Górny <mgorny@gentoo.org> (NetBSD) -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: Read-only access to user and group information +if [[ -z ${_USER_INFO_ECLASS} ]]; then +_USER_INFO_ECLASS=1 + case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -if [[ -z ${_USER_INFO_ECLASS} ]]; then -_USER_INFO_ECLASS=1 - # @FUNCTION: egetent # @USAGE: <database> <key> # @DESCRIPTION: From 006913466cd5ed8587d25503c2ff26eba0c539a8 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:57 +0000 Subject: [PATCH 155/291] eclass/vcs-snapshot: Sync with Gentoo It's from Gentoo commit 3b271461c203e1798dd0a31c3fbf8f65fef3b948. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/eclass/vcs-snapshot.eclass | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/vcs-snapshot.eclass b/sdk_container/src/third_party/portage-stable/eclass/vcs-snapshot.eclass index 998fe348a2a..f68169419dc 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/vcs-snapshot.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/vcs-snapshot.eclass @@ -1,10 +1,10 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: vcs-snapshot.eclass # @MAINTAINER: # mgorny@gentoo.org -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: support eclass for unpacking VCS snapshot tarballs # @DESCRIPTION: # THIS ECLASS IS NOT NECESSARY FOR MODERN GITHUB AND GITLAB SNAPSHOTS. @@ -42,14 +42,14 @@ # and however the tarballs were originally packed, all files will appear # in ${WORKDIR}/${P} and ${WORKDIR}/${P}-otherstuff respectively. +if [[ -z ${_VCS_SNAPSHOT_ECLASS} ]]; then +_VCS_SNAPSHOT_ECLASS=1 + case ${EAPI} in - 7|8) ;; + 7|8|9) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -if [[ -z ${_VCS_SNAPSHOT_ECLASS} ]]; then -_VCS_SNAPSHOT_ECLASS=1 - # @FUNCTION: vcs-snapshot_src_unpack # @DESCRIPTION: # Extract all the archives from ${A}. The .tar, .tar.gz, .tar.bz2 From db360390d9cd649e2947a80d25fd14ad1ae469b5 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:27:57 +0000 Subject: [PATCH 156/291] eclass/verify-sig: Sync with Gentoo It's from Gentoo commit 2cb33d9f2ef99beb596b5d56d58346ee1b8c2204. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/eclass/verify-sig.eclass | 24 +++++++++---------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/verify-sig.eclass b/sdk_container/src/third_party/portage-stable/eclass/verify-sig.eclass index ba1086d6641..d9aa60152a0 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/verify-sig.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/verify-sig.eclass @@ -1,10 +1,10 @@ -# Copyright 2020-2025 Gentoo Authors +# Copyright 2020-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: verify-sig.eclass # @MAINTAINER: # Michał Górny <mgorny@gentoo.org> -# @SUPPORTED_EAPIS: 7 8 +# @SUPPORTED_EAPIS: 7 8 9 # @BLURB: Eclass to verify upstream signatures on distfiles # @DESCRIPTION: # verify-sig eclass provides a streamlined approach to verifying @@ -40,15 +40,14 @@ # VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/example.asc # @CODE -case ${EAPI} in - 7|8) ;; - *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; -esac - if [[ -z ${_VERIFY_SIG_ECLASS} ]]; then _VERIFY_SIG_ECLASS=1 -inherit eapi9-pipestatus +case ${EAPI} in + 7|8) inherit eapi9-pipestatus ;; + 9) ;; + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; +esac IUSE="verify-sig" @@ -345,11 +344,10 @@ verify-sig_verify_unsigned_checksums() { [[ -n ${junk} ]] && continue ;; openssl-dgst) - [[ ${line} != *"("*")="* ]] && continue - checksum=${line##*)=} - algo=${line%%(*} - filename=${line#*(} - filename=${filename%)=*} + [[ ${line} =~ ^([[:alnum:]]+)[[:space:]]*[(](.*)[)][[:space:]]*=[[:space:]]*([0-9a-fA-F]+)$ ]] || continue + algo=${BASH_REMATCH[1]} + filename=${BASH_REMATCH[2]} + checksum=${BASH_REMATCH[3]} ;; esac From 5ac39d068c95c94e6605e25f26b5a4b1108cecac Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:07 +0000 Subject: [PATCH 157/291] eclass/wrapper: Sync with Gentoo It's from Gentoo commit 15a4e77531a7ad1765c32c56a46f824a998c6c94. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../src/third_party/portage-stable/eclass/wrapper.eclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/wrapper.eclass b/sdk_container/src/third_party/portage-stable/eclass/wrapper.eclass index 1f995a60509..8dd9a8086e3 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/wrapper.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/wrapper.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: wrapper.eclass @@ -15,7 +15,7 @@ case ${EAPI} in *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -# FUNCTION: make_wrapper +# @FUNCTION: make_wrapper # @USAGE: <wrapper> <target> [chdir] [libpaths] [installpath] # @DESCRIPTION: # Create a shell wrapper script named wrapper in installpath From c4839da883ad8573f9a2103d7d07ffa6e73fe6af Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:14 +0000 Subject: [PATCH 158/291] media-libs/libpng: Sync with Gentoo It's from Gentoo commit 2d13266c3124cbe4ec72a524fa4ab8daf612f76c. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/media-libs/libpng/Manifest | 3 + .../media-libs/libpng/libpng-1.6.52.ebuild | 4 +- .../media-libs/libpng/libpng-1.6.54.ebuild | 78 +++++++++++++++++++ .../media-libs/libpng/libpng-1.6.55.ebuild | 78 +++++++++++++++++++ 4 files changed, 161 insertions(+), 2 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.54.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.55.ebuild diff --git a/sdk_container/src/third_party/portage-stable/media-libs/libpng/Manifest b/sdk_container/src/third_party/portage-stable/media-libs/libpng/Manifest index 08c93318b29..1cccbbbde04 100644 --- a/sdk_container/src/third_party/portage-stable/media-libs/libpng/Manifest +++ b/sdk_container/src/third_party/portage-stable/media-libs/libpng/Manifest @@ -6,3 +6,6 @@ DIST libpng-1.6.51-libpng-apng-apng.patch.gz 10686 BLAKE2B 71cab27854831c640de6d DIST libpng-1.6.51.tar.xz 1060772 BLAKE2B 2d1ee36f9796e90a533abf26597df82c39cfab42f8d4044d35e0fdbab65612b9fc0234780677e2ea758450db9815b9d30870e8024bcebc0170c87361b7c4cc0a SHA512 c723406f050f99783b2576e7e2c84774630a7f46bb8ea82bf4932f82bbb4899f47cb1b19ff9020245a474a0b2fee82c55ac1c58db43e3888ad5cc3a1767e7433 DIST libpng-1.6.52.tar.xz 1063580 BLAKE2B 47732b5e1a9d35e6aa2b7d1b967842588410154ada06af9d9c3fafaaf2440f1b70a1c9d4c0329b29b401f182ac4cc1fe88dc312e8a17e82aafd4ca954910221b SHA512 2bb1318f36712fc007613373a44a3276b4ed129b51b908464d9577ea9704d3caa469ec5bc7ebfb8b1de57ba3998c0b3375cd105054011ec54c21e9f208ec3c8b DIST libpng-1.6.53.tar.xz 1063432 BLAKE2B 62e28068e1885305828fff3296b19a7d61e11a52ca425be91289e17087be2c42f06ea2df000169632cc556b398cdcb4784a639879e038962310c53becae779f6 SHA512 569f81d57dcce7bb874a45fa9f8db2044585245d2eb0c0485a1b03c2e338ecaec6bfda3cb94ad2a34951997414c69fc0373c8c5852d6c313c03e8a946ff345c6 +DIST libpng-1.6.54-libpng-apng-apng.patch.gz 10604 BLAKE2B 8202b80755e6c18227e89567cdb087ac79b4f72862d9a23e29f1271310af4bcb4783a52090e1479724bd9c088a13a7a4e2f2cbda2e958e2c3180619b20ec8a1b SHA512 217449d76fab45707a696ee5926039c6091196abfc33b4e3bec0a5f63d5b17fd4a7e48af41c4cc2536edc527837dc10fe718092d5b1ffc89ee4dc66883e7267a +DIST libpng-1.6.54.tar.xz 1064472 BLAKE2B a91ebb8396d9a5de10d642cc8891d594dacd480248fdb73859f8317fc6cbadf0f542acf446955f2e78e8655439464bbad600993491e3e97474a91c65d703fef7 SHA512 fc44530146af15c96232bf9954b9deda93d7bdd726c1a62685062f864215674fd3ae912e8eeafffc04329f2e802464262a8c4bca266ee7bc3559cdcd90eb785e +DIST libpng-1.6.55.tar.xz 1064676 BLAKE2B 2fd88e6e9f4e72edbafbfdd6d8e78522033920a250f8cb37f29ba8e9593cdf006b06f4e73de4e83fc5ddaaa3725362f27f5a16727ae841fd8969b74f28517ec4 SHA512 a9846fc32cb042bcce05f719a5b31255957e1c36ad6ad14dd23cf5eac3ce0b981dc5c34b18dc255e1fffc2cc064d0a77e3a1beb3c7167a0bdc3e1d0103383b4a diff --git a/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.52.ebuild b/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.52.ebuild index f4b7a89846f..1319f86fd0f 100644 --- a/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.52.ebuild +++ b/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.52.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -19,7 +19,7 @@ SRC_URI=" LICENSE="libpng2" SLOT="0/16" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="apng cpu_flags_x86_sse static-libs test" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.54.ebuild b/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.54.ebuild new file mode 100644 index 00000000000..b446031fc7e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.54.ebuild @@ -0,0 +1,78 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit dot-a libtool multilib-minimal + +APNG_REPO=libpng-apng # sometimes libpng-apng is more up to date +APNG_VERSION="1.6.54" +DESCRIPTION="Portable Network Graphics library" +HOMEPAGE="https://www.libpng.org/" +SRC_URI=" + https://downloads.sourceforge.net/${PN}/${P}.tar.xz + apng? ( + https://downloads.sourceforge.net/${APNG_REPO}/${PN}$(ver_rs 1-2 '' $(ver_cut 1-2 ${APNG_VERSION}))/${PV}/${PN}-${APNG_VERSION}-apng.patch.gz -> ${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch.gz + https://downloads.sourceforge.net/${APNG_REPO}/${PN}$(ver_rs 1-2 '' $(ver_cut 1-2 ${APNG_VERSION}))/${PN}-${APNG_VERSION}-apng.patch.gz -> ${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch.gz + ) +" + +LICENSE="libpng2" +SLOT="0/16" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="apng cpu_flags_x86_sse static-libs test" +RESTRICT="!test? ( test )" + +RDEPEND=">=virtual/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]" +DEPEND=" + ${RDEPEND} + riscv? ( sys-kernel/linux-headers ) +" + +DOCS=( ANNOUNCE CHANGES libpng-manual.txt README TODO ) + +src_prepare() { + default + + if use apng; then + case ${APNG_REPO} in + apng) + eapply -p0 "${WORKDIR}"/${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch + ;; + libpng-apng) + eapply "${WORKDIR}"/${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch + ;; + *) + die "Unknown APNG_REPO!" + ;; + esac + + # Don't execute symbols check with apng patch, bug #378111 + sed -i -e '/^check/s:scripts/symbols.chk::' Makefile.in || die + fi + + elibtoolize +} + +src_configure() { + lto-guarantee-fat + multilib-minimal_src_configure +} + +multilib_src_configure() { + local myeconfargs=( + $(multilib_native_enable tools) + $(use_enable test tests) + $(use_enable cpu_flags_x86_sse intel-sse) + $(use_enable static-libs static) + ) + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_install_all() { + default + + strip-lto-bytecode + find "${ED}" \( -type f -o -type l \) -name '*.la' -delete || die +} diff --git a/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.55.ebuild b/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.55.ebuild new file mode 100644 index 00000000000..b446031fc7e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.55.ebuild @@ -0,0 +1,78 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit dot-a libtool multilib-minimal + +APNG_REPO=libpng-apng # sometimes libpng-apng is more up to date +APNG_VERSION="1.6.54" +DESCRIPTION="Portable Network Graphics library" +HOMEPAGE="https://www.libpng.org/" +SRC_URI=" + https://downloads.sourceforge.net/${PN}/${P}.tar.xz + apng? ( + https://downloads.sourceforge.net/${APNG_REPO}/${PN}$(ver_rs 1-2 '' $(ver_cut 1-2 ${APNG_VERSION}))/${PV}/${PN}-${APNG_VERSION}-apng.patch.gz -> ${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch.gz + https://downloads.sourceforge.net/${APNG_REPO}/${PN}$(ver_rs 1-2 '' $(ver_cut 1-2 ${APNG_VERSION}))/${PN}-${APNG_VERSION}-apng.patch.gz -> ${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch.gz + ) +" + +LICENSE="libpng2" +SLOT="0/16" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="apng cpu_flags_x86_sse static-libs test" +RESTRICT="!test? ( test )" + +RDEPEND=">=virtual/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]" +DEPEND=" + ${RDEPEND} + riscv? ( sys-kernel/linux-headers ) +" + +DOCS=( ANNOUNCE CHANGES libpng-manual.txt README TODO ) + +src_prepare() { + default + + if use apng; then + case ${APNG_REPO} in + apng) + eapply -p0 "${WORKDIR}"/${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch + ;; + libpng-apng) + eapply "${WORKDIR}"/${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch + ;; + *) + die "Unknown APNG_REPO!" + ;; + esac + + # Don't execute symbols check with apng patch, bug #378111 + sed -i -e '/^check/s:scripts/symbols.chk::' Makefile.in || die + fi + + elibtoolize +} + +src_configure() { + lto-guarantee-fat + multilib-minimal_src_configure +} + +multilib_src_configure() { + local myeconfargs=( + $(multilib_native_enable tools) + $(use_enable test tests) + $(use_enable cpu_flags_x86_sse intel-sse) + $(use_enable static-libs static) + ) + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_install_all() { + default + + strip-lto-bytecode + find "${ED}" \( -type f -o -type l \) -name '*.la' -delete || die +} From 4fc5743766b0237cf0ca325e9fdc9c17956faf6f Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:14 +0000 Subject: [PATCH 159/291] net-analyzer/netperf: Sync with Gentoo It's from Gentoo commit 40bc7aaa27be1c1259d9d05cf49e93aa16bd3a4b. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../netperf/files/netperf-2.7.0-gcc15.patch | 167 ++++++++++++++++++ .../netperf/netperf-2.7.0_p20210121-r1.ebuild | 80 +++++++++ 2 files changed, 247 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/net-analyzer/netperf/files/netperf-2.7.0-gcc15.patch create mode 100644 sdk_container/src/third_party/portage-stable/net-analyzer/netperf/netperf-2.7.0_p20210121-r1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/net-analyzer/netperf/files/netperf-2.7.0-gcc15.patch b/sdk_container/src/third_party/portage-stable/net-analyzer/netperf/files/netperf-2.7.0-gcc15.patch new file mode 100644 index 00000000000..fe6335b26c2 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-analyzer/netperf/files/netperf-2.7.0-gcc15.patch @@ -0,0 +1,167 @@ +From 2bf2c2d7b6fecc43c70567054071134ab13ef0a6 Mon Sep 17 00:00:00 2001 +From: "mark.yang" <mark.yang@lge.com> +Date: Wed, 16 Apr 2025 20:02:36 +0900 +Subject: [PATCH] Fix too many arguments error occurring in gcc-15 + +* See more details in http://errors.yoctoproject.org/Errors/Details/851803/ +../../git/src/nettest_bsd.c:4497:19: error: too many arguments to function 'alloc_sendfile_buf_ring'; expected 0, have 4 + 4497 | send_ring = alloc_sendfile_buf_ring(send_width, + | ^~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ +In file included from ../../git/src/nettest_bsd.c:175: +../../git/src/netlib.h:690:26: note: declared here + 690 | extern struct ring_elt *alloc_sendfile_buf_ring(); + | ^~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../../git/src/nettest_omni.c:184: +../../git/src/hist.h:135:6: error: conflicting types for 'HIST_purge'; have 'void(struct histogram_struct *)' + 135 | void HIST_purge(HIST h); + | ^~~~~~~~~~ +In file included from ../../git/src/nettest_omni.c:166: +../../git/src/netlib.h:651:17: note: previous declaration of 'HIST_purge' with type 'void(void)' + 651 | extern void HIST_purge(); + | ^~~~~~~~~~ +../../git/src/nettest_bsd.c: In function 'recv_tcp_stream': +../../git/src/nettest_bsd.c:5197:15: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 + 5197 | recv_ring = allocate_buffer_ring(recv_width, + | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ +../../git/src/netlib.h:679:26: note: declared here + 679 | extern struct ring_elt *allocate_buffer_ring(); + | ^~~~~~~~~~~~~~~~~~~~ +../../git/src/nettest_bsd.c: In function 'recv_tcp_maerts': +../../git/src/nettest_bsd.c:5617:15: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 + 5617 | send_ring = allocate_buffer_ring(send_width, + | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ +../../git/src/netlib.h:679:26: note: declared here + 679 | extern struct ring_elt *allocate_buffer_ring(); + | ^~~~~~~~~~~~~~~~~~~~ +../../git/src/nettest_bsd.c: In function 'recv_udp_stream': +../../git/src/nettest_bsd.c:7345:15: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 + 7345 | recv_ring = allocate_buffer_ring(recv_width, + | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ +../../git/src/netlib.h:679:26: note: declared here + 679 | extern struct ring_elt *allocate_buffer_ring(); + | ^~~~~~~~~~~~~~~~~~~~ +../../git/src/nettest_bsd.c: In function 'recv_udp_rr': +../../git/src/nettest_bsd.c:8360:15: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 + 8360 | recv_ring = allocate_buffer_ring(recv_width, + | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ +../../git/src/netlib.h:679:26: note: declared here + 679 | extern struct ring_elt *allocate_buffer_ring(); + | ^~~~~~~~~~~~~~~~~~~~ +../../git/src/nettest_bsd.c:8365:15: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 + 8365 | send_ring = allocate_buffer_ring(send_width, + | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ +../../git/src/netlib.h:679:26: note: declared here + 679 | extern struct ring_elt *allocate_buffer_ring(); + | ^~~~~~~~~~~~~~~~~~~~ +../../git/src/nettest_bsd.c: In function 'recv_tcp_rr': +../../git/src/nettest_bsd.c:8677:15: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 + 8677 | send_ring = allocate_buffer_ring(send_width, + | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ +../../git/src/netlib.h:679:26: note: declared here + 679 | extern struct ring_elt *allocate_buffer_ring(); + | ^~~~~~~~~~~~~~~~~~~~ +../../git/src/nettest_bsd.c:8682:15: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 + 8682 | recv_ring = allocate_buffer_ring(recv_width, + | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ +../../git/src/netlib.h:679:26: note: declared here + 679 | extern struct ring_elt *allocate_buffer_ring(); + | ^~~~~~~~~~~~~~~~~~~~ +../../git/src/nettest_omni.c: In function 'send_omni_inner': +../../git/src/nettest_omni.c:4044:21: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 + 4044 | send_ring = allocate_buffer_ring(send_width, + | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ +../../git/src/netlib.h:679:26: note: declared here + 679 | extern struct ring_elt *allocate_buffer_ring(); + | ^~~~~~~~~~~~~~~~~~~~ +../../git/src/nettest_omni.c:4086:21: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 + 4086 | recv_ring = allocate_buffer_ring(recv_width, + | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ +../../git/src/netlib.h:679:26: note: declared here + 679 | extern struct ring_elt *allocate_buffer_ring(); + | ^~~~~~~~~~~~~~~~~~~~ +../../git/src/nettest_omni.c:5050:5: error: too many arguments to function 'HIST_get_stats'; expected 0, have 5 + 5050 | HIST_get_stats(time_hist, + | ^~~~~~~~~~~~~~ ~~~~~~~~~ +../../git/src/netlib.h:650:17: note: declared here + 650 | extern void HIST_get_stats(); + | ^~~~~~~~~~~~~~ +../../git/src/nettest_omni.c:5055:19: error: too many arguments to function 'HIST_get_percentile'; expected 0, have 2 + 5055 | p50_latency = HIST_get_percentile(time_hist, 0.50); + | ^~~~~~~~~~~~~~~~~~~ ~~~~~~~~~ +../../git/src/netlib.h:649:17: note: declared here + 649 | extern int HIST_get_percentile(); + | ^~~~~~~~~~~~~~~~~~~ +../../git/src/nettest_omni.c:5056:19: error: too many arguments to function 'HIST_get_percentile'; expected 0, have 2 + 5056 | p90_latency = HIST_get_percentile(time_hist, 0.90); + | ^~~~~~~~~~~~~~~~~~~ ~~~~~~~~~ +../../git/src/netlib.h:649:17: note: declared here + 649 | extern int HIST_get_percentile(); + | ^~~~~~~~~~~~~~~~~~~ +../../git/src/nettest_omni.c:5057:19: error: too many arguments to function 'HIST_get_percentile'; expected 0, have 2 + 5057 | p99_latency = HIST_get_percentile(time_hist, 0.99); + | ^~~~~~~~~~~~~~~~~~~ ~~~~~~~~~ +../../git/src/netlib.h:649:17: note: declared here + 649 | extern int HIST_get_percentile(); + | ^~~~~~~~~~~~~~~~~~~ +../../git/src/nettest_omni.c: In function 'recv_omni': +../../git/src/nettest_omni.c:5354:17: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 + 5354 | send_ring = allocate_buffer_ring(send_width, + | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ +../../git/src/netlib.h:679:26: note: declared here + 679 | extern struct ring_elt *allocate_buffer_ring(); + | ^~~~~~~~~~~~~~~~~~~~ +../../git/src/nettest_omni.c:5396:17: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 + 5396 | recv_ring = allocate_buffer_ring(recv_width, + | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ +../../git/src/netlib.h:679:26: note: declared here + 679 | extern struct ring_elt *allocate_buffer_ring(); + | ^~~~~~~~~~~~~~~~~~~~ + +Signed-off-by: mark.yang <mark.yang@lge.com> +--- + src/netlib.h | 11 ++++++----- + 1 file changed, 6 insertions(+), 5 deletions(-) + +diff --git a/src/netlib.h b/src/netlib.h +index b1f4199..8e1f6fe 100644 +--- a/src/netlib.h ++++ b/src/netlib.h +@@ -564,6 +564,7 @@ extern void demo_interval_final(); + #endif + #endif + ++#include "hist.h" + extern void netlib_init(); + extern int netlib_get_page_size(); + extern void install_signal_catchers(); +@@ -646,9 +647,9 @@ extern char *find_interface_slot(char *interface_name); + extern void find_interface_ids(char *interface_name, int *vendor, int *device, int *sub_vend, int *sub_dev); + extern void find_driver_info(char *ifname, char *driver, char *version, char *firmware, char *bus, int len); + extern void find_system_info(char **system_model, char **cpu_model, int *cpu_frequency); +-extern int HIST_get_percentile(); +-extern void HIST_get_stats(); +-extern void HIST_purge(); ++extern int HIST_get_percentile(HIST h, const double percentile); ++extern void HIST_get_stats(HIST h, int *min, int *max, double *mean, double *stddev); ++extern void HIST_purge(HIST h); + extern void find_security_info(int *enabled, int *type, char **specific); + extern void demo_first_timestamp(); + extern void demo_reset(); +@@ -676,7 +677,7 @@ extern void catcher(int, siginfo_t *,void *); + #else + extern void catcher(int); + #endif /* __hpux */ +-extern struct ring_elt *allocate_buffer_ring(); ++extern struct ring_elt *allocate_buffer_ring(int recv_width, int recv_size, int local_recv_align, int local_recv_offset); + extern void access_buffer(char *buffer_ptr, + int length, + int dirty_count, +@@ -687,7 +688,7 @@ extern struct ring_elt *allocate_exs_buffer_ring(); + #endif /* HAVE_ICSC_EXS */ + + #ifdef HAVE_SENDFILE +-extern struct ring_elt *alloc_sendfile_buf_ring(); ++extern struct ring_elt *alloc_sendfile_buf_ring(int send_width, int send_size, int local_send_align, int local_send_offset); + extern int netperf_sendfile(SOCKET send_socket, struct ring_elt *send_ring); + #endif /* HAVE_SENDFILE */ + diff --git a/sdk_container/src/third_party/portage-stable/net-analyzer/netperf/netperf-2.7.0_p20210121-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-analyzer/netperf/netperf-2.7.0_p20210121-r1.ebuild new file mode 100644 index 00000000000..caf1dc52ad4 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-analyzer/netperf/netperf-2.7.0_p20210121-r1.ebuild @@ -0,0 +1,80 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools flag-o-matic + +COMMIT="3bc455b23f901dae377ca0a558e1e32aa56b31c4" +DESCRIPTION="Network performance benchmark" +HOMEPAGE="https://github.com/HewlettPackard/netperf" +SRC_URI="https://github.com/HewlettPackard/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN}-${COMMIT}" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="demo sctp" + +RDEPEND=" + acct-group/netperf + acct-user/netperf +" +BDEPEND=" + ${RDEPEND} + sys-devel/gnuconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-fix-scripts.patch + "${FILESDIR}"/${PN}-log-dir.patch + "${FILESDIR}"/${PN}-2.7.0-includes.patch + "${FILESDIR}"/${PN}-2.7.0-fcommon.patch + "${FILESDIR}"/${PN}-2.7.0-gcc15.patch +) + +src_prepare() { + # Fixing paths in scripts + sed -i \ + -e "s:^\(NETHOME=\).*:\1\"${EPREFIX}/usr/bin\":" \ + doc/examples/sctp_stream_script \ + doc/examples/tcp_range_script \ + doc/examples/tcp_rr_script \ + doc/examples/tcp_stream_script \ + doc/examples/udp_rr_script \ + doc/examples/udp_stream_script \ + || die + + default + AT_M4DIR=src/missing/m4 eautoreconf +} + +src_configure() { + # netlib.c:2292:5: warning: implicit declaration of function 'sched_setaffinity' + # nettest_omni.c:2943:5: warning: implicit declaration of function 'splice' + # TODO: drop once https://github.com/HewlettPackard/netperf/pull/73 is merged + append-cppflags -D_GNU_SOURCE + + econf \ + $(use_enable demo) \ + $(use_enable sctp) +} + +src_install() { + default + + # init.d / conf.d + newinitd "${FILESDIR}"/${PN}-2.7.0-init netperf + newconfd "${FILESDIR}"/${PN}-2.2-conf netperf + + keepdir /var/log/${PN} + fowners netperf:netperf /var/log/${PN} + fperms 0755 /var/log/${PN} + + # documentation and example scripts + dodoc AUTHORS ChangeLog NEWS README Release_Notes doc/${PN}.txt + docinto html + dodoc doc/${PN}.html + exeinto /usr/share/${PN}/examples + doexe doc/examples/*_script +} From d437ba85f4f985e8066276ca4d9d8441c1bc575d Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:15 +0000 Subject: [PATCH 160/291] net-analyzer/tcpdump: Sync with Gentoo It's from Gentoo commit e3b6f339611747a5a824d6d34e439fc5483addd2. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/net-analyzer/tcpdump/tcpdump-4.99.6.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/portage-stable/net-analyzer/tcpdump/tcpdump-4.99.6.ebuild b/sdk_container/src/third_party/portage-stable/net-analyzer/tcpdump/tcpdump-4.99.6.ebuild index 3c062623d1e..c9011826b31 100644 --- a/sdk_container/src/third_party/portage-stable/net-analyzer/tcpdump/tcpdump-4.99.6.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-analyzer/tcpdump/tcpdump-4.99.6.ebuild @@ -19,7 +19,7 @@ else SRC_URI="https://www.tcpdump.org/release/${P}.tar.gz" SRC_URI+=" verify-sig? ( https://www.tcpdump.org/release/${P}.tar.gz.sig )" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" fi LICENSE="BSD" From 31aa5400bee24456293973186f264af0d0c7364a Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:16 +0000 Subject: [PATCH 161/291] net-dialup/lrzsz: Sync with Gentoo It's from Gentoo commit df3ec50e047b2551a788c10170f61f4ecacf042b. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../lrzsz/files/lrzsz-0.12.20-c23.patch | 30 ------------------- .../net-dialup/lrzsz/lrzsz-0.12.20-r10.ebuild | 7 +++-- 2 files changed, 5 insertions(+), 32 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-c23.patch b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-c23.patch index 58defbea2b3..428d9d25165 100644 --- a/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-c23.patch +++ b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-c23.patch @@ -66,36 +66,6 @@ https://bugs.gentoo.org/943880 { char *t_ptr; char **p; ---- a/src/lrz.c -+++ b/src/lrz.c -@@ -42,9 +42,9 @@ - #include "error.h" - - #ifndef STRICT_PROTOTYPES --extern time_t time(); --extern char *strerror(); --extern char *strstr(); -+extern time_t time(time_t*); -+extern char *strerror(int); -+extern char *strstr(const char* , const char*); - #endif - - #ifndef HAVE_ERRNO_DECLARATION ---- a/src/lsz.c -+++ b/src/lsz.c -@@ -51,9 +51,9 @@ void *mm_addr=NULL; - #include "error.h" - - #ifndef STRICT_PROTOTYPES --extern time_t time(); --extern char *strerror(); --extern char *strstr(); -+extern time_t time(time_t*); -+extern char *strerror(int); -+extern char *strstr(const char*, const char*); - #endif - - #ifndef HAVE_ERRNO_DECLARATION --- a/lib/getopt.h +++ b/lib/getopt.h @@ -101,7 +101,7 @@ struct option diff --git a/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/lrzsz-0.12.20-r10.ebuild b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/lrzsz-0.12.20-r10.ebuild index 8fbe8d7fd0d..d139f1dc227 100644 --- a/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/lrzsz-0.12.20-r10.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/lrzsz-0.12.20-r10.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit autotools toolchain-funcs +inherit autotools flag-o-matic toolchain-funcs DESCRIPTION="Communication package providing the X, Y, and ZMODEM file transfer protocols" HOMEPAGE="https://www.ohse.de/uwe/software/lrzsz.html" @@ -56,6 +56,9 @@ src_prepare() { src_configure() { tc-export CC + # bug #943880, bug #969297 + append-cppflags -DSTRICT_PROTOTYPES + econf $(use_enable nls) } From 9b570ce84aeabfdd460005628446767132de28e9 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:16 +0000 Subject: [PATCH 162/291] net-dialup/minicom: Sync with Gentoo It's from Gentoo commit 555b17151250ba6f7e4b3bf00653df6dab80bd93. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../net-dialup/minicom/Manifest | 1 + .../files/minicom-2.10-glibc-2.42.patch | 45 +++++++++++++ .../net-dialup/minicom/minicom-2.10-r1.ebuild | 66 +++++++++++++++++++ .../net-dialup/minicom/minicom-2.11.1.ebuild | 60 +++++++++++++++++ 4 files changed, 172 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/net-dialup/minicom/files/minicom-2.10-glibc-2.42.patch create mode 100644 sdk_container/src/third_party/portage-stable/net-dialup/minicom/minicom-2.10-r1.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/net-dialup/minicom/minicom-2.11.1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/net-dialup/minicom/Manifest b/sdk_container/src/third_party/portage-stable/net-dialup/minicom/Manifest index 0fd1fce8388..1a1c3317a7d 100644 --- a/sdk_container/src/third_party/portage-stable/net-dialup/minicom/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-dialup/minicom/Manifest @@ -1 +1,2 @@ DIST minicom-2.10.tar.gz 798751 BLAKE2B 1828b2670a71f8c94099cabc49b1e85ad35bd0491a78fe99a92d32176811d25b76afa74b417491f44bec40c1a7273e1bbc0ab9729dfa2626291b069b4447b919 SHA512 ced271a21b0ba97ad0b09093f341112d4c4f64f6b72631502acc136d2fb92eeb14965d4187fd8cfed0e0e2519b603b6e54d8dd780e666119ecfc5677203595e2 +DIST minicom-2.11.1.tar.gz 1058823 BLAKE2B 20f3f118cea634cf3df5a3ad5513f32c3117d95e222027aac978f0b3d6be8fdc79b7602959129a2e36e05960800c8bce025423b69d609c9651c8bcbe4a70efb1 SHA512 a74ca75494051b5027a0b641f1fedcc8a341dc409e17f4f509fdb48d3958ed6e6a8482f4f0217671eaa3af6fd5e608f55759faf6f71fa89fddbb065ad99cf33d diff --git a/sdk_container/src/third_party/portage-stable/net-dialup/minicom/files/minicom-2.10-glibc-2.42.patch b/sdk_container/src/third_party/portage-stable/net-dialup/minicom/files/minicom-2.10-glibc-2.42.patch new file mode 100644 index 00000000000..1a5950ae843 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-dialup/minicom/files/minicom-2.10-glibc-2.42.patch @@ -0,0 +1,45 @@ +https://salsa.debian.org/minicom-team/minicom/-/issues/17 +https://bugs.gentoo.org/969713 +https://salsa.debian.org/minicom-team/minicom/-/commit/964ae563cb5a78545ae1a4a3b6784c69ec73bc48 + +From 964ae563cb5a78545ae1a4a3b6784c69ec73bc48 Mon Sep 17 00:00:00 2001 +From: Stefan Becker <chemobejk@gmail.com> +Date: Mon, 17 Nov 2025 11:57:32 +0200 +Subject: [PATCH] src/sysdep.h: remove cfset{i,o}speed macros for glibc + +glibc 2.42 added support for arbitrary termios speeds on Linux, i.e. +speed_t and Bxxx defines changed from bitmasks to unsigned integers: +Therefore speed_t can no longer be used together with c_flag's internal +bitmask CBAUD. + +When minicom is compiled on such a system the baudrate setting is broken +and the user experiences garbled UART output. + +Remove the macros for glibc, i.e. call cfset{i,o}speed() instead. + +Fixes #17 +--- + src/sysdep.h | 9 --------- + 2 files changed, 1 insertion(+), 9 deletions(-) + +diff --git a/src/sysdep.h b/src/sysdep.h +index b11945c..9ba8836 100644 +--- a/src/sysdep.h ++++ b/src/sysdep.h +@@ -139,12 +139,3 @@ + # define cfsetospeed(tty, spd) + #endif + #endif +- +-/* Redefine cfset{i,o}speed for Linux > 1.1.68 && libc < 4.5.21 */ +-#if defined (__GLIBC__) && defined(CBAUDEX) +-# undef cfsetispeed +-# undef cfsetospeed +-# define cfsetispeed(xtty, xspd) \ +- ((xtty)->c_cflag = ((xtty)->c_cflag & ~CBAUD) | (xspd)) +-# define cfsetospeed(tty, spd) +-#endif +-- +GitLab + + diff --git a/sdk_container/src/third_party/portage-stable/net-dialup/minicom/minicom-2.10-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-dialup/minicom/minicom-2.10-r1.ebuild new file mode 100644 index 00000000000..1aa36f68a63 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-dialup/minicom/minicom-2.10-r1.ebuild @@ -0,0 +1,66 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="Serial Communication Program" +HOMEPAGE="https://salsa.debian.org/minicom-team/minicom" +SRC_URI="https://salsa.debian.org/${PN}-team/${PN}/-/archive/${PV}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="nls" + +DEPEND="sys-libs/ncurses:=" + +RDEPEND=" + ${DEPEND} + net-dialup/lrzsz +" + +BDEPEND=" + virtual/pkgconfig + nls? ( sys-devel/gettext ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-2.8-gentoo-runscript.patch + "${FILESDIR}"/${PN}-2.9-update-gettext.patch +) + +src_prepare() { + default + + # Drop a little while after glibc-2.42 is stable (bug #969713) + if ! has_version "sys-libs/glibc" || has_version ">=sys-libs/glibc-2.42" ; then + eapply "${FILESDIR}"/${PN}-2.10-glibc-2.42.patch + fi + + eautoreconf +} + +src_configure() { + # Lockdir must exist if not manually specified. + # '/var/lock' is created by OpenRC. + local myeconfargs=( + # See bug #788142 + --sysconfdir="${EPREFIX}"/etc/${PN} + + --disable-rpath + --enable-lock-dir="/var/lock" + $(use_enable nls) + ) + + econf "${myeconfargs[@]}" +} + +src_install() { + default + + # Needs to match --sysconfdir above + insinto /etc/minicom + doins "${FILESDIR}"/minirc.dfl +} diff --git a/sdk_container/src/third_party/portage-stable/net-dialup/minicom/minicom-2.11.1.ebuild b/sdk_container/src/third_party/portage-stable/net-dialup/minicom/minicom-2.11.1.ebuild new file mode 100644 index 00000000000..140d360efc8 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-dialup/minicom/minicom-2.11.1.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="Serial Communication Program" +HOMEPAGE="https://salsa.debian.org/minicom-team/minicom" +SRC_URI="https://salsa.debian.org/${PN}-team/${PN}/-/archive/${PV}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="nls" + +DEPEND="sys-libs/ncurses:=" + +RDEPEND=" + ${DEPEND} + net-dialup/lrzsz +" + +BDEPEND=" + virtual/pkgconfig + nls? ( sys-devel/gettext ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-2.8-gentoo-runscript.patch + "${FILESDIR}"/${PN}-2.9-update-gettext.patch +) + +src_prepare() { + default + eautoreconf +} + +src_configure() { + # Lockdir must exist if not manually specified. + # '/var/lock' is created by OpenRC. + local myeconfargs=( + # See bug #788142 + --sysconfdir="${EPREFIX}"/etc/${PN} + + --disable-rpath + --enable-lock-dir="/var/lock" + $(use_enable nls) + ) + + econf "${myeconfargs[@]}" +} + +src_install() { + default + + # Needs to match --sysconfdir above + insinto /etc/minicom + doins "${FILESDIR}"/minirc.dfl +} From 33cf351ecab61ec06acef942159e1cea70434657 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:17 +0000 Subject: [PATCH 163/291] net-dns/bind: Sync with Gentoo It's from Gentoo commit 4b7919ce7739d1d0d63a8c2b77082483763aa400. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/net-dns/bind/Manifest | 1 + .../net-dns/bind/bind-9.20.16.ebuild | 19 ++++++++++--------- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/net-dns/bind/Manifest b/sdk_container/src/third_party/portage-stable/net-dns/bind/Manifest index 21bd3397573..3dee1202c8f 100644 --- a/sdk_container/src/third_party/portage-stable/net-dns/bind/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-dns/bind/Manifest @@ -3,3 +3,4 @@ DIST bind-9.18.39.tar.xz 5383056 BLAKE2B 5629a4973273d0ef132c94634be2787a916e6cf DIST bind-9.18.42.tar.xz 5423412 BLAKE2B d29813a76f18eaf75908e95f18d0c82fb591a1228962ec6d209a08260b2f60327e049fc263bd772eed12bd9c2231c835f1e3f3262df0e0f6811481570e1dc169 SHA512 9133be987e2043aabf8cd7de58f62c41c632b92d9930a3644aaff80b23211e5a967a133080f6e61142408ef752f8a07d6b7c1e775ca8a495bb29ff9d167446c0 DIST bind-9.20.13.tar.xz 5762540 BLAKE2B c3738ebe468849293bec3d89499d7607b76fb636c7d21833dd56414fb569c1edfaa84d152ff9febfe0ebd5c65fa351423fbfbeaaee294d57949eb45631fd5623 SHA512 2e4be2153f80f60b97c0854ce69e5eb5c343713f5544ef6b9b9229d1ba65ba13e092c17170ae5ae328a97d0ccd8cb7c8cc8259baea70827a841d251423bc0a1c DIST bind-9.20.16.tar.xz 5768340 BLAKE2B 1a083efbd7a95df8c9c05966681be577cb119f1a75292cbf65a31cdf0fc7677a70834be4f8599984635b9ea09a909c1453b489e920e5f27502ab2b496aa278b0 SHA512 0cd9d531830ae8fd9df13849f333bc156063836f6ffd3ce757244a3cb58c6608cafb0ba43c22fa2846fdaa42d2dccff4fa84ae92ec69430071769168d57e9e9c +DIST bind-9.20.16.tar.xz.asc 833 BLAKE2B 54eba12d36f9b52ac510ea1d22af6270872d43ef564298a90c5d9b9fb93f806ae7b496c594d9433d53e289609b44ac0fec28ebef06999f684a239dd1ca68bcd9 SHA512 a5d20dd8d1f3aa8238dcaf65d9ac177b40cb0117f1c3075cd334db7200701d1cc1917a3a3005b883d75f63659a343b9ebb0c7f72806829188985d2c759042a90 diff --git a/sdk_container/src/third_party/portage-stable/net-dns/bind/bind-9.20.16.ebuild b/sdk_container/src/third_party/portage-stable/net-dns/bind/bind-9.20.16.ebuild index a51a04c864e..b6ce44a1852 100644 --- a/sdk_container/src/third_party/portage-stable/net-dns/bind/bind-9.20.16.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-dns/bind/bind-9.20.16.ebuild @@ -1,16 +1,20 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit eapi9-ver systemd tmpfiles toolchain-funcs +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/isc.asc +inherit eapi9-ver systemd tmpfiles toolchain-funcs verify-sig MY_PV="${PV/_p/-P}" MY_PV="${MY_PV/_rc/rc}" DESCRIPTION="Berkeley Internet Name Domain - Name Server" HOMEPAGE="https://www.isc.org/bind/" -SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${P}.tar.xz" +SRC_URI=" + https://downloads.isc.org/isc/bind9/${PV}/${P}.tar.xz + verify-sig? ( https://downloads.isc.org/isc/bind9/${PV}/${P}.tar.xz.asc ) +" S="${WORKDIR}/${PN}-${MY_PV}" LICENSE="MPL-2.0" @@ -51,12 +55,9 @@ BDEPEND=" dev-lang/perl virtual/pkgconfig doc? ( dev-python/sphinx ) - test? ( - dev-util/cmocka - ) - systemtap? ( - dev-debug/systemtap - ) + test? ( dev-util/cmocka ) + systemtap? ( dev-debug/systemtap ) + verify-sig? ( sec-keys/openpgp-keys-isc ) " src_prepare() { From 690ea8543b91e89459363d8aa5be2f1fcf326e57 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:17 +0000 Subject: [PATCH 164/291] net-dns/c-ares: Sync with Gentoo It's from Gentoo commit 317f11432e2b74d5d1969f01296ec550c5fab45c. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/net-dns/c-ares/c-ares-1.34.6.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.34.6.ebuild b/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.34.6.ebuild index 0acf0251635..d2525aacf60 100644 --- a/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.34.6.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.34.6.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -18,7 +18,7 @@ SRC_URI=" LICENSE="MIT ISC" # Subslot = SONAME of libcares.so.2 SLOT="0/2" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="static-libs test" RESTRICT="!test? ( test )" From 01f2380368c6d8f213b06b10741e0343c03bd009 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:19 +0000 Subject: [PATCH 165/291] net-firewall/conntrack-tools: Sync with Gentoo It's from Gentoo commit d78736750f2e89905282ded2a581b896ffddb132. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../net-firewall/conntrack-tools/Manifest | 4 +- .../conntrack-tools-1.4.7-r1.ebuild | 114 ------------------ ....8.ebuild => conntrack-tools-1.4.9.ebuild} | 10 +- ...e.am-don-t-suppress-various-warnings.patch | 28 ----- ...ls-1.4.5-0002-Fix-Wstrict-prototypes.patch | 19 --- ...3-Fix-Wimplicit-function-declaration.patch | 56 --------- 6 files changed, 8 insertions(+), 223 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/conntrack-tools-1.4.7-r1.ebuild rename sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/{conntrack-tools-1.4.8.ebuild => conntrack-tools-1.4.9.ebuild} (91%) delete mode 100644 sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/files/conntrack-tools-1.4.5-0001-Makefile.am-don-t-suppress-various-warnings.patch delete mode 100644 sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/files/conntrack-tools-1.4.5-0002-Fix-Wstrict-prototypes.patch delete mode 100644 sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/files/conntrack-tools-1.4.5-0003-Fix-Wimplicit-function-declaration.patch diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/Manifest b/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/Manifest index 5b519c990d7..9eb22f0bf4c 100644 --- a/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/Manifest @@ -1,4 +1,4 @@ -DIST conntrack-tools-1.4.7.tar.bz2 539688 BLAKE2B 42a3cacf8a32a5b8b688a9fd68f66024c591e9814ef3cc349456691094bab0fae15bb1c00befa178b0f8e845bf6fc00715cbf9db55cd7bf2d155c2dfd55f9b1a SHA512 3d37a6b8cd13fd3c149ab80009d686d2184920ba2d0d5c1b57abed6e92e0dd92cba868bfe22f1a155479fe5ab2e291b8bb8a7e72123a73788032202ac142653b -DIST conntrack-tools-1.4.7.tar.bz2.sig 566 BLAKE2B c513cd59d9aeb76bb33bb8c4e0d25c46b6303a9d3f3e359e20248e2d8dd2822777056e217c12da9005ee075036ea05a74dd1ed9f22a44b7d4745ff6917bda15b SHA512 5a2bcc6da792544029ddf0d3a4caf019b215907e66d491e5d98a4f1189fc9c03ec8aad5ad22166799c5f0c81273284cb757e9368c9d9d3049bc49da47c037e05 DIST conntrack-tools-1.4.8.tar.xz 452980 BLAKE2B 2f8a7d7facf4890a8ca7dec54d5faa1383ad5e449a0599707578567e9c8ed6fd63ca308538afc34e99121e39e80c1ce686c8dda89247abdf4699bb420b52c4fb SHA512 95d8f6f068c1342ad7e767537e722272a4f5bd8b46b952713ade053a1043aa9ababbe5ce658ede9c77b6de5221b97ad8833777caffd69b67dd70a99f2b45afdf DIST conntrack-tools-1.4.8.tar.xz.sig 566 BLAKE2B 65c2ee185b099281603bca179038bd9ab6e28756f9fa12a53a8bcb75ed561097c9e4672c45fcecc366b86b65e1753073808090e264671d3a3d8dd18ed6f4d680 SHA512 8cd229d2e980ab1788e90fc8f53827fe1e4b21801cad6cddf6a9ff537501c40c52242cc964005b2889ad0a4548c772304db8696d4644611ecf9f091aca5c14ee +DIST conntrack-tools-1.4.9.tar.xz 452480 BLAKE2B afa7aa685e20be510d7a7a916625d83f34d305212b8b86d4de94976d2212886391a45acdba3e906a7b6614b6476e61ead6648ee567458d3a90ebbe2eccbd3e7b SHA512 1cef49d6f1995915a5c6b811fefc02bef92c9881b6eba8d6f85071f4f129ec139dadfd5546fa02d3ed42888f4d6f46ffc0cc13da30de1baa28a795b95041c035 +DIST conntrack-tools-1.4.9.tar.xz.sig 566 BLAKE2B 6700acad416fa77dc409da21d31c138861c026f7a924154448e925ddb3bc72a4af5111219db6542d17e313f1d5f277b35996b57714a1bfce03c2663c280fb0cf SHA512 8fe0e78d1d76924e3897924af32b3cae5fcb5d42661ea728ed00bf6539c6319720844a3c378fb304ca78da7d31d92361d08640f7f00064752ce0e41e9bd0490a diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/conntrack-tools-1.4.7-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/conntrack-tools-1.4.7-r1.ebuild deleted file mode 100644 index bf2390450b4..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/conntrack-tools-1.4.7-r1.ebuild +++ /dev/null @@ -1,114 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/netfilter.org.asc -inherit autotools linux-info systemd verify-sig - -DESCRIPTION="Connection tracking userspace tools" -HOMEPAGE="https://conntrack-tools.netfilter.org" -SRC_URI="https://www.netfilter.org/projects/conntrack-tools/files/${P}.tar.bz2 - verify-sig? ( https://www.netfilter.org/projects/conntrack-tools/files/${P}.tar.bz2.sig )" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 ~arm64 ~hppa ppc ppc64 ~riscv x86" -IUSE="doc +cthelper +cttimeout systemd" - -RDEPEND=" - >=net-libs/libmnl-1.0.3 - >=net-libs/libnetfilter_conntrack-1.0.9 - >=net-libs/libnetfilter_queue-1.0.2 - >=net-libs/libnfnetlink-1.0.1 - net-libs/libtirpc - cthelper? ( - >=net-libs/libnetfilter_cthelper-1.0.0 - ) - cttimeout? ( - >=net-libs/libnetfilter_cttimeout-1.0.0 - ) - systemd? ( - >=sys-apps/systemd-227 - ) -" -DEPEND="${RDEPEND}" -BDEPEND=" - app-alternatives/yacc - app-alternatives/lex - virtual/pkgconfig - doc? ( - app-text/docbook-xml-dtd:4.1.2 - app-text/xmlto - ) - verify-sig? ( sec-keys/openpgp-keys-netfilter ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-1.4.5-0001-Makefile.am-don-t-suppress-various-warnings.patch - "${FILESDIR}"/${PN}-1.4.5-0002-Fix-Wstrict-prototypes.patch - "${FILESDIR}"/${PN}-1.4.5-0003-Fix-Wimplicit-function-declaration.patch -) - -pkg_setup() { - linux-info_pkg_setup - - if kernel_is lt 2 6 18 ; then - die "${PN} requires at least 2.6.18 kernel version" - fi - - # netfilter core team has changed some option names with kernel 2.6.20 - if kernel_is lt 2 6 20 ; then - CONFIG_CHECK="~IP_NF_CONNTRACK_NETLINK" - else - CONFIG_CHECK="~NF_CT_NETLINK" - fi - CONFIG_CHECK="${CONFIG_CHECK} ~NF_CONNTRACK - ~NETFILTER_NETLINK ~NF_CONNTRACK_EVENTS" - - check_extra_config - - linux_config_exists || \ - linux_chkconfig_present "NF_CONNTRACK_IPV4" || \ - linux_chkconfig_present "NF_CONNTRACK_IPV6" || \ - ewarn "CONFIG_NF_CONNTRACK_IPV4 or CONFIG_NF_CONNTRACK_IPV6 " \ - "are not set when one at least should be." -} - -src_prepare() { - default - - # bug #474858 - sed -i -e 's:/var/lock:/run/lock:' doc/stats/conntrackd.conf || die - - # Drop once Clang 16 patches merged (implicit func decl, etc) - eautoreconf -} - -src_configure() { - econf \ - $(use_enable cthelper) \ - $(use_enable cttimeout) \ - $(use_enable systemd) -} - -src_compile() { - default - - use doc && emake -C doc/manual -} - -src_install() { - default - - newinitd "${FILESDIR}"/conntrackd.initd-r3 conntrackd - newconfd "${FILESDIR}"/conntrackd.confd-r2 conntrackd - - insinto /etc/conntrackd - doins doc/stats/conntrackd.conf - - systemd_dounit "${FILESDIR}"/conntrackd.service - - dodoc -r doc/sync doc/stats AUTHORS TODO - use doc && dodoc doc/manual/${PN}.html -} diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/conntrack-tools-1.4.8.ebuild b/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/conntrack-tools-1.4.9.ebuild similarity index 91% rename from sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/conntrack-tools-1.4.8.ebuild rename to sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/conntrack-tools-1.4.9.ebuild index 9f8f953c6f6..c55d00f6286 100644 --- a/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/conntrack-tools-1.4.8.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/conntrack-tools-1.4.9.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -13,14 +13,14 @@ SRC_URI=" verify-sig? ( https://www.netfilter.org/projects/conntrack-tools/files/${P}.tar.xz.sig ) " -LICENSE="GPL-2" +LICENSE="GPL-2+" SLOT="0" -KEYWORDS="~alpha amd64 ~arm64 ~hppa ppc ppc64 ~riscv x86" +KEYWORDS="~alpha ~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86" IUSE="doc +cthelper +cttimeout systemd" RDEPEND=" >=net-libs/libmnl-1.0.3 - >=net-libs/libnetfilter_conntrack-1.0.9 + >=net-libs/libnetfilter_conntrack-1.1.1 >=net-libs/libnetfilter_queue-1.0.2 >=net-libs/libnfnetlink-1.0.1 net-libs/libtirpc @@ -104,4 +104,6 @@ src_install() { dodoc -r doc/sync doc/stats AUTHORS TODO use doc && dodoc doc/manual/${PN}.html + + find "${ED}" -name '*.la' -delete || die } diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/files/conntrack-tools-1.4.5-0001-Makefile.am-don-t-suppress-various-warnings.patch b/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/files/conntrack-tools-1.4.5-0001-Makefile.am-don-t-suppress-various-warnings.patch deleted file mode 100644 index bc9bd8d3a13..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/files/conntrack-tools-1.4.5-0001-Makefile.am-don-t-suppress-various-warnings.patch +++ /dev/null @@ -1,28 +0,0 @@ -https://bugzilla.netfilter.org/show_bug.cgi?id=1637 - -From a450f6374dc1b0296578599adf77f9ac025fab85 Mon Sep 17 00:00:00 2001 -From: Sam James <sam@gentoo.org> -Date: Thu, 24 Nov 2022 07:51:23 +0000 -Subject: [PATCH 1/3] Makefile.am: don't suppress various warnings - -These will become fatal with Clang 16 and GCC 14 anyway, but let's -address the real problem (followup commit). - -We do have to keep one wrt yyerror() & const char* though, but -the issue is contained to the code Bison generates. - -Bug: https://bugzilla.netfilter.org/show_bug.cgi?id=1637 -Signed-off-by: Sam James <sam@gentoo.org> ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -60,8 +60,8 @@ if HAVE_SYSTEMD - conntrackd_SOURCES += systemd.c - endif - --# yacc and lex generate dirty code --read_config_yy.o read_config_lex.o: AM_CFLAGS += -Wno-missing-prototypes -Wno-missing-declarations -Wno-implicit-function-declaration -Wno-nested-externs -Wno-undef -Wno-redundant-decls -Wno-sign-compare -+# yacc and lex generate dirty code (issue is in yyerror() wrt const char* vs. char*) -+read_config_yy.o read_config_lex.o: AM_CFLAGS += -Wno-incompatible-pointer-types -Wno-discarded-qualifiers - - conntrackd_LDADD = ${LIBMNL_LIBS} ${LIBNETFILTER_CONNTRACK_LIBS} \ - ${libdl_LIBS} ${LIBNFNETLINK_LIBS} diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/files/conntrack-tools-1.4.5-0002-Fix-Wstrict-prototypes.patch b/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/files/conntrack-tools-1.4.5-0002-Fix-Wstrict-prototypes.patch deleted file mode 100644 index e170ec07ba0..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/files/conntrack-tools-1.4.5-0002-Fix-Wstrict-prototypes.patch +++ /dev/null @@ -1,19 +0,0 @@ -https://bugzilla.netfilter.org/show_bug.cgi?id=1637 - -From 11965f7020fbadcc9784daf598687841e96ef3fe Mon Sep 17 00:00:00 2001 -From: Sam James <sam@gentoo.org> -Date: Thu, 24 Nov 2022 07:52:01 +0000 -Subject: [PATCH 2/3] Fix -Wstrict-prototypes - -Signed-off-by: Sam James <sam@gentoo.org> ---- a/src/network.c -+++ b/src/network.c -@@ -113,7 +113,7 @@ void nethdr_track_update_seq(uint32_t seq) - STATE_SYNC(last_seq_recv) = seq; - } - --int nethdr_track_is_seq_set() -+int nethdr_track_is_seq_set(void) - { - return local_seq_set; - } diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/files/conntrack-tools-1.4.5-0003-Fix-Wimplicit-function-declaration.patch b/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/files/conntrack-tools-1.4.5-0003-Fix-Wimplicit-function-declaration.patch deleted file mode 100644 index eb34f4ffd4e..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-firewall/conntrack-tools/files/conntrack-tools-1.4.5-0003-Fix-Wimplicit-function-declaration.patch +++ /dev/null @@ -1,56 +0,0 @@ -https://bugzilla.netfilter.org/show_bug.cgi?id=1637 - -From a6df37777fc47c2473a13501c17eb3cbbf922ec1 Mon Sep 17 00:00:00 2001 -From: Sam James <sam@gentoo.org> -Date: Thu, 24 Nov 2022 07:57:37 +0000 -Subject: [PATCH 3/3] Fix -Wimplicit-function-declaration - -Bug: https://bugzilla.netfilter.org/show_bug.cgi?id=1637 -Signed-off-by: Sam James <sam@gentoo.org> ---- a/src/read_config_lex.l -+++ b/src/read_config_lex.l -@@ -21,6 +21,7 @@ - - #include <string.h> - -+#include "log.h" - #include "conntrackd.h" - #include "read_config_yy.h" - %} -@@ -174,7 +175,7 @@ notrack [N|n][O|o][T|t][R|r][A|a][C|c][K|k] - %% - - int --yywrap() -+yywrap(void) - { - return 1; - } ---- a/src/read_config_yy.y -+++ b/src/read_config_yy.y -@@ -31,14 +31,25 @@ - #include "cidr.h" - #include "helper.h" - #include "stack.h" -+#include "log.h" -+ -+#include <sys/socket.h> -+#include <netinet/in.h> -+#include <arpa/inet.h> -+ - #include <sched.h> - #include <dlfcn.h> -+ - #include <libnetfilter_conntrack/libnetfilter_conntrack.h> - #include <libnetfilter_conntrack/libnetfilter_conntrack_tcp.h> - - extern char *yytext; - extern int yylineno; - -+int yylex (void); -+int yyerror (char *msg); -+void yyrestart (FILE *input_file); -+ - struct ct_conf conf; - - static void __kernel_filter_start(void); From ff257baa45c3813f1b789c602c143932987aebcd Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:19 +0000 Subject: [PATCH 166/291] net-firewall/ebtables: Sync with Gentoo It's from Gentoo commit 582bbd14b6b3c88f6afbc5ba2fd0f11c89cbc491. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../net-firewall/ebtables/Manifest | 1 + .../ebtables/ebtables-2.0.11-r3.ebuild | 21 +++++++++++++------ 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/ebtables/Manifest b/sdk_container/src/third_party/portage-stable/net-firewall/ebtables/Manifest index 61a62a595d8..1c9551269f6 100644 --- a/sdk_container/src/third_party/portage-stable/net-firewall/ebtables/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-firewall/ebtables/Manifest @@ -1 +1,2 @@ DIST ebtables-2.0.11.tar.gz 428411 BLAKE2B 62af4c38ad21498e43f41ef96c8abb5704e8d8a48f1327c587b664f36fdfa9849a9a37e59958db56d38019465d8bf1775914f7387fde99a441615913702cf504 SHA512 43a04c6174c8028c501591ef260526297e0f018016f226e2a3bcf80766fddf53d4605c347554d6da7c4ab5e2131584a18da20916ffddcbf2d26ac93b00c5777f +DIST ebtables-2.0.11.tar.gz.sig 590 BLAKE2B b82997970a980afe408ad819d774ff7982762b3586510c1d1ab02e1a4ce3f0e6134a5826475eec1951401a9f31e384453aec509f585a853ad055f6ce8f5ac83c SHA512 d75e45d61442bb5adc05c14dadf050165a0646be7d2abde55420ec26c999daae549df3340901cf90f3a6550c24f450ab6faac639f5e86616e3a2543965390c4a diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/ebtables/ebtables-2.0.11-r3.ebuild b/sdk_container/src/third_party/portage-stable/net-firewall/ebtables/ebtables-2.0.11-r3.ebuild index 21b871f38e9..4ad82564a04 100644 --- a/sdk_container/src/third_party/portage-stable/net-firewall/ebtables/ebtables-2.0.11-r3.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-firewall/ebtables/ebtables-2.0.11-r3.ebuild @@ -1,16 +1,20 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="7" -inherit autotools +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/netfilter.org.asc +inherit autotools verify-sig MY_PV="$(ver_rs 3 '-' )" MY_P="${PN}-${MY_PV}" DESCRIPTION="Controls Ethernet frame filtering on a Linux bridge, MAC NAT and brouting" HOMEPAGE="https://ebtables.netfilter.org/" -SRC_URI="http://ftp.netfilter.org/pub/${PN}/${MY_P}.tar.gz" +SRC_URI=" + https://ftp.netfilter.org/pub/${PN}/${MY_P}.tar.gz + verify-sig? ( https://ftp.netfilter.org/pub/${PN}/${MY_P}.tar.gz.sig ) +" S="${WORKDIR}/${MY_P}" LICENSE="GPL-2" @@ -18,11 +22,16 @@ SLOT="0" KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv x86" IUSE="+perl static" -BDEPEND=">=app-eselect/eselect-iptables-20200508" +BDEPEND=" + >=app-eselect/eselect-iptables-20200508 + verify-sig? ( sec-keys/openpgp-keys-netfilter ) +" # The ebtables-save script is written in perl. -RDEPEND="${BDEPEND} +RDEPEND=" + ${BDEPEND} + net-misc/ethertypes perl? ( dev-lang/perl ) - net-misc/ethertypes" +" PATCHES=( "${FILESDIR}/${PN}-2.0.11-makefile.patch" From b0f5d1627d46fc3cb0bfde0237116c8325b91bb5 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:20 +0000 Subject: [PATCH 167/291] net-firewall/iptables: Sync with Gentoo It's from Gentoo commit 22bfc072bebd72ec9724d73be037287cdfc9563a. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../net-firewall/iptables/Manifest | 2 + .../iptables/files/iptables-r3.init | 165 ------------------ ...s-1.8.11.ebuild => iptables-1.8.12.ebuild} | 15 +- 3 files changed, 12 insertions(+), 170 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/net-firewall/iptables/files/iptables-r3.init rename sdk_container/src/third_party/portage-stable/net-firewall/iptables/{iptables-1.8.11.ebuild => iptables-1.8.12.ebuild} (88%) diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/iptables/Manifest b/sdk_container/src/third_party/portage-stable/net-firewall/iptables/Manifest index 894ce3c7bc3..678c49b2dda 100644 --- a/sdk_container/src/third_party/portage-stable/net-firewall/iptables/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-firewall/iptables/Manifest @@ -1 +1,3 @@ DIST iptables-1.8.11.tar.xz 649284 BLAKE2B 82daca3940e253f6fda7cf5b3332488c31391ff66c0112c0cae2645ab61918f81e6028ea2b1e1385f21e4c5ff8cd64cba31072a2417a2ab696fe1c6b5464cea1 SHA512 4937020bf52d57a45b76e1eba125214a2f4531de52ff1d15185faeef8bea0cd90eb77f99f81baa573944aa122f350a7198cef41d70594e1b65514784addbcc40 +DIST iptables-1.8.12.tar.xz 652440 BLAKE2B 5516aadcf413efde272b09d1747e78e19f1d9e5481cdfdfe2360ca5f16926bb17535f58e4014a3616c59da83f41b39fc71e591c916bc309c7ca31701785a9e7e SHA512 b25bd6f6f78a6192699bce44c2b29ca65351ef71198a84fa26d29c47cb24ed695ee0406f6581fa81ece4d30445bb0680def5dc328f7fc708b80cadcd0230fe49 +DIST iptables-1.8.12.tar.xz.sig 566 BLAKE2B aaa2574b6ad3848d8bb6603481a0f0734e2a529c0e0a351ee0178848dd981d507fbebff3a2756f2bd91bce373d7c398f572195c9767457e0ea096a20d2fc32a5 SHA512 c1a22b6c6104a0395823a8695eafca6459d82af3467e70e88dc5625aeb6d3feba485a3f2baaf0e8e6ff1b979dc1c764427a6d6614a070476078d1e2f8cd3fd34 diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/iptables/files/iptables-r3.init b/sdk_container/src/third_party/portage-stable/net-firewall/iptables/files/iptables-r3.init deleted file mode 100644 index 53eb4246c59..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-firewall/iptables/files/iptables-r3.init +++ /dev/null @@ -1,165 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -extra_commands="check save panic" -extra_started_commands="reload" - -iptables_lock_wait_time=${IPTABLES_LOCK_WAIT_TIME:-"60"} -iptables_lock_wait_interval=${IPTABLES_LOCK_WAIT_INTERVAL:-"1000"} - -iptables_name=${SVCNAME} -case ${iptables_name} in - iptables|ip6tables) ;; - *) iptables_name="iptables" ;; -esac - -iptables_bin="/sbin/${iptables_name}" -case ${iptables_name} in - iptables) iptables_proc="/proc/net/ip_tables_names" - iptables_save=${IPTABLES_SAVE};; - ip6tables) iptables_proc="/proc/net/ip6_tables_names" - iptables_save=${IP6TABLES_SAVE};; -esac - -depend() { - need localmount #434774 - before net -} - -set_table_policy() { - local has_errors=0 chains table=$1 policy=$2 - case ${table} in - nat) chains="PREROUTING POSTROUTING OUTPUT";; - mangle) chains="PREROUTING INPUT FORWARD OUTPUT POSTROUTING";; - filter) chains="INPUT FORWARD OUTPUT";; - *) chains="";; - esac - - local chain - for chain in ${chains} ; do - ${iptables_bin} --wait ${iptables_lock_wait_time} -t ${table} -P ${chain} ${policy} - [ $? -ne 0 ] && has_errors=1 - done - - return ${has_errors} -} - -checkkernel() { - if [ ! -e ${iptables_proc} ] ; then - eerror "Your kernel lacks ${iptables_name} support, please load" - eerror "appropriate modules and try again." - return 1 - fi - return 0 -} - -checkconfig() { - if [ -z "${iptables_save}" -o ! -f "${iptables_save}" ] ; then - eerror "Not starting ${iptables_name}. First create some rules then run:" - eerror "/etc/init.d/${iptables_name} save" - return 1 - fi - return 0 -} - -start_pre() { - checkconfig || return 1 -} - -start() { - ebegin "Loading ${iptables_name} state and starting firewall" - ${iptables_bin}-restore --wait ${iptables_lock_wait_time} ${SAVE_RESTORE_OPTIONS} < "${iptables_save}" - eend $? -} - -stop_pre() { - checkkernel || return 1 -} - -stop() { - if [ "${SAVE_ON_STOP}" = "yes" ] ; then - save || return 1 - fi - - ebegin "Stopping firewall" - local has_errors=0 a - for a in $(cat ${iptables_proc}) ; do - set_table_policy $a ACCEPT - [ $? -ne 0 ] && has_errors=1 - - ${iptables_bin} --wait ${iptables_lock_wait_time} -F -t $a - [ $? -ne 0 ] && has_errors=1 - - ${iptables_bin} --wait ${iptables_lock_wait_time} -X -t $a - [ $? -ne 0 ] && has_errors=1 - done - eend ${has_errors} -} - -reload() { - checkkernel || return 1 - checkrules || return 1 - ebegin "Flushing firewall" - local has_errors=0 a - for a in $(cat ${iptables_proc}) ; do - ${iptables_bin} --wait ${iptables_lock_wait_time} -F -t $a - [ $? -ne 0 ] && has_errors=1 - - ${iptables_bin} --wait ${iptables_lock_wait_time} -X -t $a - [ $? -ne 0 ] && has_errors=1 - done - eend ${has_errors} - - start -} - -checkrules() { - ebegin "Checking rules" - ${iptables_bin}-restore --test ${SAVE_RESTORE_OPTIONS} < "${iptables_save}" - eend $? -} - -check() { - # Short name for users of init.d script. - checkrules -} - -save() { - ebegin "Saving ${iptables_name} state" - checkpath -q -d "$(dirname "${iptables_save}")" - checkpath -q -m 0600 -f "${iptables_save}" - ${iptables_bin}-save ${SAVE_RESTORE_OPTIONS} > "${iptables_save}" - eend $? -} - -panic() { - # use iptables autoload capability to load at least all required - # modules and filter table - ${iptables_bin} --wait ${iptables_lock_wait_time} -S >/dev/null - if [ $? -ne 0 ] ; then - eerror "${iptables_bin} failed to load" - return 1 - fi - - if service_started ${iptables_name}; then - rc-service ${iptables_name} stop - fi - - local has_errors=0 a - ebegin "Dropping all packets" - for a in $(cat ${iptables_proc}) ; do - ${iptables_bin} --wait ${iptables_lock_wait_time} -F -t $a - [ $? -ne 0 ] && has_errors=1 - - ${iptables_bin} --wait ${iptables_lock_wait_time} -X -t $a - [ $? -ne 0 ] && has_errors=1 - - if [ "${a}" != "nat" ]; then - # The "nat" table is not intended for filtering, the use of DROP is therefore inhibited. - set_table_policy $a DROP - [ $? -ne 0 ] && has_errors=1 - fi - done - eend ${has_errors} -} diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/iptables/iptables-1.8.11.ebuild b/sdk_container/src/third_party/portage-stable/net-firewall/iptables/iptables-1.8.12.ebuild similarity index 88% rename from sdk_container/src/third_party/portage-stable/net-firewall/iptables/iptables-1.8.11.ebuild rename to sdk_container/src/third_party/portage-stable/net-firewall/iptables/iptables-1.8.12.ebuild index d489707ea91..ce440b899b0 100644 --- a/sdk_container/src/third_party/portage-stable/net-firewall/iptables/iptables-1.8.11.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-firewall/iptables/iptables-1.8.12.ebuild @@ -1,19 +1,23 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit systemd toolchain-funcs autotools flag-o-matic +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/netfilter.org.asc +inherit systemd toolchain-funcs autotools flag-o-matic verify-sig DESCRIPTION="Linux kernel (2.4+) firewall, NAT and packet mangling tools" HOMEPAGE="https://www.netfilter.org/projects/iptables/" -SRC_URI="https://www.netfilter.org/projects/iptables/files/${P}.tar.xz" +SRC_URI=" + https://www.netfilter.org/projects/iptables/files/${P}.tar.xz + verify-sig? ( https://www.netfilter.org/projects/iptables/files/${P}.tar.xz.sig ) +" LICENSE="GPL-2" # Subslot reflects PV when libxtables and/or libip*tc was changed # the last time. SLOT="0/1.8.3" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="conntrack netlink nftables pcap static-libs test" RESTRICT="!test? ( test )" # TODO: skip tests needing nftables if no xtables-nft-multi (bug #890628) @@ -39,6 +43,7 @@ BDEPEND=" app-alternatives/lex app-alternatives/yacc ) + verify-sig? ( sec-keys/openpgp-keys-netfilter ) " RDEPEND=" ${COMMON_DEPEND} @@ -111,7 +116,7 @@ src_install() { doins include/iptables/internal.h keepdir /var/lib/ip{,6}tables - newinitd "${FILESDIR}"/${PN}-r3.init iptables + newinitd "${FILESDIR}"/${PN}-r4.init iptables newconfd "${FILESDIR}"/${PN}-r1.confd iptables dosym iptables /etc/init.d/ip6tables newconfd "${FILESDIR}"/ip6tables-r1.confd ip6tables From cd898c2a4ec2fba22c41be816747cd4e8ccfb4c8 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:21 +0000 Subject: [PATCH 168/291] net-firewall/nftables: Sync with Gentoo It's from Gentoo commit 51737377538fcf371de92c5a5f60c308ea70f7c6. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../net-firewall/nftables/nftables-1.1.6.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/nftables/nftables-1.1.6.ebuild b/sdk_container/src/third_party/portage-stable/net-firewall/nftables/nftables-1.1.6.ebuild index 564896654bf..dabc94d60bc 100644 --- a/sdk_container/src/third_party/portage-stable/net-firewall/nftables/nftables-1.1.6.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-firewall/nftables/nftables-1.1.6.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -22,7 +22,7 @@ else https://netfilter.org/projects/nftables/files/${P}.tar.xz verify-sig? ( https://netfilter.org/projects/nftables/files/${P}.tar.xz.sig ) " - KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" + KEYWORDS="amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-netfilter-20240415 )" fi From eec511f044b5ad4ca7b23182a06459df5dee7a09 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:22 +0000 Subject: [PATCH 169/291] net-fs/nfs-utils: Sync with Gentoo It's from Gentoo commit faf09822931e76295c165c46fe615258e1c6b214. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/net-fs/nfs-utils/Manifest | 1 + .../net-fs/nfs-utils/metadata.xml | 1 + .../net-fs/nfs-utils/nfs-utils-2.8.5.ebuild | 219 ++++++++++++++++++ 3 files changed, 221 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/net-fs/nfs-utils/nfs-utils-2.8.5.ebuild diff --git a/sdk_container/src/third_party/portage-stable/net-fs/nfs-utils/Manifest b/sdk_container/src/third_party/portage-stable/net-fs/nfs-utils/Manifest index a754d26a5c0..b77fd3af157 100644 --- a/sdk_container/src/third_party/portage-stable/net-fs/nfs-utils/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-fs/nfs-utils/Manifest @@ -1,2 +1,3 @@ DIST nfs-utils-2.6.4.tar.bz2 979652 BLAKE2B 45f6e9c98e8148e82684526c2ab0f8976b2a46fd869d91f03cf9afffbaad64b77dc1729a50b74d30c5d65bfe213a1da2f54e3d3e19539b61994f7b65671a26ab SHA512 e5fde25c54f594d00e69c9aeff8abc22663b994ecd37d8516751be98b51b12c61ffec47ee128794e170ec773f0649cb594df1ca104ec4dba561823db423f8533 DIST nfs-utils-2.7.1.tar.bz2 1001424 BLAKE2B 176c5559c23c2761c1f2beed068fda8bdd39ac9fa09b4b223552c1455152c410d8925adf8d0023300d4355338e9dc8f6b2774ba71488e795945e5f1fee2b305c SHA512 9e55d4a0d672dbb0e20f8ea0213355a0bec054124c2a9437b3e4b81214c24ef5adb43914bd8606d4af14801ec8e6a4f849c9a97d76ae0879566792bbc960845a +DIST nfs-utils-2.8.5.tar.bz2 1001261 BLAKE2B 68ab063257222107e79f792c92103a98779e3401284395bef1f2a3cf37bfc73c984e8e5d60ee820882cb92fbb371dd5a72ffa28738274b66e8f269324cdf3e19 SHA512 a42612c5611f7de5fe8170f3059b96e4c15ab8ad2be19aa83f9117efa4207b3fec0629ea11864ee9b8ff267dcb5328a5295e8995a6f2cf500361ab38f91ad65a diff --git a/sdk_container/src/third_party/portage-stable/net-fs/nfs-utils/metadata.xml b/sdk_container/src/third_party/portage-stable/net-fs/nfs-utils/metadata.xml index d2ea9df1b5c..261c8181272 100644 --- a/sdk_container/src/third_party/portage-stable/net-fs/nfs-utils/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/net-fs/nfs-utils/metadata.xml @@ -9,6 +9,7 @@ <flag name="junction">Enable NFS junction support in nfsref</flag> <flag name="ldap">Add ldap support</flag> <flag name="libmount">Link mount.nfs with libmount</flag> + <flag name="nfsdctl">Build 'nfsdctl' utility to control nfsd.</flag> <flag name="nfsv3">Enable support for NFSv2 and NFSv3</flag> <flag name="nfsv4">Enable support for NFSv4 (includes NFSv4.1 and NFSv4.2)</flag> <flag name="uuid">Support UUID lookups in rpc.mountd</flag> diff --git a/sdk_container/src/third_party/portage-stable/net-fs/nfs-utils/nfs-utils-2.8.5.ebuild b/sdk_container/src/third_party/portage-stable/net-fs/nfs-utils/nfs-utils-2.8.5.ebuild new file mode 100644 index 00000000000..99edf0a993b --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-fs/nfs-utils/nfs-utils-2.8.5.ebuild @@ -0,0 +1,219 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools linux-info systemd + +DESCRIPTION="NFS client and server daemons" +HOMEPAGE="http://linux-nfs.org/ https://git.linux-nfs.org/?p=steved/nfs-utils.git" + +if [[ ${PV} == *_rc* ]] ; then + MY_PV="$(ver_rs 1- -)" + SRC_URI="http://git.linux-nfs.org/?p=steved/nfs-utils.git;a=snapshot;h=refs/tags/${PN}-${MY_PV};sf=tgz -> ${P}.tar.gz" + S="${WORKDIR}/${PN}-${PN}-${MY_PV}" +else + SRC_URI="https://downloads.sourceforge.net/nfs/${P}.tar.bz2" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="caps junction kerberos ldap +libmount nfsdctl +nfsv3 +nfsv4 sasl selinux tcpd +uuid" +REQUIRED_USE="|| ( nfsv3 nfsv4 ) kerberos? ( nfsv4 )" +# bug #315573 +RESTRICT="test" + +# kth-krb doesn't provide the right include +# files, and nfs-utils doesn't build against heimdal either, +# so don't depend on virtual/krb. +# (04 Feb 2005 agriffis) +COMMON_DEPEND=" + dev-libs/libxml2:= + net-libs/libtirpc:= + sys-fs/e2fsprogs + dev-db/sqlite:3 + dev-libs/libevent:= + caps? ( sys-libs/libcap ) + ldap? ( + net-nds/openldap:= + sasl? ( + app-crypt/mit-krb5 + dev-libs/cyrus-sasl:2 + ) + ) + libmount? ( sys-apps/util-linux ) + nfsdctl? ( + >=dev-libs/libnl-3.1:3 + sys-libs/readline:= + ) + nfsv3? ( >=net-nds/rpcbind-0.2.4 ) + nfsv4? ( + >=sys-apps/keyutils-1.5.9:= + sys-fs/lvm2 + kerberos? ( + >=net-libs/libtirpc-0.2.4-r1[kerberos] + app-crypt/mit-krb5 + ) + ) + tcpd? ( sys-apps/tcp-wrappers ) + uuid? ( sys-apps/util-linux )" +DEPEND="${COMMON_DEPEND} + elibc_musl? ( sys-libs/queue-standalone ) +" +RDEPEND="${COMMON_DEPEND} + !net-libs/libnfsidmap + selinux? ( + sec-policy/selinux-rpc + nfsv3? ( sec-policy/selinux-rpcbind ) + ) +" +BDEPEND=" + net-libs/rpcsvc-proto + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-2.5.2-no-werror.patch + "${FILESDIR}"/${PN}-udev-sysctl.patch + "${FILESDIR}"/${PN}-2.6.4-C99-inline.patch +) + +pkg_setup() { + linux-info_pkg_setup + + if use nfsv4 && linux_config_exists && ! linux_chkconfig_present CRYPTO_MD5 ; then + ewarn "Your NFS server will be unable to track clients across server restarts!" + ewarn "Please enable CONFIG_CRYPTO_MD5 in your kernel to" + ewarn "support the legacy, in-kernel client tracker." + fi +} + +src_prepare() { + default + + sed \ + -e "/^sbindir/s:= := \"${EPREFIX}\":g" \ + -i utils/*/Makefile.am || die + + eautoreconf +} + +src_configure() { + # Our DEPEND forces this. + export libsqlite3_cv_is_recent=yes + export ac_cv_header_keyutils_h=$(usex nfsv4) + + # SASL is consumed in a purely automagic way + export ac_cv_header_sasl_h=no + export ac_cv_header_sasl_sasl_h=$(usex sasl) + + local myeconfargs=( + --disable-static + --with-statedir="${EPREFIX}"/var/lib/nfs + --enable-tirpc + --with-tirpcinclude="${ESYSROOT}"/usr/include/tirpc/ + --with-pluginpath="${EPREFIX}"/usr/$(get_libdir)/libnfsidmap + --with-rpcgen + --with-systemd="$(systemd_get_systemunitdir)" + --without-gssglue + $(use_enable caps) + --enable-ipv6 + $(use_enable junction) + $(use_enable kerberos gss) + $(use_enable kerberos svcgss) + $(use_enable ldap) + $(use_enable libmount libmount-mount) + $(use_enable nfsdctl) + $(use_enable nfsv4) + $(use_enable nfsv4 blkmapd) + $(use_enable nfsv4 nfsdcld) + $(use_enable nfsv4 nfsdcltrack) + $(use_enable nfsv4 nfsv4server) + $(use_enable uuid) + $(use_with kerberos krb5 "${ESYSROOT}"/usr) + $(use_with tcpd tcp-wrappers) + ) + econf "${myeconfargs[@]}" +} + +src_compile() { + # Remove compiled files bundled in the tarball + emake clean + + default +} + +src_install() { + default + rm linux-nfs/Makefile* || die + dodoc -r linux-nfs README + + # Don't overwrite existing xtab/etab, install the original + # versions somewhere safe... more info in pkg_postinst + keepdir /var/lib/nfs/{,sm,sm.bak} + mv "${ED}"/var/lib/nfs "${ED}"/usr/$(get_libdir)/ || die + + # Install some client-side binaries in /sbin + dodir /sbin + mv "${ED}"/usr/sbin/rpc.statd "${ED}"/sbin/ || die + + if use nfsv4 ; then + insinto /etc + doins support/nfsidmap/idmapd.conf + + # Install a config file for idmappers in newer kernels. bug #415625 + insinto /etc/request-key.d + echo 'create id_resolver * * /usr/sbin/nfsidmap -t 600 %k %d' > id_resolver.conf + doins id_resolver.conf + fi + + insinto /etc + doins "${FILESDIR}"/exports + keepdir /etc/exports.d + + local f list=() + if use nfsv4 ; then + list+=( rpc.idmapd rpc.pipefs ) + use kerberos && list+=( rpc.gssd rpc.svcgssd ) + fi + + local sedexp=( -e '#placehoder' ) + use nfsv3 || sedexp+=( -e '/need portmap/d' ) + + mkdir -p "${T}/init.d" || die + for f in nfs nfsclient rpc.statd "${list[@]}" ; do + sed "${sedexp[@]}" "${FILESDIR}/${f}.initd" > "${T}/init.d/${f}" || die + doinitd "${T}/init.d/${f}" + done + + local systemd_systemunitdir="$(systemd_get_systemunitdir)" + sed -i \ + -e 's:/usr/sbin/rpc.statd:/sbin/rpc.statd:' \ + "${ED}${systemd_systemunitdir}"/* || die + + # Remove legacy service if not requested (as it will be broken without rpcbind) + if ! use nfsv3; then + rm "${ED}${systemd_systemunitdir}/nfs-server.service" || die + fi + + # bug #368505 + keepdir /var/lib/nfs + # bug #603628 + keepdir /var/lib/nfs/v4recovery + + # No static archives + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + # Install default xtab and friends if there's none existing. In + # src_install we put them in /usr/lib/nfs for safe-keeping, but + # the daemons actually use the files in /var/lib/nfs. #30486 + local f + for f in "${EROOT}"/usr/$(get_libdir)/nfs/*; do + [[ -e ${EROOT}/var/lib/nfs/${f##*/} ]] && continue + einfo "Copying default ${f##*/} from ${EPREFIX}/usr/$(get_libdir)/nfs to ${EPREFIX}/var/lib/nfs" + cp -pPR "${f}" "${EROOT}"/var/lib/nfs/ + done +} From 909cad3f8af66a95a9cf418011311f98bd0cb60d Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:22 +0000 Subject: [PATCH 170/291] net-fs/samba: Sync with Gentoo It's from Gentoo commit e765b057da5456405169957c372542e2af30b2f5. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/net-fs/samba/Manifest | 16 +- .../files/samba-4.20.8-CVE-2025-0620.patch | 532 ------------------ ...deprecated-readline-CPPFunction-cast.patch | 74 --- .../net-fs/samba/samba-4.20.8-r1.ebuild | 385 ------------- .../net-fs/samba/samba-4.21.7.ebuild | 389 ------------- .../net-fs/samba/samba-4.21.8.ebuild | 389 ------------- .../net-fs/samba/samba-4.21.9-r1.ebuild | 393 ------------- .../net-fs/samba/samba-4.22.3.ebuild | 389 ------------- .../net-fs/samba/samba-4.22.4.ebuild | 389 ------------- ...amba-4.22.6.ebuild => samba-4.22.8.ebuild} | 8 +- ...a-4.23.3.ebuild => samba-4.23.5-r1.ebuild} | 10 +- ...amba-4.23.0.ebuild => samba-4.23.6.ebuild} | 16 +- ...23.2-r1.ebuild => samba-4.24.0_rc1.ebuild} | 12 +- ...4.21.10.ebuild => samba-4.24.0_rc3.ebuild} | 25 +- 14 files changed, 54 insertions(+), 2973 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/net-fs/samba/files/samba-4.20.8-CVE-2025-0620.patch delete mode 100644 sdk_container/src/third_party/portage-stable/net-fs/samba/files/samba-4.20.8-dont-use-deprecated-readline-CPPFunction-cast.patch delete mode 100644 sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.20.8-r1.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.21.7.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.21.8.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.21.9-r1.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.22.3.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.22.4.ebuild rename sdk_container/src/third_party/portage-stable/net-fs/samba/{samba-4.22.6.ebuild => samba-4.22.8.ebuild} (98%) rename sdk_container/src/third_party/portage-stable/net-fs/samba/{samba-4.23.3.ebuild => samba-4.23.5-r1.ebuild} (97%) rename sdk_container/src/third_party/portage-stable/net-fs/samba/{samba-4.23.0.ebuild => samba-4.23.6.ebuild} (96%) rename sdk_container/src/third_party/portage-stable/net-fs/samba/{samba-4.23.2-r1.ebuild => samba-4.24.0_rc1.ebuild} (97%) rename sdk_container/src/third_party/portage-stable/net-fs/samba/{samba-4.21.10.ebuild => samba-4.24.0_rc3.ebuild} (94%) diff --git a/sdk_container/src/third_party/portage-stable/net-fs/samba/Manifest b/sdk_container/src/third_party/portage-stable/net-fs/samba/Manifest index cb24466cda1..565ee63efd9 100644 --- a/sdk_container/src/third_party/portage-stable/net-fs/samba/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-fs/samba/Manifest @@ -1,12 +1,6 @@ -DIST samba-4.20.8.tar.gz 42531989 BLAKE2B 4c8d6d4fe40c0640667089179af5a8a49e6117fcd46b735ac59ffad0334e7fddffb99d2204c30d272a1902b8bf22bc9dc10a7b58762642977f0aec25acb91a57 SHA512 1dc598cb3aa830d35985e5840f1956d48b93eef02805248ececd0eb472b514311a9f6e69798bb5f5735a845b6e1c8de84b4ecaff6dea7a61324202d6fb0b3eeb -DIST samba-4.21.10.tar.gz 42700998 BLAKE2B 44029738256a44a9e4b86cf4dc198e3b0145d382005a444e32522138fe1127018c2cbb3b2f4bbd43e7c27911b09cf435fdd213a69404a98a80745b3090262f1f SHA512 2911620ff6ff09ae3b85e277bc1e1b783ccfe4f0bfd5a31f4df31e546a1eee698923fae1daa112e0c41f37d47a452f4306893883438b26e95e0fc7f5d1f67341 -DIST samba-4.21.7.tar.gz 42689509 BLAKE2B c7cfdab05402f0df38c1a643126072fdaf4d031e339e171180009ecaf9de7d06c490f344b2eea6ccec1021ecbf84aabe5c0d9b2718ab461f95502ce52dd1ffbc SHA512 f44a0dc880b2a5694f9c46ff11c808ae263f68c91cc9b0e32869bb44f84c1fdcc49370a396f38e0f452133c29357d8ad80a689af67bd85f648b2121e7792b555 -DIST samba-4.21.8.tar.gz 42696867 BLAKE2B b86d9a5f2ae072b50555757d97241ff48d2a1155323da43c70a6f809a1fb2e303077d414b6614ca1740e06b4f613d1754860eeed043d65afc77cf1ecf2fc823f SHA512 194d89f2df2513b9e7e84b2b2554c8f553f6115ba98d3b3dee3efced33cbce74c9b4fac119625a4b772a516ab3fcb21595e1bd2e6f9bf3d162b25f6bb25b6dce -DIST samba-4.21.9.tar.gz 42695134 BLAKE2B 21132a5fb75d42772f7c6ba414f7bb7b862e43d10b84a97155b1f2aeb40d4841d36697e9a6a795eed2a38a7076933b0b2cd731ea679f0dc820137b897be9e835 SHA512 465ccb912c443e3b187d9662f605141011626b12ebc979558e3c710487382cae8fe110e0bc5232f04c839cb5d13313f8f68f2edd2511ead31cefb9096ecdcf08 -DIST samba-4.22.3.tar.gz 42869744 BLAKE2B 9ad02f617df307d6a7e0f88d030a4e3884d221ad2862f42af0cf8fb7cc595578fea9ce210b4bad2521634bd3b9752a58a077905f82ce5e9ef4eb8331a8044efc SHA512 5fe79857c9c21d13912bd4f937ec00ad885d4b53d814265428916578927615f3d4a2fe921df88960e6651cd78b202734fee58ff38f6fb7fbffdfe8f129bcf59a -DIST samba-4.22.4.tar.gz 42873748 BLAKE2B c2d239f2d62f450fbef84ceee1077201c0fca926cc97e99527d4bff07ff11a815a4167ca270afd04af4257759bcc1e003493bfcfd9e552e9410d426921341c8c SHA512 4a4ef586bc6d8fa5984d87814022a35988afaf4ee0aebaf023c4a1debfec4215525e886efe2efd4647a4374855d8cd15c6fc919de84454847206d558fcd21ea2 DIST samba-4.22.5.tar.gz 42876122 BLAKE2B c6ee4c98c4aced9faa0b5f90c61a3ea9473fc8c90e7c3ceb470aba9354fb4bb21cdd16a7d19bb6b0faee4454259e02546b4bb5093e8e8fe64a67b5635fc1152b SHA512 ee183e664768076f814c252afef0cd2225961d173174e8f4703d8cf59fe2abc2d1a089e293905849201ab2af75e27d8666360072a85bcce2b0dc735324d6b02e -DIST samba-4.22.6.tar.gz 42883971 BLAKE2B 2231ef23c54ce6e96dcc1e7c6eb096cf291a780900de1e30bd37812258e2c8e44c85d6c665c975a0cba53ac3af2f5bb6e63b2e8a9da994000ea3ae2704596d03 SHA512 ab307c3aff3a76a8a561b8d418ad69e51866238ea5f5bdef6b1621ccadf43d17ec9d5475d033ac93d9b97e623affdcd0ed3fb1b616afc8ff02521cc310968c61 -DIST samba-4.23.0.tar.gz 43320412 BLAKE2B e4787045dd85dce9e03b18d04d09ed1c3adae01f13545e99c2d84af8855f42f716bb256d8eee2830164f2fd59c7386f1547f4ec45504edc3c80470b27fe05ab4 SHA512 b95504c28b7773db792f9bc895644efc8027ec7724beca6435f2ba5a862eda3023551528275ec23aae9ad580d42350015d8851757b9ea54d099321fe8a31fe8c -DIST samba-4.23.2.tar.gz 43324641 BLAKE2B 6ea7254f07121e32c6ac0914f45451c0174d68006dbc7836469a9d201d5acadbf6d8ed79d962ba7faa4cd404f52b5c27c02b7025feb37e4a56162bcd0a863401 SHA512 115022f736a36a902e939babd9cf62d71a60363ac0f8bc06f2fe07716f2c99cf44cba2513107edae6e673dbd6af7ea69757fe27fe74954bfb8c6904a92c93d80 -DIST samba-4.23.3.tar.gz 43328964 BLAKE2B 3d242217f5fec94dd680bc6f3aa932ea8273bff5333f53e5009351a7fcb8e3d11524f53aad1fe7d9dfd04c8bd6fbadb458953e59fab77e5ce19dc7c7c56c0847 SHA512 5c6662b3788cc9cc4d05037484a2dc0ea185098062f63339bfab47852a38afb1d5431cea61cc9d94ba23fa340439f3deabacd42b6bab4e4fbc11cc543f6d79da +DIST samba-4.22.8.tar.gz 42868679 BLAKE2B 24c285d0b41a37c03338332d85493300641b89dd8e159873bb97b858c24d00ce56c756557c54b3a25e701dfc286f55fd6ca9d0ba97a50083147c00d946d80582 SHA512 35f7aa28c24647250c1d1a8df8bbaab16422fd6372d4f90e3d2682b801911d9c833e72ac71b61e96166dd2b86b16dbeddacfd273f4846a56196ce022cd58055e +DIST samba-4.23.5.tar.gz 43298892 BLAKE2B cab8a569da87d32b0268ea2111327450b64fa863507a286d46e200c21c947c477807f181651fa32bf81b799f1ae7554f417300abc8442fbe274208becb7432c9 SHA512 5bf5733dddde9dbd8f5680b53fb927a6802572d1f4758d1d58e00e58fdadc19bec1ef2b195bcdc065c7bed05c3d4aade5ffe9af9227051cf9ea91a9428a3693c +DIST samba-4.23.6.tar.gz 43306831 BLAKE2B c5c567bfc4734429790ec7362150eda231ce7e3e7dbdfaa2ca2dc81bd178c9c15cc9360b21f4c5dd1f1423d46337bc5a7b581efcff8ed647adb69a9b47922320 SHA512 61dc2a80f1ea5a7a04bc45ba7896107fd1c619ec3f841f9f6adb9c166a3ce3a5cee7b0d097cfa2c768ba65e35167c0739099cc76a5478c0d6f41521a621336c9 +DIST samba-4.24.0rc1.tar.gz 43381208 BLAKE2B 788d148b1cdd1d573878d9bb8023efa385ba04f105796849cea96eff669978526505364fd409d6714c20f39053d1b2ef9e02f974cda261697cbe837defe39fb4 SHA512 0e53e392e324f7044c4a2eb54f57062288d81916249488b871dcd631cd2d67786a39e68982f2751a3f4fe81622ce8f411ac2c60a7b760d75004379208a1284eb +DIST samba-4.24.0rc3.tar.gz 43387471 BLAKE2B 6e51d5d688e6da7c4a03eb9393dfda6df16fa05dd53dceac29da9a01de9791219625592872a4ba46f68173f73da65c3df470646d34c3b310897cb393e5fd630f SHA512 f76493f8e665ad75425554a812ef6cea815a3babddb5bb91b645bdac69d851a7cb13c623298839849d459627ebc4696c0ae4b6dbb0bc3df5bd9731a66d8e915b diff --git a/sdk_container/src/third_party/portage-stable/net-fs/samba/files/samba-4.20.8-CVE-2025-0620.patch b/sdk_container/src/third_party/portage-stable/net-fs/samba/files/samba-4.20.8-CVE-2025-0620.patch deleted file mode 100644 index 6b15a225841..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-fs/samba/files/samba-4.20.8-CVE-2025-0620.patch +++ /dev/null @@ -1,532 +0,0 @@ -From 9fd05848d4a59db3977ae74f1a7a89f63f22b9ca Mon Sep 17 00:00:00 2001 -From: Stefan Metzmacher <metze@samba.org> -Date: Fri, 11 Oct 2024 13:32:22 +0000 -Subject: [PATCH 1/3] s3:libsmb: let discover_dc_netbios() return - DOMAIN_CONTROLLER_NOT_FOUND - -We may get NT_STATUS_NOT_FOUND when the name can't be resolved -and NT_STATUS_INVALID_ADDRESS if the system doesn't have ipv4 -addresses... - -Signed-off-by: Stefan Metzmacher <metze@samba.org> -Reviewed-by: Andreas Schneider <asn@samba.org> -(cherry picked from commit e47ce1d10b13d8ef165c70984e6e490f4c2a64c2) ---- - source3/libsmb/dsgetdcname.c | 14 +++++++++++++- - 1 file changed, 13 insertions(+), 1 deletion(-) - -diff --git a/source3/libsmb/dsgetdcname.c b/source3/libsmb/dsgetdcname.c -index 654893c172c..00e1fac6b93 100644 ---- a/source3/libsmb/dsgetdcname.c -+++ b/source3/libsmb/dsgetdcname.c -@@ -483,7 +483,19 @@ static NTSTATUS discover_dc_netbios(TALLOC_CTX *mem_ctx, - &count, - resolve_order); - if (!NT_STATUS_IS_OK(status)) { -- DEBUG(10,("discover_dc_netbios: failed to find DC\n")); -+ NTSTATUS raw_status = status; -+ -+ if (NT_STATUS_EQUAL(status, NT_STATUS_NOT_FOUND)) { -+ status = NT_STATUS_DOMAIN_CONTROLLER_NOT_FOUND; -+ } -+ if (NT_STATUS_EQUAL(status, NT_STATUS_INVALID_ADDRESS)) { -+ status = NT_STATUS_DOMAIN_CONTROLLER_NOT_FOUND; -+ } -+ -+ DBG_DEBUG("failed to find DC for %s: %s => %s\n", -+ domain_name, -+ nt_errstr(raw_status), -+ nt_errstr(status)); - return status; - } - --- -2.47.2 - - -From 4108b021383ccad766a571c93bd6d5fafc4e7b80 Mon Sep 17 00:00:00 2001 -From: Stefan Metzmacher <metze@samba.org> -Date: Fri, 9 May 2025 09:38:41 +0200 -Subject: [PATCH 2/3] s3:winbindd: avoid using any netlogon call to get a dc - name - -BUG: https://bugzilla.samba.org/show_bug.cgi?id=15876 - -Signed-off-by: Stefan Metzmacher <metze@samba.org> -Reviewed-by: Guenther Deschner <gd@samba.org> -Reviewed-by: Andreas Schneider <asn@samba.org> -Reviewed-by: Ralph Boehme <slow@samba.org> -(backported from commit f86a4bf6848ade2db7229d182576db3320c3ece7) ---- - source3/winbindd/winbindd_cm.c | 145 --------------------------- - source3/winbindd/winbindd_dual_srv.c | 105 +------------------ - 2 files changed, 5 insertions(+), 245 deletions(-) - -diff --git a/source3/winbindd/winbindd_cm.c b/source3/winbindd/winbindd_cm.c -index 1685edbabaa..28ebc15ddf9 100644 ---- a/source3/winbindd/winbindd_cm.c -+++ b/source3/winbindd/winbindd_cm.c -@@ -475,135 +475,6 @@ static bool cm_is_ipc_credentials(struct cli_credentials *creds) - return ret; - } - --static bool get_dc_name_via_netlogon(struct winbindd_domain *domain, -- fstring dcname, -- struct sockaddr_storage *dc_ss, -- uint32_t request_flags) --{ -- struct winbindd_domain *our_domain = NULL; -- struct rpc_pipe_client *netlogon_pipe = NULL; -- NTSTATUS result; -- WERROR werr; -- TALLOC_CTX *mem_ctx; -- unsigned int orig_timeout; -- const char *tmp = NULL; -- const char *p; -- struct dcerpc_binding_handle *b; -- -- /* Hmmmm. We can only open one connection to the NETLOGON pipe at the -- * moment.... */ -- -- if (IS_DC) { -- return False; -- } -- -- if (domain->primary) { -- return False; -- } -- -- our_domain = find_our_domain(); -- -- if ((mem_ctx = talloc_init("get_dc_name_via_netlogon")) == NULL) { -- return False; -- } -- -- result = cm_connect_netlogon(our_domain, &netlogon_pipe); -- if (!NT_STATUS_IS_OK(result)) { -- talloc_destroy(mem_ctx); -- return False; -- } -- -- b = netlogon_pipe->binding_handle; -- -- /* This call can take a long time - allow the server to time out. -- 35 seconds should do it. */ -- -- orig_timeout = rpccli_set_timeout(netlogon_pipe, 35000); -- -- if (our_domain->active_directory) { -- struct netr_DsRGetDCNameInfo *domain_info = NULL; -- -- /* -- * TODO request flags are not respected in the server -- * (and in some cases, like REQUIRE_PDC, causes an error) -- */ -- result = dcerpc_netr_DsRGetDCName(b, -- mem_ctx, -- our_domain->dcname, -- domain->name, -- NULL, -- NULL, -- request_flags|DS_RETURN_DNS_NAME, -- &domain_info, -- &werr); -- if (NT_STATUS_IS_OK(result) && W_ERROR_IS_OK(werr)) { -- tmp = talloc_strdup( -- mem_ctx, domain_info->dc_unc); -- if (tmp == NULL) { -- DEBUG(0, ("talloc_strdup failed\n")); -- talloc_destroy(mem_ctx); -- return false; -- } -- if (domain->alt_name == NULL) { -- domain->alt_name = talloc_strdup(domain, -- domain_info->domain_name); -- if (domain->alt_name == NULL) { -- DEBUG(0, ("talloc_strdup failed\n")); -- talloc_destroy(mem_ctx); -- return false; -- } -- } -- if (domain->forest_name == NULL) { -- domain->forest_name = talloc_strdup(domain, -- domain_info->forest_name); -- if (domain->forest_name == NULL) { -- DEBUG(0, ("talloc_strdup failed\n")); -- talloc_destroy(mem_ctx); -- return false; -- } -- } -- } -- } else { -- result = dcerpc_netr_GetAnyDCName(b, mem_ctx, -- our_domain->dcname, -- domain->name, -- &tmp, -- &werr); -- } -- -- /* And restore our original timeout. */ -- rpccli_set_timeout(netlogon_pipe, orig_timeout); -- -- if (!NT_STATUS_IS_OK(result)) { -- DEBUG(10,("dcerpc_netr_GetAnyDCName failed: %s\n", -- nt_errstr(result))); -- talloc_destroy(mem_ctx); -- return false; -- } -- -- if (!W_ERROR_IS_OK(werr)) { -- DEBUG(10,("dcerpc_netr_GetAnyDCName failed: %s\n", -- win_errstr(werr))); -- talloc_destroy(mem_ctx); -- return false; -- } -- -- /* dcerpc_netr_GetAnyDCName gives us a name with \\ */ -- p = strip_hostname(tmp); -- -- fstrcpy(dcname, p); -- -- talloc_destroy(mem_ctx); -- -- DEBUG(10,("dcerpc_netr_GetAnyDCName returned %s\n", dcname)); -- -- if (!resolve_name(dcname, dc_ss, 0x20, true)) { -- return False; -- } -- -- return True; --} -- - /** - * Helper function to assemble trust password and account name - */ -@@ -1283,24 +1154,8 @@ static bool get_dcs(TALLOC_CTX *mem_ctx, struct winbindd_domain *domain, - struct samba_sockaddr *sa_list = NULL; - size_t salist_size = 0; - size_t i; -- bool is_our_domain; - enum security_types sec = (enum security_types)lp_security(); - -- is_our_domain = strequal(domain->name, lp_workgroup()); -- -- /* If not our domain, get the preferred DC, by asking our primary DC */ -- if ( !is_our_domain -- && get_dc_name_via_netlogon(domain, dcname, &ss, request_flags) -- && add_one_dc_unique(mem_ctx, domain->name, dcname, &ss, dcs, -- num_dcs) ) -- { -- char addr[INET6_ADDRSTRLEN]; -- print_sockaddr(addr, sizeof(addr), &ss); -- DEBUG(10, ("Retrieved DC %s at %s via netlogon\n", -- dcname, addr)); -- return True; -- } -- - if ((sec == SEC_ADS) && (domain->alt_name != NULL)) { - char *sitename = NULL; - -diff --git a/source3/winbindd/winbindd_dual_srv.c b/source3/winbindd/winbindd_dual_srv.c -index bbdaf6e5807..0d9d88733da 100644 ---- a/source3/winbindd/winbindd_dual_srv.c -+++ b/source3/winbindd/winbindd_dual_srv.c -@@ -662,106 +662,11 @@ NTSTATUS _wbint_QueryUserRidList(struct pipes_struct *p, - - NTSTATUS _wbint_DsGetDcName(struct pipes_struct *p, struct wbint_DsGetDcName *r) - { -- struct winbindd_domain *domain = wb_child_domain(); -- struct rpc_pipe_client *netlogon_pipe; -- struct netr_DsRGetDCNameInfo *dc_info; -- NTSTATUS status; -- WERROR werr; -- unsigned int orig_timeout; -- struct dcerpc_binding_handle *b; -- bool retry = false; -- bool try_dsrgetdcname = false; -- -- if (domain == NULL) { -- return dsgetdcname(p->mem_ctx, global_messaging_context(), -- r->in.domain_name, r->in.domain_guid, -- r->in.site_name ? r->in.site_name : "", -- r->in.flags, -- r->out.dc_info); -- } -- -- if (domain->active_directory) { -- try_dsrgetdcname = true; -- } -- --reconnect: -- status = cm_connect_netlogon(domain, &netlogon_pipe); -- -- reset_cm_connection_on_error(domain, NULL, status); -- if (!NT_STATUS_IS_OK(status)) { -- DEBUG(10, ("Can't contact the NETLOGON pipe\n")); -- return status; -- } -- -- b = netlogon_pipe->binding_handle; -- -- /* This call can take a long time - allow the server to time out. -- 35 seconds should do it. */ -- -- orig_timeout = rpccli_set_timeout(netlogon_pipe, 35000); -- -- if (try_dsrgetdcname) { -- status = dcerpc_netr_DsRGetDCName(b, -- p->mem_ctx, domain->dcname, -- r->in.domain_name, NULL, r->in.domain_guid, -- r->in.flags, r->out.dc_info, &werr); -- if (NT_STATUS_IS_OK(status) && W_ERROR_IS_OK(werr)) { -- goto done; -- } -- if (!retry && -- reset_cm_connection_on_error(domain, NULL, status)) -- { -- retry = true; -- goto reconnect; -- } -- try_dsrgetdcname = false; -- retry = false; -- } -- -- /* -- * Fallback to less capable methods -- */ -- -- dc_info = talloc_zero(r->out.dc_info, struct netr_DsRGetDCNameInfo); -- if (dc_info == NULL) { -- status = NT_STATUS_NO_MEMORY; -- goto done; -- } -- -- if (r->in.flags & DS_PDC_REQUIRED) { -- status = dcerpc_netr_GetDcName(b, -- p->mem_ctx, domain->dcname, -- r->in.domain_name, &dc_info->dc_unc, &werr); -- } else { -- status = dcerpc_netr_GetAnyDCName(b, -- p->mem_ctx, domain->dcname, -- r->in.domain_name, &dc_info->dc_unc, &werr); -- } -- -- if (!retry && reset_cm_connection_on_error(domain, b, status)) { -- retry = true; -- goto reconnect; -- } -- if (!NT_STATUS_IS_OK(status)) { -- DEBUG(10, ("dcerpc_netr_Get[Any]DCName failed: %s\n", -- nt_errstr(status))); -- goto done; -- } -- if (!W_ERROR_IS_OK(werr)) { -- DEBUG(10, ("dcerpc_netr_Get[Any]DCName failed: %s\n", -- win_errstr(werr))); -- status = werror_to_ntstatus(werr); -- goto done; -- } -- -- *r->out.dc_info = dc_info; -- status = NT_STATUS_OK; -- --done: -- /* And restore our original timeout. */ -- rpccli_set_timeout(netlogon_pipe, orig_timeout); -- -- return status; -+ return dsgetdcname(p->mem_ctx, global_messaging_context(), -+ r->in.domain_name, r->in.domain_guid, -+ r->in.site_name ? r->in.site_name : "", -+ r->in.flags, -+ r->out.dc_info); - } - - NTSTATUS _wbint_LookupRids(struct pipes_struct *p, struct wbint_LookupRids *r) --- -2.47.2 - - -From 41191db034ea7825acd01a0166cd2a8b425878ed Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?G=C3=BCnther=20Deschner?= <gd@samba.org> -Date: Wed, 2 Jul 2025 21:59:48 +0200 -Subject: [PATCH 3/3] s3-winbindd: Fix internal winbind dsgetdcname calls - w.r.t. domain name -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -when winbind calls to dsgetdcname internally, make sure to -prefer the DNS domain name if we have it. Makes DNS lookups much more -likely to succeed. - -BUG: https://bugzilla.samba.org/show_bug.cgi?id=15876 - -Guenther - -Signed-off-by: Guenther Deschner <gd@samba.org> -Reviewed-by: Andreas Schneider <asn@samba.org> -Reviewed-by: Ralph Boehme <slow@samba.org> - -Autobuild-User(master): Ralph Böhme <slow@samba.org> -Autobuild-Date(master): Mon Jul 7 10:44:37 UTC 2025 on atb-devel-224 - -(cherry picked from commit 2560c9b3224816ffd371a62103f65b3aca301ad5) ---- - source3/winbindd/wb_queryuser.c | 17 +++++++++++++---- - source3/winbindd/wb_sids2xids.c | 17 +++++++++++++---- - source3/winbindd/wb_xids2sids.c | 12 +++++++++--- - source3/winbindd/winbindd_dual.c | 6 +++++- - source3/winbindd/winbindd_proto.h | 1 + - source3/winbindd/winbindd_util.c | 19 +++++++++++++++++++ - 6 files changed, 60 insertions(+), 12 deletions(-) - -diff --git a/source3/winbindd/wb_queryuser.c b/source3/winbindd/wb_queryuser.c -index c2758f1b76a..db8e946ba71 100644 ---- a/source3/winbindd/wb_queryuser.c -+++ b/source3/winbindd/wb_queryuser.c -@@ -289,10 +289,19 @@ static void wb_queryuser_done(struct tevent_req *subreq) - - if (NT_STATUS_EQUAL(result, NT_STATUS_DOMAIN_CONTROLLER_NOT_FOUND) && - !state->tried_dclookup) { -- D_DEBUG("GetNssInfo got DOMAIN_CONTROLLER_NOT_FOUND, calling wb_dsgetdcname_send()\n"); -- subreq = wb_dsgetdcname_send( -- state, state->ev, state->info->domain_name, NULL, NULL, -- DS_RETURN_DNS_NAME); -+ const char *domain_name = find_dns_domain_name( -+ state->info->domain_name); -+ -+ D_DEBUG("GetNssInfo got DOMAIN_CONTROLLER_NOT_FOUND, calling " -+ "wb_dsgetdcname_send(%s)\n", -+ domain_name); -+ -+ subreq = wb_dsgetdcname_send(state, -+ state->ev, -+ domain_name, -+ NULL, -+ NULL, -+ DS_RETURN_DNS_NAME); - if (tevent_req_nomem(subreq, req)) { - return; - } -diff --git a/source3/winbindd/wb_sids2xids.c b/source3/winbindd/wb_sids2xids.c -index f0f6c23fc20..03e5e7e0258 100644 ---- a/source3/winbindd/wb_sids2xids.c -+++ b/source3/winbindd/wb_sids2xids.c -@@ -612,13 +612,22 @@ static void wb_sids2xids_done(struct tevent_req *subreq) - !state->tried_dclookup) { - - struct lsa_DomainInfo *d; -+ const char *domain_name = NULL; - -- D_DEBUG("Domain controller not found. Calling wb_dsgetdcname_send() to get it.\n"); - d = &state->idmap_doms.domains[state->dom_index]; - -- subreq = wb_dsgetdcname_send( -- state, state->ev, d->name.string, NULL, NULL, -- DS_RETURN_DNS_NAME); -+ domain_name = find_dns_domain_name(d->name.string); -+ -+ D_DEBUG("Domain controller not found. Calling " -+ "wb_dsgetdcname_send(%s) to get it.\n", -+ domain_name); -+ -+ subreq = wb_dsgetdcname_send(state, -+ state->ev, -+ domain_name, -+ NULL, -+ NULL, -+ DS_RETURN_DNS_NAME); - if (tevent_req_nomem(subreq, req)) { - return; - } -diff --git a/source3/winbindd/wb_xids2sids.c b/source3/winbindd/wb_xids2sids.c -index 86bd7f9deab..6fcf524d94f 100644 ---- a/source3/winbindd/wb_xids2sids.c -+++ b/source3/winbindd/wb_xids2sids.c -@@ -143,9 +143,15 @@ static void wb_xids2sids_dom_done(struct tevent_req *subreq) - if (NT_STATUS_EQUAL(result, NT_STATUS_DOMAIN_CONTROLLER_NOT_FOUND) && - !state->tried_dclookup) { - -- subreq = wb_dsgetdcname_send( -- state, state->ev, state->dom_map->name, NULL, NULL, -- DS_RETURN_DNS_NAME); -+ const char *domain_name = find_dns_domain_name( -+ state->dom_map->name); -+ -+ subreq = wb_dsgetdcname_send(state, -+ state->ev, -+ domain_name, -+ NULL, -+ NULL, -+ DS_RETURN_DNS_NAME); - if (tevent_req_nomem(subreq, req)) { - return; - } -diff --git a/source3/winbindd/winbindd_dual.c b/source3/winbindd/winbindd_dual.c -index b8e1ceddecc..ee80a4725fa 100644 ---- a/source3/winbindd/winbindd_dual.c -+++ b/source3/winbindd/winbindd_dual.c -@@ -532,6 +532,7 @@ static void wb_domain_request_trigger(struct tevent_req *req, - struct wb_domain_request_state *state = tevent_req_data( - req, struct wb_domain_request_state); - struct winbindd_domain *domain = state->domain; -+ const char *domain_name = NULL; - struct tevent_req *subreq = NULL; - size_t shortest_queue_length; - -@@ -604,8 +605,11 @@ static void wb_domain_request_trigger(struct tevent_req *req, - * which is indicated by DS_RETURN_DNS_NAME. - * For NT4 domains we still get the netbios name. - */ -+ -+ domain_name = find_dns_domain_name(state->domain->name); -+ - subreq = wb_dsgetdcname_send(state, state->ev, -- state->domain->name, -+ domain_name, - NULL, /* domain_guid */ - NULL, /* site_name */ - DS_RETURN_DNS_NAME); /* flags */ -diff --git a/source3/winbindd/winbindd_proto.h b/source3/winbindd/winbindd_proto.h -index 4dee9b046cf..292b96ee5fa 100644 ---- a/source3/winbindd/winbindd_proto.h -+++ b/source3/winbindd/winbindd_proto.h -@@ -603,6 +603,7 @@ bool parse_sidlist(TALLOC_CTX *mem_ctx, const char *sidstr, - struct dom_sid **sids, uint32_t *num_sids); - bool parse_xidlist(TALLOC_CTX *mem_ctx, const char *xidstr, - struct unixid **pxids, uint32_t *pnum_xids); -+const char *find_dns_domain_name(const char *domain_name); - - /* The following definitions come from winbindd/winbindd_wins.c */ - -diff --git a/source3/winbindd/winbindd_util.c b/source3/winbindd/winbindd_util.c -index 7527a78b30e..5c832fc22b5 100644 ---- a/source3/winbindd/winbindd_util.c -+++ b/source3/winbindd/winbindd_util.c -@@ -2241,3 +2241,22 @@ fail: - TALLOC_FREE(xids); - return false; - } -+ -+/** -+ * Helper to extract the DNS Domain Name from a struct winbindd_domain -+ */ -+const char *find_dns_domain_name(const char *domain_name) -+{ -+ struct winbindd_domain *wbdom = NULL; -+ -+ wbdom = find_domain_from_name(domain_name); -+ if (wbdom == NULL) { -+ return domain_name; -+ } -+ -+ if (wbdom->active_directory && wbdom->alt_name != NULL) { -+ return wbdom->alt_name; -+ } -+ -+ return wbdom->name; -+} --- -2.47.2 - diff --git a/sdk_container/src/third_party/portage-stable/net-fs/samba/files/samba-4.20.8-dont-use-deprecated-readline-CPPFunction-cast.patch b/sdk_container/src/third_party/portage-stable/net-fs/samba/files/samba-4.20.8-dont-use-deprecated-readline-CPPFunction-cast.patch deleted file mode 100644 index 21048bb8c7a..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-fs/samba/files/samba-4.20.8-dont-use-deprecated-readline-CPPFunction-cast.patch +++ /dev/null @@ -1,74 +0,0 @@ -From 81fc67cce2a076236a82ab5336ed3a9260f12af1 Mon Sep 17 00:00:00 2001 -From: Andreas Schneider <asn@samba.org> -Date: Tue, 21 Jan 2025 17:59:27 +0100 -Subject: [PATCH] lib:replace: Don't use deprecated readline CPPFunction cast -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -HAVE_RL_COMPLETION_FUNC_T was unused and not checking for the right -function. - -libcli/smbreadline/smbreadline.c: In function ‘smb_readline’: -libcli/smbreadline/smbreadline.c:139:17: warning: ‘CPPFunction’ is deprecated [-Wdeprecated-declarations] - 139 | rl_attempted_completion_function = RL_COMPLETION_CAST completion_fn; - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -libcli/smbreadline/smbreadline.c:139:50: error: assignment to ‘char ** (*)(const char *, int, int)’ from incompatible pointer type ‘char ** (*)(void)’ [-Wincompatible-pointer-types] - 139 | rl_attempted_completion_function = RL_COMPLETION_CAST completion_fn; - | ^ - -BUG: https://bugzilla.samba.org/show_bug.cgi?id=15788 - -Signed-off-by: Andreas Schneider <asn@samba.org> -Reviewed-by: Alexander Bokovoy <ab@samba.org> - -Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org> -Autobuild-Date(master): Tue Jan 21 19:38:37 UTC 2025 on atb-devel-224 - -(cherry picked from commit 9aa5c43315d83c19514251a11c4fba5a137f2821) - -Autobuild-User(v4-21-test): Jule Anger <janger@samba.org> -Autobuild-Date(v4-21-test): Thu Jan 23 15:15:06 UTC 2025 on atb-devel-224 ---- - lib/replace/system/readline.h | 4 +++- - libcli/smbreadline/wscript_configure | 8 +++++--- - 2 files changed, 8 insertions(+), 4 deletions(-) - -diff --git a/lib/replace/system/readline.h b/lib/replace/system/readline.h -index 9a9af266ca6d..ac3604fc12e0 100644 ---- a/lib/replace/system/readline.h -+++ b/lib/replace/system/readline.h -@@ -46,7 +46,9 @@ - #endif - - #ifdef HAVE_NEW_LIBREADLINE --#ifdef HAVE_CPPFUNCTION -+#if defined(HAVE_RL_COMPLETION_FUNC_T) -+# define RL_COMPLETION_CAST (rl_completion_func_t *) -+#elif defined(HAVE_CPPFUNCTION) - # define RL_COMPLETION_CAST (CPPFunction *) - #elif defined(HAVE_RL_COMPLETION_T) - # define RL_COMPLETION_CAST (rl_completion_t *) -diff --git a/libcli/smbreadline/wscript_configure b/libcli/smbreadline/wscript_configure -index 912ff53a150d..f5a401ebae00 100644 ---- a/libcli/smbreadline/wscript_configure -+++ b/libcli/smbreadline/wscript_configure -@@ -51,10 +51,12 @@ conf.CHECK_CODE(''' - # endif - # endif - #endif --int main(void) {rl_completion_t f; return 0;} -+int main(void) {rl_completion_func_t f; return 0;} - ''', --'HAVE_RL_COMPLETION_FUNC_T', execute=False, addmain=False, --msg='Checking for rl_completion_t') -+ 'HAVE_RL_COMPLETION_FUNC_T', -+ execute=False, -+ addmain=False, -+ msg='Checking for rl_completion_func_t') - - conf.CHECK_CODE(''' - #ifdef HAVE_READLINE_READLINE_H --- -GitLab - diff --git a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.20.8-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.20.8-r1.ebuild deleted file mode 100644 index b0c63cceefd..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.20.8-r1.ebuild +++ /dev/null @@ -1,385 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{11..13} ) -PYTHON_REQ_USE="threads(+),xml(+)" -inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info systemd pam tmpfiles - -DESCRIPTION="Samba Suite Version 4" -HOMEPAGE="https://samba.org/" - -MY_PV="${PV/_rc/rc}" -MY_P="${PN}-${MY_PV}" -if [[ ${PV} == *_rc* ]]; then - SRC_URI="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz" -else - SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" -fi -S="${WORKDIR}/${MY_P}" - -LICENSE="GPL-3" -SLOT="0" -IUSE="acl addc ads ceph client cluster cups debug fam glusterfs gpg" -IUSE+=" iprint json ldap llvm-libunwind pam profiling-data python quota +regedit selinux" -IUSE+=" snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test unwind winbind" -IUSE+=" zeroconf" - -REQUIRED_USE="${PYTHON_REQUIRED_USE} - addc? ( json python !system-mitkrb5 winbind ) - ads? ( acl ldap python winbind ) - cluster? ( ads ) - gpg? ( addc ) - spotlight? ( json ) - test? ( python ) - !ads? ( !addc ) - ?? ( system-heimdal system-mitkrb5 ) -" - -# the test suite is messed, it uses system-installed samba -# bits instead of what was built, tests things disabled via use -# flags, and generally just fails to work in a way ebuilds could -# rely on in its current state -RESTRICT="test" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/samba-4.0/policy.h - /usr/include/samba-4.0/dcerpc_server.h - /usr/include/samba-4.0/ctdb.h - /usr/include/samba-4.0/ctdb_client.h - /usr/include/samba-4.0/ctdb_protocol.h - /usr/include/samba-4.0/ctdb_private.h - /usr/include/samba-4.0/ctdb_typesafe_cb.h - /usr/include/samba-4.0/ctdb_version.h -) - -TALLOC_VERSION="2.4.2" -TDB_VERSION="1.4.10" -TEVENT_VERSION="0.16.1" - -COMMON_DEPEND=" - >=app-arch/libarchive-3.1.2:=[${MULTILIB_USEDEP}] - dev-lang/perl:= - dev-libs/icu:=[${MULTILIB_USEDEP}] - dev-libs/libbsd[${MULTILIB_USEDEP}] - dev-libs/libtasn1:=[${MULTILIB_USEDEP}] - dev-libs/popt[${MULTILIB_USEDEP}] - dev-perl/Parse-Yapp - >=net-libs/gnutls-3.4.7:=[${MULTILIB_USEDEP}] - >=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}] - >=sys-libs/ldb-2.9.2:=[ldap(+)?,${MULTILIB_USEDEP}] - <sys-libs/ldb-2.10.0:=[ldap(+)?,${MULTILIB_USEDEP}] - sys-libs/libcap[${MULTILIB_USEDEP}] - sys-libs/liburing:=[${MULTILIB_USEDEP}] - sys-libs/ncurses:= - sys-libs/readline:= - >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}] - >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}] - >=sys-libs/tevent-${TEVENT_VERSION}[${MULTILIB_USEDEP}] - virtual/zlib:=[${MULTILIB_USEDEP}] - virtual/libcrypt:=[${MULTILIB_USEDEP}] - virtual/libiconv - $(python_gen_cond_dep ' - addc? ( - dev-python/dnspython:=[${PYTHON_USEDEP}] - dev-python/markdown[${PYTHON_USEDEP}] - ) - ads? ( - dev-python/dnspython:=[${PYTHON_USEDEP}] - net-dns/bind[gssapi] - ) - ') - acl? ( virtual/acl ) - ceph? ( sys-cluster/ceph ) - cluster? ( net-libs/rpcsvc-proto ) - cups? ( net-print/cups ) - debug? ( dev-util/lttng-ust ) - fam? ( virtual/fam ) - gpg? ( app-crypt/gpgme:= ) - json? ( dev-libs/jansson:= ) - ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] ) - pam? ( sys-libs/pam ) - python? ( - sys-libs/ldb[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}] - ) - snapper? ( sys-apps/dbus ) - system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl(-),${MULTILIB_USEDEP}] ) - system-mitkrb5? ( >=app-crypt/mit-krb5-1.19[${MULTILIB_USEDEP}] ) - !system-heimdal? ( !system-mitkrb5? ( sys-apps/keyutils[${MULTILIB_USEDEP}] ) ) - systemd? ( sys-apps/systemd:= ) - unwind? ( - llvm-libunwind? ( llvm-runtimes/libunwind:= ) - !llvm-libunwind? ( sys-libs/libunwind:= ) - ) - zeroconf? ( net-dns/avahi[dbus] ) -" -DEPEND="${COMMON_DEPEND} - dev-perl/JSON - net-libs/libtirpc[${MULTILIB_USEDEP}] - net-libs/rpcsvc-proto - spotlight? ( dev-libs/glib ) - test? ( - >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}] - $(python_gen_cond_dep "dev-python/python-subunit[\${PYTHON_USEDEP},${MULTILIB_USEDEP}]" ) - !system-mitkrb5? ( - >=net-dns/resolv_wrapper-1.1.4 - >=net-libs/socket_wrapper-1.1.9 - >=sys-libs/nss_wrapper-1.1.3 - >=sys-libs/uid_wrapper-1.2.1 - ) - )" -RDEPEND="${COMMON_DEPEND} - client? ( net-fs/cifs-utils[ads?] ) - python? ( ${PYTHON_DEPS} ) - selinux? ( sec-policy/selinux-samba ) -" -BDEPEND="${PYTHON_DEPS} - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}"/${PN}-4.18.4-pam.patch - "${FILESDIR}"/ldb-2.5.2-skip-wav-tevent-check.patch - "${FILESDIR}"/${P}-dont-use-deprecated-readline-CPPFunction-cast.patch - "${FILESDIR}"/${P}-CVE-2025-0620.patch -) - -CONFDIR="${FILESDIR}/4.4" -WAF_BINARY="${S}/buildtools/bin/waf" -SHAREDMODS="" - -pkg_setup() { - # Package fails to build with distcc - export DISTCC_DISABLE=1 - export PYTHONHASHSEED=1 - - python-single-r1_pkg_setup - - SHAREDMODS="$(usev !snapper '!')vfs_snapper" - if use cluster ; then - SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad" - elif use ads ; then - SHAREDMODS+=",idmap_ad" - fi -} - -check_samba_dep_versions() { - actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die) - if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then - eerror "Source talloc version: ${TALLOC_VERSION}" - eerror "Ebuild talloc version: ${actual_talloc_version}" - die "Ebuild needs to fix TALLOC_VERSION!" - fi - - actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tdb/wscript || die) - if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then - eerror "Source tdb version: ${TDB_VERSION}" - eerror "Ebuild tdb version: ${actual_tdb_version}" - die "Ebuild needs to fix TDB_VERSION!" - fi - - actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tevent/wscript || die) - if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then - eerror "Source tevent version: ${TEVENT_VERSION}" - eerror "Ebuild tevent version: ${actual_tevent_version}" - die "Ebuild needs to fix TEVENT_VERSION!" - fi -} - -src_prepare() { - default - - check_samba_dep_versions - - # Unbundle dnspython - sed -i -e '/"dns.resolver":/d' "${S}"/third_party/wscript || die - - # Unbundle iso8601 unless tests are enabled - if ! use test ; then - sed -i -e '/"iso8601":/d' "${S}"/third_party/wscript || die - fi - - # Ugly hackaround for bug #592502 - #cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die - - # WAF - multilib_copy_sources -} - -multilib_src_configure() { - # When specifying libs for samba build you must append NONE to the end to - # stop it automatically including things - local bundled_libs="NONE" - if ! use system-heimdal && ! use system-mitkrb5 ; then - bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE" - fi - - # We "use" bundled cmocka when we're not running tests as we're - # not using it anyway. Means we avoid making users install it for - # no reason. bug #802531 - if ! use test ; then - bundled_libs="cmocka,${bundled_libs}" - fi - - # bug #874633 - if use llvm-libunwind ; then - mkdir -p "${T}"/${ABI}/pkgconfig || die - - local -x PKG_CONFIG_PATH="${T}/${ABI}/pkgconfig:${PKG_CONFIG_PATH}" - - cat <<-EOF > "${T}"/${ABI}/pkgconfig/libunwind-generic.pc || die - exec_prefix=\${prefix} - libdir=/usr/$(get_libdir) - includedir=\${prefix}/include - - Name: libunwind-generic - Description: libunwind generic library - Version: 1.70 - Libs: -L\${libdir} -lunwind - Cflags: -I\${includedir} - EOF - fi - - local myconf=( - --enable-fhs - --sysconfdir="${EPREFIX}/etc" - --localstatedir="${EPREFIX}/var" - --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba" - --with-piddir="${EPREFIX}/run/${PN}" - --bundled-libraries="${bundled_libs}" - --builtin-libraries=NONE - --disable-rpath - --disable-rpath-install - --nopyc - --nopyo - --without-winexe - $(multilib_native_use_with acl acl-support) - $(multilib_native_usex addc '' '--without-ad-dc') - $(multilib_native_use_with ads) - $(multilib_native_use_enable ceph cephfs) - $(multilib_native_use_with cluster cluster-support) - $(multilib_native_use_enable cups) - --without-dmapi - $(multilib_native_use_with fam) - $(multilib_native_use_enable glusterfs) - $(multilib_native_use_with gpg gpgme) - $(multilib_native_use_with json) - $(multilib_native_use_enable iprint) - $(multilib_native_use_with pam) - $(multilib_native_usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '') - $(multilib_native_use_with quota quotas) - $(multilib_native_use_with regedit) - $(multilib_native_use_enable spotlight) - $(multilib_native_use_with syslog) - $(multilib_native_use_with systemd) - --systemd-install-services - --with-systemddir="$(systemd_get_systemunitdir)" - $(multilib_native_use_with unwind libunwind) - $(multilib_native_use_with winbind) - $(multilib_native_usex python '' '--disable-python') - $(multilib_native_use_enable zeroconf avahi) - $(multilib_native_usex test '--enable-selftest' '') - $(usev system-mitkrb5 "--with-system-mitkrb5 ${ESYSROOT}/usr $(multilib_native_usex addc --with-experimental-mit-ad-dc '')") - $(use_with debug lttng) - $(use_with ldap) - $(use_with profiling-data) - # bug #683148 - --jobs 1 - ) - - if multilib_is_native_abi ; then - myconf+=( --with-shared-modules=${SHAREDMODS} ) - else - myconf+=( --with-shared-modules=DEFAULT,!vfs_snapper ) - fi - - append-ldflags $(test-flags-CCLD -Wl,--undefined-version) # bug 914898 - - append-cppflags "-I${ESYSROOT}/usr/include/et" - - waf-utils_src_configure ${myconf[@]} -} - -multilib_src_compile() { - waf-utils_src_compile -} - -multilib_src_test() { - if multilib_is_native_abi ; then - "${WAF_BINARY}" test || die "Test failed" - fi -} - -multilib_src_install() { - waf-utils_src_install - - # Make all .so files executable - find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die - # smbspool_krb5_wrapper must only be accessible to root, bug #880739 - find "${ED}" -type f -name "smbspool_krb5_wrapper" -exec chmod go-rwx {} + || die - - # Remove empty runtime dirs created by build system (bug #892341) - find "${ED}"/{run,var} -type d -empty -delete || die - - if multilib_is_native_abi ; then - # Install ldap schema for server (bug #491002) - if use ldap ; then - insinto /etc/openldap/schema - doins examples/LDAP/samba.schema - fi - - # Create symlink for cups (bug #552310) - if use cups ; then - dosym ../../../bin/smbspool \ - /usr/libexec/cups/backend/smb - fi - - # Install example config file - insinto /etc/samba - doins examples/smb.conf.default - - # Fix paths in example file (bug #603964) - sed \ - -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \ - -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \ - -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \ - -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \ - -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \ - -i "${ED}"/etc/samba/smb.conf.default || die - - # Install init script and conf.d file - newinitd "${CONFDIR}/samba4.initd-r1" samba - newconfd "${CONFDIR}/samba4.confd" samba - - dotmpfiles "${FILESDIR}"/samba.conf - if ! use addc ; then - rm "${D}/$(systemd_get_systemunitdir)/samba.service" \ - || die - fi - - # Preserve functionality for old gentoo-specific unit names - dosym nmb.service "$(systemd_get_systemunitdir)/nmbd.service" - dosym smb.service "$(systemd_get_systemunitdir)/smbd.service" - dosym winbind.service "$(systemd_get_systemunitdir)/winbindd.service" - - use python && python_optimize - fi - - if use pam && use winbind ; then - newpamd "${CONFDIR}/system-auth-winbind.pam" system-auth-winbind - # bugs #376853 and #590374 - insinto /etc/security - doins examples/pam_winbind/pam_winbind.conf - fi -} - -pkg_postinst() { - tmpfiles_process samba.conf -} diff --git a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.21.7.ebuild b/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.21.7.ebuild deleted file mode 100644 index 7825cd88cde..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.21.7.ebuild +++ /dev/null @@ -1,389 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{11..13} ) -PYTHON_REQ_USE="threads(+),xml(+)" -inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info systemd pam tmpfiles - -DESCRIPTION="Samba Suite Version 4" -HOMEPAGE="https://samba.org/" - -MY_PV="${PV/_rc/rc}" -MY_P="${PN}-${MY_PV}" -if [[ ${PV} == *_rc* ]]; then - SRC_URI="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz" -else - SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" -fi -S="${WORKDIR}/${MY_P}" - -LICENSE="GPL-3" -SLOT="0/2.10.0" -IUSE="acl addc ads ceph client cluster cups debug fam glusterfs gpg" -IUSE+=" iprint json ldap llvm-libunwind lmdb pam profiling-data python quota" -IUSE+=" +regedit selinux snapper spotlight syslog system-heimdal +system-mitkrb5" -IUSE+=" systemd test unwind winbind zeroconf" - -# ldap needs ads (bug #941578) -REQUIRED_USE="${PYTHON_REQUIRED_USE} - addc? ( json python !system-mitkrb5 winbind ) - ads? ( acl ldap python winbind ) - cluster? ( ads ) - gpg? ( addc ) - ldap? ( ads ) - spotlight? ( json ) - test? ( python ) - !ads? ( !addc ) - ?? ( system-heimdal system-mitkrb5 ) -" - -# the test suite is messed, it uses system-installed samba -# bits instead of what was built, tests things disabled via use -# flags, and generally just fails to work in a way ebuilds could -# rely on in its current state -RESTRICT="test" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/samba-4.0/policy.h - /usr/include/samba-4.0/dcerpc_server.h - /usr/include/samba-4.0/ctdb.h - /usr/include/samba-4.0/ctdb_client.h - /usr/include/samba-4.0/ctdb_protocol.h - /usr/include/samba-4.0/ctdb_private.h - /usr/include/samba-4.0/ctdb_typesafe_cb.h - /usr/include/samba-4.0/ctdb_version.h -) - -TALLOC_VERSION="2.4.2" -TDB_VERSION="1.4.12" -TEVENT_VERSION="0.16.1" - -COMMON_DEPEND=" - >=app-arch/libarchive-3.1.2:=[${MULTILIB_USEDEP}] - dev-lang/perl:= - dev-libs/icu:=[${MULTILIB_USEDEP}] - dev-libs/libbsd[${MULTILIB_USEDEP}] - dev-libs/libtasn1:=[${MULTILIB_USEDEP}] - dev-libs/popt[${MULTILIB_USEDEP}] - dev-perl/Parse-Yapp - >=net-libs/gnutls-3.4.7:=[${MULTILIB_USEDEP}] - >=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}] - !sys-libs/ldb - sys-libs/libcap[${MULTILIB_USEDEP}] - sys-libs/liburing:=[${MULTILIB_USEDEP}] - sys-libs/ncurses:= - sys-libs/readline:= - >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}] - >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}] - >=sys-libs/tevent-${TEVENT_VERSION}[${MULTILIB_USEDEP}] - virtual/zlib:=[${MULTILIB_USEDEP}] - virtual/libcrypt:=[${MULTILIB_USEDEP}] - virtual/libiconv - $(python_gen_cond_dep ' - addc? ( - dev-python/dnspython:=[${PYTHON_USEDEP}] - dev-python/markdown[${PYTHON_USEDEP}] - ) - ads? ( - dev-python/dnspython:=[${PYTHON_USEDEP}] - net-dns/bind[gssapi] - ) - ') - acl? ( virtual/acl ) - ceph? ( sys-cluster/ceph ) - cluster? ( net-libs/rpcsvc-proto ) - cups? ( net-print/cups ) - debug? ( dev-util/lttng-ust ) - fam? ( virtual/fam ) - gpg? ( app-crypt/gpgme:= ) - json? ( dev-libs/jansson:= ) - ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] ) - lmdb? ( >=dev-db/lmdb-0.9.16:=[${MULTILIB_USEDEP}] ) - pam? ( sys-libs/pam ) - python? ( - sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}] - ) - snapper? ( sys-apps/dbus ) - system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl(-),${MULTILIB_USEDEP}] ) - system-mitkrb5? ( >=app-crypt/mit-krb5-1.19[${MULTILIB_USEDEP}] ) - !system-heimdal? ( !system-mitkrb5? ( sys-apps/keyutils[${MULTILIB_USEDEP}] ) ) - systemd? ( sys-apps/systemd:= ) - unwind? ( - llvm-libunwind? ( llvm-runtimes/libunwind:= ) - !llvm-libunwind? ( sys-libs/libunwind:= ) - ) - zeroconf? ( net-dns/avahi[dbus] ) -" -DEPEND="${COMMON_DEPEND} - dev-perl/JSON - net-libs/libtirpc[${MULTILIB_USEDEP}] - net-libs/rpcsvc-proto - spotlight? ( dev-libs/glib ) - test? ( - >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}] - $(python_gen_cond_dep "dev-python/python-subunit[\${PYTHON_USEDEP},${MULTILIB_USEDEP}]" ) - !system-mitkrb5? ( - >=net-dns/resolv_wrapper-1.1.4 - >=net-libs/socket_wrapper-1.1.9 - >=sys-libs/nss_wrapper-1.1.3 - >=sys-libs/uid_wrapper-1.2.1 - ) - )" -RDEPEND="${COMMON_DEPEND} - client? ( net-fs/cifs-utils[ads?] ) - python? ( ${PYTHON_DEPS} ) - selinux? ( sec-policy/selinux-samba ) -" -BDEPEND="${PYTHON_DEPS} - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}"/${PN}-4.18.4-pam.patch - "${FILESDIR}"/ldb-2.5.2-skip-wav-tevent-check.patch -) - -CONFDIR="${FILESDIR}/4.4" -WAF_BINARY="${S}/buildtools/bin/waf" -SHAREDMODS="" - -pkg_setup() { - # Package fails to build with distcc - export DISTCC_DISABLE=1 - export PYTHONHASHSEED=1 - - python-single-r1_pkg_setup - - SHAREDMODS="$(usev !snapper '!')vfs_snapper" - if use cluster ; then - SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad" - elif use ads ; then - SHAREDMODS+=",idmap_ad" - fi -} - -check_samba_dep_versions() { - actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die) - if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then - eerror "Source talloc version: ${TALLOC_VERSION}" - eerror "Ebuild talloc version: ${actual_talloc_version}" - die "Ebuild needs to fix TALLOC_VERSION!" - fi - - actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tdb/wscript || die) - if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then - eerror "Source tdb version: ${TDB_VERSION}" - eerror "Ebuild tdb version: ${actual_tdb_version}" - die "Ebuild needs to fix TDB_VERSION!" - fi - - actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tevent/wscript || die) - if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then - eerror "Source tevent version: ${TEVENT_VERSION}" - eerror "Ebuild tevent version: ${actual_tevent_version}" - die "Ebuild needs to fix TEVENT_VERSION!" - fi -} - -src_prepare() { - default - - check_samba_dep_versions - - # Unbundle dnspython - sed -i -e '/"dns.resolver":/d' "${S}"/third_party/wscript || die - - # Unbundle iso8601 unless tests are enabled - if ! use test ; then - sed -i -e '/"iso8601":/d' "${S}"/third_party/wscript || die - fi - - # Ugly hackaround for bug #592502 - #cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die - - # bug #943942 - append-cflags -std=gnu17 - - # WAF - multilib_copy_sources -} - -multilib_src_configure() { - # When specifying libs for samba build you must append NONE to the end to - # stop it automatically including things - local bundled_libs="NONE" - if ! use system-heimdal && ! use system-mitkrb5 ; then - bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE" - fi - - # We "use" bundled cmocka when we're not running tests as we're - # not using it anyway. Means we avoid making users install it for - # no reason. bug #802531 - if ! use test ; then - bundled_libs="cmocka,${bundled_libs}" - fi - - # bug #874633 - if use llvm-libunwind ; then - mkdir -p "${T}"/${ABI}/pkgconfig || die - - local -x PKG_CONFIG_PATH="${T}/${ABI}/pkgconfig:${PKG_CONFIG_PATH}" - - cat <<-EOF > "${T}"/${ABI}/pkgconfig/libunwind-generic.pc || die - exec_prefix=\${prefix} - libdir=/usr/$(get_libdir) - includedir=\${prefix}/include - - Name: libunwind-generic - Description: libunwind generic library - Version: 1.70 - Libs: -L\${libdir} -lunwind - Cflags: -I\${includedir} - EOF - fi - - local myconf=( - --enable-fhs - --sysconfdir="${EPREFIX}/etc" - --localstatedir="${EPREFIX}/var" - --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba" - --with-piddir="${EPREFIX}/run/${PN}" - --bundled-libraries="${bundled_libs}" - --builtin-libraries=NONE - --disable-rpath - --disable-rpath-install - --nopyc - --nopyo - --without-winexe - $(multilib_native_use_with acl acl-support) - $(multilib_native_usex addc '' '--without-ad-dc') - $(multilib_native_use_enable ceph cephfs) - $(multilib_native_use_with cluster cluster-support) - $(multilib_native_use_enable cups) - --without-dmapi - $(multilib_native_use_with fam) - $(multilib_native_use_enable glusterfs) - $(multilib_native_use_with gpg gpgme) - $(multilib_native_use_with json) - $(multilib_native_use_enable iprint) - $(multilib_native_use_with pam) - $(multilib_native_usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '') - $(multilib_native_use_with quota quotas) - $(multilib_native_use_with regedit) - $(multilib_native_use_enable spotlight) - $(multilib_native_use_with syslog) - $(multilib_native_use_with systemd) - --systemd-install-services - --with-systemddir="$(systemd_get_systemunitdir)" - $(multilib_native_use_with unwind libunwind) - $(multilib_native_use_with winbind) - $(multilib_native_usex python '' '--disable-python') - $(multilib_native_use_enable zeroconf avahi) - $(multilib_native_usex test '--enable-selftest' '') - $(usev system-mitkrb5 "--with-system-mitkrb5 ${ESYSROOT}/usr $(multilib_native_usex addc --with-experimental-mit-ad-dc '')") - $(use_with ads) - $(use_with debug lttng) - $(use_with ldap) - $(use_with profiling-data) - --private-libraries='!ldb' - $(usex lmdb '' --without-ldb-lmdb) - # bug #683148 - --jobs 1 - ) - - if multilib_is_native_abi ; then - myconf+=( --with-shared-modules=${SHAREDMODS} ) - else - myconf+=( --with-shared-modules=DEFAULT,!vfs_snapper ) - fi - - append-ldflags $(test-flags-CCLD -Wl,--undefined-version) # bug 914898 - - append-cppflags "-I${ESYSROOT}/usr/include/et" - - waf-utils_src_configure ${myconf[@]} -} - -multilib_src_compile() { - waf-utils_src_compile -} - -multilib_src_test() { - if multilib_is_native_abi ; then - "${WAF_BINARY}" test || die "Test failed" - fi -} - -multilib_src_install() { - waf-utils_src_install - - # Make all .so files executable - find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die - # smbspool_krb5_wrapper must only be accessible to root, bug #880739 - find "${ED}" -type f -name "smbspool_krb5_wrapper" -exec chmod go-rwx {} + || die - - # Remove empty runtime dirs created by build system (bug #892341) - find "${ED}"/{run,var} -type d -empty -delete || die - - if multilib_is_native_abi ; then - # Install ldap schema for server (bug #491002) - if use ldap ; then - insinto /etc/openldap/schema - doins examples/LDAP/samba.schema - fi - - # Create symlink for cups (bug #552310) - if use cups ; then - dosym ../../../bin/smbspool \ - /usr/libexec/cups/backend/smb - fi - - # Install example config file - insinto /etc/samba - doins examples/smb.conf.default - - # Fix paths in example file (bug #603964) - sed \ - -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \ - -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \ - -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \ - -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \ - -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \ - -i "${ED}"/etc/samba/smb.conf.default || die - - # Install init script and conf.d file - newinitd "${CONFDIR}/samba4.initd-r1" samba - newconfd "${CONFDIR}/samba4.confd" samba - - dotmpfiles "${FILESDIR}"/samba.conf - if ! use addc ; then - rm "${D}/$(systemd_get_systemunitdir)/samba.service" \ - || die - fi - - # Preserve functionality for old gentoo-specific unit names - dosym nmb.service "$(systemd_get_systemunitdir)/nmbd.service" - dosym smb.service "$(systemd_get_systemunitdir)/smbd.service" - dosym winbind.service "$(systemd_get_systemunitdir)/winbindd.service" - - use python && python_optimize - fi - - if use pam && use winbind ; then - newpamd "${CONFDIR}/system-auth-winbind.pam" system-auth-winbind - # bugs #376853 and #590374 - insinto /etc/security - doins examples/pam_winbind/pam_winbind.conf - fi -} - -pkg_postinst() { - tmpfiles_process samba.conf -} diff --git a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.21.8.ebuild b/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.21.8.ebuild deleted file mode 100644 index 7825cd88cde..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.21.8.ebuild +++ /dev/null @@ -1,389 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{11..13} ) -PYTHON_REQ_USE="threads(+),xml(+)" -inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info systemd pam tmpfiles - -DESCRIPTION="Samba Suite Version 4" -HOMEPAGE="https://samba.org/" - -MY_PV="${PV/_rc/rc}" -MY_P="${PN}-${MY_PV}" -if [[ ${PV} == *_rc* ]]; then - SRC_URI="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz" -else - SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" -fi -S="${WORKDIR}/${MY_P}" - -LICENSE="GPL-3" -SLOT="0/2.10.0" -IUSE="acl addc ads ceph client cluster cups debug fam glusterfs gpg" -IUSE+=" iprint json ldap llvm-libunwind lmdb pam profiling-data python quota" -IUSE+=" +regedit selinux snapper spotlight syslog system-heimdal +system-mitkrb5" -IUSE+=" systemd test unwind winbind zeroconf" - -# ldap needs ads (bug #941578) -REQUIRED_USE="${PYTHON_REQUIRED_USE} - addc? ( json python !system-mitkrb5 winbind ) - ads? ( acl ldap python winbind ) - cluster? ( ads ) - gpg? ( addc ) - ldap? ( ads ) - spotlight? ( json ) - test? ( python ) - !ads? ( !addc ) - ?? ( system-heimdal system-mitkrb5 ) -" - -# the test suite is messed, it uses system-installed samba -# bits instead of what was built, tests things disabled via use -# flags, and generally just fails to work in a way ebuilds could -# rely on in its current state -RESTRICT="test" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/samba-4.0/policy.h - /usr/include/samba-4.0/dcerpc_server.h - /usr/include/samba-4.0/ctdb.h - /usr/include/samba-4.0/ctdb_client.h - /usr/include/samba-4.0/ctdb_protocol.h - /usr/include/samba-4.0/ctdb_private.h - /usr/include/samba-4.0/ctdb_typesafe_cb.h - /usr/include/samba-4.0/ctdb_version.h -) - -TALLOC_VERSION="2.4.2" -TDB_VERSION="1.4.12" -TEVENT_VERSION="0.16.1" - -COMMON_DEPEND=" - >=app-arch/libarchive-3.1.2:=[${MULTILIB_USEDEP}] - dev-lang/perl:= - dev-libs/icu:=[${MULTILIB_USEDEP}] - dev-libs/libbsd[${MULTILIB_USEDEP}] - dev-libs/libtasn1:=[${MULTILIB_USEDEP}] - dev-libs/popt[${MULTILIB_USEDEP}] - dev-perl/Parse-Yapp - >=net-libs/gnutls-3.4.7:=[${MULTILIB_USEDEP}] - >=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}] - !sys-libs/ldb - sys-libs/libcap[${MULTILIB_USEDEP}] - sys-libs/liburing:=[${MULTILIB_USEDEP}] - sys-libs/ncurses:= - sys-libs/readline:= - >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}] - >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}] - >=sys-libs/tevent-${TEVENT_VERSION}[${MULTILIB_USEDEP}] - virtual/zlib:=[${MULTILIB_USEDEP}] - virtual/libcrypt:=[${MULTILIB_USEDEP}] - virtual/libiconv - $(python_gen_cond_dep ' - addc? ( - dev-python/dnspython:=[${PYTHON_USEDEP}] - dev-python/markdown[${PYTHON_USEDEP}] - ) - ads? ( - dev-python/dnspython:=[${PYTHON_USEDEP}] - net-dns/bind[gssapi] - ) - ') - acl? ( virtual/acl ) - ceph? ( sys-cluster/ceph ) - cluster? ( net-libs/rpcsvc-proto ) - cups? ( net-print/cups ) - debug? ( dev-util/lttng-ust ) - fam? ( virtual/fam ) - gpg? ( app-crypt/gpgme:= ) - json? ( dev-libs/jansson:= ) - ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] ) - lmdb? ( >=dev-db/lmdb-0.9.16:=[${MULTILIB_USEDEP}] ) - pam? ( sys-libs/pam ) - python? ( - sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}] - ) - snapper? ( sys-apps/dbus ) - system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl(-),${MULTILIB_USEDEP}] ) - system-mitkrb5? ( >=app-crypt/mit-krb5-1.19[${MULTILIB_USEDEP}] ) - !system-heimdal? ( !system-mitkrb5? ( sys-apps/keyutils[${MULTILIB_USEDEP}] ) ) - systemd? ( sys-apps/systemd:= ) - unwind? ( - llvm-libunwind? ( llvm-runtimes/libunwind:= ) - !llvm-libunwind? ( sys-libs/libunwind:= ) - ) - zeroconf? ( net-dns/avahi[dbus] ) -" -DEPEND="${COMMON_DEPEND} - dev-perl/JSON - net-libs/libtirpc[${MULTILIB_USEDEP}] - net-libs/rpcsvc-proto - spotlight? ( dev-libs/glib ) - test? ( - >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}] - $(python_gen_cond_dep "dev-python/python-subunit[\${PYTHON_USEDEP},${MULTILIB_USEDEP}]" ) - !system-mitkrb5? ( - >=net-dns/resolv_wrapper-1.1.4 - >=net-libs/socket_wrapper-1.1.9 - >=sys-libs/nss_wrapper-1.1.3 - >=sys-libs/uid_wrapper-1.2.1 - ) - )" -RDEPEND="${COMMON_DEPEND} - client? ( net-fs/cifs-utils[ads?] ) - python? ( ${PYTHON_DEPS} ) - selinux? ( sec-policy/selinux-samba ) -" -BDEPEND="${PYTHON_DEPS} - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}"/${PN}-4.18.4-pam.patch - "${FILESDIR}"/ldb-2.5.2-skip-wav-tevent-check.patch -) - -CONFDIR="${FILESDIR}/4.4" -WAF_BINARY="${S}/buildtools/bin/waf" -SHAREDMODS="" - -pkg_setup() { - # Package fails to build with distcc - export DISTCC_DISABLE=1 - export PYTHONHASHSEED=1 - - python-single-r1_pkg_setup - - SHAREDMODS="$(usev !snapper '!')vfs_snapper" - if use cluster ; then - SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad" - elif use ads ; then - SHAREDMODS+=",idmap_ad" - fi -} - -check_samba_dep_versions() { - actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die) - if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then - eerror "Source talloc version: ${TALLOC_VERSION}" - eerror "Ebuild talloc version: ${actual_talloc_version}" - die "Ebuild needs to fix TALLOC_VERSION!" - fi - - actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tdb/wscript || die) - if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then - eerror "Source tdb version: ${TDB_VERSION}" - eerror "Ebuild tdb version: ${actual_tdb_version}" - die "Ebuild needs to fix TDB_VERSION!" - fi - - actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tevent/wscript || die) - if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then - eerror "Source tevent version: ${TEVENT_VERSION}" - eerror "Ebuild tevent version: ${actual_tevent_version}" - die "Ebuild needs to fix TEVENT_VERSION!" - fi -} - -src_prepare() { - default - - check_samba_dep_versions - - # Unbundle dnspython - sed -i -e '/"dns.resolver":/d' "${S}"/third_party/wscript || die - - # Unbundle iso8601 unless tests are enabled - if ! use test ; then - sed -i -e '/"iso8601":/d' "${S}"/third_party/wscript || die - fi - - # Ugly hackaround for bug #592502 - #cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die - - # bug #943942 - append-cflags -std=gnu17 - - # WAF - multilib_copy_sources -} - -multilib_src_configure() { - # When specifying libs for samba build you must append NONE to the end to - # stop it automatically including things - local bundled_libs="NONE" - if ! use system-heimdal && ! use system-mitkrb5 ; then - bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE" - fi - - # We "use" bundled cmocka when we're not running tests as we're - # not using it anyway. Means we avoid making users install it for - # no reason. bug #802531 - if ! use test ; then - bundled_libs="cmocka,${bundled_libs}" - fi - - # bug #874633 - if use llvm-libunwind ; then - mkdir -p "${T}"/${ABI}/pkgconfig || die - - local -x PKG_CONFIG_PATH="${T}/${ABI}/pkgconfig:${PKG_CONFIG_PATH}" - - cat <<-EOF > "${T}"/${ABI}/pkgconfig/libunwind-generic.pc || die - exec_prefix=\${prefix} - libdir=/usr/$(get_libdir) - includedir=\${prefix}/include - - Name: libunwind-generic - Description: libunwind generic library - Version: 1.70 - Libs: -L\${libdir} -lunwind - Cflags: -I\${includedir} - EOF - fi - - local myconf=( - --enable-fhs - --sysconfdir="${EPREFIX}/etc" - --localstatedir="${EPREFIX}/var" - --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba" - --with-piddir="${EPREFIX}/run/${PN}" - --bundled-libraries="${bundled_libs}" - --builtin-libraries=NONE - --disable-rpath - --disable-rpath-install - --nopyc - --nopyo - --without-winexe - $(multilib_native_use_with acl acl-support) - $(multilib_native_usex addc '' '--without-ad-dc') - $(multilib_native_use_enable ceph cephfs) - $(multilib_native_use_with cluster cluster-support) - $(multilib_native_use_enable cups) - --without-dmapi - $(multilib_native_use_with fam) - $(multilib_native_use_enable glusterfs) - $(multilib_native_use_with gpg gpgme) - $(multilib_native_use_with json) - $(multilib_native_use_enable iprint) - $(multilib_native_use_with pam) - $(multilib_native_usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '') - $(multilib_native_use_with quota quotas) - $(multilib_native_use_with regedit) - $(multilib_native_use_enable spotlight) - $(multilib_native_use_with syslog) - $(multilib_native_use_with systemd) - --systemd-install-services - --with-systemddir="$(systemd_get_systemunitdir)" - $(multilib_native_use_with unwind libunwind) - $(multilib_native_use_with winbind) - $(multilib_native_usex python '' '--disable-python') - $(multilib_native_use_enable zeroconf avahi) - $(multilib_native_usex test '--enable-selftest' '') - $(usev system-mitkrb5 "--with-system-mitkrb5 ${ESYSROOT}/usr $(multilib_native_usex addc --with-experimental-mit-ad-dc '')") - $(use_with ads) - $(use_with debug lttng) - $(use_with ldap) - $(use_with profiling-data) - --private-libraries='!ldb' - $(usex lmdb '' --without-ldb-lmdb) - # bug #683148 - --jobs 1 - ) - - if multilib_is_native_abi ; then - myconf+=( --with-shared-modules=${SHAREDMODS} ) - else - myconf+=( --with-shared-modules=DEFAULT,!vfs_snapper ) - fi - - append-ldflags $(test-flags-CCLD -Wl,--undefined-version) # bug 914898 - - append-cppflags "-I${ESYSROOT}/usr/include/et" - - waf-utils_src_configure ${myconf[@]} -} - -multilib_src_compile() { - waf-utils_src_compile -} - -multilib_src_test() { - if multilib_is_native_abi ; then - "${WAF_BINARY}" test || die "Test failed" - fi -} - -multilib_src_install() { - waf-utils_src_install - - # Make all .so files executable - find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die - # smbspool_krb5_wrapper must only be accessible to root, bug #880739 - find "${ED}" -type f -name "smbspool_krb5_wrapper" -exec chmod go-rwx {} + || die - - # Remove empty runtime dirs created by build system (bug #892341) - find "${ED}"/{run,var} -type d -empty -delete || die - - if multilib_is_native_abi ; then - # Install ldap schema for server (bug #491002) - if use ldap ; then - insinto /etc/openldap/schema - doins examples/LDAP/samba.schema - fi - - # Create symlink for cups (bug #552310) - if use cups ; then - dosym ../../../bin/smbspool \ - /usr/libexec/cups/backend/smb - fi - - # Install example config file - insinto /etc/samba - doins examples/smb.conf.default - - # Fix paths in example file (bug #603964) - sed \ - -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \ - -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \ - -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \ - -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \ - -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \ - -i "${ED}"/etc/samba/smb.conf.default || die - - # Install init script and conf.d file - newinitd "${CONFDIR}/samba4.initd-r1" samba - newconfd "${CONFDIR}/samba4.confd" samba - - dotmpfiles "${FILESDIR}"/samba.conf - if ! use addc ; then - rm "${D}/$(systemd_get_systemunitdir)/samba.service" \ - || die - fi - - # Preserve functionality for old gentoo-specific unit names - dosym nmb.service "$(systemd_get_systemunitdir)/nmbd.service" - dosym smb.service "$(systemd_get_systemunitdir)/smbd.service" - dosym winbind.service "$(systemd_get_systemunitdir)/winbindd.service" - - use python && python_optimize - fi - - if use pam && use winbind ; then - newpamd "${CONFDIR}/system-auth-winbind.pam" system-auth-winbind - # bugs #376853 and #590374 - insinto /etc/security - doins examples/pam_winbind/pam_winbind.conf - fi -} - -pkg_postinst() { - tmpfiles_process samba.conf -} diff --git a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.21.9-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.21.9-r1.ebuild deleted file mode 100644 index 659c7cd530d..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.21.9-r1.ebuild +++ /dev/null @@ -1,393 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{11..13} ) -PYTHON_REQ_USE="threads(+),xml(+)" -inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info systemd pam tmpfiles - -DESCRIPTION="Samba Suite Version 4" -HOMEPAGE="https://samba.org/" - -MY_PV="${PV/_rc/rc}" -MY_P="${PN}-${MY_PV}" -if [[ ${PV} == *_rc* ]]; then - SRC_URI="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz" -else - SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" -fi -S="${WORKDIR}/${MY_P}" - -LICENSE="GPL-3" -SLOT="0/2.10.0" -IUSE="acl addc ads ceph client cluster cups debug fam glusterfs gpg" -IUSE+=" iprint json ldap llvm-libunwind lmdb pam profiling-data python quota" -IUSE+=" +regedit selinux snapper spotlight syslog system-heimdal +system-mitkrb5" -IUSE+=" systemd test unwind winbind zeroconf" - -# ldap needs ads (bug #941578) -REQUIRED_USE="${PYTHON_REQUIRED_USE} - addc? ( json python !system-mitkrb5 winbind ) - ads? ( acl ldap python winbind ) - cluster? ( ads ) - gpg? ( addc ) - ldap? ( ads ) - spotlight? ( json ) - test? ( python ) - !ads? ( !addc ) - ?? ( system-heimdal system-mitkrb5 ) -" - -# the test suite is messed, it uses system-installed samba -# bits instead of what was built, tests things disabled via use -# flags, and generally just fails to work in a way ebuilds could -# rely on in its current state -RESTRICT="test" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/samba-4.0/policy.h - /usr/include/samba-4.0/dcerpc_server.h - /usr/include/samba-4.0/ctdb.h - /usr/include/samba-4.0/ctdb_client.h - /usr/include/samba-4.0/ctdb_protocol.h - /usr/include/samba-4.0/ctdb_private.h - /usr/include/samba-4.0/ctdb_typesafe_cb.h - /usr/include/samba-4.0/ctdb_version.h -) - -TALLOC_VERSION="2.4.2" -TDB_VERSION="1.4.12" -TEVENT_VERSION="0.16.1" - -COMMON_DEPEND=" - >=app-arch/libarchive-3.1.2:=[${MULTILIB_USEDEP}] - dev-lang/perl:= - dev-libs/icu:=[${MULTILIB_USEDEP}] - dev-libs/libbsd[${MULTILIB_USEDEP}] - dev-libs/libtasn1:=[${MULTILIB_USEDEP}] - dev-libs/popt[${MULTILIB_USEDEP}] - dev-perl/Parse-Yapp - >=net-libs/gnutls-3.4.7:=[${MULTILIB_USEDEP}] - >=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}] - !sys-libs/ldb - sys-libs/libcap[${MULTILIB_USEDEP}] - sys-libs/liburing:=[${MULTILIB_USEDEP}] - sys-libs/ncurses:= - sys-libs/readline:= - >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}] - >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}] - >=sys-libs/tevent-${TEVENT_VERSION}[${MULTILIB_USEDEP}] - virtual/zlib:=[${MULTILIB_USEDEP}] - virtual/libcrypt:=[${MULTILIB_USEDEP}] - virtual/libiconv - $(python_gen_cond_dep ' - addc? ( - dev-python/cryptography[${PYTHON_USEDEP}] - dev-python/dnspython:=[${PYTHON_USEDEP}] - dev-python/markdown[${PYTHON_USEDEP}] - net-dns/bind[gssapi] - ) - ads? ( - dev-python/cryptography[${PYTHON_USEDEP}] - dev-python/dnspython:=[${PYTHON_USEDEP}] - dev-python/markdown[${PYTHON_USEDEP}] - net-dns/bind[gssapi] - ) - ') - acl? ( virtual/acl ) - ceph? ( sys-cluster/ceph ) - cluster? ( net-libs/rpcsvc-proto ) - cups? ( net-print/cups ) - debug? ( dev-util/lttng-ust ) - fam? ( virtual/fam ) - gpg? ( app-crypt/gpgme:= ) - json? ( dev-libs/jansson:= ) - ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] ) - lmdb? ( >=dev-db/lmdb-0.9.16:=[${MULTILIB_USEDEP}] ) - pam? ( sys-libs/pam ) - python? ( - sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}] - ) - snapper? ( sys-apps/dbus ) - system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl(-),${MULTILIB_USEDEP}] ) - system-mitkrb5? ( >=app-crypt/mit-krb5-1.19[${MULTILIB_USEDEP}] ) - !system-heimdal? ( !system-mitkrb5? ( sys-apps/keyutils[${MULTILIB_USEDEP}] ) ) - systemd? ( sys-apps/systemd:= ) - unwind? ( - llvm-libunwind? ( llvm-runtimes/libunwind:= ) - !llvm-libunwind? ( sys-libs/libunwind:= ) - ) - zeroconf? ( net-dns/avahi[dbus] ) -" -DEPEND="${COMMON_DEPEND} - dev-perl/JSON - net-libs/libtirpc[${MULTILIB_USEDEP}] - net-libs/rpcsvc-proto - spotlight? ( dev-libs/glib ) - test? ( - >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}] - $(python_gen_cond_dep "dev-python/python-subunit[\${PYTHON_USEDEP},${MULTILIB_USEDEP}]" ) - !system-mitkrb5? ( - >=net-dns/resolv_wrapper-1.1.4 - >=net-libs/socket_wrapper-1.1.9 - >=sys-libs/nss_wrapper-1.1.3 - >=sys-libs/uid_wrapper-1.2.1 - ) - )" -RDEPEND="${COMMON_DEPEND} - client? ( net-fs/cifs-utils[ads?] ) - python? ( ${PYTHON_DEPS} ) - selinux? ( sec-policy/selinux-samba ) -" -BDEPEND="${PYTHON_DEPS} - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}"/${PN}-4.18.4-pam.patch - "${FILESDIR}"/ldb-2.5.2-skip-wav-tevent-check.patch -) - -CONFDIR="${FILESDIR}/4.4" -WAF_BINARY="${S}/buildtools/bin/waf" -SHAREDMODS="" - -pkg_setup() { - # Package fails to build with distcc - export DISTCC_DISABLE=1 - export PYTHONHASHSEED=1 - - python-single-r1_pkg_setup - - SHAREDMODS="$(usev !snapper '!')vfs_snapper" - if use cluster ; then - SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad" - elif use ads ; then - SHAREDMODS+=",idmap_ad" - fi -} - -check_samba_dep_versions() { - actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die) - if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then - eerror "Source talloc version: ${TALLOC_VERSION}" - eerror "Ebuild talloc version: ${actual_talloc_version}" - die "Ebuild needs to fix TALLOC_VERSION!" - fi - - actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tdb/wscript || die) - if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then - eerror "Source tdb version: ${TDB_VERSION}" - eerror "Ebuild tdb version: ${actual_tdb_version}" - die "Ebuild needs to fix TDB_VERSION!" - fi - - actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tevent/wscript || die) - if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then - eerror "Source tevent version: ${TEVENT_VERSION}" - eerror "Ebuild tevent version: ${actual_tevent_version}" - die "Ebuild needs to fix TEVENT_VERSION!" - fi -} - -src_prepare() { - default - - check_samba_dep_versions - - # Unbundle dnspython - sed -i -e '/"dns.resolver":/d' "${S}"/third_party/wscript || die - - # Unbundle iso8601 unless tests are enabled - if ! use test ; then - sed -i -e '/"iso8601":/d' "${S}"/third_party/wscript || die - fi - - # Ugly hackaround for bug #592502 - #cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die - - # bug #943942 - append-cflags -std=gnu17 - - # WAF - multilib_copy_sources -} - -multilib_src_configure() { - # When specifying libs for samba build you must append NONE to the end to - # stop it automatically including things - local bundled_libs="NONE" - if ! use system-heimdal && ! use system-mitkrb5 ; then - bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE" - fi - - # We "use" bundled cmocka when we're not running tests as we're - # not using it anyway. Means we avoid making users install it for - # no reason. bug #802531 - if ! use test ; then - bundled_libs="cmocka,${bundled_libs}" - fi - - # bug #874633 - if use llvm-libunwind ; then - mkdir -p "${T}"/${ABI}/pkgconfig || die - - local -x PKG_CONFIG_PATH="${T}/${ABI}/pkgconfig:${PKG_CONFIG_PATH}" - - cat <<-EOF > "${T}"/${ABI}/pkgconfig/libunwind-generic.pc || die - exec_prefix=\${prefix} - libdir=/usr/$(get_libdir) - includedir=\${prefix}/include - - Name: libunwind-generic - Description: libunwind generic library - Version: 1.70 - Libs: -L\${libdir} -lunwind - Cflags: -I\${includedir} - EOF - fi - - local myconf=( - --enable-fhs - --sysconfdir="${EPREFIX}/etc" - --localstatedir="${EPREFIX}/var" - --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba" - --with-piddir="${EPREFIX}/run/${PN}" - --bundled-libraries="${bundled_libs}" - --builtin-libraries=NONE - --disable-rpath - --disable-rpath-install - --nopyc - --nopyo - --without-winexe - $(multilib_native_use_with acl acl-support) - $(multilib_native_usex addc '' '--without-ad-dc') - $(multilib_native_use_enable ceph cephfs) - $(multilib_native_use_with cluster cluster-support) - $(multilib_native_use_enable cups) - --without-dmapi - $(multilib_native_use_with fam) - $(multilib_native_use_enable glusterfs) - $(multilib_native_use_with gpg gpgme) - $(multilib_native_use_with json) - $(multilib_native_use_enable iprint) - $(multilib_native_use_with pam) - $(multilib_native_usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '') - $(multilib_native_use_with quota quotas) - $(multilib_native_use_with regedit) - $(multilib_native_use_enable spotlight) - $(multilib_native_use_with syslog) - $(multilib_native_use_with systemd) - --systemd-install-services - --with-systemddir="$(systemd_get_systemunitdir)" - $(multilib_native_use_with unwind libunwind) - $(multilib_native_use_with winbind) - $(multilib_native_usex python '' '--disable-python') - $(multilib_native_use_enable zeroconf avahi) - $(multilib_native_usex test '--enable-selftest' '') - $(usev system-mitkrb5 "--with-system-mitkrb5 ${ESYSROOT}/usr $(multilib_native_usex addc --with-experimental-mit-ad-dc '')") - $(use_with ads) - $(use_with debug lttng) - $(use_with ldap) - $(use_with profiling-data) - --private-libraries='!ldb' - $(usex lmdb '' --without-ldb-lmdb) - # bug #683148 - --jobs 1 - ) - - if multilib_is_native_abi ; then - myconf+=( --with-shared-modules=${SHAREDMODS} ) - else - myconf+=( --with-shared-modules=DEFAULT,!vfs_snapper ) - fi - - append-ldflags $(test-flags-CCLD -Wl,--undefined-version) # bug 914898 - - append-cppflags "-I${ESYSROOT}/usr/include/et" - - waf-utils_src_configure ${myconf[@]} -} - -multilib_src_compile() { - waf-utils_src_compile -} - -multilib_src_test() { - if multilib_is_native_abi ; then - "${WAF_BINARY}" test || die "Test failed" - fi -} - -multilib_src_install() { - waf-utils_src_install - - # Make all .so files executable - find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die - # smbspool_krb5_wrapper must only be accessible to root, bug #880739 - find "${ED}" -type f -name "smbspool_krb5_wrapper" -exec chmod go-rwx {} + || die - - # Remove empty runtime dirs created by build system (bug #892341) - find "${ED}"/{run,var} -type d -empty -delete || die - - if multilib_is_native_abi ; then - # Install ldap schema for server (bug #491002) - if use ldap ; then - insinto /etc/openldap/schema - doins examples/LDAP/samba.schema - fi - - # Create symlink for cups (bug #552310) - if use cups ; then - dosym ../../../bin/smbspool \ - /usr/libexec/cups/backend/smb - fi - - # Install example config file - insinto /etc/samba - doins examples/smb.conf.default - - # Fix paths in example file (bug #603964) - sed \ - -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \ - -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \ - -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \ - -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \ - -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \ - -i "${ED}"/etc/samba/smb.conf.default || die - - # Install init script and conf.d file - newinitd "${CONFDIR}/samba4.initd-r1" samba - newconfd "${CONFDIR}/samba4.confd" samba - - dotmpfiles "${FILESDIR}"/samba.conf - if ! use addc ; then - rm "${D}/$(systemd_get_systemunitdir)/samba.service" \ - || die - fi - - # Preserve functionality for old gentoo-specific unit names - dosym nmb.service "$(systemd_get_systemunitdir)/nmbd.service" - dosym smb.service "$(systemd_get_systemunitdir)/smbd.service" - dosym winbind.service "$(systemd_get_systemunitdir)/winbindd.service" - - use python && python_optimize - fi - - if use pam && use winbind ; then - newpamd "${CONFDIR}/system-auth-winbind.pam" system-auth-winbind - # bugs #376853 and #590374 - insinto /etc/security - doins examples/pam_winbind/pam_winbind.conf - fi -} - -pkg_postinst() { - tmpfiles_process samba.conf -} diff --git a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.22.3.ebuild b/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.22.3.ebuild deleted file mode 100644 index b07d5ef352a..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.22.3.ebuild +++ /dev/null @@ -1,389 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{11..13} ) -PYTHON_REQ_USE="threads(+),xml(+)" -inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info systemd pam tmpfiles - -DESCRIPTION="Samba Suite Version 4" -HOMEPAGE="https://samba.org/" - -MY_PV="${PV/_rc/rc}" -MY_P="${PN}-${MY_PV}" -if [[ ${PV} == *_rc* ]]; then - SRC_URI="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz" -else - SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" -fi -S="${WORKDIR}/${MY_P}" - -LICENSE="GPL-3" -SLOT="0/2.10.0" -IUSE="acl addc ads ceph client cluster cups debug fam glusterfs gpg" -IUSE+=" iprint json ldap llvm-libunwind lmdb pam profiling-data python quota" -IUSE+=" +regedit selinux snapper spotlight syslog system-heimdal +system-mitkrb5" -IUSE+=" systemd test unwind winbind zeroconf" - -# ldap needs ads (bug #941578) -REQUIRED_USE="${PYTHON_REQUIRED_USE} - addc? ( json python !system-mitkrb5 winbind ) - ads? ( acl ldap python winbind ) - cluster? ( ads ) - gpg? ( addc ) - ldap? ( ads ) - spotlight? ( json ) - test? ( python ) - !ads? ( !addc ) - ?? ( system-heimdal system-mitkrb5 ) -" - -# the test suite is messed, it uses system-installed samba -# bits instead of what was built, tests things disabled via use -# flags, and generally just fails to work in a way ebuilds could -# rely on in its current state -RESTRICT="test" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/samba-4.0/policy.h - /usr/include/samba-4.0/dcerpc_server.h - /usr/include/samba-4.0/ctdb.h - /usr/include/samba-4.0/ctdb_client.h - /usr/include/samba-4.0/ctdb_protocol.h - /usr/include/samba-4.0/ctdb_private.h - /usr/include/samba-4.0/ctdb_typesafe_cb.h - /usr/include/samba-4.0/ctdb_version.h -) - -TALLOC_VERSION="2.4.3" -TDB_VERSION="1.4.13" -TEVENT_VERSION="0.16.2" - -COMMON_DEPEND=" - >=app-arch/libarchive-3.1.2:=[${MULTILIB_USEDEP}] - dev-lang/perl:= - dev-libs/icu:=[${MULTILIB_USEDEP}] - dev-libs/libbsd[${MULTILIB_USEDEP}] - dev-libs/libtasn1:=[${MULTILIB_USEDEP}] - dev-libs/popt[${MULTILIB_USEDEP}] - dev-perl/Parse-Yapp - >=net-libs/gnutls-3.4.7:=[${MULTILIB_USEDEP}] - >=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}] - !sys-libs/ldb - sys-libs/libcap[${MULTILIB_USEDEP}] - sys-libs/liburing:=[${MULTILIB_USEDEP}] - sys-libs/ncurses:= - sys-libs/readline:= - >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}] - >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}] - >=sys-libs/tevent-${TEVENT_VERSION}[${MULTILIB_USEDEP}] - virtual/zlib:=[${MULTILIB_USEDEP}] - virtual/libcrypt:=[${MULTILIB_USEDEP}] - virtual/libiconv - $(python_gen_cond_dep ' - addc? ( - dev-python/dnspython:=[${PYTHON_USEDEP}] - dev-python/markdown[${PYTHON_USEDEP}] - ) - ads? ( - dev-python/dnspython:=[${PYTHON_USEDEP}] - net-dns/bind[gssapi] - ) - ') - acl? ( virtual/acl ) - ceph? ( sys-cluster/ceph ) - cluster? ( net-libs/rpcsvc-proto ) - cups? ( net-print/cups ) - debug? ( dev-util/lttng-ust ) - fam? ( virtual/fam ) - gpg? ( app-crypt/gpgme:= ) - json? ( dev-libs/jansson:= ) - ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] ) - lmdb? ( >=dev-db/lmdb-0.9.16:=[${MULTILIB_USEDEP}] ) - pam? ( sys-libs/pam ) - python? ( - sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}] - ) - snapper? ( sys-apps/dbus ) - system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl(-),${MULTILIB_USEDEP}] ) - system-mitkrb5? ( >=app-crypt/mit-krb5-1.19[${MULTILIB_USEDEP}] ) - !system-heimdal? ( !system-mitkrb5? ( sys-apps/keyutils[${MULTILIB_USEDEP}] ) ) - systemd? ( sys-apps/systemd:= ) - unwind? ( - llvm-libunwind? ( llvm-runtimes/libunwind:= ) - !llvm-libunwind? ( sys-libs/libunwind:= ) - ) - zeroconf? ( net-dns/avahi[dbus] ) -" -DEPEND="${COMMON_DEPEND} - dev-perl/JSON - net-libs/libtirpc[${MULTILIB_USEDEP}] - net-libs/rpcsvc-proto - spotlight? ( dev-libs/glib ) - test? ( - >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}] - $(python_gen_cond_dep "dev-python/python-subunit[\${PYTHON_USEDEP},${MULTILIB_USEDEP}]" ) - !system-mitkrb5? ( - >=net-dns/resolv_wrapper-1.1.4 - >=net-libs/socket_wrapper-1.1.9 - >=sys-libs/nss_wrapper-1.1.3 - >=sys-libs/uid_wrapper-1.2.1 - ) - )" -RDEPEND="${COMMON_DEPEND} - client? ( net-fs/cifs-utils[ads?] ) - python? ( ${PYTHON_DEPS} ) - selinux? ( sec-policy/selinux-samba ) -" -BDEPEND="${PYTHON_DEPS} - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}"/${PN}-4.18.4-pam.patch - "${FILESDIR}"/ldb-2.5.2-skip-wav-tevent-check.patch -) - -CONFDIR="${FILESDIR}/4.4" -WAF_BINARY="${S}/buildtools/bin/waf" -SHAREDMODS="" - -pkg_setup() { - # Package fails to build with distcc - export DISTCC_DISABLE=1 - export PYTHONHASHSEED=1 - - python-single-r1_pkg_setup - - SHAREDMODS="$(usev !snapper '!')vfs_snapper" - if use cluster ; then - SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad" - elif use ads ; then - SHAREDMODS+=",idmap_ad" - fi -} - -check_samba_dep_versions() { - actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die) - if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then - eerror "Source talloc version: ${TALLOC_VERSION}" - eerror "Ebuild talloc version: ${actual_talloc_version}" - die "Ebuild needs to fix TALLOC_VERSION!" - fi - - actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tdb/wscript || die) - if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then - eerror "Source tdb version: ${TDB_VERSION}" - eerror "Ebuild tdb version: ${actual_tdb_version}" - die "Ebuild needs to fix TDB_VERSION!" - fi - - actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tevent/wscript || die) - if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then - eerror "Source tevent version: ${TEVENT_VERSION}" - eerror "Ebuild tevent version: ${actual_tevent_version}" - die "Ebuild needs to fix TEVENT_VERSION!" - fi -} - -src_prepare() { - default - - check_samba_dep_versions - - # Unbundle dnspython - sed -i -e '/"dns.resolver":/d' "${S}"/third_party/wscript || die - - # Unbundle iso8601 unless tests are enabled - if ! use test ; then - sed -i -e '/"iso8601":/d' "${S}"/third_party/wscript || die - fi - - # Ugly hackaround for bug #592502 - #cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die - - # bug #943942 - append-cflags -std=gnu17 - - # WAF - multilib_copy_sources -} - -multilib_src_configure() { - # When specifying libs for samba build you must append NONE to the end to - # stop it automatically including things - local bundled_libs="NONE" - if ! use system-heimdal && ! use system-mitkrb5 ; then - bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE" - fi - - # We "use" bundled cmocka when we're not running tests as we're - # not using it anyway. Means we avoid making users install it for - # no reason. bug #802531 - if ! use test ; then - bundled_libs="cmocka,${bundled_libs}" - fi - - # bug #874633 - if use llvm-libunwind ; then - mkdir -p "${T}"/${ABI}/pkgconfig || die - - local -x PKG_CONFIG_PATH="${T}/${ABI}/pkgconfig:${PKG_CONFIG_PATH}" - - cat <<-EOF > "${T}"/${ABI}/pkgconfig/libunwind-generic.pc || die - exec_prefix=\${prefix} - libdir=/usr/$(get_libdir) - includedir=\${prefix}/include - - Name: libunwind-generic - Description: libunwind generic library - Version: 1.70 - Libs: -L\${libdir} -lunwind - Cflags: -I\${includedir} - EOF - fi - - local myconf=( - --enable-fhs - --sysconfdir="${EPREFIX}/etc" - --localstatedir="${EPREFIX}/var" - --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba" - --with-piddir="${EPREFIX}/run/${PN}" - --bundled-libraries="${bundled_libs}" - --builtin-libraries=NONE - --disable-rpath - --disable-rpath-install - --nopyc - --nopyo - --without-winexe - $(multilib_native_use_with acl acl-support) - $(multilib_native_usex addc '' '--without-ad-dc') - $(multilib_native_use_enable ceph cephfs) - $(multilib_native_use_with cluster cluster-support) - $(multilib_native_use_enable cups) - --without-dmapi - $(multilib_native_use_with fam) - $(multilib_native_use_enable glusterfs) - $(multilib_native_use_with gpg gpgme) - $(multilib_native_use_with json) - $(multilib_native_use_enable iprint) - $(multilib_native_use_with pam) - $(multilib_native_usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '') - $(multilib_native_use_with quota quotas) - $(multilib_native_use_with regedit) - $(multilib_native_use_enable spotlight) - $(multilib_native_use_with syslog) - $(multilib_native_use_with systemd) - --systemd-install-services - --with-systemddir="$(systemd_get_systemunitdir)" - $(multilib_native_use_with unwind libunwind) - $(multilib_native_use_with winbind) - $(multilib_native_usex python '' '--disable-python') - $(multilib_native_use_enable zeroconf avahi) - $(multilib_native_usex test '--enable-selftest' '') - $(usev system-mitkrb5 "--with-system-mitkrb5 ${ESYSROOT}/usr $(multilib_native_usex addc --with-experimental-mit-ad-dc '')") - $(use_with ads) - $(use_with debug lttng) - $(use_with ldap) - $(use_with profiling-data) - --private-libraries='!ldb' - $(usex lmdb '' --without-ldb-lmdb) - # bug #683148 - --jobs 1 - ) - - if multilib_is_native_abi ; then - myconf+=( --with-shared-modules=${SHAREDMODS} ) - else - myconf+=( --with-shared-modules=DEFAULT,!vfs_snapper ) - fi - - append-ldflags $(test-flags-CCLD -Wl,--undefined-version) # bug 914898 - - append-cppflags "-I${ESYSROOT}/usr/include/et" - - waf-utils_src_configure ${myconf[@]} -} - -multilib_src_compile() { - waf-utils_src_compile -} - -multilib_src_test() { - if multilib_is_native_abi ; then - "${WAF_BINARY}" test || die "Test failed" - fi -} - -multilib_src_install() { - waf-utils_src_install - - # Make all .so files executable - find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die - # smbspool_krb5_wrapper must only be accessible to root, bug #880739 - find "${ED}" -type f -name "smbspool_krb5_wrapper" -exec chmod go-rwx {} + || die - - # Remove empty runtime dirs created by build system (bug #892341) - find "${ED}"/{run,var} -type d -empty -delete || die - - if multilib_is_native_abi ; then - # Install ldap schema for server (bug #491002) - if use ldap ; then - insinto /etc/openldap/schema - doins examples/LDAP/samba.schema - fi - - # Create symlink for cups (bug #552310) - if use cups ; then - dosym ../../../bin/smbspool \ - /usr/libexec/cups/backend/smb - fi - - # Install example config file - insinto /etc/samba - doins examples/smb.conf.default - - # Fix paths in example file (bug #603964) - sed \ - -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \ - -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \ - -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \ - -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \ - -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \ - -i "${ED}"/etc/samba/smb.conf.default || die - - # Install init script and conf.d file - newinitd "${CONFDIR}/samba4.initd-r1" samba - newconfd "${CONFDIR}/samba4.confd" samba - - dotmpfiles "${FILESDIR}"/samba.conf - if ! use addc ; then - rm "${D}/$(systemd_get_systemunitdir)/samba.service" \ - || die - fi - - # Preserve functionality for old gentoo-specific unit names - dosym nmb.service "$(systemd_get_systemunitdir)/nmbd.service" - dosym smb.service "$(systemd_get_systemunitdir)/smbd.service" - dosym winbind.service "$(systemd_get_systemunitdir)/winbindd.service" - - use python && python_optimize - fi - - if use pam && use winbind ; then - newpamd "${CONFDIR}/system-auth-winbind.pam" system-auth-winbind - # bugs #376853 and #590374 - insinto /etc/security - doins examples/pam_winbind/pam_winbind.conf - fi -} - -pkg_postinst() { - tmpfiles_process samba.conf -} diff --git a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.22.4.ebuild b/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.22.4.ebuild deleted file mode 100644 index 6e443b4b490..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.22.4.ebuild +++ /dev/null @@ -1,389 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{11..13} ) -PYTHON_REQ_USE="threads(+),xml(+)" -inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info systemd pam tmpfiles - -DESCRIPTION="Samba Suite Version 4" -HOMEPAGE="https://samba.org/" - -MY_PV="${PV/_rc/rc}" -MY_P="${PN}-${MY_PV}" -if [[ ${PV} == *_rc* ]]; then - SRC_URI="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz" -else - SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" -fi -S="${WORKDIR}/${MY_P}" - -LICENSE="GPL-3" -SLOT="0/2.10.0" -IUSE="acl addc ads ceph client cluster cups debug fam glusterfs gpg" -IUSE+=" iprint json ldap llvm-libunwind lmdb pam profiling-data python quota" -IUSE+=" +regedit selinux snapper spotlight syslog system-heimdal +system-mitkrb5" -IUSE+=" systemd test unwind winbind zeroconf" - -# ldap needs ads (bug #941578) -REQUIRED_USE="${PYTHON_REQUIRED_USE} - addc? ( json python !system-mitkrb5 winbind ) - ads? ( acl ldap python winbind ) - cluster? ( ads ) - gpg? ( addc ) - ldap? ( ads ) - spotlight? ( json ) - test? ( python ) - !ads? ( !addc ) - ?? ( system-heimdal system-mitkrb5 ) -" - -# the test suite is messed, it uses system-installed samba -# bits instead of what was built, tests things disabled via use -# flags, and generally just fails to work in a way ebuilds could -# rely on in its current state -RESTRICT="test" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/samba-4.0/policy.h - /usr/include/samba-4.0/dcerpc_server.h - /usr/include/samba-4.0/ctdb.h - /usr/include/samba-4.0/ctdb_client.h - /usr/include/samba-4.0/ctdb_protocol.h - /usr/include/samba-4.0/ctdb_private.h - /usr/include/samba-4.0/ctdb_typesafe_cb.h - /usr/include/samba-4.0/ctdb_version.h -) - -TALLOC_VERSION="2.4.3" -TDB_VERSION="1.4.13" -TEVENT_VERSION="0.16.2" - -COMMON_DEPEND=" - >=app-arch/libarchive-3.1.2:=[${MULTILIB_USEDEP}] - dev-lang/perl:= - dev-libs/icu:=[${MULTILIB_USEDEP}] - dev-libs/libbsd[${MULTILIB_USEDEP}] - dev-libs/libtasn1:=[${MULTILIB_USEDEP}] - dev-libs/popt[${MULTILIB_USEDEP}] - dev-perl/Parse-Yapp - >=net-libs/gnutls-3.4.7:=[${MULTILIB_USEDEP}] - >=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}] - !sys-libs/ldb - sys-libs/libcap[${MULTILIB_USEDEP}] - sys-libs/liburing:=[${MULTILIB_USEDEP}] - sys-libs/ncurses:= - sys-libs/readline:= - >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}] - >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}] - >=sys-libs/tevent-${TEVENT_VERSION}[${MULTILIB_USEDEP}] - virtual/zlib:=[${MULTILIB_USEDEP}] - virtual/libcrypt:=[${MULTILIB_USEDEP}] - virtual/libiconv - $(python_gen_cond_dep ' - addc? ( - dev-python/dnspython:=[${PYTHON_USEDEP}] - dev-python/markdown[${PYTHON_USEDEP}] - ) - ads? ( - dev-python/dnspython:=[${PYTHON_USEDEP}] - net-dns/bind[gssapi] - ) - ') - acl? ( virtual/acl ) - ceph? ( sys-cluster/ceph ) - cluster? ( net-libs/rpcsvc-proto ) - cups? ( net-print/cups ) - debug? ( dev-util/lttng-ust ) - fam? ( virtual/fam ) - gpg? ( app-crypt/gpgme:= ) - json? ( dev-libs/jansson:= ) - ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] ) - lmdb? ( >=dev-db/lmdb-0.9.16:=[${MULTILIB_USEDEP}] ) - pam? ( sys-libs/pam ) - python? ( - sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}] - ) - snapper? ( sys-apps/dbus ) - system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl(-),${MULTILIB_USEDEP}] ) - system-mitkrb5? ( >=app-crypt/mit-krb5-1.19[${MULTILIB_USEDEP}] ) - !system-heimdal? ( !system-mitkrb5? ( sys-apps/keyutils[${MULTILIB_USEDEP}] ) ) - systemd? ( sys-apps/systemd:= ) - unwind? ( - llvm-libunwind? ( llvm-runtimes/libunwind:= ) - !llvm-libunwind? ( sys-libs/libunwind:= ) - ) - zeroconf? ( net-dns/avahi[dbus] ) -" -DEPEND="${COMMON_DEPEND} - dev-perl/JSON - net-libs/libtirpc[${MULTILIB_USEDEP}] - net-libs/rpcsvc-proto - spotlight? ( dev-libs/glib ) - test? ( - >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}] - $(python_gen_cond_dep "dev-python/python-subunit[\${PYTHON_USEDEP},${MULTILIB_USEDEP}]" ) - !system-mitkrb5? ( - >=net-dns/resolv_wrapper-1.1.4 - >=net-libs/socket_wrapper-1.1.9 - >=sys-libs/nss_wrapper-1.1.3 - >=sys-libs/uid_wrapper-1.2.1 - ) - )" -RDEPEND="${COMMON_DEPEND} - client? ( net-fs/cifs-utils[ads?] ) - python? ( ${PYTHON_DEPS} ) - selinux? ( sec-policy/selinux-samba ) -" -BDEPEND="${PYTHON_DEPS} - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}"/${PN}-4.18.4-pam.patch - "${FILESDIR}"/ldb-2.5.2-skip-wav-tevent-check.patch -) - -CONFDIR="${FILESDIR}/4.4" -WAF_BINARY="${S}/buildtools/bin/waf" -SHAREDMODS="" - -pkg_setup() { - # Package fails to build with distcc - export DISTCC_DISABLE=1 - export PYTHONHASHSEED=1 - - python-single-r1_pkg_setup - - SHAREDMODS="$(usev !snapper '!')vfs_snapper" - if use cluster ; then - SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad" - elif use ads ; then - SHAREDMODS+=",idmap_ad" - fi -} - -check_samba_dep_versions() { - actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die) - if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then - eerror "Source talloc version: ${TALLOC_VERSION}" - eerror "Ebuild talloc version: ${actual_talloc_version}" - die "Ebuild needs to fix TALLOC_VERSION!" - fi - - actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tdb/wscript || die) - if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then - eerror "Source tdb version: ${TDB_VERSION}" - eerror "Ebuild tdb version: ${actual_tdb_version}" - die "Ebuild needs to fix TDB_VERSION!" - fi - - actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tevent/wscript || die) - if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then - eerror "Source tevent version: ${TEVENT_VERSION}" - eerror "Ebuild tevent version: ${actual_tevent_version}" - die "Ebuild needs to fix TEVENT_VERSION!" - fi -} - -src_prepare() { - default - - check_samba_dep_versions - - # Unbundle dnspython - sed -i -e '/"dns.resolver":/d' "${S}"/third_party/wscript || die - - # Unbundle iso8601 unless tests are enabled - if ! use test ; then - sed -i -e '/"iso8601":/d' "${S}"/third_party/wscript || die - fi - - # Ugly hackaround for bug #592502 - #cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die - - # bug #943942 - append-cflags -std=gnu17 - - # WAF - multilib_copy_sources -} - -multilib_src_configure() { - # When specifying libs for samba build you must append NONE to the end to - # stop it automatically including things - local bundled_libs="NONE" - if ! use system-heimdal && ! use system-mitkrb5 ; then - bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE" - fi - - # We "use" bundled cmocka when we're not running tests as we're - # not using it anyway. Means we avoid making users install it for - # no reason. bug #802531 - if ! use test ; then - bundled_libs="cmocka,${bundled_libs}" - fi - - # bug #874633 - if use llvm-libunwind ; then - mkdir -p "${T}"/${ABI}/pkgconfig || die - - local -x PKG_CONFIG_PATH="${T}/${ABI}/pkgconfig:${PKG_CONFIG_PATH}" - - cat <<-EOF > "${T}"/${ABI}/pkgconfig/libunwind-generic.pc || die - exec_prefix=\${prefix} - libdir=/usr/$(get_libdir) - includedir=\${prefix}/include - - Name: libunwind-generic - Description: libunwind generic library - Version: 1.70 - Libs: -L\${libdir} -lunwind - Cflags: -I\${includedir} - EOF - fi - - local myconf=( - --enable-fhs - --sysconfdir="${EPREFIX}/etc" - --localstatedir="${EPREFIX}/var" - --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba" - --with-piddir="${EPREFIX}/run/${PN}" - --bundled-libraries="${bundled_libs}" - --builtin-libraries=NONE - --disable-rpath - --disable-rpath-install - --nopyc - --nopyo - --without-winexe - $(multilib_native_use_with acl acl-support) - $(multilib_native_usex addc '' '--without-ad-dc') - $(multilib_native_use_enable ceph cephfs) - $(multilib_native_use_with cluster cluster-support) - $(multilib_native_use_enable cups) - --without-dmapi - $(multilib_native_use_with fam) - $(multilib_native_use_enable glusterfs) - $(multilib_native_use_with gpg gpgme) - $(multilib_native_use_with json) - $(multilib_native_use_enable iprint) - $(multilib_native_use_with pam) - $(multilib_native_usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '') - $(multilib_native_use_with quota quotas) - $(multilib_native_use_with regedit) - $(multilib_native_use_enable spotlight) - $(multilib_native_use_with syslog) - $(multilib_native_use_with systemd) - --systemd-install-services - --with-systemddir="$(systemd_get_systemunitdir)" - $(multilib_native_use_with unwind libunwind) - $(multilib_native_use_with winbind) - $(multilib_native_usex python '' '--disable-python') - $(multilib_native_use_enable zeroconf avahi) - $(multilib_native_usex test '--enable-selftest' '') - $(usev system-mitkrb5 "--with-system-mitkrb5 ${ESYSROOT}/usr $(multilib_native_usex addc --with-experimental-mit-ad-dc '')") - $(use_with ads) - $(use_with debug lttng) - $(use_with ldap) - $(use_with profiling-data) - --private-libraries='!ldb' - $(usex lmdb '' --without-ldb-lmdb) - # bug #683148 - --jobs 1 - ) - - if multilib_is_native_abi ; then - myconf+=( --with-shared-modules=${SHAREDMODS} ) - else - myconf+=( --with-shared-modules=DEFAULT,!vfs_snapper ) - fi - - append-ldflags $(test-flags-CCLD -Wl,--undefined-version) # bug 914898 - - append-cppflags "-I${ESYSROOT}/usr/include/et" - - waf-utils_src_configure ${myconf[@]} -} - -multilib_src_compile() { - waf-utils_src_compile -} - -multilib_src_test() { - if multilib_is_native_abi ; then - "${WAF_BINARY}" test || die "Test failed" - fi -} - -multilib_src_install() { - waf-utils_src_install - - # Make all .so files executable - find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die - # smbspool_krb5_wrapper must only be accessible to root, bug #880739 - find "${ED}" -type f -name "smbspool_krb5_wrapper" -exec chmod go-rwx {} + || die - - # Remove empty runtime dirs created by build system (bug #892341) - find "${ED}"/{run,var} -type d -empty -delete || die - - if multilib_is_native_abi ; then - # Install ldap schema for server (bug #491002) - if use ldap ; then - insinto /etc/openldap/schema - doins examples/LDAP/samba.schema - fi - - # Create symlink for cups (bug #552310) - if use cups ; then - dosym ../../../bin/smbspool \ - /usr/libexec/cups/backend/smb - fi - - # Install example config file - insinto /etc/samba - doins examples/smb.conf.default - - # Fix paths in example file (bug #603964) - sed \ - -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \ - -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \ - -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \ - -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \ - -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \ - -i "${ED}"/etc/samba/smb.conf.default || die - - # Install init script and conf.d file - newinitd "${CONFDIR}/samba4.initd-r1" samba - newconfd "${CONFDIR}/samba4.confd" samba - - dotmpfiles "${FILESDIR}"/samba.conf - if ! use addc ; then - rm "${D}/$(systemd_get_systemunitdir)/samba.service" \ - || die - fi - - # Preserve functionality for old gentoo-specific unit names - dosym nmb.service "$(systemd_get_systemunitdir)/nmbd.service" - dosym smb.service "$(systemd_get_systemunitdir)/smbd.service" - dosym winbind.service "$(systemd_get_systemunitdir)/winbindd.service" - - use python && python_optimize - fi - - if use pam && use winbind ; then - newpamd "${CONFDIR}/system-auth-winbind.pam" system-auth-winbind - # bugs #376853 and #590374 - insinto /etc/security - doins examples/pam_winbind/pam_winbind.conf - fi -} - -pkg_postinst() { - tmpfiles_process samba.conf -} diff --git a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.22.6.ebuild b/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.22.8.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.22.6.ebuild rename to sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.22.8.ebuild index 4d410b5527b..59f7231f761 100644 --- a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.22.6.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.22.8.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 PYTHON_COMPAT=( python3_{11..13} ) PYTHON_REQ_USE="threads(+),xml(+)" -inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info systemd pam tmpfiles +inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info optfeature systemd pam tmpfiles DESCRIPTION="Samba Suite Version 4" HOMEPAGE="https://samba.org/" @@ -390,4 +390,8 @@ multilib_src_install() { pkg_postinst() { tmpfiles_process samba.conf + + if use addc || use ads ; then + optfeature "Hide passwords from command line when using samba-tool or samba-gpupdate" dev-python/setproctitle + fi } diff --git a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.23.3.ebuild b/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.23.5-r1.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.23.3.ebuild rename to sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.23.5-r1.ebuild index 288ddd8e855..8ed59ab9e8b 100644 --- a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.23.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.23.5-r1.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 PYTHON_COMPAT=( python3_{11..14} ) PYTHON_REQ_USE="threads(+),xml(+)" -inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info systemd pam tmpfiles +inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info optfeature systemd pam tmpfiles DESCRIPTION="Samba Suite Version 4" HOMEPAGE="https://samba.org/" @@ -70,7 +70,7 @@ COMMON_DEPEND=" dev-libs/popt[${MULTILIB_USEDEP}] dev-perl/Parse-Yapp >=net-libs/gnutls-3.4.7:=[${MULTILIB_USEDEP}] - >=net-libs/ngtcp2-1.12.0[${MULTILIB_USEDEP}] + >=net-libs/ngtcp2-1.12.0[gnutls,${MULTILIB_USEDEP}] >=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}] !sys-libs/ldb sys-libs/libcap[${MULTILIB_USEDEP}] @@ -393,4 +393,8 @@ multilib_src_install() { pkg_postinst() { tmpfiles_process samba.conf + + if use addc || use ads ; then + optfeature "Hide passwords from command line when using samba-tool or samba-gpupdate" dev-python/setproctitle + fi } diff --git a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.23.0.ebuild b/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.23.6.ebuild similarity index 96% rename from sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.23.0.ebuild rename to sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.23.6.ebuild index 6c3ef48d1e4..8ed59ab9e8b 100644 --- a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.23.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.23.6.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PYTHON_COMPAT=( python3_{11..13} ) +PYTHON_COMPAT=( python3_{11..14} ) PYTHON_REQ_USE="threads(+),xml(+)" -inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info systemd pam tmpfiles +inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info optfeature systemd pam tmpfiles DESCRIPTION="Samba Suite Version 4" HOMEPAGE="https://samba.org/" @@ -70,7 +70,7 @@ COMMON_DEPEND=" dev-libs/popt[${MULTILIB_USEDEP}] dev-perl/Parse-Yapp >=net-libs/gnutls-3.4.7:=[${MULTILIB_USEDEP}] - >=net-libs/ngtcp2-1.12.0[${MULTILIB_USEDEP}] + >=net-libs/ngtcp2-1.12.0[gnutls,${MULTILIB_USEDEP}] >=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}] !sys-libs/ldb sys-libs/libcap[${MULTILIB_USEDEP}] @@ -85,11 +85,15 @@ COMMON_DEPEND=" virtual/libiconv $(python_gen_cond_dep ' addc? ( + dev-python/cryptography[${PYTHON_USEDEP}] dev-python/dnspython:=[${PYTHON_USEDEP}] dev-python/markdown[${PYTHON_USEDEP}] + net-dns/bind[gssapi] ) ads? ( + dev-python/cryptography[${PYTHON_USEDEP}] dev-python/dnspython:=[${PYTHON_USEDEP}] + dev-python/markdown[${PYTHON_USEDEP}] net-dns/bind[gssapi] ) ') @@ -389,4 +393,8 @@ multilib_src_install() { pkg_postinst() { tmpfiles_process samba.conf + + if use addc || use ads ; then + optfeature "Hide passwords from command line when using samba-tool or samba-gpupdate" dev-python/setproctitle + fi } diff --git a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.23.2-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.24.0_rc1.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.23.2-r1.ebuild rename to sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.24.0_rc1.ebuild index 288ddd8e855..78176df313c 100644 --- a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.23.2-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.24.0_rc1.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 PYTHON_COMPAT=( python3_{11..14} ) PYTHON_REQ_USE="threads(+),xml(+)" -inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info systemd pam tmpfiles +inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info optfeature systemd pam tmpfiles DESCRIPTION="Samba Suite Version 4" HOMEPAGE="https://samba.org/" @@ -57,8 +57,8 @@ MULTILIB_WRAPPED_HEADERS=( /usr/include/samba-4.0/ctdb_version.h ) -TALLOC_VERSION="2.4.3" -TDB_VERSION="1.4.14" +TALLOC_VERSION="2.4.4" +TDB_VERSION="1.4.15" TEVENT_VERSION="0.17.1" COMMON_DEPEND=" @@ -393,4 +393,8 @@ multilib_src_install() { pkg_postinst() { tmpfiles_process samba.conf + + if use addc || use ads ; then + optfeature "Hide passwords from command line when using samba-tool or samba-gpupdate" dev-python/setproctitle + fi } diff --git a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.21.10.ebuild b/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.24.0_rc3.ebuild similarity index 94% rename from sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.21.10.ebuild rename to sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.24.0_rc3.ebuild index 659c7cd530d..789db2de9ad 100644 --- a/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.21.10.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-fs/samba/samba-4.24.0_rc3.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PYTHON_COMPAT=( python3_{11..13} ) +PYTHON_COMPAT=( python3_{11..14} ) PYTHON_REQ_USE="threads(+),xml(+)" -inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info systemd pam tmpfiles +inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info optfeature systemd pam tmpfiles DESCRIPTION="Samba Suite Version 4" HOMEPAGE="https://samba.org/" @@ -16,12 +16,12 @@ if [[ ${PV} == *_rc* ]]; then SRC_URI="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz" else SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" + KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" fi S="${WORKDIR}/${MY_P}" LICENSE="GPL-3" -SLOT="0/2.10.0" +SLOT="0/2.11.0" IUSE="acl addc ads ceph client cluster cups debug fam glusterfs gpg" IUSE+=" iprint json ldap llvm-libunwind lmdb pam profiling-data python quota" IUSE+=" +regedit selinux snapper spotlight syslog system-heimdal +system-mitkrb5" @@ -57,9 +57,9 @@ MULTILIB_WRAPPED_HEADERS=( /usr/include/samba-4.0/ctdb_version.h ) -TALLOC_VERSION="2.4.2" -TDB_VERSION="1.4.12" -TEVENT_VERSION="0.16.1" +TALLOC_VERSION="2.4.4" +TDB_VERSION="1.4.15" +TEVENT_VERSION="0.17.1" COMMON_DEPEND=" >=app-arch/libarchive-3.1.2:=[${MULTILIB_USEDEP}] @@ -70,6 +70,7 @@ COMMON_DEPEND=" dev-libs/popt[${MULTILIB_USEDEP}] dev-perl/Parse-Yapp >=net-libs/gnutls-3.4.7:=[${MULTILIB_USEDEP}] + >=net-libs/ngtcp2-1.12.0[gnutls,${MULTILIB_USEDEP}] >=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}] !sys-libs/ldb sys-libs/libcap[${MULTILIB_USEDEP}] @@ -253,6 +254,8 @@ multilib_src_configure() { EOF fi + bundled_libs="libquic,${bundled_libs}" + local myconf=( --enable-fhs --sysconfdir="${EPREFIX}/etc" @@ -291,7 +294,7 @@ multilib_src_configure() { $(multilib_native_usex python '' '--disable-python') $(multilib_native_use_enable zeroconf avahi) $(multilib_native_usex test '--enable-selftest' '') - $(usev system-mitkrb5 "--with-system-mitkrb5 ${ESYSROOT}/usr $(multilib_native_usex addc --with-experimental-mit-ad-dc '')") + $(usev system-mitkrb5 "--with-system-mitkrb5 $(multilib_native_usex addc --with-experimental-mit-ad-dc '')") $(use_with ads) $(use_with debug lttng) $(use_with ldap) @@ -390,4 +393,8 @@ multilib_src_install() { pkg_postinst() { tmpfiles_process samba.conf + + if use addc || use ads ; then + optfeature "Hide passwords from command line when using samba-tool or samba-gpupdate" dev-python/setproctitle + fi } From 780d9c9e6538ad67326538cc403e6d8e9f701a42 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:22 +0000 Subject: [PATCH 171/291] net-libs/gnutls: Sync with Gentoo It's from Gentoo commit a0f115fddabd94adc287b1b582e5a17f59c89398. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/net-libs/gnutls/Manifest | 4 +-- .../net-libs/gnutls/gnutls-3.8.10-r1.ebuild | 8 +++-- .../net-libs/gnutls/gnutls-3.8.11.ebuild | 11 +++++-- ....8.9-r1.ebuild => gnutls-3.8.12-r1.ebuild} | 29 ++++++++++++------- ...tls-3.8.10.ebuild => gnutls-3.8.12.ebuild} | 16 +++++----- .../net-libs/gnutls/metadata.xml | 7 +++++ 6 files changed, 50 insertions(+), 25 deletions(-) rename sdk_container/src/third_party/portage-stable/net-libs/gnutls/{gnutls-3.8.9-r1.ebuild => gnutls-3.8.12-r1.ebuild} (82%) rename sdk_container/src/third_party/portage-stable/net-libs/gnutls/{gnutls-3.8.10.ebuild => gnutls-3.8.12.ebuild} (91%) diff --git a/sdk_container/src/third_party/portage-stable/net-libs/gnutls/Manifest b/sdk_container/src/third_party/portage-stable/net-libs/gnutls/Manifest index 3100e6b719b..b8983834579 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/gnutls/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-libs/gnutls/Manifest @@ -2,5 +2,5 @@ DIST gnutls-3.8.10.tar.xz 6909856 BLAKE2B 0b62e93b2818d2265ca11e561724547fa3c24d DIST gnutls-3.8.10.tar.xz.sig 566 BLAKE2B 32af044eb25978b752428d72a597f44457b6f3979d79e5b9e224523d6ef3bd213a0887960dddce84b97db78a9ebbbbd6b034adaa0dd7a1dd2d1db30527f5b42c SHA512 72d6dd2c23f768f5041c3dca0f49b3f60cd01fc960ce77f097094a2aae6d76fddeb6295c425e3750c711d5f700957a62268aecc4873e53c31abb60eecf0fd4a8 DIST gnutls-3.8.11.tar.xz 6939944 BLAKE2B 54ec3fb396187294ae59c65fa92a515175d8ab19d9f5656569b372b5764b3090724aaa8cedd9467b530f2c74e86a6bfd956d3bd9439a7b69656dcc24e303cbe6 SHA512 68f9e5bec3aa6686fd3319cc9c88a5cc44e2a75144049fc9de5fb55fef2241b4e16996af4be5dd48308abbee8cfaed6c862903f6bb89aff5dfa5410075bd7386 DIST gnutls-3.8.11.tar.xz.sig 566 BLAKE2B 411c166ae5daf58ec325a1f2b528cb40decff01bc78e30346394d7b9c88189b0c93891208045beac8d5e3f701e918b5a5bcf0914700396f391d024ff16266e5f SHA512 90883e5736299b103844ca42b85d371969ef66b50b60cb185e814ad9978598796e9ed07a590245ff28ac6ac084b1dee93fae0845576464583a5941835990957d -DIST gnutls-3.8.9.tar.xz 6847364 BLAKE2B 0fd4751e24649a9c4b8ee7616350a4b6a504ec10b3ef39b450af25abc4935f30df9e8f732435166516f89c692ac7cb7a0aafb76c4c86c1faff53119840d26ae7 SHA512 b3b201671bf4e75325610a0291d4cd36a669718e22b3685246b64bde97b5bd94f463ab376ed817869869714115f4ff11bdc53c32604bb04a8ff8e10daa6d1fc7 -DIST gnutls-3.8.9.tar.xz.sig 566 BLAKE2B 3e723c90186a00b33f1d036c564039f7340ae495400f05d31bb054dad93a9529be4761ba9f97b2df51e8483dd1433c902cf5b8f9bdc127d0f540c9faf82a8f1c SHA512 5a47a519ef35f21b59e2122528246d6109dd95667bfe5d01713b9a7efa2931f8523bf325b8824433f3117d63e0e50d66f8c467a7ee4bd2068ae039601a28441e +DIST gnutls-3.8.12.tar.xz 6949604 BLAKE2B ff326dddce464b366ab6e892b812a2e38b5ebd57b35627ce265e4eb3e5930e30fda82e584ec01339ef61a8a7704f5c772f13110046559537f3b667484054f728 SHA512 332a8e5200461517c7f08515e3aaab0bec6222747422e33e9e7d25d35613e3d0695a803fce226bd6a83f723054f551328bd99dcf0573e142be777dcf358e1a3b +DIST gnutls-3.8.12.tar.xz.sig 685 BLAKE2B d917f17dbdb344d504c6b68c2608b648d76e31663462e15646d9a678bac2aad8004173dbcb041215a34a9f2d10ed3784f49a6258be313aa8f8e4e8ab045b0703 SHA512 2774d809aae857fe9752c385d95864e834af55ac71ecd56cc1e914095e09641c20babb8082afa53fb6a350daf4f4b510e2eae1548529c5e248d91708f14bf8aa diff --git a/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.10-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.10-r1.ebuild index bded588c414..1a2ec23653a 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.10-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.10-r1.ebuild @@ -1,10 +1,10 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnutls.asc -inherit libtool multilib-minimal verify-sig +inherit dot-a libtool multilib-minimal verify-sig DESCRIPTION="A secure communications library implementing the SSL, TLS and DTLS protocols" HOMEPAGE="https://www.gnutls.org/" @@ -97,6 +97,8 @@ src_prepare() { } multilib_src_configure() { + use static-libs && lto-guarantee-fat + LINGUAS="${LINGUAS//en/en@boldquot en@quot}" local libconf=() @@ -160,6 +162,8 @@ multilib_src_install_all() { einstalldocs find "${ED}" -type f -name '*.la' -delete || die + use static-libs && strip-lto-bytecode + if use examples; then docinto examples dodoc doc/examples/*.c diff --git a/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.11.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.11.ebuild index 6663d49a15a..1eb9ab071e1 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.11.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.11.ebuild @@ -4,7 +4,7 @@ EAPI=8 VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnutls.asc -inherit libtool multilib-minimal verify-sig +inherit dot-a libtool multilib-minimal verify-sig DESCRIPTION="Secure communications library implementing the SSL, TLS and DTLS protocols" HOMEPAGE="https://www.gnutls.org/" @@ -18,7 +18,8 @@ LICENSE="GPL-3 LGPL-2.1+" # <libgnutls.so number>.<libgnutlsxx.so number> SLOT="0/30.30" KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" -IUSE="brotli +cxx dane doc examples +idn nls +openssl pkcs11 sslv2 sslv3 static-libs test test-full +tls-heartbeat tools zlib zstd" +IUSE="brotli +cxx dane doc examples +idn nls +openssl pkcs11 sslv2 sslv3" +IUSE+=" systemtap static-libs test test-full +tls-heartbeat tools zlib zstd" REQUIRED_USE="test-full? ( cxx dane doc examples idn nls openssl pkcs11 tls-heartbeat tools )" RESTRICT="!test? ( test )" @@ -38,6 +39,7 @@ RDEPEND=" DEPEND=" ${RDEPEND} test-full? ( sys-libs/libseccomp ) + systemtap? ( dev-debug/systemtap ) " BDEPEND=" dev-build/gtk-doc-am @@ -91,6 +93,8 @@ src_prepare() { } multilib_src_configure() { + use static-libs && lto-guarantee-fat + LINGUAS="${LINGUAS//en/en@boldquot en@quot}" local libconf=() @@ -128,6 +132,7 @@ multilib_src_configure() { $(use_enable sslv2 ssl2-support) $(use_enable sslv3 ssl3-support) $(use_enable static-libs static) + $(use_enable systemtap crypto-auditing) $(use_enable tls-heartbeat heartbeat-support) $(use_with brotli '' link) $(use_with idn) @@ -154,6 +159,8 @@ multilib_src_install_all() { einstalldocs find "${ED}" -type f -name '*.la' -delete || die + use static-libs && strip-lto-bytecode + if use examples; then docinto examples dodoc doc/examples/*.c diff --git a/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.9-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.12-r1.ebuild similarity index 82% rename from sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.9-r1.ebuild rename to sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.12-r1.ebuild index 9a7f3cfc804..e2ab7ba61cc 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.9-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.12-r1.ebuild @@ -1,12 +1,12 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnutls.asc -inherit autotools multilib-minimal verify-sig +inherit libtool multilib-minimal verify-sig -DESCRIPTION="A secure communications library implementing the SSL, TLS and DTLS protocols" +DESCRIPTION="Secure communications library implementing the SSL, TLS and DTLS protocols" HOMEPAGE="https://www.gnutls.org/" SRC_URI="mirror://gnupg/gnutls/v$(ver_cut 1-2)/${P}.tar.xz" SRC_URI+=" verify-sig? ( mirror://gnupg/gnutls/v$(ver_cut 1-2)/${P}.tar.xz.sig )" @@ -17,12 +17,12 @@ LICENSE="GPL-3 LGPL-2.1+" # Subslot format: # <libgnutls.so number>.<libgnutlsxx.so number> SLOT="0/30.30" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" -IUSE="brotli +cxx dane doc examples +idn nls +openssl pkcs11 sslv2 sslv3 static-libs test test-full +tls-heartbeat tools zlib zstd" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~m68k ~riscv ~s390 ~x86" +IUSE="brotli +cxx dane doc examples +idn nls +openssl pkcs11 +post-quantum sslv2 sslv3" +IUSE+=" systemtap static-libs test test-full +tls-heartbeat tools zlib zstd" REQUIRED_USE="test-full? ( cxx dane doc examples idn nls openssl pkcs11 tls-heartbeat tools )" RESTRICT="!test? ( test )" -# >=nettle-3.10 as a workaround for bug #936011 RDEPEND=" >=dev-libs/libtasn1-4.9:=[${MULTILIB_USEDEP}] dev-libs/libunistring:=[${MULTILIB_USEDEP}] @@ -32,6 +32,7 @@ RDEPEND=" dane? ( >=net-dns/unbound-1.4.20:=[${MULTILIB_USEDEP}] ) nls? ( >=virtual/libintl-0-r1:=[${MULTILIB_USEDEP}] ) pkcs11? ( >=app-crypt/p11-kit-0.23.1[${MULTILIB_USEDEP}] ) + post-quantum? ( >=dev-libs/leancrypto-1.2.0:=[${MULTILIB_USEDEP}] ) idn? ( >=net-dns/libidn2-0.16-r1:=[${MULTILIB_USEDEP}] ) zlib? ( virtual/zlib:=[${MULTILIB_USEDEP}] ) zstd? ( >=app-arch/zstd-1.3.0:=[${MULTILIB_USEDEP}] ) @@ -39,6 +40,7 @@ RDEPEND=" DEPEND=" ${RDEPEND} test-full? ( sys-libs/libseccomp ) + systemtap? ( dev-debug/systemtap ) " BDEPEND=" dev-build/gtk-doc-am @@ -79,11 +81,16 @@ src_prepare() { # fails to compile in certain configurations sed -i -e 's/__APPLE__/__NO_APPLE__/' lib/system/certs.c || die - # Use sane .so versioning on FreeBSD. - #elibtoolize + # Fails with some combinations of USE="brotli zlib zstd" + # https://gitlab.com/gnutls/gnutls/-/issues/1721 + # https://gitlab.com/gnutls/gnutls/-/merge_requests/1980 + cat <<-EOF > tests/system-override-compress-cert.sh || die + #!/bin/sh + exit 77 + EOF + chmod +x tests/system-override-compress-cert.sh || die - # Switch back to elibtoolize after 3.8.7.1 - eautoreconf + elibtoolize } multilib_src_configure() { @@ -124,10 +131,12 @@ multilib_src_configure() { $(use_enable sslv2 ssl2-support) $(use_enable sslv3 ssl3-support) $(use_enable static-libs static) + $(use_enable systemtap crypto-auditing) $(use_enable tls-heartbeat heartbeat-support) $(use_with brotli '' link) $(use_with idn) $(use_with pkcs11 p11-kit) + $(use_with post-quantum leancrypto) $(use_with zlib '' link) $(use_with zstd '' link) --disable-rpath diff --git a/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.10.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.12.ebuild similarity index 91% rename from sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.10.ebuild rename to sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.12.ebuild index 39988f5ddd9..ba661e2a370 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.10.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.12.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -6,7 +6,7 @@ EAPI=8 VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnutls.asc inherit libtool multilib-minimal verify-sig -DESCRIPTION="A secure communications library implementing the SSL, TLS and DTLS protocols" +DESCRIPTION="Secure communications library implementing the SSL, TLS and DTLS protocols" HOMEPAGE="https://www.gnutls.org/" SRC_URI="mirror://gnupg/gnutls/v$(ver_cut 1-2)/${P}.tar.xz" SRC_URI+=" verify-sig? ( mirror://gnupg/gnutls/v$(ver_cut 1-2)/${P}.tar.xz.sig )" @@ -17,12 +17,12 @@ LICENSE="GPL-3 LGPL-2.1+" # Subslot format: # <libgnutls.so number>.<libgnutlsxx.so number> SLOT="0/30.30" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" -IUSE="brotli +cxx dane doc examples +idn nls +openssl pkcs11 sslv2 sslv3 static-libs test test-full +tls-heartbeat tools zlib zstd" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="brotli +cxx dane doc examples +idn nls +openssl pkcs11 sslv2 sslv3" +IUSE+=" systemtap static-libs test test-full +tls-heartbeat tools zlib zstd" REQUIRED_USE="test-full? ( cxx dane doc examples idn nls openssl pkcs11 tls-heartbeat tools )" RESTRICT="!test? ( test )" -# >=nettle-3.10 as a workaround for bug #936011 RDEPEND=" >=dev-libs/libtasn1-4.9:=[${MULTILIB_USEDEP}] dev-libs/libunistring:=[${MULTILIB_USEDEP}] @@ -39,6 +39,7 @@ RDEPEND=" DEPEND=" ${RDEPEND} test-full? ( sys-libs/libseccomp ) + systemtap? ( dev-debug/systemtap ) " BDEPEND=" dev-build/gtk-doc-am @@ -66,10 +67,6 @@ QA_CONFIG_IMPL_DECL_SKIP=( static_assert ) -PATCHES=( - "${FILESDIR}"/${PN}-3.8.10-tests.patch -) - src_prepare() { default @@ -133,6 +130,7 @@ multilib_src_configure() { $(use_enable sslv2 ssl2-support) $(use_enable sslv3 ssl3-support) $(use_enable static-libs static) + $(use_enable systemtap crypto-auditing) $(use_enable tls-heartbeat heartbeat-support) $(use_with brotli '' link) $(use_with idn) diff --git a/sdk_container/src/third_party/portage-stable/net-libs/gnutls/metadata.xml b/sdk_container/src/third_party/portage-stable/net-libs/gnutls/metadata.xml index f20c3639775..ab38d4a5b3c 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/gnutls/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/net-libs/gnutls/metadata.xml @@ -15,6 +15,10 @@ <flag name="pkcs11"> Add support for PKCS#11 through <pkg>app-crypt/p11-kit</pkg> </flag> + <flag name="post-quantum"> + Support post-quantum cryptography (PQC) using + <pkg>dev-libs/leancrypto</pkg>. + </flag> <flag name="tools"> Build cli tools such as gnutls-cli, certtool and oscptool </flag> @@ -27,6 +31,9 @@ <flag name="sslv3"> Support for the old/insecure SSLv3 protocol </flag> + <flag name="systemtap"> + Support crypto-auditing probes via <pkg>dev-debug/systemtap</pkg> + </flag> <flag name="test-full"> Enable full test mode </flag> From 44a8684ffa383384a46e58d4599fbadf4e2e1fb2 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:24 +0000 Subject: [PATCH 172/291] net-libs/libnetfilter_conntrack: Sync with Gentoo It's from Gentoo commit 791024f67c2fd9a9f2c228a98315630b7800850e. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../net-libs/libnetfilter_conntrack/Manifest | 4 +- ...er_conntrack-1.0.9-configure-clang16.patch | 16 ------- .../libnetfilter_conntrack-1.0.9-musl.patch | 46 ------------------- ...ld => libnetfilter_conntrack-1.1.1.ebuild} | 41 ++++++++--------- 4 files changed, 22 insertions(+), 85 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/files/libnetfilter_conntrack-1.0.9-configure-clang16.patch delete mode 100644 sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/files/libnetfilter_conntrack-1.0.9-musl.patch rename sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/{libnetfilter_conntrack-1.0.9-r1.ebuild => libnetfilter_conntrack-1.1.1.ebuild} (58%) diff --git a/sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/Manifest b/sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/Manifest index 5e9abfb7ca4..7d15cac6bc6 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/Manifest @@ -1,4 +1,4 @@ -DIST libnetfilter_conntrack-1.0.9.tar.bz2 373177 BLAKE2B 701393338a0bf852b97d80a1e4ab078dea741f7181246b3dafcbe8cff287b5b9fae72c1c50867ea71baab83fa842471b2c7054fb4702bf35900a352078de8f3a SHA512 e8b03425aaba3b72e6034c215656c34176d0550c08e0455aaeb1365d9141505d0c4feaa8978c8ccf2b7af9db6c9e874ceb866347e533b41cb03a189884f4004c -DIST libnetfilter_conntrack-1.0.9.tar.bz2.sig 566 BLAKE2B 0f80f00858093ed5e9aac190fbb1ac5ac1dde60e6767b65adda49ed79fb7fb6cc7caea51793d8930a927d9b7a75d263851dd5741d6d408a8b56d3ea5b73da20e SHA512 83ed38f68bd38cf70d9c245a7f17373751ff9099ceff3066812b282b7426edf2eee79da8f5aea896b119327059008ff4a531b3dfdcd79d49944bea4079e67e1f DIST libnetfilter_conntrack-1.1.0.tar.xz 340332 BLAKE2B e1f8342b4edcbd81ab9995c9ac37818006c710f890b85120e5225936163d8ac24b5a487b468cb9f98cf3c86ab3534e1a9fc866b06633c82eb9bd81d0caf2ffa1 SHA512 5435f45b61e4e13b63b4a39f0c34fb0b59d2eed1e5dc182bc91369b72df54f5a555c111223f4f4a786a2c47dd5c6efd97205b8dca2f522e28d9d54035f928882 DIST libnetfilter_conntrack-1.1.0.tar.xz.sig 566 BLAKE2B ed377a2e9cf3a02f47f79c0066b333ccea6eb7fe826cd37b4b0f6d57224d62ba131157016d984ccab6b02be654c47a12b04bce0c2e7de3f935f483b1ae388dea SHA512 b3125d49976d2475e942f74bb3e57632b6643af6f65ea394a71d091759723d4f1220c6cd6116a7820e2c91069883898ad84e9c77355328e71b47906db8501cbe +DIST libnetfilter_conntrack-1.1.1.tar.xz 313396 BLAKE2B 5b49c2b27b268fdce964767dc7ef1c87edeadcee4102103bc7045e98d27675b41a03dd707fceb53ea14e73951273398231d04e9f72f138911158c7d55d2135f5 SHA512 47b7e1c187c9d1ec52777ba08d636a8178f811816b7d5eae28ef7680e2d4516428445572e655a2b60e8f3af1c6788268cfa16532e4a2ba761f8ba55bb3969870 +DIST libnetfilter_conntrack-1.1.1.tar.xz.sig 566 BLAKE2B 968a2277ecb66e80b2ffb4945cb15d0a333bf313286e04af9903515db7389f6015ce8f1ce9e2124bb4f8544c686d6a7cc365c557ae3534ef0f0bd4a76535ccf7 SHA512 0488e2a08da43c1e3df15a6d907846f2857211820fc010004953abe9dfa9d659d7b13ac87af92b00810c69feec85552e2f3f0e59c756d56e26540806795e5389 diff --git a/sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/files/libnetfilter_conntrack-1.0.9-configure-clang16.patch b/sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/files/libnetfilter_conntrack-1.0.9-configure-clang16.patch deleted file mode 100644 index 7bb4a34765a..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/files/libnetfilter_conntrack-1.0.9-configure-clang16.patch +++ /dev/null @@ -1,16 +0,0 @@ -https://bugzilla.netfilter.org/show_bug.cgi?id=1654 ---- a/configure.ac -+++ b/configure.ac -@@ -55,9 +55,9 @@ int main() - struct in6_addr addr6; - char buf[128]; - if (inet_ntop(AF_INET6, &addr6, buf, 128) == 0 && errno == EAFNOSUPPORT) -- exit(1); -+ return 1; - else -- exit(0); -+ return 0; - } - ]])],[ AC_MSG_RESULT(yes) - AC_DEFINE_UNQUOTED(HAVE_INET_NTOP_IPV6, 1, [Define to 1 if inet_ntop supports IPv6.]) - diff --git a/sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/files/libnetfilter_conntrack-1.0.9-musl.patch b/sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/files/libnetfilter_conntrack-1.0.9-musl.patch deleted file mode 100644 index e1ce87df4e8..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/files/libnetfilter_conntrack-1.0.9-musl.patch +++ /dev/null @@ -1,46 +0,0 @@ -https://git.netfilter.org/libnetfilter_conntrack/patch/?id=21ee35dde73aec5eba35290587d479218c6dd824 - -From: Robert Marko <robimarko@gmail.com> -Date: Thu, 24 Feb 2022 15:01:11 +0100 -Subject: conntrack: fix build with kernel 5.15 and musl - -Currently, with kernel 5.15 headers and musl building is failing with -redefinition errors due to a conflict between the kernel and musl headers. - -Musl is able to suppres the conflicting kernel header definitions if they -are included after the standard libc ones, however since ICMP definitions -were moved into a separate internal header to avoid duplication this has -stopped working and is breaking the builds. - -It seems that the issue is that <netinet/in.h> which contains the UAPI -suppression defines is included in the internal.h header and not in the -proto.h which actually includes the kernel ICMP headers and thus UAPI -supression defines are not present. - -Solve this by moving the <netinet/in.h> include before the ICMP kernel -includes in the proto.h - -Fixes: bc1cb4b11403 ("conntrack: Move icmp request>reply type mapping to common file") -Signed-off-by: Robert Marko <robimarko@gmail.com> -Signed-off-by: Florian Westphal <fw@strlen.de> ---- a/include/internal/internal.h -+++ b/include/internal/internal.h -@@ -14,7 +14,6 @@ - #include <arpa/inet.h> - #include <time.h> - #include <errno.h> --#include <netinet/in.h> - - #include <libnfnetlink/libnfnetlink.h> - #include <libnetfilter_conntrack/libnetfilter_conntrack.h> ---- a/include/internal/proto.h -+++ b/include/internal/proto.h -@@ -2,6 +2,7 @@ - #define _NFCT_PROTO_H_ - - #include <stdint.h> -+#include <netinet/in.h> - #include <linux/icmp.h> - #include <linux/icmpv6.h> - -cgit v1.2.3 diff --git a/sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.9-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.1.1.ebuild similarity index 58% rename from sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.9-r1.ebuild rename to sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.1.1.ebuild index 292e0aef72e..7bdd9249c67 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.9-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.1.1.ebuild @@ -1,32 +1,31 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit autotools linux-info verify-sig +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/netfilter.org.asc +inherit flag-o-matic linux-info toolchain-funcs verify-sig DESCRIPTION="Programming interface (API) to the in-kernel connection tracking state table" HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_conntrack/" -SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2 - verify-sig? ( https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2.sig )" +SRC_URI=" + https://www.netfilter.org/projects/${PN}/files/${P}.tar.xz + verify-sig? ( https://www.netfilter.org/projects/${PN}/files/${P}.tar.xz.sig ) +" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/netfilter.org.asc +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -RDEPEND=">=net-libs/libmnl-1.0.3 - >=net-libs/libnfnetlink-1.0.0" +RDEPEND=" + >=net-libs/libmnl-1.0.3 + >=net-libs/libnfnetlink-1.0.0 +" DEPEND="${RDEPEND}" -BDEPEND="virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-netfilter )" - -DOCS=( README ) - -PATCHES=( - "${FILESDIR}"/${P}-musl.patch - "${FILESDIR}"/${PN}-1.0.9-configure-clang16.patch -) +BDEPEND=" + virtual/pkgconfig + verify-sig? ( sec-keys/openpgp-keys-netfilter ) +" pkg_setup() { linux-info_pkg_setup @@ -45,11 +44,11 @@ pkg_setup() { check_extra_config } -src_prepare() { - default +src_configure() { + # https://gcc.gnu.org/PR103374 + tc-is-gcc && filter-flags '-ftrivial-auto-var-init=pattern' - # autoreconf only for clang 16 configure patch - eautoreconf + default } src_install() { From a79ff2351659d67c890ec8791cc806fa2050007a Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:40 +0000 Subject: [PATCH 173/291] net-libs/libpcap: Sync with Gentoo It's from Gentoo commit 1fec61388cf457520ff763405fcb6b5023e8e0a0. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/net-libs/libpcap/libpcap-1.10.6.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-1.10.6.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-1.10.6.ebuild index 274e05fb4bc..ff4d6ed9817 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-1.10.6.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-1.10.6.ebuild @@ -18,7 +18,7 @@ else SRC_URI="https://www.tcpdump.org/release/${P}.tar.gz" SRC_URI+=" verify-sig? ( https://www.tcpdump.org/release/${P}.tar.gz.sig )" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" fi # The project itself has COPYING with BSD, but the files used for From 0758ee425b2e7fa2b208a172ec193d1133903c92 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:42 +0000 Subject: [PATCH 174/291] net-libs/nghttp2: Sync with Gentoo It's from Gentoo commit e5ed92074cfe48f3f627fb7f3f2b7807fe04ab44. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/net-libs/nghttp2/Manifest | 1 + .../net-libs/nghttp2/nghttp2-1.68.0.ebuild | 15 ++++++++++----- .../net-libs/nghttp2/nghttp2-9999.ebuild | 13 +++++++++---- 3 files changed, 20 insertions(+), 9 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/Manifest b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/Manifest index c66783976f3..b8cdfca87c6 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/Manifest @@ -2,3 +2,4 @@ DIST nghttp2-1.65.0.tar.xz 1604848 BLAKE2B 8fb752f55936110a8b5c27873e7e262a0c847 DIST nghttp2-1.66.0.tar.xz 1743992 BLAKE2B 7b108f82b2ab4e5108a9220dbc57d6d894577464c2d64c5adb02c6f71f4c5d3d524b1c945ab016699236674501458c29d0186eaf2a7442bcb3f728df1075273c SHA512 23b4cae2bbd4b3c11c50093e2fc14f3b08241bb6a85c38409e9a1a328b81ad51f107179493a0ce4c6a767b557cafeca9ba638c491095639dcfd9a2d95fa8b80d DIST nghttp2-1.67.1.tar.xz 1671408 BLAKE2B 748545e87dc1edd580b620566a8c3e565cbaa22b078afd8008e23c5d2929976354dbe89d78b6c375ee046d2ee310395e6154e812f782cf4dbd27b99cf034c730 SHA512 e1b50e963602c961dd839ba032216a6c6c22009c6be0aebecb3711cb6412e2a2caf96fe3fa2a6a1691134c12f8ce479c181825a3c8d2cf87a8e0b1aa40f0261a DIST nghttp2-1.68.0.tar.xz 1691408 BLAKE2B 412842f3ca630b642ef9bb1865d43cf03de804ccc5f0d9ed3643b69930c66a9dd15b11a446c742be950eea24fd1704169c0683b92ea69762d1453ade4f8ed8db SHA512 a5182c2c54cdff3c70bdad204bff9a573cf7951e189d68665087f047cb79e5fc2d5d5aefbb41e2dfe264e2e74fbbe10196cb596248e328c944406ca09da98344 +DIST nghttp2-1.68.0.tar.xz.asc 833 BLAKE2B 33a6e8a8e730b01a6cdce1523464645f0ea11593d91d1f286a081bb02221bce54df60568f24039b6c83e0353d8bbc4bb8fb47dbb7d1ce6cd8c9c1e8aeaa18f46 SHA512 3d7dfee6c07407b22b24b330819af78930945d0d822bea916d70b055d93fb43e8e7ef5cb1a9c72c8da057994168170118cb432067b04400f5c53fe65654b2d09 diff --git a/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-1.68.0.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-1.68.0.ebuild index a2c5561ec62..a0b29b5116b 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-1.68.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-1.68.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -14,10 +14,15 @@ if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/nghttp2/nghttp2.git" inherit git-r3 else - inherit autotools - SRC_URI="https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/nghttp2.asc + inherit autotools verify-sig + SRC_URI=" + https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz + verify-sig? ( https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz.asc ) + " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-nghttp2 )" fi LICENSE="MIT" @@ -38,7 +43,7 @@ RDEPEND=" xml? ( >=dev-libs/libxml2-2.7.7:2=[${MULTILIB_USEDEP}] ) " DEPEND="${RDEPEND}" -BDEPEND="virtual/pkgconfig" +BDEPEND+=" virtual/pkgconfig" src_prepare() { default diff --git a/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-9999.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-9999.ebuild index a2c5561ec62..2e9e9510b2e 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -14,10 +14,15 @@ if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/nghttp2/nghttp2.git" inherit git-r3 else - inherit autotools - SRC_URI="https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/nghttp2.asc + inherit autotools verify-sig + SRC_URI=" + https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz + verify-sig? ( https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz.asc ) + " KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-nghttp2 )" fi LICENSE="MIT" @@ -38,7 +43,7 @@ RDEPEND=" xml? ( >=dev-libs/libxml2-2.7.7:2=[${MULTILIB_USEDEP}] ) " DEPEND="${RDEPEND}" -BDEPEND="virtual/pkgconfig" +BDEPEND+=" virtual/pkgconfig" src_prepare() { default From d65592d78392fb88c07b3c4602b00dda9e42a852 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:44 +0000 Subject: [PATCH 175/291] net-misc/curl: Sync with Gentoo It's from Gentoo commit 9a21ae20ab40c422c0af714be209dc23d8613854. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/net-misc/curl/Manifest | 6 +- .../net-misc/curl/curl-8.16.0-r1.ebuild | 8 +- .../net-misc/curl/curl-8.17.0-r1.ebuild | 9 +- ...l-8.18.0_rc3.ebuild => curl-8.18.0.ebuild} | 8 +- .../net-misc/curl/curl-8.19.0_rc2.ebuild | 427 ++++++++++++++++++ .../net-misc/curl/curl-9999.ebuild | 53 +-- 6 files changed, 469 insertions(+), 42 deletions(-) rename sdk_container/src/third_party/portage-stable/net-misc/curl/{curl-8.18.0_rc3.ebuild => curl-8.18.0.ebuild} (97%) create mode 100644 sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.19.0_rc2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/Manifest b/sdk_container/src/third_party/portage-stable/net-misc/curl/Manifest index a766eb25485..a654b9aaba1 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/Manifest @@ -4,5 +4,7 @@ DIST curl-8.16.0.tar.xz 2788632 BLAKE2B 573d56779481abf0b7d20225bba4f068cb726f23 DIST curl-8.16.0.tar.xz.asc 488 BLAKE2B d213bd447c668118b49b7356dc99e710de927b93f81325802bae5e286b61481da6ed30f23c7f4f3cfb0f01222db88602ff4e510f4a1401e98511eb0c72ac6abb SHA512 591568e997c0d955a00152ce5bdfb4586d84b42f5c1e15df503514fb4eb4bf289a98b1ebdad23913119c67c27d51a6e6f4065ee6f7657b971c3a581c928a0d82 DIST curl-8.17.0.tar.xz 2797000 BLAKE2B a7a804afe058f323b40177bcb4ffc523decde92da3da0a051f2dc1b566131250a96afe1ebf2bebc071993c893bddeef883ef33ddc0a9bee86d4e54402a546fba SHA512 fc6349def40c3c259de2a568631507df17dff83e78a2edbb93f069586dce594439fdc88bef7ce2bed7491f35800b8c0c181c8c88e6ef656cc3c18f9834681eca DIST curl-8.17.0.tar.xz.asc 488 BLAKE2B 88b72cb9c0acd8a06956eca31047dfadfe110dc07290adbe50b9451a71d4282acaa05c8a149787d71cf13cf1b42e8df9594d0e8a2b1cadbfca5eb50550f32609 SHA512 e77d4cb1f4961aa0df3d76f1a8c55a0b9005ed557adf745f3ab24d33cee2d0e4bd06cecb9d911e76409852e7755129873cc7d24936c846ff1b854903c0f086b2 -DIST curl-8.18.0-rc3.tar.xz 2797608 BLAKE2B 5259ab4d8efeb155ecbb0d49be991e52f510aeef297b47881f28171a26064fa4a38b83039e358511fb38d23e5f12756870fb8e3bb96ef4df4fb070fe0d44de10 SHA512 1139b79a6c4356fdf6f368812402c2f9bafcbaec6323c367aef85c4d00ffda9541a87ef476ce9a099142ef6f824b562c9dc840878add60a616f0e441fef44801 -DIST curl-8.18.0-rc3.tar.xz.asc 488 BLAKE2B cd56a5433797612daded8ffeb05d3d84e4ff2f6d9320fa745b5c27ce057405bdf3596b2cfdff83ca18daffde530a46161d2d277053ac0b5178d0b8bbe056c17d SHA512 fac23b293cec82596ddd7757c0984e3977259c5116ddef719fad2a39a3723cf7cb5d85d12c5c5b2542f34a5411aa6f42f4fb08729fde6c564cd3567f2a3f0434 +DIST curl-8.18.0.tar.xz 2801444 BLAKE2B 16e1539616c1800dfa08a5bd3e38ff75d2906a4a574b1541509c69200aebe680b0a5efdf1b1e0c89f3cccb6001bfe1c1459b9fd815053c964e1a1434be1e2e0e SHA512 50c7a7b0528e0019697b0c59b3e56abb2578c71d77e4c085b56797276094b5611718c0a9cb2b14db7f8ab502fcf8f42a364297a3387fae3870a4d281484ba21c +DIST curl-8.18.0.tar.xz.asc 488 BLAKE2B 68c2ce9777ba51962139e70e48c4b24d404682a6ad530843791cc188b2656dc26a19f0757f97ead2ff492f7b8a4e4116707df901e81bf8efb28658ff4df99ae0 SHA512 07e08d1bb3f8bf20b3d22f37fbc19c49c0d9ee4ea9d92da76fa8a9de343023e1b5d416ccc6535a4ff98b08b30eb9334fd856227e37564f6bcd542aa81bced152 +DIST curl-8.19.0-rc2.tar.xz 2782276 BLAKE2B 28ca64b9c42ba14b6ae73260822e2c7b59b16f6a1bf186ec8ee696a2f7f4d6f23d6a18ba580092f8d9e513b8b7eb5523f22cf03a414441a7dcb4932b8b77c252 SHA512 ad3fff8477dbf3487d7978ac1bef9622203a477ab30592923c18009a5292e9df83d8653c84cc4b1a0448891e9b9c9135e60a7524982809da7dd656272ecc76b7 +DIST curl-8.19.0-rc2.tar.xz.asc 488 BLAKE2B cc8e16325a3ecbd5ce95df0df4a8f73d2622daa6e3162ba3bd2cec044ac1d38b392d8bccb1be017d0ae494e278a7b974130663af7d670f01e89946034c5500f0 SHA512 593109ecad8e420416e7debec254ee3e29eaffaaefdbd5aa63f90e960eb479ac424b28e82075344744517560f4e74bb7a45d991c15363972b57e4634693ebac3 diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.16.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.16.0-r1.ebuild index 08ff73b2477..e598370a739 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.16.0-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.16.0-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -8,7 +8,7 @@ EAPI=8 # https://lists.haxx.se/listinfo/curl-distros VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/danielstenberg.asc -inherit autotools multilib-minimal multiprocessing prefix toolchain-funcs verify-sig +inherit dot-a autotools multilib-minimal multiprocessing prefix toolchain-funcs verify-sig DESCRIPTION="A Client that groks URLs" HOMEPAGE="https://curl.se/" @@ -237,6 +237,7 @@ _get_curl_tls_configure_opts() { } multilib_src_configure() { + use static-libs && lto-guarantee-fat # We make use of the fact that later flags override earlier ones # So start with all ssl providers off until proven otherwise # TODO: in the future, we may want to add wolfssl (https://www.wolfssl.com/) @@ -429,6 +430,9 @@ multilib_src_install() { multilib_src_install_all() { einstalldocs find "${ED}" -type f -name '*.la' -delete || die + + use static-libs && strip-lto-bytecode + rm -rf "${ED}"/etc/ || die } diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.17.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.17.0-r1.ebuild index b3c35832210..5a11fa5389c 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.17.0-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.17.0-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -8,7 +8,7 @@ EAPI=8 # https://lists.haxx.se/listinfo/curl-distros VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/danielstenberg.asc -inherit autotools multilib-minimal multiprocessing prefix toolchain-funcs verify-sig +inherit dot-a autotools multilib-minimal multiprocessing prefix toolchain-funcs verify-sig DESCRIPTION="A Client that groks URLs" HOMEPAGE="https://curl.se/" @@ -241,6 +241,8 @@ _get_curl_tls_configure_opts() { } multilib_src_configure() { + use static-libs && lto-guarantee-fat + # We make use of the fact that later flags override earlier ones # So start with all ssl providers off until proven otherwise # TODO: in the future, we may want to add wolfssl (https://www.wolfssl.com/) @@ -433,6 +435,9 @@ multilib_src_install() { multilib_src_install_all() { einstalldocs find "${ED}" -type f -name '*.la' -delete || die + + use static-libs && strip-lto-bytecode + rm -rf "${ED}"/etc/ || die } diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.18.0_rc3.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.18.0.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.18.0_rc3.ebuild rename to sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.18.0.ebuild index 740bb4d55ab..ebfe40a02bf 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.18.0_rc3.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.18.0.ebuild @@ -8,7 +8,7 @@ EAPI=8 # https://lists.haxx.se/listinfo/curl-distros VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/danielstenberg.asc -inherit autotools multilib-minimal multiprocessing prefix toolchain-funcs verify-sig +inherit dot-a autotools multilib-minimal multiprocessing prefix toolchain-funcs verify-sig DESCRIPTION="A Client that groks URLs" HOMEPAGE="https://curl.se/" @@ -22,7 +22,7 @@ else S="${WORKDIR}/${P//_/-}" else CURL_URI="https://curl.se/download/" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" fi SRC_URI=" ${CURL_URI}${P//_/-}.tar.xz @@ -238,6 +238,7 @@ _get_curl_tls_configure_opts() { } multilib_src_configure() { + use static-libs && lto-guarantee-fat # We make use of the fact that later flags override earlier ones # So start with all ssl providers off until proven otherwise # TODO: in the future, we may want to add wolfssl (https://www.wolfssl.com/) @@ -430,6 +431,9 @@ multilib_src_install() { multilib_src_install_all() { einstalldocs find "${ED}" -type f -name '*.la' -delete || die + + use static-libs && strip-lto-bytecode + rm -rf "${ED}"/etc/ || die } diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.19.0_rc2.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.19.0_rc2.ebuild new file mode 100644 index 00000000000..20096ddf96c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.19.0_rc2.ebuild @@ -0,0 +1,427 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintainers should subscribe to the 'curl-distros' ML for backports etc +# https://daniel.haxx.se/blog/2024/03/25/curl-distro-report/ +# https://lists.haxx.se/listinfo/curl-distros + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/danielstenberg.asc +inherit dot-a autotools multilib-minimal multiprocessing prefix toolchain-funcs verify-sig + +DESCRIPTION="A Client that groks URLs" +HOMEPAGE="https://curl.se/" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/curl/curl.git" +else + if [[ ${P} == *rc* ]]; then + CURL_URI="https://curl.se/rc/" + S="${WORKDIR}/${P//_/-}" + else + CURL_URI="https://curl.se/download/" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + SRC_URI=" + ${CURL_URI}${P//_/-}.tar.xz + verify-sig? ( ${CURL_URI}${P//_/-}.tar.xz.asc ) + " +fi + +LICENSE="BSD curl ISC test? ( BSD-4 )" +SLOT="0" +IUSE="+adns +alt-svc brotli debug ech +ftp gnutls gopher +hsts +http2 +http3 +httpsrr idn +imap kerberos ldap" +IUSE+=" mbedtls +openssl +pop3 +psl +quic rtmp rustls samba sasl-scram +smtp ssh ssl static-libs test" +IUSE+=" telnet +tftp +websockets zstd" +# These select the default tls implementation / which quic impl to use +IUSE+=" curl_ssl_gnutls curl_ssl_mbedtls +curl_ssl_openssl curl_ssl_rustls" +RESTRICT="!test? ( test )" + +# HTTPS RR is technically usable with the threaded resolver, but it still uses c-ares to +# ask for the HTTPS RR record type; if DoH is in use the HTTPS record will be requested +# in addition to A and AAAA records. + +# To simplify dependency management in the ebuild we'll require c-ares for HTTPS RR (for now?). +# HTTPS RR in cURL is a dependency for: +# - ECH (requires patched openssl or gnutls currently, enabled with rustls) +# - Fetching the ALPN list which should provide a better HTTP/3 experience. + +# Only one default ssl / quic provider can be enabled +# The default provider needs its USE satisfied +# HTTP/3 and MultiSSL are mutually exclusive; it's not clear if MultiSSL offers any benefit at all in the modern day. +# https://github.com/curl/curl/commit/65ece771f4602107d9cdd339dff4b420280a2c2e +REQUIRED_USE=" + ech? ( rustls ) + httpsrr? ( adns ) + quic? ( + ^^ ( + openssl + gnutls + ) + !gnutls + !mbedtls + !rustls + http3 + ssl + ) + ssl? ( + ^^ ( + curl_ssl_gnutls + curl_ssl_mbedtls + curl_ssl_openssl + curl_ssl_rustls + ) + ) + curl_ssl_gnutls? ( gnutls ) + curl_ssl_mbedtls? ( mbedtls ) + curl_ssl_openssl? ( openssl ) + curl_ssl_rustls? ( rustls ) + http3? ( alt-svc httpsrr quic ) +" + +# cURL's docs and CI/CD are great resources for confirming supported versions +# particulary for fast-moving targets like HTTP/2 and TCP/2 e.g.: +# - https://github.com/curl/curl/blob/master/docs/INTERNALS.md (core dependencies + minimum versions) +# - https://github.com/curl/curl/blob/master/docs/HTTP3.md (example of a feature that moves quickly) +# - https://github.com/curl/curl/blob/master/.github/workflows/http3-linux.yml (CI/CD for TCP/2) +# However 'supported' vs 'works' are two entirely different things; be sane but +# don't be afraid to require a later version. +# ngtcp2 = https://bugs.gentoo.org/912029 - can only build with one tls backend at a time. +RDEPEND=" + >=virtual/zlib-1.2.5:=[${MULTILIB_USEDEP}] + adns? ( >=net-dns/c-ares-1.16.0:=[${MULTILIB_USEDEP}] ) + brotli? ( app-arch/brotli:=[${MULTILIB_USEDEP}] ) + http2? ( >=net-libs/nghttp2-1.15.0:=[${MULTILIB_USEDEP}] ) + http3? ( >=net-libs/nghttp3-1.1.0[${MULTILIB_USEDEP}] ) + idn? ( >=net-dns/libidn2-2.0.0:=[static-libs?,${MULTILIB_USEDEP}] ) + kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] ) + ldap? ( >=net-nds/openldap-2.0.0:=[static-libs?,${MULTILIB_USEDEP}] ) + psl? ( net-libs/libpsl[${MULTILIB_USEDEP}] ) + quic? ( + gnutls? ( >=net-libs/ngtcp2-1.20.0-r1[gnutls,ssl,${MULTILIB_USEDEP}] ) + openssl? ( >=net-libs/ngtcp2-1.20.0-r1[openssl,ssl,${MULTILIB_USEDEP}] ) + ) + rtmp? ( media-video/rtmpdump[${MULTILIB_USEDEP}] ) + ssh? ( >=net-libs/libssh2-1.2.8[${MULTILIB_USEDEP}] ) + sasl-scram? ( >=net-misc/gsasl-2.2.0[static-libs?,${MULTILIB_USEDEP}] ) + ssl? ( + gnutls? ( + app-misc/ca-certificates + >=net-libs/gnutls-3.1.10:=[static-libs?,${MULTILIB_USEDEP}] + dev-libs/nettle:=[${MULTILIB_USEDEP}] + ) + mbedtls? ( + app-misc/ca-certificates + net-libs/mbedtls:3=[${MULTILIB_USEDEP}] + ) + openssl? ( + >=dev-libs/openssl-1.0.2:=[static-libs?,${MULTILIB_USEDEP}] + ) + rustls? ( + >=net-libs/rustls-ffi-0.15.0:=[${MULTILIB_USEDEP}] + ) + ) + zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) +" + +DEPEND="${RDEPEND}" + +BDEPEND=" + dev-lang/perl + virtual/pkgconfig + test? ( + sys-apps/diffutils + http2? ( >=net-libs/nghttp2-1.15.0:=[utils,${MULTILIB_USEDEP}] ) + http3? ( net-libs/nghttp2:=[utils,${MULTILIB_USEDEP}] ) + ) + verify-sig? ( sec-keys/openpgp-keys-danielstenberg ) +" + +DOCS=( README docs/{FEATURES.md,INTERNALS.md,FAQ.md,BUGS.md,CONTRIBUTE.md} ) + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/curl/curlbuild.h +) + +MULTILIB_CHOST_TOOLS=( + /usr/bin/curl-config +) + +QA_CONFIG_IMPL_DECL_SKIP=( + __builtin_available + closesocket + CloseSocket + getpass_r + ioctlsocket + IoctlSocket + mach_absolute_time + setmode + _fseeki64 + # custom AC_LINK_IFELSE code fails to link even without -Werror + OSSL_QUIC_client_method +) + +PATCHES=( + "${FILESDIR}/${PN}-prefix-6.patch" + "${FILESDIR}/${PN}-respect-cflags-3.patch" +) + +src_prepare() { + default + + eprefixify curl-config.in + eautoreconf +} + +# Generates TLS-related configure options based on USE flags. +# Outputs options suitable for appending to a configure options array. +_get_curl_tls_configure_opts() { + local tls_opts=() + + local backend flag_name + for backend in gnutls mbedtls openssl rustls; do + if [[ "$backend" == "openssl" ]]; then + flag_name="ssl" + tls_opts+=( "--with-ca-path=${EPREFIX}/etc/ssl/certs") + else + flag_name="$backend" + fi + + if use "$backend"; then + tls_opts+=( "--with-${flag_name}" ) + else + # If a single backend is enabled, 'ssl' is required, openssl is the default / fallback + if ! [[ "$backend" == "openssl" ]]; then + tls_opts+=( "--without-${flag_name}" ) + fi + fi + done + + if use curl_ssl_gnutls; then + multilib_is_native_abi && einfo "Default TLS backend: gnutls" + tls_opts+=( "--with-default-ssl-backend=gnutls" ) + elif use curl_ssl_mbedtls; then + multilib_is_native_abi && einfo "Default TLS backend: mbedtls" + tls_opts+=( "--with-default-ssl-backend=mbedtls" ) + elif use curl_ssl_openssl; then + multilib_is_native_abi && einfo "Default TLS backend: openssl" + tls_opts+=( "--with-default-ssl-backend=openssl" ) + elif use curl_ssl_rustls; then + multilib_is_native_abi && einfo "Default TLS backend: rustls" + tls_opts+=( "--with-default-ssl-backend=rustls" ) + else + eerror "We can't be here because of REQUIRED_USE." + die "Please file a bug, hit impossible condition w/ USE=ssl handling." + fi + + # Explicitly Disable unimplemented backends + tls_opts+=( + --without-amissl + --without-wolfssl + ) + + printf "%s\n" "${tls_opts[@]}" +} + +multilib_src_configure() { + use static-libs && lto-guarantee-fat + # We make use of the fact that later flags override earlier ones + # So start with all ssl providers off until proven otherwise + # TODO: in the future, we may want to add wolfssl (https://www.wolfssl.com/) + local myconf=() + + myconf+=( --without-ca-fallback --with-ca-bundle="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt ) + if use ssl; then + local -a tls_backend_opts + readarray -t tls_backend_opts < <(_get_curl_tls_configure_opts) + myconf+=( + "${tls_backend_opts[@]}" + $(use_with quic ngtcp2) + ) + else + myconf+=( --without-ssl ) + einfo "SSL disabled" + fi + + # These configuration options are organised alphabetically by category/type + + # Protocols + # `grep SUPPORT_PROTOCOLS=\" configure.ac | awk '{ print substr($2, 1, length($2)-1)}' | sort` + # Assume that anything omitted (that is not new!) is enabled by default with no deps + myconf+=( + --enable-file + $(use_enable ftp) + $(use_enable gopher) + --enable-http + $(use_enable imap) # Automatic IMAPS if TLS is enabled + $(use_enable ldap ldaps) + $(use_enable ldap) + $(use_enable pop3) + $(use_enable samba smb) + $(use_with ssh libssh2) # enables scp/sftp + $(use_with rtmp librtmp) + --enable-rtsp + $(use_enable smtp) + $(use_enable telnet) + $(use_enable tftp) + $(use_enable websockets) + ) + + # Keep various 'HTTP-flavoured' options together + myconf+=( + $(use_enable alt-svc) + $(use_enable hsts) + $(use_enable httpsrr) + $(use_with http2 nghttp2) + $(use_with http3 nghttp3) + ) + + # --enable/disable options + # `grep -- --enable configure | grep Check | awk '{ print $4 }' | sort` + myconf+=( + $(use_enable adns ares) + --enable-aws + --enable-basic-auth + --enable-bearer-auth + --enable-cookies + --enable-dateparse + --enable-dict + --enable-digest-auth + --enable-dnsshuffle + --enable-doh + $(use_enable ech) + --enable-http-auth + --enable-ipv6 + --enable-kerberos-auth + --enable-largefile + --enable-manual + --enable-mime + --enable-negotiate-auth + --enable-netrc + --enable-ntlm + --enable-progress-meter + --enable-proxy + --enable-rt + --enable-socketpair + --disable-sspi + $(use_enable static-libs static) + --enable-symbol-hiding + --enable-tls-srp + --disable-versioned-symbols + ) + + # --with/without options + # `grep -- --with configure | grep Check | awk '{ print $4 }' | sort` + myconf+=( + $(use_with brotli) + --with-fish-functions-dir="${EPREFIX}"/usr/share/fish/vendor_completions.d + $(use_with idn libidn2) + $(use_with kerberos gssapi "${EPREFIX}"/usr) + $(use_with sasl-scram libgsasl) + $(use_with psl libpsl) + --without-quiche + --without-schannel + --without-winidn + --with-zlib + --with-zsh-functions-dir="${EPREFIX}"/usr/share/zsh/site-functions + $(use_with zstd) + ) + + # Test deps (disabled) + myconf+=( + --without-test-caddy + --without-test-httpd + --without-test-nghttpx + ) + + if use debug; then + myconf+=( + --enable-debug + ) + fi + + if use test && multilib_is_native_abi && ( use http2 || use http3 ); then + myconf+=( + --with-test-nghttpx="${BROOT}/usr/bin/nghttpx" + ) + fi + + # Since 8.12.0 adns/c-ares and the threaded resolver are mutually exclusive + # This is in support of some work to enable `httpsrr` to use adns and the rest + # of curl to use the threaded resolver; for us `httpsrr` is conditional on adns. + if use adns; then + myconf+=( + --disable-threaded-resolver + ) + else + myconf+=( + --enable-threaded-resolver + ) + fi + + ECONF_SOURCE="${S}" econf "${myconf[@]}" + + if ! multilib_is_native_abi; then + # Avoid building the client (we just want libcurl for multilib) + sed -i -e '/SUBDIRS/s:src::' Makefile || die + sed -i -e '/SUBDIRS/s:scripts::' Makefile || die + fi + +} + +multilib_src_compile() { + default + + if multilib_is_native_abi; then + # Shell completions + ! tc-is-cross-compiler && emake -C scripts + fi +} + +# There is also a pytest harness that tests for bugs in some very specific +# situations; we can rely on upstream for this rather than adding additional test deps. +multilib_src_test() { + # See https://github.com/curl/curl/blob/master/tests/runtests.pl#L5721 + # -n: no valgrind (unreliable in sandbox and doesn't work correctly on all arches) + # -v: verbose + # -a: keep going on failure (so we see everything that breaks, not just 1st test) + # -k: keep test files after completion + # -am: automake style TAP output + # -p: print logs if test fails + # Note: if needed, we can skip specific tests. See e.g. Fedora's packaging + # or just read https://github.com/curl/curl/tree/master/tests#run. + # Note: we don't run the testsuite for cross-compilation. + # Upstream recommend 7*nproc as a starting point for parallel tests, but + # this ends up breaking when nproc is huge (like -j80). + # The network sandbox causes tests 241 and 1083 to fail; these are typically skipped + # as most gentoo users don't have an 'ip6-localhost' + multilib_is_native_abi && emake test TFLAGS="-n -v -a -k -am -p -j$((2*$(makeopts_jobs))) !241 !1083" +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + if multilib_is_native_abi; then + # Shell completions + ! tc-is-cross-compiler && emake -C scripts DESTDIR="${D}" install + fi +} + +multilib_src_install_all() { + einstalldocs + find "${ED}" -type f -name '*.la' -delete || die + + use static-libs && strip-lto-bytecode + + rm -rf "${ED}"/etc/ || die +} + +pkg_postinst() { + if use debug; then + ewarn "USE=debug has been selected, enabling debug codepaths and making cURL extra verbose." + ewarn "Use this _only_ for testing. Debug builds should _not_ be used in anger." + ewarn "hic sunt dracones; you have been warned." + fi +} diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-9999.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-9999.ebuild index fd5bbc4b51e..20096ddf96c 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-9999.ebuild @@ -8,7 +8,7 @@ EAPI=8 # https://lists.haxx.se/listinfo/curl-distros VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/danielstenberg.asc -inherit autotools multilib-minimal multiprocessing prefix toolchain-funcs verify-sig +inherit dot-a autotools multilib-minimal multiprocessing prefix toolchain-funcs verify-sig DESCRIPTION="A Client that groks URLs" HOMEPAGE="https://curl.se/" @@ -36,7 +36,7 @@ IUSE="+adns +alt-svc brotli debug ech +ftp gnutls gopher +hsts +http2 +http3 +ht IUSE+=" mbedtls +openssl +pop3 +psl +quic rtmp rustls samba sasl-scram +smtp ssh ssl static-libs test" IUSE+=" telnet +tftp +websockets zstd" # These select the default tls implementation / which quic impl to use -IUSE+=" +curl_quic_openssl curl_quic_ngtcp2 curl_ssl_gnutls curl_ssl_mbedtls +curl_ssl_openssl curl_ssl_rustls" +IUSE+=" curl_ssl_gnutls curl_ssl_mbedtls +curl_ssl_openssl curl_ssl_rustls" RESTRICT="!test? ( test )" # HTTPS RR is technically usable with the threaded resolver, but it still uses c-ares to @@ -57,9 +57,12 @@ REQUIRED_USE=" httpsrr? ( adns ) quic? ( ^^ ( - curl_quic_openssl - curl_quic_ngtcp2 + openssl + gnutls ) + !gnutls + !mbedtls + !rustls http3 ssl ) @@ -71,18 +74,6 @@ REQUIRED_USE=" curl_ssl_rustls ) ) - curl_quic_openssl? ( - curl_ssl_openssl - !gnutls - !mbedtls - !rustls - ) - curl_quic_ngtcp2? ( - curl_ssl_gnutls - !mbedtls - !openssl - !rustls - ) curl_ssl_gnutls? ( gnutls ) curl_ssl_mbedtls? ( mbedtls ) curl_ssl_openssl? ( openssl ) @@ -98,9 +89,6 @@ REQUIRED_USE=" # However 'supported' vs 'works' are two entirely different things; be sane but # don't be afraid to require a later version. # ngtcp2 = https://bugs.gentoo.org/912029 - can only build with one tls backend at a time. -# TODO: OpenSSL-QUIC support is going to be removed in 2026; depend on ngtcp2[{gnutls,openssl}] before that point. -# - https://github.com/curl/curl/pull/18820 (Deprecate OpenSSL QUIC support) -# - https://github.com/curl/curl/issues/18336 (curl w/ OpenSSL QUIC fails to fetch Google.com) RDEPEND=" >=virtual/zlib-1.2.5:=[${MULTILIB_USEDEP}] adns? ( >=net-dns/c-ares-1.16.0:=[${MULTILIB_USEDEP}] ) @@ -112,8 +100,8 @@ RDEPEND=" ldap? ( >=net-nds/openldap-2.0.0:=[static-libs?,${MULTILIB_USEDEP}] ) psl? ( net-libs/libpsl[${MULTILIB_USEDEP}] ) quic? ( - curl_quic_openssl? ( >=dev-libs/openssl-3.3.0:=[quic,${MULTILIB_USEDEP}] ) - curl_quic_ngtcp2? ( >=net-libs/ngtcp2-1.2.0[gnutls,ssl,-openssl,${MULTILIB_USEDEP}] ) + gnutls? ( >=net-libs/ngtcp2-1.20.0-r1[gnutls,ssl,${MULTILIB_USEDEP}] ) + openssl? ( >=net-libs/ngtcp2-1.20.0-r1[openssl,ssl,${MULTILIB_USEDEP}] ) ) rtmp? ( media-video/rtmpdump[${MULTILIB_USEDEP}] ) ssh? ( >=net-libs/libssh2-1.2.8[${MULTILIB_USEDEP}] ) @@ -151,7 +139,7 @@ BDEPEND=" verify-sig? ( sec-keys/openpgp-keys-danielstenberg ) " -DOCS=( README docs/{FEATURES.md,INTERNALS.md,FAQ,BUGS.md,CONTRIBUTE.md} ) +DOCS=( README docs/{FEATURES.md,INTERNALS.md,FAQ.md,BUGS.md,CONTRIBUTE.md} ) MULTILIB_WRAPPED_HEADERS=( /usr/include/curl/curlbuild.h @@ -176,7 +164,7 @@ QA_CONFIG_IMPL_DECL_SKIP=( ) PATCHES=( - "${FILESDIR}/${PN}-prefix-5.patch" + "${FILESDIR}/${PN}-prefix-6.patch" "${FILESDIR}/${PN}-respect-cflags-3.patch" ) @@ -238,6 +226,7 @@ _get_curl_tls_configure_opts() { } multilib_src_configure() { + use static-libs && lto-guarantee-fat # We make use of the fact that later flags override earlier ones # So start with all ssl providers off until proven otherwise # TODO: in the future, we may want to add wolfssl (https://www.wolfssl.com/) @@ -247,17 +236,10 @@ multilib_src_configure() { if use ssl; then local -a tls_backend_opts readarray -t tls_backend_opts < <(_get_curl_tls_configure_opts) - myconf+=("${tls_backend_opts[@]}") - if use quic; then - myconf+=( - $(use_with curl_quic_ngtcp2 ngtcp2) - $(use_with curl_quic_openssl openssl-quic) - ) - else - # Without a REQUIRED_USE to ensure that QUIC was requested when at least one default backend is - # enabled we need ensure that we don't try to build QUIC support - myconf+=( --without-ngtcp2 --without-openssl-quic ) - fi + myconf+=( + "${tls_backend_opts[@]}" + $(use_with quic ngtcp2) + ) else myconf+=( --without-ssl ) einfo "SSL disabled" @@ -430,6 +412,9 @@ multilib_src_install() { multilib_src_install_all() { einstalldocs find "${ED}" -type f -name '*.la' -delete || die + + use static-libs && strip-lto-bytecode + rm -rf "${ED}"/etc/ || die } From 9f81e341d14fe27c04301a7173956fc7c0ca263e Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:46 +0000 Subject: [PATCH 176/291] net-misc/iperf: Sync with Gentoo It's from Gentoo commit d61b3146c230af488b22426906a3b7a10a98a895. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/net-misc/iperf/iperf-3.20.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/net-misc/iperf/iperf-3.20.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/iperf/iperf-3.20.ebuild index 8f105795bdc..adeacb3af1a 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/iperf/iperf-3.20.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/iperf/iperf-3.20.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -11,7 +11,7 @@ SRC_URI="https://github.com/esnet/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.t LICENSE="BSD" SLOT="3" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~mips ppc ppc64 ~riscv ~sparc x86 ~x64-macos" IUSE="sctp" DEPEND=" From a9d2f505a8fb3c8cb49ce72c740ce5c64499fb52 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:46 +0000 Subject: [PATCH 177/291] net-misc/iputils: Sync with Gentoo It's from Gentoo commit c525e93401eb002d03c3ee6111f8cde0bb67480b. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/net-misc/iputils/Manifest | 6 +- .../files/iputils-20240905-man-pages.patch | 30 --- .../net-misc/iputils/iputils-20211215.ebuild | 186 ------------------ .../iputils/iputils-20221126-r1.ebuild | 131 ------------ .../net-misc/iputils/iputils-20240117.ebuild | 131 ------------ .../net-misc/iputils/iputils-20240905.ebuild | 145 -------------- ...5-r1.ebuild => iputils-20250605-r3.ebuild} | 33 +++- .../net-misc/iputils/iputils-20250605.ebuild | 141 ------------- .../net-misc/iputils/iputils-99999999.ebuild | 33 +++- .../net-misc/iputils/metadata.xml | 2 - 10 files changed, 53 insertions(+), 785 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/net-misc/iputils/files/iputils-20240905-man-pages.patch delete mode 100644 sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20211215.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20221126-r1.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20240117.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20240905.ebuild rename sdk_container/src/third_party/portage-stable/net-misc/iputils/{iputils-20250605-r1.ebuild => iputils-20250605-r3.ebuild} (76%) delete mode 100644 sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20250605.ebuild diff --git a/sdk_container/src/third_party/portage-stable/net-misc/iputils/Manifest b/sdk_container/src/third_party/portage-stable/net-misc/iputils/Manifest index e19fe460e33..d41805b65fc 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/iputils/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-misc/iputils/Manifest @@ -1,6 +1,2 @@ -DIST iputils-20211215.tar.gz 524567 BLAKE2B b88ff84be1d4d6a741f8f3514739ceff45ea40c475b5d4c2df8571fe84d4f1af9bc3fdce29e9ff393417671c75204261c8d64dde00473caa314b0aeb1fbf74ce SHA512 191062e51f7c8e8b38e3e4a96845adb77cd69f487d548c7cc578fad544443b4bc0dbe965d8f8e6fbda0a2f5b2fe2829789c05f873190c53d773245959298f6e9 -DIST iputils-20221126.tar.gz 511944 BLAKE2B 97bdc49810ce9e517211323e8e8ffd2f2be505704d67533db0e8f296701048b82c61b39062aab4a8fa148b29175636a657c2dcdd65e3a16b1572d2f392b8ecf0 SHA512 7fdfd76e6f2977039bc0930a1a5451f17319bf17beefc429751d99ffe143a83344d5b4cdbf008627bd70caafeadaf906a8b7c00393fa819e50d6c02b512c367f -DIST iputils-20240117.tar.xz 445684 BLAKE2B 635943e12010aef8c1291b407bfbe284e0179391fca76197b77037ae1ffc219fa1d8e36abcea5fb7fff10d55ab40eed7c081e5d92b29f0916a4b4dd806945491 SHA512 c45822c5641f194dc07cba919c13a4b7a79d050bb53957a894ebb6ccc1f71bac1f26489e13d18ef1ce235982f5fa1824e677f95037a0f5cce6bcb94be4c2e2de -DIST iputils-20240905.tar.xz 459008 BLAKE2B 62ee614292fbf487d93d711ecbc11719d10f4dcb995bfd0d613459b49792ae4c8f0032a401fbf583206665ac4c592e90c30da5c75811340cc881c06a20a05318 SHA512 6731e4fb8b8f89469de746c911fca6f1c7e924a21ca14ec25c40707707be3fe5a696272ba2d293207bc8c20f72a070d8e0a640fab9e5ea240a29a1f027807c1b DIST iputils-20250605.tar.xz 471904 BLAKE2B 16a87130f215d9e1bf27a8559a70ed24065d411d18eef0bbfaf36118ac8b097abd8b965b4842efa00d2cab6a03e93c9f49eec020f308f7cb6d8995651b8b5380 SHA512 1f3df2a4ea0a3f95bb9657d9ee36ed929fa841c9442dfd04e5d7f55ef533b0cac3182c2172b627c7ad7f366afdc1d232f2618d701bd1c601feadbfc754059cae -DIST iputils-manpages-20211215.tar.xz 17148 BLAKE2B 63a956805b01f57b070b6b4ceb32f6ddf4313c74203cde821fc2f6f16ab8de14861da31163adf496db555f1961592d4fbc2ba7a977ccb18773af3bdb8d3795c0 SHA512 eb8c8508221b06fc13bf196b01b11f3ec87cd77e25d89c088776e39d249e10a3915ebb39942805adee179b352543063ce3dac158d68783c68c23de550ec14eee +DIST iputils-20250605.tar.xz.asc 833 BLAKE2B 8a430477c320a617248a73f46ece8db3418f724095b9a76b3d5347a14438b4f691fc656680fc3e9dbcaa0ab11e66ca31030fd19d20158474a0ed5222c3bf657b SHA512 d130018ffb881a28a1d058d478736e241f9a2ac2419be29f7f8f35622a0530b747d5d895e10e61d23eb5d62b3687f72ba13187f0bf42687c3ed0970631063a4e diff --git a/sdk_container/src/third_party/portage-stable/net-misc/iputils/files/iputils-20240905-man-pages.patch b/sdk_container/src/third_party/portage-stable/net-misc/iputils/files/iputils-20240905-man-pages.patch deleted file mode 100644 index 0c2d174ec24..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-misc/iputils/files/iputils-20240905-man-pages.patch +++ /dev/null @@ -1,30 +0,0 @@ -https://github.com/iputils/iputils/pull/556 - -From 1e2a59a879859eb01ca8b34523f54b6acbb886cb Mon Sep 17 00:00:00 2001 -From: Eli Schwartz <eschwartz@gentoo.org> -Date: Wed, 18 Sep 2024 00:32:53 -0400 -Subject: [PATCH] meson: fix installation of prebuilt manpages in dist tarball - -page contains the name of the program we are building/installing a -manual for. In the custom targets for building the manpages, we append -.xml and .8 in turn -- we don't replace a ".xml" in the page name. - -As there is nothing to replace, we end up checking if e.g. "./arping" -exists, and trying to install it as a manual if so -- rather than -arping.8 as intended. Sync the logic so that this works. - -Signed-off-by: Eli Schwartz <eschwartz@gentoo.org> ---- a/doc/meson.build -+++ b/doc/meson.build -@@ -28,8 +28,8 @@ if meson.version().version_compare('>=0.58.0') - out_html_pages = [] - generated_docs_exist = true - foreach page : manpages -- man_page_name = page.replace('.xml', '.8') -- html_page_name = page.replace('.xml', '.html') -+ man_page_name = page + '.8' -+ html_page_name = page + '.html' - out_man_pages += man_page_name - out_html_pages += html_page_name - if not fs.exists(man_page_name) or not fs.exists(html_page_name) - diff --git a/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20211215.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20211215.ebuild deleted file mode 100644 index 6a7e696d638..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20211215.ebuild +++ /dev/null @@ -1,186 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# For released versions, we precompile the man/html pages and store -# them in a tarball on our mirrors. This avoids ugly issues while -# building stages, and reduces dependencies. -# To regenerate man/html pages emerge iputils-99999999[doc] with -# EGIT_COMMIT set to release tag, all USE flags enabled and -# tar ${S}/doc folder. - -EAPI="7" - -PLOCALES="de fr ja pt_BR tr uk zh_CN" - -inherit fcaps flag-o-matic meson plocale systemd toolchain-funcs - -if [[ ${PV} == "99999999" ]] ; then - EGIT_REPO_URI="https://github.com/iputils/iputils.git" - inherit git-r3 -else - SRC_URI="https://github.com/iputils/iputils/archive/${PV}.tar.gz -> ${P}.tar.gz - https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-manpages-${PV}.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -fi - -DESCRIPTION="Network monitoring tools including ping and ping6" -HOMEPAGE="https://wiki.linuxfoundation.org/networking/iputils" - -LICENSE="BSD GPL-2+ rdisc" -SLOT="0" -IUSE="+arping caps clockdiff doc idn nls rarpd rdisc static test tracepath" -RESTRICT="!test? ( test )" - -LIB_DEPEND=" - caps? ( sys-libs/libcap[static-libs(+)] ) - idn? ( net-dns/libidn2:=[static-libs(+)] ) - nls? ( virtual/libintl[static-libs(+)] ) -" -RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )" -DEPEND=" - ${RDEPEND} - virtual/os-headers - static? ( ${LIB_DEPEND} ) -" -BDEPEND=" - virtual/pkgconfig - test? ( sys-apps/iproute2 ) - nls? ( sys-devel/gettext ) -" - -if [[ ${PV} == 99999999 ]] ; then - BDEPEND+=" - app-text/docbook-xml-dtd:4.2 - app-text/docbook-xml-dtd:4.5 - app-text/docbook-xsl-ns-stylesheets - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - " -fi - -src_prepare() { - default - - plocale_get_locales > po/LINGUAS || die -} - -src_configure() { - use static && append-ldflags -static - - local emesonargs=( - -DUSE_CAP=$(usex caps true false) - -DUSE_IDN=$(usex idn true false) - -DBUILD_ARPING=$(usex arping true false) - -DBUILD_CLOCKDIFF=$(usex clockdiff true false) - -DBUILD_PING=true - -DBUILD_RARPD=$(usex rarpd true false) - -DBUILD_RDISC=$(usex rdisc true false) - -DENABLE_RDISC_SERVER=$(usex rdisc true false) - -DBUILD_TRACEPATH=$(usex tracepath true false) - -DBUILD_NINFOD=false - -DNINFOD_MESSAGES=false - -DNO_SETCAP_OR_SUID=true - -Dsystemdunitdir=$(systemd_get_systemunitdir) - -DUSE_GETTEXT=$(usex nls true false) - $(meson_use !test SKIP_TESTS) - ) - - if [[ ${PV} == 99999999 ]] ; then - emesonargs+=( - -DBUILD_HTML_MANS=$(usex doc true false) - -DBUILD_MANS=true - ) - else - emesonargs+=( - -DBUILD_HTML_MANS=false - -DBUILD_MANS=false - ) - fi - - meson_src_configure -} - -src_compile() { - tc-export CC - - meson_src_compile -} - -src_test() { - if [[ ${EUID} != 0 ]] ; then - einfo "Tests require root privileges. Skipping ..." - return - fi - - meson_src_test -} - -src_install() { - meson_src_install - - dodir /bin - local my_bin - for my_bin in $(usex arping arping '') ping ; do - mv "${ED}"/usr/bin/${my_bin} "${ED}"/bin/ || die - done - dosym ping /bin/ping4 - dosym ping /bin/ping6 - - if use tracepath ; then - dosym tracepath /usr/bin/tracepath4 - dosym tracepath /usr/bin/tracepath6 - dosym tracepath.8 /usr/share/man/man8/tracepath6.8 - fi - - if [[ ${PV} != 99999999 ]] ; then - local -a man_pages - local -a html_man_pages - - while IFS= read -r -u 3 -d $'\0' my_bin - do - my_bin=$(basename "${my_bin}") - [[ -z "${my_bin}" ]] && continue - - if [[ -f "${S}/doc/${my_bin}.8" ]] ; then - man_pages+=( ${my_bin}.8 ) - fi - - if [[ -f "${S}/doc/${my_bin}.html" ]] ; then - html_man_pages+=( ${my_bin}.html ) - fi - done 3< <(find "${ED}"/{bin,usr/bin,usr/sbin} -type f -perm -a+x -print0 2>/dev/null) - - pushd doc &>/dev/null || die - doman "${man_pages[@]}" - if use doc ; then - docinto html - dodoc "${html_man_pages[@]}" - fi - popd &>/dev/null || die - else - if use doc ; then - mv "${ED}"/usr/share/${PN} "${ED}"/usr/share/doc/${PF}/html || die - fi - fi -} - -pkg_preinst() { - local version_with_tftpd="<${CATEGORY}/${PN}-20211215" - if has_version "${version_with_tftpd}[traceroute6]" || has_version "${version_with_tftpd}[tftpd]" ; then - HAD_TFTPD_VERSION=1 - fi -} - -pkg_postinst() { - if [[ ${HAD_TFTPD_VERSION} -eq 1 ]] ; then - ewarn "This upstream version (>= 20211215) drops two tools:" - ewarn "1. tftpd (alternatives: net-ftp/tftp-hpa, net-dns/dnsmasq)" - ewarn "2. traceroute6 (alternatives: net-analyzer/mtr, net-analyzer/traceroute)" - ewarn "Please install one of the listed alternatives if needed!" - fi - - fcaps cap_net_raw \ - bin/ping \ - $(usex arping 'bin/arping' '') \ - $(usex clockdiff 'usr/bin/clockdiff' '') -} diff --git a/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20221126-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20221126-r1.ebuild deleted file mode 100644 index a27303bc596..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20221126-r1.ebuild +++ /dev/null @@ -1,131 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PLOCALES="de fr ja pt_BR tr uk zh_CN" - -inherit fcaps meson plocale systemd toolchain-funcs - -if [[ ${PV} == *9999 ]] ; then - EGIT_REPO_URI="https://github.com/iputils/iputils.git" - inherit git-r3 -else - SRC_URI="https://github.com/iputils/iputils/archive/${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -fi - -DESCRIPTION="Network monitoring tools including ping and ping6" -HOMEPAGE="https://wiki.linuxfoundation.org/networking/iputils" - -# We install ping unconditionally so BSD is listed by itself -# See LICENSE on each release, it summaries per-component -LICENSE=" - BSD - arping? ( GPL-2+ ) - clockdiff? ( BSD ) - tracepath? ( GPL-2+ ) -" -SLOT="0" -IUSE="+arping caps clockdiff doc idn nls test tracepath" -RESTRICT="!test? ( test )" - -RDEPEND=" - caps? ( sys-libs/libcap ) - idn? ( net-dns/libidn2:= ) - nls? ( virtual/libintl ) -" -DEPEND=" - ${RDEPEND} - virtual/os-headers -" -BDEPEND=" - app-text/docbook-xml-dtd:4.2 - app-text/docbook-xml-dtd:4.5 - app-text/docbook-xsl-ns-stylesheets - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - virtual/pkgconfig - test? ( sys-apps/iproute2 ) - nls? ( sys-devel/gettext ) -" - -src_prepare() { - default - - plocale_get_locales > po/LINGUAS || die -} - -src_configure() { - local emesonargs=( - -DUSE_CAP=$(usex caps true false) - -DUSE_IDN=$(usex idn true false) - -DBUILD_ARPING=$(usex arping true false) - -DBUILD_CLOCKDIFF=$(usex clockdiff true false) - -DBUILD_PING=true - -DBUILD_TRACEPATH=$(usex tracepath true false) - -DNO_SETCAP_OR_SUID=true - -Dsystemdunitdir=$(systemd_get_systemunitdir) - -DUSE_GETTEXT=$(usex nls true false) - $(meson_use !test SKIP_TESTS) - -DBUILD_HTML_MANS=$(usex doc true false) - -DBUILD_MANS=true - ) - - meson_src_configure -} - -src_compile() { - tc-export CC - - meson_src_compile -} - -src_test() { - if [[ ${EUID} != 0 ]] ; then - einfo "Tests require root privileges. Skipping ..." - return - fi - - meson_src_test -} - -src_install() { - meson_src_install - - FILECAPS=( cap_net_raw usr/bin/ping ) - use arping && FILECAPS+=( usr/bin/arping ) - use clockdiff && FILECAPS+=( usr/bin/clockdiff ) - - dosym ping /usr/bin/ping4 - dosym ping /usr/bin/ping6 - - if use tracepath ; then - dosym tracepath /usr/bin/tracepath4 - dosym tracepath /usr/bin/tracepath6 - dosym tracepath.8 /usr/share/man/man8/tracepath4.8 - dosym tracepath.8 /usr/share/man/man8/tracepath6.8 - fi - - if use doc ; then - mv "${ED}"/usr/share/${PN} "${ED}"/usr/share/doc/${PF}/html || die - fi -} - -pkg_preinst() { - local version_with_tftpd="<${CATEGORY}/${PN}-20211215" - if has_version "${version_with_tftpd}[traceroute6]" || has_version "${version_with_tftpd}[tftpd]" ; then - HAD_TFTPD_VERSION=1 - fi -} - -pkg_postinst() { - fcaps_pkg_postinst - - if [[ ${HAD_TFTPD_VERSION} -eq 1 ]] ; then - ewarn "This upstream version (>= 20211215) drops two tools:" - ewarn "1. tftpd (alternatives: net-ftp/tftp-hpa, net-dns/dnsmasq)" - ewarn "2. traceroute6 (alternatives: net-analyzer/mtr, net-analyzer/traceroute)" - ewarn "Please install one of the listed alternatives if needed!" - fi -} diff --git a/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20240117.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20240117.ebuild deleted file mode 100644 index 45d2fb3f357..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20240117.ebuild +++ /dev/null @@ -1,131 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PLOCALES="de fr ja pt_BR tr uk zh_CN" - -inherit fcaps meson plocale systemd toolchain-funcs - -if [[ ${PV} == *9999 ]] ; then - EGIT_REPO_URI="https://github.com/iputils/iputils.git" - inherit git-r3 -else - SRC_URI="https://github.com/iputils/iputils/releases/download/${PV}/${P}.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -fi - -DESCRIPTION="Network monitoring tools including ping and ping6" -HOMEPAGE="https://wiki.linuxfoundation.org/networking/iputils" - -# We install ping unconditionally so BSD is listed by itself -# See LICENSE on each release, it summaries per-component -LICENSE=" - BSD - arping? ( GPL-2+ ) - clockdiff? ( BSD ) - tracepath? ( GPL-2+ ) -" -SLOT="0" -IUSE="+arping caps clockdiff doc idn nls test tracepath" -RESTRICT="!test? ( test )" - -RDEPEND=" - caps? ( sys-libs/libcap ) - idn? ( net-dns/libidn2:= ) - nls? ( virtual/libintl ) -" -DEPEND=" - ${RDEPEND} - virtual/os-headers -" -BDEPEND=" - app-text/docbook-xml-dtd:4.2 - app-text/docbook-xml-dtd:4.5 - app-text/docbook-xsl-ns-stylesheets - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - virtual/pkgconfig - test? ( sys-apps/iproute2 ) - nls? ( sys-devel/gettext ) -" - -src_prepare() { - default - - plocale_get_locales > po/LINGUAS || die -} - -src_configure() { - local emesonargs=( - -DUSE_CAP=$(usex caps true false) - -DUSE_IDN=$(usex idn true false) - -DBUILD_ARPING=$(usex arping true false) - -DBUILD_CLOCKDIFF=$(usex clockdiff true false) - -DBUILD_PING=true - -DBUILD_TRACEPATH=$(usex tracepath true false) - -DNO_SETCAP_OR_SUID=true - -Dsystemdunitdir=$(systemd_get_systemunitdir) - -DUSE_GETTEXT=$(usex nls true false) - $(meson_use !test SKIP_TESTS) - -DBUILD_HTML_MANS=$(usex doc true false) - -DBUILD_MANS=true - ) - - meson_src_configure -} - -src_compile() { - tc-export CC - - meson_src_compile -} - -src_test() { - if [[ ${EUID} != 0 ]] ; then - einfo "Tests require root privileges. Skipping ..." - return - fi - - meson_src_test -} - -src_install() { - meson_src_install - - FILECAPS=( cap_net_raw usr/bin/ping ) - use arping && FILECAPS+=( usr/bin/arping ) - use clockdiff && FILECAPS+=( usr/bin/clockdiff ) - - dosym ping /usr/bin/ping4 - dosym ping /usr/bin/ping6 - - if use tracepath ; then - dosym tracepath /usr/bin/tracepath4 - dosym tracepath /usr/bin/tracepath6 - dosym tracepath.8 /usr/share/man/man8/tracepath4.8 - dosym tracepath.8 /usr/share/man/man8/tracepath6.8 - fi - - if use doc ; then - mv "${ED}"/usr/share/${PN} "${ED}"/usr/share/doc/${PF}/html || die - fi -} - -pkg_preinst() { - local version_with_tftpd="<${CATEGORY}/${PN}-20211215" - if has_version "${version_with_tftpd}[traceroute6]" || has_version "${version_with_tftpd}[tftpd]" ; then - HAD_TFTPD_VERSION=1 - fi -} - -pkg_postinst() { - fcaps_pkg_postinst - - if [[ ${HAD_TFTPD_VERSION} -eq 1 ]] ; then - ewarn "This upstream version (>= 20211215) drops two tools:" - ewarn "1. tftpd (alternatives: net-ftp/tftp-hpa, net-dns/dnsmasq)" - ewarn "2. traceroute6 (alternatives: net-analyzer/mtr, net-analyzer/traceroute)" - ewarn "Please install one of the listed alternatives if needed!" - fi -} diff --git a/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20240905.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20240905.ebuild deleted file mode 100644 index f9d9799b542..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20240905.ebuild +++ /dev/null @@ -1,145 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PLOCALES="de fr ja pt_BR tr uk zh_CN" - -inherit fcaps meson plocale systemd toolchain-funcs - -if [[ ${PV} == *9999 ]] ; then - EGIT_REPO_URI="https://github.com/iputils/iputils.git" - inherit git-r3 -else - SRC_URI="https://github.com/iputils/iputils/releases/download/${PV}/${P}.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -fi - -DESCRIPTION="Network monitoring tools including ping and ping6" -HOMEPAGE="https://wiki.linuxfoundation.org/networking/iputils" - -# We install ping unconditionally so BSD is listed by itself -# See LICENSE on each release, it summaries per-component -LICENSE=" - BSD - arping? ( GPL-2+ ) - clockdiff? ( BSD ) - tracepath? ( GPL-2+ ) -" -SLOT="0" -IUSE="+arping caps clockdiff doc idn nls test tracepath" -RESTRICT="!test? ( test )" - -RDEPEND=" - caps? ( sys-libs/libcap ) - idn? ( net-dns/libidn2:= ) - nls? ( virtual/libintl ) -" -DEPEND=" - ${RDEPEND} - virtual/os-headers -" -BDEPEND=" - virtual/pkgconfig - test? ( sys-apps/iproute2 ) - nls? ( sys-devel/gettext ) -" - -if [[ ${PV} == 9999 ]] ; then - BDEPEND+=" - app-text/docbook-xml-dtd:4.2 - app-text/docbook-xml-dtd:4.5 - app-text/docbook-xsl-ns-stylesheets - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - " -fi - -PATCHES=( - "${FILESDIR}"/${PN}-20240905-man-pages.patch -) - -src_prepare() { - default - - plocale_get_locales > po/LINGUAS || die -} - -src_configure() { - local emesonargs=( - -DUSE_CAP=$(usex caps true false) - -DUSE_IDN=$(usex idn true false) - -DBUILD_ARPING=$(usex arping true false) - -DBUILD_CLOCKDIFF=$(usex clockdiff true false) - -DBUILD_PING=true - -DBUILD_TRACEPATH=$(usex tracepath true false) - -DNO_SETCAP_OR_SUID=true - -Dsystemdunitdir=$(systemd_get_systemunitdir) - -DUSE_GETTEXT=$(usex nls true false) - $(meson_use !test SKIP_TESTS) - ) - - if use doc || [[ ${PV} == 9999 ]] ; then - emesonargs+=( - -DBUILD_HTML_MANS=true - -DBUILD_MANS=true - ) - fi - - meson_src_configure -} - -src_compile() { - tc-export CC - - meson_src_compile -} - -src_test() { - if [[ ${EUID} != 0 ]] ; then - einfo "Tests require root privileges. Skipping ..." - return - fi - - meson_src_test -} - -src_install() { - meson_src_install - - FILECAPS=( cap_net_raw usr/bin/ping ) - use arping && FILECAPS+=( usr/bin/arping ) - use clockdiff && FILECAPS+=( usr/bin/clockdiff ) - - dosym ping /usr/bin/ping4 - dosym ping /usr/bin/ping6 - - if use tracepath ; then - dosym tracepath /usr/bin/tracepath4 - dosym tracepath /usr/bin/tracepath6 - dosym tracepath.8 /usr/share/man/man8/tracepath4.8 - dosym tracepath.8 /usr/share/man/man8/tracepath6.8 - fi - - if use doc ; then - mv "${ED}"/usr/share/${PN} "${ED}"/usr/share/doc/${PF}/html || die - fi -} - -pkg_preinst() { - local version_with_tftpd="<${CATEGORY}/${PN}-20211215" - if has_version "${version_with_tftpd}[traceroute6]" || has_version "${version_with_tftpd}[tftpd]" ; then - HAD_TFTPD_VERSION=1 - fi -} - -pkg_postinst() { - fcaps_pkg_postinst - - if [[ ${HAD_TFTPD_VERSION} -eq 1 ]] ; then - ewarn "This upstream version (>= 20211215) drops two tools:" - ewarn "1. tftpd (alternatives: net-ftp/tftp-hpa, net-dns/dnsmasq)" - ewarn "2. traceroute6 (alternatives: net-analyzer/mtr, net-analyzer/traceroute)" - ewarn "Please install one of the listed alternatives if needed!" - fi -} diff --git a/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20250605-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20250605-r3.ebuild similarity index 76% rename from sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20250605-r1.ebuild rename to sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20250605-r3.ebuild index 977b0078012..81ad0dce049 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20250605-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20250605-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -11,8 +11,17 @@ if [[ ${PV} == *9999 ]] ; then EGIT_REPO_URI="https://github.com/iputils/iputils.git" inherit git-r3 else - SRC_URI="https://github.com/iputils/iputils/releases/download/${PV}/${P}.tar.xz" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/pevik.asc + inherit verify-sig + + SRC_URI=" + https://github.com/iputils/iputils/releases/download/${PV}/${P}.tar.xz + verify-sig? ( https://github.com/iputils/iputils/releases/download/${PV}/${P}.tar.xz.asc ) + " + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-pevik )" fi DESCRIPTION="Network monitoring tools including ping and ping6" @@ -27,7 +36,8 @@ LICENSE=" tracepath? ( GPL-2+ ) " SLOT="0" -IUSE="+arping caps clockdiff doc idn nls test tracepath" +IUSE="+arping +caps clockdiff doc idn nls +suid test tracepath" +REQUIRED_USE="filecaps? ( caps )" RESTRICT="!test? ( test )" RDEPEND=" @@ -39,7 +49,7 @@ DEPEND=" ${RDEPEND} virtual/os-headers " -BDEPEND=" +BDEPEND+=" virtual/pkgconfig test? ( sys-apps/iproute2 ) nls? ( sys-devel/gettext ) @@ -107,9 +117,18 @@ src_test() { src_install() { meson_src_install - FILECAPS=( cap_net_raw usr/bin/ping ) - use arping && FILECAPS+=( usr/bin/arping ) - use clockdiff && FILECAPS+=( usr/bin/clockdiff ) + # See build-aux/setcap-setuid.sh + # For suidctl compat: enable suid in src_install and remove it if fcaps is successful + use suid && fperms u+s /usr/bin/ping + FILECAPS=( -M u-s cap_net_admin,cap_net_raw+p usr/bin/ping ) + if use arping; then + use suid && fperms u+s /usr/bin/arping + FILECAPS+=( -- -M u-s cap_net_raw+p usr/bin/arping ) + fi + if use clockdiff; then + use suid && fperms u+s /usr/bin/clockdiff + FILECAPS+=( -- -M u-s cap_net_raw,cap_sys_nice+ep usr/bin/clockdiff ) + fi dosym ping /usr/bin/ping4 dosym ping /usr/bin/ping6 diff --git a/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20250605.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20250605.ebuild deleted file mode 100644 index 83c4fa9d4b3..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-20250605.ebuild +++ /dev/null @@ -1,141 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PLOCALES="de fr ja pt_BR tr uk zh_CN" - -inherit fcaps meson plocale systemd toolchain-funcs - -if [[ ${PV} == *9999 ]] ; then - EGIT_REPO_URI="https://github.com/iputils/iputils.git" - inherit git-r3 -else - SRC_URI="https://github.com/iputils/iputils/releases/download/${PV}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -fi - -DESCRIPTION="Network monitoring tools including ping and ping6" -HOMEPAGE="https://wiki.linuxfoundation.org/networking/iputils" - -# We install ping unconditionally so BSD is listed by itself -# See LICENSE on each release, it summaries per-component -LICENSE=" - BSD - arping? ( GPL-2+ ) - clockdiff? ( BSD ) - tracepath? ( GPL-2+ ) -" -SLOT="0" -IUSE="+arping caps clockdiff doc idn nls test tracepath" -RESTRICT="!test? ( test )" - -RDEPEND=" - caps? ( sys-libs/libcap ) - idn? ( net-dns/libidn2:= ) - nls? ( virtual/libintl ) -" -DEPEND=" - ${RDEPEND} - virtual/os-headers -" -BDEPEND=" - virtual/pkgconfig - test? ( sys-apps/iproute2 ) - nls? ( sys-devel/gettext ) -" - -if [[ ${PV} == 9999 ]] ; then - BDEPEND+=" - app-text/docbook-xml-dtd:4.2 - app-text/docbook-xml-dtd:4.5 - app-text/docbook-xsl-ns-stylesheets - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - " -fi - -src_prepare() { - default - - plocale_get_locales > po/LINGUAS || die -} - -src_configure() { - local emesonargs=( - -DUSE_CAP=$(usex caps true false) - -DUSE_IDN=$(usex idn true false) - -DBUILD_ARPING=$(usex arping true false) - -DBUILD_CLOCKDIFF=$(usex clockdiff true false) - -DBUILD_PING=true - -DBUILD_TRACEPATH=$(usex tracepath true false) - -DNO_SETCAP_OR_SUID=true - -Dsystemdunitdir=$(systemd_get_systemunitdir) - -DUSE_GETTEXT=$(usex nls true false) - $(meson_use !test SKIP_TESTS) - ) - - if use doc || [[ ${PV} == 9999 ]] ; then - emesonargs+=( - -DBUILD_HTML_MANS=true - -DBUILD_MANS=true - ) - fi - - meson_src_configure -} - -src_compile() { - tc-export CC - - meson_src_compile -} - -src_test() { - if [[ ${EUID} != 0 ]] ; then - einfo "Tests require root privileges. Skipping ..." - return - fi - - meson_src_test -} - -src_install() { - meson_src_install - - FILECAPS=( cap_net_raw usr/bin/ping ) - use arping && FILECAPS+=( usr/bin/arping ) - use clockdiff && FILECAPS+=( usr/bin/clockdiff ) - - dosym ping /usr/bin/ping4 - dosym ping /usr/bin/ping6 - - if use tracepath ; then - dosym tracepath /usr/bin/tracepath4 - dosym tracepath /usr/bin/tracepath6 - dosym tracepath.8 /usr/share/man/man8/tracepath4.8 - dosym tracepath.8 /usr/share/man/man8/tracepath6.8 - fi - - if use doc ; then - mv "${ED}"/usr/share/${PN} "${ED}"/usr/share/doc/${PF}/html || die - fi -} - -pkg_preinst() { - local version_with_tftpd="<${CATEGORY}/${PN}-20211215" - if has_version "${version_with_tftpd}[traceroute6]" || has_version "${version_with_tftpd}[tftpd]" ; then - HAD_TFTPD_VERSION=1 - fi -} - -pkg_postinst() { - fcaps_pkg_postinst - - if [[ ${HAD_TFTPD_VERSION} -eq 1 ]] ; then - ewarn "This upstream version (>= 20211215) drops two tools:" - ewarn "1. tftpd (alternatives: net-ftp/tftp-hpa, net-dns/dnsmasq)" - ewarn "2. traceroute6 (alternatives: net-analyzer/mtr, net-analyzer/traceroute)" - ewarn "Please install one of the listed alternatives if needed!" - fi -} diff --git a/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-99999999.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-99999999.ebuild index 83c4fa9d4b3..f91df042fb9 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-99999999.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-99999999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -11,8 +11,17 @@ if [[ ${PV} == *9999 ]] ; then EGIT_REPO_URI="https://github.com/iputils/iputils.git" inherit git-r3 else - SRC_URI="https://github.com/iputils/iputils/releases/download/${PV}/${P}.tar.xz" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/pevik.asc + inherit verify-sig + + SRC_URI=" + https://github.com/iputils/iputils/releases/download/${PV}/${P}.tar.xz + verify-sig? ( https://github.com/iputils/iputils/releases/download/${PV}/${P}.tar.xz.asc ) + " + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-pevik )" fi DESCRIPTION="Network monitoring tools including ping and ping6" @@ -27,7 +36,8 @@ LICENSE=" tracepath? ( GPL-2+ ) " SLOT="0" -IUSE="+arping caps clockdiff doc idn nls test tracepath" +IUSE="+arping +caps clockdiff doc idn nls +suid test tracepath" +REQUIRED_USE="filecaps? ( caps )" RESTRICT="!test? ( test )" RDEPEND=" @@ -39,7 +49,7 @@ DEPEND=" ${RDEPEND} virtual/os-headers " -BDEPEND=" +BDEPEND+=" virtual/pkgconfig test? ( sys-apps/iproute2 ) nls? ( sys-devel/gettext ) @@ -103,9 +113,18 @@ src_test() { src_install() { meson_src_install - FILECAPS=( cap_net_raw usr/bin/ping ) - use arping && FILECAPS+=( usr/bin/arping ) - use clockdiff && FILECAPS+=( usr/bin/clockdiff ) + # See build-aux/setcap-setuid.sh + # For suidctl compat: enable suid in src_install and remove it if fcaps is successful + use suid && fperms u+s /usr/bin/ping + FILECAPS=( -M u-s cap_net_admin,cap_net_raw+p usr/bin/ping ) + if use arping; then + use suid && fperms u+s /usr/bin/arping + FILECAPS+=( -- -M u-s cap_net_raw+p usr/bin/arping ) + fi + if use clockdiff; then + use suid && fperms u+s /usr/bin/clockdiff + FILECAPS+=( -- -M u-s cap_net_raw,cap_sys_nice+ep usr/bin/clockdiff ) + fi dosym ping /usr/bin/ping4 dosym ping /usr/bin/ping6 diff --git a/sdk_container/src/third_party/portage-stable/net-misc/iputils/metadata.xml b/sdk_container/src/third_party/portage-stable/net-misc/iputils/metadata.xml index ae5bf52a876..11886b88716 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/iputils/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/net-misc/iputils/metadata.xml @@ -8,8 +8,6 @@ <use> <flag name="arping">Build and install arping -- tool for sending ARP requests to peers (see also <pkg>net-analyzer/arping</pkg>)</flag> <flag name="clockdiff">Build and install clockdiff -- tool for comparing clocks via ICMP packets</flag> - <flag name="rarpd">Build and install rarpd -- server for handling RARP (reverse ARP) requests; generally only used by old systems</flag> - <flag name="rdisc">Build and install rdisc -- server for the client side of the ICMP router discover protocol</flag> <flag name="tracepath">Build and install tracepath -- tool for tracing network paths for discovering MTU values</flag> </use> <upstream> From 53f4b784b3e36d81695037bb7fd31db6c675a8fe Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:47 +0000 Subject: [PATCH 178/291] net-misc/passt: Sync with Gentoo It's from Gentoo commit 1296f8d11b689d211f0c147b467d3384bcf31fd6. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/net-misc/passt/passt-2025.12.15.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/net-misc/passt/passt-2025.12.15.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/passt/passt-2025.12.15.ebuild index de7a21da7bb..a73aa0c52d4 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/passt/passt-2025.12.15.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/passt/passt-2025.12.15.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -17,7 +17,7 @@ if [[ ${PV} == 9999* ]]; then else SRC_URI="https://passt.top/passt/snapshot/${MY_PV}.tar.xz -> ${P}.tar.xz" S=${WORKDIR}/${MY_PV} - KEYWORDS="~amd64 ~arm64 ~loong ~riscv" + KEYWORDS="amd64 arm64 ~loong ~riscv" fi LICENSE="BSD GPL-2+" From 581f71def9d43849e71b1f834dc88a9ebb066e9b Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:48 +0000 Subject: [PATCH 179/291] net-misc/rsync: Sync with Gentoo It's from Gentoo commit ba0ff8e4a756e600bc04b17f00ba542dd48da7ea. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../files/rsync-3.4.1-CVE-2025-10158.patch | 31 +++ .../net-misc/rsync/rsync-3.4.1-r2.ebuild | 207 ++++++++++++++++++ 2 files changed, 238 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/net-misc/rsync/files/rsync-3.4.1-CVE-2025-10158.patch create mode 100644 sdk_container/src/third_party/portage-stable/net-misc/rsync/rsync-3.4.1-r2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/net-misc/rsync/files/rsync-3.4.1-CVE-2025-10158.patch b/sdk_container/src/third_party/portage-stable/net-misc/rsync/files/rsync-3.4.1-CVE-2025-10158.patch new file mode 100644 index 00000000000..23687b43d9c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-misc/rsync/files/rsync-3.4.1-CVE-2025-10158.patch @@ -0,0 +1,31 @@ +https://bugs.gentoo.org/967677 +https://github.com/RsyncProject/rsync/commit/797e17fc4a6f15e3b1756538a9f812b63942686f + +From 797e17fc4a6f15e3b1756538a9f812b63942686f Mon Sep 17 00:00:00 2001 +From: Andrew Tridgell <andrew@tridgell.net> +Date: Sat, 23 Aug 2025 17:26:53 +1000 +Subject: [PATCH] fixed an invalid access to files array + +this was found by Calum Hutton from Rapid7. It is a real bug, but +analysis shows it can't be leverged into an exploit. Worth fixing +though. + +Many thanks to Calum and Rapid7 for finding and reporting this +--- + sender.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/sender.c b/sender.c +index a4d46c39e..b1588b701 100644 +--- a/sender.c ++++ b/sender.c +@@ -262,6 +262,8 @@ void send_files(int f_in, int f_out) + + if (ndx - cur_flist->ndx_start >= 0) + file = cur_flist->files[ndx - cur_flist->ndx_start]; ++ else if (cur_flist->parent_ndx < 0) ++ exit_cleanup(RERR_PROTOCOL); + else + file = dir_flist->files[cur_flist->parent_ndx]; + if (F_PATHNAME(file)) { + diff --git a/sdk_container/src/third_party/portage-stable/net-misc/rsync/rsync-3.4.1-r2.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/rsync/rsync-3.4.1-r2.ebuild new file mode 100644 index 00000000000..d4e0ff8e38b --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-misc/rsync/rsync-3.4.1-r2.ebuild @@ -0,0 +1,207 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Uncomment when introducing a patch which touches configure +RSYNC_NEEDS_AUTOCONF=1 +PYTHON_COMPAT=( python3_{11..13} ) +inherit flag-o-matic prefix python-single-r1 systemd + +DESCRIPTION="File transfer program to keep remote files into sync" +HOMEPAGE="https://rsync.samba.org/" +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/WayneD/rsync.git" + inherit autotools git-r3 + + REQUIRED_USE="${PYTHON_REQUIRED_USE}" +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/andrewtridgell.asc + inherit verify-sig + + if [[ -n ${RSYNC_NEEDS_AUTOCONF} ]] ; then + inherit autotools + fi + + if [[ ${PV} == *_pre* ]] ; then + SRC_DIR="src-previews" + else + SRC_DIR="src" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + + SRC_URI="https://rsync.samba.org/ftp/rsync/${SRC_DIR}/${P/_/}.tar.gz + verify-sig? ( https://rsync.samba.org/ftp/rsync/${SRC_DIR}/${P/_/}.tar.gz.asc )" + S="${WORKDIR}"/${P/_/} +fi + +LICENSE="GPL-3" +SLOT="0" +IUSE="acl examples iconv lz4 rrsync ssl stunnel system-zlib xattr +xxhash zstd" +REQUIRED_USE+=" examples? ( ${PYTHON_REQUIRED_USE} )" +REQUIRED_USE+=" rrsync? ( ${PYTHON_REQUIRED_USE} )" + +# attr is autodetected and then dropped by -Wl,--as-needed: +# https://github.com/RsyncProject/rsync/pull/753 +RDEPEND=" + >=dev-libs/popt-1.19 + acl? ( virtual/acl ) + examples? ( + ${PYTHON_DEPS} + dev-lang/perl + ) + lz4? ( app-arch/lz4:= ) + rrsync? ( + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-python/bracex[${PYTHON_USEDEP}] + ') + ) + ssl? ( dev-libs/openssl:= ) + system-zlib? ( virtual/zlib:= ) + xxhash? ( >=dev-libs/xxhash-0.8 ) + zstd? ( >=app-arch/zstd-1.4:= ) + iconv? ( virtual/libiconv )" +DEPEND="${RDEPEND}" +BDEPEND=" + examples? ( ${PYTHON_DEPS} ) + rrsync? ( ${PYTHON_DEPS} ) +" + +if [[ ${PV} == *9999 ]] ; then + BDEPEND+=" ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-python/commonmark[${PYTHON_USEDEP}] + ')" +else + BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-andrewtridgell )" +fi + +PATCHES=( + "${FILESDIR}"/${PN}-3.4.1-c23.patch + "${FILESDIR}"/${PN}-3.4.1-CVE-2025-10158.patch +) + +pkg_setup() { + # - USE=examples needs Python itself at runtime, but nothing else + # - 9999 needs commonmark at build time + if [[ ${PV} == *9999 ]] || use examples || use rrsync; then + python-single-r1_pkg_setup + fi +} + +src_prepare() { + default + + sed -i -e 's/AC_HEADER_MAJOR_FIXED/AC_HEADER_MAJOR/' configure.ac + + if [[ ${PV} == *9999 || -n ${RSYNC_NEEDS_AUTOCONF} ]] ; then + eaclocal -I m4 + eautoconf -o configure.sh + eautoheader && touch config.h.in + fi + + if use examples || use rrsync; then + python_fix_shebang support/ + fi + + if [[ -f rrsync.1 ]]; then + # If the pre-build rrsync.1 man page exists, then link to it + # from support/rrsync.1 to avoid rsync's build system attempting + # re-creating the man page (bug #883049). + ln -s ../rrsync.1 support/rrsync.1 || die + fi +} + +src_configure() { + local myeconfargs=( + --with-rsyncd-conf="${EPREFIX}"/etc/rsyncd.conf + --without-included-popt + --enable-ipv6 + $(use_enable acl acl-support) + $(use_enable iconv) + $(use_enable lz4) + $(use_with rrsync) + $(use_enable ssl openssl) + $(use_with !system-zlib included-zlib) + $(use_enable xattr xattr-support) + $(use_enable xxhash) + $(use_enable zstd) + ) + + # https://github.com/WayneD/rsync/pull/428 + if is-flagq -fsanitize=undefined ; then + sed -E -i \ + -e 's:#define CAREFUL_ALIGNMENT (0|1):#define CAREFUL_ALIGNMENT 1:' \ + byteorder.h || die + append-flags -DCAREFUL_ALIGNMENT + fi + + econf "${myeconfargs[@]}" +} + +src_install() { + emake DESTDIR="${D}" install + + newconfd "${FILESDIR}"/rsyncd.conf.d rsyncd + newinitd "${FILESDIR}"/rsyncd.init.d-r1 rsyncd + + dodoc NEWS.md README.md TODO tech_report.tex + + insinto /etc + newins "${FILESDIR}"/rsyncd.conf-3.2.7-r5 rsyncd.conf + + insinto /etc/logrotate.d + newins "${FILESDIR}"/rsyncd.logrotate rsyncd + + insinto /etc/xinetd.d + newins "${FILESDIR}"/rsyncd.xinetd-3.0.9-r1 rsyncd + + # Install stunnel helpers + if use stunnel ; then + emake DESTDIR="${D}" install-ssl-daemon + fi + + # Install the useful contrib scripts + if use examples ; then + # The 'rrsync' script is installed conditionally via the 'rrysnc' + # USE flag, and not via the 'examples' USE flag. + rm support/rrsync* || die + + exeinto /usr/share/rsync + doexe support/* + + rm -f "${ED}"/usr/share/rsync/{Makefile*,*.c} + fi + + eprefixify "${ED}"/etc/{,xinetd.d}/rsyncd* + + systemd_newunit packaging/systemd/rsync.service rsyncd.service +} + +pkg_postinst() { + if grep -Eqis '^[[:space:]]use chroot[[:space:]]*=[[:space:]]*(no|0|false)' \ + "${EROOT}"/etc/rsyncd.conf "${EROOT}"/etc/rsync/rsyncd.conf ; then + ewarn "You have disabled chroot support in your rsyncd.conf. This" + ewarn "is a security risk which you should fix. Please check your" + ewarn "/etc/rsyncd.conf file and fix the setting 'use chroot'." + fi + + if use stunnel ; then + einfo "Please install \">=net-misc/stunnel-4\" in order to use stunnel feature." + einfo + einfo "You maybe have to update the certificates configured in" + einfo "${EROOT}/etc/stunnel/rsync.conf" + fi + + if use system-zlib ; then + ewarn "Using system-zlib is incompatible with <rsync-3.1.1 when" + ewarn "using the --compress option." + ewarn + ewarn "When syncing with >=rsync-3.1.1 built with bundled zlib," + ewarn "and the --compress option, add --new-compress (-zz)." + ewarn + ewarn "For syncing the portage tree, add:" + ewarn "PORTAGE_RSYNC_EXTRA_OPTS=\"--new-compress\" to make.conf" + fi +} From d4811f20fe34ee5c9ba6d10df79e15ee1e9ef2d6 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:48 +0000 Subject: [PATCH 180/291] net-misc/socat: Sync with Gentoo It's from Gentoo commit bf6bb843e3b6dead7a2b92ea45b189c12508e2b7. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/net-misc/socat/Manifest | 1 + .../socat/files/socat-1.8.1.0-const.patch | 28 ++++++++ .../socat/files/socat-1.8.1.0-musl-fix.patch | 19 ++++++ .../net-misc/socat/socat-1.8.1.0-r1.ebuild | 68 +++++++++++++++++++ .../net-misc/socat/socat-1.8.1.0.ebuild | 6 +- .../net-misc/socat/socat-1.8.1.1.ebuild | 63 +++++++++++++++++ 6 files changed, 183 insertions(+), 2 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/net-misc/socat/files/socat-1.8.1.0-const.patch create mode 100644 sdk_container/src/third_party/portage-stable/net-misc/socat/files/socat-1.8.1.0-musl-fix.patch create mode 100644 sdk_container/src/third_party/portage-stable/net-misc/socat/socat-1.8.1.0-r1.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/net-misc/socat/socat-1.8.1.1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/net-misc/socat/Manifest b/sdk_container/src/third_party/portage-stable/net-misc/socat/Manifest index cacd34e5045..9ed4a2f92be 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/socat/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-misc/socat/Manifest @@ -1,2 +1,3 @@ DIST socat-1.8.0.3.tar.bz2 594396 BLAKE2B a152b1da6332ff925299deca2e39c09e7c3042e14a87b2d6f6fb6c263489291be54ed001d37908767b3164140de262b702a65833c792b1e607781dc5e89e0fdf SHA512 6425c42cf4a3cbe253d238213d11e7daae8f8a09fcce2634c8ce220bb3352a824a80ecfa36330007cf5c537f60fea057e9f68410bccb843ff4666e775c5dcd8e DIST socat-1.8.1.0.tar.bz2 606066 BLAKE2B 616814d9da8fb0bd7b7e02a65e4e5c4d9d0a5380f85d8151af5a0146e1497c8c4829a7c10ee2e26239bbfa7fa29011c24f6bbf10e59374a9e9db872d3739c2e9 SHA512 d53ee4c881efd564a86a6224c061a634ec17b96ddf419cbbfe6966db537cd452ebe81f33e265855537c3e55de026720cd9f1a4359f6ec04c5d890b600aef3a58 +DIST socat-1.8.1.1.tar.bz2 606348 BLAKE2B 877231c973e55e401637aee78edd637e0f66097eb472033d65be8f2ec07e26f6e7f8416e867ff2fa55be6c4dc52764bf3c340f14120322e5cdd04dead1e795ac SHA512 2e87225454365c1396da704a546566681076585a921847a2808d58c9ae8e5d7ad3ac28c321d2d0223b5711762a375dd84893dc67902c355fcce0e4a080909940 diff --git a/sdk_container/src/third_party/portage-stable/net-misc/socat/files/socat-1.8.1.0-const.patch b/sdk_container/src/third_party/portage-stable/net-misc/socat/files/socat-1.8.1.0-const.patch new file mode 100644 index 00000000000..c6a7d0e2929 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-misc/socat/files/socat-1.8.1.0-const.patch @@ -0,0 +1,28 @@ +Bug: https://bugs.gentoo.org/969295 + +diff --git a/filan.c b/filan.c +index 101940a..85db9b4 100644 +--- a/filan.c ++++ b/filan.c +@@ -1105,7 +1105,7 @@ const char *getfiletypestring(int st_mode) { + } + + static int printtime(FILE *outfile, time_t time) { +- const char *s; ++ char *s; + + if (filan_rawoutput) { + fprintf(outfile, "\t"F_time, time); +diff --git a/xio-ip6.c b/xio-ip6.c +index 7d7e286..e66a3e4 100644 +--- a/xio-ip6.c ++++ b/xio-ip6.c +@@ -117,7 +117,7 @@ int xioparsenetwork_ip6( + struct xiorange *range, + const int ai_flags[2]) + { +- char *delimpos; /* absolute address of delimiter */ ++ const char *delimpos; /* absolute address of delimiter */ + size_t delimind; /* index of delimiter in string */ + unsigned int bits; /* netmask bits */ + char *endptr; diff --git a/sdk_container/src/third_party/portage-stable/net-misc/socat/files/socat-1.8.1.0-musl-fix.patch b/sdk_container/src/third_party/portage-stable/net-misc/socat/files/socat-1.8.1.0-musl-fix.patch new file mode 100644 index 00000000000..f5178c45bc1 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-misc/socat/files/socat-1.8.1.0-musl-fix.patch @@ -0,0 +1,19 @@ +From https://bugs.gentoo.org/968110 +From: Bobby Bingham <koorogi@koorogi.info> +Date: Sun, 28 Dec 2025 11:03:28 -0600 +Subject: [PATCH] don't assume order of fields in struct msghdr + +Fixes compilation on musl. +--- a/xio-netlink.c ++++ b/xio-netlink.c +@@ -30,7 +30,7 @@ int xio_netlink_mtu( + struct nlmsghdr buf[8192/sizeof(struct nlmsghdr)]; + struct iovec iov = { buf, sizeof(buf) }; + struct sockaddr_nl sa; +- struct msghdr rtmsg = { &sa, sizeof(sa), &iov, 1, NULL, 0, 0 }; ++ struct msghdr rtmsg = { .msg_name = &sa, .msg_namelen = sizeof(sa), .msg_iov = &iov, .msg_iovlen = 1 }; + struct nlmsghdr *nh; + + Info2("Setting interface %d MTU to %u using netlink", interface_index, mtu); +-- +2.52.0 diff --git a/sdk_container/src/third_party/portage-stable/net-misc/socat/socat-1.8.1.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/socat/socat-1.8.1.0-r1.ebuild new file mode 100644 index 00000000000..d5cdf8ed1c9 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-misc/socat/socat-1.8.1.0-r1.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit edo flag-o-matic toolchain-funcs + +MY_P=${P/_beta/-b} +DESCRIPTION="Multipurpose relay (SOcket CAT)" +HOMEPAGE="http://www.dest-unreach.org/socat/ https://repo.or.cz/socat.git" +SRC_URI="http://www.dest-unreach.org/socat/download/${MY_P}.tar.bz2" +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" +IUSE="ipv6 readline ssl tcpd" +# bug #946404 (and many others), whack-a-mole with timeouts and friends +# Try again in the future. +RESTRICT="test" + +DEPEND=" + ssl? ( >=dev-libs/openssl-3:= ) + readline? ( sys-libs/readline:= ) + tcpd? ( sys-apps/tcp-wrappers ) +" +RDEPEND="${DEPEND}" + +DOCS=( BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY ) + +PATCHES=( + "${FILESDIR}"/${PN}-1.8.1.0-const.patch + "${FILESDIR}"/${PN}-1.8.1.0-musl-fix.patch # bug #968110 +) + +src_configure() { + # bug #293324 + filter-flags '-Wno-error*' + + tc-export AR + + local myeconfargs=( + $(use_enable ssl openssl) + $(use_enable readline) + $(use_enable ipv6 ip6) + $(use_enable tcpd libwrap) + ) + + econf "${myeconfargs[@]}" +} + +src_test() { + # Most tests are skipped because they need network access or a TTY + # Some are for /dev permissions probing (bug #940740) + # 518 519 need extra permissions + edo ./test.sh -v --expect-fail 13,15,87,217,311,313,370,388,410,466,478,518,519,528 +} + +src_install() { + default + + docinto html + dodoc doc/*.html doc/*.css + + if use elibc_musl; then + QA_CONFIG_IMPL_DECL_SKIP=( getprotobynumber_r ) + fi +} diff --git a/sdk_container/src/third_party/portage-stable/net-misc/socat/socat-1.8.1.0.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/socat/socat-1.8.1.0.ebuild index b996338db08..7918fe323ec 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/socat/socat-1.8.1.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/socat/socat-1.8.1.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -13,7 +13,7 @@ S="${WORKDIR}/${MY_P}" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" IUSE="ipv6 readline ssl tcpd" # bug #946404 (and many others), whack-a-mole with timeouts and friends # Try again in the future. @@ -28,6 +28,8 @@ RDEPEND="${DEPEND}" DOCS=( BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY ) +PATCHES=( "${FILESDIR}"/${PN}-1.8.1.0-const.patch ) + src_configure() { # bug #293324 filter-flags '-Wno-error*' diff --git a/sdk_container/src/third_party/portage-stable/net-misc/socat/socat-1.8.1.1.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/socat/socat-1.8.1.1.ebuild new file mode 100644 index 00000000000..9d2e42d82cb --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-misc/socat/socat-1.8.1.1.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit edo flag-o-matic toolchain-funcs + +MY_P=${P/_beta/-b} +DESCRIPTION="Multipurpose relay (SOcket CAT)" +HOMEPAGE="http://www.dest-unreach.org/socat/ https://repo.or.cz/socat.git" +SRC_URI="http://www.dest-unreach.org/socat/download/${MY_P}.tar.bz2" +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" +IUSE="ipv6 readline ssl tcpd" +# bug #946404 (and many others), whack-a-mole with timeouts and friends +# Try again in the future. +RESTRICT="test" + +DEPEND=" + ssl? ( >=dev-libs/openssl-3:= ) + readline? ( sys-libs/readline:= ) + tcpd? ( sys-apps/tcp-wrappers ) +" +RDEPEND="${DEPEND}" + +DOCS=( BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY ) + +src_configure() { + # bug #293324 + filter-flags '-Wno-error*' + + tc-export AR + + local myeconfargs=( + $(use_enable ssl openssl) + $(use_enable readline) + $(use_enable ipv6 ip6) + $(use_enable tcpd libwrap) + ) + + econf "${myeconfargs[@]}" +} + +src_test() { + # Most tests are skipped because they need network access or a TTY + # Some are for /dev permissions probing (bug #940740) + # 518 519 need extra permissions + edo ./test.sh -v --expect-fail 13,15,87,217,311,313,370,388,410,466,478,518,519,528 +} + +src_install() { + default + + docinto html + dodoc doc/*.html doc/*.css + + if use elibc_musl; then + QA_CONFIG_IMPL_DECL_SKIP=( getprotobynumber_r ) + fi +} From f08cdc2087fd7aeab266b6749fb57d47e1b415fd Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:51 +0000 Subject: [PATCH 181/291] net-vpn/wireguard-tools: Sync with Gentoo It's from Gentoo commit c1697ad4b77a63ec00b02a25d488b20d16f0f049. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/net-vpn/wireguard-tools/Manifest | 2 +- .../wireguard-tools/wireguard-tools-1.0.20250521-r1.ebuild | 4 ++-- ...0.20210914.ebuild => wireguard-tools-1.0.20260223.ebuild} | 5 +++-- 3 files changed, 6 insertions(+), 5 deletions(-) rename sdk_container/src/third_party/portage-stable/net-vpn/wireguard-tools/{wireguard-tools-1.0.20210914.ebuild => wireguard-tools-1.0.20260223.ebuild} (95%) diff --git a/sdk_container/src/third_party/portage-stable/net-vpn/wireguard-tools/Manifest b/sdk_container/src/third_party/portage-stable/net-vpn/wireguard-tools/Manifest index 3ff26717d6e..3eda9d518e3 100644 --- a/sdk_container/src/third_party/portage-stable/net-vpn/wireguard-tools/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-vpn/wireguard-tools/Manifest @@ -1,2 +1,2 @@ -DIST wireguard-tools-1.0.20210914.tar.xz 99744 BLAKE2B 020f4a61597dafc6663e9ee5659f9401416692f5dc8e23afe8d59054bffd32c92814ff2e1f99d6ffe558fdfcf756afc1838e4d425847f892ad4b627a077fe614 SHA512 6727ea65551dbb064457449b93a943bd6534ca93bc7fa5704c2f6826266c98688ee9ea28731fda57a5245d5f63c05f3899fcca54e40c0b6251b7c4796e957445 DIST wireguard-tools-1.0.20250521.tar.xz 100340 BLAKE2B a476720a14e6c547f985d74a9924767d63ce30f09608170858a25cfd98c4762b78cdb9784aa0cee92545424955d4de5bfa932dff7cd852f563656bf6f8d0ad19 SHA512 93a9ef1caaf8494f7f43fd2557c6499414481bcc7006e10ee9ad7cc520a0d0751e5fb65f6d554424ed9f2ef7a3ad510413d7aa021d829e6a631e81d24d7f47eb +DIST wireguard-tools-1.0.20260223.tar.xz 100472 BLAKE2B c6352dff6462fd902f545328b66aa7d6f34909b6bd602e80c4186a3234595578132d6c888aa19cb073c7ae8a2d4d213108f7ec0e5a87cc35ed148623bde4decd SHA512 ab56199345fdc385e62e414ec200c10777c985fb2bde767f9c76e049f47bc6d2ae83ed12d60dc1ebe0e66f22f7a7e554c13ab13837fb8cb2fbd5481149b07654 diff --git a/sdk_container/src/third_party/portage-stable/net-vpn/wireguard-tools/wireguard-tools-1.0.20250521-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-vpn/wireguard-tools/wireguard-tools-1.0.20250521-r1.ebuild index e8e8b305cd7..f29537eae82 100644 --- a/sdk_container/src/third_party/portage-stable/net-vpn/wireguard-tools/wireguard-tools-1.0.20250521-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-vpn/wireguard-tools/wireguard-tools-1.0.20250521-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -13,7 +13,7 @@ if [[ ${PV} == 9999 ]]; then EGIT_REPO_URI="https://git.zx2c4.com/wireguard-tools" else SRC_URI="https://git.zx2c4.com/wireguard-tools/snapshot/wireguard-tools-${PV}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" fi LICENSE="GPL-2" diff --git a/sdk_container/src/third_party/portage-stable/net-vpn/wireguard-tools/wireguard-tools-1.0.20210914.ebuild b/sdk_container/src/third_party/portage-stable/net-vpn/wireguard-tools/wireguard-tools-1.0.20260223.ebuild similarity index 95% rename from sdk_container/src/third_party/portage-stable/net-vpn/wireguard-tools/wireguard-tools-1.0.20210914.ebuild rename to sdk_container/src/third_party/portage-stable/net-vpn/wireguard-tools/wireguard-tools-1.0.20260223.ebuild index 55d83d735eb..42d11e55f7a 100644 --- a/sdk_container/src/third_party/portage-stable/net-vpn/wireguard-tools/wireguard-tools-1.0.20210914.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-vpn/wireguard-tools/wireguard-tools-1.0.20260223.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -13,7 +13,7 @@ if [[ ${PV} == 9999 ]]; then EGIT_REPO_URI="https://git.zx2c4.com/wireguard-tools" else SRC_URI="https://git.zx2c4.com/wireguard-tools/snapshot/wireguard-tools-${PV}.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" fi LICENSE="GPL-2" @@ -59,6 +59,7 @@ pkg_setup() { wg_quick_optional_config_nob IP_NF_RAW wg_quick_optional_config_nob IP6_NF_FILTER wg_quick_optional_config_nob IP_NF_FILTER + wg_quick_optional_config_nob IP_NF_MANGLE fi fi get_version From 5a567d0203020cb16c0cc98093f2e2de6f052c24 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:52 +0000 Subject: [PATCH 182/291] profiles: Sync with Gentoo It's from Gentoo commit 25df199ef185876d46d2d2536d9bca6de9536df0. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../profiles/arch/alpha/package.use.mask | 7 +- .../profiles/arch/alpha/use.mask | 3 +- .../profiles/arch/amd64/package.use.mask | 19 +- .../arch/amd64/package.use.stable.mask | 4 + .../profiles/arch/amd64/x32/package.mask | 1 + .../profiles/arch/amd64/x32/package.use.mask | 4 + .../profiles/arch/arm/package.use.mask | 15 +- .../profiles/arch/arm/package.use.stable.mask | 4 +- .../profiles/arch/arm64/package.use | 8 +- .../profiles/arch/arm64/package.use.mask | 14 +- .../profiles/arch/base/package.use.mask | 29 +- .../profiles/arch/hppa/package.use.mask | 9 +- .../profiles/arch/hppa/use.mask | 3 +- .../profiles/arch/loong/package.use.force | 3 +- .../profiles/arch/loong/package.use.mask | 13 +- .../profiles/arch/m68k/make.defaults | 9 +- .../profiles/arch/m68k/package.mask | 14 +- .../profiles/arch/m68k/package.use.mask | 11 +- .../profiles/arch/m68k/use.mask | 18 +- .../arch/mips/mipsel/o32/package.mask | 5 +- .../profiles/arch/mips/package.mask | 8 +- .../profiles/arch/mips/package.use.mask | 11 +- .../profiles/arch/mips/use.mask | 3 +- .../profiles/arch/powerpc/package.use.mask | 9 +- .../arch/powerpc/package.use.stable.mask | 6 +- .../powerpc/ppc32/package.use.stable.mask | 3 +- .../arch/powerpc/ppc64/package.use.mask | 6 +- .../profiles/arch/ppc/package.use.mask | 10 +- .../profiles/arch/s390/package.use.mask | 7 +- .../profiles/arch/s390/s390x/package.use.mask | 6 +- .../profiles/arch/sparc/package.use.mask | 15 +- .../arch/sparc/package.use.stable.mask | 7 +- .../profiles/arch/sparc/use.mask | 3 +- .../profiles/arch/x86/package.use.mask | 6 +- .../profiles/arch/x86/package.use.stable.mask | 3 +- .../profiles/base/make.defaults | 6 +- .../portage-stable/profiles/base/package.mask | 6 +- .../profiles/base/package.use.force | 31 +- .../profiles/base/package.use.mask | 66 +- .../profiles/base/package.use.stable.force | 10 +- .../profiles/base/package.use.stable.mask | 13 +- .../portage-stable/profiles/base/use.mask | 11 +- .../linux/amd64/23.0/musl/systemd/eapi | 1 + .../linux/amd64/23.0/musl/systemd/parent | 2 + .../linux/amd64/23.0/musl/systemd/use.mask | 6 + .../linux/arm/23.0/time64/armv4/parent | 1 + .../linux/arm/23.0/time64/armv4t/parent | 1 + .../linux/arm/23.0/time64/armv5te/parent | 1 + .../linux/arm/23.0/time64/armv6j_hf/parent | 1 + .../linux/arm/23.0/time64/armv6j_sf/parent | 1 + .../linux/arm/23.0/time64/armv7a_hf/parent | 1 + .../linux/arm/23.0/time64/armv7a_sf/parent | 1 + .../arm/23.0/time64/split-usr/armv4/parent | 1 + .../arm/23.0/time64/split-usr/armv4t/parent | 1 + .../arm/23.0/time64/split-usr/armv5te/parent | 1 + .../23.0/time64/split-usr/armv6j_hf/parent | 1 + .../23.0/time64/split-usr/armv6j_sf/parent | 1 + .../23.0/time64/split-usr/armv7a_hf/parent | 1 + .../23.0/time64/split-usr/armv7a_sf/parent | 1 + .../linux/m68k/23.0/time64/make.defaults | 11 +- .../linux/m68k/23.0/time64/package.mask | 6 +- .../default/linux/m68k/23.0/time64/use.mask | 12 +- .../riscv/23.0/rv32/ilp32/musl/systemd/eapi | 1 + .../riscv/23.0/rv32/ilp32/musl/systemd/parent | 2 + .../riscv/23.0/rv32/ilp32d/musl/systemd/eapi | 1 + .../23.0/rv32/ilp32d/musl/systemd/parent | 2 + .../riscv/23.0/rv64/lp64/musl/systemd/eapi | 1 + .../riscv/23.0/rv64/lp64/musl/systemd/parent | 2 + .../riscv/23.0/rv64/lp64d/musl/systemd/eapi | 1 + .../riscv/23.0/rv64/lp64d/musl/systemd/parent | 2 + .../profiles/desc/apache2_modules.desc | 3 +- .../portage-stable/profiles/desc/fftools.desc | 18 - .../profiles/desc/gpsd_protocols.desc | 6 +- .../profiles/desc/guile_single_target.desc | 3 +- .../profiles/desc/llvm_slot.desc | 1 + .../profiles/desc/ruby_targets.desc | 3 +- .../profiles/desc/voicemail_storage.desc | 3 +- .../profiles/embedded/make.defaults | 4 +- .../profiles/features/big-endian/package.mask | 9 +- .../features/big-endian/package.use.mask | 4 +- .../features/hardened/amd64/package.use | 7 - .../profiles/features/musl/package.mask | 42 +- .../profiles/features/musl/package.use.mask | 33 +- .../features/musl/package.use.stable.mask | 13 +- .../profiles/features/musl/use.mask | 8 - .../profiles/features/musl/use.stable.mask | 8 + .../prefix/standalone/package.use.mask | 6 +- .../profiles/features/time64/make.defaults | 9 +- .../profiles/features/wd40/package.mask | 43 +- .../profiles/features/wd40/package.use.mask | 10 +- .../portage-stable/profiles/license_groups | 8 +- .../profiles/package.deprecated | 13 +- .../portage-stable/profiles/package.mask | 730 ++++++++---------- .../profiles/prefix/darwin/use.mask | 3 +- .../profiles/prefix/sunos/use.mask | 3 +- .../portage-stable/profiles/profiles.desc | 4 + .../targets/desktop/gnome/make.defaults | 4 +- .../targets/desktop/gnome/package.use | 3 +- .../targets/desktop/gnome/package.use.force | 1 - .../profiles/targets/desktop/make.defaults | 2 +- .../profiles/targets/desktop/package.use | 14 +- .../targets/desktop/plasma/make.defaults | 4 +- .../targets/desktop/plasma/package.use | 8 +- .../profiles/targets/systemd/package.mask | 6 +- .../portage-stable/profiles/thirdpartymirrors | 7 +- 105 files changed, 728 insertions(+), 818 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/systemd/eapi create mode 100644 sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/systemd/parent create mode 100644 sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/systemd/use.mask create mode 100644 sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv32/ilp32/musl/systemd/eapi create mode 100644 sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv32/ilp32/musl/systemd/parent create mode 100644 sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv32/ilp32d/musl/systemd/eapi create mode 100644 sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv32/ilp32d/musl/systemd/parent create mode 100644 sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64/musl/systemd/eapi create mode 100644 sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64/musl/systemd/parent create mode 100644 sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64d/musl/systemd/eapi create mode 100644 sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64d/musl/systemd/parent delete mode 100644 sdk_container/src/third_party/portage-stable/profiles/desc/fftools.desc delete mode 100644 sdk_container/src/third_party/portage-stable/profiles/features/hardened/amd64/package.use create mode 100644 sdk_container/src/third_party/portage-stable/profiles/features/musl/use.stable.mask delete mode 100644 sdk_container/src/third_party/portage-stable/profiles/targets/desktop/gnome/package.use.force diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/package.use.mask index 9e35c868f9d..53230e04f1c 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/package.use.mask @@ -1,6 +1,10 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Sam James <sam@gentoo.org> (2026-02-11) +# sys-libs/libnvme not keyworded here +sys-fs/lvm2 nvme + # Eli Schwartz <eschwartz@gentoo.org> (2025-11-27) # Needs dev-python/mypy for mypyc, not keyworded here dev-python/charset-normalizer native-extensions @@ -278,7 +282,6 @@ media-libs/freetype svg # Adel Kara Slimane <adel.ks@zegrapher.com> (2022-03-14) # Untested useflag on other arches, needs keywording media-video/ffmpeg vmaf -media-video/ffmpeg-compat vmaf # Sam James <sam@gentoo.org> (2022-01-29) # app-text/ronn-ng not keyworded here, bug #801103 diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/use.mask index 752827f8840..a4dd509696d 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/use.mask @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Unmask the flag which corresponds to ARCH. @@ -110,7 +110,6 @@ dmi # Stuff that doesn't work on alpha, or not tested clang -djbfft hardened mecab netbeans diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.mask index 5c780b31565..e674454f347 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.mask @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # When you add an entry to the top of this file, add your name, the date, and @@ -17,6 +17,14 @@ #--- END OF EXAMPLES --- +# Ionen Wolkens <ionen@gentoo.org> (2026-02-11) +# net-libs/librist is available here +media-video/ffmpeg -rist + +# Andrey Grozin <grozin@gentoo.org> (2026-01-08) +# dev-python/pyside[tools] is available here +>=media-gfx/asymptote-3.06 -gui + # Sam James <sam@gentoo.org> (2025-12-23) # sys-process/numactl is available here sys-fs/fuse -io-uring @@ -58,10 +66,6 @@ sci-libs/flexiblas -blis -mkl -openblas # net-emulation/libvirt is only keyworded on amd64 at this time sys-block/nbdkit -libguestfs -# Andreas K. Hüttel <dilfridge@gentoo.org> (2025-08-06) -# x86-64 supports sframe ->=sys-libs/glibc-2.42 -sframe - # Alfred Wingate <parona@protonmail.com> (2025-05-22) # Upstream supports amd64 media-libs/svt-av1 -test @@ -463,11 +467,6 @@ media-libs/opencv -contribxfeatures2d # -mdblookup: dev-libs/libmaxminddb is keyworded on amd64 app-admin/rsyslog -imhttp -mdblookup -# Alexis Ballier <aballier@gentoo.org> (2017-02-21) -# spacetime works on amd64 -# https://caml.inria.fr/pub/docs/manual-ocaml/spacetime.html -dev-lang/ocaml -spacetime - # Luke Dashjr <luke-jr+gentoobugs@utopios.org> (2017-01-04) # Matt Whitlock <gentoo@mattwhitlock.name> (2025-04-12) # Assembly optimisations are supported on amd64 for all versions diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.stable.mask index 8964f42a3fc..941ceb0b0ea 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.stable.mask @@ -17,6 +17,10 @@ #--- END OF EXAMPLES --- +# Paul Zander <negril.nx+gentoo@gmail.com> (2025-12-01) +# no stable llvm-runtimes/offload +dev-cpp/eigen clang-cuda + # Sam James <sam@gentoo.org> (2025-11-30) # sci-libs/blis and sci-libs/mkl do not have stable keywords sci-libs/flexiblas blis mkl diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.mask index a21347bd397..16ae7fa2023 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.mask @@ -8,6 +8,7 @@ media-radio/qlog # Jay Faulkner <jayf@gentoo.org> (2025-06-01) # Requires >=net-libs/nodejs-18[npm] dev-util/claude-code +dev-util/cursor-agent # Paul Zander <negril.nx+gentoo@gmail.com> (2025-04-04) # Requires dev-qt/qtwebengine diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.use.mask index 6a4ec9a5868..af585be54b3 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.use.mask @@ -1,6 +1,10 @@ # Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Paul Zander <negril.nx+gentoo@gmail.com> (2025-09-11) +# no llvm-runtimes/offload here +dev-cpp/eigen clang-cuda + # Paul Zander <negril.nx+gentoo@gmail.com> (2025-04-04) # Requires dev-qt/qtwebengine dev-util/nvidia-cuda-toolkit nsight diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.mask index 68fe25cee0a..d654d45d6b8 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.mask @@ -1,6 +1,14 @@ # Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Nicolas PARLANT <nicolas.parlant@parhuet.fr> (2026-02-23) +# x11-libs/qtermwidget is not keyworded here +app-office/texstudio qtermwidget + +# Jaco Kroon <jaco@uls.co.za> (2026-02-06) +# Requires sys-auth/libyubikey +net-dialup/freeradius yubikey + # Alfred Wingate <parona@protonmail.com> (2025-11-23) # Requires dev-qt/qtwebengine media-sound/easyeffects webengine @@ -124,10 +132,6 @@ sys-kernel/dracut test sys-auth/polkit kde virtual/notification-daemon kde -# Andreas Sturmlechner <asturm@gentoo.org> (2024-07-31) -# KF6 and media-libs/phonon will drop arm keyword -app-office/texstudio video - # Michał Górny <mgorny@gentoo.org> (2024-07-24) # Full testing requires www-client/firefox. dev-python/selenium test-rust @@ -242,7 +246,6 @@ app-text/enchant nuspell # Adel Kara Slimane <adel.ks@zegrapher.com> (2022-03-14) # Untested useflag on other arches, needs keywording media-video/ffmpeg vmaf -media-video/ffmpeg-compat vmaf # Sam James <sam@gentoo.org> (2022-03-10) # Boost has support for ARM32 @@ -379,7 +382,7 @@ net-libs/gnutls test-full # Andreas Sturmlechner <asturm@gentoo.org> (2018-03-02) # Requires unkeyworded deps ->=dev-python/ipython-5.4.1 gui qt5 +>=dev-python/ipython-5.4.1 gui # Michał Górny <mgorny@gentoo.org> (2017-12-30) # Moved from use.mask since they are flags local to one package. diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.stable.mask index 77c26debe72..dff5021d0bc 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.stable.mask @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Matt Turner <mattst88@gentoo.org> (2025-11-24) # spirv-llvm-translator < 20 is not stable here. -dev-util/mesa_clc llvm_slot_17 llvm_slot_18 llvm_slot_19 +dev-util/mesa_clc llvm_slot_18 llvm_slot_19 # Andreas Sturmlechner <asturm@gentoo.org> (2025-08-29) # dev-perl/GD-Barcode is not stable here. Bug #661634 diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use b/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use index a754ce4dfe8..891c261d8e3 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use @@ -1,6 +1,12 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Ionen Wolkens <ionen@gentoo.org> (2026-01-25) +# Makes sense as a default on amd64, but pulls somewhat heavier +# dependencies for arm64 and not everyone needs this. +app-emulation/wine-staging -wow64 +app-emulation/wine-vanilla -wow64 + # Michał Górny <mgorny@gentoo.org> (2024-09-04) # Build with debugging support by default to facilitate dev-debug/dtrace # and sys-apps/systemd[bpf]. diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.mask index 1fc99d16b6e..3f15c2d3308 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.mask @@ -1,6 +1,14 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Fabian Groffen <grobian@gentoo.org> (2026-02-11) +# bitwarden-cli is not available for linux-arm64 +app-admin/vaultwarden cli + +# Ionen Wolkens <ionen@gentoo.org> (2026-02-11) +# net-libs/librist is available here +media-video/ffmpeg -rist + # Sam James <sam@gentoo.org> (2025-12-23) # sys-process/numactl is available here sys-fs/fuse -io-uring @@ -47,10 +55,6 @@ sci-libs/flexiblas -blis -openblas # dev-games/ogre is not keyworded here >=dev-games/mygui-3.4.1 ogre -# Andreas K. Hüttel <dilfridge@gentoo.org> (2025-08-06) -# aarch64 supports sframe ->=sys-libs/glibc-2.42 -sframe - # Ionen Wolkens <ionen@gentoo.org> (2025-08-01) # dev-qt/qtlanguageserver:6 is keyworded here dev-qt/qtdeclarative:6 -qmlls diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/base/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/base/package.use.mask index 0cb8547b7af..ecabb6fe99f 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/base/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/base/package.use.mask @@ -1,6 +1,14 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Ionen Wolkens <ionen@gentoo.org> (2026-02-11) +# net-libs/librist currently has very few keywords +media-video/ffmpeg rist + +# Andrey Grozin <grozin@gentoo.org> (2026-01-08) +# Needs dev-python/pyside[tools] +>=media-gfx/asymptote-3.06 gui + # Sam James <sam@gentoo.org> (2025-12-23) # sys-process/numactl is not available everywhere sys-fs/fuse io-uring @@ -58,10 +66,6 @@ sys-block/nbdkit libguestfs # lxqt-base/lxqt-wayland-session is only keyworded for amd64 at this time. lxqt-base/lxqt-meta wayland -# Paul Zander <negril.nx+gentoo@gmail.com> (2025-04-20) -# requires SYCL/DCP++ from ::science -media-gfx/blender oneapi - # Sam James <sam@gentoo.org> (2025-03-11) # The COBOL frontend only allows building on a small number of platforms # for now until more testing and integration is done. @@ -273,7 +277,6 @@ media-libs/libva-intel-driver hybrid # This is not inside use.mask, because crossdev toolchain packages would # want to have the flag enabled without hassle. <sys-libs/glibc-2.36 experimental-loong -sys-libs/libseccomp experimental-loong # Adel Kara Slimane <adel.ks@zegrapher.com> (2022-02-17) # Mask AMF keyword on non-amd64 arches @@ -416,11 +419,6 @@ media-libs/opencv contribxfeatures2d # mdblookup: dev-libs/libmaxminddb is only keyworded on amd64 and x86 at the moment app-admin/rsyslog imhttp mdblookup -# Alexis Ballier <aballier@gentoo.org> (2017-02-21) -# spacetime is only supported on amd64 at the moment. -# https://caml.inria.fr/pub/docs/manual-ocaml/spacetime.html -dev-lang/ocaml spacetime - # Luke Dashjr <luke-jr+gentoobugs@utopios.org> (2017-01-04) # Matt Whitlock <gentoo@mattwhitlock.name> (2025-04-12) # Mask assembly optimisations that are platform-specific @@ -443,11 +441,6 @@ dev-db/mysql numa # Mask jdbc as most arches don't support java dev-db/mariadb jdbc -# Alexis Ballier <aballier@gentoo.org> (2015-11-14) -# MMAL is only available on the Raspberry Pi: -# Mask it globally, unmask it on arm. -media-video/motion mmal - # Brian Evans <grknight@gentoo.org> (2015-09-14) # Mask new USE flags for mariadb which all arches do not yet have dependencies >=dev-db/mariadb-10.1.0 mroonga galera @@ -484,10 +477,6 @@ sys-apps/hwloc gl nvml # Requires net-dns/unbound which is not keyworded by most arches net-libs/gnutls dane -# Ben de Groot <yngwin@gentoo.org> (2012-07-30) -# fontconfig-infinality dependency not yet keyworded on most arches -media-libs/freetype infinality - # Mike Gilbert <floppym@gentoo.org> (2012-06-29) # sys-fs/zfs is not available everywhere. sys-boot/grub libzfs diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/package.use.mask index 51beb46c41a..3269f9f10d3 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/package.use.mask @@ -1,9 +1,13 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # NOTE: When masking a USE flag due to missing keywords, please file a keyword # request bug for the hppa arch. +# Sam James <sam@gentoo.org> (2026-02-11) +# sys-libs/libnvme not keyworded here +sys-fs/lvm2 nvme + # Alfred Wingate <parona@protonmail.com> (2025-12-24) # media-libs/jasper is not keyworded here media-libs/gegl jpeg2k @@ -251,7 +255,6 @@ media-libs/xine-lib dav1d # Adel Kara Slimane <adel.ks@zegrapher.com> (2022-03-14) # Untested useflag on other arches, needs keywording media-video/ffmpeg vmaf -media-video/ffmpeg-compat vmaf # Sam James <sam@gentoo.org> (2022-03-06) # Unkeyworded dependencies @@ -300,7 +303,7 @@ sys-libs/libcap tools # Michał Górny <mgorny@gentoo.org> (2021-07-25) # PyQt5 and wxpython are not keyworded. -dev-python/ipython gui qt5 +dev-python/ipython gui dev-python/matplotlib qt6 wxwidgets # Matt Turner <mattst88@gentoo.org> (2021-07-23) diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/use.mask index 4fbc0d43c37..f7d17d08557 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/use.mask @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Unmask the flag which corresponds to ARCH. @@ -262,7 +262,6 @@ pda # all of these are binary-only, and not presently available on this # architecture. ibm -djbfft # Added because of xmms-plugin.eclass. Please test out # media-sound/beep-media-player and remove if diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/loong/package.use.force b/sdk_container/src/third_party/portage-stable/profiles/arch/loong/package.use.force index 500c4f54a15..0914494874e 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/loong/package.use.force +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/loong/package.use.force @@ -1,4 +1,4 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Sam James <sam@gentoo.org> (2024-02-03) @@ -16,4 +16,3 @@ media-video/mpv lua_single_target_lua5-1 -lua_single_target_luajit # WANG Xuerui <xen0n@gentoo.org> (2022-04-24) # Force-enable experimental-loong on packages; we're loong. <sys-libs/glibc-2.36 experimental-loong -sys-libs/libseccomp experimental-loong diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/loong/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/loong/package.use.mask index 6257ca304d3..635ce12ec2d 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/loong/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/loong/package.use.mask @@ -1,6 +1,10 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Sam James <sam@gentoo.org> (2026-01-16) +# Unkeyworded dependencies (bug #968238) +media-video/pipewire libcamera + # WANG Xuerui <xen0n@gentoo.org> (2025-12-11) # Mysterious segfault at build time (building splash image), during exiv2 # XMP namespace registration, due to unidentified interaction between C++ @@ -168,10 +172,6 @@ dev-lang/python jit # loong yet. net-misc/chrony html -# Sam James <sam@gentoo.org> (2024-03-27) -# No rust-bin available for profiler -<virtual/rust-1.73.0 profiler - # Robin H. Johnson <robbat2@gentoo.org) (2024-03-13) # sys-cluster/corosync not yet keyworded, niche use case for mdadm sys-fs/mdadm corosync @@ -229,7 +229,6 @@ dev-python/requests-cache test # WANG Xuerui <xen0n@gentoo.org> (2023-07-26) # no llvm:15 or lld:16 on loong <dev-db/postgresql-16 llvm -<dev-lang/rust-1.73.0 wasm # Ionen Wolkens <ionen@gentoo.org> (2023-07-26) # MPV currently[1] has no plans to support >=lua5-3 making luajit @@ -311,6 +310,7 @@ app-cdr/brasero tracker # Respective dependency fails to build, pending investigation, mask for the # time being dev-cpp/libcmis man +kde-plasma/plasma-meta ocr media-libs/opencv tesseract media-video/ffmpeg ocr media-video/ffmpeg-compat ocr @@ -390,7 +390,6 @@ net-libs/libssh mbedtls # WANG Xuerui <xen0n@gentoo.org> (2022-04-24) # Unmask experimental-loong on packages; we're loong. sys-libs/glibc -experimental-loong -sys-libs/libseccomp -experimental-loong # WANG Xuerui <xen0n@gentoo.org> (2022-04-18) # Mask io-uring & zbc pending keywording diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/make.defaults index 9f932f8ed4d..60d65722cef 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/make.defaults @@ -1,4 +1,4 @@ -# Copyright 1999-2014 Gentoo Foundation +# Copyright 1999-2026 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 ARCH="m68k" @@ -18,10 +18,3 @@ DEFAULT_ABI="m68k" MULTILIB_ABIS="m68k" LIBDIR_m68k="lib" CHOST_m68k="${CHOST}" - -# Andreas K. Hüttel <dilfridge@gentoo.org> (2025-05-13) -# Since Python 3.13 is still masked, we need to re-enable Python 3.12 -# and explicitly disable 3.13 -PYTHON_SINGLE_TARGET="python3_12 -python3_13 -python3_13t -python3_14 -python3_14t" -PYTHON_TARGETS="python3_12 -python3_13 -python3_13t -python3_14 -python3_14t" -BOOTSTRAP_USE="unicode pkg-config split-usr xml python_targets_python3_12 python_single_target_python3_12" diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/package.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/package.mask index cca16eb9d80..4a96280d4f6 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/package.mask @@ -1,14 +1,2 @@ -# Copyright 2024-2025 Gentoo Authors +# Copyright 2024-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 - -# Andreas K. Hüttel <dilfridge@gentoo.org> -# Requires 32bit alignment, so we mask it for the moment -# Possibly more is broken in qemu -dev-lang/python:3.13 -dev-lang/python:3.14 -dev-lang/python:3.13t -dev-lang/python:3.14t -dev-python/python-tests:3.13 -dev-python/python-tests:3.13t -dev-python/python-tests:3.14 -dev-python/python-tests:3.14t diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/package.use.mask index 08494bce145..e4106351d1d 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/package.use.mask @@ -1,6 +1,10 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# James Le Cuirot <chewi@gentoo.org> (2026-02-09) +# There is almost certainly no m68k hardware that supports DDC. +app-misc/fastfetch ddcutil + # James Le Cuirot <chewi@gentoo.org> (2025-11-22) # gnuplot is not keyworded or tested. net-misc/ntpsec ntpviz @@ -47,7 +51,6 @@ sys-apps/systemd xkb # Adel Kara Slimane <adel.ks@zegrapher.com> (2022-03-14) # Untested useflag on other arches, needs keywording media-video/ffmpeg vmaf -media-video/ffmpeg-compat vmaf # James Le Cuirot <chewi@gentoo.org> (2022-01-09) # Most usage of KMS requires GBM, which is provided by Mesa, which currently @@ -115,10 +118,6 @@ dev-python/numpy lapack # Mask until dev-libs/libfido2 is keyworded net-misc/openssh security-key -# Sergei Trofimovich <slyfox@gentoo.org> (2019-12-02) -# dev-debug/systemtap is not keyworded on m68k -sys-libs/glibc systemtap - # Sergei Trofimovich <slyfox@gentoo.org> (2019-12-02) # media-libs/gd is not keyworded on m68k sys-libs/glibc gd diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/use.mask index 17943756c8a..cd9b83e68e2 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/use.mask @@ -1,9 +1,13 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Unmask the flag which corresponds to ARCH. -m68k +# James Le Cuirot <chewi@gentoo.org> (2026-02-28) +# Unkeyworded and untested on m68k. +systemtap + # James Le Cuirot <chewi@gentoo.org> (2025-11-22) # Vala looks like it would work well enough, but m68k doesn't need it. vala @@ -134,7 +138,6 @@ cups dbus devil diet -djbfft djvu emacs emf @@ -162,14 +165,3 @@ slang tcl tk xemacs - -# Andreas K. Hüttel <dilfridge@gentoo.org> -# Requires 32bit alignment, so we mask it for the moment -python_targets_python3_13 -python_targets_python3_13t -python_targets_python3_14 -python_targets_python3_14t -python_single_target_python3_13 -python_single_target_python3_13t -python_single_target_python3_14 -python_single_target_python3_14t diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/mipsel/o32/package.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/mipsel/o32/package.mask index 3eba8c7538c..a42c4d17620 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/mipsel/o32/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/mipsel/o32/package.mask @@ -1,4 +1,4 @@ -# Copyright 2023-2024 Gentoo Authors +# Copyright 2023-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Andreas K. Hüttel <dilfridge@gentoo.org> (2024-09-10) @@ -8,6 +8,3 @@ sys-boot/arcload # Joshua Kinard <kumba@gentoo.org> (2024-02-27) # app-arch/lrzip-next does not support 32-bit arches (#925548) app-arch/lrzip-next - -# fails to build, bug 920576 -=sys-apps/systemd-255* diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.mask index c69b9dad143..8084ddbfd50 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.mask @@ -1,12 +1,6 @@ -# Copyright 2006-2025 Gentoo Authors +# Copyright 2006-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -# Arthur Zamarin <arthurzam@gentoo.org> (2024-09-08) -# requires <llvm-18 -dev-lang/spidermonkey:102 -=dev-lang/rust-1.71.1 -=virtual/rust-1.71.1-r2 - # matoro <matoro_gentoo@matoro.tk> (2023-12-15) # Broken on BE and no way to test on LE, mask for now # https://github.com/libjxl/libjxl/issues/2433 diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.use.mask index 2d83a1d3292..87fbd55885b 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.use.mask @@ -1,6 +1,10 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Sam James <sam@gentoo.org> (2026-01-16) +# Unkeyworded dependencies (bug #968238) +media-video/pipewire libcamera + # Alfred Wingate <parona@protonmail.com> (2025-12-24) # media-libs/jasper are not keyworded here media-libs/gegl jpeg2k @@ -132,10 +136,6 @@ dev-perl/Template-Toolkit gd latex vim-syntax # requires dev-libs/hidapi to be keyworded dev-libs/libfido2 hidapi -# Matt Jolly <kangie@gentoo.org> (2024-11-03) -# Requires llvm 16 which is not keyworded -~dev-lang/rust-1.71.1 system-llvm - # Felix Janda <felix.janda@posteo.de> (2024-10-20) # requires dev-libs/libcss and net-libs/libdom to be keyworded www-client/elinks libcss @@ -368,7 +368,6 @@ app-text/enchant nuspell # Adel Kara Slimane <adel.ks@zegrapher.com> (2022-03-14) # Untested useflag on other arches, needs keywording media-video/ffmpeg vmaf -media-video/ffmpeg-compat vmaf # James Le Cuirot <chewi@gentoo.org> (2022-02-24) # These GRUB platforms are only for MIPS. diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/use.mask index f4741fa8e75..cc67acc3a1e 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/use.mask @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Arthur Zamarin <arthurzam@gentoo.org> (2024-08-26) @@ -206,7 +206,6 @@ smartcard ## architecture. #php #pike -djbfft timidity # We don't use smartcards, afaik diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/package.use.mask index 5af4ee705a6..d839408031b 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/package.use.mask @@ -1,6 +1,10 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Sam James <sam@gentoo.org> (2026-01-16) +# Unkeyworded dependencies (bug #968238) +media-video/pipewire libcamera + # Alfred Wingate <parona@protonmail.com> (2025-12-24) # media-libs/jasper is not keyworded here media-libs/gegl jpeg2k @@ -161,7 +165,6 @@ app-text/enchant nuspell # Adel Kara Slimane <adel.ks@zegrapher.com> (2022-03-14) # Untested useflag on other arches, needs keywording media-video/ffmpeg vmaf -media-video/ffmpeg-compat vmaf # Sam James <sam@gentoo.org> (2021-11-15) # librtas is available on (only) ppc* @@ -285,7 +288,7 @@ app-emulation/qemu capstone # Andreas Sturmlechner <asturm@gentoo.org> (2018-03-02) # Requires unkeyworded deps ->=dev-python/ipython-5.4.1 gui qt5 +>=dev-python/ipython-5.4.1 gui # Amy Liffey <amynka@gentoo.org> (2018-01-21) # dev-libs/cereal not keyworded for ppc diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/package.use.stable.mask index ae12620d946..7a25f9c4f6f 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/package.use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/package.use.stable.mask @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # When you add an entry to the top of this file, add your name, the date, and @@ -51,10 +51,6 @@ media-libs/mesa video_cards_zink vulkan vulkan-overlay # Needs stable net-libs/webkit-gtk, bug #684702 dev-util/geany-plugins markdown -# Andreas Sturmlechner <asturm@gentoo.org> (2019-09-17) -# media-video/pipewire is not stable yet -x11-wm/mutter screencast - # Michał Górny <mgorny@gentoo.org> (2018-08-26) # Non-stable dependency. Used to be masked completely. media-sound/abcde replaygain diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc32/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc32/package.use.stable.mask index 6013b323b1d..9bc348523c2 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc32/package.use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc32/package.use.stable.mask @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # When you add an entry to the top of this file, add your name, the date, and @@ -49,7 +49,6 @@ dev-perl/PDL gsl dev-python/numpy lapack dev-python/pythran test media-gfx/graphviz gts -media-libs/a52dec djbfft sci-libs/gsl cblas-external sci-libs/hdf5 szip diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.use.mask index 75c8584f802..8009e7e664e 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.use.mask @@ -1,6 +1,10 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-14) +# <dev-cpp/opentelemetry-cpp-1.10 not keyworded here, bug #961188 +>=sys-cluster/ceph-20 jaeger + # Andreas Sturmlechner <asturm@gentoo.org> (2025-10-08) # dev-libs/weston is not stable. gui-apps/sddm-gentoo-config weston diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/ppc/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/ppc/package.use.mask index a017bb4c08e..77412e738a2 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/ppc/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/ppc/package.use.mask @@ -1,6 +1,14 @@ -# Copyright 2023-2025 Gentoo Authors +# Copyright 2023-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Nicolas PARLANT <nicolas.parlant@parhuet.fr> (2026-02-23) +# x11-libs/qtermwidget is not keyworded here +app-office/texstudio qtermwidget + +# Jaco Kroon <jaco@uls.co.za> (2026-02-06) +# Requires sys-auth/libyubikey +net-dialup/freeradius yubikey + # Eli Schwartz <eschwartz@gentoo.org> (2025-12-09) # libyuv is Google code, fails on "fringe" arches. # https://bugs.gentoo.org/959389 diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/s390/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/s390/package.use.mask index 4d51c64acaa..03795ce89a9 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/s390/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/s390/package.use.mask @@ -1,6 +1,10 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Sam James <sam@gentoo.org> (2026-02-11) +# sys-libs/libnvme not keyworded here +sys-fs/lvm2 nvme + # Sam James <sam@gentoo.org> (2025-12-18) # dev-lang/ada-bootstrap exists here >=sys-devel/gcc-11 -ada @@ -292,7 +296,6 @@ app-portage/nattka depgraph-order # Adel Kara Slimane <adel.ks@zegrapher.com> (2022-03-14) # Untested useflag on other arches, needs keywording media-video/ffmpeg vmaf -media-video/ffmpeg-compat vmaf # Sam James <sam@gentoo.org> (2021-11-05) # Avoid keywording unnecessary depenencies for now, bug #804115 diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/s390/s390x/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/s390/s390x/package.use.mask index 56e0148ca36..311a3d7e4f9 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/s390/s390x/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/s390/s390x/package.use.mask @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Andreas K. Hüttel <dilfridge@gentoo.org> (2024-07-27) @@ -14,7 +14,3 @@ media-libs/imlib2 svg # libpcre2 has JIT support for s390x (not s390) # but it doesn't seem to build right now? dev-libs/libpcre2 jit - -# Andreas K. Hüttel <dilfridge@gentoo.org> (2022-06-28) -# Fails to build -=dev-libs/nettle-3.8* asm diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.use.mask index d257582f547..9ac1f206c8c 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.use.mask @@ -1,6 +1,18 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Jaco Kroon <jaco@uls.co.za> (2026-02-06) +# Requires sys-auth/libyubikey +net-dialup/freeradius yubikey + +# Ian Jordan <immoloism@gmail.com> (2026-02-04) +# Unkeyworded dependencies (bug #951360) +app-accessibility/brltty ocaml ocamlopt + +# Sam James <sam@gentoo.org> (2026-01-16) +# Unkeyworded dependencies (bug #968238) +media-video/pipewire libcamera + # Lukas Schmelting <lschmelting@posteo.com> (2025-11-09) # gnome-online-accounts is unkeyworded and in use.mask for sparc gnome-base/gvfs gnome-online-accounts google onedrive @@ -354,7 +366,6 @@ media-libs/freetype svg # Adel Kara Slimane <adel.ks@zegrapher.com> (2022-03-14) # Untested useflag on other arches, needs keywording media-video/ffmpeg vmaf -media-video/ffmpeg-compat vmaf # Sam James <sam@gentoo.org> (2022-03-06) # Unkeyworded dependencies diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.use.stable.mask index ed87c3d0763..91083166559 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.use.stable.mask @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Gentoo Authors +# Copyright 2019-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Andreas Sturmlechner <asturm@gentoo.org> (2025-08-29) @@ -82,11 +82,6 @@ dev-python/matplotlib wxwidgets # bug #766051 app-text/dblatex inkscape -# Sam James <sam@gentoo.org> (2021-01-04) -# Drags in qt which is not stable here -# bug #763405 -media-libs/libprojectm jack - # Rolf Eike Beer <eike@sf-mail.de> (2020-04-27) # app-shells/fish dependency is broken on sparc, bug #727684 dev-python/argcomplete test diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/use.mask index e95556f7358..d4a641596fc 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/use.mask @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Unmask the flag which corresponds to ARCH. @@ -186,7 +186,6 @@ redis # USE-flags from differents origins brltty -djbfft dvb java lirc diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.mask index 77c30d7e619..4e0ca50ea8c 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.mask @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Mike Gilbert <floppym@gentoo.org> (2025-12-15) @@ -402,10 +402,6 @@ app-admin/conserver -freeipmi # Requires dev-db/mongodb which has dropped x86 support dev-php/pecl-mongodb test -# Jan Ziak <0xe2.0x9a.0x9b@gmail.com> (2018-03-14) -# Expose SVGA backend for x86 users -app-emulation/fuse -backend-svga - # Thomas Deutschmann <whissi@gentoo.org> (2018-02-10) # Requires dev-db/mongodb which has dropped x86 support dev-libs/mongo-c-driver test diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.stable.mask index f9ae7a924c0..9303b909b26 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.stable.mask @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # When you add an entry to the top of this file, add your name, the date, and @@ -87,7 +87,6 @@ app-emulation/libvirt nbd # Destabilizing x86 keywords on sci-*/* packages app-metrics/collectd collectd_plugins_gps dev-libs/efl physics -media-libs/a52dec djbfft dev-python/graphviz test dev-python/sympy symengine kde-apps/marble gps diff --git a/sdk_container/src/third_party/portage-stable/profiles/base/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/base/make.defaults index 080ad2a8c58..0cf671e0cbc 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/base/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/base/make.defaults @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # # System-wide defaults for the Portage system @@ -12,7 +12,7 @@ USE_EXPAND_VALUES_KERNEL="Darwin linux SunOS" # Env vars to expand into USE vars. Modifying this requires prior # discussion on gentoo-dev@lists.gentoo.org. -USE_EXPAND="ABI_MIPS ABI_S390 ABI_X86 ADA_TARGET ALSA_CARDS AMDGPU_TARGETS APACHE2_MODULES APACHE2_MPMS CALLIGRA_FEATURES CAMERAS COLLECTD_PLUGINS CPU_FLAGS_ARM CPU_FLAGS_PPC CPU_FLAGS_X86 CURL_SSL CURL_QUIC ELIBC FFTOOLS GPSD_PROTOCOLS GRUB_PLATFORMS GUILE_SINGLE_TARGET GUILE_TARGETS INPUT_DEVICES KERNEL L10N LCD_DEVICES LIBREOFFICE_EXTENSIONS LLVM_SLOT LLVM_TARGETS LUA_SINGLE_TARGET LUA_TARGETS NGINX_MODULES_HTTP NGINX_MODULES_MAIL NGINX_MODULES_STREAM OFFICE_IMPLEMENTATION OPENMPI_FABRICS OPENMPI_OFED_FEATURES OPENMPI_RM PERL_FEATURES PHP_TARGETS POSTGRES_TARGETS PYTHON_SINGLE_TARGET PYTHON_TARGETS QEMU_SOFTMMU_TARGETS QEMU_USER_TARGETS RUBY_TARGETS RUST_SYSROOTS SANE_BACKENDS UWSGI_PLUGINS VIDEO_CARDS VOICEMAIL_STORAGE XTABLES_ADDONS SELINUX_POLICY_TYPES" +USE_EXPAND="ABI_MIPS ABI_S390 ABI_X86 ADA_TARGET ALSA_CARDS AMDGPU_TARGETS APACHE2_MODULES APACHE2_MPMS CALLIGRA_FEATURES CAMERAS COLLECTD_PLUGINS CPU_FLAGS_ARM CPU_FLAGS_PPC CPU_FLAGS_X86 CURL_SSL CURL_QUIC ELIBC GPSD_PROTOCOLS GRUB_PLATFORMS GUILE_SINGLE_TARGET GUILE_TARGETS INPUT_DEVICES KERNEL L10N LCD_DEVICES LIBREOFFICE_EXTENSIONS LLVM_SLOT LLVM_TARGETS LUA_SINGLE_TARGET LUA_TARGETS NGINX_MODULES_HTTP NGINX_MODULES_MAIL NGINX_MODULES_STREAM OFFICE_IMPLEMENTATION OPENMPI_FABRICS OPENMPI_OFED_FEATURES OPENMPI_RM PERL_FEATURES PHP_TARGETS POSTGRES_TARGETS PYTHON_SINGLE_TARGET PYTHON_TARGETS QEMU_SOFTMMU_TARGETS QEMU_USER_TARGETS RUBY_TARGETS RUST_SYSROOTS SANE_BACKENDS UWSGI_PLUGINS VIDEO_CARDS VOICEMAIL_STORAGE XTABLES_ADDONS SELINUX_POLICY_TYPES" # USE_EXPAND variables whose contents are not shown in package manager # output. Changes need discussion on gentoo-dev. @@ -77,7 +77,7 @@ COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" # Tomáš Chvátal <scarabeus@gentoo.org> (2010-10-26) # By default enable all protocols for average GPS user -GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" +GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax navcom oncore skytraq superstar2 tsip tripmate tnt" # Benedikt Böhm <hollow@gentoo.org> (2007-11-27) # Sane defaults for built-in apache modules diff --git a/sdk_container/src/third_party/portage-stable/profiles/base/package.mask b/sdk_container/src/third_party/portage-stable/profiles/base/package.mask index 34718c79be6..b92b4b417b5 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/base/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/base/package.mask @@ -1,6 +1,10 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Sam James <sam@gentoo.org> (2026-02-18) +# Needs systemd so unmasked in targets/systemd +kde-plasma/plasma-login-manager + # Paul Zander <negril.nx+gentoo@gmail.com> (2025-11-28) # Requires media-libs/openjph #966735 media-libs/openexr:0/33 diff --git a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.force b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.force index d502519388a..ff10e3cfffb 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.force +++ b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.force @@ -1,17 +1,18 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -# Michael Orlitzky <mjo@gentoo.org> (2025-12-22) -# James Le Cuirot <chewi@gentoo.org> (2025-11-18) -# 2.50.1 fails with gstreamer disabled (bug #965971), -# and its replacement fails to non-jumbo build. -=net-libs/webkit-gtk-2.50.1*:4.1 gstreamer -=net-libs/webkit-gtk-2.50.4-r410 jumbo-build -=net-libs/webkit-gtk-2.50.4-r600 jumbo-build +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-12) +# Fails to build without. Bug #968803 +=sci-libs/opencascade-7.8* opengl + +# Michael Orlitzky <mjo@gentoo.org> (2025-02-22) +# 2.50.5 fails to non-jumbo build (bug 970412). +=net-libs/webkit-gtk-2.50.5-r410 jumbo-build +=net-libs/webkit-gtk-2.50.5-r600 jumbo-build # Andreas Sturmlechner <asturm@gentoo.org> (2025-06-22) # This is currently more footgun than real option. Bugs #958638, #968227 -<kde-plasma/kwin-6.6.0 X +<kde-plasma/kwin-6.7.0 X # Ionen Wolkens <ionen@gentoo.org> (2025-06-17) # Build system currently does not allow static libs to be optional, and @@ -86,6 +87,12 @@ llvm-runtimes/libcxxabi clang # echo "dev-lang/rust:${slot} llvm_slot_${_RUST_LLVM_MAP[${slot}]}" # echo "dev-lang/rust-bin:${slot} llvm_slot_${_RUST_LLVM_MAP[${slot}]}" # done +dev-lang/rust:1.94.0 llvm_slot_21 +dev-lang/rust-bin:1.94.0 llvm_slot_21 +dev-lang/rust:1.93.1 llvm_slot_21 +dev-lang/rust-bin:1.93.1 llvm_slot_21 +dev-lang/rust:1.93.0 llvm_slot_21 +dev-lang/rust-bin:1.93.0 llvm_slot_21 dev-lang/rust:1.92.0 llvm_slot_21 dev-lang/rust-bin:1.92.0 llvm_slot_21 dev-lang/rust:1.91.0 llvm_slot_21 @@ -133,12 +140,6 @@ dev-lang/rust-bin:1.74.1 llvm_slot_17 # Poor rendering performance otherwise (bug #931215). kde-plasma/kwin filecaps -# James Le Cuirot <chewi@gentoo.org> (2024-06-02) -# Requires FFmpeg 7.0, which we don't have yet, so force Chromium fork. ->=dev-libs/nwjs-0.88.0 ffmpeg-chromium ->=www-client/vivaldi-6.8.3371.4 ffmpeg-chromium ->=www-client/vivaldi-snapshot-6.8.3371.4 ffmpeg-chromium - # Ionen Wolkens <ionen@gentoo.org> (2024-04-10) # Flipping the zstd USE state is unsafe and can break *tons* of Qt revdeps # including many KDE packages and Qt itself without rebuilds due to losing diff --git a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.mask index cd445b0546a..0755465cbaa 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.mask @@ -6,6 +6,21 @@ # New entries go on top. +# Volkmar W. Pogatzki <gentoo@pogatzki.net> (2026-01-30) +# No suitable versions of dev-libs/protobuf available. +~dev-java/protobuf-java-4.33.5 system-protoc + +# Sam James <sam@gentoo.org> (2026-02-14) +# binutils-2.46 changes SFrame format to v3. We don't want binaries +# distributed with v2 and binutils doesn't support mixing v2+v3. From +# v3 on, compatibility will be guaranteed. Please rebuild without SFrames +# first with <binutils-2.46. +sys-libs/glibc sframe + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-01-15) +# KF5/Qt5 integration is no longer worth it. +kde-plasma/plasma-meta qt5 + # Eli Schwartz <eschwartz@gentoo.org> (2026-01-09) # tests fail to build during src_compile: # - needs demos to be built @@ -29,9 +44,9 @@ dev-java/openjdk:27 javafx sci-libs/adolc mpi # Ionen Wolkens <ionen@gentoo.org> (2025-12-24) -# cargo.eclass' IUSE=debug cannot currently be easily supported by -# the custom builder the package uses, mask to avoid no-op rebuilds +# Packages where cargo.eclass' IUSE=debug cannot easily be supported # (use RUSTFLAGS if need debug symbols, see also bug #967921) +games-strategy/naev debug media-libs/subrandr debug # Andreas Sturmlechner <asturm@gentoo.org> (2025-12-21) @@ -41,7 +56,7 @@ gui-wm/hyprland qtutils # Michał Górny <mgorny@gentoo.org> (2025-12-20) # Needs last-rited dev-lang/julia. -kde-apps/cantor julia +<kde-apps/cantor-25.12.2-r1 julia # Sam James <sam@gentoo.org> (2025-12-07) # Needs not-yet-released GCC 16. @@ -67,10 +82,6 @@ dev-libs/libgcrypt verify-sig dev-libs/libgpg-error verify-sig dev-libs/libksba verify-sig -# Volkmar W. Pogatzki <gentoo@pogatzki.net> (2025-10-16) -# No suitable versions of dev-libs/protobuf available. -~dev-java/protobuf-java-4.33.0 system-protoc - # Fabian Groffen <grobian@gentoo.org> (2025-10-18) # PAM support is discouraged due to not being secure via Exim # https://bugs.gentoo.org/964377 @@ -94,21 +105,10 @@ dev-python/numpy index64 # Marked Beta tier upstream. Tests don't work with it. dev-games/ogre vulkan -# Andreas K. Hüttel <dilfridge@gentoo.org> (2025-08-06) -# General mask, to be unmasked on arches where glibc supports this ->=sys-libs/glibc-2.42 sframe - # Alfred Wingate (2025-07-31) # Missing dependency sci-libs/gdal mongodb -# Ivy <openrc@posteo.de> (2025-07-11) -# app-editors/gnome-text-editor[spell] has been dropped upstream and -# replaced with app-text/libspelling, but will likely be added back -# in future releases. -~app-editors/gnome-text-editor-47.2 spell -~app-editors/gnome-text-editor-47.4 spell - # Andreas Sturmlechner <asturm@gentoo.org> (2025-06-26) # >=kde-plasma/drkonqi-6.3.90 requires systemd, so specifically # unmasked only in targets/systemd. @@ -177,11 +177,6 @@ sys-cluster/drbd-utils pacemaker # restricted to ancient ffmpeg. sci-libs/opencascade ffmpeg -# Sam James <sam@gentoo.org> (2025-02-21) -# Mask for older GTK to phase in enabling Vulkan for users (and avoid a surprise -# for stable users, as Vulkan is enabled by default on desktop profiles). -<gui-libs/gtk-4.16 vulkan - # Michał Górny <mgorny@gentoo.org> (2025-02-20) # Requires dev-python/recommonmark with Python 3.10 <llvm-core/clang-18 doc @@ -228,10 +223,6 @@ media-libs/opencv atlas # seccomp is only supported with systemd sys-apps/fwupd seccomp -# Sam James <sam@gentoo.org> (2024-11-17) -# The example bindings fail to build. -~sys-libs/ncurses-6.5_p20241109 cxx - # Joonas Niilola <juippis@gentoo.org> (2024-11-16) # Wasm support is (currently) only available on amd64 and arm64. www-client/firefox wasm-sandbox @@ -457,15 +448,6 @@ mail-client/thunderbird system-icu # obvious. net-libs/nodejs lto -# Sam James <sam@gentoo.org> (2023-06-29) -# Insecure old versions of the SSL/TLS protocol. -net-libs/gnutls sslv2 sslv3 -dev-libs/openssl sslv2 sslv3 - -# Sam James <sam@gentoo.org> (2023-06-29) -# Needs <dev-libs/openssl-3 which is EOL beyond September 2023. -net-misc/curl sslv3 - # Joonas Niilola <juippis@gentoo.org> (2023-06-06) # Runtime not tested, may require more configuration in the ebuild. # Bug: #906509. @@ -826,11 +808,6 @@ dev-python/statsmodels doc # Here we are following that path too. >=sys-libs/glibc-2.33-r2 crypt -# Craig Andrews <candrews@gentoo.org> (2019-09-12) -# OpenSSL (as of version 1.1.1) doesn't have APIs for QUIC support -# see https://github.com/openssl/openssl/pull/8797 -net-libs/ngtcp2 openssl - # Thomas Deutschmann <whissi@gentoo.org> (2019-09-02) # PGO not yet supported for comm-central, bug #693160 >=mail-client/thunderbird-68 pgo @@ -856,6 +833,9 @@ mail-client/claws-mail litehtml # terms. Masked to prevent accidental installation of these files, # bug #318841#c20. sys-kernel/linux-firmware unknown-license +# Updated: Nowa Ammerlaan <nowa@gentoo.org> (2025-12-30) +# alsa-firmware distributes these same files, sync the behaviour of +# both packages. Bug #969656. sys-firmware/alsa-firmware alsa_cards_korg1212 sys-firmware/alsa-firmware alsa_cards_maestro3 sys-firmware/alsa-firmware alsa_cards_sb16 @@ -889,10 +869,6 @@ sys-block/fio static # sys-cluster/ceph is only available on amd64 & x86, unmask per arch net-fs/samba ceph -# Jan Ziak <0xe2.0x9a.0x9b@gmail.com> (2018-03-14) -# media-libs/svgalib is not keyworded everywhere -app-emulation/fuse backend-svga - # Andreas K. Hüttel <dilfridge@gentoo.org> (2018-02-02) # This feature is not ready yet pre-2.29-r4, see bug #146882 comment 26 <sys-libs/glibc-2.29-r4 compile-locales diff --git a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.stable.force b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.stable.force index 99d1bdee75d..f4f3906d138 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.stable.force +++ b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.stable.force @@ -1,9 +1,17 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # New entries go on top. # Please use the same syntax as in package.use.force. +# James Le Cuirot <chewi@gentoo.org> (2026-02-27) +# These currently require an unstable media-video/ffmpeg if not using +# ffmpeg-chromium. This is unlikely to change because Chromium upstream tends +# to use bleeding edge ffmpeg. +dev-libs/nwjs ffmpeg-chromium +www-client/vivaldi ffmpeg-chromium +www-client/vivaldi-snapshot ffmpeg-chromium + ## Kent Fredric <kentnl@gentoo.org> (2019-07-11) # The absense of these features require dev-perl/GD, which currently # can't be considered stable due to serious defects upstream. diff --git a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.stable.mask index 1c2725376ca..b2e5b223cd0 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.stable.mask @@ -1,9 +1,16 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # New entries go on top. # Please use the same syntax as in package.use.mask. +# Alfred Wingate <parona@protonmail.com> (2026-01-31) +# Experimental upstream. +# lgi in a weird state where tests either fail for the last real release +# or the plugin example doesn't work at all for the newer snapshot. +# Bug #969479 +media-gfx/gimp lua + # Alexey Shvetsov <alexxy@gentoo.org> (2025-10-29) # Need non-yet-stable caffe2 sci-chemistry/gromacs nnpot @@ -116,10 +123,6 @@ sys-apps/earlyoom man # app-text/pandoc (dev-lang/ghc) has no stable keywords. app-emulation/xen-tools doc -# Sergei Trofimovich <slyfox@gentoo.org> (2020-04-13) -# dev-util/shellcheck (dev-lang/ghc) has no stable keywords. -app-emulation/winetricks test - # Georgy Yakovlev <gyakovlev@gentoo.org> (2019-12-21) # For bleeding edge features and testing, not generally suitable # for stable systems diff --git a/sdk_container/src/third_party/portage-stable/profiles/base/use.mask b/sdk_container/src/third_party/portage-stable/profiles/base/use.mask index c4620e1f9df..48f1e6036e6 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/base/use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/base/use.mask @@ -1,9 +1,14 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # This file is only for generic masks. For arch-specific masks (i.e. # mask everywhere, unmask on arch/*) use arch/base. +# Michał Górny <mgorny@gentoo.org> (2026-01-13) +# LLVM 15 is only required by masked packages. It will be removed when +# the reverse dependencies are gone. Bug #920536. +llvm_slot_15 + # Sam James <sam@entoo.org> (2025-12-02) # GCC 16 is not yet released ada_target_gcc_16 @@ -13,10 +18,6 @@ ada_target_gcc_16 # receive security updates. ruby_targets_ruby31 -# Michał Górny <mgorny@gentoo.org> (2024-12-31) -# LLVM slots with no keyworded releases yet. -llvm_slot_22 - # Andreas Sturmlechner <asturm@gentoo.org> (2024-12-11) # dev-db/firebird last-rites preparation firebird diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/systemd/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/systemd/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/systemd/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/systemd/parent new file mode 100644 index 00000000000..7e061533c15 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/systemd/parent @@ -0,0 +1,2 @@ +.. +../../../../../../targets/systemd diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/systemd/use.mask b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/systemd/use.mask new file mode 100644 index 00000000000..6f371455069 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/systemd/use.mask @@ -0,0 +1,6 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Alfred Wingate <parona@protonmail.com> (2025-09-20) +# Generic images are built with systemd and only available on arm64 and amd64 +-generic-uki diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv4/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv4/parent index 83a59150802..9b00ab29d52 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv4/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv4/parent @@ -1,2 +1,3 @@ .. ../../../../../../arch/arm/armv4 +../../../../../../features/time64 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv4t/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv4t/parent index 326a4a498b5..3acdfa1f725 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv4t/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv4t/parent @@ -1,2 +1,3 @@ .. ../../../../../../arch/arm/armv4t +../../../../../../features/time64 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv5te/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv5te/parent index de09636f07c..d7e6c93ed92 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv5te/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv5te/parent @@ -1,2 +1,3 @@ .. ../../../../../../arch/arm/armv5te +../../../../../../features/time64 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv6j_hf/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv6j_hf/parent index 23cf6b6a89d..96cdbe02149 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv6j_hf/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv6j_hf/parent @@ -1,2 +1,3 @@ .. ../../../../../../arch/arm/23.0-armv6j_hf +../../../../../../features/time64 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv6j_sf/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv6j_sf/parent index 04a7db3e5f2..53a22d08dab 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv6j_sf/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv6j_sf/parent @@ -1,2 +1,3 @@ .. ../../../../../../arch/arm/23.0-armv6j_sf +../../../../../../features/time64 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv7a_hf/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv7a_hf/parent index 5b757f7a4eb..509dac420e8 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv7a_hf/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv7a_hf/parent @@ -1,2 +1,3 @@ .. ../../../../../../arch/arm/23.0-armv7a_hf +../../../../../../features/time64 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv7a_sf/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv7a_sf/parent index 0dd928ec9ce..f124513f3c7 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv7a_sf/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/armv7a_sf/parent @@ -1,2 +1,3 @@ .. ../../../../../../arch/arm/23.0-armv7a_sf +../../../../../../features/time64 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv4/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv4/parent index 3aefca65da7..cab8fe9859f 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv4/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv4/parent @@ -1,2 +1,3 @@ .. ../../../../../../../arch/arm/armv4 +../../../../../../../features/time64 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv4t/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv4t/parent index 43e4bcfa3e1..43ccb7b485b 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv4t/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv4t/parent @@ -1,2 +1,3 @@ .. ../../../../../../../arch/arm/armv4t +../../../../../../../features/time64 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv5te/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv5te/parent index bc77c87767e..4f7b2620f2d 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv5te/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv5te/parent @@ -1,2 +1,3 @@ .. ../../../../../../../arch/arm/armv5te +../../../../../../../features/time64 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv6j_hf/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv6j_hf/parent index 3f27d8771a6..d284a51b634 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv6j_hf/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv6j_hf/parent @@ -1,2 +1,3 @@ .. ../../../../../../../arch/arm/23.0-armv6j_hf +../../../../../../../features/time64 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv6j_sf/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv6j_sf/parent index fea5205e898..24529caea15 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv6j_sf/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv6j_sf/parent @@ -1,2 +1,3 @@ .. ../../../../../../../arch/arm/23.0-armv6j_sf +../../../../../../../features/time64 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv7a_hf/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv7a_hf/parent index 8d7b0aedfd1..0fccc0eb704 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv7a_hf/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv7a_hf/parent @@ -1,2 +1,3 @@ .. ../../../../../../../arch/arm/23.0-armv7a_hf +../../../../../../../features/time64 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv7a_sf/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv7a_sf/parent index 1fff6da6f4a..1d066542cf2 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv7a_sf/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm/23.0/time64/split-usr/armv7a_sf/parent @@ -1,2 +1,3 @@ .. ../../../../../../../arch/arm/23.0-armv7a_sf +../../../../../../../features/time64 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/m68k/23.0/time64/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/m68k/23.0/time64/make.defaults index d65c7b4737b..9c1459cba34 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/m68k/23.0/time64/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/m68k/23.0/time64/make.defaults @@ -1,4 +1,4 @@ -# Copyright 2024-2025 Gentoo Authors +# Copyright 2024-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 CHOST="m68k-aligned-linux-gnut64" @@ -8,12 +8,3 @@ CFLAGS="${CFLAGS} -malign-int" CXXFLAGS="${CXXFLAGS} -malign-int" FCFLAGS="${FCFLAGS} -malign-int" FFLAGS="${FFLAGS} -malign-int" - -# As opposed to old-style m68k, python-3.13 (and later?) works here -# Unfortunately, since the main m68k profile overwrites these variables, -# we cannot simply go back to the base settings but need to overwrite -# them *again*. -PYTHON_SINGLE_TARGET="-python3_12 python3_13 -python3_13t -python3_14 -python3_14t" -PYTHON_TARGETS="-python3_12 python3_13 -python3_13t -python3_14 -python3_14t" -BOOTSTRAP_USE="unicode pkg-config split-usr xml python_targets_python3_13 python_single_target_python3_13" - diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/m68k/23.0/time64/package.mask b/sdk_container/src/third_party/portage-stable/profiles/default/linux/m68k/23.0/time64/package.mask index 6b44966a1a4..2f909d3976f 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/m68k/23.0/time64/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/m68k/23.0/time64/package.mask @@ -1,11 +1,7 @@ -# Copyright 2025 Gentoo Authors +# Copyright 2025-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Andreas K. Hüttel <dilfridge@gentoo.org> (2025-06-02) # Since we are using -maligned-int by default here, we also need the # corresponding fixed / patched toolchain versions... <sys-libs/glibc-2.41-r2 - -# Python 3.13 works here. Not sure about 3.14 yet, we'll find out. --dev-lang/python:3.13 --dev-lang/python:3.13t diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/m68k/23.0/time64/use.mask b/sdk_container/src/third_party/portage-stable/profiles/default/linux/m68k/23.0/time64/use.mask index fb0609be0e6..e372988739b 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/m68k/23.0/time64/use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/m68k/23.0/time64/use.mask @@ -1,12 +1,2 @@ -# Copyright 2025 Gentoo Authors +# Copyright 2025-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 - -# Andreas K. Hüttel <dilfridge@gentoo.org> (2025-06-02) -# Since we are using -maligned-int by default, -# Python 3.13 works here. Not sure about 3.14 yet, we'll find out. --python_targets_python3_13 --python_targets_python3_13t --python_single_target_python3_13 --python_single_target_python3_13 --python_single_target_python3_14 --python_single_target_python3_14t diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv32/ilp32/musl/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv32/ilp32/musl/systemd/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv32/ilp32/musl/systemd/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv32/ilp32/musl/systemd/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv32/ilp32/musl/systemd/parent new file mode 100644 index 00000000000..f7739b40587 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv32/ilp32/musl/systemd/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../../targets/systemd diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv32/ilp32d/musl/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv32/ilp32d/musl/systemd/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv32/ilp32d/musl/systemd/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv32/ilp32d/musl/systemd/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv32/ilp32d/musl/systemd/parent new file mode 100644 index 00000000000..f7739b40587 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv32/ilp32d/musl/systemd/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../../targets/systemd diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64/musl/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64/musl/systemd/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64/musl/systemd/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64/musl/systemd/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64/musl/systemd/parent new file mode 100644 index 00000000000..f7739b40587 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64/musl/systemd/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../../targets/systemd diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64d/musl/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64d/musl/systemd/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64d/musl/systemd/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64d/musl/systemd/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64d/musl/systemd/parent new file mode 100644 index 00000000000..f7739b40587 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64d/musl/systemd/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../../targets/systemd diff --git a/sdk_container/src/third_party/portage-stable/profiles/desc/apache2_modules.desc b/sdk_container/src/third_party/portage-stable/profiles/desc/apache2_modules.desc index 2370787710d..52d79496f72 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/desc/apache2_modules.desc +++ b/sdk_container/src/third_party/portage-stable/profiles/desc/apache2_modules.desc @@ -1,4 +1,4 @@ -# Copyright 2007-2025 Gentoo Authors +# Copyright 2007-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # This file contains descriptions of APACHE2_MODULES USE_EXPAND flags. @@ -94,7 +94,6 @@ socache_shmcb - A shared object cache provider using a high-performance cyclic b speling - Attempts to correct mistaken URLs that users might have entered by ignoring capitalization and by allowing up to one misspelling status - Provides information on server activity and performance substitute - Perform search and replace operations on response bodies -tls - mod_tls TLS module for Apache, intended to replace mod_ssl unique_id - Provides an environment variable with a unique identifier for each request unixd - Basic (required) security for Unix-family platforms userdir - User-specific directories diff --git a/sdk_container/src/third_party/portage-stable/profiles/desc/fftools.desc b/sdk_container/src/third_party/portage-stable/profiles/desc/fftools.desc deleted file mode 100644 index c1192d423e6..00000000000 --- a/sdk_container/src/third_party/portage-stable/profiles/desc/fftools.desc +++ /dev/null @@ -1,18 +0,0 @@ -# Copyright 1999-2014 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -# This file contains descriptions of FFTOOLS USE-EXPANDED variables. -# Keep it sorted. - -aviocat - cat's a URL to another one, useful for dumping streams. -cws2fws - converts cws files (Macromedia Flash, compressed) to fws ones (Macromedia Flash, uncompressed). -ffescape - Escapes an input string, adopting the av_get_token() escaping logic. -ffeval - A simple expression evalutor. -ffhash - Computes a file's digest using libavutil algorithms. -fourcc2pixfmt - Shows the relationships between rawvideo pixel formats and FourCC tags. -graph2dot - A tool to convert a libavfilter graph to a dot file. -ismindex - A tool for creating smooth streaming manifests. -pktdumper - Dumps packets as demuxed by libavformat. -qt-faststart - Rearranges a Quicktime file to facilitate network streaming. -sidxindex - Write an MPD file for fragmented MP4 files with a sidx index at the start of the file. -trasher - Writes burts of random data into a file. Great for testing error robustness/resilience/concealment. diff --git a/sdk_container/src/third_party/portage-stable/profiles/desc/gpsd_protocols.desc b/sdk_container/src/third_party/portage-stable/profiles/desc/gpsd_protocols.desc index 31d9dbaf916..7d6f18f00e4 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/desc/gpsd_protocols.desc +++ b/sdk_container/src/third_party/portage-stable/profiles/desc/gpsd_protocols.desc @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # This file contains descriptions of possible protocols for gpsd package. @@ -19,14 +19,10 @@ isync - Isync protocol support itrax - iTrax protocol support navcom - Navcom protocol support nmea2000 - NMEA2000/CAN support -oceanserver - OceanServer protocol support oncore - OnCore protocol support -rtcm104v2 - RTCM104V2 protocol support -rtcm104v3 - RTCM104V3 protocol support sirf - SiRF protocol support skytraq - Skytraq protocol support superstar2 - SuperStarII protocol support tnt - True North protocol support tripmate - Tripmate protocol support tsip - Trimble TSIP protocol support -ublox - U-Blox Protocol support diff --git a/sdk_container/src/third_party/portage-stable/profiles/desc/guile_single_target.desc b/sdk_container/src/third_party/portage-stable/profiles/desc/guile_single_target.desc index 81322b2380d..07acf41abe3 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/desc/guile_single_target.desc +++ b/sdk_container/src/third_party/portage-stable/profiles/desc/guile_single_target.desc @@ -1,8 +1,7 @@ -# Copyright 2024 Gentoo Authors +# Copyright 2024-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # This file contains descriptions of GUILE_SINGLE_TARGET USE_EXPAND flags. -1-8 - Build only for GNU Guile 1.8. 2-2 - Build only for GNU Guile 2.2. 3-0 - Build only for GNU Guile 3.0. diff --git a/sdk_container/src/third_party/portage-stable/profiles/desc/llvm_slot.desc b/sdk_container/src/third_party/portage-stable/profiles/desc/llvm_slot.desc index 360d6e6eab6..688a2f4a01e 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/desc/llvm_slot.desc +++ b/sdk_container/src/third_party/portage-stable/profiles/desc/llvm_slot.desc @@ -9,3 +9,4 @@ 20 - Use LLVM 20. 21 - Use LLVM 21. 22 - Use LLVM 22. +23 - Use LLVM 23. diff --git a/sdk_container/src/third_party/portage-stable/profiles/desc/ruby_targets.desc b/sdk_container/src/third_party/portage-stable/profiles/desc/ruby_targets.desc index 4f98340883f..b13422a1d87 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/desc/ruby_targets.desc +++ b/sdk_container/src/third_party/portage-stable/profiles/desc/ruby_targets.desc @@ -1,9 +1,8 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # This file contains descriptions of RUBY_TARGETS USE_EXPAND flags. -ruby30 - Build with MRI Ruby 3.0.x ruby31 - Build with MRI Ruby 3.1.x ruby32 - Build with MRI Ruby 3.2.x ruby33 - Build with MRI Ruby 3.3.x diff --git a/sdk_container/src/third_party/portage-stable/profiles/desc/voicemail_storage.desc b/sdk_container/src/third_party/portage-stable/profiles/desc/voicemail_storage.desc index 3e59fb64f81..307e2ad2155 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/desc/voicemail_storage.desc +++ b/sdk_container/src/third_party/portage-stable/profiles/desc/voicemail_storage.desc @@ -1,10 +1,9 @@ -# Copyright 2006 Gentoo Foundation. +# Copyright 2006-2026 Gentoo Authors. # Distributed under the terms of the GNU General Public License v2 # This file contains descriptions of VOICEMAIL_STORAGE USE_EXPAND flags. # This is primarily used by net-misc/asterisk. # Keep it sorted. -file - Uses plain files to store configuration & messages. odbc - Uses ODBC to talk to a SQL database backend. imap - Uses an IMAP server to store configuration & messages. diff --git a/sdk_container/src/third_party/portage-stable/profiles/embedded/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/embedded/make.defaults index 57a195f033f..e85b587c6ae 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/embedded/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/embedded/make.defaults @@ -1,4 +1,4 @@ -# Copyright 2008-2025 Gentoo Authors +# Copyright 2008-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 USE="minimal multicall zlib" @@ -29,7 +29,7 @@ USE_EXPAND_VALUES_KERNEL="Darwin linux SunOS Winnt" # Env vars to expand into USE vars. Modifying this requires prior # discussion on gentoo-dev@lists.gentoo.org. -USE_EXPAND="ABI_MIPS ABI_S390 ABI_X86 ADA_TARGET ALSA_CARDS APACHE2_MODULES APACHE2_MPMS CALLIGRA_FEATURES CAMERAS COLLECTD_PLUGINS CPU_FLAGS_ARM CPU_FLAGS_PPC CPU_FLAGS_X86 CURL_SSL ELIBC FFTOOLS GPSD_PROTOCOLS GRUB_PLATFORMS INPUT_DEVICES KERNEL L10N LCD_DEVICES LIBREOFFICE_EXTENSIONS LLVM_SLOT LLVM_TARGETS LUA_SINGLE_TARGET LUA_TARGETS NGINX_MODULES_HTTP NGINX_MODULES_MAIL NGINX_MODULES_STREAM OFFICE_IMPLEMENTATION OPENMPI_FABRICS OPENMPI_OFED_FEATURES OPENMPI_RM PHP_TARGETS POSTGRES_TARGETS PYTHON_SINGLE_TARGET PYTHON_TARGETS QEMU_SOFTMMU_TARGETS QEMU_USER_TARGETS RUBY_TARGETS SANE_BACKENDS UWSGI_PLUGINS VIDEO_CARDS VOICEMAIL_STORAGE XTABLES_ADDONS" +USE_EXPAND="ABI_MIPS ABI_S390 ABI_X86 ADA_TARGET ALSA_CARDS APACHE2_MODULES APACHE2_MPMS CALLIGRA_FEATURES CAMERAS COLLECTD_PLUGINS CPU_FLAGS_ARM CPU_FLAGS_PPC CPU_FLAGS_X86 CURL_SSL ELIBC GPSD_PROTOCOLS GRUB_PLATFORMS INPUT_DEVICES KERNEL L10N LCD_DEVICES LIBREOFFICE_EXTENSIONS LLVM_SLOT LLVM_TARGETS LUA_SINGLE_TARGET LUA_TARGETS NGINX_MODULES_HTTP NGINX_MODULES_MAIL NGINX_MODULES_STREAM OFFICE_IMPLEMENTATION OPENMPI_FABRICS OPENMPI_OFED_FEATURES OPENMPI_RM PHP_TARGETS POSTGRES_TARGETS PYTHON_SINGLE_TARGET PYTHON_TARGETS QEMU_SOFTMMU_TARGETS QEMU_USER_TARGETS RUBY_TARGETS SANE_BACKENDS UWSGI_PLUGINS VIDEO_CARDS VOICEMAIL_STORAGE XTABLES_ADDONS" # USE_EXPAND variables whose contents are not shown in package manager # output. Changes need discussion on gentoo-dev. diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.mask b/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.mask index ad50941f148..1e0e28c8ded 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.mask @@ -1,6 +1,10 @@ -# Copyright 2023-2025 Gentoo Authors +# Copyright 2023-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# James Le Cuirot <chewi@gentoo.org> (2026-02-02) +# It works on non-x86 arches, but only little endian ones. +sys-apps/iucode_tool + # Michał Górny <mgorny@gentoo.org> (2024-06-07) # dev-python/tables is broken on big endian platforms. Bug #922235. dev-python/tables @@ -84,8 +88,7 @@ games-fps/freedoom games-engines/odamex games-engines/uzdoom games-fps/chocolate-doom -games-fps/doomsday -games-fps/gzdoom +games-fps/crispy-doom games-fps/freedoom-data media-libs/zmusic games-util/deutex diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.use.mask index 9dd890538b5..483c166d8ca 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.use.mask @@ -1,4 +1,4 @@ -# Copyright 2023-2025 Gentoo Authors +# Copyright 2023-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Nowa Ammerlaan <nowa@gentoo.org> (2025-02-03) @@ -45,6 +45,7 @@ media-video/vlc aom media-libs/libheif aom media-libs/libavif aom mail-client/thunderbird system-av1 +>=kde-frameworks/kimageformats-6.22.0 avif # matoro <matoro_gentoo@matoro.tk> (2023-04-11) # dev-libs/weston casualties (#833010) @@ -56,7 +57,6 @@ dev-libs/libportal wayland dev-util/glade wayland gnome-base/gnome-control-center wayland gnome-base/gnome-shell wayland -gnome-base/nautilus wayland gnome-extra/tecla wayland gui-libs/gtk wayland gui-libs/vte wayland diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/hardened/amd64/package.use b/sdk_container/src/third_party/portage-stable/profiles/features/hardened/amd64/package.use deleted file mode 100644 index dbe864914e4..00000000000 --- a/sdk_container/src/third_party/portage-stable/profiles/features/hardened/amd64/package.use +++ /dev/null @@ -1,7 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# Magnus Granberg <zorry@gentoo.org> (2015-01-14) -# We need to have the pic flag on. -# Bugs 358929, 490276, 513464, 523736 and 512208. -media-libs/x264 pic diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.mask b/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.mask index 484a845c4ae..4a8c4b4ef4b 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.mask @@ -1,6 +1,25 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Sam James <sam@gentoo.org> (2026-02-11) +# Fails to build on musl (bug #968134, https://sourceware.org/PR33747) +~dev-debug/gdb-17.1 + +# Mike Gilbert <floppym@gentoo.org> (2026-02-07) +# Waiting for >=sys-apps/systemd-259 to be stable. +dev-python/python-systemd +gnome-extra/office-runner +gnome-extra/gnome-logs +sys-apps/dbus-broker +sys-apps/systemd-readahead +sys-block/wait-for-dri-devices-rules +sys-process/systemd-cron +>=www-misc/profile-sync-daemon-6 + +# Andreas K. Hüttel <dilfridge@gentoo.org> (2026-02-04) +# New systemd now has experimental support for musl +<sys-apps/systemd-259 + # Jaco Kroon <jkroon@gentoo.org> (2025-12-06) # anydesk is pre-build with glibc, will not work on MUSL. net-misc/anydesk @@ -18,10 +37,6 @@ net-im/signal-desktop-bin # Binary bazel is compiled against glibc >=app-i18n/mozc-2.31.5851.102 -# Michał Górny <mgorny@gentoo.org> (2025-09-28) -# Required DT_AUXILIARY support in the dynamic linker. -=sci-libs/blas-lapack-aux-wrappers-0 - # PPN-SD <nicolas.parlant@parhuet.fr> (2025-07-28) # Bundled pcap-thread, not ported to musl # bug #713498, https://github.com/DNS-OARC/pcap-thread/issues/128 @@ -147,7 +162,6 @@ dev-ada/aws dev-ada/aunit dev-ada/ada_language_server dev-ada/gnatdoc -dev-ada/gpr-unit-provider dev-ada/gpr dev-ada/gnatmem dev-ada/ada_libfswatch @@ -386,6 +400,7 @@ net-im/gitter-bin net-im/mattermost-desktop-bin net-im/rocketchat-desktop-bin net-im/slack +net-im/talk-desktop-bin net-im/telegram-desktop-bin net-im/whatsapp-desktop-bin net-im/zoom @@ -501,20 +516,5 @@ sys-libs/glibc -sys-libs/musl -sys-libs/libucontext -# systemd doesn't work on musl and upstream aren't interested -# in supporting it. -app-admin/mkosi -app-admin/systemdgenie -dev-python/python-systemd -gnome-extra/office-runner -gnome-extra/gnome-logs -sys-apps/dbus-broker -sys-apps/gentoo-systemd-integration -sys-apps/systemd -sys-apps/systemd-readahead -sys-process/systemd-cron ->=www-misc/profile-sync-daemon-6 -sys-block/wait-for-dri-devices-rules - # rust-bin isn't available on all platforms dev-lang/rust-bin diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.use.mask index c4b5b2ab377..4611c2833eb 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.use.mask @@ -1,6 +1,16 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Mike Gilbert <floppym@gentoo.org> (2026-02-07) +# Requires dev-python/python-systemd. +net-analyzer/fail2ban systemd +net-im/synapse systemd + +# Andreas K. Hüttel <dilfridge@gentoo.org> (2026-02-04) +# Some systemd features will never work on musl. +sys-apps/systemd homed +sys-auth/pambase homed + # Sv. Lockal <lockalsash@gmail.com.com> (2025-07-07) # sci-libs/aotriton-bin is masked on musl sci-ml/caffe2 memefficient @@ -71,10 +81,6 @@ sys-apps/hwloc l0 # Renderdoc masked on musl, bug #853856 media-gfx/blender renderdoc -# Paul Zander <negril.nx+gentoo@gmail.com> (2024-04-20) -# Support for L0 needs RTLD_DEEPBIND, which does not exist on musl. -media-gfx/blender oneapi - # Akinori Hattori <hattya@gentoo.org> (2024-04-15) # app-i18n/nkf is masked on musl app-i18n/multiskkserv test @@ -110,12 +116,6 @@ sys-devel/binutils gprofng # this, however it seems to be unreliable, see bug #922897. gui-libs/gtk cpu_flags_x86_f16c -# Nowa Ammerlaan <nowa@gentoo.org> (2024-01-12) -# The systemd flag is globally masked on musl. But we need -# systemd's kernel-install to use systemd-boot which is still -# possible on musl via systemd-utils[boot]. -sys-kernel/installkernel -systemd - # Michał Górny <mgorny@gentoo.org> (2023-12-31) # Requires dev-libs/level-zero. dev-lang/ispc gpu @@ -175,13 +175,6 @@ net-misc/yt-dlp deno sys-apps/hwloc gl www-client/qutebrowser widevine -# Sam James <sam@gentoo.org> (2022-10-03) -# Needs systemd which is masked on musl -net-analyzer/wireshark sdjournal -sys-apps/ipmitool openbmc -sys-auth/pambase homed -dev-qt/qtbase journald - # Petr Vaněk <arkamar@atlas.cz> (2022-03-15) # musl package does not currently provide gencat binary, which is needed for # nls support, see bug #712828 @@ -196,10 +189,6 @@ app-emacs/yatex l10n_ja # Support for L0 needs RTLD_DEEPBIND, which does not exist on musl. dev-libs/intel-compute-runtime l0 -# Stijn Tintel <stijn@linux-ipv6.be> (2021-12-02) -# rarpd relies on ether_ntohost which is a stub in musl -net-misc/iputils rarpd - # Sam James <sam@gentoo.org> (2021-11-20) # Pulls in po4a which doesn't seem to work on musl (wants /usr/bin/locale) app-arch/dpkg nls diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.use.stable.mask index 1d29384ead5..bba03526b85 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.use.stable.mask @@ -1,10 +1,13 @@ -# Copyright 2022-2024 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Sam James <sam@gentoo.org> (2026-02-05) +# >=sys-apps/systemd-259 does not yet have stable keywords +dev-qt/qtbase journald +net-analyzer/wireshark sdjournal +sys-kernel/installkernel -systemd +sys-apps/ipmitool openbmc + # Andreas K. Hüttel <dilfridge@gentoo.org> (2024-03-07) # This doesn't work yet with musl-1.2.4, bug 906603 llvm-runtimes/compiler-rt-sanitizers msan - -# Sam James <sam@gentoo.org> (2022-10-04) -# libxcrypt migration isn't yet stable on musl. -sys-auth/pambase yescrypt diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/musl/use.mask b/sdk_container/src/third_party/portage-stable/profiles/features/musl/use.mask index 60602202f14..6c03021614a 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/musl/use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/musl/use.mask @@ -5,10 +5,6 @@ -elibc_musl elibc_glibc -# Alfred Wingate <parona@protonmail.com> (2025-09-20) -# Requires systemd -generic-uki - # Sam James <sam@gentoo.org> (2025-07-12) # dev-debug/dtrace and dev-debug/systemtap don't work on musl dtrace @@ -40,7 +36,3 @@ nvidia nvml optix video_cards_nvidia - -# sys-apps/systemd is masked -systemd -uwsgi_plugins_systemd_logger diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/musl/use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/features/musl/use.stable.mask new file mode 100644 index 00000000000..e5c6898c45a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/features/musl/use.stable.mask @@ -0,0 +1,8 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Sam James <sam@gentoo.org> (2026-02-05) +# >=sys-apps/systemd-259 does not yet have stable keywords +systemd +generic-uki +uwsgi_plugins_systemd_logger diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/prefix/standalone/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/features/prefix/standalone/package.use.mask index cb74107fef3..9fc0545a905 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/prefix/standalone/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/prefix/standalone/package.use.mask @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Bart Oldeman <bart.oldeman@calculquebec.ca> (2022-03-02) @@ -15,7 +15,3 @@ sys-apps/groff uchardet # runuser is not necessary for Prefix. sys-apps/util-linux pam net-misc/openssh pam - -# Benda Xu <heroxbd@gentoo.org> (2019-01-26) -# native-extensions requires >=linux=4.6 for __NR_copy_file_range -sys-apps/portage native-extensions diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/time64/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/features/time64/make.defaults index b8990b710b0..15ad7574828 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/time64/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/features/time64/make.defaults @@ -1,13 +1,6 @@ -# Copyright 2024 Gentoo Authors +# Copyright 2024-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -# Many profiles and stages override CFLAGS etc, and need then to eat their -# own dogfood. For those who don't... -CFLAGS="${CFLAGS} -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Werror=implicit-function-declaration -Werror=implicit-int -Werror=incompatible-pointer-types -Werror=return-type -Werror=int-conversion" -CXXFLAGS="${CXXFLAGS} -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64" -FCFLAGS="${FCFLAGS} -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64" -FFLAGS="${FFLAGS} -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64" - # We need to switch this explicitly on since it's explicitly disabled # in profiles otherwise. enable_year2038="yes" diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.mask b/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.mask index 627076ed1c8..126613761d4 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.mask @@ -1,6 +1,14 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Michał Górny <mgorny@gentoo.org> (2025-01-27) +# google-auth now unconditionally requires cryptography. +dev-python/google-api-core +dev-python/google-api-python-client +dev-python/google-auth +dev-python/google-auth-httplib2 +dev-python/proto-plus + # Michał Górny <mgorny@gentoo.org> (2024-11-29) # dev-python/translate-toolkit has Rust deps now. dev-python/translate-toolkit @@ -27,11 +35,41 @@ app-portage/emlop # Michał Górny <mgorny@gentoo.org> (2024-05-08) # Pure Python packages using dev-python/uv-build, and therefore # requiring Rust to install, and their reverse dependencies. +dev-python/aiosmtpd +dev-python/atpublic +dev-python/behave +dev-python/crispy-bootstrap3 +dev-python/crispy-bootstrap4 +dev-python/crispy-bootstrap5 +dev-python/cucumber-expressions +dev-python/cucumber-tag-expressions +dev-python/dj-database-url +dev-python/django-configurations +dev-python/django-crispy-forms +dev-python/django-filter +dev-python/django-polymorphic +dev-python/django-tables2 +dev-python/djangorestframework +dev-python/easy-thumbnails +dev-python/flufl-lock dev-python/gherkin-official +dev-python/logfury +dev-python/mkdocs-gen-files +dev-python/pykwalify dev-python/pytest-bdd dev-python/pytest-describe +dev-python/pytest-django +dev-python/pytest-golden +dev-python/sphinxcontrib-doxylink +>=dev-python/sphinxcontrib-httpdomain-2.0 +dev-python/sybil +dev-python/testfixtures dev-python/uv-build dev-python/zmq-anyio +net-analyzer/fail2ban +sci-libs/cartopy +sci-libs/pcl +sci-visualization/pythonprop sys-auth/ssh-ldap-pubkey # Sebastian Pipping <sping@gentoo.org> (2025-06-20) @@ -348,6 +386,7 @@ dev-python/patiencediff dev-python/pooch dev-python/pydantic dev-python/pydantic-core +dev-python/pydantic-settings dev-python/pyfuse3 >=dev-python/pyopenssl-22 dev-python/pymdown-extensions @@ -367,6 +406,7 @@ dev-python/python-snappy dev-python/quart-trio dev-python/readme-renderer dev-python/referencing +dev-python/regress dev-python/requests-kerberos dev-python/requests-oauthlib dev-python/rpds-py @@ -426,7 +466,6 @@ net-dns/pdns-recursor net-im/gajim >=net-irc/polari-3.37 net-libs/quiche -net-misc/electrum-ltc net-misc/streamlink net-news/newsboat net-p2p/deluge diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.use.mask index aa1a6029b84..f4696f651c7 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.use.mask @@ -1,6 +1,10 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Alfred Wingate <parona@protonmail.com> (2026-02-18) +# Requires behave->cucumber-expressions->uv-build +dev-db/mycli test + # Ionen Wolkens <ionen@gentoo.org> (2025-12-24) # media-libs/subrandr is written in rust media-video/mpv subrandr @@ -166,7 +170,6 @@ dev-debug/gef doc # Sam James <sam@gentoo.org> (2022-12-11) # net-libs/rustls-ffi needs Rust. net-misc/curl rustls curl_ssl_rustls -www-servers/apache apache2_modules_tls # matoro <matoro_gentoo@matoro.tk> (2022-12-01) # tree-sitter-grammar.eclass adds dev-util/tree-sitter-cli as test dep @@ -234,11 +237,10 @@ net-misc/stunnel test # Michał Górny <mgorny@gentoo.org> (2022-07-29) # More packages requiring dev-python/pyopenssl or its revdeps. -app-admin/salt libcloud openssl test +app-admin/salt libcloud test dev-python/aiohttp test dev-python/cheroot test dev-python/cherrypy ssl -dev-python/google-auth test dev-python/pyftpdlib ssl test dev-python/python-novaclient test dev-python/requests test diff --git a/sdk_container/src/third_party/portage-stable/profiles/license_groups b/sdk_container/src/third_party/portage-stable/profiles/license_groups index 3c4e5914ea2..773090032b3 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/license_groups +++ b/sdk_container/src/third_party/portage-stable/profiles/license_groups @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Please report bugs or other requests at bugs.gentoo.org and assign to @@ -34,7 +34,7 @@ OSI-APPROVED-FREE 0BSD AFL-3.0 AGPL-3 AGPL-3+ Apache-1.1 Apache-2.0 APL-1.0 APSL # Licenses in this list should NOT appear directly or indirectly in # @FSF-APPROVED or @OSI-APPROVED. # Note: Licenses for fonts should be included in @MISC-FREE-DOCS. -MISC-FREE AIFFWriter.m Allegro alternate AMPAS Base64 BEER-WARE boehm-gc BSD-2-with-patent BSD-with-attribution BSD-with-disclosure buddy bufexplorer.vim BZIP2 CAOSL CDDL-1.1 CDDL-Schily coldspringharbor CPL-0.5 Crypt-IDEA curl DES docbook dom4j DUMB-0.9.3 ElementTree Emacs ErlPL-1.1 FastCGI feh FFT2D File-MMagic Flashpix FLEX flexmock FLTK freetts FVWM gd gsm HTML-Tidy iASL icu IDPL imagemagick Info-ZIP inner-net ipadic Ispell JasPer2.0 JDOM JOVE Khronos-CLHPP LambdaMOO LIBGLOSS libmng libpng libpng2 libtiff LLGPL-2.1 LPPL-1.0 LPPL-1.3 lsof matplotlib Mini-XML minpack MIT-with-advertising mm mpich2 NCSA-HDF netcat NEWLIB ngrep NPSL-0.95 Old-MIT openafs-krb5-a Openwall otter par PCRE perforce photopc PHP-2.02 pngcrush pngnq Princeton psutils rc rdisc regexp-UofT repoze RSA RtMidi rwpng sash scanlogd sdlsasteroids Sendmail Sendmail-Open-Source SMAIL Snd Spencer-99 SSLeay SunSoft symlinks Sympow-BSD tablelist tcltk tcp_wrappers_license TeX TeX-other-free TextMate-bundle the-Click-license Time-Format Time-modules tm-align torque-2.5 Toyoda trio UCAR-Unidata unicode VTK w3m wm2 X11-Lucent xbatt xboing XC Xdebug xtrs ZSH +MISC-FREE AIFFWriter.m Allegro alternate AMPAS Base64 BEER-WARE boehm-gc BSD-2-with-patent BSD-with-attribution BSD-with-disclosure buddy bufexplorer.vim BZIP2 CAOSL CDDL-1.1 CDDL-Schily coldspringharbor CPL-0.5 Crypt-IDEA curl DES docbook dom4j DUMB-0.9.3 ElementTree Emacs ErlPL-1.1 FastCGI feh FFT2D File-MMagic Flashpix FLEX flexmock FLTK freetts FVWM gd gsm HTML-Tidy iASL icu IDPL imagemagick Info-ZIP inner-net ipadic Ispell JasPer2.0 JDOM JOVE Khronos-CLHPP LambdaMOO LIBGLOSS libmng libpng libpng2 libtiff LLGPL-2.1 LPPL-1.0 LPPL-1.3 lsof matplotlib Mini-XML minpack MIT-with-advertising mm mpich2 NCSA-HDF netcat NEWLIB ngrep NPSL-0.95 Old-MIT openafs-krb5-a Openwall otter par PCRE perforce photopc PHP-2.02 pngcrush pngnq Princeton psutils rc regexp-UofT repoze RSA RtMidi rwpng sash scanlogd sdlsasteroids Sendmail Sendmail-Open-Source SMAIL Snd Spencer-99 SSLeay SunSoft symlinks Sympow-BSD tablelist tcltk tcp_wrappers_license TeX TeX-other-free TextMate-bundle the-Click-license Time-Format Time-modules tm-align torque-2.5 Toyoda trio UCAR-Unidata unicode VTK w3m wm2 X11-Lucent xbatt xboing XC Xdebug xtrs ZSH # Metaset for all free software FREE-SOFTWARE @FSF-APPROVED @OSI-APPROVED-FREE @MISC-FREE @@ -73,8 +73,8 @@ BINARY-REDISTRIBUTABLE @FREE Atmel AVASYS bh-luxi bonnie Broadcom freedist intel ###################################################################### -# Licenses approved by the Open Source Initiative that are nonfree -# (see comment about OSI-APPROVED-FREE) +# Licenses approved by the Open Source Initiative that we consider +# nonfree (see comment about OSI-APPROVED-FREE) OSI-APPROVED-NONFREE NOSA Watcom-1.0 OSI-APPROVED @OSI-APPROVED-FREE @OSI-APPROVED-NONFREE diff --git a/sdk_container/src/third_party/portage-stable/profiles/package.deprecated b/sdk_container/src/third_party/portage-stable/profiles/package.deprecated index 5db9234a03b..c877b7ca176 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/package.deprecated +++ b/sdk_container/src/third_party/portage-stable/profiles/package.deprecated @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # This file specifies packages that are considered deprecated (but not @@ -55,36 +55,25 @@ dev-python/passlib # 2026-06-19, b) any bugs discovered since last May will not be fixed and # c) no bugs since 2020-12-08 that haven't also been affecting Qt6 were # fixed at all. Bug 948836 -dev-qt/designer:5 dev-qt/linguist-tools:5 dev-qt/qtconcurrent:5 dev-qt/qtdbus:5 dev-qt/qtdeclarative:5 -dev-qt/qtgraphicaleffects:5 dev-qt/qtgui:5 -dev-qt/qthelp:5 -dev-qt/qtimageformats:5 dev-qt/qtmultimedia:5 dev-qt/qtnetwork:5 dev-qt/qtopengl:5 -dev-qt/qtpositioning:5 dev-qt/qtprintsupport:5 dev-qt/qtquickcontrols:5 dev-qt/qtquickcontrols2:5 -dev-qt/qtscxml:5 -dev-qt/qtserialport:5 -dev-qt/qtspeech:5 dev-qt/qtsql:5 dev-qt/qtsvg:5 dev-qt/qttest:5 dev-qt/qttranslations:5 dev-qt/qtwayland:5 -dev-qt/qtwaylandscanner:5 -dev-qt/qtwebsockets:5 dev-qt/qtwidgets:5 dev-qt/qtx11extras:5 dev-qt/qtxml:5 -dev-qt/qtxmlpatterns:5 dev-python/pyqt5 # Michał Górny <mgorny@gentoo.org> (2025-07-29) diff --git a/sdk_container/src/third_party/portage-stable/profiles/package.mask b/sdk_container/src/third_party/portage-stable/profiles/package.mask index b4dee2f718c..bdee1090c0e 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/package.mask @@ -36,22 +36,343 @@ #--- END OF EXAMPLES --- -# Michał Górny <mgorny@gentoo.org> (2026-01-11) -# Boost 1.89 and its reverse dependencies. Masked for testing. -# Tracker bug #961524. ->=dev-libs/boost-1.89 ->=dev-python/scipy-1.17 - -# Fabian Groffen <grobian@gentoo.org> (2026-01-08) -# Too many issues already. Further testing is appreciated, but expect -# breakage. -=app-portage/portage-utils-0.99 - -# James Le Cuirot <chewi@gentoo.org> (2025-12-24) -# The upstream community has forked with the vast majority going to UZDoom, now -# packaged as games-engines/uzdoom in Gentoo. https://zdoom.org now follows this -# new fork. Bug #967252. Removal on 2026-01-24. -games-fps/gzdoom +# Michał Górny <mgorny@gentoo.org> (2026-02-28) +# The test suite is broken since 1.16.0 (Nov 2025), and upstream did not +# address the problem so far: https://github.com/pypa/hatch/issues/2123 +# Removal on 2026-03-30. Bug #970681. +dev-python/hatch + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-27) +# Obsolete Qt5 non-qtbase modules without revdeps. +# Removal on 2026-03-29. +dev-qt/designer:5 +dev-qt/qthelp:5 +dev-qt/qtwaylandscanner:5 +dev-qt/qtxmlpatterns:5 + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-27) +# Obsolete Qt5 non-qtbase modules without revdeps. +dev-qt/qtimageformats:5 +dev-qt/qtscxml:5 +dev-qt/qtspeech:5 +dev-qt/qtwebsockets:5 + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-26) +# Depends on Qt5 and does not appear to be ported to Qt6 any time soon. +# Possible alternatives are app-text/xournalpp or media-gfx/pdf4qt (only in +# guru overlay right now). Many bugs: #965497, #935693, #935692, #935694, +# #900162, #850064, #935695. +# Removal on 2026-03-28. +app-text/master-pdf-editor + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-26) +# Depends on Qt5 and does not appear to be ported to Qt6. Upstream's main +# problem is reliance on QtXMLPatterns which is not available in Qt6. +# Bug #955183 +# Removal on 2026-03-28. +app-editors/qxmledit + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-26) +# Current release depends on Qt5, painful to package which may explain why not +# many other distributions care to do so. Upstream AppImage available. +# Many bugs: #909069, #937133, #945721, #947403, #956111, #956112, #956113, +# #956451, #967186. +# Removal on 2026-03-28. +net-p2p/retroshare + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-26) +# Qt binaries-to-path symlinking tool obsolete with Qt6. Removal on 2026-03-28. +dev-qt/qtchooser + +# Ulrich Müller <ulm@gentoo.org> (2026-02-25) +# This is an eviscerated version. Several core commands no longer +# work, notably C-x 2 (split-current-window), M-x describe-bindings +# and M-? (help). Furthermore, it adds an unconditional dependency +# on hunspell, hardcoding the American English dictionary. +# Masking this version for now because it seems inferior to the +# previous 20180719 snapshot. Bug #970594. +~app-editors/uemacs-pk-4.0.15_p20260224 + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-24) +# Phonon is effectively dead upstream, its only remaining backend depends +# on VLC-3. Bug #935797 Removal on 2026-03-26. +media-libs/phonon +media-libs/phonon-vlc + +# Michael Orlitzky <mjo@gentoo.org> (2026-02-24) +# Haskell package (hard to maintain) that never evolved. Easy to +# replace with a SQL query. Removal on or after 2026-03-24. +net-mail/list-remote-forwards +net-mail/mailbox-count + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-22) +# Obsolete package blocking vdr-2.2 cleanup. +# Removal on 2026-03-24. +media-plugins/vdr-peer +=media-video/vdr-2.2.0* + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-22) +# Obsolete package. Use media-plugins/vdr-skinelchihd instead. +# Bug #945071. Removal on 2026-03-24. +media-plugins/vdr-skincurses + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-22) +# Obsolete package. Use media-video/vdr[demoplugins] instead. +# Removal on 2026-03-24. +media-plugins/vdr-skinelchi + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-15) +# Masked for testing and possible libvlc revdeps breakage. +~media-video/vlc-4.0.0_pre20260215 + +# Conrad Kostecki <conikost@gentoo.org> (2026-02-15) +# Supports only Qt5 and upstream not making any progress towards Qt6. +# Removal on 2026-03-01. Bug #953260. +x11-misc/projecteur + +# Volkmar W. Pogatzki <gentoo@pogatzki.net> (2026-02-10) +# Unused Java library. Upstream is gone. SRC_URI points to +# 'https://dev.gentoo.org/~monsieurp' which does not exist. +# Last consumer was net-p2p/freenet-0.7.5_p1503-r2. +# Removal on 2026-03-10. Bug #969322. +dev-java/fec + +# Thomas Beierlein <tomjbe@gentoo.org> (2026-02-14) +# Move ebuild versioning to classical x.y.z number scheme +# Should be kept until net-wireless/sdrplay-3.15.2 (dep for coming +# new version) gets stable. +>=net-wireless/soapysdrplay-20000000 + +# David Seifert <soap@gentoo.org> (2026-02-14) +# Behemoth package, with a massive and brittle testsuite. No other major distro +# packages this anymore. Lots of QA issues, broken tests and blocking cleanup +# efforts. This package will only be allowed back in ::gentoo after a sustained +# demonstration of maintenance dedication. Removal on 2026-03-16. Bug #966712. +dev-cpp/muParserX +dev-python/pylatexenc +dev-python/python-constraint +dev-python/qiskit +dev-python/qiskit-aer +dev-python/rustworkx + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-12) +# Misc Qt5-based libraries without any revdeps left. +# Removal on 2026-03-14. +dev-qt/qtlockedfile +dev-qt/qtsingleapplication + +# David Seifert <soap@gentoo.org> (2026-02-11) +# No other distro packages this, last release over 12 years ago, C23 issues. +# Removal on 2026-03-13. Bug #944878. +sci-biology/qrna + +# David Seifert <soap@gentoo.org> (2026-02-11) +# Obscure package, no revdeps, unmaintained, EAPI 7, lots of build issues. +# Removal on 2026-03-13. Bug #944918. +sci-biology/mcl + +# David Seifert <soap@gentoo.org> (2026-02-10) +# Abandoned, sguil-sensor already removed, blocks bug #868468. +# Removal on 2026-03-12. +net-analyzer/sguil-client + +# David Seifert <soap@gentoo.org> (2026-02-10) +# Noone packages this anymore, dead upstream, C23 and QA issues. +# Removal on 2026-03-12. Bug #945039. +net-misc/lanmap + +# David Seifert <soap@gentoo.org> (2026-02-10) +# Noone packages this anymore, dead upstream, fails tests on newer GCC. +# Removal on 2026-03-12. Bug #963013. +net-libs/libpcapnav + +# Noone packages this anymore, dead upstream, lots of C23 and QA issues. +# Removal on 2026-03-12. Bug #945187. +net-analyzer/trafshow + +# David Seifert <soap@gentoo.org> (2026-02-10) +# Removed by most distros, upstream disappeared, lots of QA and packaging +# issues. Removal on 2026-03-12. Bug #945190. +net-analyzer/tcptrace + +# Removed by most distros, last release over 20 years ago, C23 issues. +# Removal on 2026-03-12. Bug #945193. +net-analyzer/labrea + +# David Seifert <soap@gentoo.org> (2026-02-10) +# Removed by most distros, upstream disappeared, lots of QA and packaging +# issues. Removal on 2026-03-12. Bug #943786. +net-analyzer/echoping + +# Sam James <sam@gentoo.org> (2026-02-09) +# Only needed by last-rited hyprland stack. Out-of-date by quite a few +# versions. Removal on 2026-03-11. +dev-cpp/glaze + +# Sam James <sam@gentoo.org> (2026-02-09) +# This suite of packages is currently best placed in an overlay/external +# repository where users can more easily contribute. The ecosystem moves +# quickly and users expect even the live ebuilds to be updated apace. +# +# The rate of change as well as new packages requiring review places a heavy +# combined with users (not unreasonably) wanting fresh versions of the software +# places strain on the proxy-maint team. Pressure being put on proxied maintainers +# to create and quickly have PRs merged doesn't facilitate the level of +# testing for ::gentoo either. +# +# An unofficial 'hyproverlay' repository has been created at +# https://codeberg.org/hyproverlay/hyproverlay.git +# for communal maintenance of these packages as well as several new +# (unpackaged in ::gentoo) dependencies. It can be enabled with: +# $ emerge -an app-eselect/eselect-repository +# $ eselect repository enable hyproverlay +# $ emerge --sync +# See also https://wiki.gentoo.org/wiki/Hyprland#Emerge +# +# Quite out-of-date, many open bugs, and needs several new dependencies. +# Removal on 2026-03-11. +gui-libs/aquamarine +gui-libs/hyprutils +gui-libs/hyprland-qt-support +gui-libs/hyprcursor +dev-util/hyprwayland-scanner +dev-libs/hyprlang +dev-libs/hyprland-protocols +dev-libs/hyprgraphics +gui-wm/hyprland + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-09) +# Broken for ages with dev-libs/boost-1.85 but no one except tinderbox +# complained, still needs porting to Python 3.13, no revdeps. Upstream +# available 2025.1 claims to fix at least boost, but needs a maintainer. +# Bugs #936978, #952658. Removal on 2026-03-11. +sci-chemistry/votca + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-09) +# Broken for >1 year with dev-libs/boost-1.87 but no one except tinderbox +# complained, no revdeps. Upstream disappeared, almost no one else is +# packaging this. Bug #946533. Removal on 2026-03-11. +net-analyzer/sinfo + +# Michał Górny <mgorny@gentoo.org> (2026-02-09) +# setuptools-82 removes pkg_sources, inevitably leading to breakage. +>=dev-python/ensurepip-setuptools-82 +>=dev-python/setuptools-82 + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-08) +# All remaining KF5 revdeps have been masked. +# Removal some time after 2026-02-15. +kde-frameworks/karchive:5 +kde-frameworks/kauth:5 +kde-frameworks/kbookmarks:5 +kde-frameworks/kcmutils:5 +kde-frameworks/kcodecs:5 +kde-frameworks/kcompletion:5 +kde-frameworks/kconfig:5 +kde-frameworks/kconfigwidgets:5 +kde-frameworks/kcoreaddons:5 +kde-frameworks/kcrash:5 +kde-frameworks/kdbusaddons:5 +kde-frameworks/kdeclarative:5 +kde-frameworks/kded:5 +kde-frameworks/kdoctools:5 +kde-frameworks/kglobalaccel:5 +kde-frameworks/kguiaddons:5 +kde-frameworks/ki18n:5 +kde-frameworks/kiconthemes:5 +kde-frameworks/kio:5 +kde-frameworks/kitemviews:5 +kde-frameworks/kjobwidgets:5 +kde-frameworks/knotifications:5 +kde-frameworks/kpackage:5 +kde-frameworks/kservice:5 +kde-frameworks/kwallet:5 +kde-frameworks/kwidgetsaddons:5 +kde-frameworks/kwindowsystem:5 +kde-frameworks/kxmlgui:5 +kde-frameworks/solid:5 + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-08) +# All remaining KF5-based applications have been masked. +# Removal on 2026-02-28. +kde-plasma/kwayland-integration:5 + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-08) +# KF5/Qt5 integration is no longer worth it. +# Removal some time after 2026-02-15. +kde-plasma/kwayland:5 +kde-plasma/breeze:5 +kde-plasma/plasma-integration:5 +kde-plasma/oxygen:5 +kde-frameworks/frameworkintegration:5 +kde-frameworks/knewstuff:5 +kde-frameworks/attica:5 +kde-frameworks/kirigami:5 + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-08) +# Deprecated since Qt 5.5, no more revdeps. Bug #915779 +# Removal on 2026-02-28. +dev-qt/qtscript:5 + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-08) +# Stuck on Qt5Script in the foreseeable future. Until a Qt6 release is +# ready, app-editors/okteta-0.26.60_pre* snapshots will be provided for +# ~arch, main limitation being the structures tool disabled from build +# (it requires the biggest, remaining porting effort). Double-check to +# backup your data before modifying files with okteta snapshots. +# If you rely on the structures tool or are affected by a critical bug in +# our okteta snapshots, the alternative is using the Flatpak version. +# Bug #962280. Removal some time after 2026-02-15. +app-editors/okteta:5 +kde-frameworks/kitemmodels:5 + +# Andreas Sturmlechner <asturm@gentoo.org> (2026-02-08) +# Stuck on Qt5/PyQt5 in the foreseeable future. Until a Qt6 release is +# ready, krita-6.0.0 pre-releases will be provided for ~arch. +# If you rely on krita for professional work or plugins only available in +# krita-5, your options are Flatpak or snap, or downloading upstream's own +# 64-bit AppImage - see also: https://krita.org/download/ +# Bug #955168. Removal some time after 2026-02-15. +media-gfx/krita:5 +kde-apps/libkdcraw:5 +kde-apps/libkexiv2:5 +kde-frameworks/kimageformats:5 + +# David Seifert <soap@gentoo.org> (2026-02-07) +# Never packaged by other distros, QA and C23 issues. +# Removal on 2026-03-09. +net-analyzer/traceproto + +# David Seifert <soap@gentoo.org> (2026-02-07) +# -Wformat and C23 issues, no other distro packages this anymore. +# Removal on 2026-03-09. +net-analyzer/mping + +# David Seifert <soap@gentoo.org> (2026-02-07) +# Abandoned upstream, no other distro packages this anymore, lots of QA and +# build issues. Removal on 2026-03-09. Bug #945191. +net-analyzer/nttcp + +# David Seifert <soap@gentoo.org> (2026-02-06) +# Abandoned upstream, no other distro packages this anymore, lots of QA and +# build issues. Removal on 2026-03-08. Bug #899932. +net-analyzer/ipcad + +# David Seifert <soap@gentoo.org> (2026-02-06) +# Upstream disappeared, no other distro packages this anymore, lots of QA and +# build issues. Removal on 2026-03-08. Bug #680718. +net-analyzer/arp-sk + +# Arthur Zamarin <arthurzam@gentoo.org> (2026-02-06) +# Marked as pre-release post release itself. Released without +# maintainer ACK. +# See-Also: https://github.com/emersion/slurp/issues/187 +# Bug #969685 +=gui-apps/slurp-1.6.0 + +# Sam James <sam@gentoo.org> (2026-01-22) +# eclean-dist -d needs fixing +=app-portage/gentoolkit-0.7 # Eray Aslan <eras@gentoo.org> (2025-12-24) # Mask experimental software @@ -64,60 +385,6 @@ games-fps/gzdoom # action. Use at your own risk. >=app-text/calibre-8.11.0 -# Andreas Sturmlechner <asturm@gentoo.org> (2025-12-21) -# Fails to build against Qt 6.10, upstream repository was archived. -# Bug #966389. Removal on 2026-01-15 -gui-libs/hyprland-qtutils - -# Michał Górny <mgorny@gentoo.org> (2025-12-20) -# Packages that are missing Python 3.12+ support (or in case -# of dev-lang/julia, all versions are unkeyworded). -# Bug #921826. Removal on 2026-01-20. -dev-lang/julia -dev-libs/redland-bindings -dev-python/happybase -games-engines/scrap-engine -games-rpg/pokete -net-misc/pulseaudio-dlna -www-client/seamonkey - -# Sam James <sam@gentoo.org> (2025-12-18) -# Another change to multiprocessing broke Portage. >=sys-apps/portage-3.0.73-r2 -# is fixed, but a fixed version of Portage must be running in order to safely -# upgrade or re-emerge Portage with >= Python 3.14.2. Mask until more users -# have had a chance to upgrade Portage. -# -# This only affects users with non-default PYTHON_TARGETS (3.14) set. -# -# If you are unable to upgrade Portage, please manually edit -# /usr/lib/python-exec/python3.14/emerge and /usr/lib/python-exec/python3.14/ebuild -# by deleting the first 3 lines beginning with 'signal.signal(' (bug #967199). -~app-doc/python-docs-3.14.2 -~dev-lang/python-3.14.2 -~dev-lang/python-0.3.14.2 -~dev-python/python-tests-3.14.2 -~dev-python/python-tests-0.3.14.2 - -# Andreas Sturmlechner <asturm@gentoo.org> (2025-12-15) -# Last release depends on Qt5, upstream appears dormant. Bug #959826 -# Removal on 2026-01-15 -net-misc/electrum-ltc - -# Andreas Sturmlechner <asturm@gentoo.org> (2025-12-14) -# Still depends on Qt5 with no upstream activity in years. Bug #960814 -# Removal on 2026-01-15 -media-sound/qmidiroute - -# Andreas Sturmlechner <asturm@gentoo.org> (2025-12-14) -# Still depends on Qt5 with no upstream porting activity. Bug #960220 -# Removal on 2026-01-15 -media-sound/mp3diags - -# Andreas Sturmlechner <asturm@gentoo.org> (2025-12-14) -# Last release depends on Qt5, upstream appears dormant. Bug #950474 -# Removal on 2026-01-15 -media-gfx/luminance-hdr - # Michał Górny <mgorny@gentoo.org> (2025-12-12) # Upstream has switched to LLM-first coding which has already caused # a number of suspicious bugs. At this point, new versions @@ -127,147 +394,12 @@ media-gfx/luminance-hdr >=dev-python/autobahn-25.10 >=dev-python/txaio-25.10 -# Hans de Graaff <graaff@gentoo.org> (2025-12-11) -# The twitter API is no longer available making this package -# useless. Upstream has archived the gem and refers to an X gem as an -# alternative. Removal on 2026-01-11. -dev-ruby/twitter - -# Michael Orlitzky <mjo@gentoo.org> (2025-12-08) -# An experimental attempt to avoid the gtk -> librsvg -> rust dependency -# that is now obsolete because upstream gtk links directly to librsvg. -# Removal on or after 2026-01-08. -media-libs/libsvgtiny-pixbuf - -# Andreas Sturmlechner <asturm@gentoo.org> (2025-12-07) -# Last release depends on Qt5, upstream appears dormant. Several -# alternatives are available in ::gentoo. Bug #967107 -# Removal on 2026-01-15 -games-fps/doomsday - -# Andreas Sturmlechner <asturm@gentoo.org> (2025-12-07) -# Depends on PyQt5, stalled porting effort upstream. -# Needs porting to Python 3.13, but 0.6.5 requires unpackaged dependency. -# Bugs #948094, #952551. Removal on 2026-01-15 -media-sound/linux-show-player - -# Andreas Sturmlechner <asturm@gentoo.org> (2025-12-07) -# IUSE qt5 feature sees no porting effort upstream. 2.4.9-r1 remains -# available with IUSE qt5 removed. Bug #965503 -# Removal on 2026-01-15 -=media-libs/libffado-2.4.9 - -# Andreas Sturmlechner <asturm@gentoo.org> (2025-12-05) -# Depends on Qt5, stalled porting effort upstream. Bug #955277 -# Removal on 2026-01-15 -games-engines/qtads - -# Andreas Sturmlechner <asturm@gentoo.org> (2025-12-05) -# Depends on Qt5, no signs of porting work upstream. Bug #949881 -# Removal on 2026-01-15 -games-strategy/hedgewars - -# Nowa Ammerlaan <nowa@gentoo.org> (2025-12-05) -# Stuck on Qt5, no upstream action. -# Please use the games-action/prismlauncher fork instead. -# Removal on 2026-01-05. Bug 967108. -games-action/multimc-bin - -# Michał Górny <mgorny@gentoo.org> (2025-12-03) -# Upstream changed how multiprocessing shares data between processes, -# which means the upgrade randomly breaks some currently running Python -# applications, notably Portage. -~app-doc/python-docs-3.13.10 -~app-doc/python-docs-3.14.1 -~dev-lang/python-3.13.10 -~dev-lang/python-0.3.13.10 -~dev-lang/python-3.14.1 -~dev-lang/python-0.3.14.1 -~dev-python/python-tests-3.13.10 -~dev-python/python-tests-0.3.13.10 -~dev-python/python-tests-3.14.1 -~dev-python/python-tests-0.3.14.1 - -# Jaco Kroon <jkroon@gentoo.org> (2025-12-02) -# Dead upstream, limited usefulness. If you're still using it please reach out -# so we can discuss options. Likely not worth the effort to fix the compiler -# warnings soon to be errors. -# No revdeps. -# Open bugs: #929259 -# Removal on 2026-01-02. -net-proxy/sqtop - -# David Seifert <soap@gentoo.org> (2025-12-01) -# Last release over 20 years ago, ancient codebase, lots of QA warnings, no -# other distro packages this anymore. Removal on 2025-12-31. Bug #944877. -sci-biology/rnaview - -# David Seifert <soap@gentoo.org> (2025-11-30) -# Last release over 15 years ago, GTK+2, EAPI 7, broken C constructs, removed -# by other distros already. Removal on 2025-12-30. Bug #944347. -sys-apps/gscanbus - -# David Seifert <soap@gentoo.org> (2025-11-30) -# Unmaintained, dead package, last release over 20 years ago, no other distro -# packages this anymore, EAPI 7. Removal on 2025-12-30. Bug #943810. -sys-fs/lde - -# David Seifert <soap@gentoo.org> (2025-11-30) -# More than 26 years since release, ancient C code, no revdeps in tree, -# no other distro still packages this. -# Removal on 2025-12-30. Bug #881017, #944864, #945018. -sci-libs/djbfft - -# Eli Schwartz <eschwartz@gentoo.org> (2025-11-30) -# Abandoned and unmaintained. It existed solely as a test dep for -# dev-python/sphinx-rtd-theme, which no longer uses it, so nobody should -# have it installed anyway. -# Removal on 2025-12-30. Bugs #966396, #963998. -dev-python/readthedocs-sphinx-ext - # Sam James <sam@gentoo.org> (2025-11-25) # Generates session keys with weak (no) randomness. Please re-encrypt # any data/messages using this librnp version. <0.18 is fine as is >=0.18.1. # See bug #966299. =dev-util/librnp-0.18.0 -# Michał Górny <mgorny@gentoo.org> (2025-11-22) -# A NIH replacement for dev-python/faker with a very slow test suite. -# No reverse dependencies left. -# Removal on 2025-12-22. Bug #966327. -dev-python/fake-py - -# orbea <orbea@riseup.net> (2025-11-16) -# Dead upstream, non-free licenses, depends on libsdl, no revdeps. -# Use games-emulation/geolith-jg instead. -# Bugs #744043, #896336, #926370. -# Removal on 2025-12-16. -games-emulation/gngeo - -# Petr Vaněk <arkamar@gentoo.org> (2025-11-13) -# The MDEV-38068 issue has been discovered with MariaDB 11.8.4. The issue -# caused a partial data deletion when using the DELETE statement on MyISAM or -# Aria tables under specific conditions. InnoDB tables are not affected by -# this. See: -# https://jira.mariadb.org/browse/MDEV-38068 -# https://lists.mariadb.org/hyperkitty/list/packagers@lists.mariadb.org/thread/IT3YIRPIS4ZVDZ5LBIDV7MPUDIL2VGIA/ -# -# Affected package was removed from the tree, but this message shall be kept -# untill 2025-12-15. -~dev-db/mariadb-11.8.4 - -# Sam James <sam@gentoo.org> (2025-11-13) -# Reported crashes (https://bugs.gentoo.org/914256#c18) -=sys-libs/musl-1.2.5-r6 - -# Sam James <sam@gentoo.org> (2025-11-05) -# re 8.3.0: Has regressions breaking media-video/subliminal and 8.3.1 -# which fixes some (but not all of those regressions) is semi-released only. -# re 8.3.1: Release not on PyPI (yet?), causing regressions in dev-python/black. -# https://github.com/pallets/click/issues/3087 -~dev-python/click-8.3.0 -=dev-python/click-8.3.1 - # Sam James <sam@gentoo.org> (2025-10-13) # Crashes in memtodest when handling PATH. Not yet reported upstream. =app-shells/dash-0.5.13.1 @@ -291,40 +423,6 @@ games-emulation/gngeo =sys-kernel/linux-firmware-20250917 =sys-kernel/linux-firmware-20251011 -# Viorel Munteanu <ceamac@gentoo.org> (2025-09-16) -# Unmaintained upstream, last release more than 7 years old. -# Old data is getting harder to read. -# Alternatives: sys-fs/gocryptfs or rclone crypt. -# Removal on 2025-12-16. Bug #960358. -sys-fs/encfs - -# Andreas Sturmlechner <asturm@gentoo.org> (2025-08-29) -# Obsolete transitional meta package. Bug #961795. Removal on 2025-09-28. -media-sound/pulseaudio - -# Michał Górny <mgorny@gentoo.org> (2025-08-21) -# Version yanked due to "unintended change in behavior". -=dev-python/click-8.2.2 - -# Eli Schwartz <eschwartz@gentoo.org> (2025-07-18) -# End of life software. Relies on a commercial internet service which removed -# suppor for the old APIs this package needs. Impossible to use anymore. -# Removal on 2025-08-17. Bug #927026. -net-vpn/protonvpn-cli - -# Eli Schwartz <eschwartz@gentoo.org> (2025-07-08) -# Unmaintained, out of date, QA issues, outstanding bugs for compilation -# failure / test failure. Still uses python 3.11. No revdeps. -# Removal on 2025-08-07. Bug #725252, #873304, #731876, #929772 -sci-libs/eccodes - -# Eli Schwartz <eschwartz@gentoo.org> (2025-07-06) -# Unmaintained, abandoned upstream since 2012, stuck on Python 3.11, -# no revdeps since a year ago. -# Removal on 2025-08-05. Bug #928479, #929362. -dev-libs/libindicate -app-text/gnome-doc-utils - # Andreas K. Hüttel <dilfridge@gentoo.org> (2025-07-04) # Obsolete Perl virtuals that will be removed (the list is work in progress). # If you have any of these installed, just remove them; they should not be @@ -350,11 +448,6 @@ virtual/perl-Unicode-Normalize # solution. Bug #959274. =app-crypt/libsecret-0.21.7-r1 -# Michał Górny <mgorny@gentoo.org> (2025-06-28) -# Rust/eBPF does not support 32-bit x86 host. As such, mitmproxy can -# no longer be used on this architecture. -=net-proxy/mitmproxy-9.0.1 - # Sam James <sam@gentoo.org> (2025-06-12) # Breaks several applications (bug #957943) >=dev-python/pygobject-3.52 @@ -365,11 +458,6 @@ virtual/perl-Unicode-Normalize >=sys-devel/gettext-0.24 >=dev-libs/libintl-0.24 -# Michał Górny <mgorny@gentoo.org> (2025-06-07) -# Destabilized due to unresolved test failures. If you need this -# package, please use the ~arch version. -=dev-python/lmdb-1.5.1 - # Sam James <sam@gentoo.org> (2025-06-03) # Fetching from GitHub seems broken with this: # > Connecting to github.com|20.26.156.215|:443... connected. @@ -390,17 +478,6 @@ virtual/perl-Unicode-Normalize # Masked for testing dev-db/mysql:8.4 -# Michał Górny <mgorny@gentoo.org> (2025-05-08) -# Vulnerable, EOL branch of dev-python/django. Bug #955606. -# Pleas upgrade to 5.1, 5.2 LTS, or downgrade to 4.2 LTS. -=dev-python/django-5.0* - -# Michał Górny <mgorny@gentoo.org> (2025-05-04) -# New wave of breakage from random removals. -# Bugs #955398, #955396, #955411. -=dev-python/ensurepip-setuptools-80.3.0 -=dev-python/setuptools-80.3.0 - # Michał Górny <mgorny@gentoo.org> (2025-04-19) # This package will no longer feature stable keywords, due to unresolved # test failures blocking the stabilization request for months. @@ -448,71 +525,6 @@ dev-db/mysql:8.4 # Masked for testing. Fails to update from previous version. See bug #949626. >=x11-themes/fluent-icon-theme-2025.02.10 -# Matt Jolly <kangie@gentoo.org> (2025-02-10) -# Rust ebuilds are migrating to use RPATH/RUNPATH to find their libraries. -# New revisions for each Slot are already in-tree and should be used instead. -# Bug 949374 -=dev-lang/rust-1.71.1-r100 -=dev-lang/rust-1.74.1-r100 -=dev-lang/rust-1.75.0-r100 -=dev-lang/rust-1.76.0-r100 -=dev-lang/rust-1.77.1-r100 -=dev-lang/rust-1.79.0-r100 -=dev-lang/rust-1.78.0-r100 -=dev-lang/rust-1.80.1-r100 -=dev-lang/rust-1.81.0-r100 -=dev-lang/rust-1.82.0-r100 -=dev-lang/rust-1.82.0-r101 -=dev-lang/rust-1.83.0-r1 -=dev-lang/rust-1.84.0 -=dev-lang/rust-1.84.1 -=dev-lang/rust-bin-1.71.1-r101 -=dev-lang/rust-bin-1.74.1-r101 -=dev-lang/rust-bin-1.75.0-r101 -=dev-lang/rust-bin-1.77.1-r101 -=dev-lang/rust-bin-1.79.0-r101 -=dev-lang/rust-bin-1.80.1-r101 -=dev-lang/rust-bin-1.81.0-r101 -=dev-lang/rust-bin-1.82.0-r101 -=dev-lang/rust-bin-1.83.0 -=dev-lang/rust-bin-1.84.0 -=dev-lang/rust-bin-1.84.1 - -# Andreas Sturmlechner <asturm@gentoo.org> (2025-01-23) -# Qt5 tools without any revdeps. Removal on 2025-06-10. -dev-qt/assistant -dev-qt/linguist -dev-qt/pixeltool -dev-qt/qdbus -dev-qt/qdbusviewer -dev-qt/qdoc -dev-qt/qtdiag -dev-qt/qtpaths -dev-qt/qtplugininfo - -# Andreas Sturmlechner <asturm@gentoo.org> (2025-01-23) -# Qt5 packages without any revdeps. Removal on 2025-06-01. -dev-qt/qt3d:5 -dev-qt/qtdatavis3d:5 -dev-qt/qtgamepad:5 -dev-qt/qtlocation:5 -dev-qt/qtnetworkauth:5 -dev-qt/qtpositioning:5 -dev-qt/qtquicktimeline:5 -dev-qt/qtsensors:5 -dev-qt/qtserialbus:5 -dev-qt/qtserialport:5 -dev-qt/qtvirtualkeyboard:5 -dev-qt/qtwebchannel:5 -dev-qt/qtwebview:5 - -# Michał Górny <mgorny@gentoo.org> (2024-12-05) -# 6.12.2 does not boot for me. -=sys-kernel/gentoo-kernel-6.12.2 -=sys-kernel/gentoo-kernel-bin-6.12.2 -=sys-kernel/vanilla-kernel-6.12.2 -=virtual/dist-kernel-6.12.2 - # Ionen Wolkens <ionen@gentoo.org> (2024-11-19) # NVIDIA dropped support for the 470.xx branch in September 2024[1]. # @@ -538,34 +550,6 @@ dev-qt/qtwebview:5 # [3] https://wiki.gentoo.org/wiki/Nouveau x11-drivers/nvidia-drivers:0/470 -# Matt Jolly <kangie@gentoo.org> (2024-11-09) -# The legacy Rust ebuilds are no longer maintained and have been -# replaced by the new slotted Rust. Removal in 30 days. -=dev-lang/rust-1.71.1 -=dev-lang/rust-1.74.1 -=dev-lang/rust-1.75.0-r1 -=dev-lang/rust-1.77.1 -=dev-lang/rust-1.79.0 -=dev-lang/rust-1.80.1 -=dev-lang/rust-1.81.0 -=dev-lang/rust-1.82.0 -=dev-lang/rust-bin-1.71.1 -=dev-lang/rust-bin-1.74.1 -=dev-lang/rust-bin-1.75.0 -=dev-lang/rust-bin-1.77.1 -=dev-lang/rust-bin-1.79.0 -=dev-lang/rust-bin-1.80.1 -=dev-lang/rust-bin-1.81.0 -=dev-lang/rust-bin-1.82.0 -=virtual/rust-1.71.1-r2 -=virtual/rust-1.74.1-r1 -=virtual/rust-1.75.0-r1 -=virtual/rust-1.77.1 -=virtual/rust-1.79.0 -=virtual/rust-1.80.1 -=virtual/rust-1.81.0-r1 -=virtual/rust-1.82.0 - # Viorel Munteanu <ceamac@gentoo.org> (2024-10-18) # Experimental version, for testing purposes only. # Bug #941566. @@ -587,48 +571,10 @@ app-emulation/virtualbox-kvm <sys-devel/gcc-11 <sys-devel/kgcc64-11 -# Fabian Groffen <grobian@gentoo.org> (2024-09-02) -# exim_tinydb utility crashes due to invalid free() (used in startup script) -=mail-mta/exim-4.98 - # Sam James <sam@gentoo.org> (2024-06-25) # The symbol versioning "fix" breaks anything built with 3.0.0. >=dev-libs/libassuan-3.0.1 -# Sam James <sam@gentoo.org> (2023-12-14) -# Gentoo's kernel maintainers have decided to discontinue gentoo-sources and -# gentoo-kernel for old kernel LTS branches because of the resources to require -# testing and patching them, combined with changing kernel lifecycles. -# -# The new policy is to support kernels with genpatches for 3 years after their -# release. -# -# Specifically, 4.14/4.19/5.4 have been dropped. See https://www.mpagano.com/blog/?p=315 -# and http://www.kroah.com/log/blog/2018/08/24/what-stable-kernel-should-i-use/. -# -# sys-kernel/vanilla-sources will continue to be provided for all branches -# until they reach formal upstream EOL. -# -<sys-kernel/gentoo-sources-5.10 -<sys-kernel/gentoo-kernel-5.10 -<virtual/dist-kernel-5.10 - -# Sam James <sam@gentoo.org> (2023-09-09) -# OpenSSL 1.1.x is EOL on 2023-09-11. Please upgrade immediately to >= OpenSSL 3. -# https://www.openssl.org/blog/blog/2023/03/28/1.1.1-EOL/ -# https://www.openssl.org/blog/blog/2023/06/15/1.1.1-EOL-Reminder/ -# Please run a full world upgrade, especially checking /etc/portage and your world file -# for old PHP or Ruby references. -<dev-libs/openssl-3 - -# Andreas K. Hüttel <dilfridge@gentoo.org> (2023-07-12) -# The catalyst-3 branch is outdated and not used by Gentoo -# Release Engineering anymore. Please either use git master -# (9999) as all Release Engineering build machines or wait -# for catalyst-4. Questions or bug reports about catalyst-3 -# may or may not lead to useful results. -<dev-util/catalyst-4 - # Michał Górny <mgorny@gentoo.org> (2023-06-21) # suitesparseconfig-7.0.0 fails to build with multilib enabled # because of dependencies that cannot be satisfied. All the other @@ -737,7 +683,7 @@ media-plugins/kodi-game-libretro-dosbox # If you still use one of these old toolchain packages, please upgrade (and # switch the compiler / the binutils) ASAP. If you need them for a specific # (isolated) use case, feel free to unmask them on your system. -<sys-libs/glibc-2.40-r8 +<sys-libs/glibc-2.41-r10 <sys-libs/binutils-libs-2.44 <sys-devel/binutils-2.44 <sys-devel/binutils-hppa64-2.44 diff --git a/sdk_container/src/third_party/portage-stable/profiles/prefix/darwin/use.mask b/sdk_container/src/third_party/portage-stable/profiles/prefix/darwin/use.mask index b3b6dcd4f1e..df8e5d0031f 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/prefix/darwin/use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/prefix/darwin/use.mask @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 #Add USE flags that don't work on Darwin/OpenDarwin/OS X here @@ -18,7 +18,6 @@ acpi alsa apm caps -djbfft fbcon ggi gpm diff --git a/sdk_container/src/third_party/portage-stable/profiles/prefix/sunos/use.mask b/sdk_container/src/third_party/portage-stable/profiles/prefix/sunos/use.mask index 1cc476b2815..f2ba463dfb1 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/prefix/sunos/use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/prefix/sunos/use.mask @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Re-add SunOS libc @@ -11,7 +11,6 @@ acpi alsa apm caps -djbfft fbcon ggi gpm diff --git a/sdk_container/src/third_party/portage-stable/profiles/profiles.desc b/sdk_container/src/third_party/portage-stable/profiles/profiles.desc index 6d10bd442af..bfd8e40c3dd 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/profiles.desc +++ b/sdk_container/src/third_party/portage-stable/profiles/profiles.desc @@ -504,11 +504,15 @@ ppc64 default/linux/ppc64le/23.0/musl/hardened exp ppc64 default/linux/ppc64le/23.0/split-usr/musl dev ppc64 default/linux/ppc64le/23.0/split-usr/musl/hardened exp riscv default/linux/riscv/23.0/rv64/lp64d/musl dev +riscv default/linux/riscv/23.0/rv64/lp64d/musl/systemd exp riscv default/linux/riscv/23.0/rv64/lp64/musl dev +riscv default/linux/riscv/23.0/rv64/lp64/musl/systemd exp riscv default/linux/riscv/23.0/rv64/split-usr/lp64d/musl dev riscv default/linux/riscv/23.0/rv64/split-usr/lp64/musl dev riscv default/linux/riscv/23.0/rv32/ilp32d/musl exp +riscv default/linux/riscv/23.0/rv32/ilp32d/musl/systemd exp riscv default/linux/riscv/23.0/rv32/ilp32/musl exp +riscv default/linux/riscv/23.0/rv32/ilp32/musl/systemd exp riscv default/linux/riscv/23.0/rv32/split-usr/ilp32d/musl exp riscv default/linux/riscv/23.0/rv32/split-usr/ilp32/musl exp x86 default/linux/x86/23.0/i686/musl dev diff --git a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/gnome/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/gnome/make.defaults index 8af0df35af0..4709d73d45d 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/gnome/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/gnome/make.defaults @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -USE="colord eds evo gdk-pixbuf gnome gnome-keyring gnome-online-accounts gnome-shell gstreamer introspection keyring nautilus networkmanager pulseaudio sysprof tracker" +USE="colord eds evo gdk-pixbuf gnome gnome-keyring gnome-online-accounts gnome-shell gstreamer introspection keyring nautilus networkmanager sysprof tracker" diff --git a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/gnome/package.use b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/gnome/package.use index 117d7493837..da220e02956 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/gnome/package.use +++ b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/gnome/package.use @@ -1,10 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Sam James <sam@gentoo.org> (2025-10-18) # Needed by net-misc/gnome-remote-desktop. Default +rdp needs freerdp[server]. net-misc/freerdp server -x11-wm/mutter screencast # Mart Raudsepp <leio@gentoo.org> (2022-01-05) # gnome-boxes requires spice-gtk[vala] diff --git a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/gnome/package.use.force b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/gnome/package.use.force deleted file mode 100644 index b7a87347d0e..00000000000 --- a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/gnome/package.use.force +++ /dev/null @@ -1 +0,0 @@ -app-misc/localsearch landlock diff --git a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/make.defaults index a1dc0d21ad3..d27a8a2d324 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/make.defaults @@ -1,4 +1,4 @@ # Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -USE="a52 aac acpi alsa avif bluetooth branding cairo cdda cdr cups dbus dri dts dvd dvdr elogind encode exif flac gif gpm gtk gui icu jpeg jpegxl lcms libnotify mad mng mp3 mp4 mpeg ogg opengl pango pdf png policykit ppds qml qt6 sdl sound spell startup-notification svg tiff truetype vorbis udev udisks unicode upower usb vulkan wayland webp wxwidgets X xcb xft x264 xml xv xvid" +USE="a52 aac acpi alsa avif bluetooth branding cairo cdda cdr cups dbus dri dts dvd dvdr elogind encode exif flac gif gpm gtk gui icu jpeg jpegxl lcms libnotify mad mng mp3 mp4 mpeg ogg opengl pipewire pango pdf png policykit ppds pulseaudio qml qt6 screencast sdl sound spell startup-notification svg tiff truetype vorbis udev udisks unicode upower usb vulkan wayland webp wxwidgets X xcb xft x264 xml xv xvid" diff --git a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/package.use b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/package.use index 2a98f20aeaa..372e15a1378 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/package.use +++ b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/package.use @@ -1,16 +1,14 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Ian Jordan <immoloism@gmail.com> (2026-01-14) +# Use PipeWire sound server. It also acts as PulseAudio implementation for +# packages using media-libs/libpulse (e.g. via USE="pulseaudio"). +media-video/pipewire sound-server + # Andreas Sturmlechner <asturm@gentoo.org> (2025-12-16) # Enable IUSE qt5 for current stable pkgs with USE-revdeps before dropping # it from make.defaults. # Bug #948836 -<app-text/poppler-25.12.0 qt5 -<dev-libs/quazip-1.5 qt5 -<kde-plasma/breeze-6.5.0:6 qt5 -<kde-plasma/oxygen-6.5.0:6 qt5 -<kde-plasma/plasma-integration-6.5.0:6 qt5 -<kde-plasma/plasma-meta-6.5.5 qt5 -<sys-auth/polkit-qt-0.200.0-r1 qt5 <x11-libs/qwt-6.3.0 qt5 # Sam James <sam@gentoo.org> (2025-10-18) diff --git a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/plasma/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/plasma/make.defaults index 952f3e112e0..4f5663d04b4 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/plasma/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/plasma/make.defaults @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -USE="activities declarative dri kde kwallet networkmanager pipewire plasma policykit pulseaudio screencast semantic-desktop widgets" +USE="activities declarative dri kde kwallet networkmanager plasma policykit semantic-desktop widgets" diff --git a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/plasma/package.use b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/plasma/package.use index d93e5e92064..0dff4380a9e 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/plasma/package.use +++ b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/plasma/package.use @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Marek Szuba <marecki@gentoo.org> (2023-11-12) @@ -22,9 +22,6 @@ dev-python/pyside webchannel # Required by sys-apps/flatpak, a dependency of kde-plasma/discover dev-util/ostree curl -# Required by app-editors/okteta:5 -dev-qt/qtscript:5 scripttools - # Required by kde-apps/akonadi:6 dev-qt/qtbase:6 mysql @@ -52,6 +49,3 @@ virtual/zlib minizip # Required by kde-plasma/plasma-meta kde-plasma/kwin lock kde-plasma/kwin-x11 lock - -# plasma profile never enabled pulseaudio. We're skipping to pipewire. -media-video/pipewire sound-server diff --git a/sdk_container/src/third_party/portage-stable/profiles/targets/systemd/package.mask b/sdk_container/src/third_party/portage-stable/profiles/targets/systemd/package.mask index 4c912c607a5..4ca05cb7787 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/targets/systemd/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/targets/systemd/package.mask @@ -1,6 +1,10 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Sam James <sam@gentoo.org> (2026-02-18) +# Requires systemd, so specifically unmasked only in targets/systemd. +-kde-plasma/plasma-login-manager + # Andreas Sturmlechner <asturm@gentoo.org> (2025-05-18) # Requires systemd, so specifically unmasked only in targets/systemd. ->=kde-plasma/drkonqi-6.3.90 diff --git a/sdk_container/src/third_party/portage-stable/profiles/thirdpartymirrors b/sdk_container/src/third_party/portage-stable/profiles/thirdpartymirrors index 71621d0385f..27053a3d1c2 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/thirdpartymirrors +++ b/sdk_container/src/third_party/portage-stable/profiles/thirdpartymirrors @@ -3,20 +3,19 @@ cpan https://cpan.metacpan.org https://www.cpan.org debian https://deb.debian.org/debian/ http://ftp.au.debian.org/debian/ http://ftp.at.debian.org/debian/ http://ftp.by.debian.org/debian/ http://ftp.be.debian.org/debian/ http://ftp.br.debian.org/debian/ http://ftp.bg.debian.org/debian/ http://ftp.ca.debian.org/debian/ http://ftp2.cn.debian.org/debian/ http://ftp.cn.debian.org/debian/ http://ftp.hr.debian.org/debian/ http://ftp.cz.debian.org/debian/ http://ftp.dk.debian.org/debian/ http://ftp.sv.debian.org/debian/ http://ftp.ee.debian.org/debian/ http://ftp.fi.debian.org/debian/ http://ftp.fr.debian.org/debian/ http://ftp2.de.debian.org/debian/ http://ftp.de.debian.org/debian/ http://ftp.gr.debian.org/debian/ http://ftp.hu.debian.org/debian/ http://ftp.is.debian.org/debian/ http://ftp.ie.debian.org/debian/ http://ftp.it.debian.org/debian/ http://ftp.jp.debian.org/debian/ http://ftp.lt.debian.org/debian/ http://ftp.mx.debian.org/debian/ http://ftp.md.debian.org/debian/ http://ftp.nl.debian.org/debian/ http://ftp.nc.debian.org/debian/ http://ftp.nz.debian.org/debian/ http://ftp.no.debian.org/debian/ http://ftp.pl.debian.org/debian/ http://ftp.pt.debian.org/debian/ http://ftp.ro.debian.org/debian/ http://ftp.ru.debian.org/debian/ http://ftp.sg.debian.org/debian/ http://ftp.sk.debian.org/debian/ http://ftp.si.debian.org/debian/ http://ftp.es.debian.org/debian/ http://ftp.se.debian.org/debian/ http://ftp.ch.debian.org/debian/ http://ftp.tw.debian.org/debian/ http://ftp.tr.debian.org/debian/ http://ftp.ua.debian.org/debian/ http://ftp.uk.debian.org/debian/ http://ftp.us.debian.org/debian/ gentoo https://distfiles.gentoo.org/distfiles https://gentoo.osuosl.org/distfiles https://ftp.halifax.rwth-aachen.de/gentoo/distfiles https://ftp.fau.de/gentoo/distfiles gcc https://gcc.gnu.org/pub/gcc/ http://mirrors.concertpass.com/gcc/ https://mirrorservice.org/sites/sourceware.org/pub/gcc/ https://ftp.mpi-inf.mpg.de/mirrors/gnu/mirror/gcc.gnu.org/pub/gcc/ https://bigsearcher.com/mirrors/gcc/ -gimp https://ftp.fau.de/gimp/gimp/ ftp://ftp.fau.de/gimp/gimp/ https://artfiles.org/gimp.org/pub/gimp/ https://www.mirrorservice.org/sites/ftp.gimp.org/pub/gimp/ ftp://ftp.mirrorservice.org/sites/ftp.gimp.org/pub/gimp/ +gimp https://download.gimp.org/ https://ftp.fau.de/gimp/gimp/ ftp://ftp.fau.de/gimp/gimp/ https://artfiles.org/gimp.org/pub/gimp/ https://www.mirrorservice.org/sites/ftp.gimp.org/pub/gimp/ ftp://ftp.mirrorservice.org/sites/ftp.gimp.org/pub/gimp/ gnome https://download.gnome.org/ gnu https://ftp.gnu.org/gnu/ https://artfiles.org/gnu.org/ https://www.mirrorservice.org/sites/ftp.gnu.org/gnu/ gnupg https://www.mirrorservice.org/sites/ftp.gnupg.org/gcrypt/ https://mirrors.dotsrc.org/gcrypt/ https://gnupg.org/ftp/gcrypt/ -goproxy https://proxy.golang.org/ https://goproxy.io/ +goproxy https://proxy.golang.org/ https://goproxy.io/ idsoftware ftp://ftp.fu-berlin.de/pc/games/idgames/idstuff ftp://ftp.gamers.org/pub/idgames/idstuff imagemagick https://imagemagick.org/archive/releases/ https://mirror.checkdomain.de/imagemagick/releases/ https://ftp.acc.umu.se/mirror/imagemagick.org/ftp/releases/ ftp://ftp.fifi.org/pub/ImageMagick/releases/ kde https://download.kde.org https://mirror.csclub.uwaterloo.ca/kde ftp://mirrors.dotsrc.org/kde https://ftp.gwdg.de/pub/linux/kde https://ftp.mirrorservice.org/sites/ftp.kde.org/pub/kde lokigames http://updates.lokigames.com -mariadb https://archive.mariadb.org/ http://ftp.bme.hu/pub/mirrors/mariadb/ https://ftp.nluug.nl/db/mariadb/ https://mirrors.up.pt/pub/mariadb/ https://rsync.osuosl.org/pub/mariadb/ https://mirror.netcologne.de/mariadb/ +mariadb https://archive.mariadb.org/ https://ftp.bme.hu/pub/mirrors/mariadb/ https://ftp.nluug.nl/db/mariadb/ https://mirrors.up.pt/pub/mariadb/ https://rsync.osuosl.org/pub/mariadb/ https://mirror.netcologne.de/mariadb/ mplayer https://www1.mplayerhq.hu/MPlayer http://www2.mplayerhq.hu/MPlayer http://www7.mplayerhq.hu/MPlayer http://www8.mplayerhq.hu/MPlayer ftp://ftp1.mplayerhq.hu/MPlayer/ ftp://ftp6.mplayerhq.hu/MPlayer/ ftp://ftp7.mplayerhq.hu/MPlayer/ ftp://ftp8.mplayerhq.hu/MPlayer/ nongnu https://download.savannah.nongnu.org/releases/ https://ftp.cc.uoc.gr/mirrors/nongnu.org/ http://ftp.twaren.net/Unix/NonGNU/ https://mirror.csclub.uwaterloo.ca/nongnu/ ftp://mirror.csclub.uwaterloo.ca/nongnu/ https://mirrors.fe.up.pt/pub/nongnu/ ftp://mirrors.fe.up.pt/pub/nongnu/ https://nongnu.askapache.com/ https://nongnu.uib.no/ ftp://nongnu.uib.no/pub/nongnu/ http://savannah.c3sl.ufpr.br/ ftp://ftp.twaren.net/Unix/NonGNU/ openbsd https://cdn.openbsd.org/pub/OpenBSD https://fastly.cdn.openbsd.org/pub/OpenBSD openssl https://www.openssl.org/ https://artfiles.org/openssl.org/ https://www.mirrorservice.org/sites/ftp.openssl.org/ sourceforge.jp http://iij.dl.sourceforge.jp https://osdn.dl.sourceforge.jp https://jaist.dl.sourceforge.jp ubuntu http://mirror.internode.on.net/pub/ubuntu/ubuntu/ http://ubuntu.uni-klu.ac.at/ubuntu/ http://mirror.dhakacom.com/ubuntu-archive/ http://ubuntu.c3sl.ufpr.br/ubuntu/ http://hr.archive.ubuntu.com/ubuntu/ http://cz.archive.ubuntu.com/ubuntu/ https://mirror.dkm.cz/ubuntu http://ftp.cvut.cz/ubuntu/ http://ftp.stw-bonn.de/ubuntu/ https://ftp-stud.hs-esslingen.de/ubuntu/ https://mirror.netcologne.de/ubuntu/ https://mirror.unej.ac.id/ubuntu/ http://kr.archive.ubuntu.com/ubuntu/ https://mirror.nforce.com/pub/linux/ubuntu/ http://nl3.archive.ubuntu.com/ubuntu/ https://mirror.timeweb.ru/ubuntu/ http://ubuntu.mirror.su.se/ubuntu/ https://ubuntu.volia.net/ubuntu-archive/ https://mirror.pnl.gov/ubuntu/ https://mirrors.namecheap.com/ubuntu/ -vdr-developerorg http://projects.vdr-developer.org/attachments/download From 6fe043b55d285624a1c126812dbacd76e139bfeb Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:53 +0000 Subject: [PATCH 183/291] sec-keys/openpgp-keys-gentoo-release: Sync with Gentoo It's from Gentoo commit c2b3a7c57a3d955761b037692332deefbdb2f24c. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../openpgp-keys-gentoo-release/Manifest | 1 + ...penpgp-keys-gentoo-release-20260125.ebuild | 69 +++++++++++++++++++ 2 files changed, 70 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sec-keys/openpgp-keys-gentoo-release/openpgp-keys-gentoo-release-20260125.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sec-keys/openpgp-keys-gentoo-release/Manifest b/sdk_container/src/third_party/portage-stable/sec-keys/openpgp-keys-gentoo-release/Manifest index a52607a4ac5..c4e0d8c7448 100644 --- a/sdk_container/src/third_party/portage-stable/sec-keys/openpgp-keys-gentoo-release/Manifest +++ b/sdk_container/src/third_party/portage-stable/sec-keys/openpgp-keys-gentoo-release/Manifest @@ -1,2 +1,3 @@ DIST gentoo-release-test-sigs-20190224.tar.gz 3235 BLAKE2B 924c69a62d5321716f536144f0607bd3ec4a65d76be492adc729864fd9bef82df0086541ae13034a83152ea0c8dc3cbd168be6cff111a3484128a22cbc8ef1d4 SHA512 f8cc2e84bedbdf14ace6abe4aacf8f0c9810c77ff6ae0fac301829d9d4d5cf0c128a76516c773ac993879215bcdb0aab097e1e7e747d8e1a7c4cfc815bd4d3e6 DIST gentoo-release.asc.20250806.gz 18794 BLAKE2B f683266f64357ce869adb04c8efdee296fdfacd72e003d305eecfb91b89c56243e0e7f342f47ca7918f560f961b7f73d874d86018f483ae814f43f40efda7459 SHA512 71b8ef105d49218690d242df2517b1a078f7a8d353ba6d9621cb6690431a46d85a3e45e3a2f4e3b9050b344c3cb636e10a2cc42cbd813a2e926b0b42630cd1cb +DIST gentoo-release.asc.20260125.gz 14059 BLAKE2B 461167bbd4188c38e78e8d4e220d4da4f0b81b87064da7805c06c75402b629a03b3cdadd5fb2001d6db970e426ee420de655da160ae1399f916ba814a35ce7db SHA512 12cb97e0c0d613d75f36e3543eb8ed566f5ab66895ca7b4abcf3d60adae23ac6230b905972f0ca668187755cef2aaae68b6b01d6372796a8ee566957e36cd3e5 diff --git a/sdk_container/src/third_party/portage-stable/sec-keys/openpgp-keys-gentoo-release/openpgp-keys-gentoo-release-20260125.ebuild b/sdk_container/src/third_party/portage-stable/sec-keys/openpgp-keys-gentoo-release/openpgp-keys-gentoo-release-20260125.ebuild new file mode 100644 index 00000000000..82a2ae10e49 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sec-keys/openpgp-keys-gentoo-release/openpgp-keys-gentoo-release-20260125.ebuild @@ -0,0 +1,69 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="OpenPGP keys used for Gentoo releases (snapshots, stages)" +HOMEPAGE="https://www.gentoo.org/downloads/signatures/" +# https://dev.gentoo.org/~mgorny/dist/openpgp-keys/gentoo-release.asc.${PV}.gz +SRC_URI=" + https://dev.gentoo.org/~sam/dist/sec-keys/${PN}/gentoo-release.asc.${PV}.gz + test? ( + https://dev.gentoo.org/~mgorny/dist/openpgp-keys/gentoo-release-test-sigs-20190224.tar.gz + ) +" +S=${WORKDIR} + +LICENSE="public-domain" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + test? ( + || ( + app-crypt/gnupg[alternatives(-)] + >=app-crypt/freepg-2.5.12_p1-r1 + ) + ) +" + +# Generated with: +# 1. export GNUPGHOME=$(mktemp -d) +# 2. gpg --import-options no-import-clean,no-self-sigs-only --import /usr/share/openpgp-keys/gentoo-auth.asc +# 3. gpg --import-options no-import-clean,no-self-sigs-only --import /usr/share/openpgp-keys/gentoo-release.asc +# 4. Verify gpg --list-keys shows only expected L1 and L2 authority keys +# 5. gpg --armor --export > gentoo-release.asc.${PV} +# 6. diff the existing version with the new version with pgpdump, make sure +# the changes look expected. +# 7. gzip gentoo-release.asc.${PV} +# +# Keys included: +# DCD05B71EAB94199527F44ACDB6B8C1F96D8BF6D +# D99EAC7379A850BCE47DA5F29E6438C817072058 +# 13EBBDBEDE7A12775DFDB1BABB572E0E2D182910 +# EF9538C9E8E64311A52CDEDFA13D0EF1914E7A72 + +src_test() { + local old_umask=$(umask) + umask 077 + + local -x GNUPGHOME=${T}/.gnupg + mkdir "${GNUPGHOME}" || die + einfo "Importing keys ..." + gpg-reference --import "gentoo-release.asc.${PV}" || die "Key import failed" + + local f + for f in gentoo-release-test-sigs*/*.asc; do + einfo "Testing ${f##*/} ..." + gpg-reference -q --trust-model always --verify "${f}" || die "Verification failed on ${f}" + done + + umask "${old_umask}" +} + +src_install() { + insinto /usr/share/openpgp-keys + newins "gentoo-release.asc.${PV}" gentoo-release.asc +} From 7f849f26015fe99f483728b7ebfd92d5945b451e Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:57 +0000 Subject: [PATCH 184/291] sys-apps/acl: Sync with Gentoo It's from Gentoo commit 4a976778611351073dc919fbe430e0a7089dd5a9. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- ...cl-2.3.2-r2.ebuild => acl-2.3.2-r3.ebuild} | 6 ++- .../sys-apps/acl/files/acl-2.3.2-memory.patch | 49 +++++++++++++++++++ 2 files changed, 54 insertions(+), 1 deletion(-) rename sdk_container/src/third_party/portage-stable/sys-apps/acl/{acl-2.3.2-r2.ebuild => acl-2.3.2-r3.ebuild} (92%) create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/acl/files/acl-2.3.2-memory.patch diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/acl/acl-2.3.2-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/acl/acl-2.3.2-r3.ebuild similarity index 92% rename from sdk_container/src/third_party/portage-stable/sys-apps/acl/acl-2.3.2-r2.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/acl/acl-2.3.2-r3.ebuild index 00fc58b2924..d760e0734e6 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/acl/acl-2.3.2-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/acl/acl-2.3.2-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -20,6 +20,10 @@ RDEPEND=" DEPEND="${RDEPEND}" BDEPEND="nls? ( sys-devel/gettext )" +PATCHES=( + "${FILESDIR}/acl-2.3.2-memory.patch" +) + src_prepare() { default diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/acl/files/acl-2.3.2-memory.patch b/sdk_container/src/third_party/portage-stable/sys-apps/acl/files/acl-2.3.2-memory.patch new file mode 100644 index 00000000000..5727f3541e6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/acl/files/acl-2.3.2-memory.patch @@ -0,0 +1,49 @@ +https://bugs.gentoo.org/970228 +https://cgit.git.savannah.nongnu.org/cgit/acl.git/commit/?id=56abe432b65801f31277fb9a3bca0f9e31502315 + +From 56abe432b65801f31277fb9a3bca0f9e31502315 Mon Sep 17 00:00:00 2001 +From: Matthias Gerstner <matthias.gerstner@suse.de> +Date: Thu, 25 Apr 2024 12:43:49 +0200 +Subject: libmisc: __acl_get_uid(): fix memory wasting loop if user does not + exist + +I noticed that `acl_from_text()` unexpectedly returns ENOMEM for invalid +user names. The reason for this is a missing break statement in the for +loop in `__acl_get_uid()`, which causes the loop to act as if ERANGE was +returned from `getpwnam_r()`, thereby exponentially increasing the +buffer size to (in my case) multiple gigabytes, until `grow_buffer()` +reports ENOMEM, which terminates the `__acl_get_uid()` function. + +This is a pretty costly "no such user" lookup that can disturb a +process's heap memory management, but can also cause a process to fail +e.g. if it is multithreaded and other threads encounter an ENOMEM, +before `__acl_get_uid()` frees the gigantic heap buffer and returns. +The allocated memory isn't actually used. Therefore on Linux it should +not affect other processes by default, due to its overcommit memory +and lazy memory allocation strategy. + +Fix this by properly terminating the for loop on any conditions except +an ERANGE error being reported. The same break statement correctly +exists in `__acl_get_gid()` already. + +Fixes: 3737f00 ("use thread-safe getpwnam_r and getgrnam_r") +Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com> +--- + libmisc/uid_gid_lookup.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/libmisc/uid_gid_lookup.c b/libmisc/uid_gid_lookup.c +index a4f21f6..74baab4 100644 +--- a/libmisc/uid_gid_lookup.c ++++ b/libmisc/uid_gid_lookup.c +@@ -91,6 +91,7 @@ __acl_get_uid(const char *token, uid_t *uid_p) + if (err == ERANGE) + continue; + errno = err ? err : EINVAL; ++ break; + } + free(buffer); + return result ? 0 : -1; +-- +cgit v1.2.3 + From 31fb771aa01669d781c2738b588ceb7e082f2e99 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:59 +0000 Subject: [PATCH 185/291] sys-apps/bubblewrap: Sync with Gentoo It's from Gentoo commit ca7c2a63e59491283af0ce25b3d076818d9bfced. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-apps/bubblewrap/Manifest | 3 - .../bubblewrap/bubblewrap-0.10.0.ebuild | 58 ------------------- .../bubblewrap/bubblewrap-0.8.0.ebuild | 58 ------------------- .../bubblewrap/bubblewrap-0.9.0.ebuild | 58 ------------------- 4 files changed, 177 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/bubblewrap/bubblewrap-0.10.0.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/bubblewrap/bubblewrap-0.8.0.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/bubblewrap/bubblewrap-0.9.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/bubblewrap/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/bubblewrap/Manifest index 23616f3e3b3..84bf02c74fc 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/bubblewrap/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/bubblewrap/Manifest @@ -1,4 +1 @@ -DIST bubblewrap-0.10.0.tar.xz 119328 BLAKE2B 2b4b08409612e08c1ee7cde1dabb422cdc3e994f12ad8df94c99ad15c6355e605f73159df6ea32a54a7cf219e72c55a8ad72a73c3138f06b375fca36eff0c53e SHA512 d9e60c1999f8e205d4126cbc0680f6ee6cd316a461ad81563bc0aa606f3b257da5f36d4934b13d6ab1745aa78946224223455d44edff41d16238e8633f0eced9 DIST bubblewrap-0.11.0.tar.xz 115228 BLAKE2B 753ae172ccceb9de08422f03702922966cb6e6d2da262ffb61e3e207ff616166f4047a1cc47801e091cf9e85d6d179450704b3e99743c81d8f77e9c37094d816 SHA512 4b083ac42410dacfa75ad8764bbb300048ce8f28543ece393b9b7180b152108ee4b337f82539d63196b6f8f5bf194d9e10f49207e3b8417ee2cb4bde88a63eee -DIST bubblewrap-0.8.0.tar.xz 149088 BLAKE2B 5853cf42a7ab653540ec5134866c6f2459aa101e9eea724a4f283405cbcae2beb3551b7c1a7aa93d82016d4eb0d12f9c97c47df53a6d9b589db40483696253de SHA512 1cbc33f3c834ff83f4c1808d3ec2555921277d495f903ad152cbd5065a6e100c5420b4b5c62386bb2d303eb1734e074b09625013e55e3bd8631cfb3582d70e1c -DIST bubblewrap-0.9.0.tar.xz 118984 BLAKE2B 52a4e87e502da44a25031b6d6044da7712dccb2c58a2debad9a8562fd1e48805d783bec571adc0df8880a63595825a4204ceaaa4f3df2672252c631f7fe5b0c7 SHA512 3a3af355e4fdb19a91c40020d68fd83f7c74ebef92d989c932933293758bc0175fa41220c47fe829b84ba29457a12f0e225c19afe674ecbf983b0826dbc1c878 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/bubblewrap/bubblewrap-0.10.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/bubblewrap/bubblewrap-0.10.0.ebuild deleted file mode 100644 index 3a616dacfff..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/bubblewrap/bubblewrap-0.10.0.ebuild +++ /dev/null @@ -1,58 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit linux-info meson - -DESCRIPTION="Unprivileged sandboxing tool, namespaces-powered chroot-like solution" -HOMEPAGE="https://github.com/containers/bubblewrap/" -SRC_URI="https://github.com/containers/${PN}/releases/download/v${PV}/${P}.tar.xz" - -LICENSE="LGPL-2+" -SLOT="0" -KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv x86" -IUSE="selinux suid" - -RDEPEND=" - sys-libs/libseccomp - sys-libs/libcap - selinux? ( >=sys-libs/libselinux-2.1.9 ) -" -DEPEND="${RDEPEND}" -BDEPEND=" - app-text/docbook-xml-dtd:4.3 - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - virtual/pkgconfig -" - -# tests require root privileges -RESTRICT="test" - -pkg_setup() { - if [[ ${MERGE_TYPE} != buildonly ]]; then - CONFIG_CHECK="~UTS_NS ~IPC_NS ~USER_NS ~PID_NS ~NET_NS" - linux-info_pkg_setup - fi -} - -src_configure() { - local emesonargs=( - -Dbash_completion=enabled - -Dman=enabled - -Dtests=false - -Dzsh_completion=enabled - $(meson_feature selinux) - ) - - meson_src_configure -} - -src_install() { - meson_src_install - - if use suid; then - chmod u+s "${ED}"/usr/bin/bwrap - fi -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/bubblewrap/bubblewrap-0.8.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/bubblewrap/bubblewrap-0.8.0.ebuild deleted file mode 100644 index 756847be4af..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/bubblewrap/bubblewrap-0.8.0.ebuild +++ /dev/null @@ -1,58 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit linux-info meson - -DESCRIPTION="Unprivileged sandboxing tool, namespaces-powered chroot-like solution" -HOMEPAGE="https://github.com/containers/bubblewrap/" -SRC_URI="https://github.com/containers/${PN}/releases/download/v${PV}/${P}.tar.xz" - -LICENSE="LGPL-2+" -SLOT="0" -KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv x86" -IUSE="selinux suid" - -RDEPEND=" - sys-libs/libseccomp - sys-libs/libcap - selinux? ( >=sys-libs/libselinux-2.1.9 ) -" -DEPEND="${RDEPEND}" -BDEPEND=" - app-text/docbook-xml-dtd:4.3 - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - virtual/pkgconfig -" - -# tests require root privileges -RESTRICT="test" - -pkg_setup() { - if [[ ${MERGE_TYPE} != buildonly ]]; then - CONFIG_CHECK="~UTS_NS ~IPC_NS ~USER_NS ~PID_NS ~NET_NS" - linux-info_pkg_setup - fi -} - -src_configure() { - local emesonargs=( - -Dbash_completion=enabled - -Dman=enabled - -Dtests=false - -Dzsh_completion=enabled - $(meson_feature selinux) - ) - - meson_src_configure -} - -src_install() { - meson_src_install - - if use suid; then - chmod u+s "${ED}"/usr/bin/bwrap - fi -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/bubblewrap/bubblewrap-0.9.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/bubblewrap/bubblewrap-0.9.0.ebuild deleted file mode 100644 index f52fb2cc495..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/bubblewrap/bubblewrap-0.9.0.ebuild +++ /dev/null @@ -1,58 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit linux-info meson - -DESCRIPTION="Unprivileged sandboxing tool, namespaces-powered chroot-like solution" -HOMEPAGE="https://github.com/containers/bubblewrap/" -SRC_URI="https://github.com/containers/${PN}/releases/download/v${PV}/${P}.tar.xz" - -LICENSE="LGPL-2+" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" -IUSE="selinux suid" - -RDEPEND=" - sys-libs/libseccomp - sys-libs/libcap - selinux? ( >=sys-libs/libselinux-2.1.9 ) -" -DEPEND="${RDEPEND}" -BDEPEND=" - app-text/docbook-xml-dtd:4.3 - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - virtual/pkgconfig -" - -# tests require root privileges -RESTRICT="test" - -pkg_setup() { - if [[ ${MERGE_TYPE} != buildonly ]]; then - CONFIG_CHECK="~UTS_NS ~IPC_NS ~USER_NS ~PID_NS ~NET_NS" - linux-info_pkg_setup - fi -} - -src_configure() { - local emesonargs=( - -Dbash_completion=enabled - -Dman=enabled - -Dtests=false - -Dzsh_completion=enabled - $(meson_feature selinux) - ) - - meson_src_configure -} - -src_install() { - meson_src_install - - if use suid; then - chmod u+s "${ED}"/usr/bin/bwrap - fi -} From 67031df51331f71a3e942ec9246b662332d4a412 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:28:59 +0000 Subject: [PATCH 186/291] sys-apps/busybox: Sync with Gentoo It's from Gentoo commit d4a8bbdd202d7bda8b303886bc97131b4c4f0046. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-apps/busybox/Manifest | 1 + ...6.1-r3.ebuild => busybox-1.36.1-r4.ebuild} | 31 +- .../sys-apps/busybox/busybox-1.37.0.ebuild | 394 ++++++++++++++++++ .../files/busybox-1.37.0-sha-ni-fix.patch | 29 ++ ...ybox-1.37.0-skip-dynamic-relocations.patch | 43 ++ 5 files changed, 484 insertions(+), 14 deletions(-) rename sdk_container/src/third_party/portage-stable/sys-apps/busybox/{busybox-1.36.1-r3.ebuild => busybox-1.36.1-r4.ebuild} (92%) create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/busybox/busybox-1.37.0.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/busybox/files/busybox-1.37.0-sha-ni-fix.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/busybox/files/busybox-1.37.0-skip-dynamic-relocations.patch diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/busybox/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/busybox/Manifest index 903c83e3825..2ba96545d9e 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/busybox/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/busybox/Manifest @@ -1 +1,2 @@ DIST busybox-1.36.1.tar.bz2 2525473 BLAKE2B e515825cb3ab1c520e16b9c2512e9fc72947366a72a0466bff59b507fdffbc78fc9d16b44a26116175fc7a429d849ad944b1bc379d36c6d3a0eb20969997336e SHA512 8c0c754c9ae04b5e6b23596283a7d3a4ef96225fe179f92d6f6a99c69c0caa95b1aa56c267f52d7c807f6cc69e1f0b7dd29a8ac624098f601738f8c0c57980d4 +DIST busybox-1.37.0.tar.bz2 2565764 BLAKE2B bfd9b81a2428670722934316d429b56886b232dc43ced5873a1f72966dd2bb604e3d607082bb8404bc7e8c15c5c79265fc19f8932e2c9703caafd16fc8037a5a SHA512 ad8fd06f082699774f990a53d7a73b189ed404fe0a2166aff13eae4d9d8ee5c9239493befe949c98801fe7897520dbff3ed0224faa7205854ce4fa975e18467e diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/busybox/busybox-1.36.1-r3.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/busybox/busybox-1.36.1-r4.ebuild similarity index 92% rename from sdk_container/src/third_party/portage-stable/sys-apps/busybox/busybox-1.36.1-r3.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/busybox/busybox-1.36.1-r4.ebuild index d92573c92ba..dcab41ad935 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/busybox/busybox-1.36.1-r3.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/busybox/busybox-1.36.1-r4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # See `man savedconfig.eclass` for info on how to use USE=savedconfig. @@ -41,7 +41,10 @@ DEPEND="${RDEPEND} selinux? ( sys-libs/libselinux[static-libs(+)] ) ) sys-kernel/linux-headers" -BDEPEND="virtual/pkgconfig" +BDEPEND=" + virtual/pkgconfig + make-symlinks? ( >=sys-apps/coreutils-9.2 ) +" DISABLE_AUTOFORMATTING=yes DOC_CONTENTS=' @@ -84,8 +87,6 @@ PATCHES=( "${FILESDIR}"/${PN}-1.36.1-kernel-6.8.patch "${FILESDIR}"/${PN}-1.36.1-skip-dynamic-relocations.patch - - # "${FILESDIR}"/${P}-*.patch ) src_prepare() { @@ -132,7 +133,6 @@ src_configure() { # check for a busybox config before making one of our own. # if one exist lets return and use it. - restore_config .config if [ -f .config ]; then yes "" | bbmake -j1 oldconfig @@ -144,8 +144,8 @@ src_configure() { # setting SKIP_SELINUX skips searching for selinux at this stage. We don't # need to search now in case we end up not needing it after all. # setup the config file - bbmake -j1 allyesconfig SKIP_SELINUX=$(usex selinux n y) #620918 - # nommu forces a bunch of things off which we want on #387555 + bbmake -j1 allyesconfig SKIP_SELINUX=$(usex selinux n y) # bug #620918 + # nommu forces a bunch of things off which we want on bug #387555 busybox_config_option n NOMMU sed -i '/^#/d' .config yes "" | bbmake -j1 oldconfig SKIP_SELINUX=$(usex selinux n y) #620918 @@ -163,7 +163,7 @@ src_configure() { # CONFIG_MODPROBE_SMALL=y disables depmod.c and uses a smaller one that # does not support -b. Setting this to no creates slightly larger and # slightly more useful modutils - busybox_config_option n MODPROBE_SMALL #472464 + busybox_config_option n MODPROBE_SMALL # bug #472464 # triming the BSS size may be dangerous busybox_config_option n FEATURE_USE_BSS_TAIL @@ -249,7 +249,7 @@ src_compile() { } src_install() { - unset KBUILD_OUTPUT #88088 + unset KBUILD_OUTPUT # bug #88088 save_config .config into / @@ -269,7 +269,7 @@ src_install() { use make-symlinks || dosym /bin/bb /sbin/mdev cp "${S}"/examples/mdev_fat.conf "${ED}"/etc/mdev.conf || die if [[ ! "$(get_libdir)" == "lib" ]]; then - #831251 - replace lib with lib64 where appropriate + # bug #831251 - replace lib with lib64 where appropriate sed -i -e "s:/lib/:/$(get_libdir)/:g" "${ED}"/etc/mdev.conf || die fi @@ -353,6 +353,7 @@ src_install() { pkg_preinst() { if use make-symlinks ; then mv "${ED}"/usr/share/${PN}/busybox-links.tar "${T}"/ || die + rmdir "${ED}"/usr/share/${PN} || die fi } @@ -361,11 +362,13 @@ pkg_postinst() { if use make-symlinks ; then cd "${T}" || die - mkdir _install + mkdir -p _install || die tar xf busybox-links.tar -C _install || die - # 907432: cp -n returns error if it skips any file, but that is expected here - # TODO: check if a new coreutils release has a replacement option - cp -nvpPR _install/* "${ROOT}"/ + # Use --update=none from coreutils-9.2 instead of -n, add || die + # Skip legacy linuxrc link, if anyone really needs it they can create it manually + cp -vpP --update=none _install/bin/* "${ROOT}"/bin/ || die + cp -vpP --update=none _install/sbin/* "${ROOT}"/sbin/ || die + cp -vpP --update=none _install/usr/bin/* "${ROOT}"/usr/bin/ || die fi if use sep-usr ; then diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/busybox/busybox-1.37.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/busybox/busybox-1.37.0.ebuild new file mode 100644 index 00000000000..7801dfaaea6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/busybox/busybox-1.37.0.ebuild @@ -0,0 +1,394 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# See `man savedconfig.eclass` for info on how to use USE=savedconfig. + +EAPI=8 + +inherit eapi9-ver flag-o-matic readme.gentoo-r1 savedconfig toolchain-funcs + +DESCRIPTION="Utilities for rescue and embedded systems" +HOMEPAGE="https://www.busybox.net/" +if [[ ${PV} == "9999" ]] ; then + MY_P="${P}" + EGIT_REPO_URI="https://git.busybox.net/busybox" + inherit git-r3 +else + MY_P="${PN}-${PV/_/-}" + SRC_URI="https://www.busybox.net/downloads/${MY_P}.tar.bz2" + # unstable release - no keywords + # KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-2" # GPL-2 only +SLOT="0" +IUSE="debug livecd make-symlinks math mdev pam selinux sep-usr static syslog systemd" +REQUIRED_USE="pam? ( !static )" +RESTRICT="test" + +# TODO: Could make pkgconfig conditional on selinux? bug #782829 +RDEPEND=" + !static? ( + virtual/libc + virtual/libcrypt:= + selinux? ( sys-libs/libselinux ) + ) + pam? ( sys-libs/pam ) +" +DEPEND="${RDEPEND} + static? ( + virtual/libcrypt[static-libs] + selinux? ( sys-libs/libselinux[static-libs(+)] ) + ) + sys-kernel/linux-headers" +BDEPEND=" + virtual/pkgconfig + make-symlinks? ( >=sys-apps/coreutils-9.2 ) +" + +DISABLE_AUTOFORMATTING=yes +DOC_CONTENTS=' +If you want a smaller executable, add `-Oz` to your busybox `CFLAGS`.' + +busybox_config_option() { + local flag=$1 ; shift + if [[ ${flag} != [yn] && ${flag} != \"* ]] ; then + busybox_config_option $(usex ${flag} y n) "$@" + return + fi + local expr + while [[ $# -gt 0 ]] ; do + case ${flag} in + y) expr="s:.*\<CONFIG_$1\>.*set:CONFIG_$1=y:g" ;; + n) expr="s:CONFIG_$1=y:# CONFIG_$1 is not set:g" ;; + *) expr="s:.*\<CONFIG_$1\>.*:CONFIG_$1=${flag}:g" ;; + esac + sed -i -e "${expr}" .config || die + einfo "$(grep "CONFIG_$1[= ]" .config || echo "Could not find CONFIG_$1 ...")" + shift + done +} + +busybox_config_enabled() { + local val=$(sed -n "/^CONFIG_$1=/s:^[^=]*=::p" .config) + case ${val} in + "") return 1 ;; + y) return 0 ;; + *) echo "${val}" | sed -r 's:^"(.*)"$:\1:' ;; + esac +} + +# patches go here! +PATCHES=( + "${FILESDIR}"/${PN}-1.26.2-bb.patch + "${FILESDIR}"/${PN}-1.34.1-skip-selinux-search.patch + + "${FILESDIR}"/${PN}-1.36.0-fortify-source-3-fixdep.patch + "${FILESDIR}"/${PN}-1.36.1-kernel-6.8.patch + + "${FILESDIR}"/${PN}-1.37.0-skip-dynamic-relocations.patch + + "${FILESDIR}"/${PN}-1.37.0-sha-ni-fix.patch +) + +src_prepare() { + default + + cp "${FILESDIR}"/ginit.c init/ || die + + # flag cleanup + sed -i -r \ + -e 's:[[:space:]]?-(Werror|Os|Oz|falign-(functions|jumps|loops|labels)=1|fomit-frame-pointer)\>::g' \ + Makefile.flags || die + sed -i \ + -e 's:-static-libgcc::' \ + Makefile.flags || die + + # Print all link lines too + sed -i -e 's:debug=false:debug=true:' scripts/trylink || die +} + +bbmake() { + local args=( + V=1 + CROSS_COMPILE="${CHOST}-" + AR="${AR}" + CC="${CC}" + HOSTCC="${BUILD_CC}" + HOSTCFLAGS="${BUILD_CFLAGS}" + PKG_CONFIG="${PKG_CONFIG}" + ) + emake "${args[@]}" "$@" +} + +src_configure() { + unset KBUILD_OUTPUT #88088 + export SKIP_STRIP=y + + tc-export AR CC BUILD_CC PKG_CONFIG + + tc-is-cross-compiler || BUILD_CFLAGS=${CFLAGS} + BUILD_CFLAGS+=" -D_FILE_OFFSET_BITS=64" #930513 + + append-flags -fno-strict-aliasing #310413 + use ppc64 && append-flags -mminimal-toc #130943 + + # check for a busybox config before making one of our own. + # if one exist lets return and use it. + restore_config .config + if [ -f .config ]; then + yes "" | bbmake -j1 oldconfig + return 0 + else + ewarn "Could not locate user configfile, so we will save a default one" + fi + + # setting SKIP_SELINUX skips searching for selinux at this stage. We don't + # need to search now in case we end up not needing it after all. + # setup the config file + bbmake -j1 allyesconfig SKIP_SELINUX=$(usex selinux n y) # bug #620918 + # nommu forces a bunch of things off which we want on bug #387555 + busybox_config_option n NOMMU + sed -i '/^#/d' .config + yes "" | bbmake -j1 oldconfig SKIP_SELINUX=$(usex selinux n y) #620918 + + # now turn off stuff we really don't want + busybox_config_option n DMALLOC + busybox_config_option n FEATURE_2_4_MODULES #607548 + busybox_config_option n FEATURE_SUID_CONFIG + busybox_config_option n BUILD_AT_ONCE + busybox_config_option n BUILD_LIBBUSYBOX + busybox_config_option n FEATURE_CLEAN_UP + busybox_config_option n MONOTONIC_SYSCALL + busybox_config_option n USE_PORTABLE_CODE + busybox_config_option n WERROR + # CONFIG_MODPROBE_SMALL=y disables depmod.c and uses a smaller one that + # does not support -b. Setting this to no creates slightly larger and + # slightly more useful modutils + busybox_config_option n MODPROBE_SMALL # bug #472464 + # triming the BSS size may be dangerous + busybox_config_option n FEATURE_USE_BSS_TAIL + + # These cause trouble with musl. + if use elibc_musl; then + busybox_config_option n FEATURE_UTMP + busybox_config_option n EXTRA_COMPAT + busybox_config_option n FEATURE_VI_REGEX_SEARCH + fi + + # Disable standalone shell mode when using make-symlinks, else Busybox calls its + # applets by default without looking up in PATH. + # This also enables users to disable a builtin by deleting the corresponding symlink. + if use make-symlinks; then + busybox_config_option n FEATURE_PREFER_APPLETS + busybox_config_option n FEATURE_SH_STANDALONE + fi + + # If these are not set and we are using a busybox setup + # all calls to system() will fail. + busybox_config_option y ASH + busybox_config_option y SH_IS_ASH + busybox_config_option n HUSH + busybox_config_option n SH_IS_HUSH + + busybox_config_option '"/run"' PID_FILE_PATH + busybox_config_option '"/run/ifstate"' IFUPDOWN_IFSTATE_PATH + + busybox_config_option pam PAM + busybox_config_option static STATIC + busybox_config_option syslog {K,SYS}LOGD LOGGER + busybox_config_option systemd FEATURE_SYSTEMD + busybox_config_option math FEATURE_AWK_LIBM + + # all the debug options are compiler related, so punt them + busybox_config_option n DEBUG_SANITIZE + busybox_config_option n DEBUG + busybox_config_option y NO_DEBUG_LIB + busybox_config_option n DMALLOC + busybox_config_option n EFENCE + busybox_config_option $(usex debug y n) TFTP_DEBUG + + busybox_config_option selinux SELINUX + + # this opt only controls mounting with <linux-2.6.23 + busybox_config_option n FEATURE_MOUNT_NFS + + # glibc-2.26 and later does not ship RPC implientation + busybox_config_option n FEATURE_HAVE_RPC + busybox_config_option n FEATURE_INETD_RPC + + # default a bunch of uncommon options to off + local opt + for opt in \ + ADD_SHELL \ + BEEP BOOTCHARTD \ + CRONTAB \ + DC DEVFSD DNSD DPKG{,_DEB} \ + FAKEIDENTD FBSPLASH FOLD FSCK_MINIX FTP{GET,PUT} \ + FEATURE_DEVFS \ + HOSTID HUSH \ + INETD INOTIFYD IPCALC \ + LOCALE_SUPPORT LOGNAME LPD \ + MAKEMIME MKFS_MINIX MSH \ + OD \ + RDEV READPROFILE REFORMIME REMOVE_SHELL RFKILL RUN_PARTS RUNSV{,DIR} \ + SLATTACH SMEMCAP SULOGIN SV{,LOGD} \ + TASKSET TCPSVD \ + RPM RPM2CPIO \ + UDPSVD UUDECODE UUENCODE + do + busybox_config_option n ${opt} + done + + bbmake -j1 oldconfig +} + +src_compile() { + bbmake busybox + + # bug #701512 + bbmake doc +} + +src_install() { + unset KBUILD_OUTPUT # bug #88088 + save_config .config + + into / + dodir /bin + if use sep-usr ; then + # install /ginit to take care of mounting stuff + exeinto / + newexe busybox_unstripped ginit + dosym /ginit /bin/bb + dosym bb /bin/busybox + else + newbin busybox_unstripped busybox + dosym busybox /bin/bb + fi + if use mdev ; then + dodir /$(get_libdir)/mdev/ + use make-symlinks || dosym /bin/bb /sbin/mdev + cp "${S}"/examples/mdev_fat.conf "${ED}"/etc/mdev.conf || die + if [[ ! "$(get_libdir)" == "lib" ]]; then + # bug #831251 - replace lib with lib64 where appropriate + sed -i -e "s:/lib/:/$(get_libdir)/:g" "${ED}"/etc/mdev.conf || die + fi + + exeinto /$(get_libdir)/mdev/ + doexe "${FILESDIR}"/mdev/* + + newinitd "${FILESDIR}"/mdev.initd mdev + fi + if use livecd ; then + dosym busybox /bin/vi + fi + + # add busybox daemon's, bug #444718 + if busybox_config_enabled FEATURE_NTPD_SERVER; then + newconfd "${FILESDIR}"/ntpd.confd busybox-ntpd + newinitd "${FILESDIR}"/ntpd.initd busybox-ntpd + fi + if busybox_config_enabled SYSLOGD; then + newconfd "${FILESDIR}"/syslogd.confd busybox-syslogd + newinitd "${FILESDIR}"/syslogd.initd busybox-syslogd + fi + if busybox_config_enabled KLOGD; then + newconfd "${FILESDIR}"/klogd.confd busybox-klogd + newinitd "${FILESDIR}"/klogd.initd busybox-klogd + fi + if busybox_config_enabled WATCHDOG; then + newconfd "${FILESDIR}"/watchdog.confd busybox-watchdog + newinitd "${FILESDIR}"/watchdog.initd busybox-watchdog + fi + if busybox_config_enabled UDHCPC; then + sed -i 's:$((metric++)):$metric; metric=$((metric + 1)):' examples/udhcp/simple.script || die #801535 + local path=$(busybox_config_enabled UDHCPC_DEFAULT_SCRIPT) + exeinto "${path%/*}" + newexe examples/udhcp/simple.script "${path##*/}" + fi + if busybox_config_enabled UDHCPD; then + insinto /etc + doins examples/udhcp/udhcpd.conf + fi + if busybox_config_enabled ASH && ! use make-symlinks; then + dosym -r /bin/busybox /bin/ash + fi + if busybox_config_enabled CROND; then + newconfd "${FILESDIR}"/crond.confd busybox-crond + newinitd "${FILESDIR}"/crond.initd busybox-crond + fi + + # bundle up the symlink files for use later + bbmake DESTDIR="${ED}" install + # for compatibility, provide /usr/bin/env + mkdir -p _install/usr/bin || die + if [[ ! -e _install/usr/bin/env ]]; then + ln -s /bin/env _install/usr/bin/env || die + fi + rm _install/bin/busybox || die + tar cf busybox-links.tar -C _install . || : #;die + insinto /usr/share/${PN} + use make-symlinks && doins busybox-links.tar + + dodoc AUTHORS README TODO + + cd docs || die + doman busybox.1 + docinto txt + dodoc *.txt + docinto pod + dodoc *.pod + docinto html + dodoc *.html + + cd ../examples || die + docinto examples + dodoc inittab depmod.pl *.conf *.script undeb unrpm + + cd ../networking || die + dodoc httpd_indexcgi.c httpd_post_upload.cgi + + readme.gentoo_create_doc +} + +pkg_preinst() { + if use make-symlinks ; then + mv "${ED}"/usr/share/${PN}/busybox-links.tar "${T}"/ || die + rmdir "${ED}"/usr/share/${PN} || die + fi +} + +pkg_postinst() { + savedconfig_pkg_postinst + + if use make-symlinks ; then + cd "${T}" || die + mkdir -p _install || die + tar xf busybox-links.tar -C _install || die + # Use --update=none from coreutils-9.2 instead of -n, add || die + # Skip legacy linuxrc link, if anyone really needs it they can create it manually + cp -vpP --update=none _install/bin/* "${ROOT}"/bin/ || die + cp -vpP --update=none _install/sbin/* "${ROOT}"/sbin/ || die + cp -vpP --update=none _install/usr/bin/* "${ROOT}"/usr/bin/ || die + fi + + if use sep-usr ; then + elog "In order to use the sep-usr support, you have to update your" + elog "kernel command line. Add the option:" + elog " init=/ginit" + elog "To launch a different init than /sbin/init, use:" + elog " init=/ginit /sbin/yourinit" + elog "To get a rescue shell, you may boot with:" + elog " init=/ginit bb" + fi + + if [[ ${MERGE_TYPE} != binary ]] && ! is-flagq -Oz; then + if ver_replacing -le 1.36.1; then + FORCE_PRINT_ELOG=yes + fi + + readme.gentoo_print_elog + fi +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/busybox/files/busybox-1.37.0-sha-ni-fix.patch b/sdk_container/src/third_party/portage-stable/sys-apps/busybox/files/busybox-1.37.0-sha-ni-fix.patch new file mode 100644 index 00000000000..c06bf099f1d --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/busybox/files/busybox-1.37.0-sha-ni-fix.patch @@ -0,0 +1,29 @@ +https://lists.busybox.net/pipermail/busybox/2024-September/090899.html +[PATCH] libbb/sha: add missing sha-NI guard +Andre Przywara andre.przywara at arm.com +Tue Sep 10 13:32:46 UTC 2024 + + Previous message (by thread): Bug report: menuconfig cannot compile with gcc 14 + Next message (by thread): cp does not appear to respect file permissions + Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] + +The ENABLE_SHA1_HWACCEL Kconfig symbol is meant to be archicture +agnostic, so can be enabled regardless of whether your build +architecture provides hardware acceleration or not. At the moment only +x86 implements this, so every piece of optimised code should be guarded +by both ENABLE_SHA1_HWACCEL and (__x86_64__ || __i386__). This is missing +at one place, so compiling for arm64 breaks when ENABLE_SHA1_HWACCEL is +enabled. + +--- a/libbb/hash_md5_sha.c ++++ b/libbb/hash_md5_sha.c +@@ -1313,7 +1313,9 @@ unsigned FAST_FUNC sha1_end(sha1_ctx_t *ctx, void *resbuf) + hash_size = 8; + if (ctx->process_block == sha1_process_block64 + #if ENABLE_SHA1_HWACCEL ++# if defined(__GNUC__) && defined(__x86_64__) + || ctx->process_block == sha1_process_block64_shaNI ++# endif + #endif + ) { + hash_size = 5; diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/busybox/files/busybox-1.37.0-skip-dynamic-relocations.patch b/sdk_container/src/third_party/portage-stable/sys-apps/busybox/files/busybox-1.37.0-skip-dynamic-relocations.patch new file mode 100644 index 00000000000..8c63603165f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/busybox/files/busybox-1.37.0-skip-dynamic-relocations.patch @@ -0,0 +1,43 @@ +https://git.alpinelinux.org/aports/plain/main/busybox/0025-Hackfix-to-disable-HW-acceleration-for-MD5-SHA1-on-x.patch +https://bugs.gentoo.org/933771 + +From 3ead51e53687e94a51beb793661363df27b00814 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net> +Date: Thu, 5 Jan 2023 15:47:55 +0100 +Subject: [PATCH] Hackfix to disable HW acceleration for MD5/SHA1 on x86 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This causes a direct segfault with musl libc. + +See: http://lists.busybox.net/pipermail/busybox/2023-January/090078.html +--- a/libbb/hash_md5_sha.c ++++ b/libbb/hash_md5_sha.c +@@ -17,7 +17,7 @@ + #define NEED_SHA512 (ENABLE_SHA512SUM || ENABLE_USE_BB_CRYPT_SHA) + + #if ENABLE_SHA1_HWACCEL || ENABLE_SHA256_HWACCEL +-# if defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__)) ++# if defined(__GNUC__) && defined(__x86_64__) + static void cpuid_eax_ebx_ecx(unsigned *eax, unsigned *ebx, unsigned *ecx, unsigned *edx) + { + asm ("cpuid" +@@ -1173,7 +1173,7 @@ void FAST_FUNC sha1_begin(sha1_ctx_t *ctx) + ctx->total64 = 0; + ctx->process_block = sha1_process_block64; + #if ENABLE_SHA1_HWACCEL +-# if defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__)) ++# if defined(__GNUC__) && defined(__x86_64__) + { + if (!shaNI) { + unsigned eax = 7, ebx = ebx, ecx = 0, edx = edx; +@@ -1227,7 +1227,7 @@ void FAST_FUNC sha256_begin(sha256_ctx_t *ctx) + /*ctx->total64 = 0; - done by prepending two 32-bit zeros to init256 */ + ctx->process_block = sha256_process_block64; + #if ENABLE_SHA256_HWACCEL +-# if defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__)) ++# if defined(__GNUC__) && defined(__x86_64__) + { + if (!shaNI) { + unsigned eax = 7, ebx = ebx, ecx = 0, edx = edx; From 7a941ba9a6b89cd5406c3da54dca0f742ec26e15 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:01 +0000 Subject: [PATCH 187/291] sys-apps/coreutils: Sync with Gentoo It's from Gentoo commit de7f1809fc0ac668b6282d144bf5c8074a372f25. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-apps/coreutils/Manifest | 2 + .../sys-apps/coreutils/coreutils-9.10.ebuild | 308 +++++++++++++++++ .../coreutils/coreutils-9.9-r11.ebuild | 4 +- .../coreutils/coreutils-9.9-r12.ebuild | 313 ++++++++++++++++++ .../files/coreutils-9.10-dash-tests.patch | 12 + .../files/coreutils-9.9-glibc-2.43-c23.patch | 170 ++++++++++ 6 files changed, 807 insertions(+), 2 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9.10.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9.9-r12.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-9.10-dash-tests.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-9.9-glibc-2.43-c23.patch diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/Manifest index 2bc23d4f786..d65ec1a083f 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/Manifest @@ -1,3 +1,5 @@ +DIST coreutils-9.10.tar.xz 6507600 BLAKE2B 7f9f93afc996dea7b6ab412703b1706f40616ae4fee1eea9e5cad0f1e8e95b03df9570084a2703fa4b5bb1cb2eaf8bbe55368c0c7ff58af985b30d09227f9309 SHA512 976ccfb8b906273a687ec330938a25ab72fb130988ca2fcad4fb6e12f4b621eb76b6e9ee091ad060361e95a8da26835b2484fffd3b5f9c7cdb100c1eb7b7d676 +DIST coreutils-9.10.tar.xz.sig 833 BLAKE2B 37d4a26a7b211feb773f1abb939a4ab742a6da6cecdbd723eca6f29362f90183fd02175e26c8409232166a395c8bd4bcb12a2709b062ac5ab82f36c6e219189b SHA512 83ec7f4a313ed425bf362bf3512042f9562df20daa03465090025a54e85f98c301b7be770340b08193bdf78b413a3bd87b218b71234443e756472205ce840c67 DIST coreutils-9.6-patches.tar.xz 5904 BLAKE2B 1abe214914007804362b9d7c1a7c39f07d74c51857e84484179f11bb8fa512356ee97c811ef62469aaa52db5cc90f2f7587c2dc57ed130ebbfdacc59755dcb90 SHA512 5a609b21da7c78e41184e5d7bca87da4f868975635b6e8aa4bd8f4d18c98a2fabd5b7e8ad6bf7780ca77f6d532bfa5cb1ed618e4bc32617ba2977d4b8a885b9f DIST coreutils-9.7.tar.xz 6158960 BLAKE2B e5e5f7ec26c3952eb6a25988f78d3a1f8a70cf97a2fbc7b433dfcd1721cd38e6e0a8b9cb83f854a22df325bcb5ea8c4534c5a217273762cd5d575b381db69ee8 SHA512 fe81e6ba4fb492095153d5baac1eca8f07ece0957849de746a2a858cf007893cc2ded595a31a5e5d43d13216cc44b9d74a3245d9f23221ecc8cd00f428f27414 DIST coreutils-9.7.tar.xz.sig 833 BLAKE2B 18dee5a1b5dc1811b277748fe6ee079dc6320bc6d67e01f108415c6afe21ad0367ece46f8c6dfb0976b1e5f62ae15c2d61fba916ea232c71a1b2f66c81b983bf SHA512 48d86a19cee3c153f01f7478847f4621685c02e59942540bb20b30e314df05230817b87d0e73acd953e79fab35718e5bea57f25fe511a2c275a85ced4b317bae diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9.10.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9.10.ebuild new file mode 100644 index 00000000000..7dd465fef3e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9.10.ebuild @@ -0,0 +1,308 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Try to keep an eye on Fedora's packaging: https://src.fedoraproject.org/rpms/coreutils +# The upstream coreutils maintainers also maintain the package in Fedora and may +# backport fixes which we want to pick up. +# +# Also recommend subscribing to the coreutils and bug-coreutils MLs. + +PYTHON_COMPAT=( python3_{11..13} ) +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/coreutils.asc +inherit branding flag-o-matic python-any-r1 toolchain-funcs verify-sig + +MY_PATCH="${PN}-9.6-patches" +DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)" +HOMEPAGE="https://www.gnu.org/software/coreutils/" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/coreutils.git" + inherit git-r3 +elif [[ ${PV} == *_p* ]] ; then + # Note: could put this in devspace, but if it's gone, we don't want + # it in tree anyway. It's just for testing. + MY_SNAPSHOT="$(ver_cut 1-2).327-71a8c" + SRC_URI="https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz -> ${P}.tar.xz" + SRC_URI+=" verify-sig? ( https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz.sig -> ${P}.tar.xz.sig )" + S="${WORKDIR}"/${PN}-${MY_SNAPSHOT} +else + SRC_URI=" + mirror://gnu/${PN}/${P}.tar.xz + verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig ) + " + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +SRC_URI+=" !vanilla? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_PATCH}.tar.xz )" + +LICENSE="GPL-3+" +SLOT="0" +IUSE="acl caps gmp hostname kill multicall nls +openssl selinux +split-usr static test test-full vanilla xattr" +RESTRICT="!test? ( test )" + +LIB_DEPEND=" + acl? ( sys-apps/acl[static-libs] ) + caps? ( sys-libs/libcap ) + gmp? ( dev-libs/gmp:=[static-libs] ) + openssl? ( dev-libs/openssl:=[static-libs] ) + xattr? ( sys-apps/attr[static-libs] ) +" +RDEPEND=" + !static? ( ${LIB_DEPEND//\[static-libs]} ) + selinux? ( sys-libs/libselinux ) + nls? ( virtual/libintl ) +" +DEPEND=" + ${RDEPEND} + static? ( ${LIB_DEPEND} ) +" +BDEPEND=" + app-arch/xz-utils + dev-lang/perl + test? ( + dev-debug/strace + dev-lang/perl + dev-perl/Expect + ${PYTHON_DEPS} + ) + verify-sig? ( sec-keys/openpgp-keys-coreutils ) +" +RDEPEND+=" + hostname? ( !sys-apps/net-tools[hostname] ) + kill? ( + !sys-apps/util-linux[kill] + !sys-process/procps[kill] + ) + !<sys-apps/util-linux-2.13 + !<sys-apps/sandbox-2.10-r4 + !sys-apps/stat + !net-mail/base64 + !sys-apps/mktemp + !<app-forensics/tct-1.18-r1 + !<net-fs/netatalk-2.0.3-r4 + !<sys-apps/shadow-4.19.0_rc1 +" + +QA_CONFIG_IMPL_DECL_SKIP=( + # gnulib FPs (bug #898370) + unreachable MIN alignof static_assert +) + +pkg_setup() { + if use test ; then + python-any-r1_pkg_setup + fi +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + + cd "${S}" || die + ./bootstrap || die + + sed -i -e "s:submodule-checks ?= no-submodule-changes public-submodule-commit:submodule-checks ?= no-submodule-changes:" gnulib/top/maint.mk || die + elif use verify-sig ; then + # Needed for downloaded patch (which is unsigned, which is fine) + verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.sig} + fi + + default +} + +src_prepare() { + # TODO: past 2025, we may need to add our own hack for bug #907474. + local PATCHES=( + "${FILESDIR}"/${PN}-9.5-skip-readutmp-test.patch + # Upstream patches + "${FILESDIR}"/${PN}-9.10-dash-tests.patch + ) + + if ! use vanilla && [[ -d "${WORKDIR}"/${MY_PATCH} ]] ; then + PATCHES+=( "${WORKDIR}"/${MY_PATCH} ) + fi + + default + + # Since we've patched many .c files, the make process will try to + # re-build the manpages by running `./bin --help`. When doing a + # cross-compile, we can't do that since 'bin' isn't a native bin. + # + # Also, it's not like we changed the usage on any of these things, + # so let's just update the timestamps and skip the help2man step. + set -- man/*.x + touch ${@/%x/1} || die + + # Avoid perl dep for compiled in dircolors default (bug #348642) + if ! has_version dev-lang/perl ; then + touch src/dircolors.h || die + touch ${@/%x/1} || die + fi +} + +src_configure() { + # Running Valgrind in an ebuild is too unreliable. Skip such tests. + cat <<-EOF >> init.cfg || die + require_valgrind_() + { + skip_ "requires a working valgrind" + } + EOF + + # TODO: in future (>9.4?), we may want to wire up USE=systemd: + # still experimental at the moment, but: + # https://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=85edb4afbd119fb69a0d53e1beb71f46c9525dd0 + local myconf=( + --with-packager-version="${PVR} (p${PATCH_VER:-0})" + # kill/uptime - procps + # hostname - net-tools + --enable-install-program="arch,$(usev hostname),$(usev kill)" + --enable-no-install-program="$(usev !hostname),$(usev !kill),su,uptime" + $(usev !caps --disable-libcap) + $(use_enable nls) + $(use_enable acl) + $(use_enable multicall single-binary) + $(use_enable xattr) + $(use_with gmp libgmp) + $(use_with openssl) + $(use_with selinux) + ) + + if use gmp ; then + myconf+=( --with-libgmp-prefix="${ESYSROOT}"/usr ) + fi + + if tc-is-cross-compiler && [[ ${CHOST} == *linux* ]] ; then + # bug #311569 + export fu_cv_sys_stat_statfs2_bsize=yes + # bug #416629 + export gl_cv_func_realpath_works=yes + fi + + # bug #409919 + export gl_cv_func_mknod_works=yes + + if use static ; then + append-ldflags -static + # bug #321821 + sed -i '/elf_sys=yes/s:yes:no:' configure || die + fi + + # TODO: Drop CONFIG_SHELL for bash after 9.10 + # https://cgit.git.savannah.gnu.org/cgit/coreutils.git/commit/?id=a72ad1216d8cf96be542e2e7a4dd1d6151d6087b + CONFIG_SHELL="${BROOT}"/bin/bash econf "${myconf[@]}" +} + +src_test() { + # Non-root tests will fail if the full path isn't + # accessible to non-root users + chmod -R go-w "${WORKDIR}" || die + chmod a+rx "${WORKDIR}" || die + + # coreutils tests like to do `mount` and such with temp dirs, + # so make sure: + # - /etc/mtab is writable (bug #265725) + # - /dev/loop* can be mounted (bug #269758) + mkdir -p "${T}"/mount-wrappers || die + mkwrap() { + local w ww + for w in "${@}" ; do + ww="${T}/mount-wrappers/${w}" + cat <<-EOF > "${ww}" + #!${EPREFIX}/bin/sh + exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P ${w}) "\$@" + EOF + chmod a+rx "${ww}" || die + done + } + mkwrap mount umount + + addwrite /dev/full + + local -x RUN_{VERY_,}EXPENSIVE_TESTS=$(usex test-full yes no) + #local -x COREUTILS_GROUPS="portage wheel" + local -x PATH="${T}/mount-wrappers:${PATH}" + local -x gl_public_submodule_commit= + + local xfail_tests=() + + if [[ -n ${SANDBOX_ACTIVE} ]]; then + xfail_tests+=( + # bug #629660 + # Commented out again in 9.6 as it XPASSes on linux-6.12.10 + # with sandbox-2.43 on tmpfs. Let's see if it lasts.. + #tests/dd/no-allocate.sh + + # bug #675802 + tests/env/env-S + tests/env/env-S.pl + + # We have a patch which fixes this (bug #259876) + #tests/touch/not-owner + #tests/touch/not-owner.sh + ) + fi + + # This test is flaky (bug #910640). + cat > tests/tty/tty-eof.pl <<-EOF || die + #!/usr/bin/perl + exit 77; + EOF + + # We set DISABLE_HARD_ERRORS because some of the tests hard error-out + # because of sandbox. They're skipped above but DISABLE_HARD_ERRORS is needed + # to downgrade them to FAIL. + emake -k check \ + VERBOSE=yes \ + DISABLE_HARD_ERRORS=yes \ + XFAIL_TESTS="${xfail_tests[*]}" +} + +src_install() { + default + + insinto /etc + newins src/dircolors.hin DIR_COLORS + + if use split-usr ; then + cd "${ED}"/usr/bin || die + dodir /bin + + # Move critical binaries into /bin (required by FHS) + local fhs="cat chgrp chmod chown cp date dd df echo false ln ls + mkdir mknod mv pwd rm rmdir stty sync true uname" + mv ${fhs} ../../bin/ || die "Could not move FHS bins!" + + if use hostname ; then + mv hostname ../../bin/ || die + fi + + if use kill ; then + mv kill ../../bin/ || die + fi + + # Move critical binaries into /bin (common scripts) + # (Why are these required for booting?) + local com="basename chroot cut dir dirname du env expr head mkfifo + mktemp readlink seq sleep sort tail touch tr tty vdir wc yes" + mv ${com} ../../bin/ || die "Could not move common bins!" + + # Create a symlink for uname in /usr/bin/ since autotools require it. + # (Other than uname, we need to figure out why we are + # creating symlinks for these in /usr/bin instead of leaving + # the files there in the first place...) + local x + for x in ${com} uname ; do + dosym ../../bin/${x} /usr/bin/${x} + done + fi +} + +pkg_postinst() { + ewarn "Make sure you run 'hash -r' in your active shells." + ewarn "You should also re-source your shell settings for LS_COLORS" + ewarn " changes, such as: source /etc/profile" +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9.9-r11.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9.9-r11.ebuild index 7cd6e5cab97..010153b2aec 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9.9-r11.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9.9-r11.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -33,7 +33,7 @@ else verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig ) " - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" fi SRC_URI+=" !vanilla? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_PATCH}.tar.xz )" diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9.9-r12.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9.9-r12.ebuild new file mode 100644 index 00000000000..f6694e13a4b --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9.9-r12.ebuild @@ -0,0 +1,313 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Try to keep an eye on Fedora's packaging: https://src.fedoraproject.org/rpms/coreutils +# The upstream coreutils maintainers also maintain the package in Fedora and may +# backport fixes which we want to pick up. +# +# Also recommend subscribing to the coreutils and bug-coreutils MLs. + +PYTHON_COMPAT=( python3_{11..13} ) +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/coreutils.asc +inherit flag-o-matic python-any-r1 toolchain-funcs verify-sig + +MY_PATCH="${PN}-9.6-patches" +DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)" +HOMEPAGE="https://www.gnu.org/software/coreutils/" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/coreutils.git" + inherit git-r3 +elif [[ ${PV} == *_p* ]] ; then + # Note: could put this in devspace, but if it's gone, we don't want + # it in tree anyway. It's just for testing. + MY_SNAPSHOT="$(ver_cut 1-2).327-71a8c" + SRC_URI="https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz -> ${P}.tar.xz" + SRC_URI+=" verify-sig? ( https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz.sig -> ${P}.tar.xz.sig )" + S="${WORKDIR}"/${PN}-${MY_SNAPSHOT} +else + SRC_URI=" + mirror://gnu/${PN}/${P}.tar.xz + verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig ) + " + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +SRC_URI+=" !vanilla? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_PATCH}.tar.xz )" + +LICENSE="GPL-3+" +SLOT="0" +IUSE="acl caps gmp hostname kill multicall nls +openssl selinux +split-usr static test test-full vanilla xattr" +RESTRICT="!test? ( test )" + +LIB_DEPEND=" + acl? ( sys-apps/acl[static-libs] ) + caps? ( sys-libs/libcap ) + gmp? ( dev-libs/gmp:=[static-libs] ) + openssl? ( dev-libs/openssl:=[static-libs] ) + xattr? ( sys-apps/attr[static-libs] ) +" +RDEPEND=" + !static? ( ${LIB_DEPEND//\[static-libs]} ) + selinux? ( sys-libs/libselinux ) + nls? ( virtual/libintl ) +" +DEPEND=" + ${RDEPEND} + static? ( ${LIB_DEPEND} ) +" +BDEPEND=" + app-arch/xz-utils + dev-lang/perl + test? ( + dev-debug/strace + dev-lang/perl + dev-perl/Expect + ${PYTHON_DEPS} + ) + verify-sig? ( sec-keys/openpgp-keys-coreutils ) +" +RDEPEND+=" + hostname? ( !sys-apps/net-tools[hostname] ) + kill? ( + !sys-apps/util-linux[kill] + !sys-process/procps[kill] + ) + !<sys-apps/util-linux-2.13 + !<sys-apps/sandbox-2.10-r4 + !sys-apps/stat + !net-mail/base64 + !sys-apps/mktemp + !<app-forensics/tct-1.18-r1 + !<net-fs/netatalk-2.0.3-r4 + !<sys-apps/shadow-4.19.0_rc1 +" + +QA_CONFIG_IMPL_DECL_SKIP=( + # gnulib FPs (bug #898370) + unreachable MIN alignof static_assert +) + +pkg_setup() { + if use test ; then + python-any-r1_pkg_setup + fi +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + + cd "${S}" || die + ./bootstrap || die + + sed -i -e "s:submodule-checks ?= no-submodule-changes public-submodule-commit:submodule-checks ?= no-submodule-changes:" gnulib/top/maint.mk || die + elif use verify-sig ; then + # Needed for downloaded patch (which is unsigned, which is fine) + verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.sig} + fi + + default +} + +src_prepare() { + # TODO: past 2025, we may need to add our own hack for bug #907474. + local PATCHES=( + "${FILESDIR}"/${PN}-9.5-skip-readutmp-test.patch + # Upstream patches + "${FILESDIR}"/${PN}-9.9-cp-SEEK_HOLE-loop.patch + "${FILESDIR}"/${PN}-9.9-glibc-2.43-c23.patch + ) + + if ! use vanilla && [[ -d "${WORKDIR}"/${MY_PATCH} ]] ; then + PATCHES+=( "${WORKDIR}"/${MY_PATCH} ) + fi + + default + + # Since we've patched many .c files, the make process will try to + # re-build the manpages by running `./bin --help`. When doing a + # cross-compile, we can't do that since 'bin' isn't a native bin. + # + # Also, it's not like we changed the usage on any of these things, + # so let's just update the timestamps and skip the help2man step. + set -- man/*.x + touch ${@/%x/1} || die + + # Avoid perl dep for compiled in dircolors default (bug #348642) + if ! has_version dev-lang/perl ; then + touch src/dircolors.h || die + touch ${@/%x/1} || die + fi +} + +src_configure() { + # Running Valgrind in an ebuild is too unreliable. Skip such tests. + cat <<-EOF >> init.cfg || die + require_valgrind_() + { + skip_ "requires a working valgrind" + } + EOF + + # TODO: in future (>9.4?), we may want to wire up USE=systemd: + # still experimental at the moment, but: + # https://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=85edb4afbd119fb69a0d53e1beb71f46c9525dd0 + local myconf=( + --with-packager="Gentoo" + --with-packager-version="${PVR} (p${PATCH_VER:-0})" + --with-packager-bug-reports="https://bugs.gentoo.org/" + # kill/uptime - procps + # hostname - net-tools + --enable-install-program="arch,$(usev hostname),$(usev kill)" + --enable-no-install-program="$(usev !hostname),$(usev !kill),su,uptime" + $(usev !caps --disable-libcap) + $(use_enable nls) + $(use_enable acl) + $(use_enable multicall single-binary) + $(use_enable xattr) + $(use_with gmp libgmp) + $(use_with openssl) + ) + + if use gmp ; then + myconf+=( --with-libgmp-prefix="${ESYSROOT}"/usr ) + fi + + if tc-is-cross-compiler && [[ ${CHOST} == *linux* ]] ; then + # bug #311569 + export fu_cv_sys_stat_statfs2_bsize=yes + # bug #416629 + export gl_cv_func_realpath_works=yes + fi + + # bug #409919 + export gl_cv_func_mknod_works=yes + + if use static ; then + append-ldflags -static + # bug #321821 + sed -i '/elf_sys=yes/s:yes:no:' configure || die + fi + + if ! use selinux ; then + # bug #301782 + export ac_cv_{header_selinux_{context,flash,selinux}_h,search_setfilecon}=no + fi + + econf "${myconf[@]}" +} + +src_test() { + # Non-root tests will fail if the full path isn't + # accessible to non-root users + chmod -R go-w "${WORKDIR}" || die + chmod a+rx "${WORKDIR}" || die + + # coreutils tests like to do `mount` and such with temp dirs, + # so make sure: + # - /etc/mtab is writable (bug #265725) + # - /dev/loop* can be mounted (bug #269758) + mkdir -p "${T}"/mount-wrappers || die + mkwrap() { + local w ww + for w in "${@}" ; do + ww="${T}/mount-wrappers/${w}" + cat <<-EOF > "${ww}" + #!${EPREFIX}/bin/sh + exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P ${w}) "\$@" + EOF + chmod a+rx "${ww}" || die + done + } + mkwrap mount umount + + addwrite /dev/full + + local -x RUN_{VERY_,}EXPENSIVE_TESTS=$(usex test-full yes no) + #local -x COREUTILS_GROUPS="portage wheel" + local -x PATH="${T}/mount-wrappers:${PATH}" + local -x gl_public_submodule_commit= + + local xfail_tests=() + + if [[ -n ${SANDBOX_ACTIVE} ]]; then + xfail_tests+=( + # bug #629660 + # Commented out again in 9.6 as it XPASSes on linux-6.12.10 + # with sandbox-2.43 on tmpfs. Let's see if it lasts.. + #tests/dd/no-allocate.sh + + # bug #675802 + tests/env/env-S + tests/env/env-S.pl + + # We have a patch which fixes this (bug #259876) + #tests/touch/not-owner + #tests/touch/not-owner.sh + ) + fi + + # This test is flaky (bug #910640). + cat > tests/tty/tty-eof.pl <<-EOF || die + #!/usr/bin/perl + exit 77; + EOF + + # We set DISABLE_HARD_ERRORS because some of the tests hard error-out + # because of sandbox. They're skipped above but DISABLE_HARD_ERRORS is needed + # to downgrade them to FAIL. + emake -k check \ + VERBOSE=yes \ + DISABLE_HARD_ERRORS=yes \ + XFAIL_TESTS="${xfail_tests[*]}" +} + +src_install() { + default + + insinto /etc + newins src/dircolors.hin DIR_COLORS + + if use split-usr ; then + cd "${ED}"/usr/bin || die + dodir /bin + + # Move critical binaries into /bin (required by FHS) + local fhs="cat chgrp chmod chown cp date dd df echo false ln ls + mkdir mknod mv pwd rm rmdir stty sync true uname" + mv ${fhs} ../../bin/ || die "Could not move FHS bins!" + + if use hostname ; then + mv hostname ../../bin/ || die + fi + + if use kill ; then + mv kill ../../bin/ || die + fi + + # Move critical binaries into /bin (common scripts) + # (Why are these required for booting?) + local com="basename chroot cut dir dirname du env expr head mkfifo + mktemp readlink seq sleep sort tail touch tr tty vdir wc yes" + mv ${com} ../../bin/ || die "Could not move common bins!" + + # Create a symlink for uname in /usr/bin/ since autotools require it. + # (Other than uname, we need to figure out why we are + # creating symlinks for these in /usr/bin instead of leaving + # the files there in the first place...) + local x + for x in ${com} uname ; do + dosym ../../bin/${x} /usr/bin/${x} + done + fi +} + +pkg_postinst() { + ewarn "Make sure you run 'hash -r' in your active shells." + ewarn "You should also re-source your shell settings for LS_COLORS" + ewarn " changes, such as: source /etc/profile" +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-9.10-dash-tests.patch b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-9.10-dash-tests.patch new file mode 100644 index 00000000000..1d29882d9b7 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-9.10-dash-tests.patch @@ -0,0 +1,12 @@ +https://bugs.gentoo.org/969663 +https://bugs.gnu.org/80353 +--- a/tests/misc/read-errors.sh ++++ b/tests/misc/read-errors.sh +@@ -17,6 +17,7 @@ + # along with this program. If not, see <https://www.gnu.org/licenses/>. + + . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src ++require_bash_as_SHELL_ + uses_strace_ + + ! cat . >/dev/null 2>&1 || skip_ "Need unreadable directories" diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-9.9-glibc-2.43-c23.patch b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-9.9-glibc-2.43-c23.patch new file mode 100644 index 00000000000..277597ba06f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-9.9-glibc-2.43-c23.patch @@ -0,0 +1,170 @@ +https://bugs.gentoo.org/969219 + +From 891761bca1aa78336e5b18c121075b6e4696c5d4 Mon Sep 17 00:00:00 2001 +From: Paul Eggert <eggert@cs.ucla.edu> +Date: Sun, 23 Nov 2025 00:50:40 -0800 +Subject: [PATCH] Port to C23 qualifier-generic fns like strchr +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This ports Gnulib to strict C23 platforms that reject code +like ‘char *q = strchr (P, 'x');’ when P is a pointer to const, +because in C23 strchr is a qualifier-generic function so +strchr (P, 'x') returns char const *. +This patch does not attempt to do the following two things, +which might be useful in the future: +1. When compiling on non-C23 platforms, check user code for +portability to platforms that define qualifier-generic functions. +2. Port Gnulib to platforms that have qualifier-generic functions +not listed in the C23 standard, e.g., strchrnul. I don’t know +of any such platforms. +* lib/mbschr.c (mbschr): +* lib/memchr2.c (memchr2): +Port to C23, where functions like strchr are qualifier-generic. +* lib/c++defs.h (_GL_FUNCDECL_SYS_NAME): New macro. +* lib/c++defs.h (_GL_FUNCDECL_SYS): +* lib/stdlib.in.h (bsearch): +Use it, to prevent C23 names like strchr from acting like macros. +* lib/string.in.h (memchr, strchr, strpbrk, strrchr): +Do not #undef when GNULIB_POSIXCHECK is defined, as this could +cause conforming C23 code to fail to conform. It’s not clear why +_GL_WARN_ON_USE_CXX; perhaps it was needed but isn’t any more? +But for now, limit the removal of #undef to these four functions +where #undeffing is clearly undesirable in C23. +* lib/wchar.in.h (wmemchr): Parenthesize function name in decl, +to prevent it from acting like a macro. + +Cherry-picked-by: Lukáš Zaoral <lzaoral@redhat.com> +Upstream-commit: df17f4f37ed3ca373d23ad42eae51122bdb96626 +--- + lib/c++defs.h | 12 +++++++++++- + lib/mbschr.c | 2 +- + lib/memchr2.c | 2 +- + lib/stdlib.in.h | 6 +++--- + lib/string.in.h | 4 ---- + lib/wchar.in.h | 2 +- + 6 files changed, 17 insertions(+), 11 deletions(-) + +diff --git a/lib/c++defs.h b/lib/c++defs.h +index b77979a..7384457 100644 +--- a/lib/c++defs.h ++++ b/lib/c++defs.h +@@ -127,6 +127,16 @@ + #define _GL_FUNCDECL_RPL_1(rpl_func,rettype,parameters,...) \ + _GL_EXTERN_C_FUNC __VA_ARGS__ rettype rpl_func parameters + ++/* _GL_FUNCDECL_SYS_NAME (func) expands to plain func if C++, and to ++ parenthsized func otherwise. Parenthesization is needed in C23 if ++ the function is like strchr and so is a qualifier-generic macro ++ that expands to something more complicated. */ ++#ifdef __cplusplus ++# define _GL_FUNCDECL_SYS_NAME(func) func ++#else ++# define _GL_FUNCDECL_SYS_NAME(func) (func) ++#endif ++ + /* _GL_FUNCDECL_SYS (func, rettype, parameters, [attributes]); + declares the system function, named func, with the given prototype, + consisting of return type, parameters, and attributes. +@@ -139,7 +149,7 @@ + _GL_FUNCDECL_SYS (posix_openpt, int, (int flags), _GL_ATTRIBUTE_NODISCARD); + */ + #define _GL_FUNCDECL_SYS(func,rettype,parameters,...) \ +- _GL_EXTERN_C_FUNC __VA_ARGS__ rettype func parameters ++ _GL_EXTERN_C_FUNC __VA_ARGS__ rettype _GL_FUNCDECL_SYS_NAME (func) parameters + + /* _GL_CXXALIAS_RPL (func, rettype, parameters); + declares a C++ alias called GNULIB_NAMESPACE::func +diff --git a/lib/mbschr.c b/lib/mbschr.c +index c9e14b5..6582134 100644 +--- a/lib/mbschr.c ++++ b/lib/mbschr.c +@@ -65,5 +65,5 @@ mbschr (const char *string, int c) + return NULL; + } + else +- return strchr (string, c); ++ return (char *) strchr (string, c); + } +diff --git a/lib/memchr2.c b/lib/memchr2.c +index 7493823..d7724ae 100644 +--- a/lib/memchr2.c ++++ b/lib/memchr2.c +@@ -55,7 +55,7 @@ memchr2 (void const *s, int c1_in, int c2_in, size_t n) + c2 = (unsigned char) c2_in; + + if (c1 == c2) +- return memchr (s, c1, n); ++ return (void *) memchr (s, c1, n); + + /* Handle the first few bytes by reading one byte at a time. + Do this until VOID_PTR is aligned on a longword boundary. */ +diff --git a/lib/stdlib.in.h b/lib/stdlib.in.h +index bef0aaa..fd0e1e0 100644 +--- a/lib/stdlib.in.h ++++ b/lib/stdlib.in.h +@@ -224,9 +224,9 @@ _GL_INLINE_HEADER_BEGIN + + /* Declarations for ISO C N3322. */ + #if defined __GNUC__ && __GNUC__ >= 15 && !defined __clang__ +-_GL_EXTERN_C void *bsearch (const void *__key, +- const void *__base, size_t __nmemb, size_t __size, +- int (*__compare) (const void *, const void *)) ++_GL_EXTERN_C void *_GL_FUNCDECL_SYS_NAME (bsearch) ++ (const void *__key, const void *__base, size_t __nmemb, size_t __size, ++ int (*__compare) (const void *, const void *)) + _GL_ATTRIBUTE_NONNULL_IF_NONZERO (2, 3) _GL_ARG_NONNULL ((5)); + _GL_EXTERN_C void qsort (void *__base, size_t __nmemb, size_t __size, + int (*__compare) (const void *, const void *)) +diff --git a/lib/string.in.h b/lib/string.in.h +index fdcdd21..8b56acf 100644 +--- a/lib/string.in.h ++++ b/lib/string.in.h +@@ -409,7 +409,6 @@ _GL_CXXALIASWARN1 (memchr, void const *, + _GL_CXXALIASWARN (memchr); + # endif + #elif defined GNULIB_POSIXCHECK +-# undef memchr + /* Assume memchr is always declared. */ + _GL_WARN_ON_USE (memchr, "memchr has platform-specific bugs - " + "use gnulib module memchr for portability" ); +@@ -674,7 +673,6 @@ _GL_WARN_ON_USE (stpncpy, "stpncpy is unportable - " + #if defined GNULIB_POSIXCHECK + /* strchr() does not work with multibyte strings if the locale encoding is + GB18030 and the character to be searched is a digit. */ +-# undef strchr + /* Assume strchr is always declared. */ + _GL_WARN_ON_USE_CXX (strchr, + const char *, char *, (const char *, int), +@@ -981,7 +979,6 @@ _GL_CXXALIASWARN (strpbrk); + Even in this simple case, it does not work with multibyte strings if the + locale encoding is GB18030 and one of the characters to be searched is a + digit. */ +-# undef strpbrk + _GL_WARN_ON_USE_CXX (strpbrk, + const char *, char *, (const char *, const char *), + "strpbrk cannot work correctly on character strings " +@@ -1011,7 +1008,6 @@ _GL_WARN_ON_USE (strspn, "strspn cannot work correctly on character strings " + #if defined GNULIB_POSIXCHECK + /* strrchr() does not work with multibyte strings if the locale encoding is + GB18030 and the character to be searched is a digit. */ +-# undef strrchr + /* Assume strrchr is always declared. */ + _GL_WARN_ON_USE_CXX (strrchr, + const char *, char *, (const char *, int), +diff --git a/lib/wchar.in.h b/lib/wchar.in.h +index ab602a2..6be4515 100644 +--- a/lib/wchar.in.h ++++ b/lib/wchar.in.h +@@ -301,7 +301,7 @@ _GL_EXTERN_C int wcsncmp (const wchar_t *__s1, const wchar_t *__s2, size_t __n) + _GL_ATTRIBUTE_NONNULL_IF_NONZERO (1, 3) + _GL_ATTRIBUTE_NONNULL_IF_NONZERO (2, 3); + # ifndef __cplusplus +-_GL_EXTERN_C wchar_t *wmemchr (const wchar_t *__s, wchar_t __wc, size_t __n) ++_GL_EXTERN_C wchar_t *(wmemchr) (const wchar_t *__s, wchar_t __wc, size_t __n) + _GL_ATTRIBUTE_NONNULL_IF_NONZERO (1, 3); + # endif + _GL_EXTERN_C wchar_t *wmemset (wchar_t *__s, wchar_t __wc, size_t __n) +-- +2.52.0 From 32d483acbb38821d933d143d48141d69c825e90f Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:05 +0000 Subject: [PATCH 188/291] sys-apps/ethtool: Sync with Gentoo It's from Gentoo commit 4a576598c79af356bf319baf3395b96de8a9cd23. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-apps/ethtool/Manifest | 3 --- .../sys-apps/ethtool/ethtool-6.10.ebuild | 24 ------------------- .../sys-apps/ethtool/ethtool-6.11.ebuild | 24 ------------------- .../sys-apps/ethtool/ethtool-6.14.ebuild | 24 ------------------- 4 files changed, 75 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.10.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.11.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.14.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/Manifest index cbb8dd12e12..a8f064fcd13 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/Manifest @@ -1,4 +1 @@ -DIST ethtool-6.10.tar.xz 360300 BLAKE2B 530ec7fc00a6f88173d403ce0288cbdc7610997feb58bc05b88a87d8606827b8b8e4ce715099f5a6d90257b8e6463ddd259f06f4b0ce9206b2d4742795b86fb1 SHA512 1b6a0f5d2b89de57d1f003779557f2be786e26660ec430e80a966ad047f2fe1fe41bb573738b93454f32cf9089000ae879fc7feba0532bb559636a301ea61b10 -DIST ethtool-6.11.tar.xz 364148 BLAKE2B 589a7d7be3d251f72bd0a5b56cf33fbe94c95beff565194e784672984340321bec51f2d2383b03f8a8fe9161c4add381d210bd9a4ce58f048238d1413b194429 SHA512 77f649e1082a164e3627bcb21db1215a89d9a0e984f86516bb05879685aee76b034f6a9e19a499dcdd82883fa003f628b70d27ca8272064df27fe9de67c7a9a7 -DIST ethtool-6.14.tar.xz 371928 BLAKE2B a68649a7a404a632493cbca614b42fd27bab1d686040335899836c7e427272f7048d0c6fca506fbe8c003cad88667ca4c3d9def800f519f93175d4edd77c9488 SHA512 05688e41044a3f263f4367149f9d775bc378f0f421685f415b30062ca74fa62acc0d5ee5aa74b2104429b5f1712fc2f12e120af0d5744c775c84fe8e777938a3 DIST ethtool-6.15.tar.xz 444060 BLAKE2B 2a4a71c7ea6ac047d23fa9c8265a2dce8432f4417f6006f71dc91e365b9a841b5bfd44683e3179806f38285f199ed0cb84d1ca7a3f02979b8f4045274736f9eb SHA512 f140095e7c9e38d8b151796eed1301e9e6ab93e82d3e35b8a524b4f5be7b219e707bd270af7398195081085778c61948e15b39462a6a6f44aad6ffcaaddc3644 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.10.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.10.ebuild deleted file mode 100644 index 148b2406efd..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.10.ebuild +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DESCRIPTION="Utility for examining and tuning ethernet-based network interfaces" -HOMEPAGE="https://www.kernel.org/pub/software/network/ethtool/" -SRC_URI="https://www.kernel.org/pub/software/network/ethtool/${P}.tar.xz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" -IUSE="+netlink" - -RDEPEND="netlink? ( net-libs/libmnl )" -DEPEND="${RDEPEND}" -BDEPEND=" - app-arch/xz-utils - netlink? ( virtual/pkgconfig ) -" - -src_configure() { - econf $(use_enable netlink) -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.11.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.11.ebuild deleted file mode 100644 index 148b2406efd..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.11.ebuild +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DESCRIPTION="Utility for examining and tuning ethernet-based network interfaces" -HOMEPAGE="https://www.kernel.org/pub/software/network/ethtool/" -SRC_URI="https://www.kernel.org/pub/software/network/ethtool/${P}.tar.xz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" -IUSE="+netlink" - -RDEPEND="netlink? ( net-libs/libmnl )" -DEPEND="${RDEPEND}" -BDEPEND=" - app-arch/xz-utils - netlink? ( virtual/pkgconfig ) -" - -src_configure() { - econf $(use_enable netlink) -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.14.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.14.ebuild deleted file mode 100644 index 148b2406efd..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.14.ebuild +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DESCRIPTION="Utility for examining and tuning ethernet-based network interfaces" -HOMEPAGE="https://www.kernel.org/pub/software/network/ethtool/" -SRC_URI="https://www.kernel.org/pub/software/network/ethtool/${P}.tar.xz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" -IUSE="+netlink" - -RDEPEND="netlink? ( net-libs/libmnl )" -DEPEND="${RDEPEND}" -BDEPEND=" - app-arch/xz-utils - netlink? ( virtual/pkgconfig ) -" - -src_configure() { - econf $(use_enable netlink) -} From 45cdabef22d3de7468a80e4637fb928263629983 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:05 +0000 Subject: [PATCH 189/291] sys-apps/file: Sync with Gentoo It's from Gentoo commit b385f513fdd7fc944c020c2e499a2a9f8baff0ff. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-apps/file/Manifest | 4 +- .../sys-apps/file/file-5.45-r4.ebuild | 192 ------------------ .../{file-5.46-r2.ebuild => file-5.47.ebuild} | 6 +- .../files/file-5.45-32-bit-time_t-deux.patch | 29 --- .../file/files/file-5.45-32-bit-time_t.patch | 34 ---- .../files/file-5.45-weak-magic-shell.patch | 43 ---- 6 files changed, 4 insertions(+), 304 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.45-r4.ebuild rename sdk_container/src/third_party/portage-stable/sys-apps/file/{file-5.46-r2.ebuild => file-5.47.ebuild} (93%) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.45-32-bit-time_t-deux.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.45-32-bit-time_t.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.45-weak-magic-shell.patch diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/file/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/file/Manifest index f7d2cb41c4e..b857c849787 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/file/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/file/Manifest @@ -1,4 +1,4 @@ -DIST file-5.45.tar.gz 1246503 BLAKE2B 30fc77c091e6624f2e9a950f4c6fe69ea6aa46d4a8ad9f20d49320a3675617c5bfbc9ff1ebba5eeb2cf4435c38d71b47b8beeb5146c9f55fe3bac11fe65e89bd SHA512 12611a59ff766c22a55db4b4a9f80f95a0a2e916a1d8593612c6ead32c247102a8fdc23693c6bf81bda9b604d951a62c0051e91580b1b79e190a3504c0efc20a -DIST file-5.45.tar.gz.asc 163 BLAKE2B 1405080c63412e9c66bfe06086ecee28b276b77cc2ddacb20cfd370c539a0d983812fd29dcf7a33bad69d6490cd439ef8d1219bfaf3928fb835a38da85013af3 SHA512 56bf131b2f35e896788be19b4d8cd1c7ec942c794fb584d5e589375d22fbccebdd04c03e779fafc0c10840586dc41e64251b3de1767ae9ab95f5d3300f9af254 DIST file-5.46.tar.gz 1312892 BLAKE2B 2b1df136f01c253cc490b483c644403da0674692ef97ef9e1239878328cfb8ce2bc418c14626145719c69acab00d56b63b5340a2b56c276c996b1e6ad1bfe9b6 SHA512 a6cb7325c49fd4af159b7555bdd38149e48a5097207acbe5e36deb5b7493ad6ea94d703da6e0edece5bb32959581741f4213707e5cb0528cd46d75a97a5242dc DIST file-5.46.tar.gz.asc 195 BLAKE2B 7a2a65f10cbfe921ae633a9bee3a56a98b8e3100b8cbfe4b4871ce3960f28e62bb9e7425f5c1bfe9b126f43d7dd4ddcb36220f07f979072a8ef5fe62c14b5ef8 SHA512 93f99b468bbda29eab6e37fdee1f1806a10b18206a85c68e888e967678cfd128bb9c34bc9835a699e447623ddf0e2ea041039a682f7be1db2ab37935fd4aafa0 +DIST file-5.47.tar.gz 2676776 BLAKE2B 52b91ee7868a9b75431e00fca7f7db1362b3d39eb065f52434ea73d9ccd7497f3371f7e0a455644c56df3e6acee247208edc47bf8004fa922dba32786cc3e10c SHA512 a19c1f2b584bcfa70d4a02545667a90ff9e069523a5fc7b84d79b2b32cb7e59b73c555943784a13d56fa6d4618e18a254fd6102187def1a4a7d936b41ae7ce31 +DIST file-5.47.tar.gz.asc 163 BLAKE2B 32e6a0dab4e0981d2fbf6eae73e3ddc24b69ddcf316d3ae82045007a208cd28b02b54a705c114d5c9da5bdddc760003b190385c3732bcb7d9862dc359c496c37 SHA512 19dafce2906420855915493b7c20fdefdb6464090f96c8b431aa7b3c15899e2a57cdc96d586c2a3de113f5857c6b22f6ee9bc825275cdd7c26f6eb1eaaad7073 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.45-r4.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.45-r4.ebuild deleted file mode 100644 index 5341a7ec36b..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.45-r4.ebuild +++ /dev/null @@ -1,192 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=setuptools -DISTUTILS_OPTIONAL=1 -PYTHON_COMPAT=( python3_{10..13} ) - -inherit distutils-r1 toolchain-funcs multilib-minimal - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://github.com/file/file" - inherit autotools git-r3 -else - VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/file.asc - inherit autotools verify-sig - SRC_URI="https://astron.com/pub/file/${P}.tar.gz" - SRC_URI+=" verify-sig? ( https://astron.com/pub/file/${P}.tar.gz.asc )" - - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" - - BDEPEND="verify-sig? ( sec-keys/openpgp-keys-file )" -fi - -DESCRIPTION="Identify a file's format by scanning binary data for patterns" -HOMEPAGE="https://www.darwinsys.com/file/" - -LICENSE="BSD-2" -SLOT="0" -IUSE="bzip2 lzip lzma python seccomp static-libs zlib zstd" -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" - -DEPEND=" - bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] ) - lzip? ( app-arch/lzlib ) - lzma? ( app-arch/xz-utils[${MULTILIB_USEDEP}] ) - seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] ) - zlib? ( >=virtual/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) -" -RDEPEND=" - ${DEPEND} - python? ( - ${PYTHON_DEPS} - !dev-python/python-magic - ) - seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] ) -" -BDEPEND+=" - python? ( - ${PYTHON_DEPS} - ${DISTUTILS_DEPS} - ) -" - -# https://bugs.gentoo.org/898676 -QA_CONFIG_IMPL_DECL_SKIP=( makedev ) - -PATCHES=( - "${FILESDIR}/file-5.43-seccomp-fstatat64-musl.patch" #789336, not upstream yet - "${FILESDIR}/file-5.45-seccomp-sandbox.patch" - "${FILESDIR}/${P}-32-bit-time_t.patch" - "${FILESDIR}/${P}-32-bit-time_t-deux.patch" - "${FILESDIR}/${P}-weak-magic-shell.patch" #908401 -) - -src_prepare() { - default - - #if [[ ${PV} == 9999 ]] ; then - # eautoreconf - #else - # elibtoolize - #fi - # Just for file-5.45-32-bit-time_t-deux.patch, drop in 5.46 - eautoreconf - - # Don't let python README kill main README, bug #60043 - mv python/README.md python/README.python.md || die - - # bug #662090 - sed -i 's@README.md@README.python.md@' python/setup.py || die -} - -multilib_src_configure() { - local myeconfargs=( - --enable-fsect-man5 - $(use_enable bzip2 bzlib) - $(multilib_native_use_enable lzip lzlib) - $(use_enable lzma xzlib) - $(use_enable seccomp libseccomp) - $(use_enable static-libs static) - $(use_enable zlib) - $(use_enable zstd zstdlib) - ) - - econf "${myeconfargs[@]}" -} - -build_src_configure() { - local myeconfargs=( - --disable-shared - --disable-libseccomp - --disable-bzlib - --disable-xzlib - --disable-zlib - ) - - econf_build "${myeconfargs[@]}" -} - -need_build_file() { - # When cross-compiling, we need to build up our own file - # because people often don't keep matching host/target - # file versions, bug #362941 - tc-is-cross-compiler && ! has_version -b "~${CATEGORY}/${P}" -} - -src_configure() { - local ECONF_SOURCE="${S}" - - if need_build_file ; then - mkdir -p "${WORKDIR}"/build || die - cd "${WORKDIR}"/build || die - build_src_configure - fi - - multilib-minimal_src_configure -} - -multilib_src_compile() { - if multilib_is_native_abi ; then - emake - else - # bug #586444 - emake -C src magic.h - emake -C src libmagic.la - fi -} - -src_compile() { - if need_build_file ; then - # bug #586444 - emake -C "${WORKDIR}"/build/src magic.h - emake -C "${WORKDIR}"/build/src file - local -x PATH="${WORKDIR}/build/src:${PATH}" - fi - - multilib-minimal_src_compile - - if use python ; then - cd python || die - distutils-r1_src_compile - fi -} - -src_test() { - multilib-minimal_src_test - - if use python ; then - cd python || die - distutils-r1_src_test - fi -} - -python_test() { - eunittest -} - -multilib_src_install() { - if multilib_is_native_abi ; then - default - else - emake -C src install-{nodist_includeHEADERS,libLTLIBRARIES} DESTDIR="${D}" - fi -} - -multilib_src_install_all() { - dodoc ChangeLog MAINT # README - - # Required for `file -C` - insinto /usr/share/misc/magic - doins -r magic/Magdir/* - - if use python ; then - cd python || die - distutils-r1_src_install - fi - - find "${ED}" -type f -name "*.la" -delete || die -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.46-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47.ebuild similarity index 93% rename from sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.46-r2.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47.ebuild index 27dfc304ec4..95e3022d87a 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.46-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -18,7 +18,7 @@ else SRC_URI="https://astron.com/pub/file/${P}.tar.gz" SRC_URI+=" verify-sig? ( https://astron.com/pub/file/${P}.tar.gz.asc )" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" BDEPEND="verify-sig? ( sec-keys/openpgp-keys-file )" fi @@ -60,8 +60,6 @@ QA_CONFIG_IMPL_DECL_SKIP=( makedev ) PATCHES=( "${FILESDIR}/file-5.43-seccomp-fstatat64-musl.patch" #789336, not upstream yet "${FILESDIR}/file-5.45-seccomp-sandbox.patch" - "${FILESDIR}/file-5.46-zip.patch" - "${FILESDIR}/file-5.46-buffer-overflow.patch" ) src_prepare() { diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.45-32-bit-time_t-deux.patch b/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.45-32-bit-time_t-deux.patch deleted file mode 100644 index 8c1e0934145..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.45-32-bit-time_t-deux.patch +++ /dev/null @@ -1,29 +0,0 @@ -https://github.com/file/file/commit/8dc5513908381a14981b16a85d59ba054bf4df52 - -From 8dc5513908381a14981b16a85d59ba054bf4df52 Mon Sep 17 00:00:00 2001 -From: Christos Zoulas <christos@zoulas.com> -Date: Mon, 31 Jul 2023 15:56:12 +0000 -Subject: [PATCH] Check if we support _TIME_BITS. (Werner Fink) - ---- a/configure.ac -+++ b/configure.ac -@@ -152,6 +152,18 @@ AC_TYPE_UINT64_T - AC_TYPE_INT64_T - AC_TYPE_INTPTR_T - AC_TYPE_UINTPTR_T -+m4_ifdef([AC_SYS_YEAR2038], [AC_SYS_YEAR2038], [ -+# GNU libc only allows setting _TIME_BITS when FILE_OFFSET_BITS is also set. -+# GNU libc defines __TIMESIZE on systems where _TIME_BITS can be set. -+AS_IF([test X"$ac_cv_sys_file_offset_bits" = X"64"], [ -+ AC_CHECK_DECL(__TIMESIZE, [ -+ AC_DEFINE([_TIME_BITS], [64], [Number of bits in a timestamp, on hosts where this is settable.]) -+ ], [], [ -+AC_INCLUDES_DEFAULT -+#include <time.h> -+ ]) -+ ]) -+]) - AC_FUNC_MMAP - AC_FUNC_FORK - AC_FUNC_MBRTOWC - diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.45-32-bit-time_t.patch b/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.45-32-bit-time_t.patch deleted file mode 100644 index c86a46207e6..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.45-32-bit-time_t.patch +++ /dev/null @@ -1,34 +0,0 @@ -https://mailman.astron.com/pipermail/file/2023-July/001206.html -https://github.com/file/file/commit/218fdf813fd5ccecbb8887a1b62509cd1c6dd3a1 - -From 218fdf813fd5ccecbb8887a1b62509cd1c6dd3a1 Mon Sep 17 00:00:00 2001 -From: Christos Zoulas <christos@zoulas.com> -Date: Fri, 28 Jul 2023 14:38:25 +0000 -Subject: [PATCH] deal with 32 bit time_t - ---- a/src/file.h -+++ b/src/file.h -@@ -27,7 +27,7 @@ - */ - /* - * file.h - definitions for file(1) program -- * @(#)$File: file.h,v 1.247 2023/07/27 19:40:22 christos Exp $ -+ * @(#)$File: file.h,v 1.248 2023/07/28 14:38:25 christos Exp $ - */ - - #ifndef __file_h__ -@@ -159,9 +159,11 @@ - /* - * Dec 31, 23:59:59 9999 - * we need to make sure that we don't exceed 9999 because some libc -- * implementations like muslc crash otherwise -+ * implementations like muslc crash otherwise. If you are unlucky -+ * to be running on a system with a 32 bit time_t, then it is even less. - */ --#define MAX_CTIME CAST(time_t, 0x3afff487cfULL) -+#define MAX_CTIME \ -+ CAST(time_t, sizeof(time_t) > 4 ? 0x3afff487cfULL : 0x7fffffffULL) - - #define FILE_BADSIZE CAST(size_t, ~0ul) - #define MAXDESC 64 /* max len of text description/MIME type */ - diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.45-weak-magic-shell.patch b/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.45-weak-magic-shell.patch deleted file mode 100644 index cdcab736b64..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.45-weak-magic-shell.patch +++ /dev/null @@ -1,43 +0,0 @@ -https://bugs.gentoo.org/908401 -https://bugs.astron.com/view.php?id=457 -https://github.com/file/file/commit/1fc9175166fc5c5117838a1dcfb309b7c595eb56 - -From 1fc9175166fc5c5117838a1dcfb309b7c595eb56 Mon Sep 17 00:00:00 2001 -From: Christos Zoulas <christos@zoulas.com> -Date: Sun, 30 Jul 2023 16:31:47 +0000 -Subject: [PATCH] Comment out weak magic - ---- a/magic/Magdir/printer -+++ b/magic/Magdir/printer -@@ -1,6 +1,6 @@ - - #------------------------------------------------------------------------------ --# $File: printer,v 1.34 2023/06/16 19:27:12 christos Exp $ -+# $File: printer,v 1.35 2023/07/30 16:31:47 christos Exp $ - # printer: file(1) magic for printer-formatted files - # - -@@ -230,8 +230,9 @@ - 0 string PS4 - >0 use hpgl - # la.hp --0 string BP -->0 use hpgl -+# Too weak -+#0 string BP -+#>0 use hpgl - # miter.hp - # Plot Absolute x,y{,x,y{...}}; x and y in range between -32767 and 32768 like: PA4000,3000; - 0 string PA -@@ -241,8 +242,9 @@ - #>2 regex \^([-]{0,1}[0-9]{1,5}) COORDINATE=%s - >>0 use hpgl - # pw.hpg number of pens x --0 string NP -->0 use hpgl -+# Too weak -+#0 string NP -+#>0 use hpgl - # win_1.hp - #0 string \003INCA WHAT_IS_THAT - #>0 use hpgl From 157ee28c26f042d61871996b9fae5629802e1836 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:05 +0000 Subject: [PATCH 190/291] sys-apps/gawk: Sync with Gentoo It's from Gentoo commit 8ccf52ced370cc049902423602a6d9aac882c2da. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-apps/gawk/Manifest | 2 + .../gawk-5.4.0-no-assertions-for-pma.patch | 25 ++++ .../sys-apps/gawk/gawk-5.4.0-r1.ebuild | 123 ++++++++++++++++++ 3 files changed, 150 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/gawk/files/gawk-5.4.0-no-assertions-for-pma.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/gawk/gawk-5.4.0-r1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/gawk/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/gawk/Manifest index 44e97499a9a..7d64cf962d5 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/gawk/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/gawk/Manifest @@ -1,2 +1,4 @@ DIST gawk-5.3.2.tar.xz 3749260 BLAKE2B 8536777bb45c63d737ef08b3f1b98285cb29ec54400e35b2139c2bc66b464e3ec4950274614d95d94dc7eae18c57333b7c30a44d993855258155fc82b749042a SHA512 2268150fa35ae049a6ff3d0d0fa110db10477014c25f50e2ab4e3ee5fd60133369d2a994f59db4eb718020a0af5c4003ae7278c63e7fffa72f431ff4a1429e48 DIST gawk-5.3.2.tar.xz.sig 488 BLAKE2B ea843fce8ca2b93a8006260e8022f3426daccc18b93bd75ef1fb18e391ce110a10682e75509d771ba9c419d1e22a584f66ff9a436512b76b039a85afed6c7596 SHA512 490f29271d06f374e25e13724f5944215734d0c6da465da5b2a723e83fa31a03c7a16e5c8853465561bc0676139588b1046c598554ccde4ae24563455ee28b65 +DIST gawk-5.4.0.tar.xz 3803276 BLAKE2B ce326dc386e62d288c4fe1268ba493f9c3a1e8af7dec90f95b2942588370f5a3538837d71dc4208534ace2aa84fce46ab6d5d681451b560fdf884aaf1b89fb11 SHA512 b212c6ffd235d5e7f98f0cae5a4fbe9a7139c420400710a747dc2c33dcbda445adc2f6f8ebab330c52c432da67b92be1806c628d261db826a72c89011b2d9d77 +DIST gawk-5.4.0.tar.xz.sig 488 BLAKE2B 7e2c6e6fadba3fdd758563221c2f45b45512262f5f7ca49b6bf60993fc59825c7be7d526e8f014e0bc0304b74a07182d0701817db6726bafc5106c27f5687d3b SHA512 428a35d7183032fa58eb6edcc8b352c956218086476d42b1f1064cdec58c1e233ec421559e859f4a5df235709c932e88b54303081b549e9ced3a82c4abaaf030 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/gawk/files/gawk-5.4.0-no-assertions-for-pma.patch b/sdk_container/src/third_party/portage-stable/sys-apps/gawk/files/gawk-5.4.0-no-assertions-for-pma.patch new file mode 100644 index 00000000000..d729d58a5c7 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/gawk/files/gawk-5.4.0-no-assertions-for-pma.patch @@ -0,0 +1,25 @@ +https://cgit.git.savannah.gnu.org/cgit/gawk.git/commit/?id=32e6f04bf47ea95773ea0d6d876c5fad8bb90834 + +From 32e6f04bf47ea95773ea0d6d876c5fad8bb90834 Mon Sep 17 00:00:00 2001 +From: "Arnold D. Robbins" <arnold@skeeve.com> +Date: Mon, 23 Feb 2026 10:59:41 +0200 +Subject: Disable assertions in support/pma.c. + +--- + support/pma.c | 1 + + 2 files changed, 7 insertions(+) + +--- a/support/pma.c ++++ b/support/pma.c +@@ -27,6 +27,7 @@ + */ + + #define _DEFAULT_SOURCE // for MAP_ANONYMOUS ++#define NDEBUG 1 // disable assertions, it kills performance + #include <assert.h> + #include <errno.h> + #include <fcntl.h> +-- +cgit v1.2.3 + + diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/gawk/gawk-5.4.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/gawk/gawk-5.4.0-r1.ebuild new file mode 100644 index 00000000000..a5ffd8d74c1 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/gawk/gawk-5.4.0-r1.ebuild @@ -0,0 +1,123 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GAWK_IS_BETA=no + +DESCRIPTION="GNU awk pattern-matching language" +HOMEPAGE="https://www.gnu.org/software/gawk/gawk.html" + +if [[ ${GAWK_IS_BETA} == yes || ${PV} == *_beta* ]] ; then + if [[ ${PV} == *_beta* ]] ; then + # Beta versioning is sometimes for the release prior, e.g. + # 5.2.1_beta is labelled upstream as 5.2.0b. + MY_PV=${PV/_beta/b} + MY_PV=$(ver_cut 1-2 ${MY_PV}).$(($(ver_cut 3 ${MY_PV}) - 1))$(ver_cut 4- ${MY_PV}) + MY_P=${PN}-${MY_PV} + + S="${WORKDIR}"/${MY_P} + else + MY_P=${P} + fi + + SRC_URI="https://www.skeeve.com/gawk/${MY_P}.tar.gz" +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gawk.asc + inherit verify-sig flag-o-matic + + SRC_URI="mirror://gnu/gawk/${P}.tar.xz" + SRC_URI+=" verify-sig? ( mirror://gnu/gawk/${P}.tar.xz.sig )" + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-3+ pma? ( AGPL-3+ )" +SLOT="0" +# The gawk docs claim MPFR support is "on parole" and may be removed, +# https://www.gnu.org/software/gawk/manual/html_node/MPFR-On-Parole.html +# however this is somewhat outdated information, see +# https://public-inbox.org/libc-alpha/202412190851.4BJ8psq4404509@freefriends.org/ +IUSE="+mpfr pma nls readline" + +RDEPEND=" + mpfr? ( + dev-libs/gmp:= + dev-libs/mpfr:= + ) + readline? ( sys-libs/readline:= ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + >=sys-apps/texinfo-7.1 + >=sys-devel/bison-3.5.4 + nls? ( sys-devel/gettext ) +" + +if [[ ${GAWK_IS_BETA} != yes ]] ; then + BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-gawk )" +fi + +PATCHES=( + "${FILESDIR}"/${P}-no-assertions-for-pma.patch +) + +src_prepare() { + default + + use elibc_musl && append-cppflags -D__GNU_LIBRARY__ + + # Use symlinks rather than hardlinks, and disable version links + sed -i \ + -e '/^LN =/s:=.*:= $(LN_S):' \ + -e '/install-exec-hook:/s|$|\nfoo:|' \ + Makefile.in doc/Makefile.in || die + + # bug #413327 + sed -i '/^pty1:$/s|$|\n_pty1:|' test/Makefile.in || die + + # Fix standards conflict on Solaris + if [[ ${CHOST} == *-solaris* ]] ; then + sed -i \ + -e '/\<_XOPEN_SOURCE\>/s/1$/600/' \ + -e '/\<_XOPEN_SOURCE_EXTENDED\>/s/1//' \ + extension/inplace.c || die + fi +} + +src_configure() { + # README says gawk may not work properly if built with non-Bison. + # We already BDEPEND on Bison, so just unset YACC rather than + # guessing if we need to do yacc.bison or bison -y. + unset YACC + + local myeconfargs=( + --cache-file="${S}"/config.cache + --libexec='$(libdir)/misc' + $(use_with mpfr) + $(use_enable nls) + $(use_enable pma) + $(use_with readline) + ) + + econf "${myeconfargs[@]}" +} + +src_test() { + # bug #970495 + local -x PAGER=cat + + emake check +} + +src_install() { + # Automatic dodocs barfs + rm -rf README_d || die + + default + + # Install headers + insinto /usr/include/awk + doins *.h + rm "${ED}"/usr/include/awk/config.h || die +} From 4ddebce4efab73634a0651835388d4340d123c50 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:06 +0000 Subject: [PATCH 191/291] sys-apps/gentoo-functions: Sync with Gentoo It's from Gentoo commit dfe0716c76310b84a3cea95419d00ab87f1ce95b. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-apps/gentoo-functions/Manifest | 2 + .../gentoo-functions-1.7.5.ebuild | 49 +++++++++++++++++++ .../gentoo-functions-1.7.6.ebuild | 49 +++++++++++++++++++ .../gentoo-functions-9999.ebuild | 4 +- 4 files changed, 102 insertions(+), 2 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/gentoo-functions/gentoo-functions-1.7.5.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/gentoo-functions/gentoo-functions-1.7.6.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/gentoo-functions/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/gentoo-functions/Manifest index 0e736900d5b..a867ddc01c1 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/gentoo-functions/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/gentoo-functions/Manifest @@ -1,2 +1,4 @@ DIST gentoo-functions-0.19.tar.bz2 12079 BLAKE2B be0a3a54d4dee1755866047b670a69cd6fec368239123c3f0c08180b79a33c20147bca0e35e568faef6877513551e731bdf0c181aeb0460f6574d2d708219373 SHA512 2674d3fe5724cc6d685ae58bf0ee33f4a1bdba2c5e5809cfb193fd0a710d4678c2d9392c2c62d2321cf455f524950266dc1629ab684fe46632d179e539d5a39e DIST gentoo-functions-1.7.4.tar.bz2 29565 BLAKE2B dd05aaee9c078ef6b623950c120b7e9aa7056a1e02248a098a9b33e69109fa5a642221a2209a55570590e8101f4ec82e727602dce543977670dd7d49f789429e SHA512 184809eb684465639bc2d404c421e33153ffcac3fe985123e5f5815863c427c9e4f6155713a2c0b69006a4afbefc114211f4a4216f49e726a198938d43fcd395 +DIST gentoo-functions-1.7.5.tar.bz2 30955 BLAKE2B 288a2196790e71e6eb5dcfa3d3d1f745687144e6e878d07e5b7119df21a2bab87ae03803eddd491cfc17ee3e00541adba5a0b31d52c343088ac948384bd3b48d SHA512 fcce38dea4b1441edefd0433109a59f2d868a5c9e66770799c967c95cecc4cb6c07b0011587db08c3b7088c1db541a723739d95aa79c98cde59b318708e2edd2 +DIST gentoo-functions-1.7.6.tar.bz2 30674 BLAKE2B 7e8209283a39125aec501c8ab7cb681101f7a67a1383961ee32b7b1f09373c8dc2f6000277cfef537bee52f1d340acfc318657b544ef004a120c0d387beb620c SHA512 fa4b4d3ddfbc49616405e618b15abc6e4305c04f548a772623b335c53f02842fc5d0c413f387ed43429a7dce500ac274a0acbd91406850f215ced01ad5c53a51 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/gentoo-functions/gentoo-functions-1.7.5.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/gentoo-functions/gentoo-functions-1.7.5.ebuild new file mode 100644 index 00000000000..4130dc00cbf --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/gentoo-functions/gentoo-functions-1.7.5.ebuild @@ -0,0 +1,49 @@ +# Copyright 2014-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit meson + +DESCRIPTION="Base functions required by all Gentoo systems" +HOMEPAGE="https://gitweb.gentoo.org/proj/gentoo-functions.git" + +if [[ ${PV} == 9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-functions.git" +else + SRC_URI="https://gitweb.gentoo.org/proj/gentoo-functions.git/snapshot/${P}.tar.bz2" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-2 MIT" +SLOT="0" +IUSE="test" +RESTRICT="!test? ( test )" + +src_configure() { + local emesonargs=( + # Deliberately avoid /usr as consumers assume we're at /lib/gentoo. + --prefix="${EPREFIX:-/}" + --mandir="${EPREFIX}/usr/share/man" + $(meson_use test tests) + ) + + meson_src_configure +} + +src_install() { + meson_src_install + + if [[ ${EPREFIX} ]]; then + while read -r; do + if [[ ${REPLY} == $'\t'genfun_prefix= ]]; then + printf '\tgenfun_prefix=%q\n' "${EPREFIX}" + else + printf '%s\n' "${REPLY}" + fi || ! break + done < "${ED}/lib/gentoo/functions.sh" > "${T}/functions.sh" \ + && mv -- "${T}/functions.sh" "${ED}/lib/gentoo/functions.sh" \ + || die + fi +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/gentoo-functions/gentoo-functions-1.7.6.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/gentoo-functions/gentoo-functions-1.7.6.ebuild new file mode 100644 index 00000000000..27cdb78f69c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/gentoo-functions/gentoo-functions-1.7.6.ebuild @@ -0,0 +1,49 @@ +# Copyright 2014-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit meson + +DESCRIPTION="Base functions required by all Gentoo systems" +HOMEPAGE="https://gitweb.gentoo.org/proj/gentoo-functions.git" + +if [[ ${PV} == 9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-functions.git" +else + SRC_URI="https://gitweb.gentoo.org/proj/gentoo-functions.git/snapshot/${P}.tar.bz2" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-2 MIT" +SLOT="0" +IUSE="test" +RESTRICT="!test? ( test )" + +src_configure() { + local emesonargs=( + # Deliberately avoid /usr as consumers assume we're at /lib/gentoo. + --prefix="${EPREFIX:-/}" + --mandir="${EPREFIX}/usr/share/man" + $(meson_use test tests) + ) + + meson_src_configure +} + +src_install() { + meson_src_install + + if [[ ${EPREFIX} ]]; then + while read -r; do + if [[ ${REPLY} == $'\t'genfun_prefix= ]]; then + printf '\tgenfun_prefix=%q\n' "${EPREFIX}" + else + printf '%s\n' "${REPLY}" + fi || ! break + done < "${ED}/lib/gentoo/functions.sh" > "${T}/functions.sh" \ + && mv -- "${T}/functions.sh" "${ED}/lib/gentoo/functions.sh" \ + || die + fi +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/gentoo-functions/gentoo-functions-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/gentoo-functions/gentoo-functions-9999.ebuild index 5aadee34e24..4130dc00cbf 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/gentoo-functions/gentoo-functions-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/gentoo-functions/gentoo-functions-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 2014-2024 Gentoo Authors +# Copyright 2014-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -16,7 +16,7 @@ else KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" fi -LICENSE="GPL-2" +LICENSE="GPL-2 MIT" SLOT="0" IUSE="test" RESTRICT="!test? ( test )" From fa942d087f9a9b0df64af5663f6901e78e68d794 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:07 +0000 Subject: [PATCH 192/291] sys-apps/grep: Sync with Gentoo It's from Gentoo commit 4fcf373b61ae6b5b0bdb12aaf441d478d0e1434f. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../files/grep-3.12-write-error-test.patch | 43 +++++++++++++++++++ .../sys-apps/grep/grep-3.12.ebuild | 4 ++ 2 files changed, 47 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/grep/files/grep-3.12-write-error-test.patch diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/grep/files/grep-3.12-write-error-test.patch b/sdk_container/src/third_party/portage-stable/sys-apps/grep/files/grep-3.12-write-error-test.patch new file mode 100644 index 00000000000..479ab351a95 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/grep/files/grep-3.12-write-error-test.patch @@ -0,0 +1,43 @@ +https://cgit.git.savannah.gnu.org/cgit/grep.git/commit/?id=682f7f693d77352e9495978c92037ef28377a024 + +From 682f7f693d77352e9495978c92037ef28377a024 Mon Sep 17 00:00:00 2001 +From: Jim Meyering <meyering@meta.com> +Date: Wed, 14 May 2025 10:56:16 -0700 +Subject: tests: write-error-msg: avoid false-failure + +* tests/write-error-msg: Do not require that a disk full +diagnostic include additional information. In some cases, there +is no valid errno value, so we cannot provide more information. +This was exposed by a patch that coincidentally caused the length +of grep's help output to be precisely 4096 bytes long. +Reported in https://bugs.gnu.org/77800 +--- + tests/write-error-msg | 8 +------- + 1 file changed, 1 insertion(+), 7 deletions(-) + +diff --git a/tests/write-error-msg b/tests/write-error-msg +index 38c4fa0..deb6d09 100755 +--- a/tests/write-error-msg ++++ b/tests/write-error-msg +@@ -43,7 +43,7 @@ returns_ 2 grep -q --help >/dev/full 2>err3 || fail=1 + # ensure each error message file contains a 'write error' with additional text + for f in err1 err2 err3 ; + do +- grep -Eiq '^[^:]*: write error: [a-z]+' $f \ ++ grep -Eiq '^[^:]*: write error' $f \ + || { + warn_ "incorrect/missing error message in file $f" + compare /dev/null $f # print the content in the logs +@@ -51,10 +51,4 @@ do + } + done + +-# These messages should be identical +-for f in err2 err3; do +- compare err1 $f \ +- || { warn_ "err1,$f contain different error messages" ; fail=1 ; } +-done +- + Exit $fail +-- +cgit v1.2.3 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/grep/grep-3.12.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/grep/grep-3.12.ebuild index a8b266b2a35..c35f7d8110b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/grep/grep-3.12.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/grep/grep-3.12.ebuild @@ -58,6 +58,10 @@ QA_CONFIG_IMPL_DECL_SKIP=( static_assert ) +PATCHES=( + "${FILESDIR}"/${P}-write-error-test.patch +) + src_prepare() { default From e7c24ba80061088b8119fb25f556ed43a42996ac Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:07 +0000 Subject: [PATCH 193/291] sys-apps/groff: Sync with Gentoo It's from Gentoo commit e1806c7c28151bcfa7b2fef01d90b9f1849dd347. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-apps/groff/Manifest | 1 - ...ff-1.22.4-skip-broken-diffutils-test.patch | 38 ------ .../sys-apps/groff/groff-1.22.4.ebuild | 113 ----------------- .../sys-apps/groff/groff-1.23.0-r1.ebuild | 3 +- .../sys-apps/groff/groff-1.23.0.ebuild | 114 ------------------ 5 files changed, 2 insertions(+), 267 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/groff/files/groff-1.22.4-skip-broken-diffutils-test.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/groff/groff-1.22.4.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/groff/groff-1.23.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/groff/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/groff/Manifest index 04dcfcdf33a..ed185d7c27b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/groff/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/groff/Manifest @@ -1,2 +1 @@ -DIST groff-1.22.4.tar.gz 4137480 BLAKE2B cdda8a7e8e42b8d8991656ecfbffe0cd0ed5d8932467cab2f3c1eecb3365f4a5c03321b6ed929d451c3dfb00a46046a781303a1c55c4aa65eb7d178fb36b1cbc SHA512 1c42d3cd71efaf067b5850945d9097fa1f0fadd5e2b6ba7446bd9d4f439fe1ad058e4ddb0d4e0f503682137dfc7c822944ce1e3e5cf981673f8ba197ea77126d DIST groff-1.23.0.tar.gz 7433031 BLAKE2B 9fc5a2302f034761a17f0639a04b82c536ba8a7db15b062dd736e0011fc5a27fddcaf035af128d09f06762825d9bb965e8f5561e4be7a9fea3fe86ca5f6cb2dd SHA512 eff473fd1d0e6b27527318452ef2b7c6c7aba0b1c27fc529036496eccba5717f3639df0b81a297a57f700e27543196d7086b15e43d7e3c7bf075f95feb7f4089 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/groff/files/groff-1.22.4-skip-broken-diffutils-test.patch b/sdk_container/src/third_party/portage-stable/sys-apps/groff/files/groff-1.22.4-skip-broken-diffutils-test.patch deleted file mode 100644 index 3db5315aaa7..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/groff/files/groff-1.22.4-skip-broken-diffutils-test.patch +++ /dev/null @@ -1,38 +0,0 @@ -https://savannah.gnu.org/bugs/?63726 -https://git.savannah.gnu.org/cgit/groff.git/commit/?id=10274fb69e517b2c4b10fcd0ba3347e5bd0eefd7 ---- a/Makefile.in -+++ b/Makefile.in -@@ -4195,8 +4195,7 @@ SUFFIXES = .roff .in .ps .mom .pdf .me .ms .ps .html .txt .texi .dvi \ - - # tests launched by make check - check_SCRIPTS = --TESTS = contrib/gdiffmk/tests/gdiffmk_tests.sh $(am__append_5) \ -- $(am__append_8) -+TESTS = $(am__append_5) $(am__append_8) - AM_TESTS_ENVIRONMENT = \ - abs_top_srcdir=$(abs_top_srcdir) \ - abs_top_builddir=$(abs_top_builddir) \ -@@ -9570,13 +9569,6 @@ recheck: all $(check_PROGRAMS) $(check_SCRIPTS) - am__force_recheck=am--force-recheck \ - TEST_LOGS="$$log_list"; \ - exit $$? --contrib/gdiffmk/tests/gdiffmk_tests.sh.log: contrib/gdiffmk/tests/gdiffmk_tests.sh -- @p='contrib/gdiffmk/tests/gdiffmk_tests.sh'; \ -- b='contrib/gdiffmk/tests/gdiffmk_tests.sh'; \ -- $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ -- --log-file $$b.log --trs-file $$b.trs \ -- $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ -- "$$tst" $(AM_TESTS_FD_REDIRECT) - contrib/hdtbl/examples/test-hdtbl.sh.log: contrib/hdtbl/examples/test-hdtbl.sh - @p='contrib/hdtbl/examples/test-hdtbl.sh'; \ - b='contrib/hdtbl/examples/test-hdtbl.sh'; \ ---- a/contrib/gdiffmk/gdiffmk.am -+++ b/contrib/gdiffmk/gdiffmk.am -@@ -26,7 +26,6 @@ - ######################################################################## - gdiffmk_srcdir = $(top_srcdir)/contrib/gdiffmk - bin_SCRIPTS += gdiffmk --TESTS += contrib/gdiffmk/tests/gdiffmk_tests.sh - man1_MANS += contrib/gdiffmk/gdiffmk.1 - EXTRA_DIST += \ - contrib/gdiffmk/gdiffmk.1.man \ diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/groff/groff-1.22.4.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/groff/groff-1.22.4.ebuild deleted file mode 100644 index 00821a9b2ca..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/groff/groff-1.22.4.ebuild +++ /dev/null @@ -1,113 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit flag-o-matic toolchain-funcs - -MY_P="${P/_/.}" - -DESCRIPTION="Text formatter used for man pages" -HOMEPAGE="https://www.gnu.org/software/groff/groff.html" -SRC_URI="mirror://gnu/groff/${MY_P}.tar.gz - https://alpha.gnu.org/gnu/groff/${MY_P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -[[ "${PV}" == *_rc* ]] || \ -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" -IUSE="examples uchardet X" - -RDEPEND=" - uchardet? ( app-i18n/uchardet ) - X? ( - x11-libs/libICE - x11-libs/libSM - x11-libs/libX11 - x11-libs/libXaw - x11-libs/libXmu - x11-libs/libXt - )" -DEPEND="${RDEPEND}" -BDEPEND=" - dev-lang/perl - sys-apps/texinfo" - -DOCS=( BUG-REPORT ChangeLog MORE.STUFF NEWS PROBLEMS PROJECTS README TODO ) - -S="${WORKDIR}/${MY_P}" - -PATCHES=( - "${FILESDIR}"/${PN}-1.19.2-man-unicode-dashes.patch #16108 #17580 #121502 - "${FILESDIR}"/${PN}-1.22.4-skip-broken-diffutils-test.patch -) - -src_prepare() { - default - - # honor Gentoo's docdir - sed -i -e "s|^docdir =.*|docdir = \"${EPREFIX}/usr/share/doc/${PF}\"|g" \ - Makefile.in \ - || die "failed to modify Makefile.in" - - local pfx=$(usex prefix ' Prefix' '') - cat <<-EOF >> tmac/mdoc.local - .ds volume-operating-system Gentoo${pfx} - .ds operating-system Gentoo${pfx}/${KERNEL} - .ds default-operating-system Gentoo${pfx}/${KERNEL} - EOF - - # make sure we don't get a crappy `g' nameprefix on UNIX systems with real - # troff (GROFF_G macro runs some test to see, its own troff doesn't satisfy) - sed -i -e 's/^[ \t]\+g=g$/g=/' configure || die -} - -src_configure() { - if use elibc_musl ; then - # This should be safe to drop in the release after 1.22.4 - # gnulib was rather out of date and didn't include musl in its - # CHOST checks. - # bug #678026 - export gl_cv_func_signbit_gcc=yes - fi - - # Drop in release after 1.22.4! bug #894154 - append-cxxflags -std=gnu++11 - - local myeconfargs=( - --with-appresdir="${EPREFIX}"/usr/share/X11/app-defaults - $(use_with uchardet) - $(use_with X x) - ) - econf "${myeconfargs[@]}" -} - -src_compile() { - local -a CROSS_ARGS - tc-is-cross-compiler && CROSS_ARGS+=( - GROFFBIN="$(type -P groff)" - TROFFBIN="$(type -P troff)" - GROFF_BIN_DIR= - GROFF_BIN_PATH= - ) - - emake AR="$(tc-getAR)" "${CROSS_ARGS[@]}" -} - -src_install() { - default - - # The following links are required for man #123674 - dosym eqn /usr/bin/geqn - dosym tbl /usr/bin/gtbl - - if ! use examples ; then - # The pdf files might not be generated if ghostscript is unavailable. #602020 - local pdf="${ED}/usr/share/doc/${PF}/examples/mom/mom-pdf.pdf" - if [[ -e ${pdf} ]] ; then - # Keep mom-pdf.pdf since it's more of a manual than an example. #454196 #516732 - mv "${pdf}" "${ED}/usr/share/doc/${PF}/pdf/" || die - fi - rm -rf "${ED}/usr/share/doc/${PF}/examples" - fi -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/groff/groff-1.23.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/groff/groff-1.23.0-r1.ebuild index b15b9d89866..dbf71d8b4bb 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/groff/groff-1.23.0-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/groff/groff-1.23.0-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -37,6 +37,7 @@ DEPEND="${RDEPEND}" BDEPEND=" dev-lang/perl sys-apps/texinfo + sys-devel/m4 " DOCS=( BUG-REPORT ChangeLog MORE.STUFF NEWS PROBLEMS PROJECTS README TODO ) diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/groff/groff-1.23.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/groff/groff-1.23.0.ebuild deleted file mode 100644 index 3a7cb6c323e..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/groff/groff-1.23.0.ebuild +++ /dev/null @@ -1,114 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit toolchain-funcs - -MY_P="${P/_/.}" -DESCRIPTION="Text formatter used for man pages" -HOMEPAGE="https://www.gnu.org/software/groff/groff.html" - -if [[ ${PV} == *_rc* ]] ; then - SRC_URI="https://alpha.gnu.org/gnu/groff/${MY_P}.tar.gz" -else - SRC_URI="mirror://gnu/groff/${MY_P}.tar.gz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" -fi - -S="${WORKDIR}/${MY_P}" - -LICENSE="GPL-2" -SLOT="0" -IUSE="examples uchardet X" - -RDEPEND=" - uchardet? ( app-i18n/uchardet ) - X? ( - x11-libs/libICE - x11-libs/libSM - x11-libs/libX11 - x11-libs/libXaw - x11-libs/libXmu - x11-libs/libXt - ) -" -DEPEND="${RDEPEND}" -BDEPEND=" - dev-lang/perl - sys-apps/texinfo -" - -DOCS=( BUG-REPORT ChangeLog MORE.STUFF NEWS PROBLEMS PROJECTS README TODO ) - -QA_CONFIG_IMPL_DECL_SKIP=( - # False positive with older autoconf, will be fixed w/ autoconf-2.72 - static_assert -) - -PATCHES=( - # bug #16108, bug #17580, bug #121502 - "${FILESDIR}"/${PN}-1.19.2-man-unicode-dashes.patch -) - -src_prepare() { - default - - # Honor Gentoo's docdir - sed -i -e "s|^docdir =.*|docdir = \"${EPREFIX}/usr/share/doc/${PF}\"|g" \ - Makefile.in \ - || die "failed to modify Makefile.in" - - local pfx=$(usex prefix ' Prefix' '') - cat <<-EOF >> tmac/mdoc.local || die - .ds volume-operating-system Gentoo${pfx} - .ds operating-system Gentoo${pfx}/${KERNEL} - .ds default-operating-system Gentoo${pfx}/${KERNEL} - EOF - - # make sure we don't get a crappy `g' nameprefix on UNIX systems with real - # troff (GROFF_G macro runs some test to see, its own troff doesn't satisfy) - sed -i -e 's/^[ \t]\+g=g$/g=/' configure || die -} - -src_configure() { - local myeconfargs=( - --with-appdefdir="${EPREFIX}"/usr/share/X11/app-defaults - --without-compatibility-wrappers # for Prefix - $(use_with uchardet) - $(use_with X x) - ) - - econf "${myeconfargs[@]}" -} - -src_compile() { - local -a CROSS_ARGS - tc-is-cross-compiler && CROSS_ARGS+=( - GROFFBIN="$(type -P groff)" - TROFFBIN="$(type -P troff)" - GROFF_BIN_DIR= - GROFF_BIN_PATH= - ) - - emake AR="$(tc-getAR)" "${CROSS_ARGS[@]}" -} - -src_install() { - default - - # The following links are required for man, bug #123674 - dosym eqn /usr/bin/geqn - dosym tbl /usr/bin/gtbl - - if ! use examples ; then - # The pdf files might not be generated if ghostscript is unavailable, bug #602020 - local pdf="${ED}/usr/share/doc/${PF}/examples/mom/mom-pdf.pdf" - if [[ -e ${pdf} ]] ; then - # Keep mom-pdf.pdf since it's more of a manual than an example - # bug #454196 and bug #516732 - mv "${pdf}" "${ED}/usr/share/doc/${PF}/pdf/" || die - fi - rm -rf "${ED}/usr/share/doc/${PF}/examples" - fi -} From f2f66626e8e36c9c574b7f65ba284baff4de144b Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:09 +0000 Subject: [PATCH 194/291] sys-apps/iproute2: Sync with Gentoo It's from Gentoo commit a537eb3beb5799eee05898a38e9c916727990899. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-apps/iproute2/iproute2-6.18.0.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-6.18.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-6.18.0.ebuild index d88b96d6f12..764319d52a3 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-6.18.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-6.18.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -10,7 +10,7 @@ if [[ ${PV} == 9999 ]] ; then inherit git-r3 else SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" fi DESCRIPTION="kernel routing and traffic control utilities" From 59118bbca73e1ab1c40370279bc6f68bc4ff0aa6 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:10 +0000 Subject: [PATCH 195/291] sys-apps/iucode_tool: Sync with Gentoo It's from Gentoo commit 77bcc45dc4b55e9d1a54d0944f6524943ebabfa3. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../files/iucode_tool-2.3.1-non-x86.patch | 47 +++++++++++++++++++ .../iucode_tool/iucode_tool-2.3.1-r2.ebuild | 21 +++++++++ 2 files changed, 68 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/iucode_tool/files/iucode_tool-2.3.1-non-x86.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/iucode_tool/iucode_tool-2.3.1-r2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/iucode_tool/files/iucode_tool-2.3.1-non-x86.patch b/sdk_container/src/third_party/portage-stable/sys-apps/iucode_tool/files/iucode_tool-2.3.1-non-x86.patch new file mode 100644 index 00000000000..772f05d33ce --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/iucode_tool/files/iucode_tool-2.3.1-non-x86.patch @@ -0,0 +1,47 @@ +https://gitlab.com/iucode-tool/iucode-tool/-/merge_requests/5 + +From dd2511c343b4eb62a28edf330dfc9e2c2e750a88 Mon Sep 17 00:00:00 2001 +From: James Le Cuirot <jlecuirot@microsoft.com> +Date: Mon, 2 Feb 2026 11:16:13 +0000 +Subject: [PATCH] iucode_tool: Allow building on non-x86 little endian + architectures + +This is obviously an Intel x86-specific tool, but that doesn't mean it +cannot be used elsewhere to prepare x86 images. The code is still +endian-sensitive though, so the configure check to disallow big endian +remains. + +Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com> +--- a/iucode_tool.c ++++ b/iucode_tool.c +@@ -30,7 +30,10 @@ + #include <argp.h> + #include <dirent.h> + #include <time.h> ++ ++#if defined(__x86_64__) || defined(__i386__) + #include <cpuid.h> ++#endif + + #include "intel_microcode.h" + +@@ -2933,11 +2936,16 @@ static int scan_system_processors(unsigned int strategy, + assert(filter_list); + + print_msg(3, "trying to get CPUID information directly"); ++#if defined(__x86_64__) || defined(__i386__) + if (!(__get_cpuid(0, &id0, &id1, &id2, &id3) && + __get_cpuid(1, &sig, &idx, &idx, &idx))) { + print_msg(1, "microcode signature unavailable"); + return 0; + } ++#else ++ print_msg(1, "CPUID instruction not available on this architecture"); ++ return 0; ++#endif + + /* + * fail-safe: only change filter_list_allow (switch away from "select +-- +2.51.2 + diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/iucode_tool/iucode_tool-2.3.1-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/iucode_tool/iucode_tool-2.3.1-r2.ebuild new file mode 100644 index 00000000000..75c903aa169 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/iucode_tool/iucode_tool-2.3.1-r2.ebuild @@ -0,0 +1,21 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="Tool to manipulate Intel X86 and X86-64 processor microcode update collections" +HOMEPAGE="https://gitlab.com/iucode-tool/" +SRC_URI="https://gitlab.com/iucode-tool/releases/raw/master/${PN/_/-}_${PV}.tar.xz" +S="${WORKDIR}/${PN/_/-}-${PV}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND="elibc_musl? ( sys-libs/argp-standalone )" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-2.3.1-limits-include.patch + "${FILESDIR}"/${PN}-2.3.1-non-x86.patch +) From 032594230f6a83a20d3e62ce61c410060ce24ee3 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:10 +0000 Subject: [PATCH 196/291] sys-apps/kbd: Sync with Gentoo It's from Gentoo commit 710c07115e7d46893db37a6fdd936ed64654de72. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-apps/kbd/kbd-2.9.0-r1.ebuild | 4 ++-- .../third_party/portage-stable/sys-apps/kbd/kbd-9999.ebuild | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/kbd/kbd-2.9.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/kbd/kbd-2.9.0-r1.ebuild index 324771c58cb..aa13eb6a382 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/kbd/kbd-2.9.0-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/kbd/kbd-2.9.0-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -22,7 +22,7 @@ fi DESCRIPTION="Keyboard and console utilities" HOMEPAGE="https://kbd-project.org/" -LICENSE="GPL-2" +LICENSE="GPL-2+" SLOT="0" IUSE="bzip2 lzma nls selinux pam test zlib zstd" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/kbd/kbd-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/kbd/kbd-9999.ebuild index c7a1d26b064..f93f7b1189a 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/kbd/kbd-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/kbd/kbd-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -22,7 +22,7 @@ fi DESCRIPTION="Keyboard and console utilities" HOMEPAGE="https://kbd-project.org/" -LICENSE="GPL-2" +LICENSE="GPL-2+" SLOT="0" IUSE="bzip2 lzma nls selinux pam test zlib zstd" RESTRICT="!test? ( test )" From 20434d228245492c0d4b2cf5941dd0efb1e97334 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:10 +0000 Subject: [PATCH 197/291] sys-apps/kexec-tools: Sync with Gentoo It's from Gentoo commit d7d60b7a56eafdcf5f03cf08c992309df7a212af. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-apps/kexec-tools/Manifest | 1 - .../kexec-tools/files/kexec-auto-load | 15 ++--- ...ools-2.0.32-fix-uki-sig-verification.patch | 55 +++++++++++++++++++ .../sys-apps/kexec-tools/files/kexec.service | 16 ------ ...31.ebuild => kexec-tools-2.0.32-r1.ebuild} | 5 +- 5 files changed, 63 insertions(+), 29 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/files/kexec-tools-2.0.32-fix-uki-sig-verification.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/files/kexec.service rename sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/{kexec-tools-2.0.31.ebuild => kexec-tools-2.0.32-r1.ebuild} (94%) diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/Manifest index f04b250d205..c926a8ac5dd 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/Manifest @@ -1,2 +1 @@ -DIST kexec-tools-2.0.31.tar.xz 318468 BLAKE2B 075f1457dce9d4d6f0a3fa3cb9ed4cebfc51324fe0f3859b0cb009e1ebdb10d5df83c17d35ec55c479f1416f0836bf263d6ed814732037af6189565685f81afe SHA512 95cb7e7b33685497d72fab74fed2191e476c0574d6ad2333d9e22b95a94543b5fdafe0663282cfaebb8747cf696b7d34c308941ec1074b2b9f1ed440b32d7309 DIST kexec-tools-2.0.32.tar.xz 325392 BLAKE2B 9cbd0ac706600ddaceabbffdde262d739394ede16572190ed467c8290495a6ba4921973ed332d26f776580191066f3361ce7c39d8e4af5184eec3f3b7b805be0 SHA512 60f120f8e46b9fb5dcf5a5b344ee8b303878ba9f71d58a3eefa1c9f044a6a2192b285154b738970263384c6e7281a854cd48a185334c08141aa4e6cf08230654 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/files/kexec-auto-load b/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/files/kexec-auto-load index 62c828fd1c3..7cb08c5a5bd 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/files/kexec-auto-load +++ b/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/files/kexec-auto-load @@ -20,17 +20,12 @@ if [[ -s ${instkern_state} ]]; then fi fi -if [[ ${LAYOUT} == uki ]]; then - echo "WARNING: kexec currently does not support UKIs" - KPARAM= +if [[ -f /etc/kernel/cmdline ]]; then + KPARAM="$(tr -s "${IFS}" ' ' </etc/kernel/cmdline)" +elif [[ -f /usr/lib/kernel/cmdline ]]; then + KPARAM="$(tr -s "${IFS}" ' ' </usr/lib/kernel/cmdline)" else - if [[ -f /etc/kernel/cmdline ]]; then - KPARAM="$(tr -s "${IFS}" ' ' </etc/kernel/cmdline)" - elif [[ -f /usr/lib/kernel/cmdline ]]; then - KPARAM="$(tr -s "${IFS}" ' ' </usr/lib/kernel/cmdline)" - else - KPARAM= - fi + KPARAM= fi diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/files/kexec-tools-2.0.32-fix-uki-sig-verification.patch b/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/files/kexec-tools-2.0.32-fix-uki-sig-verification.patch new file mode 100644 index 00000000000..d7269c1f2cc --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/files/kexec-tools-2.0.32-fix-uki-sig-verification.patch @@ -0,0 +1,55 @@ +From e18a71faae081d075c8d3ec559aa68a59295c739 Mon Sep 17 00:00:00 2001 +From: Pingfan Liu <piliu@redhat.com> +Date: Fri, 5 Dec 2025 10:05:36 +0800 +Subject: [PATCH] UKI: Fix the size of real payload + +According to the PE file specification, each section's SizeOfRawData +must be a multiple of FileAlignment (usually 512). So when ukify builds +a UKI image, it pads the kernel image, initrd, etc. with zeros aligned +to 512 bytes. The actual payload size is recorded in VirtualSize. + +Since the checksum includes the trailing zeros, this causes issues when +loading a signed x86 bzImage, which is stored in the UKI's .linux +section. + +Credit goes to Philipp, who analysed and pointed out this issue to me. + +Signed-off-by: Pingfan Liu <piliu@redhat.com> +Cc: Philipp Rudo <prudo@redhat.com> +Signed-off-by: Simon Horman <horms@kernel.org> +--- + include/pe.h | 2 +- + kexec/kexec-uki.c | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/include/pe.h b/include/pe.h +index 9ab3e79a..3fb923f1 100644 +--- a/include/pe.h ++++ b/include/pe.h +@@ -116,7 +116,7 @@ struct section_header { + char name[8]; /* name or "/12\0" string tbl offset */ + uint32_t virtual_size; /* size of loaded section in ram */ + uint32_t virtual_address; /* relative virtual address */ +- uint32_t raw_data_size; /* size of the section */ ++ uint32_t raw_data_size; /* size of the section, padding to be multiple of FileAlignment */ + uint32_t data_addr; /* file pointer to first page of sec */ + uint32_t relocs; /* file pointer to relocation entries */ + uint32_t line_numbers; /* line numbers! */ +diff --git a/kexec/kexec-uki.c b/kexec/kexec-uki.c +index 9888d7ea..fe86d613 100644 +--- a/kexec/kexec-uki.c ++++ b/kexec/kexec-uki.c +@@ -71,11 +71,11 @@ int uki_image_probe(const char *file_buf, off_t buf_sz) + if (!strcmp(sect_hdr->name, UKI_LINUX_SECTION)) { + /* data_addr is relative to the whole file */ + linux_src = (char *)file_buf + sect_hdr->data_addr; +- linux_sz = sect_hdr->raw_data_size; ++ linux_sz = sect_hdr->virtual_size; + + } else if (!strcmp(sect_hdr->name, UKI_INITRD_SECTION)) { + create_tmpfd(FILENAME_UKI_INITRD, (char *)file_buf + sect_hdr->data_addr, +- sect_hdr->raw_data_size, &implicit_initrd_fd); ++ sect_hdr->virtual_size, &implicit_initrd_fd); + } + sect_hdr++; + } diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/files/kexec.service b/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/files/kexec.service deleted file mode 100644 index 289aae0df0b..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/files/kexec.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=Gracefully restart the box -Documentation=man:kexec(8) -After=boot.mount -Before=shutdown.target umount.target final.target -ConditionPathExists=!/nokexec - -[Service] -Type=oneshot -RemainAfterExit=yes -EnvironmentFile=/etc/kexec.conf -ExecStart=/usr/sbin/kexec -l /boot/${KNAME} ${KEXEC_OPT_ARGS} -ExecStop=/usr/sbin/kexec -l /boot/${KNAME} ${KEXEC_OPT_ARGS} - -[Install] -WantedBy=multi-user.target diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/kexec-tools-2.0.31.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/kexec-tools-2.0.32-r1.ebuild similarity index 94% rename from sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/kexec-tools-2.0.31.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/kexec-tools-2.0.32-r1.ebuild index 17dfc7b6df2..bea3824ccea 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/kexec-tools-2.0.31.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/kexec-tools-2.0.32-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -11,7 +11,7 @@ if [[ ${PV} == "9999" ]] ; then else SRC_URI="https://www.kernel.org/pub/linux/utils/kernel/kexec/${P/_/-}.tar.xz" [[ "${PV}" == *_rc* ]] || \ - KEYWORDS="amd64 arm64 ~ppc64 x86" + KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" fi DESCRIPTION="Load another kernel from the currently executing Linux kernel" @@ -40,6 +40,7 @@ CONFIG_CHECK="~KEXEC" PATCHES=( "${FILESDIR}"/${PN}-2.0.4-disable-kexec-test.patch "${FILESDIR}"/${PN}-2.0.4-out-of-source.patch + "${FILESDIR}"/${PN}-2.0.32-fix-uki-sig-verification.patch ) src_prepare() { From 15cacf5d2875ffaf84ae884c4ec3fc43caee64ac Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:11 +0000 Subject: [PATCH 198/291] sys-apps/keyutils: Sync with Gentoo It's from Gentoo commit 6d0c9895fc0f288640588f11ac96c04a7241a95a. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../keyutils-1.5.9-header-extern-c.patch | 43 ------------------- .../keyutils/keyutils-1.6.3-r1.ebuild | 3 +- 2 files changed, 1 insertion(+), 45 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/keyutils/files/keyutils-1.5.9-header-extern-c.patch diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/keyutils/files/keyutils-1.5.9-header-extern-c.patch b/sdk_container/src/third_party/portage-stable/sys-apps/keyutils/files/keyutils-1.5.9-header-extern-c.patch deleted file mode 100644 index c7a4c1034c9..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/keyutils/files/keyutils-1.5.9-header-extern-c.patch +++ /dev/null @@ -1,43 +0,0 @@ -sent upstream - -From 1f15000ad21c301a51f7746eb561659348060f45 Mon Sep 17 00:00:00 2001 -From: Mike Frysinger <vapier@chromium.org> -Date: Wed, 25 Jan 2017 14:06:55 -1000 -Subject: [PATCH keyutils] add extern C markings to header file for C++ users - -If people try to use keyutils from C++ code, the header doesn't work -properly because the compiler mangles the keyutils symbols. Add the -right extern markings so it works out of the box. - -Signed-off-by: Mike Frysinger <vapier@gentoo.org> ---- - keyutils.h | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/keyutils.h b/keyutils.h -index a69fa7aaa11d..d50d19d3e929 100644 ---- a/keyutils.h -+++ b/keyutils.h -@@ -15,6 +15,10 @@ - #include <sys/types.h> - #include <stdint.h> - -+#ifdef __cplusplus -+extern "C" { -+#endif -+ - extern const char keyutils_version_string[]; - extern const char keyutils_build_string[]; - -@@ -180,4 +184,8 @@ extern int recursive_session_key_scan(recursive_key_scanner_t func, void *data); - extern key_serial_t find_key_by_type_and_desc(const char *type, const char *desc, - key_serial_t destringid); - -+#ifdef __cplusplus -+} -+#endif -+ - #endif /* KEYUTILS_H */ --- -2.11.0 - diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/keyutils/keyutils-1.6.3-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/keyutils/keyutils-1.6.3-r1.ebuild index 6990abd1f2a..92ccac098c4 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/keyutils/keyutils-1.6.3-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/keyutils/keyutils-1.6.3-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -21,7 +21,6 @@ DEPEND="!prefix? ( >=sys-kernel/linux-headers-2.6.11 )" PATCHES=( "${FILESDIR}"/${PN}-1.6-makefile-fixup.patch "${FILESDIR}"/${PN}-1.5.10-disable-tests.patch #519062 #522050 - "${FILESDIR}"/${PN}-1.5.9-header-extern-c.patch "${FILESDIR}"/${PN}-1.6.3-fix-rpmspec-check.patch "${FILESDIR}"/${PN}-1.6.3-symbols.patch "${FILESDIR}"/${P}-tests.patch From 77504ca5573c40a697df5b0823ada8907716ca54 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:11 +0000 Subject: [PATCH 199/291] sys-apps/kmod: Sync with Gentoo It's from Gentoo commit 0c2f6e7e4647aa7f51d024da2699a5762297490e. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-apps/kmod/files/kmod-34.2-s390.patch | 53 +++++++++++++++++++ .../sys-apps/kmod/kmod-34.2.ebuild | 6 ++- 2 files changed, 58 insertions(+), 1 deletion(-) create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/kmod/files/kmod-34.2-s390.patch diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/kmod/files/kmod-34.2-s390.patch b/sdk_container/src/third_party/portage-stable/sys-apps/kmod/files/kmod-34.2-s390.patch new file mode 100644 index 00000000000..be663402900 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/kmod/files/kmod-34.2-s390.patch @@ -0,0 +1,53 @@ +From 4e18b842b3dae5486adb2c6cc11bdfdd53ee8646 Mon Sep 17 00:00:00 2001 +From: Tobias Stoeckmann <tobias@stoeckmann.org> +Date: Wed, 14 Jan 2026 20:58:50 +0100 +Subject: [PATCH] util: Add s390 31 bit mode support + +Even though size_t is of the same size as a uint32_t, the s390 +architecture is a bit picky about its 31 bit mode with size_t. + +Use custom code to fix this issue in a rather architecture +independent but unfortunately slower way for s390 31 bit mode. + +Reference: https://github.com/kmod-project/kmod/issues/402 +Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org> +--- + shared/util.h | 16 ++++++++++++++++ + 1 file changed, 16 insertions(+) + +diff --git a/shared/util.h b/shared/util.h +index bf3f1009..b785f5b1 100644 +--- a/shared/util.h ++++ b/shared/util.h +@@ -123,7 +123,15 @@ static inline bool uaddsz_overflow(size_t a, size_t b, size_t *res) + #if __SIZEOF_SIZE_T__ == 8 + return uadd64_overflow(a, b, res); + #elif __SIZEOF_SIZE_T__ == 4 ++#ifdef __s390__ ++ if (b < SIZE_MAX - a) { ++ *res = a + b; ++ return true; ++ } ++ return false; ++#else + return uadd32_overflow(a, b, res); ++#endif + #else + #error "Unknown sizeof(size_t)" + #endif +@@ -167,7 +175,15 @@ static inline bool umulsz_overflow(size_t a, size_t b, size_t *res) + #if __SIZEOF_SIZE_T__ == 8 + return umul64_overflow(a, b, res); + #elif __SIZEOF_SIZE_T__ == 4 ++#ifdef __s390__ ++ if (a == 0 || b <= SIZE_MAX / a) { ++ *res = a * b; ++ return true; ++ } ++ return false; ++#else + return umul32_overflow(a, b, res); ++#endif + #else + #error "Unknown sizeof(size_t)" + #endif diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/kmod/kmod-34.2.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/kmod/kmod-34.2.ebuild index 619e7835077..c8e68cf2216 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/kmod/kmod-34.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/kmod/kmod-34.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -40,6 +40,10 @@ BDEPEND=" zlib? ( virtual/pkgconfig ) " +PATCHES=( + "${FILESDIR}/${P}-s390.patch" +) + pkg_setup() { : } From 514cda4e1a69802a551646624b2e250842567256 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:12 +0000 Subject: [PATCH 200/291] sys-apps/less: Sync with Gentoo It's from Gentoo commit 8675ee42e6511076a4cddb05a8451d7a1b046006. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-apps/less/Manifest | 5 + .../sys-apps/less/less-685.ebuild | 16 ++- .../sys-apps/less/less-691.ebuild | 101 ++++++++++++++++++ .../sys-apps/less/less-692.ebuild | 101 ++++++++++++++++++ .../sys-apps/less/less-9999.ebuild | 16 ++- 5 files changed, 233 insertions(+), 6 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/less/less-691.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/less/less-692.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/less/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/less/Manifest index ef81adbda9b..8c7d2b0bb2d 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/less/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/less/Manifest @@ -2,3 +2,8 @@ DIST less-643.tar.gz 592291 BLAKE2B 6dc60dc2e8db05afdae466877a1d26a3008ff5378bbb DIST less-668.tar.gz 649770 BLAKE2B 0f6a85a1c66577dd2a28682a6f8399e42fdbe9fc1498b2e89c6bb7c47109e8d3ab934abe5dd998b2c8dfacfb174ad9daeb79b3d4c13df22fa035ea792b2eaf5e SHA512 6527741a609849ec27b6ab35de46f2c5c2b2771391e3efe263207bee28915946f44331a42f832a7cb42231a19b135cbadc15ae02cd997b83a13cdfbc7213fc27 DIST less-679.tar.gz 877094 BLAKE2B 024cd7f4014958e9be52a89aefd9404298850c56f0f8d2403e8648b06ce37bcca6742ebd8a3a4900acb78a3884c4f17270919feb3ca76c6978c34ec79043f154 SHA512 f04e37dc4b2839b416a195e107d21328800e75080054788002c109b3b113a6a898b953391912e7538fb9843ef530b1991efc76dbf6fb5960e5530f3ff83421f6 DIST less-685.tar.gz 882560 BLAKE2B 771ba2fb1f593e80d9e5e203bfe9b7a8a33833fcd3464a0c64c4056359e9ecc723eff87b783c9ab4c3090d7dac1973c1875eb7d926601c512dc0494e7e8adb5c SHA512 aff745f1816e0f996fbdbc33ecae0726cf0d842efc227937ff8c32e734c8b5be4c611ffbb27e5e038b4d95280c95ca60c53af1a47cf419cb06e5fab543c231f3 +DIST less-685.tar.gz.sig 95 BLAKE2B e5c1e42b997d44b017570afe3af7edc539ec00d03f8f829db9e73be4db8095d0a9166bdbd0d822fee9e3c97d90ccf9110b757ef253ddff14f4070e1e9455c45f SHA512 bd3f0f6fec225478a643a81a8afb2c9e68934816482efd05556f92d3568022a57fd918793ef14e34990eefe6cba0950174a4ffd7f1107fe2af994b45ad866679 +DIST less-691.tar.gz 986638 BLAKE2B b74fe33259ac5731cc6230e115c8ab21f34c8a3e67efbb5ee554af6377a17f9ee3a92f99e9ee2f9c757804de5f0f061c87582d26da71a2c8a62fb079434abe62 SHA512 6ae54f0c2b86709cc1aea54b0531b06ef155f852b6a23c0c36505e3bca93c0c6806ef89fbbd90eee7afeb0ad8e4d9ef09c5b25e133a018e6bbef1c97ad4c7728 +DIST less-691.tar.gz.sig 95 BLAKE2B 0b7ec8ef81b3d7d2f768554d9e1a2274300e495ebfc58d787b18115725acfd1a361d4ea9d27ea4d74071319b65b0d9d5efa12579a9df87fc17502c30f09ee176 SHA512 23988f9e914998079364571141f0f11c719139d9e5bf73729b76fe1df5192b83ec3d1a9f154ddc75a66dae111435fef6eaec38e5c8cad3bf6562bc2f2d7fc089 +DIST less-692.tar.gz 987633 BLAKE2B 379d7738894f16fed1b429c9e26c2e46fd27c790be2b0b8b6c0f6744913845ea6003d5b50db4186847c4daf430fb5a23d2c9f35780577a0fb1c1a3b603bfbb41 SHA512 57a2d2b8c45c93550ab3f4c8a427f877ccfc4660028880a776d6463fdc155c7c71abc51c842bc3b2107085eb205f9d30edc21b23e21239ef61033762558209e3 +DIST less-692.tar.gz.sig 95 BLAKE2B 530d6274ba8045975c26123ed3a239a5272350cf229287dc73fbe5c1e862a81618e14e280d63ed6b30087bb86e15b259a33a5b0e3b4bb945cbd9ffeefa382eed SHA512 738b3ed934f877674cf076a788a9aca5bae33a62db4c26b604bd7e819ca472465417a8d2d0bdedc1126e8eeba7c78e8d5b165f134ecca4426e30a7c3a1e31f4b diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/less/less-685.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/less/less-685.ebuild index b59ff65a4e3..932628242af 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/less/less-685.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/less/less-685.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -22,7 +22,17 @@ if [[ ${PV} == 9999 ]]; then EGIT_REPO_URI="https://github.com/gwsw/less" inherit git-r3 else - SRC_URI="https://www.greenwoodsoftware.com/less/${MY_P}.tar.gz" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/less.asc + inherit verify-sig + + SRC_URI=" + https://www.greenwoodsoftware.com/less/${MY_P}.tar.gz + verify-sig? ( + https://www.greenwoodsoftware.com/less/${MY_P}.sig -> ${MY_P}.tar.gz.sig + ) + " + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-less )" if [[ ${PV} != *_beta* ]] ; then KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" @@ -42,7 +52,7 @@ DEPEND=" pcre? ( dev-libs/libpcre2 ) " RDEPEND="${DEPEND}" -BDEPEND="test? ( virtual/pkgconfig )" +BDEPEND+=" test? ( virtual/pkgconfig )" src_prepare() { default diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/less/less-691.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/less/less-691.ebuild new file mode 100644 index 00000000000..698a1775159 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/less/less-691.ebuild @@ -0,0 +1,101 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Releases are usually first a beta then promoted to stable if no +# issues were found. Upstream explicitly ask "to not generally distribute" +# the beta versions. It's okay to keyword beta versions if they fix +# a serious bug, but otherwise try to avoid it. + +WANT_AUTOMAKE=none +WANT_LIBTOOL=none +inherit autotools flag-o-matic optfeature toolchain-funcs + +DESCRIPTION="Excellent text file viewer" +HOMEPAGE="https://www.greenwoodsoftware.com/less/" + +MY_PV=${PV/_beta/-beta} +MY_P=${PN}-${MY_PV} + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://github.com/gwsw/less" + inherit git-r3 +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/less.asc + inherit verify-sig + + SRC_URI=" + https://www.greenwoodsoftware.com/less/${MY_P}.tar.gz + verify-sig? ( + https://www.greenwoodsoftware.com/less/${MY_P}.sig -> ${MY_P}.tar.gz.sig + ) + " + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-less )" + + if [[ ${PV} != *_beta* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi +fi + +S="${WORKDIR}"/${MY_P/?beta} + +LICENSE="|| ( GPL-3 BSD-2 )" +SLOT="0" +IUSE="pcre test" +RESTRICT="!test? ( test )" + +DEPEND=" + >=app-misc/editor-wrapper-3 + >=sys-libs/ncurses-5.2:= + pcre? ( dev-libs/libpcre2 ) +" +RDEPEND="${DEPEND}" +BDEPEND+=" test? ( virtual/pkgconfig )" + +src_prepare() { + default + # Per upstream README to prepare live build + [[ ${PV} == 9999 ]] && emake -f Makefile.aut distfiles + # Upstream uses unpatched autoconf-2.69, which breaks with clang-16. + # https://bugs.gentoo.org/870412 + eautoreconf +} + +src_configure() { + append-lfs-flags # bug #896316 + + local myeconfargs=( + --with-regex=$(usex pcre pcre2 posix) + --with-editor="${EPREFIX}"/usr/libexec/editor + ) + econf "${myeconfargs[@]}" +} + +src_test() { + emake check VERBOSE=1 CC="$(tc-getCC)" PKG_CONFIG="$(tc-getPKG_CONFIG)" +} + +src_install() { + default + + keepdir /usr/lib/lessfilter.d + keepdir /etc/lessfilter.d + + newbin "${FILESDIR}"/lesspipe-r4.sh lesspipe + newenvd "${FILESDIR}"/less.envd 70less +} + +pkg_preinst() { + optfeature "Colorized output support" dev-python/pygments + + if has_version "<${CATEGORY}/${PN}-483-r1" ; then + elog "The lesspipe.sh symlink has been dropped. If you are still setting" + elog "LESSOPEN to that, you will need to update it to '|lesspipe %s'." + fi + + if has_version "<${CATEGORY}/${PN}-643" ; then + elog "less now colorizes by default. To disable this, set LESSCOLOR=no." + fi +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/less/less-692.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/less/less-692.ebuild new file mode 100644 index 00000000000..698a1775159 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/less/less-692.ebuild @@ -0,0 +1,101 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Releases are usually first a beta then promoted to stable if no +# issues were found. Upstream explicitly ask "to not generally distribute" +# the beta versions. It's okay to keyword beta versions if they fix +# a serious bug, but otherwise try to avoid it. + +WANT_AUTOMAKE=none +WANT_LIBTOOL=none +inherit autotools flag-o-matic optfeature toolchain-funcs + +DESCRIPTION="Excellent text file viewer" +HOMEPAGE="https://www.greenwoodsoftware.com/less/" + +MY_PV=${PV/_beta/-beta} +MY_P=${PN}-${MY_PV} + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://github.com/gwsw/less" + inherit git-r3 +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/less.asc + inherit verify-sig + + SRC_URI=" + https://www.greenwoodsoftware.com/less/${MY_P}.tar.gz + verify-sig? ( + https://www.greenwoodsoftware.com/less/${MY_P}.sig -> ${MY_P}.tar.gz.sig + ) + " + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-less )" + + if [[ ${PV} != *_beta* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi +fi + +S="${WORKDIR}"/${MY_P/?beta} + +LICENSE="|| ( GPL-3 BSD-2 )" +SLOT="0" +IUSE="pcre test" +RESTRICT="!test? ( test )" + +DEPEND=" + >=app-misc/editor-wrapper-3 + >=sys-libs/ncurses-5.2:= + pcre? ( dev-libs/libpcre2 ) +" +RDEPEND="${DEPEND}" +BDEPEND+=" test? ( virtual/pkgconfig )" + +src_prepare() { + default + # Per upstream README to prepare live build + [[ ${PV} == 9999 ]] && emake -f Makefile.aut distfiles + # Upstream uses unpatched autoconf-2.69, which breaks with clang-16. + # https://bugs.gentoo.org/870412 + eautoreconf +} + +src_configure() { + append-lfs-flags # bug #896316 + + local myeconfargs=( + --with-regex=$(usex pcre pcre2 posix) + --with-editor="${EPREFIX}"/usr/libexec/editor + ) + econf "${myeconfargs[@]}" +} + +src_test() { + emake check VERBOSE=1 CC="$(tc-getCC)" PKG_CONFIG="$(tc-getPKG_CONFIG)" +} + +src_install() { + default + + keepdir /usr/lib/lessfilter.d + keepdir /etc/lessfilter.d + + newbin "${FILESDIR}"/lesspipe-r4.sh lesspipe + newenvd "${FILESDIR}"/less.envd 70less +} + +pkg_preinst() { + optfeature "Colorized output support" dev-python/pygments + + if has_version "<${CATEGORY}/${PN}-483-r1" ; then + elog "The lesspipe.sh symlink has been dropped. If you are still setting" + elog "LESSOPEN to that, you will need to update it to '|lesspipe %s'." + fi + + if has_version "<${CATEGORY}/${PN}-643" ; then + elog "less now colorizes by default. To disable this, set LESSCOLOR=no." + fi +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/less/less-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/less/less-9999.ebuild index d724f788a79..698a1775159 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/less/less-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/less/less-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -22,7 +22,17 @@ if [[ ${PV} == 9999 ]]; then EGIT_REPO_URI="https://github.com/gwsw/less" inherit git-r3 else - SRC_URI="https://www.greenwoodsoftware.com/less/${MY_P}.tar.gz" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/less.asc + inherit verify-sig + + SRC_URI=" + https://www.greenwoodsoftware.com/less/${MY_P}.tar.gz + verify-sig? ( + https://www.greenwoodsoftware.com/less/${MY_P}.sig -> ${MY_P}.tar.gz.sig + ) + " + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-less )" if [[ ${PV} != *_beta* ]] ; then KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" @@ -42,7 +52,7 @@ DEPEND=" pcre? ( dev-libs/libpcre2 ) " RDEPEND="${DEPEND}" -BDEPEND="test? ( virtual/pkgconfig )" +BDEPEND+=" test? ( virtual/pkgconfig )" src_prepare() { default From eaf2a28b4175552e497fe346749600bb02d8e04a Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:12 +0000 Subject: [PATCH 201/291] sys-apps/locale-gen: Sync with Gentoo It's from Gentoo commit d26c8e00eecb2b9d4b1011a75681a34c14e5d15c. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-apps/locale-gen/Manifest | 1 + .../locale-gen/locale-gen-3.10.ebuild | 70 +++++++++++++++++++ 2 files changed, 71 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/locale-gen/locale-gen-3.10.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/locale-gen/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/locale-gen/Manifest index 4959a50b230..d365e90979e 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/locale-gen/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/locale-gen/Manifest @@ -1,2 +1,3 @@ +DIST locale-gen-3.10.tar.bz2 18016 BLAKE2B 0ddedf66dfa584b5685f52a3c95be560642d7314bb95a3912a65bffde1687454a6a6a5795c07057e147e7b8b229736f9e2c3e34cbeffc5de5f807e3db056de81 SHA512 192c5823edfaa4681fc809578358755c794f1c3b23f2c99fd819d65abafc886fa36e9f57ccf00d166b1a659d307a5a390373d8099a91fed6d3b7a8cc83e9f586 DIST locale-gen-3.8.tar.bz2 17593 BLAKE2B 0197096021286f47f4e289ee5c4cbf0220264b5784c101df567c0a5dc81a0a83999e8306e8ab72e47f4f35f92d0f7e7e40589ff3c74936e22c56e3b5a172fb15 SHA512 6e802283bce6a927ed020d3011a9bc4a81ef017d728a698fa6a8c74887895a87d225cdbe23cf18798a12f2e58beacfdd6ba5e3990d74ebafb4b2ba5986d35720 DIST locale-gen-3.9.tar.bz2 17793 BLAKE2B 982c6460a40ac29b9aa3f2bab42cfa7862510c715e13bb68b0b6c7f7910fd728862ed4cc2ce7a07bfe1888566a469c1264174a4f41306506d77edc7189957a7c SHA512 8bdb5e7cb19d62284291d092b03e04f2c40b52cac542192afe5e3c28776a88f4452efdd6dd76a6719fe7b73edf37b916322db4d048c08fd7d03d6d3474fdd6fe diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/locale-gen/locale-gen-3.10.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/locale-gen/locale-gen-3.10.ebuild new file mode 100644 index 00000000000..0325795b9fb --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/locale-gen/locale-gen-3.10.ebuild @@ -0,0 +1,70 @@ +# Copyright 2023-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="Generate locales based upon the config file /etc/locale.gen" +HOMEPAGE="https://gitweb.gentoo.org/proj/locale-gen.git/" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/locale-gen.git" + inherit git-r3 +else + SRC_URI="https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/${P}.tar.bz2" + + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" +fi + +LICENSE="GPL-2" +SLOT="0" + +BDEPEND=" + >=dev-lang/perl-5.36 + dev-perl/File-Slurper +" +RDEPEND=" + >=dev-lang/perl-5.36 + !<sys-libs/glibc-2.37-r3 +" + +src_prepare() { + # EPREFIX is readonly. + local -x MY_EPREFIX=${EPREFIX} + + eapply_user + + perl -pi -e '$f //= ($. == 1 && s/^#!\h*\K/$ENV{MY_EPREFIX}/); END { exit !$f }' "${PN}" \ + || die "Failed to prefixify ${PN}" +} + +src_install() { + dosbin locale-gen + doman *.[0-8] + insinto /etc + { + cat <<-'EOF' && + # This file defines which locales to incorporate into the glibc locale archive. + # See the locale.gen(5) and locale-gen(8) man pages for more details. + + EOF + if [[ -e ${EROOT}/usr/share/i18n/SUPPORTED ]]; then + # Run the interpreter by name so as not to have to prefixify. + perl mkconfig "${EROOT}" + else + ewarn "Skipping the incorporation of locale.gen examples because the SUPPORTED file is absent" + fi + } | newins - locale.gen + if (( PIPESTATUS[0] || PIPESTATUS[1] )); then + die "Failed to generate and/or install locale.gen" + fi + keepdir /usr/lib/locale +} + +pkg_postinst() { + while read -r; do ewarn "${REPLY}"; done <<-'EOF' + As of version 3.10, the locale.gen(5) config file grammar has been + simplified. For instance, "en_US.UTF-8 UTF-8" may instead be written as + "en_US UTF-8", or even "en_US". The grammar remains backward compatible with + version 3.9, so there is no requirement to update the /etc/locale.gen file. + EOF +} From acf6625189acaae0ed68d9b9b1a9610a42046756 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:13 +0000 Subject: [PATCH 202/291] sys-apps/man-db: Sync with Gentoo It's from Gentoo commit 1ed5731d7c4b3b3244e32c4c1950b04f2bfbcae6. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-apps/man-db/Manifest | 2 ++ ...-2.13.0.ebuild => man-db-2.13.0-r1.ebuild} | 30 ++++++++++++++++--- ...-2.13.1.ebuild => man-db-2.13.1-r1.ebuild} | 30 ++++++++++++++++--- .../sys-apps/man-db/man-db-9999.ebuild | 30 ++++++++++++++++--- 4 files changed, 80 insertions(+), 12 deletions(-) rename sdk_container/src/third_party/portage-stable/sys-apps/man-db/{man-db-2.13.0.ebuild => man-db-2.13.0-r1.ebuild} (87%) rename sdk_container/src/third_party/portage-stable/sys-apps/man-db/{man-db-2.13.1.ebuild => man-db-2.13.1-r1.ebuild} (87%) diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/man-db/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/man-db/Manifest index 8f63442b489..3e3638709ef 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/man-db/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/man-db/Manifest @@ -1,2 +1,4 @@ DIST man-db-2.13.0.tar.xz 2071032 BLAKE2B 7ce91a7abc6d3bbd92d4707f13caacd8ab5caee0502a2b115f8aa53f4d38df05b0e03346f70584618cce6f5457113e826828a02b847bff57abd6ba6ec1b2d407 SHA512 612ce39bb1e11aa7797e8e3a26f06a7154c48a13b2d74217c2c6701e0d33fa8f77ae2b8c9ee84353e364d16918f884115f2dfbf3cd743edd4ed32b763b87f723 +DIST man-db-2.13.0.tar.xz.asc 833 BLAKE2B 2ee37709b9dddc26c6aae5d4900dad51194824d33ede5b886b0365f1f1bf76375d8d581c90fbf109f3e9e467f21daee73c1cf2ad8ab292ffd557e5d286705d6d SHA512 483fb32f731f6135f9843faec4148048321aa8ac8a38ea6fac463f1addba47c827be6e1a6daefc11ca6cc33630dc939162e91620df5f9a2e443cadd607dbd8bd DIST man-db-2.13.1.tar.xz 2110328 BLAKE2B f0f61bbd91992e2be8343459addca4bb9892ad4887756a1e58e8dccf71d30fd4bfd105739f1c730d7e73088825508566c9c29e74a59d78453055db25c7a929c6 SHA512 9b39f512fe940e648ca7f47803f42e473064253b67eb96995d28da30fd322de31a4466bf821e9391e6041af2318a6d2c2d74102b73f4b42a63966b41d2df0578 +DIST man-db-2.13.1.tar.xz.asc 833 BLAKE2B 5d124dab7af731e78a9e7e04b7949eef580e8c4e25b30a18092cbf6b84329bc776038d330926c6757c41910773de4e7d2a4fae21d904268614e95637699ca158 SHA512 0d7f5b58430ce779261f68517c212b0517485300d8ea3d6a8232b0ac6c892671346ce7a4f4c6621b512516ca4c70bc09d5d828ed54a2a27c30ca70d3c77f7cdd diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-2.13.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-2.13.0-r1.ebuild similarity index 87% rename from sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-2.13.0.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-2.13.0-r1.ebuild index 9bf80f8a2fe..ba959d8e68c 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-2.13.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-2.13.0-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -7,14 +7,21 @@ inherit systemd prefix tmpfiles DESCRIPTION="A man replacement that utilizes dbm instead of flat files" HOMEPAGE="https://gitlab.com/man-db/man-db https://www.nongnu.org/man-db/" + if [[ ${PV} == *9999 ]] ; then inherit autotools git-r3 EGIT_REPO_URI="https://gitlab.com/man-db/man-db" else - inherit libtool + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/cjwatson.asc + inherit libtool verify-sig # TODO: Change tarballs to gitlab too...? - SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz" + SRC_URI=" + mirror://nongnu/${PN}/${P}.tar.xz + verify-sig? ( mirror://nongnu/${PN}/${P}.tar.xz.asc ) + " KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-cjwatson )" fi LICENSE="GPL-3" @@ -29,7 +36,7 @@ CDEPEND=" zlib? ( virtual/zlib:= ) " DEPEND="${CDEPEND}" -BDEPEND=" +BDEPEND+=" app-arch/xz-utils virtual/pkgconfig nls? ( @@ -65,6 +72,10 @@ src_unpack() { EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \ git-r3_src_unpack else + if use verify-sig ; then + verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.asc} + fi + default fi } @@ -130,6 +141,17 @@ src_configure() { $(use_with seccomp libseccomp) --with-db=gdbm + + # Explicitly enable all types of compression + # so they aren't disabled automagically. + # The configure script by default only enables a + # compressor if it is present at compile time. + --with-gzip=gzip + --with-compress=compress + --with-bzip2=bzip2 + --with-xz=xz + --with-lzip=lzip + --with-zstd=zstd ) case ${CHOST} in diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-2.13.1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-2.13.1-r1.ebuild similarity index 87% rename from sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-2.13.1.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-2.13.1-r1.ebuild index 9bf80f8a2fe..ba959d8e68c 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-2.13.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-2.13.1-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -7,14 +7,21 @@ inherit systemd prefix tmpfiles DESCRIPTION="A man replacement that utilizes dbm instead of flat files" HOMEPAGE="https://gitlab.com/man-db/man-db https://www.nongnu.org/man-db/" + if [[ ${PV} == *9999 ]] ; then inherit autotools git-r3 EGIT_REPO_URI="https://gitlab.com/man-db/man-db" else - inherit libtool + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/cjwatson.asc + inherit libtool verify-sig # TODO: Change tarballs to gitlab too...? - SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz" + SRC_URI=" + mirror://nongnu/${PN}/${P}.tar.xz + verify-sig? ( mirror://nongnu/${PN}/${P}.tar.xz.asc ) + " KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-cjwatson )" fi LICENSE="GPL-3" @@ -29,7 +36,7 @@ CDEPEND=" zlib? ( virtual/zlib:= ) " DEPEND="${CDEPEND}" -BDEPEND=" +BDEPEND+=" app-arch/xz-utils virtual/pkgconfig nls? ( @@ -65,6 +72,10 @@ src_unpack() { EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \ git-r3_src_unpack else + if use verify-sig ; then + verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.asc} + fi + default fi } @@ -130,6 +141,17 @@ src_configure() { $(use_with seccomp libseccomp) --with-db=gdbm + + # Explicitly enable all types of compression + # so they aren't disabled automagically. + # The configure script by default only enables a + # compressor if it is present at compile time. + --with-gzip=gzip + --with-compress=compress + --with-bzip2=bzip2 + --with-xz=xz + --with-lzip=lzip + --with-zstd=zstd ) case ${CHOST} in diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-9999.ebuild index 005497dcb4b..f9b325c7704 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -7,14 +7,21 @@ inherit systemd prefix tmpfiles DESCRIPTION="A man replacement that utilizes dbm instead of flat files" HOMEPAGE="https://gitlab.com/man-db/man-db https://www.nongnu.org/man-db/" + if [[ ${PV} == *9999 ]] ; then inherit autotools git-r3 EGIT_REPO_URI="https://gitlab.com/man-db/man-db" else - inherit libtool + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/cjwatson.asc + inherit libtool verify-sig # TODO: Change tarballs to gitlab too...? - SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz" + SRC_URI=" + mirror://nongnu/${PN}/${P}.tar.xz + verify-sig? ( mirror://nongnu/${PN}/${P}.tar.xz.asc ) + " KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-cjwatson )" fi LICENSE="GPL-3" @@ -29,7 +36,7 @@ CDEPEND=" zlib? ( virtual/zlib:= ) " DEPEND="${CDEPEND}" -BDEPEND=" +BDEPEND+=" app-arch/xz-utils virtual/pkgconfig nls? ( @@ -65,6 +72,10 @@ src_unpack() { EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \ git-r3_src_unpack else + if use verify-sig ; then + verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.asc} + fi + default fi } @@ -130,6 +141,17 @@ src_configure() { $(use_with seccomp libseccomp) --with-db=gdbm + + # Explicitly enable all types of compression + # so they aren't disabled automagically. + # The configure script by default only enables a + # compressor if it is present at compile time. + --with-gzip=gzip + --with-compress=compress + --with-bzip2=bzip2 + --with-xz=xz + --with-lzip=lzip + --with-zstd=zstd ) case ${CHOST} in From d773c5705400ddcf47a50451d47dafa252ede78e Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:14 +0000 Subject: [PATCH 203/291] sys-apps/man-pages: Sync with Gentoo It's from Gentoo commit cb8a0bfcaf4f49cee298ec67df159e72ba9eb9c3. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-apps/man-pages/Manifest | 7 +- .../sys-apps/man-pages/man-pages-6.10.ebuild | 12 +--- ...s-6.06.ebuild => man-pages-6.16-r2.ebuild} | 63 ++++++++--------- ...s-6.05.01.ebuild => man-pages-6.17.ebuild} | 70 ++++++++++++------- .../sys-apps/man-pages/man-pages-9999.ebuild | 44 ++++++------ 5 files changed, 100 insertions(+), 96 deletions(-) rename sdk_container/src/third_party/portage-stable/sys-apps/man-pages/{man-pages-6.06.ebuild => man-pages-6.16-r2.ebuild} (70%) rename sdk_container/src/third_party/portage-stable/sys-apps/man-pages/{man-pages-6.05.01.ebuild => man-pages-6.17.ebuild} (64%) diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/Manifest index 92588e499c2..a78295e76a1 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/Manifest @@ -1,6 +1,7 @@ -DIST man-pages-6.05.01.tar.xz 2194472 BLAKE2B edc40828bc9c75f655a8352f10c214d68b64f90815cc947f65d49794e0b588b103cae28b3644e41bedd8caaa6cef3c77b02525d8c2ccc91ccf887a10b2f2c32a SHA512 ad3f6dc28bb83824faf8c855a5db8983dc0f5ac3b5702624033ed320a6f39a7f1f0845acf0bc62a0a10cdfe42eb66ba9596e2796ba2683cfb29e480710da3d70 -DIST man-pages-6.06.tar.sign 833 BLAKE2B 7198f7a024731fcaeb97c131ff02611cefc60cf26fa8bac013c82d90f1f9dcd39230adc6ad94c97488c7a8d844b0bb31db6fea2528d84084dec54454a073f3c1 SHA512 21304778df56f079c8b3ff38cf42453697a2b155964069bf6837b9c89b32c3a80eef9cfd0c2f9e3feeee12889cb4e6dd1d4ef1fae75cc646fed84289c5862578 -DIST man-pages-6.06.tar.xz 2166012 BLAKE2B 49c022204f8ce82fafd6f34a590a310beb6618d884290123a755efd38a71c974aa2e49d729655fcf82df0b96db8f782c1b2eac5174b319b6a383740e715fa11a SHA512 c50b5a47cff5172e46752b61af4dd9f54ee0be88ab69bcc5914bd8ce5ddfaf7358143bea9f69bd6a45f0420eb5eb4596c2200109b23fe98a5221dd01e4a8ea15 DIST man-pages-6.10.tar.sign 833 BLAKE2B 039863e6bcdc7c522ebd7b516c8c0c797dc6838dea59129da3830fa88cc19916c9e67a05bda03d05b5dda17c034bbc9035a9f98d53cde618b74f177e0e90e268 SHA512 484d9d32f9e0e26fb31251d7ca357854b240f5ea19fe8a0816706fa9671d72346eed2fb65735f45d08694fad34164e429e8f561c5a56c194e92d096535726db8 DIST man-pages-6.10.tar.xz 1878432 BLAKE2B 8f4e46616692aef9aafafb7c48353478ba5d7143710401e6c0987bcb9e6a2847c5955d50dcf9e98a288b9e052b4df9d0dae3b40648b53b8e39a7b382bfefe051 SHA512 8e42a950504f6fb77c4121627a40fe9486bf66520ed363eb852eaa75a428184b2d4312936dd7fdf4463109e23aa4550dffe344a31d93afb6774f6fadf41949ee +DIST man-pages-6.16.tar.sign 833 BLAKE2B c2bba3189f91c7104f201e7e91abe7647e436d32bc9777927eec412dbc5f70c19a8f911df512a12f9a8e4b80d006e4866f4c2f2bdaa790e6c972d29571b07aa2 SHA512 f08ca029abc450460da4445b10ce76f50307e1b57e7febdc3e78c745c8e671724c9e54af26a9f89fbf66008c3e9b45ea439a5b128251e2fd9f96efcde1692d99 +DIST man-pages-6.16.tar.xz 1880288 BLAKE2B b6b4a4969b725d61e6dae70960d8380695e782b6133a876b7dc9c36e6adc1f0d12e884a819508e4ceef2608dee2010006570a3798bc69e2357b51c7b473fe4c4 SHA512 f28c6684809735550838952194e05558b12d2322dabbc1c43cc36b8a1bcbc7f7512db260d6371eb3a804c0bdcbf9049d097e8d75a6902370b75ff90b2270d6f3 +DIST man-pages-6.17.tar.sign 833 BLAKE2B 0804716378d101dfce1cd76b3a3dd94e174dd395ff9766d8e7af29e2d38d1517208d1905be40a32d4a775f077a73e5f5c647ee056df639075ad2f1f11cdb6ba0 SHA512 f079623b637fe79bfd4efc3e7bfa8794c13750efc5c7db9292341d14ba36d0c3840c00387d4cb28c23cf65da428269d32de9af1a11644ef8beee0e1323322f5a +DIST man-pages-6.17.tar.xz 1896604 BLAKE2B c167bb2023c5401624c18ae5445b2fb93a11aa298baa0e69bf6a817d8e715d7277429e759f60fcd72536e1a0d904982c0b81e26dc60130d691820227f822d5b2 SHA512 c037ddf5db3afac6e70649b7bd82f8c69e82fc0402f9cc6977b45931948d31fb38a7c836bae074f102ec646f4baf348607e4fede967e566ed79af43003857ebc DIST man-pages-gentoo-2.tar.bz2 5141 BLAKE2B c5c7956ab47c8a473e258b1902d5d19d9eb2e9d01786e907d9c3ba691c2a506834ed96cd1f54e8d8415e65d4fea0056659537f0faffe68fcbed33aa728a5e61e SHA512 6e6524b8ad6f1b8c9b147665ee32af49e05603dac61d433acd6b4f1164adef27cd542898f272b07d8659725013dac59c7f34a858968cc054a4785c945e14a770 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.10.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.10.ebuild index 3e45cc7f040..d7e366850cf 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.10.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.10.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -67,9 +67,6 @@ MY_L10N=( cs da de el es fi fr hu id it ko mk nb nl pl pt-BR ro ru sr sv uk vi ) IUSE="l10n_ja l10n_ru l10n_zh-CN ${MY_L10N[@]/#/l10n_}" RESTRICT="binchecks" -BDEPEND+=" - app-alternatives/bc -" # Block packages that used to install colliding man pages: # bug #341953, bug #548900, bug #612640, bug #617462 RDEPEND=" @@ -97,11 +94,8 @@ src_unpack() { fi if [[ ${PV} != *_rc* ]] && ! [[ ${MAN_PAGES_GENTOO_DIST} -eq 1 ]] && use verify-sig ; then - # Upstream sign the decompressed .tar - einfo "Unpacking ${P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" + verify-sig_uncompress_verify_unpack "${DISTDIR}"/${P}.tar.xz \ + "${DISTDIR}"/${P}.tar.sign unpack man-pages-gentoo-${GENTOO_PATCH}.tar.bz2 else diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.06.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.16-r2.ebuild similarity index 70% rename from sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.06.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.16-r2.ebuild index d12c33c6ad2..777f15252d5 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.06.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.16-r2.ebuild @@ -1,8 +1,10 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 +inherit eapi9-ver + # Maintenance notes: # - Upstream are very friendly, do approach them if have any questions; # @@ -47,10 +49,10 @@ else ) " - BDEPEND="verify-sig? ( sec-keys/openpgp-keys-alejandro-colomar )" + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-alejandro-colomar-20260122 )" fi - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos" fi SRC_URI+=" @@ -61,19 +63,12 @@ SRC_URI+=" LICENSE="man-pages GPL-2+ BSD" SLOT="0" # Keep the following in sync with app-i18n/man-pages-l10n -MY_L10N=( cs da de el es fi fr hu id it mk nb nl pl pt-BR ro sr sv uk vi ) +MY_L10N=( cs da de el es fi fr hu id it ko mk nb nl pl pt-BR ro ru sr sv uk vi ) IUSE="l10n_ja l10n_ru l10n_zh-CN ${MY_L10N[@]/#/l10n_}" RESTRICT="binchecks" -BDEPEND+=" - app-alternatives/bc -" -# Block packages that used to install colliding man pages: -# bug #341953, bug #548900, bug #612640, bug #617462 RDEPEND=" virtual/man - !<sys-apps/keyutils-1.5.9-r4 - !<dev-libs/libbsd-0.8.3-r1 " PDEPEND=" l10n_ja? ( app-i18n/man-pages-ja ) @@ -91,16 +86,10 @@ unset lang src_unpack() { if [[ ${PV} == 9999 ]] ; then git-r3_src_unpack - return - fi - - if [[ ${PV} != *_rc* ]] && ! [[ ${MAN_PAGES_GENTOO_DIST} -eq 1 ]] && use verify-sig ; then - # Upstream sign the decompressed .tar - einfo "Unpacking ${P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" - + unpack man-pages-gentoo-${GENTOO_PATCH}.tar.bz2 + elif [[ ${PV} != *_rc* ]] && ! [[ ${MAN_PAGES_GENTOO_DIST} -eq 1 ]] && use verify-sig ; then + verify-sig_uncompress_verify_unpack "${DISTDIR}"/${P}.tar.xz \ + "${DISTDIR}"/${P}.tar.sign unpack man-pages-gentoo-${GENTOO_PATCH}.tar.bz2 else default @@ -110,20 +99,29 @@ src_unpack() { src_prepare() { default + # installed by sys-libs/libxcrypt + rm man/man3/crypt{,_r}.3 || die + # passwd.5 installed by sys-apps/shadow, bug #776787 - rm man5/passwd.5 || die + rm man/man5/passwd.5 || die } -src_compile() { :; } +src_configure() { + export prefix="${EPREFIX}/usr" +} + +src_compile() { + emake -R +} src_test() { # We don't use the 'check' target right now because of known errors # https://lore.kernel.org/linux-man/0dfd5319-2d22-a8ad-f085-d635eb6d0678@gmail.com/T/#t - emake lint-man-tbl + emake -R lint-man-tbl } src_install() { - emake install prefix="${EPREFIX}"/usr DESTDIR="${D}" + emake -R DESTDIR="${D}" install dodoc README Changes* # Override with Gentoo specific or additional Gentoo pages @@ -133,13 +131,10 @@ src_install() { } pkg_postinst() { - for ver in ${REPLACING_VERSIONS} ; do - if ver_test ${ver} -lt 5.13-r2 ; then - # Avoid ACCEPT_LICENSE issues for users by default - # bug #871636 - ewarn "This version of ${PN} no longer depends on sys-apps/man-pages-posix!" - ewarn "Please install sys-apps/man-pages-posix yourself if needed." - break - fi - done + if ver_replacing -lt 5.13-r2 ; then + # Avoid ACCEPT_LICENSE issues for users by default + # bug #871636 + ewarn "This version of ${PN} no longer depends on sys-apps/man-pages-posix!" + ewarn "Please install sys-apps/man-pages-posix yourself if needed." + fi } diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.05.01.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.17.ebuild similarity index 64% rename from sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.05.01.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.17.ebuild index c338b04f970..777f15252d5 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.05.01.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.17.ebuild @@ -1,8 +1,10 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 +inherit eapi9-ver + # Maintenance notes: # - Upstream are very friendly, do approach them if have any questions; # @@ -22,6 +24,7 @@ GENTOO_PATCH=2 DESCRIPTION="A somewhat comprehensive collection of Linux man pages" HOMEPAGE="https://www.kernel.org/doc/man-pages/" + if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git" inherit git-r3 @@ -34,13 +37,22 @@ else if [[ ${MAN_PAGES_GENTOO_DIST} -eq 1 ]] ; then SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-gentoo.tar.xz" else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/alejandro-colomar.asc + inherit verify-sig + SRC_URI=" https://www.kernel.org/pub/linux/docs/man-pages/Archive/${P}.tar.xz https://www.kernel.org/pub/linux/docs/man-pages/${P}.tar.xz + verify-sig? ( + https://www.kernel.org/pub/linux/docs/man-pages/Archive/${P}.tar.sign + https://www.kernel.org/pub/linux/docs/man-pages/${P}.tar.sign + ) " + + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-alejandro-colomar-20260122 )" fi - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos" fi SRC_URI+=" @@ -51,19 +63,12 @@ SRC_URI+=" LICENSE="man-pages GPL-2+ BSD" SLOT="0" # Keep the following in sync with app-i18n/man-pages-l10n -MY_L10N=( cs da de el es fi fr hu id it mk nb nl pl pt-BR ro sr sv uk vi ) +MY_L10N=( cs da de el es fi fr hu id it ko mk nb nl pl pt-BR ro ru sr sv uk vi ) IUSE="l10n_ja l10n_ru l10n_zh-CN ${MY_L10N[@]/#/l10n_}" RESTRICT="binchecks" -BDEPEND=" - app-alternatives/bc -" -# Block packages that used to install colliding man pages: -# bug #341953, bug #548900, bug #612640, bug #617462 RDEPEND=" virtual/man - !<sys-apps/keyutils-1.5.9-r4 - !<dev-libs/libbsd-0.8.3-r1 " PDEPEND=" l10n_ja? ( app-i18n/man-pages-ja ) @@ -79,28 +84,44 @@ done unset lang src_unpack() { - default - - [[ ${PV} == 9999 ]] && git-r3_src_unpack + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + unpack man-pages-gentoo-${GENTOO_PATCH}.tar.bz2 + elif [[ ${PV} != *_rc* ]] && ! [[ ${MAN_PAGES_GENTOO_DIST} -eq 1 ]] && use verify-sig ; then + verify-sig_uncompress_verify_unpack "${DISTDIR}"/${P}.tar.xz \ + "${DISTDIR}"/${P}.tar.sign + unpack man-pages-gentoo-${GENTOO_PATCH}.tar.bz2 + else + default + fi } src_prepare() { default + # installed by sys-libs/libxcrypt + rm man/man3/crypt{,_r}.3 || die + # passwd.5 installed by sys-apps/shadow, bug #776787 - rm man5/passwd.5 || die + rm man/man5/passwd.5 || die } -src_compile() { :; } +src_configure() { + export prefix="${EPREFIX}/usr" +} + +src_compile() { + emake -R +} src_test() { # We don't use the 'check' target right now because of known errors # https://lore.kernel.org/linux-man/0dfd5319-2d22-a8ad-f085-d635eb6d0678@gmail.com/T/#t - emake lint-man-tbl + emake -R lint-man-tbl } src_install() { - emake install prefix="${EPREFIX}"/usr DESTDIR="${D}" + emake -R DESTDIR="${D}" install dodoc README Changes* # Override with Gentoo specific or additional Gentoo pages @@ -110,13 +131,10 @@ src_install() { } pkg_postinst() { - for ver in ${REPLACING_VERSIONS} ; do - if ver_test ${ver} -lt 5.13-r2 ; then - # Avoid ACCEPT_LICENSE issues for users by default - # bug #871636 - ewarn "This version of ${PN} no longer depends on sys-apps/man-pages-posix!" - ewarn "Please install sys-apps/man-pages-posix yourself if needed." - break - fi - done + if ver_replacing -lt 5.13-r2 ; then + # Avoid ACCEPT_LICENSE issues for users by default + # bug #871636 + ewarn "This version of ${PN} no longer depends on sys-apps/man-pages-posix!" + ewarn "Please install sys-apps/man-pages-posix yourself if needed." + fi } diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-9999.ebuild index 386b9fcace6..777f15252d5 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -49,7 +49,7 @@ else ) " - BDEPEND="verify-sig? ( sec-keys/openpgp-keys-alejandro-colomar )" + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-alejandro-colomar-20260122 )" fi KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos" @@ -63,19 +63,12 @@ SRC_URI+=" LICENSE="man-pages GPL-2+ BSD" SLOT="0" # Keep the following in sync with app-i18n/man-pages-l10n -MY_L10N=( cs da de el es fi fr hu id it mk nb nl pl pt-BR ro sr sv uk vi ) +MY_L10N=( cs da de el es fi fr hu id it ko mk nb nl pl pt-BR ro ru sr sv uk vi ) IUSE="l10n_ja l10n_ru l10n_zh-CN ${MY_L10N[@]/#/l10n_}" RESTRICT="binchecks" -BDEPEND+=" - app-alternatives/bc -" -# Block packages that used to install colliding man pages: -# bug #341953, bug #548900, bug #612640, bug #617462 RDEPEND=" virtual/man - !<sys-apps/keyutils-1.5.9-r4 - !<dev-libs/libbsd-0.8.3-r1 " PDEPEND=" l10n_ja? ( app-i18n/man-pages-ja ) @@ -93,16 +86,10 @@ unset lang src_unpack() { if [[ ${PV} == 9999 ]] ; then git-r3_src_unpack - return - fi - - if [[ ${PV} != *_rc* ]] && ! [[ ${MAN_PAGES_GENTOO_DIST} -eq 1 ]] && use verify-sig ; then - # Upstream sign the decompressed .tar - einfo "Unpacking ${P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" - + unpack man-pages-gentoo-${GENTOO_PATCH}.tar.bz2 + elif [[ ${PV} != *_rc* ]] && ! [[ ${MAN_PAGES_GENTOO_DIST} -eq 1 ]] && use verify-sig ; then + verify-sig_uncompress_verify_unpack "${DISTDIR}"/${P}.tar.xz \ + "${DISTDIR}"/${P}.tar.sign unpack man-pages-gentoo-${GENTOO_PATCH}.tar.bz2 else default @@ -112,20 +99,29 @@ src_unpack() { src_prepare() { default + # installed by sys-libs/libxcrypt + rm man/man3/crypt{,_r}.3 || die + # passwd.5 installed by sys-apps/shadow, bug #776787 - rm man5/passwd.5 || die + rm man/man5/passwd.5 || die +} + +src_configure() { + export prefix="${EPREFIX}/usr" } -src_compile() { :; } +src_compile() { + emake -R +} src_test() { # We don't use the 'check' target right now because of known errors # https://lore.kernel.org/linux-man/0dfd5319-2d22-a8ad-f085-d635eb6d0678@gmail.com/T/#t - emake lint-man-tbl + emake -R lint-man-tbl } src_install() { - emake install prefix="${EPREFIX}"/usr DESTDIR="${D}" + emake -R DESTDIR="${D}" install dodoc README Changes* # Override with Gentoo specific or additional Gentoo pages From d72d4afc62e6a42a9bf747f360393e39ca122544 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:16 +0000 Subject: [PATCH 204/291] sys-apps/pciutils: Sync with Gentoo It's from Gentoo commit d2410fe5f87c799ddd3b0a4e5ecfb2b0eeb2b630. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-apps/pciutils/Manifest | 1 + .../sys-apps/pciutils/pciutils-3.14.0.ebuild | 11 ++++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/pciutils/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/pciutils/Manifest index cea49dff765..175bdef8fad 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/pciutils/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/pciutils/Manifest @@ -1,2 +1,3 @@ DIST pciutils-3.13.0.tar.gz 672999 BLAKE2B d779ca0fd8c96a54bf81f6234d6a38eae2882d39dd1a52a508246bc46b5f4ac9318bbca20266378ec3917e72fe6ec30c47b1b5e9df4e86d3f59cbe860e2ac70e SHA512 73f99b5c2251676368738e0dc9d82529f3516966f1658a96149768b9775a0e177d630512dc7ea33087a7fcb960a3498f0c4c1a9f7233ec1cf242b9ab087fa0d1 DIST pciutils-3.14.0.tar.gz 722554 BLAKE2B 3ab270c4523cc1968d5f3a03d2564eff5560b60eb8307bafe44ee240a6636dc676fbf0a28effe3c9abc99bfc86a975aea066d634a5e5adaffb2c63ba226511d9 SHA512 35cabfd8af8b0673440c7eba77fae8cad295f2618376148233b735ac032499e23967f863d48656d4c6f38b250db013747c92ed9719a57cd4e2df3065056f6c27 +DIST pciutils-3.14.0.tar.gz.asc 228 BLAKE2B 315f758e9b3a7e17cac14371bebd889e6725ba4bb223f2cfa690a6dbccea106b63fbaff36f098ec492173b6641ec49531d9284ec4ecd48fab29b800b8e9482b4 SHA512 0de5196d96d802a72eb2a5de953af67370424b03a72be91aa5a7240a69b939900db5aa48609d52e1c38f5609e6c40c20644f9d1853708e0fd55ea105efe88ab1 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/pciutils/pciutils-3.14.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/pciutils/pciutils-3.14.0.ebuild index 56ac9874694..77ed5f46352 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/pciutils/pciutils-3.14.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/pciutils/pciutils-3.14.0.ebuild @@ -1,13 +1,17 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit toolchain-funcs multilib-minimal flag-o-matic +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/martinmares.asc +inherit toolchain-funcs multilib-minimal flag-o-matic verify-sig DESCRIPTION="Various utilities dealing with the PCI bus" HOMEPAGE="https://mj.ucw.cz/sw/pciutils/ https://git.kernel.org/?p=utils/pciutils/pciutils.git" -SRC_URI="https://mj.ucw.cz/download/linux/pci/${P}.tar.gz" +SRC_URI=" + https://mj.ucw.cz/download/linux/pci/${P}.tar.gz + verify-sig? ( https://mj.ucw.cz/download/linux/pci/${P}.tar.gz.sign -> ${P}.tar.gz.asc ) +" LICENSE="GPL-2" SLOT="0" @@ -32,6 +36,7 @@ RDEPEND=" BDEPEND=" || ( >=sys-devel/binutils-2.37:* llvm-core/lld sys-devel/native-cctools ) kmod? ( virtual/pkgconfig ) + verify-sig? ( sec-keys/openpgp-keys-martinmares ) " MULTILIB_WRAPPED_HEADERS=( /usr/include/pci/config.h ) From 2bf535756575fda5f8efbcc5950fc8fd594a39c8 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:16 +0000 Subject: [PATCH 205/291] sys-apps/pcsc-lite: Sync with Gentoo It's from Gentoo commit a8a86dfb03b98f37ac0e3463396dc3be5801055c. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-apps/pcsc-lite/Manifest | 3 +- .../files/pcsc-lite-1.8.11-polkit-pcscd.patch | 20 ----------- .../files/pcsc-lite-1.9.8-systemd-user.patch | 18 ---------- ...2.3-change-setup-spy-script-location.patch | 13 -------- .../pcsc-lite/pcsc-lite-2.4.0-r1.ebuild | 4 +-- ...te-2.3.3.ebuild => pcsc-lite-2.4.1.ebuild} | 33 +++++++++++-------- 6 files changed, 24 insertions(+), 67 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/files/pcsc-lite-1.8.11-polkit-pcscd.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/files/pcsc-lite-1.9.8-systemd-user.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/files/pcsc-lite-2.2.3-change-setup-spy-script-location.patch rename sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/{pcsc-lite-2.3.3.ebuild => pcsc-lite-2.4.1.ebuild} (78%) diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/Manifest index e02fe605c08..cb5c29950b7 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/Manifest @@ -1,2 +1,3 @@ -DIST pcsc-lite-2.3.3.tar.xz 210592 BLAKE2B 939689bde24e53d8ed1b3146c4d379192eb7c7ceb1758b66e05c1264a983e3839cacb59b69f8a852e5fc05912c3da3cc911df9ebd360fbde3f0eb88e5a52341a SHA512 96a62364eb0221828a5e3f65d500f8b83acc27cdc0c40fad2b0f807b399c1a465524421175bd7c05fa4ece152f9afe7f8b60c57ee20fa948af7d8899543a2d12 DIST pcsc-lite-2.4.0.tar.xz 211940 BLAKE2B 2211cf0cfde8006ece93e0704b2ffbeaeea827b43eaaabfb2abb1061b76d18b407779d509f2de07784a35ae6ca254c107339c51a1d10b17ae346c387900345b3 SHA512 5b662f3902fc352cdf83b0f819fa955781cc755a977bf78a97c86178ba6c66d9c7c489af9ccaf8e534255951c12e88e80f6684af4aed3f0dcd97bba23eec5cd3 +DIST pcsc-lite-2.4.1.tar.xz 212412 BLAKE2B c26f0e4999a35588b30ed6835c1bb12d7cec96e34a7ee2e71a29f601eb8b64ce59963fd2a2645a646d2f6432fc4de27177c01536d3d36c04f5a961b9888f665c SHA512 e35924b0f983aaa4b0b5f7b9e59d09609ea8c83e94137c8c985e5d6fff1ca9c6a52a742306edd3cd72f5c14fc9cb0a22b86c0f3f23f4836d3d01a2ccb8f1b4e5 +DIST pcsc-lite-2.4.1.tar.xz.asc 833 BLAKE2B 4a80654899695d3ee171ff2f756df0292648d6810248ffef3237af475b22c5d555b302c1a94e75804818bb02087e6809bcaecd34f74de95b52e97d79df07b2cc SHA512 2fcb3fa97e1a002ec1228719447f0d904b2acf6449a2eea90380aa1cfaa0bfe890b194969cfb83edf9e117c9d7f41c70c24ca9303c4afd0d631766a10521a107 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/files/pcsc-lite-1.8.11-polkit-pcscd.patch b/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/files/pcsc-lite-1.8.11-polkit-pcscd.patch deleted file mode 100644 index e7a7b515820..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/files/pcsc-lite-1.8.11-polkit-pcscd.patch +++ /dev/null @@ -1,20 +0,0 @@ -Index: pcsc-lite-1.8.11/doc/org.debian.pcsc-lite.policy -=================================================================== ---- pcsc-lite-1.8.11.orig/doc/org.debian.pcsc-lite.policy -+++ pcsc-lite-1.8.11/doc/org.debian.pcsc-lite.policy -@@ -15,6 +15,7 @@ - <allow_inactive>auth_admin</allow_inactive> - <allow_active>yes</allow_active> - </defaults> -+ <annotate key="org.freedesktop.policykit.owner">unix-user:pcscd</annotate> - </action> - - <action id="org.debian.pcsc-lite.access_card"> -@@ -25,6 +26,7 @@ - <allow_inactive>auth_admin</allow_inactive> - <allow_active>yes</allow_active> - </defaults> -+ <annotate key="org.freedesktop.policykit.owner">unix-user:pcscd</annotate> - </action> - - </policyconfig> diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/files/pcsc-lite-1.9.8-systemd-user.patch b/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/files/pcsc-lite-1.9.8-systemd-user.patch deleted file mode 100644 index 4d64c5c032f..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/files/pcsc-lite-1.9.8-systemd-user.patch +++ /dev/null @@ -1,18 +0,0 @@ -Don't run the daemon as root -https://bugs.gentoo.org/545390 - ---- a/etc/pcscd.service.in -+++ b/etc/pcscd.service.in -@@ -4,9 +4,12 @@ - Documentation=man:pcscd(8) - - [Service] -+PIDFile=/run/pcscd/pcscd.pid - ExecStart=@sbindir_exp@/pcscd --foreground --auto-exit $PCSCD_ARGS - ExecReload=@sbindir_exp@/pcscd --hotplug - EnvironmentFile=-@sysconfdir@/default/pcscd -+User=pcscd -+Group=pcscd - - [Install] - Also=pcscd.socket diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/files/pcsc-lite-2.2.3-change-setup-spy-script-location.patch b/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/files/pcsc-lite-2.2.3-change-setup-spy-script-location.patch deleted file mode 100644 index 035c49b653a..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/files/pcsc-lite-2.2.3-change-setup-spy-script-location.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/meson.build b/meson.build -index acb51ddf..0c7b3a8f 100644 ---- a/meson.build -+++ b/meson.build -@@ -202,7 +202,7 @@ install_data('src/spy/pcsc-spy', - install_dir : get_option('bindir')) - - install_data('src/spy/setup_spy.sh', -- install_dir : 'share/doc/pcsc-lite') -+ install_dir : get_option('datadir') / 'doc' / meson.project_name()+'-'+meson.project_version()) - - run_command('pod2man', - ['--date=2024-01-01', 'src/spy/pcsc-spy.pod', 'pcsc-spy.1'], diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/pcsc-lite-2.4.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/pcsc-lite-2.4.0-r1.ebuild index bc378d25eb5..f96a1d3e288 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/pcsc-lite-2.4.0-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/pcsc-lite-2.4.0-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -15,7 +15,7 @@ SRC_URI="https://pcsclite.apdu.fr/files/${P}.tar.xz" # upstream. LICENSE="BSD GPL-3+ BSD-2 ISC GPL-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" # This is called libusb so that it doesn't fool people in thinking that # it is _required_ for USB support. Otherwise they'll disable udev and # that's going to be worse. diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/pcsc-lite-2.3.3.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/pcsc-lite-2.4.1.ebuild similarity index 78% rename from sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/pcsc-lite-2.3.3.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/pcsc-lite-2.4.1.ebuild index e06a0399a2a..57149a23351 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/pcsc-lite-2.3.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/pcsc-lite/pcsc-lite-2.4.1.ebuild @@ -1,21 +1,24 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PYTHON_COMPAT=( python3_{10..13} ) - -inherit meson-multilib python-single-r1 tmpfiles udev +PYTHON_COMPAT=( python3_{11..13} ) +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/ludovicrousseau.asc +inherit meson-multilib python-single-r1 tmpfiles udev verify-sig DESCRIPTION="PC/SC Architecture smartcard middleware library" HOMEPAGE="https://pcsclite.apdu.fr https://github.com/LudovicRousseau/PCSC" -SRC_URI="https://pcsclite.apdu.fr/files/${P}.tar.xz" +SRC_URI=" + https://pcsclite.apdu.fr/files/${P}.tar.xz + verify-sig? ( https://pcsclite.apdu.fr/files/${P}.tar.xz.asc ) +" # GPL-2 is there for the init script; everything else comes from # upstream. LICENSE="BSD GPL-3+ BSD-2 ISC GPL-2" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" # This is called libusb so that it doesn't fool people in thinking that # it is _required_ for USB support. Otherwise they'll disable udev and # that's going to be worse. @@ -31,17 +34,21 @@ DEPEND=" acct-group/openct acct-group/pcscd acct-user/pcscd - ${PYTHON_DEPS}" -RDEPEND="${DEPEND} - selinux? ( sec-policy/selinux-pcscd )" + ${PYTHON_DEPS} +" +RDEPEND=" + ${DEPEND} + selinux? ( sec-policy/selinux-pcscd ) +" BDEPEND=" app-alternatives/lex - virtual/pkgconfig" + virtual/pkgconfig + verify-sig? ( sec-keys/openpgp-keys-ludovicrousseau ) +" PATCHES=( - "${FILESDIR}"/${PN}-1.8.11-polkit-pcscd.patch - "${FILESDIR}"/${PN}-1.9.8-systemd-user.patch - "${FILESDIR}"/${PN}-2.2.3-change-setup-spy-script-location.patch + "${FILESDIR}"/${PN}-2.4.0-change-setup-spy-script-location.patch + "${FILESDIR}"/${PN}-2.4.0-systemd-sysusers-fixup.patch ) multilib_src_configure() { From ff5b4690037b1500ffb6f47468c08b7b6f9633aa Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:16 +0000 Subject: [PATCH 206/291] sys-apps/pkgcore: Sync with Gentoo It's from Gentoo commit 92b19c67bdd0cf4cc402273c85980ec5121d70e1. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-apps/pkgcore/pkgcore-0.12.32.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/pkgcore/pkgcore-0.12.32.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/pkgcore/pkgcore-0.12.32.ebuild index b166d488946..0ae68ba797d 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/pkgcore/pkgcore-0.12.32.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/pkgcore/pkgcore-0.12.32.ebuild @@ -12,7 +12,7 @@ if [[ ${PV} == *9999 ]] ; then https://github.com/pkgcore/pkgcore.git" inherit git-r3 else - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" inherit pypi fi From fc13f70133af793c270e45da594b6a15233e1659 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:17 +0000 Subject: [PATCH 207/291] sys-apps/portage: Sync with Gentoo It's from Gentoo commit 9beb91d485ff4f66a69b9a0cf58fd3b866b22eeb. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-apps/portage/Manifest | 5 +- ...restore-the-missing-option-arg-for-c.patch | 40 --- ...oise-from-objcopy-if-build-ID-sectio.patch | 66 +++++ .../portage/portage-3.0.69.3-r3.ebuild | 237 ------------------ ...3.0.74.ebuild => portage-3.0.77-r1.ebuild} | 8 +- ....73-r2.ebuild => portage-3.0.77-r3.ebuild} | 9 +- ...ge-3.0.75.ebuild => portage-3.0.77.ebuild} | 2 +- .../sys-apps/portage/portage-9999.ebuild | 5 +- 8 files changed, 82 insertions(+), 290 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/portage/files/0001-emerge-webrsync-restore-the-missing-option-arg-for-c.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/portage/files/0001-estrip-silence-noise-from-objcopy-if-build-ID-sectio.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.69.3-r3.ebuild rename sdk_container/src/third_party/portage-stable/sys-apps/portage/{portage-3.0.74.ebuild => portage-3.0.77-r1.ebuild} (96%) rename sdk_container/src/third_party/portage-stable/sys-apps/portage/{portage-3.0.73-r2.ebuild => portage-3.0.77-r3.ebuild} (96%) rename sdk_container/src/third_party/portage-stable/sys-apps/portage/{portage-3.0.75.ebuild => portage-3.0.77.ebuild} (99%) diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/portage/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/portage/Manifest index 9bcee6444ab..b371f106435 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/portage/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/portage/Manifest @@ -1,5 +1,2 @@ -DIST portage-3.0.69.3.tar.bz2 1207066 BLAKE2B 81786a02052cc8dac2e0dc1875c3e1dba37e84e32ad6620cddb5b4a2595ae4c924b9c222cfced9dbc0c7efdcac2efb2459f5b16cfa9d5df226aef7e27041e03b SHA512 7a71e98c6a2b76dfe6e38b96d34107e5fd26193b3116cc585ecb333129dc6995bde1db0fd7435435e737cd81b019b76e104b1e02b0dda93efd22f37b7defebe0 DIST portage-3.0.72.tar.bz2 1211406 BLAKE2B ccf702bc56bab905d6ec9b99175bb86be95709761d370afeeb8edf9aa563869d8d8c98256224a054697a996a7b97dc9a3dfc8e993760aeec13a0ac4705dc78c5 SHA512 c58f5216b3587e1cfcf1998e719f847e1ba1938b7aeb4fcd9fb4e22e1cba68a9e3b98125c1c1386fc03954fc90559d2647a3a00ae2ab4b74692ee6a1d81eea66 -DIST portage-3.0.73.tar.bz2 1214430 BLAKE2B 2ef6a6e559570dc99b277874e52664d8f8b5be41882cee63e95f8bdf85d81ba9100c565b309144e6077d80d255a40904340af395b9cb3d1134e9c80a4420737d SHA512 e2f38ab22f1470ebe58f7dfcedebf72d4c104b0f17481f7a90b1c22c95042bc05eac913fdc334f509f8940c4a530f4f8d9ba606676f3193ac61d890303670ed8 -DIST portage-3.0.74.tar.bz2 1219291 BLAKE2B f5e9ac4e916590a5f5492174c53749c7b7fadf017c364415410a450c62eb4544cba0adf93fa2bbe68c99d9e14d715bc4faabf1ca2d478a5fe0fac42ffbadec65 SHA512 7cb08313db3fa1e61a2d3d5440f603eeb46ee317e6a94c3d70104c60a23b9fac1f5e95be2b271abff47722df3132706e4c43db6bf7645ca5c7c7a9447954ef33 -DIST portage-3.0.75.tar.bz2 1221419 BLAKE2B 79f9e5ac480015e863585873697ec71f18288ed654d8ebfd0af140c32ccb81a47a1449b68906f122550917941c42c886d74536d184942a42beeb456b655013a0 SHA512 da11557e6d472f4c3c8aa5dcc8a23d2fe08b16fe5772ddb07dab3ff6b5593d6c8f8c762bdcca0e3905fd252b747cead36d1a3fa2b381fc84a0c9b0b8adcc48bf +DIST portage-3.0.77.tar.bz2 1222765 BLAKE2B 062b99059582caf323001b14e74d5ad762aeb4ece9750dcd548b4eddacabea60044dbb8006911c458c2550b7f1f86a5e91c5f0f67b37a3c839a1d7bac751376c SHA512 bae4d30d53473402a90c21923c71e81463e0f1afc1300f194d67b1af109eca71bd52ca82a1c17881871b9c30a64d584eb0392daab81b38c622cb2384afd195b7 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/portage/files/0001-emerge-webrsync-restore-the-missing-option-arg-for-c.patch b/sdk_container/src/third_party/portage-stable/sys-apps/portage/files/0001-emerge-webrsync-restore-the-missing-option-arg-for-c.patch deleted file mode 100644 index 3dfe086566b..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/portage/files/0001-emerge-webrsync-restore-the-missing-option-arg-for-c.patch +++ /dev/null @@ -1,40 +0,0 @@ -From b876d9b1c9ce58b8ba2440cf61bca7555a0dfb9b Mon Sep 17 00:00:00 2001 -Message-ID: <b876d9b1c9ce58b8ba2440cf61bca7555a0dfb9b.1761453668.git.sam@gentoo.org> -From: Kerin Millar <kfm@plushkava.net> -Date: Sun, 26 Oct 2025 02:46:02 +0000 -Subject: [PATCH] emerge-webrsync: restore the missing option-arg for curl - --continue-at - -The curl(1) user-agent supports a --continue-at option, which requires -an option-argument. Where the option-argument is <hyphen-dash>, curl -will automatically try to determine how to resume a transfer. Further, -emerge-webrsync forcibly injects the option if it detects that the value -of FETCHCOMMAND specifies a curl command. - -However, the option-argument was unintentionally removed during a bout -of re-factoring and (otherwise unrelated) bug fixing. This went -unnoticed until now because wget is more commonly used. Restore it. - -Fixes: f3af8263ce544750a9e9a155b1264d07a86677d4 -Signed-off-by: Kerin Millar <kfm@plushkava.net> -Signed-off-by: Sam James <sam@gentoo.org> ---- - bin/emerge-webrsync | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/bin/emerge-webrsync b/bin/emerge-webrsync -index 53a3a12715..cca63ebb35 100755 ---- a/bin/emerge-webrsync -+++ b/bin/emerge-webrsync -@@ -217,7 +217,7 @@ get_fetchcommand() { - fi - ;; - curl) -- opts="--continue-at -f -S" -+ opts="--continue-at - -f -S" - if (( opt[quiet] )); then - opts+=" -s" - fi --- -2.51.1 - diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/portage/files/0001-estrip-silence-noise-from-objcopy-if-build-ID-sectio.patch b/sdk_container/src/third_party/portage-stable/sys-apps/portage/files/0001-estrip-silence-noise-from-objcopy-if-build-ID-sectio.patch new file mode 100644 index 00000000000..5afac81af8f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/portage/files/0001-estrip-silence-noise-from-objcopy-if-build-ID-sectio.patch @@ -0,0 +1,66 @@ +From 71dd5e89eaa5868418e13da6605fe3873939c60b Mon Sep 17 00:00:00 2001 +Message-ID: <71dd5e89eaa5868418e13da6605fe3873939c60b.1771041192.git.sam@gentoo.org> +From: Sam James <sam@gentoo.org> +Date: Sat, 14 Feb 2026 03:44:08 +0000 +Subject: [PATCH] estrip: silence noise from objcopy if build ID section + doesn't exist + +This is a tiny fix suitable for backporting into the ebuild until +the refactoring for estrip lands. + +It avoids noise when there's no build ID section to update w/ a salted +replacement. + +Bug: https://bugs.gentoo.org/968220 +Signed-off-by: Sam James <sam@gentoo.org> +--- + bin/estrip | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/bin/estrip b/bin/estrip +index 6e2a5b623..54c5a6e33 100755 +--- a/bin/estrip ++++ b/bin/estrip +@@ -171,7 +171,7 @@ save_elf_debug() { + + # We need to process the splitdebug file too + # if we're doing it at this late juncture (bug #968220) +- "${name_of[objcopy]}" --dump-section .note.gnu.build-id="${inode_link}_buildid" "${src}" \ ++ "${name_of[objcopy]}" --dump-section .note.gnu.build-id="${inode_link}_buildid" "${src}" 2>/dev/null \ + && "${name_of[objcopy]}" --update-section .note.gnu.build-id="${inode_link}_buildid" "${dst}" + rm -f "${inode_link}_buildid" + elif ! contains_word buildid "${warned_for[debugedit]}"; then +-- +2.53.0 + +From e87494699b30eb9458cb0fb9e05479389904dcb3 Mon Sep 17 00:00:00 2001 +Message-ID: <e87494699b30eb9458cb0fb9e05479389904dcb3.1771352319.git.sam@gentoo.org> +From: Sam James <sam@gentoo.org> +Date: Sun, 15 Feb 2026 14:46:34 +0000 +Subject: [PATCH] estrip: silence (further) noise from objcopy if build ID + section doesn't exist + +Followup to 71dd5e89eaa5868418e13da6605fe3873939c60b. + +Bug: https://bugs.gentoo.org/968220 +Signed-off-by: Sam James <sam@gentoo.org> +--- + bin/estrip | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/bin/estrip b/bin/estrip +index 54c5a6e33..526a1f203 100755 +--- a/bin/estrip ++++ b/bin/estrip +@@ -172,7 +172,7 @@ save_elf_debug() { + # We need to process the splitdebug file too + # if we're doing it at this late juncture (bug #968220) + "${name_of[objcopy]}" --dump-section .note.gnu.build-id="${inode_link}_buildid" "${src}" 2>/dev/null \ +- && "${name_of[objcopy]}" --update-section .note.gnu.build-id="${inode_link}_buildid" "${dst}" ++ && "${name_of[objcopy]}" --update-section .note.gnu.build-id="${inode_link}_buildid" "${dst}" 2>/dev/null + rm -f "${inode_link}_buildid" + elif ! contains_word buildid "${warned_for[debugedit]}"; then + warned_for[debugedit]+=" buildid" +-- +2.53.0 + diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.69.3-r3.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.69.3-r3.ebuild deleted file mode 100644 index f3b28f4bdc8..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.69.3-r3.ebuild +++ /dev/null @@ -1,237 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# py3.14: bug #957070 -PYTHON_COMPAT=( python3_{12..13} ) -PYTHON_REQ_USE='bzip2(+),threads(+)' -TMPFILES_OPTIONAL=1 - -inherit meson linux-info python-r1 tmpfiles - -DESCRIPTION="The package management and distribution system for Gentoo" -HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage" - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI=" - https://anongit.gentoo.org/git/proj/portage.git - https://github.com/gentoo/portage.git - " - inherit git-r3 -else - SRC_URI="https://gitweb-cdn-origin.gentoo.org/proj/portage.git/snapshot/${P}.tar.bz2" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -fi - -LICENSE="GPL-2" -SLOT="0" -IUSE="apidoc build doc gentoo-dev +ipc +native-extensions +rsync-verify selinux test xattr" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" -RESTRICT="!test? ( test )" - -BDEPEND=" - ${PYTHON_DEPS} - >=app-arch/tar-1.27 - >=dev-build/meson-1.3.0-r1 - >=sys-apps/sed-4.0.5 - sys-devel/patch - !build? ( $(python_gen_impl_dep 'ssl(+)') ) - apidoc? ( - dev-python/sphinx[${PYTHON_USEDEP}] - dev-python/sphinx-epytext[${PYTHON_USEDEP}] - ) - doc? ( - ~app-text/docbook-xml-dtd-4.4 - app-text/xmlto - ) - test? ( - dev-python/pytest-xdist[${PYTHON_USEDEP}] - dev-vcs/git - ) -" -# Require sandbox-2.2 for bug #288863. -# For whirlpool hash, require python[ssl] (bug #425046). -RDEPEND=" - ${PYTHON_DEPS} - acct-user/portage - >=app-arch/tar-1.27 - app-arch/zstd - >=app-misc/pax-utils-0.1.17 - dev-lang/python-exec:2 - >=sys-apps/baselayout-2.9 - >=sys-apps/findutils-4.9 - !build? ( - >=app-admin/eselect-1.2 - app-portage/getuto - >=app-shells/bash-5.0:0 - >=sec-keys/openpgp-keys-gentoo-release-20240703 - >=sys-apps/sed-4.0.5 - rsync-verify? ( - app-alternatives/gpg[ssl(-)] - >=app-portage/gemato-14.5[${PYTHON_USEDEP}] - ) - ) - elibc_glibc? ( >=sys-apps/sandbox-2.2 ) - elibc_musl? ( >=sys-apps/sandbox-2.2 ) - kernel_linux? ( sys-apps/util-linux ) - selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] ) - xattr? ( kernel_linux? ( - >=sys-apps/install-xattr-0.3 - ) ) -" -# coreutils-6.4 rdep is for date format in emerge-webrsync #164532 -# NOTE: FEATURES=installsources requires debugedit and rsync -PDEPEND=" - !build? ( - >=net-misc/rsync-2.6.4 - >=sys-apps/coreutils-6.4 - >=sys-apps/file-5.44-r3 - ) -" - -PATCHES=( - "${FILESDIR}"/0001-emerge-webrsync-restore-the-missing-option-arg-for-c.patch - "${FILESDIR}"/0001-bin-emerge-ebuild-don-t-define-signal-handlers-in-gl.patch -) - -pkg_pretend() { - local CONFIG_CHECK="~IPC_NS ~PID_NS ~NET_NS ~UTS_NS" - - check_extra_config -} - -src_prepare() { - default - - if use prefix-guest; then - sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \ - -e "s|^\\[gentoo\\]|[gentoo_prefix]|" \ - -e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \ - -i cnf/repos.conf || die "sed failed" - fi -} - -src_configure() { - local code_only=false - python_foreach_impl my_src_configure -} - -my_src_configure() { - local emesonargs=( - -Dcode-only=${code_only} - -Deprefix="${EPREFIX}" - -Dportage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" - -Ddocdir="${EPREFIX}/usr/share/doc/${PF}" - $(meson_use doc) - $(meson_use apidoc) - $(meson_use gentoo-dev) - $(meson_use ipc) - $(meson_use xattr) - ) - - if use native-extensions && [[ "${EPYTHON}" != pypy3* ]] ; then - emesonargs+=( -Dnative-extensions=true ) - else - emesonargs+=( -Dnative-extensions=false ) - fi - - if use build; then - emesonargs+=( -Drsync-verify=false ) - else - emesonargs+=( $(meson_use rsync-verify) ) - fi - - meson_src_configure - code_only=true -} - -src_compile() { - python_foreach_impl meson_src_compile -} - -src_test() { - local EPYTEST_XDIST=1 - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - python_foreach_impl epytest -} - -src_install() { - python_foreach_impl my_src_install - dotmpfiles "${FILESDIR}"/portage-{ccache,tmpdir}.conf - - local scripts - mapfile -t scripts < <(awk '/^#!.*python/ {print FILENAME} {nextfile}' "${ED}"/usr/{bin,sbin}/* || die) - python_replicate_script "${scripts[@]}" -} - -my_src_install() { - local pydirs=( - "${D}$(python_get_sitedir)" - "${ED}/usr/lib/portage/${EPYTHON}" - ) - - meson_src_install - python_fix_shebang "${pydirs[@]}" - python_optimize "${pydirs[@]}" -} - -pkg_preinst() { - if ! use build && [[ -z ${ROOT} ]]; then - python_setup - local sitedir=$(python_get_sitedir) - [[ -d ${D}${sitedir} ]] || die "${D}${sitedir}: No such directory" - env -u DISTDIR \ - -u PORTAGE_OVERRIDE_EPREFIX \ - -u PORTAGE_REPOSITORIES \ - -u PORTDIR \ - -u PORTDIR_OVERLAY \ - PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \ - ED="${ED}" \ - "${PYTHON}" -m portage._compat_upgrade.default_locations || die - - env -u BINPKG_COMPRESS -u PORTAGE_REPOSITORIES \ - PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \ - ED="${ED}" \ - "${PYTHON}" -m portage._compat_upgrade.binpkg_compression || die - - env -u FEATURES -u PORTAGE_REPOSITORIES \ - PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \ - ED="${ED}" \ - "${PYTHON}" -m portage._compat_upgrade.binpkg_multi_instance || die - - env -u BINPKG_FORMAT \ - PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \ - ED="${ED}" \ - "${PYTHON}" -m portage._compat_upgrade.binpkg_format || die - fi - - # elog dir must exist to avoid logrotate error for bug #415911. - # This code runs in preinst in order to bypass the mapping of - # portage:portage to root:root which happens after src_install. - keepdir /var/log/portage/elog - # This is allowed to fail if the user/group are invalid for prefix users. - if chown portage:portage "${ED}"/var/log/portage{,/elog} 2>/dev/null ; then - chmod g+s,ug+rwx "${ED}"/var/log/portage{,/elog} - fi - - if has_version "<${CATEGORY}/${PN}-2.3.77"; then - elog "The emerge --autounmask option is now disabled by default, except for" - elog "portions of behavior which are controlled by the --autounmask-use and" - elog "--autounmask-license options. For backward compatibility, previous" - elog "behavior of --autounmask=y and --autounmask=n is entirely preserved." - elog "Users can get the old behavior simply by adding --autounmask to the" - elog "make.conf EMERGE_DEFAULT_OPTS variable. For the rationale for this" - elog "change, see https://bugs.gentoo.org/658648." - fi -} - -pkg_postinst() { - # Warn about obsolete "enotice" script, bug #867010 - local bashrc=${EROOT}/etc/portage/profile/profile.bashrc - if [[ -e ${bashrc} ]] && grep -q enotice "${bashrc}"; then - eerror "Obsolete 'enotice' script detected!" - eerror "Please remove this from ${bashrc} to avoid problems." - eerror "See bug 867010 for more details." - fi -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.74.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.77-r1.ebuild similarity index 96% rename from sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.74.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.77-r1.ebuild index 25c5a69badf..ebc2bac9754 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.74.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.77-r1.ebuild @@ -20,7 +20,7 @@ if [[ ${PV} == 9999 ]] ; then inherit git-r3 else SRC_URI="https://gitweb.gentoo.org/proj/portage.git/snapshot/${P}.tar.bz2" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" fi LICENSE="GPL-2" @@ -53,7 +53,7 @@ BDEPEND=" # For whirlpool hash, require python[ssl] (bug #425046). RDEPEND=" ${PYTHON_DEPS} - acct-user/portage + >=acct-user/portage-0-r4 >=app-arch/tar-1.27 app-arch/zstd >=app-misc/pax-utils-0.1.17 @@ -89,6 +89,10 @@ PDEPEND=" ) " +PATCHES=( + "${FILESDIR}"/0001-estrip-silence-noise-from-objcopy-if-build-ID-sectio.patch +) + pkg_pretend() { local CONFIG_CHECK="~IPC_NS ~PID_NS ~NET_NS ~UTS_NS" diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.73-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.77-r3.ebuild similarity index 96% rename from sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.73-r2.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.77-r3.ebuild index 9c5c35bd808..ce54cfa4db4 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.73-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.77-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -20,7 +20,7 @@ if [[ ${PV} == 9999 ]] ; then inherit git-r3 else SRC_URI="https://gitweb.gentoo.org/proj/portage.git/snapshot/${P}.tar.bz2" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" fi LICENSE="GPL-2" @@ -53,7 +53,7 @@ BDEPEND=" # For whirlpool hash, require python[ssl] (bug #425046). RDEPEND=" ${PYTHON_DEPS} - acct-user/portage + >=acct-user/portage-0-r4 >=app-arch/tar-1.27 app-arch/zstd >=app-misc/pax-utils-0.1.17 @@ -64,6 +64,7 @@ RDEPEND=" >=app-admin/eselect-1.2 app-portage/getuto >=app-shells/bash-5.3:0 + dev-util/debugedit >=sec-keys/openpgp-keys-gentoo-release-20240703 >=sys-apps/sed-4.0.5 rsync-verify? ( @@ -90,7 +91,7 @@ PDEPEND=" " PATCHES=( - "${FILESDIR}"/0001-bin-emerge-ebuild-don-t-define-signal-handlers-in-gl.patch + "${FILESDIR}"/0001-estrip-silence-noise-from-objcopy-if-build-ID-sectio.patch ) pkg_pretend() { diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.75.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.77.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.75.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.77.ebuild index 25c5a69badf..21fad59014b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.75.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.77.ebuild @@ -53,7 +53,7 @@ BDEPEND=" # For whirlpool hash, require python[ssl] (bug #425046). RDEPEND=" ${PYTHON_DEPS} - acct-user/portage + >=acct-user/portage-0-r4 >=app-arch/tar-1.27 app-arch/zstd >=app-misc/pax-utils-0.1.17 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-9999.ebuild index 45d6deec30e..0e0def53378 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -53,7 +53,7 @@ BDEPEND=" # For whirlpool hash, require python[ssl] (bug #425046). RDEPEND=" ${PYTHON_DEPS} - acct-user/portage + >=acct-user/portage-0-r4 >=app-arch/tar-1.27 app-arch/zstd >=app-misc/pax-utils-0.1.17 @@ -64,6 +64,7 @@ RDEPEND=" >=app-admin/eselect-1.2 app-portage/getuto >=app-shells/bash-5.3:0 + dev-util/debugedit >=sec-keys/openpgp-keys-gentoo-release-20240703 >=sys-apps/sed-4.0.5 rsync-verify? ( From 38c0a339781d113ae1d1bf57f482546a0e99c26f Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:17 +0000 Subject: [PATCH 208/291] sys-apps/pv: Sync with Gentoo It's from Gentoo commit 553c49fca22d69829909020a092ab827ea0e5b48. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../third_party/portage-stable/sys-apps/pv/pv-1.10.3.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/pv/pv-1.10.3.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/pv/pv-1.10.3.ebuild index 5aaa0b42605..4a382c15cb5 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/pv/pv-1.10.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/pv/pv-1.10.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -18,7 +18,7 @@ else verify-sig? ( https://ivarch.com/s/${P}.tar.gz.txt -> ${P}.tar.gz.asc ) " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86 ~x64-macos" fi LICENSE="GPL-3+" From f9dbe8e257c20072afc3eaa3192ec03defb4eda7 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:21 +0000 Subject: [PATCH 209/291] sys-apps/shadow: Sync with Gentoo It's from Gentoo commit eb83beb29f637429a9b2fde94824ca78059d5f35. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-apps/shadow/Manifest | 6 +- .../files/shadow-4.19.0-rc1-SIZE_MAX.patch | 37 --- ...4.19.0_rc1.ebuild => shadow-4.19.2.ebuild} | 8 +- .../sys-apps/shadow/shadow-4.19.3.ebuild | 262 ++++++++++++++++++ 4 files changed, 268 insertions(+), 45 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/shadow/files/shadow-4.19.0-rc1-SIZE_MAX.patch rename sdk_container/src/third_party/portage-stable/sys-apps/shadow/{shadow-4.19.0_rc1.ebuild => shadow-4.19.2.ebuild} (97%) create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/shadow/shadow-4.19.3.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/shadow/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/shadow/Manifest index d8715e60722..08f98f36a34 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/shadow/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/shadow/Manifest @@ -1,4 +1,6 @@ DIST shadow-4.14.8.tar.xz 1806352 BLAKE2B a6ed45e44560c68baec97072399c106060be859a0f9514da2e5b0ec373e5b9c9f54b402132f39c20401496a5b3faeaa0bc90e1b9f02dd2e3b3ffc7389d0745bb SHA512 6f98ef412874f91cfa3f08877f3fe058d725636705b07d473aa1ea44cb6864059701bd11513caf692d270a7ed8ab1956e04421e53dfb8c74e925b8ec12ab8634 DIST shadow-4.14.8.tar.xz.asc 833 BLAKE2B 1b8b8f3f36e06c1dda0a4e0d1508b1ad0ef85f0fa993a92a583831687076ba22d05f47109d56c1e740b60632c3bbeeb6c8cc001e41f46b1a2f9177ce62854f8c SHA512 1db2647babe3f434204c93e7700ff6a0ece078f6c5adb96ae0c0ac9d82a862835c4ab8afb37b0ffc80cf62e9a59f1ba33a92ff454e7ae0ca2aa535b19627615e -DIST shadow-4.19.0-rc1.tar.xz 2386400 BLAKE2B cc7d09b87d535fe4317fc85a788293fefb5ef4cf1b4a86d4b3499476945c13ee652a17656c88a05efd8031b3bbe9c2aeda3069e9a149b6906f134d690ce2e11e SHA512 cf382d2dd7e9acd991fc5c2c91d4e984ae52ee8ddc9cb688a6c3911627d43ea395fe90f1b8430d0ed8dc240a0ad810c5074e62ef7751052d9680b004a9de04f8 -DIST shadow-4.19.0-rc1.tar.xz.asc 488 BLAKE2B 00968b448d91558117a1958ebd984cd23fdbe1e414230f8c17b3ca98176ffd1768c04fd9afb44eea080f3bcd7a104efe1f8169052329d5a00b987af8cf6f7c4f SHA512 993963f6ef0a9501d4fc2fabfb7d330280b07e916bc61bd254bd1bb8d795166423e4bcbe662a6bad0026f5556becb43d12ed8c99b4ea285b43fffa8264bd1c85 +DIST shadow-4.19.2.tar.xz 2339472 BLAKE2B f2fc64f071e8fe09ed76545abe64e30cff780d7d1c276ebdb05e04ebc36dddb3db86b2537808755049d342e2101247bd76d01c8861b53246f5c81b780952a1e5 SHA512 b03b2fca7bc65dc6b78d465f0b2ab170bb799cbfbdd588b8ae239c1ec99045864302cbd17d27beb1ea0c63ea33370aa28c0231dfb8864e007de21220de8c2f48 +DIST shadow-4.19.2.tar.xz.asc 488 BLAKE2B f2d76a47b5a8d97ce6528bfa0a4f4b0f3b23c434cc4bd8db9dff186e2b014063907c53d358e59c2c8dd4fbaebccfd6b5063150ed79b0b20b0fe719cf6917b7e0 SHA512 2c434fd939a0a2faca76e48ab3dd1c0afac763fa6b5bfc73c859f552335590d60506fe7649b5ff045692fcc7f378f6ba97dfe798c8682286fd4a9a0eaa4c1f81 +DIST shadow-4.19.3.tar.xz 2347720 BLAKE2B 8c9f6faa37bba130364086635c91562bfc786740a0276366d9771aaa289dcbba5cd7550437596e43f91348ab29bab77e9894232feffc8498c4cc1bbd48bec3d3 SHA512 f2b41f8186681eb98dae0da87ed1a1f03327c5005c9d4bf9500801352e318de6f5954dc5b8f30ab9aece728b1efb74b4ff8fb2720acc4c2aaef701331a4a5a05 +DIST shadow-4.19.3.tar.xz.asc 833 BLAKE2B 936a9103b65c3564b1d5f00259965921e7aa1615714b04e783441f2fa79e78c386cf9056758cba4f8c36f740490dedb8acd68d88979cc153bb78d2a800d01156 SHA512 295a6bffefd333a9ea84fa59b368f5c48d0ac5224199624b768087098110b0f0c19bef37f5c474c45277980758dcb6728e8bb17eb7ab1a57603cad41f1dd00ab diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/shadow/files/shadow-4.19.0-rc1-SIZE_MAX.patch b/sdk_container/src/third_party/portage-stable/sys-apps/shadow/files/shadow-4.19.0-rc1-SIZE_MAX.patch deleted file mode 100644 index a5215ac3722..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/shadow/files/shadow-4.19.0-rc1-SIZE_MAX.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 1f01737845d2fcfcc3238988fea2c7e1fc2703b4 Mon Sep 17 00:00:00 2001 -From: Mike Gilbert <floppym@gentoo.org> -Date: Sat, 13 Dec 2025 15:07:02 -0500 -Subject: [PATCH] lib/xgetXXbyYY.c: include stdint.h for SIZE_MAX -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Fixes build failure: -``` -In file included from xgetgrnam.c:40: -xgetXXbyYY.c: In function ‘xgetgrnam’: -xgetXXbyYY.c:83:31: error: ‘SIZE_MAX’ undeclared (first use in this function) - 83 | if (length == SIZE_MAX) { - | ^~~~~~~~ -``` - -Signed-off-by: Mike Gilbert <floppym@gentoo.org> ---- - lib/xgetXXbyYY.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/lib/xgetXXbyYY.c b/lib/xgetXXbyYY.c -index 2c9dbda5..58902120 100644 ---- a/lib/xgetXXbyYY.c -+++ b/lib/xgetXXbyYY.c -@@ -29,6 +29,7 @@ - #include <unistd.h> - #include <stdlib.h> - #include <stdio.h> -+#include <stdint.h> - #include <errno.h> - - #include "alloc/malloc.h" --- -2.52.0 - diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/shadow/shadow-4.19.0_rc1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/shadow/shadow-4.19.2.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/sys-apps/shadow/shadow-4.19.0_rc1.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/shadow/shadow-4.19.2.ebuild index 10655163227..48c05848417 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/shadow/shadow-4.19.0_rc1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/shadow/shadow-4.19.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -20,7 +20,7 @@ S="${WORKDIR}/${MY_P}" LICENSE="BSD GPL-2" # Subslot is for libsubid's SONAME. SLOT="0/5" -#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="acl audit nls pam selinux skey split-usr su systemd test xattr" RESTRICT="!test? ( test )" @@ -59,10 +59,6 @@ BDEPEND=" BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-sergehallyn )" VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/sergehallyn.asc -PATCHES=( - "${FILESDIR}"/shadow-4.19.0-rc1-SIZE_MAX.patch -) - src_prepare() { default elibtoolize diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/shadow/shadow-4.19.3.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/shadow/shadow-4.19.3.ebuild new file mode 100644 index 00000000000..6116aa4a8d9 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/shadow/shadow-4.19.3.ebuild @@ -0,0 +1,262 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Upstream sometimes pushes releases as pre-releases before marking them +# official. Don't keyword the pre-releases! +# Check https://github.com/shadow-maint/shadow/releases. + +inherit libtool pam user-info verify-sig + +DESCRIPTION="Utilities to deal with user accounts" +HOMEPAGE="https://github.com/shadow-maint/shadow" +MY_PV="${PV/_/-}" +MY_P="${PN}-${MY_PV}" +SRC_URI="https://github.com/shadow-maint/shadow/releases/download/${MY_PV}/${MY_P}.tar.xz" +SRC_URI+=" verify-sig? ( https://github.com/shadow-maint/shadow/releases/download/${MY_PV}/${MY_P}.tar.xz.asc )" +S="${WORKDIR}/${MY_P}" + +LICENSE="BSD GPL-2" +# Subslot is for libsubid's SONAME. +SLOT="0/5" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="acl audit nls pam selinux skey split-usr su systemd test xattr" +RESTRICT="!test? ( test )" + +COMMON_DEPEND=" + virtual/libcrypt:= + acl? ( sys-apps/acl:= ) + audit? ( >=sys-process/audit-2.6:= ) + nls? ( virtual/libintl ) + pam? ( sys-libs/pam:= ) + skey? ( sys-auth/skey:= ) + selinux? ( + >=sys-libs/libselinux-1.28:= + sys-libs/libsemanage:= + ) + systemd? ( sys-apps/systemd:= ) + xattr? ( sys-apps/attr:= ) + !<sys-libs/glibc-2.38 +" +DEPEND=" + ${COMMON_DEPEND} + >=sys-kernel/linux-headers-4.14 +" +RDEPEND=" + ${COMMON_DEPEND} + acct-group/shadow + pam? ( >=sys-auth/pambase-20150213 ) + su? ( !sys-apps/util-linux[su(-)] ) +" +BDEPEND=" + acct-group/shadow + app-arch/xz-utils + sys-devel/gettext + test? ( dev-util/cmocka ) +" + +BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-alejandro-colomar-20260122 )" +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/alejandro-colomar.asc + +src_prepare() { + default + elibtoolize +} + +set_login_opt() { + local comment="" opt=${1} val=${2} + if [[ -z ${val} ]]; then + comment="#" + sed -i \ + -e "/^${opt}\>/s:^:#:" \ + etc/login.defs || die + else + sed -i -r \ + -e "/^#?${opt}\>/s:.*:${opt} ${val}:" \ + etc/login.defs || die + fi + local res=$(grep "^${comment}${opt}\>" etc/login.defs) + einfo "${res:-Unable to find ${opt} in etc/login.defs}" +} + +src_configure() { + local myeconfargs=( + # Negate new upstream default of disabling for now + --enable-lastlog + --disable-account-tools-setuid + --disable-static + --with-btrfs + # Use bundled replacements for readpassphrase and freezero + --without-libbsd + --without-group-name-max-length + --without-tcb + --with-bcrypt + --with-yescrypt + $(use_enable nls) + # TODO: wire up upstream for elogind too (bug #931119) + $(use_enable systemd logind) + $(use_with acl) + $(use_with audit) + $(use_with elibc_glibc nscd) + $(use_with pam libpam) + $(use_with selinux) + $(use_with skey) + $(use_with su) + $(use_with xattr attr) + ) + + econf "${myeconfargs[@]}" + + set_login_opt CREATE_HOME yes + if use pam; then + # Comment out login.defs options that pam hates + local opts=( + CHFN_AUTH + CONSOLE + ENV_HZ + ENVIRON_FILE + FAILLOG_ENAB + FTMP_FILE + LASTLOG_ENAB + MAIL_CHECK_ENAB + MOTD_FILE + NOLOGINS_FILE + OBSCURE_CHECKS_ENAB + PASS_ALWAYS_WARN + PASS_CHANGE_TRIES + PASS_MIN_LEN + PORTTIME_CHECKS_ENAB + QUOTAS_ENAB + SU_WHEEL_ONLY + ) + local opt sed_args=() + for opt in "${opts[@]}"; do + set_login_opt ${opt} + sed_args+=( -e "/^#${opt}\>/b pamnote" ) + done + sed_args+=( + -e 'b exit' + -e ': pamnote; i# NOTE: This setting should be configured via /etc/pam.d/ and not in this file.' + -e ': exit' + ) + sed -i "${sed_args[@]}" etc/login.defs || die + else + set_login_opt MAIL_CHECK_ENAB no + set_login_opt SU_WHEEL_ONLY yes + set_login_opt LOGIN_RETRIES 3 + set_login_opt ENCRYPT_METHOD YESCRYPT + set_login_opt CONSOLE + fi +} + +src_install() { + emake DESTDIR="${D}" suidperms=4755 install + + fowners :shadow /usr/bin/{chage,expiry} + fperms u-s,g+s /usr/bin/{chage,expiry} + + # 4.9 regression: https://github.com/shadow-maint/shadow/issues/389 + emake DESTDIR="${D}" -C man install + + find "${ED}" -name '*.la' -type f -delete || die + + insinto /etc + doins etc/login.defs + + # needed for 'useradd -D' + insopts -m0600 + insinto /etc/default + doins "${FILESDIR}"/default/useradd + + if ! use pam ; then + doins etc/login.access etc/limits + fi + + if use split-usr ; then + # move passwd to / to help recover broke systems #64441 + # We cannot simply remove this or else net-misc/scponly + # and other tools will break because of hardcoded passwd + # location + dodir /bin + mv "${ED}"/usr/bin/passwd "${ED}"/bin/ || die + dosym ../../bin/passwd /usr/bin/passwd + fi + + if use pam; then + dopamd "${FILESDIR}"/pam.d-include/shadow + + for x in chsh chfn ; do + newpamd "${FILESDIR}"/pam.d-include/passwd ${x} + done + + for x in chpasswd newusers ; do + newpamd "${FILESDIR}"/pam.d-include/chpasswd ${x} + done + + newpamd "${FILESDIR}"/pam.d-include/shadow-r1 groupmems + + # Remove manpages that pam will install for us + # and/or don't apply when using pam + find "${ED}"/usr/share/man -type f \ + '(' -name 'limits.5*' -o -name 'suauth.5*' ')' \ + -delete + + # Remove pam.d files provided by pambase. + rm "${ED}"/etc/pam.d/{login,passwd} || die + if use su ; then + rm "${ED}"/etc/pam.d/su || die + fi + fi + + # Remove manpages that are handled by other packages + find "${ED}"/usr/share/man -type f -name getspnam.3 -delete || die + + if ! use su ; then + find "${ED}"/usr/share/man -type f -name su.1 -delete || die + fi + + dodoc README doc/HOWTO doc/README.limits + + if use elibc_musl; then + QA_CONFIG_IMPL_DECL_SKIP+=( sgetsgent ) + fi +} + +pkg_postinst() { + # Missing entries from /etc/passwd can cause odd system blips. + # See bug #829872. + if ! pwck -r -q -R "${EROOT:-/}" &>/dev/null ; then + ewarn "Running 'pwck' returned errors. Please run it manually to fix any errors." + fi + + local group=shadow + + if [[ -n ${ROOT} ]]; then + # Resolve to a group id using ${ROOT}/etc/passwd + group=$(egetent group shadow | cut -d: -f3) + if [[ -n ${group} ]]; then + chgrp "${group}" "${EROOT}"/usr/bin/{chage,expiry} && + chmod g+s "${EROOT}"/usr/bin/{chage,expiry} + fi + fi + + # Enable shadow groups. + if [[ ! -f "${EROOT}"/etc/gshadow ]] ; then + if grpck -r -R "${EROOT:-/}" 2>/dev/null ; then + grpconv -R "${EROOT:-/}" + if [[ -n ${group} ]]; then + chgrp "${group}" "${EROOT}"/etc/gshadow && + chmod g+r "${EROOT}"/etc/gshadow + fi + else + ewarn "Running 'grpck' returned errors. Please run it by hand, and then" + ewarn "run 'grpconv' afterwards!" + fi + fi + + [[ ! -f "${EROOT}"/etc/subgid ]] && + touch "${EROOT}"/etc/subgid + [[ ! -f "${EROOT}"/etc/subuid ]] && + touch "${EROOT}"/etc/subuid +} From c391e8ef22ac08f75d82213a7012eb18ccb17ed0 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:21 +0000 Subject: [PATCH 210/291] sys-apps/smartmontools: Sync with Gentoo It's from Gentoo commit 9a3595e0cdcc3584d759190e39f6870048a5f46d. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-apps/smartmontools/Manifest | 2 +- .../smartmontools/smartmontools-7.4-r1.ebuild | 157 ------------------ .../smartmontools/smartmontools-7.5-r1.ebuild | 16 +- .../smartmontools/smartmontools-9999.ebuild | 18 +- 4 files changed, 28 insertions(+), 165 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/smartmontools-7.4-r1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/Manifest index f43b6986d04..f6cdcae30ea 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/Manifest @@ -1,2 +1,2 @@ -DIST smartmontools-7.4.tar.gz 1094955 BLAKE2B fbf7888b92b6be4892a206e1c0fae1cb7c45fe0d62270c5fe713a540616e3599c67dd3297ad8c1cd344987e1fe95ae7c5e92db8e13ef622b3316b3780fbb4052 SHA512 439fbf8d0e77fbe1d5a9fb100e655a7e47a82382ce8e1a4e942541a4dfbdff3391caa635e8d354d0e87c10ae79cb97aa6d24915f9f193620d763b384baf2e753 DIST smartmontools-7.5.tar.gz 1122317 BLAKE2B c6dfbdec8c25490925d8afdfd6eb3ce631f7a70447c8a3b54a4a16faafbf69da7bf4638eba7398265b952ed0dc2ef71dfe2c5188026a5c0542b4f7fd6d116cf7 SHA512 2e4a6d712f33f3efff34184686b893f0205728d4a267fb88a833de7159170a6072b94744c1ae8c6694c99940d9ecaec164e3bd713e49476930dc2144c04b3f8c +DIST smartmontools-7.5.tar.gz.asc 833 BLAKE2B 5fde3101688688a0ba1da627bbb2a48d9942a4ab5ef636293cb4697380702cd31b476ab7cae4e160d879bd2ec5759bc80c88d89c96327d5e2a815c3244c8562b SHA512 17774b1ea201b24e4e1df2556ac3811302b396253426c684014c88e9cf2712b8dacb4ee81f967aa9021e6da17b1ff42145c20374cf1d32594639a07e634f3704 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/smartmontools-7.4-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/smartmontools-7.4-r1.ebuild deleted file mode 100644 index f4e401715ba..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/smartmontools-7.4-r1.ebuild +++ /dev/null @@ -1,157 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic systemd -if [[ ${PV} == 9999 ]] ; then - ESVN_REPO_URI="https://svn.code.sf.net/p/smartmontools/code/trunk/smartmontools" - ESVN_PROJECT="smartmontools" - inherit autotools subversion -else - SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86 ~x64-macos" -fi - -DESCRIPTION="Tools to monitor storage systems to provide advanced warning of disk degradation" -HOMEPAGE="https://www.smartmontools.org" - -LICENSE="GPL-2" -SLOT="0" -IUSE="caps +daemon selinux static systemd +update-drivedb" - -DEPEND=" - caps? ( - static? ( sys-libs/libcap-ng:=[static-libs] ) - !static? ( sys-libs/libcap-ng:= ) - ) - selinux? ( - sys-libs/libselinux:= - ) -" -RDEPEND=" - ${DEPEND} - daemon? ( virtual/mailx ) - selinux? ( sec-policy/selinux-smartmon ) - systemd? ( sys-apps/systemd ) - update-drivedb? ( - app-crypt/gnupg - || ( - net-misc/curl - net-misc/wget - www-client/lynx - dev-vcs/subversion - ) - ) -" - -REQUIRED_USE="( - caps? ( daemon ) - static? ( !systemd ) -)" - -src_prepare() { - default - - if [[ ${PV} == 9999 ]] ; then - eautoreconf - fi -} - -src_configure() { - use static && append-ldflags -static - # The build installs /etc/init.d/smartd, but we clobber it - # in our src_install, so no need to manually delete it. - myeconfargs=( - --with-drivedbdir="${EPREFIX}/var/db/${PN}" #575292 - --with-initscriptdir="${EPREFIX}/etc/init.d" - #--with-smartdscriptdir="${EPREFIX}/usr/share/${PN}" - --with-systemdenvfile=no - $(use_with caps libcap-ng) - $(use_with selinux) - $(use_with systemd libsystemd) - $(use_with update-drivedb gnupg) - $(use_with update-drivedb update-smart-drivedb) - $(usex systemd "--with-systemdsystemunitdir=$(systemd_get_systemunitdir)" '') - ) - econf "${myeconfargs[@]}" -} - -src_install() { - local db_path="/var/db/${PN}" - insopts -m0644 -p # preserve timestamps - - if use daemon; then - default - - newinitd "${FILESDIR}"/smartd-r1.rc smartd - newconfd "${FILESDIR}"/smartd.confd smartd - else - dosbin smartctl - doman smartctl.8 - - local DOCS=( AUTHORS ChangeL* COPYING INSTALL NEWS README TODO ) - einstalldocs - fi - - if use update-drivedb ; then - if ! use daemon; then - dosbin "${S}"/update-smart-drivedb - fi - - exeinto /etc/cron.monthly - doexe "${FILESDIR}/${PN}-update-drivedb" - fi - - if use daemon || use update-drivedb; then - keepdir "${db_path}" - - # Install a copy of the initial drivedb.h to /usr/share/${PN} - # so that we can access that file later in pkg_postinst - # even when dealing with binary packages (bug #575292) - insinto /usr/share/${PN} - doins "${S}"/drivedb.h - fi - - # Make sure we never install drivedb.h into the db location - # of the actual image so we don't record hashes because user - # can modify that file - rm -f "${ED}${db_path}/drivedb.h" || die - - # Bug #622072 - find "${ED}"/usr/share/doc -type f -exec chmod a-x '{}' \; || die -} - -pkg_postinst() { - if use daemon || use update-drivedb; then - local initial_db_file="${EROOT}/usr/share/${PN}/drivedb.h" - local db_path="${EROOT}/var/db/${PN}" - - if [[ ! -f "${db_path}/drivedb.h" ]] ; then - # No initial database found - cp "${initial_db_file}" "${db_path}" || die - einfo "Default drive database which was shipped with this release of ${PN}" - einfo "has been installed to '${db_path}'." - else - ewarn "WARNING: There's already a drive database in '${db_path}'!" - ewarn "Because we cannot determine if this database is untouched" - ewarn "or was modified by the user you have to manually update the" - ewarn "drive database:" - ewarn "" - ewarn "a) Replace '${db_path}/drivedb.h' by the database shipped with this" - ewarn " release which can be found in '${initial_db_file}', i.e." - ewarn "" - ewarn " cp \"${initial_db_file}\" \"${db_path}\"" - ewarn "" - ewarn "b) Run the following command as root:" - ewarn "" - ewarn " /usr/sbin/update-smart-drivedb" - - if ! use update-drivedb ; then - ewarn "" - ewarn "However, 'update-smart-drivedb' requires that you re-emerge ${PN}" - ewarn "with USE='update-drivedb'." - fi - fi - fi -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/smartmontools-7.5-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/smartmontools-7.5-r1.ebuild index ace43a2b499..f19c2238590 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/smartmontools-7.5-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/smartmontools-7.5-r1.ebuild @@ -1,16 +1,26 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit flag-o-matic systemd + if [[ ${PV} == 9999 ]] ; then ESVN_REPO_URI="https://svn.code.sf.net/p/smartmontools/code/trunk/smartmontools" ESVN_PROJECT="smartmontools" inherit autotools subversion else - SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/smartmontools.asc + inherit verify-sig + + SRC_URI=" + https://downloads.sourceforge.net/${PN}/${P}.tar.gz + verify-sig? ( https://downloads.sourceforge.net/${PN}/${P}.tar.gz.asc ) + " + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86 ~x64-macos" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-smartmontools )" fi DESCRIPTION="Tools to monitor storage systems to provide advanced warning of disk degradation" @@ -62,7 +72,7 @@ src_configure() { use static && append-ldflags -static # The build installs /etc/init.d/smartd, but we clobber it # in our src_install, so no need to manually delete it. - myeconfargs=( + local myeconfargs=( --with-drivedbdir="${EPREFIX}/var/db/${PN}" #575292 --with-initscriptdir="${EPREFIX}/etc/init.d" #--with-smartdscriptdir="${EPREFIX}/usr/share/${PN}" diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/smartmontools-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/smartmontools-9999.ebuild index d5855edc248..0a56217b190 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/smartmontools-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/smartmontools-9999.ebuild @@ -1,16 +1,26 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit flag-o-matic systemd + if [[ ${PV} == 9999 ]] ; then ESVN_REPO_URI="https://svn.code.sf.net/p/smartmontools/code/trunk/smartmontools" ESVN_PROJECT="smartmontools" inherit autotools subversion else - SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/smartmontools.asc + inherit verify-sig + + SRC_URI=" + https://downloads.sourceforge.net/${PN}/${P}.tar.gz + verify-sig? ( https://downloads.sourceforge.net/${PN}/${P}.tar.gz.asc ) + " + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-smartmontools )" fi DESCRIPTION="Tools to monitor storage systems to provide advanced warning of disk degradation" @@ -35,7 +45,7 @@ RDEPEND=" selinux? ( sec-policy/selinux-smartmon ) systemd? ( sys-apps/systemd ) update-drivedb? ( - app-crypt/gnupg + app-alternatives/gpg || ( net-misc/curl net-misc/wget @@ -62,7 +72,7 @@ src_configure() { use static && append-ldflags -static # The build installs /etc/init.d/smartd, but we clobber it # in our src_install, so no need to manually delete it. - myeconfargs=( + local myeconfargs=( --with-drivedbdir="${EPREFIX}/var/db/${PN}" #575292 --with-initscriptdir="${EPREFIX}/etc/init.d" #--with-smartdscriptdir="${EPREFIX}/usr/share/${PN}" From 094773e3b290ee093785415fd4f1fbff8cfa8683 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:21 +0000 Subject: [PATCH 211/291] sys-apps/systemd: Sync with Gentoo It's from Gentoo commit e445449a18282508e7de29993c41bc3a9829ac59. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-apps/systemd/Manifest | 5 +- .../files/gentoo-journald-audit-r1.patch | 51 -- .../files/systemd-257-cred-util-tpm2.patch | 69 --- .../systemd/files/systemd-259-test-echo.patch | 32 + ...systemd-259-vmspawn-use-indexed-loop.patch | 71 +++ .../sys-apps/systemd/metadata.xml | 1 - .../sys-apps/systemd/systemd-257.9.ebuild | 570 ------------------ .../sys-apps/systemd/systemd-258.3.ebuild | 5 +- ...emd-257.10.ebuild => systemd-259.1.ebuild} | 42 +- ...temd-258.2.ebuild => systemd-259.2.ebuild} | 22 +- .../sys-apps/systemd/systemd-259.ebuild | 3 + .../sys-apps/systemd/systemd-9999.ebuild | 19 +- 12 files changed, 169 insertions(+), 721 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/systemd/files/gentoo-journald-audit-r1.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/systemd/files/systemd-257-cred-util-tpm2.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/systemd/files/systemd-259-test-echo.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/systemd/files/systemd-259-vmspawn-use-indexed-loop.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-257.9.ebuild rename sdk_container/src/third_party/portage-stable/sys-apps/systemd/{systemd-257.10.ebuild => systemd-259.1.ebuild} (93%) rename sdk_container/src/third_party/portage-stable/sys-apps/systemd/{systemd-258.2.ebuild => systemd-259.2.ebuild} (96%) diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/Manifest index 7a4e6ea6a65..33ca9cacbc4 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/Manifest @@ -1,5 +1,4 @@ -DIST systemd-257.10.tar.gz 16425661 BLAKE2B c8fef145933810110f5470f64dd41213864cc1cae889fb306c817d7a16cc300adbcab27e3a3be91428f0a7d354041f7f9ca431f7745bce9c7cc1e3bb065be84a SHA512 49a2c8cc1cd91363d90165a1145dcc417d524afd428917dad332e4b057ed9fc3ddb5b4beafab094b02a85d930c8aef9b63c8c9c1bc76ef3bdf0ce38a7d46466f -DIST systemd-257.9.tar.gz 16401765 BLAKE2B c3ad528d37b89de8f82548807e950b59aab43f875a533ad983169eb539594e5e8230b6b562caee5297dcec4572e27df0e53ebee04f79e85f429f47862031592e SHA512 23b3d2764e0f990d8373068ccb41177793413bc193f7bd34e38b03d6fc3cd32d07c86e9dcbf07e32904075bb5eeca208f65beab04d628ac0e0b81ba87a975c1b -DIST systemd-258.2.tar.gz 16989522 BLAKE2B 55c8a134d2c80241ed654fab6bf2df0a2139313dbbb905f3abf07c9f86940ff03c8787fe7c4604c34bbb84088c15cd73ae5e013929b290b92808b5473550235e SHA512 1dc016a5a037aec2682e08d2add0dcf8d03db15b45ce8c6b677898f734aefd4694ce18e588d579e42514071fc4c167b2bf53808478b2bd3856b257c9fbcde45d DIST systemd-258.3.tar.gz 17034328 BLAKE2B 668f5829d78412b256f49c3f46dffad5cf70fa335de3e5ca822bdc13e4f67874ac28005b616e7fdc0f3235f760c68809ae3ac97e1f53d3ca43fb7e0934ec0de9 SHA512 9f4261e1703efd1f38c90e4166e6d85fa9379c99ac7f3c66caa62955c3cbe8a43ab259c261ab20bce0dd84dd682258192ace66b4dee0390bf3740c32f4569fed +DIST systemd-259.1.tar.gz 17274033 BLAKE2B 08d3b640e699ecaae9f2e2471db4547870786a5b5e2953671a0a9460b13a4d942c605942f95c144e68a04ffd6be1a72d8a084fe1f59c4d49c0ac3dc1eda55533 SHA512 7cbeca5dad6413a876809200583854ddc706b7a69deff958eb1ca1afb726cf4dec014006c10d1945c450b754811d4b95a80fe1778cb3136997f6d11b11c0560e +DIST systemd-259.2.tar.gz 17284532 BLAKE2B a0826ef6f1cc8546957cbd558283e9bf634e434893de526d39b00f7d5ecdc982ccadf0f5397f74a8c9090887d14acbbe20dac27905376b72aa07b5246436c1ed SHA512 1cb677c98a56210948bfc9a6e296aa92dde030ceeca6b6e4fe3f4014d051f4d0f1d83584cfdceb921d7d578952b85112b2ba497385faefca4d6c871bf8de48cf DIST systemd-259.tar.gz 17250241 BLAKE2B 59ba6edea59338fc30d4cf72b197e8eda2ccd4fc7d53f016c0b9bd4422433839696fe553b58dcf1f31345ec92080a426a04a2878fd97cb17b3b1e3f92f08e135 SHA512 ef46b13661df43e3cfbeee1bc22f0b1eb902e8ebe39c19868c465efd08b35a199c2a2cd9d8021a6bc4d692fa0c6e0eab3f13eecd6ce24dde81d3945464a25b50 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/files/gentoo-journald-audit-r1.patch b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/files/gentoo-journald-audit-r1.patch deleted file mode 100644 index b5c32df788e..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/files/gentoo-journald-audit-r1.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 2de502ccff1cc780d9d29c4ff7e6c1e0f2d7a082 Mon Sep 17 00:00:00 2001 -From: Mike Gilbert <floppym@gentoo.org> -Date: Fri, 21 Aug 2020 13:16:17 -0400 -Subject: [PATCH] journald: do not change the kernel audit setting by default - -Bug: https://bugs.gentoo.org/736910 ---- - man/journald.conf.xml | 2 +- - src/journal/journald-server.c | 2 +- - src/journal/journald.conf | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/man/journald.conf.xml b/man/journald.conf.xml -index 50c33e4792..2e14674f42 100644 ---- a/man/journald.conf.xml -+++ b/man/journald.conf.xml -@@ -427,7 +427,7 @@ - kernel auditing on start-up. If disabled it will turn it off. If unset it will neither enable nor - disable it, leaving the previous state unchanged. This means if another tool turns on auditing even - if <command>systemd-journald</command> left it off, it will still collect the generated -- messages. Defaults to on.</para> -+ messages.</para> - - <para>Note that this option does not control whether <command>systemd-journald</command> collects - generated audit records, it just controls whether it tells the kernel to generate them. If you need -diff --git a/src/journal/journald-server.c b/src/journal/journald-server.c -index 022e12d83d..6b3d261af6 100644 ---- a/src/journal/journald-server.c -+++ b/src/journal/journald-server.c -@@ -2367,7 +2367,7 @@ int server_init(Server *s, const char *namespace) { - .compress.threshold_bytes = UINT64_MAX, - .seal = true, - -- .set_audit = true, -+ .set_audit = -1, - - .watchdog_usec = USEC_INFINITY, - -diff --git a/src/journal/journald.conf b/src/journal/journald.conf -index 5a60a9d39c..64156d5463 100644 ---- a/src/journal/journald.conf -+++ b/src/journal/journald.conf -@@ -44,4 +44,4 @@ - #MaxLevelWall=emerg - #LineMax=48K - #ReadKMsg=yes --#Audit=yes -+#Audit= --- -2.39.1 - diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/files/systemd-257-cred-util-tpm2.patch b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/files/systemd-257-cred-util-tpm2.patch deleted file mode 100644 index a4f798dc4e2..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/files/systemd-257-cred-util-tpm2.patch +++ /dev/null @@ -1,69 +0,0 @@ -https://bugs.gentoo.org/956681 -https://github.com/systemd/systemd/pull/37017 - -From fd9c4b4f49990f0656092035464b85256a0ba6e3 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Fri, 4 Apr 2025 21:40:41 -0700 -Subject: [PATCH] shared/cred-util: Ensure TPM code is used with HAVE_TPM2 - guards -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Building with no TPM2 we end up with following error - -/usr/include/x86_64-linux-gnu/bits/string_fortified.h:29:10: note: in a call to built-in function ‘__builtin___memcpy_chk’ -In function ‘memcpy’, - inlined from ‘encrypt_credential_and_warn’ at ../git/src/shared/creds-util.c:1091:17: -/usr/include/x86_64-linux-gnu/bits/string_fortified.h:29:10: error: argument 2 null where non-null expected [-Werror=nonnull] - 29 | return __builtin___memcpy_chk (__dest, __src, __len, - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 30 | __glibc_objsize0 (__dest)); - | ~~~~~~~~~~~~~~~~~~~~~~~~~~ -/usr/include/x86_64-linux-gnu/bits/string_fortified.h:29:10: note: in a call to built-in function ‘__builtin___memcpy_chk’ -cc1: some warnings being treated as errors 29 | return __builtin___memcpy_chk (__dest, __src, __len, - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 30 | __glibc_objsize0 (__dest)); - | ~~~~~~~~~~~~~~~~~~~~~~~~~~ - -This is because code referencing tpm2 data structures is still used while the -initialization of the function has been compiled out since its conditional on HAVE_TPM2 - -We add needed guards in places where it is missing to fix this problem - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - src/shared/creds-util.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/src/shared/creds-util.c b/src/shared/creds-util.c -index ca8e15d4c9d1e..e074c8b24680a 100644 ---- a/src/shared/creds-util.c -+++ b/src/shared/creds-util.c -@@ -804,7 +804,9 @@ int encrypt_credential_and_warn( - _cleanup_(iovec_done_erase) struct iovec tpm2_key = {}, output = {}, host_key = {}; - _cleanup_(EVP_CIPHER_CTX_freep) EVP_CIPHER_CTX *context = NULL; - _cleanup_free_ struct metadata_credential_header *m = NULL; -+#if HAVE_TPM2 - uint16_t tpm2_pcr_bank = 0, tpm2_primary_alg = 0; -+#endif - struct encrypted_credential_header *h; - int ksz, bsz, ivsz, tsz, added, r; - uint8_t md[SHA256_DIGEST_LENGTH]; -@@ -1078,6 +1080,7 @@ int encrypt_credential_and_warn( - - p = ALIGN8(offsetof(struct encrypted_credential_header, iv) + ivsz); - -+#if HAVE_TPM2 - if (iovec_is_set(&tpm2_key)) { - struct tpm2_credential_header *t; - -@@ -1092,7 +1095,7 @@ int encrypt_credential_and_warn( - - p += ALIGN8(offsetof(struct tpm2_credential_header, policy_hash_and_blob) + tpm2_blob.iov_len + tpm2_policy_hash.iov_len); - } -- -+#endif - if (iovec_is_set(&pubkey)) { - struct tpm2_public_key_credential_header *z; - diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/files/systemd-259-test-echo.patch b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/files/systemd-259-test-echo.patch new file mode 100644 index 00000000000..af592fc7911 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/files/systemd-259-test-echo.patch @@ -0,0 +1,32 @@ +https://github.com/systemd/systemd/pull/40607 + +From 1766be649f2c153dee6fe2c79c5aac3a21c73a7b Mon Sep 17 00:00:00 2001 +From: Mike Gilbert <floppym@gentoo.org> +Date: Sun, 8 Feb 2026 19:12:30 -0500 +Subject: [PATCH] meson: use printf instead of echo + +The echo builtin provided by some shells (mksh) will interpret \x2d as +an escape sequence. This causes meson to fail: + +``` +test/fuzz/meson.build:93:52: ERROR: File fuzz-unit-file/dm-back-slash.swap does not exist. +``` + +Bug: https://bugs.gentoo.org/969789 +--- + test/fuzz/meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/test/fuzz/meson.build b/test/fuzz/meson.build +index d4cfc0a5b4816..6f9f43a4105f9 100644 +--- a/test/fuzz/meson.build ++++ b/test/fuzz/meson.build +@@ -42,7 +42,7 @@ if git.found() and fs.is_dir(meson.project_source_root() / '.git') + 'ls-files', ':/@0@/*/*'.format(fuzz_testsdir), + check: true) + else +- out = run_command(sh, '-c', 'cd "@0@"; echo @1@/*/*'.format(meson.project_source_root(), fuzz_testsdir), check: true) ++ out = run_command(sh, '-c', 'cd "@0@"; printf "%s " @1@/*/*'.format(meson.project_source_root(), fuzz_testsdir), check: true) + endif + + # Add crafted fuzz inputs we have in the repo diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/files/systemd-259-vmspawn-use-indexed-loop.patch b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/files/systemd-259-vmspawn-use-indexed-loop.patch new file mode 100644 index 00000000000..72f2cff0785 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/files/systemd-259-vmspawn-use-indexed-loop.patch @@ -0,0 +1,71 @@ +https://bugs.gentoo.org/968936 +https://github.com/systemd/systemd/issues/40380 + +From 8a5fb3627a1518d2d2ef70919c81448158d64ac0 Mon Sep 17 00:00:00 2001 +From: Yu Watanabe <watanabe.yu+github@gmail.com> +Date: Mon, 19 Jan 2026 23:14:26 +0900 +Subject: [PATCH] vmspawn: use indexed loop + +Previously, the index is obtained from the pointer offset. The +pointer offset is expressed by ptrdiff_t and may be different from +ssize_t. + +Let's avoid to use FOREACH_ARRAY() but use an indexed loop. +This also renames `mount` to `m` to avoid conflict with `mount()`. + +Fixes #40380. +--- + src/vmspawn/vmspawn.c | 15 ++++++++------- + 1 file changed, 8 insertions(+), 7 deletions(-) + +diff --git a/src/vmspawn/vmspawn.c b/src/vmspawn/vmspawn.c +index 43817954a3d22..b12e260fa4d1f 100644 +--- a/src/vmspawn/vmspawn.c ++++ b/src/vmspawn/vmspawn.c +@@ -2408,7 +2408,8 @@ static int run_virtual_machine(int kvm_device_fd, int vhost_device_fd) { + if (r < 0) + return log_oom(); + +- FOREACH_ARRAY(mount, arg_runtime_mounts.mounts, arg_runtime_mounts.n_mounts) { ++ for (size_t j = 0; j < arg_runtime_mounts.n_mounts; j++) { ++ RuntimeMount *m = arg_runtime_mounts.mounts + j; + _cleanup_free_ char *listen_address = NULL; + _cleanup_(fork_notify_terminate) PidRef child = PIDREF_NULL; + +@@ -2417,9 +2418,9 @@ static int run_virtual_machine(int kvm_device_fd, int vhost_device_fd) { + + r = start_virtiofsd( + unit, +- mount->source, +- /* source_uid= */ mount->source_uid, +- /* target_uid= */ mount->target_uid, ++ m->source, ++ /* source_uid= */ m->source_uid, ++ /* target_uid= */ m->target_uid, + /* uid_range= */ 1U, + runtime_dir, + sd_socket_activate, +@@ -2444,7 +2445,7 @@ static int run_virtual_machine(int kvm_device_fd, int vhost_device_fd) { + return log_oom(); + + _cleanup_free_ char *id = NULL; +- if (asprintf(&id, "mnt%zi", mount - arg_runtime_mounts.mounts) < 0) ++ if (asprintf(&id, "mnt%zu", j) < 0) + return log_oom(); + + if (strv_extendf(&cmdline, "socket,id=%s,path=%s", id, escaped_listen_address) < 0) +@@ -2456,12 +2457,12 @@ static int run_virtual_machine(int kvm_device_fd, int vhost_device_fd) { + if (strv_extendf(&cmdline, "vhost-user-fs-pci,queue-size=1024,chardev=%1$s,tag=%1$s", id) < 0) + return log_oom(); + +- _cleanup_free_ char *clean_target = xescape(mount->target, "\":"); ++ _cleanup_free_ char *clean_target = xescape(m->target, "\":"); + if (!clean_target) + return log_oom(); + + if (strv_extendf(&arg_kernel_cmdline_extra, "systemd.mount-extra=\"%s:%s:virtiofs:%s\"", +- id, clean_target, mount->read_only ? "ro" : "rw") < 0) ++ id, clean_target, m->read_only ? "ro" : "rw") < 0) + return log_oom(); + } + diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/metadata.xml b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/metadata.xml index b4a8e30ee3d..c7c46b6219e 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/metadata.xml @@ -40,6 +40,5 @@ </use> <upstream> <remote-id type="github">systemd/systemd</remote-id> - <remote-id type="github">systemd/systemd-stable</remote-id> </upstream> </pkgmetadata> diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-257.9.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-257.9.ebuild deleted file mode 100644 index 3cee9769ce1..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-257.9.ebuild +++ /dev/null @@ -1,570 +0,0 @@ -# Copyright 2011-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -PYTHON_COMPAT=( python3_{11..13} ) - -# Avoid QA warnings -TMPFILES_OPTIONAL=1 -UDEV_OPTIONAL=1 - -QA_PKGCONFIG_VERSION=$(ver_cut 1) - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://github.com/systemd/systemd.git" - inherit git-r3 -else - MY_PV=${PV/_/-} - MY_P=${PN}-${MY_PV} - S=${WORKDIR}/${MY_P} - SRC_URI="https://github.com/systemd/${PN}/archive/refs/tags/v${MY_PV}.tar.gz -> ${MY_P}.tar.gz" - - if [[ ${PV} != *rc* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" - fi -fi - -inherit bash-completion-r1 linux-info meson-multilib optfeature pam python-single-r1 -inherit secureboot systemd toolchain-funcs udev - -DESCRIPTION="System and service manager for Linux" -HOMEPAGE="https://systemd.io/" - -LICENSE="GPL-2 LGPL-2.1 MIT public-domain" -SLOT="0/2" -IUSE=" - acl apparmor audit boot bpf cgroup-hybrid cryptsetup curl +dns-over-tls elfutils - fido2 +gcrypt gnutls homed http idn importd iptables +kernel-install +kmod - +lz4 lzma +openssl pam pcre pkcs11 policykit pwquality qrcode - +resolvconf +seccomp selinux split-usr +sysv-utils test tpm ukify vanilla xkb +zstd -" -REQUIRED_USE=" - ${PYTHON_REQUIRED_USE} - dns-over-tls? ( || ( gnutls openssl ) ) - fido2? ( cryptsetup openssl ) - homed? ( cryptsetup pam openssl ) - importd? ( curl lzma || ( gcrypt openssl ) ) - pwquality? ( homed ) - boot? ( kernel-install ) - ukify? ( boot ) -" -RESTRICT="!test? ( test )" - -MINKV="4.15" - -COMMON_DEPEND=" - >=sys-apps/util-linux-2.32:0=[${MULTILIB_USEDEP}] - sys-libs/libcap:0=[${MULTILIB_USEDEP}] - virtual/libcrypt:=[${MULTILIB_USEDEP}] - acl? ( sys-apps/acl:0= ) - apparmor? ( >=sys-libs/libapparmor-2.13:0= ) - audit? ( >=sys-process/audit-2:0= ) - bpf? ( >=dev-libs/libbpf-1.4.0:0= ) - cryptsetup? ( >=sys-fs/cryptsetup-2.0.1:0= ) - curl? ( >=net-misc/curl-7.32.0:0= ) - elfutils? ( >=dev-libs/elfutils-0.158:0= ) - fido2? ( dev-libs/libfido2:0= ) - gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] ) - gnutls? ( >=net-libs/gnutls-3.6.0:0= ) - http? ( >=net-libs/libmicrohttpd-0.9.33:0=[epoll(+)] ) - idn? ( net-dns/libidn2:= ) - importd? ( - app-arch/bzip2:0= - virtual/zlib:= - ) - kmod? ( >=sys-apps/kmod-15:0= ) - lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] ) - lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] ) - iptables? ( net-firewall/iptables:0= ) - openssl? ( >=dev-libs/openssl-1.1.0:0= ) - pam? ( sys-libs/pam:=[${MULTILIB_USEDEP}] ) - pkcs11? ( >=app-crypt/p11-kit-0.23.3:0= ) - pcre? ( dev-libs/libpcre2 ) - pwquality? ( >=dev-libs/libpwquality-1.4.1:0= ) - qrcode? ( >=media-gfx/qrencode-3:0= ) - seccomp? ( >=sys-libs/libseccomp-2.3.3:0= ) - selinux? ( >=sys-libs/libselinux-2.1.9:0= ) - tpm? ( app-crypt/tpm2-tss:0= ) - xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= ) - zstd? ( >=app-arch/zstd-1.4.0:0=[${MULTILIB_USEDEP}] ) -" - -# Newer linux-headers needed by ia64, bug #480218 -DEPEND="${COMMON_DEPEND} - >=sys-kernel/linux-headers-${MINKV} -" - -PEFILE_DEPEND='dev-python/pefile[${PYTHON_USEDEP}]' - -# baselayout-2.2 has /run -RDEPEND="${COMMON_DEPEND} - >=acct-group/adm-0-r1 - >=acct-group/wheel-0-r1 - >=acct-group/kmem-0-r1 - >=acct-group/tty-0-r1 - >=acct-group/utmp-0-r1 - >=acct-group/audio-0-r1 - >=acct-group/cdrom-0-r1 - >=acct-group/dialout-0-r1 - >=acct-group/disk-0-r1 - >=acct-group/input-0-r1 - >=acct-group/kvm-0-r1 - >=acct-group/lp-0-r1 - >=acct-group/render-0-r1 - acct-group/sgx - >=acct-group/tape-0-r1 - acct-group/users - >=acct-group/video-0-r1 - >=acct-group/systemd-journal-0-r1 - >=acct-user/root-0-r1 - acct-user/nobody - >=acct-user/systemd-journal-remote-0-r1 - >=acct-user/systemd-coredump-0-r1 - >=acct-user/systemd-network-0-r1 - acct-user/systemd-oom - >=acct-user/systemd-resolve-0-r1 - >=acct-user/systemd-timesync-0-r1 - >=sys-apps/baselayout-2.2 - ukify? ( - ${PYTHON_DEPS} - $(python_gen_cond_dep "${PEFILE_DEPEND}") - ) - selinux? ( - sec-policy/selinux-base-policy[systemd] - sec-policy/selinux-ntp - ) - sysv-utils? ( - !sys-apps/openrc[sysv-utils(-)] - !sys-apps/sysvinit - ) - !sysv-utils? ( sys-apps/sysvinit ) - resolvconf? ( !net-dns/openresolv ) - !sys-apps/hwids[udev] - !sys-auth/nss-myhostname - !sys-fs/eudev - !sys-fs/udev -" - -# sys-apps/dbus: the daemon only (+ build-time lib dep for tests) -PDEPEND=">=sys-apps/dbus-1.9.8[systemd] - >=sys-fs/udev-init-scripts-34 - policykit? ( sys-auth/polkit ) - !vanilla? ( sys-apps/gentoo-systemd-integration )" - -BDEPEND=" - app-arch/xz-utils:0 - dev-util/gperf - >=dev-build/meson-0.46 - >=sys-apps/coreutils-8.16 - sys-devel/gettext - virtual/pkgconfig - bpf? ( - >=dev-util/bpftool-7.0.0 - sys-devel/bpf-toolchain - ) - test? ( - app-text/tree - dev-lang/perl - sys-apps/dbus - ) - app-text/docbook-xml-dtd:4.2 - app-text/docbook-xml-dtd:4.5 - app-text/docbook-xsl-stylesheets - dev-libs/libxslt:0 - ${PYTHON_DEPS} - $(python_gen_cond_dep " - dev-python/jinja2[\${PYTHON_USEDEP}] - dev-python/lxml[\${PYTHON_USEDEP}] - boot? ( - >=dev-python/pyelftools-0.30[\${PYTHON_USEDEP}] - test? ( ${PEFILE_DEPEND} ) - ) - ") -" - -QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*" -QA_EXECSTACK="usr/lib/systemd/boot/efi/*" - -check_cgroup_layout() { - # https://bugs.gentoo.org/935261 - [[ ${MERGE_TYPE} != buildonly ]] || return - [[ -z ${ROOT} ]] || return - [[ -e /sys/fs/cgroup/unified ]] || return - grep -q 'SYSTEMD_CGROUP_ENABLE_LEGACY_FORCE=1' /proc/cmdline && return - - eerror "This system appears to be booted with the 'hybrid' cgroup layout." - eerror "This layout obsolete and is disabled in systemd." - - if grep -qF 'systemd.unified_cgroup_hierarchy'; then - eerror "Remove the systemd.unified_cgroup_hierarchy option" - eerror "from the kernel command line and reboot." - die "hybrid cgroup layout detected" - fi -} - -pkg_pretend() { - if use split-usr; then - eerror "Please complete the migration to merged-usr." - eerror "https://wiki.gentoo.org/wiki/Merge-usr" - die "systemd no longer supports split-usr" - fi - - check_cgroup_layout - - if use cgroup-hybrid; then - eerror "Disable the 'cgroup-hybrid' USE flag." - eerror "Rebuild any initramfs images after rebuilding systemd." - die "cgroup-hybrid is no longer supported" - fi - - if [[ ${MERGE_TYPE} != buildonly ]]; then - local CONFIG_CHECK="~BLK_DEV_BSG ~CGROUPS - ~CGROUP_BPF ~DEVTMPFS ~EPOLL ~FANOTIFY ~FHANDLE - ~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS ~SIGNALFD ~SYSFS - ~TIMERFD ~TMPFS_XATTR ~UNIX ~USER_NS - ~CRYPTO_HMAC ~CRYPTO_SHA256 ~CRYPTO_USER_API_HASH - ~!GRKERNSEC_PROC ~!IDE ~!SYSFS_DEPRECATED - ~!SYSFS_DEPRECATED_V2" - - use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL" - use bpf && CONFIG_CHECK+=" ~BPF ~BPF_SYSCALL ~BPF_LSM ~DEBUG_INFO_BTF" - use seccomp && CONFIG_CHECK+=" ~SECCOMP ~SECCOMP_FILTER" - - if kernel_is -ge 5 10 20; then - CONFIG_CHECK+=" ~KCMP" - else - CONFIG_CHECK+=" ~CHECKPOINT_RESTORE" - fi - - if kernel_is -ge 4 18; then - CONFIG_CHECK+=" ~AUTOFS_FS" - else - CONFIG_CHECK+=" ~AUTOFS4_FS" - fi - - if linux_config_exists; then - local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH) - if [[ -n ${uevent_helper_path} ]] && [[ ${uevent_helper_path} != '""' ]]; then - ewarn "It's recommended to set an empty value to the following kernel config option:" - ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}" - fi - if linux_chkconfig_present X86; then - CONFIG_CHECK+=" ~DMIID" - fi - fi - - if kernel_is -lt ${MINKV//./ }; then - ewarn "Kernel version at least ${MINKV} required" - fi - - check_extra_config - fi -} - -pkg_setup() { - use boot && secureboot_pkg_setup -} - -src_unpack() { - default - [[ ${PV} != 9999 ]] || git-r3_src_unpack -} - -src_prepare() { - local PATCHES=( - "${FILESDIR}"/systemd-257-cred-util-tpm2.patch - ) - - if ! use vanilla; then - PATCHES+=( - "${FILESDIR}/gentoo-journald-audit-r1.patch" - ) - fi - - default -} - -src_configure() { - # Prevent conflicts with i686 cross toolchain, bug 559726 - tc-export AR CC NM OBJCOPY RANLIB - - python_setup - - multilib-minimal_src_configure -} - -multilib_src_configure() { - local myconf=( - --localstatedir="${EPREFIX}/var" - -Ddocdir="share/doc/${PF}" - # default is developer, bug 918671 - -Dmode=release - -Dsupport-url="https://gentoo.org/support/" - -Dpamlibdir="$(getpam_mod_dir)" - # avoid bash-completion dep - -Dbashcompletiondir="$(get_bashcompdir)" - -Dsplit-bin=false - # Disable compatibility with sysvinit - -Dsysvinit-path= - -Dsysvrcnd-path= - # no deps - -Dima=true - # Match /etc/shells, bug 919749 - -Ddebug-shell="${EPREFIX}/bin/sh" - -Ddefault-user-shell="${EPREFIX}/bin/bash" - # Optional components/dependencies - $(meson_native_use_feature acl) - $(meson_native_use_feature apparmor) - $(meson_native_use_feature audit) - $(meson_native_use_feature boot bootloader) - $(meson_native_use_feature bpf bpf-framework) - -Dbpf-compiler=gcc - $(meson_native_use_feature cryptsetup libcryptsetup) - $(meson_native_use_feature curl libcurl) - $(meson_native_use_bool dns-over-tls dns-over-tls) - $(meson_native_use_feature elfutils) - $(meson_native_use_feature fido2 libfido2) - $(meson_feature gcrypt) - $(meson_native_use_feature gnutls) - $(meson_native_use_feature homed) - $(meson_native_use_feature http microhttpd) - $(meson_native_use_bool idn) - $(meson_native_use_feature importd) - $(meson_native_use_feature importd bzip2) - $(meson_native_use_feature importd zlib) - $(meson_native_use_bool kernel-install) - $(meson_native_use_feature kmod) - $(meson_feature lz4) - $(meson_feature lzma xz) - $(meson_use test tests) - $(meson_feature zstd) - $(meson_native_use_feature iptables libiptc) - $(meson_native_use_feature openssl) - $(meson_feature pam) - $(meson_native_use_feature pkcs11 p11kit) - $(meson_native_use_feature pcre pcre2) - $(meson_native_use_feature policykit polkit) - $(meson_native_use_feature pwquality) - $(meson_native_use_feature qrcode qrencode) - $(meson_native_use_feature seccomp) - $(meson_native_use_feature selinux) - $(meson_native_use_feature tpm tpm2) - $(meson_native_use_feature test dbus) - $(meson_native_use_feature ukify) - $(meson_native_use_feature xkb xkbcommon) - -Dntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org" - # Breaks screen, tmux, etc. - -Ddefault-kill-user-processes=false - -Dcreate-log-dirs=false - - # multilib options - $(meson_native_true backlight) - $(meson_native_true binfmt) - $(meson_native_true coredump) - $(meson_native_true environment-d) - $(meson_native_true firstboot) - $(meson_native_true hibernate) - $(meson_native_true hostnamed) - $(meson_native_true ldconfig) - $(meson_native_true localed) - $(meson_native_enabled man) - $(meson_native_true networkd) - $(meson_native_true quotacheck) - $(meson_native_true randomseed) - $(meson_native_true rfkill) - $(meson_native_true sysusers) - $(meson_native_true timedated) - $(meson_native_true timesyncd) - $(meson_native_true tmpfiles) - $(meson_native_true vconsole) - ) - - case $(tc-arch) in - amd64|arm|arm64|loong|ppc|ppc64|riscv|s390|x86) - # src/vmspawn/vmspawn-util.h: QEMU_MACHINE_TYPE - myconf+=( $(meson_native_enabled vmspawn) ) ;; - *) - myconf+=( -Dvmspawn=disabled ) ;; - esac - - meson_src_configure "${myconf[@]}" -} - -multilib_src_test() { - ( - unset DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR - export COLUMNS=80 - addpredict /dev - addpredict /proc - addpredict /run - addpredict /sys/fs/cgroup - meson_src_test --timeout-multiplier=10 - ) || die -} - -multilib_src_install_all() { - einstalldocs - dodoc "${FILESDIR}"/nsswitch.conf - - insinto /usr/lib/tmpfiles.d - doins "${FILESDIR}"/legacy.conf - - if ! use resolvconf; then - rm -f "${ED}"/usr/bin/resolvconf || die - fi - - if ! use sysv-utils; then - rm "${ED}"/usr/bin/{halt,init,poweroff,reboot,shutdown} || die - rm "${ED}"/usr/share/man/man1/init.1 || die - rm "${ED}"/usr/share/man/man8/{halt,poweroff,reboot,shutdown}.8 || die - fi - - # https://bugs.gentoo.org/761763 - rm -r "${ED}"/usr/lib/sysusers.d || die - - # Preserve empty dirs in /etc & /var, bug #437008 - keepdir /etc/{binfmt.d,modules-load.d,tmpfiles.d} - keepdir /etc/kernel/install.d - keepdir /etc/systemd/{network,system,user} - keepdir /etc/udev/rules.d - - keepdir /etc/udev/hwdb.d - - keepdir /usr/lib/systemd/{system-sleep,system-shutdown} - keepdir /usr/lib/{binfmt.d,modules-load.d} - keepdir /usr/lib/systemd/user-generators - keepdir /var/lib/systemd - keepdir /var/log/journal - - if use pam; then - if use selinux; then - newpamd "${FILESDIR}"/systemd-user-selinux.pam systemd-user - else - newpamd "${FILESDIR}"/systemd-user.pam systemd-user - fi - fi - - if use kernel-install; then - # Dummy config, remove to make room for sys-kernel/installkernel - rm "${ED}/usr/lib/kernel/install.conf" || die - fi - - use ukify && python_fix_shebang "${ED}" - use boot && secureboot_auto_sign -} - -migrate_locale() { - local envd_locale_def="${EROOT}/etc/env.d/02locale" - local envd_locale=( "${EROOT}"/etc/env.d/??locale ) - local locale_conf="${EROOT}/etc/locale.conf" - - if [[ ! -L ${locale_conf} && ! -e ${locale_conf} ]]; then - # If locale.conf does not exist... - if [[ -e ${envd_locale} ]]; then - # ...either copy env.d/??locale if there's one - ebegin "Moving ${envd_locale} to ${locale_conf}" - mv "${envd_locale}" "${locale_conf}" - eend ${?} || FAIL=1 - else - # ...or create a dummy default - ebegin "Creating ${locale_conf}" - cat > "${locale_conf}" <<-EOF - # This file has been created by the sys-apps/systemd ebuild. - # See locale.conf(5) and localectl(1). - - # LANG=${LANG} - EOF - eend ${?} || FAIL=1 - fi - fi - - if [[ ! -L ${envd_locale} ]]; then - # now, if env.d/??locale is not a symlink (to locale.conf)... - if [[ -e ${envd_locale} ]]; then - # ...warn the user that he has duplicate locale settings - ewarn - ewarn "To ensure consistent behavior, you should replace ${envd_locale}" - ewarn "with a symlink to ${locale_conf}. Please migrate your settings" - ewarn "and create the symlink with the following command:" - ewarn "ln -s -n -f ../locale.conf ${envd_locale}" - ewarn - else - # ...or just create the symlink if there's nothing here - ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink" - ln -n -s ../locale.conf "${envd_locale_def}" - eend ${?} || FAIL=1 - fi - fi -} - -pkg_preinst() { - if [[ -e ${EROOT}/etc/sysctl.conf ]]; then - # Symlink /etc/sysctl.conf for easy migration. - dosym ../../../etc/sysctl.conf /usr/lib/sysctl.d/99-sysctl.conf - fi - - if ! use boot && has_version "sys-apps/systemd[gnuefi(-)]"; then - ewarn "The 'gnuefi' USE flag has been renamed to 'boot'." - ewarn "Make sure to enable the 'boot' USE flag if you use systemd-boot." - fi -} - -pkg_postinst() { - systemd_update_catalog - - # Keep this here in case the database format changes so it gets updated - # when required. - systemd-hwdb --root="${ROOT}" update - - udev_reload || FAIL=1 - - # Bug 465468, make sure locales are respected, and ensure consistency - # between OpenRC & systemd - migrate_locale - - if [[ -z ${REPLACING_VERSIONS} ]]; then - if type systemctl &>/dev/null; then - systemctl --root="${ROOT:-/}" enable getty@.service remote-fs.target || FAIL=1 - fi - elog "To enable a useful set of services, run the following:" - elog " systemctl preset-all --preset-mode=enable-only" - fi - - if [[ -L ${EROOT}/var/lib/systemd/timesync ]]; then - rm "${EROOT}/var/lib/systemd/timesync" - fi - - if [[ -z ${ROOT} && -d /run/systemd/system ]]; then - ebegin "Reexecuting system manager (systemd)" - systemctl daemon-reexec - eend $? || FAIL=1 - - # https://lists.freedesktop.org/archives/systemd-devel/2024-June/050466.html - ebegin "Signaling user managers to reexec" - systemctl kill --kill-whom='main' --signal='SIGRTMIN+25' 'user@*.service' - eend $? - fi - - if [[ ${FAIL} ]]; then - eerror "One of the postinst commands failed. Please check the postinst output" - eerror "for errors. You may need to clean up your system and/or try installing" - eerror "systemd again." - eerror - fi - - if use boot; then - optfeature "installing kernels in systemd-boot's native layout and update loader entries" \ - "sys-kernel/installkernel[systemd-boot]" - fi - if use ukify; then - optfeature "generating unified kernel image on each kernel installation" \ - "sys-kernel/installkernel[ukify]" - fi -} - -pkg_prerm() { - # If removing systemd completely, remove the catalog database. - if [[ ! ${REPLACED_BY_VERSION} ]]; then - rm -f -v "${EROOT}"/var/lib/systemd/catalog/database - fi -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-258.3.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-258.3.ebuild index 907745ccf0e..1d462d6ea41 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-258.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-258.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 2011-2025 Gentoo Authors +# Copyright 2011-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -20,7 +20,7 @@ else SRC_URI="https://github.com/systemd/${PN}/archive/refs/tags/v${MY_PV}.tar.gz -> ${MY_P}.tar.gz" if [[ ${PV} != *rc* ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" fi fi @@ -280,6 +280,7 @@ src_prepare() { local PATCHES=( "${FILESDIR}/systemd-258-shared-add-missing-alloc-util.patch" "${FILESDIR}/systemd-258.3-kernel-install-test.patch" + "${FILESDIR}/systemd-259-test-echo.patch" ) if ! use vanilla; then diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-257.10.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-259.1.ebuild similarity index 93% rename from sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-257.10.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-259.1.ebuild index 3cee9769ce1..1750925132c 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-257.10.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-259.1.ebuild @@ -1,8 +1,8 @@ -# Copyright 2011-2025 Gentoo Authors +# Copyright 2011-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PYTHON_COMPAT=( python3_{11..13} ) +PYTHON_COMPAT=( python3_{11..14} ) # Avoid QA warnings TMPFILES_OPTIONAL=1 @@ -20,12 +20,12 @@ else SRC_URI="https://github.com/systemd/${PN}/archive/refs/tags/v${MY_PV}.tar.gz -> ${MY_P}.tar.gz" if [[ ${PV} != *rc* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" fi fi -inherit bash-completion-r1 linux-info meson-multilib optfeature pam python-single-r1 -inherit secureboot systemd toolchain-funcs udev +inherit branding linux-info meson-multilib optfeature pam python-single-r1 +inherit secureboot shell-completion systemd toolchain-funcs udev DESCRIPTION="System and service manager for Linux" HOMEPAGE="https://systemd.io/" @@ -35,15 +35,17 @@ SLOT="0/2" IUSE=" acl apparmor audit boot bpf cgroup-hybrid cryptsetup curl +dns-over-tls elfutils fido2 +gcrypt gnutls homed http idn importd iptables +kernel-install +kmod - +lz4 lzma +openssl pam pcre pkcs11 policykit pwquality qrcode + +lz4 lzma +openssl pam passwdqc pcre pkcs11 policykit pwquality qrcode +resolvconf +seccomp selinux split-usr +sysv-utils test tpm ukify vanilla xkb +zstd " REQUIRED_USE=" ${PYTHON_REQUIRED_USE} - dns-over-tls? ( || ( gnutls openssl ) ) + dns-over-tls? ( openssl ) fido2? ( cryptsetup openssl ) homed? ( cryptsetup pam openssl ) - importd? ( curl lzma || ( gcrypt openssl ) ) + importd? ( curl lzma openssl ) + ?? ( passwdqc pwquality ) + passwdqc? ( homed ) pwquality? ( homed ) boot? ( kernel-install ) ukify? ( boot ) @@ -63,7 +65,9 @@ COMMON_DEPEND=" cryptsetup? ( >=sys-fs/cryptsetup-2.0.1:0= ) curl? ( >=net-misc/curl-7.32.0:0= ) elfutils? ( >=dev-libs/elfutils-0.158:0= ) - fido2? ( dev-libs/libfido2:0= ) + fido2? ( + dev-libs/libfido2:0= + ) gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] ) gnutls? ( >=net-libs/gnutls-3.6.0:0= ) http? ( >=net-libs/libmicrohttpd-0.9.33:0=[epoll(+)] ) @@ -78,6 +82,7 @@ COMMON_DEPEND=" iptables? ( net-firewall/iptables:0= ) openssl? ( >=dev-libs/openssl-1.1.0:0= ) pam? ( sys-libs/pam:=[${MULTILIB_USEDEP}] ) + passwdqc? ( sys-auth/passwdqc:0= ) pkcs11? ( >=app-crypt/p11-kit-0.23.3:0= ) pcre? ( dev-libs/libpcre2 ) pwquality? ( >=dev-libs/libpwquality-1.4.1:0= ) @@ -105,6 +110,7 @@ RDEPEND="${COMMON_DEPEND} >=acct-group/utmp-0-r1 >=acct-group/audio-0-r1 >=acct-group/cdrom-0-r1 + acct-group/clock >=acct-group/dialout-0-r1 >=acct-group/disk-0-r1 >=acct-group/input-0-r1 @@ -125,6 +131,7 @@ RDEPEND="${COMMON_DEPEND} >=acct-user/systemd-resolve-0-r1 >=acct-user/systemd-timesync-0-r1 >=sys-apps/baselayout-2.2 + elibc_musl? ( >=sys-libs/musl-1.2.5-r8 ) ukify? ( ${PYTHON_DEPS} $(python_gen_cond_dep "${PEFILE_DEPEND}") @@ -272,12 +279,12 @@ src_unpack() { src_prepare() { local PATCHES=( - "${FILESDIR}"/systemd-257-cred-util-tpm2.patch + "${FILESDIR}/systemd-259-test-echo.patch" ) if ! use vanilla; then PATCHES+=( - "${FILESDIR}/gentoo-journald-audit-r1.patch" + "${FILESDIR}/gentoo-journald-audit-r4.patch" ) fi @@ -299,10 +306,12 @@ multilib_src_configure() { -Ddocdir="share/doc/${PF}" # default is developer, bug 918671 -Dmode=release - -Dsupport-url="https://gentoo.org/support/" + -Dsupport-url="${BRANDING_OS_SUPPORT_URL}" -Dpamlibdir="$(getpam_mod_dir)" + -Dlibc=$(usex elibc_musl musl glibc) # avoid bash-completion dep -Dbashcompletiondir="$(get_bashcompdir)" + -Dzshcompletiondir="$(get_zshcompdir)" -Dsplit-bin=false # Disable compatibility with sysvinit -Dsysvinit-path= @@ -336,11 +345,11 @@ multilib_src_configure() { $(meson_native_use_feature kmod) $(meson_feature lz4) $(meson_feature lzma xz) - $(meson_use test tests) $(meson_feature zstd) $(meson_native_use_feature iptables libiptc) $(meson_native_use_feature openssl) $(meson_feature pam) + $(meson_native_use_feature passwdqc) $(meson_native_use_feature pkcs11 p11kit) $(meson_native_use_feature pcre pcre2) $(meson_native_use_feature policykit polkit) @@ -379,6 +388,13 @@ multilib_src_configure() { $(meson_native_true vconsole) ) + # workaround for bug 969103 + if [[ ${CHOST} == riscv32* ]] ; then + myconf+=( -Dtests=true ) + else + myconf+=( $(meson_use test tests) ) + fi + case $(tc-arch) in amd64|arm|arm64|loong|ppc|ppc64|riscv|s390|x86) # src/vmspawn/vmspawn-util.h: QEMU_MACHINE_TYPE diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-258.2.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-259.2.ebuild similarity index 96% rename from sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-258.2.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-259.2.ebuild index b8ecef36547..5a6103b359b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-258.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-259.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 2011-2025 Gentoo Authors +# Copyright 2011-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -24,8 +24,8 @@ else fi fi -inherit bash-completion-r1 linux-info meson-multilib optfeature pam python-single-r1 -inherit secureboot systemd toolchain-funcs udev +inherit branding linux-info meson-multilib optfeature pam python-single-r1 +inherit secureboot shell-completion systemd toolchain-funcs udev DESCRIPTION="System and service manager for Linux" HOMEPAGE="https://systemd.io/" @@ -131,6 +131,7 @@ RDEPEND="${COMMON_DEPEND} >=acct-user/systemd-resolve-0-r1 >=acct-user/systemd-timesync-0-r1 >=sys-apps/baselayout-2.2 + elibc_musl? ( >=sys-libs/musl-1.2.5-r8 ) ukify? ( ${PYTHON_DEPS} $(python_gen_cond_dep "${PEFILE_DEPEND}") @@ -278,12 +279,11 @@ src_unpack() { src_prepare() { local PATCHES=( - "${FILESDIR}/systemd-258-shared-add-missing-alloc-util.patch" ) if ! use vanilla; then PATCHES+=( - "${FILESDIR}/gentoo-journald-audit-r3.patch" + "${FILESDIR}/gentoo-journald-audit-r4.patch" ) fi @@ -305,10 +305,12 @@ multilib_src_configure() { -Ddocdir="share/doc/${PF}" # default is developer, bug 918671 -Dmode=release - -Dsupport-url="https://gentoo.org/support/" + -Dsupport-url="${BRANDING_OS_SUPPORT_URL}" -Dpamlibdir="$(getpam_mod_dir)" + -Dlibc=$(usex elibc_musl musl glibc) # avoid bash-completion dep -Dbashcompletiondir="$(get_bashcompdir)" + -Dzshcompletiondir="$(get_zshcompdir)" -Dsplit-bin=false # Disable compatibility with sysvinit -Dsysvinit-path= @@ -342,7 +344,6 @@ multilib_src_configure() { $(meson_native_use_feature kmod) $(meson_feature lz4) $(meson_feature lzma xz) - $(meson_use test tests) $(meson_feature zstd) $(meson_native_use_feature iptables libiptc) $(meson_native_use_feature openssl) @@ -386,6 +387,13 @@ multilib_src_configure() { $(meson_native_true vconsole) ) + # workaround for bug 969103 + if [[ ${CHOST} == riscv32* ]] ; then + myconf+=( -Dtests=true ) + else + myconf+=( $(meson_use test tests) ) + fi + case $(tc-arch) in amd64|arm|arm64|loong|ppc|ppc64|riscv|s390|x86) # src/vmspawn/vmspawn-util.h: QEMU_MACHINE_TYPE diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-259.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-259.ebuild index f17ee9848ec..83d7f3cc534 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-259.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-259.ebuild @@ -131,6 +131,7 @@ RDEPEND="${COMMON_DEPEND} >=acct-user/systemd-resolve-0-r1 >=acct-user/systemd-timesync-0-r1 >=sys-apps/baselayout-2.2 + elibc_musl? ( >=sys-libs/musl-1.2.5-r8 ) ukify? ( ${PYTHON_DEPS} $(python_gen_cond_dep "${PEFILE_DEPEND}") @@ -278,6 +279,7 @@ src_unpack() { src_prepare() { local PATCHES=( + "${FILESDIR}/systemd-259-vmspawn-use-indexed-loop.patch" ) if ! use vanilla; then @@ -306,6 +308,7 @@ multilib_src_configure() { -Dmode=release -Dsupport-url="https://gentoo.org/support/" -Dpamlibdir="$(getpam_mod_dir)" + -Dlibc=$(usex elibc_musl musl glibc) # avoid bash-completion dep -Dbashcompletiondir="$(get_bashcompdir)" -Dsplit-bin=false diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-9999.ebuild index ade9936865f..5a6103b359b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/systemd/systemd-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 2011-2025 Gentoo Authors +# Copyright 2011-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -24,8 +24,8 @@ else fi fi -inherit bash-completion-r1 linux-info meson-multilib optfeature pam python-single-r1 -inherit secureboot systemd toolchain-funcs udev +inherit branding linux-info meson-multilib optfeature pam python-single-r1 +inherit secureboot shell-completion systemd toolchain-funcs udev DESCRIPTION="System and service manager for Linux" HOMEPAGE="https://systemd.io/" @@ -131,6 +131,7 @@ RDEPEND="${COMMON_DEPEND} >=acct-user/systemd-resolve-0-r1 >=acct-user/systemd-timesync-0-r1 >=sys-apps/baselayout-2.2 + elibc_musl? ( >=sys-libs/musl-1.2.5-r8 ) ukify? ( ${PYTHON_DEPS} $(python_gen_cond_dep "${PEFILE_DEPEND}") @@ -304,10 +305,12 @@ multilib_src_configure() { -Ddocdir="share/doc/${PF}" # default is developer, bug 918671 -Dmode=release - -Dsupport-url="https://gentoo.org/support/" + -Dsupport-url="${BRANDING_OS_SUPPORT_URL}" -Dpamlibdir="$(getpam_mod_dir)" + -Dlibc=$(usex elibc_musl musl glibc) # avoid bash-completion dep -Dbashcompletiondir="$(get_bashcompdir)" + -Dzshcompletiondir="$(get_zshcompdir)" -Dsplit-bin=false # Disable compatibility with sysvinit -Dsysvinit-path= @@ -341,7 +344,6 @@ multilib_src_configure() { $(meson_native_use_feature kmod) $(meson_feature lz4) $(meson_feature lzma xz) - $(meson_use test tests) $(meson_feature zstd) $(meson_native_use_feature iptables libiptc) $(meson_native_use_feature openssl) @@ -385,6 +387,13 @@ multilib_src_configure() { $(meson_native_true vconsole) ) + # workaround for bug 969103 + if [[ ${CHOST} == riscv32* ]] ; then + myconf+=( -Dtests=true ) + else + myconf+=( $(meson_use test tests) ) + fi + case $(tc-arch) in amd64|arm|arm64|loong|ppc|ppc64|riscv|s390|x86) # src/vmspawn/vmspawn-util.h: QEMU_MACHINE_TYPE From 3366503d7b72326e7e34102248aa42277ab3e5f8 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:21 +0000 Subject: [PATCH 212/291] sys-apps/texinfo: Sync with Gentoo It's from Gentoo commit 2db0391ce7d6ba34f974f57468ac79300dfc7419. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-apps/texinfo/Manifest | 3 + .../sys-apps/texinfo/texinfo-7.2-r4.ebuild | 25 ++-- .../sys-apps/texinfo/texinfo-7.2.92.ebuild | 108 ++++++++++++++++++ .../sys-apps/texinfo/texinfo-9999.ebuild | 29 +++-- 4 files changed, 151 insertions(+), 14 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.2.92.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/Manifest index 845d7e05717..0e2730a25a8 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/Manifest @@ -1 +1,4 @@ +DIST texinfo-7.2.92.tar.xz 6931756 BLAKE2B 0048ddd72dddb3bc58e05f0562514e80495fd98eb4c9b1fb950c941bec729dd07ac8575a5685ea63cfa993143f2e9c1c34df89dc5feb16407dfb314d82c24bd4 SHA512 3aafc0cb035e0f72e5539473cc76d9b0795f496d24cc6e128fec54b267b5b9a1b6ba4ee721dffd014a5a17d2eac0ed440b615a9c65918e2c74ce1e601dfdf654 +DIST texinfo-7.2.92.tar.xz.sig 265 BLAKE2B ca333bd4010df6d78b36eb5b4bbe414859946c75726b16973e479a9f44bcc4f6e76d9c596f09da8e67fee06d63e1a59c028220b4db79efca6fabb4f9dcfbcb25 SHA512 259e280d13e880d3a82ef28fd670f5ef1d0bd8aacc915f9053420cc414c317e6f13d8c5501162b41ee0d7b6f5d764152a410b92bc20532fa3a89f59418600b9c DIST texinfo-7.2.tar.xz 6408432 BLAKE2B fc6bd020310a437a73d5723d257ca3da1d15329e9e668fa78c49ac77759c2c990d4422c2a7071b217ea214b88389a0cbb43d3fcfa5fe9bf9651270167b15c342 SHA512 8e67337ae12a552fc620c43725507a4978710ea6630e98b0f5e98eb3f79a90e191dde5225699aa6217c26f171d277461f76150f0459cd07b40c3234d2f3d89bf +DIST texinfo-7.2.tar.xz.sig 265 BLAKE2B dc3a1b157efce581ff67b1605c646a5c78fe355176376b2ec8f5d35f0b1e28fc86ef03e73fe2f2ba4e50cc893d1ad379f6be1b8b627a6eb78560b37aeb37c880 SHA512 fcb5bcf655e16f8994b33242516cff7f5dc6684555c889fee4a4e5b01cbc9c8163d6ea5c77722b2bb8d6f65120650de4daff027bee135d1c29f82316211d8fb4 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.2-r4.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.2-r4.ebuild index 5beb2a5de96..a5d47973213 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.2-r4.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.2-r4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Note: if your package uses the texi2dvi utility, it must depend on the @@ -22,13 +22,24 @@ if [[ ${PV} == 9999 ]]; then >=dev-build/automake-1.16 dev-build/libtool " -elif [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then - SRC_URI="https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz" - REGEN_BDEPEND="" else - SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" - REGEN_BDEPEND="" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/texinfo.asc + inherit verify-sig + + if [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then + SRC_URI=" + https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz + verify-sig? ( https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz.sig ) + " + REGEN_BDEPEND="verify-sig? ( sec-keys/openpgp-keys-texinfo )" + else + SRC_URI=" + mirror://gnu/${PN}/${P}.tar.xz + verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig ) + " + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + REGEN_BDEPEND="verify-sig? ( sec-keys/openpgp-keys-texinfo )" + fi fi LICENSE="GPL-3+" diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.2.92.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.2.92.ebuild new file mode 100644 index 00000000000..3989edaf83e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.2.92.ebuild @@ -0,0 +1,108 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Note: if your package uses the texi2dvi utility, it must depend on the +# virtual/texi2dvi package to pull in all the right deps. The tool is not +# usable out-of-the-box because it requires the large tex packages. + +# Keep an eye on the release/$(ver_cut 1-2) branch upstream for backports. + +EAPI=8 + +inherit flag-o-matic toolchain-funcs + +DESCRIPTION="The GNU info program and utilities" +HOMEPAGE="https://www.gnu.org/software/texinfo/" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://git.savannah.gnu.org/git/texinfo.git" + REGEN_BDEPEND=" + >=dev-build/autoconf-2.62 + >=dev-build/automake-1.16 + dev-build/libtool + " +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/texinfo.asc + inherit verify-sig + + if [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then + SRC_URI=" + https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz + verify-sig? ( https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz.sig ) + " + REGEN_BDEPEND="verify-sig? ( sec-keys/openpgp-keys-texinfo )" + else + SRC_URI=" + mirror://gnu/${PN}/${P}.tar.xz + verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig ) + " + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + REGEN_BDEPEND="verify-sig? ( sec-keys/openpgp-keys-texinfo )" + fi +fi + +LICENSE="GPL-3+" +SLOT="0" +IUSE="nls +standalone static test" +RESTRICT="!test? ( test )" + +RDEPEND=" + || ( app-doc/info-manual >=app-editors/emacs-26:* ) + >=sys-libs/ncurses-5.2-r2:= + standalone? ( >=dev-lang/perl-5.8.1 ) + !standalone? ( + >=dev-lang/perl-5.8.1:= + dev-libs/libunistring:= + ) + nls? ( virtual/libintl ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + ${REGEN_BDEPEND} + nls? ( >=sys-devel/gettext-0.19.6 ) +" + +src_prepare() { + default + + if [[ ${PV} == 9999 ]]; then + ./autogen.sh || die + fi + + # Needed if a patch touches install-info.c + #touch man/install-info.1 || die + + if use prefix ; then + sed -i -e '1c\#!/usr/bin/env sh' util/texi2dvi util/texi2pdf || die + touch {doc,man}/{texi2dvi,texi2pdf,pdftexi2dvi}.1 || die + fi +} + +src_configure() { + # Respect compiler and CPPFLAGS/CFLAGS/LDFLAGS for Perl extensions + # bug #622576 + local -x PERL_EXT_CC="$(tc-getCC)" PERL_EXT_CPPFLAGS="${CPPFLAGS}" + local -x PERL_EXT_CFLAGS="${CFLAGS}" PERL_EXT_LDFLAGS="${LDFLAGS}" + + use static && append-ldflags -static + + # TODO: + # --with-external-Unicode-EastAsianWidth + # --with-external-Text-Unidecode + # --with-external-libintl-perl + # --enable-perl-xs + # --enable-xs-perl-libintl for musl (7.2)? + # --with-swig + # + # Also, 7.0.91 seemed to introduce a included-libunistring w/ USE=-standalone + # but it doesn't seem to do anything? + local myeconfargs=( + --cache-file="${S}"/config.cache + $(use_enable nls) + $(use_enable !standalone perl-xs) + $(use_enable test t2a-tests) + ) + + econf "${myeconfargs[@]}" +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-9999.ebuild index 3b8ef640211..bf8c85bb893 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Note: if your package uses the texi2dvi utility, it must depend on the @@ -22,13 +22,24 @@ if [[ ${PV} == 9999 ]]; then >=dev-build/automake-1.16 dev-build/libtool " -elif [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then - SRC_URI="https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz" - REGEN_BDEPEND="" else - SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" - REGEN_BDEPEND="" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/texinfo.asc + inherit verify-sig + + if [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then + SRC_URI=" + https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz + verify-sig? ( https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz.sig ) + " + REGEN_BDEPEND="verify-sig? ( sec-keys/openpgp-keys-texinfo )" + else + SRC_URI=" + mirror://gnu/${PN}/${P}.tar.xz + verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig ) + " + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + REGEN_BDEPEND="verify-sig? ( sec-keys/openpgp-keys-texinfo )" + fi fi LICENSE="GPL-3+" @@ -78,7 +89,10 @@ src_configure() { # TODO: # --with-external-Unicode-EastAsianWidth # --with-external-Text-Unidecode + # --with-external-libintl-perl + # --enable-perl-xs # --enable-xs-perl-libintl for musl (7.2)? + # --with-swig # # Also, 7.0.91 seemed to introduce a included-libunistring w/ USE=-standalone # but it doesn't seem to do anything? @@ -86,6 +100,7 @@ src_configure() { --cache-file="${S}"/config.cache $(use_enable nls) $(use_enable !standalone perl-xs) + $(use_enable test t2a-tests) ) econf "${myeconfargs[@]}" From 9ebe163256d43a5b7e91a790dcd4d68faac2820b Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:22 +0000 Subject: [PATCH 213/291] sys-apps/util-linux: Sync with Gentoo It's from Gentoo commit 30f97ef60bcf594d956ea2140533f311f1d88d41. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-apps/util-linux/Manifest | 4 - .../util-linux/util-linux-2.40.4.ebuild | 458 ----------------- .../util-linux/util-linux-2.41.1-r1.ebuild | 467 ------------------ .../util-linux/util-linux-2.41.3.ebuild | 11 +- .../util-linux/util-linux-9999.ebuild | 9 +- 5 files changed, 7 insertions(+), 942 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-2.40.4.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-2.41.1-r1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/Manifest index 70b6adcfcfd..9678067c53c 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/Manifest @@ -1,7 +1,3 @@ -DIST util-linux-2.40.4.tar.sign 833 BLAKE2B 7ed5fe555bc5fe11e99081190e73d0784e91bed78e17af358287c0df6c920a224f8d33428a5f139d8503b12379e93a96619bf4b8e3eec0da757e950c78ad12fe SHA512 1ed2f8710a702e313d690c9c071c7a151df1cef7527a08ab4d1eda7a293239cf00392a78b21125df09f0af7249b473b1a51b92bb8e0494608db437c7ee4e0473 -DIST util-linux-2.40.4.tar.xz 8848216 BLAKE2B 37c095d0ab97d54dd5a35160dd4d7d3ac683c19c799d57dac3a2e850a824160470e8654fbc77752cad9a9b1198cd1aa6594e8fa66f498c653c8a9f34ef0203e8 SHA512 0024955056ba7b4c54040a917f9919f49692e57ba6d42d17a6c29c1eefe88bf48b1214a545072b71c468829a63a8f15237f49733e9127c134e11126d1e435124 -DIST util-linux-2.41.1.tar.sign 833 BLAKE2B ee9d199bf6e073d1c55ee99e9b8e997e59b0c7dd1cf0ee4fa1799540887c473e23a87704a2095c461fd52aea0c765e011504d19c87a681709a96475bd5bc3e35 SHA512 0cf22edee77269142738d6e7587381be3ddc443a1c524e398c1867849297919b27ef18f5bab0b721c890d7cad93cb6dbbe6c89b099d7aa688840711852867101 -DIST util-linux-2.41.1.tar.xz 9606156 BLAKE2B 0734e461837d825a8c0f770061cc005cef9238beea15dd900283481bcec66a971492a898cd44581e889fd1af25cf631e16a687d3f0df0a86a8caa15e7f45c935 SHA512 12cf37ab2d62d0378b16a40e0194ef7131ef1ad06737cca3f169cfc04b9da08a4233076c819b30705e8fb2c3b8d91a1d83aac4f036ce58b9cf5928f545e511a2 DIST util-linux-2.41.2.tar.sign 833 BLAKE2B b2fbccf627769f6d49ada61176be28d3badad6834a5c4d0e90d4838372b6072bdfdfcfb6f144221e59ced68ac9281720f40b20795b878bc29cff1de14ccfb9e7 SHA512 05ecccd24fbeea38a8579907629264550a309cfdfa63fa6eab756c0fc3cd182e9764101731424c1421d1ed950c2c1e41cf210abcd9c2837323c657292cdc9a0d DIST util-linux-2.41.2.tar.xz 9612488 BLAKE2B 96cf8022a2d727df373f717fcca750e4f3ffd365f50af35cb805fecb7fa39962dea134fab7efdb9dfdc5aa6ac721e758e2ea40254e21d3fd9e9e5e4b2d25aa91 SHA512 696c87e7cf185acc9b4b969ddade6155ea2945ae494eaecfd7b1f35d9607166cb09be79878fb793dd31b4d4dcac8c9be4be76af3886185db7ae8b58c303fb0cf DIST util-linux-2.41.3.tar.sign 833 BLAKE2B 1b982a71fb7ab5f9d0d0cd0811abd48fc884578bf6528fcd590fcacf8eea8b0dcf20c3395b353b9cdbded2f5a91a38fa9b78b4d88d57fcdf961b28689036da10 SHA512 5aa90af75595867c534dc2853c16e742e0139f4c9bfb5a9dfc3e54bb27d8516d26bd074e7c24477910bb8ee63be8c1eb289bbdf56356cb60db991998d6793ef4 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-2.40.4.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-2.40.4.ebuild deleted file mode 100644 index cf3dd0e70fd..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-2.40.4.ebuild +++ /dev/null @@ -1,458 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..13} ) -TMPFILES_OPTIONAL=1 - -inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 \ - pam python-r1 multilib-minimal multiprocessing systemd tmpfiles - -MY_PV="${PV/_/-}" -MY_P="${PN}-${MY_PV}" - -DESCRIPTION="Various useful Linux utilities" -HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/util-linux/util-linux" - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git" - inherit autotools git-r3 -else - VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/karelzak.asc - inherit verify-sig - - if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos" - fi - - SRC_URI="https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz" - SRC_URI+=" verify-sig? ( https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.sign )" -fi - -S="${WORKDIR}/${MY_P}" - -LICENSE="GPL-2 GPL-3 LGPL-2.1 BSD-4 MIT public-domain" -SLOT="0" -IUSE="audit build caps +cramfs cryptsetup fdformat +hardlink kill +logger magic ncurses nls pam python +readline rtas selinux slang static-libs +su +suid systemd test tty-helpers udev unicode uuidd" - -# Most lib deps here are related to programs rather than our libs, -# so we rarely need to specify ${MULTILIB_USEDEP}. -RDEPEND=" - virtual/libcrypt:= - audit? ( >=sys-process/audit-2.6:= ) - caps? ( sys-libs/libcap-ng ) - cramfs? ( virtual/zlib:= ) - cryptsetup? ( >=sys-fs/cryptsetup-2.1.0 ) - hardlink? ( dev-libs/libpcre2:= ) - ncurses? ( - sys-libs/ncurses:=[unicode(+)?] - magic? ( sys-apps/file:0= ) - ) - nls? ( virtual/libintl[${MULTILIB_USEDEP}] ) - pam? ( sys-libs/pam ) - python? ( ${PYTHON_DEPS} ) - readline? ( sys-libs/readline:0= ) - rtas? ( sys-libs/librtas ) - selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] ) - slang? ( sys-libs/slang ) - !build? ( - systemd? ( sys-apps/systemd ) - udev? ( virtual/libudev:= ) - ) -" -BDEPEND=" - virtual/pkgconfig - nls? ( - app-text/po4a - sys-devel/gettext - ) - test? ( app-alternatives/bc ) -" -DEPEND=" - ${RDEPEND} - virtual/os-headers - acct-group/root -" -RDEPEND+=" - hardlink? ( !app-arch/hardlink ) - logger? ( !>=app-admin/sysklogd-2.0[logger] ) - kill? ( - !sys-apps/coreutils[kill] - !sys-process/procps[kill] - ) - su? ( - !<sys-apps/shadow-4.7-r2 - !>=sys-apps/shadow-4.7-r2[su] - ) - uuidd? ( - acct-user/uuidd - systemd? ( virtual/tmpfiles ) - ) - !net-wireless/rfkill -" - -if [[ ${PV} == 9999 ]] ; then - # Required for man-page generation - BDEPEND+=" dev-ruby/asciidoctor" -else - BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-karelzak-20230517 )" -fi - -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) su? ( pam )" -RESTRICT="!test? ( test )" - -pkg_pretend() { - if use su && ! use suid ; then - elog "su will be installed as suid despite USE=-suid (bug #832092)" - elog "To use su without suid, see e.g. Portage's suidctl feature." - fi -} - -src_unpack() { - if [[ ${PV} == 9999 ]] ; then - git-r3_src_unpack - return - fi - - # Upstream sign the decompressed .tar - if use verify-sig; then - einfo "Unpacking ${MY_P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${MY_P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" - else - default - fi -} - -src_prepare() { - default - - if use test ; then - # Known-failing tests - local known_failing_tests=( - # Subtest 'options-maximum-size-8192' fails - hardlink/options - - # Fails in sandbox - # re ioctl_ns: https://github.com/util-linux/util-linux/issues/2967 - lsns/ioctl_ns - lsfd/mkfds-inotify - lsfd/mkfds-symlink - lsfd/mkfds-rw-character-device - # Fails with network-sandbox at least in nspawn - lsfd/option-inet - utmp/last-ipv6 - - # Fails with permission errors in nspawn - fadvise/drop - fincore/count - - # Flaky - rename/subdir - - # Permission issues on /dev/random - lsfd/mkfds-eventpoll - lsfd/column-xmode - ) - - # debug prints confuse the tests which look for a diff - # in output - if has_version "=app-shells/bash-5.3_alpha*" ; then - known_failing_tests+=( - lsfd/column-ainodeclass - lsfd/mkfds-netlink-protocol - lsfd/column-type - lsfd/mkfds-eventfd - lsfd/mkfds-signalfd - lsfd/mkfds-mqueue - lsfd/mkfds-tcp6 - lsfd/mkfds-tcp - lsfd/filter-floating-point-nums - lsfd/mkfds-unix-stream-requiring-sockdiag - lsfd/mkfds-unix-dgram - lsfd/mkfds-directory - lsfd/mkfds-pty - lsfd/mkfds-pipe-no-fork - lsfd/mkfds-unix-stream - lsfd/mkfds-ro-regular-file - lsfd/mkfds-timerfd - lsfd/mkfds-udp - lsfd/mkfds-udp6 - ) - fi - - local known_failing_test - for known_failing_test in "${known_failing_tests[@]}" ; do - einfo "Removing known-failing test: ${known_failing_test}" - rm tests/ts/${known_failing_test} || die - done - fi - - if [[ ${PV} == 9999 ]] ; then - po/update-potfiles - eautoreconf - else - elibtoolize - fi -} - -python_configure() { - local myeconfargs=( - "${commonargs[@]}" - --disable-all-programs - --disable-bash-completion - --without-systemdsystemunitdir - --with-python - --enable-libblkid - --enable-libmount - --enable-pylibmount - ) - - mkdir "${BUILD_DIR}" || die - pushd "${BUILD_DIR}" >/dev/null || die - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" - popd >/dev/null || die -} - -multilib_src_configure() { - # The scanf test in a run-time test which fails while cross-compiling. - # Blindly assume a POSIX setup since we require libmount, and libmount - # itself fails when the scanf test fails. bug #531856 - tc-is-cross-compiler && export scanf_cv_alloc_modifier=ms - - # bug #485486 - export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) - # bug #545042 - export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam) - - # Undo bad ncurses handling by upstream. Fall back to pkg-config. - # bug #601530 - export NCURSES6_CONFIG=false NCURSES5_CONFIG=false - export NCURSESW6_CONFIG=false NCURSESW5_CONFIG=false - - # Avoid automagic dependency on ppc* - export ac_cv_lib_rtas_rtas_get_sysparm=$(usex rtas) - - # configure args shared by python and non-python builds - local commonargs=( - --localstatedir="${EPREFIX}/var" - --runstatedir="${EPREFIX}/run" - --enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" - ) - - local myeconfargs=( - "${commonargs[@]}" - --with-bashcompletiondir="$(get_bashcompdir)" - --without-python - $(multilib_native_use_enable suid makeinstall-chown) - $(multilib_native_use_enable suid makeinstall-setuid) - $(multilib_native_use_with readline) - $(multilib_native_use_with slang) - $(multilib_native_usex ncurses "$(use_with magic libmagic)" '--without-libmagic') - $(multilib_native_usex ncurses "$(use_with unicode ncursesw)" '--without-ncursesw') - $(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses') - $(multilib_native_use_with audit) - $(tc-has-tls || echo --disable-tls) - $(use_enable nls) - $(use_enable nls poman) - $(use_enable unicode widechar) - $(use_enable static-libs static) - $(use_with ncurses tinfo) - $(use_with selinux) - $(multilib_native_use_enable uuidd) - - # TODO: Wire this up (bug #931118) - --without-econf - - # TODO: Wire this up (bug #931297) - # TODO: investigate build failure w/ 2.40.1_rc1 - --disable-liblastlog2 - --disable-pam-lastlog2 - ) - - if use build ; then - myeconfargs+=( - --without-systemd - --without-udev - ) - else - myeconfargs+=( - $(multilib_native_use_with systemd) - $(multilib_native_use_with udev) - ) - fi - - if multilib_is_native_abi ; then - myeconfargs+=( - --disable-chfn-chsh - --disable-login - --disable-newgrp - --disable-nologin - --disable-pylibmount - --disable-raw - --disable-vipw - --enable-agetty - --enable-bash-completion - --enable-line - --enable-partx - --enable-rename - --enable-rfkill - --enable-schedutils - --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" - --with-tmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d - $(use_enable caps setpriv) - $(use_enable cramfs) - $(use_enable fdformat) - $(use_enable hardlink) - $(use_enable kill) - $(use_enable logger) - $(use_enable ncurses pg) - $(use_enable su) - $(use_enable tty-helpers mesg) - $(use_enable tty-helpers wall) - $(use_enable tty-helpers write) - $(use_with cryptsetup) - ) - if [[ ${PV} == *9999 ]] ; then - myeconfargs+=( --enable-asciidoc ) - else - # Upstream is shipping pre-generated man-pages for releases - myeconfargs+=( --disable-asciidoc ) - fi - else - myeconfargs+=( - --disable-all-programs - --disable-asciidoc - --disable-bash-completion - --without-systemdsystemunitdir - --disable-poman - - # build libraries - --enable-libuuid - --enable-libblkid - --enable-libsmartcols - --enable-libfdisk - --enable-libmount - - # Support uuidd for non-native libuuid - $(use_enable uuidd libuuid-force-uuidd) - ) - fi - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" - - if multilib_is_native_abi && use python ; then - python_foreach_impl python_configure - fi -} - -src_configure() { - append-lfs-flags - multilib-minimal_src_configure -} - -python_compile() { - pushd "${BUILD_DIR}" >/dev/null || die - emake all - popd >/dev/null || die -} - -multilib_src_compile() { - emake all - - if multilib_is_native_abi && use python ; then - python_foreach_impl python_compile - fi -} - -python_test() { - pushd "${BUILD_DIR}" >/dev/null || die - emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot" - popd >/dev/null || die -} - -multilib_src_test() { - emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot" - if multilib_is_native_abi && use python ; then - python_foreach_impl python_test - fi -} - -python_install() { - pushd "${BUILD_DIR}" >/dev/null || die - emake DESTDIR="${D}" install - python_optimize - popd >/dev/null || die -} - -multilib_src_install() { - if multilib_is_native_abi && use python ; then - python_foreach_impl python_install - fi - - # This needs to be called AFTER python_install call, bug #689190 - # XXX: -j1 as temporary workaround for bug #931301 - emake DESTDIR="${D}" install -j1 -} - -multilib_src_install_all() { - dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*} - - dosym hexdump /usr/bin/hd - newman - hd.1 <<< '.so man1/hexdump.1' - - # e2fsprogs-libs didn't install .la files, and .pc work fine - find "${ED}" -name "*.la" -delete || die - - if use pam ; then - # See https://github.com/util-linux/util-linux/blob/master/Documentation/PAM-configuration.txt - newpamd "${FILESDIR}/runuser.pamd" runuser - newpamd "${FILESDIR}/runuser-l.pamd" runuser-l - - newpamd "${FILESDIR}/su-l.pamd" su-l - fi - - if use su && ! use suid ; then - # Always force suid su, even when USE=-suid, as su is useless - # for the overwhelming-majority case without suid. - # Users who wish to truly have a no-suid su can strip it out - # via e.g. Portage's suidctl or some other hook. - # See bug #832092 - fperms u+s /bin/su - fi - - if use uuidd; then - newinitd "${FILESDIR}/uuidd.initd" uuidd - fi - - # Note: - # Bash completion for "runuser" command is provided by same file which - # would also provide bash completion for "su" command. However, we don't - # use "su" command from this package. - # This triggers a known QA warning which we ignore for now to magically - # keep bash completion for "su" command which shadow package does not - # provide. - - local ver=$(tools/git-version-gen .tarballversion) - local major=$(ver_cut 1 ${ver}) - local minor=$(ver_cut 2 ${ver}) - local release=$(ver_cut 3 ${ver}) - export QA_PKGCONFIG_VERSION="${major}.${minor}.${release:-0}" -} - -pkg_postinst() { - if ! use tty-helpers ; then - elog "The mesg/wall/write tools have been disabled due to USE=-tty-helpers." - fi - - if [[ -z ${REPLACING_VERSIONS} ]] ; then - elog "The agetty util now clears the terminal by default. You" - elog "might want to add --noclear to your /etc/inittab lines." - fi - - if use systemd && use uuidd; then - tmpfiles_process uuidd-tmpfiles.conf - fi -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-2.41.1-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-2.41.1-r1.ebuild deleted file mode 100644 index 42aafdccc36..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-2.41.1-r1.ebuild +++ /dev/null @@ -1,467 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{11..14} ) -TMPFILES_OPTIONAL=1 - -inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 \ - pam python-r1 multilib-minimal multiprocessing systemd tmpfiles - -MY_PV="${PV/_/-}" -MY_P="${PN}-${MY_PV}" - -DESCRIPTION="Various useful Linux utilities" -HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/util-linux/util-linux" - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git" - inherit autotools git-r3 -else - VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/karelzak.asc - inherit verify-sig - - if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos" - fi - - SRC_URI="https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz" - SRC_URI+=" verify-sig? ( https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.sign )" -fi - -S="${WORKDIR}/${MY_P}" - -LICENSE="GPL-2 GPL-3 LGPL-2.1 BSD-4 MIT public-domain" -SLOT="0" -IUSE="audit build caps +cramfs cryptsetup fdformat +hardlink kill +logger magic ncurses nls pam python +readline rtas selinux slang static-libs +su +suid systemd test tty-helpers udev unicode uuidd" - -# Most lib deps here are related to programs rather than our libs, -# so we rarely need to specify ${MULTILIB_USEDEP}. -RDEPEND=" - virtual/libcrypt:= - audit? ( >=sys-process/audit-2.6:= ) - caps? ( sys-libs/libcap-ng ) - cramfs? ( virtual/zlib:= ) - cryptsetup? ( >=sys-fs/cryptsetup-2.1.0 ) - hardlink? ( dev-libs/libpcre2:= ) - ncurses? ( - sys-libs/ncurses:=[unicode(+)?] - magic? ( sys-apps/file:0= ) - ) - nls? ( virtual/libintl[${MULTILIB_USEDEP}] ) - pam? ( sys-libs/pam ) - python? ( ${PYTHON_DEPS} ) - readline? ( sys-libs/readline:0= ) - rtas? ( sys-libs/librtas ) - selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] ) - slang? ( sys-libs/slang ) - !build? ( - systemd? ( sys-apps/systemd ) - udev? ( virtual/libudev:= ) - ) -" -BDEPEND=" - virtual/pkgconfig - nls? ( - app-text/po4a - sys-devel/gettext - ) - test? ( app-alternatives/bc ) -" -DEPEND=" - ${RDEPEND} - virtual/os-headers - acct-group/root -" -RDEPEND+=" - hardlink? ( !app-arch/hardlink ) - logger? ( !>=app-admin/sysklogd-2.0[logger] ) - kill? ( - !sys-apps/coreutils[kill] - !sys-process/procps[kill] - ) - su? ( - !<sys-apps/shadow-4.7-r2 - !>=sys-apps/shadow-4.7-r2[su] - ) - uuidd? ( - acct-user/uuidd - systemd? ( virtual/tmpfiles ) - ) - !net-wireless/rfkill -" - -if [[ ${PV} == 9999 ]] ; then - # Required for man-page generation - BDEPEND+=" dev-ruby/asciidoctor" -else - BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-karelzak-20230517 )" -fi - -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) su? ( pam )" -RESTRICT="!test? ( test )" - -pkg_pretend() { - if use su && ! use suid ; then - elog "su will be installed as suid despite USE=-suid (bug #832092)" - elog "To use su without suid, see e.g. Portage's suidctl feature." - fi -} - -src_unpack() { - if [[ ${PV} == 9999 ]] ; then - git-r3_src_unpack - return - fi - - # Upstream sign the decompressed .tar - if use verify-sig; then - einfo "Unpacking ${MY_P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${MY_P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" - else - default - fi -} - -src_prepare() { - default - - if use test ; then - # Known-failing tests - local known_failing_tests=( - # Subtest 'options-maximum-size-8192' fails - hardlink/options - - # Fails in sandbox - # re ioctl_ns: https://github.com/util-linux/util-linux/issues/2967 - lsns/ioctl_ns - lsfd/mkfds-inotify - lsfd/mkfds-symlink - lsfd/mkfds-rw-character-device - # Fails with network-sandbox at least in nspawn - lsfd/option-inet - utmp/last-ipv6 - - # Fails with permission errors in nspawn - fadvise/drop - fincore/count - - # Flaky - rename/subdir - - # Permission issues on /dev/random - lsfd/mkfds-eventpoll - lsfd/column-xmode - - # Hangs on some machines - script/replay - ) - - # debug prints confuse the tests which look for a diff - # in output - if has_version "=app-shells/bash-5.3_alpha*" ; then - known_failing_tests+=( - lsfd/column-ainodeclass - lsfd/mkfds-netlink-protocol - lsfd/column-type - lsfd/mkfds-eventfd - lsfd/mkfds-signalfd - lsfd/mkfds-mqueue - lsfd/mkfds-tcp6 - lsfd/mkfds-tcp - lsfd/filter-floating-point-nums - lsfd/mkfds-unix-stream-requiring-sockdiag - lsfd/mkfds-unix-dgram - lsfd/mkfds-directory - lsfd/mkfds-pty - lsfd/mkfds-pipe-no-fork - lsfd/mkfds-unix-stream - lsfd/mkfds-ro-regular-file - lsfd/mkfds-timerfd - lsfd/mkfds-udp - lsfd/mkfds-udp6 - ) - fi - - local known_failing_test - for known_failing_test in "${known_failing_tests[@]}" ; do - einfo "Removing known-failing test: ${known_failing_test}" - rm tests/ts/${known_failing_test} || die - done - fi - - if [[ ${PV} == 9999 ]] ; then - po/update-potfiles - eautoreconf - else - elibtoolize - fi -} - -python_configure() { - local myeconfargs=( - "${commonargs[@]}" - --disable-all-programs - --disable-bash-completion - --without-systemdsystemunitdir - --with-python - --enable-libblkid - --enable-libmount - --enable-pylibmount - ) - - mkdir "${BUILD_DIR}" || die - pushd "${BUILD_DIR}" >/dev/null || die - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" - popd >/dev/null || die -} - -multilib_src_configure() { - # The scanf test in a run-time test which fails while cross-compiling. - # Blindly assume a POSIX setup since we require libmount, and libmount - # itself fails when the scanf test fails. bug #531856 - tc-is-cross-compiler && export scanf_cv_alloc_modifier=ms - - # bug #485486 - export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) - # bug #545042 - export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam) - - # Undo bad ncurses handling by upstream. Fall back to pkg-config. - # bug #601530 - export NCURSES6_CONFIG=false NCURSES5_CONFIG=false - export NCURSESW6_CONFIG=false NCURSESW5_CONFIG=false - - # Avoid automagic dependency on ppc* - export ac_cv_lib_rtas_rtas_get_sysparm=$(usex rtas) - - # configure args shared by python and non-python builds - local commonargs=( - --localstatedir="${EPREFIX}/var" - --runstatedir="${EPREFIX}/run" - --enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" - ) - - local myeconfargs=( - "${commonargs[@]}" - --with-bashcompletiondir="$(get_bashcompdir)" - --without-python - $(multilib_native_use_enable suid makeinstall-chown) - $(multilib_native_use_enable suid makeinstall-setuid) - $(multilib_native_use_with readline) - $(multilib_native_use_with slang) - $(multilib_native_usex ncurses "$(use_with magic libmagic)" '--without-libmagic') - $(multilib_native_usex ncurses "$(use_with unicode ncursesw)" '--without-ncursesw') - $(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses') - $(multilib_native_use_with audit) - $(tc-has-tls || echo --disable-tls) - $(use_enable nls) - $(use_enable nls poman) - $(use_enable unicode widechar) - $(use_enable static-libs static) - $(use_with ncurses tinfo) - $(use_with selinux) - $(multilib_native_use_enable uuidd) - - # TODO: Wire this up (bug #931118) - --without-econf - - # TODO: Wire this up (bug #931297) - # TODO: investigate build failure w/ 2.40.1_rc1 - --disable-liblastlog2 - --disable-pam-lastlog2 - ) - - if use build ; then - myeconfargs+=( - --without-systemd - --without-udev - ) - else - myeconfargs+=( - $(multilib_native_use_with systemd) - $(multilib_native_use_with udev) - ) - fi - - if multilib_is_native_abi ; then - myeconfargs+=( - --disable-chfn-chsh - --disable-login - --disable-newgrp - --disable-nologin - --disable-pylibmount - --disable-raw - --disable-vipw - --enable-agetty - --enable-bash-completion - --enable-line - --enable-partx - --enable-rename - --enable-rfkill - --enable-schedutils - --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" - --with-tmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d - $(use_enable caps setpriv) - $(use_enable cramfs) - $(use_enable fdformat) - $(use_enable hardlink) - $(use_enable kill) - $(use_enable logger) - $(use_enable ncurses pg) - $(use_enable su) - $(use_enable tty-helpers mesg) - $(use_enable tty-helpers wall) - $(use_enable tty-helpers write) - $(use_with cryptsetup) - ) - if [[ ${PV} == *9999 ]] ; then - myeconfargs+=( --enable-asciidoc ) - else - # Upstream is shipping pre-generated man-pages for releases - myeconfargs+=( --disable-asciidoc ) - fi - else - myeconfargs+=( - --disable-all-programs - --disable-asciidoc - --disable-bash-completion - --without-systemdsystemunitdir - --disable-poman - - # build libraries - --enable-libuuid - --enable-libblkid - --enable-libsmartcols - --enable-libfdisk - --enable-libmount - - # Support uuidd for non-native libuuid - $(use_enable uuidd libuuid-force-uuidd) - ) - fi - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" - - if multilib_is_native_abi && use python ; then - python_foreach_impl python_configure - fi -} - -src_configure() { - append-lfs-flags - - # Workaround for bug #961040 (gcc PR120006) - if tc-is-gcc && [[ $(gcc-major-version) == 15 && $(gcc-minor-version) -lt 2 ]] ; then - append-flags -fno-ipa-pta - fi - - multilib-minimal_src_configure -} - -python_compile() { - pushd "${BUILD_DIR}" >/dev/null || die - emake all - popd >/dev/null || die -} - -multilib_src_compile() { - emake all - - if multilib_is_native_abi && use python ; then - python_foreach_impl python_compile - fi -} - -python_test() { - pushd "${BUILD_DIR}" >/dev/null || die - emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot" - popd >/dev/null || die -} - -multilib_src_test() { - emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot" - if multilib_is_native_abi && use python ; then - python_foreach_impl python_test - fi -} - -python_install() { - pushd "${BUILD_DIR}" >/dev/null || die - emake DESTDIR="${D}" install - python_optimize - popd >/dev/null || die -} - -multilib_src_install() { - if multilib_is_native_abi && use python ; then - python_foreach_impl python_install - fi - - # This needs to be called AFTER python_install call, bug #689190 - # XXX: -j1 as temporary workaround for bug #931301 - emake DESTDIR="${D}" install -j1 -} - -multilib_src_install_all() { - dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*} - - dosym hexdump /usr/bin/hd - newman - hd.1 <<< '.so man1/hexdump.1' - - # e2fsprogs-libs didn't install .la files, and .pc work fine - find "${ED}" -name "*.la" -delete || die - - if use pam ; then - # See https://github.com/util-linux/util-linux/blob/master/Documentation/PAM-configuration.txt - newpamd "${FILESDIR}/runuser.pamd" runuser - newpamd "${FILESDIR}/runuser-l.pamd" runuser-l - - newpamd "${FILESDIR}/su-l.pamd" su-l - fi - - if use su && ! use suid ; then - # Always force suid su, even when USE=-suid, as su is useless - # for the overwhelming-majority case without suid. - # Users who wish to truly have a no-suid su can strip it out - # via e.g. Portage's suidctl or some other hook. - # See bug #832092 - fperms u+s /bin/su - fi - - if use uuidd; then - newinitd "${FILESDIR}/uuidd.initd" uuidd - fi - - # Note: - # Bash completion for "runuser" command is provided by same file which - # would also provide bash completion for "su" command. However, we don't - # use "su" command from this package. - # This triggers a known QA warning which we ignore for now to magically - # keep bash completion for "su" command which shadow package does not - # provide. - - local ver=$(tools/git-version-gen .tarballversion) - local major=$(ver_cut 1 ${ver}) - local minor=$(ver_cut 2 ${ver}) - local release=$(ver_cut 3 ${ver}) - export QA_PKGCONFIG_VERSION="${major}.${minor}.${release:-0}" -} - -pkg_postinst() { - if ! use tty-helpers ; then - elog "The mesg/wall/write tools have been disabled due to USE=-tty-helpers." - fi - - if [[ -z ${REPLACING_VERSIONS} ]] ; then - elog "The agetty util now clears the terminal by default. You" - elog "might want to add --noclear to your /etc/inittab lines." - fi - - if use systemd && use uuidd; then - tmpfiles_process uuidd-tmpfiles.conf - fi -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-2.41.3.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-2.41.3.ebuild index 40609e5fd3d..28ef863e8f6 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-2.41.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-2.41.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -23,7 +23,7 @@ else inherit verify-sig if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos" fi SRC_URI="https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz" @@ -115,12 +115,9 @@ src_unpack() { return fi - # Upstream sign the decompressed .tar if use verify-sig; then - einfo "Unpacking ${MY_P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${MY_P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" + verify-sig_uncompress_verify_unpack "${DISTDIR}"/${MY_P}.tar.xz \ + "${DISTDIR}"/${MY_P}.tar.sign else default fi diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-9999.ebuild index 64c3f01f2ac..be530b836b1 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -114,12 +114,9 @@ src_unpack() { return fi - # Upstream sign the decompressed .tar if use verify-sig; then - einfo "Unpacking ${MY_P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${MY_P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" + verify-sig_uncompress_verify_unpack "${DISTDIR}"/${MY_P}.tar.xz \ + "${DISTDIR}"/${MY_P}.tar.sign else default fi From b02928c2d40e83a0498d76e30afdfc0a301b0b19 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:23 +0000 Subject: [PATCH 214/291] sys-apps/which: Sync with Gentoo It's from Gentoo commit 1ee9641fe2248e9b90b652fa58b2cfca3f54f858. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-apps/which/Manifest | 1 - .../sys-apps/which/which-2.21.ebuild | 20 ------------------- 2 files changed, 21 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/which/which-2.21.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/which/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/which/Manifest index 679c43d0cce..d4a986c0294 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/which/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/which/Manifest @@ -1,2 +1 @@ -DIST which-2.21.tar.gz 149305 BLAKE2B 355888b0dfe3e4e1679a8a9e1255a935fa48be220408abc441fae69fe0b26bd39e0544ed20e75497ed5bccaa75e788d9aec17007c668f15eaf6b1599faa131a0 SHA512 d2f04a5c5291f2d7d1226982da7cf999d36cfe24d3f7bda145508efcfb359511251d3c68b860c0ddcedd66b15a0587b648a35ab6d1f173707565305c506dfc61 DIST which-2.23.tar.gz 201930 BLAKE2B 64a3ae1f23a4c389f945f6c0985e6f6062b46785125a0d0659ff160560a4a473633d38af71b1505beeabba8336f5a9906f1ba58ab3494635e970bd5529b3936f SHA512 738807f79e8cfc5967541a28ae7021247c04c4177279f09be2c19c069af450a7e3b19baf9079fe5569b25b4630bb400be242a123647e52c9fe54f0ad007317bf diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/which/which-2.21.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/which/which-2.21.ebuild deleted file mode 100644 index 0ee37b1bfaa..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/which/which-2.21.ebuild +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit flag-o-matic toolchain-funcs - -DESCRIPTION="Prints out location of specified executables that are in your path" -HOMEPAGE="https://carlowood.github.io/which/" -SRC_URI="https://carlowood.github.io/which/${P}.tar.gz" - -LICENSE="GPL-3" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" - -src_configure() { - append-lfs-flags - tc-export AR - default -} From 82fe0912bf03ca3f08bad5f3052bd55dc282174d Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:26 +0000 Subject: [PATCH 215/291] sys-auth/pambase: Sync with Gentoo It's from Gentoo commit c471ba734091664b829f9884c55f459ba922bd99. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-auth/pambase/pambase-20251104-r1.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/sys-auth/pambase/pambase-20251104-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-auth/pambase/pambase-20251104-r1.ebuild index d76d283901b..c9c069537e9 100644 --- a/sdk_container/src/third_party/portage-stable/sys-auth/pambase/pambase-20251104-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-auth/pambase/pambase-20251104-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -19,7 +19,7 @@ if [[ ${PV} == *9999 ]]; then else SRC_URI="https://gitweb.gentoo.org/proj/pambase.git/snapshot/${P}.tar.bz2" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" fi LICENSE="MIT" From e7448978db33d014c8b190ca68b47c1542658e30 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:26 +0000 Subject: [PATCH 216/291] sys-auth/polkit: Sync with Gentoo It's from Gentoo commit 0c9d2b3efc595e823a6e722d3c342b3494ee38ff. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-auth/polkit/polkit-126-r2.ebuild | 3 +-- .../portage-stable/sys-auth/polkit/polkit-9999.ebuild | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/sys-auth/polkit/polkit-126-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-auth/polkit/polkit-126-r2.ebuild index 0746d9cecf6..f1a092723b2 100644 --- a/sdk_container/src/third_party/portage-stable/sys-auth/polkit/polkit-126-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-auth/polkit/polkit-126-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -36,7 +36,6 @@ BDEPEND=" app-text/docbook-xml-dtd:4.1.2 app-text/docbook-xsl-stylesheets >=dev-libs/glib-2.32 - dev-libs/gobject-introspection-common dev-libs/libxslt dev-util/glib-utils virtual/pkgconfig diff --git a/sdk_container/src/third_party/portage-stable/sys-auth/polkit/polkit-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-auth/polkit/polkit-9999.ebuild index a258cd7e71e..d932aa3e7d5 100644 --- a/sdk_container/src/third_party/portage-stable/sys-auth/polkit/polkit-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-auth/polkit/polkit-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -36,7 +36,6 @@ BDEPEND=" app-text/docbook-xml-dtd:4.1.2 app-text/docbook-xsl-stylesheets >=dev-libs/glib-2.32 - dev-libs/gobject-introspection-common dev-libs/libxslt dev-util/glib-utils virtual/pkgconfig From 2f1715b6c6b74447bf20dd5ba88b89e1d1261de3 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:26 +0000 Subject: [PATCH 217/291] sys-auth/sssd: Sync with Gentoo It's from Gentoo commit b327156e408c8f57a0261b2a68eec0b86ddb8a19. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-auth/sssd/Manifest | 6 +- ...{sssd-2.11.1.ebuild => sssd-2.12.0.ebuild} | 13 +- .../sys-auth/sssd/sssd-2.9.7.ebuild | 12 +- .../sys-auth/sssd/sssd-2.9.8.ebuild | 345 ++++++++++++++++++ 4 files changed, 366 insertions(+), 10 deletions(-) rename sdk_container/src/third_party/portage-stable/sys-auth/sssd/{sssd-2.11.1.ebuild => sssd-2.12.0.ebuild} (96%) create mode 100644 sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.9.8.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-auth/sssd/Manifest b/sdk_container/src/third_party/portage-stable/sys-auth/sssd/Manifest index 0a61b4a4560..ad117012ece 100644 --- a/sdk_container/src/third_party/portage-stable/sys-auth/sssd/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-auth/sssd/Manifest @@ -1,2 +1,6 @@ -DIST sssd-2.11.1.tar.gz 9247352 BLAKE2B 94cad491dfc9c52db369849b2058774a966fbd405c968f949220fa1b1bc1d6865253c32d9214d0203d61bccc11198997c70923a536b889423b6e0c43bd1aa7ec SHA512 e65897bcb9ddd64f6c01787ad7b7eab3c9916e10f9ead02a6e92de503a4ea71c091e998ccf0344576b520bea75abfe5fd2880e8401237a26274d764d291f6fa4 +DIST sssd-2.12.0.tar.gz 9739617 BLAKE2B d5629a24ee6db3e0a7a205a387acb01d0cc102b6bfc1131a208ea03c609941dd5ccfefd790ca1dc10f6e57d698828ff38364be9c8f6a7f7aeaec4b8a07346494 SHA512 3bd90a88a43019b00d3f0a674ef4d2473bf6895e749a54bec8ac1661e7d289083e0cbd64846dacc8bdd4b2447f171dddb2d0ba108962dbd862bce86c2247b038 +DIST sssd-2.12.0.tar.gz.asc 833 BLAKE2B ffb95b672fd5b63f6147b4c4e85ee04c260eb2fa01c90ed52e04bb5c8e1bba76fead5dca1343a1d8c53d69d36c1145378c18f01fe86896f52dd64a1ed7c1d973 SHA512 b4a7696969f2c0a034ef01eaa50282556e3c07c0be53088d9ce5cb3f24e2dc5428fe8ad2f2f6aca7903a16e2d39591f32b04ca76b16662d24ae64cea15658684 DIST sssd-2.9.7.tar.gz 9161891 BLAKE2B 1658f3a6447c58665fccf144292deda759a72e1dbe0913e49f510fa8342e0fa09569319a40293a63c360c17ede0e8051c93b81e488549ed8e3bbeff37ce86389 SHA512 ba2bcab28491971e420b8bb8769574e88af4059cad5cec5320668cabf31c11314fce6dcab45b097d7b0876dfebe1cad22a0104c0856c80cdc07c21b19a95a3f2 +DIST sssd-2.9.7.tar.gz.asc 833 BLAKE2B 2d0b2417a38b99b6014e20abcc121e7eb1b6028c9e8292ca998099ae6eaa6e47cb3c1ab42864ffcc2f1566c20c27c9d65d7b5a801403aff23ca952fda6ecfdb2 SHA512 74117dca7a5cf62400358769757485bb304e200e29fef9613c92e8d30770b0fe54d5c95b4053ac32005f665a6cef247c639a2b14df132a7e82a8b92d527dbba3 +DIST sssd-2.9.8.tar.gz 9330244 BLAKE2B f5f88287b4bf7936e56e44c9ba7eba728c8546663304f9c6881d5bb427ff5f3dfb635536110f198439b41b481a7b9a2980138acd0d90d7334d439559425d9170 SHA512 9b10cb5e343d32402a437dab3304c16596e9eb7b51a452ca3e2b3fea4aa8dc879abe06a57ccc716bece8024847211abf5affa83e1d2ca2cac101132133a6619a +DIST sssd-2.9.8.tar.gz.asc 833 BLAKE2B 793567f60c0ca92cf1b053e762e14ca51c046d24dfeafe2a1bdab47d8cca1bee8e2bcdd743c58dbff14ceffb6ccfe7eff6c64bc10871345bf6ba0b7a1ed73588 SHA512 a05f2a48cb278adc746ce1e2d786a165080a69dfc7430b714ffbd6ebc83464e63983d6468867ec9f0438e7ed3f8ceff962a868c9daed1c4579c31feb85c8373c diff --git a/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.11.1.ebuild b/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.12.0.ebuild similarity index 96% rename from sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.11.1.ebuild rename to sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.12.0.ebuild index 525ddb890fc..9cd07b712ee 100644 --- a/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.11.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.12.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -11,13 +11,14 @@ PLOCALE_BACKUP="sv" PYTHON_COMPAT=( python3_{11..14} ) inherit autotools linux-info multilib-minimal optfeature plocale \ - python-single-r1 pam systemd tmpfiles udev toolchain-funcs + python-single-r1 pam systemd tmpfiles udev toolchain-funcs verify-sig DESCRIPTION="System Security Services Daemon provides access to identity and authentication" HOMEPAGE="https://github.com/SSSD/sssd" if [[ ${PV} != 9999 ]]; then - SRC_URI="https://github.com/SSSD/sssd/releases/download/${PV}/${P}.tar.gz" - KEYWORDS="" + SRC_URI="https://github.com/SSSD/sssd/releases/download/${PV}/${P}.tar.gz + https://github.com/SSSD/sssd/releases/download/${PV}/${P}.tar.gz.asc" + KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" else inherit git-r3 EGIT_REPO_URI="https://github.com/SSSD/sssd.git" @@ -103,14 +104,16 @@ BDEPEND=" ) app-text/docbook-xml-dtd:4.4 >=dev-libs/libxslt-1.1.26 + verify-sig? ( sec-keys/openpgp-keys-sssd ) " +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/sssd.asc + CONFIG_CHECK="~KEYS" PATCHES=( "${FILESDIR}/${PN}-2.8.2-krb5_pw_locked.patch" "${FILESDIR}/${PN}-2.9.6-conditional-python-install.patch" - "${FILESDIR}/${PN}-2.9.7-kerberos-1-22.patch" "${FILESDIR}/${PN}-2.10.0_beta2-fix-systemd-systemconfdir.patch" ) diff --git a/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.9.7.ebuild b/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.9.7.ebuild index 78043d407a8..80f192a4761 100644 --- a/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.9.7.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.9.7.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -6,15 +6,16 @@ EAPI=8 PLOCALES="ca de es fr ja ko pt_BR ru sv tr uk" PLOCALES_BIN="${PLOCALES} bg cs eu fi hu id it ka nb nl pl pt tg zh_TW zh_CN" PLOCALE_BACKUP="sv" -PYTHON_COMPAT=( python3_{10..13} ) +PYTHON_COMPAT=( python3_{11..13} ) inherit autotools linux-info multilib-minimal optfeature plocale \ - python-single-r1 pam systemd toolchain-funcs + python-single-r1 pam systemd toolchain-funcs verify-sig DESCRIPTION="System Security Services Daemon provides access to identity and authentication" HOMEPAGE="https://github.com/SSSD/sssd" if [[ ${PV} != 9999 ]]; then - SRC_URI="https://github.com/SSSD/sssd/releases/download/${PV}/${P}.tar.gz" + SRC_URI="https://github.com/SSSD/sssd/releases/download/${PV}/${P}.tar.gz + https://github.com/SSSD/sssd/releases/download/${PV}/${P}.tar.gz.asc" KEYWORDS="amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc x86" else inherit git-r3 @@ -95,8 +96,11 @@ BDEPEND=" sys-libs/pam_wrapper sys-libs/uid_wrapper ) + verify-sig? ( sec-keys/openpgp-keys-sssd ) " +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/sssd.asc + CONFIG_CHECK="~KEYS" PATCHES=( diff --git a/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.9.8.ebuild b/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.9.8.ebuild new file mode 100644 index 00000000000..65085070cd7 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.9.8.ebuild @@ -0,0 +1,345 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PLOCALES="ca de es fr ja ko pt_BR ru sv tr uk" +PLOCALES_BIN="${PLOCALES} bg cs eu fi hu id it ka nb nl pl pt tg zh_TW zh_CN" +PLOCALE_BACKUP="sv" +PYTHON_COMPAT=( python3_{11..13} ) + +inherit autotools linux-info multilib-minimal optfeature plocale \ + python-single-r1 pam systemd toolchain-funcs verify-sig + +DESCRIPTION="System Security Services Daemon provides access to identity and authentication" +HOMEPAGE="https://github.com/SSSD/sssd" +if [[ ${PV} != 9999 ]]; then + SRC_URI="https://github.com/SSSD/sssd/releases/download/${PV}/${P}.tar.gz + https://github.com/SSSD/sssd/releases/download/${PV}/${P}.tar.gz.asc" + KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +else + inherit git-r3 + EGIT_REPO_URI="https://github.com/SSSD/sssd.git" + EGIT_BRANCH="master" +fi + +LICENSE="GPL-3" +SLOT="0" +IUSE="acl doc +netlink nfsv4 nls passkey python samba selinux systemd systemtap test" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" +RESTRICT="!test? ( test )" + +DEPEND=" + >=app-crypt/mit-krb5-1.19.1[${MULTILIB_USEDEP}] + app-crypt/p11-kit + >=dev-libs/ding-libs-0.2 + >=dev-libs/cyrus-sasl-2.1.25-r3[kerberos] + dev-libs/jansson:= + dev-libs/libpcre2:= + dev-libs/libunistring:=[${MULTILIB_USEDEP}] + >=dev-libs/popt-1.16 + >=dev-libs/openssl-1.0.2:= + >=net-dns/bind-9.9[gssapi] + >=net-dns/c-ares-1.10.0-r1:=[${MULTILIB_USEDEP}] + >=net-nds/openldap-2.4.30:=[sasl,experimental] + >=sys-apps/dbus-1.6 + >=sys-apps/keyutils-1.5:= + >=sys-libs/pam-0-r1[${MULTILIB_USEDEP}] + >=sys-libs/talloc-2.0.7 + >=sys-libs/tdb-1.2.9 + >=sys-libs/tevent-0.9.16 + virtual/ldb:= + virtual/libintl + acl? ( net-fs/cifs-utils[acl] ) + netlink? ( dev-libs/libnl:3 ) + nfsv4? ( >=net-fs/nfs-utils-2.3.1-r2 ) + nls? ( >=sys-devel/gettext-0.18 ) + passkey? ( dev-libs/libfido2:= ) + python? ( + ${PYTHON_DEPS} + systemd? ( + $(python_gen_cond_dep ' + dev-python/python-systemd[${PYTHON_USEDEP}] + ') + ) + ) + samba? ( >=net-fs/samba-4.10.2[winbind] ) + selinux? ( + >=sys-libs/libselinux-2.1.9 + >=sys-libs/libsemanage-2.1 + ) + systemd? ( + sys-apps/systemd:= + sys-apps/util-linux + ) + systemtap? ( dev-debug/systemtap )" +RDEPEND="${DEPEND} + passkey? ( sys-apps/pcsc-lite[policykit] ) + selinux? ( >=sec-policy/selinux-sssd-2.20120725-r9 )" +DEPEND+=" + sys-apps/shadow" +BDEPEND=" + virtual/pkgconfig + app-text/docbook-xml-dtd:4.4 + >=dev-libs/libxslt-1.1.26 + ${PYTHON_DEPS} + doc? ( app-text/doxygen ) + nls? ( sys-devel/gettext + app-text/po4a ) + test? ( + dev-libs/check + dev-libs/softhsm:2 + dev-util/cmocka + net-libs/gnutls[pkcs11,tools] + sys-libs/libfaketime + sys-libs/nss_wrapper + sys-libs/pam_wrapper + sys-libs/uid_wrapper + ) + verify-sig? ( sec-keys/openpgp-keys-sssd ) +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/sssd.asc + +CONFIG_CHECK="~KEYS" + +PATCHES=( + "${FILESDIR}/${PN}-2.8.2-krb5_pw_locked.patch" + "${FILESDIR}/${PN}-2.9.6-conditional-python-install.patch" + "${FILESDIR}/${PN}-2.9.7-kerberos-1-22.patch" +) + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/ipa_hbac.h + /usr/include/sss_idmap.h + /usr/include/sss_nss_idmap.h + # --with-ifp + /usr/include/sss_sifp.h + /usr/include/sss_sifp_dbus.h + # from 1.15.3 + /usr/include/sss_certmap.h +) + +pkg_setup() { + linux-info_pkg_setup + python-single-r1_pkg_setup +} + +src_prepare() { + default + + plocale_get_locales > src/man/po/LINGUAS || die + + sed -i \ + -e "/_langs]/ s/ .*//" \ + src/man/po/po4a.cfg \ + || die + enable_locale() { + local locale=${1} + + sed -i \ + -e "/_langs]/ s/$/ ${locale}/" \ + src/man/po/po4a.cfg \ + || die + } + + plocale_for_each_locale enable_locale + + PLOCALES="${PLOCALES_BIN}" + plocale_get_locales > po/LINGUAS || die + + sed -i \ + -e 's:/var/run:/run:' \ + src/examples/logrotate \ + || die + + # disable flaky test, see https://github.com/SSSD/sssd/issues/5631 + sed -i \ + -e '/^\s*pam-srv-tests[ \\]*$/d' \ + Makefile.am \ + || die + + eautoreconf + + multilib_copy_sources +} + +src_configure() { + local native_dbus_cflags=$($(tc-getPKG_CONFIG) --cflags dbus-1 || die) + + # Workaround for bug #938302 + if use systemtap && has_version "dev-debug/systemtap[-dtrace-symlink(+)]" ; then + export DTRACE="${BROOT}"/usr/bin/stap-dtrace + fi + + multilib-minimal_src_configure +} + +multilib_src_configure() { + local myconf=() + + myconf+=( + --libexecdir="${EPREFIX}"/usr/libexec + --localstatedir="${EPREFIX}"/var + --runstatedir="${EPREFIX}"/run + --sbindir="${EPREFIX}"/usr/sbin + --with-pid-path="${EPREFIX}"/run + --with-plugin-path="${EPREFIX}"/usr/$(get_libdir)/sssd + --enable-pammoddir="${EPREFIX}$(getpam_mod_dir)" + --with-ldb-lib-dir="${EPREFIX}"/usr/$(get_libdir)/samba/ldb + --with-db-path="${EPREFIX}"/var/lib/sss/db + --with-gpo-cache-path="${EPREFIX}"/var/lib/sss/gpo_cache + --with-pubconf-path="${EPREFIX}"/var/lib/sss/pubconf + --with-pipe-path="${EPREFIX}"/var/lib/sss/pipes + --with-mcache-path="${EPREFIX}"/var/lib/sss/mc + --with-secrets-db-path="${EPREFIX}"/var/lib/sss/secrets + --with-log-path="${EPREFIX}"/var/log/sssd + --with-kcm + --enable-kcm-renewal + --with-os=gentoo + --disable-rpath + --disable-static + # Valgrind is only used for tests + --disable-valgrind + $(use_with samba) + --with-smb-idmap-interface-version=6 + $(multilib_native_use_enable acl cifs-idmap-plugin) + $(multilib_native_use_with selinux) + $(multilib_native_use_with selinux semanage) + --enable-krb5-locator-plugin + $(use_enable samba pac-responder) + $(multilib_native_use_with nfsv4 nfsv4-idmapd-plugin) + $(use_enable nls) + $(multilib_native_use_with netlink libnl) + --with-manpages + --with-sudo + $(multilib_native_with autofs) + $(multilib_native_with ssh) + --without-oidc-child + $(multilib_native_with passkey) + --with-subid + $(use_enable systemtap) + --without-python2-bindings + $(multilib_native_use_with python python3-bindings) + # Annoyingly configure requires that you pick systemd XOR sysv + --with-initscript=$(usex systemd systemd sysv) + KRB5_CONFIG="${ESYSROOT}"/usr/bin/krb5-config + # Needed for Samba 4.21 + CPPFLAGS="${CPPFLAGS} -I${ESYSROOT}/usr/include/samba-4.0" + ) + + use systemd && myconf+=( + --with-systemdunitdir=$(systemd_get_systemunitdir) + ) + + if ! multilib_is_native_abi; then + # work-around all the libraries that are used for CLI and server + myconf+=( + {POPT,TALLOC,TDB,TEVENT,LDB}_{CFLAGS,LIBS}=' ' + # ldb headers are fine since native needs it + # ldb lib fails... but it does not seem to bother + {DHASH,UNISTRING,INI_CONFIG_V{0,1,1_1,1_3}}_{CFLAGS,LIBS}=' ' + {PCRE,CARES,SYSTEMD_LOGIN,SASL,DBUS,CRYPTO,P11_KIT}_{CFLAGS,LIBS}=' ' + {NDR_NBT,SAMBA_UTIL,SMBCLIENT,NDR_KRB5PAC,JANSSON}_{CFLAGS,LIBS}=' ' + + # use native include path for dbus (needed for build) + DBUS_CFLAGS="${native_dbus_cflags}" + + # non-pkgconfig checks + ac_cv_lib_ldap_ldap_search=yes + --without-kcm + --without-manpages + ) + fi + + econf "${myconf[@]}" +} + +multilib_src_compile() { + if multilib_is_native_abi; then + default + use doc && emake docs + else + emake libnss_sss.la pam_sss.la pam_sss_gss.la + emake sssd_krb5_locator_plugin.la + use samba && emake sssd_pac_plugin.la + fi +} + +multilib_src_test() { + if multilib_is_native_abi; then + local -x CK_TIMEOUT_MULTIPLIER=10 + emake check VERBOSE=yes + fi +} + +multilib_src_install() { + if multilib_is_native_abi; then + emake -j1 DESTDIR="${D}" install + if use python; then + python_fix_shebang "${ED}" + python_optimize + fi + else + # easier than playing with automake... + dopammod .libs/pam_sss.so + dopammod .libs/pam_sss_gss.so + + into / + dolib.so .libs/libnss_sss.so* + + exeinto /usr/$(get_libdir)/krb5/plugins/libkrb5 + doexe .libs/sssd_krb5_locator_plugin.so + + if use samba; then + exeinto /usr/$(get_libdir)/krb5/plugins/authdata + doexe .libs/sssd_pac_plugin.so + fi + fi +} + +multilib_src_install_all() { + einstalldocs + + insinto /etc/sssd + insopts -m600 + doins src/examples/sssd-example.conf + + insinto /etc/logrotate.d + insopts -m644 + newins src/examples/logrotate sssd + + newconfd "${FILESDIR}"/sssd.conf sssd + + keepdir /var/lib/sss/db + keepdir /var/lib/sss/deskprofile + keepdir /var/lib/sss/gpo_cache + keepdir /var/lib/sss/keytabs + keepdir /var/lib/sss/mc + keepdir /var/lib/sss/pipes/private + keepdir /var/lib/sss/pubconf/krb5.include.d + keepdir /var/lib/sss/secrets + keepdir /var/log/sssd + + # strip empty dirs + if ! use doc; then + rm -r "${ED}"/usr/share/doc/"${PF}"/doc || die + rm -r "${ED}"/usr/share/doc/"${PF}"/{hbac,idmap,nss_idmap}_doc || die + fi + + rm -r "${ED}"/run || die + find "${ED}" -type f -name '*.la' -delete || die +} + +pkg_postinst() { + elog "You must set up sssd.conf (default installed into /etc/sssd)" + elog "and (optionally) configuration in /etc/pam.d in order to use SSSD" + elog "features." + echo + optfeature "Kerberos keytab renew (see krb5_renew_interval)" app-crypt/adcli + + if ! use python; then + echo + ewarn "sssctl analyze will not work because the python USE flag is disabled." + fi +} From 4659973b439b72dda1b36ffa5a2df44232e5af3d Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:28 +0000 Subject: [PATCH 218/291] sys-block/open-isns: Sync with Gentoo It's from Gentoo commit b53b10c3a0690326ea560654c78dd2b90ab20f9c. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-block/open-isns/Manifest | 2 - .../files/open-isns-0.100-respect-AR.patch | 30 ----------- .../open-isns/open-isns-0.101.ebuild | 53 ------------------- .../open-isns/open-isns-0.102.ebuild | 39 -------------- 4 files changed, 124 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-block/open-isns/files/open-isns-0.100-respect-AR.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-block/open-isns/open-isns-0.101.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-block/open-isns/open-isns-0.102.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-block/open-isns/Manifest b/sdk_container/src/third_party/portage-stable/sys-block/open-isns/Manifest index 9c16ce1f1fe..25e62f04c4d 100644 --- a/sdk_container/src/third_party/portage-stable/sys-block/open-isns/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-block/open-isns/Manifest @@ -1,3 +1 @@ -DIST open-isns-0.101.tar.gz 301912 BLAKE2B 98c9c36640ee4d3796538a00e7ab2e4cfb057abc66a56d27ce2eb133d591ea87bcb0e4ffb31b6d72d8e8c806edffb65600c0ae7cd63c61058f36037e3db79214 SHA512 e5a392127b0d85f36e9e4aa963c0c502af8c5aea0aba6d12abb4425649969dcc20ba6e87a99083626d981438439b17b71a86320f816042d82ed5dbe7e7a63e77 -DIST open-isns-0.102.tar.gz 303210 BLAKE2B d6095f8a550faabd60475df4bce644dffa85187168d01616cc016003a5536663c68adc588e21fb6ab82937ac8d5a0ff46dde8c4c2664560f4b792b0324fb5856 SHA512 f5ae8af89b85565181c2f6def9834d9dab0a15d5d9b28721cce116c5580173ed9adba219e1ede48988cb57f047578db4ece458c4a7db598412c7583e56393d2b DIST open-isns-0.103.tar.gz 254988 BLAKE2B cd6db63992328c815af218bd4ae1ff2a19e49c5a1d3c686167b96130f5b7bde8d861e8be6399c5668077c68ff54e61226b743704147d0da97e0b227c821660b1 SHA512 219dd4f7e0a8459f5acaf2036fc737b90604cdcfe78b5492d50e4826744923afe35c9c331b3e39aa7c9bb5ebb2c378c464dced204d51da46e2b7474c6ca94057 diff --git a/sdk_container/src/third_party/portage-stable/sys-block/open-isns/files/open-isns-0.100-respect-AR.patch b/sdk_container/src/third_party/portage-stable/sys-block/open-isns/files/open-isns-0.100-respect-AR.patch deleted file mode 100644 index 66e52e54812..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-block/open-isns/files/open-isns-0.100-respect-AR.patch +++ /dev/null @@ -1,30 +0,0 @@ ---- a/Makefile.in -+++ b/Makefile.in -@@ -33,6 +33,7 @@ else - SOLIB_VERSION_OPTS = - endif - -+AR = @AR@ - CC = @CC@ - CPPFLAGS= @CPPFLAGS@ - CFLAGS = @CFLAGS@ -I. -Iinclude -I$(srcdir) -I$(srcdir)/include -@@ -161,7 +162,7 @@ solib-message.o: message.c - - ifeq ($(BUILD_STATIC),1) - $(LIB): $(LIBOBJS) -- ar cr $@ $(LIBOBJS) -+ $(AR) cr $@ $(LIBOBJS) - else - $(LIB): - endif ---- a/configure.ac -+++ b/configure.ac -@@ -4,6 +4,7 @@ AC_CONFIG_AUX_DIR([aclocal]) - - AC_CONFIG_HEADER(config.h) - -+AM_PROG_AR - AC_PROG_CC - AC_CANONICAL_HOST - AC_C_BIGENDIAN - diff --git a/sdk_container/src/third_party/portage-stable/sys-block/open-isns/open-isns-0.101.ebuild b/sdk_container/src/third_party/portage-stable/sys-block/open-isns/open-isns-0.101.ebuild deleted file mode 100644 index c9cf2f8d3d9..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-block/open-isns/open-isns-0.101.ebuild +++ /dev/null @@ -1,53 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools flag-o-matic - -DESCRIPTION="iSNS server and client for Linux" -HOMEPAGE="https://github.com/open-iscsi/open-isns" -SRC_URI="https://github.com/open-iscsi/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~mips ppc ppc64 ~riscv ~sparc x86" -IUSE="debug ssl static" - -DEPEND=" - ssl? ( - dev-libs/openssl:0= - ) -" -RDEPEND="${DEPEND}" - -PATCHES=( - "${FILESDIR}/${PN}-0.100-respect-AR.patch" -) - -src_prepare() { - default - eautoreconf - touch aclocal/ar-lib || die #775389 -} - -src_configure() { - use debug && append-cppflags -DDEBUG_TCP -DDEBUG_SCSI - append-lfs-flags - local myeconfargs=( - --without-slp - $(use_with ssl security) - $(use_enable !static shared) - ) - econf "${myeconfargs[@]}" -} - -src_install() { - default - emake DESTDIR="${D}" install_hdrs - emake DESTDIR="${D}" install_lib - keepdir /var/lib/${PN/open-} - if ! use static ; then - find "${ED}" -type f -name "*.a" -delete || die - fi -} diff --git a/sdk_container/src/third_party/portage-stable/sys-block/open-isns/open-isns-0.102.ebuild b/sdk_container/src/third_party/portage-stable/sys-block/open-isns/open-isns-0.102.ebuild deleted file mode 100644 index 18d0916b9ce..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-block/open-isns/open-isns-0.102.ebuild +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit meson systemd - -DESCRIPTION="iSNS server and client for Linux" -HOMEPAGE="https://github.com/open-iscsi/open-isns" -SRC_URI="https://github.com/open-iscsi/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~mips ppc ppc64 ~riscv ~sparc x86" -IUSE="ssl static" - -DEPEND=" - ssl? ( - dev-libs/openssl:= - ) -" -RDEPEND="${DEPEND}" - -src_configure() { - local emesonargs=( - -Ddefault_library=$(usex static both shared) - -Dslp=disabled - -Dsystemddir=$(systemd_get_utildir) - $(meson_feature ssl security) - ) - - meson_src_configure -} - -src_install() { - meson_src_install - - keepdir /var/lib/${PN/open-} -} From 60a9e6ec7a88fbcc03515ee226740a6d4f82776b Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:32 +0000 Subject: [PATCH 219/291] sys-boot/gnu-efi: Sync with Gentoo It's from Gentoo commit 9a294e63f3a4b2eaccb2164ad24da11bbce4fae7. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-boot/gnu-efi/Manifest | 2 - .../gnu-efi-3.0.19-fix-binutils-2.46.patch | 19 +++ .../sys-boot/gnu-efi/gnu-efi-3.0.18-r5.ebuild | 144 ----------------- .../sys-boot/gnu-efi/gnu-efi-3.0.19.ebuild | 3 +- .../sys-boot/gnu-efi/gnu-efi-4.0.2.ebuild | 151 ------------------ .../sys-boot/gnu-efi/gnu-efi-4.0.4.ebuild | 4 +- 6 files changed, 23 insertions(+), 300 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/files/gnu-efi-3.0.19-fix-binutils-2.46.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-3.0.18-r5.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-4.0.2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/Manifest b/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/Manifest index 3ca537454df..407f7fa0335 100644 --- a/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/Manifest @@ -1,4 +1,2 @@ -DIST gnu-efi-3.0.18.tar.bz2 167567 BLAKE2B e080fa4c57a281452a6473304871304d1b5c30d42ee728b4c0c084258ed2f6f2099c068ec5841cee81ecf664dd658dee3b94d68324ebaa498cb49cec4f7f7df9 SHA512 39f9fa14b880441a94a04400ff8850efdd9474929e5501dfd05af06e7747b4d0f7cb742ac811c7026cf52d00508efb73018be4d61d63a1211de0cd931cbc473d DIST gnu-efi-3.0.19.tar.gz 218588 BLAKE2B 78db87904e644406ce2eb1a0ef0f325e7ad0f004dd56199e319985c5d035b4755d545c1a6bcf749da08c7670132de28a3e53ba059956b841034c6b059e39042b SHA512 78a79f51bd271043edbf534427d8fbba3d8099e831a9643019899453e8363ebd4d43f6e5448cdde31d43a6bdb94ec32e73425138bfb614617b8886df90fc1665 -DIST gnu-efi-4.0.2.tar.gz 245063 BLAKE2B 4fe4a1000b2bcdb779aaa82e80f2a722a70230ac82f40e8fd4bfe67f73135e58e44a58b7cafce33702847ed00a1161fbc9565037298129f642ef1d875b04086c SHA512 a52e21daad16af6c1d9cff7f04076584251b77fe1eddc4e720d19de5d0a8d7cca5994b770d3236bcd9b2431918b427dd362ca7cb7e2a6e893ca4ba0e0ead9395 DIST gnu-efi-4.0.4.tar.gz 245519 BLAKE2B a636ec81a830206b4d793689b6b4b85ab88b9061224691d47076b096e4502f4625fdc759c351d3e8b0a93fc26c33dd4862c2383d7620bb1704649c275da322f7 SHA512 4ed273ef8203f1b2fd90855821576523b070236911a26199eec220f1bad34f63759a32b06f11a681e532a2c793339d9e66bcb90e5cde5de02d8842a40c471a06 diff --git a/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/files/gnu-efi-3.0.19-fix-binutils-2.46.patch b/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/files/gnu-efi-3.0.19-fix-binutils-2.46.patch new file mode 100644 index 00000000000..3499371cfa8 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/files/gnu-efi-3.0.19-fix-binutils-2.46.patch @@ -0,0 +1,19 @@ +Backport the fix from gnu-efi 4.0.4 to build with binutils-2.46. + +https://bugs.gentoo.org/970040 + +--- a/apps/Makefile ++++ b/apps/Makefile +@@ -66,9 +66,9 @@ + + ifneq ($(HAVE_EFI_OBJCOPY),) + +-FORMAT := --target efi-app-$(ARCH) +-$(TARGET_BSDRIVERS): FORMAT=--target efi-bsdrv-$(ARCH) +-$(TARGET_RTDRIVERS): FORMAT=--target efi-rtdrv-$(ARCH) ++FORMAT := -O efi-app-$(ARCH) ++$(TARGET_BSDRIVERS): FORMAT=-O efi-bsdrv-$(ARCH) ++$(TARGET_RTDRIVERS): FORMAT=-O efi-rtdrv-$(ARCH) + + else + diff --git a/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-3.0.18-r5.ebuild b/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-3.0.18-r5.ebuild deleted file mode 100644 index d190de4fda9..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-3.0.18-r5.ebuild +++ /dev/null @@ -1,144 +0,0 @@ -# Copyright 2004-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic toolchain-funcs - -DESCRIPTION="Library for build EFI Applications" -HOMEPAGE="https://sourceforge.net/projects/gnu-efi/" -SRC_URI="https://downloads.sourceforge.net/gnu-efi/${P}.tar.bz2" - -# inc/, lib/ dirs (README.efilib) -# - BSD-2 -# gnuefi dir: -# - BSD (3-cluase): crt0-efi-ia32.S -# - GPL-2+ : setjmp_ia32.S -LICENSE="GPL-2+ BSD BSD-2" -SLOT="0" -KEYWORDS="-* amd64 arm arm64 ~loong ~riscv x86" -IUSE="abi_x86_32 abi_x86_64 custom-cflags" -REQUIRED_USE=" - amd64? ( || ( abi_x86_32 abi_x86_64 ) ) - x86? ( || ( abi_x86_32 abi_x86_64 ) ) -" - -# for ld.bfd and objcopy -BDEPEND="sys-devel/binutils" - -# These objects get run early boot (i.e. not inside of Linux), -# so doing these QA checks on them doesn't make sense. -QA_EXECSTACK="usr/*/lib*efi.a:* usr/*/crt*.o" -RESTRICT="strip" - -PATCHES=( - "${FILESDIR}"/${P}-clang.patch - "${FILESDIR}"/${PN}-3.0.18-remove-linux-headers.patch -) - -check_and_set_objcopy() { - if [[ ${MERGE_TYPE} != "binary" ]]; then - # bug #931792 - # llvm-objcopy does not support EFI target, try to use binutils objcopy or fail - tc-export OBJCOPY - OBJCOPY="${OBJCOPY/llvm-/}" - # Test OBJCOPY to see if it supports EFI targets, and return if it does - LC_ALL=C "${OBJCOPY}" --help | grep -q '\<pei-' && return 0 - # If OBJCOPY does not support EFI targets, it is possible that the 'objcopy' on our path is - # still LLVM if the 'binutils-plugin' USE flag is set. In this case, we check to see if the - # '(prefix)/usr/bin/objcopy' binary is available (it should be, it's a dependency), and if - # so, we use the absolute path explicitly. - local binutils_objcopy="${EPREFIX}"/usr/bin/"${OBJCOPY}" - if [[ -e "${binutils_objcopy}" ]]; then - OBJCOPY="${binutils_objcopy}" - fi - if ! use arm && ! use riscv; then - # bug #939338 - # objcopy does not understand PE/COFF on these arches: arm32, riscv64 and mips64le - # gnu-efi containes a workaround - LC_ALL=C "${OBJCOPY}" --help | grep -q '\<pei-' || die "${OBJCOPY} (objcopy) does not support EFI target" - fi - fi -} - -check_compiler() { - if [[ ${MERGE_TYPE} != "binary" ]]; then - tc-is-gcc || tc-is-clang || die "Unsupported compiler" - fi -} - -pkg_pretend() { - check_compiler -} - -pkg_setup() { - check_compiler - check_and_set_objcopy -} - -src_prepare() { - default - sed -i -e "s/-Werror//" Make.defaults || die -} - -efimake() { - local arch= - case ${CHOST} in - arm*) arch=arm ;; - aarch64*) arch=aarch64 ;; - ia64*) arch=ia64 ;; - i?86*) arch=ia32 ;; - loongarch64*) arch=loongarch64 ;; - riscv64*) arch=riscv64;; - x86_64*) arch=x86_64 ;; - *) die "Unknown CHOST" ;; - esac - - local args=( - ARCH="${arch}" - HOSTCC="${BUILD_CC}" - CC="${CC}" - AS="${AS}" - LD="${LD}" - AR="${AR}" - OBJCOPY="${OBJCOPY}" - PREFIX="${EPREFIX}/usr" - LIBDIR='$(PREFIX)'/$(get_libdir) - ) - emake -j1 "${args[@]}" "$@" -} - -src_compile() { - tc-export BUILD_CC AR AS CC LD OBJCOPY - - if ! use custom-cflags; then - unset CFLAGS CPPFLAGS LDFLAGS - fi - - # work around musl: include first the compiler include dir, then the system one - # bug #933080, #938012 - local CPPINCLUDEDIR - if tc-is-gcc; then - CPPINCLUDEDIR=$(LC_ALL=C ${CC} -print-search-dirs 2> /dev/null | grep ^install: | cut -f2 -d' ')/include - elif tc-is-clang; then - CPPINCLUDEDIR=$(LC_ALL=C ${CC} -print-resource-dir 2> /dev/null)/include - fi - append-cflags "-nostdinc -isystem ${CPPINCLUDEDIR} -isystem ${ESYSROOT}/usr/include" - - if use amd64 || use x86; then - use abi_x86_32 && CHOST=i686 ABI=x86 efimake - use abi_x86_64 && CHOST=x86_64 ABI=amd64 efimake - else - efimake - fi -} - -src_install() { - if use amd64 || use x86; then - use abi_x86_32 && CHOST=i686 ABI=x86 efimake INSTALLROOT="${D}" install - use abi_x86_64 && CHOST=x86_64 ABI=amd64 efimake INSTALLROOT="${D}" install - else - efimake INSTALLROOT="${D}" install - fi - einstalldocs -} diff --git a/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-3.0.19.ebuild b/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-3.0.19.ebuild index 8a02c4f63f0..61a919b1b4a 100644 --- a/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-3.0.19.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-3.0.19.ebuild @@ -1,4 +1,4 @@ -# Copyright 2004-2025 Gentoo Authors +# Copyright 2004-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -34,6 +34,7 @@ RESTRICT="strip" PATCHES=( "${FILESDIR}"/${PN}-3.0.18-clang.patch "${FILESDIR}"/${PN}-3.0.18-remove-linux-headers.patch + "${FILESDIR}"/${PN}-3.0.19-fix-binutils-2.46.patch ) check_and_set_objcopy() { diff --git a/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-4.0.2.ebuild b/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-4.0.2.ebuild deleted file mode 100644 index f08189e0c8e..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-4.0.2.ebuild +++ /dev/null @@ -1,151 +0,0 @@ -# Copyright 2004-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic toolchain-funcs - -DESCRIPTION="Library for build EFI Applications" -HOMEPAGE="https://sourceforge.net/projects/gnu-efi/" -SRC_URI="https://github.com/ncroxon/gnu-efi/archive/${PV}.tar.gz -> ${P}.tar.gz" - -# inc/, lib/ dirs (README.efilib) -# - BSD-2 -# gnuefi dir: -# - BSD (3-cluase): crt0-efi-ia32.S -# - GPL-2+ : setjmp_ia32.S -LICENSE="GPL-2+ BSD BSD-2" -SLOT="0" -KEYWORDS="-* amd64 arm arm64 ~loong ~riscv x86" -IUSE="abi_x86_32 abi_x86_64 custom-cflags" -REQUIRED_USE=" - amd64? ( || ( abi_x86_32 abi_x86_64 ) ) - x86? ( || ( abi_x86_32 abi_x86_64 ) ) -" - -# for ld.bfd and objcopy -BDEPEND="sys-devel/binutils" - -# These objects get run early boot (i.e. not inside of Linux), -# so doing these QA checks on them doesn't make sense. -QA_EXECSTACK="usr/*/lib*efi.a:* usr/*/crt*.o" -RESTRICT="strip" - -PATCHES=( - "${FILESDIR}"/${PN}-4.0.2-remove-linux-headers.patch -) - -DOCS="README* SECURITY* docs/*" - -check_and_set_objcopy() { - if [[ ${MERGE_TYPE} != "binary" ]]; then - - if use arm || use riscv; then - # bug #939338 - # objcopy does not understand PE/COFF on these arches: arm32, riscv64 and mips64le - # gnu-efi containes a workaround - return 0 - fi - - # bug #931792 - # llvm-objcopy does not support EFI target, try to use binutils objcopy or fail - tc-export OBJCOPY - # Test OBJCOPY to see if it supports EFI targets, and return if it does - LC_ALL=C "${OBJCOPY}" --help | grep -q '\<pei-' && return 0 - - # If OBJCOPY does not support EFI targets, it is possible that the 'objcopy' on our path is - # still LLVM if the 'binutils-plugin' USE flag is set. In this case, we check to see if the - # '(prefix)/usr/bin/objcopy' binary is available (it should be, it's a dependency), and if - # so, we use the absolute path explicitly. - local binutils_objcopy="${EPREFIX}"/usr/bin/objcopy - if [[ -e "${binutils_objcopy}" ]]; then - OBJCOPY="${binutils_objcopy}" - einfo "Forcing OBJCOPY=${OBJCOPY}" - fi - - # Test OBJCOPY again to see if it supports EFI targets, and fail if it doesn't - LC_ALL=C "${OBJCOPY}" --help | grep -q '\<pei-' || die "${OBJCOPY} (objcopy) does not support EFI target" - fi -} - -check_compiler() { - if [[ ${MERGE_TYPE} != "binary" ]]; then - tc-is-gcc || tc-is-clang || die "Unsupported compiler" - fi -} - -pkg_pretend() { - check_compiler -} - -pkg_setup() { - check_compiler - check_and_set_objcopy -} - -src_prepare() { - default - sed -i -e "s/-Werror//" Make.defaults || die -} - -efimake() { - local arch= - case ${CHOST} in - arm*) arch=arm ;; - aarch64*) arch=aarch64 ;; - ia64*) arch=ia64 ;; - i?86*) arch=ia32 ;; - loongarch64*) arch=loongarch64 ;; - riscv64*) arch=riscv64;; - x86_64*) arch=x86_64 ;; - *) die "Unknown CHOST" ;; - esac - - local args=( - ARCH="${arch}" - HOSTCC="${BUILD_CC}" - CC="${CC}" - AS="${AS}" - LD="${LD}" - AR="${AR}" - OBJCOPY="${OBJCOPY}" - PREFIX="${EPREFIX}/usr" - LIBDIR='$(PREFIX)'/$(get_libdir) - ) - emake -j1 "${args[@]}" "$@" -} - -src_compile() { - tc-export BUILD_CC AR AS CC LD OBJCOPY - - if ! use custom-cflags; then - unset CFLAGS CPPFLAGS LDFLAGS - fi - - # work around musl: include first the compiler include dir, then the system one - # bug #933080, #938012 - local CPPINCLUDEDIR - if tc-is-gcc; then - CPPINCLUDEDIR=$(LC_ALL=C ${CC} -print-search-dirs 2> /dev/null | grep ^install: | cut -f2 -d' ')/include - elif tc-is-clang; then - CPPINCLUDEDIR=$(LC_ALL=C ${CC} -print-resource-dir 2> /dev/null)/include - fi - append-cflags "-nostdinc -isystem ${CPPINCLUDEDIR} -isystem ${ESYSROOT}/usr/include" - - if use amd64 || use x86; then - use abi_x86_32 && CHOST=i686 ABI=x86 efimake - use abi_x86_64 && CHOST=x86_64 ABI=amd64 efimake - else - efimake - fi -} - -src_install() { - if use amd64 || use x86; then - use abi_x86_32 && CHOST=i686 ABI=x86 efimake INSTALLROOT="${D}" install - use abi_x86_64 && CHOST=x86_64 ABI=amd64 efimake INSTALLROOT="${D}" install - else - efimake INSTALLROOT="${D}" install - fi - einstalldocs -} diff --git a/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-4.0.4.ebuild b/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-4.0.4.ebuild index c365147f3cd..208715ffce3 100644 --- a/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-4.0.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-4.0.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 2004-2025 Gentoo Authors +# Copyright 2004-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -16,7 +16,7 @@ SRC_URI="https://github.com/ncroxon/gnu-efi/archive/${PV}.tar.gz -> ${P}.tar.gz" # - GPL-2+ : setjmp_ia32.S LICENSE="GPL-2+ BSD BSD-2" SLOT="0" -KEYWORDS="-* ~amd64 ~arm ~arm64 ~loong ~riscv ~x86" +KEYWORDS="-* amd64 arm arm64 ~loong ~riscv x86" IUSE="abi_x86_32 abi_x86_64 custom-cflags" REQUIRED_USE=" amd64? ( || ( abi_x86_32 abi_x86_64 ) ) From c91ecd28d1e0110f23c61f4ce7f237aa63bf8c67 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:32 +0000 Subject: [PATCH 220/291] sys-boot/grub: Sync with Gentoo It's from Gentoo commit d16d04c25e9ffbafe9a4d4821a277fa98edc833d. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-boot/grub/Manifest | 5 +- ...2.14_rc1-configure.ac-avoid-bashisms.patch | 46 ------------------- .../sys-boot/grub/files/sbat.csv | 3 -- .../sys-boot/grub/files/sbat.csv.in | 3 ++ ...b-2.12-r11.ebuild => grub-2.12-r12.ebuild} | 14 ++++-- ...2.14_rc1-r4.ebuild => grub-2.14-r2.ebuild} | 46 +++++++++++-------- .../sys-boot/grub/grub-9999.ebuild | 14 ++++-- 7 files changed, 55 insertions(+), 76 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-boot/grub/files/grub-2.14_rc1-configure.ac-avoid-bashisms.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-boot/grub/files/sbat.csv create mode 100644 sdk_container/src/third_party/portage-stable/sys-boot/grub/files/sbat.csv.in rename sdk_container/src/third_party/portage-stable/sys-boot/grub/{grub-2.12-r11.ebuild => grub-2.12-r12.ebuild} (97%) rename sdk_container/src/third_party/portage-stable/sys-boot/grub/{grub-2.14_rc1-r4.ebuild => grub-2.14-r2.ebuild} (93%) diff --git a/sdk_container/src/third_party/portage-stable/sys-boot/grub/Manifest b/sdk_container/src/third_party/portage-stable/sys-boot/grub/Manifest index aa989811b94..57792944142 100644 --- a/sdk_container/src/third_party/portage-stable/sys-boot/grub/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-boot/grub/Manifest @@ -3,8 +3,9 @@ DIST dejavu-sans-ttf-2.37.zip 417746 BLAKE2B c8904f3cd5a49370a7dc10e456684c88aea DIST grub-2.12-bash-completion.patch.gz 3627 BLAKE2B 6ba80fd4fb4b28ae2e5a2387133d815da126a4eaa4b5cb24b13f4ba5a2499ab4099d10ada366ed39f84be2c38774122f48e1a1894768c5bee29149528610d095 SHA512 a9ee6d2253ae48d7f90907a9e975a3a1d01346bc621d8b8cddf7cc815cd91e078f6c61392724d13556ee64f099fa15c94fcb88a49ff02d4a90ebd376252cea5c DIST grub-2.12.tar.xz 6675608 BLAKE2B a678f7fafb945d325c8cf47aa086f48357a8f6335b762f77038c30a3896b3b05491598d9931d5335841d224fffcbe4a9a43ca1479057c1f1ce52b8d2a952c431 SHA512 761c060a4c3da9c0e810b0ea967e3ebc66baa4ddd682a503ae3d30a83707626bccaf49359304a16b3a26fc4435fe6bea1ee90be910c84de3c2b5485a31a15be3 DIST grub-2.12.tar.xz.sig 566 BLAKE2B 9b77fe53041b99f1196743aa6d9fc9c727b17c6512129bab2b35005f2c70f371e30521ddd804bf0c666e36cf2667247980f385ca1ac911fa9b8e0311427dc01c SHA512 fbe971d8c382578b49d33902234edd9cbd084b70820a1a56a59df4ec30874c0dd4fe27f8dc44bb380716bb7480ca68a87d120a25b92a6a10ff6c8ec1b60548d3 -DIST grub-2.14~rc1.tar.xz 7652220 BLAKE2B dededd47b4c29f1d8c6e92de78d8d90dd9fa661b5964af7033100fbd15c15e89e810db9c9127f84363425f586c3283ae4511c27f8bb69015b39582a10261a4a8 SHA512 d96e4c749caaa51393f037fd2e9d1837bef8b7b1c44655d86cdfc6447adf27bb4451fbb9e78b4846f3ee39102548b560b639f97dcf6f74563ee9afac60056c2e -DIST grub-2.14~rc1.tar.xz.sig 566 BLAKE2B eac34a1a513a818809162a4f827191902e933e95cf3775930a8bccb18b0eb052a8bc4175fd1ba89a8dda802951b3b758f18443c65be3f8268201fa07d93ed6ce SHA512 a67766234f8d075d50381c9b94513a41d9c4a5214e5f000f182069d3318695d13c10072030f74cdfc3dc72f98f4d90fc9133b005e0af11314c754072c12299ef +DIST grub-2.14-lld-support.tar.xz 6828 BLAKE2B 586274c56558f4b782f6bbfa511549daea4497c95f279a4aa733fe77e1ed7ddf2ced2ce803df999425c6d30d4ad888573b2ee0e69b8b14ce8102c5606bb2a311 SHA512 89522a61c174a8cf0ae7183a93f2ca01da89ff5f251c2207195408064fa882353a919b3185c784958a0e28d79d037b409a4c58a0e97e803968fa2c8c615401f2 +DIST grub-2.14.tar.xz 7725668 BLAKE2B 724bb430d8824bec39e6a025cf354a780b79260684c7c4e3d28beb08c8bee10d082a089fcb799f8f5eb6e83abcf8675fb7c5f5ddf443c5c0e61d6f180ee341af SHA512 5008e3b70072798d2b34301219fe174cc6bcfead40a9ab25fe32f30c62a392ffb7bf2eb629d481f4a6c19c2925324af3f08d7043e62623e746be2d8b3cbd1182 +DIST grub-2.14.tar.xz.sig 566 BLAKE2B a26d44082a94b95efd13738a47dc37c33142f1d486b1643100c5e61f280464513679407c13ad3d362caf83ca63dc47ad0249a4291660dbc5aa47b739502cc6b5 SHA512 3087cc4c9abd4c16e5d57f3f9fcea83af471c1a5950d487ecb93908feac537df8720bc83854328891c46f26b202a16eadeec8d1ab343c6fe269986b6f9dd2de8 DIST unifont-15.0.06.pcf.gz 1358322 BLAKE2B 81811e3de390ca35d1a2dc1f1dee73464e97f44907ba522c218ba9c5e39ca3c9d767552780a257a97c156eb623c17786d9c0d2b67786d61df5ca33a1e10db7ca SHA512 0a28a406629c604f5cbf51f501528239a7ed50d19f93ea505bc5bdc72639e4b926b03f4b8782a5733041f7cdb4aebb9948ac7cfd5a8ad9a0fe309944e595517b DIST unifont-17.0.02.pcf.gz 1357145 BLAKE2B 6043055b10273930454b95bea847f4cd9cbceb7fa5f4b903a92d1e05093ed8d36b0be6cdcc96089d910b3af9b826d8bc0491070d7af568801e829fb69238d787 SHA512 8c325b8f1b872ced2a8ceffa89ce81858c4c768562711610529ae0be488dc335e333f8674cad78fe9550de222247816c435b0079bc959e6e1caebf4c7ecd2faf DIST unifont-17.0.02.pcf.gz.sig 566 BLAKE2B b20c3b498862b5f652bea95ca240a279674de583b2f03dc0b9ee0bac46da2513d54ca8fdcacc222adf5360da6fe919060bf41d977335d7c11a1bf9407c84c99d SHA512 f31792427adf73c0cf16f890faa579fda5315cbc0c9ac17b4d19555255f49dbf89f6333012ce99fec9819252fd7b81e07a65a2cd0d3aa54a54ded8d7c50ac186 diff --git a/sdk_container/src/third_party/portage-stable/sys-boot/grub/files/grub-2.14_rc1-configure.ac-avoid-bashisms.patch b/sdk_container/src/third_party/portage-stable/sys-boot/grub/files/grub-2.14_rc1-configure.ac-avoid-bashisms.patch deleted file mode 100644 index f25b94c99ed..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-boot/grub/files/grub-2.14_rc1-configure.ac-avoid-bashisms.patch +++ /dev/null @@ -1,46 +0,0 @@ -https://bugs.gentoo.org/965315 - -From 5196d40b6ec6ad75e84ab98e9f4a3d71211f0d56 Mon Sep 17 00:00:00 2001 -From: Lars Wendler <polynomial-c@gmx.de> -Date: Thu, 30 Oct 2025 07:31:59 +0100 -Subject: [PATCH] configure.ac: avoid bashisms -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -or else configure check doesn't succeed with non-bash shell (e.g. dash): - - checking whether to enable AMD64 as(1) feature detection... /var/tmp/portage/sys-boot/grub-2.14_rc1/work/grub-2.14~rc1/configure: 39176: test: xx86_64: unexpected operator - no - -and later build fails with - - /var/tmp/portage/sys-boot/grub-2.14_rc1/work/grub-2.14~rc1/grub-core/lib/libgcrypt-grub/src/hwf-x86.c: In function ‘detect_x86_gnuc’: - /var/tmp/portage/sys-boot/grub-2.14_rc1/work/grub-2.14~rc1/grub-core/lib/libgcrypt-grub/src/hwf-x86.c:252:17: error: ‘HWF_INTEL_CPU’ undeclared (first use in this function) - 252 | result |= HWF_INTEL_CPU; - | ^~~~~~~~~~~~~ - -and other corresponding HWF_INTEL_* definitions because HAVE_CPU_ARCH_X86 was -erroneously not defined by configure script. - -Signed-off-by: Lars Wendler <polynomial-c@gmx.de> ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 8a72c078e..17937baf4 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1150,7 +1150,7 @@ fi - - # Implementation of the --disable-amd64-as-feature-detection switch. - AC_MSG_CHECKING([whether to enable AMD64 as(1) feature detection]) --if test x$target_cpu == xx86_64 -a x$platform == xefi; then -+if test x$target_cpu = xx86_64 -a x$platform = xefi; then - CPPFLAGS_GCRY_ASM="-D__x86_64 -DHAVE_CPU_ARCH_X86" - AC_ARG_ENABLE(amd64-as-feature-detection, - AS_HELP_STRING([--disable-amd64-as-feature-detection], --- -2.51.1 - diff --git a/sdk_container/src/third_party/portage-stable/sys-boot/grub/files/sbat.csv b/sdk_container/src/third_party/portage-stable/sys-boot/grub/files/sbat.csv deleted file mode 100644 index f85cd8eb063..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-boot/grub/files/sbat.csv +++ /dev/null @@ -1,3 +0,0 @@ -sbat,1,SBAT Version,sbat,1,https://github.com/rhboot/shim/blob/main/SBAT.md -grub,3,Free Software Foundation,grub,%PV%,https://www.gnu.org/software/grub/ -grub.gentoo,1,Gentoo,grub,%PV%,https://bugs.gentoo.org/ diff --git a/sdk_container/src/third_party/portage-stable/sys-boot/grub/files/sbat.csv.in b/sdk_container/src/third_party/portage-stable/sys-boot/grub/files/sbat.csv.in new file mode 100644 index 00000000000..1c112393e8e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-boot/grub/files/sbat.csv.in @@ -0,0 +1,3 @@ +sbat,1,SBAT Version,sbat,1,https://github.com/rhboot/shim/blob/main/SBAT.md +grub,@GEN_GRUB@,Free Software Foundation,grub,@PV@,https://www.gnu.org/software/grub/ +grub.gentoo,@GEN_GENTOO@,Gentoo,grub,@PVR@,https://bugs.gentoo.org/ diff --git a/sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.12-r11.ebuild b/sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.12-r12.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.12-r11.ebuild rename to sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.12-r12.ebuild index ae0dc8c0930..7b91114ef24 100644 --- a/sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.12-r11.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.12-r12.ebuild @@ -148,7 +148,8 @@ QA_MULTILIB_PATHS="usr/lib/grub/.*" QA_WX_LOAD="usr/lib/grub/*" pkg_setup() { - : + # skip python-any-r1_pkg_setup: python_setup is called in src_prepare + secureboot_pkg_setup } src_unpack() { @@ -274,6 +275,14 @@ src_configure() { export LEX=flex unset YACC + local sedargs=( + -e "s/@PV@/${PV}/" + -e "s/@PVR@/${PVR}/" + -e "s/@GEN_GRUB@/4/" + -e "s/@GEN_GENTOO@/1/" + ) + sed "${sedargs[@]}" "${FILESDIR}/sbat.csv.in" > "${WORKDIR}/sbat.csv" || die + MULTIBUILD_VARIANTS=() local p for p in "${GRUB_ALL_PLATFORMS[@]}"; do @@ -380,9 +389,8 @@ src_install() { # https://bugs.gentoo.org/231935 dostrip -x /usr/lib/grub - sed -e "s/%PV%/${PV}/" "${FILESDIR}/sbat.csv" > "${T}/sbat.csv" || die insinto /usr/share/grub - doins "${T}/sbat.csv" + doins "${WORKDIR}/sbat.csv" if use elibc_musl; then # https://bugs.gentoo.org/900348 diff --git a/sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.14_rc1-r4.ebuild b/sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.14-r2.ebuild similarity index 93% rename from sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.14_rc1-r4.ebuild rename to sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.14-r2.ebuild index b999f4f2177..7d50dd838c6 100644 --- a/sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.14_rc1-r4.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.14-r2.ebuild @@ -16,10 +16,8 @@ EAPI=8 # If any of the above applies to a user patch, the user should set the # corresponding variable in make.conf or the environment. +GRUB_AUTOGEN=1 GRUB_AUTORECONF=1 -if [[ ${PV} == 9999 ]]; then - GRUB_BOOTSTRAP=1 -fi PYTHON_COMPAT=( python3_{11..14} ) WANT_LIBTOOL=none @@ -48,6 +46,7 @@ if [[ ${PV} != 9999 ]]; then SRC_URI=" mirror://gnu/${PN}/${P}.tar.xz verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig ) + https://dev.gentoo.org/~floppym/dist/${P}-lld-support.tar.xz " S=${WORKDIR}/${P%_*} fi @@ -63,13 +62,6 @@ else EGIT_REPO_URI="https://git.savannah.gnu.org/git/grub.git" fi -PATCHES=( - "${FILESDIR}"/gfxpayload.patch - "${FILESDIR}"/grub-2.02_beta2-KERNEL_GLOBS.patch - "${FILESDIR}"/grub-2.06-test-words.patch - "${FILESDIR}"/grub-2.14_rc1-configure.ac-avoid-bashisms.patch -) - DEJAVU_VER=2.37 DEJAVU=dejavu-fonts-ttf-${DEJAVU_VER} UNIFONT=unifont-17.0.02 @@ -155,7 +147,8 @@ QA_MULTILIB_PATHS="usr/lib/grub/.*" QA_WX_LOAD="usr/lib/grub/*" pkg_setup() { - : + # skip python-any-r1_pkg_setup: python_setup is called in src_prepare + secureboot_pkg_setup } src_unpack() { @@ -166,6 +159,9 @@ src_unpack() { local GNULIB_REVISION=$(source bootstrap.conf >/dev/null; echo "${GNULIB_REVISION}") git-r3_fetch "${GNULIB_URI}" "${GNULIB_REVISION}" git-r3_checkout "${GNULIB_URI}" gnulib + if use nls; then + sh linguas.sh || die + fi popd >/dev/null || die elif use verify-sig; then verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sig} \ @@ -179,13 +175,17 @@ src_unpack() { } src_prepare() { + local PATCHES=( + "${WORKDIR}/${P}-lld-support" + ) + default python_setup if [[ -n ${GRUB_BOOTSTRAP} ]]; then eautopoint --force - AUTOPOINT=: AUTORECONF=: ./bootstrap || die + AUTOPOINT=: AUTORECONF=: ./bootstrap --skip-po || die elif [[ -n ${GRUB_AUTOGEN} ]]; then FROM_BOOTSTRAP=1 ./autogen.sh || die fi @@ -283,6 +283,14 @@ src_configure() { export LEX=flex unset YACC + local sedargs=( + -e "s/@PV@/${PV}/" + -e "s/@PVR@/${PVR}/" + -e "s/@GEN_GRUB@/5/" + -e "s/@GEN_GENTOO@/1/" + ) + sed "${sedargs[@]}" "${FILESDIR}/sbat.csv.in" > "${WORKDIR}/sbat.csv" || die + MULTIBUILD_VARIANTS=() local p for p in "${GRUB_ALL_PLATFORMS[@]}"; do @@ -389,9 +397,8 @@ src_install() { # https://bugs.gentoo.org/231935 dostrip -x /usr/lib/grub - sed -e "s/%PV%/${PV}/" "${FILESDIR}/sbat.csv" > "${T}/sbat.csv" || die insinto /usr/share/grub - doins "${T}/sbat.csv" + doins "${WORKDIR}/sbat.csv" if use elibc_musl; then # https://bugs.gentoo.org/900348 @@ -418,16 +425,17 @@ pkg_postinst() { ewarn fi - if has_version 'sys-boot/grub:0'; then - elog "A migration guide for GRUB Legacy users is available:" - elog " https://wiki.gentoo.org/wiki/GRUB2_Migration" - fi - if has_version sys-boot/os-prober; then ewarn "Due to security concerns, os-prober is disabled by default." ewarn "Set GRUB_DISABLE_OS_PROBER=false in /etc/default/grub to enable it." fi + if grep -q GRUB_LINUX_KERNEL_GLOBS "${EROOT}"/etc/default/grub; then + ewarn "Support for GRUB_LINUX_KERNEL_GLOBS has been dropped." + ewarn "Ensure that your kernels are named appropriately or edit" + ewarn "/etc/grub.d/10_linux to compensate." + fi + if use secureboot; then elog elog "The signed standalone grub EFI executable(s) are available in:" diff --git a/sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-9999.ebuild index 447fff13f57..1c175f98607 100644 --- a/sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-9999.ebuild @@ -148,7 +148,8 @@ QA_MULTILIB_PATHS="usr/lib/grub/.*" QA_WX_LOAD="usr/lib/grub/*" pkg_setup() { - : + # skip python-any-r1_pkg_setup: python_setup is called in src_prepare + secureboot_pkg_setup } src_unpack() { @@ -279,6 +280,14 @@ src_configure() { export LEX=flex unset YACC + local sedargs=( + -e "s/@PV@/${PV}/" + -e "s/@PVR@/${PVR}/" + -e "s/@GEN_GRUB@/5/" + -e "s/@GEN_GENTOO@/1/" + ) + sed "${sedargs[@]}" "${FILESDIR}/sbat.csv.in" > "${WORKDIR}/sbat.csv" || die + MULTIBUILD_VARIANTS=() local p for p in "${GRUB_ALL_PLATFORMS[@]}"; do @@ -385,9 +394,8 @@ src_install() { # https://bugs.gentoo.org/231935 dostrip -x /usr/lib/grub - sed -e "s/%PV%/${PV}/" "${FILESDIR}/sbat.csv" > "${T}/sbat.csv" || die insinto /usr/share/grub - doins "${T}/sbat.csv" + doins "${WORKDIR}/sbat.csv" if use elibc_musl; then # https://bugs.gentoo.org/900348 From 248782dcd21b12b35717ea9f7d0dbf9f69b43254 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:33 +0000 Subject: [PATCH 221/291] sys-devel/binutils: Sync with Gentoo It's from Gentoo commit b6c7751920ccdcb916d3af5f7a1051c9844199a6. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-devel/binutils/Manifest | 2 + .../sys-devel/binutils/binutils-2.45.1.ebuild | 4 +- .../binutils/binutils-2.45.9999.ebuild | 4 +- .../sys-devel/binutils/binutils-2.46.0.ebuild | 636 ++++++++++++++++++ .../sys-devel/binutils/binutils-9999.ebuild | 4 +- .../binutils-2.43-linker-search-path.patch | 43 -- 6 files changed, 644 insertions(+), 49 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.46.0.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/binutils/files/binutils-2.43-linker-search-path.patch diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/Manifest b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/Manifest index d6be19dd3dc..9a65004a94b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/Manifest @@ -29,3 +29,5 @@ DIST binutils-2.45-patches-3.tar.xz 31264 BLAKE2B 3fda1843a13a3ea7d6a2bbfe5826c0 DIST binutils-2.45.1-patches-1.tar.xz 9172 BLAKE2B 37fd7f0d7d231223a88637691bcf6bdec5481a573b47e6385e4dba7f7895b94ceae308c7875bbdc1c6e537c6ff0cb5f222c782f04b5f2757a5730aa83edf1d32 SHA512 c1251d7baf352f5909570e1ee45021eeabffb68222bc80991f4a53faee97857471a68aec664bfbf35cbd3b96ea9e8d0bfa52c3d0e5bbfdbb94daf590957cd89c DIST binutils-2.45.1.tar.xz 27962312 BLAKE2B 1ccab38659ec47f9100b61322627345fe79ebd04ed0b1e872c988edded4d292d7c9ac33d9f6ea47bf265ec823dfba60da0e84374900c15ec89e3aa9280ac020c SHA512 ea030419eba387579ab717be7e3223fc99e93b586860b06003c12489f93441640d4082736f76aa5e98233db4f46e232f536a45e471486de1f5b64e1b827c167e DIST binutils-2.45.tar.xz 27868232 BLAKE2B 1ce72346b1f531c89feb86b407e2c649151b506ffbd1a02d413411d36f7ede98fa9a1adf75dd941c01df5fe7e6bf151828b269eeb7c278315ca8004bff22eb7f SHA512 c7b10a7466d9fd398d7a0b3f2a43318432668d714f2ec70069a31bdc93c86d28e0fe83792195727167743707fbae45337c0873a0786416db53bbf22860c16ce7 +DIST binutils-2.46.0-patches-1.tar.xz 6620 BLAKE2B ef5ae8ded0b635c6d85fd5220e23f1b79081369704d82edf2c7d3fc2000adae5899e0920a1fdc64bf1c518bdbeaef09aabff8abecaf3cec0e51596604162f6dd SHA512 b8f555e1ef01a23aa138c9f67b55a70c929d7cd5ec8993c9c7ab1d02d604e51e710713dbea31298291dd0afe3b8c7db85630b6314c2117861e47bd2e9c9d74a9 +DIST binutils-2.46.0.tar.xz 28548776 BLAKE2B 9f4fd8897d237eb5003bdf439537dfc5f8c681e9ff939fb06bb8235ed298031ea4cc91611edb640ffc432199d5791289d003fe0d07acce80327dc40595a5eb9e SHA512 32f880bb4f69351f4ae54a5d00359625c6c49d8e76624fb5cffdf174c79c8d3212f66225b81c12933c6ed59604ab652560773dd92fab384b930c97a9d4e1fdf2 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.45.1.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.45.1.ebuild index 97b97ef2e7a..60020b4fc0d 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.45.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.45.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -9,7 +9,7 @@ DESCRIPTION="Tools necessary to build programs" HOMEPAGE="https://sourceware.org/binutils/" LICENSE="GPL-3+" -IUSE="cet debuginfod doc gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla xxhash zstd" +IUSE="cet +debuginfod doc gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla xxhash zstd" # Variables that can be set here (ignored for live ebuilds) # PATCH_VER - the patchset version diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.45.9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.45.9999.ebuild index 6bef4f37b48..7f793e68fcd 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.45.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.45.9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -9,7 +9,7 @@ DESCRIPTION="Tools necessary to build programs" HOMEPAGE="https://sourceware.org/binutils/" LICENSE="GPL-3+" -IUSE="cet debuginfod doc gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla xxhash zstd" +IUSE="cet +debuginfod doc gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla xxhash zstd" # Variables that can be set here (ignored for live ebuilds) # PATCH_VER - the patchset version diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.46.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.46.0.ebuild new file mode 100644 index 00000000000..357b3d282c1 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.46.0.ebuild @@ -0,0 +1,636 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit dot-a libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs + +DESCRIPTION="Tools necessary to build programs" +HOMEPAGE="https://sourceware.org/binutils/" + +LICENSE="GPL-3+" +IUSE="cet +debuginfod doc gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla xxhash zstd" + +# Variables that can be set here (ignored for live ebuilds) +# PATCH_VER - the patchset version +# Default: empty, no patching +# PATCH_BINUTILS_VER - the binutils version in the patchset name +# - Default: PV +# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/... +# for the patchsets + +PATCH_VER=1 +PATCH_DEV=dilfridge + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + SLOT=${PV} +elif [[ ${PV} == *9999 ]]; then + inherit git-r3 + SLOT=$(ver_cut 1-2) +else + PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}} + PATCH_DEV=${PATCH_DEV:-dilfridge} + SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz https://sourceware.org/pub/binutils/releases/binutils-${PV}.tar.xz https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PV}.tar.xz" + [[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI} + https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz" + SLOT=$(ver_cut 1-2) + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +# +# The cross-compile logic +# +export CTARGET=${CTARGET:-${CHOST}} +if [[ ${CTARGET} == ${CHOST} ]] ; then + if [[ ${CATEGORY} == cross-* ]] ; then + export CTARGET=${CATEGORY#cross-} + fi +fi +is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; } + +# +# The dependencies +# +RDEPEND=" + >=sys-devel/binutils-config-3 + virtual/zlib:= + debuginfod? ( + dev-libs/elfutils[debuginfod(-)] + ) + zstd? ( app-arch/zstd:= ) +" +DEPEND=" + ${RDEPEND} + xxhash? ( dev-libs/xxhash ) +" +BDEPEND=" + doc? ( sys-apps/texinfo ) + pgo? ( + dev-util/dejagnu + app-alternatives/bc + ) + test? ( + dev-util/dejagnu + app-alternatives/bc + ) + nls? ( sys-devel/gettext ) + zstd? ( virtual/pkgconfig ) + app-alternatives/lex + app-alternatives/yacc +" + +RESTRICT="!test? ( test )" + +MY_BUILDDIR=${WORKDIR}/build + +src_unpack() { + if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/toolchain/binutils-patches.git + https://github.com/gentoo/binutils-patches + " + EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git + git-r3_src_unpack + + if [[ ${PV} != 9999 ]] ; then + EGIT_BRANCH=binutils-$(ver_cut 1)_$(ver_cut 2)-branch + mv patches-git/${PV%*.9999} patch || die + else + mv patches-git/9999 patch || die + fi + EGIT_REPO_URI=" + https://sourceware.org/git/binutils-gdb.git + https://git.sr.ht/~sourceware/binutils-gdb + https://gitlab.com/x86-binutils/binutils-gdb.git + " + S=${WORKDIR}/binutils + EGIT_CHECKOUT_DIR=${S} + git-r3_src_unpack + else + unpack ${P/-hppa64/}.tar.xz + + cd "${WORKDIR}" || die + unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz + + # _p patch versions are Gentoo specific tarballs ... + local dir=${P%_p?} + dir=${dir/-hppa64/} + + S=${WORKDIR}/${dir} + fi + + cd "${WORKDIR}" || die + mkdir -p "${MY_BUILDDIR}" || die +} + +src_prepare() { + local patchsetname + if [[ ${PV} == 9999 ]] ; then + patchsetname="from git master" + elif [[ ${PV} == *9999 ]] ; then + patchsetname="from git branch ${EGIT_BRANCH}" + else + patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}" + fi + + if [[ -n ${PATCH_VER} ]] || [[ ${PV} == *9999 ]] ; then + if ! use vanilla; then + einfo "Applying binutils patchset ${patchsetname}" + eapply "${WORKDIR}/patch" + einfo "Done." + + # This is applied conditionally for now just out of caution. + # It should be okay on non-prefix systems though. See bug #892549. + if is_cross || use prefix; then + eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch \ + "${FILESDIR}"/binutils-2.43-linker-prefix.patch + fi + fi + fi + + # Make sure our explicit libdir paths don't get clobbered, bug #562460 + sed -i \ + -e 's:@bfdlibdir@:@libdir@:g' \ + -e 's:@bfdincludedir@:@includedir@:g' \ + {bfd,opcodes}/Makefile.in || die + + # Apply things from PATCHES and user dirs + default + + # Run misc portage update scripts + gnuconfig_update + elibtoolize --portage --no-uclibc +} + +toolchain-binutils_bugurl() { + printf "https://bugs.gentoo.org/" +} +toolchain-binutils_pkgversion() { + printf "Gentoo ${PV}" + [[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}" +} + +src_configure() { + # See https://www.gnu.org/software/make/manual/html_node/Parallel-Output.html + # Avoid really confusing logs from subconfigure spam, makes logs far + # more legible. + MAKEOPTS="--output-sync=line ${MAKEOPTS}" + + # Setup some paths + LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${PV} + INCPATH=${LIBPATH}/include + DATAPATH=/usr/share/binutils-data/${CTARGET}/${PV} + if is_cross ; then + TOOLPATH=/usr/${CHOST}/${CTARGET} + else + TOOLPATH=/usr/${CTARGET} + fi + BINPATH=${TOOLPATH}/binutils-bin/${PV} + + # Make sure we filter $LINGUAS so that only ones that + # actually work make it through, bug #42033 + strip-linguas -u */po + + # Keep things sane + strip-flags + use cet && filter-flags -mindirect-branch -mindirect-branch=* + use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152 + lto-guarantee-fat + + local x + echo + for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do + einfo "$(printf '%10s' ${x}:) ${!x}" + done + echo + + cd "${MY_BUILDDIR}" || die + local myconf=() + + if use plugins ; then + myconf+=( --enable-plugins ) + fi + + if use nls ; then + myconf+=( --without-included-gettext ) + else + myconf+=( --disable-nls ) + fi + + myconf+=( --with-system-zlib ) + + # For bi-arch systems, enable a 64bit bfd. This matches the bi-arch + # logic in toolchain.eclass. bug #446946 + # + # We used to do it for everyone, but it's slow on 32bit arches. bug #438522 + case $(tc-arch) in + ppc|sparc|x86) myconf+=( --enable-64-bit-bfd ) ;; + esac + + use multitarget && myconf+=( --enable-targets=all --enable-64-bit-bfd ) + + [[ -n ${CBUILD} ]] && myconf+=( --build=${CBUILD} ) + + is_cross && myconf+=( + --with-sysroot="${EPREFIX}"/usr/${CTARGET} + --enable-poison-system-directories + ) + + myconf+=( --enable-secureplt ) + + # mips can't do hash-style=gnu ... + if [[ $(tc-arch) != mips ]] ; then + myconf+=( --enable-default-hash-style=gnu ) + fi + + myconf+=( + --prefix="${EPREFIX}"/usr + --host=${CHOST} + --target=${CTARGET} + --datadir="${EPREFIX}"${DATAPATH} + --datarootdir="${EPREFIX}"${DATAPATH} + --infodir="${EPREFIX}"${DATAPATH}/info + --mandir="${EPREFIX}"${DATAPATH}/man + --bindir="${EPREFIX}"${BINPATH} + --libdir="${EPREFIX}"${LIBPATH} + --libexecdir="${EPREFIX}"${LIBPATH} + --includedir="${EPREFIX}"${INCPATH} + # portage's econf() does not detect presence of --d-d-t + # because it greps only top-level ./configure. But not + # libiberty's or bfd's configure. + --disable-dependency-tracking + --disable-silent-rules + --enable-obsolete + --enable-shared + --enable-threads + --enable-relro + --enable-install-libiberty + --enable-textrel-check=$(usex hardened error warning) + # Things to think about + #--enable-deterministic-archives + --enable-new-dtags + --disable-jansson + --disable-werror + --with-bugurl="$(toolchain-binutils_bugurl)" + --with-pkgversion="$(toolchain-binutils_pkgversion)" + $(use_enable static-libs static) + $(use_with xxhash) + $(use_with zstd) + + # Disable modules that are in a combined binutils/gdb tree, bug #490566 + --disable-{gdb,gdbserver,libbacktrace,libdecnumber,readline,sim} + # Strip out broken static link flags: https://gcc.gnu.org/PR56750 + --without-stage1-ldflags + # Change SONAME to avoid conflict across {native,cross}/binutils, binutils-libs. bug #666100 + --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st) + + $(use_with debuginfod) + + # Avoid automagic dev-libs/msgpack dep, bug #865875 + --without-msgpack + + # Allow user to opt into CET for host libraries. + # Ideally we would like automagic-or-disabled here. + # But the check does not quite work on i686: bug #760926. + $(use_enable cet) + + # We can enable this by default in future, but it's brand new + # in 2.39 with several bugs: + # - Doesn't build on musl (https://sourceware.org/PR29477) + # - No man pages (https://sourceware.org/PR29521) + # - Broken at runtime without Java (https://sourceware.org/PR29479) + # - binutils-config (and this ebuild?) needs adaptation first (https://bugs.gentoo.org/865113) + $(use_enable gprofng) + + # Enables colored disassembly by default (equivalent to passing + # --disassembler-color=terminal to all objdump invocations). + --enable-colored-disassembly + ) + + case ${CTARGET} in + x86_64-*|aarch64*|arm64*|i[3456]*) + # These hardening options are available from 2.39+ but + # they unconditionally enable the behaviour even on arches + # where e.g. execstacks can't be avoided. + # See https://sourceware.org/PR29592. + # + # TODO: Get the logic for this fixed upstream so it doesn't + # create impossible broken combinations on some arches, like mips. + # + # TODO: Get the logic for this fixed upstream so --disable-* works + # as expected. + myconf+=( + --enable-warn-execstack=yes + --enable-warn-rwx-segments=yes + ) + + if use hardened ; then + myconf+=( + # TODO: breaks glibc test suite + #--enable-error-execstack=yes + #--enable-error-rwx-segments=yes + --enable-default-execstack=no + ) + fi + ;; + *) + ;; + esac + + if use elibc_musl ; then + # Override our earlier setting for musl, as textrels don't + # work there at all. See bug #707660. + myconf+=( + --enable-textrel-check=error + ) + fi + + if use test || { use pgo && tc-is-lto ; } ; then + # -Wa,* needs to be consistent everywhere or lto-wrapper will complain + filter-flags '-Wa,*' + fi + + if ! is_cross ; then + myconf+=( $(use_enable pgo pgo-build $(tc-is-lto && echo "lto" || echo "yes")) ) + + if use pgo ; then + # We let configure handle it for us because it has to run + # the testsuite later on for profiling, and LTO isn't compatible + # with the testsuite. + filter-lto + + # bug #637066 + filter-flags -Wall -Wreturn-type + + export BUILD_CFLAGS="${CFLAGS}" + fi + fi + + ECONF_SOURCE="${S}" econf "${myconf[@]}" + + # Prevent makeinfo from running if doc is unset. + if ! use doc ; then + sed -i \ + -e '/^MAKEINFO/s:=.*:= true:' \ + Makefile || die + fi +} + +src_compile() { + cd "${MY_BUILDDIR}" || die + + # see Note [tooldir hack for ldscripts] + # see linker prefix patch + emake \ + tooldir="${EPREFIX}${TOOLPATH}" \ + gentoo_prefix=$(usex prefix-guest "${EPREFIX}"/usr /usr) \ + all + + # only build info pages if the user wants them + if use doc ; then + emake info + fi + + # we nuke the manpages when we're left with junk + # (like when we bootstrap, no perl -> no manpages) + find . -name '*.1' -a -size 0 -delete +} + +src_test() { + cd "${MY_BUILDDIR}" || die + + ( + # Tests don't expect LTO + filter-lto + + # If we have e.g. -mfpmath=sse -march=pentium4 in CFLAGS, + # we'll get lto1 warnings for some tests which cause + # spurious failures because -mfpmath isn't passed at + # link-time. Filter accordingly. + # + # Alternatively, we could pass C{C,XX}_FOR_TARGET with + # some (ideally not all, surely would break some tests) + # stuffed in. + filter-flags '-mfpmath=*' + + # lto-wrapper warnings which confuse tests + filter-flags '-Wa,*' + + # bug #637066 + filter-flags -Wall -Wreturn-type + + emake -k check \ + CFLAGS_FOR_TARGET="${CFLAGS_FOR_TARGET:-${CFLAGS}}" \ + CXXFLAGS_FOR_TARGET="${CXXFLAGS_FOR_TARGET:-${CXXFLAGS}}" \ + LDFLAGS_FOR_TARGET="${LDFLAGS_FOR_TARGET:-${LDFLAGS}}" \ + CFLAGS="${CFLAGS}" \ + CXXFLAGS="${CXXFLAGS}" \ + LDFLAGS="${LDFLAGS}" + ) +} + +src_install() { + local x d + + cd "${MY_BUILDDIR}" || die + + # see Note [tooldir hack for ldscripts] + emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install + rm -rf "${ED}"/${LIBPATH}/bin || die + use static-libs || find "${ED}" -name '*.la' -delete + # Explicit "${ED}" as we need it to do things even w/ USE=-static-libs + strip-lto-bytecode "${ED}" + + # Newer versions of binutils get fancy with ${LIBPATH}, bug #171905 + cd "${ED}"/${LIBPATH} || die + for d in ../* ; do + [[ ${d} == ../${PV} ]] && continue + mv ${d}/* . || die + rmdir ${d} || die + done + + # Now we collect everything intp the proper SLOT-ed dirs + # When something is built to cross-compile, it installs into + # /usr/$CHOST/ by default ... we have to 'fix' that :) + if is_cross ; then + cd "${ED}"/${BINPATH} || die + for x in * ; do + mv ${x} ${x/${CTARGET}-} || die + done + + if [[ -d ${ED}/usr/${CHOST}/${CTARGET} ]] ; then + mv "${ED}"/usr/${CHOST}/${CTARGET}/include "${ED}"/${INCPATH} + mv "${ED}"/usr/${CHOST}/${CTARGET}/lib/* "${ED}"/${LIBPATH}/ + rm -r "${ED}"/usr/${CHOST}/{include,lib} + fi + fi + + insinto ${INCPATH} + local libiberty_headers=( + # Not all the libiberty headers. See libiberty/Makefile.in:install_to_libdir. + demangle.h + dyn-string.h + fibheap.h + hashtab.h + libiberty.h + objalloc.h + splay-tree.h + ) + doins "${libiberty_headers[@]/#/${S}/include/}" + if [[ -d ${ED}/${LIBPATH}/lib ]] ; then + mv "${ED}"/${LIBPATH}/lib/* "${ED}"/${LIBPATH}/ || die + rm -r "${ED}"/${LIBPATH}/lib || die + fi + + # Generate an env.d entry for this binutils + insinto /etc/env.d/binutils + cat <<-EOF > "${T}"/env.d + TARGET="${CTARGET}" + VER="${PV}" + LIBPATH="${EPREFIX}${LIBPATH}" + EOF + newins "${T}"/env.d ${CTARGET}-${PV} + + # Handle documentation + if ! is_cross ; then + cd "${S}" || die + dodoc README + + docinto bfd + dodoc bfd/ChangeLog* bfd/README bfd/PORTING bfd/TODO + + docinto binutils + dodoc binutils/ChangeLog binutils/NEWS binutils/README + + docinto gas + dodoc gas/ChangeLog* gas/CONTRIBUTORS gas/NEWS gas/README* + + docinto gprof + dodoc gprof/ChangeLog* gprof/TEST gprof/TODO gprof/bbconv.pl + + docinto ld + dodoc ld/ChangeLog* ld/README ld/NEWS ld/TODO + + docinto libiberty + dodoc libiberty/ChangeLog* libiberty/README + + docinto opcodes + dodoc opcodes/ChangeLog* + fi + + # Remove shared info pages + rm -f "${ED}"/${DATAPATH}/info/{dir,configure.info,standards.info} + + docompress "${DATAPATH}"/{info,man} + + # Trim all empty dirs + find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null +} + +# Simple test to make sure our new binutils isn't completely broken. +# Skip if this binutils is a cross compiler. +binutils_sanity_check() { + pushd "${T}" >/dev/null + + einfo "Last-minute run tests with binutils in ${ED}${BINPATH} ..." + + cat <<-EOF > "${T}"/number.c + int get_magic_number() { + return 42; + } + EOF + + cat <<-EOF > "${T}"/test.c + #include <stdio.h> + int get_magic_number(); + + int main() { + printf("Hello Gentoo! Your magic number is: %d\n", get_magic_number()); + } + EOF + + local -x LD_LIBRARY_PATH="${ED}${LIBPATH}${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}" + + local opt opt2 + # TODO: test multilib variants? + for opt in '' '-O2' ; do + # TODO: add static-pie? we need to check if support exists, though (bug #965478) + for opt2 in '-static' '-fno-PIE -no-pie' ; do + $(tc-getCC) ${opt} ${opt2} -B"${ED}${BINPATH}" "${T}"/number.c "${T}"/test.c -o "${T}"/test + if "${T}"/test | grep -q "Hello Gentoo! Your magic number is: 42" ; then + :; + else + die "Test with '${opt} ${opt2}' failed! Aborting to avoid broken binutils!" + fi + done + done + + popd >/dev/null +} + +pkg_preinst() { + [[ -n ${ROOT} ]] && return 0 + [[ -n ${EPREFIX} ]] && return 0 + [[ -d ${ED}${BINPATH} ]] || return 0 + [[ -n ${BOOTSTRAP_RAP} ]] || return 0 + is_cross && return 0 + binutils_sanity_check +} + +pkg_postinst() { + # Make sure this ${CTARGET} has a binutils version selected + [[ -e ${EROOT}/etc/env.d/binutils/config-${CTARGET} ]] && return 0 + binutils-config ${CTARGET}-${PV} || eerror binutils-config returned an error +} + +pkg_postrm() { + local current_profile=$(binutils-config -c ${CTARGET}) + + # If no other versions exist, then uninstall for this + # target ... otherwise, switch to the newest version + # Note: only do this if this version is unmerged. We + # rerun binutils-config if this is a remerge, as + # we want the mtimes on the symlinks updated (if + # it is the same as the current selected profile) + if [[ ! -e ${EPREFIX}${BINPATH}/ld ]] && [[ ${current_profile} == ${CTARGET}-${PV} ]] ; then + local choice=$(binutils-config -l | grep ${CTARGET} | awk '{print $2}') + choice=${choice//$'\n'/ } + choice=${choice/* } + if [[ -z ${choice} ]] ; then + binutils-config -u ${CTARGET} || eerror binutils-config returned an error + else + binutils-config ${choice} || eerror binutils-config returned an error + fi + elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${PV} ]] ; then + binutils-config ${CTARGET}-${PV} || eerror binutils-config returned an error + fi +} + +# Note [slotting support] +# ----------------------- +# Gentoo's layout for binutils files is non-standard as Gentoo +# supports slotted installation for binutils. Many tools +# still expect binutils to reside in known locations. +# binutils-config package restores symlinks into known locations, +# like: +# /usr/bin/${CTARGET}-<tool> +# /usr/bin/${CHOST}/${CTARGET}/lib/ldscrips +# /usr/include/ +# +# Note [tooldir hack for ldscripts] +# --------------------------------- +# Build system does not allow ./configure to tweak every location +# we need for slotting binutils hence all the shuffling in +# src_install(). This note is about SCRIPTDIR define handling. +# +# SCRIPTDIR defines 'ldscripts/' directory location. SCRIPTDIR value +# is set at build-time in ld/Makefile.am as: 'scriptdir = $(tooldir)/lib' +# and hardcoded as -DSCRIPTDIR='"$(scriptdir)"' at compile time. +# Thus we can't just move files around after compilation finished. +# +# Our goal is the following: +# - at build-time set scriptdir to point to symlinked location: +# ${TOOLPATH}: /usr/${CHOST} (or /usr/${CHOST}/${CTARGET} for cross-case) +# - at install-time set scriptdir to point to slotted location: +# ${LIBPATH}: /usr/$(get_libdir)/binutils/${CTARGET}/${PV} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-9999.ebuild index e6d0f2c851e..98e6d46e756 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -9,7 +9,7 @@ DESCRIPTION="Tools necessary to build programs" HOMEPAGE="https://sourceware.org/binutils/" LICENSE="GPL-3+" -IUSE="cet debuginfod doc gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla xxhash zstd" +IUSE="cet +debuginfod doc gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla xxhash zstd" # Variables that can be set here (ignored for live ebuilds) # PATCH_VER - the patchset version diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/files/binutils-2.43-linker-search-path.patch b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/files/binutils-2.43-linker-search-path.patch deleted file mode 100644 index 1dcb5e68702..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/files/binutils-2.43-linker-search-path.patch +++ /dev/null @@ -1,43 +0,0 @@ -https://bugs.gentoo.org/892549 -https://github.com/gentoo/binutils-gdb/pull/5 - -From 470487917306e169fc3ca983c2edf2370b211861 Mon Sep 17 00:00:00 2001 -From: James Le Cuirot <chewi@gentoo.org> -Date: Sat, 11 Feb 2023 15:15:20 +0000 -Subject: [PATCH] ldelf.c: Always consider -L arguments when handling DT_NEEDED - -This is for consistency with other linkers, including gold. Without -this, we typically rely on ld.so.conf to find libraries such as -libstdc++.so.6, while other linkers do not use this file at all. ---- - ld/ldelf.c | 10 +++------- - 1 file changed, 3 insertions(+), 7 deletions(-) - -diff --git a/ld/ldelf.c b/ld/ldelf.c -index 09691609fc0..11edff8c8ec 100644 ---- a/ld/ldelf.c -+++ b/ld/ldelf.c -@@ -1093,8 +1093,8 @@ ldelf_handle_dt_needed (struct elf_link_hash_table *htab, - linker will search. That means that we want to use - rpath_link, rpath, then the environment variable - LD_LIBRARY_PATH (native only), then the DT_RPATH/DT_RUNPATH -- entries (native only), then the linker script LIB_SEARCH_DIRS. -- We do not search using the -L arguments. -+ entries (native only), then the linker script LIB_SEARCH_DIRS, -+ then the -L arguments. - - We search twice. The first time, we skip objects which may - introduce version mismatches. The second time, we force -@@ -1168,11 +1168,7 @@ ldelf_handle_dt_needed (struct elf_link_hash_table *htab, - len = strlen (l->name); - for (search = search_head; search != NULL; search = search->next) - { -- char *filename; -- -- if (search->source != search_dir_linker_script) -- continue; -- filename = (char *) xmalloc (strlen (search->name) + len + 2); -+ char *filename = (char *) xmalloc (strlen (search->name) + len + 2); - sprintf (filename, "%s/%s", search->name, l->name); - nn.name = filename; - if (ldelf_try_needed (&nn, force, is_linux)) From 24161ad062db470ce249e052788bd667d6edeb2c Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:36 +0000 Subject: [PATCH 222/291] sys-devel/gcc: Sync with Gentoo It's from Gentoo commit eb5e6d60aefe49eb28b1613f963d0912b89ea117. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-devel/gcc/Manifest | 58 +++++++------- ...n-124034-remove-early-break-special-.patch | 79 +++++++++++++++++++ ...101.ebuild => gcc-13.4.1_p20260122.ebuild} | 0 ...204.ebuild => gcc-13.4.1_p20260129.ebuild} | 2 +- ...211.ebuild => gcc-13.4.1_p20260205.ebuild} | 2 +- .../sys-devel/gcc/gcc-13.4.1_p20260212.ebuild | 69 ++++++++++++++++ ...218.ebuild => gcc-13.4.1_p20260219.ebuild} | 2 +- ...225.ebuild => gcc-13.4.1_p20260226.ebuild} | 2 +- ...102.ebuild => gcc-14.3.1_p20260123.ebuild} | 0 ...205.ebuild => gcc-14.3.1_p20260130.ebuild} | 2 +- ...212.ebuild => gcc-14.3.1_p20260206.ebuild} | 2 +- .../sys-devel/gcc/gcc-14.3.1_p20260213.ebuild | 57 +++++++++++++ ...219.ebuild => gcc-14.3.1_p20260220.ebuild} | 2 +- ...226.ebuild => gcc-14.3.1_p20260227.ebuild} | 2 +- .../sys-devel/gcc/gcc-15.2.1_p20251129.ebuild | 56 ------------- ...103.ebuild => gcc-15.2.1_p20260124.ebuild} | 0 ...227.ebuild => gcc-15.2.1_p20260131.ebuild} | 2 +- ...213.ebuild => gcc-15.2.1_p20260207.ebuild} | 2 +- ...220.ebuild => gcc-15.2.1_p20260214.ebuild} | 4 +- ...206.ebuild => gcc-15.2.1_p20260221.ebuild} | 6 +- .../sys-devel/gcc/gcc-15.2.1_p20260228.ebuild | 56 +++++++++++++ .../sys-devel/gcc/gcc-16.0.0_p20251123.ebuild | 56 ------------- .../sys-devel/gcc/gcc-16.0.0_p20251221.ebuild | 56 ------------- .../sys-devel/gcc/gcc-16.0.0_p20251228.ebuild | 56 ------------- ...104.ebuild => gcc-16.0.1_p20260125.ebuild} | 2 +- ...130.ebuild => gcc-16.0.1_p20260201.ebuild} | 4 +- .../gcc/gcc-16.0.1_p20260208-r1.ebuild | 57 +++++++++++++ ...207.ebuild => gcc-16.0.1_p20260215.ebuild} | 4 +- ...214.ebuild => gcc-16.0.1_p20260222.ebuild} | 4 +- .../sys-devel/gcc/gcc-16.0.1_p20260301.ebuild | 56 +++++++++++++ 30 files changed, 425 insertions(+), 275 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/gcc/files/0001-tree-optimization-124034-remove-early-break-special-.patch rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-13.4.1_p20260101.ebuild => gcc-13.4.1_p20260122.ebuild} (100%) rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-13.4.1_p20251204.ebuild => gcc-13.4.1_p20260129.ebuild} (97%) rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-13.4.1_p20251211.ebuild => gcc-13.4.1_p20260205.ebuild} (97%) create mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260212.ebuild rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-13.4.1_p20251218.ebuild => gcc-13.4.1_p20260219.ebuild} (97%) rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-13.4.1_p20251225.ebuild => gcc-13.4.1_p20260226.ebuild} (97%) rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-14.3.1_p20260102.ebuild => gcc-14.3.1_p20260123.ebuild} (100%) rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-14.3.1_p20251205.ebuild => gcc-14.3.1_p20260130.ebuild} (97%) rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-14.3.1_p20251212.ebuild => gcc-14.3.1_p20260206.ebuild} (97%) create mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260213.ebuild rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-14.3.1_p20251219.ebuild => gcc-14.3.1_p20260220.ebuild} (97%) rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-14.3.1_p20251226.ebuild => gcc-14.3.1_p20260227.ebuild} (97%) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20251129.ebuild rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-15.2.1_p20260103.ebuild => gcc-15.2.1_p20260124.ebuild} (100%) rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-15.2.1_p20251227.ebuild => gcc-15.2.1_p20260131.ebuild} (97%) rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-15.2.1_p20251213.ebuild => gcc-15.2.1_p20260207.ebuild} (97%) rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-15.2.1_p20251220.ebuild => gcc-15.2.1_p20260214.ebuild} (91%) rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-15.2.1_p20251206.ebuild => gcc-15.2.1_p20260221.ebuild} (90%) create mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260228.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251123.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251221.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251228.ebuild rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-16.0.0_p20260104.ebuild => gcc-16.0.1_p20260125.ebuild} (99%) rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-16.0.0_p20251130.ebuild => gcc-16.0.1_p20260201.ebuild} (96%) create mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260208-r1.ebuild rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-16.0.0_p20251207.ebuild => gcc-16.0.1_p20260215.ebuild} (96%) rename sdk_container/src/third_party/portage-stable/sys-devel/gcc/{gcc-16.0.0_p20251214.ebuild => gcc-16.0.1_p20260222.ebuild} (96%) create mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260301.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/Manifest b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/Manifest index eb3c3db841f..73d0fbb972b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/Manifest @@ -9,11 +9,12 @@ DIST gcc-12.4.0-patches-4.tar.xz 15648 BLAKE2B eec4a40233d396ef4d22901cd06b75a78 DIST gcc-12.5.0.tar.xz 85897368 BLAKE2B df2f87b407c5572d3590e9868a7597b98bc913669054e517fb2eb9ed82f635df6735a5cab0eab30ebec694e39e552806d837233f0ffe02aa90f5d8b61352c34f SHA512 c76020e4c844b53485502cb8a4e295221c9d37487d66c9f4559031fb14c85de20602e6387310005386cb0ef25e55067d2cfef141423bb445f3b77e7456a23533 DIST gcc-13-20250807.tar.xz 84575936 BLAKE2B cac8022c6c6d31fa1d741589b9a7c7fd60eb5fb9b44921b1be8beec1bed5846f769ecbdbd7950ed4de23de69c553b22944038edd92f0e76dc24154720a21f015 SHA512 2d5b59e2e18c02d49d8adadb3c62a45700016828a3dd170c276bfccebb6d15e05cf494fa523447a38e04e6b963c35467c8fb6a699da7cd39bb319f639cd9bf56 DIST gcc-13-20251016.tar.xz 84569872 BLAKE2B 39d1031bc18809098365cda39402ab6d5fa9b513cb2429e1a5f636f6aaaa1e51c515dda5d2842756fdfa03076f0b00089e929dd21bf1fb9a4ba03a4d31d1488f SHA512 bd8e121441bf448b8faf4f0adea93ee218a67a54646bce18638eec5c51974bda4b3226907e5ed7877f973a5a998cbd083dc27c12a64dfa07aec693da1cb2af55 -DIST gcc-13-20251204.tar.xz 84571504 BLAKE2B 0f5b6b51aeb929f9104e419c0a28ec245278fd1f027242913b1adeccf678f63afcfb2c371993acab3cc3ae702acf70a0c32e58b8696eecae36924ad0eae8e315 SHA512 1d1d320fe724a2da3535bcb20630acd5e0cc950eda930a8c356cf9b2b757cf24f88da9ca828276c49d414ccb2d972915a53d92c18abb98f7a9748c7b24d4c6de -DIST gcc-13-20251211.tar.xz 84571276 BLAKE2B 97ed8f9ae3fada4fcb26f63af3b83548039b6313b2b30a33bde11948cf3a80cb25a38ad2638068d4e1f9829806b1294bd3a78e285a6ad3aff59c684462bfb735 SHA512 f576866dbc2dd42d8cea1cf56c6409055534a95e600987601af8775f253d1c0be1e962b31a7c107536bf68609354558b1aba05657d8b9f2599a9e3836ef36bf3 -DIST gcc-13-20251218.tar.xz 84567200 BLAKE2B c786f8fec382fff3fef53dc401746f057abf02d438b16b40d1658e0f7b361531bc9c12ed08b48185135313f4c6edbedefb2de782afb960bf95d3a2b6e8fcdd12 SHA512 2b94acb4e2bc9d03ce67ca40b5ad10455810ad74d271504d075698798c86a7b7db85208d32c4462ff9cb084536536d592aad9cf60271a83ce015acb273d50b47 -DIST gcc-13-20251225.tar.xz 84565564 BLAKE2B 7200bcecd066fdec71184533f8caa1a72916cda41ccece8569991314b3a27e6ada4efac78eb7c9f33d7a7e3cff8dd8a2922395a285b1028c2a866c2f7318d29c SHA512 1666e17c198557c2a66e4b307739f20d2fdcb413b6de3e19a173030b9bb24500036bea6785c1ab22c009d4f240f7eabecc5d275b49c12367d48defbbad22da60 -DIST gcc-13-20260101.tar.xz 84569852 BLAKE2B 9d14ee9a6b410103a5c2317c3244c9afba95ec65079f8c0374e01a92ef36703f2507c7a0309838d423cd0a889ce898f0ecdb8328b648bac07807d0d6aa9d743f SHA512 e44dda35ed65287a26806b70bce75d274318d66aa3ee0ed425b63497d4c35864968cd4e9cd8442da438797a173384490b202b0d3d9687a1f7667e105a7a6d64a +DIST gcc-13-20260122.tar.xz 84569448 BLAKE2B 3c9396da0126b92a7679237428e29e799cf26f6304ef06f07436b33ecdddb61f061cd116ed26adc8c30a9bb9b6cb8a577e01344b1f3019e81f7f84ac088f2805 SHA512 03737a75a28f692d4f44c09800ee6ef697fae147f3938faf9b0d8ab86a07b260cb8e896bb92c4e464f4a81cbfc7c93ad36eae1a226ad49d86c0e7caf5d9f12f8 +DIST gcc-13-20260129.tar.xz 84576100 BLAKE2B ff9b6050b657ea160137d4cdf0551f112c9cd26b7f8675d9914f0c935a732b4f2034f4dbc1021f3528f0bc9f0309198814a2bd187677c52dec3604828cd0503a SHA512 07d17b035a9bd8ceb0dfc0c9ac00cd29f18ba51db78e62802da6bdfa504b096f9141d716adbd3551476b739bf61d3afd059ae737c6eced44cd1f636150b253a5 +DIST gcc-13-20260205.tar.xz 84578824 BLAKE2B 889ff4c361b30c7429c1067445a3dd86b60ba2dee87c038a995efa10bd78984ed2f591b912a01f46338f3b0164d99f15cb5ab71dccff6019a8710ccbca791532 SHA512 88da57ec1d2b81438df228d24445026aadb8b9783d88093e769ae567ebecda2303aeddcdbac42ecfd373736bfce17c3c1c6aaba20ecc0b9b22d245a64677eb66 +DIST gcc-13-20260212.tar.xz 84576196 BLAKE2B c637df92a9948bd88654509a9e03813daca16aff27909e35e47a7b1cf3a7e9abe07064c6bf2ee8223829a8203b6f7bab365d4cbd620d0a563c5cd9e6a73ba4f8 SHA512 9fdd87433a7b49c6a969dea2b023dabadbdec614b0eac84c5b0c459fd49df1786fb7b595e4015632691400bd6db2c5109db593709a5c0b89ce0b20021b888487 +DIST gcc-13-20260219.tar.xz 84574608 BLAKE2B 72f5f1f292c5cd609ef05089dc9d524ce4a894a28aedbae38aa45369d8691efb2bb6aafc34870b5668634ccabbb68a029049767cae83678153f1cafedb422859 SHA512 037a489177de2fd42463d3993d857c33f3d2f7a78f9213070930f8226820b6546ba6b3a3c8fbfb47f2df4250154ac5f30e79f563b43ff850643bc4b9fc17d4c0 +DIST gcc-13-20260226.tar.xz 84576560 BLAKE2B 02ad5b8bb991f5fcc951eb5d33492dea80747f4193d83d24bc308af54fb5d68a58274160f00ef0abeb731e9b72b2e9cd11312442835766d036bb7c8b203b4953 SHA512 19aa010b674edcf9a54cc2e5669cce6fd08c70b2233f9431d5d7cc89f6638f7a95b7cb9944f7d36ecf2c3c3074c21ecfa78b1b4e79ae0ff3185febaf5b87f0cd DIST gcc-13.2.0-musl-patches-2.tar.xz 5292 BLAKE2B c057d6574d03c05854edaa9f3fd40e9149662b04f3ac7a7db3eb078d73a7b535726d1bf52e5b12736dedb2f9898ad731f2e48a6421fcfbf7b90f929dee072fcb SHA512 a691da0c87c443a5e9d23731f4005f27871c5b12bc9102873ffa24d374aa7b9fbd187c4f5635d23fa9ffb17e351e76173c2d3fdf40646e355c4cb314b538de69 DIST gcc-13.2.0-patches-3.tar.xz 30956 BLAKE2B 29ce043b46645640ca1e983397af3e158588ad87575f0bc59451ea4a7dd5e3bb5b190ed031de6a22cd790d423ba111e95d222187dd09985dceb12db9f0a2d907 SHA512 4ffecae7be320124ad0c4e71e39e142b7aa8db0e70b5f486f491d7a33ea31efc6464c6abeea77df02a8bd5cf81f08225d625c8af5c27f9afa32c0d7d989f7a3c DIST gcc-13.2.0.tar.xz 87858592 BLAKE2B 0034b29d3d6cc05821f0c4253ce077805943aff7b370729dd203bda57d89c107edd657eeddc2fb1e69ea15c7b0323b961f46516c7f4af89a3ccf7fea84701be2 SHA512 d99e4826a70db04504467e349e9fbaedaa5870766cda7c5cab50cdebedc4be755ebca5b789e1232a34a20be1a0b60097de9280efe47bdb71c73251e30b0862a2 @@ -22,42 +23,41 @@ DIST gcc-13.3.0-patches-8.tar.xz 57472 BLAKE2B 85976f7313340ce7a2cd9e7fa67e6d69c DIST gcc-13.3.0-patches-9.tar.xz 69080 BLAKE2B 4933533a19c54972b18f91749ea6ac2f9f9963de8ebea1f16bfd7617fdea2e5f1df29b564c090c32ba6c53feee2f1f9107dfcf96e42050fc701f30bfa8a4c606 SHA512 4a8125f5021c5dff526ecd9bebeff7cfa4aa7d6dace23eacbfda54ea5bdc468d17503a0d8072f8561a72c887f8ce294c648fa802210a0d7e04aee8a585968ea3 DIST gcc-14-20250801.tar.xz 88323948 BLAKE2B 1d47af7340faeed133a1d55bed8a788e4a7e0d12741d80a4345053fae1e95aa57ba4a24361c130080539242e5e5a7f2076827fdd3f2be383ad8d739443c3c885 SHA512 4034c9cfc0eb64239fc2149709d2d9d5055cd11ee5ea2284c61ed3d230f812bc1d8899ead339940b579610b65e1939eaf8ec05a2e26a50cb2c2c5a802a3437ff DIST gcc-14-20251017.tar.xz 88341316 BLAKE2B cbf51aa6784652c90c58766a5f1baadb3395632b708988d7bc6043e2b943536acc5446d0463cee6192aaf026c5f93de09d9366bb3fe6d8134ab098c08b660552 SHA512 7b3385a7143003386df9c4794f2e1b0c79c8a5bccbc29a0e6a897d7028f51ac1e5c71796c0f0caaa3555acf427c8e6e0eccbd68d51512c4d6b5f6eafdc14a02b -DIST gcc-14-20251205.tar.xz 88331532 BLAKE2B 7513e5c220a5aa5d861d9761109f8195f54c5c683580b677d37724d83c3aecead5e8609acf3f05adf3e8383954c444c11f07de99bac0803f0aac563a01596745 SHA512 b05c932de5c478cf9b64a4f2cbdf1de9b37a4845614ff8bc0e0563cd1e716f69ea0fe070ef9bf5ec1fccc0658705ec76cef536ac8dc4ca4c32cf81dad8588c37 -DIST gcc-14-20251212.tar.xz 88337696 BLAKE2B efb74b486504c6bb65f2278c81b6ab0b585eb9eeb05aebe21ac048dc2c05af0050604c0e806719f87b44c8c1d1ee462a5c0af19e094cbf04cd386cadf2d3ff88 SHA512 11c670846fbad5b927539aa719c9fc582de05f9531341fb0ee327e6299c988849de9858d324289dce44d85edc9a15e399f7f4ac315f35f80f0e224e9c317c2b4 -DIST gcc-14-20251219.tar.xz 88338512 BLAKE2B db0cf66256dd6b5a2c6dbdce07412f56779c401dbd0d697f992b86e6c5503a3506b2bee2c8c8687e2985b4169298b9bd3536a8526a9e021f73c1e30f4ca31989 SHA512 9827cac134c417ed8fe3bdcda020a1ed5352e810aeb832a369edf69ed83bb28515849d196f042dc1ee84ab2a67f21c28d5d0ee3e000c1eb5160729996b563e1c -DIST gcc-14-20251226.tar.xz 88344164 BLAKE2B bba307d588edcb8c791aa7ee29bbe61f2324ef5b27263d9b73c3291fa2e9402c33a29c56915e16dd782438bed0cc6c3e2d5700730125bb62afe530005a438cac SHA512 9ed4a8a5b108f9b61c7e22e7e013292b6d071570e4f7de92d332ffeee04f6b84a30c01bf2b3267e744174c1e0c212906cc69f551bd55906d8a8d63bfab688b89 -DIST gcc-14-20260102.tar.xz 88330580 BLAKE2B 424fe164cf3d105155963f3cefd506455e8a11fd8858b4b2f824fe959632d53440c97051e24d0706c6ce24ad07bb2a79f102d32cba7f9b4a5996d059df51da85 SHA512 aa8ceb4aeb6b22c97da8374e329f2fd1120086d57da1bdb1de686eba8635ba5cc433517669ebe4d63ce66d906ec557df8abd60310be973669185116a7db1a4eb +DIST gcc-14-20260123.tar.xz 88332388 BLAKE2B 9c0f3c630a8663e1411f67c8eddb3f0c2d73d3271b265c6bbbf20cb2221a1e49a9fbe01a606e1b07da1c234d68c259ee8b6b3c8505ff5368d91459f80bef3e60 SHA512 b7fc32d691785c7a82f1252c480d69bf5da0ccb5d0e974d18564e12f2e56a8ab36f3169af1513491ee9d70f088b488283db8a5773f754decec2f04cbdb53329c +DIST gcc-14-20260130.tar.xz 88361580 BLAKE2B 7d43b0ed00b0777f786658854ea667eda34c0f57f0050cab6801e1065761fd0455ceb78ebfdff0e0193638209d89bc11a094a92b14a32c89915cf2f3543ceb0b SHA512 9b2c9866bdc8c4b8b3978e9632fcc818f4c8514382e6c9a8d079b08760a2c4edcf38525d1c2dcf9f4cf412660ed8ebe0e228a76ab53977fc4b2d251849aecd16 +DIST gcc-14-20260206.tar.xz 88365888 BLAKE2B 8ab03dea6ef6f20bffb15198a327fc686a031b453447d1369c7e98f4b6ed9bbf8e68d31bf069b1856b2371036251672c5139b81715857caca03324c0c073e58b SHA512 a3907239e6e695f94ed84ac7f166ea7b9beb1c900b94e0ecd27bea391fd904c7487fad8004136d4296937b757816fa0f9089d3933c8748b67e98eb1a404bd975 +DIST gcc-14-20260213.tar.xz 88372424 BLAKE2B 7831805a232eb732cba36853849a2b3e7dfc8911a4944ac25e3baea08ed6282b7850a62acd6d13877e23b44f8744e684753c1cb08d2957434a1a602843ad4db2 SHA512 0957d2b63269f43abc59538021b59bfa9971188eb194d2de2ebd50726ee19aa0f2903652d0ed20e240d5df77c308f19365f7c55351b8c35c3f91a3da5d0d73d7 +DIST gcc-14-20260220.tar.xz 88374408 BLAKE2B e06578c3e17aded587bc857b67229a49b7dc9070b8989f440f1861fbf88b466e603e5398b467f1f88a2fd990d7cb6cd3533fac47c95d53b7a1baa7bbdf712048 SHA512 a9080da674d31bb7b29685c49c4b0546ce8fe1a2bec607f50a3a94ead1ad4ac2015f0ae5510ce5ceb0c2ad089745ca0f55905bc36b087fe09f87c9471021e418 +DIST gcc-14-20260227.tar.xz 88377520 BLAKE2B 1b542572649e0200934ddb2ee096f1ef4b06e12a86b12a98991f3e4cc8738659a2b02f4b6d77afd70064d59f731a4e6400c51e764598aa0facdd028ee1e9be0a SHA512 fac95c7f487463af7508f5ed6504a0d72f2a507d679dd4f3f10c827f2d0095e9743feabf410376a1995e0387d1e51939f112253ea0ff02c114731dd2bcd5d372 DIST gcc-14.3.0-musl-patches-2.tar.xz 6888 BLAKE2B e2f9ce6d445b7ced8f78c18585887422ffdd32356368a456a7cfde5a1854515b32546c1d25a2ab8637ee62d04a2c0bda1afc8d53c44e5c80c12499918c3c18fc SHA512 0b59d228213024cd93d9ffbd4ae5947021db2dc71bd320cc0e4ccf523d39f72e61be25c1a49a343729fe7b9abf7181503de3e650b255d80ab6d969d0de317d19 DIST gcc-14.3.0-patches-4.tar.xz 28116 BLAKE2B 5804f10b40befad1cb9eab4e536377c08aed8c54d3de27f188ae2d52fa7c082a529ad9cb64f9574087afe74e64138c9fc918d653bd2c1d062b8b68d5c7ab640d SHA512 75ee4895efea0131107cf664a0f9fd10f38da0d0f93704e1920778e07f1a860d872a97e1e528f8e1ab754cca25948bb09c444b80cc04f5ae3a516336290bb99c DIST gcc-14.3.0-patches-5.tar.xz 53952 BLAKE2B 3e5f63d760caf3c18c0f683c00170bb71998b4f0e15552103359d5c0954144676f6ca60e3e367a94cbdff0ab9bec21f3e04e30c38aae8f7e79911da30e6aeb76 SHA512 1702b7f6ee791468d02fcb9d418d2dd48e10cd6dc6eab0cf455aaf848bb78d953b00690fd78cab1ddd5af02acc237072c99ee43f0e512ae3e2e5f922f40f0dfe DIST gcc-15-20251108.tar.xz 92349104 BLAKE2B 40c890e2d61dd02f20a190c8d82175a1df271bd77a1d7cf1bae296ca47941cd43f672ada0fed0c8b27a65d469aedefd0fccd9282418f28feebff29f0b940ef1a SHA512 cc12ff495ba08d37e719278aac7bd526f53609d6cce1f4b45183ff336b78e26eb97967fe5405f791528d0913378084ad6c596e246a5a85b550b84051e5b3974b DIST gcc-15-20251115.tar.xz 92358784 BLAKE2B 8dcf640bd61c0e2379df666bdf9afb6a43492ac5aeb1023dc322b136dff7831166931a6953ac5b883fed45efa855740013e385cd478d0449f61eb8ff7ad296b0 SHA512 fc609f058a6683d6e0496d48ff4240e4f871b378ce1765844c56c5ac96cac04c556f3418b1e1b03a615a0b968c1e92ecfc3e4310e93a654327a718d00672fd14 DIST gcc-15-20251122.tar.xz 92364288 BLAKE2B 6c7795992430e3a650f43033b135613c5cd56e4b6e4ff5b121f665dba47c038b4ccc339c50b3e3367e2f6436f5a7cf761bca1cd13dc3d42a50b1f1105b8b1c3c SHA512 0534c9ea6c2684e01d93b32301ed11df4a716637e0d68fae4659730dbfc5e23f3e28c41a6b86b25c1bf8b97816b076abcd24f5c2841516031dbc4473bdf28797 -DIST gcc-15-20251129.tar.xz 92340416 BLAKE2B afaa162576a96d304cf82dccbcd695f76b797e1da1506033b810d35d717d1e8f6a73a4939752a3495c81bda4826512e4db4f67534a6ce84a84fea8d3120c5cbe SHA512 c2cb111f6becd6f38ace9527029ef0cdc23c4ec14e1076ab514261b88efa42a354f8797c219f4db2c74d77340df4910a4bd1b30abfe38ea3c86bb9b9680db4cf -DIST gcc-15-20251206.tar.xz 92344176 BLAKE2B 4aacac593eeb4a2dbefe8ac695d7df2ef732cac3a6e7f58b700c61402b9bbcbf36d550a13d118aad57b9917bb89cc5c877f256cc6c6b6a44d8b032ef0a93ea39 SHA512 04870762b7be62a14324b1a81f4d50eedcae1a306992bd14fb0f8f07f670bcbdcc26ed1a9cadf4bcff06527f6cbb99a23335ee0315cbc1d447435afb5cd8cc07 -DIST gcc-15-20251213.tar.xz 92346620 BLAKE2B b93dfb6ec74be9dc6f803a252de6f8b9cd8b4a056ec24e93ee0418ae4cf625359882136a3ecb223efcf3ff79cc937527c3d08fcc13ba75879835753002460cad SHA512 409b62c0a8cf2a7fb6282c68b54167d75d8d0800ec17fc87b17ad945e392229b7e12879857aef3b319b542b3dfb76a87c86290be2c2e2eba4bd04e4f7b704e4c -DIST gcc-15-20251220.tar.xz 92339328 BLAKE2B d0e252554f67cb5e35b3ad2f8db17c35af6bd0245a4ce2429352c1df02b8a2c73feed3f462d6b682b0cfa563dafe29f6a68f31ef1e247539a28c25b85490b866 SHA512 dde5c173b952c834ebfe40a122e31480632d0c74253ad3b821f69f54c904dc323499e58ea98ca25b0b907c508dd4fa66d0dbb732c363662e7c7ec2f937fa20ef -DIST gcc-15-20251227.tar.xz 92352736 BLAKE2B 674d464376a04ebc1f7908cc8b5226e21aadf0c05df41bba979279c8a79ab7989d4e05553c00258bb2e36a03ca9f842030e515b2f7d7c0c5a22883bce1daf16d SHA512 f908bb8e9eea41ce6da20599c556ccb4571f6e731adbb8e370cd1740199a7e1e45a1bccbc5436539a640764d80920091bd43db56ea45f46e9e8b3fa600a05cc0 -DIST gcc-15-20260103.tar.xz 92342096 BLAKE2B 5857348f2f2dac961828b2041b3d7f2c202a0829b1964715b1df760eab4090249dbc3e1c6314aa1a48afb8702fd36cf001fb3db31caa13da703f58e07313c920 SHA512 ff8b7dfb1189ce809ed5281cf0aa3483483403d180a4e4e2c35be76d717a91afd9b9f0ab891dc60364169bee1a7a50b050d5ab2717c384cbd3c73666536041ce +DIST gcc-15-20260124.tar.xz 92362060 BLAKE2B c25f87e6b2a09be9754619591de8474977b9f20eaf67b437ff898f15a767abd0874ad744cb7302b4632bc0d6fb993e4500e79398e0ccb2380d0ba704b27d5fb9 SHA512 ffa0bb1e67e774189ec958c0833413bc6b3f25bc344b893557d4ba612884aa1640e9c4f8cbdae92dc4a279cbfc40866d9fe059be46e926c8aa06cc1f28733391 +DIST gcc-15-20260131.tar.xz 92355456 BLAKE2B 1bbe4432d9a42fc19054ea86ca4229328af84160f63ce177b58c8f408ab900208e901dce49bcb43f84db527a98fa5adfe58493c8f1f364052201d9f751c17dd3 SHA512 8442303102be9dec71659c47b1ce0f214483caaf83109a9795ff3b1a375062d41e04cebe5615104f1cb10dc29cce556a6ba9e1707876e137aee5b6808d8c8fc6 +DIST gcc-15-20260207.tar.xz 92363192 BLAKE2B 8914359de9f39731cde87efe28b59256f09665e822cf69308a704759eba520cad61313a72637995358549a2d4f08d60a6fe9d5ce93b686a95e9d1cfe28b635df SHA512 0092448f65a1510606a3ddbd4a6ca123f2ea269e7ca05b33fe562968d6289dac9523930937820e94b05f61964ff19fac8e11c45659175d686ebc5e62d6952c9e +DIST gcc-15-20260214.tar.xz 92376288 BLAKE2B 36aad1794fa23574501dc27b4ce88cce9aed13f6ee93f9797bd058388d68da1b3f93f5fa4b5dd2f02d99556e15ed1f92e9c6cfa45c9ecba2f9c3130c5ac4afff SHA512 e610aa9142e58ab59b32f7a83f62cf629ce08b41e1fe41ef56cbad72240c0d10dc1e784bb6e34962a03e271d0d8ca6ae95ca67886fa9f229668ad7e514dbc357 +DIST gcc-15-20260221.tar.xz 92364832 BLAKE2B 899d0963c0b688fd8249cf9201b003e08b24f67ec397b0d29df24a972313560954c146d2eacb01ed894df1932091c8e1d77508d16c692dca71949263e6c10a11 SHA512 01485ac36fca7df2f132db7468158532ff8083d9227c1d57582b65047932e8202ab3ac1caf2c2bdedad58bcd31a6568217f51d3492e461ee7415b8e6506aa77d +DIST gcc-15-20260228.tar.xz 92382472 BLAKE2B e1f0aa167133e634248e940b8bd4e0b05d032b9fed03e6540d1497e3fa33f74a67e70fa22586a781e9305b99fe42bab60af694caba30de7277ef869a49640f0f SHA512 051918fd499be7ac77e3281e655f444ddb3e2e825ae3d895d56db3440b9ab67d374899fd52699adbd036458c5701b9dfa36806fa019b6bbf762de818432343b2 DIST gcc-15.2.0-musl-patches-1.tar.xz 7168 BLAKE2B 6b7cfb123c3a691693240db815e6852a1e6c3820baa499368c463e0a0c1490c701053cfea10bf1d33f89dd2ba7bbddf63c4e6e0976590e3aaf1fee78b9282079 SHA512 ab80ffd69b9ead1fe06a9433faaa97ae53947d214999e77ea363fa6435de080d031a1aa6869e1dc088e800317952f2dc249a9e872113db56fb76f0a432240871 DIST gcc-15.2.0-patches-2.tar.xz 18708 BLAKE2B 09c54bd1b8436e12a3da1c3ee41017cd3e960268a5d4637252152b44a4cc93934d4dc93eff842d7dcee4d1688b7f2d98be48114ef5c864793242177f7549c933 SHA512 f11cfafe00f7d18e05a316bd1dc522477cc4118fdd65019cf85bca674ff0180951506fef84ce0b5b13190ccfe44c777a64afdc602a4580595005b43b79ae7411 DIST gcc-15.2.0-patches-3.tar.xz 17436 BLAKE2B ae72e3c5feb7b96c10eb0706efe95047f0516a66ec19488ad7281dd4c62d4c6f1d1d594c6a865c808293b30b4f57ee8bc018b90fcf5944ccb935bc391752aa74 SHA512 4d23fd0dacc33c069528ef0bd6ece3029a4b221e55c82347c2df8a6fa8b890c6e7eeaf15284204a4a29841678b033af2272481bde6fca8ebcc08f8c233f4e7e3 DIST gcc-15.2.0-patches-4.tar.xz 19912 BLAKE2B 255d6435fe5b205d23d04eb885c55b421b1e6ffc30623fad5fe8a4cee5582f210e9851165b0976629d7e49288366a14635acdf1ad70f6d2fe288bdf88a9416a5 SHA512 f36c0a1e8abbb25cebfd93965950c072f33d8dbbc0be285e8e374a3602fe7e7cae3dfe44f24856d2231bcbfb40fe0c1de3b629e2f573d97f82212a7acf52ccc8 DIST gcc-15.2.0-patches-5.tar.xz 17460 BLAKE2B 66a813306de7b83da88fd293536f7795fd85c1d9dc5e442c64ab7f9098a7bc3aa4eb1eb27ef16f2fe6f14e3da12ded92a7b3e8aa9cdb449753e31d3546f0907c SHA512 68748f853a9ea7ee50c957c3f31c61ac52235b952f8ecb4dee35ac6f0563c088a733041468961d83ec0a27d5ad3a88c85d38513cbd6a365f38abfa48976387bc -DIST gcc-16-20251123.tar.xz 97158532 BLAKE2B bd24289aecc74de001c288c8e07ea9746ff4e26a19978b34e32f62481e9695eb2dc427b452280860fcd8757f1941133c449f4b8e08701dc923f1547ceadb427c SHA512 161e81d43337d8781ff14279c00ba2fcd0aba953de3c436a8f09b7864111a31288b3b3c1e55fb14fd1426695a6f33c22d39df06d9c2b7a1e6a88947e8e2f55fe -DIST gcc-16-20251130.tar.xz 97478692 BLAKE2B 5e03e213aec7c74e34648d2210b77bb20cb6ae04ee73ef840fe6cf113b05eee5c0d8b1f7bdcd4cac2efe10941e23a7908d3be487b92f8749c45428e99687f4b0 SHA512 ba191dfef948940e29c0981c7eea81207bdbd84f72d96391d286ad613cc7832a1273574a0657df04b317e0053c83bd827584e30ae14c591ab8c4c820e35aa320 -DIST gcc-16-20251207.tar.xz 97572092 BLAKE2B 373c76b915ade3be8b78a16d5d77b549ea52ca60265df5db563792582fe3c68c540a45b70af5b5bfe3e37f34f5b291524c3974275b33b8f8ade3008f93063a6f SHA512 88201f8e680e877417d61d76fefa8f4228809201f1981b2e78eb185933e0d0ea8a74e2b2719783c9f49df1584c8bfac07e469b7c72473d296719b2dcada34ec2 -DIST gcc-16-20251214.tar.xz 97640212 BLAKE2B dbada367a57b73f089f07952ab813580024b81806ceec2895656d592afd7fed258d7ef33a16baab5731138becf466a19d3b6ab5ff0b28d99b912abbb61ccf79b SHA512 4d2d5a97f3193d8092afec4937ca2c03de706eb60c2a7e7eaef5260eba2f3f524787741c1b1a94ca919e571b4144d4e88affff5864539a251bad3f3f214d86a7 -DIST gcc-16-20251221.tar.xz 97719712 BLAKE2B 823a0950b089501e1bd9d89910320a685790aa5623498d860dbc367c18eade21dbe887671a911d976e6a3860025eedccc870e5ba370f3967456b0a9cba535b2b SHA512 5f3f88bddfc8cef6d368fcbd2b2a858c76b38ebd20ad15e0040925d56c0f8118232a3cc44744818f27f7ffbb1536c2cdd47bed7ba1639c5776508740a2bd3241 -DIST gcc-16-20251228.tar.xz 97763020 BLAKE2B ef6d042247b40dd77e28c3b96d8a3df21e92af32eb00327e54c4410099de7a6d7318970f9b8bdbea7aa505c4b82b284bf30e8534015d302cecd393bd300055e8 SHA512 f8107296db1bdc2d59655cca0641236b7cc9eab710a4e6801b6d66777f81c035219b9ee2504c91a7724cf5948dfb3a347778c0b04d8f842c9b4d0a129c940dab -DIST gcc-16-20260104.tar.xz 97818844 BLAKE2B d6f6ea976e5a43c1ccf71a75142b5f8dbe753f6e57ce0ff0bc65934e07a994022fb4dc2ebe8880b33e06ee3f1524e5213905f2d3b2785d16ff28bb192f0713d7 SHA512 8b4c666cef4be7315f16bafdca381f69d03fe78b17bb2bbaf99027a67c208f2e0861839a0c776f6b98c1f6f69e41e78fb8388ec50ca1e7bf77fd959f37abf6f0 +DIST gcc-16-20260125.tar.xz 98189184 BLAKE2B a1517fccfc6aeb1347fedc8e06f6736782e15b1133ff1f8282151287c0034535878f38275947743063c1b10f6651feff4a27d559ea10c3776c34b62ff0697736 SHA512 70bd49813f73736df5192c7e042163149a18baa04eccb5434486a1ec6bc0e8a965ad40fcbff40067155ad0f26d0764fcaf0a3bf102748cb6db03cad16c79ff8a +DIST gcc-16-20260201.tar.xz 98286008 BLAKE2B b6c444dc09e5e0dd7514dc43d7a11730a4f529553b7d411fbdf8ff2617a5259dd284d6cb60af938c8a71981ee0585220f75ef3536ba2a30bc6b81237ad582a33 SHA512 569de9c2fb6836770b4fe4ca3bfcac694fcee0463bb0d2e29433796598f9980134e45fa7c7f0a900b03094a9a9b01c119aa88c55eafdacfcdd661c8f475acb94 +DIST gcc-16-20260208.tar.xz 98344104 BLAKE2B 55968c9e137bab67ffed776a1ce9981ffc096c2b4e9337535ba8e0c3ad696120b0dc49f44daaae56365e43a252ea759d1ed79cb9eafab4860f7cb0ceb2aedb4e SHA512 9aebcaa4d5068d3d1c063756cc405b324350a151073f8e3fcb483be1c06eec95f8f971f5dcab9b1b77918f468c0991f6fc3d6767b960b469ab5a2fcc85c519c5 +DIST gcc-16-20260215.tar.xz 98388052 BLAKE2B 924334293d0628a7457cda91aa46f5a3fa9c0d49915c497391efd1758a079ee9e1e210efe1514d526181a74d99c78f5bb9f074350136c03aa921fe41f17d6d59 SHA512 c2e7395d07f06f27a8e588b2f96dcb6630b1ac47aab0ab1ab6ee7055ec34661b4f0e17c7184e9fc0273765475829d652108f7f7c53c08f1b5f780e7df23809d0 +DIST gcc-16-20260222.tar.xz 98490280 BLAKE2B a78546fe74ff97593cfc0e4c35d8bd67faa21fe2853918578f48b3e53170a295c6a98db0e5c1c252fe38b786bc35af5e7aa2db2f5ce39145025a31f298ff5834 SHA512 3dc5bbcb2ecbc0fa0262bbfeb8af75e5c90c3935bca825055d984e8cda87b31b03b16949eb2a3a88b3f89996302d9fd2b624fab6cdeea5b3e4a1f40c280a68ee +DIST gcc-16-20260301.tar.xz 98581536 BLAKE2B ab779e3c30965b182c13a7f25388f19b757cb071420d6ec17e1dbdc0364645f48d225a60c3f14f02e1d19b769b2741a46a4ffadbcf207b28a61a1e8238b5263f SHA512 3a9bb3d41793e780adf704690ae4d60345b504f6b19ee4c545b68f8df0ab1afce07046a7f90ac11710de87762d710bbf6d652f53bb3bbd4eef0db20db25c5acc DIST gcc-16.0.0-musl-patches-1.tar.xz 3040 BLAKE2B 18b16357699780eb470cf44a10710281955140103198e0bd55b75e1efe3dbec233689edb11e1b9a62f782f3d97293af4906c18c2c41613b422eda085ee819467 SHA512 5ba580c7c7bb9e62935a5162d44d357cc31185a113acff7498ed7b1ac43fd0a35de7c3de0c87f02fe0be46b5e55b49bb35d1f5cd470058d21a9ea4096a37e13d -DIST gcc-16.0.0-patches-24.tar.xz 20584 BLAKE2B e94a74b867317f5f5a126231783b5c15be729ec3f20863d46ed97f2eace67718d3a3a7f1cf6d040453057e764af4e4a2aeaeae7f6a09a5d966dd9df22716db4b SHA512 750fbade44cafddd7d54a942413193732649486fc83055a90049b461cbae96f6924fa38e1489c2dbf49d082f59fc6932658a563ee5a167fe1bba9f6bb7f23bed -DIST gcc-16.0.0-patches-25.tar.xz 17940 BLAKE2B 140856458acac807c2a78d97e0f10cc4d0012ad913a1d61411dd9f01ccc6e355fce219a1a0de1cae2cb4fc57b84fdc429ea65932964230b0f4852d6e61a62ee6 SHA512 2272aed3ab6d06c9f611adb01f5bbcd8c7eb4531aee41d456a3224a3b0b388f7bd9c541e4d5d8850e48450ae871074195d03ed83dc30292f2db5be9b4a7cdfb7 -DIST gcc-16.0.0-patches-26.tar.xz 23932 BLAKE2B 6528e4a9f2c02a00bab35c13fe53b071ff99001658de4e17806d66a87893cc528165682b841928f00dd075240a48a3603e0027a6fa8c567aefdf05f89bd2f13d SHA512 88bb06c83aa9bcff20d13e4e9de56cbf8a8de2acb73d918656eeff172a6302aa6371635ac5f8048083ccbb78965b273aa85e9372d4ae2c3df1023c604dcdbaeb -DIST gcc-16.0.0-patches-27.tar.xz 24392 BLAKE2B 08142bdcc50703d127a0ef2a87152ff27d259c588b1ea632357a7a2af634e7f0d54c190134574bd9395a6ca2b522e523fc2cc33e68733230fbfe7f94aae8edea SHA512 7a620bb61b96326fee118945e2f3d8d43878c7cc49007f83ca8e1f456bfea688223fca6af4a9a560d05b881f388d5a218cc3faad9dc4a60e6d113881c114346e -DIST gcc-16.0.0-patches-28.tar.xz 25820 BLAKE2B f7ff876b6b5081a72c0e004bbc2fa94c50daf6433f7a6962d3d5781b0faed3db105a6a24d8d84417347b1a43b828f6a9cbad0b4c3fc11b291797c68877692ea0 SHA512 66179b65f6f54bec508c8e0527cb6e86a2183c0a8acf5f74572beba4ce4e19dd2cf2bb342127a4cfafd465779257b9e6e79d17323b6814855a7f8814dcd935c9 -DIST gcc-16.0.0-patches-29.tar.xz 26752 BLAKE2B cb43d218f9429b38794a130fa787961485721136ae14898d105041db1ee17c4a3297b5e8a8ed9bb7b464dead352eca7cd11906ad3b4a829178eba0172e49d280 SHA512 d27cb569bed0bd8d3867b1cb1d90c4191a995fe8509d3317f036b9c403a5ed82f179f6c83d25cf56308709cb78e8045a53c7ca93a0402c13511ac70807aa5e8b +DIST gcc-16.0.0-patches-34.tar.xz 27964 BLAKE2B 69cb42657f2e52c8d54c98023261a2deb811d1dc7a63064eaf24936ea10ef6826350339f2273b9bb276959d10c8e819fcb671de9d96e16ce5ce6f1c8dd4071c5 SHA512 16ab66ed14083a5c00e28d2f8ae06319a6187049fbf0cea0929f0c80acb647801bc08dc7621472d9d639b763311dce586f81e6a8bb0c13a1fe796a9036a325e4 +DIST gcc-16.0.0-patches-35.tar.xz 25940 BLAKE2B e6a7f7e550a83a706914a46d9226690e0fc8c130492f1c0c6e000a3bcfbcc28cab07437d6e0cbbfc9f511e9130f49272096bf1335e5e9bdbe9aa5812ca99ba42 SHA512 70f8128e24a5fcff4cafcddf2847bd439cf445359cf37d908749133ae0f69d6da18bfc6a8de9bc968963eec86f3eec9684df2db5eb66fe25717a4ed8b2533f4e +DIST gcc-16.0.0-patches-36.tar.xz 26860 BLAKE2B 87387001fa68c9d1007cc257168a5c2c3fae9151852a9eac74b1a184f554f8b5686f433efc5a676248a5e650bde4a3c74789ea8103d531ca0b8766fbbec23c98 SHA512 5b1feb07491375e4d343af625f1e6cdfd5797d7a7527885fb744880271eb0906ada69e823508454a44ca11b7715c339f2c2349b953e996f9f5170e4113810d17 +DIST gcc-16.0.0-patches-37.tar.xz 25552 BLAKE2B 6fcd16c4d3e40ebb61bd371b1e234e3ccae4f869501b2affd3c705a385f0cfe6390ead5fb212e43999c62177d15149c1737ae32321d034eac8db7601458400bd SHA512 857ed03394b9222d46a4d908167a77b8ff5e0ebdce7eddaeb9eb73666c6f227d8074d4d1afb0bd5fdcdcd44ff9c99c27aba8ef27bbba0d91b7a6a459bb60739a +DIST gcc-16.0.0-patches-38.tar.xz 26208 BLAKE2B a2d717e2eca757bc8e2cf8eed7c03c7022847f7a8100555c098b447035cf802eba3aa5f3ea042a1464b8225368e8019ba30f486a1307b5050befb7bcb7f9678e SHA512 967bf16a72dd45bde5cc059a4a6a51453d1a039edfaf8634f8f631e33d0395f933a0fdc48406fd82dd824b221389d776ed0301d0d0a0db8dfe94dcde18feaa46 DIST gcc-8.5.0-patches-5.tar.xz 20188 BLAKE2B 45b29161105edc6344bb48f5bdf17e1aad6e8d9edb4d9434816425996c1b12c10f1303963776adad9db866d845f864d80d198a30e35ee6c204ca3659cf7a1401 SHA512 f22ab5d8e3116e2e896a5dcbbf5cef67dc5090182af364ef64fc22d2b28c029da5ed39f126f446721e388e7b6848239d01f5fc0346e49b96d5c04068b557f8f8 DIST gcc-8.5.0.tar.xz 63841008 BLAKE2B aa81a1a730fd7371360f6abed6ba78b5843fd18c58d5de5687acc320741b9e430e85df3535a1ef7a26051409be8d2f0945f503e5968480d919103123a99d4b12 SHA512 92f599680e6b7fbce88bcdda810f468777d541e5fddfbb287f7977d51093de2a5178bd0e6a08dfe37090ea10a0508a43ccd00220041abbbec33f1179bfc174d8 DIST gcc-9.5.0-patches-3.tar.xz 17888 BLAKE2B f2be05f32f4ecca41ebf4f402bf8fb3c11a36a8b7bd912ee9fe6baea980929774b629e12df7afb3405f1f5d044766a437b3eca5433f4af6c757f4a9dbb2e77eb SHA512 d31bb1964cdb2376572e4981b22c7ffa6fa695259c27af5d0d12aebc334cd1122c2f75739033f25f1e672300adeab2b3772622cb16099d002f3f8c5a8fe694f9 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/files/0001-tree-optimization-124034-remove-early-break-special-.patch b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/files/0001-tree-optimization-124034-remove-early-break-special-.patch new file mode 100644 index 00000000000..0e94fc35b28 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/files/0001-tree-optimization-124034-remove-early-break-special-.patch @@ -0,0 +1,79 @@ +From bbb15fd5c8a561075f4a6c71eb1f03ad6c08c5ea Mon Sep 17 00:00:00 2001 +Message-ID: <bbb15fd5c8a561075f4a6c71eb1f03ad6c08c5ea.1770651580.git.sam@gentoo.org> +From: Richard Biener <rguenther@suse.de> +Date: Mon, 9 Feb 2026 10:53:01 +0100 +Subject: [PATCH] tree-optimization/124034 - remove early-break special-casing + of inductions + +After recent improvements to how we deal with early-break requirements +of induction variable updates we no longer need to force induction +latch defs relevant. This in turn makes only-live defs visible to +SLP discovery, resolving the miscompilation in this PR. + + PR tree-optimization/124034 + * tree-vect-stmts.cc (process_use): Never force induction + latch defs relevant when doing early break vectorization. + + * gcc.dg/vect/vect-early-break_142-pr124034.c: New testcase. +--- + .../vect/vect-early-break_142-pr124034.c | 31 +++++++++++++++++++ + gcc/tree-vect-stmts.cc | 5 +-- + 2 files changed, 32 insertions(+), 4 deletions(-) + create mode 100644 gcc/testsuite/gcc.dg/vect/vect-early-break_142-pr124034.c + +diff --git a/gcc/testsuite/gcc.dg/vect/vect-early-break_142-pr124034.c b/gcc/testsuite/gcc.dg/vect/vect-early-break_142-pr124034.c +new file mode 100644 +index 000000000000..4834544eeae7 +--- /dev/null ++++ b/gcc/testsuite/gcc.dg/vect/vect-early-break_142-pr124034.c +@@ -0,0 +1,31 @@ ++/* { dg-add-options vect_early_break } */ ++ ++#include "tree-vect.h" ++ ++__attribute__((noipa)) ++static ++long ++memeqbyte (char byte, void *data, long length) ++{ ++ char *p = data; ++ for (long i = 0; i < 16; i++, length--) ++ { ++ if (length == 0) ++ return 0; ++ if (p[i] != byte) ++ return 0; ++ } ++ return length; ++} ++ ++#define n 16 ++ ++int ++main () ++{ ++ char iov[n]; ++ check_vect (); ++ __builtin_memset (iov, 'x', n); ++ if (memeqbyte('x', iov, n)) ++ __builtin_abort(); ++} +diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc +index e7d6b4c123af..77f6d7a639ae 100644 +--- a/gcc/tree-vect-stmts.cc ++++ b/gcc/tree-vect-stmts.cc +@@ -644,10 +644,7 @@ process_use (stmt_vec_info stmt_vinfo, tree use, loop_vec_info loop_vinfo, + && STMT_VINFO_DEF_TYPE (stmt_vinfo) == vect_induction_def + && (PHI_ARG_DEF_FROM_EDGE (stmt_vinfo->stmt, + loop_latch_edge (bb->loop_father)) +- == use) +- && (!LOOP_VINFO_EARLY_BREAKS (loop_vinfo) +- || (gimple_bb (stmt_vinfo->stmt) +- != LOOP_VINFO_LOOP (loop_vinfo)->header))) ++ == use)) + { + if (dump_enabled_p ()) + dump_printf_loc (MSG_NOTE, vect_location, +-- +2.53.0 + diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260101.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260122.ebuild similarity index 100% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260101.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260122.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20251204.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260129.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20251204.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260129.ebuild index d85d2cf0d42..2448afba4b1 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20251204.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260129.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20251211.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260205.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20251211.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260205.ebuild index d85d2cf0d42..2448afba4b1 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20251211.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260205.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260212.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260212.ebuild new file mode 100644 index 00000000000..9f9c198351c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260212.ebuild @@ -0,0 +1,69 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintenance notes and explanations of GCC handling are on the wiki: +# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc + +TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="13.3.0" +MUSL_GCC_VER="13.3.0" +PATCH_VER="9" +MUSL_VER="3" +PYTHON_COMPAT=( python3_{11..14} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch + eapply_user +} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20251218.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260219.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20251218.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260219.ebuild index d85d2cf0d42..2448afba4b1 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20251218.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260219.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20251225.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260226.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20251225.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260226.ebuild index d85d2cf0d42..2448afba4b1 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20251225.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260226.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260102.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260123.ebuild similarity index 100% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260102.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260123.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20251205.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260130.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20251205.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260130.ebuild index f827e76d2ed..58030521832 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20251205.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260130.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20251212.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260206.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20251212.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260206.ebuild index f827e76d2ed..58030521832 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20251212.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260206.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260213.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260213.ebuild new file mode 100644 index 00000000000..ecb9d097185 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260213.ebuild @@ -0,0 +1,57 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintenance notes and explanations of GCC handling are on the wiki: +# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc + +TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="14.3.0" +PATCH_VER="5" +MUSL_VER="2" +MUSL_GCC_VER="14.3.0" +PYTHON_COMPAT=( python3_{11..14} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # m68k doesnt build (ICE, bug 932733) + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch + eapply_user +} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20251219.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260220.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20251219.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260220.ebuild index f827e76d2ed..58030521832 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20251219.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260220.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20251226.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260227.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20251226.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260227.ebuild index f827e76d2ed..58030521832 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20251226.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260227.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20251129.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20251129.ebuild deleted file mode 100644 index b31e36a7d0a..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20251129.ebuild +++ /dev/null @@ -1,56 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Maintenance notes and explanations of GCC handling are on the wiki: -# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc - -TOOLCHAIN_PATCH_DEV="sam" -TOOLCHAIN_HAS_TESTS=1 -PATCH_GCC_VER="15.2.0" -PATCH_VER="4" -MUSL_VER="1" -MUSL_GCC_VER="15.2.0" -PYTHON_COMPAT=( python3_{11..14} ) - -if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=master -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - #KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" - :; -fi - -if [[ ${CATEGORY} != cross-* ]] ; then - # Technically only if USE=hardened *too* right now, but no point in complicating it further. - # If GCC is enabling CET by default, we need glibc to be built with support for it. - # bug #830454 - RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" - DEPEND="${RDEPEND}" -fi - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch - eapply_user -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260103.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260124.ebuild similarity index 100% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260103.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260124.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20251227.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260131.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20251227.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260131.ebuild index e06a0b86809..6351526d140 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20251227.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260131.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20251213.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260207.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20251213.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260207.ebuild index e06a0b86809..6351526d140 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20251213.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260207.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20251220.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260214.ebuild similarity index 91% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20251220.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260214.ebuild index e06a0b86809..f04dde562c9 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20251220.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260214.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -30,7 +30,7 @@ if tc_is_live ; then EGIT_BRANCH=master elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then # Don't keyword live ebuilds - #KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" :; fi diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20251206.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260221.ebuild similarity index 90% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20251206.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260221.ebuild index b31e36a7d0a..bd7ab16f42a 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20251206.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260221.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -9,7 +9,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="15.2.0" -PATCH_VER="4" +PATCH_VER="5" MUSL_VER="1" MUSL_GCC_VER="15.2.0" PYTHON_COMPAT=( python3_{11..14} ) @@ -30,7 +30,7 @@ if tc_is_live ; then EGIT_BRANCH=master elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then # Don't keyword live ebuilds - #KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" :; fi diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260228.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260228.ebuild new file mode 100644 index 00000000000..bd7ab16f42a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260228.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintenance notes and explanations of GCC handling are on the wiki: +# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc + +TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="15.2.0" +PATCH_VER="5" +MUSL_VER="1" +MUSL_GCC_VER="15.2.0" +PYTHON_COMPAT=( python3_{11..14} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=master +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch + eapply_user +} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251123.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251123.ebuild deleted file mode 100644 index 95bba22eef7..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251123.ebuild +++ /dev/null @@ -1,56 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Maintenance notes and explanations of GCC handling are on the wiki: -# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc - -TOOLCHAIN_PATCH_DEV="sam" -TOOLCHAIN_HAS_TESTS=1 -PATCH_GCC_VER="16.0.0" -PATCH_VER="24" -MUSL_VER="1" -MUSL_GCC_VER="16.0.0" -PYTHON_COMPAT=( python3_{11..14} ) - -if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=master -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - :; -fi - -if [[ ${CATEGORY} != cross-* ]] ; then - # Technically only if USE=hardened *too* right now, but no point in complicating it further. - # If GCC is enabling CET by default, we need glibc to be built with support for it. - # bug #830454 - RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" - DEPEND="${RDEPEND}" -fi - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch - eapply_user -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251221.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251221.ebuild deleted file mode 100644 index 3da574c72e6..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251221.ebuild +++ /dev/null @@ -1,56 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Maintenance notes and explanations of GCC handling are on the wiki: -# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc - -TOOLCHAIN_PATCH_DEV="sam" -TOOLCHAIN_HAS_TESTS=1 -PATCH_GCC_VER="16.0.0" -PATCH_VER="28" -MUSL_VER="1" -MUSL_GCC_VER="16.0.0" -PYTHON_COMPAT=( python3_{11..14} ) - -if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=master -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - :; -fi - -if [[ ${CATEGORY} != cross-* ]] ; then - # Technically only if USE=hardened *too* right now, but no point in complicating it further. - # If GCC is enabling CET by default, we need glibc to be built with support for it. - # bug #830454 - RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" - DEPEND="${RDEPEND}" -fi - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch - eapply_user -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251228.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251228.ebuild deleted file mode 100644 index 3da574c72e6..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251228.ebuild +++ /dev/null @@ -1,56 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Maintenance notes and explanations of GCC handling are on the wiki: -# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc - -TOOLCHAIN_PATCH_DEV="sam" -TOOLCHAIN_HAS_TESTS=1 -PATCH_GCC_VER="16.0.0" -PATCH_VER="28" -MUSL_VER="1" -MUSL_GCC_VER="16.0.0" -PYTHON_COMPAT=( python3_{11..14} ) - -if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=master -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - :; -fi - -if [[ ${CATEGORY} != cross-* ]] ; then - # Technically only if USE=hardened *too* right now, but no point in complicating it further. - # If GCC is enabling CET by default, we need glibc to be built with support for it. - # bug #830454 - RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" - DEPEND="${RDEPEND}" -fi - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch - eapply_user -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20260104.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260125.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20260104.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260125.ebuild index 07a5e194af2..34cf82c9da0 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20260104.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260125.ebuild @@ -9,7 +9,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="16.0.0" -PATCH_VER="29" +PATCH_VER="34" MUSL_VER="1" MUSL_GCC_VER="16.0.0" PYTHON_COMPAT=( python3_{11..14} ) diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251130.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260201.ebuild similarity index 96% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251130.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260201.ebuild index 8b22c97ca54..9683d59e9f5 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251130.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260201.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -9,7 +9,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="16.0.0" -PATCH_VER="25" +PATCH_VER="35" MUSL_VER="1" MUSL_GCC_VER="16.0.0" PYTHON_COMPAT=( python3_{11..14} ) diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260208-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260208-r1.ebuild new file mode 100644 index 00000000000..47c25b42c5a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260208-r1.ebuild @@ -0,0 +1,57 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintenance notes and explanations of GCC handling are on the wiki: +# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc + +TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="16.0.0" +PATCH_VER="36" +MUSL_VER="1" +MUSL_GCC_VER="16.0.0" +PYTHON_COMPAT=( python3_{11..14} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=master +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch + eapply "${FILESDIR}"/0001-tree-optimization-124034-remove-early-break-special-.patch + eapply_user +} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251207.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260215.ebuild similarity index 96% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251207.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260215.ebuild index ff96e86ffb5..bd4fb971be2 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251207.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260215.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -9,7 +9,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="16.0.0" -PATCH_VER="26" +PATCH_VER="37" MUSL_VER="1" MUSL_GCC_VER="16.0.0" PYTHON_COMPAT=( python3_{11..14} ) diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251214.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260222.ebuild similarity index 96% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251214.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260222.ebuild index 557e7804622..deab73994c4 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20251214.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260222.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -9,7 +9,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="16.0.0" -PATCH_VER="27" +PATCH_VER="38" MUSL_VER="1" MUSL_GCC_VER="16.0.0" PYTHON_COMPAT=( python3_{11..14} ) diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260301.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260301.ebuild new file mode 100644 index 00000000000..deab73994c4 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260301.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintenance notes and explanations of GCC handling are on the wiki: +# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc + +TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="16.0.0" +PATCH_VER="38" +MUSL_VER="1" +MUSL_GCC_VER="16.0.0" +PYTHON_COMPAT=( python3_{11..14} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=master +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch + eapply_user +} From 574e3179000213d52ab2f4202ecf9c78329b56c6 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:37 +0000 Subject: [PATCH 223/291] sys-devel/gettext: Sync with Gentoo It's from Gentoo commit d7ececd067887a3dd8012ed475052e6d0bbed104. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- ...ettext-0.25-musl-omit_setlocale_lock.patch | 37 +++++++++++++++++++ .../sys-devel/gettext/gettext-0.25.1.ebuild | 2 +- .../sys-devel/gettext/gettext-0.26.ebuild | 2 +- 3 files changed, 39 insertions(+), 2 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/gettext/files/gettext-0.25-musl-omit_setlocale_lock.patch diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/files/gettext-0.25-musl-omit_setlocale_lock.patch b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/files/gettext-0.25-musl-omit_setlocale_lock.patch new file mode 100644 index 00000000000..cbb6833df7f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/files/gettext-0.25-musl-omit_setlocale_lock.patch @@ -0,0 +1,37 @@ +OMIT_SETLOCALE_LOCK should be true when gl_get_setlocale_null_lock is provided by a dependency library, like GNU libintl. +On Gentoo musl we use musl's libintl and gl_get_setlocale_null_lock is not provided by it, therefore we set OMIT_SETLOCALE_LOCK to 0. + +To properly fix this we should do AC_SEARCH_LIBS([gl_get_setlocale_null_lock], [intl], ...) in automake, but instead we do this +hack to not get complacent. This should be fixed upstream. + +https://savannah.gnu.org/bugs/index.php?62659#comment7 +https://bugs.gentoo.org/830590 +diff --git a/gettext-tools/libgettextpo/Makefile.am b/gettext-tools/libgettextpo/Makefile.am +index 971d136..740c455 100644 +--- a/gettext-tools/libgettextpo/Makefile.am ++++ b/gettext-tools/libgettextpo/Makefile.am +@@ -42,7 +42,7 @@ AM_CPPFLAGS = \ + -I../src -I$(top_srcdir)/src \ + -I../../gettext-runtime/intl -I$(top_srcdir)/../gettext-runtime/intl + +-DEFS = -DIN_LIBGETTEXTPO=1 -DOMIT_SETLOCALE_LOCK=1 @DEFS@ ++DEFS = -DIN_LIBGETTEXTPO=1 -DOMIT_SETLOCALE_LOCK=0 @DEFS@ + + # Enable more warning options in this directory. + AM_CFLAGS = @WARN_CFLAGS@ +diff --git a/gettext-tools/libgettextpo/Makefile.in b/gettext-tools/libgettextpo/Makefile.in +index 0e655ea..57bb2c5 100644 +--- a/gettext-tools/libgettextpo/Makefile.in ++++ b/gettext-tools/libgettextpo/Makefile.in +@@ -1376,7 +1376,7 @@ CXX_HAS_CHAR8_TYPE = @CXX_HAS_CHAR8_TYPE@ + CXX_HAS_UCHAR_TYPES = @CXX_HAS_UCHAR_TYPES@ + CYGPATH_W = @CYGPATH_W@ + DC = @DC@ +-DEFS = -DIN_LIBGETTEXTPO=1 -DOMIT_SETLOCALE_LOCK=1 @DEFS@ ++DEFS = -DIN_LIBGETTEXTPO=1 -DOMIT_SETLOCALE_LOCK=0 @DEFS@ + DEPDIR = @DEPDIR@ + DESIRED_LINGUAS = @DESIRED_LINGUAS@ + DFLAGS = @DFLAGS@ +-- +2.35.1 + diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.25.1.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.25.1.ebuild index c1f5cf219ae..82211b73d7b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.25.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.25.1.ebuild @@ -104,7 +104,7 @@ src_prepare() { elibtoolize if use elibc_musl || use elibc_Darwin; then - eapply "${FILESDIR}"/${PN}-0.21-musl-omit_setlocale_lock.patch + eapply "${FILESDIR}"/${PN}-0.25-musl-omit_setlocale_lock.patch fi } diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.26.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.26.ebuild index c1f5cf219ae..82211b73d7b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.26.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.26.ebuild @@ -104,7 +104,7 @@ src_prepare() { elibtoolize if use elibc_musl || use elibc_Darwin; then - eapply "${FILESDIR}"/${PN}-0.21-musl-omit_setlocale_lock.patch + eapply "${FILESDIR}"/${PN}-0.25-musl-omit_setlocale_lock.patch fi } From 3fe7bda96975f36515a77c12705ef7f2182434df Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:38 +0000 Subject: [PATCH 224/291] sys-devel/m4: Sync with Gentoo It's from Gentoo commit 4fed18359c68f6071acb04851e80ba1a23ea6c72. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-devel/m4/Manifest | 2 + .../sys-devel/m4/m4-1.4.21.ebuild | 90 +++++++++++++++++++ 2 files changed, 92 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/m4/m4-1.4.21.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/m4/Manifest b/sdk_container/src/third_party/portage-stable/sys-devel/m4/Manifest index ea6b0f02f75..3ea4a6b52a1 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/m4/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-devel/m4/Manifest @@ -3,3 +3,5 @@ DIST m4-1.4.19.tar.xz 1654908 BLAKE2B 08694485a49c542761fa9a7db4d7609f4dfb08a5c6 DIST m4-1.4.19.tar.xz.sig 488 BLAKE2B 99e89b1ed0bf158d29a652392fb122e23227e895c75a8c63057ebe33f11b433ab205ae99a991578a89df8c3e723fc00669d8cdb290fbc86eaa6c704b112e4370 SHA512 d6ac9c6a54c57e9b53fb3e34a60d49df2f46a6e494da0a0c9ae8246b984e68a853b5d8c42677c1a0485c3f36b0bce10a481d3775c0edc1dbdfb27b43545bc31e DIST m4-1.4.20.tar.xz 2044756 BLAKE2B d8e6716dd4f35e17b866917f0697f980d7b6fbfa9aa92feb1234fdb49fb62107dc48405036a8ca97db73889d7638b90b69ea005352992b7bf45e8605127b318f SHA512 dc7b4f61452e564b095010029bf6ce4246e5a03959989cd76b09eb8012db7424c52819143020fab21a3471ff57ab026d3eccbd00dd3969819208980565a9fec0 DIST m4-1.4.20.tar.xz.sig 488 BLAKE2B a202c6d8f7d65bf8f4936ec5d18bce768fe80ab485905cce051339fffdecbdd191f73b25675770648536ee24c2b161416e924b6acd30c1d8d00a425174f0a439 SHA512 bc75a64e47a87fe4073f26850a8344e82d15f156ac5b52cde1af701a0ba4e0d18f414323f86c868f114c4867b00c31ce205a9505343e588ad97825b05136c5eb +DIST m4-1.4.21.tar.xz 2080016 BLAKE2B 047573505e04295ba94e7b3eff6c705d7e7b8ed9e7794a686b04a709acb2f3edaea54eb0e76b7f9ffeb1b3dc48e9e34ad8d7b73633e7a1fca4348b13b4b5cc28 SHA512 efe5ec212f6431129a79667f098b2efe2e824122112f73a675deccb9c0d8c9b0bc9e3bf50c9cd5c0b894dc0af1b3f02253e5e67893fb9548a6a9d3bed7c829f7 +DIST m4-1.4.21.tar.xz.sig 488 BLAKE2B 08ab88deccdf9e2e55b98361886042a9d61499fe26e6c1526cd1690611b91927ce626552bce30ceec18d61468eb94bafc1f52b598e7e8c89b21af6c21ed752f2 SHA512 033c1481a1629bcc6ae1cb3437630b00a6b04a4f1aecc26db33b475aff088d50aa7dd15f053cad5a7014ce1b197e8533b8fc5f8f555a952ddb334a9d6e1af059 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/m4/m4-1.4.21.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/m4/m4-1.4.21.ebuild new file mode 100644 index 00000000000..e23189552f0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/m4/m4-1.4.21.ebuild @@ -0,0 +1,90 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/m4.asc +inherit branding flag-o-matic verify-sig + +DESCRIPTION="GNU macro processor" +HOMEPAGE="https://www.gnu.org/software/m4/m4.html" +if [[ ${PV} == *_p* ]] ; then + # Note: could put this in devspace, but if it's gone, we don't want + # it in tree anyway. It's just for testing. + MY_SNAPSHOT="$(ver_cut 1-3).65-bdd9" + SRC_URI=" + https://alpha.gnu.org/gnu/${PN}/${PN}-${MY_SNAPSHOT}.tar.xz + https://people.redhat.com/eblake/${PN}/${PN}-${MY_SNAPSHOT}.tar.xz + verify-sig? ( + https://alpha.gnu.org/gnu/${PN}/${PN}-${MY_SNAPSHOT}.tar.xz.sig + https://people.redhat.com/eblake/${PN}/${PN}-${MY_SNAPSHOT}.tar.xz.sig + ) + " + S="${WORKDIR}"/${PN}-${MY_SNAPSHOT} +else + SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" + SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-3+" +SLOT="0" +IUSE="examples nls" + +RDEPEND=" + virtual/libiconv + nls? ( + sys-devel/gettext + virtual/libintl + ) +" +DEPEND="${RDEPEND}" +# Remember: cannot dep on autoconf since it needs us +BDEPEND=" + app-arch/xz-utils + nls? ( sys-devel/gettext ) + verify-sig? ( sec-keys/openpgp-keys-m4 ) +" + +src_prepare() { + default + + # touch generated files after patching m4, to avoid activating maintainer + # mode + # remove when loong-fix-build.patch is no longer necessary + #touch ./aclocal.m4 ./lib/config.hin ./configure ./doc/stamp-vti || die + #find . -name Makefile.in -exec touch {} + || die +} + +src_configure() { + # see https://bugs.gentoo.org/955947 + append-flags -Wno-error=format-security + + local -a myeconfargs=( + --enable-changeword + $(usex nls '' '--disable-nls') + + # Disable automagic dependency over libsigsegv; see bug #278026 + ac_cv_libsigsegv=no + ) + + econf "${myeconfargs[@]}" +} + +src_test() { + [[ -d /none ]] && die "m4 tests will fail with /none/" # bug #244396 + emake check +} + +src_install() { + default + + # autoconf-2.60 for instance, first checks gm4, then m4. If we don't have + # gm4, it might find gm4 from outside the prefix on for instance Darwin + use prefix && dosym m4 /usr/bin/gm4 + + if use examples ; then + dodoc -r examples + rm -f "${ED}"/usr/share/doc/${PF}/examples/Makefile* + fi +} From c1bf1aa1c3289291fac60b4750397fde20580bf6 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:40 +0000 Subject: [PATCH 225/291] sys-firmware/intel-microcode: Sync with Gentoo It's from Gentoo commit af81951365c80bfd25c5823dedd366af0a7b44bc. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-firmware/intel-microcode/Manifest | 6 +- ...intel-microcode-20260210_p20260211.ebuild} | 2 +- .../intel-microcode-20260227_p20260227.ebuild | 338 ++++++++++++++++++ .../sys-firmware/intel-microcode/metadata.xml | 1 + 4 files changed, 344 insertions(+), 3 deletions(-) rename sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/{intel-microcode-20250812_p20250813.ebuild => intel-microcode-20260210_p20260211.ebuild} (99%) create mode 100644 sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20260227_p20260227.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/Manifest b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/Manifest index 97aa9690441..fa3144686b0 100644 --- a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/Manifest @@ -1,5 +1,7 @@ -DIST intel-microcode-collection-20250813.tar.xz 20200664 BLAKE2B a503f331b152db37a51e864f520a11795f6e1d3313cc23c7a3985f1c2b9c941654829a50e667aa8b2f7c76cb71f04a6205b1276717d880a20d63a8e21e1afe69 SHA512 323ebd24490146db77837bafbd07240e1712b45e642d2956a5f635e8d814920d20a2d5efef80cf4a50af849dde1c37e78954f2f32e81924a65be45229865cc13 DIST intel-microcode-collection-20251112.tar.xz 22855268 BLAKE2B 13d40d224e838b9aecb5d404f63c36bec0fe162f51cc909a32cee8665a844a628083bdd915e06d4710029d89479c4e0e1c8ec2f9c7ade0a6fd2b210bdfc597d5 SHA512 cb7f070933c2fa49402f9d4646b4484d67a201b95c14b995cef749482e896f586a9eefd2cc8add7a6659012f95bc5316ea48f1ffae2502f268b30afab8587725 +DIST intel-microcode-collection-20260211.tar.xz 24796412 BLAKE2B a5944ed538a1d7ddae5e92409383f09e10304b39834d8488e5197e1b66d17fadd495f23e0bdab4ed06cd6abee73048617805f902ee95a01f37f79f54851d3ba0 SHA512 7d760a121601c329fdb7ef3d79217b29a6e3e2c7c7b112f701a6e60467641472fe4e3f66bf61d2788c4bfeb17fa2e6c1dc11c5cd18efd99e2acf753fdb3b1b0c +DIST intel-microcode-collection-20260227.tar.xz 26976652 BLAKE2B 7a49dfcd62d9ba1773768954b4aaff98c37ae50a2be16c671a78a4046c5523634bc19809b4bbef03cd7a60e8c710ce477a9b0949ff6a8ddc8aa9f8590143de23 SHA512 1ce5428d50e692015b9c919049bda27215453aaddbcb8bc3c8c3312ad763ca9f102b0cc614905931441e031a5fc1ac7f54dd367a0b4506b41f73e7260e11ee18 DIST intel-ucode-sig_0x406e3-rev_0xd6.bin 101376 BLAKE2B 66d55867954d69dda1425febd93bb8c89f7aa836d504f8b5fee127f8505bcf2246f4fcc55cc245bc5e532528d60cca2eee278de7ab5174dc2862db7982a2b36f SHA512 248066b521bf512b5d8e4a8c7e921464ce52169c954d6e4ca580d8c172cd789519e22b4cf56c212e452b4191741f0202019f7061d322c9433b5af9ce5413b567 -DIST microcode-20250812.tar.gz 14986599 BLAKE2B f0ae5a98ac65506f9a6c9d2902f6d1e1b8355ab0ddcdb7173ea5517cad4e0474b4cbbdd3196bf66ebd226d347f94d959db8bcf62c5f06eef13c6f8b7f16b70da SHA512 5c21676d1c1783c937c78ca00b9f8d9a870bc7dfdde564bdf2ba277931223fa8d6a2f21d6a0e6249b4ba8ccc2e47d5b3cbf41cc5edc08360c909b3f1c7f2dec1 DIST microcode-20251111.tar.gz 16586556 BLAKE2B 5cfe307f498a153540196679d5f32b3d15d54ece195f7c2f937bb16731e705bb643ad9302e1eaf0356414a0d345fb158e75035e75993b4d00275fb9565fd77b4 SHA512 a11ded3158d761ae68258ca61a15014258d68ea28e9e9c94c125a49490a1df0f4b5c6cc37e97b42d84594760e455a1444feb2106e920ea6dd09934e545d92188 +DIST microcode-20260210.tar.gz 16622114 BLAKE2B 3b3a8fef499a67af0264550b457ae7de4f6965d9c8c02cc1b5b0f02316580662397016287510e09274e241d8d9cb7d70245f05a584f746515ac7c9bbe4a5cb28 SHA512 ec4ed32600ce1ce2c9c52796458f92205c89c38ba2834d84ab86d800790c709d22cb66e4fca5edda42752363956324f8066d08e3b1d81c50ac879d2749068655 +DIST microcode-20260227.tar.gz 16621772 BLAKE2B 3725dee3af32b545a754a47616c7451a6e7e227af125a8eb35729b2784dfbdecccea6054e1f3190119253041697ce525380e5a98c929e42a4294028d2eca1ebd SHA512 d9de41b1f1b2740d12f0e9e4987b8001d7b9a0ae53382e9bd715936fb7cab7da74a9154df781950738db1c1ebb9ad4f46700355b67a0fb4e8fd5e80711702723 diff --git a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20250812_p20250813.ebuild b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20260210_p20260211.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20250812_p20250813.ebuild rename to sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20260210_p20260211.ebuild index f99a41e15b4..c7ca5d9bbe7 100644 --- a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20250812_p20250813.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20260210_p20260211.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20260227_p20260227.ebuild b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20260227_p20260227.ebuild new file mode 100644 index 00000000000..7f888c0588c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20260227_p20260227.ebuild @@ -0,0 +1,338 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit dist-kernel-utils linux-info mount-boot + +# Find updates by searching and clicking the first link (hopefully it's the one): +# https://www.intel.com/content/www/us/en/search.html?keyword=Processor+Microcode+Data+File +# +# +# Package Maintenance instructions: +# 1. The ebuild is in the form of intel-microcode-<INTEL_SNAPSHOT>_p<COLLECTION_SNAPSHOT>.ebuild +# 2. The INTEL_SNAPSHOT upstream is located at: https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files +# 3. The COLLECTION_SNAPSHOT is created manually using the following steps: +# a. Clone the repository https://github.com/platomav/CPUMicrocodes +# b. Rename the Intel directory to intel-microcode-collection-<YYYYMMDD> +# c. From the CPUMicrocodes directory tar and xz compress the contents of intel-microcode-collection-<YYYYMMDD>: +# tar -cJf intel-microcode-collection-<YYYYMMDD>.tar.xz intel-microcode-collection-<YYYYMMDD>/ +# d. This file can go in your devspace, add the URL to SRC_URI if it's not there +# https://dev.gentoo.org/~<dev nick>/dist/intel-microcode/intel-microcode-collection-${COLLECTION_SNAPSHOT}.tar.xz +# +# PV: +# * the first date is upstream +# * the second date is snapshot (use last commit date in repo) from intel-microcode-collection + +COLLECTION_SNAPSHOT="${PV##*_p}" +INTEL_SNAPSHOT="${PV/_p*}" +#NUM="28087" + +#https://downloadcenter.intel.com/Detail_Desc.aspx?DwnldID=${NUM} +#https://downloadmirror.intel.com/${NUM}/eng/microcode-${INTEL_SNAPSHOT}.tgz + +DESCRIPTION="Intel IA32/IA64 microcode update data" +HOMEPAGE="https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files https://github.com/platomav/CPUMicrocodes http://inertiawar.com/microcode/" +SRC_URI=" + https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/archive/microcode-${INTEL_SNAPSHOT}.tar.gz + https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/raw/437f382b1be4412b9d03e2bbdcda46d83d581242/intel-ucode/06-4e-03 -> intel-ucode-sig_0x406e3-rev_0xd6.bin + https://dev.gentoo.org/~mpagano/dist/intel-microcode/intel-microcode-collection-${COLLECTION_SNAPSHOT}.tar.xz + https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/intel-microcode-collection-${COLLECTION_SNAPSHOT}.tar.xz +" +S="${WORKDIR}" + +LICENSE="intel-ucode" +SLOT="0" +KEYWORDS="-* ~amd64 ~x86" +IUSE="dist-kernel hostonly +initramfs +split-ucode vanilla" +REQUIRED_USE=" + || ( initramfs split-ucode ) + dist-kernel? ( split-ucode ) +" +RESTRICT="binchecks strip" + +BDEPEND=">=sys-apps/iucode_tool-2.3" +# !<sys-apps/microcode-ctl-1.17-r2 due to bug #268586 +RDEPEND=" + dist-kernel? ( + virtual/dist-kernel + initramfs? ( + sys-apps/iucode_tool + ) + ) +" +IDEPEND=" + hostonly? ( sys-apps/iucode_tool ) + dist-kernel? ( + initramfs? ( sys-kernel/installkernel ) + ) +" + +# Blacklist bad microcode here. +# 0x000406f1 aka 06-4f-01 aka CPUID 406F1 require newer microcode loader +MICROCODE_BLACKLIST_DEFAULT="-s !0x000406f1" + +# https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/issues/31 +MICROCODE_BLACKLIST_DEFAULT+=" -s !0x000406e3,0xc0,eq:0x00dc" + +# https://bugs.gentoo.org/722768 +MICROCODE_BLACKLIST_DEFAULT+=" -s !0x000406e3,0xc0,eq:0x00da" + +# https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/commit/49bb67f32a2e3e631ba1a9a73da1c52e1cac7fd9 +MICROCODE_BLACKLIST_DEFAULT+=" -s !0x000806c1,0x80,eq:0x0068" + +# In case we want to set some defaults ... +MICROCODE_SIGNATURES_DEFAULT="" + +# Advanced users only! +# Set MIRCOCODE_SIGNATURES to merge with: +# only current CPU: MICROCODE_SIGNATURES="-S" +# only specific CPU: MICROCODE_SIGNATURES="-s 0x00000f4a -s 0x00010676" +# exclude specific CPU: MICROCODE_SIGNATURES="-s !0x00000686" + +pkg_pretend() { + if use initramfs; then + if use dist-kernel; then + # Check, but don't die because we can fix the problem and then + # emerge --config ... to re-run installation. + nonfatal mount-boot_check_status + else + mount-boot_pkg_pretend + fi + fi +} + +src_prepare() { + default + + if cd Intel-Linux-Processor-Microcode-Data* &>/dev/null; then + # new tarball format from GitHub + mv * ../ || die "Failed to move Intel-Linux-Processor-Microcode-Data*" + cd .. || die + rm -r Intel-Linux-Processor-Microcode-Data* || die + fi + + mkdir intel-ucode-old || die + cp "${DISTDIR}"/intel-ucode-sig_0x406e3-rev_0xd6.bin "${S}"/intel-ucode-old/ || die + + # Prevent "invalid file format" errors from iucode_tool + rm -f "${S}"/intel-ucod*/list || die + + # https://gitlab.com/iucode-tool/iucode-tool/-/issues/4 + rm "${S}"/intel-microcode-collection-${COLLECTION_SNAPSHOT}/cpu106C0_plat01_ver00000007_2007-08-24_PRD_923CDFA3.bin || die + + # Remove non-microcode file from list + rm -f "${S}"/intel-microcode-collection-${COLLECTION_SNAPSHOT}/LICENSE || die + rm -f "${S}"/intel-ucode*/LICENSE || die +} + +src_install() { + # This will take ALL of the upstream microcode sources: + # - microcode.dat + # - intel-ucode/ + # In some cases, they have not contained the same content (eg the directory has newer stuff). + MICROCODE_SRC=( + "${S}"/intel-ucode/ + "${S}"/intel-ucode-with-caveats/ + "${S}"/intel-ucode-old/ + ) + + # Allow users who are scared about microcode updates not included in Intel's official + # microcode tarball to opt-out and comply with Intel marketing + if ! use vanilla; then + MICROCODE_SRC+=( "${S}"/intel-microcode-collection-${COLLECTION_SNAPSHOT} ) + fi + + # These will carry into pkg_preinst via env saving. + : ${MICROCODE_BLACKLIST=${MICROCODE_BLACKLIST_DEFAULT}} + : ${MICROCODE_SIGNATURES=${MICROCODE_SIGNATUES_DEFAULT}} + + opts=( + ${MICROCODE_BLACKLIST} + ${MICROCODE_SIGNATURES} + # be strict about what we are doing + --overwrite + --strict-checks + --no-ignore-broken + # we want to install latest version + --no-downgrade + # show everything we find + --list-all + # show what we selected + --list + ) + + # Instruct Dracut on whether or not we want the microcode in initramfs + # Use here 15 instead of 10, intel-microcode overwrites linux-firmware + ( + insinto /usr/lib/dracut/dracut.conf.d + newins - 15-${PN}.conf <<<"early_microcode=$(usex initramfs)" + ) + if use initramfs; then + # Install installkernel/kernel-install hooks for non-dracut initramfs + # generators that don't bundled the microcode + ( + exeinto /usr/lib/kernel/preinst.d + doexe "${FILESDIR}/35-intel-microcode.install" + exeinto /usr/lib/kernel/install.d + doexe "${FILESDIR}/35-intel-microcode-systemd.install" + ) + fi + + # The earlyfw cpio needs to be in /boot because it must be loaded before + # rootfs is mounted. + if ! use dist-kernel && use initramfs; then + dodir /boot && opts+=( --write-earlyfw="${ED}/boot/intel-uc.img" ) + fi + + keepdir /lib/firmware/intel-ucode + opts+=( --write-firmware="${ED}/lib/firmware/intel-ucode" ) + + iucode_tool \ + "${opts[@]}" \ + "${MICROCODE_SRC[@]}" \ + || die "iucode_tool ${opts[@]} ${MICROCODE_SRC[@]}" + + dodoc releasenote.md +} + +pkg_preinst() { + if [[ ${MICROCODE_BLACKLIST} != ${MICROCODE_BLACKLIST_DEFAULT} ]]; then + ewarn "MICROCODE_BLACKLIST is set to \"${MICROCODE_BLACKLIST}\" instead of default \"${MICROCODE_BLACKLIST_DEFAULT}\". You are on your own!" + fi + + if [[ ${MICROCODE_SIGNATURES} != ${MICROCODE_SIGNATURES_DEFAULT} ]]; then + ewarn "Package was created using advanced options:" + ewarn "MICROCODE_SIGNATURES is set to \"${MICROCODE_SIGNATURES}\" instead of default \"${MICROCODE_SIGNATURES_DEFAULT}\"!" + fi + + # Make sure /boot is available if needed. + use initramfs && ! use dist-kernel && mount-boot_pkg_preinst + + local _initramfs_file="${ED}/boot/intel-uc.img" + + if use hostonly; then + # While this output looks redundant we do this check to detect + # rare cases where iucode_tool was unable to detect system's processor(s). + local _detected_processors=$(iucode_tool --scan-system 2>&1) + if [[ -z "${_detected_processors}" ]]; then + ewarn "Looks like iucode_tool was unable to detect any processor!" + else + einfo "Only installing ucode(s) for ${_detected_processors#iucode_tool: system has } due to USE=hostonly ..." + fi + + opts=( + --scan-system + # be strict about what we are doing + --overwrite + --strict-checks + --no-ignore-broken + # we want to install latest version + --no-downgrade + # show everything we find + --list-all + # show what we selected + --list + ) + + # The earlyfw cpio needs to be in /boot because it must be loaded before + # rootfs is mounted. + if ! use dist-kernel && use initramfs; then + opts+=( --write-earlyfw=${_initramfs_file} ) + fi + + if use split-ucode; then + opts+=( --write-firmware="${ED}/lib/firmware/intel-ucode" ) + fi + + opts+=( "${ED}/lib/firmware/intel-ucode-temp" ) + + mv "${ED}"/lib/firmware/intel-ucode{,-temp} || die + keepdir /lib/firmware/intel-ucode + + iucode_tool "${opts[@]}" || die "iucode_tool ${opts[@]}" + + rm -r "${ED}"/lib/firmware/intel-ucode-temp || die + + elif ! use split-ucode; then # hostonly disabled + rm -r "${ED}"/lib/firmware/intel-ucode || die + fi + + # Because it is possible that this package will install not one single file + # due to user selection which is still somehow unexpected we add the following + # check to inform user so that the user has at least a chance to detect + # a problem/invalid select. + local _has_installed_something= + if use initramfs && [[ -s "${_initramfs_file}" ]]; then + _has_installed_something="yes" + elif use split-ucode; then + _has_installed_something=$(find "${ED}/lib/firmware/intel-ucode" -maxdepth 0 -not -empty -exec echo yes \;) + fi + + if use hostonly && [[ -n "${_has_installed_something}" ]]; then + elog "You only installed ucode(s) for all currently available (=online)" + elog "processor(s). Remember to re-emerge this package whenever you" + elog "change the system's processor model." + elog "" + elif [[ -z "${_has_installed_something}" ]]; then + ewarn "WARNING:" + if [[ ${MICROCODE_SIGNATURES} != ${MICROCODE_SIGNATURES_DEFAULT} ]]; then + ewarn "No ucode was installed! Because you have created this package" + ewarn "using MICROCODE_SIGNATURES variable please double check if you" + ewarn "have an invalid select." + ewarn "It's rare but it is also possible that just no ucode update" + ewarn "is available for your processor(s). In this case it is safe" + ewarn "to ignore this warning." + else + ewarn "No ucode was installed! It's rare but it is also possible" + ewarn "that just no ucode update is available for your processor(s)." + ewarn "In this case it is safe to ignore this warning." + fi + + ewarn "" + + if use hostonly; then + ewarn "Unset \"hostonly\" USE flag to install all available ucodes." + ewarn "" + fi + fi +} + +pkg_prerm() { + # Make sure /boot is mounted so that we can remove /boot/intel-uc.img! + use initramfs && ! use dist-kernel && mount-boot_pkg_prerm +} + +pkg_postrm() { + # Don't forget to umount /boot if it was previously mounted by us. + use initramfs && ! use dist-kernel && mount-boot_pkg_postrm +} + +pkg_postinst() { + if use initramfs; then + if use dist-kernel; then + dist-kernel_reinstall_initramfs "${KV_DIR}" "${KV_FULL}" --all + else + # Don't forget to umount /boot if it was previously mounted by us. + mount-boot_pkg_postinst + fi + fi + + # We cannot give detailed information if user is affected or not: + # If MICROCODE_BLACKLIST wasn't modified, user can still use MICROCODE_SIGNATURES + # to to force a specific, otherwise blacklisted, microcode. So we + # only show a generic warning based on running kernel version: + if kernel_is -lt 4 14 34; then + ewarn "${P} contains microcode updates which require" + ewarn "additional kernel patches which aren't yet included in kernel <4.14.34." + ewarn "Loading such a microcode through kernel interface from an unpatched kernel" + ewarn "can crash your system!" + ewarn "" + ewarn "Those microcodes are blacklisted per default. However, if you have altered" + ewarn "MICROCODE_BLACKLIST or MICROCODE_SIGNATURES, you maybe have unintentionally" + ewarn "re-enabled those microcodes...!" + ewarn "" + ewarn "Check \"${EROOT}/usr/share/doc/${PN}-*/releasenot*\" if your microcode update" + ewarn "requires additional kernel patches or not." + fi +} diff --git a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/metadata.xml b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/metadata.xml index fb8538f43f9..ac0a10c5c11 100644 --- a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/metadata.xml @@ -10,6 +10,7 @@ <name>Mike Pagano</name> </maintainer> <use> + <flag name="dist-kernel">Delegate microcode initramfs generation to <pkg>sys-kernel/installkernel</pkg></flag> <flag name="initramfs">Install a small initramfs for use with CONFIG_MICROCODE_EARLY</flag> <flag name="hostonly">Only install ucode(s) supported by currently available (=online) processor(s)</flag> <flag name="split-ucode">Install the split binary ucode files (used by the kernel directly)</flag> From ef7e5ec7854c30f901341a305dbb5a3423934222 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:49 +0000 Subject: [PATCH 226/291] sys-fs/btrfs-progs: Sync with Gentoo It's from Gentoo commit 558aff08d00dd1e9200eba04815a212f9c879bb0. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-fs/btrfs-progs/Manifest | 16 +- .../btrfs-progs/btrfs-progs-6.12.ebuild | 188 ------------------ .../btrfs-progs/btrfs-progs-6.13.ebuild | 188 ------------------ .../btrfs-progs/btrfs-progs-6.14.ebuild | 188 ------------------ .../btrfs-progs/btrfs-progs-6.15.ebuild | 188 ------------------ .../btrfs-progs/btrfs-progs-6.16.ebuild | 188 ------------------ .../btrfs-progs/btrfs-progs-6.17.1.ebuild | 12 +- .../btrfs-progs/btrfs-progs-6.17.ebuild | 188 ------------------ ...-6.16.1.ebuild => btrfs-progs-6.19.ebuild} | 14 +- .../btrfs-progs/btrfs-progs-9999.ebuild | 12 +- 10 files changed, 15 insertions(+), 1167 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.12.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.13.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.14.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.15.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.16.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.17.ebuild rename sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/{btrfs-progs-6.16.1.ebuild => btrfs-progs-6.19.ebuild} (88%) diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/Manifest b/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/Manifest index d3a87fa76c9..6b969ebfcd9 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/Manifest @@ -1,16 +1,4 @@ -DIST btrfs-progs-v6.12.tar.sign 566 BLAKE2B 3a32b52522acd9e2fcf34cbf90d91ca2491ae1b34142320b987084a60c9f6c13100fcfb554f877c0f659b60415234550c05d980c633015cd8d083df18521187a SHA512 86396dad38f15c19eb4b641632deb99073829896001b71fbdfaa3ebd11468e8b89ed324e563ec9db837c9095501227824f97085347dca4204cbaecceed9da7d3 -DIST btrfs-progs-v6.12.tar.xz 2705336 BLAKE2B d1569ec7b2079a43ac370c3a7e9f1b37a06545675753490f16d6a7bb52281f76df39f924c96569a1c75daa8a998f251c5219e2f09a54cb94c42cba1db3cf43ca SHA512 57da37f460a33b5f5232a5c8e67eb5976fb13483a1437112bd433b179bc0e497a1aadfe24705eb4fb4e0a98d2a33fd3c46808b3ca161421475442a70b964c446 -DIST btrfs-progs-v6.13.tar.sign 566 BLAKE2B 12424d4f076a0b1e007f367c803c0308c45632475dfff56d6f2feb65ad8c84568609554f2870f5ccb2d1ca1559661a811a96c4f5e1ad4744d4c8d14c9e002d5b SHA512 f4423a607dd7a8e0a6d6da9a5ebc9c1147026b25786cb3fd947243491e17730994d74c1885cef5737380a9441a736ee252229951e298e2559a279e16fc18a53b -DIST btrfs-progs-v6.13.tar.xz 2731048 BLAKE2B aaf536e17977c052dd0828501f5a91b85403d561301f10d8c7bf2f5abae30a323f781ef8727f8ca48efc6edf16000b3ee8435fd6a89d6d047dda289ad87e3f64 SHA512 c91e99beb554320e75bcef027ae918993ed8e08a5fe774ff55bf63cde2c64802676c8678ff09d2678aa084166f178efd2b64ed00821d0908a1435e9eaea74422 -DIST btrfs-progs-v6.14.tar.sign 566 BLAKE2B ddb860fa18cb56e7b460949c54c097e11bd08675e661d954aba353e412e714e5d3dbaecc0f97aa11787cb8b665a4a7549cfc7d779b596fe15324d45bae1d8a20 SHA512 c1092a0992e945b4820de4e80adc5681e9a2bf435b5defb0b8c44b3bb210c07b38dd446a40ce19955fa1616b546d40f568c537410fe4eda8f2f1657e2d3bfb3e -DIST btrfs-progs-v6.14.tar.xz 2739548 BLAKE2B fae9bdbacc093ba260d7740001eef98f4ffb72c30631c789a34fbd5f34283cbdfb9f1e6b2f6112fb769b90892b47ea2bcc0bcdab37748b8d23e3588051620b2a SHA512 becb9e1a95ecd3e0421dd9a4a4fd0bf0e950d6586aa8cc757f97b04392a54a4fd4bcae164a61054087823e610297041b2b79b0c6e827cab8ad804d9877268ee4 -DIST btrfs-progs-v6.15.tar.sign 566 BLAKE2B 002bd309b3c5c0cebea7f2424c775ad369d358731223f0fee2646ed57b4b635cef4561e04eb7bd01321d8da13cea87410626d78433d0e6b44cc6229069553ab1 SHA512 e008df77f2791468ca02c5acf68df5904219646bc55c129db9b75aff3212893824bcfbb1fb5cdf404f1f366d05c7fd1566419a5fadc6057b484f408c0f37dfb8 -DIST btrfs-progs-v6.15.tar.xz 4933176 BLAKE2B 5e79b7606fb236bc21e5b2401f5d6b27ad0ffb1b8ceef3ed9c7042b384508b1e1cc2a3a451d94e5369fa1592d91da78264caabe74bf1d907ac8e513a86b6fed8 SHA512 415cf222ae6a219123cdac5f99d4b8346a9f9c57e9e5b109a5198c287d1a00273a3651ce7f38f330d9d81c5a6293cfb5fedcc34c2a03a8be925caa3546a50dad -DIST btrfs-progs-v6.16.1.tar.sign 566 BLAKE2B d2d7078120f781f51abac29ad2d052d7e12f76f9dd9011eac3f8ee591c3a7e82856a1373664e018f46476b3fbacea60cd122fcb4c1ee8db06a85ade66a37c8f7 SHA512 e563ad008eaf4c3c2a2d614aa705825383b69cedf52bf0e98d28f4b89f0c3b5df41ad10c4fc86bac35834d794143f3c55118285135693042762053bdc895a9d6 -DIST btrfs-progs-v6.16.1.tar.xz 4953240 BLAKE2B 4d734022ddf3ff49a9a409ef387566a0e95bed22d2f2a3517e75e1c53083cd99e78da14afacc55cf49279c4dcdd718a9252ced52b280740f241c9526e21b3561 SHA512 55348627bdc3a0bcf6202ed352c539a9318328b2b9e0ab95526f34dff203d2abb66d70d4620122a6f90b7c1ccb7c646d297be3f6047a14144c867bae0cdc13d4 -DIST btrfs-progs-v6.16.tar.sign 566 BLAKE2B 80e30440ac59c034fd4d9d9cec7a5ddd1fd9533e350066d3c92d276e97023ba12b83daa98bb87065ea93a3651a6b51d4195d3cb89f8dae43986674434dffab7e SHA512 21f134616f91e7cf2e863908ae9793c7561f24985ec879056d7dddf6ae3b0766ae83bd5205dc12633b215cae1cce177bb9b8c39c84909fbaf53624b44d3e2dc7 -DIST btrfs-progs-v6.16.tar.xz 4949180 BLAKE2B 375c60a93bc5b62d7c3a94d5ed108b81786b27f2beba27d85bcede94a892d84e71b1fe00a1574cc53066fe77bb37408b2b382db4a1664fefcc676c1c3efa1c60 SHA512 b7b89c9f6855f48a369bfcaf647b50cd41fbd6b11e9017a57eace36917c0daec14d93946121640728e0dfcda74941f28f9c31abf694313cb5134156a2c1907f7 DIST btrfs-progs-v6.17.1.tar.sign 566 BLAKE2B 0313dce425d84f16eb64085f4144bcfc21172f96223de0a36d78a8dc5f4da4d0ff5b2453961c99607426ce412a3f0d7acfc205788e897684b68d7da5758e339d SHA512 39dabbc3546e32468ae71b5d83606aabc38d9ef1996e1c40d8b5976cd4924b4877c373e05888b284988e35d5b363801f0c67f93ae43d907cba76dff145fc9f7b DIST btrfs-progs-v6.17.1.tar.xz 4964964 BLAKE2B 6340fb5f87d3dcf9598785fbb00ccd2278e268c1b798a1013ede9d25fc8e2005376c2333c84befcf95ec9ae2b7e75562750a2bf8fbfc7bbf966d713e1feb5818 SHA512 7723dd924025e7d6d6cfa081dcbe86bfe86cc6f226c8eb7317d86871864807257bd96c19c715b819e76125b33b90100f6897f4eb665d8414f30a3aa7a5aba631 -DIST btrfs-progs-v6.17.tar.sign 566 BLAKE2B 9c21f8c001cb9d80c84e42e751ca77713caf25e8b38888c67a4175e45b5d95c58128f7b7d112fed1f694e9eb077d97f6187b6f4e58d4a346dab156949055844a SHA512 e278efedabb51e8522f562f52aa2666727904775625b17e280ea7ded5563620a4a50aad57b165ab53af7594214070472bd2e0692ff1ca8aef76bcc6574d3f365 -DIST btrfs-progs-v6.17.tar.xz 4962800 BLAKE2B 301409e4f0e17c25620070bab0aedc1e57ad672bc7b4e4c1f9db2cd34c6104667800df2979ff456554c94e415be649dd7b8f43859d6539f84a1c050c2db27dd4 SHA512 f8b39f66c4bf7cdaa8eee471f473eb88415435d309da45d45267ecd8d9e401367de881259c038fbc03a57bb661991d11ae74e8409b382dcd5ef98c66811a798a +DIST btrfs-progs-v6.19.tar.sign 566 BLAKE2B 04a10b6df9149fe1cac4b5162b6d03f0de4f213f624bf188698445de86d73bb64142ecc9b3d9c9120d457d84cf1fb12a08283ab56026babdba18a2c64eb83fc9 SHA512 00ff5b059092c7475bec698571d9b010c00e1bbd55305982b9528c0120d027d72162c6c9829aa0251e973d6897706164f3d188353762dff743bae77832ea5067 +DIST btrfs-progs-v6.19.tar.xz 5816796 BLAKE2B a2deec1d1f9528f8e1e07f44dc6afda537ef6490ba4de6773906b42d2e3b5917fc6b92f650f24a502a7d8b6487dc07528d61a46b2b3bc422158ff3fe9deb204f SHA512 6cd5bb863c164a11d999be7aec15441ac8ab91f1e4da2cd6355781edd5251c7fcd4639bacfe7014c8dc260fb02505374fc4c82140418b769fbe14f889fc03ce9 diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.12.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.12.ebuild deleted file mode 100644 index b2b5c08ab17..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.12.ebuild +++ /dev/null @@ -1,188 +0,0 @@ -# Copyright 2008-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with dev-python/btrfsutil - -PYTHON_COMPAT=( python3_{10..13} ) -inherit bash-completion-r1 python-any-r1 udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://github.com/kdave/btrfs-progs.git" - EGIT_BRANCH="devel" - WANT_LIBTOOL="none" - inherit autotools git-r3 -else - VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/dsterba.asc - inherit verify-sig - - MY_PV="v${PV/_/-}" - MY_P="${PN}-${MY_PV}" - SRC_URI=" - https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.xz - verify-sig? ( https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.sign ) - " - S="${WORKDIR}"/${PN}-${MY_PV} - - if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" - fi -fi - -DESCRIPTION="Btrfs filesystem utilities" -HOMEPAGE="https://btrfs.readthedocs.io/en/latest/" - -LICENSE="GPL-2" -SLOT="0/0" # libbtrfs soname -IUSE="+convert +man experimental reiserfs static static-libs udev +zstd" -# Could support it with just !systemd => eudev, see mdadm, but let's -# see if someone asks for it first. -REQUIRED_USE="static? ( !udev )" - -# Tries to mount repaired filesystems -RESTRICT="test" - -RDEPEND=" - dev-libs/lzo:2= - sys-apps/util-linux:=[static-libs(+)?] - virtual/zlib:= - convert? ( - sys-fs/e2fsprogs:= - reiserfs? ( - >=sys-fs/reiserfsprogs-3.6.27 - ) - ) - udev? ( virtual/libudev:= ) - zstd? ( app-arch/zstd:= ) -" -DEPEND=" - ${RDEPEND} - >=sys-kernel/linux-headers-5.10 - convert? ( sys-apps/acl ) - static? ( - dev-libs/lzo:2[static-libs(+)] - sys-apps/util-linux:0[static-libs(+)] - virtual/zlib:=[static-libs(+)] - convert? ( - sys-fs/e2fsprogs[static-libs(+)] - reiserfs? ( - >=sys-fs/reiserfsprogs-3.6.27[static-libs(+)] - ) - ) - zstd? ( app-arch/zstd[static-libs(+)] ) - ) -" -BDEPEND=" - virtual/pkgconfig - man? ( - $(python_gen_any_dep 'dev-python/sphinx[${PYTHON_USEDEP}] - dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]') - ) -" - -python_check_deps() { - python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]" && - python_has_version "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]" -} - -if [[ ${PV} == 9999 ]]; then - BDEPEND+=" sys-devel/gnuconfig" -else - BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-dsterba )" -fi - -pkg_setup() { - : # Prevent python-any-r1_python_setup -} - -if [[ ${PV} != 9999 ]]; then - src_unpack() { - # Upstream sign the decompressed .tar - if use verify-sig; then - einfo "Unpacking ${MY_P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${MY_P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" - else - default - fi - } -fi - -src_prepare() { - default - - if [[ ${PV} == 9999 ]]; then - local AT_M4DIR=config - eautoreconf - - local automakedir="$(autotools_run_tool --at-output automake --print-libdir)" - [[ -e ${automakedir} ]] || die "Could not locate automake directory" - - ln -s "${automakedir}"/install-sh config/install-sh || die - ln -s "${BROOT}"/usr/share/gnuconfig/config.guess config/config.guess || die - ln -s "${BROOT}"/usr/share/gnuconfig/config.sub config/config.sub || die - fi -} - -src_configure() { - local myeconfargs=( - --bindir="${EPREFIX}"/sbin - - --enable-lzo - $(use_enable experimental) - --disable-python - $(use_enable convert) - $(use_enable man documentation) - $(use_enable elibc_glibc backtrace) - $(use_enable static-libs static) - $(use_enable udev libudev) - $(use_enable zstd) - - # Could support libgcrypt, libsodium, libkcapi, openssl, botan - --with-crypto=builtin - --with-convert=ext2$(usev reiserfs ',reiserfs') - ) - - export EXTRA_PYTHON_CFLAGS="${CFLAGS}" - export EXTRA_PYTHON_LDFLAGS="${LDFLAGS}" - - if use man; then - python_setup - fi - - # bash as a temporary workaround for https://github.com/kdave/btrfs-progs/pull/721 - CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}" -} - -src_compile() { - emake V=1 all $(usev static) -} - -src_test() { - emake V=1 -j1 -C tests test -} - -src_install() { - local makeargs=( - $(usev static install-static) - ) - - emake V=1 DESTDIR="${D}" install "${makeargs[@]}" - - if use experimental; then - exeinto /sbin - doexe btrfs-corrupt-block - fi - - newbashcomp btrfs-completion btrfs -} - -pkg_postinst() { - udev_reload -} - -pkg_postrm() { - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.13.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.13.ebuild deleted file mode 100644 index b2b5c08ab17..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.13.ebuild +++ /dev/null @@ -1,188 +0,0 @@ -# Copyright 2008-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with dev-python/btrfsutil - -PYTHON_COMPAT=( python3_{10..13} ) -inherit bash-completion-r1 python-any-r1 udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://github.com/kdave/btrfs-progs.git" - EGIT_BRANCH="devel" - WANT_LIBTOOL="none" - inherit autotools git-r3 -else - VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/dsterba.asc - inherit verify-sig - - MY_PV="v${PV/_/-}" - MY_P="${PN}-${MY_PV}" - SRC_URI=" - https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.xz - verify-sig? ( https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.sign ) - " - S="${WORKDIR}"/${PN}-${MY_PV} - - if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" - fi -fi - -DESCRIPTION="Btrfs filesystem utilities" -HOMEPAGE="https://btrfs.readthedocs.io/en/latest/" - -LICENSE="GPL-2" -SLOT="0/0" # libbtrfs soname -IUSE="+convert +man experimental reiserfs static static-libs udev +zstd" -# Could support it with just !systemd => eudev, see mdadm, but let's -# see if someone asks for it first. -REQUIRED_USE="static? ( !udev )" - -# Tries to mount repaired filesystems -RESTRICT="test" - -RDEPEND=" - dev-libs/lzo:2= - sys-apps/util-linux:=[static-libs(+)?] - virtual/zlib:= - convert? ( - sys-fs/e2fsprogs:= - reiserfs? ( - >=sys-fs/reiserfsprogs-3.6.27 - ) - ) - udev? ( virtual/libudev:= ) - zstd? ( app-arch/zstd:= ) -" -DEPEND=" - ${RDEPEND} - >=sys-kernel/linux-headers-5.10 - convert? ( sys-apps/acl ) - static? ( - dev-libs/lzo:2[static-libs(+)] - sys-apps/util-linux:0[static-libs(+)] - virtual/zlib:=[static-libs(+)] - convert? ( - sys-fs/e2fsprogs[static-libs(+)] - reiserfs? ( - >=sys-fs/reiserfsprogs-3.6.27[static-libs(+)] - ) - ) - zstd? ( app-arch/zstd[static-libs(+)] ) - ) -" -BDEPEND=" - virtual/pkgconfig - man? ( - $(python_gen_any_dep 'dev-python/sphinx[${PYTHON_USEDEP}] - dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]') - ) -" - -python_check_deps() { - python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]" && - python_has_version "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]" -} - -if [[ ${PV} == 9999 ]]; then - BDEPEND+=" sys-devel/gnuconfig" -else - BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-dsterba )" -fi - -pkg_setup() { - : # Prevent python-any-r1_python_setup -} - -if [[ ${PV} != 9999 ]]; then - src_unpack() { - # Upstream sign the decompressed .tar - if use verify-sig; then - einfo "Unpacking ${MY_P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${MY_P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" - else - default - fi - } -fi - -src_prepare() { - default - - if [[ ${PV} == 9999 ]]; then - local AT_M4DIR=config - eautoreconf - - local automakedir="$(autotools_run_tool --at-output automake --print-libdir)" - [[ -e ${automakedir} ]] || die "Could not locate automake directory" - - ln -s "${automakedir}"/install-sh config/install-sh || die - ln -s "${BROOT}"/usr/share/gnuconfig/config.guess config/config.guess || die - ln -s "${BROOT}"/usr/share/gnuconfig/config.sub config/config.sub || die - fi -} - -src_configure() { - local myeconfargs=( - --bindir="${EPREFIX}"/sbin - - --enable-lzo - $(use_enable experimental) - --disable-python - $(use_enable convert) - $(use_enable man documentation) - $(use_enable elibc_glibc backtrace) - $(use_enable static-libs static) - $(use_enable udev libudev) - $(use_enable zstd) - - # Could support libgcrypt, libsodium, libkcapi, openssl, botan - --with-crypto=builtin - --with-convert=ext2$(usev reiserfs ',reiserfs') - ) - - export EXTRA_PYTHON_CFLAGS="${CFLAGS}" - export EXTRA_PYTHON_LDFLAGS="${LDFLAGS}" - - if use man; then - python_setup - fi - - # bash as a temporary workaround for https://github.com/kdave/btrfs-progs/pull/721 - CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}" -} - -src_compile() { - emake V=1 all $(usev static) -} - -src_test() { - emake V=1 -j1 -C tests test -} - -src_install() { - local makeargs=( - $(usev static install-static) - ) - - emake V=1 DESTDIR="${D}" install "${makeargs[@]}" - - if use experimental; then - exeinto /sbin - doexe btrfs-corrupt-block - fi - - newbashcomp btrfs-completion btrfs -} - -pkg_postinst() { - udev_reload -} - -pkg_postrm() { - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.14.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.14.ebuild deleted file mode 100644 index 79d05737589..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.14.ebuild +++ /dev/null @@ -1,188 +0,0 @@ -# Copyright 2008-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with dev-python/btrfsutil - -PYTHON_COMPAT=( python3_{11..13} ) -inherit bash-completion-r1 python-any-r1 udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://github.com/kdave/btrfs-progs.git" - EGIT_BRANCH="devel" - WANT_LIBTOOL="none" - inherit autotools git-r3 -else - VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/dsterba.asc - inherit verify-sig - - MY_PV="v${PV/_/-}" - MY_P="${PN}-${MY_PV}" - SRC_URI=" - https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.xz - verify-sig? ( https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.sign ) - " - S="${WORKDIR}"/${PN}-${MY_PV} - - if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" - fi -fi - -DESCRIPTION="Btrfs filesystem utilities" -HOMEPAGE="https://btrfs.readthedocs.io/en/latest/" - -LICENSE="GPL-2" -SLOT="0/0" # libbtrfs soname -IUSE="+convert +man experimental reiserfs static static-libs udev +zstd" -# Could support it with just !systemd => eudev, see mdadm, but let's -# see if someone asks for it first. -REQUIRED_USE="static? ( !udev )" - -# Tries to mount repaired filesystems -RESTRICT="test" - -RDEPEND=" - dev-libs/lzo:2= - sys-apps/util-linux:=[static-libs(+)?] - virtual/zlib:= - convert? ( - sys-fs/e2fsprogs:= - reiserfs? ( - >=sys-fs/reiserfsprogs-3.6.27 - ) - ) - udev? ( virtual/libudev:= ) - zstd? ( app-arch/zstd:= ) -" -DEPEND=" - ${RDEPEND} - >=sys-kernel/linux-headers-5.10 - convert? ( sys-apps/acl ) - static? ( - dev-libs/lzo:2[static-libs(+)] - sys-apps/util-linux:0[static-libs(+)] - virtual/zlib:=[static-libs(+)] - convert? ( - sys-fs/e2fsprogs[static-libs(+)] - reiserfs? ( - >=sys-fs/reiserfsprogs-3.6.27[static-libs(+)] - ) - ) - zstd? ( app-arch/zstd[static-libs(+)] ) - ) -" -BDEPEND=" - virtual/pkgconfig - man? ( - $(python_gen_any_dep 'dev-python/sphinx[${PYTHON_USEDEP}] - dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]') - ) -" - -python_check_deps() { - python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]" && - python_has_version "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]" -} - -if [[ ${PV} == 9999 ]]; then - BDEPEND+=" sys-devel/gnuconfig" -else - BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-dsterba )" -fi - -pkg_setup() { - : # Prevent python-any-r1_python_setup -} - -if [[ ${PV} != 9999 ]]; then - src_unpack() { - # Upstream sign the decompressed .tar - if use verify-sig; then - einfo "Unpacking ${MY_P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${MY_P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" - else - default - fi - } -fi - -src_prepare() { - default - - if [[ ${PV} == 9999 ]]; then - local AT_M4DIR=config - eautoreconf - - local automakedir="$(autotools_run_tool --at-output automake --print-libdir)" - [[ -e ${automakedir} ]] || die "Could not locate automake directory" - - ln -s "${automakedir}"/install-sh config/install-sh || die - ln -s "${BROOT}"/usr/share/gnuconfig/config.guess config/config.guess || die - ln -s "${BROOT}"/usr/share/gnuconfig/config.sub config/config.sub || die - fi -} - -src_configure() { - local myeconfargs=( - --bindir="${EPREFIX}"/sbin - - --enable-lzo - $(use_enable experimental) - --disable-python - $(use_enable convert) - $(use_enable man documentation) - $(use_enable elibc_glibc backtrace) - $(use_enable static-libs static) - $(use_enable udev libudev) - $(use_enable zstd) - - # Could support libgcrypt, libsodium, libkcapi, openssl, botan - --with-crypto=builtin - --with-convert=ext2$(usev reiserfs ',reiserfs') - ) - - export EXTRA_PYTHON_CFLAGS="${CFLAGS}" - export EXTRA_PYTHON_LDFLAGS="${LDFLAGS}" - - if use man; then - python_setup - fi - - # bash as a temporary workaround for https://github.com/kdave/btrfs-progs/pull/721 - CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}" -} - -src_compile() { - emake V=1 all $(usev static) -} - -src_test() { - emake V=1 -j1 -C tests test -} - -src_install() { - local makeargs=( - $(usev static install-static) - ) - - emake V=1 DESTDIR="${D}" install "${makeargs[@]}" - - if use experimental; then - exeinto /sbin - doexe btrfs-corrupt-block - fi - - newbashcomp btrfs-completion btrfs -} - -pkg_postinst() { - udev_reload -} - -pkg_postrm() { - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.15.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.15.ebuild deleted file mode 100644 index 527c906b2c0..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.15.ebuild +++ /dev/null @@ -1,188 +0,0 @@ -# Copyright 2008-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with dev-python/btrfsutil - -PYTHON_COMPAT=( python3_{11..14} ) -inherit bash-completion-r1 python-any-r1 udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://github.com/kdave/btrfs-progs.git" - EGIT_BRANCH="devel" - WANT_LIBTOOL="none" - inherit autotools git-r3 -else - VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/dsterba.asc - inherit verify-sig - - MY_PV="v${PV/_/-}" - MY_P="${PN}-${MY_PV}" - SRC_URI=" - https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.xz - verify-sig? ( https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.sign ) - " - S="${WORKDIR}"/${PN}-${MY_PV} - - if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" - fi -fi - -DESCRIPTION="Btrfs filesystem utilities" -HOMEPAGE="https://btrfs.readthedocs.io/en/latest/" - -LICENSE="GPL-2" -SLOT="0/0" # libbtrfs soname -IUSE="+convert +man experimental reiserfs static static-libs udev +zstd" -# Could support it with just !systemd => eudev, see mdadm, but let's -# see if someone asks for it first. -REQUIRED_USE="static? ( !udev )" - -# Tries to mount repaired filesystems -RESTRICT="test" - -RDEPEND=" - dev-libs/lzo:2= - sys-apps/util-linux:=[static-libs(+)?] - virtual/zlib:= - convert? ( - sys-fs/e2fsprogs:= - reiserfs? ( - >=sys-fs/reiserfsprogs-3.6.27 - ) - ) - udev? ( virtual/libudev:= ) - zstd? ( app-arch/zstd:= ) -" -DEPEND=" - ${RDEPEND} - >=sys-kernel/linux-headers-5.10 - convert? ( sys-apps/acl ) - static? ( - dev-libs/lzo:2[static-libs(+)] - sys-apps/util-linux:0[static-libs(+)] - virtual/zlib:=[static-libs(+)] - convert? ( - sys-fs/e2fsprogs[static-libs(+)] - reiserfs? ( - >=sys-fs/reiserfsprogs-3.6.27[static-libs(+)] - ) - ) - zstd? ( app-arch/zstd[static-libs(+)] ) - ) -" -BDEPEND=" - virtual/pkgconfig - man? ( - $(python_gen_any_dep 'dev-python/sphinx[${PYTHON_USEDEP}] - dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]') - ) -" - -python_check_deps() { - python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]" && - python_has_version "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]" -} - -if [[ ${PV} == 9999 ]]; then - BDEPEND+=" sys-devel/gnuconfig" -else - BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-dsterba )" -fi - -pkg_setup() { - : # Prevent python-any-r1_python_setup -} - -if [[ ${PV} != 9999 ]]; then - src_unpack() { - # Upstream sign the decompressed .tar - if use verify-sig; then - einfo "Unpacking ${MY_P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${MY_P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" - else - default - fi - } -fi - -src_prepare() { - default - - if [[ ${PV} == 9999 ]]; then - local AT_M4DIR=config - eautoreconf - - local automakedir="$(autotools_run_tool --at-output automake --print-libdir)" - [[ -e ${automakedir} ]] || die "Could not locate automake directory" - - ln -s "${automakedir}"/install-sh config/install-sh || die - ln -s "${BROOT}"/usr/share/gnuconfig/config.guess config/config.guess || die - ln -s "${BROOT}"/usr/share/gnuconfig/config.sub config/config.sub || die - fi -} - -src_configure() { - local myeconfargs=( - --bindir="${EPREFIX}"/sbin - - --enable-lzo - $(use_enable experimental) - --disable-python - $(use_enable convert) - $(use_enable man documentation) - $(use_enable elibc_glibc backtrace) - $(use_enable static-libs static) - $(use_enable udev libudev) - $(use_enable zstd) - - # Could support libgcrypt, libsodium, libkcapi, openssl, botan - --with-crypto=builtin - --with-convert=ext2$(usev reiserfs ',reiserfs') - ) - - export EXTRA_PYTHON_CFLAGS="${CFLAGS}" - export EXTRA_PYTHON_LDFLAGS="${LDFLAGS}" - - if use man; then - python_setup - fi - - # bash as a temporary workaround for https://github.com/kdave/btrfs-progs/pull/721 - CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}" -} - -src_compile() { - emake V=1 all $(usev static) -} - -src_test() { - emake V=1 -j1 -C tests test -} - -src_install() { - local makeargs=( - $(usev static install-static) - ) - - emake V=1 DESTDIR="${D}" install "${makeargs[@]}" - - if use experimental; then - exeinto /sbin - doexe btrfs-corrupt-block - fi - - newbashcomp btrfs-completion btrfs -} - -pkg_postinst() { - udev_reload -} - -pkg_postrm() { - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.16.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.16.ebuild deleted file mode 100644 index 527c906b2c0..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.16.ebuild +++ /dev/null @@ -1,188 +0,0 @@ -# Copyright 2008-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with dev-python/btrfsutil - -PYTHON_COMPAT=( python3_{11..14} ) -inherit bash-completion-r1 python-any-r1 udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://github.com/kdave/btrfs-progs.git" - EGIT_BRANCH="devel" - WANT_LIBTOOL="none" - inherit autotools git-r3 -else - VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/dsterba.asc - inherit verify-sig - - MY_PV="v${PV/_/-}" - MY_P="${PN}-${MY_PV}" - SRC_URI=" - https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.xz - verify-sig? ( https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.sign ) - " - S="${WORKDIR}"/${PN}-${MY_PV} - - if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" - fi -fi - -DESCRIPTION="Btrfs filesystem utilities" -HOMEPAGE="https://btrfs.readthedocs.io/en/latest/" - -LICENSE="GPL-2" -SLOT="0/0" # libbtrfs soname -IUSE="+convert +man experimental reiserfs static static-libs udev +zstd" -# Could support it with just !systemd => eudev, see mdadm, but let's -# see if someone asks for it first. -REQUIRED_USE="static? ( !udev )" - -# Tries to mount repaired filesystems -RESTRICT="test" - -RDEPEND=" - dev-libs/lzo:2= - sys-apps/util-linux:=[static-libs(+)?] - virtual/zlib:= - convert? ( - sys-fs/e2fsprogs:= - reiserfs? ( - >=sys-fs/reiserfsprogs-3.6.27 - ) - ) - udev? ( virtual/libudev:= ) - zstd? ( app-arch/zstd:= ) -" -DEPEND=" - ${RDEPEND} - >=sys-kernel/linux-headers-5.10 - convert? ( sys-apps/acl ) - static? ( - dev-libs/lzo:2[static-libs(+)] - sys-apps/util-linux:0[static-libs(+)] - virtual/zlib:=[static-libs(+)] - convert? ( - sys-fs/e2fsprogs[static-libs(+)] - reiserfs? ( - >=sys-fs/reiserfsprogs-3.6.27[static-libs(+)] - ) - ) - zstd? ( app-arch/zstd[static-libs(+)] ) - ) -" -BDEPEND=" - virtual/pkgconfig - man? ( - $(python_gen_any_dep 'dev-python/sphinx[${PYTHON_USEDEP}] - dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]') - ) -" - -python_check_deps() { - python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]" && - python_has_version "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]" -} - -if [[ ${PV} == 9999 ]]; then - BDEPEND+=" sys-devel/gnuconfig" -else - BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-dsterba )" -fi - -pkg_setup() { - : # Prevent python-any-r1_python_setup -} - -if [[ ${PV} != 9999 ]]; then - src_unpack() { - # Upstream sign the decompressed .tar - if use verify-sig; then - einfo "Unpacking ${MY_P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${MY_P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" - else - default - fi - } -fi - -src_prepare() { - default - - if [[ ${PV} == 9999 ]]; then - local AT_M4DIR=config - eautoreconf - - local automakedir="$(autotools_run_tool --at-output automake --print-libdir)" - [[ -e ${automakedir} ]] || die "Could not locate automake directory" - - ln -s "${automakedir}"/install-sh config/install-sh || die - ln -s "${BROOT}"/usr/share/gnuconfig/config.guess config/config.guess || die - ln -s "${BROOT}"/usr/share/gnuconfig/config.sub config/config.sub || die - fi -} - -src_configure() { - local myeconfargs=( - --bindir="${EPREFIX}"/sbin - - --enable-lzo - $(use_enable experimental) - --disable-python - $(use_enable convert) - $(use_enable man documentation) - $(use_enable elibc_glibc backtrace) - $(use_enable static-libs static) - $(use_enable udev libudev) - $(use_enable zstd) - - # Could support libgcrypt, libsodium, libkcapi, openssl, botan - --with-crypto=builtin - --with-convert=ext2$(usev reiserfs ',reiserfs') - ) - - export EXTRA_PYTHON_CFLAGS="${CFLAGS}" - export EXTRA_PYTHON_LDFLAGS="${LDFLAGS}" - - if use man; then - python_setup - fi - - # bash as a temporary workaround for https://github.com/kdave/btrfs-progs/pull/721 - CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}" -} - -src_compile() { - emake V=1 all $(usev static) -} - -src_test() { - emake V=1 -j1 -C tests test -} - -src_install() { - local makeargs=( - $(usev static install-static) - ) - - emake V=1 DESTDIR="${D}" install "${makeargs[@]}" - - if use experimental; then - exeinto /sbin - doexe btrfs-corrupt-block - fi - - newbashcomp btrfs-completion btrfs -} - -pkg_postinst() { - udev_reload -} - -pkg_postrm() { - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.17.1.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.17.1.ebuild index 527c906b2c0..ccb1ef7764c 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.17.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.17.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 2008-2025 Gentoo Authors +# Copyright 2008-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -98,12 +98,9 @@ pkg_setup() { if [[ ${PV} != 9999 ]]; then src_unpack() { - # Upstream sign the decompressed .tar if use verify-sig; then - einfo "Unpacking ${MY_P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${MY_P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" + verify-sig_uncompress_verify_unpack "${DISTDIR}"/${MY_P}.tar.xz \ + "${DISTDIR}"/${MY_P}.tar.sign else default fi @@ -152,8 +149,7 @@ src_configure() { python_setup fi - # bash as a temporary workaround for https://github.com/kdave/btrfs-progs/pull/721 - CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}" + econf "${myeconfargs[@]}" } src_compile() { diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.17.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.17.ebuild deleted file mode 100644 index 527c906b2c0..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.17.ebuild +++ /dev/null @@ -1,188 +0,0 @@ -# Copyright 2008-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with dev-python/btrfsutil - -PYTHON_COMPAT=( python3_{11..14} ) -inherit bash-completion-r1 python-any-r1 udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://github.com/kdave/btrfs-progs.git" - EGIT_BRANCH="devel" - WANT_LIBTOOL="none" - inherit autotools git-r3 -else - VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/dsterba.asc - inherit verify-sig - - MY_PV="v${PV/_/-}" - MY_P="${PN}-${MY_PV}" - SRC_URI=" - https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.xz - verify-sig? ( https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.sign ) - " - S="${WORKDIR}"/${PN}-${MY_PV} - - if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" - fi -fi - -DESCRIPTION="Btrfs filesystem utilities" -HOMEPAGE="https://btrfs.readthedocs.io/en/latest/" - -LICENSE="GPL-2" -SLOT="0/0" # libbtrfs soname -IUSE="+convert +man experimental reiserfs static static-libs udev +zstd" -# Could support it with just !systemd => eudev, see mdadm, but let's -# see if someone asks for it first. -REQUIRED_USE="static? ( !udev )" - -# Tries to mount repaired filesystems -RESTRICT="test" - -RDEPEND=" - dev-libs/lzo:2= - sys-apps/util-linux:=[static-libs(+)?] - virtual/zlib:= - convert? ( - sys-fs/e2fsprogs:= - reiserfs? ( - >=sys-fs/reiserfsprogs-3.6.27 - ) - ) - udev? ( virtual/libudev:= ) - zstd? ( app-arch/zstd:= ) -" -DEPEND=" - ${RDEPEND} - >=sys-kernel/linux-headers-5.10 - convert? ( sys-apps/acl ) - static? ( - dev-libs/lzo:2[static-libs(+)] - sys-apps/util-linux:0[static-libs(+)] - virtual/zlib:=[static-libs(+)] - convert? ( - sys-fs/e2fsprogs[static-libs(+)] - reiserfs? ( - >=sys-fs/reiserfsprogs-3.6.27[static-libs(+)] - ) - ) - zstd? ( app-arch/zstd[static-libs(+)] ) - ) -" -BDEPEND=" - virtual/pkgconfig - man? ( - $(python_gen_any_dep 'dev-python/sphinx[${PYTHON_USEDEP}] - dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]') - ) -" - -python_check_deps() { - python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]" && - python_has_version "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]" -} - -if [[ ${PV} == 9999 ]]; then - BDEPEND+=" sys-devel/gnuconfig" -else - BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-dsterba )" -fi - -pkg_setup() { - : # Prevent python-any-r1_python_setup -} - -if [[ ${PV} != 9999 ]]; then - src_unpack() { - # Upstream sign the decompressed .tar - if use verify-sig; then - einfo "Unpacking ${MY_P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${MY_P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" - else - default - fi - } -fi - -src_prepare() { - default - - if [[ ${PV} == 9999 ]]; then - local AT_M4DIR=config - eautoreconf - - local automakedir="$(autotools_run_tool --at-output automake --print-libdir)" - [[ -e ${automakedir} ]] || die "Could not locate automake directory" - - ln -s "${automakedir}"/install-sh config/install-sh || die - ln -s "${BROOT}"/usr/share/gnuconfig/config.guess config/config.guess || die - ln -s "${BROOT}"/usr/share/gnuconfig/config.sub config/config.sub || die - fi -} - -src_configure() { - local myeconfargs=( - --bindir="${EPREFIX}"/sbin - - --enable-lzo - $(use_enable experimental) - --disable-python - $(use_enable convert) - $(use_enable man documentation) - $(use_enable elibc_glibc backtrace) - $(use_enable static-libs static) - $(use_enable udev libudev) - $(use_enable zstd) - - # Could support libgcrypt, libsodium, libkcapi, openssl, botan - --with-crypto=builtin - --with-convert=ext2$(usev reiserfs ',reiserfs') - ) - - export EXTRA_PYTHON_CFLAGS="${CFLAGS}" - export EXTRA_PYTHON_LDFLAGS="${LDFLAGS}" - - if use man; then - python_setup - fi - - # bash as a temporary workaround for https://github.com/kdave/btrfs-progs/pull/721 - CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}" -} - -src_compile() { - emake V=1 all $(usev static) -} - -src_test() { - emake V=1 -j1 -C tests test -} - -src_install() { - local makeargs=( - $(usev static install-static) - ) - - emake V=1 DESTDIR="${D}" install "${makeargs[@]}" - - if use experimental; then - exeinto /sbin - doexe btrfs-corrupt-block - fi - - newbashcomp btrfs-completion btrfs -} - -pkg_postinst() { - udev_reload -} - -pkg_postrm() { - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.16.1.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.19.ebuild similarity index 88% rename from sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.16.1.ebuild rename to sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.19.ebuild index 527c906b2c0..711f1d01589 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.16.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-6.19.ebuild @@ -1,4 +1,4 @@ -# Copyright 2008-2025 Gentoo Authors +# Copyright 2008-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -26,7 +26,7 @@ else S="${WORKDIR}"/${PN}-${MY_PV} if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" fi fi @@ -98,12 +98,9 @@ pkg_setup() { if [[ ${PV} != 9999 ]]; then src_unpack() { - # Upstream sign the decompressed .tar if use verify-sig; then - einfo "Unpacking ${MY_P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${MY_P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" + verify-sig_uncompress_verify_unpack "${DISTDIR}"/${MY_P}.tar.xz \ + "${DISTDIR}"/${MY_P}.tar.sign else default fi @@ -152,8 +149,7 @@ src_configure() { python_setup fi - # bash as a temporary workaround for https://github.com/kdave/btrfs-progs/pull/721 - CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}" + econf "${myeconfargs[@]}" } src_compile() { diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-9999.ebuild index ad1b1253f16..711f1d01589 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/btrfs-progs/btrfs-progs-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 2008-2025 Gentoo Authors +# Copyright 2008-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -98,12 +98,9 @@ pkg_setup() { if [[ ${PV} != 9999 ]]; then src_unpack() { - # Upstream sign the decompressed .tar if use verify-sig; then - einfo "Unpacking ${MY_P}.tar.xz ..." - verify-sig_verify_detached - "${DISTDIR}"/${MY_P}.tar.sign \ - < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee >(tar -xf -)) - assert "Unpack failed" + verify-sig_uncompress_verify_unpack "${DISTDIR}"/${MY_P}.tar.xz \ + "${DISTDIR}"/${MY_P}.tar.sign else default fi @@ -152,8 +149,7 @@ src_configure() { python_setup fi - # bash as a temporary workaround for https://github.com/kdave/btrfs-progs/pull/721 - CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}" + econf "${myeconfargs[@]}" } src_compile() { From 07eb11e17782b5bd77ccfb1cf4cc823341786894 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:49 +0000 Subject: [PATCH 227/291] sys-fs/cryptsetup: Sync with Gentoo It's from Gentoo commit f73db21d04fa213827d9e93a621be66c1dced8d8. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-fs/cryptsetup/Manifest | 4 +- ...1-r1.ebuild => cryptsetup-2.8.3-r1.ebuild} | 24 ++++++++-- ...p-2.8.3.ebuild => cryptsetup-2.8.4.ebuild} | 20 +++++++-- .../files/cryptsetup-2.8.3-bitlocker.patch | 45 +++++++++++++++++++ 4 files changed, 86 insertions(+), 7 deletions(-) rename sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/{cryptsetup-2.8.1-r1.ebuild => cryptsetup-2.8.3-r1.ebuild} (87%) rename sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/{cryptsetup-2.8.3.ebuild => cryptsetup-2.8.4.ebuild} (88%) create mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/files/cryptsetup-2.8.3-bitlocker.patch diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/Manifest b/sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/Manifest index fe76a92b75b..4d53fded063 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/Manifest @@ -1,2 +1,4 @@ -DIST cryptsetup-2.8.1.tar.xz 11821036 BLAKE2B 148ff29e94c77abf66b3ebf1a6c291031a786dc2ccb23a3ccd6b816711aac56d64743b709ca6ed4378bf55946cd2c67ba300ed4b7ad831c341fcb37d580efaa5 SHA512 a5171e18c55bfbc57330f2d46ab06b5ac6957392a77aef74c3d1c5295eb39962d1db19ddd3420ea1154d730b361d09e72bf5315c7a3d56eb36cee9c2531bca5d +DIST cryptsetup-2.8.3.tar.sign 833 BLAKE2B f03bb85dfdcc3b22ab7141478fb289fb6ff8bc2000da62a952266e47e894b611439f32456db7fb0340f124af33e05932f4ebeae1b4f985e8cb42ed58302d5f67 SHA512 893215ec657b73608ff7d97313b4f0b56126ee20a9f7cd2d5c69b844dac06a3ac5cdac470b358d3920c51afd72047012948b71200b8b2d4f437856657f82d37a DIST cryptsetup-2.8.3.tar.xz 11863620 BLAKE2B 9559fb8cd0d916903c0e491c14f8d30a156672313065f4d58ca02a67293288831e6b5d12e843ae607c604d6a08bed46da887308a9ff87413e413b1cf7756810d SHA512 6aaf5a7e6d716e581b50fce417dad079022ff15d54e8a93697888b030b8defa03a39fd94725c3a8692cd07147573bd7f1c3c41571c488aabd44e4f9def9673e2 +DIST cryptsetup-2.8.4.tar.sign 833 BLAKE2B 22264d6a314cb14cabf1614225cc339261ec7dc44c280547a00ee552f6723243591260e0aa793330f4a2a8460840e687847d08923ab3abfea2e11d81a8e3e805 SHA512 b568ea6272960f186c83247c95c666355c44deb9be7508202ec56d0bca8dcfe660ef175f0f0792ebf9c1219f15cd3f24536dffff5e131142c1ead408a5350274 +DIST cryptsetup-2.8.4.tar.xz 11880632 BLAKE2B 135721fe1daca13bf5c1116dfe9888d50e617d06f8c2c3cff60bb76ab9d2ef4f91524d8c4185c5f673290b5a7f9dcd83b9ab9c25112500fea9100e30d8a8caf0 SHA512 cf9923552f93d3ca047fa17e2d73923b782e0f5146d9721fb8e1196374185524c2642c1243ea72107aef03a0b0b9d967576a58b1a680dd9b6a17dbf4a4430489 diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/cryptsetup-2.8.1-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/cryptsetup-2.8.3-r1.ebuild similarity index 87% rename from sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/cryptsetup-2.8.1-r1.ebuild rename to sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/cryptsetup-2.8.3-r1.ebuild index 8f113c0e667..0c090816027 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/cryptsetup-2.8.1-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/cryptsetup-2.8.3-r1.ebuild @@ -1,14 +1,18 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 # TODO: meson (not just yet as of 2.8.0, see https://gitlab.com/cryptsetup/cryptsetup/-/issues/949#note_2585304492) -inherit linux-info tmpfiles +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/milanbroz.asc +inherit linux-info tmpfiles verify-sig DESCRIPTION="Tool to setup encrypted devices with dm-crypt" HOMEPAGE="https://gitlab.com/cryptsetup/cryptsetup" -SRC_URI="https://www.kernel.org/pub/linux/utils/${PN}/v$(ver_cut 1-2)/${P/_/-}.tar.xz" +SRC_URI=" + https://www.kernel.org/pub/linux/utils/${PN}/v$(ver_cut 1-2)/${P/_/-}.tar.xz + verify-sig? ( https://www.kernel.org/pub/linux/utils/${PN}/v$(ver_cut 1-2)/${P/_/-}.tar.sign ) +" S="${WORKDIR}"/${P/_/-} LICENSE="GPL-2+" @@ -63,8 +67,13 @@ DEPEND=" BDEPEND=" virtual/pkgconfig test? ( app-editors/vim-core ) + verify-sig? ( sec-keys/openpgp-keys-milanbroz ) " +PATCHES=( + "${FILESDIR}/cryptsetup-2.8.3-bitlocker.patch" +) + pkg_setup() { local CONFIG_CHECK="~DM_CRYPT ~CRYPTO ~CRYPTO_CBC ~CRYPTO_SHA256" local WARNING_DM_CRYPT="CONFIG_DM_CRYPT:\tis not set (required for cryptsetup)\n" @@ -74,6 +83,15 @@ pkg_setup() { check_extra_config } +src_unpack() { + if use verify-sig; then + verify-sig_uncompress_verify_unpack "${DISTDIR}"/${P/_/-}.tar.xz \ + "${DISTDIR}"/${P/_/-}.tar.sign + else + default + fi +} + src_prepare() { default diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/cryptsetup-2.8.3.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/cryptsetup-2.8.4.ebuild similarity index 88% rename from sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/cryptsetup-2.8.3.ebuild rename to sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/cryptsetup-2.8.4.ebuild index 453959440e1..8409a39b547 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/cryptsetup-2.8.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/cryptsetup-2.8.4.ebuild @@ -1,14 +1,18 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 # TODO: meson (not just yet as of 2.8.0, see https://gitlab.com/cryptsetup/cryptsetup/-/issues/949#note_2585304492) -inherit linux-info tmpfiles +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/milanbroz.asc +inherit linux-info tmpfiles verify-sig DESCRIPTION="Tool to setup encrypted devices with dm-crypt" HOMEPAGE="https://gitlab.com/cryptsetup/cryptsetup" -SRC_URI="https://www.kernel.org/pub/linux/utils/${PN}/v$(ver_cut 1-2)/${P/_/-}.tar.xz" +SRC_URI=" + https://www.kernel.org/pub/linux/utils/${PN}/v$(ver_cut 1-2)/${P/_/-}.tar.xz + verify-sig? ( https://www.kernel.org/pub/linux/utils/${PN}/v$(ver_cut 1-2)/${P/_/-}.tar.sign ) +" S="${WORKDIR}"/${P/_/-} LICENSE="GPL-2+" @@ -63,6 +67,7 @@ DEPEND=" BDEPEND=" virtual/pkgconfig test? ( app-editors/vim-core ) + verify-sig? ( sec-keys/openpgp-keys-milanbroz ) " pkg_setup() { @@ -74,6 +79,15 @@ pkg_setup() { check_extra_config } +src_unpack() { + if use verify-sig; then + verify-sig_uncompress_verify_unpack "${DISTDIR}"/${P/_/-}.tar.xz \ + "${DISTDIR}"/${P/_/-}.tar.sign + else + default + fi +} + src_prepare() { default diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/files/cryptsetup-2.8.3-bitlocker.patch b/sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/files/cryptsetup-2.8.3-bitlocker.patch new file mode 100644 index 00000000000..a6ca2652cd8 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-fs/cryptsetup/files/cryptsetup-2.8.3-bitlocker.patch @@ -0,0 +1,45 @@ +https://bugs.gentoo.org/969153 +https://gitlab.com/cryptsetup/cryptsetup/-/issues/973 +https://gitlab.com/cryptsetup/cryptsetup/-/merge_requests/883 + +From 4eb729da3f46642d6fe1fabbbedb127078eccb95 Mon Sep 17 00:00:00 2001 +From: Vojtech Trefny <vtrefny@redhat.com> +Date: Sun, 11 Jan 2026 14:31:29 +0100 +Subject: [PATCH] bitlk: Do not try to use empty password for password keyslots + +Passing empty password means we want to try to open the device +using the clear key so we can skip all other keyslots in this case. + +This also fixes unlocking a BitLocker device where recovery +passphrase is in the first keyslot where we try to use the empty +passhrase first, hoping for a clear key, and never actually prompt +user for an actual (recovery) passphrase after. + +Fixes: #973 +--- + lib/bitlk/bitlk.c | 11 +++++++++++ + tests/bitlk-images.tar.xz | Bin 355720 -> 376840 bytes + 2 files changed, 11 insertions(+) + +diff --git a/lib/bitlk/bitlk.c b/lib/bitlk/bitlk.c +index 3b7b093d..0e8f9d1d 100644 +--- a/lib/bitlk/bitlk.c ++++ b/lib/bitlk/bitlk.c +@@ -1300,6 +1300,17 @@ int BITLK_get_volume_key(struct crypt_device *cd, + next_vmk = params->vmks; + while (next_vmk) { + bool is_decrypted = false; ++ ++ if (password == NULL && next_vmk->protection != BITLK_PROTECTION_CLEAR_KEY) { ++ /* ++ * Clearkey is the only slot that doesn't require password so no password ++ * means we are trying to use clearkey and we can skip all other key slots. ++ */ ++ r = -EPERM; ++ next_vmk = next_vmk->next; ++ continue; ++ } ++ + if (next_vmk->protection == BITLK_PROTECTION_PASSPHRASE) { + r = bitlk_kdf(password, passwordLen, false, next_vmk->salt, &vmk_dec_key); + if (r) { From 0e4a4c89cf9b61a817f843940297999c08eac2b9 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:50 +0000 Subject: [PATCH 228/291] sys-fs/e2fsprogs: Sync with Gentoo It's from Gentoo commit 87e709715cea5de7b8f34a1a8d9c4ee4b781ed0f. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-fs/e2fsprogs/Manifest | 2 +- .../e2fsprogs/e2fsprogs-1.47.2-r10.ebuild | 173 ----------------- .../e2fsprogs/e2fsprogs-1.47.2-r3.ebuild | 176 ------------------ .../e2fsprogs/e2fsprogs-1.47.3-r1.ebuild | 21 ++- .../sys-fs/e2fsprogs/e2fsprogs-1.47.3.ebuild | 169 ----------------- ...csum_seed-and-orphan_file-by-default.patch | 30 --- 6 files changed, 19 insertions(+), 552 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.2-r10.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.2-r3.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.3.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/files/e2fsprogs-1.47.0-disable-metadata_csum_seed-and-orphan_file-by-default.patch diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/Manifest b/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/Manifest index d218263a662..72f5ac544ce 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/Manifest @@ -1,2 +1,2 @@ -DIST e2fsprogs-1.47.2.tar.xz 7299932 BLAKE2B 20f93b53c18396dbbf8a9564fd80181e391120554bd63a76c90c88d32616596fb7cf8e1252417b835ef3918ecf3211aebdd7a75daebee11bcb6e7b0f9bd88053 SHA512 a32632e072e535bf164503cf9992a4da7ea971e80f8f84ead4e7bc8899a92c27e4670bdebef1de0187596672e44af7b96078888e0cd4eefa3e3f551344d434d8 +DIST e2fsprogs-1.47.3.tar.sign 310 BLAKE2B 9bf3f1765aeec209c85466a7fdd77bc257d9648dece7e6489e99e76d12e28813f77c3975771588bf3237a65e3febbb986b4c464ab5376d20c4af98f152cd7357 SHA512 b31544569bd5ab0ed6485fc5e737309e41d3dbc67f6fc3ecbf9a6fc3875f14a30d9e588cfee471fe102c706502f77c9b770802d2d920ffa73fd0eec5c0c8fa21 DIST e2fsprogs-1.47.3.tar.xz 7321540 BLAKE2B 5d83a47d24f28fb4e0a6e8a145b146e6ff0de4463a16720790041f6fe750e595d749e730016bc3a9255c9ed3172b15e37f0fa8af4e8463f724f6bd221a9fa161 SHA512 1139b793cfa2f1af4e8ef06439522ff5aa3bab701201f2a4ef74910eb0c4d8c86dbd40d5a8bdc798dc52f121a0ca9e454eda0c6058e2dc5d4a25e82f669e96ae diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.2-r10.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.2-r10.ebuild deleted file mode 100644 index 67edf3b4697..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.2-r10.ebuild +++ /dev/null @@ -1,173 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit multilib-minimal systemd toolchain-funcs udev - -DESCRIPTION="Standard EXT2/EXT3/EXT4 filesystem utilities" -HOMEPAGE="http://e2fsprogs.sourceforge.net/" -SRC_URI="https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz" - -LICENSE="GPL-2 BSD" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE="archive cron fuse nls static-libs test +tools" -RESTRICT="!test? ( test )" - -RDEPEND=" - !sys-libs/${PN}-libs - archive? ( app-arch/libarchive:= ) - cron? ( sys-fs/lvm2[lvm] ) - fuse? ( sys-fs/fuse:3= ) - nls? ( virtual/libintl ) - tools? ( sys-apps/util-linux ) -" -# For testing lib/ext2fs, lib/support/libsupport.a is required, which -# unconditionally includes '<blkid/blkid.h>' from sys-apps/util-linux. -DEPEND=" - ${RDEPEND} - test? ( sys-apps/util-linux[${MULTILIB_USEDEP}] ) -" -BDEPEND=" - sys-apps/texinfo - virtual/pkgconfig - nls? ( sys-devel/gettext ) -" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/ext2fs/ext2_types.h -) - -PATCHES=( - "${FILESDIR}"/${PN}-1.42.13-fix-build-cflags.patch # bug #516854 - - # Upstream patches (can usually removed with next version bump) -) - -src_prepare() { - default - - cp doc/RelNotes/v${PV}.txt ChangeLog || die "Failed to copy Release Notes" - - # Get rid of doc -- we don't use them. This also prevents a sandbox - # violation due to mktexfmt invocation - rm -r doc || die "Failed to remove doc dir" - - cat <<-'EOF' > tests/m_rootdir_acl/script || die - echo "$test_name: $test_description: skipped (bgo#905221, fails on btrfs)" - return 0 - EOF - - # Prevent included intl cruft from building, bug #81096 - sed -i -r \ - -e 's:@LIBINTL@:@LTLIBINTL@:' \ - MCONFIG.in || die 'intl cruft' -} - -multilib_src_configure() { - # Keep the package from doing silly things, bug #261411 - export VARTEXFONTS="${T}/fonts" - - local myeconfargs=( - --with-root-prefix="${EPREFIX}" - $(use_with cron crond-dir "${EPREFIX}/etc/cron.d") - --with-systemd-unit-dir="$(systemd_get_systemunitdir)" - --with-udev-rules-dir="${EPREFIX}$(get_udevdir)/rules.d" - --enable-symlink-install - --enable-elf-shlibs - $(tc-has-tls || echo --disable-tls) - $(multilib_native_use_with archive libarchive direct) - $(multilib_native_use_enable fuse fuse2fs) - $(use_enable nls) - $(multilib_native_use_enable tools e2initrd-helper) - --disable-fsck - --disable-uuidd - --disable-lto - --with-pthread - --enable-largefile - ) - - # We use blkid/uuid from util-linux now - if use kernel_linux ; then - export ac_cv_lib_{uuid_uuid_generate,blkid_blkid_get_cache}=yes - myeconfargs+=( --disable-lib{blkid,uuid} ) - fi - - ac_cv_path_LDCONFIG=: \ - ECONF_SOURCE="${S}" \ - CC="$(tc-getCC)" \ - BUILD_CC="$(tc-getBUILD_CC)" \ - BUILD_LD="$(tc-getBUILD_LD)" \ - econf "${myeconfargs[@]}" - - if grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then - eerror "INTL sanity check failed, aborting build." - eerror "Please post your ${S}/config.log file as an" - eerror "attachment to https://bugs.gentoo.org/81096" - die "Preventing included intl cruft from building" - fi -} - -multilib_src_compile() { - # Parallel make issue #936493 - emake -C lib/et V=1 compile_et - emake -C lib/ext2fs V=1 ext2_err.h - - if multilib_is_native_abi && use tools ; then - emake V=1 - else - emake -C lib/et V=1 - emake -C lib/ss V=1 - emake -C lib/ext2fs V=1 - emake -C lib/e2p V=1 - fi -} - -multilib_src_test() { - if multilib_is_native_abi && use tools ; then - emake V=1 check - else - # Required by lib/ext2fs's check target - emake -C lib/support V=1 - - # For non-native, there's no binaries to test. Just libraries. - emake -C lib/et V=1 check - emake -C lib/ss V=1 check - emake -C lib/ext2fs V=1 check - emake -C lib/e2p V=1 check - fi -} - -multilib_src_install() { - if multilib_is_native_abi && use tools ; then - emake STRIP=':' V=1 DESTDIR="${D}" install - else - emake -C lib/et V=1 DESTDIR="${D}" install - emake -C lib/ss V=1 DESTDIR="${D}" install - emake -C lib/ext2fs V=1 DESTDIR="${D}" install - emake -C lib/e2p V=1 DESTDIR="${D}" install - fi - - # configure doesn't have an option to disable static libs - if ! use static-libs ; then - find "${ED}" -name '*.a' -delete || die - fi -} - -multilib_src_install_all() { - einstalldocs - - if use tools ; then - insinto /etc - doins "${FILESDIR}"/e2fsck.conf - fi -} - -pkg_postinst() { - udev_reload -} - -pkg_postrm() { - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.2-r3.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.2-r3.ebuild deleted file mode 100644 index 00579fda539..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.2-r3.ebuild +++ /dev/null @@ -1,176 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit multilib-minimal systemd toolchain-funcs udev - -DESCRIPTION="Standard EXT2/EXT3/EXT4 filesystem utilities" -HOMEPAGE="http://e2fsprogs.sourceforge.net/" -SRC_URI="https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz" - -LICENSE="GPL-2 BSD" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE="archive cron fuse nls static-libs test +tools" -RESTRICT="!test? ( test )" - -RDEPEND=" - !sys-libs/${PN}-libs - archive? ( app-arch/libarchive:= ) - cron? ( sys-fs/lvm2[lvm] ) - fuse? ( sys-fs/fuse:3= ) - nls? ( virtual/libintl ) - tools? ( sys-apps/util-linux ) -" -# For testing lib/ext2fs, lib/support/libsupport.a is required, which -# unconditionally includes '<blkid/blkid.h>' from sys-apps/util-linux. -DEPEND=" - ${RDEPEND} - test? ( sys-apps/util-linux[${MULTILIB_USEDEP}] ) -" -BDEPEND=" - sys-apps/texinfo - virtual/pkgconfig - nls? ( sys-devel/gettext ) -" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/ext2fs/ext2_types.h -) - -PATCHES=( - "${FILESDIR}"/${PN}-1.42.13-fix-build-cflags.patch # bug #516854 - # We can drop this metadata patch after 6 months or so to let initramfses - # upgrade. See bug #904093 and bug #904048. - "${FILESDIR}"/${PN}-1.47.0-disable-metadata_csum_seed-and-orphan_file-by-default.patch - - # Upstream patches (can usually removed with next version bump) -) - -src_prepare() { - default - - cp doc/RelNotes/v${PV}.txt ChangeLog || die "Failed to copy Release Notes" - - # Get rid of doc -- we don't use them. This also prevents a sandbox - # violation due to mktexfmt invocation - rm -r doc || die "Failed to remove doc dir" - - cat <<-'EOF' > tests/m_rootdir_acl/script || die - echo "$test_name: $test_description: skipped (bgo#905221, fails on btrfs)" - return 0 - EOF - - # Prevent included intl cruft from building, bug #81096 - sed -i -r \ - -e 's:@LIBINTL@:@LTLIBINTL@:' \ - MCONFIG.in || die 'intl cruft' -} - -multilib_src_configure() { - # Keep the package from doing silly things, bug #261411 - export VARTEXFONTS="${T}/fonts" - - local myeconfargs=( - --with-root-prefix="${EPREFIX}" - $(use_with cron crond-dir "${EPREFIX}/etc/cron.d") - --with-systemd-unit-dir="$(systemd_get_systemunitdir)" - --with-udev-rules-dir="${EPREFIX}$(get_udevdir)/rules.d" - --enable-symlink-install - --enable-elf-shlibs - $(tc-has-tls || echo --disable-tls) - $(multilib_native_use_with archive libarchive direct) - $(multilib_native_use_enable fuse fuse2fs) - $(use_enable nls) - $(multilib_native_use_enable tools e2initrd-helper) - --disable-fsck - --disable-uuidd - --disable-lto - --with-pthread - --enable-largefile - ) - - # We use blkid/uuid from util-linux now - if use kernel_linux ; then - export ac_cv_lib_{uuid_uuid_generate,blkid_blkid_get_cache}=yes - myeconfargs+=( --disable-lib{blkid,uuid} ) - fi - - ac_cv_path_LDCONFIG=: \ - ECONF_SOURCE="${S}" \ - CC="$(tc-getCC)" \ - BUILD_CC="$(tc-getBUILD_CC)" \ - BUILD_LD="$(tc-getBUILD_LD)" \ - econf "${myeconfargs[@]}" - - if grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then - eerror "INTL sanity check failed, aborting build." - eerror "Please post your ${S}/config.log file as an" - eerror "attachment to https://bugs.gentoo.org/81096" - die "Preventing included intl cruft from building" - fi -} - -multilib_src_compile() { - # Parallel make issue #936493 - emake -C lib/et V=1 compile_et - emake -C lib/ext2fs V=1 ext2_err.h - - if multilib_is_native_abi && use tools ; then - emake V=1 - else - emake -C lib/et V=1 - emake -C lib/ss V=1 - emake -C lib/ext2fs V=1 - emake -C lib/e2p V=1 - fi -} - -multilib_src_test() { - if multilib_is_native_abi && use tools ; then - emake V=1 check - else - # Required by lib/ext2fs's check target - emake -C lib/support V=1 - - # For non-native, there's no binaries to test. Just libraries. - emake -C lib/et V=1 check - emake -C lib/ss V=1 check - emake -C lib/ext2fs V=1 check - emake -C lib/e2p V=1 check - fi -} - -multilib_src_install() { - if multilib_is_native_abi && use tools ; then - emake STRIP=':' V=1 DESTDIR="${D}" install - else - emake -C lib/et V=1 DESTDIR="${D}" install - emake -C lib/ss V=1 DESTDIR="${D}" install - emake -C lib/ext2fs V=1 DESTDIR="${D}" install - emake -C lib/e2p V=1 DESTDIR="${D}" install - fi - - # configure doesn't have an option to disable static libs - if ! use static-libs ; then - find "${ED}" -name '*.a' -delete || die - fi -} - -multilib_src_install_all() { - einstalldocs - - if use tools ; then - insinto /etc - doins "${FILESDIR}"/e2fsck.conf - fi -} - -pkg_postinst() { - udev_reload -} - -pkg_postrm() { - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.3-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.3-r1.ebuild index 1c63b541c87..a9ecb3fd34c 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.3-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.3-r1.ebuild @@ -1,13 +1,17 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit multilib-minimal systemd toolchain-funcs udev +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/tytso.asc +inherit multilib-minimal systemd toolchain-funcs udev verify-sig DESCRIPTION="Standard EXT2/EXT3/EXT4 filesystem utilities" HOMEPAGE="http://e2fsprogs.sourceforge.net/" -SRC_URI="https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz" +SRC_URI=" + https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz + verify-sig? ( https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.sign ) +" LICENSE="GPL-2 BSD" SLOT="0" @@ -33,6 +37,7 @@ BDEPEND=" sys-apps/texinfo virtual/pkgconfig nls? ( sys-devel/gettext ) + verify-sig? ( sec-keys/openpgp-keys-tytso ) " MULTILIB_WRAPPED_HEADERS=( @@ -47,6 +52,16 @@ PATCHES=( "${FILESDIR}"/${PN}-1.47.3-fix-logging-redirection.patch ) +src_unpack() { + # Upstream sign the decompressed .tar + if use verify-sig ; then + verify-sig_uncompress_verify_unpack "${DISTDIR}"/${P}.tar.xz \ + "${DISTDIR}"/${P}.tar.sign + else + default + fi +} + src_prepare() { default diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.3.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.3.ebuild deleted file mode 100644 index 8ca51a4c8f1..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.3.ebuild +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit multilib-minimal systemd toolchain-funcs udev - -DESCRIPTION="Standard EXT2/EXT3/EXT4 filesystem utilities" -HOMEPAGE="http://e2fsprogs.sourceforge.net/" -SRC_URI="https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz" - -LICENSE="GPL-2 BSD" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE="archive cron fuse nls static-libs test +tools" -RESTRICT="!test? ( test )" - -RDEPEND=" - !sys-libs/${PN}-libs - archive? ( app-arch/libarchive:= ) - cron? ( sys-fs/lvm2[lvm] ) - fuse? ( sys-fs/fuse:3= ) - nls? ( virtual/libintl ) - tools? ( sys-apps/util-linux ) -" -# For testing lib/ext2fs, lib/support/libsupport.a is required, which -# unconditionally includes '<blkid/blkid.h>' from sys-apps/util-linux. -DEPEND=" - ${RDEPEND} - test? ( sys-apps/util-linux[${MULTILIB_USEDEP}] ) -" -BDEPEND=" - sys-apps/texinfo - virtual/pkgconfig - nls? ( sys-devel/gettext ) -" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/ext2fs/ext2_types.h -) - -PATCHES=( - "${FILESDIR}"/${PN}-1.42.13-fix-build-cflags.patch # bug #516854 - - # Upstream patches (can usually removed with next version bump) - "${FILESDIR}"/${PN}-1.47.3-e2scrub-order.patch -) - -src_prepare() { - default - - cp doc/RelNotes/v${PV}.txt ChangeLog || die "Failed to copy Release Notes" - - # Get rid of doc -- we don't use them. This also prevents a sandbox - # violation due to mktexfmt invocation - rm -r doc || die "Failed to remove doc dir" - - # Prevent included intl cruft from building, bug #81096 - sed -i -r \ - -e 's:@LIBINTL@:@LTLIBINTL@:' \ - MCONFIG.in || die 'intl cruft' -} - -multilib_src_configure() { - # Keep the package from doing silly things, bug #261411 - export VARTEXFONTS="${T}/fonts" - - local myeconfargs=( - --with-root-prefix="${EPREFIX}" - $(use_with cron crond-dir "${EPREFIX}/etc/cron.d") - --with-systemd-unit-dir="$(systemd_get_systemunitdir)" - --with-udev-rules-dir="${EPREFIX}$(get_udevdir)/rules.d" - --enable-symlink-install - --enable-elf-shlibs - $(tc-has-tls || echo --disable-tls) - $(multilib_native_use_with archive libarchive direct) - $(multilib_native_use_enable fuse fuse2fs) - $(use_enable nls) - $(multilib_native_use_enable tools e2initrd-helper) - --disable-fsck - --disable-uuidd - --disable-lto - --with-pthread - --enable-largefile - ) - - # We use blkid/uuid from util-linux now - if use kernel_linux ; then - export ac_cv_lib_{uuid_uuid_generate,blkid_blkid_get_cache}=yes - myeconfargs+=( --disable-lib{blkid,uuid} ) - fi - - ac_cv_path_LDCONFIG=: \ - ECONF_SOURCE="${S}" \ - CC="$(tc-getCC)" \ - BUILD_CC="$(tc-getBUILD_CC)" \ - BUILD_LD="$(tc-getBUILD_LD)" \ - econf "${myeconfargs[@]}" - - if grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then - eerror "INTL sanity check failed, aborting build." - eerror "Please post your ${S}/config.log file as an" - eerror "attachment to https://bugs.gentoo.org/81096" - die "Preventing included intl cruft from building" - fi -} - -multilib_src_compile() { - # Parallel make issue (bug #936493) - emake -C lib/et V=1 compile_et - emake -C lib/ext2fs V=1 ext2_err.h - - if multilib_is_native_abi && use tools ; then - emake V=1 - else - emake -C lib/et V=1 - emake -C lib/ss V=1 - emake -C lib/ext2fs V=1 - emake -C lib/e2p V=1 - fi -} - -multilib_src_test() { - if multilib_is_native_abi && use tools ; then - emake V=1 check - else - # Required by lib/ext2fs's check target - emake -C lib/support V=1 - - # For non-native, there's no binaries to test. Just libraries. - emake -C lib/et V=1 check - emake -C lib/ss V=1 check - emake -C lib/ext2fs V=1 check - emake -C lib/e2p V=1 check - fi -} - -multilib_src_install() { - if multilib_is_native_abi && use tools ; then - emake STRIP=':' V=1 DESTDIR="${D}" install - else - emake -C lib/et V=1 DESTDIR="${D}" install - emake -C lib/ss V=1 DESTDIR="${D}" install - emake -C lib/ext2fs V=1 DESTDIR="${D}" install - emake -C lib/e2p V=1 DESTDIR="${D}" install - fi - - # configure doesn't have an option to disable static libs - if ! use static-libs ; then - find "${ED}" -name '*.a' -delete || die - fi -} - -multilib_src_install_all() { - einstalldocs - - if use tools ; then - insinto /etc - doins "${FILESDIR}"/e2fsck.conf - fi -} - -pkg_postinst() { - udev_reload -} - -pkg_postrm() { - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/files/e2fsprogs-1.47.0-disable-metadata_csum_seed-and-orphan_file-by-default.patch b/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/files/e2fsprogs-1.47.0-disable-metadata_csum_seed-and-orphan_file-by-default.patch deleted file mode 100644 index 566b5fb8d9a..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/files/e2fsprogs-1.47.0-disable-metadata_csum_seed-and-orphan_file-by-default.patch +++ /dev/null @@ -1,30 +0,0 @@ -https://lwn.net/Articles/923969/ -https://sources.debian.org/data/main/e/e2fsprogs/1.47.0-2/debian/patches/disable-metadata_csum_seed-and-orphan_file-by-default - -Description: Disable metadata_csum_seed and orphan_file by default for Debian - . - There are a lot of debian packages that assume that mkfs.ext4 for - Debian N will work on Debian N-1 (and sometimes N-2, N-3, etc.). This - is a bad assumption, but it's too late to fix this for Debian - Bookworm. - . - So revert making these feature a default for now. We will enable it - again post Bookworm. -Author: Theodore Ts'o <tytso@mit.edu> -Origin: vendor -Forwarded: not-needed -Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1031622 -Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1030939 ---- a/misc/mke2fs.conf.in -+++ b/misc/mke2fs.conf.in -@@ -11,7 +11,7 @@ - features = has_journal - } - ext4 = { -- features = has_journal,extent,huge_file,flex_bg,metadata_csum,metadata_csum_seed,64bit,dir_nlink,extra_isize,orphan_file -+ features = has_journal,extent,huge_file,flex_bg,metadata_csum,64bit,dir_nlink,extra_isize - } - small = { - blocksize = 1024 --- -2.31.0 From 556fbb7a9b95bc6504f14322f979a2b120657772 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:51 +0000 Subject: [PATCH 229/291] sys-fs/erofs-utils: Sync with Gentoo It's from Gentoo commit 0b61200ac3a12b59141766f21ce95a253e4cb1d5. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-fs/erofs-utils/erofs-utils-1.8.10-r1.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/erofs-utils/erofs-utils-1.8.10-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/erofs-utils/erofs-utils-1.8.10-r1.ebuild index feb63d48fa7..3e43071a92d 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/erofs-utils/erofs-utils-1.8.10-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/erofs-utils/erofs-utils-1.8.10-r1.ebuild @@ -12,7 +12,7 @@ SRC_URI="https://git.kernel.org/pub/scm/linux/kernel/git/xiang/${PN}.git/snapsho LICENSE="GPL-2+" SLOT="0" -KEYWORDS="~amd64 ~arm64 ~loong" +KEYWORDS="amd64 arm64 ~loong" IUSE="fuse libdeflate +lz4 +lzma selinux static-libs +threads +uuid +zlib +zstd" From 37974761d1975ab33027b7dd0a76f18524eb1c4e Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:51 +0000 Subject: [PATCH 230/291] sys-fs/fuse: Sync with Gentoo It's from Gentoo commit 77a2dab5ca1f4013e37d37de70ce7f3f09757f0e. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../third_party/portage-stable/sys-fs/fuse/fuse-3.18.1.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/fuse/fuse-3.18.1.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/fuse/fuse-3.18.1.ebuild index 7d291e3a4ef..2fb3779dbbd 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/fuse/fuse-3.18.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/fuse/fuse-3.18.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -12,7 +12,7 @@ SRC_URI="https://github.com/libfuse/libfuse/releases/download/${P}/${P}.tar.gz" LICENSE="GPL-2 LGPL-2.1" SLOT="3/4" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" IUSE="io-uring +suid systemtap test" RESTRICT="test" PROPERTIES="test_privileged" From 586af7d37022b0903778e61a8ab7870e5d336433 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:51 +0000 Subject: [PATCH 231/291] sys-fs/fuse-common: Sync with Gentoo It's from Gentoo commit cae09b781d3704ae8db819eb57dbba175516f8fd. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../fuse-common/fuse-common-3.10.4.ebuild | 32 ------------------- 1 file changed, 32 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/fuse-common/fuse-common-3.10.4.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/fuse-common/fuse-common-3.10.4.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/fuse-common/fuse-common-3.10.4.ebuild deleted file mode 100644 index dc454190231..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/fuse-common/fuse-common-3.10.4.ebuild +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit udev - -DESCRIPTION="Common files for multiple slots of sys-fs/fuse" -HOMEPAGE="https://github.com/libfuse/libfuse" -SRC_URI="https://github.com/libfuse/libfuse/releases/download/fuse-${PV}/fuse-${PV}.tar.xz" - -LICENSE="GPL-2 LGPL-2.1" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" - -BDEPEND="virtual/pkgconfig" -RDEPEND="!<sys-fs/fuse-2.9.7-r1:0" - -S=${WORKDIR}/fuse-${PV} - -src_install() { - udev_newrules util/udev.rules 99-fuse.rules - - if use kernel_linux ; then - newinitd "${FILESDIR}"/fuse.init fuse - else - die "We don't know what init code install for your kernel, please file a bug." - fi - - insinto /etc - doins util/fuse.conf -} From e48958e8171297357e842a82a96e5ebc22074bd4 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:52 +0000 Subject: [PATCH 232/291] sys-fs/fuse-overlayfs: Sync with Gentoo It's from Gentoo commit 856eaedee14f02f514693ebd116435891d0bd621. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-fs/fuse-overlayfs/fuse-overlayfs-1.16.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/fuse-overlayfs/fuse-overlayfs-1.16.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/fuse-overlayfs/fuse-overlayfs-1.16.ebuild index ec9dd1faf81..9010e557bd9 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/fuse-overlayfs/fuse-overlayfs-1.16.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/fuse-overlayfs/fuse-overlayfs-1.16.ebuild @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Gentoo Authors +# Copyright 2019-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -11,7 +11,7 @@ SRC_URI="https://github.com/containers/fuse-overlayfs/archive/v${PV}.tar.gz -> $ LICENSE="GPL-3" SLOT="0" -KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv" +KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv" DEPEND="sys-fs/fuse:3=" RDEPEND="${DEPEND}" From 71d99f0109fae32675bc27fca611d153e9ab5b58 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:54 +0000 Subject: [PATCH 233/291] sys-fs/lvm2: Sync with Gentoo It's from Gentoo commit 66e7810e078794b4dab7d27617f9ef2da6d48cc7. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-fs/lvm2/Manifest | 2 + .../lvm2-2.03.37-dmeventd-no-idle-exit.patch | 67 ++++ .../sys-fs/lvm2/lvm2-2.03.37.ebuild | 324 +++++++++++++++++ .../sys-fs/lvm2/lvm2-2.03.38.ebuild | 328 +++++++++++++++++ .../sys-fs/lvm2/lvm2-9999.ebuild | 334 ++++++++++++++++++ .../portage-stable/sys-fs/lvm2/metadata.xml | 7 + 6 files changed, 1062 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/lvm2/files/lvm2-2.03.37-dmeventd-no-idle-exit.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/lvm2/lvm2-2.03.37.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/lvm2/lvm2-2.03.38.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/lvm2/lvm2-9999.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/Manifest b/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/Manifest index 088ab35ed12..e6fa65555fb 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/Manifest @@ -1 +1,3 @@ DIST LVM2.2.03.22.tgz 2755031 BLAKE2B 79bbea84bd82f111c1bb5de336e6a9f1368b2c9e43f075dccaa90c7746a364259ad278adf650379eca75f2803ed74e74dd372be2cca8518462182657f96a0033 SHA512 17cd24ceee8026481566824b688dafd03ec816201d5cb3549cb7fc8a36f4cdaa982faaef4dcd26debfe775dea5ffa2744798164314ea6dc99a84f8ccccfc33ff +DIST LVM2.2.03.37.tgz 2983951 BLAKE2B 4762ebe827b886c0e72a91c545c8c4fa9c9d1629e987f13d0c52ee41b80444c3c5c8a81a90566ed9bd7b68d67684749a7ad2cc066b20a3fa44eb8466ae0cc82e SHA512 c67e9e47c9f117d82b458e43c98e7b2bbf0f176fc86b7fa1a90d04209df14df442f576fd9b1e41be86b161aa744f0db5b6cac9d7b118bc4156354307314c441a +DIST LVM2.2.03.38.tgz 2985871 BLAKE2B 2cdec7e7256855ec1d40f690e3b3b2d0538cef275c68bfaa15235b10890f05c4d9e861607fc611e420619e9e07a0dd431b1a0d9258c8ccf4af7a5b772281f33e SHA512 97fd1849cd632943c8233f06f181b1899b0e6937444d672abef10307c66d207c16325701ac669d5ff438490a11596c19d1dbbcff50e4e7c00c9b6e4eb1ecf87c diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/files/lvm2-2.03.37-dmeventd-no-idle-exit.patch b/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/files/lvm2-2.03.37-dmeventd-no-idle-exit.patch new file mode 100644 index 00000000000..487f8a8eadf --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/files/lvm2-2.03.37-dmeventd-no-idle-exit.patch @@ -0,0 +1,67 @@ +From ab3ae0a22dfbe20e2d17e7dc60e0f76184ec098c Mon Sep 17 00:00:00 2001 +From: "Robin H. Johnson" <robbat2@gentoo.org> +Date: Wed, 24 Jul 2019 11:22:32 +0200 +Subject: [PATCH] dmeventd configurable idle exit time + +Rebased for version 2.03.37 + +dmeventd nominally exits after 1 hour of idle time. There are use cases for +this, esp. with socket activation, but also cases where users don't expect +dmeventd to exit. + +Provide a tuning knob via environment variable, DMEVENTD_IDLE_EXIT_TIMEOUT, +that can be -1 to not exit, or a configurable time for different idle exit. + +Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> +Fixes: https://bugs.gentoo.org/682556 +--- a/daemons/dmeventd/dmeventd.c ++++ b/daemons/dmeventd/dmeventd.c +@@ -2758,6 +2758,17 @@ int main(int argc, char *argv[]) + }; + time_t now, idle_exit_timeout = DMEVENTD_IDLE_EXIT_TIMEOUT; + ++ /* Provide a basic way to config the idle timeout */ ++ char* idle_exit_timeout_env = getenv("DMEVENTD_IDLE_EXIT_TIMEOUT") ? : NULL; ++ if(NULL != idle_exit_timeout_env) { ++ char* endptr; ++ idle_exit_timeout = strtol(idle_exit_timeout_env, &endptr, 10); ++ if (errno == ERANGE || *endptr != '\0') { ++ fprintf(stderr, "DMEVENTD_IDLE_EXIT_TIMEOUT: bad time input\n"); ++ exit(EXIT_FAILURE); ++ } ++ } ++ + optopt = optind = opterr = 0; + optarg = (char*) ""; + while ((opt = getopt(argc, argv, ":?e:g:fhiVdlR")) != EOF) { +@@ -2890,7 +2901,7 @@ int main(int argc, char *argv[]) + _process_initial_registrations(); + + for (;;) { +- if (_idle_since) { ++ if (_idle_since || _exit_now) { + if (_exit_now) { + if (_exit_now == DM_SCHEDULED_EXIT) + break; /* Only prints shutdown message */ +@@ -2899,7 +2910,7 @@ int main(int argc, char *argv[]) + (long) (_get_curr_time() - _idle_since)); + break; + } +- if (idle_exit_timeout) { ++ if (idle_exit_timeout && idle_exit_timeout > 0) { + now = _get_curr_time(); + if (now < _idle_since) + _idle_since = now; /* clock change? */ +--- a/man/dmeventd.8_main ++++ b/man/dmeventd.8_main +@@ -220,6 +220,10 @@ Variable is not set when error event is processed. + Variable is set by thin and vdo plugin to prohibit recursive interaction + with dmeventd by any executed lvm2 command from + a thin_command, vdo_command environment. ++.TP ++.B DMEVENTD_IDLE_EXIT_TIMEOUT ++Configure the dmeventd idle exit timeout behavior, value in seconds. Default ++is 3600 (1 hour). -1 means do not exit. + . + .SH SEE ALSO + . diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/lvm2-2.03.37.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/lvm2-2.03.37.ebuild new file mode 100644 index 00000000000..404f6fb37d8 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/lvm2-2.03.37.ebuild @@ -0,0 +1,324 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TMPFILES_OPTIONAL=1 +inherit autotools linux-info systemd toolchain-funcs tmpfiles udev flag-o-matic + +DESCRIPTION="User-land utilities for LVM2 (device-mapper) software" +HOMEPAGE="https://sourceware.org/lvm2/" +SRC_URI="https://sourceware.org/ftp/lvm2/${PN^^}.${PV}.tgz" +S="${WORKDIR}/${PN^^}.${PV}" + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="lvm nvme readline sanlock selinux static static-libs systemd thin +udev valgrind" +REQUIRED_USE=" + static? ( !systemd !udev !nvme ) + static-libs? ( static !udev ) + systemd? ( udev ) + thin? ( lvm ) +" + +# Doesn't strictly need >=sanlock-4.0.0 but autodetects features, so pick +# the best we have for predictability. Ditto systemd. +DEPEND_COMMON=" + udev? ( virtual/libudev:= ) + lvm? ( + dev-libs/libaio + >=sys-apps/util-linux-2.24 + readline? ( sys-libs/readline:= ) + sanlock? ( >=sys-cluster/sanlock-4.0.0 ) + systemd? ( >=sys-apps/systemd-234:= ) + ) +" +# /run is now required for locking during early boot. /var cannot be assumed to +# be available -- thus, pull in recent enough baselayout for /run. +# This version of LVM is incompatible with cryptsetup <1.1.2. +RDEPEND=" + ${DEPEND_COMMON} + >=sys-apps/baselayout-2.2 + lvm? ( virtual/tmpfiles ) + nvme? ( >=sys-libs/libnvme-1.1 ) +" + +PDEPEND=" + lvm? ( + thin? ( >=sys-block/thin-provisioning-tools-1.0.6 ) + ) +" +# note: thin-0.3.0 is required to avoid --disable-thin_check_needs_check +DEPEND=" + ${DEPEND_COMMON} + static? ( + sys-apps/util-linux[static-libs] + lvm? ( + dev-libs/libaio[static-libs] + readline? ( sys-libs/readline[static-libs] ) + ) + selinux? ( sys-libs/libselinux[static-libs] ) + ) + valgrind? ( >=dev-debug/valgrind-3.6 ) +" +BDEPEND=" + dev-build/autoconf-archive + virtual/pkgconfig +" + +PATCHES=( + # Gentoo specific modification(s): + "${FILESDIR}"/${PN}-2.03.20-example.conf.in.patch + + # For upstream -- review and forward: + "${FILESDIR}"/${PN}-2.03.37-dmeventd-no-idle-exit.patch + "${FILESDIR}"/${PN}-2.03.20-freopen-musl.patch + "${FILESDIR}"/${PN}-2.03.22-autoconf-2.72-egrep.patch + "${FILESDIR}"/${PN}-2.03.22-thin-autodetect.patch +) + +pkg_setup() { + local CONFIG_CHECK="~SYSVIPC" + + if use udev; then + local WARNING_SYSVIPC="CONFIG_SYSVIPC:\tis not set (required for udev sync)\n" + if linux_config_exists; then + local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH) + if [[ -n "${uevent_helper_path}" ]] && [[ "${uevent_helper_path}" != '""' ]]; then + ewarn "It's recommended to set an empty value to the following kernel config option:" + ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}" + fi + fi + fi + + check_extra_config + + # 1. Genkernel no longer copies /sbin/lvm blindly. + if use static; then + elog "Warning, we no longer overwrite /sbin/lvm and /sbin/dmsetup with" + elog "their static versions. If you need the static binaries," + elog "you must append .static to the filename!" + fi +} + +src_prepare() { + default + + # Users without systemd get no auto-activation of any logical volume + if ! use systemd ; then + eapply "${FILESDIR}"/${PN}-2.03.20-dm_lvm_rules_no_systemd.patch + fi + + eautoreconf +} + +src_configure() { + filter-lto + + # Most of this package does weird stuff. + # The build options are tristate, and --without is NOT supported + # options: 'none', 'internal', 'shared' + local myeconfargs=( + $(use_enable lvm dmfilemapd) + $(use_enable lvm dmeventd) + $(use_enable lvm cmdlib) + $(use_enable lvm fsadm) + $(use_enable lvm lvmpolld) + + # This only causes the .static versions to become available + $(usev static --enable-static_link) + + # dmeventd requires mirrors to be internal, and snapshot available + # so we cannot disable them + --with-mirrors="$(usex lvm internal none)" + --with-snapshots="$(usex lvm internal none)" + ) + + if use lvm && use thin; then + myeconfargs+=( + --with-thin=internal + --enable-thin_check_needs_check + --with-cache=internal + --enable-cache_check_needs_check + ) + local texec + for texec in check dump repair restore; do + myeconfargs+=( --with-thin-${texec}="${EPREFIX}"/usr/sbin/thin_${texec} ) + myeconfargs+=( --with-cache-${texec}="${EPREFIX}"/usr/sbin/cache_${texec} ) + done + else + myeconfargs+=( --with-thin=none --with-cache=none ) + fi + + myeconfargs+=( + # musl doesn't do symbol versioning so can end up with + # runtime breakage. + --with-symvers=$(usex elibc_glibc 'gnu' 'no') + $(use_enable readline) + $(use_enable selinux) + --enable-pkgconfig + --with-confdir="${EPREFIX}"/etc + --exec-prefix="${EPREFIX}" + --sbindir="${EPREFIX}/sbin" + --with-staticdir="${EPREFIX}"/sbin + --libdir="${EPREFIX}/$(get_libdir)" + --with-usrlibdir="${EPREFIX}/usr/$(get_libdir)" + --with-default-dm-run-dir=/run + --with-default-run-dir=/run/lvm + --with-default-locking-dir=/run/lock/lvm + --with-default-pid-dir=/run + $(use_enable udev udev_rules) + $(use_enable udev udev_sync) + $(use_with udev udevdir "${EPREFIX}$(get_udevdir)"/rules.d) + # USE=sanlock requires USE=lvm + $(use_enable $(usex lvm sanlock lvm) lvmlockd-sanlock) + $(use_with systemd) + $(use_enable systemd sd-notify) + $(use_enable systemd systemd-journal) + $(use_enable systemd notify-dbus) + $(use_enable systemd app-machineid) + $(use_enable systemd systemd-journal) + $(use_with systemd systemd-run "/usr/bin/systemd-run") + $(use_enable valgrind valgrind-pool) + $(use_with nvme libnvme) + $(use_enable nvme nvme-wwid) + --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" + CLDFLAGS="${LDFLAGS}" + ) + + econf "${myeconfargs[@]}" +} + +src_compile() { + emake V=1 -C include + + if use lvm ; then + emake V=1 + emake V=1 CC="$(tc-getCC)" -C scripts + else + emake V=1 device-mapper + # https://bugs.gentoo.org/878131 + emake V=1 -C libdm/dm-tools device-mapper + fi +} + +src_test() { + einfo "Tests other than unit tests are disabled because of device-node" + einfo "mucking, run tests, compile the package and see ${S}/tests" + + # run only unit tests + cd "${S}"/test || die + emake -j1 run-unit-test +} + +src_install() { + local targets=() + if use lvm; then + targets+=( install install_tmpfiles_configuration ) + if use systemd; then + # install systemd related files only when requested, bug #522430 + targets+=( install_systemd_units ) + fi + else + targets+=( install_device-mapper ) + fi + + # -j1 for bug #918125 + emake -j1 V=1 DESTDIR="${D}" "${targets[@]}" + + newinitd "${FILESDIR}"/device-mapper.rc-r3 device-mapper + newconfd "${FILESDIR}"/device-mapper.conf-r4 device-mapper + + if use lvm ; then + newinitd "${FILESDIR}"/dmeventd.initd-r3 dmeventd + newinitd "${FILESDIR}"/lvm.rc-r1 lvm + newconfd "${FILESDIR}"/lvm.confd-r4 lvm + if ! use udev ; then + # We keep the variable but remove udev from it. + sed -r -i \ + -e '/^rc_need=/s/\<udev\>//g' \ + "${ED}"/etc/conf.d/lvm || die "Could not drop udev from rc_need" + fi + + newinitd "${FILESDIR}"/lvm-monitoring.initd-r3 lvm-monitoring + newinitd "${FILESDIR}"/lvmpolld.initd-r1 lvmpolld + + if use sanlock; then + newinitd "${FILESDIR}"/lvmlockd.initd-r2 lvmlockd + fi + fi + + if use static-libs; then + dolib.a libdm/ioctl/libdevmapper.a + if use lvm; then + # depends on lvmetad + dolib.a libdaemon/client/libdaemonclient.a #462908 + # depends on dmeventd + dolib.a daemons/dmeventd/libdevmapper-event.a + fi + else + rm -f "${ED}"/usr/$(get_libdir)/{libdevmapper-event,liblvm2cmd,liblvm2app,libdevmapper}.a || die + fi + + insinto /etc + doins "${FILESDIR}"/dmtab + + dodoc README VERSION* WHATS_NEW WHATS_NEW_DM doc/*.{c,txt} conf/*.conf +} + +pkg_preinst() { + HAD_LVM=0 + + if has_version 'sys-fs/lvm2[lvm(+)]' ; then + HAD_LVM=1 + fi +} + +pkg_postinst() { + use lvm && tmpfiles_process lvm2.conf + use udev && udev_reload + + # This is a new installation + if [[ -z "${REPLACING_VERSIONS}" ]]; then + if use lvm ; then + ewarn "Make sure the \"lvm\" init script is in the runlevels:" + ewarn "# rc-update add lvm boot" + ewarn + ewarn "Make sure to enable lvmetad in ${EROOT}/etc/lvm/lvm.conf if you want" + ewarn "to enable lvm autoactivation and metadata caching." + else + ewarn "Please enable USE=lvm if you need the LVM daemon and" + ewarn "tools like 'lvchange', 'vgchange', etc!" + fi + else + if ! use lvm && [[ ${HAD_LVM} -eq 1 ]] ; then + ewarn "LVM was previously enabled but is now disabled." + ewarn "Please enable USE=lvm if you need the LVM daemon and" + ewarn "tools like 'lvchange', 'vgchange', etc!" + ewarn "See the 2022-11-19-lvm2-default-USE-flags news item for more details." + fi + fi + + if use udev && [[ -d /run ]] ; then + local permission_run_expected="drwxr-xr-x" + local permission_run=$(stat -c "%A" /run) + if [[ "${permission_run}" != "${permission_run_expected}" ]] ; then + ewarn "Found the following problematic permissions:" + ewarn "" + ewarn " ${permission_run} /run" + ewarn "" + ewarn "Expected:" + ewarn "" + ewarn " ${permission_run_expected} /run" + ewarn "" + ewarn "This is known to cause problems for udev-enabled LVM services." + fi + fi +} + +pkg_postrm() { + if use udev && [[ -z ${REPLACED_BY_VERSION} ]]; then + udev_reload + fi +} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/lvm2-2.03.38.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/lvm2-2.03.38.ebuild new file mode 100644 index 00000000000..a73547570b5 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/lvm2-2.03.38.ebuild @@ -0,0 +1,328 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TMPFILES_OPTIONAL=1 +inherit autotools linux-info systemd toolchain-funcs tmpfiles udev flag-o-matic + +DESCRIPTION="User-land utilities for LVM2 (device-mapper) software" +HOMEPAGE="https://sourceware.org/lvm2/" +SRC_URI="https://sourceware.org/ftp/lvm2/${PN^^}.${PV}.tgz" +S="${WORKDIR}/${PN^^}.${PV}" + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="lvm nvme readline sanlock selinux static static-libs systemd test thin +udev valgrind xfs" +REQUIRED_USE=" + static? ( !systemd !udev !nvme ) + static-libs? ( static !udev ) + systemd? ( udev ) + test? ( lvm ) + thin? ( lvm ) +" +RESTRICT="!test? ( test )" + +# Doesn't strictly need >=sanlock-4.0.0 but autodetects features, so pick +# the best we have for predictability. Ditto systemd. +DEPEND_COMMON=" + udev? ( virtual/libudev:= ) + lvm? ( + dev-libs/libaio + >=sys-apps/util-linux-2.24 + readline? ( sys-libs/readline:= ) + sanlock? ( >=sys-cluster/sanlock-4.0.0 ) + systemd? ( >=sys-apps/systemd-234:= ) + ) +" +# /run is now required for locking during early boot. /var cannot be assumed to +# be available -- thus, pull in recent enough baselayout for /run. +# This version of LVM is incompatible with cryptsetup <1.1.2. +RDEPEND=" + ${DEPEND_COMMON} + >=sys-apps/baselayout-2.2 + lvm? ( virtual/tmpfiles ) + nvme? ( >=sys-libs/libnvme-1.1 ) +" + +PDEPEND=" + lvm? ( + thin? ( >=sys-block/thin-provisioning-tools-1.0.6 ) + ) +" +# note: thin-0.3.0 is required to avoid --disable-thin_check_needs_check +DEPEND=" + ${DEPEND_COMMON} + static? ( + sys-apps/util-linux[static-libs] + lvm? ( + dev-libs/libaio[static-libs] + readline? ( sys-libs/readline[static-libs] ) + ) + selinux? ( sys-libs/libselinux[static-libs] ) + ) + valgrind? ( >=dev-debug/valgrind-3.6 ) + xfs? ( sys-fs/xfsprogs ) +" +BDEPEND=" + dev-build/autoconf-archive + virtual/pkgconfig +" + +PATCHES=( + # Gentoo specific modification(s): + "${FILESDIR}"/${PN}-2.03.20-example.conf.in.patch + + # For upstream -- review and forward: + "${FILESDIR}"/${PN}-2.03.37-dmeventd-no-idle-exit.patch + "${FILESDIR}"/${PN}-2.03.20-freopen-musl.patch + "${FILESDIR}"/${PN}-2.03.22-autoconf-2.72-egrep.patch + "${FILESDIR}"/${PN}-2.03.22-thin-autodetect.patch +) + +pkg_setup() { + local CONFIG_CHECK="~SYSVIPC" + + if use udev; then + local WARNING_SYSVIPC="CONFIG_SYSVIPC:\tis not set (required for udev sync)\n" + if linux_config_exists; then + local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH) + if [[ -n "${uevent_helper_path}" ]] && [[ "${uevent_helper_path}" != '""' ]]; then + ewarn "It's recommended to set an empty value to the following kernel config option:" + ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}" + fi + fi + fi + + check_extra_config + + # 1. Genkernel no longer copies /sbin/lvm blindly. + if use static; then + elog "Warning, we no longer overwrite /sbin/lvm and /sbin/dmsetup with" + elog "their static versions. If you need the static binaries," + elog "you must append .static to the filename!" + fi +} + +src_prepare() { + default + + # Users without systemd get no auto-activation of any logical volume + if ! use systemd ; then + eapply "${FILESDIR}"/${PN}-2.03.20-dm_lvm_rules_no_systemd.patch + fi + + eautoreconf +} + +src_configure() { + filter-lto + + export ac_cv_header_xfs_xfs_h=$(usex xfs) + + # Most of this package does weird stuff. + # The build options are tristate, and --without is NOT supported + # options: 'none', 'internal', 'shared' + local myeconfargs=( + $(use_enable lvm dmfilemapd) + $(use_enable lvm dmeventd) + $(use_enable lvm cmdlib) + $(use_enable lvm fsadm) + $(use_enable lvm lvmpolld) + + # This only causes the .static versions to become available + $(usev static --enable-static_link) + + # dmeventd requires mirrors to be internal, and snapshot available + # so we cannot disable them + --with-mirrors="$(usex lvm internal none)" + --with-snapshots="$(usex lvm internal none)" + ) + + if use lvm && use thin; then + myeconfargs+=( + --with-thin=internal + --enable-thin_check_needs_check + --with-cache=internal + --enable-cache_check_needs_check + ) + local texec + for texec in check dump repair restore; do + myeconfargs+=( --with-thin-${texec}="${EPREFIX}"/usr/sbin/thin_${texec} ) + myeconfargs+=( --with-cache-${texec}="${EPREFIX}"/usr/sbin/cache_${texec} ) + done + else + myeconfargs+=( --with-thin=none --with-cache=none ) + fi + + myeconfargs+=( + # musl doesn't do symbol versioning so can end up with + # runtime breakage. + --with-symvers=$(usex elibc_glibc 'gnu' 'no') + $(use_enable readline) + $(use_enable selinux) + --enable-pkgconfig + --with-confdir="${EPREFIX}"/etc + --exec-prefix="${EPREFIX}" + --sbindir="${EPREFIX}/sbin" + --with-staticdir="${EPREFIX}"/sbin + --libdir="${EPREFIX}/$(get_libdir)" + --with-usrlibdir="${EPREFIX}/usr/$(get_libdir)" + --with-default-dm-run-dir=/run + --with-default-run-dir=/run/lvm + --with-default-locking-dir=/run/lock/lvm + --with-default-pid-dir=/run + $(use_enable udev udev_rules) + $(use_enable udev udev_sync) + $(use_with udev udevdir "${EPREFIX}$(get_udevdir)"/rules.d) + # USE=sanlock requires USE=lvm + $(use_enable $(usex lvm sanlock lvm) lvmlockd-sanlock) + $(use_with systemd) + $(use_enable systemd sd-notify) + $(use_enable systemd systemd-journal) + $(use_enable systemd notify-dbus) + $(use_enable systemd app-machineid) + $(use_enable systemd systemd-journal) + $(use_with systemd systemd-run "/usr/bin/systemd-run") + $(use_enable valgrind valgrind-pool) + $(use_with nvme libnvme) + $(use_enable nvme nvme-wwid) + --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" + CLDFLAGS="${LDFLAGS}" + ) + + econf "${myeconfargs[@]}" +} + +src_compile() { + emake V=1 -C include + + if use lvm ; then + emake V=1 + emake V=1 CC="$(tc-getCC)" -C scripts + else + emake V=1 device-mapper + # https://bugs.gentoo.org/878131 + emake V=1 -C libdm/dm-tools device-mapper + fi +} + +src_test() { + einfo "Tests other than unit tests are disabled because of device-node" + einfo "mucking, run tests, compile the package and see ${S}/tests" + + # run only unit tests + emake V=1 -C "${S}"/test -j1 run-unit-test +} + +src_install() { + local targets=() + if use lvm; then + targets+=( install install_tmpfiles_configuration ) + if use systemd; then + # install systemd related files only when requested, bug #522430 + targets+=( install_systemd_units ) + fi + else + targets+=( install_device-mapper ) + fi + + # -j1 for bug #918125 + emake -j1 V=1 DESTDIR="${D}" "${targets[@]}" + + newinitd "${FILESDIR}"/device-mapper.rc-r3 device-mapper + newconfd "${FILESDIR}"/device-mapper.conf-r4 device-mapper + + if use lvm ; then + newinitd "${FILESDIR}"/dmeventd.initd-r3 dmeventd + newinitd "${FILESDIR}"/lvm.rc-r1 lvm + newconfd "${FILESDIR}"/lvm.confd-r4 lvm + if ! use udev ; then + # We keep the variable but remove udev from it. + sed -r -i \ + -e '/^rc_need=/s/\<udev\>//g' \ + "${ED}"/etc/conf.d/lvm || die "Could not drop udev from rc_need" + fi + + newinitd "${FILESDIR}"/lvm-monitoring.initd-r3 lvm-monitoring + newinitd "${FILESDIR}"/lvmpolld.initd-r1 lvmpolld + + if use sanlock; then + newinitd "${FILESDIR}"/lvmlockd.initd-r2 lvmlockd + fi + fi + + if use static-libs; then + dolib.a libdm/ioctl/libdevmapper.a + if use lvm; then + # depends on lvmetad + dolib.a libdaemon/client/libdaemonclient.a #462908 + # depends on dmeventd + dolib.a daemons/dmeventd/libdevmapper-event.a + fi + else + rm -f "${ED}"/usr/$(get_libdir)/{libdevmapper-event,liblvm2cmd,liblvm2app,libdevmapper}.a || die + fi + + insinto /etc + doins "${FILESDIR}"/dmtab + + dodoc README VERSION* WHATS_NEW WHATS_NEW_DM doc/*.{c,txt} conf/*.conf +} + +pkg_preinst() { + HAD_LVM=0 + + if has_version 'sys-fs/lvm2[lvm(+)]' ; then + HAD_LVM=1 + fi +} + +pkg_postinst() { + use lvm && tmpfiles_process lvm2.conf + use udev && udev_reload + + # This is a new installation + if [[ -z "${REPLACING_VERSIONS}" ]]; then + if use lvm ; then + ewarn "Make sure the \"lvm\" init script is in the runlevels:" + ewarn "# rc-update add lvm boot" + ewarn + ewarn "Make sure to enable lvmetad in ${EROOT}/etc/lvm/lvm.conf if you want" + ewarn "to enable lvm autoactivation and metadata caching." + else + ewarn "Please enable USE=lvm if you need the LVM daemon and" + ewarn "tools like 'lvchange', 'vgchange', etc!" + fi + else + if ! use lvm && [[ ${HAD_LVM} -eq 1 ]] ; then + ewarn "LVM was previously enabled but is now disabled." + ewarn "Please enable USE=lvm if you need the LVM daemon and" + ewarn "tools like 'lvchange', 'vgchange', etc!" + ewarn "See the 2022-11-19-lvm2-default-USE-flags news item for more details." + fi + fi + + if use udev && [[ -d /run ]] ; then + local permission_run_expected="drwxr-xr-x" + local permission_run=$(stat -c "%A" /run) + if [[ "${permission_run}" != "${permission_run_expected}" ]] ; then + ewarn "Found the following problematic permissions:" + ewarn "" + ewarn " ${permission_run} /run" + ewarn "" + ewarn "Expected:" + ewarn "" + ewarn " ${permission_run_expected} /run" + ewarn "" + ewarn "This is known to cause problems for udev-enabled LVM services." + fi + fi +} + +pkg_postrm() { + if use udev && [[ -z ${REPLACED_BY_VERSION} ]]; then + udev_reload + fi +} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/lvm2-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/lvm2-9999.ebuild new file mode 100644 index 00000000000..2412519d2eb --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/lvm2-9999.ebuild @@ -0,0 +1,334 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TMPFILES_OPTIONAL=1 +inherit autotools linux-info systemd toolchain-funcs tmpfiles udev flag-o-matic + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gitlab.com/lvmteam/lvm2.git" +else + SRC_URI="https://sourceware.org/ftp/lvm2/${PN^^}.${PV}.tgz" + S="${WORKDIR}/${PN^^}.${PV}" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +DESCRIPTION="User-land utilities for LVM2 (device-mapper) software" +HOMEPAGE="https://sourceware.org/lvm2/" + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0" +IUSE="lvm nvme readline sanlock selinux static static-libs systemd test thin +udev valgrind xfs" +REQUIRED_USE=" + static? ( !systemd !udev !nvme ) + static-libs? ( static !udev ) + systemd? ( udev ) + test? ( lvm ) + thin? ( lvm ) +" +RESTRICT="!test? ( test )" + +# Doesn't strictly need >=sanlock-4.0.0 but autodetects features, so pick +# the best we have for predictability. Ditto systemd. +DEPEND_COMMON=" + udev? ( virtual/libudev:= ) + lvm? ( + dev-libs/libaio + >=sys-apps/util-linux-2.24 + readline? ( sys-libs/readline:= ) + sanlock? ( >=sys-cluster/sanlock-4.0.0 ) + systemd? ( >=sys-apps/systemd-234:= ) + ) +" +# /run is now required for locking during early boot. /var cannot be assumed to +# be available -- thus, pull in recent enough baselayout for /run. +# This version of LVM is incompatible with cryptsetup <1.1.2. +RDEPEND=" + ${DEPEND_COMMON} + >=sys-apps/baselayout-2.2 + lvm? ( virtual/tmpfiles ) + nvme? ( >=sys-libs/libnvme-1.1 ) +" + +PDEPEND=" + lvm? ( + thin? ( >=sys-block/thin-provisioning-tools-1.0.6 ) + ) +" +# note: thin-0.3.0 is required to avoid --disable-thin_check_needs_check +DEPEND=" + ${DEPEND_COMMON} + static? ( + sys-apps/util-linux[static-libs] + lvm? ( + dev-libs/libaio[static-libs] + readline? ( sys-libs/readline[static-libs] ) + ) + selinux? ( sys-libs/libselinux[static-libs] ) + ) + valgrind? ( >=dev-debug/valgrind-3.6 ) + xfs? ( sys-fs/xfsprogs ) +" +BDEPEND=" + dev-build/autoconf-archive + virtual/pkgconfig +" + +PATCHES=( + # Gentoo specific modification(s): + "${FILESDIR}"/${PN}-2.03.20-example.conf.in.patch + + # For upstream -- review and forward: + "${FILESDIR}"/${PN}-2.03.37-dmeventd-no-idle-exit.patch + "${FILESDIR}"/${PN}-2.03.20-freopen-musl.patch + "${FILESDIR}"/${PN}-2.03.22-autoconf-2.72-egrep.patch + "${FILESDIR}"/${PN}-2.03.22-thin-autodetect.patch +) + +pkg_setup() { + local CONFIG_CHECK="~SYSVIPC" + + if use udev; then + local WARNING_SYSVIPC="CONFIG_SYSVIPC:\tis not set (required for udev sync)\n" + if linux_config_exists; then + local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH) + if [[ -n "${uevent_helper_path}" ]] && [[ "${uevent_helper_path}" != '""' ]]; then + ewarn "It's recommended to set an empty value to the following kernel config option:" + ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}" + fi + fi + fi + + check_extra_config + + # 1. Genkernel no longer copies /sbin/lvm blindly. + if use static; then + elog "Warning, we no longer overwrite /sbin/lvm and /sbin/dmsetup with" + elog "their static versions. If you need the static binaries," + elog "you must append .static to the filename!" + fi +} + +src_prepare() { + default + + # Users without systemd get no auto-activation of any logical volume + if ! use systemd ; then + eapply "${FILESDIR}"/${PN}-2.03.20-dm_lvm_rules_no_systemd.patch + fi + + eautoreconf +} + +src_configure() { + filter-lto + + export ac_cv_header_xfs_xfs_h=$(usex xfs) + + # Most of this package does weird stuff. + # The build options are tristate, and --without is NOT supported + # options: 'none', 'internal', 'shared' + local myeconfargs=( + $(use_enable lvm dmfilemapd) + $(use_enable lvm dmeventd) + $(use_enable lvm cmdlib) + $(use_enable lvm fsadm) + $(use_enable lvm lvmpolld) + + # This only causes the .static versions to become available + $(usev static --enable-static_link) + + # dmeventd requires mirrors to be internal, and snapshot available + # so we cannot disable them + --with-mirrors="$(usex lvm internal none)" + --with-snapshots="$(usex lvm internal none)" + ) + + if use lvm && use thin; then + myeconfargs+=( + --with-thin=internal + --enable-thin_check_needs_check + --with-cache=internal + --enable-cache_check_needs_check + ) + local texec + for texec in check dump repair restore; do + myeconfargs+=( --with-thin-${texec}="${EPREFIX}"/usr/sbin/thin_${texec} ) + myeconfargs+=( --with-cache-${texec}="${EPREFIX}"/usr/sbin/cache_${texec} ) + done + else + myeconfargs+=( --with-thin=none --with-cache=none ) + fi + + myeconfargs+=( + # musl doesn't do symbol versioning so can end up with + # runtime breakage. + --with-symvers=$(usex elibc_glibc 'gnu' 'no') + $(use_enable readline) + $(use_enable selinux) + --enable-pkgconfig + --with-confdir="${EPREFIX}"/etc + --exec-prefix="${EPREFIX}" + --sbindir="${EPREFIX}/sbin" + --with-staticdir="${EPREFIX}"/sbin + --libdir="${EPREFIX}/$(get_libdir)" + --with-usrlibdir="${EPREFIX}/usr/$(get_libdir)" + --with-default-dm-run-dir=/run + --with-default-run-dir=/run/lvm + --with-default-locking-dir=/run/lock/lvm + --with-default-pid-dir=/run + $(use_enable udev udev_rules) + $(use_enable udev udev_sync) + $(use_with udev udevdir "${EPREFIX}$(get_udevdir)"/rules.d) + # USE=sanlock requires USE=lvm + $(use_enable $(usex lvm sanlock lvm) lvmlockd-sanlock) + $(use_with systemd) + $(use_enable systemd sd-notify) + $(use_enable systemd systemd-journal) + $(use_enable systemd notify-dbus) + $(use_enable systemd app-machineid) + $(use_enable systemd systemd-journal) + $(use_with systemd systemd-run "/usr/bin/systemd-run") + $(use_enable valgrind valgrind-pool) + $(use_with nvme libnvme) + $(use_enable nvme nvme-wwid) + --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" + CLDFLAGS="${LDFLAGS}" + ) + + econf "${myeconfargs[@]}" +} + +src_compile() { + emake V=1 -C include + + if use lvm ; then + emake V=1 + emake V=1 CC="$(tc-getCC)" -C scripts + else + emake V=1 device-mapper + # https://bugs.gentoo.org/878131 + emake V=1 -C libdm/dm-tools device-mapper + fi +} + +src_test() { + einfo "Tests other than unit tests are disabled because of device-node" + einfo "mucking, run tests, compile the package and see ${S}/tests" + + # run only unit tests + emake V=1 -C "${S}"/test -j1 run-unit-test +} + +src_install() { + local targets=() + if use lvm; then + targets+=( install install_tmpfiles_configuration ) + if use systemd; then + # install systemd related files only when requested, bug #522430 + targets+=( install_systemd_units ) + fi + else + targets+=( install_device-mapper ) + fi + + # -j1 for bug #918125 + emake -j1 V=1 DESTDIR="${D}" "${targets[@]}" + + newinitd "${FILESDIR}"/device-mapper.rc-r3 device-mapper + newconfd "${FILESDIR}"/device-mapper.conf-r4 device-mapper + + if use lvm ; then + newinitd "${FILESDIR}"/dmeventd.initd-r3 dmeventd + newinitd "${FILESDIR}"/lvm.rc-r1 lvm + newconfd "${FILESDIR}"/lvm.confd-r4 lvm + if ! use udev ; then + # We keep the variable but remove udev from it. + sed -r -i \ + -e '/^rc_need=/s/\<udev\>//g' \ + "${ED}"/etc/conf.d/lvm || die "Could not drop udev from rc_need" + fi + + newinitd "${FILESDIR}"/lvm-monitoring.initd-r3 lvm-monitoring + newinitd "${FILESDIR}"/lvmpolld.initd-r1 lvmpolld + + if use sanlock; then + newinitd "${FILESDIR}"/lvmlockd.initd-r2 lvmlockd + fi + fi + + if use static-libs; then + dolib.a libdm/ioctl/libdevmapper.a + if use lvm; then + # depends on lvmetad + dolib.a libdaemon/client/libdaemonclient.a #462908 + # depends on dmeventd + dolib.a daemons/dmeventd/libdevmapper-event.a + fi + else + rm -f "${ED}"/usr/$(get_libdir)/{libdevmapper-event,liblvm2cmd,liblvm2app,libdevmapper}.a || die + fi + + insinto /etc + doins "${FILESDIR}"/dmtab + + dodoc README VERSION* WHATS_NEW WHATS_NEW_DM doc/*.{c,txt} conf/*.conf +} + +pkg_preinst() { + HAD_LVM=0 + + if has_version 'sys-fs/lvm2[lvm(+)]' ; then + HAD_LVM=1 + fi +} + +pkg_postinst() { + use lvm && tmpfiles_process lvm2.conf + use udev && udev_reload + + # This is a new installation + if [[ -z "${REPLACING_VERSIONS}" ]]; then + if use lvm ; then + ewarn "Make sure the \"lvm\" init script is in the runlevels:" + ewarn "# rc-update add lvm boot" + ewarn + ewarn "Make sure to enable lvmetad in ${EROOT}/etc/lvm/lvm.conf if you want" + ewarn "to enable lvm autoactivation and metadata caching." + else + ewarn "Please enable USE=lvm if you need the LVM daemon and" + ewarn "tools like 'lvchange', 'vgchange', etc!" + fi + else + if ! use lvm && [[ ${HAD_LVM} -eq 1 ]] ; then + ewarn "LVM was previously enabled but is now disabled." + ewarn "Please enable USE=lvm if you need the LVM daemon and" + ewarn "tools like 'lvchange', 'vgchange', etc!" + ewarn "See the 2022-11-19-lvm2-default-USE-flags news item for more details." + fi + fi + + if use udev && [[ -d /run ]] ; then + local permission_run_expected="drwxr-xr-x" + local permission_run=$(stat -c "%A" /run) + if [[ "${permission_run}" != "${permission_run_expected}" ]] ; then + ewarn "Found the following problematic permissions:" + ewarn "" + ewarn " ${permission_run} /run" + ewarn "" + ewarn "Expected:" + ewarn "" + ewarn " ${permission_run_expected} /run" + ewarn "" + ewarn "This is known to cause problems for udev-enabled LVM services." + fi + fi +} + +pkg_postrm() { + if use udev && [[ -z ${REPLACED_BY_VERSION} ]]; then + udev_reload + fi +} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/metadata.xml b/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/metadata.xml index 33bafa5c0ee..22ea530f19b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/sys-fs/lvm2/metadata.xml @@ -13,6 +13,13 @@ If your system uses LVM2 for managing disks and partitions, enable this flag. </flag> <flag name="sanlock">Enable lvmlockd with support for sanlock</flag> + <flag name="nvme"> + Build and install NVMe plugin for determining the World-Wide Identification + (WWID) of an NVME device via <pkg>sys-libs/libnvme</pkg>. + </flag> + <flag name="xfs"> + Support XFS for 'lvextend --resizefs'. + </flag> </use> <upstream> <remote-id type="cpe">cpe:/a:heinz_mauelshagen:lvm2</remote-id> From c7c05141466fedf01a62aecb2c99df52a1c61959 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:54 +0000 Subject: [PATCH 234/291] sys-fs/lxcfs: Sync with Gentoo It's from Gentoo commit ff832c0d6ed2e0575a745daa59d46c34ff1a4732. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-fs/lxcfs/Manifest | 2 + .../sys-fs/lxcfs/lxcfs-6.0.6.ebuild | 82 +++++++++++++++++++ 2 files changed, 84 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/lxcfs/lxcfs-6.0.6.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/lxcfs/Manifest b/sdk_container/src/third_party/portage-stable/sys-fs/lxcfs/Manifest index 7700d65826c..32d891f72ff 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/lxcfs/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-fs/lxcfs/Manifest @@ -4,3 +4,5 @@ DIST lxcfs-6.0.4.tar.gz 106751 BLAKE2B 4f05cb5e31ed1f313eeb42ac7cc9e68031011af36 DIST lxcfs-6.0.4.tar.gz.asc 833 BLAKE2B 71d552694273e6b3fbeaa4fd2a07ad783ca66824fa7fef69ba79a343b65e57295a702efe580c17e77c6fdb3f79364e98206a099ef3ac99b1d1238178cd343e20 SHA512 fecc002f39f841f3ffbfd7c543cdfed61b9276e962a75230b2962a36bbef04f5444481bb1409ba38ed8f619d0887313f1cc84389f64755d6168c017f68bbaeb2 DIST lxcfs-6.0.5.tar.gz 106565 BLAKE2B 1a726165be6670c7da4cab3e401e81229ba34f0852885de7d96e3099715c67aa5f49b48f7cfead1659cce1d0b3e191b6206df0b214a2487cac35170ea0ba104e SHA512 729c75bca4da79af9c38c6a42dbebf876d861e0b2c4b825c46edc3a39d27bae1a6a4faeff000d8a1e1a887437184a0413f763512c789cf9ce3ddbaab02de4ece DIST lxcfs-6.0.5.tar.gz.asc 833 BLAKE2B 58a12c083bf4b1d5138aec172223eed1d79284c6d48cc7262f9e9dac479894f094d6a8f2051aee9352c99947a638bb891cd48690d194e3d4b4392231ff8ebaef SHA512 c50289168d1a6c970dcffe61dcf2ee5296420c91cd8638b0f285e53e07b0e0d3704a199c8eceee2d282b2906e430165e86315271a9bd9335a91252727c2c921c +DIST lxcfs-6.0.6.tar.gz 107250 BLAKE2B 450c82293cc02477261e7b1b00e89e4ce293d2c991525b42ebf10de8ed88b221680ab05c1b41b763b02d7a53cbce7beb05e84d6218c8add46e564723c9b1004f SHA512 cf8801c3b990e0630983cb42e2093e8f66ef5ae185b206b1ba1429edf199cefe1cd36dc6024453ecf2917c16b83e4ea1516a58dcbf61a5df0a4afbecb0cfff82 +DIST lxcfs-6.0.6.tar.gz.asc 833 BLAKE2B 69d03a0089c2b9141816bf1b1c778cd8563afdac12f83546ee16ec8497ae17d16a2ae335dc3fa29bae3fe827b8ba7dd161568156cd6231cb85731dc9993bdccb SHA512 e5b76c82577689f26d4d44808d37af5530f7dfdeed8a104a0c7eddc541902bf4cfdabbdae681c7917418f8461a527baf2b70d07f03b396e808537bb327c7864c diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/lxcfs/lxcfs-6.0.6.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/lxcfs/lxcfs-6.0.6.ebuild new file mode 100644 index 00000000000..62a73249020 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-fs/lxcfs/lxcfs-6.0.6.ebuild @@ -0,0 +1,82 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..14} ) + +inherit cmake meson python-any-r1 systemd verify-sig + +DESCRIPTION="FUSE filesystem for LXC" +HOMEPAGE="https://linuxcontainers.org/lxcfs/introduction/ https://github.com/lxc/lxcfs/" +SRC_URI="https://linuxcontainers.org/downloads/lxcfs/${P}.tar.gz + verify-sig? ( https://linuxcontainers.org/downloads/lxcfs/${P}.tar.gz.asc )" + +LICENSE="Apache-2.0 LGPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" +IUSE="doc test" + +DEPEND="sys-fs/fuse:3=" +RDEPEND="${DEPEND}" +BDEPEND="${PYTHON_DEPS} + virtual/pkgconfig + $(python_gen_any_dep ' + dev-python/jinja2[${PYTHON_USEDEP}] + ') + doc? ( sys-apps/help2man ) + verify-sig? ( sec-keys/openpgp-keys-linuxcontainers )" + +# Needs some black magic to work inside container/chroot. +RESTRICT="test" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/linuxcontainers.asc + +python_check_deps() { + python_has_version -b "dev-python/jinja2[${PYTHON_USEDEP}]" +} + +pkg_setup() { + python-any-r1_pkg_setup +} + +src_prepare() { + default + + # Fix python shebangs for python-exec[-native-symlinks], #851480 + local shebangs=($(grep -rl "#!/usr/bin/env python3" || die)) + python_fix_shebang -q ${shebangs[*]} +} + +src_configure() { + local emesonargs=( + --localstatedir "${EPREFIX}/var" + + $(meson_use doc docs) + $(meson_use test tests) + + -Dfuse-version=3 + -Dinit-script="" + -Dmocks=false + -Dwith-init-script="" + ) + + meson_src_configure +} + +src_test() { + cd "${BUILD_DIR}"/tests || die "failed to change into tests/ directory." + ./main.sh || die +} + +src_install() { + meson_src_install + + newconfd "${FILESDIR}"/lxcfs-5.0.2.confd lxcfs + newinitd "${FILESDIR}"/lxcfs-5.0.2.initd lxcfs + + # Provide our own service file (copy of upstream) due to paths being different from upstream, + # #728470 + # https://github.com/lxc/lxcfs/tree/main/config/init + systemd_newunit "${FILESDIR}"/lxcfs-5.0.2.service lxcfs.service +} From 6488d50a2f76ad82c6dded60eca1df3f0ed6716b Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:54 +0000 Subject: [PATCH 235/291] sys-fs/mdadm: Sync with Gentoo It's from Gentoo commit 027550af3a685a2b529188326521b012d0579b6b. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-fs/mdadm/Manifest | 2 + .../sys-fs/mdadm/mdadm-4.5.ebuild | 122 ++++++++++++++++++ 2 files changed, 124 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/mdadm/mdadm-4.5.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/Manifest b/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/Manifest index 5307ea488fd..fedaa62edbb 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/Manifest @@ -1,2 +1,4 @@ DIST mdadm-4.4.tar.gz 619823 BLAKE2B d368681d94e31db2127a1114ad21b76647ee4b62f701705a93ca8482a58ec10d9cd58c5394bb346da0c58339f759fa6168441250a504931e43c0943b74ceef85 SHA512 08682b27f41a230f188d3b61e22e95ff8808b36c8fc2cba1dff443d39a72b35ba2eaf29ed64c7e5583c177fe6b71df983ec9a80a4128d8f07d58b7435d4700f6 +DIST mdadm-4.5.tar.gz 623840 BLAKE2B 6cfa80514b4d51c2e8c5e3275ec3dce1a59c509fd83dbc41d395e47ed59c19df30b0382cf6dc5f3c6faf973296e341bc5e461303b3a0f6ce58da887ef0e8a418 SHA512 2b13cca2ffb8d3d4a80120016f3f646c61afa42c8c074502aaa7b1cd1fa908614f2080e575ab03d21f6fb954bc7663706622bba787af653c51ba3f8f741e8e6f DIST mdadm_4.4-3.debian.tar.xz 88948 BLAKE2B 48d2af9477b420f1bbaffebbeaf2389038f8f58846264fcda5f25d72c64c5543a2cd73eb3fba4c7dc834810e3367f571628bdcc43989724f773fc3789514c765 SHA512 8be55fb40e21ad4026339e8e03df1c4889b66f36d4c41627dd60528dc424e5faa10cb20e8e3fbe737eb9af4705eed10bd4e7017353e773ac73cbeaaa3670d2ff +DIST mdadm_4.5-5.debian.tar.xz 92056 BLAKE2B da078b4d7f718ff57ad67cc8aaf572cab3e0bf434eb91fb581f71d41d6087f8c807731d1336e35e6cdc3e6dbbdfd1f8f62138b5a60e6de969d04c143b72cfbf9 SHA512 53e31549b3140ad049d76b57a5f5c8de2b46fdaebdac001ceb29e5aaade00e6dae681928eb9bd4572068506a420397e824d43e757a6c628fb21b111a2732e0e5 diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/mdadm-4.5.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/mdadm-4.5.ebuild new file mode 100644 index 00000000000..1ee495c90b0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/mdadm-4.5.ebuild @@ -0,0 +1,122 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic systemd toolchain-funcs udev + +DEB_PF="4.5-5" +DESCRIPTION="Tool for running RAID systems - replacement for the raidtools" +HOMEPAGE="https://github.com/md-raid-utilities/mdadm https://git.kernel.org/pub/scm/utils/mdadm/mdadm.git/" +SRC_URI="https://git.kernel.org/pub/scm/utils/mdadm/mdadm.git/snapshot/${P}.tar.gz" +SRC_URI+=" mirror://debian/pool/main/m/mdadm/${PN}_${DEB_PF}.debian.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" +fi +IUSE="static systemd +udev corosync" +REQUIRED_USE="static? ( !udev )" + +BDEPEND="virtual/pkgconfig" +DEPEND=" + udev? ( virtual/libudev:= ) + corosync? ( sys-cluster/corosync ) +" +RDEPEND=" + ${DEPEND} + >=sys-apps/util-linux-2.16 +" + +# The tests edit values in /proc and run tests on software raid devices. +# Thus, they shouldn't be run on systems with active software RAID devices. +RESTRICT="test" + +PATCHES=( + "${WORKDIR}/debian/patches/debian" +) + +mdadm_emake() { + # We should probably make libdlm into USE flags (bug #573782) + local args=( + PKG_CONFIG="$(tc-getPKG_CONFIG)" + CC="$(tc-getCC)" + CWFLAGS="-Wall -fPIE" + CXFLAGS="${CFLAGS}" + LDFLAGS="${LDFLAGS}" + UDEVDIR="$(get_udevdir)" + SYSTEMD_DIR="$(systemd_get_systemunitdir)" + COROSYNC="$(usev !corosync '-DNO_COROSYNC')" + DLM="-DNO_DLM" + + # bug #732276 + STRIP= + + "$@" + ) + + emake "${args[@]}" +} + +src_compile() { + use static && append-ldflags -static + + # CPPFLAGS won't work for this + use udev || append-cflags -DNO_LIBUDEV + + # bug 907082 + use elibc_musl && append-cppflags -D_LARGEFILE64_SOURCE + + mdadm_emake all +} + +src_test() { + mdadm_emake test + + sh ./test || die +} + +src_install() { + mdadm_emake DESTDIR="${D}" install install-systemd + + einstalldocs + + # install mdcheck_start.service, needed for systemd units (bug #833000) + exeinto /usr/share/mdadm/ + doexe misc/mdcheck + + insinto /etc + newins documentation/mdadm.conf-example mdadm.conf + newinitd "${FILESDIR}"/mdadm.rc mdadm + newconfd "${FILESDIR}"/mdadm.confd mdadm + newinitd "${FILESDIR}"/mdraid.rc mdraid + newconfd "${FILESDIR}"/mdraid.confd mdraid + + # From the Debian patchset + into /usr + dodoc "${WORKDIR}"/debian/local/doc/README.checkarray + dosbin "${WORKDIR}"/debian/local/bin/checkarray + insinto /etc/default + newins "${FILESDIR}"/etc-default-mdadm mdadm + + exeinto /etc/cron.weekly + newexe "${FILESDIR}"/mdadm.weekly mdadm +} + +pkg_postinst() { + udev_reload + + if ! systemd_is_booted; then + if [[ -z ${REPLACING_VERSIONS} ]] ; then + # Only inform people the first time they install. + elog "If you're not relying on kernel auto-detect of your RAID" + elog "devices, you need to add 'mdraid' to your 'boot' runlevel:" + elog " rc-update add mdraid boot" + fi + fi +} + +pkg_postrm() { + udev_reload +} From 6790dd4e80e8643dc8d03a16a2e29a3e6ca6031a Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:56 +0000 Subject: [PATCH 236/291] sys-fs/multipath-tools: Sync with Gentoo It's from Gentoo commit 8ff2f54b2437d549c99f998354fa698bb915d1bc. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-fs/multipath-tools/Manifest | 1 + .../multipath-tools-0.14.3.ebuild | 107 ++++++++++++++++++ 2 files changed, 108 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/multipath-tools/multipath-tools-0.14.3.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/multipath-tools/Manifest b/sdk_container/src/third_party/portage-stable/sys-fs/multipath-tools/Manifest index 8a61ea0267a..c59e1baaabd 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/multipath-tools/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-fs/multipath-tools/Manifest @@ -1 +1,2 @@ +DIST multipath-tools-0.14.3.tar.gz 623654 BLAKE2B b59cb622f50299b3f0c0c6ede89fed5dc3641a8833b57369a1878468912bece7472be226a52d16008f71ac78fedd903d474dfb4d536b0a6e697e4d57edaad25b SHA512 8434396da58636d0f7082fdbca2ee8f1e50c38e39d9c1e00a8a235f18d3bc34973a3d7c6c011ba8a1a48454a3b9366c5a7ccce57d2ddc0ed2decc013a8f9728e DIST multipath-tools-0.9.8.tar.gz 580531 BLAKE2B 66bc6b78795c08b4fe5f4bc718330be51b073dddb597998f384ccaf746c0b9e53e21d674623df03ed7f9ccd9800fe988add8068e0eaaeace076c00395453ba0a SHA512 4d73bcf6bce769a829c306c609b206ddba65a708620f458106e406dd18d12f9a9d97f400662daa8e6a75c9fdf7decb6dcbda92cb807b6c53522c7b4b2795b627 diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/multipath-tools/multipath-tools-0.14.3.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/multipath-tools/multipath-tools-0.14.3.ebuild new file mode 100644 index 00000000000..9540fdcd050 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-fs/multipath-tools/multipath-tools-0.14.3.ebuild @@ -0,0 +1,107 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic linux-info systemd tmpfiles toolchain-funcs udev + +DESCRIPTION="Device mapper target autoconfig" +HOMEPAGE="http://christophe.varoqui.free.fr/" +SRC_URI="https://github.com/opensvc/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" +IUSE="systemd test" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-libs/json-c:= + dev-libs/libaio + dev-libs/userspace-rcu:= + >=sys-fs/lvm2-2.02.45 + sys-libs/readline:= + >=virtual/libudev-232-r3 + systemd? ( sys-apps/systemd ) +" +DEPEND=" + ${RDEPEND} + test? ( dev-util/cmocka ) +" +BDEPEND="virtual/pkgconfig" + +CONFIG_CHECK="~DM_MULTIPATH" + +myemake() { + local myemakeargs=( + prefix="${EPREFIX}" + usr_prefix="${EPREFIX}/usr" + LIB="$(get_libdir)" + RUN=run + plugindir="${EPREFIX}/$(get_libdir)/multipath" + unitdir="$(systemd_get_systemunitdir)" + libudevdir="${EPREFIX}$(get_udevdir)" + GENTOO_CFLAGS="${CFLAGS}" + GENTOO_CPPFLAGS="${CPPFLAGS}" + FORTIFY_OPT= + OPTFLAGS= + FAKEVAR=1 + WERROR= + V=1 + ) + + if ! use systemd; then + # Bug 956025 + myemakeargs+=( SYSTEMD= ) + fi + + emake "${myemakeargs[@]}" "$@" +} + +src_prepare() { + default + + sed -r -i -e '/^(CPPFLAGS|CFLAGS)\>/s,^(CPPFLAGS|CFLAGS)\>[[:space:]]+:=,\1 := $(GENTOO_\1),' \ + "${S}"/Makefile.inc || die +} + +src_compile() { + tc-export CC + # Breaks with always_inline + filter-flags -fno-semantic-interposition + # Breaks because of use of wrapping (-Wl,-wrap, wrap_*) + # https://github.com/opensvc/multipath-tools/issues/18 + filter-lto + myemake +} + +src_test() { + myemake test +} + +src_install() { + dodir /sbin + + myemake DESTDIR="${ED}" install + + einstalldocs + + newinitd "${FILESDIR}"/multipathd-r1.rc multipathd + newinitd "${FILESDIR}"/multipath.rc multipath + + find "${ED}" -type f -name '*.la' -delete || die +} + +pkg_postinst() { + tmpfiles_process /usr/lib/tmpfiles.d/multipath.conf + udev_reload + + if [[ -z ${REPLACING_VERSIONS} ]] ; then + elog "If you need multipath on your system, you must" + elog "add 'multipath' into your boot runlevel!" + fi +} + +pkg_postrm() { + udev_reload +} From 714d843ebcff967004e9e1f7773b4192d90e1a55 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:56 +0000 Subject: [PATCH 237/291] sys-fs/quota: Sync with Gentoo It's from Gentoo commit dc2c82d3e59b4c76f3c33a91c90b0bdbc1460fda. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../third_party/portage-stable/sys-fs/quota/quota-4.11.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/quota/quota-4.11.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/quota/quota-4.11.ebuild index 326b49b0d01..26e44fe15f4 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/quota/quota-4.11.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/quota/quota-4.11.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -9,7 +9,7 @@ SRC_URI="https://downloads.sourceforge.net/linuxquota/${P}.tar.gz" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" IUSE="ldap netlink nls rpc selinux tcpd" RDEPEND=" From e48ec78040947cc7eb599c142547f71eeee2dd3e Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:56 +0000 Subject: [PATCH 238/291] sys-fs/squashfs-tools: Sync with Gentoo It's from Gentoo commit 1545efcc053c10ace61699c5dfc8cc14da6ea715. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-fs/squashfs-tools/Manifest | 3 +- .../squashfs-tools-4.7.2.ebuild | 57 ------------------- ...7.3.ebuild => squashfs-tools-4.7.5.ebuild} | 2 +- 3 files changed, 2 insertions(+), 60 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/squashfs-tools-4.7.2.ebuild rename sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/{squashfs-tools-4.7.3.ebuild => squashfs-tools-4.7.5.ebuild} (97%) diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/Manifest b/sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/Manifest index 59ed14419df..d8eea305701 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/Manifest @@ -1,3 +1,2 @@ -DIST squashfs-tools-4.7.2.tar.gz 638262 BLAKE2B 7501a0ea11ae057b297d1dedcd1a4c1475a641102c0662614c820f7bed6d9437e282303d0e35b50185aa74b22d3cf8bffb4424e1e20b398ef068ef822fcb7097 SHA512 4ef134935e97267544837806d8494f7eab14bae834afdb5caf4862703652c6f33bd38ade45e3a276927bfdb4877d5474c1d5b8c14090cc3a63a80aa931e6b25f -DIST squashfs-tools-4.7.3.tar.gz 396304 BLAKE2B f514187dee5141f10ae626880dc6d9101b46e480eaa94602307d6e5132fc7dc46d3db24ab041d6f200cdb1f46d325bf89868b708af0891bdb92e6c7ff44d5f92 SHA512 8b334b765d0426acdc3df4d3afc0c197368f81f01a6dd79acf9f894155b60d972bccd198d7652000cf81479084ba45ff2a82611949cc4aa1a71e43317b836ca2 DIST squashfs-tools-4.7.4.tar.gz 408882 BLAKE2B 2488f2d953c53bbf25d18242b4cb315ebe67f336bb07003d52622f701c9ee8409330fe16a5782737777cbbd62228181973005e66c4e56f28900769dad94df51e SHA512 16943b331723c301d7e65c14e5946d3fa27f974ba509a412ab6182a48d83a935d445feb80a27d89a5b5ba5cf86e55835f12d28c2b2b57f5623e1151cb2966376 +DIST squashfs-tools-4.7.5.tar.gz 412571 BLAKE2B 69720d858e3b1b3255930cd39033f06c7824f5b94ee5da27562d4873701c5f724cf4cebdb853026b20f1d3b32be8b579404e092f4f98908373fe95da83ba631d SHA512 d24f1c8611dc7dcb17b81f3a34ee8c0d3484141c70ebe7c77c91c966e76cddc671e24d3f4a471ddc819c4708480cdd179168fe2bca8a09e97cebf0da9ef83b1c diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/squashfs-tools-4.7.2.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/squashfs-tools-4.7.2.ebuild deleted file mode 100644 index 690b0eefa67..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/squashfs-tools-4.7.2.ebuild +++ /dev/null @@ -1,57 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic toolchain-funcs - -DESCRIPTION="Tools to create and extract Squashfs filesystems" -HOMEPAGE="https://github.com/plougher/squashfs-tools/" -SRC_URI=" - https://github.com/plougher/squashfs-tools/archive/${PV}.tar.gz - -> ${P}.tar.gz -" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE="debug lz4 lzma lzo xattr zstd" - -DEPEND=" - virtual/zlib:= - lz4? ( app-arch/lz4 ) - lzma? ( app-arch/xz-utils ) - lzo? ( dev-libs/lzo ) - xattr? ( sys-apps/attr ) - zstd? ( app-arch/zstd ) -" -RDEPEND=${DEPEND} - -use10() { - usex "${1}" 1 0 -} - -src_compile() { - # set up make command line variables in EMAKE_SQUASHFS_CONF - local opts=( - LZMA_XZ_SUPPORT=$(use10 lzma) - LZO_SUPPORT=$(use10 lzo) - LZ4_SUPPORT=$(use10 lz4) - XATTR_SUPPORT=$(use10 xattr) - XZ_SUPPORT=$(use10 lzma) - ZSTD_SUPPORT=$(use10 zstd) - ) - - tc-export CC - use debug && append-cppflags -DSQUASHFS_TRACE - emake "${opts[@]}" -C squashfs-tools -} - -src_install() { - dobin squashfs-tools/{mksquashfs,unsquashfs} - dodoc ACKNOWLEDGEMENTS CHANGES README* - doman Documentation/manpages/*.1 - - dosym unsquashfs /usr/bin/sqfscat - dosym mksquashfs /usr/bin/sqfstar -} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/squashfs-tools-4.7.3.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/squashfs-tools-4.7.5.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/squashfs-tools-4.7.3.ebuild rename to sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/squashfs-tools-4.7.5.ebuild index 2ff2b7dc6fc..17d0cde7ed6 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/squashfs-tools-4.7.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/squashfs-tools-4.7.5.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 From 4288e7f33d31ff4a13061ea1a671e3dd8b9a2b4f Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:58 +0000 Subject: [PATCH 239/291] sys-fs/xfsprogs: Sync with Gentoo It's from Gentoo commit 383297927458e33bf4ca31525b4c13c1965053af. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-fs/xfsprogs/Manifest | 5 - .../files/xfsprogs-6.13.0-32-bit.patch | 44 ------- .../sys-fs/xfsprogs/xfsprogs-6.12.0.ebuild | 113 ----------------- .../sys-fs/xfsprogs/xfsprogs-6.13.0-r1.ebuild | 117 ------------------ .../sys-fs/xfsprogs/xfsprogs-6.14.0.ebuild | 113 ----------------- .../sys-fs/xfsprogs/xfsprogs-6.15.0.ebuild | 114 ----------------- .../sys-fs/xfsprogs/xfsprogs-6.16.0.ebuild | 112 ----------------- .../sys-fs/xfsprogs/xfsprogs-6.17.0.ebuild | 110 ---------------- .../sys-fs/xfsprogs/xfsprogs-6.18.0.ebuild | 4 +- 9 files changed, 2 insertions(+), 730 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/files/xfsprogs-6.13.0-32-bit.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.12.0.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.13.0-r1.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.14.0.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.15.0.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.16.0.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.17.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/Manifest b/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/Manifest index 028d8d72aae..4a34617aea9 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/Manifest @@ -1,7 +1,2 @@ -DIST xfsprogs-6.12.0.tar.xz 1471672 BLAKE2B 471832b07bc2cca5bde6e1ac253d151b0889f7b7be75ae322727299a83329899d4c3aac8217b069fee3f7abc6bc964127c35a206b04cb796999497f5ad701f44 SHA512 020810b4a261f4ab4eb94aae813f22b26bb9f17705967198189509e684422361dd80af938e4a77cf326353d5d61d5aeaaee9a34e8a7b8ed1dddd63b7ad1b0510 -DIST xfsprogs-6.13.0.tar.xz 1506676 BLAKE2B 98a8b51ba7fb7f58ea292e9c4624ca3c2337d962f832d92549763a85036b8ba0579de0d172465227eb51cc5c51e3b5d4f54144690001ea8b6795b3a43bc41b9b SHA512 9fd73c8585cd295b79b227cd5855407da4b3ea2d40a1ca82e0a93887644b497cced182960bcd8f3c45805dda4a244d1555fd49da5d7e82fe4525d345c766a63a -DIST xfsprogs-6.14.0.tar.xz 1543640 BLAKE2B 5ef446b2055356627cd91ebfe9bb07388f9b5a12fd8c530b83980261b2dc3ddfa47f809114f0f238ef787ed687d324abe82427fdc2b3ecc3171d4d06615dd0c4 SHA512 249a64fb5a92ceb9e58b75a270a90773cfe2c90e863d3f9853c14b3eb0f414bf55b8b67c220a1d7386894ef9295622e224977bd3c6600c9dcba826cb4a634f49 -DIST xfsprogs-6.15.0.tar.xz 1550568 BLAKE2B fe6806ac8235c0984055f7b969b11bc0c49ee8bb8f49f7a4c3bf03f1ebf839cccb86cdb6c4946723a1b8007422e057fb7b865cc60081037920e8208cfcab16e9 SHA512 975c9c7fe476b02da50da74eb599f804f2b27a638a74b807e1f69d93d0d150d19bf6d5036601b96febe557a6c51065d8cf22eef5fda92a6d7f084ac1d7647496 -DIST xfsprogs-6.16.0.tar.xz 1557452 BLAKE2B ae4087c887b4c9d2fcc4b5341ca3c7d0333cf2132111179feee4b765ba9a1cc94143723b2bc4bcd8658bd7902871266af69293c77d715de1d0e878dc76b42e8e SHA512 333ef39f38d0fa46742b7fd28ebc6482e90abb32e58634b3a93aa24f0202c55f4dc32f1b00a9859c6e64efada4d844c3a995a913520cb00d5e1a4f1a83da848d DIST xfsprogs-6.17.0.tar.xz 1563092 BLAKE2B e841526add6c17d036a709c1fafe879a50ba7d568008865eac8d166182be5514d8abc94b8facbe113aa6106ac394ea01049b6a555ebd280ee1cd5d64fff1b5da SHA512 bcdd5a632ac1eae4ad68ac1b18a0289820fcef997da2b3b132e97f035f21e951f20f19de9d09e0babd7d7feb8ad14c0782aa81c698b39c19e4349e603892287e DIST xfsprogs-6.18.0.tar.xz 1563944 BLAKE2B 225cb49a39a2539e48513985d72602c0c067f73597e3fe1d9d4062989ed98c3a0b2c85bb9d465c60acefce3243a7e2320808727e6ce527fbc35216bde235144e SHA512 95fcbfdd91d9b02ec9adef50e23a39240056bf3bfed3d973e048a50dd0d0b040f80e8cf72537cca7e560718e4444ed1bbcf8b99ee4c82e044ca52d916536f7f5 diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/files/xfsprogs-6.13.0-32-bit.patch b/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/files/xfsprogs-6.13.0-32-bit.patch deleted file mode 100644 index e5bb09425f7..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/files/xfsprogs-6.13.0-32-bit.patch +++ /dev/null @@ -1,44 +0,0 @@ -https://lore.kernel.org/linux-xfs/20250221185757.79333-1-preichl@redhat.com/ - -From: Pavel Reichl <preichl@redhat.com> -To: aalbersh@redhat.com -Cc: linux-xfs@vger.kernel.org -Subject: [PATCH v2] xfsprogs: Fix mismatched return type of filesize() -Date: Fri, 21 Feb 2025 19:57:57 +0100 -Message-ID: <20250221185757.79333-1-preichl@redhat.com> -X-Mailer: git-send-email 2.48.1 -In-Reply-To: <20250217155043.78452-1-preichl@redhat.com> -References: <20250217155043.78452-1-preichl@redhat.com> -Precedence: bulk -X-Mailing-List: linux-xfs@vger.kernel.org -List-Id: <linux-xfs.vger.kernel.org> -List-Subscribe: <mailto:linux-xfs+subscribe@vger.kernel.org> -List-Unsubscribe: <mailto:linux-xfs+unsubscribe@vger.kernel.org> -MIME-Version: 1.0 -Content-Transfer-Encoding: 8bit - -The function filesize() was declared with a return type of 'long' but -defined with 'off_t'. This mismatch caused build issues due to type -incompatibility. - -This commit updates the declaration to match the definition, ensuring -consistency and preventing potential compilation errors. - -Fixes: 73fb78e5ee8 ("mkfs: support copying in large or sparse files") - -Signed-off-by: Pavel Reichl <preichl@redhat.com> -Reviewed-by: Darrick J. Wong <djwong@kernel.org> -Reviewed-by: Carlos Maiolino <cem@kernel.org> ---- a/mkfs/proto.c -+++ b/mkfs/proto.c -@@ -20,7 +20,7 @@ static struct xfs_trans * getres(struct xfs_mount *mp, uint blocks); - static void rsvfile(xfs_mount_t *mp, xfs_inode_t *ip, long long len); - static int newregfile(char **pp, char **fname); - static void rtinit(xfs_mount_t *mp); --static long filesize(int fd); -+static off_t filesize(int fd); - static int slashes_are_spaces; - - /* --- -2.48.1 diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.12.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.12.0.ebuild deleted file mode 100644 index 8282d27b3c7..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.12.0.ebuild +++ /dev/null @@ -1,113 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic systemd udev - -DESCRIPTION="XFS filesystem utilities" -HOMEPAGE="https://xfs.wiki.kernel.org/ https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/" -SRC_URI="https://www.kernel.org/pub/linux/utils/fs/xfs/${PN}/${P}.tar.xz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE="icu libedit nls selinux static-libs" - -RDEPEND=" - dev-libs/inih - dev-libs/userspace-rcu:= - >=sys-apps/util-linux-2.17.2 - icu? ( dev-libs/icu:= ) - libedit? ( dev-libs/libedit ) -" -DEPEND=" - ${RDEPEND} - >=sys-kernel/linux-headers-6.11 -" -BDEPEND="nls? ( sys-devel/gettext )" -RDEPEND+=" selinux? ( sec-policy/selinux-xfs )" - -src_prepare() { - default - - # Fix doc dir - sed -i \ - -e "/^PKG_DOC_DIR/s:@pkg_name@:${PF}:" \ - include/builddefs.in || die - - # Don't install compressed docs - sed 's@\(CHANGES\)\.gz[[:space:]]@\1 @' -i doc/Makefile || die -} - -src_configure() { - # include/builddefs.in will add FCFLAGS to CFLAGS which will - # unnecessarily clutter CFLAGS (and fortran isn't used) - unset FCFLAGS - - # If set in user env, this breaks configure - unset PLATFORM - - export DEBUG=-DNDEBUG - - # Package is honoring CFLAGS; No need to use OPTIMIZER anymore. - # However, we have to provide an empty value to avoid default - # flags. - export OPTIMIZER=" " - - # Avoid automagic on libdevmapper (bug #709694) - export ac_cv_search_dm_task_create=no - - # bug 903611, 948468 - use elibc_musl && \ - append-flags -D_LARGEFILE64_SOURCE -DOVERRIDE_SYSTEM_STATX - - # Upstream does NOT support --disable-static anymore, - # https://www.spinics.net/lists/linux-xfs/msg30185.html - # https://www.spinics.net/lists/linux-xfs/msg30272.html - local myconf=( - --enable-static - # Doesn't do anything beyond adding -flto (bug #930947). - --disable-lto - # The default value causes double 'lib' - --localstatedir="${EPREFIX}/var" - --with-crond-dir="${EPREFIX}/etc/cron.d" - --with-systemd-unit-dir="$(systemd_get_systemunitdir)" - --with-udev-rule-dir="$(get_udevdir)/rules.d" - $(use_enable icu libicu) - $(use_enable nls gettext) - $(use_enable libedit editline) - ) - - econf "${myconf[@]}" -} - -src_compile() { - # -j1 for: - # gmake[2]: *** No rule to make target '../libhandle/libhandle.la', needed by 'xfs_spaceman'. Stop. - emake V=1 -j1 -} - -src_install() { - # XXX: There's a missing dep in the install-dev target, so split it - emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install - emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install-dev - - # Not actually used but --localstatedir causes this empty dir - # to be installed. - rmdir "${ED}"/var/lib/xfsprogs "${ED}"/var/lib || die - - if ! use static-libs; then - rm "${ED}/usr/$(get_libdir)/libhandle.a" || die - fi - - find "${ED}" -name '*.la' -delete || die -} - -pkg_postrm() { - udev_reload -} - -pkg_postinst() { - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.13.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.13.0-r1.ebuild deleted file mode 100644 index e88ee697703..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.13.0-r1.ebuild +++ /dev/null @@ -1,117 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic systemd udev - -DESCRIPTION="XFS filesystem utilities" -HOMEPAGE="https://xfs.wiki.kernel.org/ https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/" -SRC_URI="https://www.kernel.org/pub/linux/utils/fs/xfs/${PN}/${P}.tar.xz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE="icu libedit nls selinux static-libs" - -RDEPEND=" - dev-libs/inih - dev-libs/userspace-rcu:= - >=sys-apps/util-linux-2.17.2 - icu? ( dev-libs/icu:= ) - libedit? ( dev-libs/libedit ) -" -DEPEND=" - ${RDEPEND} - >=sys-kernel/linux-headers-6.11 -" -BDEPEND="nls? ( sys-devel/gettext )" -RDEPEND+=" selinux? ( sec-policy/selinux-xfs )" - -PATCHES=( - "${FILESDIR}"/${PN}-6.13.0-32-bit.patch -) - -src_prepare() { - default - - # Fix doc dir - sed -i \ - -e "/^PKG_DOC_DIR/s:@pkg_name@:${PF}:" \ - include/builddefs.in || die - - # Don't install compressed docs - sed 's@\(CHANGES\)\.gz[[:space:]]@\1 @' -i doc/Makefile || die -} - -src_configure() { - # include/builddefs.in will add FCFLAGS to CFLAGS which will - # unnecessarily clutter CFLAGS (and fortran isn't used) - unset FCFLAGS - - # If set in user env, this breaks configure - unset PLATFORM - - export DEBUG=-DNDEBUG - - # Package is honoring CFLAGS; No need to use OPTIMIZER anymore. - # However, we have to provide an empty value to avoid default - # flags. - export OPTIMIZER=" " - - # Avoid automagic on libdevmapper (bug #709694) - export ac_cv_search_dm_task_create=no - - # bug 903611, 948468 - use elibc_musl && \ - append-flags -D_LARGEFILE64_SOURCE -DOVERRIDE_SYSTEM_STATX - - # Upstream does NOT support --disable-static anymore, - # https://www.spinics.net/lists/linux-xfs/msg30185.html - # https://www.spinics.net/lists/linux-xfs/msg30272.html - local myconf=( - --enable-static - # Doesn't do anything beyond adding -flto (bug #930947). - --disable-lto - # The default value causes double 'lib' - --localstatedir="${EPREFIX}/var" - --with-crond-dir="${EPREFIX}/etc/cron.d" - --with-systemd-unit-dir="$(systemd_get_systemunitdir)" - --with-udev-rule-dir="$(get_udevdir)/rules.d" - $(use_enable icu libicu) - $(use_enable nls gettext) - $(use_enable libedit editline) - ) - - econf "${myconf[@]}" -} - -src_compile() { - # -j1 for: - # gmake[2]: *** No rule to make target '../libhandle/libhandle.la', needed by 'xfs_spaceman'. Stop. - emake V=1 -j1 -} - -src_install() { - # XXX: There's a missing dep in the install-dev target, so split it - emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install - emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install-dev - - # Not actually used but --localstatedir causes this empty dir - # to be installed. - rmdir "${ED}"/var/lib/xfsprogs "${ED}"/var/lib || die - - if ! use static-libs; then - rm "${ED}/usr/$(get_libdir)/libhandle.a" || die - fi - - find "${ED}" -name '*.la' -delete || die -} - -pkg_postrm() { - udev_reload -} - -pkg_postinst() { - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.14.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.14.0.ebuild deleted file mode 100644 index 8282d27b3c7..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.14.0.ebuild +++ /dev/null @@ -1,113 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic systemd udev - -DESCRIPTION="XFS filesystem utilities" -HOMEPAGE="https://xfs.wiki.kernel.org/ https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/" -SRC_URI="https://www.kernel.org/pub/linux/utils/fs/xfs/${PN}/${P}.tar.xz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE="icu libedit nls selinux static-libs" - -RDEPEND=" - dev-libs/inih - dev-libs/userspace-rcu:= - >=sys-apps/util-linux-2.17.2 - icu? ( dev-libs/icu:= ) - libedit? ( dev-libs/libedit ) -" -DEPEND=" - ${RDEPEND} - >=sys-kernel/linux-headers-6.11 -" -BDEPEND="nls? ( sys-devel/gettext )" -RDEPEND+=" selinux? ( sec-policy/selinux-xfs )" - -src_prepare() { - default - - # Fix doc dir - sed -i \ - -e "/^PKG_DOC_DIR/s:@pkg_name@:${PF}:" \ - include/builddefs.in || die - - # Don't install compressed docs - sed 's@\(CHANGES\)\.gz[[:space:]]@\1 @' -i doc/Makefile || die -} - -src_configure() { - # include/builddefs.in will add FCFLAGS to CFLAGS which will - # unnecessarily clutter CFLAGS (and fortran isn't used) - unset FCFLAGS - - # If set in user env, this breaks configure - unset PLATFORM - - export DEBUG=-DNDEBUG - - # Package is honoring CFLAGS; No need to use OPTIMIZER anymore. - # However, we have to provide an empty value to avoid default - # flags. - export OPTIMIZER=" " - - # Avoid automagic on libdevmapper (bug #709694) - export ac_cv_search_dm_task_create=no - - # bug 903611, 948468 - use elibc_musl && \ - append-flags -D_LARGEFILE64_SOURCE -DOVERRIDE_SYSTEM_STATX - - # Upstream does NOT support --disable-static anymore, - # https://www.spinics.net/lists/linux-xfs/msg30185.html - # https://www.spinics.net/lists/linux-xfs/msg30272.html - local myconf=( - --enable-static - # Doesn't do anything beyond adding -flto (bug #930947). - --disable-lto - # The default value causes double 'lib' - --localstatedir="${EPREFIX}/var" - --with-crond-dir="${EPREFIX}/etc/cron.d" - --with-systemd-unit-dir="$(systemd_get_systemunitdir)" - --with-udev-rule-dir="$(get_udevdir)/rules.d" - $(use_enable icu libicu) - $(use_enable nls gettext) - $(use_enable libedit editline) - ) - - econf "${myconf[@]}" -} - -src_compile() { - # -j1 for: - # gmake[2]: *** No rule to make target '../libhandle/libhandle.la', needed by 'xfs_spaceman'. Stop. - emake V=1 -j1 -} - -src_install() { - # XXX: There's a missing dep in the install-dev target, so split it - emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install - emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install-dev - - # Not actually used but --localstatedir causes this empty dir - # to be installed. - rmdir "${ED}"/var/lib/xfsprogs "${ED}"/var/lib || die - - if ! use static-libs; then - rm "${ED}/usr/$(get_libdir)/libhandle.a" || die - fi - - find "${ED}" -name '*.la' -delete || die -} - -pkg_postrm() { - udev_reload -} - -pkg_postinst() { - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.15.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.15.0.ebuild deleted file mode 100644 index 02d9ee247c3..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.15.0.ebuild +++ /dev/null @@ -1,114 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic systemd udev - -DESCRIPTION="XFS filesystem utilities" -HOMEPAGE="https://xfs.wiki.kernel.org/ https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/" -SRC_URI="https://www.kernel.org/pub/linux/utils/fs/xfs/${PN}/${P}.tar.xz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="icu libedit nls selinux static-libs" - -RDEPEND=" - dev-libs/inih - dev-libs/userspace-rcu:= - >=sys-apps/util-linux-2.17.2 - icu? ( dev-libs/icu:= ) - libedit? ( dev-libs/libedit ) -" -DEPEND=" - ${RDEPEND} - >=sys-kernel/linux-headers-6.11 -" -BDEPEND="nls? ( sys-devel/gettext )" -RDEPEND+=" selinux? ( sec-policy/selinux-xfs )" - -src_prepare() { - default - - # Fix doc dir - sed -i \ - -e "/^PKG_DOC_DIR/s:@pkg_name@:${PF}:" \ - include/builddefs.in || die - - # Don't install compressed docs - sed 's@\(CHANGES\)\.gz[[:space:]]@\1 @' -i doc/Makefile || die -} - -src_configure() { - # include/builddefs.in will add FCFLAGS to CFLAGS which will - # unnecessarily clutter CFLAGS (and fortran isn't used) - unset FCFLAGS - - # If set in user env, this breaks configure - unset PLATFORM - - export DEBUG=-DNDEBUG - - # Package is honoring CFLAGS; No need to use OPTIMIZER anymore. - # However, we have to provide an empty value to avoid default - # flags. - export OPTIMIZER=" " - - # Avoid automagic on libdevmapper (bug #709694) - export ac_cv_search_dm_task_create=no - - # bug 903611, 948468, 960632 - use elibc_musl && \ - append-flags -D_LARGEFILE64_SOURCE -DOVERRIDE_SYSTEM_STATX \ - -DSTATX__RESERVED=0x80000000U - - # Upstream does NOT support --disable-static anymore, - # https://www.spinics.net/lists/linux-xfs/msg30185.html - # https://www.spinics.net/lists/linux-xfs/msg30272.html - local myconf=( - --enable-static - # Doesn't do anything beyond adding -flto (bug #930947). - --disable-lto - # The default value causes double 'lib' - --localstatedir="${EPREFIX}/var" - --with-crond-dir="${EPREFIX}/etc/cron.d" - --with-systemd-unit-dir="$(systemd_get_systemunitdir)" - --with-udev-rule-dir="$(get_udevdir)/rules.d" - $(use_enable icu libicu) - $(use_enable nls gettext) - $(use_enable libedit editline) - ) - - econf "${myconf[@]}" -} - -src_compile() { - # -j1 for: - # gmake[2]: *** No rule to make target '../libhandle/libhandle.la', needed by 'xfs_spaceman'. Stop. - emake V=1 -j1 -} - -src_install() { - # XXX: There's a missing dep in the install-dev target, so split it - emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install - emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install-dev - - # Not actually used but --localstatedir causes this empty dir - # to be installed. - rmdir "${ED}"/var/lib/xfsprogs "${ED}"/var/lib || die - - if ! use static-libs; then - rm "${ED}/usr/$(get_libdir)/libhandle.a" || die - fi - - find "${ED}" -name '*.la' -delete || die -} - -pkg_postrm() { - udev_reload -} - -pkg_postinst() { - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.16.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.16.0.ebuild deleted file mode 100644 index 6e38156f7d2..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.16.0.ebuild +++ /dev/null @@ -1,112 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic systemd udev - -DESCRIPTION="XFS filesystem utilities" -HOMEPAGE="https://xfs.wiki.kernel.org/ https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/" -SRC_URI="https://www.kernel.org/pub/linux/utils/fs/xfs/${PN}/${P}.tar.xz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE="icu libedit nls selinux static-libs" - -RDEPEND=" - dev-libs/inih - dev-libs/userspace-rcu:= - >=sys-apps/util-linux-2.17.2 - icu? ( dev-libs/icu:= ) - libedit? ( dev-libs/libedit ) -" -DEPEND=" - ${RDEPEND} - >=sys-kernel/linux-headers-6.11 -" -BDEPEND="nls? ( sys-devel/gettext )" -RDEPEND+=" selinux? ( sec-policy/selinux-xfs )" - -src_prepare() { - default - - # Fix doc dir - sed -i \ - -e "/^PKG_DOC_DIR/s:@pkg_name@:${PF}:" \ - include/builddefs.in || die - - # Don't install compressed docs - sed 's@\(CHANGES\)\.gz[[:space:]]@\1 @' -i doc/Makefile || die -} - -src_configure() { - # include/builddefs.in will add FCFLAGS to CFLAGS which will - # unnecessarily clutter CFLAGS (and fortran isn't used) - unset FCFLAGS - - # If set in user env, this breaks configure - unset PLATFORM - - export DEBUG=-DNDEBUG - - # Package is honoring CFLAGS; No need to use OPTIMIZER anymore. - # However, we have to provide an empty value to avoid default - # flags. - export OPTIMIZER=" " - - # Avoid automagic on libdevmapper (bug #709694) - export ac_cv_search_dm_task_create=no - - # bug 903611, 948468, 960632 - use elibc_musl && \ - append-flags -D_LARGEFILE64_SOURCE -DOVERRIDE_SYSTEM_STATX \ - -DSTATX__RESERVED=0x80000000U - - # Upstream does NOT support --disable-static anymore, - # https://www.spinics.net/lists/linux-xfs/msg30185.html - # https://www.spinics.net/lists/linux-xfs/msg30272.html - local myconf=( - --enable-static - # Doesn't do anything beyond adding -flto (bug #930947). - --disable-lto - # The default value causes double 'lib' - --localstatedir="${EPREFIX}/var" - --with-crond-dir="${EPREFIX}/etc/cron.d" - --with-systemd-unit-dir="$(systemd_get_systemunitdir)" - --with-udev-rule-dir="$(get_udevdir)/rules.d" - $(use_enable icu libicu) - $(use_enable nls gettext) - $(use_enable libedit editline) - ) - - econf "${myconf[@]}" -} - -src_compile() { - emake V=1 -} - -src_install() { - # XXX: There's a missing dep in the install-dev target, so split it - emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install - emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install-dev - - # Not actually used but --localstatedir causes this empty dir - # to be installed. - rmdir "${ED}"/var/lib/xfsprogs "${ED}"/var/lib || die - - if ! use static-libs; then - rm "${ED}/usr/$(get_libdir)/libhandle.a" || die - fi - - find "${ED}" -name '*.la' -delete || die -} - -pkg_postrm() { - udev_reload -} - -pkg_postinst() { - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.17.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.17.0.ebuild deleted file mode 100644 index 8dbfbab1309..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.17.0.ebuild +++ /dev/null @@ -1,110 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic systemd udev - -DESCRIPTION="XFS filesystem utilities" -HOMEPAGE="https://xfs.wiki.kernel.org/ https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/" -SRC_URI="https://www.kernel.org/pub/linux/utils/fs/xfs/${PN}/${P}.tar.xz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE="icu libedit nls selinux static-libs" - -RDEPEND=" - dev-libs/inih - dev-libs/userspace-rcu:= - >=sys-apps/util-linux-2.17.2 - icu? ( dev-libs/icu:= ) - libedit? ( dev-libs/libedit ) -" -DEPEND=" - ${RDEPEND} - >=sys-kernel/linux-headers-6.11 -" -BDEPEND="nls? ( sys-devel/gettext )" -RDEPEND+=" selinux? ( sec-policy/selinux-xfs )" - -src_prepare() { - default - - # Fix doc dir - sed -i \ - -e "/^PKG_DOC_DIR/s:@pkg_name@:${PF}:" \ - include/builddefs.in || die - - # Don't install compressed docs - sed 's@\(CHANGES\)\.gz[[:space:]]@\1 @' -i doc/Makefile || die -} - -src_configure() { - # include/builddefs.in will add FCFLAGS to CFLAGS which will - # unnecessarily clutter CFLAGS (and fortran isn't used) - unset FCFLAGS - - # If set in user env, this breaks configure - unset PLATFORM - - export DEBUG=-DNDEBUG - - # Package is honoring CFLAGS; No need to use OPTIMIZER anymore. - # However, we have to provide an empty value to avoid default - # flags. - export OPTIMIZER=" " - - # Avoid automagic on libdevmapper (bug #709694) - export ac_cv_search_dm_task_create=no - - # bug 903611 - use elibc_musl && append-flags -D_LARGEFILE64_SOURCE - - # Upstream does NOT support --disable-static anymore, - # https://www.spinics.net/lists/linux-xfs/msg30185.html - # https://www.spinics.net/lists/linux-xfs/msg30272.html - local myconf=( - --enable-static - # Doesn't do anything beyond adding -flto (bug #930947). - --disable-lto - # The default value causes double 'lib' - --localstatedir="${EPREFIX}/var" - --with-crond-dir="${EPREFIX}/etc/cron.d" - --with-systemd-unit-dir="$(systemd_get_systemunitdir)" - --with-udev-rule-dir="$(get_udevdir)/rules.d" - $(use_enable icu libicu) - $(use_enable nls gettext) - $(use_enable libedit editline) - ) - - econf "${myconf[@]}" -} - -src_compile() { - emake V=1 -} - -src_install() { - # XXX: There's a missing dep in the install-dev target, so split it - emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install - emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install-dev - - # Not actually used but --localstatedir causes this empty dir - # to be installed. - rmdir "${ED}"/var/lib/xfsprogs "${ED}"/var/lib || die - - if ! use static-libs; then - rm "${ED}/usr/$(get_libdir)/libhandle.a" || die - fi - - find "${ED}" -name '*.la' -delete || die -} - -pkg_postrm() { - udev_reload -} - -pkg_postinst() { - udev_reload -} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.18.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.18.0.ebuild index c85bd45aae8..03a2a9bc514 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.18.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/xfsprogs/xfsprogs-6.18.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -11,7 +11,7 @@ SRC_URI="https://www.kernel.org/pub/linux/utils/fs/xfs/${PN}/${P}.tar.xz" LICENSE="LGPL-2.1" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" IUSE="icu libedit nls selinux static-libs" RDEPEND=" From c788dd296cdbfb2c9d4cf5c1ec6906a2b52c40f0 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:58 +0000 Subject: [PATCH 240/291] sys-fs/zfs: Sync with Gentoo It's from Gentoo commit 32c2652edf0e02a6b83918c69ba694273c7a841c. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-fs/zfs/Manifest | 4 + .../sys-fs/zfs/zfs-2.3.4.ebuild | 4 +- .../sys-fs/zfs/zfs-2.3.6.ebuild | 313 +++++++++++++ .../sys-fs/zfs/zfs-2.4.1.ebuild | 437 ++++++++++++++++++ .../portage-stable/sys-fs/zfs/zfs-9999.ebuild | 4 +- 5 files changed, 758 insertions(+), 4 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-2.3.6.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-2.4.1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/zfs/Manifest b/sdk_container/src/third_party/portage-stable/sys-fs/zfs/Manifest index a32b4e5f60c..7f7d2d8aaaf 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/zfs/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-fs/zfs/Manifest @@ -10,5 +10,9 @@ DIST zfs-2.3.4.tar.gz 34386899 BLAKE2B e7619445a9138475e51e1578cb4e85032570830fa DIST zfs-2.3.4.tar.gz.asc 858 BLAKE2B 2537afa40b48c07b8ad61a4f6973e40a78b5863afbb6b75674fb7a5950ba2dda22dfa93a180190332d234b0b2e2ce14ed61cb34bc0f56e609dad3cdb805ab5c2 SHA512 cc50fb915d4e8a7eb894bdf919940a8c68828e48a5e1f2a08b08a5e75c0eb8a9cd4feaa84742b65d6b2d85ee839ac2b7d565ed7958006ff079d751145463243b DIST zfs-2.3.5.tar.gz 34379136 BLAKE2B 4ae090c76e13f2d3d76e481b9950db1319534e47b357e4818bfc4db84cc0a5089de1e46319a36f02010ac27e3ab5cf74a56979b94864d38dcc41c86721841e54 SHA512 72d62e28dc868aba720755685d5e8020d3165d04d0ae55f33e97ed6c503637c476563d23ea6e991784ab1c2e6886d785e2f15f5a71d4d3f69700bbb26eda3dad DIST zfs-2.3.5.tar.gz.asc 858 BLAKE2B 96edcd3eb5b1a9d33ed50b2526d6a69b5e3dd4d1450205ed7342352aa3ac7014fc813b703ae97a29380da16f452c5491ddf68c05621479b7559f8907cc3b90de SHA512 fc69ab416499ef03cc3721c9f0017e792fc857d045e7f5902a5bf41eb31bbe192e850c1d01482401f06a53926649a1798fc2f7f6fc058fe8c6727b8630c56cdd +DIST zfs-2.3.6.tar.gz 34410022 BLAKE2B 9d83e296cb4e78c67cb9d30ba79b74b4b53c9fd4b0b58cd7a9e1e7b0fafc2c5a49b002c1023d07736c1a6149c61963ccb45e9a82d25944c0a7bd4486ea7fcde8 SHA512 789f534124173693ad461f0fcd5df442588225d5f42420f658fe5c7cb57549417aa472ae95658c90c9dad6818f91d8fb0cbd1fcef2395d167b3ded38477e18c7 +DIST zfs-2.3.6.tar.gz.asc 858 BLAKE2B 88e9344ed51d9906011f6f381364aeb8bfe3360b0c12a18ec45c8a8d42725f345e61c0ad63037ace51bdd04276567cd90ba2311c971c6b2f10501ffb0363be84 SHA512 fe1b7977a8ae564fe639ca824a557a1600c3e22df0af3e750464a3c960b9709c289c07e42ef40173e153453c5641c442c660c804ea21370d77d9819c13b655b1 DIST zfs-2.4.0.tar.gz 34476567 BLAKE2B f98d940925ba74222ad4976af767bc5c40bdd29bbc0c5eca6ba43a6109f35e773260e946ef01a556732caf44f968e89d296c925602e252af1ece9597753f24d5 SHA512 5f4460707cc24c55900a08d106e549ecc9eb42bc7b64e0fb613d85ba2054c3bc834fb10c34822ef14406dfcfc07b38b7ca668a02086eecb0f107d2ffce66a998 DIST zfs-2.4.0.tar.gz.asc 858 BLAKE2B 8f86f94db68e1bb3b14eec4a342c0315f547fd4df965d14662a8432e577fcea531a0a17ccebee050b9e3d5bf89a2758b25934f192f09ba564d0e30d88111e862 SHA512 2b6726db66fec218e9eef39f7c07753d1566894e0559a1d09d0da3e498d9073c1260c0062efbafad5de5eea4ec4b078f7546c530c2aeed91e8b6851fb2af9188 +DIST zfs-2.4.1.tar.gz 34498270 BLAKE2B dc7eedb989297ae13d42c1f7c3b55b393d47f1706a029c38801381675909069c6c2112ca545ac395cb2e7bcbaf225fa79982e3c6f3adeca0d30828b88da0f58b SHA512 15ef20ed8fb976dd123e1f5dca8f0f71a754a3be6edf826bf1d744a28cc8400969d33b79be90a4b5bef95dd200caaca942876f4462b7749667a9e4a225d82676 +DIST zfs-2.4.1.tar.gz.asc 858 BLAKE2B aeeacec46bd3ac439f53eb24aedfd449bc647c1cc1d93c17d0d8be07f0e01490d33586e47d60ab9250915d514b1140f8d8d1958c8c627e0e887f7ab640d58fa3 SHA512 0d8f9c9eba22aacd122066d4a9a64808b74630f15bb511e35fa0f3100f143f6ef39d1d564cf5b257444066eac4796236da7e8c2fc8627f3088ebb31cba1f833a diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-2.3.4.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-2.3.4.ebuild index 9d1985ee740..d91b1f06bcb 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-2.3.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-2.3.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -30,7 +30,7 @@ else S="${WORKDIR}/${MY_P}" if [[ ${PV} != *_rc* ]]; then - KEYWORDS="amd64 ~arm64 ~loong ~ppc64 ~riscv ~sparc" + KEYWORDS="amd64 arm64 ~loong ppc64 ~riscv ~sparc" fi fi diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-2.3.6.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-2.3.6.ebuild new file mode 100644 index 00000000000..8895cb72db3 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-2.3.6.ebuild @@ -0,0 +1,313 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintainers should consider lurking in the ZFS IRC channels (there's several) +# and regularly checking ZFS GitHub issues and PRs. Look out for the 'zfs-*' +# stable backport PRs when they're opened and subscribe to them for any important +# cherry-picks that may be needed in advance. + +DISTUTILS_OPTIONAL=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{11..14} ) + +inherit autotools bash-completion-r1 dist-kernel-utils distutils-r1 flag-o-matic linux-info pam systemd udev usr-ldscript + +DESCRIPTION="Userland utilities for ZFS Linux kernel module" +HOMEPAGE="https://github.com/openzfs/zfs" + +if [[ ${PV} == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/openzfs/zfs.git" +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openzfs.asc + inherit verify-sig + + MY_P="${P/_rc/-rc}" + SRC_URI="https://github.com/openzfs/${PN}/releases/download/${MY_P}/${MY_P}.tar.gz" + SRC_URI+=" verify-sig? ( https://github.com/openzfs/${PN}/releases/download/${MY_P}/${MY_P}.tar.gz.asc )" + S="${WORKDIR}/${MY_P}" + + if [[ ${PV} != *_rc* ]]; then + KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~sparc" + fi +fi + +LICENSE="BSD-2 CDDL MIT" +# just libzfs soname major for now. +# possible candidates: libuutil, libzpool, libnvpair. Those do not provide stable abi, but are considered. +# see libsoversion_check() below as well +SLOT="0/6" +IUSE="custom-cflags debug dist-kernel kernel-builtin minimal nls pam python +rootfs selinux test-suite unwind" + +DEPEND=" + dev-libs/openssl:= + net-libs/libtirpc:= + sys-apps/util-linux + virtual/zlib:= + virtual/libudev:= + !minimal? ( ${PYTHON_DEPS} ) + pam? ( sys-libs/pam ) + python? ( + $(python_gen_cond_dep 'dev-python/cffi[${PYTHON_USEDEP}]' 'python*') + ) + unwind? ( sys-libs/libunwind:= ) +" + +BDEPEND=" + app-alternatives/awk + virtual/pkgconfig + nls? ( sys-devel/gettext ) + python? ( + ${DISTUTILS_DEPS} + || ( + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/distlib[${PYTHON_USEDEP}] + ) + ) +" + +if [[ ${PV} != "9999" ]] ; then + BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-openzfs )" +fi + +# awk is used for some scripts, completions, and the Dracut module +RDEPEND=" + ${DEPEND} + !kernel-builtin? ( ~sys-fs/zfs-kmod-${PV}:= ) + !prefix? ( virtual/udev ) + app-alternatives/awk + sys-fs/udev-init-scripts + dist-kernel? ( virtual/dist-kernel:= ) + rootfs? ( + app-alternatives/cpio + app-misc/pax-utils + ) + selinux? ( sec-policy/selinux-zfs ) + test-suite? ( + app-shells/ksh + sys-apps/kmod[tools] + sys-apps/util-linux + app-alternatives/bc + sys-block/parted + sys-fs/lsscsi + sys-fs/mdadm + sys-process/procps + ) +" + +# PDEPEND in this form is needed to trick portage suggest +# enabling dist-kernel if only 1 package have it set, without suggesting to disable +PDEPEND="dist-kernel? ( ~sys-fs/zfs-kmod-${PV}[dist-kernel] )" + +REQUIRED_USE=" + !minimal? ( ${PYTHON_REQUIRED_USE} ) + python? ( !minimal ) + test-suite? ( !minimal ) +" + +RESTRICT="test" + +PATCHES=( + "${FILESDIR}"/2.1.5-dracut-zfs-missing.patch +) + +pkg_pretend() { + use rootfs || return 0 + + if has_version virtual/dist-kernel && ! use dist-kernel; then + ewarn "You have virtual/dist-kernel installed, but" + ewarn "USE=\"dist-kernel\" is not enabled for ${CATEGORY}/${PN}" + ewarn "It's recommended to globally enable dist-kernel USE flag" + ewarn "to auto-trigger initrd rebuilds with kernel updates" + fi +} + +pkg_setup() { + if use kernel_linux; then + linux-info_pkg_setup + + if ! linux_config_exists; then + ewarn "Cannot check the linux kernel configuration." + else + if use test-suite; then + if linux_chkconfig_present BLK_DEV_LOOP; then + eerror "The ZFS test suite requires loop device support enabled." + eerror "Please enable it:" + eerror " CONFIG_BLK_DEV_LOOP=y" + eerror "in /usr/src/linux/.config or" + eerror " Device Drivers --->" + eerror " Block devices --->" + eerror " [X] Loopback device support" + fi + fi + fi + fi +} + +libsoversion_check() { + local bugurl libzfs_sover + bugurl="https://bugs.gentoo.org/enter_bug.cgi?form_name=enter_bug&product=Gentoo+Linux&component=Current+packages" + + libzfs_sover="$(grep 'libzfs_la_LDFLAGS += -version-info' lib/libzfs/Makefile.am \ + | grep -Eo '[0-9]+:[0-9]+:[0-9]+')" + libzfs_sover="${libzfs_sover%%:*}" + + if [[ ${libzfs_sover} -ne $(ver_cut 2 ${SLOT}) ]]; then + echo + eerror "BUG BUG BUG BUG BUG BUG BUG BUG" + eerror "ebuild subslot does not match libzfs soversion!" + eerror "libzfs soversion: ${libzfs_sover}" + eerror "ebuild value: $(ver_cut 2 ${SLOT})" + eerror "This is a bug in the ebuild, please use the following URL to report it" + eerror "${bugurl}&short_desc=${CATEGORY}%2F${P}+update+subslot" + echo + # we want to abort for releases, but just print a warning for live ebuild + # to keep package installable + [[ ${PV} == "9999" ]] || die + fi +} + +src_prepare() { + default + libsoversion_check + + # Run unconditionally (bug #792627) + eautoreconf + + if [[ ${PV} != "9999" ]]; then + # Set revision number + sed -i "s/\(Release:\)\(.*\)1/\1\2${PR}-gentoo/" META || die "Could not set Gentoo release" + fi + + if use python; then + pushd contrib/pyzfs >/dev/null || die + distutils-r1_src_prepare + popd >/dev/null || die + fi + + # Tries to use /etc/conf.d which we reserve for OpenRC + sed -i -e '/EnvironmentFile/d' etc/systemd/system/zfs*.in || die + + # prevent errors showing up on zfs-mount stop, #647688 + # openrc will unmount all filesystems anyway. + sed -i "/^ZFS_UNMOUNT=/ s/yes/no/" "etc/default/zfs.in" || die +} + +src_configure() { + use custom-cflags || strip-flags + use minimal || python_setup + + local myconf=( + --bindir="${EPREFIX}/bin" + --enable-shared + --enable-sysvinit + --localstatedir="${EPREFIX}/var" + --sbindir="${EPREFIX}/sbin" + --with-config=user + --with-dracutdir="${EPREFIX}/usr/lib/dracut" + --with-linux="${KV_DIR}" + --with-linux-obj="${KV_OUT_DIR}" + --with-udevdir="$(get_udevdir)" + --with-pamconfigsdir="${EPREFIX}/unwanted_files" + --with-pammoduledir="$(getpam_mod_dir)" + --with-systemdunitdir="$(systemd_get_systemunitdir)" + --with-systemdpresetdir="$(systemd_get_systempresetdir)" + --with-vendor=gentoo + # Building zfs-mount-generator.c on musl breaks as strndupa + # isn't available. But systemd doesn't support musl anyway, so + # just disable building it. + # UPDATE: it has been fixed since, + # https://github.com/openzfs/zfs/commit/1f19826c9ac85835cbde61a7439d9d1fefe43a4a + # but we still leave it as this for now. + $(use_enable !elibc_musl systemd) + $(use_enable debug) + $(use_enable nls) + $(use_enable pam) + $(use_enable python pyzfs) + $(use_with unwind libunwind) + --disable-static + $(usex minimal --without-python --with-python="${EPYTHON}") + ) + + econf "${myconf[@]}" +} + +src_compile() { + default + if use python; then + pushd contrib/pyzfs >/dev/null || die + distutils-r1_src_compile + popd >/dev/null || die + fi +} + +src_install() { + default + + gen_usr_ldscript -a nvpair uutil zfsbootenv zfs zfs_core zpool + + use pam && { rm -rv "${ED}/unwanted_files" || die ; } + + use test-suite || { rm -r "${ED}"/usr/share/zfs/{test-runner,zfs-tests,runfiles,*sh} || die ; } + + find "${ED}" -name '*.la' -delete || die + + dobashcomp contrib/bash_completion.d/zfs + bashcomp_alias zfs zpool + + # strip executable bit from conf.d file + fperms 0644 /etc/conf.d/zfs + + if use python; then + pushd contrib/pyzfs >/dev/null || die + distutils-r1_src_install + popd >/dev/null || die + fi + + # enforce best available python implementation + use minimal || python_fix_shebang "${ED}/bin" +} + +pkg_postinst() { + udev_reload + + # we always need userspace utils in sync with zfs-kmod + # so force initrd update for userspace as well, to avoid + # situation when zfs-kmod trigger initrd rebuild before + # userspace component is rebuilt + # KV_* variables are provided by linux-info.eclass + if [[ -z ${ROOT} ]] && use dist-kernel; then + dist-kernel_reinstall_initramfs "${KV_DIR}" "${KV_FULL}" + fi + + if use rootfs; then + if ! has_version sys-kernel/genkernel && ! has_version sys-kernel/dracut; then + elog "Root on zfs requires an initramfs to boot" + elog "The following packages provide one and are tested on a regular basis:" + elog " sys-kernel/dracut ( preferred, module maintained by zfs developers )" + elog " sys-kernel/genkernel" + fi + fi + + if systemd_is_booted || has_version sys-apps/systemd; then + einfo "Please refer to $(systemd_get_systempresetdir)/50-zfs.preset" + einfo "for default zfs systemd service configuration" + else + [[ -e "${EROOT}/etc/runlevels/boot/zfs-import" ]] || \ + einfo "You should add zfs-import to the boot runlevel." + [[ -e "${EROOT}/etc/runlevels/boot/zfs-load-key" ]] || \ + einfo "You should add zfs-load-key to the boot runlevel." + [[ -e "${EROOT}/etc/runlevels/boot/zfs-mount" ]]|| \ + einfo "You should add zfs-mount to the boot runlevel." + [[ -e "${EROOT}/etc/runlevels/default/zfs-share" ]] || \ + einfo "You should add zfs-share to the default runlevel." + [[ -e "${EROOT}/etc/runlevels/default/zfs-zed" ]] || \ + einfo "You should add zfs-zed to the default runlevel." + fi +} + +pkg_postrm() { + udev_reload +} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-2.4.1.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-2.4.1.ebuild new file mode 100644 index 00000000000..0b1b1cee58f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-2.4.1.ebuild @@ -0,0 +1,437 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintainers should consider lurking in the ZFS IRC channels (there's several) +# and regularly checking ZFS GitHub issues and PRs. Look out for the 'zfs-*' +# stable backport PRs when they're opened and subscribe to them for any important +# cherry-picks that may be needed in advance. + +DISTUTILS_OPTIONAL=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{11..14} ) + +MODULES_INITRAMFS_IUSE=+initramfs +MODULES_OPTIONAL_IUSE=+modules + +inherit autotools bash-completion-r1 distutils-r1 flag-o-matic linux-info +inherit linux-mod-r1 multiprocessing pam systemd udev usr-ldscript + +DESCRIPTION="Linux kernel module and userland utilities for ZFS" +HOMEPAGE="https://github.com/openzfs/zfs" + +MODULES_KERNEL_MAX=6.19 +MODULES_KERNEL_MIN=4.18 + +if [[ ${PV} == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/openzfs/zfs.git" +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openzfs.asc + inherit verify-sig + + MY_P="${P/_rc/-rc}" + SRC_URI="https://github.com/openzfs/${PN}/releases/download/${MY_P}/${MY_P}.tar.gz" + SRC_URI+=" verify-sig? ( https://github.com/openzfs/${PN}/releases/download/${MY_P}/${MY_P}.tar.gz.asc )" + S="${WORKDIR}/${MY_P}" + + ZFS_KERNEL_COMPAT="${MODULES_KERNEL_MAX}" + # Increments minor eg 5.14 -> 5.15, and still supports override. + ZFS_KERNEL_DEP="${ZFS_KERNEL_COMPAT_OVERRIDE:-${ZFS_KERNEL_COMPAT}}" + ZFS_KERNEL_DEP="${ZFS_KERNEL_DEP%%.*}.$(( ${ZFS_KERNEL_DEP##*.} + 1))" + + if [[ ${PV} != *_rc* ]]; then + KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~sparc" + fi +fi + +LICENSE="BSD-2 CDDL MIT modules? ( debug? ( GPL-2+ ) )" +# just libzfs soname major for now. +# possible candidates: libuutil, libzpool, libnvpair. Those do not provide stable abi, but are considered. +# see libsoversion_check() below as well +SLOT="0/7" +IUSE="custom-cflags debug dist-kernel minimal nls pam python +rootfs selinux test-suite unwind" + +DEPEND=" + dev-libs/openssl:= + net-libs/libtirpc:= + sys-apps/util-linux + virtual/zlib:= + virtual/libudev:= + !minimal? ( ${PYTHON_DEPS} ) + pam? ( sys-libs/pam ) + python? ( + $(python_gen_cond_dep 'dev-python/cffi[${PYTHON_USEDEP}]' 'python*') + ) + unwind? ( sys-libs/libunwind:= ) +" + +BDEPEND=" + app-alternatives/awk + virtual/pkgconfig + modules? ( dev-lang/perl ) + nls? ( sys-devel/gettext ) + python? ( + ${DISTUTILS_DEPS} + || ( + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/distlib[${PYTHON_USEDEP}] + ) + ) +" + +if [[ ${PV} != "9999" ]] ; then + BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-openzfs )" + + IUSE+=" +dist-kernel-cap" + RDEPEND=" + dist-kernel-cap? ( dist-kernel? ( + <virtual/dist-kernel-${ZFS_KERNEL_DEP} + ) ) + " +fi + +# awk is used for some scripts, completions, and the Dracut module +RDEPEND=" + ${DEPEND} + !prefix? ( virtual/udev ) + app-alternatives/awk + sys-fs/udev-init-scripts + dist-kernel? ( virtual/dist-kernel:= ) + rootfs? ( + app-alternatives/cpio + app-misc/pax-utils + ) + selinux? ( sec-policy/selinux-zfs ) + test-suite? ( + app-shells/ksh + sys-apps/kmod[tools] + sys-apps/util-linux + app-alternatives/bc + sys-block/parted + sys-fs/lsscsi + sys-fs/mdadm + sys-process/procps + ) + !<sys-fs/zfs-kmod-2.4.0_rc2-r1 +" + +REQUIRED_USE=" + !minimal? ( ${PYTHON_REQUIRED_USE} ) + python? ( !minimal ) + test-suite? ( !minimal ) +" + +RESTRICT="test" + +PATCHES=( + "${FILESDIR}"/${PN}-2.1.11-gentoo.patch +) + +pkg_pretend() { + use rootfs || return 0 + + if has_version virtual/dist-kernel && ! use dist-kernel; then + ewarn "You have virtual/dist-kernel installed, but" + ewarn "USE=\"dist-kernel\" is not enabled for ${CATEGORY}/${PN}" + ewarn "It's recommended to globally enable dist-kernel USE flag" + ewarn "to auto-trigger initrd rebuilds with kernel updates" + fi +} + +pkg_setup() { + if use kernel_linux; then + if use modules; then + local CONFIG_CHECK=" + EFI_PARTITION + ZLIB_DEFLATE + ZLIB_INFLATE + !DEBUG_LOCK_ALLOC + !PAX_KERNEXEC_PLUGIN_METHOD_OR + " + use debug && CONFIG_CHECK+=" + DEBUG_INFO + FRAME_POINTER + !DEBUG_INFO_REDUCED + " + use rootfs && CONFIG_CHECK+=" + BLK_DEV_INITRD + DEVTMPFS + " + + kernel_is -lt 5 && CONFIG_CHECK+=" IOSCHED_NOOP" + + if [[ ${PV} != 9999 ]] ; then + local kv_major_max kv_minor_max zcompat + zcompat="${ZFS_KERNEL_COMPAT_OVERRIDE:-${ZFS_KERNEL_COMPAT}}" + kv_major_max="${zcompat%%.*}" + zcompat="${zcompat#*.}" + kv_minor_max="${zcompat%%.*}" + kernel_is -le "${kv_major_max}" "${kv_minor_max}" || die \ + "Linux ${kv_major_max}.${kv_minor_max} is the latest supported version" + fi + + linux-mod-r1_pkg_setup + else + linux-info_pkg_setup + fi + + if ! linux_config_exists; then + ewarn "Cannot check the linux kernel configuration." + else + if use test-suite; then + if linux_chkconfig_present BLK_DEV_LOOP; then + eerror "The ZFS test suite requires loop device support enabled." + eerror "Please enable it:" + eerror " CONFIG_BLK_DEV_LOOP=y" + eerror "in /usr/src/linux/.config or" + eerror " Device Drivers --->" + eerror " Block devices --->" + eerror " [X] Loopback device support" + fi + fi + fi + fi +} + +libsoversion_check() { + local bugurl libzfs_sover + bugurl="https://bugs.gentoo.org/enter_bug.cgi?form_name=enter_bug&product=Gentoo+Linux&component=Current+packages" + + libzfs_sover="$(grep 'libzfs_la_LDFLAGS += -version-info' lib/libzfs/Makefile.am \ + | grep -Eo '[0-9]+:[0-9]+:[0-9]+')" + libzfs_sover="${libzfs_sover%%:*}" + + if [[ ${libzfs_sover} -ne $(ver_cut 2 ${SLOT}) ]]; then + echo + eerror "BUG BUG BUG BUG BUG BUG BUG BUG" + eerror "ebuild subslot does not match libzfs soversion!" + eerror "libzfs soversion: ${libzfs_sover}" + eerror "ebuild value: $(ver_cut 2 ${SLOT})" + eerror "This is a bug in the ebuild, please use the following URL to report it" + eerror "${bugurl}&short_desc=${CATEGORY}%2F${P}+update+subslot" + echo + # we want to abort for releases, but just print a warning for live ebuild + # to keep package installable + [[ ${PV} == "9999" ]] || die + fi +} + +src_prepare() { + default + libsoversion_check + + # Run unconditionally (bug #792627) + eautoreconf + + if [[ ${PV} != "9999" ]]; then + # Set revision number + sed -i "s/\(Release:\)\(.*\)1/\1\2${PR}-gentoo/" META || die "Could not set Gentoo release" + fi + + if use python; then + pushd contrib/pyzfs >/dev/null || die + distutils-r1_src_prepare + popd >/dev/null || die + fi + + # Tries to use /etc/conf.d which we reserve for OpenRC + sed -i -e '/EnvironmentFile/d' etc/systemd/system/zfs*.in || die + + # prevent errors showing up on zfs-mount stop, #647688 + # openrc will unmount all filesystems anyway. + sed -i "/^ZFS_UNMOUNT=/ s/yes/no/" "etc/default/zfs.in" || die +} + +src_configure() { + use custom-cflags || strip-flags + use minimal || python_setup + + local myconf=( + --bindir="${EPREFIX}/bin" + --sbindir="${EPREFIX}/sbin" + --enable-shared + --enable-sysvinit + --localstatedir="${EPREFIX}/var" + --sbindir="${EPREFIX}/sbin" + --with-config="$(usex modules all user)" + --with-dracutdir="${EPREFIX}/usr/lib/dracut" + --with-linux="${KV_DIR}" + --with-linux-obj="${KV_OUT_DIR}" + --with-udevdir="$(get_udevdir)" + --with-pamconfigsdir="${EPREFIX}/unwanted_files" + --with-pammoduledir="$(getpam_mod_dir)" + --with-systemdunitdir="$(systemd_get_systemunitdir)" + --with-systemdpresetdir="$(systemd_get_systempresetdir)" + --with-vendor=gentoo + # Building zfs-mount-generator.c on musl breaks as strndupa + # isn't available. But systemd doesn't support musl anyway, so + # just disable building it. + # UPDATE: it has been fixed since, + # https://github.com/openzfs/zfs/commit/1f19826c9ac85835cbde61a7439d9d1fefe43a4a + # but we still leave it as this for now. + $(use_enable !elibc_musl systemd) + $(use_enable debug) + $(use_enable nls) + $(use_enable pam) + $(use_enable python pyzfs) + $(use_with unwind libunwind) + --disable-static + $(usex minimal --without-python --with-python="${EPYTHON}") + + # See gentoo.patch + GENTOO_MAKEARGS_EVAL="${MODULES_MAKEARGS[*]@Q}" + TEST_JOBS="$(makeopts_jobs)" + ) + + econf "${myconf[@]}" +} + +src_compile() { + if use modules; then + emake "${MODULES_MAKEARGS[@]}" + else + default + fi + + if use python; then + pushd contrib/pyzfs >/dev/null || die + distutils-r1_src_compile + popd >/dev/null || die + fi +} + +src_install() { + DOCS=( AUTHORS COPYRIGHT META README.md ) + + if use modules; then + emake "${MODULES_MAKEARGS[@]}" DESTDIR="${ED}" install + modules_post_process + einstalldocs + else + default + fi + # distutils-r1_src_install tries to run einstalldocs as well + # bug #965156 + unset DOCS + + gen_usr_ldscript -a nvpair uutil zfsbootenv zfs zfs_core zpool + + use pam && { rm -rv "${ED}/unwanted_files" || die ; } + + use test-suite || { rm -r "${ED}"/usr/share/zfs/{test-runner,zfs-tests,runfiles,*sh} || die ; } + + find "${ED}" -name '*.la' -delete || die + + dobashcomp contrib/bash_completion.d/zfs + bashcomp_alias zfs zpool + + # strip executable bit from conf.d file + fperms 0644 /etc/conf.d/zfs + + if use python; then + pushd contrib/pyzfs >/dev/null || die + distutils-r1_src_install + popd >/dev/null || die + fi + + # enforce best available python implementation + use minimal || python_fix_shebang "${ED}/bin" +} + +_old_layout_cleanup() { + # new files are just extra/{spl,zfs}.ko with no subdirs. + local olddir=( + avl/zavl + icp/icp + lua/zlua + nvpair/znvpair + spl/spl + unicode/zunicode + zcommon/zcommon + zfs/zfs + zstd/zzstd + ) + + # kernel/module/Kconfig contains possible compressed extentions. + local kext kextfiles + for kext in .ko{,.{gz,xz,zst}}; do + kextfiles+=( "${olddir[@]/%/${kext}}" ) + done + + local oldfile oldpath + for oldfile in "${kextfiles[@]}"; do + oldpath="${EROOT}/lib/modules/${KV_FULL}/extra/${oldfile}" + if [[ -f "${oldpath}" ]]; then + ewarn "Found obsolete zfs module ${oldfile} for current kernel ${KV_FULL}, removing." + rm -rv "${oldpath}" || die + # we do not remove non-empty directories just for safety in case there's something else. + # also it may fail if there are both compressed and uncompressed modules installed. + rmdir -v --ignore-fail-on-non-empty "${oldpath%/*.*}" || die + fi + done +} + +pkg_postinst() { + udev_reload + + if use modules; then + # Check for old module layout before doing anything else. + # only attempt layout cleanup if new .ko location is used. + local newko=( "${EROOT}/lib/modules/${KV_FULL}/extra"/{zfs,spl}.ko* ) + # We check first array member, if glob above did not exand, it will be "zfs.ko*" and -f will return false. + # if glob expanded -f will do correct file precense check. + [[ -f ${newko[0]} ]] && _old_layout_cleanup + + linux-mod-r1_pkg_postinst + + if use x86 || use arm ; then + ewarn "32-bit kernels will likely require increasing vmalloc to" + ewarn "at least 256M and decreasing zfs_arc_max to some value less than that." + fi + + if has_version sys-boot/grub ; then + ewarn "This version of OpenZFS includes support for new feature flags" + ewarn "that are incompatible with previous versions. GRUB2 support for" + ewarn "/boot with the new feature flags is not yet available." + ewarn "Do *NOT* upgrade root pools to use the new feature flags." + ewarn "Any new pools will be created with the new feature flags by default" + ewarn "and will not be compatible with older versions of OpenZFS. To" + ewarn "create a new pool that is backward compatible wih GRUB2, use " + ewarn + ewarn "zpool create -o compatibility=grub2 ..." + ewarn + ewarn "Refer to /usr/share/zfs/compatibility.d/grub2 for list of features." + fi + fi + + if use rootfs; then + if ! has_version sys-kernel/genkernel && ! has_version sys-kernel/dracut; then + elog "Root on zfs requires an initramfs to boot" + elog "The following packages provide one and are tested on a regular basis:" + elog " sys-kernel/dracut ( preferred, module maintained by zfs developers )" + elog " sys-kernel/genkernel" + fi + fi + + if systemd_is_booted || has_version sys-apps/systemd; then + einfo "Please refer to $(systemd_get_systempresetdir)/50-zfs.preset" + einfo "for default zfs systemd service configuration" + else + [[ -e "${EROOT}/etc/runlevels/boot/zfs-import" ]] || \ + einfo "You should add zfs-import to the boot runlevel." + [[ -e "${EROOT}/etc/runlevels/boot/zfs-load-key" ]] || \ + einfo "You should add zfs-load-key to the boot runlevel." + [[ -e "${EROOT}/etc/runlevels/boot/zfs-mount" ]]|| \ + einfo "You should add zfs-mount to the boot runlevel." + [[ -e "${EROOT}/etc/runlevels/default/zfs-share" ]] || \ + einfo "You should add zfs-share to the default runlevel." + [[ -e "${EROOT}/etc/runlevels/default/zfs-zed" ]] || \ + einfo "You should add zfs-zed to the default runlevel." + fi +} + +pkg_postrm() { + udev_reload +} diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-9999.ebuild index 19e77752faa..8b35bffb3cd 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -21,7 +21,7 @@ inherit linux-mod-r1 multiprocessing pam systemd udev usr-ldscript DESCRIPTION="Linux kernel module and userland utilities for ZFS" HOMEPAGE="https://github.com/openzfs/zfs" -MODULES_KERNEL_MAX=6.18 +MODULES_KERNEL_MAX=6.19 MODULES_KERNEL_MIN=4.18 if [[ ${PV} == "9999" ]]; then From d2c3b19094acb448de41f8ff0770a13fe78559f4 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:58 +0000 Subject: [PATCH 241/291] sys-fs/zfs-kmod: Sync with Gentoo It's from Gentoo commit 402404856f21795f09877d740d8a80e1dc79c93c. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-fs/zfs-kmod/Manifest | 2 + .../sys-fs/zfs-kmod/zfs-kmod-2.3.4.ebuild | 4 +- .../sys-fs/zfs-kmod/zfs-kmod-2.3.6.ebuild | 207 ++++++++++++++++++ 3 files changed, 211 insertions(+), 2 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/sys-fs/zfs-kmod/zfs-kmod-2.3.6.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/zfs-kmod/Manifest b/sdk_container/src/third_party/portage-stable/sys-fs/zfs-kmod/Manifest index 2a9d5551af0..d6652f6d83b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/zfs-kmod/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-fs/zfs-kmod/Manifest @@ -10,3 +10,5 @@ DIST zfs-2.3.4.tar.gz 34386899 BLAKE2B e7619445a9138475e51e1578cb4e85032570830fa DIST zfs-2.3.4.tar.gz.asc 858 BLAKE2B 2537afa40b48c07b8ad61a4f6973e40a78b5863afbb6b75674fb7a5950ba2dda22dfa93a180190332d234b0b2e2ce14ed61cb34bc0f56e609dad3cdb805ab5c2 SHA512 cc50fb915d4e8a7eb894bdf919940a8c68828e48a5e1f2a08b08a5e75c0eb8a9cd4feaa84742b65d6b2d85ee839ac2b7d565ed7958006ff079d751145463243b DIST zfs-2.3.5.tar.gz 34379136 BLAKE2B 4ae090c76e13f2d3d76e481b9950db1319534e47b357e4818bfc4db84cc0a5089de1e46319a36f02010ac27e3ab5cf74a56979b94864d38dcc41c86721841e54 SHA512 72d62e28dc868aba720755685d5e8020d3165d04d0ae55f33e97ed6c503637c476563d23ea6e991784ab1c2e6886d785e2f15f5a71d4d3f69700bbb26eda3dad DIST zfs-2.3.5.tar.gz.asc 858 BLAKE2B 96edcd3eb5b1a9d33ed50b2526d6a69b5e3dd4d1450205ed7342352aa3ac7014fc813b703ae97a29380da16f452c5491ddf68c05621479b7559f8907cc3b90de SHA512 fc69ab416499ef03cc3721c9f0017e792fc857d045e7f5902a5bf41eb31bbe192e850c1d01482401f06a53926649a1798fc2f7f6fc058fe8c6727b8630c56cdd +DIST zfs-2.3.6.tar.gz 34410022 BLAKE2B 9d83e296cb4e78c67cb9d30ba79b74b4b53c9fd4b0b58cd7a9e1e7b0fafc2c5a49b002c1023d07736c1a6149c61963ccb45e9a82d25944c0a7bd4486ea7fcde8 SHA512 789f534124173693ad461f0fcd5df442588225d5f42420f658fe5c7cb57549417aa472ae95658c90c9dad6818f91d8fb0cbd1fcef2395d167b3ded38477e18c7 +DIST zfs-2.3.6.tar.gz.asc 858 BLAKE2B 88e9344ed51d9906011f6f381364aeb8bfe3360b0c12a18ec45c8a8d42725f345e61c0ad63037ace51bdd04276567cd90ba2311c971c6b2f10501ffb0363be84 SHA512 fe1b7977a8ae564fe639ca824a557a1600c3e22df0af3e750464a3c960b9709c289c07e42ef40173e153453c5641c442c660c804ea21370d77d9819c13b655b1 diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/zfs-kmod/zfs-kmod-2.3.4.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/zfs-kmod/zfs-kmod-2.3.4.ebuild index 34c7f6a79cc..63cafe0b384 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/zfs-kmod/zfs-kmod-2.3.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/zfs-kmod/zfs-kmod-2.3.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -31,7 +31,7 @@ else ZFS_KERNEL_DEP="${ZFS_KERNEL_DEP%%.*}.$(( ${ZFS_KERNEL_DEP##*.} + 1))" if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="amd64 ~arm64 ~loong ~ppc64 ~riscv ~sparc" + KEYWORDS="amd64 arm64 ~loong ppc64 ~riscv ~sparc" fi fi diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/zfs-kmod/zfs-kmod-2.3.6.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/zfs-kmod/zfs-kmod-2.3.6.ebuild new file mode 100644 index 00000000000..61848bbc33d --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-fs/zfs-kmod/zfs-kmod-2.3.6.ebuild @@ -0,0 +1,207 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MODULES_INITRAMFS_IUSE=+initramfs +inherit autotools flag-o-matic linux-mod-r1 multiprocessing + +DESCRIPTION="Linux ZFS kernel module for sys-fs/zfs" +HOMEPAGE="https://github.com/openzfs/zfs" + +MODULES_KERNEL_MAX=6.19 +MODULES_KERNEL_MIN=4.18 + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/openzfs/zfs.git" + inherit git-r3 + unset MODULES_KERNEL_MAX +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openzfs.asc + inherit verify-sig + + MY_PV=${PV/_rc/-rc} + SRC_URI="https://github.com/openzfs/zfs/releases/download/zfs-${MY_PV}/zfs-${MY_PV}.tar.gz" + SRC_URI+=" verify-sig? ( https://github.com/openzfs/zfs/releases/download/zfs-${MY_PV}/zfs-${MY_PV}.tar.gz.asc )" + S="${WORKDIR}/zfs-${MY_PV}" + + ZFS_KERNEL_COMPAT="${MODULES_KERNEL_MAX}" + # Increments minor eg 5.14 -> 5.15, and still supports override. + ZFS_KERNEL_DEP="${ZFS_KERNEL_COMPAT_OVERRIDE:-${ZFS_KERNEL_COMPAT}}" + ZFS_KERNEL_DEP="${ZFS_KERNEL_DEP%%.*}.$(( ${ZFS_KERNEL_DEP##*.} + 1))" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~sparc" + fi +fi + +LICENSE="CDDL MIT debug? ( GPL-2+ )" +SLOT="0/${PVR}" +IUSE="custom-cflags debug +rootfs" +RESTRICT="test" + +BDEPEND=" + app-alternatives/awk + dev-lang/perl +" + +if [[ ${PV} != 9999 ]] ; then + BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-openzfs )" + + IUSE+=" +dist-kernel-cap" + RDEPEND=" + dist-kernel-cap? ( dist-kernel? ( + <virtual/dist-kernel-${ZFS_KERNEL_DEP} + ) ) + " +fi + +# Used to suggest matching USE, but without suggesting to disable +PDEPEND="dist-kernel? ( ~sys-fs/zfs-${PV}[dist-kernel] )" + +PATCHES=( + "${FILESDIR}"/${PN}-2.1.11-gentoo.patch +) + +pkg_pretend() { + use rootfs || return 0 +} + +pkg_setup() { + local CONFIG_CHECK=" + EFI_PARTITION + ZLIB_DEFLATE + ZLIB_INFLATE + !DEBUG_LOCK_ALLOC + !PAX_KERNEXEC_PLUGIN_METHOD_OR + " + use debug && CONFIG_CHECK+=" + DEBUG_INFO + FRAME_POINTER + !DEBUG_INFO_REDUCED + " + use rootfs && CONFIG_CHECK+=" + BLK_DEV_INITRD + DEVTMPFS + " + + kernel_is -lt 5 && CONFIG_CHECK+=" IOSCHED_NOOP" + + if [[ ${PV} != 9999 ]] ; then + local kv_major_max kv_minor_max zcompat + zcompat="${ZFS_KERNEL_COMPAT_OVERRIDE:-${ZFS_KERNEL_COMPAT}}" + kv_major_max="${zcompat%%.*}" + zcompat="${zcompat#*.}" + kv_minor_max="${zcompat%%.*}" + kernel_is -le "${kv_major_max}" "${kv_minor_max}" || die \ + "Linux ${kv_major_max}.${kv_minor_max} is the latest supported version" + fi + + linux-mod-r1_pkg_setup +} + +src_prepare() { + default + + # Run unconditionally (bug #792627) + eautoreconf + + if [[ ${PV} != 9999 ]] ; then + # Set module revision number + sed -Ei "s/(Release:.*)1/\1${PR}-gentoo/" META || die + fi +} + +src_configure() { + use custom-cflags || strip-flags + filter-ldflags -Wl,* + + local myconf=( + --bindir="${EPREFIX}"/bin + --sbindir="${EPREFIX}"/sbin + --with-config=kernel + --with-linux="${KV_DIR}" + --with-linux-obj="${KV_OUT_DIR}" + $(use_enable debug) + + # See gentoo.patch + GENTOO_MAKEARGS_EVAL="${MODULES_MAKEARGS[*]@Q}" + TEST_JOBS="$(makeopts_jobs)" + ) + + econf "${myconf[@]}" +} + +src_compile() { + emake "${MODULES_MAKEARGS[@]}" +} + +src_install() { + emake "${MODULES_MAKEARGS[@]}" DESTDIR="${ED}" install + modules_post_process + + dodoc AUTHORS COPYRIGHT META README.md +} + +_old_layout_cleanup() { + # new files are just extra/{spl,zfs}.ko with no subdirs. + local olddir=( + avl/zavl + icp/icp + lua/zlua + nvpair/znvpair + spl/spl + unicode/zunicode + zcommon/zcommon + zfs/zfs + zstd/zzstd + ) + + # kernel/module/Kconfig contains possible compressed extentions. + local kext kextfiles + for kext in .ko{,.{gz,xz,zst}}; do + kextfiles+=( "${olddir[@]/%/${kext}}" ) + done + + local oldfile oldpath + for oldfile in "${kextfiles[@]}"; do + oldpath="${EROOT}/lib/modules/${KV_FULL}/extra/${oldfile}" + if [[ -f "${oldpath}" ]]; then + ewarn "Found obsolete zfs module ${oldfile} for current kernel ${KV_FULL}, removing." + rm -rv "${oldpath}" || die + # we do not remove non-empty directories just for safety in case there's something else. + # also it may fail if there are both compressed and uncompressed modules installed. + rmdir -v --ignore-fail-on-non-empty "${oldpath%/*.*}" || die + fi + done +} + +pkg_postinst() { + # Check for old module layout before doing anything else. + # only attempt layout cleanup if new .ko location is used. + local newko=( "${EROOT}/lib/modules/${KV_FULL}/extra"/{zfs,spl}.ko* ) + # We check first array member, if glob above did not exand, it will be "zfs.ko*" and -f will return false. + # if glob expanded -f will do correct file precense check. + [[ -f ${newko[0]} ]] && _old_layout_cleanup + + linux-mod-r1_pkg_postinst + + if use x86 || use arm ; then + ewarn "32-bit kernels will likely require increasing vmalloc to" + ewarn "at least 256M and decreasing zfs_arc_max to some value less than that." + fi + + if has_version sys-boot/grub ; then + ewarn "This version of OpenZFS includes support for new feature flags" + ewarn "that are incompatible with previous versions. GRUB2 support for" + ewarn "/boot with the new feature flags is not yet available." + ewarn "Do *NOT* upgrade root pools to use the new feature flags." + ewarn "Any new pools will be created with the new feature flags by default" + ewarn "and will not be compatible with older versions of OpenZFS. To" + ewarn "create a new pool that is backward compatible wih GRUB2, use " + ewarn + ewarn "zpool create -o compatibility=grub2 ..." + ewarn + ewarn "Refer to /usr/share/zfs/compatibility.d/grub2 for list of features." + fi +} From 51fdbe0a95ab51745e20d178dbcedfbb39697c45 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:58 +0000 Subject: [PATCH 242/291] sys-kernel/dracut: Sync with Gentoo It's from Gentoo commit ec3e612bac8bdb6e031eb3335c27cba4ccd11dcd. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-kernel/dracut/Manifest | 2 +- ...cut-108-r4.ebuild => dracut-108-r5.ebuild} | 16 +++-- ...dracut-109.ebuild => dracut-109-r1.ebuild} | 18 +++-- ...cut-106-r2.ebuild => dracut-110-r2.ebuild} | 41 ++++++++---- .../sys-kernel/dracut/dracut-9999.ebuild | 27 ++++---- ...new-systemd-hibernate-resume.service.patch | 21 ------ .../dracut-060-fix-resume-hostonly.patch | 65 ------------------- .../dracut/files/dracut-060-grub-layout.patch | 31 --------- .../dracut/files/dracut-060-systemd-255.patch | 26 -------- .../dracut-103-acct-user-group-gentoo.patch | 30 --------- ...dracut-103-always-install-libsystemd.patch | 21 ------ .../dracut-103-systemd-udev-256-kmod.patch | 41 ------------ .../dracut-106-acct-user-group-gentoo.patch | 13 ---- .../files/dracut-106-fix-mdraid-module.patch | 17 ----- .../files/dracut-106-fix-rngd-module.patch | 14 ---- .../dracut-110-acct-user-group-gentoo.patch | 13 ++++ 16 files changed, 80 insertions(+), 316 deletions(-) rename sdk_container/src/third_party/portage-stable/sys-kernel/dracut/{dracut-108-r4.ebuild => dracut-108-r5.ebuild} (95%) rename sdk_container/src/third_party/portage-stable/sys-kernel/dracut/{dracut-109.ebuild => dracut-109-r1.ebuild} (96%) rename sdk_container/src/third_party/portage-stable/sys-kernel/dracut/{dracut-106-r2.ebuild => dracut-110-r2.ebuild} (90%) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-059-install-new-systemd-hibernate-resume.service.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-060-fix-resume-hostonly.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-060-grub-layout.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-060-systemd-255.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-103-acct-user-group-gentoo.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-103-always-install-libsystemd.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-103-systemd-udev-256-kmod.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-106-acct-user-group-gentoo.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-106-fix-mdraid-module.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-106-fix-rngd-module.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-110-acct-user-group-gentoo.patch diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/Manifest b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/Manifest index e11e754cd03..a676a2498af 100644 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/Manifest @@ -1,3 +1,3 @@ -DIST dracut-106.tar.gz 527743 BLAKE2B 837621da329500b88b0c81a724990702a9f4e816a4818c26622b2bc5e3885c908f0bbba682a262f967d9a08a912cfd63a33270143560a30e3d067dc4217c5262 SHA512 ab17f9440129e2db7c2902115459309132ce7f7b29bbb3172002b7a8ea8ab54799d62d89fbf3f84581a5c14196f6754d33669b583b9d758ab4686a3443a3c4ad DIST dracut-108.tar.gz 552724 BLAKE2B fa5efd4039be8d2d30564a0768d2dec8c3d72b3721391d3a02bde8445cd7a5766d4b119594ebbca86dbd59bd71b64353febaaa7e2257f02d0075333dc29e9047 SHA512 ed06844b65003c1f75373309dbdc10a3036958f413b05b608510142fa78bb34dd9fb1e622242b02b2e9e4063bfa916fd755f5131a77fb3249f77d3f08eca2283 DIST dracut-109.tar.gz 556054 BLAKE2B a5cc0a954fdacaca036d926eb37ecc1c5ed244f59078afb3d59f464f84cf109d52b61ef3ef58eb182164b491d87f8b81a8946c591f0207a44ecd6a6411f018e5 SHA512 c1fb0191911b3b3eac4f568db1cbc8184e2b518a70a0567777b72ef8a5af70a8bdb1b3f8acce2d92eb2dc807e056d5b75aed93292cd05bc8c333efe5d4b98adc +DIST dracut-110.tar.gz 573501 BLAKE2B e82e9db9767bb3e02f13536b26b97a0db94a567980c17e356054015ab3108946b35f7d993864f2ffded3dd0915ee5853df21b7e40ce20a4df5a81a5014a73ee5 SHA512 be5affbe1c76889c0ffe3ae6c52704b559e364cfa5fa149e07a0bbe5e373c7e8c4b54e4a20e7564c91750c8e1593f7cd108806cf63053c8e30d143246e549597 diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-108-r4.ebuild b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-108-r5.ebuild similarity index 95% rename from sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-108-r4.ebuild rename to sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-108-r5.ebuild index db15c7f7cf3..13e24bf4a15 100644 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-108-r4.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-108-r5.ebuild @@ -11,7 +11,7 @@ if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/dracut-ng/dracut-ng" else if [[ "${PV}" != *_rc* ]]; then - KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~sparc x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~sparc x86" fi SRC_URI="https://github.com/dracut-ng/dracut-ng/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" S="${WORKDIR}/${PN}-ng-${PV}" @@ -22,11 +22,15 @@ HOMEPAGE="https://github.com/dracut-ng/dracut-ng/wiki" LICENSE="GPL-2" SLOT="0" -IUSE="dracut-cpio selinux test" +IUSE="dracut-cpio selinux systemd test" RESTRICT="test" PROPERTIES="test? ( test_privileged test_network )" -RDEPEND=" +COMMON_DEPEND=" + >=sys-apps/kmod-23 + systemd? ( >=sys-apps/systemd-257:= ) +" +RDEPEND="${COMMON_DEPEND} app-alternatives/cpio >=app-shells/bash-4.0:0 sys-apps/coreutils[xattr(-)] @@ -48,8 +52,7 @@ RDEPEND=" sys-libs/libsepol ) " -DEPEND=" - >=sys-apps/kmod-23 +DEPEND="${COMMON_DEPEND} elibc_musl? ( sys-libs/fts-standalone ) " @@ -135,6 +138,9 @@ src_configure() { tc-export CC PKG_CONFIG + # https://bugs.gentoo.org/968765 + use systemd || export SYSTEMD_CFLAGS= SYSTEMD_LIBS= + edo ./configure "${myconf[@]}" if use dracut-cpio; then cargo_gen_config diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-109.ebuild b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-109-r1.ebuild similarity index 96% rename from sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-109.ebuild rename to sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-109-r1.ebuild index c33921f4dd5..59515121d45 100644 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-109.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-109-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -22,11 +22,15 @@ HOMEPAGE="https://github.com/dracut-ng/dracut-ng/wiki" LICENSE="GPL-2" SLOT="0" -IUSE="dracut-cpio selinux test" +IUSE="dracut-cpio selinux systemd test" RESTRICT="test" PROPERTIES="test? ( test_privileged test_network )" -RDEPEND=" +COMMON_DEPEND=" + >=sys-apps/kmod-23 + systemd? ( >=sys-apps/systemd-257:= ) +" +RDEPEND="${COMMON_DEPEND} app-alternatives/cpio >=app-shells/bash-4.0:0 sys-apps/coreutils[xattr(-)] @@ -48,15 +52,14 @@ RDEPEND=" sys-libs/libsepol ) " -DEPEND=" - >=sys-apps/kmod-23 +DEPEND="${COMMON_DEPEND} elibc_musl? ( sys-libs/fts-standalone ) " BDEPEND=" || ( - dev-ruby/asciidoctor app-text/asciidoc + dev-ruby/asciidoctor ) app-text/docbook-xml-dtd:4.5 >=app-text/docbook-xsl-stylesheets-1.75.2 @@ -129,6 +132,9 @@ src_configure() { tc-export CC PKG_CONFIG + # https://bugs.gentoo.org/968765 + use systemd || export SYSTEMD_CFLAGS= SYSTEMD_LIBS= + edo ./configure "${myconf[@]}" if use dracut-cpio; then cargo_gen_config diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-106-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-110-r2.ebuild similarity index 90% rename from sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-106-r2.ebuild rename to sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-110-r2.ebuild index 46232b16925..95c6ead6476 100644 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-106-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-110-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -11,7 +11,7 @@ if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/dracut-ng/dracut-ng" else if [[ "${PV}" != *_rc* ]]; then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~sparc x86" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" fi SRC_URI="https://github.com/dracut-ng/dracut-ng/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" S="${WORKDIR}/${PN}-ng-${PV}" @@ -22,11 +22,15 @@ HOMEPAGE="https://github.com/dracut-ng/dracut-ng/wiki" LICENSE="GPL-2" SLOT="0" -IUSE="dracut-cpio selinux test" +IUSE="dracut-cpio selinux systemd test" RESTRICT="test" PROPERTIES="test? ( test_privileged test_network )" -RDEPEND=" +COMMON_DEPEND=" + >=sys-apps/kmod-23 + systemd? ( >=sys-apps/systemd-257:= ) +" +RDEPEND="${COMMON_DEPEND} app-alternatives/cpio >=app-shells/bash-4.0:0 sys-apps/coreutils[xattr(-)] @@ -48,13 +52,15 @@ RDEPEND=" sys-libs/libsepol ) " -DEPEND=" - >=sys-apps/kmod-23 +DEPEND="${COMMON_DEPEND} elibc_musl? ( sys-libs/fts-standalone ) " BDEPEND=" - app-text/asciidoc + || ( + app-text/asciidoc + dev-ruby/asciidoctor + ) app-text/docbook-xml-dtd:4.5 >=app-text/docbook-xsl-stylesheets-1.75.2 >=dev-libs/libxslt-1.1.26 @@ -99,11 +105,7 @@ QA_MULTILIB_PATHS="usr/lib/dracut/.*" PATCHES=( "${FILESDIR}"/gentoo-ldconfig-paths-r1.patch # Gentoo specific acct-user and acct-group conf adjustments - "${FILESDIR}"/${PN}-106-acct-user-group-gentoo.patch - # https://github.com/dracut-ng/dracut-ng/pull/1207 - "${FILESDIR}"/${PN}-106-fix-rngd-module.patch - # https://github.com/dracut-ng/dracut-ng/pull/1250 - "${FILESDIR}"/${PN}-106-fix-mdraid-module.patch + "${FILESDIR}"/${PN}-110-acct-user-group-gentoo.patch ) pkg_setup() { @@ -112,18 +114,26 @@ pkg_setup() { src_configure() { local myconf=( + --bashcompletiondir="$(get_bashcompdir)" + --disable-dracut-cpio + --enable-network-legacy --prefix="${EPREFIX}/usr" --sysconfdir="${EPREFIX}/etc" - --bashcompletiondir="$(get_bashcompdir)" --systemdsystemunitdir="$(systemd_get_systemunitdir)" - --disable-dracut-cpio ) + if ! has_version -b dev-ruby/asciidoctor; then + myconf+=( --disable-asciidoctor ) + fi + # this emulates what the build system would be doing without us append-cflags -D_FILE_OFFSET_BITS=64 tc-export CC PKG_CONFIG + # https://bugs.gentoo.org/968765 + use systemd || export SYSTEMD_CFLAGS= SYSTEMD_LIBS= + edo ./configure "${myconf[@]}" if use dracut-cpio; then cargo_gen_config @@ -169,6 +179,9 @@ src_install() { exeinto /usr/lib/dracut doexe "src/dracut-cpio/$(cargo_target_dir)/dracut-cpio" fi + + # Use our own from sys-kernel/installkernel[dracut] + rm -r "${ED}/usr/lib/kernel" || die } pkg_preinst() { diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-9999.ebuild index c33921f4dd5..95c6ead6476 100644 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/dracut-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -22,11 +22,15 @@ HOMEPAGE="https://github.com/dracut-ng/dracut-ng/wiki" LICENSE="GPL-2" SLOT="0" -IUSE="dracut-cpio selinux test" +IUSE="dracut-cpio selinux systemd test" RESTRICT="test" PROPERTIES="test? ( test_privileged test_network )" -RDEPEND=" +COMMON_DEPEND=" + >=sys-apps/kmod-23 + systemd? ( >=sys-apps/systemd-257:= ) +" +RDEPEND="${COMMON_DEPEND} app-alternatives/cpio >=app-shells/bash-4.0:0 sys-apps/coreutils[xattr(-)] @@ -48,15 +52,14 @@ RDEPEND=" sys-libs/libsepol ) " -DEPEND=" - >=sys-apps/kmod-23 +DEPEND="${COMMON_DEPEND} elibc_musl? ( sys-libs/fts-standalone ) " BDEPEND=" || ( - dev-ruby/asciidoctor app-text/asciidoc + dev-ruby/asciidoctor ) app-text/docbook-xml-dtd:4.5 >=app-text/docbook-xsl-stylesheets-1.75.2 @@ -102,9 +105,7 @@ QA_MULTILIB_PATHS="usr/lib/dracut/.*" PATCHES=( "${FILESDIR}"/gentoo-ldconfig-paths-r1.patch # Gentoo specific acct-user and acct-group conf adjustments - "${FILESDIR}"/${PN}-108-acct-user-group-gentoo.patch - # https://github.com/dracut-ng/dracut-ng/pull/1122#issuecomment-3192110686 - "${FILESDIR}"/${PN}-108-disable-ukify-magic.patch + "${FILESDIR}"/${PN}-110-acct-user-group-gentoo.patch ) pkg_setup() { @@ -113,11 +114,12 @@ pkg_setup() { src_configure() { local myconf=( + --bashcompletiondir="$(get_bashcompdir)" + --disable-dracut-cpio + --enable-network-legacy --prefix="${EPREFIX}/usr" --sysconfdir="${EPREFIX}/etc" - --bashcompletiondir="$(get_bashcompdir)" --systemdsystemunitdir="$(systemd_get_systemunitdir)" - --disable-dracut-cpio ) if ! has_version -b dev-ruby/asciidoctor; then @@ -129,6 +131,9 @@ src_configure() { tc-export CC PKG_CONFIG + # https://bugs.gentoo.org/968765 + use systemd || export SYSTEMD_CFLAGS= SYSTEMD_LIBS= + edo ./configure "${myconf[@]}" if use dracut-cpio; then cargo_gen_config diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-059-install-new-systemd-hibernate-resume.service.patch b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-059-install-new-systemd-hibernate-resume.service.patch deleted file mode 100644 index 124bd6a9944..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-059-install-new-systemd-hibernate-resume.service.patch +++ /dev/null @@ -1,21 +0,0 @@ -From https://github.com/dracutdevs/dracut/pull/2527 -From a2fe89116db4b286fbf515f26bd1773b5e6ee8ad Mon Sep 17 00:00:00 2001 -From: Antonio Alvarez Feijoo <antonio.feijoo@suse.com> -Date: Tue, 26 Sep 2023 09:43:37 +0200 -Subject: [PATCH] fix(resume): add new systemd-hibernate-resume.service - -Since https://github.com/systemd/systemd/commit/a628d933, the generator only -does the initial validation of the system info and then enables the new -`systemd-hibernate-resume.service`. - -Fixes #2513 ---- a/modules.d/95resume/module-setup.sh -+++ b/modules.d/95resume/module-setup.sh -@@ -44,6 +44,7 @@ install() { - if dracut_module_included "systemd" && [[ -x $dracutsysrootdir$systemdutildir/systemd-hibernate-resume ]]; then - inst_multiple -o \ - "$systemdutildir"/system-generators/systemd-hibernate-resume-generator \ -+ "$systemdsystemunitdir"/systemd-hibernate-resume.service \ - "$systemdsystemunitdir"/systemd-hibernate-resume@.service \ - "$systemdutildir"/systemd-hibernate-resume - return 0 diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-060-fix-resume-hostonly.patch b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-060-fix-resume-hostonly.patch deleted file mode 100644 index 3563f85293f..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-060-fix-resume-hostonly.patch +++ /dev/null @@ -1,65 +0,0 @@ -https://bugs.gentoo.org/917000 -https://github.com/dracutdevs/dracut/pull/2494 - -From b88d0bab791bdc4ca75d13802f0391caf537650d Mon Sep 17 00:00:00 2001 -From: Andrew Ammerlaan <andrewammerlaan@gentoo.org> -Date: Sun, 20 Aug 2023 11:47:22 +0200 -Subject: [PATCH] fix(resume): include in hostonly mode if resume= on cmdline - -The grep introduced in commit e3a7112bef794e2f2dd741ec2c74fa9cb9117651 -does not work as intended. The resume module is always excluded in hostonly -mode. - -Made this a bit more explicit with if/else so it is more clear what is going -on. The in-line ||/&& makes the line really long and makes it more difficult -to understand what is going on. - -Bug: https://github.com/dracutdevs/dracut/issues/924 -Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org> ---- - modules.d/95resume/module-setup.sh | 32 +++++++++++++++++++++++------- - 1 file changed, 25 insertions(+), 7 deletions(-) - -diff --git a/modules.d/95resume/module-setup.sh b/modules.d/95resume/module-setup.sh -index d255103366..2d48043827 100755 ---- a/modules.d/95resume/module-setup.sh -+++ b/modules.d/95resume/module-setup.sh -@@ -10,13 +10,31 @@ check() { - return 1 - } - -- # Only support resume if hibernation is currently on -- # and no swap is mounted on a net device -- [[ $hostonly ]] || [[ $mount_needs ]] && { -- swap_on_netdevice || [[ -f /sys/power/resume && "$(< /sys/power/resume)" == "0:0" ]] || grep -rq '^\|[[:space:]]resume=' /proc/cmdline /etc/cmdline /etc/cmdline.d /etc/kernel/cmdline /usr/lib/kernel/cmdline 2> /dev/null && return 255 -- } -- -- return 0 -+ # If hostonly check if we want to include the resume module -+ if [[ $hostonly ]] || [[ $mount_needs ]]; then -+ # Resuming won't work if swap is on a netdevice -+ swap_on_netdevice && return 255 -+ if grep -rq 'resume=' /proc/cmdline /etc/cmdline /etc/cmdline.d /etc/kernel/cmdline /usr/lib/kernel/cmdline 2> /dev/null; then -+ # hibernation support requested on kernel command line -+ return 0 -+ else -+ # resume= not set on kernel command line -+ if [[ -f /sys/power/resume ]]; then -+ if [[ "$(< /sys/power/resume)" == "0:0" ]]; then -+ # hibernation supported by the kernel, but not enabled -+ return 255 -+ else -+ # hibernation supported by the kernel and enabled -+ return 0 -+ fi -+ else -+ # resume file doesn't exist, hibernation not supported by kernel -+ return 255 -+ fi -+ fi -+ else -+ return 0 -+ fi - } - - # called by dracut diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-060-grub-layout.patch b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-060-grub-layout.patch deleted file mode 100644 index 543efa1eef4..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-060-grub-layout.patch +++ /dev/null @@ -1,31 +0,0 @@ -Ensures that the generated initrd is installed in the "new" way via the -staging area in the grub layout. This prevents accidentally creating -an UKI named initrd, and also ensures that BOOT_ROOT and -KERNEL_INSTALL_INITRD_GENERATOR are respected when the layout is set to grub. - -Downstream only since the grub layout for using grub with systemd's -kernel-install is not supported by systemd upstream and therefore this -patch is unlikely to be accepted by dracut upstream. - -diff --git a/install.d/50-dracut.install b/install.d/50-dracut.install -index 441414ac..a98449fe 100755 ---- a/install.d/50-dracut.install -+++ b/install.d/50-dracut.install -@@ -38,6 +38,17 @@ elif [[ $KERNEL_INSTALL_LAYOUT == "bls" && -n $KERNEL_INSTALL_STAGING_AREA ]]; t - else - exit 0 - fi -+elif [[ $KERNEL_INSTALL_LAYOUT == "grub" || $KERNEL_INSTALL_LAYOUT == "compat" || $KERNEL_INSTALL_LAYOUT == "efistub" ]]; then -+ BOOT_DIR_ABS="$KERNEL_INSTALL_STAGING_AREA" -+ if [[ -z $KERNEL_INSTALL_UKI_GENERATOR || $KERNEL_INSTALL_UKI_GENERATOR == "dracut" ]]; then -+ IMAGE="uki.efi" -+ UEFI_OPTS="--uefi" -+ elif [[ -z $KERNEL_INSTALL_INITRD_GENERATOR || $KERNEL_INSTALL_INITRD_GENERATOR == "dracut" ]]; then -+ IMAGE="initrd" -+ UEFI_OPTS="--no-uefi" -+ else -+ exit 0 -+ fi - else - # No layout information, use users --uefi/--no-uefi preference - UEFI_OPTS="" diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-060-systemd-255.patch b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-060-systemd-255.patch deleted file mode 100644 index 9d577e9504d..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-060-systemd-255.patch +++ /dev/null @@ -1,26 +0,0 @@ -https://github.com/dracutdevs/dracut/pull/2586/files -diff --git a/modules.d/01systemd-pcrphase/module-setup.sh b/modules.d/01systemd-pcrphase/module-setup.sh -index fa960a42c1..87efd0c1a6 100755 ---- a/modules.d/01systemd-pcrphase/module-setup.sh -+++ b/modules.d/01systemd-pcrphase/module-setup.sh -@@ -6,7 +6,11 @@ - check() { - - # If the binary(s) requirements are not fulfilled the module can't be installed. -- require_binaries "$systemdutildir"/systemd-pcrphase || return 1 -+ # systemd-255 renamed the binary, check for old and new location. -+ if ! require_binaries "$systemdutildir"/systemd-pcrphase && \ -+ ! require_binaries "$systemdutildir"/systemd-pcrextend; then -+ return 1 -+ fi - - # Return 255 to only include the module, if another module requires it. - return 255 -@@ -28,6 +32,7 @@ install() { - - inst_multiple -o \ - "$systemdutildir"/systemd-pcrphase \ -+ "$systemdutildir"/systemd-pcrextend \ - "$systemdsystemunitdir"/systemd-pcrphase-initrd.service \ - "$systemdsystemunitdir/systemd-pcrphase-initrd.service.d/*.conf" \ - "$systemdsystemunitdir"/initrd.target.wants/systemd-pcrphase-initrd.service diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-103-acct-user-group-gentoo.patch b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-103-acct-user-group-gentoo.patch deleted file mode 100644 index 045528bb0c4..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-103-acct-user-group-gentoo.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff --git a/dracut-init.sh b/dracut-init.sh -index 986da96b..bd47bc92 100755 ---- a/dracut-init.sh -+++ b/dracut-init.sh -@@ -711,10 +711,10 @@ inst_libdir_file() { - - # install sysusers files - inst_sysusers() { -- inst_multiple -o "$sysusers/$*" -+ inst_multiple -o "$sysusers/acct-*-$*" - - if [[ $hostonly ]]; then -- inst_multiple -H -o "$sysusersconfdir/$*" -+ inst_multiple -H -o "$sysusersconfdir/acct-*-$*" - fi - } - -diff --git a/modules.d/91tpm2-tss/module-setup.sh b/modules.d/91tpm2-tss/module-setup.sh -index 4441f552..4b5654d5 100755 ---- a/modules.d/91tpm2-tss/module-setup.sh -+++ b/modules.d/91tpm2-tss/module-setup.sh -@@ -30,7 +30,7 @@ installkernel() { - - # Install the required file(s) and directories for the module in the initramfs. - install() { -- inst_sysusers tpm2-tss.conf -+ inst_sysusers tss.conf - - inst_multiple -o \ - "$tmpfilesdir"/tpm2-tss-fapi.conf \ diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-103-always-install-libsystemd.patch b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-103-always-install-libsystemd.patch deleted file mode 100644 index f2533e14d8c..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-103-always-install-libsystemd.patch +++ /dev/null @@ -1,21 +0,0 @@ -From 921792f201e954de461d3b551e01b5369d666db8 Mon Sep 17 00:00:00 2001 -From: Antonio Alvarez Feijoo <antonio.feijoo@suse.com> -Date: Tue, 10 Sep 2024 15:51:46 +0200 -Subject: [PATCH] feat(systemd): always install libsystemd libraries - ---- - modules.d/00systemd/module-setup.sh | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/modules.d/00systemd/module-setup.sh b/modules.d/00systemd/module-setup.sh -index 498cd7edd..fb8a8200b 100755 ---- a/modules.d/00systemd/module-setup.sh -+++ b/modules.d/00systemd/module-setup.sh -@@ -156,5 +156,6 @@ EOF - _arch=${DRACUT_ARCH:-$(uname -m)} - inst_libdir_file \ - {"tls/$_arch/",tls/,"$_arch/",}"libgcrypt.so*" \ -- {"tls/$_arch/",tls/,"$_arch/",}"libnss_*" -+ {"tls/$_arch/",tls/,"$_arch/",}"libnss_*" \ -+ {"tls/$_arch/",tls/,"$_arch/",}"systemd/libsystemd*.so" - } diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-103-systemd-udev-256-kmod.patch b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-103-systemd-udev-256-kmod.patch deleted file mode 100644 index 7a1fc1c8daf..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-103-systemd-udev-256-kmod.patch +++ /dev/null @@ -1,41 +0,0 @@ -From e16195f28669264227c169d45107ea95b83d8f48 Mon Sep 17 00:00:00 2001 -From: Alexander Tsoy <alexander@tsoy.me> -Date: Tue, 16 Jul 2024 08:48:54 +0300 -Subject: [PATCH] fix(systemd): move installation of libkmod to udev-rules - module - -libkmod library should be installed even if systemd module is -omitted, so move its installation to udev-rules module. ---- - modules.d/00systemd/module-setup.sh | 1 - - modules.d/95udev-rules/module-setup.sh | 6 +++++- - 2 files changed, 5 insertions(+), 2 deletions(-) - -diff --git a/modules.d/00systemd/module-setup.sh b/modules.d/00systemd/module-setup.sh -index ce7bb520c..e4fb9a586 100755 ---- a/modules.d/00systemd/module-setup.sh -+++ b/modules.d/00systemd/module-setup.sh -@@ -171,6 +171,5 @@ EOF - _arch=${DRACUT_ARCH:-$(uname -m)} - inst_libdir_file \ - {"tls/$_arch/",tls/,"$_arch/",}"libgcrypt.so*" \ -- {"tls/$_arch/",tls/,"$_arch/",}"libkmod.so*" \ - {"tls/$_arch/",tls/,"$_arch/",}"libnss_*" - } -diff --git a/modules.d/95udev-rules/module-setup.sh b/modules.d/95udev-rules/module-setup.sh -index d82ed5eb9..6078751f6 100755 ---- a/modules.d/95udev-rules/module-setup.sh -+++ b/modules.d/95udev-rules/module-setup.sh -@@ -93,7 +93,11 @@ install() { - "${udevdir}"/usb_id \ - "${udevdir}"/v4l_id - -- inst_libdir_file "libnss_files*" -+ # Install required libraries. -+ _arch=${DRACUT_ARCH:-$(uname -m)} -+ inst_libdir_file \ -+ {"tls/$_arch/",tls/,"$_arch/",}"libkmod.so*" \ -+ {"tls/$_arch/",tls/,"$_arch/",}"libnss_files*" - - # Install the hosts local user configurations if enabled. - if [[ $hostonly ]]; then diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-106-acct-user-group-gentoo.patch b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-106-acct-user-group-gentoo.patch deleted file mode 100644 index 25792a5445c..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-106-acct-user-group-gentoo.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/modules.d/91tpm2-tss/module-setup.sh b/modules.d/91tpm2-tss/module-setup.sh -index 4441f5528..4b5654d56 100755 ---- a/modules.d/91tpm2-tss/module-setup.sh -+++ b/modules.d/91tpm2-tss/module-setup.sh -@@ -30,7 +30,7 @@ installkernel() { - - # Install the required file(s) and directories for the module in the initramfs. - install() { -- inst_sysusers tpm2-tss.conf -+ inst_sysusers tss.conf - - inst_multiple -o \ - "$tmpfilesdir"/tpm2-tss-fapi.conf \ diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-106-fix-mdraid-module.patch b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-106-fix-mdraid-module.patch deleted file mode 100644 index 3692d1fc2fd..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-106-fix-mdraid-module.patch +++ /dev/null @@ -1,17 +0,0 @@ -https://github.com/dracut-ng/dracut-ng/pull/1250 -diff --git a/modules.d/90mdraid/module-setup.sh b/modules.d/90mdraid/module-setup.sh -index 8ce5f2ee..b0ab8411 100755 ---- a/modules.d/90mdraid/module-setup.sh -+++ b/modules.d/90mdraid/module-setup.sh -@@ -46,7 +46,7 @@ cmdline() { - [[ ${host_fs_types[$dev]} != *_raid_member ]] && continue - - UUID=$( -- /sbin/mdadm --examine --export "$dev" \ -+ mdadm --examine --export "$dev" \ - | while read -r line || [[ "$line" ]]; do - [[ ${line#MD_UUID=} == "$line" ]] && continue - printf "%s" "${line#MD_UUID=} " --- -2.48.1 - diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-106-fix-rngd-module.patch b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-106-fix-rngd-module.patch deleted file mode 100644 index 8163ba28ad7..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-106-fix-rngd-module.patch +++ /dev/null @@ -1,14 +0,0 @@ -https://github.com/dracut-ng/dracut-ng/pull/1207 -diff --git a/modules.d/06rngd/module-setup.sh b/modules.d/06rngd/module-setup.sh -index 1fcc831c4..064379242 100755 ---- a/modules.d/06rngd/module-setup.sh -+++ b/modules.d/06rngd/module-setup.sh -@@ -21,7 +21,7 @@ - check() { - # if there's no rngd binary, no go. - require_binaries rngd || return 1 -- require_binaries "${systemdsystemunitdir}/rngd.service" || return 1 -+ [[ -e "${systemdsystemunitdir}/rngd.service" ]] || return 1 - - return 0 - } diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-110-acct-user-group-gentoo.patch b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-110-acct-user-group-gentoo.patch new file mode 100644 index 00000000000..4bfa98efbe7 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-kernel/dracut/files/dracut-110-acct-user-group-gentoo.patch @@ -0,0 +1,13 @@ +diff --git a/modules.d/73tpm2-tss/module-setup.sh b/modules.d/73tpm2-tss/module-setup.sh +index 4441f5528..4b5654d56 100755 +--- a/modules.d/73tpm2-tss/module-setup.sh ++++ b/modules.d/73tpm2-tss/module-setup.sh +@@ -30,7 +30,7 @@ installkernel() { + + # Install the required file(s) and directories for the module in the initramfs. + install() { +- inst_sysusers tpm2-tss.conf ++ inst_sysusers tss.conf + inst_sysusers system-user-tss.conf + grep -s '^tss:' "${dracutsysrootdir-}"/etc/passwd >> "$initdir/etc/passwd" + grep -s '^tss:' "${dracutsysrootdir-}"/etc/group >> "$initdir/etc/group" From 40206239af66f5b3506db83c8e7b51b2c0fa79d0 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:58 +0000 Subject: [PATCH 243/291] sys-kernel/linux-headers: Sync with Gentoo It's from Gentoo commit 53b813cafeaae6ac4832347889d022e7e650f45a. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-kernel/linux-headers/linux-headers-6.18.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/linux-headers-6.18.ebuild b/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/linux-headers-6.18.ebuild index 743d67b1371..f3f229c43fe 100644 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/linux-headers-6.18.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/linux-headers-6.18.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -17,7 +17,7 @@ SRC_URI=" " S="${WORKDIR}/linux-${PV}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" BDEPEND=" app-arch/xz-utils From 2f9dc0fdd784e6ec72de5e7b171418ed61cbc69a Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:29:59 +0000 Subject: [PATCH 244/291] sys-libs/binutils-libs: Sync with Gentoo It's from Gentoo commit ba663c48ddc56aaa0df9e4ccab20c68b339c18bb. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-libs/binutils-libs/Manifest | 2 + .../binutils-libs/binutils-libs-2.46.0.ebuild | 260 ++++++++++++++++++ 2 files changed, 262 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.46.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/Manifest index c6cc8e52d9a..a4c2f073c63 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/Manifest @@ -25,3 +25,5 @@ DIST binutils-2.45-patches-3.tar.xz 31264 BLAKE2B 3fda1843a13a3ea7d6a2bbfe5826c0 DIST binutils-2.45.1-patches-1.tar.xz 9172 BLAKE2B 37fd7f0d7d231223a88637691bcf6bdec5481a573b47e6385e4dba7f7895b94ceae308c7875bbdc1c6e537c6ff0cb5f222c782f04b5f2757a5730aa83edf1d32 SHA512 c1251d7baf352f5909570e1ee45021eeabffb68222bc80991f4a53faee97857471a68aec664bfbf35cbd3b96ea9e8d0bfa52c3d0e5bbfdbb94daf590957cd89c DIST binutils-2.45.1.tar.xz 27962312 BLAKE2B 1ccab38659ec47f9100b61322627345fe79ebd04ed0b1e872c988edded4d292d7c9ac33d9f6ea47bf265ec823dfba60da0e84374900c15ec89e3aa9280ac020c SHA512 ea030419eba387579ab717be7e3223fc99e93b586860b06003c12489f93441640d4082736f76aa5e98233db4f46e232f536a45e471486de1f5b64e1b827c167e DIST binutils-2.45.tar.xz 27868232 BLAKE2B 1ce72346b1f531c89feb86b407e2c649151b506ffbd1a02d413411d36f7ede98fa9a1adf75dd941c01df5fe7e6bf151828b269eeb7c278315ca8004bff22eb7f SHA512 c7b10a7466d9fd398d7a0b3f2a43318432668d714f2ec70069a31bdc93c86d28e0fe83792195727167743707fbae45337c0873a0786416db53bbf22860c16ce7 +DIST binutils-2.46.0-patches-1.tar.xz 6620 BLAKE2B ef5ae8ded0b635c6d85fd5220e23f1b79081369704d82edf2c7d3fc2000adae5899e0920a1fdc64bf1c518bdbeaef09aabff8abecaf3cec0e51596604162f6dd SHA512 b8f555e1ef01a23aa138c9f67b55a70c929d7cd5ec8993c9c7ab1d02d604e51e710713dbea31298291dd0afe3b8c7db85630b6314c2117861e47bd2e9c9d74a9 +DIST binutils-2.46.0.tar.xz 28548776 BLAKE2B 9f4fd8897d237eb5003bdf439537dfc5f8c681e9ff939fb06bb8235ed298031ea4cc91611edb640ffc432199d5791289d003fe0d07acce80327dc40595a5eb9e SHA512 32f880bb4f69351f4ae54a5d00359625c6c49d8e76624fb5cffdf174c79c8d3212f66225b81c12933c6ed59604ab652560773dd92fab384b930c97a9d4e1fdf2 diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.46.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.46.0.ebuild new file mode 100644 index 00000000000..d0f7092c54a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.46.0.ebuild @@ -0,0 +1,260 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit dot-a flag-o-matic libtool toolchain-funcs multilib-minimal + +DESCRIPTION="Core binutils libraries (libbfd, libopcodes, libiberty) for external packages" +HOMEPAGE="https://sourceware.org/binutils/" + +LICENSE="|| ( GPL-3 LGPL-3 )" +IUSE="64-bit-bfd cet multitarget nls static-libs test" + +# Variables that can be set here (ignored for live ebuilds) +# PATCH_VER - the patchset version +# Default: empty, no patching +# PATCH_BINUTILS_VER - the binutils version in the patchset name +# - Default: PV +# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/... +# for the patchsets + +PATCH_VER=1 +PATCH_DEV=dilfridge + +MY_PN=binutils +MY_P=${MY_PN}-${PV} + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + SLOT="0/${PV}" +elif [[ ${PV} == *9999 ]]; then + inherit git-r3 + SLOT="0/$(ver_cut 1-2)" +else + PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}} + PATCH_DEV=${PATCH_DEV:-dilfridge} + SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz + https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${MY_P}.tar.xz + https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${MY_PN}-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz" + SLOT="0/${PV}" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +BDEPEND=" + nls? ( sys-devel/gettext ) + test? ( dev-util/dejagnu ) +" +DEPEND="virtual/zlib:=[${MULTILIB_USEDEP}]" +# Need a newer binutils-config that'll reset include/lib symlinks for us. +RDEPEND="${DEPEND} + >=sys-devel/binutils-config-5 +" + +RESTRICT="!test? ( test )" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/bfd.h +) + +src_unpack() { + if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/toolchain/binutils-patches.git + https://github.com/gentoo/binutils-patches + " + EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git + git-r3_src_unpack + mv patches-git/9999 patch || die + + if [[ ${PV} != 9999 ]] ; then + EGIT_BRANCH=binutils-$(ver_cut 1)_$(ver_cut 2)-branch + fi + EGIT_REPO_URI=" + https://sourceware.org/git/binutils-gdb.git + https://git.sr.ht/~sourceware/binutils-gdb + https://gitlab.com/x86-binutils/binutils-gdb.git + " + S=${WORKDIR}/binutils + EGIT_CHECKOUT_DIR=${S} + git-r3_src_unpack + else + unpack ${MY_P}.tar.xz + + cd "${WORKDIR}" || die + unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz + + # _p patch versions are Gentoo specific tarballs ... + local dir=${MY_P} + dir=${dir/-hppa64/} + + S=${WORKDIR}/${dir} + fi + + cd "${WORKDIR}" || die +} + +src_prepare() { + if [[ -n ${PATCH_VER} ]] ; then + einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}" + eapply "${WORKDIR}/patch"/*.patch + fi + + # Fix cross-compile relinking issue, bug #626402 + elibtoolize + + if [[ ${CHOST} == *-darwin* ]] ; then + # somehow libtool/configure is messed up and (custom patch at + # upstream?) and misdetects (basically assumes) nm can be called + # with -B arg -- can't run eautoreconf (fails), so patch up + # manually, this would break any target that needs -B to nm + sed -i -e 's/lt_cv_path_NM="$tmp_nm -B"/lt_cv_path_NM="$tmp_nm"/' \ + libctf/configure || die + fi + + # See https://www.gnu.org/software/make/manual/html_node/Parallel-Output.html + # Avoid really confusing logs from subconfigure spam, makes logs far + # more legible. + export MAKEOPTS="--output-sync=line ${MAKEOPTS}" + + default +} + +pkgversion() { + printf "Gentoo ${PVR}" + [[ -n ${PATCHVER} ]] && printf " p${PATCHVER}" +} + +src_configure() { + lto-guarantee-fat + multilib-minimal_src_configure +} + +multilib_src_configure() { + local myconf=( + # portage's econf() does not detect presence of --d-d-t + # because it greps only top-level ./configure. But not + # libiberty's or bfd's configure. + --disable-dependency-tracking + --disable-silent-rules + --enable-obsolete + --enable-shared + --enable-threads + # Newer versions (>=2.24) make this an explicit option. #497268 + --enable-install-libiberty + --disable-werror + --with-bugurl="https://bugs.gentoo.org/" + --with-pkgversion="$(pkgversion)" + $(use_enable static-libs static) + # The binutils eclass enables this flag for all bi-arch builds, + # but other tools often don't care about that support. Put it + # beyond a flag if people really want it, but otherwise leave + # it disabled as it can slow things down on 32bit arches. #438522 + $(use_enable 64-bit-bfd) + # This only disables building in the zlib subdir. + # For binutils itself, it'll use the system version. #591516 + --without-zlib + --with-system-zlib + # We only care about the libs, so disable programs. #528088 + --disable-{binutils,etc,ld,gas,gprof,gprofng} + # Disable modules that are in a combined binutils/gdb tree. #490566 + --disable-{gdb,gdbserver,libbacktrace,libdecnumber,readline,sim} + # Strip out broken static link flags. + # https://gcc.gnu.org/PR56750 + --without-stage1-ldflags + # We pull in all USE-flags that change ABI in an incompatible + # way. #666100 + # USE=multitarget change size of global arrays + # USE=64-bit-bfd changes data structures of exported API + --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)-$(usex 64-bit-bfd 64 def) + + # Avoid automagic dependency on (currently prefix) systems + # with debuginfod library, bug #754753 + --without-debuginfod + + # Revisit if it's useful, we do have binutils[zstd] though + --without-zstd + + # Allow user to opt into CET for host libraries. + # Ideally we would like automagic-or-disabled here. + # But the check does not quite work on i686: bug #760926. + $(use_enable cet) + ) + + # mips can't do hash-style=gnu ... + if [[ $(tc-arch) != mips ]] ; then + myconf+=( --enable-default-hash-style=gnu ) + fi + + use multitarget && myconf+=( --enable-targets=all --enable-64-bit-bfd ) + + use nls \ + && myconf+=( --without-included-gettext ) \ + || myconf+=( --disable-nls ) + + if [[ ${CHOST} == *-darwin* ]] && use nls ; then + # fix underlinking in opcodes + sed -i -e 's/@SHARED_LDFLAGS@/@SHARED_LDFLAGS@ -lintl/' \ + "${S}"/opcodes/Makefile.in || die + fi + + ECONF_SOURCE="${S}" econf "${myconf[@]}" + + # Prevent makeinfo from running as we don't build docs here. + # bug #622652 + sed -i \ + -e '/^MAKEINFO/s:=.*:= true:' \ + Makefile || die +} + +multilib_src_test() { + ( + # Tests don't expect LTO + filter-lto + + # If we have e.g. -mfpmath=sse -march=pentium4 in CFLAGS, + # we'll get lto1 warnings for some tests which cause + # spurious failures because -mfpmath isn't passed at + # link-time. Filter accordingly. + # + # Alternatively, we could pass C{C,XX}_FOR_TARGET with + # some (ideally not all, surely would break some tests) + # stuffed in. + filter-flags '-mfpmath=*' + + # lto-wrapper warnings which confuse tests + filter-flags '-Wa,*' + + # bug #637066 + filter-flags -Wall -Wreturn-type + + # Note that we need 'check' explicitly if ever cleaning this + # up: the default `src_test` check for the 'check' target + # with `-n` may fail with parallel make and silently skip tests (bug #955595) + emake -k check \ + CFLAGS_FOR_TARGET="${CFLAGS_FOR_TARGET:-${CFLAGS}}" \ + CXXFLAGS_FOR_TARGET="${CXXFLAGS_FOR_TARGET:-${CXXFLAGS}}" \ + LDFLAGS_FOR_TARGET="${LDFLAGS_FOR_TARGET:-${LDFLAGS}}" \ + CFLAGS="${CFLAGS}" \ + CXXFLAGS="${CXXFLAGS}" \ + LDFLAGS="${LDFLAGS}" + ) +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + # Provided by dev-debug/gdb instead + if [[ ${PV} != 9999 ]] ; then + rm "${ED}"/usr/share/info/sframe-spec.info || die + fi + + # Provide libiberty.h directly. + dosym libiberty/libiberty.h /usr/include/libiberty.h +} + +multilib_src_install_all() { + use static-libs || find "${ED}"/usr -name '*.la' -delete + # Explicit "${ED}" as we need it to do things even w/ USE=-static-libs + strip-lto-bytecode "${ED}" +} From e0a27658c8e573e45eeb2795f3d2752a3aec6466 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:30:03 +0000 Subject: [PATCH 245/291] sys-libs/glibc: Sync with Gentoo It's from Gentoo commit 21aa2faada31c194da4a17c087bf6bba8fb9f406. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-libs/glibc/Manifest | 9 +- ...c-2.41-r8.ebuild => glibc-2.41-r10.ebuild} | 8 +- .../sys-libs/glibc/glibc-2.41-r6.ebuild | 1789 ----------------- ...bc-2.42-r3.ebuild => glibc-2.42-r5.ebuild} | 18 +- ...glibc-2.42-r2.ebuild => glibc-2.43.ebuild} | 54 +- .../sys-libs/glibc/glibc-9999.ebuild | 10 + 6 files changed, 67 insertions(+), 1821 deletions(-) rename sdk_container/src/third_party/portage-stable/sys-libs/glibc/{glibc-2.41-r8.ebuild => glibc-2.41-r10.ebuild} (99%) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41-r6.ebuild rename sdk_container/src/third_party/portage-stable/sys-libs/glibc/{glibc-2.42-r3.ebuild => glibc-2.42-r5.ebuild} (99%) rename sdk_container/src/third_party/portage-stable/sys-libs/glibc/{glibc-2.42-r2.ebuild => glibc-2.43.ebuild} (97%) diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/Manifest index b8cbdc7ef23..cea437520e8 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/Manifest @@ -25,13 +25,14 @@ DIST glibc-2.39-patches-11.tar.xz 192784 BLAKE2B fef42e0bd2a3341f41cac56dc878dcc DIST glibc-2.39.tar.xz 18520988 BLAKE2B 9d98459a2d58401e07c081e0d841935b23998da75a7eb5a7ebd23a1f9ebab99dee623fe166397c1b6c926960c570f62dbca5cb3b5ce84a918adff6b7a15e16bb SHA512 818f58172a52815b4338ea9f2a69ecaa3335492b9f8f64cbf8afb24c0d737982341968ecd79631cae3d3074ab0ae4bc6056fc4ba3ffe790849dc374835cd57e2 DIST glibc-2.40-patches-11.tar.xz 227044 BLAKE2B 2a8c799a88596f3fc28bc45fc206f231f628ff83aae242d69e216b65983def35d3aaab282287f1d77cb9d37d10bb71c483815ea83dfb2e47670a4cfcfbd1d92f SHA512 e984e4842951c24cf079e9a6f88771ede0709949402dd9f734cbfdf21ff40ca3d7380c0b9cc0c0d89943b6481adf8c7db2ab4b0ffe57e2e1fa514d925f0db395 DIST glibc-2.40.tar.xz 18752204 BLAKE2B 8593cab5b2549b77159b6866fbb40b917e491fd5bc0814f7f85b6529166d78d4583436450c479b86cdfe468304fc4d2a9ba8294230a55dbc4c15e89c3ab6c000 SHA512 33caf91dbfddde6480b7cdf7a68b36aff8c522bfee56160af26af297f1b768668edb08bc4e1a7ff61c64721e3c1d49c347a5dd01c5edd3b914ee6479c8b27885 -DIST glibc-2.41-patches-10.tar.xz 159460 BLAKE2B 6b228e2cb049b5fe43e42a2f0f30277b3d895d7ccae339e3cc25346b15b55d6399274a2c7d357adf55d08d3f673491e3008fb9e6c4871f6cf6cde340bf70df11 SHA512 1504e30b31e3f1d2d474714132c01badcdbced667c779803f6ee706e050ad3352e3ae2cfb8741067237c420e8ae29b9efaed7e08f43ece6d988fe7325a7974a2 -DIST glibc-2.41-patches-8.tar.xz 139400 BLAKE2B 2023d09d6842a18dd19611e504c643cf866ba28b1d836d5a21f1a34d78f6fe82d6f3d4b76bf9a34dc8b1f12aac632fb85b95c025afbcf164976f30dfd794fe6d SHA512 c41e0a4e6dda014c6540a8178c0bc951e807deacb0cb85d4741b575fd2e9803ab9960b9caa783cf38449cb1452c40a3a0f54844b6c1e8ee47f7340c5f97dd261 +DIST glibc-2.41-patches-12.tar.xz 168252 BLAKE2B c844fba0871e7aa60af636c0569d01beebd314367081313635598074643449cc047a07b88979d341ba8327ac7becd3aef8b20662c8490565d29c49ade474cb8b SHA512 b780db3e31f3724cc19129bc11f49e4ad649a1a2b8174f990041640c81e03fcda3c5f3c25dffd215c7b1173e5ebb226312af58112e9798ba7254889d7b05f454 DIST glibc-2.41.tar.xz 19344868 BLAKE2B 4da62f489ba7a95bb069c2cfea8cf78e4d37e3a5f7e1736239670ba1dca12b69aa77bd00ced078c27d91b1e622c58cbd70258161a9d18c5b3bcc95863b8d744d SHA512 894a3e5a796bc13df30c26a5bfbe4d60b5dbdaac54e7763432235124b547070c7dda88c50584536870cab79183d8cad73a3ac6ed09bfe54fa8482aad07253169 -DIST glibc-2.42-patches-4.tar.xz 48152 BLAKE2B 82b036226ad1435c99bfb1b4fc87523b92153e26cb4fbc82eeea0a41793bab7fa3c15dd7a02286cfb53e397e76f6978fe5e85022db12724c3f7c65c25598c8a4 SHA512 c34fb13f455e5e040eb45eabbdb97a611fe80634cb32eb23cad08a5ecd349d41a5b99a5aa18850a017ecf1291f21f8295a17e4697b34b000c75693bc0f3c04d7 -DIST glibc-2.42-patches-5.tar.xz 63016 BLAKE2B bc608bbd2b38d13bd02da86e8229834e2a70ac1b69b2ace2b2ea15d10e8bf1b4679fbd5ee8fff470ed9e0913ab913779df9567c94193f7e4722f60af07b1b629 SHA512 4e24c3361ddeea5cc615783832e7a9dc82342449dbeda38d84dd15034d56afb9838fdc1dcd9119b15d56343d954ae651c6064ec76741a3ca9a61b2ea1b40079f +DIST glibc-2.42-patches-7.tar.xz 69864 BLAKE2B 59c1ec784d49ccce40c14a3b09c3edb7ad557677dc9ab9af526ca27b3716fa3727e10ef34c2c1ea09a9855ec0d8553ce873cbbf75af57e6e0717ef97d1d37def SHA512 9ac6ba2392b76dce2cf39f6e7b054166d0fc07395b7958b9a84bbb1654ae3e3548113e5fe5bfcd4b9000668c4ea07a70c8c1e5688c0e72e613462383222ae48f DIST glibc-2.42.tar.xz 19930508 BLAKE2B 6ffabfe7942034a5a4fb5097679cb47bc3431eb2a3864af07cea0cb6aa5db63fbaf6f026b3c9299e00268058a6762eb21e92499f012d552ed87d65c7ffbd0bbe SHA512 73a617db8e0f0958c0575f7a1c5a35b72b7e070b6cbdd02a9bb134995ca7ca0909f1e50d7362c53d2572d72f1879bb201a61d5275bac16136895d9a34ef0c068 DIST glibc-2.42.tar.xz.sig 981 BLAKE2B 890e637c444982b2b07fac4607ce3e9f416c9c7688267ebd135e53878d93db95c609facfa1f347c59f23776cafb4b5df8ffb60235c89be451276202dd676dab2 SHA512 d868220778e98d24aead10a585e6a903892e4d043cd96a404634c8aa03d001d624a46a5c0fe13c86f83f66396a1f360a10990966fe377e98a722914b5087575d +DIST glibc-2.43-patches-1.tar.xz 23328 BLAKE2B 4d7d719d234af725861b06eee6b86c269c88386efbd6dc411fa52c196b00541c07247ef8d0e2eea02d0369da0f09c440c8ccef4a03881aad568a84978eecb17e SHA512 33d260fcfe96e5b9bf85bd12cc8f83915b197b1bf512f6c06f8542df01803b1b5152dd2e60723b193ad26885fb1473f750d556a1abfe213d39d6df30ad19b9a1 +DIST glibc-2.43.tar.xz 20297012 BLAKE2B a764edf3d0d52809aa94cf1a8f73341159d226ecc2a595aa3c9e1d1fd4b2d4eb9a599d70bda8812b73d8ef58b39746efdd34026772e38c0f091fe071d461ea98 SHA512 25765f86bf54a22fc69dd13023ec9be59bd7e1f9d6ea1630cf21851898df2043bb8a01538c4b5fdd06495d0163289362b0768b391b0617f709b89a777168291c +DIST glibc-2.43.tar.xz.sig 1018 BLAKE2B 99fb3f296795498f6de8090d537e32d8af0bfa75c7d8145ba4c35ca1b54c281fd2b9cb121886aef1800c0a6e508244914a2de67339d113561a9fc2c515110924 SHA512 6e26f0edee146710bcb73c3890c455e8b479009f99d284c43ea695b73bfe45e4ba47d1460300ce8c7496689b0c21a1c77e6359e005957973648b86755160c8f5 DIST glibc-systemd-20210729.tar.gz 1480 BLAKE2B 37722c7579df782d890e44dbab99c3de52ab466eb9de80d82405e9bb5620bf39ffc8c5f466a435bdb86ef6d36dd7019c0736573916bda6c67d02a2581e0ec979 SHA512 efd75af58b50522c28cdac7abd1fc56555bc1bb042512c90d8340c1ec09c5791b3872a305bf83723252bbde5855b75d958c041083457765c4cfd170732d09238 DIST glibc-systemd-20210814.tar.gz 1469 BLAKE2B 10fa7bcb46d4fdce9c0ab353cbd30871e9b09a347a13a9c9a3b5777f931aa3c826c158d2e49532c604d4a834f2fab4089b67495fb88d0398945dc50d45ad9ef1 SHA512 5346a9ea459a1e6ccf665389f2a294de1e16f1e3e05cdf07e3dd99ed0e4f6f8b52cc333d4bff3c75ac90ab6ce70cd4ab2b3e126f920ce7979abd6dda56315efc DIST locale-gen-2.00.tar.gz 7738 BLAKE2B cde6de5ba3400aea24d0d5f1b79471f89f09fb747c8e371e38316c7ada92f967e0865f573f23cb353d82419c234724143c0aeca9eb70eb945dfc581cc7491eb1 SHA512 b609fddb9ec5e567c008841fef3390eddb5d6e7699a8271b3b8c0ade1b44b0ac2e5d1daa8b9acabf3432e3b88110b538a96f209b1ad0f9e988b7efce66606dff diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41-r8.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41-r10.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41-r8.ebuild rename to sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41-r10.ebuild index 3eaefb0c71b..d3ed900f280 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41-r8.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41-r10.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -6,13 +6,13 @@ EAPI=8 # Bumping notes: https://wiki.gentoo.org/wiki/Project:Toolchain/sys-libs/glibc # Please read & adapt the page as necessary if obsolete. -PYTHON_COMPAT=( python3_{10..13} ) +PYTHON_COMPAT=( python3_{11..13} ) TMPFILES_OPTIONAL=1 EMULTILIB_PKG="true" # Gentoo patchset (ignored for live ebuilds) -PATCH_VER=10 +PATCH_VER=12 PATCH_DEV=dilfridge # gcc mulitilib bootstrap files version @@ -41,7 +41,7 @@ HOMEPAGE="https://www.gnu.org/software/libc/" if [[ ${PV} == 9999* ]]; then inherit git-r3 else - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" SRC_URI="mirror://gnu/glibc/${P}.tar.xz" SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz" fi diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41-r6.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41-r6.ebuild deleted file mode 100644 index e9360f1fc79..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41-r6.ebuild +++ /dev/null @@ -1,1789 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Bumping notes: https://wiki.gentoo.org/wiki/Project:Toolchain/sys-libs/glibc -# Please read & adapt the page as necessary if obsolete. - -PYTHON_COMPAT=( python3_{10..13} ) -TMPFILES_OPTIONAL=1 - -EMULTILIB_PKG="true" - -# Gentoo patchset (ignored for live ebuilds) -PATCH_VER=8 -PATCH_DEV=dilfridge - -# gcc mulitilib bootstrap files version -GCC_BOOTSTRAP_VER=20201208 - -# systemd integration version -GLIBC_SYSTEMD_VER=20210729 - -# Minimum kernel version that glibc requires -MIN_KERN_VER="3.2.0" - -# Minimum pax-utils version needed (which contains any new syscall changes for -# its seccomp filter!). Please double check this! -MIN_PAX_UTILS_VER="1.3.3" - -# Minimum systemd version needed (which contains any new syscall changes for -# its seccomp filter!). Please double check this! -MIN_SYSTEMD_VER="254.9-r1" - -inherit python-any-r1 prefix preserve-libs toolchain-funcs flag-o-matic gnuconfig \ - multilib systemd multiprocessing tmpfiles eapi9-ver - -DESCRIPTION="GNU libc C library" -HOMEPAGE="https://www.gnu.org/software/libc/" - -if [[ ${PV} == 9999* ]]; then - inherit git-r3 -else - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 x86" - SRC_URI="mirror://gnu/glibc/${P}.tar.xz" - SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz" -fi - -SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )" -SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )" - -LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE" -SLOT="2.2" -IUSE="audit caps cet compile-locales custom-cflags doc gd hash-sysv-compat headers-only +multiarch multilib multilib-bootstrap nscd perl profile selinux +ssp stack-realign +static-libs suid systemd systemtap test vanilla" - -# Here's how the cross-compile logic breaks down ... -# CTARGET - machine that will target the binaries -# CHOST - machine that will host the binaries -# CBUILD - machine that will build the binaries -# If CTARGET != CHOST, it means you want a libc for cross-compiling. -# If CHOST != CBUILD, it means you want to cross-compile the libc. -# CBUILD = CHOST = CTARGET - native build/install -# CBUILD != (CHOST = CTARGET) - cross-compile a native build -# (CBUILD = CHOST) != CTARGET - libc for cross-compiler -# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler -# For install paths: -# CHOST = CTARGET - install into / -# CHOST != CTARGET - install into /usr/CTARGET/ -# -export CBUILD=${CBUILD:-${CHOST}} -export CTARGET=${CTARGET:-${CHOST}} -if [[ ${CTARGET} == ${CHOST} ]] ; then - if [[ ${CATEGORY} == cross-* ]] ; then - export CTARGET=${CATEGORY#cross-} - fi -fi - -# Note [Disable automatic stripping] -# Disabling automatic stripping for a few reasons: -# - portage's attempt to strip breaks non-native binaries at least on -# arm: bug #697428 -# - portage's attempt to strip libpthread.so.0 breaks gdb thread -# enumeration: bug #697910. This is quite subtle: -# * gdb uses glibc's libthread_db-1.0.so to enumerate threads. -# * libthread_db-1.0.so needs access to libpthread.so.0 local symbols -# via 'ps_pglobal_lookup' symbol defined in gdb. -# * 'ps_pglobal_lookup' uses '.symtab' section table to resolve all -# known symbols in 'libpthread.so.0'. Specifically 'nptl_version' -# (unexported) is used to sanity check compatibility before enabling -# debugging. -# Also see https://sourceware.org/gdb/wiki/FAQ#GDB_does_not_see_any_threads_besides_the_one_in_which_crash_occurred.3B_or_SIGTRAP_kills_my_program_when_I_set_a_breakpoint -# * normal 'strip' command trims '.symtab' -# Thus our main goal here is to prevent 'libpthread.so.0' from -# losing it's '.symtab' entries. -# - similarly, valgrind requires knowledge about symbols in ld.so: -# bug #920753 -# As Gentoo's strip does not allow us to pass less aggressive stripping -# options and does not check the machine target we strip selectively. - -# We need a new-enough binutils/gcc to match upstream baseline. -# Also we need to make sure our binutils/gcc supports TLS, -# and that gcc already contains the hardened patches. -# Lastly, let's avoid some openssh nastiness, bug 708224, as -# convenience to our users. - -IDEPEND=" - !compile-locales? ( sys-apps/locale-gen ) -" -BDEPEND=" - ${PYTHON_DEPS} - >=app-misc/pax-utils-${MIN_PAX_UTILS_VER} - sys-devel/bison - compile-locales? ( sys-apps/locale-gen ) - doc? ( - dev-lang/perl - sys-apps/texinfo - ) - test? ( - dev-lang/perl - >=net-dns/libidn2-2.3.0 - sys-apps/gawk[mpfr] - ) -" -COMMON_DEPEND=" - gd? ( media-libs/gd:2= ) - nscd? ( selinux? ( - audit? ( sys-process/audit ) - caps? ( sys-libs/libcap ) - ) ) - suid? ( caps? ( sys-libs/libcap ) ) - selinux? ( sys-libs/libselinux ) - systemtap? ( dev-debug/systemtap ) -" -DEPEND="${COMMON_DEPEND} -" -RDEPEND="${COMMON_DEPEND} - !<app-misc/pax-utils-${MIN_PAX_UTILS_VER} - !<sys-apps/systemd-${MIN_SYSTEMD_VER} - perl? ( dev-lang/perl ) -" - -RESTRICT="!test? ( test )" - -if [[ ${CATEGORY} == cross-* ]] ; then - BDEPEND+=" !headers-only? ( - >=${CATEGORY}/binutils-2.27 - >=${CATEGORY}/gcc-6.2 - )" - [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers" -else - BDEPEND+=" - >=sys-devel/binutils-2.27 - >=sys-devel/gcc-6.2 - " - DEPEND+=" virtual/os-headers " - RDEPEND+=" - >=net-dns/libidn2-2.3.0 - vanilla? ( !sys-libs/timezone-data ) - " - PDEPEND+=" !vanilla? ( sys-libs/timezone-data )" -fi - -# Ignore tests whitelisted below -GENTOO_GLIBC_XFAIL_TESTS="${GENTOO_GLIBC_XFAIL_TESTS:-yes}" - -# The following tests fail due to the Gentoo build system and are thus -# executed but ignored: -XFAIL_TEST_LIST=( - # buggy test, assumes /dev/ and /dev/null on a single filesystem - # 'mount --bind /dev/null /chroot/dev/null' breaks it. - # https://sourceware.org/PR25909 - tst-support_descriptors - - # The following tests fail only inside portage - # https://bugs.gentoo.org/831267 - tst-system - tst-strerror - tst-strsignal - - # Fails with certain PORTAGE_NICENESS/PORTAGE_SCHEDULING_POLICY - tst-sched1 - tst-sched_setattr - - # Fails regularly, unreliable - tst-valgrind-smoke - - # https://sourceware.org/bugzilla/show_bug.cgi?id=31877 (bug #927973) - tst-shstk-legacy-1g -) - -XFAIL_NSPAWN_TEST_LIST=( - # These tests need to be adapted to handle EPERM/ENOSYS(?) properly - # upstream, as systemd-nspawn's default seccomp whitelist is too strict. - # https://sourceware.org/PR30603 - test-errno-linux - tst-aarch64-pkey - tst-bz21269 - tst-mlock2 - tst-ntp_gettime - tst-ntp_gettime-time64 - tst-ntp_gettimex - tst-ntp_gettimex-time64 - tst-pkey - tst-process_mrelease - tst-adjtime - tst-adjtime-time64 - tst-clock2 - tst-clock2-time64 - - # These fail if --suppress-sync and/or low priority is set - tst-sync_file_range - test-errno -) - -# -# Small helper functions -# - -dump_build_environment() { - einfo ==== glibc build environment ======================================================== - local v - for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX CPP LD \ - {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM AR AS STRIP RANLIB OBJCOPY \ - STRINGS OBJDUMP READELF; do - einfo " $(printf '%15s' ${v}:) ${!v}" - done - einfo ===================================================================================== -} - -is_crosscompile() { - [[ ${CHOST} != ${CTARGET} ]] -} - -just_headers() { - is_crosscompile && use headers-only -} - -alt_prefix() { - is_crosscompile && echo /usr/${CTARGET} -} - -# This prefix is applicable to CHOST when building against this -# glibc. It is baked into the library at configure time. -host_eprefix() { - is_crosscompile || echo "${EPREFIX}" -} - -# This prefix is applicable to CBUILD when building against this -# glibc. It determines the destination path at install time. -build_eprefix() { - is_crosscompile && echo "${EPREFIX}" -} - -alt_headers() { - echo $(alt_prefix)/usr/include -} -alt_libdir() { - echo $(alt_prefix)/$(get_libdir) -} -alt_usrlibdir() { - echo $(alt_prefix)/usr/$(get_libdir) -} - -builddir() { - echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1" -} - -do_compile_test() { - local ret save_cflags=${CFLAGS} - CFLAGS+=" $1" - shift - - pushd "${T}" >/dev/null - - rm -f glibc-test* - printf '%b' "$*" > glibc-test.c - - # We assume CC is already set up. - nonfatal emake glibc-test - ret=$? - - popd >/dev/null - - CFLAGS=${save_cflags} - return ${ret} -} - -do_run_test() { - local ret - - if [[ ${MERGE_TYPE} == "binary" ]] ; then - # ignore build failures when installing a binary package #324685 - do_compile_test "" "$@" 2>/dev/null || return 0 - else - ebegin "Performing simple compile test for ABI=${ABI}" - if ! do_compile_test "" "$@" ; then - ewarn "Simple build failed ... assuming this is desired #324685" - eend 1 - return 0 - else - eend 0 - fi - fi - - pushd "${T}" >/dev/null - - ./glibc-test - ret=$? - rm -f glibc-test* - - popd >/dev/null - - return ${ret} -} - -setup_target_flags() { - # This largely mucks with compiler flags. None of which should matter - # when building up just the headers. - just_headers && return 0 - - case $(tc-arch) in - x86) - # -march needed for #185404 #199334 - # TODO: When creating the first glibc cross-compile, this test will - # always fail as it does a full link which in turn requires glibc. - # Probably also applies when changing multilib profile settings (e.g. - # enabling x86 when the profile was amd64-only previously). - # We could change main to _start and pass -nostdlib here so that we - # only test the gcc code compilation. Or we could do a compile and - # then look for the symbol via scanelf. - if ! do_compile_test "" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then - local t=${CTARGET_OPT:-${CTARGET}} - t=${t%%-*} - filter-flags '-march=*' - export CFLAGS="-march=${t} ${CFLAGS}" - einfo "Auto adding -march=${t} to CFLAGS #185404" - fi - # For compatibility with older binaries at slight performance cost. - use stack-realign && export CFLAGS+=" -mstackrealign" - ;; - amd64) - # -march needed for #185404 #199334 - # TODO: See cross-compile issues listed above for x86. - if [[ ${ABI} == x86 ]]; then - if ! do_compile_test "${CFLAGS_x86}" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then - local t=${CTARGET_OPT:-${CTARGET}} - t=${t%%-*} - # Normally the target is x86_64-xxx, so turn that into the -march that - # gcc actually accepts. #528708 - [[ ${t} == "x86_64" ]] && t="x86-64" - filter-flags '-march=*' - # ugly, ugly, ugly. ugly. - CFLAGS_x86=$(CFLAGS=${CFLAGS_x86}; filter-flags '-march=*'; echo "${CFLAGS}") - export CFLAGS_x86="${CFLAGS_x86} -march=${t}" - einfo "Auto adding -march=${t} to CFLAGS_x86 #185404 (ABI=${ABI})" - fi - # For compatibility with older binaries at slight performance cost. - use stack-realign && export CFLAGS_x86+=" -mstackrealign" - fi - ;; - mips) - # The mips abi cannot support the GNU style hashes. #233233 - filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both - ;; - ppc|ppc64) - # Many arch-specific implementations do not work on ppc with - # cache-block not equal to 128 bytes. This breaks memset: - # https://sourceware.org/PR26522 - # https://bugs.gentoo.org/737996 - # Use default -mcpu=. For ppc it means non-multiarch setup. - filter-flags '-mcpu=*' - ;; - sparc) - # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though. - filter-flags "-fcall-used-g7" - append-flags "-fcall-used-g6" - - local cpu - case ${CTARGET} in - sparc64-*) - cpu="sparc64" - case $(get-flag mcpu) in - v9) - # We need to force at least v9a because the base build doesn't - # work with just v9. - # https://sourceware.org/bugzilla/show_bug.cgi?id=19477 - append-flags "-Wa,-xarch=v9a" - ;; - esac - ;; - sparc-*) - case $(get-flag mcpu) in - v8|supersparc|hypersparc|leon|leon3) - cpu="sparcv8" - ;; - *) - cpu="sparcv9" - ;; - esac - ;; - esac - [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}" - ;; - esac -} - -setup_flags() { - # Make sure host make.conf doesn't pollute us - if is_crosscompile || tc-is-cross-compiler ; then - CHOST=${CTARGET} strip-unsupported-flags - fi - - # Store our CFLAGS because it's changed depending on which CTARGET - # we are building when pulling glibc on a multilib profile - CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}} - CFLAGS=${CFLAGS_BASE} - CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}} - CXXFLAGS=${CXXFLAGS_BASE} - ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}} - ASFLAGS=${ASFLAGS_BASE} - - # Allow users to explicitly avoid flag sanitization via - # USE=custom-cflags. - if ! use custom-cflags; then - # Over-zealous CFLAGS can often cause problems. What may work for one - # person may not work for another. To avoid a large influx of bugs - # relating to failed builds, we strip most CFLAGS out to ensure as few - # problems as possible. - strip-flags - - # Allow -O2 and -O3, but nothing else for now. - # TODO: Test -Os, -Oz. - if ! is-flagq '-O@(2|3)' ; then - # Lock glibc at -O2. We want to be conservative here. - filter-flags '-O?' - append-flags -O2 - fi - fi - - strip-unsupported-flags - filter-lto - filter-flags -m32 -m64 '-mabi=*' - - # glibc aborts if rpath is set by LDFLAGS - filter-ldflags '-Wl,-rpath=*' - - # ld can't use -r & --relax at the same time, bug #788901 - # https://sourceware.org/PR27837 - filter-ldflags '-Wl,--relax' - - # Flag added for cross-prefix, but causes ldconfig to segfault. Not needed - # anyway because glibc already handles this by itself. - filter-ldflags '-Wl,--dynamic-linker=*' - - # Fails to link (bug #940709) in some cases but even if it manages to, - # subtle runtime breakage will occur because the linker scripts need - # adaptation. Mentioned in PR21557#c0. - filter-ldflags '-Wl,--gc-sections' - - # some weird software relies on sysv hashes in glibc, bug 863863, bug 864100 - # we have to do that here already so mips can filter it out again :P - if use hash-sysv-compat ; then - append-ldflags '-Wl,--hash-style=both' - fi - - # #492892 - filter-flags -frecord-gcc-switches - - # #898098 - filter-flags -fno-builtin - - # #798774 - filter-flags -fno-semantic-interposition - - # #829583 - filter-lfs-flags - - unset CBUILD_OPT CTARGET_OPT - if use multilib ; then - CTARGET_OPT=$(get_abi_CTARGET) - [[ -z ${CTARGET_OPT} ]] && CTARGET_OPT=$(get_abi_CHOST) - fi - - setup_target_flags - - if [[ -n ${CTARGET_OPT} && ${CBUILD} == ${CHOST} ]] && ! is_crosscompile; then - CBUILD_OPT=${CTARGET_OPT} - fi - - # glibc's headers disallow -O0 and fail at build time: - # include/libc-symbols.h:75:3: #error "glibc cannot be compiled without optimization" - # https://sourceware.org/glibc/wiki/FAQ#Why_do_I_get:.60.23error_.22glibc_cannot_be_compiled_without_optimization.22.27.2C_when_trying_to_compile_GNU_libc_with_GNU_CC.3F - replace-flags -O0 -O1 - - # Similar issues as with SSP. Can't inject yourself that early. - filter-flags '-fsanitize=*' - - # See end of bug #830454; we handle this via USE=cet - filter-flags '-fcf-protection=*' - - # When bootstrapping, we may have a situation where - # CET-enabled gcc from seed is used to build CET-disabled - # glibc. As such, gcc implicitly enables CET if no - # -fcf-protection flag is passed. For a typical package it - # should not be a problem, but for glibc it matters as it is - # dealing with CET in ld.so. So if CET is supposed to be - # disabled for glibc, be explicit about it. - if ! use cet; then - case ${ABI}-${CTARGET} in - amd64-x86_64-*|x32-x86_64-*-*-gnux32) - append-flags '-fcf-protection=none' - ;; - arm64-aarch64*) - append-flags '-mbranch-protection=none' - ;; - esac - fi -} - -use_multiarch() { - # Allow user to disable runtime arch detection in multilib. - use multiarch || return 1 - # Make sure binutils is new enough to support indirect functions, - # #336792. This funky sed supports gold and bfd linkers. - local bver nver - bver=$($(tc-getLD ${CTARGET}) -v | sed -n -r '1{s:[^0-9]*::;s:^([0-9.]*).*:\1:;p}') - case $(tc-arch ${CTARGET}) in - amd64|x86) nver="2.20" ;; - arm) nver="2.22" ;; - hppa) nver="2.23" ;; - ppc|ppc64) nver="2.20" ;; - # ifunc support was added in 2.23, but glibc also needs - # machinemode which is in 2.24. - s390) nver="2.24" ;; - sparc) nver="2.21" ;; - *) return 1 ;; - esac - ver_test ${bver} -ge ${nver} -} - -# Setup toolchain variables that had historically been defined in the -# profiles for these archs. -setup_env() { - # silly users - unset LD_RUN_PATH - unset LD_ASSUME_KERNEL - - if is_crosscompile || tc-is-cross-compiler ; then - multilib_env ${CTARGET_OPT:-${CTARGET}} - - if ! use multilib ; then - MULTILIB_ABIS=${DEFAULT_ABI} - else - MULTILIB_ABIS=${MULTILIB_ABIS:-${DEFAULT_ABI}} - fi - - # If the user has CFLAGS_<CTARGET> in their make.conf, use that, - # and fall back on CFLAGS. - local VAR=CFLAGS_${CTARGET//[-.]/_} - CFLAGS=${!VAR-${CFLAGS}} - einfo " $(printf '%15s' 'Manual CFLAGS:') ${CFLAGS}" - fi - - setup_flags - - export ABI=${ABI:-${DEFAULT_ABI:-default}} - - if just_headers ; then - # Avoid mixing host's CC and target's CFLAGS_${ABI}: - # At this bootstrap stage we have only binutils for - # target but not compiler yet. - einfo "Skip CC ABI injection. We can't use (cross-)compiler yet." - return 0 - fi - - # glibc does not work with non-bfd (for various reasons): - # * gold (bug #269274) - # * mold (bug #860900) - tc-ld-force-bfd - - if use doc ; then - export MAKEINFO=makeinfo - else - export MAKEINFO=/dev/null - fi - - # Reset CC and CXX to the value at start of emerge - export CC=${glibc__ORIG_CC:-${CC:-$(tc-getCC ${CTARGET})}} - export CXX=${glibc__ORIG_CXX:-${CXX:-$(tc-getCXX ${CTARGET})}} - export CPP=${glibc__ORIG_CPP:-${CPP:-$(tc-getCPP ${CTARGET})}} - - # and make sure glibc__ORIG_CC and glibc__ORIG_CXX is defined now. - export glibc__ORIG_CC=${CC} - export glibc__ORIG_CXX=${CXX} - export glibc__ORIG_CPP=${CPP} - - if tc-is-clang && ! use custom-cflags && ! is_crosscompile ; then - export glibc__force_gcc=yes - # once this is toggled on, it needs to stay on, since with CPP manipulated - # tc-is-clang does not work correctly anymore... - fi - - if [[ ${glibc__force_gcc} == "yes" ]] ; then - # If we are running in an otherwise clang/llvm environment, we need to - # recover the proper gcc and binutils settings here, at least until glibc - # is finally building with clang. So let's override everything that is - # set in the clang profiles. - # Want to shoot yourself into the foot? Set USE=custom-cflags, that's always - # a good start into that direction. - # Also, if you're crosscompiling, let's assume you know what you are doing. - # Hopefully. - # Last, we need the settings of the *build* environment, not of the - # target environment... - - local current_binutils_path=$(env CHOST="${CBUILD}" ROOT="${BROOT}" binutils-config -B "${CTARGET}") - local current_gcc_path=$(env ROOT="${BROOT}" gcc-config -B) - einfo "Overriding clang configuration, since it won't work here" - - export CC="${current_gcc_path}/${CTARGET}-gcc" - export CPP="${current_gcc_path}/${CTARGET}-cpp" - export CXX="${current_gcc_path}/${CTARGET}-g++" - export LD="${current_binutils_path}/ld.bfd" - export AR="${current_binutils_path}/ar" - export AS="${current_binutils_path}/as" - export NM="${current_binutils_path}/nm" - export STRIP="${current_binutils_path}/strip" - export RANLIB="${current_binutils_path}/ranlib" - export OBJCOPY="${current_binutils_path}/objcopy" - export STRINGS="${current_binutils_path}/strings" - export OBJDUMP="${current_binutils_path}/objdump" - export READELF="${current_binutils_path}/readelf" - export ADDR2LINE="${current_binutils_path}/addr2line" - - # do we need to also do flags munging here? yes! at least... - filter-flags '-fuse-ld=*' - filter-flags '-D_FORTIFY_SOURCE=*' - - else - - # this is the "normal" case - - export CC="$(tc-getCC ${CTARGET})" - export CXX="$(tc-getCXX ${CTARGET})" - export CPP="$(tc-getCPP ${CTARGET})" - - # Always use tuple-prefixed toolchain. For non-native ABI glibc's configure - # can't detect them automatically due to ${CHOST} mismatch and fallbacks - # to unprefixed tools. Similar to multilib.eclass:multilib_toolchain_setup(). - export NM="$(tc-getNM ${CTARGET})" - export READELF="$(tc-getREADELF ${CTARGET})" - - fi - - # We need to export CFLAGS with abi information in them because glibc's - # configure script checks CFLAGS for some targets (like mips). Keep - # around the original clean value to avoid appending multiple ABIs on - # top of each other. (Why does the comment talk about CFLAGS if the code - # acts on CC?) - export glibc__GLIBC_CC=${CC} - export glibc__GLIBC_CXX=${CXX} - export glibc__GLIBC_CPP=${CPP} - - export glibc__abi_CFLAGS="$(get_abi_CFLAGS)" - - # CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760 - # To build .S (assembly) files with the same ABI-specific flags - # upstream currently recommends adding CFLAGS to CC/CXX: - # https://sourceware.org/PR23273 - # Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS - # and breaks multiarch support. See 659030#c3 for an example. - # The glibc configure script doesn't properly use LDFLAGS all the time. - export CC="${glibc__GLIBC_CC} ${glibc__abi_CFLAGS} ${CFLAGS} ${LDFLAGS}" - - # Some of the tests are written in C++, so we need to force our multlib abis in, bug 623548 - export CXX="${glibc__GLIBC_CXX} ${glibc__abi_CFLAGS} ${CFLAGS}" - - export CPP="${glibc__GLIBC_CPP} ${glibc__abi_CFLAGS} ${CFLAGS}" - - if is_crosscompile; then - # Assume worst-case bootstrap: glibc is built for the first time - # with ${CTARGET}-g++ not available yet. We avoid - # building auxiliary programs that require C++: bug #683074 - # It should not affect final result. - export libc_cv_cxx_link_ok=no - # The line above has the same effect. We set CXX explicitly - # to make build logs less confusing. - export CXX= - fi -} - -foreach_abi() { - setup_env - - local ret=0 - local abilist="" - if use multilib ; then - abilist=$(get_install_abis) - else - abilist=${DEFAULT_ABI} - fi - local -x ABI - for ABI in ${abilist:-default} ; do - setup_env - einfo "Running $1 for ABI ${ABI}" - $1 - : $(( ret |= $? )) - done - return ${ret} -} - -glibc_banner() { - local b="Gentoo ${PVR}" - [[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" (patchset ${PATCH_VER})" - echo "${b}" -} - -# The following Kernel version handling functions are mostly copied from portage -# source. It's better not to use linux-info.eclass here since a) it adds too -# much magic, see bug 326693 for some of the arguments, and b) some of the -# functions are just not provided. - -g_get_running_KV() { - uname -r - return $? -} - -g_KV_major() { - [[ -z $1 ]] && return 1 - local KV=$@ - echo "${KV%%.*}" -} - -g_KV_minor() { - [[ -z $1 ]] && return 1 - local KV=$@ - KV=${KV#*.} - echo "${KV%%.*}" -} - -g_KV_micro() { - [[ -z $1 ]] && return 1 - local KV=$@ - KV=${KV#*.*.} - echo "${KV%%[^[:digit:]]*}" -} - -g_KV_to_int() { - [[ -z $1 ]] && return 1 - local KV_MAJOR=$(g_KV_major "$1") - local KV_MINOR=$(g_KV_minor "$1") - local KV_MICRO=$(g_KV_micro "$1") - local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO )) - - # We make version 2.2.0 the minimum version we will handle as - # a sanity check ... if its less, we fail ... - if [[ ${KV_int} -ge 131584 ]] ; then - echo "${KV_int}" - return 0 - fi - return 1 -} - -g_int_to_KV() { - local version=$1 major minor micro - major=$((version / 65536)) - minor=$(((version % 65536) / 256)) - micro=$((version % 256)) - echo ${major}.${minor}.${micro} -} - -eend_KV() { - [[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]] - eend $? -} - -get_kheader_version() { - printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \ - $(tc-getCPP ${CTARGET}) -I "${ESYSROOT}$(alt_headers)" - | \ - tail -n 1 -} - -# We collect all sanity checks here. Consistency is not guranteed between -# pkg_ and src_ phases, so we call this function both in pkg_pretend and in -# src_unpack. -sanity_prechecks() { - # Prevent native builds from downgrading - if [[ ${MERGE_TYPE} != "buildonly" ]] && \ - [[ -z ${ROOT} ]] && \ - [[ ${CBUILD} == ${CHOST} ]] && \ - [[ ${CHOST} == ${CTARGET} ]] ; then - - # The high rev # is to allow people to downgrade between -r# - # versions. We want to block 2.20->2.19, but 2.20-r3->2.20-r2 - # should be fine. Hopefully we never actually use a r# this - # high. - if has_version ">${CATEGORY}/${P}-r10000" ; then - eerror "Sanity check to keep you from breaking your system:" - eerror " Downgrading glibc is not supported and a sure way to destruction." - [[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Aborting to save your system." - fi - - if ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then - eerror "Your old kernel is broken. You need to update it to a newer" - eerror "version as syscall(<bignum>) will break. See bug 279260." - die "Old and broken kernel." - fi - fi - - if [[ ${CTARGET} == i386-* ]] ; then - eerror "i386 CHOSTs are no longer supported." - eerror "Chances are you don't actually want/need i386." - eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml" - die "Please fix your CHOST" - fi - - if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then - ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS." - ewarn "This will result in a 50% performance penalty when running with a 32bit" - ewarn "hypervisor, which is probably not what you want." - fi - - # ABI-specific checks follow here. Hey, we have a lot more specific conditions that - # we test for... - if ! is_crosscompile && ! tc-is-cross-compiler ; then - if use amd64 && use multilib && [[ ${MERGE_TYPE} != "binary" ]] ; then - ebegin "Checking if the system can execute 32-bit binaries" - echo 'int main(){return 0;}' > "${T}/check-ia32-emulation.c" - local STAT - if ${CC-${CHOST}-gcc} ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32"; then - "${T}/check-ia32-emulation.elf32" - STAT=$? - else - # Don't fail here to allow single->multi ABI switch - # or recover from breakage like bug #646424 - ewarn "Failed to compile the ABI test. Broken host glibc?" - STAT=0 - fi - rm -f "${T}/check-ia32-emulation.elf32" - eend $STAT - if [[ $STAT -ne 0 ]]; then - eerror "Ensure that CONFIG_IA32_EMULATION is enabled in the kernel." - eerror "Seek support otherwise." - die "Unable to execute 32-bit binaries" - fi - fi - - fi - - # When we actually have to compile something... - if ! just_headers && [[ ${MERGE_TYPE} != "binary" ]] ; then - if [[ -d "${ESYSROOT}"/usr/lib/include ]] ; then - # bug #833620, bug #643302 - eerror "Found ${ESYSROOT}/usr/lib/include directory!" - eerror "This is known to break glibc's build." - eerror "Please backup its contents then remove the directory." - die "Found directory (${ESYSROOT}/usr/lib/include) which will break build (bug #833620)!" - fi - - if [[ ${CTARGET} == *-linux* ]] ; then - local run_kv build_kv want_kv - - run_kv=$(g_get_running_KV) - build_kv=$(g_int_to_KV $(get_kheader_version)) - want_kv=${MIN_KERN_VER} - - if ! is_crosscompile && ! tc-is-cross-compiler ; then - # Building fails on an non-supporting kernel - ebegin "Checking running kernel version (${run_kv} >= ${want_kv})" - if ! eend_KV ${run_kv} ${want_kv} ; then - echo - eerror "You need a kernel of at least ${want_kv}!" - die "Kernel version too low!" - fi - fi - - # Do not run this check for pkg_pretend, just pkg_setup and friends (if we ever get used there). - # It's plausible (seen it in the wild) that Portage will (correctly) schedule a linux-headers - # upgrade before glibc, but because pkg_pretend gets run before any packages are merged at all (not - # just glibc), the whole emerge gets aborted without a good reason. We probably don't - # need to run this check at all given we have a dependency on the right headers, - # but let's leave it as-is for now. - if [[ ${EBUILD_PHASE_FUNC} != pkg_pretend ]] ; then - ebegin "Checking linux-headers version (${build_kv} >= ${want_kv})" - if ! eend_KV ${build_kv} ${want_kv} ; then - echo - eerror "You need linux-headers of at least ${want_kv}!" - die "linux-headers version too low!" - fi - fi - fi - fi -} - -upgrade_warning() { - is_crosscompile && return - - if [[ ${MERGE_TYPE} != buildonly && -n ${REPLACING_VERSIONS} && -z ${ROOT} ]]; then - if ver_replacing -lt $(ver_cut 1-2 ${PV}); then - ewarn "After upgrading glibc, please restart all running processes." - ewarn "Be sure to include init (telinit u) or systemd (systemctl daemon-reexec)." - ewarn "Alternatively, reboot your system." - ewarn "(See bug #660556, bug #741116, bug #823756, etc)" - fi - fi -} - -# -# the phases -# - -# pkg_pretend - -pkg_pretend() { - upgrade_warning -} - -# pkg_setup - -pkg_setup() { - # see bug 682570 - [[ -z ${BOOTSTRAP_RAP} ]] && python-any-r1_pkg_setup -} - -# src_unpack - -src_unpack() { - setup_env - - einfo "Checking general environment sanity." - sanity_prechecks - - use multilib-bootstrap && unpack gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz - - if [[ ${PV} == 9999* ]] ; then - EGIT_REPO_URI=" - https://anongit.gentoo.org/git/proj/toolchain/glibc-patches.git - https://github.com/gentoo/glibc-patches.git - " - EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git - git-r3_src_unpack - mv patches-git/9999 patches || die - EGIT_REPO_URI=" - https://sourceware.org/git/glibc.git - https://git.sr.ht/~sourceware/glibc - https://gitlab.com/x86-glibc/glibc.git - " - EGIT_CHECKOUT_DIR=${S} - git-r3_src_unpack - else - unpack ${P}.tar.xz - - cd "${WORKDIR}" || die - unpack glibc-${PV}-patches-${PATCH_VER}.tar.xz - fi - - cd "${WORKDIR}" || die - use systemd && unpack glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz -} - -# src_prepare - -src_prepare() { - local patchsetname - if ! use vanilla ; then - if [[ ${PV} == 9999* ]] ; then - patchsetname="from git master" - else - patchsetname="${PV}-${PATCH_VER}" - fi - einfo "Applying Gentoo Glibc patchset ${patchsetname}" - eapply "${WORKDIR}"/patches - einfo "Done." - fi - - case ${CTARGET} in - m68*-aligned-*) - einfo "Applying utmp format fix for m68k with -maligned-int" - eapply "${FILESDIR}/glibc-2.41-m68k-malign.patch" - ;; - *) - ;; - esac - - default - - gnuconfig_update - - cd "${WORKDIR}" || die - find . -name configure -exec touch {} + - - # Fix permissions on some of the scripts. - chmod u+x "${S}"/scripts/*.sh - - cd "${S}" || die -} - -# src_configure - -glibc_do_configure() { - dump_build_environment - - local myconf=() - - # Use '=strong' instead of '=all' to protect only functions - # worth protecting from stack smashes. - myconf+=( --enable-stack-protector=$(usex ssp strong no) ) - - # Keep a whitelist of targets supporting IFUNC. glibc's ./configure - # is not robust enough to detect proper support: - # https://bugs.gentoo.org/641216 - # https://sourceware.org/PR22634#c0 - case $(tc-arch ${CTARGET}) in - # Keep whitelist of targets where autodetection mostly works. - amd64|x86|sparc|ppc|ppc64|arm|arm64|s390|riscv|loong) ;; - # Blacklist everywhere else - *) myconf+=( libc_cv_ld_gnu_indirect_function=no ) ;; - esac - - case ${ABI}-${CTARGET} in - amd64-x86_64-*|x32-x86_64-*-*-gnux32) myconf+=( $(use_enable cet) ) ;; - *) ;; - esac - - [[ $(tc-is-softfloat) == "yes" ]] && myconf+=( --without-fp ) - - myconf+=( --enable-kernel=${MIN_KERN_VER} ) - - # Since SELinux support is only required for nscd, only enable it if: - # 1. USE selinux - # 2. only for the primary ABI on multilib systems - # 3. Not a crosscompile - if ! is_crosscompile && use selinux ; then - if use multilib ; then - if is_final_abi ; then - myconf+=( --with-selinux ) - else - myconf+=( --without-selinux ) - fi - else - myconf+=( --with-selinux ) - fi - else - myconf+=( --without-selinux ) - fi - - # Force a few tests where we always know the answer but - # configure is incapable of finding it. - if is_crosscompile ; then - export \ - libc_cv_c_cleanup=yes \ - libc_cv_forced_unwind=yes - fi - - myconf+=( - --disable-werror - --enable-bind-now - --enable-fortify-source - --build=${CBUILD_OPT:-${CBUILD}} - --host=${CTARGET_OPT:-${CTARGET}} - $(use_enable profile) - $(use_with gd) - --with-headers="${ESYSROOT}$(alt_headers)" - --prefix="$(host_eprefix)/usr" - --sysconfdir="$(host_eprefix)/etc" - --localstatedir="$(host_eprefix)/var" - --libdir='$(prefix)'/$(get_libdir) - --mandir='$(prefix)'/share/man - --infodir='$(prefix)'/share/info - --libexecdir='$(libdir)'/misc/glibc - --with-bugurl=https://bugs.gentoo.org/ - --with-pkgversion="$(glibc_banner)" - $(use_multiarch || echo --disable-multi-arch) - $(use_enable systemtap) - $(use_enable nscd) - - # /usr/bin/mtrace has a Perl shebang. Gentoo Prefix QA checks fail if - # Perl hasn't been installed inside the prefix yet and configure picks - # up a Perl from outside the prefix instead. configure will fail to - # execute Perl during configure if we're cross-compiling a prefix, but - # it will just disable mtrace in that case. - # Note: mtrace is needed by the test suite. - ac_cv_path_PERL="$(usex perl "${EPREFIX}"/usr/bin/perl $(usex test "${EPREFIX}"/usr/bin/perl $(usex doc "${EPREFIX}"/usr/bin/perl no)))" - - # locale data is arch-independent - # https://bugs.gentoo.org/753740 - libc_cv_complocaledir='${exec_prefix}/lib/locale' - - # On aarch64 there is no way to override -mcpu=native, and if - # the current cpu does not support SVE configure fails. - # Let's boldly assume our toolchain can always build SVE instructions. - libc_cv_aarch64_sve_asm=yes - - ${EXTRA_ECONF} - ) - - # We rely on sys-libs/timezone-data for timezone tools normally. - myconf+=( $(use_enable vanilla timezone-tools) ) - - # These libs don't have configure flags. - ac_cv_lib_audit_audit_log_user_avc_message=$(usex audit || echo no) - ac_cv_lib_cap_cap_init=$(usex caps || echo no) - - # There is no configure option for this and we need to export it - # since the glibc build will re-run configure on itself - export libc_cv_rootsbindir="$(host_eprefix)/sbin" - export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)" - - local builddir=$(builddir nptl) - mkdir -p "${builddir}" - cd "${builddir}" - set -- "${S}"/configure "${myconf[@]}" - echo "$@" - "$@" || die "failed to configure glibc" - - # If we're trying to migrate between ABI sets, we need - # to lie and use a local copy of gcc. Like if the system - # is built with MULTILIB_ABIS="amd64 x86" but we want to - # add x32 to it, gcc/glibc don't yet support x32. - # - if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib-bootstrap ; then - echo 'int main(void){}' > "${T}"/test.c || die - if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then - sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die - fi - fi -} - -glibc_headers_configure() { - export ABI=default - - local builddir=$(builddir "headers") - mkdir -p "${builddir}" - cd "${builddir}" - - # if we don't have a compiler yet, we can't really test it now ... - # hopefully they don't affect header generation, so let's hope for - # the best here ... - local v vars=( - ac_cv_header_cpuid_h=yes - libc_cv_{386,390,alpha,arm,hppa,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes - libc_cv_asm_cfi_directives=yes - libc_cv_broken_visibility_attribute=no - libc_cv_c_cleanup=yes - libc_cv_compiler_powerpc64le_binary128_ok=yes - libc_cv_forced_unwind=yes - libc_cv_gcc___thread=yes - libc_cv_mlong_double_128=yes - libc_cv_mlong_double_128ibm=yes - libc_cv_ppc_machine=yes - libc_cv_ppc_rel16=yes - libc_cv_predef_fortify_source=no - libc_cv_target_power8_ok=yes - libc_cv_visibility_attribute=yes - libc_cv_z_combreloc=yes - libc_cv_z_execstack=yes - libc_cv_z_initfirst=yes - libc_cv_z_nodelete=yes - libc_cv_z_nodlopen=yes - libc_cv_z_relro=yes - libc_mips_abi=${ABI} - libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard) - # These libs don't have configure flags. - ac_cv_lib_audit_audit_log_user_avc_message=no - ac_cv_lib_cap_cap_init=no - ) - - einfo "Forcing cached settings:" - for v in "${vars[@]}" ; do - einfo " ${v}" - export ${v} - done - - local headers_only_arch_CPPFLAGS=() - - # Blow away some random CC settings that screw things up. #550192 - if [[ -d ${S}/sysdeps/mips ]]; then - pushd "${S}"/sysdeps/mips >/dev/null - sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die - sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die - - # Force the mips ABI to the default. This is OK because the set of - # installed headers in this phase is the same between the 3 ABIs. - # If this ever changes, this hack will break, but that's unlikely - # as glibc discourages that behavior. - # https://crbug.com/647033 - sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die - - popd >/dev/null - fi - - local myconf=() - - case ${CTARGET} in - aarch64*) - # The configure checks fail during cross-build, so disable here - # for headers-only - myconf+=( - --disable-mathvec - ) ;; - riscv*) - # RISC-V interrogates the compiler to determine which target to - # build. If building the headers then we don't strictly need a - # RISC-V compiler, so the built-in definitions that are provided - # along with all RISC-V compiler might not exist. This causes - # glibc's RISC-V preconfigure script to blow up. Since we're just - # building the headers any value will actually work here, so just - # pick the standard one (rv64g/lp64d) to make the build scripts - # happy for now -- the headers are all the same anyway so it - # doesn't matter. - headers_only_arch_CPPFLAGS+=( - -D__riscv_xlen=64 - -D__riscv_flen=64 - -D__riscv_float_abi_double=1 - -D__riscv_atomic=1 - ) ;; - esac - - myconf+=( - --disable-sanity-checks - --enable-hacker-mode - --disable-werror - --enable-bind-now - --build=${CBUILD_OPT:-${CBUILD}} - --host=${CTARGET_OPT:-${CTARGET}} - --with-headers="${ESYSROOT}$(alt_headers)" - --prefix="$(host_eprefix)/usr" - ${EXTRA_ECONF} - ) - - # Nothing is compiled here which would affect the headers for the target. - # So forcing CC/CFLAGS is sane. - local headers_only_CC=$(tc-getBUILD_CC) - local headers_only_CFLAGS="-O1 -pipe" - local headers_only_CPPFLAGS="-U_FORTIFY_SOURCE ${headers_only_arch_CPPFLAGS[*]}" - local headers_only_LDFLAGS="" - set -- "${S}"/configure "${myconf[@]}" - echo \ - "CC=${headers_only_CC}" \ - "CFLAGS=${headers_only_CFLAGS}" \ - "CPPFLAGS=${headers_only_CPPFLAGS}" \ - "LDFLAGS=${headers_only_LDFLAGS}" \ - "$@" - CC=${headers_only_CC} \ - CFLAGS=${headers_only_CFLAGS} \ - CPPFLAGS=${headers_only_CPPFLAGS} \ - LDFLAGS="" \ - "$@" || die "failed to configure glibc" -} - -do_src_configure() { - if just_headers ; then - glibc_headers_configure - else - glibc_do_configure nptl - fi -} - -src_configure() { - foreach_abi do_src_configure -} - -# src_compile - -do_src_compile() { - emake -C "$(builddir nptl)" -} - -src_compile() { - if just_headers ; then - return - fi - - foreach_abi do_src_compile -} - -# src_test - -glibc_src_test() { - cd "$(builddir nptl)" - - local myxfailparams="" - if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then - local virt=$(systemd-detect-virt 2>/dev/null) - if [[ ${virt} == systemd-nspawn ]] ; then - ewarn "Skipping extra tests because in systemd-nspawn container" - XFAIL_TEST_LIST+=( "${XFAIL_NSPAWN_TEST_LIST[@]}" ) - fi - if [[ "$(nice)" == "19" ]] ; then - # Expects to be able to increase niceness, which it can't do if - # already at the highest nice value - XFAIL_TEST_LIST+=( "tst-nice" ) - fi - - for myt in ${XFAIL_TEST_LIST[@]} ; do - myxfailparams+="test-xfail-${myt}=yes " - done - fi - - # sandbox does not understand unshare() and prevents - # writes to /proc/, which makes many tests fail - - # we give the tests a bit more time to avoid spurious - # bug reports on slow arches - - SANDBOX_ON=0 LD_PRELOAD= TIMEOUTFACTOR=16 emake ${myxfailparams} check -} - -src_test() { - if just_headers ; then - return - fi - - foreach_abi glibc_src_test || die "tests failed" -} - -# src_install - -run_locale_gen() { - local fatal=$1 prefix=$2 - local user_config action config stderr noun ret - local -a hasversion_opts localegen_args - - if [[ ${EBUILD_PHASE_FUNC} == src_install ]]; then - hasversion_opts=( -b ) - fi - - if has_version "${hasversion_opts[@]}" '>=sys-apps/locale-gen-3'; then - localegen_args=( --prefix "${prefix}" ) - else - config="${prefix}/usr/share/i18n/SUPPORTED" - user_config="${prefix}/etc/locale.gen" - if [[ ${EBUILD_PHASE_FUNC} == src_install ]]; then - # For USE=compile-locales, all locales should be built. - mkdir -p -- "${prefix}/usr/lib/locale" || die - elif locale-gen --list --config "${user_config}" | read -r; then - config=${user_config} - fi - localegen_args=( --config "${config}" --destdir "${prefix}" ) - fi - - # bug 736794: we need to be careful with the parallelization... the - # number of processors saved in the environment of a binary package may - # differ strongly from the number of processes available during postinst - if [[ ${EMERGE_FROM} != binary ]]; then - localegen_args+=( --jobs "$(makeopts_jobs)" ) - fi - - printf 'Executing: locale-gen %s\n' "${localegen_args[*]@Q}" >&2 - { stderr=$(locale-gen "${localegen_args[@]}" 2>&1 >&3); } 3>&1 - ret=$? - action="ewarn" - if (( ret == 0 )); then - noun="warning" - else - noun="error" - if (( fatal )); then - action="die" - fi - fi - # Convey warnings/errors so that they can be reseen upon emerge exiting. - if [[ ${stderr} ]]; then - ewarn "locale-gen(8) issued the following ${noun}s:" - while read -r; do - ewarn "$REPLY" - done <<<"${stderr}" - fi - if (( ret != 0 )); then - "${action}" "locale-gen(8) unexpectedly failed during the ${EBUILD_PHASE_FUNC} phase" - fi -} - -glibc_do_src_install() { - local builddir=$(builddir nptl) - cd "${builddir}" - - emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install - - # This version (2.26) provides some compatibility libraries for the NIS/NIS+ support - # which come without headers etc. Only needed for binary packages since the - # external net-libs/libnsl has increased soversion. Keep only versioned libraries. - find "${D}" -name "libnsl.a" -delete - find "${D}" -name "libnsl.so" -delete - - # Normally upstream_pv is ${PV}. Live ebuilds are exception, there we need - # to infer upstream version: - # '#define VERSION "2.26.90"' -> '2.26.90' - local upstream_pv=$(sed -n -r 's/#define VERSION "(.*)"/\1/p' "${S}"/version.h) - - # Avoid stripping binaries not targeted by ${CHOST}. Or else - # ${CHOST}-strip would break binaries build for ${CTARGET}. - is_crosscompile && dostrip -x / - - # gdb thread introspection relies on local libpthreads symbols. stripping breaks it - # See Note [Disable automatic stripping] - dostrip -x $(alt_libdir)/libpthread-${upstream_pv}.so - # valgrind requires knowledge about ld.so symbols. - dostrip -x $(alt_libdir)/ld-*.so* - - if [[ -e ${ED}/$(alt_usrlibdir)/libm-${upstream_pv}.a ]] ; then - # Move versioned .a file out of libdir to evade portage QA checks - # instead of using gen_usr_ldscript(). We fix ldscript as: - # "GROUP ( /usr/lib64/libm-<pv>.a ..." -> "GROUP ( /usr/lib64/glibc-<pv>/libm-<pv>.a ..." - sed -i "s@\(libm-${upstream_pv}.a\)@${P}/\1@" \ - "${ED}"/$(alt_usrlibdir)/libm.a || die - dodir $(alt_usrlibdir)/${P} - mv "${ED}"/$(alt_usrlibdir)/libm-${upstream_pv}.a \ - "${ED}"/$(alt_usrlibdir)/${P}/libm-${upstream_pv}.a || die - fi - - # We configure toolchains for standalone prefix systems with a sysroot, - # which is prepended to paths in ld scripts, so strip the prefix from these. - # Before: GROUP ( /foo/lib64/libc.so.6 /foo/usr/lib64/libc_nonshared.a AS_NEEDED ( /foo/lib64/ld-linux-x86-64.so.2 ) ) - # After: GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a AS_NEEDED ( /lib64/ld-linux-x86-64.so.2 ) ) - if [[ -n $(host_eprefix) ]] ; then - local file - grep -lZIF "ld script" "${ED}/$(alt_usrlibdir)"/lib*.{a,so} 2>/dev/null | while read -rd '' file ; do - sed -i "s|$(host_eprefix)/|/|g" "${file}" || die - done - fi - - # We'll take care of the cache ourselves - rm -f "${ED}"/etc/ld.so.cache - - # Everything past this point just needs to be done once ... - is_final_abi || return 0 - - # Make sure the non-native interp can be found on multilib systems even - # if the main library set isn't installed into the right place. Maybe - # we should query the active gcc for info instead of hardcoding it ? - local i ldso_abi ldso_name - local ldso_abi_list=( - # x86 - amd64 /lib64/ld-linux-x86-64.so.2 - x32 /libx32/ld-linux-x32.so.2 - x86 /lib/ld-linux.so.2 - # mips - o32 /lib/ld.so.1 - n32 /lib32/ld.so.1 - n64 /lib64/ld.so.1 - # powerpc - ppc /lib/ld.so.1 - # riscv - ilp32d /lib/ld-linux-riscv32-ilp32d.so.1 - ilp32 /lib/ld-linux-riscv32-ilp32.so.1 - lp64d /lib/ld-linux-riscv64-lp64d.so.1 - lp64 /lib/ld-linux-riscv64-lp64.so.1 - # s390 - s390 /lib/ld.so.1 - s390x /lib/ld64.so.1 - # sparc - sparc32 /lib/ld-linux.so.2 - sparc64 /lib64/ld-linux.so.2 - ) - case $(tc-endian) in - little) - ldso_abi_list+=( - # arm - arm64 /lib/ld-linux-aarch64.so.1 - # ELFv2 (glibc does not support ELFv1 on LE) - ppc64 /lib64/ld64.so.2 - ) - ;; - big) - ldso_abi_list+=( - # arm - arm64 /lib/ld-linux-aarch64_be.so.1 - # ELFv1 (glibc does not support ELFv2 on BE) - ppc64 /lib64/ld64.so.1 - ) - ;; - esac - if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then - dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib - fi - for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do - ldso_abi=${ldso_abi_list[i]} - has ${ldso_abi} $(get_install_abis) || continue - - ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}" - if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then - dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name} - fi - done - - # In the LSB 5.0 definition, someone had the excellent idea to "standardize" - # the runtime loader name, see also https://xkcd.com/927/ - # Normally, in Gentoo one should never come across executables that require this. - # However, binary commercial packages are known to adhere to weird practices. - # https://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-AMD64/LSB-Core-AMD64.html#BASELIB - local lsb_ldso_name native_ldso_name lsb_ldso_abi - local lsb_ldso_abi_list=( - # x86 - amd64 ld-linux-x86-64.so.2 ld-lsb-x86-64.so.3 - ) - for (( i = 0; i < ${#lsb_ldso_abi_list[@]}; i += 3 )) ; do - lsb_ldso_abi=${lsb_ldso_abi_list[i]} - native_ldso_name=${lsb_ldso_abi_list[i+1]} - lsb_ldso_name=${lsb_ldso_abi_list[i+2]} - has ${lsb_ldso_abi} $(get_install_abis) || continue - - if [[ ! -L ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} && ! -e ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} ]] ; then - dosym ${native_ldso_name} "$(alt_prefix)/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name}" - fi - done - - # With devpts under Linux mounted properly, we do not need the pt_chown - # binary to be setuid. This is because the default owners/perms will be - # exactly what we want. - if ! use suid ; then - find "${ED}" -name pt_chown -exec chmod -s {} + - fi - - ################################################################# - # EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY # - ################################################################# - - # Make sure we install some symlink hacks so that when we build - # a 2nd stage cross-compiler, gcc finds the target system - # headers correctly. See gcc/doc/gccinstall.info - if is_crosscompile ; then - # We need to make sure that /lib and /usr/lib always exists. - # gcc likes to use relative paths to get to its multilibs like - # /usr/lib/../lib64/. So while we don't install any files into - # /usr/lib/, we do need it to exist. - keepdir $(alt_prefix)/lib - keepdir $(alt_prefix)/usr/lib - - dosym usr/include $(alt_prefix)/sys-include - return 0 - fi - - # Files for Debian-style locale updating - dodir /usr/share/i18n - sed \ - -e "/^#/d" \ - -e "/SUPPORTED-LOCALES=/d" \ - -e "s: \\\\::g" -e "s:/: :g" \ - "${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \ - || die "generating /usr/share/i18n/SUPPORTED failed" - - cd "${S}" || die - - # Install misc network config files - insinto /etc - doins posix/gai.conf - - if use systemd ; then - doins "${WORKDIR}/glibc-systemd-${GLIBC_SYSTEMD_VER}/gentoo-config/nsswitch.conf" - else - doins nss/nsswitch.conf - fi - - # Gentoo-specific - newins "${FILESDIR}"/host.conf-1 host.conf - - if use nscd ; then - doins nscd/nscd.conf - - newinitd "$(prefixify_ro "${FILESDIR}"/nscd-1)" nscd - - local nscd_args=( - -e "s:@PIDFILE@:$(strings "${ED}"/usr/sbin/nscd | grep nscd.pid):" - ) - - sed -i "${nscd_args[@]}" "${ED}"/etc/init.d/nscd - - use systemd && systemd_dounit nscd/nscd.service - newtmpfiles nscd/nscd.tmpfiles nscd.conf - fi - - echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00glibc - doenvd "${T}"/00glibc - - for d in BUGS ChangeLog CONFORMANCE FAQ NEWS NOTES PROJECTS README* ; do - [[ -s ${d} ]] && dodoc ${d} - done - dodoc -r ChangeLog.old - - # Prevent overwriting of the /etc/localtime symlink. We'll handle the - # creation of the "factory" symlink in pkg_postinst(). - rm -f "${ED}"/etc/localtime - - # Generate all locales if this is a native build as locale generation - if use compile-locales && ! is_crosscompile; then - run_locale_gen 1 "${ED}" - fi -} - -glibc_headers_install() { - local builddir=$(builddir "headers") - cd "${builddir}" - emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install-headers - - insinto $(alt_headers)/gnu - doins "${S}"/include/gnu/stubs.h - - # Make sure we install the sys-include symlink so that when - # we build a 2nd stage cross-compiler, gcc finds the target - # system headers correctly. See gcc/doc/gccinstall.info - dosym usr/include $(alt_prefix)/sys-include -} - -src_install() { - if just_headers ; then - export ABI=default - glibc_headers_install - return - fi - - foreach_abi glibc_do_src_install - - if ! use static-libs ; then - einfo "Not installing static glibc libraries" - find "${ED}" -name "*.a" -and -not -name "*_nonshared.a" -delete - fi -} - -# Simple test to make sure our new glibc isn't completely broken. -# Make sure we don't test with statically built binaries since -# they will fail. Also, skip if this glibc is a cross compiler. -# -# If coreutils is built with USE=multicall, some of these files -# will just be wrapper scripts, not actual ELFs we can test. -glibc_sanity_check() { - cd / #228809 - - # We enter ${ED} so to avoid trouble if the path contains - # special characters; for instance if the path contains the - # colon character (:), then the linker will try to split it - # and look for the libraries in an unexpected place. This can - # lead to unsafe code execution if the generated prefix is - # within a world-writable directory. - # (e.g. /var/tmp/portage:${HOSTNAME}) - pushd "${ED}"/$(get_libdir) >/dev/null - - # first let's find the actual dynamic linker here - # symlinks may point to the wrong abi - local newldso=$(find . -maxdepth 1 -name 'ld*so.?' -type f -print -quit) - - einfo Last-minute run tests with ${newldso} in /$(get_libdir) ... - - local x striptest - for x in cal date env free ls true uname uptime ; do - x=$(type -p ${x}) - [[ -z ${x} || ${x} != ${EPREFIX}/* ]] && continue - striptest=$(LC_ALL="C" file -L ${x} 2>/dev/null) || continue - case ${striptest} in - *"statically linked"*) continue;; - *"ASCII text"*) continue;; - esac - # We need to clear the locale settings as the upgrade might want - # incompatible locale data. This test is not for verifying that. - LC_ALL=C \ - ${newldso} --library-path . ${x} > /dev/null \ - || die "simple run test (${x}) failed" - done - - popd >/dev/null -} - -pkg_preinst() { - # nothing to do if just installing headers - just_headers && return - - einfo "Checking general environment sanity." - sanity_prechecks - - # prepare /etc/ld.so.conf.d/ for files - mkdir -p "${EROOT}"/etc/ld.so.conf.d - - # Default /etc/hosts.conf:multi to on for systems with small dbs. - if [[ $(wc -l < "${EROOT}"/etc/hosts) -lt 1000 ]] ; then - sed -i '/^multi off/s:off:on:' "${ED}"/etc/host.conf - einfo "Defaulting /etc/host.conf:multi to on" - fi - - [[ -n ${ROOT} ]] && return 0 - [[ -d ${ED}/$(get_libdir) ]] || return 0 - [[ -z ${BOOTSTRAP_RAP} ]] && glibc_sanity_check - - if [[ -L ${EROOT}/usr/lib/locale ]]; then - # Help portage migrate this to a directory - # https://bugs.gentoo.org/753740 - rm "${EROOT}"/usr/lib/locale || die - fi - - # Keep around libcrypt so that Perl doesn't break when merging libxcrypt - # (libxcrypt is the new provider for now of libcrypt.so.{1,2}). - # bug #802207 - if has_version "${CATEGORY}/${PN}[crypt]" && ! has preserve-libs ${FEATURES}; then - PRESERVED_OLD_LIBCRYPT=1 - cp -p "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1)" \ - "${T}/libcrypt$(get_libname 1)" || die - else - PRESERVED_OLD_LIBCRYPT=0 - fi -} - -glibc_refresh_ldconfig() { - if [[ ${MERGE_TYPE} == buildonly ]]; then - return - fi - - # Version check could be added to avoid unnecessary work, but ldconfig - # should finish quickly enough to not matter. - ebegin "Refreshing ld.so.cache" - ldconfig -i - if ! eend $?; then - ewarn "Failed to refresh the ld.so.cache for you. Some programs may be broken" - ewarn "before you manually do so (ldconfig -i)." - fi -} - -pkg_postinst() { - # nothing to do if just installing headers - just_headers && return - - if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then - # Generate fastloading iconv module configuration file. - "${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}/" - fi - - if ! is_crosscompile && [[ -z ${ROOT} ]] ; then - # glibc-2.38+ on loong has ldconfig support added, but the ELF e_flags - # handling has changed as well, which means stale ldconfig auxiliary - # cache entries and failure to lookup libgcc_s / libstdc++ (breaking - # every C++ application) / libgomp etc., among other breakages. - # - # To fix this, simply refresh the ld.so.cache without using the - # auxiliary cache if we're natively installing on loong. This should - # be done relatively soon because we want to minimize the breakage - # window for the affected programs. - use loong && glibc_refresh_ldconfig - - if ! use compile-locales; then - run_locale_gen 0 "${EROOT}" - fi - - # If fixincludes was/is active for a particular GCC slot, we - # must refresh it. See bug #933282 and GCC's documentation: - # https://gcc.gnu.org/onlinedocs/gcc/Fixed-Headers.html - # - # TODO: Could this be done for cross? Some care would be needed - # to pass the right arguments. - while IFS= read -r -d $'\0' slot ; do - local mkheaders_path="${BROOT}"/usr/libexec/gcc/${CBUILD}/${slot##*/}/install-tools/mkheaders - local pthread_h="${BROOT}"/usr/lib/gcc/${CBUILD}/${slot##*/}/include-fixed/pthread.h - if [[ -x ${mkheaders_path} ]] ; then - ebegin "Refreshing fixincludes for ${CBUILD} with gcc-${slot##*/}" - ${mkheaders_path} -v - eend $? - elif [[ -f ${pthread_h} ]] ; then - # fixincludes might have been enabled in the past for this - # GCC slot but not since we fixed toolchain.eclass to install - # mkheaders, so we need to manually delete pthread.h at least. - ebegin "Deleting stale fixincludes'd pthread.h for ${CBUILD} with gcc-${slot##*/}" - mv -v "${pthread_h}" "${pthread_h}.bak" - eend $? - fi - done < <(find "${BROOT}"/usr/libexec/gcc/${CBUILD}/ -mindepth 1 -maxdepth 1 -type d -print0) - fi - - upgrade_warning - - # Check for sanity of /etc/nsswitch.conf, take 2 - if [[ -e ${EROOT}/etc/nsswitch.conf ]] && ! has_version sys-auth/libnss-nis ; then - local entry - for entry in passwd group shadow; do - if grep -E -q "^[ \t]*${entry}:.*nis" "${EROOT}"/etc/nsswitch.conf; then - ewarn "" - ewarn "Your ${EROOT}/etc/nsswitch.conf uses NIS. Support for that has been" - ewarn "removed from glibc and is now provided by the package" - ewarn " sys-auth/libnss-nis" - ewarn "Install it now to keep your NIS setup working." - ewarn "" - fi - done - fi - - if [[ ${PRESERVED_OLD_LIBCRYPT} -eq 1 ]] ; then - cp -p "${T}/libcrypt$(get_libname 1)" "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1)" || die - preserve_old_lib_notify /$(get_libdir)/libcrypt$(get_libname 1) - - elog "Please ignore a possible later error message about a file collision involving" - elog "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1). We need to preserve this file for the moment to keep" - elog "the upgrade working, but it also needs to be overwritten when" - elog "sys-libs/libxcrypt is installed. See bug 802210 for more details." - fi -} diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.42-r3.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.42-r5.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.42-r3.ebuild rename to sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.42-r5.ebuild index 257bc27b06e..b5bd16ec72f 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.42-r3.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.42-r5.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -6,13 +6,13 @@ EAPI=8 # Bumping notes: https://wiki.gentoo.org/wiki/Project:Toolchain/sys-libs/glibc # Please read & adapt the page as necessary if obsolete. -PYTHON_COMPAT=( python3_{10..14} ) +PYTHON_COMPAT=( python3_{11..14} ) TMPFILES_OPTIONAL=1 EMULTILIB_PKG="true" # Gentoo patchset (ignored for live ebuilds) -PATCH_VER=5 +PATCH_VER=7 PATCH_DEV=dilfridge # gcc mulitilib bootstrap files version @@ -43,7 +43,7 @@ HOMEPAGE="https://www.gnu.org/software/libc/" if [[ ${PV} == *9999 ]]; then inherit git-r3 else - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86" SRC_URI="mirror://gnu/glibc/${P}.tar.xz" SRC_URI+=" verify-sig? ( mirror://gnu/glibc/${P}.tar.xz.sig )" SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz" @@ -191,6 +191,16 @@ XFAIL_TEST_LIST=( # https://sourceware.org/bugzilla/show_bug.cgi?id=31877 (bug #927973) tst-shstk-legacy-1g + + # https://sourceware.org/bugzilla/show_bug.cgi?id=33239 + test-double-compoundn + test-float-compoundn + test-float32-compoundn + test-float32x-compoundn + test-float64-compoundn + + # Fails only in portage. Needs investigation. + tst-setvbuf2 ) XFAIL_NSPAWN_TEST_LIST=( diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.42-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.43.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.42-r2.ebuild rename to sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.43.ebuild index 3d1194e0e02..5779dfe29eb 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.42-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.43.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -12,7 +12,7 @@ TMPFILES_OPTIONAL=1 EMULTILIB_PKG="true" # Gentoo patchset (ignored for live ebuilds) -PATCH_VER=4 +PATCH_VER=1 PATCH_DEV=dilfridge # gcc mulitilib bootstrap files version @@ -54,7 +54,7 @@ SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE" SLOT="2.2" -IUSE="audit caps cet compile-locales custom-cflags doc gd hash-sysv-compat headers-only +multiarch multilib multilib-bootstrap nscd perl profile selinux sframe +ssp stack-realign +static-libs suid systemd systemtap test vanilla" +IUSE="audit caps cet clang compile-locales custom-cflags doc gd hash-sysv-compat headers-only +multiarch multilib multilib-bootstrap nscd perl profile selinux sframe +ssp stack-realign +static-libs suid systemd systemtap test vanilla" # Here's how the cross-compile logic breaks down ... # CTARGET - machine that will target the binaries @@ -155,7 +155,10 @@ if [[ ${CATEGORY} == cross-* ]] ; then else BDEPEND+=" >=sys-devel/binutils-2.27 - >=sys-devel/gcc-6.2 + clang? ( || ( ( >=sys-devel/gcc-6.2 ) + ( >=sys-devel/gcc-6.2 >=llvm-core/clang-18 ) + ( >=llvm-core/clang-18 >=llvm-runtimes/libgcc-18 ) ) ) + !clang? ( >=sys-devel/gcc-6.2 ) " DEPEND+=" virtual/os-headers " RDEPEND+=" @@ -191,6 +194,16 @@ XFAIL_TEST_LIST=( # https://sourceware.org/bugzilla/show_bug.cgi?id=31877 (bug #927973) tst-shstk-legacy-1g + + # https://sourceware.org/bugzilla/show_bug.cgi?id=33239 + test-double-compoundn + test-float-compoundn + test-float32-compoundn + test-float32x-compoundn + test-float64-compoundn + + # Fails only in portage. Needs investigation. + tst-setvbuf2 ) XFAIL_NSPAWN_TEST_LIST=( @@ -295,7 +308,8 @@ do_run_test() { if [[ ${MERGE_TYPE} == "binary" ]] ; then # ignore build failures when installing a binary package #324685 - CFLAGS="-O2" LDFLAGS="" do_compile_test "" "$@" 2>/dev/null || return 0 + CC="${glibc__ORIG_CC}" CXX="${glibc__ORIG_CXX}" CPP="${glibc__ORIG_CPP}" \ + CFLAGS="-O2" LDFLAGS="" do_compile_test "" "$@" 2>/dev/null || return 0 else ebegin "Performing simple compile test for ABI=${ABI}" if ! do_compile_test "" "$@" ; then @@ -468,6 +482,11 @@ setup_flags() { append-ldflags '-Wl,--hash-style=both' fi + # clang warns about linker flags unused during compilation, but we don't + # want that to turn into errors! + # Let's turn the warning off entirely since it spams. + append-flags -Wno-unused-command-line-argument + # #492892 filter-flags -frecord-gcc-switches @@ -599,7 +618,7 @@ setup_env() { export glibc__ORIG_CXX=${CXX} export glibc__ORIG_CPP=${CPP} - if tc-is-clang && ! use custom-cflags && ! is_crosscompile ; then + if tc-is-clang && ! ( use clang || use custom-cflags ) && ! is_crosscompile ; then export glibc__force_gcc=yes # once this is toggled on, it needs to stay on, since with CPP manipulated # tc-is-clang does not work correctly anymore... @@ -610,9 +629,8 @@ setup_env() { # recover the proper gcc and binutils settings here, at least until glibc # is finally building with clang. So let's override everything that is # set in the clang profiles. - # Want to shoot yourself into the foot? Set USE=custom-cflags, that's always - # a good start into that direction. - # Also, if you're crosscompiling, let's assume you know what you are doing. + # Want to shoot yourself into the foot? Set USE="clang" or USE="custom-cflags". + # Also, if you are crosscompiling, let's assume you know what you are doing. # Hopefully. # Last, we need the settings of the *build* environment, not of the # target environment... @@ -641,26 +659,22 @@ setup_env() { filter-flags '-D_FORTIFY_SOURCE=*' else - # this is the "normal" case - export CC="$(tc-getCC ${CTARGET})" - export CXX="$(tc-getCXX ${CTARGET})" - export CPP="$(tc-getCPP ${CTARGET})" - # Always use tuple-prefixed toolchain. For non-native ABI glibc's configure # can't detect them automatically due to ${CHOST} mismatch and fallbacks # to unprefixed tools. Similar to multilib.eclass:multilib_toolchain_setup(). + export CC="$(tc-getCC ${CTARGET})" + export CXX="$(tc-getCXX ${CTARGET})" + export CPP="$(tc-getCPP ${CTARGET})" export NM="$(tc-getNM ${CTARGET})" export READELF="$(tc-getREADELF ${CTARGET})" fi - # We need to export CFLAGS with abi information in them because glibc's - # configure script checks CFLAGS for some targets (like mips). Keep - # around the original clean value to avoid appending multiple ABIs on - # top of each other. (Why does the comment talk about CFLAGS if the code - # acts on CC?) + # We need to move CFLAGS with abi information into CC etc per glibc upstream + # requirement. Keep around the original clean value to avoid appending + # multiple ABIs on top of each other. export glibc__GLIBC_CC=${CC} export glibc__GLIBC_CXX=${CXX} export glibc__GLIBC_CPP=${CPP} @@ -802,7 +816,7 @@ sanity_prechecks() { if ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then eerror "Your old kernel is broken. You need to update it to a newer" eerror "version as syscall(<bignum>) will break. See bug 279260." - die "Old and broken kernel." + [[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Old and broken kernel." fi fi diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-9999.ebuild index 5ec25c760f1..8e93624a19f 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-9999.ebuild @@ -194,6 +194,16 @@ XFAIL_TEST_LIST=( # https://sourceware.org/bugzilla/show_bug.cgi?id=31877 (bug #927973) tst-shstk-legacy-1g + + # https://sourceware.org/bugzilla/show_bug.cgi?id=33239 + test-double-compoundn + test-float-compoundn + test-float32-compoundn + test-float32x-compoundn + test-float64-compoundn + + # Fails only in portage. Needs investigation. + tst-setvbuf2 ) XFAIL_NSPAWN_TEST_LIST=( From c22321a5fbd93e0a82bec343a8a4667b6eaaec0a Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:30:05 +0000 Subject: [PATCH 246/291] sys-libs/libseccomp: Sync with Gentoo It's from Gentoo commit 70db06723e73ae0b00458866e8b2913945b7a6f6. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-libs/libseccomp/Manifest | 3 +- .../files/libseccomp-2.5.5-aliasing.patch | 30 ----- .../libseccomp-2.5.5-arch-syscall-check.patch | 45 ------- .../files/libseccomp-2.5.5-which-hunt.patch | 69 ---------- .../files/libseccomp-python-shared.patch | 25 ---- .../libseccomp/libseccomp-2.5.5-r2.ebuild | 127 ------------------ .../libseccomp/libseccomp-2.6.0-r3.ebuild | 30 ++++- .../libseccomp/libseccomp-2.6.0.ebuild | 107 --------------- .../libseccomp/libseccomp-9999.ebuild | 30 ++++- .../sys-libs/libseccomp/metadata.xml | 3 - 10 files changed, 53 insertions(+), 416 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.5-aliasing.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.5-arch-syscall-check.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.5-which-hunt.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-python-shared.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.5-r2.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.6.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/Manifest index 6d14610d136..cb80334dbe3 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/Manifest @@ -1,3 +1,2 @@ -DIST libseccomp-2.5.5-loongarch-r1.patch 119822 BLAKE2B 4aa75c1ac87b2ca25cf6be38dfd760879c7255ca8e6cf86be3ac6e354f76cdaf3c8e2f59b646254414ffb0f1ffe6b7c50478f4db895a6ce632db8782c9807e91 SHA512 f7cd768d672a25448b2a3ceda27db52e0d62b5d9ab3eeb906226b6ebc19332c89332e0b870aaf82d4ffcfd642c2deb6029a30ae9a6bd702ebad9fdd40622b582 -DIST libseccomp-2.5.5.tar.gz 642445 BLAKE2B d770cee1f3e02fbbcd9f25655b360ab38160ad800e2829a67f2b9da62b095a90be99ac851a67344cf95bd6810a6268da4655dc1d37d996e58239c4999eb41998 SHA512 f630e7a7e53a21b7ccb4d3e7b37616b89aeceba916677c8e3032830411d77a14c2d74dcf594cd193b1acc11f52595072e28316dc44300e54083d5d7b314a38da DIST libseccomp-2.6.0.tar.gz 685655 BLAKE2B 45c4f4dd67db5848bb536613e8929633f95cfbeb8738525381a76631187e7b0fc2c02f1a103579cd0f4135e9c175250fe2d784b85cc85424ec3125b4dafcf11c SHA512 9039478656d9b670af2ff4cb67b6b1fa315821e59d2f82ba6247e988859ddc7e3d15fea159eccca161bf2890828bb62aa6ab4d6b7ff55f27a9d6bd9532eeee1b +DIST libseccomp-2.6.0.tar.gz.asc 833 BLAKE2B 3bec3fc850bcd631018f152ee8a81d89ad3e7b15d91a559048400a07efe1b1787d1cdc1b056dca62bbf8134ad81ad1b4bf53f3230e24bf94a39296b2b1562e64 SHA512 973b69c58085a1567f860e621e3a197be02c0ca71dad664234418cf5c00c39767efd37a7c4016f1be5bd588262617b6603855262db2ee6f31bc16061bc130e0f diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.5-aliasing.patch b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.5-aliasing.patch deleted file mode 100644 index 60190702d38..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.5-aliasing.patch +++ /dev/null @@ -1,30 +0,0 @@ -https://github.com/seccomp/libseccomp/commit/2847f10dddca72167309c04cd09f326fd3b78e2f - -From 2847f10dddca72167309c04cd09f326fd3b78e2f Mon Sep 17 00:00:00 2001 -From: Sam James <sam@gentoo.org> -Date: Sun, 24 Dec 2023 20:38:06 +0100 -Subject: [PATCH] scmp_bpf_sim: fix aliasing UB - -See https://github.com/seccomp/libseccomp/pull/425. - -Punning sys_data_b between uint32_t* and struct* seccomp_data isn't legal, -use memcpy to fix the testsuite with Clang 17. - -Modern compilers recognise this idiom and optimise it out anyway. - -Signed-off-by: Sam James <sam@gentoo.org> -Acked-by: Tom Hromatka <tom.hromatka@oracle.com> -Signed-off-by: Paul Moore <paul@paul-moore.com> ---- a/tools/scmp_bpf_sim.c -+++ b/tools/scmp_bpf_sim.c -@@ -182,7 +182,8 @@ static void bpf_execute(const struct bpf_program *prg, - switch (code) { - case BPF_LD+BPF_W+BPF_ABS: - if (k < BPF_SYSCALL_MAX) { -- uint32_t val = *((uint32_t *)&sys_data_b[k]); -+ uint32_t val; -+ memcpy(&val, &sys_data_b[k], sizeof(val)); - state.acc = ttoh32(arch, val); - } else - exit_error(ERANGE, ip_c); - diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.5-arch-syscall-check.patch b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.5-arch-syscall-check.patch deleted file mode 100644 index 238098ad4c9..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.5-arch-syscall-check.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 744c9a897b74ad66d065791593e25a05e4b6f6a1 Mon Sep 17 00:00:00 2001 -From: Michal Privoznik <mprivozn@redhat.com> -Date: Tue, 1 Nov 2022 11:59:51 +0100 -Subject: [PATCH] src: Make arch-syscall-check work in VPATH build - -The aim of arch-syscall-check test is to check for syscalls -missing implementation. It does so by comparing two files: - - 1) src/syscalls.csv - 2) include/seccomp-syscalls.h - -However, due to use of relative paths these files are not found -when doing a VPATH build. But, we can re-use an idea from GNU -coreutils and get an absolute path to the source dir. All that's -needed then is to prefix those two paths with the source dir -path. - -Signed-off-by: Michal Privoznik <mprivozn@redhat.com> -Acked-by: Tom Hromatka <tom.hromatka@oracle.com> -Signed-off-by: Paul Moore <paul@paul-moore.com> ---- - src/arch-syscall-check | 7 +++++-- - 1 file changed, 5 insertions(+), 2 deletions(-) - -diff --git a/src/arch-syscall-check b/src/arch-syscall-check -index ae67daa..9c7fd41 100755 ---- a/src/arch-syscall-check -+++ b/src/arch-syscall-check -@@ -22,8 +22,11 @@ - # along with this library; if not, see <http://www.gnu.org/licenses>. - # - --SYSCALL_CSV="./syscalls.csv" --SYSCALL_HDR="../include/seccomp-syscalls.h" -+# Based on an idea from GNU coreutils -+abs_topsrcdir="$(unset CDPATH; cd $(dirname $0)/.. && pwd)" -+ -+SYSCALL_CSV="$abs_topsrcdir/src/syscalls.csv" -+SYSCALL_HDR="$abs_topsrcdir/include/seccomp-syscalls.h" - - function check_snr() { - (export LC_ALL=C; diff \ --- -2.44.0 - diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.5-which-hunt.patch b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.5-which-hunt.patch deleted file mode 100644 index 90dc25bf4e7..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.5-which-hunt.patch +++ /dev/null @@ -1,69 +0,0 @@ -https://github.com/seccomp/libseccomp/pull/424 - -From 865adeed17cac7063cbbce0c5df225aa35c83621 Mon Sep 17 00:00:00 2001 -From: Sam James <sam@gentoo.org> -Date: Sat, 16 Dec 2023 02:17:36 +0000 -Subject: [PATCH] tests: avoid use of non-portable `which` - -which is not a standard POSIX utility, and indeed, each of these test scripts -uses #!/bin/bash as its shebang, so we can use `type -P` which has the same -behaviour as `which` for free. - -(If the tests used POSIX shell, we could do `command -v`, its only caveat is -that it'll pick up functions in the user's shell, which doesn't matter 99% of -the time anyway.) - -Distributions like Debian [0] and Gentoo [1] are looking to remove `which` -from their base set of packages. - -[0] https://lwn.net/Articles/874049/ -[1] https://bugs.gentoo.org/646588 - -Signed-off-by: Sam James <sam@gentoo.org> ---- a/tests/38-basic-pfc_coverage.sh -+++ b/tests/38-basic-pfc_coverage.sh -@@ -18,7 +18,7 @@ - # - function check_deps() { - [[ -z "$1" ]] && return -- which "$1" >& /dev/null -+ type -P "$1" >& /dev/null - return $? - } - ---- a/tests/55-basic-pfc_binary_tree.sh -+++ b/tests/55-basic-pfc_binary_tree.sh -@@ -18,7 +18,7 @@ - # - function check_deps() { - [[ -z "$1" ]] && return -- which "$1" >& /dev/null -+ type -P "$1" >& /dev/null - return $? - } - ---- a/tests/regression -+++ b/tests/regression -@@ -73,7 +73,7 @@ GLBL_SYS_API="../tools/scmp_api_level" - # - function check_deps() { - [[ -z "$1" ]] && return -- which "$1" >& /dev/null -+ type -P "$1" >& /dev/null - return $? - } - ---- a/tests/testgen -+++ b/tests/testgen -@@ -32,7 +32,7 @@ - # - function verify_deps() { - [[ -z "$1" ]] && return -- if ! which "$1" >& /dev/null; then -+ if ! type -P "$1" >& /dev/null; then - echo "error: install \"$1\" and include it in your \$PATH" - exit 1 - fi --- -2.43.0 - diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-python-shared.patch b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-python-shared.patch deleted file mode 100644 index 93e1ec8a915..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-python-shared.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 763b863c3028f604f16cc6d2de7452dc16458596 Mon Sep 17 00:00:00 2001 -From: Mike Gilbert <floppym@gentoo.org> -Date: Sun, 23 May 2021 16:17:32 -0400 -Subject: [PATCH] Link python module against shared library - ---- - src/python/setup.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/python/setup.py b/src/python/setup.py -index 0419111..fb650d0 100755 ---- a/src/python/setup.py -+++ b/src/python/setup.py -@@ -41,7 +41,7 @@ setup( - ext_modules = [ - Extension("seccomp", ["seccomp.pyx"], - # unable to handle libtool libraries directly -- extra_objects=["../.libs/libseccomp.a"], -+ extra_objects=["../.libs/libseccomp.so"], - # fix build warnings, see PEP 3123 - extra_compile_args=["-fno-strict-aliasing"]) - ] --- -2.32.0.rc1 - diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.5-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.5-r2.ebuild deleted file mode 100644 index 4eb2728435b..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.5-r2.ebuild +++ /dev/null @@ -1,127 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_OPTIONAL=1 -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{10..12} ) - -inherit distutils-r1 multilib-minimal - -DESCRIPTION="High level interface to Linux seccomp filter" -HOMEPAGE="https://github.com/seccomp/libseccomp" - -if [[ ${PV} == *9999 ]] ; then - EGIT_REPO_URI="https://github.com/seccomp/libseccomp.git" - PRERELEASE="2.6.0" - AUTOTOOLS_AUTO_DEPEND=yes - inherit autotools git-r3 -else - AUTOTOOLS_AUTO_DEPEND=no - inherit autotools libtool - SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz - experimental-loong? ( https://github.com/matoro/libseccomp/compare/v${PV}..loongarch-r1.patch - -> ${P}-loongarch-r1.patch )" - KEYWORDS="-* amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 x86" -fi - -LICENSE="LGPL-2.1" -SLOT="0" -IUSE="experimental-loong python static-libs test" -RESTRICT="!test? ( test )" -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" - -# We need newer kernel headers; we don't keep strict control of the exact -# version here, just be safe and pull in the latest stable ones. bug #551248 -DEPEND=" - >=sys-kernel/linux-headers-5.15 - python? ( ${PYTHON_DEPS} ) -" -RDEPEND="${DEPEND}" -BDEPEND=" - ${DEPEND} - dev-util/gperf - experimental-loong? ( ${AUTOTOOLS_DEPEND} ) - python? ( - ${DISTUTILS_DEPS} - dev-python/cython[${PYTHON_USEDEP}] - ) -" - -PATCHES=( - "${FILESDIR}"/libseccomp-python-shared.patch - "${FILESDIR}"/libseccomp-2.5.3-skip-valgrind.patch - "${FILESDIR}"/libseccomp-2.5.5-which-hunt.patch - "${FILESDIR}"/libseccomp-2.5.5-arch-syscall-check.patch - "${FILESDIR}"/libseccomp-2.5.5-aliasing.patch -) - -src_prepare() { - if use experimental-loong; then - PATCHES+=( "${DISTDIR}/${P}-loongarch-r1.patch" ) - fi - - default - - if [[ ${PV} == *9999 ]] ; then - sed -i -e "s/0.0.0/${PRERELEASE}/" configure.ac || die - fi - - if use experimental-loong; then - # touch generated files to avoid activating maintainer mode - # remove when loong-fix-build.patch is no longer necessary - touch ./aclocal.m4 ./configure ./configure.h.in || die - find . -name Makefile.in -exec touch {} + || die - fi - - if [[ ${PV} == *9999 ]] || use experimental-loong; then - rm -f "include/seccomp.h" || die - eautoreconf - else - elibtoolize - fi -} - -multilib_src_configure() { - local myeconfargs=( - $(use_enable static-libs static) - --disable-python - ) - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} - -multilib_src_compile() { - emake - - if multilib_is_native_abi && use python ; then - # setup.py expects libseccomp.so to live in "../.libs" - # Copy the python files to the right place for this. - rm -r "${BUILD_DIR}"/src/python || die - cp -r "${S}"/src/python "${BUILD_DIR}"/src/python || die - local -x CPPFLAGS="-I\"${BUILD_DIR}/include\" -I\"${S}/include\" ${CPPFLAGS}" - - # setup.py reads VERSION_RELEASE from the environment - local -x VERSION_RELEASE=${PRERELEASE-${PV}} - - pushd "${BUILD_DIR}/src/python" >/dev/null || die - distutils-r1_src_compile - popd >/dev/null || die - fi -} - -multilib_src_install() { - emake DESTDIR="${D}" install - - if multilib_is_native_abi && use python ; then - distutils-r1_src_install - fi -} - -multilib_src_install_all() { - find "${ED}" -type f -name "${PN}.la" -delete || die - - einstalldocs -} diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.6.0-r3.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.6.0-r3.ebuild index 4f22c8f8ac7..184b1f109d9 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.6.0-r3.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.6.0-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -18,8 +18,16 @@ if [[ ${PV} == *9999 ]] ; then PRERELEASE="2.6.0" inherit autotools git-r3 else - SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libseccomp.asc + inherit verify-sig + + SRC_URI=" + https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz + verify-sig? ( https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz.asc ) + " KEYWORDS="-* amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 x86" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-libseccomp )" fi LICENSE="LGPL-2.1" @@ -33,10 +41,11 @@ RDEPEND=" " # We need newer kernel headers; we don't keep strict control of the exact # version here, just be safe and pull in the latest stable ones. bug #551248 -DEPEND="${RDEPEND} +DEPEND=" + ${RDEPEND} >=sys-kernel/linux-headers-5.15 " -BDEPEND=" +BDEPEND+=" ${DEPEND} dev-util/gperf python? ( @@ -53,6 +62,19 @@ PATCHES=( "${FILESDIR}"/${P}-bounds.patch ) +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + return + fi + + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${P}.tar.gz{,.asc} + fi + + default +} + src_prepare() { default diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.6.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.6.0.ebuild deleted file mode 100644 index f28f3459eb9..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.6.0.ebuild +++ /dev/null @@ -1,107 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_OPTIONAL=1 -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{10..13} ) - -inherit distutils-r1 multilib-minimal - -DESCRIPTION="High level interface to Linux seccomp filter" -HOMEPAGE="https://github.com/seccomp/libseccomp" - -if [[ ${PV} == *9999 ]] ; then - EGIT_REPO_URI="https://github.com/seccomp/libseccomp.git" - PRERELEASE="2.6.0" - inherit autotools git-r3 -else - SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz" - KEYWORDS="-* amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 x86" -fi - -LICENSE="LGPL-2.1" -SLOT="0" -IUSE="python static-libs test" -RESTRICT="!test? ( test )" -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" - -# We need newer kernel headers; we don't keep strict control of the exact -# version here, just be safe and pull in the latest stable ones. bug #551248 -DEPEND=" - >=sys-kernel/linux-headers-5.15 - python? ( ${PYTHON_DEPS} ) -" -RDEPEND="${DEPEND}" -BDEPEND=" - ${DEPEND} - dev-util/gperf - python? ( - ${DISTUTILS_DEPS} - dev-python/cython[${PYTHON_USEDEP}] - ) -" - -PATCHES=( - "${FILESDIR}"/libseccomp-2.6.0-python-shared.patch - "${FILESDIR}"/libseccomp-2.5.3-skip-valgrind.patch - "${FILESDIR}"/${P}-drop-bogus-test.patch -) - -src_prepare() { - default - - if [[ ${PV} == *9999 ]] ; then - sed -i -e "s/0.0.0/${PRERELEASE}/" configure.ac || die - - eautoreconf - fi -} - -multilib_src_configure() { - local myeconfargs=( - $(use_enable static-libs static) - --disable-python - ) - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} - -multilib_src_compile() { - emake - - if multilib_is_native_abi && use python ; then - # setup.py expects libseccomp.so to live in "../.libs" - # Copy the python files to the right place for this. - rm -r "${BUILD_DIR}"/src/python || die - cp -r "${S}"/src/python "${BUILD_DIR}"/src/python || die - local -x CPPFLAGS="-I\"${BUILD_DIR}/include\" -I\"${S}/include\" ${CPPFLAGS}" - - # setup.py reads VERSION_RELEASE from the environment - local -x VERSION_RELEASE=${PRERELEASE-${PV}} - - pushd "${BUILD_DIR}/src/python" >/dev/null || die - distutils-r1_src_compile - popd >/dev/null || die - fi -} - -multilib_src_test() { - emake -Onone check -} - -multilib_src_install() { - emake DESTDIR="${D}" install - - if multilib_is_native_abi && use python ; then - distutils-r1_src_install - fi -} - -multilib_src_install_all() { - find "${ED}" -type f -name "${PN}.la" -delete || die - - einstalldocs -} diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-9999.ebuild index b3a5119c28b..2c33eca85c2 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -18,8 +18,16 @@ if [[ ${PV} == *9999 ]] ; then PRERELEASE="2.6.0" inherit autotools git-r3 else - SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libseccomp.asc + inherit verify-sig + + SRC_URI=" + https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz + verify-sig? ( https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz.asc ) + " KEYWORDS="-* ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~x86" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-libseccomp )" fi LICENSE="LGPL-2.1" @@ -33,10 +41,11 @@ RDEPEND=" " # We need newer kernel headers; we don't keep strict control of the exact # version here, just be safe and pull in the latest stable ones. bug #551248 -DEPEND="${RDEPEND} +DEPEND=" + ${RDEPEND} >=sys-kernel/linux-headers-5.15 " -BDEPEND=" +BDEPEND+=" ${DEPEND} dev-util/gperf python? ( @@ -50,6 +59,19 @@ PATCHES=( "${FILESDIR}"/libseccomp-2.5.3-skip-valgrind.patch ) +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + return + fi + + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${P}.tar.gz{,.asc} + fi + + default +} + src_prepare() { default diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/metadata.xml b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/metadata.xml index 72ee48a1f86..9b5a2293506 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/metadata.xml @@ -5,9 +5,6 @@ <email>base-system@gentoo.org</email> <name>Gentoo Base System</name> </maintainer> - <use> - <flag name="experimental-loong">Add experimental LoongArch patchset</flag> - </use> <upstream> <remote-id type="github">seccomp/libseccomp</remote-id> <remote-id type="cpe">cpe:/a:libseccomp_project:libseccomp</remote-id> From c9695d6823efe599136ce1aa9104ce373e8ca3ce Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:30:05 +0000 Subject: [PATCH 247/291] sys-libs/libselinux: Sync with Gentoo It's from Gentoo commit 35682fb9cc368eedd2568009b1b6a2ad81c997be. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../libselinux/libselinux-3.8.1-r3.ebuild | 14 +++++++--- .../libselinux/libselinux-9999.ebuild | 27 +++++++++++++++++-- 2 files changed, 35 insertions(+), 6 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libselinux/libselinux-3.8.1-r3.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libselinux/libselinux-3.8.1-r3.ebuild index e478699690d..37186db206a 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libselinux/libselinux-3.8.1-r3.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libselinux/libselinux-3.8.1-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -46,7 +46,9 @@ BDEPEND="virtual/pkgconfig python? ( >=dev-lang/swig-2.0.9 dev-python/pip[${PYTHON_USEDEP}] -) + ${PYTHON_DEPS} + ${DISTUTILS_DEPS} + ) ruby? ( >=dev-lang/swig-2.0.9 )" src_prepare() { @@ -60,6 +62,7 @@ src_prepare() { } multilib_src_configure() { + default if multilib_is_native_abi; then if use python; then distutils-r1_src_configure @@ -164,8 +167,11 @@ python_install() { } multilib_src_test() { - if use python; then - distutils-r1_src_test + default + if multilib_is_native_abi; then + if use python; then + distutils-r1_src_test + fi fi } diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libselinux/libselinux-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libselinux/libselinux-9999.ebuild index 372ceec423d..cc8d0992621 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libselinux/libselinux-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libselinux/libselinux-9999.ebuild @@ -1,10 +1,11 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_USE_PEP517=setuptools DISTUTILS_EXT=1 +DISTUTILS_OPTIONAL=1 PYTHON_COMPAT=( python3_{11..14} ) USE_RUBY="ruby32 ruby33" @@ -45,15 +46,30 @@ BDEPEND="virtual/pkgconfig python? ( >=dev-lang/swig-2.0.9 dev-python/pip[${PYTHON_USEDEP}] -) + ${PYTHON_DEPS} + ${DISTUTILS_DEPS} + ) ruby? ( >=dev-lang/swig-2.0.9 )" src_prepare() { eapply_user + if use python; then + distutils-r1_src_prepare + fi + multilib_copy_sources } +multilib_src_configure() { + default + if multilib_is_native_abi; then + if use python; then + distutils-r1_src_configure + fi + fi +} + multilib_src_compile() { tc-export AR CC PKG_CONFIG RANLIB @@ -150,6 +166,13 @@ python_install() { dosym -r "$(python_get_sitedir)/selinux/_selinux${pycext}" "$(python_get_sitedir)/_selinux${pycext}" } +multilib_src_test() { + default + if use python; then + distutils-r1_src_test + fi +} + pkg_postinst() { # Fix bug 473502 for POLTYPE in ${POLICY_TYPES}; From 4683c80a03c0747cc52a20885010d2b58e098ed8 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:30:06 +0000 Subject: [PATCH 248/291] sys-libs/libunwind: Sync with Gentoo It's from Gentoo commit d3966c10f771195c0417677bcdf0adca32bd52b9. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-libs/libunwind/Manifest | 1 + .../files/libunwind-1.8.3-typo.patch | 34 +++++ .../sys-libs/libunwind/libunwind-1.8.3.ebuild | 141 ++++++++++++++++++ 3 files changed, 176 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/libunwind/files/libunwind-1.8.3-typo.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/libunwind/libunwind-1.8.3.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libunwind/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/libunwind/Manifest index ca23959662a..10a3c777ad7 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libunwind/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libunwind/Manifest @@ -1,2 +1,3 @@ DIST libunwind-1.8.0-docs.tar.xz 29280 BLAKE2B 260c5011cf23422ec04449126259c9960b5549b94def8ffa3821ccc67809b5da06be22fb0b465fcee2f0ec89faebab71d2bf3316dc68315a27e0913856513b0a SHA512 6969c8426dc5d79a78a9dae366a9e7b6f1d9a7ce307357913d4f5b8867a540ab8225b5342ee0e06e77b832ef76336fba41dadf12effa5236a076e6bfe72ec548 DIST libunwind-1.8.2.tar.gz 979922 BLAKE2B b198b186c616adf1302d153a12949ceab07608f8133e42454e6b10bdf9518a514ef15d5ba52ef75b11e5f73fa330205accd415cfc30e6fa3ddd9724cbb088737 SHA512 f1ff26763c1b2e68948413c4aec22303b6c886425a8264eb65fbd58fc202f79c7b04bd4784bd8499850d08933f0e363cfa3a7d177efdadc223ed0254bc381345 +DIST libunwind-1.8.3.tar.gz 981017 BLAKE2B 13ac888e72c080b9e2588024578740971f721497864c5f2eb930227cbc5bb040551db6280048b0b6f2dde193d5d1719f546088618ebd2e19f96524c2b767fda1 SHA512 732c9b74635cf4e65bc90fd5b9a4b90fe5968c7fcce6cc704295038f0d41b848f78a59d725e813072e78df72ff8fc77001096abdfb9ef1c73e3bd82433987679 diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libunwind/files/libunwind-1.8.3-typo.patch b/sdk_container/src/third_party/portage-stable/sys-libs/libunwind/files/libunwind-1.8.3-typo.patch new file mode 100644 index 00000000000..bcb0713ab8f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libunwind/files/libunwind-1.8.3-typo.patch @@ -0,0 +1,34 @@ +https://github.com/libunwind/libunwind/commit/bfc0d618f72ba4b725c3735188e0a6d8c710411c + +From bfc0d618f72ba4b725c3735188e0a6d8c710411c Mon Sep 17 00:00:00 2001 +From: Stephen Webb <stephen.webb@bregmasoft.ca> +Date: Tue, 9 Sep 2025 10:18:21 -0400 +Subject: [PATCH] Fix stray `-lc` in configure + +When configure is run with --enable-cxx-exceptions a stray `-lc` has +wandered into the execution path. While it doesn't hurt anything if +gives a disturbing error message. +--- + configure.ac | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 63d12ac02..9e79558ca 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -306,10 +306,12 @@ AM_CONDITIONAL([SUPPORT_CXX_EXCEPTIONS], [test x$enable_cxx_exceptions = xyes]) + AM_COND_IF([SUPPORT_CXX_EXCEPTIONS], + [save_LDFLAGS="$LDFLAGS" + LDFLAGS="${LDFLAGS} -nostdlib" +- AC_SEARCH_LIBS([_Unwind_Resume], [gcc_s gcc], ++ AC_SEARCH_LIBS([_Unwind_Resume], ++ [gcc_s gcc], + [AS_IF([test "$ac_cv_search__Unwind_Resume" != "none required"], + [AC_SUBST([UNW_CRT_LIBADD], ["-lc $ac_cv_search__Unwind_Resume"]) +- AC_SUBST([UNW_CRT_LDFLAGS], ["-WCClinker -nostdlib"])])] ++ AC_SUBST([UNW_CRT_LDFLAGS], ["-WCClinker -nostdlib"])]) ++ ],, + [-lc]) + LDFLAGS="$save_LDFLAGS"] + ) + diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libunwind/libunwind-1.8.3.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libunwind/libunwind-1.8.3.ebuild new file mode 100644 index 00000000000..40582d50bf3 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libunwind/libunwind-1.8.3.ebuild @@ -0,0 +1,141 @@ +# Copyright 2005-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-libunwind-docs +# Set to 1 if prebuilt, 0 if not +# (the construct below is to allow overriding from env for script) +: ${LIBUNWIND_DOCS_PREBUILT:=1} + +LIBUNWIND_DOCS_PREBUILT_DEV=sam +LIBUNWIND_DOCS_VERSION=1.8.0 +# Default to generating docs (inc. man pages) if no prebuilt; overridden later +LIBUNWIND_DOCS_USEFLAG="+doc" + +inherit autotools libtool multilib-minimal + +DESCRIPTION="Portable and efficient API to determine the call-chain of a program" +HOMEPAGE="https://savannah.nongnu.org/projects/libunwind" + +if [[ ${PV} == 9999 ]] ; then + LIBUNWIND_DOCS_PREBUILT=0 + + EGIT_REPO_URI="https://github.com/libunwind/libunwind" + inherit autotools git-r3 +else + SRC_URI="https://github.com/libunwind/libunwind/releases/download/v${PV/_rc/-rc}/${P/_rc/-rc}.tar.gz" + if [[ ${LIBUNWIND_DOCS_PREBUILT} == 1 ]] ; then + SRC_URI+=" !doc? ( https://dev.gentoo.org/~${LIBUNWIND_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${LIBUNWIND_DOCS_VERSION}-docs.tar.xz )" + fi + S="${WORKDIR}"/${P/_rc/-rc} + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 -sparc ~x86" + fi +fi + +[[ ${LIBUNWIND_DOCS_PREBUILT} == 1 ]] && LIBUNWIND_DOCS_USEFLAG="doc" + +LICENSE="MIT" +SLOT="0/8" # libunwind.so.8 +IUSE="debug debug-frame ${LIBUNWIND_DOCS_USEFLAG} libatomic lzma static-libs test zlib" +# XXX: if enabling tests again, make sure to arrange for deleting them so they don't get installed +# https://github.com/libunwind/libunwind/pull/722 +RESTRICT="test !test? ( test )" # some tests are broken (toolchain version dependent, rely on external binaries) + +BDEPEND=" + doc? ( app-text/texlive-core ) +" +RDEPEND=" + lzma? ( app-arch/xz-utils[static-libs?,${MULTILIB_USEDEP}] ) + zlib? ( virtual/zlib:=[static-libs?,${MULTILIB_USEDEP}] ) +" +# We just use the header from libatomic. +DEPEND=" + ${RDEPEND} + libatomic? ( dev-libs/libatomic_ops[${MULTILIB_USEDEP}] ) +" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/libunwind.h + + # see libunwind.h for the full list of arch-specific headers + /usr/include/libunwind-aarch64.h + /usr/include/libunwind-arm.h + /usr/include/libunwind-hppa.h + /usr/include/libunwind-ia64.h + /usr/include/libunwind-mips.h + /usr/include/libunwind-ppc32.h + /usr/include/libunwind-ppc64.h + /usr/include/libunwind-riscv.h + /usr/include/libunwind-sh.h + /usr/include/libunwind-tilegx.h + /usr/include/libunwind-x86.h + /usr/include/libunwind-x86_64.h +) + +PATCHES=( + "${FILESDIR}"/${P}-typo.patch +) + +src_prepare() { + default + + chmod +x src/ia64/mk_cursor_i || die + + #if [[ ${PV} == 9999 ]] ; then + # eautoreconf + #else + # elibtoolize + #fi + + # For typo.patch + eautoreconf +} + +multilib_src_configure() { + local myeconfargs=( + # --enable-cxx-exceptions: always enable it, headers provide the interface + # and on some archs it is disabled by default causing a mismatch between the + # API and the ABI, bug #418253 + --enable-cxx-exceptions + --enable-coredump + --enable-ptrace + --enable-setjmp + $(use_enable debug-frame) + $(multilib_native_use_enable doc documentation) + $(use_enable lzma minidebuginfo) + $(use_enable static-libs static) + $(use_enable zlib zlibdebuginfo) + # conservative-checks: validate memory addresses before use; as of 1.0.1, + # only x86_64 supports this, yet may be useful for debugging, couple it with + # debug useflag. + $(use_enable debug conservative_checks) + $(use_enable debug) + $(use_enable test tests) + ) + + export ac_cv_header_atomic_ops_h=$(usex libatomic) + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_compile() { + # bug #586208 + CCACHE_NODIRECT=1 default +} + +multilib_src_test() { + # Sandbox causes some tests to freak out. + SANDBOX_ON=0 emake check +} + +multilib_src_install_all() { + find "${ED}" -name "*.la" -type f -delete || die + + # If USE=doc, there'll be newly generated docs which we install instead. + if ! use doc && [[ ${LIBUNWIND_DOCS_PREBUILT} == 1 ]] ; then + doman "${WORKDIR}"/${PN}-${LIBUNWIND_DOCS_VERSION}-docs/man*/*.[0-8] + fi +} From c3fbbcb548422612fdde10c01b518d9ddaab61a3 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:30:06 +0000 Subject: [PATCH 249/291] sys-libs/liburing: Sync with Gentoo It's from Gentoo commit 11e1ae65ec868d51e7d1dc6f3c37cc4ceda33f05. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-libs/liburing/Manifest | 1 + .../sys-libs/liburing/liburing-2.14.ebuild | 92 +++++++++++++++++++ 2 files changed, 93 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/liburing/liburing-2.14.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/liburing/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/liburing/Manifest index 00cd41f6f56..e7e620b148a 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/liburing/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/liburing/Manifest @@ -3,4 +3,5 @@ DIST liburing-2.10.tar.gz 428315 BLAKE2B f5477f7a1a30202feea3e97f236f6a8a2db5992 DIST liburing-2.11.tar.gz 429859 BLAKE2B 9a649132e28569c7de30f284da13fb7318f406f123358833e5a252693e724bd99056c3966f061732ad9d6db6a327265b5a9f580ada74d8cef762ccfafadac251 SHA512 151d01416eeca6b9d18cb7bbd96f4f8099f1aa377f0ff808b51fa7e2c990413fe8aa7b40712c806d6a800296a58e262fe551c358ee7d23153c3bfa10aeb67eb0 DIST liburing-2.12.tar.gz 441865 BLAKE2B 9229974bcebd6d117fb686ed998dfc76a3dd68c1d1da0d18a895b55cc6ba01f1656756f95987f1a18495306d038ebc4c7090c2eb0dea455b596c5e639d413b29 SHA512 ccd40be43d4ea046c63d949cfddd9adb0fda531e3ae4ee17d4639b82a11eda966d8a2afd280b4e6b45f907ea1d53bbd432bfd8ae7a015609e86555a766fc850f DIST liburing-2.13.tar.gz 454243 BLAKE2B e9032e48622ee87ddbd9dd25d4e0264f0a648f9540acaca69a3a9bea05e64c5a8bdf2da37787ea72a298074f01bc0ab8baf934da5ece792443ee4417245d75fd SHA512 ada60d8c0bf5b546e45fe2e9e58b2cb4e342665d260648210218e5802dbc7bf650bc8bbcf0620dee27bc4310089dd5c509451a4f451368eccf1e1c5b3a4db0a7 +DIST liburing-2.14.tar.gz 487718 BLAKE2B 9e2e7b6c3a7a4fa2d285bb8cb1bea65bef7d56aac7992b912feaf67c2b99590912fd195213a04c320f3ef615ee4f45b8c4b808ca78442d74cbbdd93bda13c700 SHA512 3eb8419cd6c9ae4909b9697b188f5c6a27e107694eefe9747822524c8710e0798476aa43acada578fcbcf6e46b63ebdfb59350e4ba8f928dfe7cac3614e32a48 DIST liburing-2.9.tar.gz 407191 BLAKE2B 7081f9430e9532cad659e24de7ba998ad40f15a3fc3bf08fbe2b30df2bb335d4b06affb98d5667d4f8e6c8bc6e7a98c25caddd57ec5c98940562eb0e7977e54d SHA512 f27233e6128444175b18cd1d45647acdd27b906a8cd561029508710e443b44416b916cad1b2c1217e23d9a5ffb5ba68b119e9c812eae406650fbd10bf26c2fa5 diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/liburing/liburing-2.14.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/liburing/liburing-2.14.ebuild new file mode 100644 index 00000000000..1713d3a5211 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/liburing/liburing-2.14.ebuild @@ -0,0 +1,92 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib-minimal toolchain-funcs + +DESCRIPTION="Efficient I/O with io_uring" +HOMEPAGE="https://github.com/axboe/liburing" +if [[ "${PV}" == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/axboe/liburing.git" + S="${WORKDIR}"/liburing-${PV} +else + SRC_URI=" + https://github.com/axboe/liburing/archive/refs/tags/${P}.tar.gz + " + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + QA_PKGCONFIG_VERSION=${PV} + S="${WORKDIR}"/liburing-${P} +fi + +LICENSE="MIT" +SLOT="0/2" # liburing.so major version + +IUSE="examples static-libs test" +RESTRICT="!test? ( test )" + +# At least installed headers need <linux/*>, bug #802516 +DEPEND=">=sys-kernel/linux-headers-5.1" +RDEPEND="${DEPEND}" + +src_prepare() { + default + + if ! use examples; then + sed -e '/examples/d' Makefile -i || die + fi + + if ! use test; then + sed -e '/test/d' Makefile -i || die + else + local disabled_tests=( + accept.c + fpos.c + io_uring_register.c + recv-msgall-stream.c + msg-ring.c + wait-timeout.c # early wake up, 10192 + conn-unreach.c # Unexpected shutdown: -107 + io-wq-unused-exit.c # timeout waiting for iou-wrk threads (want_any=0, nr=1) + send-zerocopy.c # submit failed, got 1 expected 1 + ) + local disabled_test + for disabled_test in "${disabled_tests[@]}"; do + sed -i "/\s*${disabled_test}/d" test/Makefile \ + || die "Failed to remove ${disabled_test}" + done + fi + + multilib_copy_sources +} + +multilib_src_configure() { + local myconf=( + --prefix="${EPREFIX}/usr" + --libdir="${EPREFIX}/usr/$(get_libdir)" + --libdevdir="${EPREFIX}/usr/$(get_libdir)" + --mandir="${EPREFIX}/usr/share/man" + --cc="$(tc-getCC)" + --cxx="$(tc-getCXX)" + --use-libc + ) + # No autotools configure! "econf" will fail. + TMPDIR="${T}" ./configure "${myconf[@]}" || die +} + +multilib_src_compile() { + emake V=1 AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" +} + +multilib_src_install_all() { + einstalldocs + + if ! use static-libs ; then + find "${ED}" -type f -name "*.a" -delete || die + fi +} + +multilib_src_test() { + emake -C test V=1 runtests +} From bd1d340dd609f1976862cf08d4c9634958fa79a7 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:30:07 +0000 Subject: [PATCH 250/291] sys-libs/libxcrypt: Sync with Gentoo It's from Gentoo commit 4656d90320bbfd5c865438f9ac21ad18a2ef4db9. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../libxcrypt/libxcrypt-4.4.38-r1.ebuild | 254 ++++++++++++++++++ 1 file changed, 254 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/libxcrypt/libxcrypt-4.4.38-r1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libxcrypt/libxcrypt-4.4.38-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libxcrypt/libxcrypt-4.4.38-r1.ebuild new file mode 100644 index 00000000000..052def405d2 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libxcrypt/libxcrypt-4.4.38-r1.ebuild @@ -0,0 +1,254 @@ +# Copyright 2004-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..13} ) +# NEED_BOOTSTRAP is for developers to quickly generate a tarball +# for publishing to the tree. +NEED_BOOTSTRAP="no" +inherit crossdev multibuild multilib python-any-r1 flag-o-matic toolchain-funcs multilib-minimal + +DESCRIPTION="Extended crypt library for descrypt, md5crypt, bcrypt, and others" +HOMEPAGE="https://github.com/besser82/libxcrypt" +if [[ ${NEED_BOOTSTRAP} == "yes" ]] ; then + inherit autotools + SRC_URI="https://github.com/besser82/libxcrypt/releases/download/v${PV}/${P}.tar.xz" +else + SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-autotools.tar.xz" +fi + +LICENSE="LGPL-2.1+ public-domain BSD BSD-2" +SLOT="0/1" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="+compat static-libs +system test headers-only" +RESTRICT="!test? ( test )" + +DEPEND=" + system? ( + elibc_glibc? ( + ${CATEGORY}/glibc[-crypt(-)] + !${CATEGORY}/glibc[crypt(-)] + ) + elibc_musl? ( + ${CATEGORY}/musl[-crypt(+)] + !${CATEGORY}/musl[crypt(+)] + ) + ) +" +RDEPEND="${DEPEND} + !<sys-apps/man-pages-6.16-r1 +" +BDEPEND=" + dev-lang/perl + test? ( $(python_gen_any_dep 'dev-python/passlib[${PYTHON_USEDEP}]') ) +" + +python_check_deps() { + python_has_version "dev-python/passlib[${PYTHON_USEDEP}]" +} + +pkg_pretend() { + if has "distcc" ${FEATURES} ; then + ewarn "Please verify all distcc nodes are using the same versions of GCC (>= 10) and Binutils!" + ewarn "Older/mismatched versions of GCC may lead to a misbehaving library: bug #823179." + + if [[ ${BUILD_TYPE} != "binary" ]] && tc-is-gcc && [[ $(gcc-major-version) -lt 10 ]] ; then + die "libxcrypt is known to fail to build or be broken at runtime with < GCC 10 (bug #823179)!" + fi + fi +} + +pkg_setup() { + : +} + +src_prepare() { + default + + # WARNING: Please read on bumping or applying patches! + # + # There are two circular dependencies to be aware of: + # 1) + # if we're bootstrapping configure and makefiles: + # libxcrypt -> automake -> perl -> libxcrypt + # + # mitigation: + # toolchain@ manually runs `make dist` after running autoconf + `./configure` + # and the ebuild uses that. + # (Don't include the pre-generated Perl artefacts.) + # + # solution for future: + # Upstream are working on producing `make dist` tarballs. + # https://github.com/besser82/libxcrypt/issues/134#issuecomment-871833573 + # + # 2) + # configure *unconditionally* needs Perl at build time to generate + # a list of enabled algorithms based on the set passed to `configure`: + # libxcrypt -> perl -> libxcrypt + # + # mitigation: + # None at the moment. + # + # solution for future: + # Not possible right now. Upstream intend on depending on Perl for further + # configuration options. + # https://github.com/besser82/libxcrypt/issues/134#issuecomment-871833573 + # + # Therefore, on changes (inc. bumps): + # * You must check whether upstream have started providing tarballs with bootstrapped + # auto{conf,make}; + # + # * diff the build system changes! + # + if [[ ${NEED_BOOTSTRAP} == "yes" ]] ; then + # Facilitate our split variant build for compat + non-compat + eapply "${FILESDIR}"/${PN}-4.4.19-multibuild.patch + eautoreconf + fi +} + +src_configure() { + MULTIBUILD_VARIANTS=( + $(usev compat 'xcrypt_compat') + xcrypt_nocompat + ) + + MYPREFIX=${EPREFIX} + MYSYSROOT=${ESYSROOT} + + if target_is_not_host; then + # Hack to work around missing TARGET_CC support. + # See bug 949976. + if tc-is-clang; then + export CC="${CTARGET}-clang" + else + export CC="${CTARGET}-gcc" + fi + + local CHOST=${CTARGET} + + MYPREFIX= + MYSYSROOT=${ESYSROOT}/usr/${CTARGET} + + # Ensure we get compatible libdir + unset DEFAULT_ABI MULTILIB_ABIS + multilib_env + ABI=${DEFAULT_ABI} + + strip-unsupported-flags + fi + + if use headers-only; then + # Nothing is compiled which would affect the headers, so we set + # CC and PKG_CONFIG to ensure configure passes without defaulting + # to the unprefixed host variants e.g. "pkg-config" + local -x CC="$(tc-getBUILD_CC)" + local -x PKG_CONFIG="false" + fi + + # Doesn't work with LTO: bug #852917. + # https://github.com/besser82/libxcrypt/issues/24 + filter-lto + + append-ldflags $(test-flags-CCLD -Wl,--undefined-version) + + if use test; then + python_setup + fi + + multibuild_foreach_variant multilib-minimal_src_configure +} + +multilib_src_configure() { + local myconf=( + --disable-werror + --prefix="${MYPREFIX}/usr" + --libdir="${MYPREFIX}/usr/$(get_libdir)$(usev !system /xcrypt)" + --includedir="${MYPREFIX}/usr/include$(usev !system /xcrypt)" + --with-pkgconfigdir="${MYPREFIX}/usr/$(get_libdir)/pkgconfig" + --with-sysroot="${MYSYSROOT}" + ) + + tc-export PKG_CONFIG + + case "${MULTIBUILD_ID}" in + xcrypt_compat-*) + myconf+=( + --disable-static + --disable-xcrypt-compat-files + --enable-obsolete-api=yes + ) + ;; + xcrypt_nocompat-*) + myconf+=( + --enable-obsolete-api=no + $(use_enable static-libs static) + ) + ;; + *) die "Unexpected MULTIBUILD_ID: ${MULTIBUILD_ID}";; + esac + + ECONF_SOURCE="${S}" econf "${myconf[@]}" +} + +src_compile() { + use headers-only && return + + multibuild_foreach_variant multilib-minimal_src_compile +} + +multilib_src_test() { + emake check +} + +src_test() { + multibuild_foreach_variant multilib-minimal_src_test +} + +src_install() { + local DESTDIR=${D} + if target_is_not_host; then + DESTDIR=${ED}/usr/${CTARGET} + fi + + multibuild_foreach_variant multilib-minimal_src_install + + find "${ED}" -name '*.la' -delete || die + + if target_is_not_host; then + insinto /usr/${CTARGET}/usr/share + doins -r "${ED}/usr/share/doc" + rm -r "${ED}/usr/share/doc" || die + rmdir "${ED}/usr/share" || die + fi +} + +multilib_src_install() { + if use headers-only; then + emake DESTDIR="${DESTDIR}" install-nodist_includeHEADERS + else + emake DESTDIR="${DESTDIR}" install + fi +} + +pkg_preinst() { + # Verify we're not in a bad case like bug #843209 with broken symlinks. + # This can be dropped when, if ever, the split-usr && system && compat case + # is cleaned up in *_src_install. + local broken_symlinks=() + mapfile -d '' broken_symlinks < <( + find "${ED}" -xtype l -print0 + ) + + if [[ ${#broken_symlinks[@]} -gt 0 ]]; then + eerror "Broken symlinks found before merging!" + local symlink target resolved + for symlink in "${broken_symlinks[@]}" ; do + target="$(readlink "${symlink}")" + resolved="$(readlink -f "${symlink}")" + eerror " '${symlink}' -> '${target}' (${resolved})" + done + die "Broken symlinks found! Aborting to avoid damaging system. Please report a bug." + fi +} From 20cce2688a7711dd5997e2a12211ce5ddf41ceb8 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:30:08 +0000 Subject: [PATCH 251/291] sys-libs/pam: Sync with Gentoo It's from Gentoo commit 8df2f549be0aec01b5216589ff87b61c7389aa64. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-libs/pam/Manifest | 2 + ...am-1.7.1-r2.ebuild => pam-1.7.1-r3.ebuild} | 4 +- .../sys-libs/pam/pam-1.7.2.ebuild | 198 ++++++++++++++++++ 3 files changed, 202 insertions(+), 2 deletions(-) rename sdk_container/src/third_party/portage-stable/sys-libs/pam/{pam-1.7.1-r2.ebuild => pam-1.7.1-r3.ebuild} (98%) create mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/pam/pam-1.7.2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/pam/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/pam/Manifest index 3f78818310b..1c528fb780d 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/pam/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/pam/Manifest @@ -1,3 +1,5 @@ DIST Linux-PAM-1.7.1.tar.xz 510828 BLAKE2B 0a64d7dbf6bb7e3d2c36ea1f29c3217d3e43a1cc0ba8adf2ee8a117946a53bd26634ebd70ff3b99a72f7373df6694ee054dc7eddab04e43bbc8f5b0e9e56b3bc SHA512 0724c3636c10e2c7d98c9325bb9c20eb3e59b7cbc2f8fa7636b77af497524afe595b895386d7e6723fdb89247b94f6db6f179d552015ac78469beaa33e0413f0 DIST Linux-PAM-1.7.1.tar.xz.asc 801 BLAKE2B 566123f49e26862ffc2261db38e35914dd91175c9f66a4756b9a473808dfeda2a4dad25337afa5121ca68a2411a26249b0d40556a22385f4494d355d6c3b4047 SHA512 7d559895e7988ea815955a4788925597073f1a66204dc9f437de306e1b7a77f2f2a9f1bdb2827aba03444500c790fa03e4bba2c94a2089b23bdd6505f9c3601f +DIST Linux-PAM-1.7.2.tar.xz 511724 BLAKE2B d7ebfac4393af3f889fef973946f1e6d60f118f2e048448708c5fdf0ef7fa7780945cda3b0abf6e0e2e15bbc2dd23be52389efabd00647381b3bc971f1aadcd8 SHA512 b035c0abeb5afb6b3067341767ace6d68ded4c061870afff2ab9494713b1dc9d2ff0995a5d1f0852a49b6e8b2123a7cc2f40342e16c7863a58df3c102b9010c5 +DIST Linux-PAM-1.7.2.tar.xz.asc 833 BLAKE2B 86c4eb129af7afe8348eddf78d764c0658dd9597b62ed0657ea23cca80dd29a052cdef8f588abe3615a2a40062c210fe0c04cca29309dfb3dcb70d13be4ab8db SHA512 01f6e770e8a0eb60f76d95581f66c4eece6436ec8f2e5766e57a4240014ab43e5ad991fa7f77cfc4c57809a0e0c47ccf60118cb49dee790413cf824ebd80b879 DIST pam-1.7.0_p20241230.gh.tar.gz 719108 BLAKE2B c37daabae380ce75c630a0af1b9960676bc973c773025bc7f65ae87aebff4ca3b667e16ec9635c7677e8a00e6b26eb590f84b798529c3340cdc2c262e7e5649e SHA512 d9d53ddd420fe754c76303b99c37e5cc2eca3d4af9f64043f3f9e69c3abfc3c05d5a1efdbbdfb39ad46a301a0df7a18425d0e8c110c1d76bad3e62dfa97b61ef diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/pam/pam-1.7.1-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/pam/pam-1.7.1-r3.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/sys-libs/pam/pam-1.7.1-r2.ebuild rename to sdk_container/src/third_party/portage-stable/sys-libs/pam/pam-1.7.1-r3.ebuild index 31fa45adc1b..33791259ba1 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/pam/pam-1.7.1-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/pam/pam-1.7.1-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -30,7 +30,7 @@ else " S="${WORKDIR}/${MY_P}" - BDEPEND="verify-sig? ( sec-keys/openpgp-keys-pam )" + BDEPEND="verify-sig? ( ~sec-keys/openpgp-keys-pam-20230330 )" fi LICENSE="|| ( BSD GPL-2 )" diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/pam/pam-1.7.2.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/pam/pam-1.7.2.ebuild new file mode 100644 index 00000000000..fc1b63c5552 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/pam/pam-1.7.2.ebuild @@ -0,0 +1,198 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_P="Linux-${PN^^}-${PV}" + +# Avoid QA warnings +# Can reconsider w/ EAPI 8 and IDEPEND, bug #810979 +TMPFILES_OPTIONAL=1 + +inherit db-use flag-o-matic meson-multilib user-info + +DESCRIPTION="Linux-PAM (Pluggable Authentication Modules)" +HOMEPAGE="https://github.com/linux-pam/linux-pam" + +if [[ ${PV} == *_p* ]] ; then + PAM_COMMIT="e634a3a9be9484ada6e93970dfaf0f055ca17332" + SRC_URI=" + https://github.com/linux-pam/linux-pam/archive/${PAM_COMMIT}.tar.gz -> ${P}.gh.tar.gz + " + S="${WORKDIR}"/linux-${PN}-${PAM_COMMIT} +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/pam.asc + inherit verify-sig + + SRC_URI=" + https://github.com/linux-pam/linux-pam/releases/download/v${PV}/${MY_P}.tar.xz + verify-sig? ( https://github.com/linux-pam/linux-pam/releases/download/v${PV}/${MY_P}.tar.xz.asc ) + " + S="${WORKDIR}/${MY_P}" + + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-pam-20260122 )" +fi + +LICENSE="|| ( BSD GPL-2 )" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="audit berkdb elogind examples debug nis nls selinux systemd" +REQUIRED_USE="?? ( elogind systemd )" + +# meson.build specifically checks for bison and then byacc +# also requires xsltproc +BDEPEND+=" + acct-group/shadow + || ( sys-devel/bison dev-util/byacc ) + app-text/docbook-xsl-ns-stylesheets + dev-libs/libxslt + sys-devel/flex + virtual/pkgconfig + nls? ( sys-devel/gettext ) +" +DEPEND=" + virtual/libcrypt:=[${MULTILIB_USEDEP}] + >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] + audit? ( >=sys-process/audit-2.2.2[${MULTILIB_USEDEP}] ) + berkdb? ( >=sys-libs/db-4.8.30-r1:=[${MULTILIB_USEDEP}] ) + !berkdb? ( sys-libs/gdbm:=[${MULTILIB_USEDEP}] ) + elogind? ( >=sys-auth/elogind-254 ) + selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] ) + systemd? ( >=sys-apps/systemd-254:= ) + nis? ( + net-libs/libnsl:=[${MULTILIB_USEDEP}] + >=net-libs/libtirpc-0.2.4-r2:=[${MULTILIB_USEDEP}] + ) +" +RDEPEND="${DEPEND} + acct-group/shadow +" +PDEPEND=">=sys-auth/pambase-20200616" + +src_configure() { + # meson.build sets -Wl,--fatal-warnings and with e.g. mold, we get: + # cannot assign version `global` to symbol `pam_sm_open_session`: symbol not found + append-ldflags $(test-flags-CCLD -Wl,--undefined-version) + + # Do not let user's BROWSER setting mess us up, bug #549684 + unset BROWSER + + meson-multilib_src_configure +} + +multilib_src_configure() { + local machine_file="${T}/meson.${CHOST}.${ABI}.ini.local" + # Workaround for docbook5 not being packaged (bug #913087#c4) + # It's only used for validation of output, so stub it out. + # Also, stub out elinks+w3m which are only used for an index. + cat >> "${machine_file}" <<-EOF || die + [binaries] + xmlcatalog='true' + xmllint='true' + elinks='true' + w3m='true' + EOF + + local emesonargs=( + --native-file "${machine_file}" + + $(meson_feature audit) + $(meson_native_use_bool examples) + $(meson_use debug pam-debug) + $(meson_feature nis) + $(meson_feature nls i18n) + $(meson_feature selinux) + + -Disadir='.' + -Dxml-catalog="${BROOT}"/etc/xml/catalog + -Dsbindir="${EPREFIX}"/sbin + -Dsecuredir="${EPREFIX}"/$(get_libdir)/security + -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} + -Dhtmldir="${EPREFIX}"/usr/share/doc/${PF}/html + -Dpdfdir="${EPREFIX}"/usr/share/doc/${PF}/pdf + -Dvendordir="${EPREFIX}"/usr/share/pam + + $(meson_native_enabled docs) + + -Dpam_unix=enabled + + # TODO: wire this up now it's more useful as of 1.5.3 (bug #931117) + -Deconf=disabled + + # TODO: lastlog is enabled again for now by us as elogind support + # wasn't available at first. Even then, disabling lastlog will + # probably need a news item. + $(meson_native_use_feature systemd logind) + $(meson_native_use_feature elogind) + $(meson_feature !elibc_musl pam_lastlog) + ) + + if use berkdb; then + local dbver + dbver="$(db_findver sys-libs/db)" || die "could not find db version" + local -x CPPFLAGS="${CPPFLAGS} -I$(db_includedir "${dbver}")" + emesonargs+=( + -Ddb=db + -Ddb-uniquename="-${dbver}" + ) + else + emesonargs+=( + -Ddb=gdbm + ) + fi + + # This whole weird has_version libxcrypt block can go once + # musl systems have libxcrypt[system] if we ever make + # that mandatory. See bug #867991. + #if use elibc_musl && ! has_version sys-libs/libxcrypt[system] ; then + # # Avoid picking up symbol-versioned compat symbol on musl systems + # export ac_cv_search_crypt_gensalt_rn=no + # + # # Need to avoid picking up the libxcrypt headers which define + # # CRYPT_GENSALT_IMPLEMENTS_AUTO_ENTROPY. + # cp "${ESYSROOT}"/usr/include/crypt.h "${T}"/crypt.h || die + # append-cppflags -I"${T}" + #fi + + meson_src_configure +} + +multilib_src_install_all() { + find "${ED}" -type f -name '*.la' -delete || die + + fowners :shadow /sbin/unix_chkpwd + fperms g+s /sbin/unix_chkpwd + + # tmpfiles.eclass is impossible to use because + # there is the pam -> tmpfiles -> systemd -> pam dependency loop + dodir /usr/lib/tmpfiles.d + + cat ->> "${ED}"/usr/lib/tmpfiles.d/${CATEGORY}-${PN}.conf <<-_EOF_ + d /run/faillock 0755 root root + _EOF_ + use selinux && cat ->> "${ED}"/usr/lib/tmpfiles.d/${CATEGORY}-${PN}-selinux.conf <<-_EOF_ + d /run/sepermit 0755 root root + _EOF_ +} + +pkg_postinst() { + if [[ -n ${ROOT} ]]; then + # Portage does not currently update the gid on installed files + # based on ${EROOT}/etc/group. + local gid=$(egetent group shadow | cut -d: -f3) + if [[ -n ${gid} ]]; then + chgrp "${gid}" "${EROOT}/sbin/unix_chkpwd" && + chmod g+s "${EROOT}/sbin/unix_chkpwd" + fi + fi + ewarn "Some software with pre-loaded PAM libraries might experience" + ewarn "warnings or failures related to missing symbols and/or versions" + ewarn "after any update. While unfortunate this is a limit of the" + ewarn "implementation of PAM and the software, and it requires you to" + ewarn "restart the software manually after the update." + ewarn "" + ewarn "You can get a list of such software running a command like" + ewarn " lsof / | grep -E -i 'del.*libpam\\.so'" + ewarn "" + ewarn "Alternatively, simply reboot your system." +} From 2c96b0a125110ed2e0cf37a7e4e2f57c0cec8218 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:30:08 +0000 Subject: [PATCH 252/291] sys-libs/readline: Sync with Gentoo It's from Gentoo commit b669f8657d38d0f4ae42460bafc8a3304f6435c1. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../files/readline-8.3-iwd-crash.patch | 19 -- .../sys-libs/readline/readline-8.3_p1.ebuild | 258 ------------------ 2 files changed, 277 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/readline/files/readline-8.3-iwd-crash.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3_p1.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/readline/files/readline-8.3-iwd-crash.patch b/sdk_container/src/third_party/portage-stable/sys-libs/readline/files/readline-8.3-iwd-crash.patch deleted file mode 100644 index def5a5cb61b..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-libs/readline/files/readline-8.3-iwd-crash.patch +++ /dev/null @@ -1,19 +0,0 @@ -https://lists.gnu.org/archive/html/bug-readline/2025-07/msg00007.html -https://gitlab.archlinux.org/archlinux/packaging/packages/readline/-/issues/1 - -*** a/display.c Fri May 2 09:20:32 2025 ---- b/display.c Sun Jul 6 17:16:28 2025 -*************** -*** 784,788 **** - /* Useful shorthand used by rl_redisplay, update_line, rl_move_cursor_relative */ - #define INVIS_FIRST() (local_prompt_invis_chars[0]) -! #define WRAP_OFFSET(line, offset) ((line <= prompt_last_screen_line) ? local_prompt_invis_chars[line] : 0) - - #define W_OFFSET(line, offset) ((line) == 0 ? offset : 0) ---- 784,788 ---- - /* Useful shorthand used by rl_redisplay, update_line, rl_move_cursor_relative */ - #define INVIS_FIRST() (local_prompt_invis_chars[0]) -! #define WRAP_OFFSET(line, offset) ((line <= prompt_last_screen_line && local_prompt_invis_chars) ? local_prompt_invis_chars[line] : 0) - - #define W_OFFSET(line, offset) ((line) == 0 ? offset : 0) - diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3_p1.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3_p1.ebuild deleted file mode 100644 index 9cb20578f4c..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3_p1.ebuild +++ /dev/null @@ -1,258 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# There's no standard way of versioning the point releases upstream -# make anyway, so while this was added for RC versions, it's fine -# in general. -QA_PKGCONFIG_VERSION=$(ver_cut 1-2) -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc -inherit flag-o-matic multilib multilib-minimal preserve-libs toolchain-funcs verify-sig - -# Official patches -# See ftp://ftp.cwru.edu/pub/bash/readline-8.1-patches/ -PLEVEL="${PV##*_p}" -MY_PV="${PV/_p*}" -MY_PV="${MY_PV/_/-}" -MY_P="${PN}-${MY_PV}" -MY_PATCHES=() - -# Determine the patchlevel. -case ${PV} in - 9999|*_alpha*|*_beta*|*_rc*) - # Set a negative patchlevel to indicate that it's a pre-release. - PLEVEL=-1 - ;; - *_p*) - PLEVEL=${PV##*_p} - ;; - *) - PLEVEL=0 -esac - -DESCRIPTION="Another cute console display library" -HOMEPAGE="https://tiswww.case.edu/php/chet/readline/rltop.html https://git.savannah.gnu.org/cgit/readline.git" - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/readline.git" - EGIT_BRANCH=devel - inherit git-r3 -elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then - # It can be useful to have snapshots in the pre-release period once - # the first alpha is out, as various bugs get reported and fixed from - # the alpha, and the next pre-release is usually quite far away. - # - # i.e. if it's worth packaging the alpha, it's worth packaging a followup. - READLINE_COMMIT="7cf2d923617659d216db3210f6247740f7dde1d8" - SRC_URI="https://git.savannah.gnu.org/cgit/readline.git/snapshot/readline-${READLINE_COMMIT}.tar.gz -> ${P}-${READLINE_COMMIT}.tar.gz" - S=${WORKDIR}/${PN}-${READLINE_COMMIT} -else - SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz" - SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )" - S="${WORKDIR}/${MY_P}" - - if [[ ${PLEVEL} -gt 0 ]] ; then - # bash-5.1 -> bash51 - my_p=${PN}$(ver_rs 1-2 '' $(ver_cut 1-2)) - - patch_url= - my_patch_index= - - upstream_url_base="mirror://gnu/readline" - - for ((my_patch_index=1; my_patch_index <= ${PLEVEL} ; my_patch_index++)) ; do - printf -v mangled_patch_ver ${my_p}-%03d ${my_patch_index} - patch_url="${upstream_url_base}/${MY_P}-patches/${mangled_patch_ver}" - - SRC_URI+=" ${patch_url}" - SRC_URI+=" verify-sig? ( ${patch_url}.sig )" - - MY_PATCHES+=( "${DISTDIR}"/${mangled_patch_ver} ) - done - - unset my_p patch_url my_patch_index upstream_url_base - fi -fi - -LICENSE="GPL-3+" -SLOT="0/8" # subslot matches SONAME major -if (( PLEVEL >= 0 )); then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" -fi -IUSE="static-libs +unicode utils" - -RDEPEND=">=sys-libs/ncurses-5.9-r3:=[static-libs?,unicode(+)?,${MULTILIB_USEDEP}]" -DEPEND="${RDEPEND}" -BDEPEND=" - virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-chetramey ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-5.0-no_rpath.patch - "${FILESDIR}"/${PN}-7.0-headers.patch - "${FILESDIR}"/${PN}-8.0-headers.patch - "${FILESDIR}"/${PN}-8.3-iwd-crash.patch -) - -src_unpack() { - local patch - - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then - default - else - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig} - - for patch in "${MY_PATCHES[@]}"; do - verify-sig_verify_detached "${patch}"{,.sig} - done - fi - - unpack "${MY_P}.tar.gz" - - if [[ ${GENTOO_PATCH_VER} ]]; then - unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz" - fi - fi -} - -src_prepare() { - (( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}" - - default - - #(( PLEVEL < 0 )) && eautoreconf - - if use prefix && [[ -n ${STAGE} ]] ; then - # If we're bootstrapping, make a guess. We don't have pkg-config - # around yet. bug #818103. - # Incorrectly populating this leads to underlinked libreadline. - local ncurses_libs - local ncurses_libs_suffix=$(usex unicode w '') - - ncurses_libs="-lncurses${ncurses_libs_suffix}" - - if has_version "sys-libs/ncurses[tinfo(+)]" ; then - ncurses_libs+=" -ltinfo${ncurses_libs_suffix}" - fi - else - # Force ncurses linking, bug #71420. - # Use pkg-config to get the right values, bug #457558. - local ncurses_libs=$($(tc-getPKG_CONFIG) ncurses$(usex unicode w '') --libs || die) - fi - - sed -i \ - -e "/^SHLIB_LIBS=/s:=.*:='${ncurses_libs}':" \ - support/shobj-conf || die - sed -i \ - -e "/[[:space:]]*LIBS=.-lncurses/s:-lncurses:${ncurses_libs}:" \ - examples/rlfe/configure || die - - # Fix building under Gentoo/FreeBSD; upstream FreeBSD deprecated - # objformat for years, so we don't want to rely on that. - sed -i -e '/objformat/s:if .*; then:if true; then:' support/shobj-conf || die - - # For local readline headers - ln -s ../.. examples/rlfe/readline || die -} - -src_configure() { - # Fix implicit decls with widechar funcs - append-cppflags -D_GNU_SOURCE - # https://lists.gnu.org/archive/html/bug-readline/2010-07/msg00013.html - append-cppflags -Dxrealloc=_rl_realloc -Dxmalloc=_rl_malloc -Dxfree=_rl_free - - # Make sure configure picks a better ar than `ar`, bug #484866 - export ac_cv_prog_AR="$(tc-getAR)" - - # Force the test since we used sed above to force it. - export bash_cv_termcap_lib=ncurses - - # Control cross-compiling cases when we know the right answer. - # In cases where the C library doesn't support wide characters, readline - # itself won't work correctly, so forcing the answer below should be OK. - if tc-is-cross-compiler ; then - export bash_cv_func_sigsetjmp="present" - export bash_cv_func_ctype_nonascii="yes" - # bug #503312 - export bash_cv_wcwidth_broken="no" - fi - - # This is for rlfe, but we need to make sure LDFLAGS doesn't change - # so we can re-use the config cache file between the two. - append-ldflags -L. - - multilib-minimal_src_configure -} - -multilib_src_configure() { - local myeconfargs=( - --cache-file="${BUILD_DIR}"/config.cache - --with-curses - $(use_enable static-libs static) - ) - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" - - if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then - # Code is full of AC_TRY_RUN() - mkdir -p examples/rlfe || die - cd examples/rlfe || die - - ECONF_SOURCE="${S}"/examples/rlfe econf --cache-file="${BUILD_DIR}"/config.cache - fi -} - -multilib_src_compile() { - emake - - if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then - # Code is full of AC_TRY_RUN() - cd examples/rlfe || die - local l - for l in readline history ; do - ln -s ../../shlib/lib${l}$(get_libname)* lib${l}$(get_libname) || die - ln -s ../../lib${l}.a lib${l}.a || die - done - emake - fi -} - -multilib_src_install() { - default - - if multilib_is_native_abi ; then - if use utils && ! tc-is-cross-compiler; then - dobin examples/rlfe/rlfe - fi - fi -} - -multilib_src_install_all() { - HTML_DOCS="doc/history.html doc/readline.html doc/rluserman.html" einstalldocs - - dodoc USAGE - docinto ps - dodoc doc/*.ps -} -pkg_preinst() { - # bug #29865 - # Reappeared in bug #595324 with paludis so keeping this for now... - preserve_old_lib \ - /$(get_libdir)/lib{history,readline}$(get_libname 4) \ - /$(get_libdir)/lib{history,readline}$(get_libname 5) \ - /$(get_libdir)/lib{history,readline}$(get_libname 6) \ - /$(get_libdir)/lib{history,readline}$(get_libname 7) -} - -pkg_postinst() { - preserve_old_lib_notify \ - /$(get_libdir)/lib{history,readline}$(get_libname 4) \ - /$(get_libdir)/lib{history,readline}$(get_libname 5) \ - /$(get_libdir)/lib{history,readline}$(get_libname 6) \ - /$(get_libdir)/lib{history,readline}$(get_libname 7) -} From b1512f3a17c051df400ed6d8e8784477dad705e8 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:30:08 +0000 Subject: [PATCH 253/291] sys-libs/talloc: Sync with Gentoo It's from Gentoo commit f67cd292bcbfe5d7ff68e24d168d98f30f67c7da. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-libs/talloc/Manifest | 1 + .../sys-libs/talloc/talloc-2.4.4.ebuild | 132 ++++++++++++++++++ 2 files changed, 133 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/talloc/talloc-2.4.4.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/talloc/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/talloc/Manifest index f8f3d93a234..742c16d8548 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/talloc/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/talloc/Manifest @@ -1,2 +1,3 @@ DIST talloc-2.4.2.tar.gz 679750 BLAKE2B 1f836d6b11e096e399ad7b99ad4abd3c140e75ee307695659c35b89eca600de247e5432bce523a299334f20ca2dad4c726b783a94c546b67fe25b2b7199b2915 SHA512 fb91665ffbe0cce96b1359940ff3ed21330c81c5331140788a26aa94f82b50492176e6000ff54b31d1a434bb1cb53a6a2c7894153545252a1fd91bda7c05a213 DIST talloc-2.4.3.tar.gz 684092 BLAKE2B 5299ea4f19afd6b623f0c98514bdf4ae80121af3f4b38963cf2d39a8a9fdac3bd4a3119a606bc04f2a48a991bb98e7a66643e26e4f68427c64d3675b838ccc2d SHA512 7174a069dd3d4ebf8c04fee3434fd50269015bb8f039839e7e7723f431d089b66fb0167e8893bff2d1c392de1ac33665e5b278168246da30d528d522b0e1d5bd +DIST talloc-2.4.4.tar.gz 684541 BLAKE2B 6d30a6d81e516a3361a9bb7bd9d0a039b65dc774828a836fda0a9a2f9efa2006a136a8ccff0103b28c12daa9cf75bd4d8ee8b065f9559a93dd1d3cb1132f716a SHA512 3273ef4f2de463293a515df8269cd585c46a1cae1889455d7c3438399541769cb5c55944ad77257ae6498cecbcc0c65bc81843b70d1f98b5e7fd107f67eec867 diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/talloc/talloc-2.4.4.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/talloc/talloc-2.4.4.ebuild new file mode 100644 index 00000000000..393ee87d431 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/talloc/talloc-2.4.4.ebuild @@ -0,0 +1,132 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..14} ) +PYTHON_REQ_USE="threads(+)" +inherit waf-utils python-single-r1 multilib-minimal flag-o-matic + +DESCRIPTION="Samba talloc library" +HOMEPAGE="https://talloc.samba.org/" +SRC_URI="https://www.samba.org/ftp/${PN}/${P}.tar.gz" + +LICENSE="GPL-3 LGPL-3+ LGPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris" +IUSE="compat +python test valgrind" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +RESTRICT="!test? ( test )" + +RDEPEND=" + !elibc_SunOS? ( + !elibc_Darwin? ( + dev-libs/libbsd[${MULTILIB_USEDEP}] + ) + ) + python? ( ${PYTHON_DEPS} ) +" +# Valgrind is automagic here but it's a build-only dep so it's not so bad. +DEPEND=" + ${RDEPEND} + valgrind? ( dev-debug/valgrind ) +" +BDEPEND=" + ${PYTHON_DEPS} + dev-libs/libxslt + sys-devel/gettext +" + +WAF_BINARY="${S}/buildtools/bin/waf" + +MULTILIB_WRAPPED_HEADERS=( + # python goes only for native + /usr/include/pytalloc.h +) + +pkg_setup() { + # Try to turn off distcc and ccache for people that have a problem with it + export DISTCC_DISABLE=1 + export CCACHE_DISABLE=1 + + python-single-r1_pkg_setup +} + +src_prepare() { + default + + if [[ ${CHOST} == *-darwin* ]] ; then + # Drop irritating ABI names (e.g. cpython-37m) + # We're only installing one implementation anyway + sed -i "s/+ conf.all_envs\['default'\]\['PYTHON_SO_ABI_FLAG'\]//" wscript || die + sed -i "s/name = bld.pyembed_libname('pytalloc-util')/name = 'pytalloc-util'/" wscript || die + fi + + if use test ; then + # TODO: Fix python tests to run w/ USE=python. + truncate -s0 test_pytalloc.py || die + fi + + # WAF + multilib_copy_sources +} + +multilib_src_configure() { + local extra_opts=( + --libdir="${EPREFIX}/usr/$(get_libdir)" + --disable-dependency-tracking + --disable-warnings-as-errors + + $(usev compat --enable-talloc-compat1) + $(multilib_native_usex python '' --disable-python) + $([[ ${CHOST} == *-solaris* ]] && echo '--disable-symbol-versions') + ) + + append-ldflags $(test-flags-CCLD -Wl,--undefined-version) # bug 914712 + + waf-utils_src_configure "${extra_opts[@]}" +} + +multilib_src_compile() { + waf-utils_src_compile +} + +multilib_src_install() { + waf-utils_src_install + + # waf is stupid, and no, we can't fix the build-system, since it's provided + # as a brilliant binary blob thats decompressed on the fly + if [[ ${CHOST} == *-darwin* ]] ; then + install_name_tool \ + -id "${EPREFIX}"/usr/$(get_libdir)/libtalloc.2.dylib \ + "${ED}"/usr/$(get_libdir)/libtalloc.${PV}.dylib || die + + if use python ; then + install_name_tool \ + -id "${EPREFIX}"/usr/$(get_libdir)/libpytalloc-util.2.dylib \ + "${ED}"/usr/$(get_libdir)/libpytalloc-util.${PV}.dylib || die + install_name_tool \ + -change "${BUILD_DIR}/bin/default/libtalloc.dylib" \ + "${EPREFIX}"/usr/$(get_libdir)/libtalloc.2.dylib \ + "${ED}"/usr/$(get_libdir)/libpytalloc-util.${PV}.dylib || die + + install_name_tool \ + -id "${EPREFIX}"/usr/$(get_libdir)/libpytalloc-util.dylib \ + "${ED}"/usr/$(get_libdir)/libpytalloc-util.dylib || die + install_name_tool \ + -change "${BUILD_DIR}/bin/default/libtalloc.dylib" \ + "${EPREFIX}"/usr/$(get_libdir)/libtalloc.2.dylib \ + "${ED}"/usr/$(get_libdir)/libpytalloc-util.dylib || die + + install_name_tool \ + -change "${BUILD_DIR}/bin/default/libpytalloc-util.dylib" \ + "${EPREFIX}"/usr/$(get_libdir)/libpytalloc-util.dylib \ + "${D}"$(python_get_sitedir)/talloc*.bundle || die + install_name_tool \ + -change "${BUILD_DIR}/bin/default/libtalloc.dylib" \ + "${EPREFIX}"/usr/$(get_libdir)/libtalloc.2.dylib \ + "${D}"$(python_get_sitedir)/talloc*.bundle || die + fi + fi +} From f3968b7101bbc2398b7e093de4ac3383ec50a93c Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:30:08 +0000 Subject: [PATCH 254/291] sys-libs/tdb: Sync with Gentoo It's from Gentoo commit 5944f1af8ce27d2700f761ba2c1c196ebc87f83a. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-libs/tdb/Manifest | 1 + .../sys-libs/tdb/tdb-1.4.15.ebuild | 81 +++++++++++++++++++ 2 files changed, 82 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/tdb/tdb-1.4.15.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/tdb/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/tdb/Manifest index d3d4676b5d0..3ebd4a53c57 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/tdb/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/tdb/Manifest @@ -1,3 +1,4 @@ DIST tdb-1.4.12.tar.gz 748827 BLAKE2B a21d4d6335306ed43d099629960856b1f4e94be046d43b4c3d1cb7a1d929dcb7146f385d4a1c2e8ef3a22af73f7e4db9d2a6f032a7501946dd7fdcbead377661 SHA512 f41644ae29da7fed26959e4f2e3664e58ec65681b0b7115fbb296a7a8c5642c8190dac6e16e5704b322469466dd5aa15c1f7f72df8226ac9c695b5b10ac85b66 DIST tdb-1.4.13.tar.gz 751677 BLAKE2B 25b8b3246dd0f19c8522a14b70df32b08f6cff9c61dc643e84f3c3d65be55acae5963b19bb271cff96f226c494f790c6763bcacd8513fe64c5e4f8c89e2d4754 SHA512 23cbabaf272947d65ab6ba22481ecbf2b86889f860b223ae650101fbf3c6a19acd179d8da15013502076172876acbf3ee3695e9cdeeaa721ed30920b1bd4937d DIST tdb-1.4.14.tar.gz 755817 BLAKE2B 479e0ee3d6d37b2ff9b9b0a84652b7b0b757b80eeb33954020860284d79d2ec5658f63e06b0966de2985bb3d495db9e65f0035caec38b887af337c8d2e7925fb SHA512 6bc9fe158ff6229d63338e83a6538b6370d82e68039756a8e43fa1afca76cfbfbf182b7cbbf7a3cfab51226b8de15a9fde94af2bb231ba265a83c27a660032eb +DIST tdb-1.4.15.tar.gz 753485 BLAKE2B e867c8f4e9712c1a0ed10dd2d35e9cd51819ff722e4e710efde8b1ed8e20575e752d020fb0b6bc8658a720ea17491c07e30fa0b88c515bfb830f83bf128e6ee4 SHA512 1d2aeffaa4192dbd05b6f6356e7ceed50c4c18ed7080f6ecc9b7731cd7875e9822feafe1c1b281fc369fcd01c972441b5aed4104a421f0f985925815bfa4ed09 diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/tdb/tdb-1.4.15.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/tdb/tdb-1.4.15.ebuild new file mode 100644 index 00000000000..93bf856ea6d --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/tdb/tdb-1.4.15.ebuild @@ -0,0 +1,81 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..14} ) +PYTHON_REQ_USE="threads(+)" +inherit flag-o-matic waf-utils multilib-minimal python-single-r1 + +DESCRIPTION="Simple database API" +HOMEPAGE="https://tdb.samba.org/" +SRC_URI="https://samba.org/ftp/tdb/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="python test" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-libs/libbsd[${MULTILIB_USEDEP}] + python? ( ${PYTHON_DEPS} ) +" +DEPEND=" + ${RDEPEND} + virtual/libcrypt +" +BDEPEND=" + ${PYTHON_DEPS} + app-text/docbook-xml-dtd:4.2 +" + +WAF_BINARY="${S}/buildtools/bin/waf" + +src_prepare() { + default + + python_fix_shebang . + + if use test ; then + # TODO: Fix python tests to run w/ USE=python. + truncate -s0 python/tests/simple.py || die + fi + + multilib_copy_sources +} + +multilib_src_configure() { + #MAKEOPTS+=" -j1" + + local extra_opts=( + --libdir="${EPREFIX}/usr/$(get_libdir)" + --disable-dependency-tracking + --disable-warnings-as-errors + ) + + if ! multilib_is_native_abi || ! use python ; then + extra_opts+=( --disable-python ) + fi + + append-ldflags $(test-flags-CCLD -Wl,--undefined-version) # bug 914857 + + waf-utils_src_configure "${extra_opts[@]}" +} + +multilib_src_compile() { + waf-utils_src_compile +} + +multilib_src_test() { + # the default src_test runs 'make test' and 'make check', letting + # the tests fail occasionally (reason: unknown) + emake check WAF_BIN="${WAF_BINARY}" +} + +multilib_src_install() { + waf-utils_src_install + use python && python_optimize +} From ea2eb64050d492f7d7f35350386104547e3a12d3 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:30:09 +0000 Subject: [PATCH 255/291] sys-libs/timezone-data: Sync with Gentoo It's from Gentoo commit b4f100034a72e77e3cfeb6d3c94a5540c3ad3020. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-libs/timezone-data/timezone-data-2025c.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/timezone-data/timezone-data-2025c.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/timezone-data/timezone-data-2025c.ebuild index 6acda8adc9b..92ec75a9da5 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/timezone-data/timezone-data-2025c.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/timezone-data/timezone-data-2025c.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -14,7 +14,7 @@ S="${WORKDIR}"/tzdb-${PV} LICENSE="BSD public-domain" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="nls leaps-timezone zic-slim" DEPEND="nls? ( virtual/libintl )" From 0fcb06b9e5b348f7bf7404bc1bda3603c08aca60 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:30:10 +0000 Subject: [PATCH 256/291] sys-libs/zlib: Sync with Gentoo It's from Gentoo commit fcabbc94ef6a4e2fac13e6bcc0bb03dc17d63f0d. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-libs/zlib/Manifest | 2 + .../files/zlib-1.3.2-minizip-install.patch | 25 +++ .../sys-libs/zlib/zlib-1.3.2-r1.ebuild | 177 ++++++++++++++++++ .../sys-libs/zlib/zlib-1.3.2.ebuild | 175 +++++++++++++++++ 4 files changed, 379 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/zlib/files/zlib-1.3.2-minizip-install.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/zlib/zlib-1.3.2-r1.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/zlib/zlib-1.3.2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/zlib/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/zlib/Manifest index 8a869ad0f16..0de9a5ea492 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/zlib/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/zlib/Manifest @@ -1,2 +1,4 @@ DIST zlib-1.3.1.tar.xz 1305740 BLAKE2B 42d109223801a493de6d52e7343403d7fc3234a6ca816425fe41ac9c18019b01b93841acd28a235e99f2256a6a17f93624e96b2ddb58d588c8190a6bedb82910 SHA512 1e8e70b362d64a233591906a1f50b59001db04ca14aaffad522198b04680be501736e7d536b4191e2f99767e7001ca486cd802362cca2be05d5d409b83ea732d DIST zlib-1.3.1.tar.xz.asc 235 BLAKE2B b135336ef55a0c4b8e219e760bbe04bad082c405246ce51a2b373c3dfba0b05cb1e6f539363972f4cabd8290be1db1fdb2fc47fb562c6c612a08d9393065f75b SHA512 d181e9772a8139b3b2f3f42b994a65a966101db35eb46b5c84021c5eb0cc3b4511eb5e9172c509483bd9f7015794b15cfca78ed0959bd91e8216dc12c1c6e668 +DIST zlib-1.3.2.tar.xz 1320064 BLAKE2B fd3a6e4c275a925f4814de487075c136e28421ea34ca7f93141781e7a414b392cd849fbf96cfcb24e825441df5f3c64be54276c0f617dc2d5c865d4ab260e83c SHA512 cf3d49fbabddc57cca99858feeca8f910e9de42a16014cddd406814d2d24ee33fee2af3805d7efbb1b04b05f55818092b000daf82502b675df65f2512c353f73 +DIST zlib-1.3.2.tar.xz.asc 235 BLAKE2B 3d25ad364ecaf8ad235990e5072d4d8d4f7fe4c1daa91717e275b59655a724ccecdabdbeeda4f573ee87b05b6f9583d0f7fff813f6d0b1c596efc18767a5f798 SHA512 d6d608074cd15509b1f4a5465e4ae75e56e2cabba9ad1ed4e1276d2207c53429a080099b53581d4fc7be9c476eda1a5e300450db0022b75b3429de97e8df4a85 diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/zlib/files/zlib-1.3.2-minizip-install.patch b/sdk_container/src/third_party/portage-stable/sys-libs/zlib/files/zlib-1.3.2-minizip-install.patch new file mode 100644 index 00000000000..6622b80a945 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/zlib/files/zlib-1.3.2-minizip-install.patch @@ -0,0 +1,25 @@ +https://github.com/madler/zlib/issues/1164 +https://github.com/madler/zlib/pull/1165 + +From 36ff1be48ef696cc67b0855f7c8537ce0276210d Mon Sep 17 00:00:00 2001 +From: Rui Chen <rui@chenrui.dev> +Date: Tue, 17 Feb 2026 10:48:39 -0500 +Subject: [PATCH] contrib/minizip: install ints.h + +Signed-off-by: Rui Chen <rui@chenrui.dev> +--- + contrib/minizip/Makefile.am | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/contrib/minizip/Makefile.am b/contrib/minizip/Makefile.am +index d343011eb..b7dea4f7e 100644 +--- a/contrib/minizip/Makefile.am ++++ b/contrib/minizip/Makefile.am +@@ -27,5 +27,6 @@ libminizip_la_LDFLAGS = $(AM_LDFLAGS) -version-info 1:0:0 -lz + minizip_includedir = $(includedir)/minizip + minizip_include_HEADERS = \ ++ ints.h \ + ioapi.h \ + mztools.h \ + unzip.h \ + diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/zlib/zlib-1.3.2-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/zlib/zlib-1.3.2-r1.ebuild new file mode 100644 index 00000000000..678ee160ec0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/zlib/zlib-1.3.2-r1.ebuild @@ -0,0 +1,177 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Worth keeping an eye on 'develop' branch upstream for possible backports. +AUTOTOOLS_AUTO_DEPEND="no" +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/madler.asc +inherit autotools dot-a edo multilib-minimal flag-o-matic verify-sig + +DESCRIPTION="Standard (de)compression library" +HOMEPAGE="https://zlib.net/" +SRC_URI=" + https://zlib.net/${P}.tar.xz + https://zlib.net/fossils/${P}.tar.xz + https://zlib.net/current/beta/${P}.tar.xz + https://github.com/madler/zlib/releases/download/v${PV}/${P}.tar.xz + verify-sig? ( + https://zlib.net/${P}.tar.xz.asc + https://github.com/madler/zlib/releases/download/v${PV}/${P}.tar.xz.asc + ) +" + +LICENSE="ZLIB" +SLOT="0/1" # subslot = SONAME +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="minizip static-libs" + +RDEPEND="!sys-libs/zlib-ng[compat]" +DEPEND="${RDEPEND}" +BDEPEND=" + minizip? ( ${AUTOTOOLS_DEPEND} ) + verify-sig? ( sec-keys/openpgp-keys-madler ) +" + +PATCHES=( + # Don't install unexpected & unused crypt.h header (which would clash with other pkgs) + # Pending upstream. bug #658536 + "${FILESDIR}"/${PN}-1.2.11-minizip-drop-crypt-header.patch + + # Respect AR, RANLIB, NM during build. Pending upstream. bug #831628 + "${FILESDIR}"/${PN}-1.3.1-configure-fix-AR-RANLIB-NM-detection.patch + + # On Darwin, don't force /usr/bin/libtool as AR. bug #924839 + "${FILESDIR}"/${PN}-1.3.1-configure-fix-AR-libtool-on-darwin.patch + + "${FILESDIR}"/${PN}-1.3.2-minizip-install.patch +) + +src_prepare() { + default + + if use minizip ; then + cd contrib/minizip || die + eautoreconf + fi + + case ${CHOST} in + *-mingw*|mingw*) + # Uses preconfigured Makefile rather than configure script + multilib_copy_sources + + ;; + esac +} + +src_configure() { + use static-libs && lto-guarantee-fat + multilib-minimal_src_configure +} + +multilib_src_configure() { + append-ldflags $(test-flags-CCLD -Wl,--undefined-version) + + case ${CHOST} in + *-mingw*|mingw*) + ;; + + *) + # bug #347167 + local uname=$("${BROOT}"/usr/share/gnuconfig/config.sub "${CHOST}" | cut -d- -f3) + + # for GNU Hurd + if [[ ${uname} == gnu ]] ; then + uname=GNU + fi + + local myconf=( + --shared + --prefix="${EPREFIX}/usr" + --libdir="${EPREFIX}/usr/$(get_libdir)" + ${uname:+--uname=${uname}} + ) + + # Not an autoconf script, so can't use econf + edo "${S}"/configure "${myconf[@]}" + + ;; + esac + + if use minizip ; then + local minizipdir="contrib/minizip" + mkdir -p "${BUILD_DIR}/${minizipdir}" || die + + cd ${minizipdir} || die + ECONF_SOURCE="${S}/${minizipdir}" econf $(use_enable static-libs static) + fi +} + +multilib_src_compile() { + case ${CHOST} in + *-mingw*|mingw*) + emake -f win32/Makefile.gcc STRIP=true PREFIX=${CHOST}- + sed \ + -e 's|@prefix@|'"${EPREFIX}"'/usr|g' \ + -e 's|@exec_prefix@|${prefix}|g' \ + -e 's|@libdir@|${exec_prefix}/'$(get_libdir)'|g' \ + -e 's|@sharedlibdir@|${exec_prefix}/'$(get_libdir)'|g' \ + -e 's|@includedir@|${prefix}/include|g' \ + -e 's|@VERSION@|'${PV}'|g' \ + zlib.pc.in > zlib.pc || die + ;; + + *) + emake + + ;; + esac + + use minizip && emake -C contrib/minizip +} + +multilib_src_install() { + case ${CHOST} in + *-mingw*|mingw*) + emake -f win32/Makefile.gcc install \ + BINARY_PATH="${ED}/usr/bin" \ + LIBRARY_PATH="${ED}/usr/$(get_libdir)" \ + INCLUDE_PATH="${ED}/usr/include" \ + SHARED_MODE=1 + + # Overwrites zlib.pc created from win32/Makefile.gcc, bug #620136 + insinto /usr/$(get_libdir)/pkgconfig + doins zlib.pc + + ;; + + *) + emake install DESTDIR="${D}" LDCONFIG=: + + ;; + esac + + if use minizip ; then + emake -C contrib/minizip install DESTDIR="${D}" + + # This might not exist if slibtool is used. + # bug #816756 + rm -f "${ED}"/usr/$(get_libdir)/libminizip.la || die + fi + + if ! use static-libs ; then + # bug #419645 + rm "${ED}"/usr/$(get_libdir)/libz.a || die + fi +} + +multilib_src_install_all() { + strip-lto-bytecode + + dodoc FAQ README ChangeLog doc/*.txt + + if use minizip ; then + dodoc contrib/minizip/*.txt + doman contrib/minizip/*.1 + fi +} diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/zlib/zlib-1.3.2.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/zlib/zlib-1.3.2.ebuild new file mode 100644 index 00000000000..4e1b9e6eeb1 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/zlib/zlib-1.3.2.ebuild @@ -0,0 +1,175 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Worth keeping an eye on 'develop' branch upstream for possible backports. +AUTOTOOLS_AUTO_DEPEND="no" +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/madler.asc +inherit autotools dot-a edo multilib-minimal flag-o-matic verify-sig + +DESCRIPTION="Standard (de)compression library" +HOMEPAGE="https://zlib.net/" +SRC_URI=" + https://zlib.net/${P}.tar.xz + https://zlib.net/fossils/${P}.tar.xz + https://zlib.net/current/beta/${P}.tar.xz + https://github.com/madler/zlib/releases/download/v${PV}/${P}.tar.xz + verify-sig? ( + https://zlib.net/${P}.tar.xz.asc + https://github.com/madler/zlib/releases/download/v${PV}/${P}.tar.xz.asc + ) +" + +LICENSE="ZLIB" +SLOT="0/1" # subslot = SONAME +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="minizip static-libs" + +RDEPEND="!sys-libs/zlib-ng[compat]" +DEPEND="${RDEPEND}" +BDEPEND=" + minizip? ( ${AUTOTOOLS_DEPEND} ) + verify-sig? ( sec-keys/openpgp-keys-madler ) +" + +PATCHES=( + # Don't install unexpected & unused crypt.h header (which would clash with other pkgs) + # Pending upstream. bug #658536 + "${FILESDIR}"/${PN}-1.2.11-minizip-drop-crypt-header.patch + + # Respect AR, RANLIB, NM during build. Pending upstream. bug #831628 + "${FILESDIR}"/${PN}-1.3.1-configure-fix-AR-RANLIB-NM-detection.patch + + # On Darwin, don't force /usr/bin/libtool as AR. bug #924839 + "${FILESDIR}"/${PN}-1.3.1-configure-fix-AR-libtool-on-darwin.patch +) + +src_prepare() { + default + + if use minizip ; then + cd contrib/minizip || die + eautoreconf + fi + + case ${CHOST} in + *-mingw*|mingw*) + # Uses preconfigured Makefile rather than configure script + multilib_copy_sources + + ;; + esac +} + +src_configure() { + use static-libs && lto-guarantee-fat + multilib-minimal_src_configure +} + +multilib_src_configure() { + append-ldflags $(test-flags-CCLD -Wl,--undefined-version) + + case ${CHOST} in + *-mingw*|mingw*) + ;; + + *) + # bug #347167 + local uname=$("${BROOT}"/usr/share/gnuconfig/config.sub "${CHOST}" | cut -d- -f3) + + # for GNU Hurd + if [[ ${uname} == gnu ]] ; then + uname=GNU + fi + + local myconf=( + --shared + --prefix="${EPREFIX}/usr" + --libdir="${EPREFIX}/usr/$(get_libdir)" + ${uname:+--uname=${uname}} + ) + + # Not an autoconf script, so can't use econf + edo "${S}"/configure "${myconf[@]}" + + ;; + esac + + if use minizip ; then + local minizipdir="contrib/minizip" + mkdir -p "${BUILD_DIR}/${minizipdir}" || die + + cd ${minizipdir} || die + ECONF_SOURCE="${S}/${minizipdir}" econf $(use_enable static-libs static) + fi +} + +multilib_src_compile() { + case ${CHOST} in + *-mingw*|mingw*) + emake -f win32/Makefile.gcc STRIP=true PREFIX=${CHOST}- + sed \ + -e 's|@prefix@|'"${EPREFIX}"'/usr|g' \ + -e 's|@exec_prefix@|${prefix}|g' \ + -e 's|@libdir@|${exec_prefix}/'$(get_libdir)'|g' \ + -e 's|@sharedlibdir@|${exec_prefix}/'$(get_libdir)'|g' \ + -e 's|@includedir@|${prefix}/include|g' \ + -e 's|@VERSION@|'${PV}'|g' \ + zlib.pc.in > zlib.pc || die + ;; + + *) + emake + + ;; + esac + + use minizip && emake -C contrib/minizip +} + +multilib_src_install() { + case ${CHOST} in + *-mingw*|mingw*) + emake -f win32/Makefile.gcc install \ + BINARY_PATH="${ED}/usr/bin" \ + LIBRARY_PATH="${ED}/usr/$(get_libdir)" \ + INCLUDE_PATH="${ED}/usr/include" \ + SHARED_MODE=1 + + # Overwrites zlib.pc created from win32/Makefile.gcc, bug #620136 + insinto /usr/$(get_libdir)/pkgconfig + doins zlib.pc + + ;; + + *) + emake install DESTDIR="${D}" LDCONFIG=: + + ;; + esac + + if use minizip ; then + emake -C contrib/minizip install DESTDIR="${D}" + + # This might not exist if slibtool is used. + # bug #816756 + rm -f "${ED}"/usr/$(get_libdir)/libminizip.la || die + fi + + if ! use static-libs ; then + # bug #419645 + rm "${ED}"/usr/$(get_libdir)/libz.a || die + fi +} + +multilib_src_install_all() { + strip-lto-bytecode + + dodoc FAQ README ChangeLog doc/*.txt + + if use minizip ; then + dodoc contrib/minizip/*.txt + doman contrib/minizip/*.1 + fi +} From 11551eef3d7f93b89595b33739c1b0fd2bd6745c Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:30:15 +0000 Subject: [PATCH 257/291] sys-process/procps: Sync with Gentoo It's from Gentoo commit dd1f3445914bf214fb1b2b11117ca7e898cf793a. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../sys-process/procps/Manifest | 3 +- .../procps-4.0.4-fix-systemd-linkage.patch | 27 ---------- .../procps-4.0.4-fix-tests-multilib.patch | 52 ------------------- .../files/procps-4.0.4-sysctl-manpage.patch | 33 ------------ .../procps-4.0.5-sysctl-ignore_failure.patch | 21 ++++++++ .../files/procps-4.0.6-pid-off-by-one.patch | 50 ++++++++++++++++++ .../procps-4.0.6-sysctl-ignore_failure.patch | 41 +++++++++++++++ ...4.0.5-r2.ebuild => procps-4.0.5-r4.ebuild} | 9 ++-- ...ps-4.0.4-r2.ebuild => procps-4.0.6.ebuild} | 46 ++++++++++------ 9 files changed, 149 insertions(+), 133 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.4-fix-systemd-linkage.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.4-fix-tests-multilib.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.4-sysctl-manpage.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.5-sysctl-ignore_failure.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.6-pid-off-by-one.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.6-sysctl-ignore_failure.patch rename sdk_container/src/third_party/portage-stable/sys-process/procps/{procps-4.0.5-r2.ebuild => procps-4.0.5-r4.ebuild} (91%) rename sdk_container/src/third_party/portage-stable/sys-process/procps/{procps-4.0.4-r2.ebuild => procps-4.0.6.ebuild} (64%) diff --git a/sdk_container/src/third_party/portage-stable/sys-process/procps/Manifest b/sdk_container/src/third_party/portage-stable/sys-process/procps/Manifest index 12b2b155619..8646cfbef25 100644 --- a/sdk_container/src/third_party/portage-stable/sys-process/procps/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-process/procps/Manifest @@ -1,2 +1,3 @@ -DIST procps-ng-4.0.4.tar.xz 1401540 BLAKE2B 63b972666ef9e92042be96739ffa15c787d0346b2d3ffcb0d240b0a4e999dc90024b2c5b058df683dd9d2c436ceb812abd0b115cc877a6ca1023988b86de443f SHA512 94375544e2422fefc23d7634063c49ef1be62394c46039444f85e6d2e87e45cfadc33accba5ca43c96897b4295bfb0f88d55a30204598ddb26ef66f0420cefb4 DIST procps-ng-4.0.5.tar.xz 1517672 BLAKE2B 4b273ac7737202147fbf392995da1c5ff385df2b53ad84180b6412dc45c2a671e81d7659c0a5824c0d8c19fa37cbf2e58b0545841c74399b3717a9f27fd26c23 SHA512 c27730743210cf850c4af98e1fb81bc8ee8d550b07b9eedb34a5b9d661263d0f1bc92c4e73802a0ed8d4405854aef4bc542bff283c28e8fbb6dabb967f9e4359 +DIST procps-ng-4.0.6.tar.xz 1580516 BLAKE2B 20acd79cf60e2967f82724ef432a239c29fd12fc6d24dac5d606eac6a167a7ad46001c08796fa2a910afc709d1e7c3ee1b9260d9753339f423b21fb457264c6b SHA512 c499aa14b6c94eda3a455bfe0d2d3c74c79dd718bffbd20207bd0831cb87725b83a76e4ee537a49ddf112bd1248a156d35da00035cbcd4c22037a20dcb4bdc9c +DIST procps-ng-4.0.6.tar.xz.asc 833 BLAKE2B baaf361cf5e173fafa090930c2cd06769b9cecb95c5b0c41e38d1d5d4ac342b098e3906b836c610f177c8a582c4fe1bc76b8fa8afb111c85c394137d7fad19b7 SHA512 a5cee151b5a1591efad4f91ca75e43e0b7fc9d2d403db1d71d7e0937b8916c1fcffaa22369ca5289e2e5989cca35c3a6073efcfc969026a59738e793bdf28331 diff --git a/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.4-fix-systemd-linkage.patch b/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.4-fix-systemd-linkage.patch deleted file mode 100644 index 32f4d6da6dc..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.4-fix-systemd-linkage.patch +++ /dev/null @@ -1,27 +0,0 @@ -https://gitlab.com/procps-ng/procps/-/commit/ca004d4657d5e8b468a4552ede429be53193a3a9 - -From ca004d4657d5e8b468a4552ede429be53193a3a9 Mon Sep 17 00:00:00 2001 -From: Craig Small <csmall@dropbear.xyz> -Date: Thu, 31 Aug 2023 22:24:23 +1000 -Subject: [PATCH] build-sys: Add systemd/elogind to w - -Depending on the compiler flags, w needs to be explictly linked -to libsystemd or elogind even though libproc2 is linked to it. - -Signed-off-by: Craig Small <csmall@dropbear.xyz> ---- a/Makefile.am -+++ b/Makefile.am -@@ -149,6 +149,13 @@ endif - - dist_man_MANS += man/w.1 - src_w_SOURCES = src/w.c local/fileutils.c -+src_w_LDADD = $(LDADD) -+if WITH_SYSTEMD -+src_w_LDADD += @SYSTEMD_LIBS@ -+endif -+if WITH_ELOGIND -+src_w_LDADD += @ELOGIND_LIBS@ -+endif - else - EXTRA_DIST += man/w.1 - endif diff --git a/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.4-fix-tests-multilib.patch b/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.4-fix-tests-multilib.patch deleted file mode 100644 index ed52af8582b..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.4-fix-tests-multilib.patch +++ /dev/null @@ -1,52 +0,0 @@ -https://gitlab.com/procps-ng/procps/-/merge_requests/205 - -From 4b6b91b393c0f5d3ec26910785cb3e3a463fcb57 Mon Sep 17 00:00:00 2001 -From: Sam James <sam@gentoo.org> -Date: Sat, 2 Sep 2023 10:46:38 +0100 -Subject: [PATCH] testsuite: skip tests where relevant binaries aren't built - -* With --without-ncurses, slabtop isn't built. -* With --disable-w, w isn't built. - -Signed-off-by: Sam James <sam@gentoo.org> ---- a/testsuite/Makefile.am -+++ b/testsuite/Makefile.am -@@ -14,16 +14,23 @@ if LINUX - # 3d807ae853b8b4264da156065b34f1447658a8ba - DEJATOOL += \ - pmap -+ - if !CYGWIN --DEJATOOL += \ -- slabtop \ -- sysctl -+if WITH_NCURSES -+DEJATOOL += slabtop -+endif -+ -+DEJATOOL += sysctl - endif - - if BUILD_KILL - DEJATOOL += kill - endif - -+if BUILD_W -+DEJATOOL += w -+endif -+ - DEJATOOL += \ - free \ - lib \ -@@ -31,10 +38,8 @@ DEJATOOL += \ - pkill \ - ps \ - pwdx \ -- slabtop \ - uptime \ -- vmstat \ -- w -+ vmstat - endif - - EXTRA_DIST = \ diff --git a/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.4-sysctl-manpage.patch b/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.4-sysctl-manpage.patch deleted file mode 100644 index 3582f7e7930..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.4-sysctl-manpage.patch +++ /dev/null @@ -1,33 +0,0 @@ -https://bugs.gentoo.org/565304 ---- a/man/sysctl.8 -+++ b/man/sysctl.8 -@@ -141,21 +141,21 @@ replaced (by having a new configuration file with the same name in a - directory of higher priority) or partially replaced (by having a configuration - file that is ordered later). - .SH EXAMPLES --/sbin/sysctl \-a -+/usr/bin/sysctl \-a - .br --/sbin/sysctl \-n kernel.hostname -+/usr/bin/sysctl \-n kernel.hostname - .br --/sbin/sysctl \-w kernel.domainname="example.com" -+/usr/bin/sysctl \-w kernel.domainname="example.com" - .br --/sbin/sysctl \-p/etc/sysctl.conf -+/usr/bin/sysctl \-p/etc/sysctl.conf - .br --/sbin/sysctl \-a \-\-pattern forward -+/usr/bin/sysctl \-a \-\-pattern forward - .br --/sbin/sysctl \-a \-\-pattern forward$ -+/usr/bin/sysctl \-a \-\-pattern forward$ - .br --/sbin/sysctl \-a \-\-pattern 'net.ipv4.conf.(eth|wlan)0.arp' -+/usr/bin/sysctl \-a \-\-pattern 'net.ipv4.conf.(eth|wlan)0.arp' - .br --/sbin/sysctl \-\-pattern '\[char94]net.ipv6' \-\-system -+/usr/bin/sysctl \-\-pattern '\[char94]net.ipv6' \-\-system - .SH DEPRECATED PARAMETERS - The - .B base_reachable_time diff --git a/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.5-sysctl-ignore_failure.patch b/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.5-sysctl-ignore_failure.patch new file mode 100644 index 00000000000..393da09f853 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.5-sysctl-ignore_failure.patch @@ -0,0 +1,21 @@ +Don't error for close_stream failure if the config line begins with "-" +https://bugs.gentoo.org/969014 +https://gitlab.com/procps-ng/procps/-/issues/410 + +--- procps-ng-4.0.5/src/sysctl.c ++++ procps-ng-4.0.5/src/sysctl.c +@@ -623,9 +623,12 @@ static int WriteSetting( + if (0 < fprintf(fp, "%s\n", value)) + rc = EXIT_SUCCESS; + if (close_stream(fp) != 0) { +- xwarn(_("setting key \"%s\""), dotted_key); ++ xwarn(_("setting key \"%s\"%s"), ++ dotted_key, (ignore_failure?_(", ignoring"):"")); + free(dotted_key); +- return EXIT_FAILURE; ++ if (!ignore_failure) ++ rc = EXIT_FAILURE; ++ return rc; + } + } + } diff --git a/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.6-pid-off-by-one.patch b/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.6-pid-off-by-one.patch new file mode 100644 index 00000000000..f725e77f634 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.6-pid-off-by-one.patch @@ -0,0 +1,50 @@ +https://bugs.gentoo.org/969469 +https://gitlab.com/procps-ng/procps/-/issues/412 +https://gitlab.com/procps-ng/procps/-/merge_requests/284 + +From 5574f049830ec8f76b5042855b65b418a0b3e8f8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ulrich=20M=C3=BCller?= <ulm@gentoo.org> +Date: Fri, 30 Jan 2026 13:05:18 +0100 +Subject: [PATCH] library: Fix off-by-one error in procps_pid_length +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Section "pid_max" in Linux admin-guide/sysctl/kernel.rst says: + +| PID allocation wrap value. When the kernel's next PID value +| reaches this value, it wraps back to a minimum PID value. +| PIDs of value "pid_max" or larger are not allocated. + +In particular, when pid_max == 10**N exactly, then the largest +possible PID is 10**N - 1, i.e. the length is N. + +Signed-off-by: Ulrich Müller <ulm@gentoo.org> +--- + library/sysinfo.c | 11 ++++++++--- + 1 file changed, 8 insertions(+), 3 deletions(-) + +diff --git a/library/sysinfo.c b/library/sysinfo.c +index 35a99220..aad90f56 100644 +--- a/library/sysinfo.c ++++ b/library/sysinfo.c +@@ -139,9 +139,14 @@ PROCPS_EXPORT unsigned int procps_pid_length(void) + pid_length = DEFAULT_PID_LENGTH; + if ((fp = fopen(PROCFS_PID_MAX, "r")) != NULL) { + if (fgets(pidbuf, sizeof(pidbuf), fp) != NULL) { +- pid_length = strlen(pidbuf); +- if (pidbuf[pid_length-1] == '\n') +- --pid_length; ++ errno = 0; ++ long pid_max = strtol(pidbuf, NULL, 10); ++ if (errno == 0 && pid_max > 0) { ++ pid_max--; ++ pid_length = 1; ++ while ((pid_max /= 10) > 0) ++ pid_length++; ++ } + } + fclose(fp); + } +-- +GitLab diff --git a/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.6-sysctl-ignore_failure.patch b/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.6-sysctl-ignore_failure.patch new file mode 100644 index 00000000000..9ed062475ac --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-process/procps/files/procps-4.0.6-sysctl-ignore_failure.patch @@ -0,0 +1,41 @@ +https://bugs.gentoo.org/969014 +https://gitlab.com/procps-ng/procps/-/issues/410 +https://gitlab.com/procps-ng/procps/-/merge_requests/282 + +From 98f60043abb4d45661b3adee261e4a14cf94c025 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ulrich=20M=C3=BCller?= <ulm@gentoo.org> +Date: Sun, 25 Jan 2026 13:35:34 +0100 +Subject: [PATCH] sysctl: Respect ignore_failure also for close_stream +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +When the kernel rejects an unknown value for given a key, then output +will be pending and close_stream will fail (typically with ENOENT). + +Signed-off-by: Ulrich Müller <ulm@gentoo.org> +--- + src/sysctl.c | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/src/sysctl.c b/src/sysctl.c +index d04d5e36..b702fd9f 100644 +--- a/src/sysctl.c ++++ b/src/sysctl.c +@@ -623,9 +623,12 @@ static int WriteSetting( + if (0 < fprintf(fp, "%s\n", value)) + rc = EXIT_SUCCESS; + if (close_stream(fp) != 0) { +- warn(_("setting key \"%s\""), dotted_key); ++ warn(_("setting key \"%s\"%s"), ++ dotted_key, (ignore_failure?_(", ignoring"):"")); + free(dotted_key); +- return EXIT_FAILURE; ++ if (!ignore_failure) ++ rc = EXIT_FAILURE; ++ return rc; + } + } + } +-- +GitLab diff --git a/sdk_container/src/third_party/portage-stable/sys-process/procps/procps-4.0.5-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-process/procps/procps-4.0.5-r4.ebuild similarity index 91% rename from sdk_container/src/third_party/portage-stable/sys-process/procps/procps-4.0.5-r2.ebuild rename to sdk_container/src/third_party/portage-stable/sys-process/procps/procps-4.0.5-r4.ebuild index e99e3423aaa..9fe1ed695fd 100644 --- a/sdk_container/src/third_party/portage-stable/sys-process/procps/procps-4.0.5-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-process/procps/procps-4.0.5-r4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -15,7 +15,7 @@ S="${WORKDIR}"/${PN}-ng-${PV} # See bug #913210 LICENSE="GPL-2+ LGPL-2+ LGPL-2.1+" SLOT="0/1-ng" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="elogind +kill modern-top +ncurses nls selinux static-libs skill systemd test unicode" RESTRICT="!test? ( test )" @@ -29,8 +29,6 @@ DEPEND=" RDEPEND=" ${DEPEND} !<app-i18n/man-pages-l10n-4.2.0-r1 - !<app-i18n/man-pages-de-2.12-r1 - !<app-i18n/man-pages-pl-0.7-r1 !<app-i18n/man-pages-zh_CN-1.6.4.2 kill? ( !sys-apps/coreutils[kill] @@ -55,6 +53,9 @@ PATCHES=( "${FILESDIR}"/${PN}-4.0.5-top-legacy-config-vuln.patch # bug #958286 "${FILESDIR}"/${PN}-4.0.5-macos.patch "${FILESDIR}"/${PN}-4.0.5-pgrep-old-linux-headers.patch # bug #911375 + "${FILESDIR}"/${PN}-4.0.5-pidwait-half.patch # bug #959706 + "${FILESDIR}"/${PN}-4.0.5-pgrep-pidwait.patch + "${FILESDIR}"/${PN}-4.0.5-sysctl-ignore_failure.patch # bug #969014 ) src_prepare() { diff --git a/sdk_container/src/third_party/portage-stable/sys-process/procps/procps-4.0.4-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-process/procps/procps-4.0.6.ebuild similarity index 64% rename from sdk_container/src/third_party/portage-stable/sys-process/procps/procps-4.0.4-r2.ebuild rename to sdk_container/src/third_party/portage-stable/sys-process/procps/procps-4.0.6.ebuild index 8d369dfb0c7..f424fded520 100644 --- a/sdk_container/src/third_party/portage-stable/sys-process/procps/procps-4.0.4-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-process/procps/procps-4.0.6.ebuild @@ -1,26 +1,31 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit autotools flag-o-matic multilib-minimal +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/craigsmall.asc +inherit autotools flag-o-matic multilib-minimal verify-sig toolchain-funcs DESCRIPTION="Standard informational utilities and process-handling tools" HOMEPAGE="https://gitlab.com/procps-ng/procps" -# Per e.g. https://gitlab.com/procps-ng/procps/-/releases/v4.0.4, the dist tarballs +# Per e.g. https://gitlab.com/procps-ng/procps/-/releases/v4.0.5, the dist tarballs # are still hosted on SF. -SRC_URI="https://downloads.sourceforge.net/${PN}-ng/${PN}-ng-${PV}.tar.xz" +SRC_URI=" + https://downloads.sourceforge.net/${PN}-ng/${PN}-ng-${PV}.tar.xz + verify-sig? ( https://downloads.sourceforge.net/${PN}-ng/${PN}-ng-${PV}.tar.xz.asc ) +" S="${WORKDIR}"/${PN}-ng-${PV} # See bug #913210 LICENSE="GPL-2+ LGPL-2+ LGPL-2.1+" -SLOT="0/0-ng" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" +SLOT="0/1-ng" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="elogind +kill modern-top +ncurses nls selinux static-libs skill systemd test unicode" RESTRICT="!test? ( test )" DEPEND=" elogind? ( sys-auth/elogind ) + elibc_musl? ( sys-libs/error-standalone ) ncurses? ( >=sys-libs/ncurses-5.7-r7:=[unicode(+)?] ) selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] ) systemd? ( sys-apps/systemd[${MULTILIB_USEDEP}] ) @@ -28,8 +33,7 @@ DEPEND=" RDEPEND=" ${DEPEND} !<app-i18n/man-pages-l10n-4.2.0-r1 - !<app-i18n/man-pages-de-2.12-r1 - !<app-i18n/man-pages-pl-0.7-r1 + !<app-i18n/man-pages-zh_CN-1.6.4.2 kill? ( !sys-apps/coreutils[kill] !sys-apps/util-linux[kill] @@ -37,25 +41,27 @@ RDEPEND=" " BDEPEND=" elogind? ( virtual/pkgconfig ) + elibc_musl? ( virtual/pkgconfig ) ncurses? ( virtual/pkgconfig ) systemd? ( virtual/pkgconfig ) test? ( dev-util/dejagnu ) + verify-sig? ( sec-keys/openpgp-keys-craigsmall ) " -# https://bugs.gentoo.org/898830 +# bug #898830 QA_CONFIG_IMPL_DECL_SKIP=( makedev ) PATCHES=( - "${FILESDIR}"/${PN}-4.0.4-sysctl-manpage.patch # bug #565304 - "${FILESDIR}"/${PN}-4.0.4-fix-tests-multilib.patch "${FILESDIR}"/${PN}-4.0.4-xfail-pmap-test.patch - "${FILESDIR}"/${P}-fix-systemd-linkage.patch + "${FILESDIR}"/${PN}-4.0.5-sysctl-manpage.patch # bug #565304 + "${FILESDIR}"/${PN}-4.0.6-sysctl-ignore_failure.patch + "${FILESDIR}"/${PN}-4.0.6-pid-off-by-one.patch ) src_prepare() { default - # Only for fix-tests-multilib.patch and fix-systemd-linkage.patch + # Only needed for fix-tests-multilib.patch and pgrep-old-linux-headers.patch eautoreconf } @@ -64,12 +70,19 @@ multilib_src_configure() { # bug #471102 append-lfs-flags + # Workaround for bug 969592 + if use elibc_musl ; then + append-cflags "$($(tc-getPKG_CONFIG) --cflags error-standalone)" + append-libs "$($(tc-getPKG_CONFIG) --libs error-standalone)" + fi + local myeconfargs=( # No elogind multilib support $(multilib_native_use_with elogind) $(multilib_native_use_enable kill) $(multilib_native_use_enable modern-top) $(multilib_native_enable pidof) + $(multilib_native_enable pidwait) $(multilib_native_use_with ncurses) # bug #794997 $(multilib_native_use_enable !elibc_musl w) @@ -91,7 +104,7 @@ multilib_src_configure() { multilib_src_test() { local ps="${BUILD_DIR}/src/ps/pscommand" if [[ $("${ps}" --no-headers -o cls -q $$) == IDL ]]; then - # bug 708230 + # bug #708230 ewarn "Skipping tests due to SCHED_IDLE" else # bug #461302 @@ -104,10 +117,11 @@ multilib_src_install() { dodoc "${S}"/sysctl.conf - if multilib_is_native_abi ; then + if multilib_is_native_abi; then + # We keep ps and kill in /bin per bug #565304. dodir /bin mv "${ED}"/usr/bin/ps "${ED}"/bin/ || die - if use kill ; then + if use kill; then mv "${ED}"/usr/bin/kill "${ED}"/bin/ || die fi fi From 43f58e93271e6880c1fed12af0847ef3c57a8915 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:30:16 +0000 Subject: [PATCH 258/291] sys-process/psmisc: Sync with Gentoo It's from Gentoo commit 066bbfa9e69dec6d916954a03167d4f126cd681e. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../portage-stable/sys-process/psmisc/Manifest | 1 + .../sys-process/psmisc/psmisc-23.7.ebuild | 13 +++++++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/sys-process/psmisc/Manifest b/sdk_container/src/third_party/portage-stable/sys-process/psmisc/Manifest index 29e0801c97d..a9441c72267 100644 --- a/sdk_container/src/third_party/portage-stable/sys-process/psmisc/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-process/psmisc/Manifest @@ -1,2 +1,3 @@ DIST psmisc-23.6.tar.xz 424736 BLAKE2B 468bf4e84695efcedb832f890b6201b7bc4aca7c5aabaf30e67f4471671421897ee7cd67f01d4b3d60c3e1c63752eb7384e627e75fa7db290cd749da08e2f788 SHA512 4daffbd1726e50d9344f8578dd4c10f0b8f7971929ec667490de31122e5f3828747e1bafb3ed3c37ed7e1758ab9ec43b8f4556b676a416a8efbc7c6c88b6985d DIST psmisc-23.7.tar.xz 432208 BLAKE2B 5064f929bf320c3fe91d3e665479dcb0913b12f4dddd23e49e296509f89e29b5d147b411c33cca9892a43d955c8e431bccf00872ae86a9c9d2545295f05b69d7 SHA512 8180d24355b3b0f3102044916d078b1aa9a1af3d84f1e14db79e33e505390167012adbb1a8a5f47a692f3a14aba1eb5f1f8f37f328392e8635b89966af9b2128 +DIST psmisc-23.7.tar.xz.asc 833 BLAKE2B 3cff09b133cbf134c66a8bfbd2a18f8b051b29e922609f9e7ad590a215d9237c33f22652df3103ba47afb562cb5e0f8824a754bb6c649b020281ab71eee7dd22 SHA512 fa604ead8ed17b114ad6d1cfeddf23b1f05c7f3544b7be6bea0db9424d1b7a2782be8624fdb6e9ba6a47e5f1185908a2ea2d2e3de93fc0ce1c63b6c56cf0e16c diff --git a/sdk_container/src/third_party/portage-stable/sys-process/psmisc/psmisc-23.7.ebuild b/sdk_container/src/third_party/portage-stable/sys-process/psmisc/psmisc-23.7.ebuild index bb3a946cbb1..f90c3d132eb 100644 --- a/sdk_container/src/third_party/portage-stable/sys-process/psmisc/psmisc-23.7.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-process/psmisc/psmisc-23.7.ebuild @@ -1,13 +1,17 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit toolchain-funcs +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/craigsmall.asc +inherit toolchain-funcs verify-sig DESCRIPTION="A set of tools that use the proc filesystem" HOMEPAGE="http://psmisc.sourceforge.net/" -SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.xz" +SRC_URI=" + https://downloads.sourceforge.net/${PN}/${P}.tar.xz + verify-sig? ( https://downloads.sourceforge.net/${PN}/${P}.tar.xz.asc ) +" LICENSE="GPL-2+" SLOT="0" @@ -27,13 +31,14 @@ BDEPEND=" >=dev-build/libtool-2.2.6b nls? ( sys-devel/gettext ) test? ( dev-util/dejagnu ) + verify-sig? ( sec-keys/openpgp-keys-craigsmall ) " DOCS=( AUTHORS ChangeLog NEWS README ) src_configure() { if tc-is-cross-compiler ; then - # This isn't ideal but upstream don't provide a placement + # This isn't ideal but upstream don't provide a replacement # when malloc is missing anyway, leading to errors like: # pslog.c:(.text.startup+0x108): undefined reference to `rpl_malloc' # See https://sourceforge.net/p/psmisc/bugs/71/ From 9335f37aaefe189b6855f7efc5b8633b97dffb81 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot <buildbot@flatcar-linux.org> Date: Mon, 2 Mar 2026 07:30:37 +0000 Subject: [PATCH 259/291] x11-drivers/nvidia-drivers: Sync with Gentoo It's from Gentoo commit d88be6fd74f3e4224b8d9d03562755641a5199f1. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org> --- .../x11-drivers/nvidia-drivers/Manifest | 76 +-- .../{nvidia-590.conf => nvidia-580.conf} | 6 + ...-module-source-580.126.09-kernel6.19.patch | 18 + ...l-module-source-590.48.01-kernel6.19.patch | 99 +++ .../x11-drivers/nvidia-drivers/metadata.xml | 6 +- ...build => nvidia-drivers-535.288.01.ebuild} | 15 +- ...build => nvidia-drivers-570.211.01.ebuild} | 20 +- .../nvidia-drivers-580.126.09-r1.ebuild | 605 ++++++++++++++++++ ...build => nvidia-drivers-580.126.09.ebuild} | 33 +- ...build => nvidia-drivers-580.126.18.ebuild} | 72 ++- ...ebuild => nvidia-drivers-580.94.18.ebuild} | 56 +- .../nvidia-drivers-590.44.01.ebuild | 567 ---------------- ...ild => nvidia-drivers-590.48.01-r1.ebuild} | 63 +- 13 files changed, 933 insertions(+), 703 deletions(-) rename sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/{nvidia-590.conf => nvidia-580.conf} (83%) create mode 100644 sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-kernel-module-source-580.126.09-kernel6.19.patch create mode 100644 sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-kernel-module-source-590.48.01-kernel6.19.patch rename sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/{nvidia-drivers-535.274.02.ebuild => nvidia-drivers-535.288.01.ebuild} (98%) rename sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/{nvidia-drivers-570.207.ebuild => nvidia-drivers-570.211.01.ebuild} (98%) create mode 100644 sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.126.09-r1.ebuild rename sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/{nvidia-drivers-580.95.05.ebuild => nvidia-drivers-580.126.09.ebuild} (95%) rename sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/{nvidia-drivers-580.119.02.ebuild => nvidia-drivers-580.126.18.ebuild} (91%) rename sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/{nvidia-drivers-580.94.13.ebuild => nvidia-drivers-580.94.18.ebuild} (93%) delete mode 100644 sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-590.44.01.ebuild rename sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/{nvidia-drivers-590.48.01.ebuild => nvidia-drivers-590.48.01-r1.ebuild} (91%) diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/Manifest b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/Manifest index 584e5452236..43cd6221fa7 100644 --- a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/Manifest +++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/Manifest @@ -1,63 +1,55 @@ -DIST NVIDIA-Linux-aarch64-535.274.02.run 269962412 BLAKE2B e4026c6ebf72ce7220a4dca688a349b27bdea518dd5eaeb3ecf153a246a8155775668cf3b2593b02abde747299cbae438e45af5c73c19627a93b6528051128e6 SHA512 a5d6187844c43bc56878d20b147ba36663db2c3b5f6ea31c2e84c364b88cac115417e1f2e073c9bf03ec698880921b6f98c1129b952d3156cf88c89156bdb046 -DIST NVIDIA-Linux-aarch64-570.207.run 290858757 BLAKE2B d04bfc5457ba3e2cf7e6bebf333c9085c83f1e437880d3a34ffa53e3ae094119875738893b4cccdb83d7699373c83d7d71182815a77ddd2834db9990eda28864 SHA512 90aac68738872349ead074e158193d847256b0a2f4d850e16a03aa165041aeb5d86413a6e3879253c90e4d96b3d624b839924a6f4f666e18903621154bdab305 -DIST NVIDIA-Linux-aarch64-580.119.02.run 313944261 BLAKE2B 18cf6bcfdb42597973e162d28ea45c45bdacfab0042789a8cc0572ff5896ffedbf63053d119c535e1c8fdaa43476068823bc684d5742b7f69d9965d518058df4 SHA512 d4926bada63b7a8e8bf430a45e4d98fda7b0a6b5f0f981258cf66752c64f022a3484e719257958779bd0e7371116bc8ae09f5724f53956c8299c3ec986d2b205 -DIST NVIDIA-Linux-aarch64-580.95.05.run 313379170 BLAKE2B 70431f394ce9d112afcf0742539289e399286ecefbdd86ad71c750acee21c3b965b435d77d54b290866a6c60c7601da5c8bbc2d6edce0b8e4dcd43d21ee2ec35 SHA512 e07b31824f7e6dd485df5c73e3a58f85962239ea20a92f18d82b9c55564d69309fe5bb279f39ed8ef152ccdbffc6d0fdf7bccfa3c794e4ecd9fac83bcfbb91a9 -DIST NVIDIA-Linux-aarch64-590.44.01.run 319562942 BLAKE2B 08547c7e4b746ab72f04b2b9f9fdeaade5057deb46d12c9a914e3e6c131a3b13a74a7713dfd6177e5a648f87f00935349f92814c101004bea3090602813a391b SHA512 95849eaba6761ba5e7435d8cb4d9f72b55e6b9e8d90b90be517f64b5d0fc329cffd80489b558c224370b869a11be13eb96ebb481a113b64b8bb24c48348f0657 +DIST NVIDIA-Linux-aarch64-535.288.01.run 269886661 BLAKE2B 9f9e994fcefd81e75db9a9c280668ad55423085e34eb9083043bad3f1317379ba14ffc9442fe94ee26b600f1ecf2e19f83708dae1c599b6a9df69d94ac3e116f SHA512 e8df9e97500a87d68e8c8d1f9601a8b37f2dd93773928a96b605a515d37e9382782cbdc0900cd6151923ae385045c644af3e37cc006771830ac0b0a532afb09c +DIST NVIDIA-Linux-aarch64-570.211.01.run 290912556 BLAKE2B 4335d6a6b7a55bc7d2717071c6be968b63c90932592534be8eff28290a8bf98614b37bb52b4ee0f9563a6f0fdacf6b0e8a04b8eedbe8081587962f3599209a88 SHA512 22816d8f798d6ce141ff2ce750b5df1ca4fef9b1ba79762157fd7f93c1ea905c74f421dc6ac2b7bf5b383192d2baa735d7a7d240523be815defb68be54c4a6be +DIST NVIDIA-Linux-aarch64-580.126.09.run 313588580 BLAKE2B bb98dc322fb0bb21a11aaebd2101528efc651ed833870326fbc4570f54264a4b536e8669351153817b47dcb81b9aeac88b7d664cf6971e5182b9d4203c453a29 SHA512 7ec0fd917bade1eb14b135bab2ade17a5116546190c3011379be7105404485016e26a5fb1ece5a4800eea39ac10c1abea19cc40be6f8f31188b3eeb78344a6c7 +DIST NVIDIA-Linux-aarch64-580.126.18.run 313585073 BLAKE2B 9cf8680392434126ae60cc4260f6a3ee44a74c8a5c5623e9990feb6b73cd4fc4661c2111214b192957ccc0c0e2623c3649685e739bc7440e36cbcbf4949bfc3f SHA512 b453b8aa9fa4fdaa1ce532f69a52317606d41728958a49f05e9725c093ebe8e90c65b5e5ad095ebcf5febdcd2d712bf0246ce06746078d8333c75bb7559b4245 DIST NVIDIA-Linux-aarch64-590.48.01.run 319634379 BLAKE2B ff1b0641f8d4dfc834d9627fa934c5491bddcb9e6f5396a07d6d7831c15e2ab396614ff1ab6b5af4a69b42b8c6a022215cc1e3531eca7ca177c9d940f52281ea SHA512 ec81da1a11dd9609427e40434cba69d7c0426e4d60cb5c078c66ec992b6dd44483df2c9dfe02deb4db3a815a4c801b3c42f6ac2b08f0506327f1cdfe5446211d DIST NVIDIA-Linux-x86-390.157.run 49417041 BLAKE2B 435b5e0e60468cc74b41cc5d9b5bb0105d29c11a2d408457835212a96519c9334ecf19278b36749d3ff7f498f5b0ae45a2efae2d428703dac21245c62f1efebe SHA512 dae9ac2c12f9ad90f7441e00e01a984147c577892421911d7f67f6a31e616ac1cb7d434bc9c7f58fbd9b8ae909521b5bece607a63c79588c0bb9d99c6bad5fb0 DIST NVIDIA-Linux-x86_64-390.157.run 85835541 BLAKE2B 44b855cd11f3b2f231f9fb90492ae2e67a67ea3ea83c413e7c90956d38c9730a8bd0321281ae03c6afce633d102f5b499aed25622b9bfd31bdd2c98f0717e95b SHA512 4780503a4cff0180b1b1f37d20a6ba3438dd78b51fa7f69b98d35521835e5d61099129746929d51d63afa2d47b672b3e145e1e1897584dc3799e7f822c5b3a0a DIST NVIDIA-Linux-x86_64-470.256.02.run 272850014 BLAKE2B 0fdc867f92b82b2a60810c3b43751cad7ac2c39928c92c6c343c0c6044f4d7d923d93b8599db3f7c999c0ee7d16940e65d991a61cbb30e1d9e49c5639ac6bdc8 SHA512 a837946dd24d7945c1962a695f1f31965f3ceb6927f52cd08fd51b8db138b7a888bbeab69243f5c8468a7bd7ccd47f5dbdb48a1ca81264866c1ebb7d88628f88 -DIST NVIDIA-Linux-x86_64-535.274.02.run 341804470 BLAKE2B 0d848295d8f0f8fe3b4ab6c0204bfc3ac26f75df253b6595137e99177e4ccd490e0c8d4330f6789137d906fdec317033e59b5f22213a38ef3c9daae2968f71b8 SHA512 cc89f84c4f8d76d8d1532e67630426b3988e778bc7474059231971333cd81d6a552d8f5ca329f9e3c540229bbc247b665d2276298e3c302975ab0f0562ddaafb -DIST NVIDIA-Linux-x86_64-570.207.run 376235013 BLAKE2B 76d2092705673d743f2e64136d2073de2004ea71b3fdde7dd0ae1e11fd5f1e0dd5174324589f2386dadb85c2d2992b62229575b0cf33b20137aab16d51b0c566 SHA512 587ed8a274af0a9a3f029951a1a86a16e1ab367c07e8eb928d17e0d4ad79f13700a9aef0b3a42bae9d14a832141e9b02b117636b12788b58364430335bff9167 -DIST NVIDIA-Linux-x86_64-580.119.02.run 397786077 BLAKE2B 2a57a0c53deaa1d31c3bb1ca53f05ab017cccdbdd95a99748997d2988359c9ff4f2cb824304b75e4288801f0882deeaef9712785b4e1c659282c25d610be089a SHA512 b773deaa58823d3907488527507df6831959c1b8215ad34e1fdf7025d318d9ca7610d0b103252252c4e4097ec97d4224f99a3e9701327dc15eadc66e906af250 -DIST NVIDIA-Linux-x86_64-580.94.13.run 398047606 BLAKE2B 9261ecf5c4586a22656219a1cc4e56966f0eb431c21b5238a0f6bab0a9691781cc5b879708d9e0afaf726db9e70f63c62948298c3fc7161a7f9e9f5a9d4cce46 SHA512 b64176d9729e8b237c9e982e07e12fde4dad8f4b3ee1cf73447eedb0566a4beb6417ac5a5f97744ba6b32f48c8d5d22b1076de0375bdcb0f53c4c6724aea494a -DIST NVIDIA-Linux-x86_64-580.95.05.run 396658958 BLAKE2B 7e23e5243023de357329f8f57b65a386306fd898a78c68b01d67a9572ac0d64b2d87c0cf3265c23fc4c13192d92060196ee173c34cb485a693035478cb3fc82e SHA512 21e8076f593ce255c8e96dd456524f700e76b230130659ed73a279432dd9f2aa60735411c6fc906e9f60882e905cc1c5b91aaf80d5d5e64d317b1dd27f6e4c13 -DIST NVIDIA-Linux-x86_64-590.44.01.run 416205886 BLAKE2B b8a4f02ce1b3697f45d5932606a8d9816e8dd38e4957b0d069f9759cacffb42fb741084009c012017e92a785fe9ff3810d7fd420f832873a2c890c7e29d5acd5 SHA512 8fb0cd0b09b3b997029e97314fb8b4f63a5b567c17d99b63321e72b3e002c5e912694c5049babae80e7eafdbcc966d46e50bb942ddefe3e9da28623b5b119005 +DIST NVIDIA-Linux-x86_64-535.288.01.run 341968325 BLAKE2B e37428855b41c295e5c6df66a029f4a1f6916af932a159587002c6b20b58c8280faee1a4fd6edf4791439df4da6bd21d18b3c9bdf300b3923f5dd30666f44d90 SHA512 8ccd90cc37cef6591412c9c0d3a48af9fe08bf5d715a2e8a9c0adab1fb8e72b716ec75c8b81bc0ac9d09d6f82fa8e01af144bfba5d58cfe7a524c47aa97ae6e1 +DIST NVIDIA-Linux-x86_64-570.211.01.run 376192072 BLAKE2B 56a135681eba576377106b5ee4bad4e0ec7e41e512db8e32297fbafe03455ee4e9e0dafe782588dd3832fde74ecfd9ee5858ec662f3dc2ef3f1e1dab7a9c909d SHA512 3e751d90a8f126e369c5167e2d5ba8b218dd306ccf00907290ae70fb1c3f752f0ad0b973ce356a1a24cd0f19c31a07169cfd5705613a6bbb5918881635650839 +DIST NVIDIA-Linux-x86_64-580.126.09.run 396807358 BLAKE2B a8b7fe16718a8f9ec6d93cad71e07c96d837ff612ae21a96018981fc904839c6d85dc2515c1d640361483fad59b5fd79bdae6a32951ec2f5db4a9115d24798dc SHA512 d5c41131304b29d55d0caf8cd84c95b454d81e68d7b23ca893504c63d84dd78726e2dbd7f076b7f12be518e641d110d131ac178336d61a00bcc81b7a1890799d +DIST NVIDIA-Linux-x86_64-580.126.18.run 396862844 BLAKE2B fa2d992d4f23beac7a10bc5d17695ee0c211e3afcb6fb9135f09b8eebed86db226b1cb4b9646917ab28f6127136b349fbc02deeecef2c5625f2be6a178cd268e SHA512 3007896838256c5534d7a04958f38f2837314b09d05e595966ba68789b0166fd8c1a574b29c8dd9ee5414822c9aebad9f9c7e5db777b811701fcac2b92245f0f +DIST NVIDIA-Linux-x86_64-580.94.18.run 397082112 BLAKE2B c8ca38518debb4ed7bc26114aeb375acfe7da7f63056f08a9422f8e785f8488b1bfb9a66410985e8f883266f0befcd5bcd08e6bd4e0489c31bdf6374abe42bd1 SHA512 b1141f13cf2160e25004c9147328e60afb48b17866c907adfe1db6730ed50163fe5b8ff641d180c4b0420c0f47c0928585e52bf23c196d43a375d7a9466f8fe7 DIST NVIDIA-Linux-x86_64-590.48.01.run 416273526 BLAKE2B 57bc232f3d5cc52b3ba7c097e5c04b0e128947b34f75c8c7a75135ebbdda565dd9ae829f3707cfef35a9b8b554f2b46a50756f6b256a0f0280c22cf9ecefb2e1 SHA512 31fd82af707dbe9a6d3848766925386f5e91c5fae0a605819450eb8e5a5a52eaab3ae5cff50b4dd36bc5c32fe1aabc29a6a79438d6614988c7b08f509ef0da6d -DIST NVIDIA-kernel-module-source-535.274.02.tar.xz 12513068 BLAKE2B e9f9fbdc70ee634dd26d626b0d5252e01c748fa8fc5b50af02a18f0dc75e2a40ced2fbaf24c4389dd207936849f6d614f18ef06ed35111ed26f3f6fce9017592 SHA512 4a660e08c03840de0b8d5bee079ff203a864131ed3eb4805e80da6c071b6953a6acee6d81788c4ea076399db6270e34844d5ac3898914195f530d2e0ef1c96ab -DIST NVIDIA-kernel-module-source-570.207.tar.xz 17948940 BLAKE2B 7573f8f3083564038649e0a7fe0feb1cec313a1950b06200198e0802b7f3553212cea2100f563659f425c139eefaf976bea388886180be895e12f7631ac86b0c SHA512 de2306aa80ce057965a2d2d7570035feaef4016a6d9e37f7ffb9f19ddf6e892ab8eda14bfc893122c6f2321e406272b7cffc84a053321650c29d3a25d359c6f9 -DIST NVIDIA-kernel-module-source-580.119.02.tar.xz 22236204 BLAKE2B ec10077a776bfc3d933461fd2f188070cbb653a18743fa6089a62ec39981f76b19e201d59df51f1dbc3db74ba0a6d88bed9272d0633b0d092e4eed6ef3f6d5d6 SHA512 ffd90759137648378b35e59cc81459d75853b6ff6ef60dd3de83c6120be32166505f7d7a25f88440f51929e24a9181dee4310d4bec006b5ed86a46581a9b13d4 -DIST NVIDIA-kernel-module-source-580.95.05.tar.xz 22215620 BLAKE2B 179e2e1f820840273e54b55cd45233c6b5e26c1eb80e8e4fc7099a1704820cfe761c17839befcb9ddca2fe7e85b7ddf62e9a51b912e1f300b02ee8941d6467db SHA512 183e35afc583748f5d5fc60970be7e1e0b99de40bf0e9428d3acfd56f913724cc8aa242a276c327ad11e09290818883c8045ab3319dc0e919201687359f7cdc6 -DIST NVIDIA-kernel-module-source-590.44.01.tar.xz 22515256 BLAKE2B a71a59a6c5abbc5011164444f95730b8d96b1025b3d685ea69720a3afa658baeb0f4a6d9d8180d79b76cfb9e972f47c9525dd61e86322a820d17ba6a2eececc1 SHA512 a63f48f1f3a52d973597f6f261e8d9849165a33d561b5e70b6b84bbec3b3a66029a49a1e710f68c70b853104349ab1f583009c8885b4d259be115da6e9ba36ad +DIST NVIDIA-kernel-module-source-535.288.01.tar.xz 12538144 BLAKE2B 597c58a62591e82b77fb29527d240bd2043b37439a1e7089ce5ab7ecb514ca3cae5be415aa4324f1156c08ddc1138c02e58337df5f38eaf7f19294773e4bcebc SHA512 b70d95af6737c36f8573d877a3473d38ecf3d7a4a35b899c38c1682888b455dcc60f6738ccee60a584477856b79dd25e6a10ffd1a4503c1d78a88902ba8329b4 +DIST NVIDIA-kernel-module-source-570.211.01.tar.xz 17951900 BLAKE2B d40d2c1b4a92dfe8da95e1000413dfb484c9c96ad232dd5db14246378f6df8e73f04706592a536025c3d5512d5e663e7841de8bda782e3611b4b594b9b107ad4 SHA512 c988270d3aaa707310c3924de83eb5f5bdc4d022d1666eb3f41ed46eff35e98a765d4d6d34c22c02ac507016bed3c34af1da2e1befc285ec9158031a4a1447e4 +DIST NVIDIA-kernel-module-source-580.126.09.tar.xz 22250272 BLAKE2B 218c0df05f9506b22281a575db566d48760a7ab3df7f2c4d171d5157f44979efb6f40e8aebaec26e830cf3495bf2366ab406919293d2eab6e543567c0cae14fb SHA512 1c62f12e39d827f1a9dc13d934f8d690e3cf3da7838f39044b1175b612eb03e2f452424f6e456fed81bfa448c8a2dfe94b58e71bff08c4e5d5d8c944c74cdb2e +DIST NVIDIA-kernel-module-source-580.126.18.tar.xz 22192576 BLAKE2B ed2b39aaed517a3a55633c6e0fc5605641bf85fcf370b1c8e7eb3950d3cf9112b6c3656ef3aff3fedbbbb769bb7f975a87f218b91c4131a9930cc04c8df27bf0 SHA512 810c596cdb40666b5dbccf9c1d358ef155e9171a489513f78fee73f48d73798fee0f655d8a9c994144d933ff9a9e0fc362f7c4918f87c8dfa9f00d30beee102e DIST NVIDIA-kernel-module-source-590.48.01.tar.xz 22530000 BLAKE2B eae57ceccc78f0730fc4962b20f08f270bd21960e84ad5985433590e5229403a74bfc2518540f9e2ef07d319d9cb2288edfbe0d5f7a27cc7e0903aa61fed388c SHA512 6fe32d5d1a84df0baeaaecd4a847ba73a89bcd1b51d5f9c7525efd2af891f6d5512c1ac97c8b766ba1d1103312c53e5406653589e22684df9260fd75977591a6 DIST nvidia-installer-390.157.tar.bz2 150323 BLAKE2B 8058ca87a6dea956d564af9f7eab9b1fc82b1f2382bd5cb2f6d97cbe2e19292533522d5f8f2eacbeb16520372715fcb72f8f9b0998962af5d4e75522c8d74524 SHA512 93a7ece648602157496c8e27a88864ede341a100f5328a4c1a25faf8f0b94d252060e5e2f71d0c302fd0566c10773c30b76b3b5f431d8039b71c90a7969f7d7e DIST nvidia-installer-470.256.02.tar.bz2 146269 BLAKE2B 4402e725c8fd0157eb84d4ec140a33f97e873014577487ef1e32fb8921cabe79c60ff46532e5bfaabb2b6ac894f7c80086dbab19e61906e2e27346fb85f98829 SHA512 c962dc17d9696256d1ebedcaeb3010994f2ce3895aedc47987599ebfec132a9b9a249d2ece6502b15bd4a93f9b0106aa13487a7da5f64199c274ce11eba27cfd -DIST nvidia-installer-535.274.02.tar.bz2 148772 BLAKE2B 7a70926628e137a0687acdc613a3afcd9fafab300e6c3ab467f9fef65c66911795a326cd08d49190870939576f358760b44949ba20df6060936f98e1385a2435 SHA512 c2a61bb9637d7fe9de89d7e3945fe84c6f672c8f16c4c12d513ba0b0679146321f4565be1266fcd5145ed7a0610cb59ae9f6fd7f7cf565f24e028272688899ee -DIST nvidia-installer-570.207.tar.bz2 169253 BLAKE2B 1364655663682923df7504e76ddf157f4c5368442e6e21541ed12c54c1c35ce97370307a751a72a3d2fb2dd878852106392ef5e8dcdaf5f2a42d29e26ad60077 SHA512 253f15603e4ad27be655fb945cd60180fe9272e394cf587227c95f1648f8c0ec91973e6a603135d82976c8a650adef7003a7e4fe8372f6df88c4b512a29832dc -DIST nvidia-installer-580.119.02.tar.bz2 169905 BLAKE2B f6a08292a824879266e75efbb2ae28f49a40799d0a2d3390d031e2259b419f475e50bc0effca4cc32aae76370bde79c4078f362d892d07b938092de90c28d6c3 SHA512 cbe597dfa8a801aae053520917ba90735ad03194b51d767eb8afcb283e2ae6d0c93690d1fe2ec7e24b896680dbd8c53b99f246c3de6bd94a2588e4773ec82a27 -DIST nvidia-installer-580.95.05.tar.bz2 169558 BLAKE2B 5e52aca8950b83b2a0366fc39dba5b89d22248ced974807f33dababfc06b41b5c40ff238552e61fec54625a6b2bceb8401ebb4fb69b47e33e565058d1796cb9e SHA512 1f20838f4e20d77c9596aa886f53bc4abedfc5e5634665d3bd571fb920013b2dfdf7dcd082b0cfebdf4d104e87203965cff6a04863f9b0bd43f9e25264217578 -DIST nvidia-installer-590.44.01.tar.bz2 170890 BLAKE2B e6bbd5f862673217dd4359533bb3c275c3319af69b2a912e43ea5d1fbb0cde2434c0decf2330bf3ac94d78cbd21fcbda6c5cd7e1b34bb44dc6313be3257072b7 SHA512 558fcb1984a5a399e7b388923f43821913b523cacd8a4496c05db92362b270f6e58bdb838be7f5ebb02bd3422dd43cbff952f3ce506cf7fc0c42b5fc92d3b3f8 +DIST nvidia-installer-535.288.01.tar.bz2 148906 BLAKE2B c559bfaeddd1af6c72647fb2e5c46638817339bd59ced80bcc6acfa14304f5ab07123aa0e43d18feff5d2582f08ceb0f84d2b97eef783bcd833c12f751e4c945 SHA512 b5d92a68b39a11709dae83ded0d9b860f9ff4cef514a1eb957305daf80d4354a272a88e4a58db61547b0073e57c2913f2dc038c2d51b2eb649fc9ae25eb42954 +DIST nvidia-installer-570.211.01.tar.bz2 169330 BLAKE2B 100cdb3e0cccb19e3bbf69d4289d079a64cbca95fc20f4d48179190b5e61cfdcbfeb5b95c381c70824c185975356a70af4c89efb53ca0cbc5c61fc95d974ca77 SHA512 90efcd442feacd7f9d9bf25fddb77c521b2e7c79063703c320ce2bbd50a5cce950b0937ec926e89081634c6606c18861efda0e6288e24fab5ee31cd5d52d211f +DIST nvidia-installer-580.126.09.tar.bz2 169652 BLAKE2B 664354a67b56f3fbf323b7231b73c7af3510ec4b8f00533904e0771c6c76dfe98855cb7348bf177fc4902109519d1803ff8074f1fa2c4b7b0b007e459b9eb743 SHA512 9cb0be263204d6a90aeacd694066c12790d1dd513e40deef284fdb979e4227764fdf5e7692956cc08d4db270f17c4c7a3fa53e3033c863ec652fb4f48c33a8ef +DIST nvidia-installer-580.126.18.tar.bz2 169283 BLAKE2B 87e64a32358d5547dee98293b7a507465d1375bc1262f011d181112aa4d3f2103b2820587d688f92cf3cc8f6bf0e120e695998d47ca98de9c950c16f0428b0a9 SHA512 54bb99cd8b17004f7ed0ab87ef781104410d6eb57be2789c15550fbb2215473cc1180410c8dd2b2f75af3132c1047eeb5e906f45fcd7d6931dec3b1bb1db9d9c DIST nvidia-installer-590.48.01.tar.bz2 170826 BLAKE2B 450bd298e6c574ae6dc085714c130984058f6e606c3de628c5adeefddbfde3bf2e025b1e422948311e9e028cfbc6e8d4c68a22a10d30a9a28466f3105aa7c13c SHA512 4c776ad602594a5d2ced2570fd26b51e5fdf5b7613c43263a7f647a5d3d550c6c35960a6cd8884766a71f0b34c397e7d8bd0507b84043cbbc1c04a82ec067932 DIST nvidia-modprobe-390.157.tar.bz2 35306 BLAKE2B 80d202b39c2f95ec0f909712c2e101483af50124092c32efb33bd98ff58ddfb97b737ff07f1ddc941f688c1b4c26a15f392566d522e18506771f10422fcd571c SHA512 109bbe24a3758b568ea65fe1e9d78f69fae6108ec0497b796c885a3912825fe04ffd7389a3e22987f1a10a2926bf6eaa384faabc59478aa3ee244dd3ac91c6d3 DIST nvidia-modprobe-470.256.02.tar.bz2 38769 BLAKE2B 0db444b09b0b6d24c04877fae95249e781d82b3141f90eb05d869b64d2b6e65ad00bf44c4e427c64dbd4765fa99a8699f80a1d95b00c66137a54dc878d7ea298 SHA512 c1cbfa6c8e188e5a5eb5d390b9a903406cbff103d212fc30e611e4023be3fde896ad84e8bb45b030beb5d1bcd8155c9e55a8f9636c45ce1e2a5c03f672989a31 -DIST nvidia-modprobe-535.274.02.tar.bz2 40749 BLAKE2B 85cab6efd924d6a10a1336334ef2b3dd7005da9315518b59a865feffd889aaebfe428d142dee4cdc03eb4f77850c314abc1ba1b60083d0339c2466ed3c30b220 SHA512 cad7dd263ac430457fcb2a1e8659f53d436e2c46330ded165698c5b8ff0a52795edc837f724178f5c929e25aebf6c6094d14eb08e9469a17bd1673195cbc849b -DIST nvidia-modprobe-570.207.tar.bz2 41621 BLAKE2B 84b84be1ace3554be45b56866ffec617e4d4c838889257fffe19fea5811414cc417b7d6e297b32f23e0c2ab092ff911b3c7d04de168c84f4c9fccbd52be69c8a SHA512 d13dbefbe730a9aca3786effb5c7b361b5405b687bd17096b5815756e1c58ed265250b0faaf99da4fb29bb67c7d7da7d4d4609d2f2be03d8a9cfaa74e27cea5b -DIST nvidia-modprobe-580.119.02.tar.bz2 41697 BLAKE2B ccfa263a8e7b2a069ca8a2775b3c62816f3480d2cfd67bf2ca229dd8f7a56b0217eb03ed45ee8155c11c3c44b91c7533042d4a147242c9edc2c7656f2fdd6f68 SHA512 e4b83c88a0dc5978d137b37c545c5100681b32030333d6cf47ef7ab0f15ff8f689ec7a615c01650f0cb89932a91db0745ceb1e555f4c958b2a31562712185582 -DIST nvidia-modprobe-580.95.05.tar.bz2 41708 BLAKE2B 17988280c9c54fdc86dcf757903f18f83d1eb44b25a1386f8cc9bf098aec87b77c52bd3da9ea77511716c678e4354e8a40bee1561a953ed56eda350ab4a3e464 SHA512 67faabda2388515fcad71ffc965c7506156116f4e020837da33b0f17bd30aa05cd2d28a54711990684110133ad1a58a8db5473f58f2e5e587bc8edf5253a9351 -DIST nvidia-modprobe-590.44.01.tar.bz2 41704 BLAKE2B 224db886b27160e65f4b36fced5ae2b1915daf14228c1da613351cccc0669ac2dcf528bd5c10e105fe68a42bc981c44a7c6bad261e29cf286f5c52a8d4583305 SHA512 162b6106c6d98886f374c3351197a3239b416f678524f08e9e8490979a36df74d6c7c0a3d18c5cdb288d2492bb39d1ab43251806cb83bbd90db61d6f98e9dc00 +DIST nvidia-modprobe-535.288.01.tar.bz2 40729 BLAKE2B 60a8a22bcbaefb4d7ab1bbddba814939078b88a0ffb3f3fafece04910b476370f5e1f38878b1c0f109abe4449193dcbfcd308efadd03d28786b78dd2eaeac75b SHA512 0acb8e676fbc230978b97302df98450ee11fc7d59927c46643a8f92d5aec99a5d1d1bca861203a013cfbc61cadf89ed74e2fa999932264b833e3b5a53d42836e +DIST nvidia-modprobe-570.211.01.tar.bz2 41631 BLAKE2B 953113337b742ea246bf24a47cbe679f03d89ecfa48a655f179b0913dd7d9c1742f4b1bd765c4d4263c9d45c352de87bff9f0a5a2c3aa48c86f221177cd5d1fb SHA512 c1bbba303b587f18e824cd2dd9a74341d5a03ee56c6adff67bb33c4f65ed16742f094dca9457a04d68b676c3671756e47d996090523827f42c8780329988e3fb +DIST nvidia-modprobe-580.126.09.tar.bz2 41685 BLAKE2B 6024b6ecbd8732c98892c01920b633de6e96316d63d80570befb7cb35078349b6737371592d92ac8d60b3662454a9bd5f6f9be8023a614e6233186b48204d8ee SHA512 fecbebeeb9add103726bab211f58d1f4afb85cb47affa960a19e057c78c7ccf975b8e32043591a6e9c93402a8ae7f7232ba3b5aadd4f30e2f531914bb4787c43 +DIST nvidia-modprobe-580.126.18.tar.bz2 41651 BLAKE2B f2b8c639e50841f844e32ec4e41381af034c99ec81250fec68d7a79af5e61b005fd43c802d2dc9983f74b9816b8f6996b2580d21aca21ba3dcf4097fdb6dc11c SHA512 a179eb37f9513f962976d58c16417f90e6b51d43dacbed720d05727f1d6404dff1f81b4206dc913161198776028636187fab6812c2ec96fa9cca70d9e63c0652 DIST nvidia-modprobe-590.48.01.tar.bz2 41660 BLAKE2B 0780a1aa529d95323b37115efa529dab030cbea589a03ddc70460f4176e7aa88388401ce8508a093a2e9a0ad406589e9e94ff0391021307e879cbcacec8b6759 SHA512 805a70d5012fbc26af3787104e39b3626b2ed7d53a4989365d2fbf6926daf817eec1dc6b7cd50dfbfe29bbd71569ac3095f0a37cad2199994dbdaa76720d8fb0 DIST nvidia-persistenced-390.157.tar.bz2 48654 BLAKE2B 2cf6c92da90acff55e8c180a06b0c6a29d48be9fd8ca3c541202fd14f0697220fba6b66452942aa7ae7cc8821f5c5eb9fa8f7a31d2248624e5f9141d83a176b8 SHA512 70f0707ed6f2b877e69ef90cf782f66cbc9d2071db53ca09ceb7b89427b0fe176708517340621fa251539b7d481b238adeeb60261674eed74de1f62db6dbb72e DIST nvidia-persistenced-470.256.02.tar.bz2 46567 BLAKE2B 8f837322a3b88412fd2f6acf38721b49a6cb444fbd842d652519e5596f2e545d8f06bbdf017f46a22301ce87455f96147fab2829ca5fbf26131ec3e4a772e282 SHA512 4fd19258649b7d39945fb5c8578bf11ab118617dd14f3d11cdf15cb3fe77daf7b4719e4ae57af59031b1b809d02f4e8e8afed0ec60b9d0aed4d2488bd3013cd9 -DIST nvidia-persistenced-535.274.02.tar.bz2 48596 BLAKE2B 1f87652351ebdca97b1b145e421abdb2381fe9d824ebde12eb60983cf8480f60dc530337fd2a47d5120f3c77a6fbd895fca2497dacb31ed234a9e5cb357703c4 SHA512 2e8e3929039af7f468a4d43ea5a6452aba86fd715d229883212b9223603d0ecb7417380354e70c85366b173905708947f3bb1919e09382f69a62f502f7c6ae7a -DIST nvidia-persistenced-570.207.tar.bz2 61835 BLAKE2B 6dc810a183dd37f33b7cd2e9dcead6369adfffe1e2e85b40c0b18a72044131d1098be1e06550ac3fff39706aa2cff348ccbbc243fececef9de8147997a7cc98e SHA512 c178ddd4125c6002c414d14c162f272a144fc0621b6c51916bb8304a6fd7658cba6f1cc175fe65270b589ea8fa529531dff99ff3ac5336cf2f0f53775e07d7ad -DIST nvidia-persistenced-580.119.02.tar.bz2 62213 BLAKE2B d88ded3f8b99f975e71a6474f24f6e0179cc6a58f862b5796b962c8119a9c3f672a5a26a6caf834b8a27693ac2e394c85710117cb1d75d60963dbf41aad23c80 SHA512 052af6bbad837821ae50372595a14df9140fc0ef10199ea4667fd6fb1cd6524c84ee0570621f5e63b7234ded9bf3f1093402295752af3732bfc59176339515cc -DIST nvidia-persistenced-580.95.05.tar.bz2 62343 BLAKE2B ad5a8b185accac6e8488f7b6d138e71db783590ca3b9890a1034771977b2f598c4f920bc48e65dc254b925e71d7f59e935cf1e43c90982e81b48266ac5da4171 SHA512 624c052fd7e7aab74e86c07ab281448415f9900cade11c255f7b6907e7de26180513e83d7374b4a823ab431a0ce2c5a74ae51f8de3889bddeb959ec73c373605 -DIST nvidia-persistenced-590.44.01.tar.bz2 62203 BLAKE2B c656171144f8bf0c209a7d34813040ee3c19128520d07d72e46ad54972982b9d1ea9999bb31ed30b3f6479d1a8ac9c2476eebfe0cb71e41bfe7b062c1f8dc132 SHA512 41b373df321e58bb196b46ae0eeb83c3514f562fcb3ac0b159ea82446ef4e759a8a7a9952248b2fa28dc5294ecb2ad390c815933a05b1cba49023fb4b721b660 +DIST nvidia-persistenced-535.288.01.tar.bz2 48600 BLAKE2B 025d2d28a078354898a501eef857d496e504279e45ab2b167a4abd5345d50e8effa1432a46da7ffc0276faed5698fb02afec21eee810335daac638e4656d7ce8 SHA512 b92c96b12346d8e26321679ae51532e8d28eff6c2998b6e781ea840eecf022823e47b48ac0c918c1069eb04a601833c4e70c88f66eb4891bdea2a85666597d90 +DIST nvidia-persistenced-570.211.01.tar.bz2 61779 BLAKE2B 02ac6f53eb4c053ca894f79b49d2a4b1b1f8e9f1a349053794542e72112bf0fab87aa2ee317d486758aaf77811c929d0aa8fbbcef9de8cc59836445ef845cb7d SHA512 5cb8feb56bf245e8e51e65d3d6d31f2b588e7b84ca29330e564d3c27ab37ceb67df0f80f8b37dfafb49a9fe8d7fef6b26d6334c6403902737298e8f3b23d1cb3 +DIST nvidia-persistenced-580.126.09.tar.bz2 62240 BLAKE2B 980dfd0a2c852c97e246f36f69c984808ca01cdba299b2be51a2cd7e5125d56a98280a003a32ccaf6873afc3183f13aed0433077aa399475fb404e5d7811b37c SHA512 b6699cafb543d958911086c6773f7ac1ac3c32bb20b3a88c92e029f303f48f8daec7338cf080bf74ff97f26f4c92f640c1f51cf95fc9a601e666317fadf882ea +DIST nvidia-persistenced-580.126.18.tar.bz2 62246 BLAKE2B 2dd91f79713631afebd574bd3eed8fe2867083bece0ba9f57ffc3d41221729e39b2e04a2514b137c7a9407b0cb9569de3dc0c8f5ae78f9a15c78600c6feb8198 SHA512 32394ef4922b466a56f666ecea913831338af02a9768b85275ad1bbd9a7f75379e17597828412a4080a0dcfafb7e9bd5510d6244539594ca60a22a541de8458e DIST nvidia-persistenced-590.48.01.tar.bz2 62193 BLAKE2B e6f03ce2f24f1ddc6b1dc9b7a8dd22de4541d5ec82f85c58943cf48f295e7f77555765b01edcce1c7f5ba67580c51273de8b8200d522c49e2321cffcfc8aeb6b SHA512 960f37355e58da20af92f0f0df091709623e32d9ef4eaba34d1f6b52f71227ac7c3a7f84aec64460952fa32986672f9373774ab1e65149ed426c59be47d7f2d8 DIST nvidia-settings-390.157.tar.bz2 1108938 BLAKE2B d9ec1ab5d7f157d74627272adf752a671dd17e2ede02069437b6180b927fe315b15cc6416d584ab2f038b76fe01e5b64514a834f24d88ac16676e55205fdecdd SHA512 b16699009bf56a1ff3b623a528c58061c4f5a2c5c4a373756a07bcd667743a1df7c733a572d2d0baa835a904ac2fda8a5c85890dcc00c3a0f223e0467aea902d DIST nvidia-settings-470.256.02.tar.bz2 1062273 BLAKE2B 8e66201e7861469b12932595ef8f9fd29d4cfd570c2576ae7fbb7383f61c55ac71fe721cc431e79d6d69f86d998b5b4c3cafe531b573f439e6b499b0fc047a19 SHA512 626e66118ae2e62eacfdf44e37529c409b945a6f33637b9690d74abd87a2afb581aaca5f90328d280da99ceb659959d0e5dc5c22ef8013b2205b2b1c72e08007 -DIST nvidia-settings-535.274.02.tar.bz2 1094628 BLAKE2B 065eab7e3a6d2a38e437b133eeebddd647467ecfb110f1f356a37df2309e738372902bd8ad7cccb0643da0ef0a310536bc336e8583bf2a9058d580f4795a4b92 SHA512 bcaff79ebf66197a4228c6cda17995f6f0d1a6e8f1f156b907f5e7d7f06bdbf318b4fe084591e3f767ba4efc3a0986d2506fb4775ee09613d2c8f438762db1dd -DIST nvidia-settings-570.207.tar.bz2 1124342 BLAKE2B 7a1725d7ffb81df4d6d32fb4732aab44af5a84f8e42546e162924ec45fac06075e27748a2bdedfddddb8abf3387c07a79d8d23a7fea505f5efe213117a90ba08 SHA512 ed8a250c21f6fff50c6ebac6b6dcb016ce29bfef602ae57e4df87082e43640746bd900aef52c60b2415a23f658e3a8a5d3336c4cccaf9efcfc97d089bed11e8b -DIST nvidia-settings-580.119.02.tar.bz2 1132592 BLAKE2B c36458c81a9392c94312d0566c67ebcc60b11551211c1d0605cd45f2b01aef406d1ad49bb448a98daed47d53cc13f4d5cc0a2ea0ebdb9d34edebb772706fbd69 SHA512 34ef7943b3edac7f3d8bf8f191ba2c65da4d14307e053216b70bb0573182df0630a243f390d0455255a84d6fdb88e93dc886eb4edb49f31da5acdea400579089 -DIST nvidia-settings-580.95.05.tar.bz2 1131496 BLAKE2B 5eb45787d743319593ca36c6d95fc9e93a020615935211c627dbebccecf92b8dd7d28c6d63a95a07c8cad1a70a65b0ddcc0040564ece0bf3383478ae59bd3aa2 SHA512 8c60d4df230e253d5fdeda972f0a8a9285ee419fe9be34aa3d25c06d4954bb9b6fc6db789f3a621813fb817f6de6fbdec6d79f70d519f1ddcb6b25b8378d6480 -DIST nvidia-settings-590.44.01.tar.bz2 1134395 BLAKE2B b7a8a6f543f50bb2c399c45eba3cda4459518366868938f904a64412e83fca813cf6f545713c7dea2c9c8ac671b99192ba9e6e96c91fbccf4b4f8974a7a5471b SHA512 8aa2987381ebf3e7c8cf85264a4482368578ae28319edb53c1be70130faf27a62b2fc291225c503b499095c05c4a50d0d2d6845e9ccd080395b511a6ebc474dd +DIST nvidia-settings-535.288.01.tar.bz2 1094513 BLAKE2B 8b7112b44bbe3445b63ddc245edbdb717436432482e9f87398863ffd08c520b6ac3527d3d47a75cc7e0ddec3931302e3029ccd7050db1abcc317ebf697284e01 SHA512 f1a817d9463a928fe47fed14da5d1bc0b9cbe0a910cbf01fca0d4edbee0effa989ec1cbf34e0aba6cc8516cf7bdadbc60ee6f0e4178e3c6cfb78301a1ef5aa8b +DIST nvidia-settings-570.211.01.tar.bz2 1123957 BLAKE2B 7355319d29f96aeeada3cd1ffd08b053fa76a5f2f0dd35fac383ff5c1ffd4abba95d0a7f0f421fc4b74a11f2c94352c9e2db363034e5361a0d18017a321261f2 SHA512 8f29c02597eedd934531e703c617aaa7504effe836257de07c664145e07690b0b34b8c893c01e9e561bf90cb3c15b1b6c116e2a7a88ea1a733f2872490c10441 +DIST nvidia-settings-580.126.09.tar.bz2 1132737 BLAKE2B 9d32e702265c8802fee8694cd5b1170c4c19dce8e5c33047376368492a6b531ee09b9aaa81617db5b48dde6e8d1b34f5010fbe7e720598997e68f754c5985b05 SHA512 57ae5968056fbe5c76a2a0bebcd42c5a530874c787be2439ed7dd0e916dad20b1151f9ab91073751bbf0bbd344e70d32598ceec03344691a7fe2812e8a3d1c19 +DIST nvidia-settings-580.126.18.tar.bz2 1132578 BLAKE2B d903f91d84de3f98fcb6c32601c77297ad8cb34e74dc5719a36e5777a4f2003207f7ec3c41defaea4b26af739099a84648f994720db700090b81f7980d3e7cdb SHA512 6980829ba2e4517f0765b3a0321e408182627ed4f08601b9a44cbb7fd35bac46ba6eedc890e585ac9d1feb971fc0a0f3ae6992f3ee30bfe496cdec97ef4d6f30 DIST nvidia-settings-590.48.01.tar.bz2 1134292 BLAKE2B 901a3bad03d4eaca3f78afc154539f72aa882ae19052b43b6bfb267a3be1ded4af607fbc05d1a379a8038a22fa5a9c19dd6c393f3436cda97cc7049820f1ec57 SHA512 c82737dc8894a35b7e87afd99fb98c0a4093ec8fd48590cc8e09154d55f948ceaf48fff31c7d015adcceab31a00c5ec4334fe1e90aec94c4bb076118b789dd4c DIST nvidia-xconfig-390.157.tar.bz2 107399 BLAKE2B 0cbb3b1ba508ddc3ba4a161c290b31bf7a67f67880bdbd01171a962c5fa97ca945b1ef17932403f8589309380743f1da632c728d8accb6d4e56dbd895e7486bb SHA512 50b390811c9bf091b14add41f886925b17496b41006b7d3981d2398caa65cf5db8a579c8cebed78278384bf3acc629befb07b54339c61abcc75852c0dcb8b8ca DIST nvidia-xconfig-470.256.02.tar.bz2 108698 BLAKE2B e468574e4bc57e7279d4120e2b08a201671b50d408be0c530eabe5da7d45daaf21cbf5c7fa31410d0d732fe8ea1551cbfb21d1ae193c1b3f5b5c50c764c9e236 SHA512 9dcec1e0c2b56b4d38a5f2c76086302f8bc0860cc15012cce29c3a5062f801a48b6a2bb78344361b07a2717b58502783441a2daf402d9973a17526175b1f15ca -DIST nvidia-xconfig-535.274.02.tar.bz2 111008 BLAKE2B 4311cf01a7224a0fdf2d8730b2a88931d53916cd627740e6e8e73dbbd29641dfc32721c9886094799953464a69b80aa1fae1d6cf4b203c512ad65d2ae7f5356a SHA512 6c2d5e068f1e6d1c37041b179203608144797893e31c99133e1189a31e219176b3e032222d935679f4c30a79cb960741cecdaca0b552feb75eb10366aa9d66fa -DIST nvidia-xconfig-570.207.tar.bz2 111226 BLAKE2B 63ecc5f170fadb60fb841727799a31a4bd5a8465ca4b890d1d959a3559fe396ffd4ef4d9f0f79abbd59114894411fa584e1abb3e535d4ac47421480a40d5b4f3 SHA512 4250eef4f367d2d2a7e99cc393c1c738fb84240248c482343acc2b3a197d3c2cd7668c455d5d64758d83823dd17393d1699bed13ac9f8eb05b4b62150a2dde57 -DIST nvidia-xconfig-580.119.02.tar.bz2 111561 BLAKE2B 8e23563e05168de19f616c2fa7aaa69d626c9d21c3d7f7f876f60a711222779d87c1bdec7203bb9bbd401f198c0e1ea87ff586077cb7be78455722d1bef90b3a SHA512 68ae0de9adf9d33ef8d4703d508549a2268be5c11668cc067848b86fb920c428fb83dbb31a8497ccc9edcb43b2510b3c36bd7b4ded3a2cc0f022f372af418b29 -DIST nvidia-xconfig-580.95.05.tar.bz2 111488 BLAKE2B abaf3fa63c19129df539a1e0eb4466ff7b8ccf81527c69b6bcfb16df2abf0950541791ecca130ff59ec0028a5a92c1a0912bc1d35a48efbd331a58f224699db6 SHA512 4fa0d411e8c41ee5f24443ef9f88a261c006b5b487f6745d54eac27805a8a810ef5ffba1da3952a39978e1ccfe39114399722e392d282791a648c69a88b7777e -DIST nvidia-xconfig-590.44.01.tar.bz2 111036 BLAKE2B a8108784699b6b8e507a916152a2a02918db4da1f0ee24d4e31dbd1de779bef910f69fbfe0414df33d58b0ca1656f2d9a6fd4796c472078b5d919a14dd0b42ff SHA512 85b64c0fe5d6633b3aa95276f521b828b98278376b5be428080e257752332618867ded6805e8b50cbe9331bc4dd9fbdbdfd3c29e46fed1da890a993acbb3f613 +DIST nvidia-xconfig-535.288.01.tar.bz2 110671 BLAKE2B 94f8f5c651df7d43de308938312b2c97e8a0292a2575914250e22dc62e139cba36be038453d6f1688e8ebb90883ce0806424eee7ca6fd3a5cee5e9884cfc8d60 SHA512 4368625df5eec5ec8296b9f561a8dc32fda958fd4ea37a4bc9da42303529d6366b41a028d2d9614ba0dcd029a3a5740c15e4fa1febec31da7df51b0b276a831c +DIST nvidia-xconfig-570.211.01.tar.bz2 111263 BLAKE2B 9d6e7e973156d91ce1a213a95aa31269d811024ebf358dfad42c0771cafc6c4f2d4257994d67e67ac637a1107527511d8f8219446e9a57560bab8ba7d4d2684c SHA512 8e8be1e95998fde590bdb5c0246764a426d623c8bf9e705e7bff649f1daebb86726cead4add570622e34aea9a38b697d31d11d7a2fc741dd91af2ccaaa024cd1 +DIST nvidia-xconfig-580.126.09.tar.bz2 111541 BLAKE2B bab1f4347613ffe30ada9df4fa387a8426f4c829c4346cdb57cfa4334f93b2048b1296033e8ea79c1a5210ae8021ab5e4aa7d8dcbec216a886f5be14b684fdf4 SHA512 810e831e2522029e82e5bde1eab9ec641da271336c430eb2ce5645e7e765f179694fdb93a41e49ba2c951c0b0edc2fdffa77d088e9678ab206eabe45866c6c09 +DIST nvidia-xconfig-580.126.18.tar.bz2 111880 BLAKE2B 669b02a4dd3d3b08937f67f7812ac6b4f715d471526b3c5178623699fff2b89c596c199d1b8fa1837bb2a5c784f8adf68d1977686da8c586c5abd3f8b49d71f9 SHA512 769cff278522fd3a5435d0b2c31c627f4091be996f2e13ede2df064e025a32cdbe6818e5a81e86a0338a6e7b9c96b9aa4bd7d8a9ff737f738a46f0be63c9b90a DIST nvidia-xconfig-590.48.01.tar.bz2 110986 BLAKE2B 6ec7f5eee2ca4c4a96f0607ac94ec3d491137a0e8750a6ae4c46feddced61f7a8b1eb77aa333008a69ceab7ad071671b7449bb2ed9ba285359fd1cb991a9c9b2 SHA512 e85dbd9ba5e056fb6f8a4618df35fa1692d0037e50122a5659ebda043a9b380fdf72aaa56f82b64e5525c36f429ed9bbd7f0e319c608f7c50355d47ab3b24077 -DIST open-gpu-kernel-modules-580.94.13.tar.gz 23297773 BLAKE2B e694d81d489de376664d3e3afac2c127b4bac9db0a255f04a1a4b48ecdbf52e23d6523230ece371a30beb4699425d30f8c627bcf8c33214f87f46eddf18922c7 SHA512 03b150cc425f23bc9f567ab731a139379508e1368ed2ea7323ec9ab5fbc91839fede00dadbaf5c21ba2c3f0ffb5cafde0bc7871db1512838dd8b8f85c3a5fad2 +DIST open-gpu-kernel-modules-580.94.18.tar.gz 23301123 BLAKE2B d05530e8dd763a5305a20fd7a47a99f5bb9088cee68fc023f00c94c48f6477b0db504fa95f3ff1262d21cd57b05af529341bebfc69ec3ce904ac0315d424b0f7 SHA512 71fb699c57061d226ddfc1e8974c9c3f50d68af651e0d56afb425482b35c8892c67f60f9a41bde86e3f6d93b15bb8661d1f57b55b0fc18c84a6b8775ca5328c4 diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-590.conf b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-580.conf similarity index 83% rename from sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-590.conf rename to sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-580.conf index 5ab27a9e9d6..36d71d1664c 100644 --- a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-590.conf +++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-580.conf @@ -17,6 +17,12 @@ options nvidia-drm modeset=1 # if need to troubleshoot issues, and re-enable if unrelated. #options nvidia-drm fbdev=0 +# Disable use of the GSP firmware, only an option when USE=kernel-open +# is disabled (which in turn disables usage of Blackwell 50xx or newer +# GPUs). This should not be touched unless it is causing known issues. +# Notably may be needed to get Runtime D3 to work with Turing GPUs. +#options nvidia NVreg_EnableGpuFirmware=0 + # Suspend options. Note that Allocations=1 requires suspend hooks currently # only used when either systemd or elogind is used to suspend. If using # neither or have issues, try Allocations=0 (revert if it does not help diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-kernel-module-source-580.126.09-kernel6.19.patch b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-kernel-module-source-580.126.09-kernel6.19.patch new file mode 100644 index 00000000000..bab13eac328 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-kernel-module-source-580.126.09-kernel6.19.patch @@ -0,0 +1,18 @@ +https://bugs.gentoo.org/970010 +--- a/kernel-module-source/kernel-open/nvidia-uvm/uvm_hmm.c ++++ b/kernel-module-source/kernel-open/nvidia-uvm/uvm_hmm.c +@@ -22,4 +22,5 @@ + *******************************************************************************/ + ++#include <linux/version.h> + #include "uvm_hmm.h" + +@@ -79,5 +80,7 @@ + // function will need to be revisited + // +-#if defined(NV_ZONE_DEVICE_PAGE_INIT_HAS_ORDER_ARG) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) ++#define ZONE_DEVICE_PAGE_INIT(page) zone_device_page_init(page, page_pgmap(page), 0); ++#elif defined(NV_ZONE_DEVICE_PAGE_INIT_HAS_ORDER_ARG) + #define ZONE_DEVICE_PAGE_INIT(page) zone_device_page_init(page, 0) + #else diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-kernel-module-source-590.48.01-kernel6.19.patch b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-kernel-module-source-590.48.01-kernel6.19.patch new file mode 100644 index 00000000000..0b48d877323 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-kernel-module-source-590.48.01-kernel6.19.patch @@ -0,0 +1,99 @@ +https://bugs.gentoo.org/970010 +--- a/kernel-module-source/kernel-open/nvidia-uvm/uvm_hmm.c ++++ b/kernel-module-source/kernel-open/nvidia-uvm/uvm_hmm.c +@@ -57,4 +57,5 @@ + #include <linux/memremap.h> + #include <linux/wait.h> ++#include <linux/version.h> + + #include "uvm_common.h" +@@ -2141,5 +2142,9 @@ + UVM_ASSERT(!page_count(dpage)); + UVM_ASSERT(!dpage->zone_device_data); ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) ++ zone_device_page_init(dpage, page_pgmap(dpage), 0); ++#else + zone_device_page_init(dpage); ++#endif + dpage->zone_device_data = gpu_chunk; + atomic64_inc(&va_block->hmm.va_space->hmm.allocated_page_count); +--- a/kernel-module-source/kernel-open/nvidia-uvm/uvm_pmm_gpu.c ++++ b/kernel-module-source/kernel-open/nvidia-uvm/uvm_pmm_gpu.c +@@ -178,4 +178,6 @@ + #include "uvm_linux.h" + ++#include <linux/version.h> ++ + #if defined(CONFIG_PCI_P2PDMA) && defined(NV_STRUCT_PAGE_HAS_ZONE_DEVICE_DATA) + #include <linux/pci-p2pdma.h> +@@ -3000,6 +3002,12 @@ + } + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) ++static void devmem_folio_free(struct folio *folio) ++{ ++ struct page *page = &folio->page; ++#else + static void devmem_page_free(struct page *page) + { ++#endif + uvm_gpu_chunk_t *chunk = uvm_pmm_devmem_page_to_chunk(page); + uvm_gpu_t *gpu = uvm_gpu_chunk_get_gpu(chunk); +@@ -3061,5 +3069,9 @@ + static const struct dev_pagemap_ops uvm_pmm_devmem_ops = + { ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) ++ .folio_free = devmem_folio_free, ++#else + .page_free = devmem_page_free, ++#endif + .migrate_to_ram = devmem_fault_entry, + }; +@@ -3149,6 +3161,12 @@ + } + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) ++static void device_p2p_folio_free(struct folio *folio) ++{ ++ struct page *page = &folio->page; ++#else + static void device_p2p_page_free(struct page *page) + { ++#endif + uvm_device_p2p_mem_t *p2p_mem = page->zone_device_data; + +@@ -3159,12 +3177,24 @@ + + #if UVM_CDMM_PAGES_SUPPORTED() ++ ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) ++static void device_coherent_folio_free(struct folio *folio) ++{ ++ device_p2p_folio_free(folio); ++} ++#else + static void device_coherent_page_free(struct page *page) + { + device_p2p_page_free(page); + } ++#endif + + static const struct dev_pagemap_ops uvm_device_coherent_pgmap_ops = + { ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) ++ .folio_free = device_coherent_folio_free, ++#else + .page_free = device_coherent_page_free, ++#endif + }; + +@@ -3303,5 +3333,9 @@ + static const struct dev_pagemap_ops uvm_device_p2p_pgmap_ops = + { ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) ++ .folio_free = device_p2p_folio_free, ++#else + .page_free = device_p2p_page_free, ++#endif + }; + diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/metadata.xml b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/metadata.xml index 05def8b1636..d7260344c52 100644 --- a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/metadata.xml @@ -12,10 +12,8 @@ <use> <flag name="kernel-open"> Use the open source variant of the drivers (only - works for Turing/Ampere or newer GPUs, aka GTX 1650+ - -- recommended with >=560.xx drivers if usable and - is *required* for 50xx Blackwell or newer GPUs -- - always-enabled regardless of USE in >=590.xx) + usable with Turing/Ampere or newer GPUs, aka GTX 1650+ + -- note 50xx Blackwell or newer cards *require* this) </flag> <flag name="persistenced">Install the persistence daemon for keeping devices state when unused (e.g. for headless)</flag> <flag name="powerd">Install the NVIDIA dynamic boost support daemon (only useful with specific laptops, ignore if unsure)</flag> diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-535.274.02.ebuild b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-535.288.01.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-535.274.02.ebuild rename to sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-535.288.01.ebuild index aecc28257f6..55126f020b2 100644 --- a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-535.274.02.ebuild +++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-535.288.01.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -26,7 +26,6 @@ LICENSE="NVIDIA-2023 Apache-2.0 BSD BSD-2 GPL-2 MIT ZLIB curl openssl" SLOT="0/${PV%%.*}" KEYWORDS="-* amd64 ~arm64" IUSE="+X abi_x86_32 abi_x86_64 kernel-open persistenced powerd +static-libs +tools wayland" -REQUIRED_USE="kernel-open? ( modules )" COMMON_DEPEND=" acct-group/video @@ -183,6 +182,14 @@ src_compile() { local xnvflags=-fPIC #840389 tc-is-lto && xnvflags+=" $(test-flags-CC -ffat-lto-objects)" + # Same as uname -m. + local target_arch + case ${ARCH} in + amd64) target_arch=x86_64 ;; + arm64) target_arch=aarch64 ;; + *) die "Unrecognised architecture: ${ARCH}" ;; + esac + NV_ARGS=( PREFIX="${EPREFIX}"/usr HOST_CC="$(tc-getBUILD_CC)" @@ -190,6 +197,7 @@ src_compile() { BUILD_GTK2LIB= NV_USE_BUNDLED_LIBJANSSON=0 NV_VERBOSE=1 DO_STRIP= MANPAGE_GZIP= OUTPUTDIR=out + TARGET_ARCH="${target_arch}" WAYLAND_AVAILABLE=$(usex wayland 1 0) XNVCTRL_CFLAGS="${xnvflags}" ) @@ -218,6 +226,7 @@ src_compile() { CC="${KERNEL_CC}" # needed for above gnu17 workaround IGNORE_CC_MISMATCH=yes NV_VERBOSE=1 SYSOUT="${KV_OUT_DIR}" SYSSRC="${KV_DIR}" + TARGET_ARCH="${target_arch}" # kernel takes "x86" and "x86_64" as meaning the same, but nvidia # makes the distinction (since 550.135) and is not happy with "x86" @@ -555,7 +564,7 @@ pkg_postinst() { ewarn "[2] https://wiki.gentoo.org/wiki/Nouveau" fi - if use kernel-open; then + if use kernel-open && use modules; then ewarn "\nOpen source variant of ${PN} was selected, be warned it is experimental" ewarn "and only for modern GPUs (e.g. GTX 1650+). Try to disable if run into issues." ewarn "Please also see: ${EROOT}/usr/share/doc/${PF}/html/kernel_open.html" diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-570.207.ebuild b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-570.211.01.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-570.207.ebuild rename to sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-570.211.01.ebuild index b344456365b..4d3677fc847 100644 --- a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-570.207.ebuild +++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-570.211.01.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -26,7 +26,6 @@ LICENSE="NVIDIA-2025 Apache-2.0 BSD BSD-2 GPL-2 MIT ZLIB curl openssl" SLOT="0/${PV%%.*}" KEYWORDS="-* amd64 ~arm64" IUSE="+X abi_x86_32 abi_x86_64 kernel-open persistenced powerd +static-libs +tools wayland" -REQUIRED_USE="kernel-open? ( modules )" COMMON_DEPEND=" acct-group/video @@ -61,10 +60,7 @@ RDEPEND=" powerd? ( sys-apps/dbus[abi_x86_32(-)?] ) wayland? ( >=gui-libs/egl-gbm-1.1.1-r2[abi_x86_32(-)?] - || ( - >=gui-libs/egl-wayland-1.1.13.1[abi_x86_32(-)?] - gui-libs/egl-wayland2[abi_x86_32(-)?] - ) + >=gui-libs/egl-wayland-1.1.13.1[abi_x86_32(-)?] X? ( gui-libs/egl-x11[abi_x86_32(-)?] ) ) " @@ -186,6 +182,14 @@ src_compile() { local xnvflags=-fPIC #840389 tc-is-lto && xnvflags+=" $(test-flags-CC -ffat-lto-objects)" + # Same as uname -m. + local target_arch + case ${ARCH} in + amd64) target_arch=x86_64 ;; + arm64) target_arch=aarch64 ;; + *) die "Unrecognised architecture: ${ARCH}" ;; + esac + NV_ARGS=( PREFIX="${EPREFIX}"/usr HOST_CC="$(tc-getBUILD_CC)" @@ -193,6 +197,7 @@ src_compile() { BUILD_GTK2LIB= NV_USE_BUNDLED_LIBJANSSON=0 NV_VERBOSE=1 DO_STRIP= MANPAGE_GZIP= OUTPUTDIR=out + TARGET_ARCH="${target_arch}" WAYLAND_AVAILABLE=$(usex wayland 1 0) XNVCTRL_CFLAGS="${xnvflags}" ) @@ -217,6 +222,7 @@ src_compile() { local modargs=( IGNORE_CC_MISMATCH=yes NV_VERBOSE=1 SYSOUT="${KV_OUT_DIR}" SYSSRC="${KV_DIR}" + TARGET_ARCH="${target_arch}" # kernel takes "x86" and "x86_64" as meaning the same, but nvidia # makes the distinction (since 550.135) and is not happy with "x86" @@ -569,7 +575,7 @@ pkg_postinst() { ewarn "[2] https://wiki.gentoo.org/wiki/Nouveau" fi - if use kernel-open && [[ ! -v NV_HAD_KERNEL_OPEN ]]; then + if use kernel-open && use modules && [[ ! -v NV_HAD_KERNEL_OPEN ]]; then ewarn "\nOpen source variant of ${PN} was selected, note that it requires" ewarn "Turing/Ampere+ GPUs (aka GTX 1650+). Try disabling if run into issues." ewarn "Also see: ${EROOT}/usr/share/doc/${PF}/html/kernel_open.html" diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.126.09-r1.ebuild b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.126.09-r1.ebuild new file mode 100644 index 00000000000..89f7e24ef28 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.126.09-r1.ebuild @@ -0,0 +1,605 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MODULES_OPTIONAL_IUSE=+modules +inherit desktop dot-a eapi9-pipestatus eapi9-ver flag-o-matic linux-mod-r1 +inherit readme.gentoo-r1 systemd toolchain-funcs unpacker user-info + +MODULES_KERNEL_MAX=6.19 +NV_URI="https://download.nvidia.com/XFree86/" + +DESCRIPTION="NVIDIA Accelerated Graphics Driver" +HOMEPAGE="https://www.nvidia.com/" +SRC_URI=" + amd64? ( ${NV_URI}Linux-x86_64/${PV}/NVIDIA-Linux-x86_64-${PV}.run ) + arm64? ( ${NV_URI}Linux-aarch64/${PV}/NVIDIA-Linux-aarch64-${PV}.run ) + $(printf "${NV_URI}%s/%s-${PV}.tar.bz2 " \ + nvidia-{installer,modprobe,persistenced,settings,xconfig}{,}) + ${NV_URI}NVIDIA-kernel-module-source/NVIDIA-kernel-module-source-${PV}.tar.xz +" +# nvidia-installer is unused but here for GPL-2's "distribute sources" +S=${WORKDIR} + +LICENSE=" + NVIDIA-2025 Apache-2.0 Boost-1.0 BSD BSD-2 GPL-2 MIT ZLIB + curl openssl public-domain +" +SLOT="0/${PV%%.*}" +KEYWORDS="-* amd64 ~arm64" +IUSE=" + +X abi_x86_32 abi_x86_64 kernel-open persistenced powerd + +static-libs +tools wayland +" + +COMMON_DEPEND=" + acct-group/video + X? ( x11-libs/libpciaccess ) + persistenced? ( + acct-user/nvpd + net-libs/libtirpc:= + ) + tools? ( + >=app-accessibility/at-spi2-core-2.46:2 + dev-libs/glib:2 + dev-libs/jansson:= + media-libs/harfbuzz:= + x11-libs/cairo + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3[X] + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXxf86vm + x11-libs/pango + ) +" +RDEPEND=" + ${COMMON_DEPEND} + dev-libs/openssl:0/3 + sys-libs/glibc + X? ( + media-libs/libglvnd[X,abi_x86_32(-)?] + x11-libs/libX11[abi_x86_32(-)?] + x11-libs/libXext[abi_x86_32(-)?] + ) + powerd? ( sys-apps/dbus[abi_x86_32(-)?] ) + wayland? ( + >=gui-libs/egl-gbm-1.1.1-r2[abi_x86_32(-)?] + >=gui-libs/egl-wayland-1.1.13.1[abi_x86_32(-)?] + X? ( gui-libs/egl-x11[abi_x86_32(-)?] ) + ) +" +DEPEND=" + ${COMMON_DEPEND} + static-libs? ( + x11-base/xorg-proto + x11-libs/libX11 + x11-libs/libXext + ) + tools? ( + dev-util/vulkan-headers + media-libs/libglvnd + sys-apps/dbus + x11-base/xorg-proto + x11-libs/libXrandr + x11-libs/libXv + x11-libs/libvdpau + ) +" +BDEPEND=" + app-alternatives/awk + sys-devel/m4 + virtual/pkgconfig +" + +# there is some non-prebuilt exceptions but rather not maintain a list +QA_PREBUILT="lib/firmware/* usr/bin/* usr/lib*" + +PATCHES=( + "${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch + "${FILESDIR}"/nvidia-settings-530.30.02-desktop.patch + "${FILESDIR}"/nvidia-kernel-module-source-${PV}-kernel6.19.patch +) + +pkg_setup() { + use modules && [[ ${MERGE_TYPE} != binary ]] || return + + # do early before linux-mod-r1 so can use chkconfig to setup CONFIG_CHECK + get_version + require_configured_kernel + + local CONFIG_CHECK=" + PROC_FS + ~DRM_KMS_HELPER + ~DRM_FBDEV_EMULATION + ~SYSVIPC + ~!LOCKDEP + ~!PREEMPT_RT + ~!RANDSTRUCT_FULL + ~!RANDSTRUCT_PERFORMANCE + ~!SLUB_DEBUG_ON + !DEBUG_MUTEXES + $(usev powerd '~CPU_FREQ') + " + + kernel_is -ge 6 11 && linux_chkconfig_present DRM_FBDEV_EMULATION && + CONFIG_CHECK+=" DRM_TTM_HELPER" + + use amd64 && kernel_is -ge 5 8 && CONFIG_CHECK+=" X86_PAT" #817764 + + use kernel-open && CONFIG_CHECK+=" MMU_NOTIFIER" #843827 + + local drm_helper_msg="Cannot be directly selected in the kernel's config menus, and may need + selection of a DRM device even if unused, e.g. CONFIG_DRM_QXL=m or + DRM_AMDGPU=m (among others, consult the kernel config's help), can + also use DRM_NOUVEAU=m as long as built as module *not* built-in." + local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but is needed for nvidia-drm.modeset=1 + support (see ${EPREFIX}/etc/modprobe.d/nvidia.conf) which is needed for wayland + and for config-less Xorg auto-detection. + ${drm_helper_msg}" + local ERROR_DRM_TTM_HELPER="CONFIG_DRM_TTM_HELPER: is not set but is needed to compile when using + kernel version 6.11.x or newer while DRM_FBDEV_EMULATION is set. + ${drm_helper_msg}" + local ERROR_DRM_FBDEV_EMULATION="CONFIG_DRM_FBDEV_EMULATION: is not set but is needed for + nvidia-drm.fbdev=1 support (see ${EPREFIX}/etc/modprobe.d/nvidia.conf), may + result in a blank console/tty." + local ERROR_MMU_NOTIFIER="CONFIG_MMU_NOTIFIER: is not set but needed to build with USE=kernel-open. + Cannot be directly selected in the kernel's menuconfig, and may need + selection of another option that requires it such as CONFIG_AMD_IOMMU=y, + or DRM_I915=m (among others, consult the kernel config's help)." + local ERROR_PREEMPT_RT="CONFIG_PREEMPT_RT: is set but is unsupported by NVIDIA upstream and + will fail to build unless the env var IGNORE_PREEMPT_RT_PRESENCE=1 is + set. Please do not report issues if run into e.g. kernel panics while + ignoring this." + local randstruct_msg="is set but NVIDIA may be unstable with + it such as causing a kernel panic on shutdown, it is recommended to + disable with CONFIG_RANDSTRUCT_NONE=y (https://bugs.gentoo.org/969413 + -- please report if this appears fixed on NVIDIA's side so can remove + this warning)." + local ERROR_RANDSTRUCT_FULL="CONFIG_RANDSTRUCT_FULL: ${randstruct_msg}" + local ERROR_RANDSTRUCT_PERFORMANCE="CONFIG_RANDSTRUCT_PERFORMANCE: ${randstruct_msg}" + + linux-mod-r1_pkg_setup +} + +src_prepare() { + # make patches usable across versions + rm nvidia-modprobe && mv nvidia-modprobe{-${PV},} || die + rm nvidia-persistenced && mv nvidia-persistenced{-${PV},} || die + rm nvidia-settings && mv nvidia-settings{-${PV},} || die + rm nvidia-xconfig && mv nvidia-xconfig{-${PV},} || die + mv NVIDIA-kernel-module-source-${PV} kernel-module-source || die + + default + + # prevent detection of incomplete kernel DRM support (bug #603818) + sed 's/defined(CONFIG_DRM/defined(CONFIG_DRM_KMS_HELPER/g' \ + -i kernel{,-module-source/kernel-open}/conftest.sh || die + + sed 's/__USER__/nvpd/' \ + nvidia-persistenced/init/systemd/nvidia-persistenced.service.template \ + > "${T}"/nvidia-persistenced.service || die + + # use alternative vulkan icd option if USE=-X (bug #909181) + use X || sed -i 's/"libGLX/"libEGL/' nvidia_{layers,icd}.json || die + + # makefile attempts to install wayland library even if not built + use wayland || sed -i 's/ WAYLAND_LIB_install$//' \ + nvidia-settings/src/Makefile || die +} + +src_compile() { + tc-export AR CC CXX LD OBJCOPY OBJDUMP PKG_CONFIG + + # extra flags for the libXNVCtrl.a static library + local xnvflags=-fPIC #840389 + tc-is-lto && xnvflags+=" $(test-flags-CC -ffat-lto-objects)" + + # Same as uname -m. + local target_arch + case ${ARCH} in + amd64) target_arch=x86_64 ;; + arm64) target_arch=aarch64 ;; + *) die "Unrecognised architecture: ${ARCH}" ;; + esac + + NV_ARGS=( + PREFIX="${EPREFIX}"/usr + HOST_CC="$(tc-getBUILD_CC)" + HOST_LD="$(tc-getBUILD_LD)" + BUILD_GTK2LIB= + NV_USE_BUNDLED_LIBJANSSON=0 + NV_VERBOSE=1 DO_STRIP= MANPAGE_GZIP= OUTPUTDIR=out + TARGET_ARCH="${target_arch}" + WAYLAND_AVAILABLE=$(usex wayland 1 0) + XNVCTRL_CFLAGS="${xnvflags}" + ) + + if use modules; then + local o_cflags=${CFLAGS} o_cxxflags=${CXXFLAGS} o_ldflags=${LDFLAGS} + + local modlistargs=video:kernel + if use kernel-open; then + modlistargs+=-module-source:kernel-module-source/kernel-open + + # environment flags are normally unused for modules, but nvidia + # uses it for building the "blob" and it is a bit fragile + filter-flags -fno-plt #912949 + filter-lto + CC=${KERNEL_CC} CXX=${KERNEL_CXX} strip-unsupported-flags + + LDFLAGS=$(raw-ldflags) + fi + + local modlist=( nvidia{,-drm,-modeset,-peermem,-uvm}=${modlistargs} ) + local modargs=( + IGNORE_CC_MISMATCH=yes NV_VERBOSE=1 + SYSOUT="${KV_OUT_DIR}" SYSSRC="${KV_DIR}" + TARGET_ARCH="${target_arch}" + + # kernel takes "x86" and "x86_64" as meaning the same, but nvidia + # makes the distinction (since 550.135) and is not happy with "x86" + # TODO?: it should be ok/better for tc-arch-kernel to do x86_64 + $(usev amd64 ARCH=x86_64) + ) + + # temporary workaround for bug #914468 + addpredict "${KV_OUT_DIR}" + + linux-mod-r1_src_compile + CFLAGS=${o_cflags} CXXFLAGS=${o_cxxflags} LDFLAGS=${o_ldflags} + fi + + emake "${NV_ARGS[@]}" -C nvidia-modprobe + use persistenced && emake "${NV_ARGS[@]}" -C nvidia-persistenced + use X && emake "${NV_ARGS[@]}" -C nvidia-xconfig + + if use tools; then + # avoid noisy *very* noisy logs with deprecation warnings + CFLAGS="-Wno-deprecated-declarations ${CFLAGS}" \ + emake "${NV_ARGS[@]}" -C nvidia-settings + elif use static-libs; then + # pretend GTK+3 is available, not actually used (bug #880879) + emake "${NV_ARGS[@]}" BUILD_GTK3LIB=1 \ + -C nvidia-settings/src out/libXNVCtrl.a + fi +} + +src_install() { + local libdir=$(get_libdir) libdir32=$(ABI=x86 get_libdir) + + NV_ARGS+=( DESTDIR="${D}" LIBDIR="${ED}"/usr/${libdir} ) + + local -A paths=( + [APPLICATION_PROFILE]=/usr/share/nvidia + [CUDA_ICD]=/etc/OpenCL/vendors + [EGL_EXTERNAL_PLATFORM_JSON]=/usr/share/egl/egl_external_platform.d + [FIRMWARE]=/lib/firmware/nvidia/${PV} + [GBM_BACKEND_LIB_SYMLINK]=/usr/${libdir}/gbm + [GLVND_EGL_ICD_JSON]=/usr/share/glvnd/egl_vendor.d + [OPENGL_DATA]=/usr/share/nvidia + [VULKANSC_ICD_JSON]=/usr/share/vulkansc + [VULKAN_ICD_JSON]=/usr/share/vulkan + [WINE_LIB]=/usr/${libdir}/nvidia/wine + [XORG_OUTPUTCLASS_CONFIG]=/usr/share/X11/xorg.conf.d + + [GLX_MODULE_SHARED_LIB]=/usr/${libdir}/xorg/modules/extensions + [GLX_MODULE_SYMLINK]=/usr/${libdir}/xorg/modules + [XMODULE_SHARED_LIB]=/usr/${libdir}/xorg/modules + ) + + local skip_files=( + $(usev !X "libGLX_nvidia libglxserver_nvidia") + libGLX_indirect # non-glvnd unused fallback + libnvidia-{gtk,wayland-client} nvidia-{settings,xconfig} # from source + libnvidia-egl-gbm 15_nvidia_gbm # gui-libs/egl-gbm + libnvidia-egl-wayland 10_nvidia_wayland # gui-libs/egl-wayland + libnvidia-egl-xcb 20_nvidia_xcb.json # gui-libs/egl-x11 + libnvidia-egl-xlib 20_nvidia_xlib.json # gui-libs/egl-x11 + libnvidia-pkcs11.so # using the openssl3 version instead + ) + local skip_modules=( + $(usev !X "nvfbc vdpau xdriver") + $(usev !modules gsp) + $(usev !powerd nvtopps) + installer nvpd # handled separately / built from source + ) + local skip_types=( + GLVND_LIB GLVND_SYMLINK EGL_CLIENT.\* GLX_CLIENT.\* # media-libs/libglvnd + OPENCL_WRAPPER.\* # virtual/opencl + DOCUMENTATION DOT_DESKTOP .\*_SRC DKMS_CONF SYSTEMD_UNIT # handled separately / unused + ) + + local DOCS=( + README.txt NVIDIA_Changelog supported-gpus/supported-gpus.json + nvidia-settings/doc/{FRAMELOCK,NV-CONTROL-API}.txt + ) + local HTML_DOCS=( html/. ) + einstalldocs + + local DISABLE_AUTOFORMATTING=yes + local DOC_CONTENTS="\ +Trusted users should be in the 'video' group to use NVIDIA devices. +You can add yourself by using: gpasswd -a my-user video\ +$(usev modules " + +Like all out-of-tree kernel modules, it is necessary to rebuild +${PN} after upgrading or rebuilding the Linux kernel +by for example running \`emerge @module-rebuild\`. Alternatively, +if using a distribution kernel (sys-kernel/gentoo-kernel{,-bin}), +this can be automated by setting USE=dist-kernel globally. + +Loaded kernel modules also must not mismatch with the installed +${PN} version (excluding -r revision), meaning should +ensure \`eselect kernel list\` points to the kernel that will be +booted before building and preferably reboot after upgrading +${PN} (the ebuild will emit a warning if mismatching). + +See '${EPREFIX}/etc/modprobe.d/nvidia.conf' for modules options.")\ +$(use amd64 && usev !abi_x86_32 " + +Note that without USE=abi_x86_32 on ${PN}, 32bit applications +(typically using wine / steam) will not be able to use GPU acceleration.") + +Be warned that USE=kernel-open may need to be either enabled or +disabled for certain cards to function: +- GTX 50xx (blackwell) and higher require it to be enabled +- GTX 1650 and higher (pre-blackwell) should work either way +- Older cards require it to be disabled + +For additional information or for troubleshooting issues, please see +https://wiki.gentoo.org/wiki/NVIDIA/nvidia-drivers and NVIDIA's own +documentation that is installed alongside this README." + readme.gentoo_create_doc + + if use modules; then + linux-mod-r1_src_install + + insinto /etc/modprobe.d + newins "${FILESDIR}"/nvidia-580.conf nvidia.conf + + # used for gpu verification with binpkgs (not kept, see pkg_preinst) + insinto /usr/share/nvidia + doins supported-gpus/supported-gpus.json + fi + + emake "${NV_ARGS[@]}" -C nvidia-modprobe install + fowners :video /usr/bin/nvidia-modprobe #505092 + fperms 4710 /usr/bin/nvidia-modprobe + + if use persistenced; then + emake "${NV_ARGS[@]}" -C nvidia-persistenced install + newconfd "${FILESDIR}"/nvidia-persistenced.confd nvidia-persistenced + newinitd "${FILESDIR}"/nvidia-persistenced.initd nvidia-persistenced + systemd_dounit "${T}"/nvidia-persistenced.service + fi + + if use tools; then + emake "${NV_ARGS[@]}" -C nvidia-settings install + + doicon nvidia-settings/doc/nvidia-settings.png + domenu nvidia-settings/doc/nvidia-settings.desktop + + exeinto /etc/X11/xinit/xinitrc.d + newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings + fi + + if use static-libs; then + dolib.a nvidia-settings/src/out/libXNVCtrl.a + strip-lto-bytecode + + insinto /usr/include/NVCtrl + doins nvidia-settings/src/libXNVCtrl/NVCtrl{Lib,}.h + fi + + use X && emake "${NV_ARGS[@]}" -C nvidia-xconfig install + + # mimic nvidia-installer by reading .manifest to install files + # 0:file 1:perms 2:type 3+:subtype/arguments -:module + local m into + while IFS=' ' read -ra m; do + ! [[ ${#m[@]} -ge 2 && ${m[-1]} =~ MODULE: ]] || + [[ " ${m[0]##*/}" =~ ^(\ ${skip_files[*]/%/.*|\\} )$ ]] || + [[ " ${m[2]}" =~ ^(\ ${skip_types[*]/%/|\\} )$ ]] || + has ${m[-1]#MODULE:} "${skip_modules[@]}" && continue + + case ${m[2]} in + MANPAGE) + gzip -dc ${m[0]} | newman - ${m[0]%.gz} + pipestatus || die + continue + ;; + GBM_BACKEND_LIB_SYMLINK) m[4]=../${m[4]};; # missing ../ + VDPAU_SYMLINK) m[4]=vdpau/; m[5]=${m[5]#vdpau/};; # .so to vdpau/ + esac + + if [[ -v 'paths[${m[2]}]' ]]; then + into=${paths[${m[2]}]} + elif [[ ${m[2]} == EXPLICIT_PATH ]]; then + into=${m[3]} + elif [[ ${m[2]} == *_BINARY ]]; then + into=/usr/bin + elif [[ ${m[3]} == COMPAT32 ]]; then + use abi_x86_32 || continue + into=/usr/${libdir32} + elif [[ ${m[2]} == *_@(LIB|SYMLINK) ]]; then + into=/usr/${libdir} + else + die "No known installation path for ${m[0]}" + fi + [[ ${m[3]: -2} == ?/ ]] && into+=/${m[3]%/} + [[ ${m[4]: -2} == ?/ ]] && into+=/${m[4]%/} + + if [[ ${m[2]} =~ _SYMLINK$ ]]; then + [[ ${m[4]: -1} == / ]] && m[4]=${m[5]} + dosym ${m[4]} ${into}/${m[0]} + continue + fi + # avoid portage warning due to missing soname links in manifest + [[ ${m[0]} =~ ^libnvidia-ngx.so ]] && + dosym ${m[0]} ${into}/${m[0]%.so*}.so.1 + + printf -v m[1] %o $((m[1] | 0200)) # 444->644 + insopts -m${m[1]} + insinto ${into} + doins ${m[0]} + done < .manifest || die + insopts -m0644 # reset + + # MODULE:installer non-skipped extras + : "$(systemd_get_sleepdir)" + exeinto "${_#"${EPREFIX}"}" + doexe systemd/system-sleep/nvidia + dobin systemd/nvidia-sleep.sh + systemd_dounit systemd/system/nvidia-{hibernate,resume,suspend,suspend-then-hibernate}.service + + dobin nvidia-bug-report.sh + + insinto /usr/share/nvidia/files.d + doins sandboxutils-filelist.json + + # MODULE:powerd extras + if use powerd; then + newinitd "${FILESDIR}"/nvidia-powerd.initd nvidia-powerd #923117 + systemd_dounit systemd/system/nvidia-powerd.service + + insinto /usr/share/dbus-1/system.d + doins nvidia-dbus.conf + fi + + # enabling is needed for sleep to work properly and little reason not to do + # it unconditionally for a better user experience + : "$(systemd_get_systemunitdir)" + local unitdir=${_#"${EPREFIX}"} + # not using relative symlinks to match systemd's own links + dosym {"${unitdir}",/etc/systemd/system/systemd-hibernate.service.wants}/nvidia-hibernate.service + dosym {"${unitdir}",/etc/systemd/system/systemd-hibernate.service.wants}/nvidia-resume.service + dosym {"${unitdir}",/etc/systemd/system/systemd-suspend.service.wants}/nvidia-suspend.service + dosym {"${unitdir}",/etc/systemd/system/systemd-suspend.service.wants}/nvidia-resume.service + dosym {"${unitdir}",/etc/systemd/system/systemd-suspend-then-hibernate.service.wants}/nvidia-suspend-then-hibernate.service + dosym {"${unitdir}",/etc/systemd/system/systemd-suspend-then-hibernate.service.wants}/nvidia-resume.service + # also add a custom elogind hook to do the equivalent of the above + exeinto /usr/lib/elogind/system-sleep + newexe "${FILESDIR}"/system-sleep.elogind nvidia + # <elogind-255.5 used a different path (bug #939216), keep a compat symlink + # TODO: cleanup after 255.5 been stable for a few months + dosym {/usr/lib,/"${libdir}"}/elogind/system-sleep/nvidia + + # needed with >=systemd-256 or may fail to resume with some setups + # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1072722 + insinto "${unitdir}"/systemd-homed.service.d + newins - 10-nvidia.conf <<-EOF + [Service] + Environment=SYSTEMD_HOME_LOCK_FREEZE_SESSION=false + EOF + insinto "${unitdir}"/systemd-suspend.service.d + newins - 10-nvidia.conf <<-EOF + [Service] + Environment=SYSTEMD_SLEEP_FREEZE_USER_SESSIONS=false + EOF + dosym -r "${unitdir}"/systemd-{suspend,hibernate}.service.d/10-nvidia.conf + dosym -r "${unitdir}"/systemd-{suspend,hybrid-sleep}.service.d/10-nvidia.conf + dosym -r "${unitdir}"/systemd-{suspend,suspend-then-hibernate}.service.d/10-nvidia.conf + + # symlink non-versioned so nvidia-settings can use it even if misdetected + dosym nvidia-application-profiles-${PV}-key-documentation \ + ${paths[APPLICATION_PROFILE]}/nvidia-application-profiles-key-documentation + + # don't attempt to strip firmware files (silences errors) + dostrip -x ${paths[FIRMWARE]} + + # sandbox issues with /dev/nvidiactl and others (bug #904292,#921578) + # are widespread and sometime affect revdeps of packages built with + # USE=opencl/cuda making it hard to manage in ebuilds (minimal set, + # ebuilds should handle manually if need others or addwrite) + insinto /etc/sandbox.d + newins - 20nvidia <<<'SANDBOX_PREDICT="/dev/nvidiactl:/dev/nvidia-caps:/dev/char"' + + # dracut does not use /etc/modprobe.d if hostonly=no, but want to make sure + # our settings are used for bug 932781#c8 and nouveau blacklist if either + # modules are included (however, just best-effort without initramfs regen) + if use modules; then + echo "install_items+=\" ${EPREFIX}/etc/modprobe.d/nvidia.conf \"" >> \ + "${ED}"/usr/lib/dracut/dracut.conf.d/10-${PN}.conf || die + fi +} + +pkg_preinst() { + has_version "${CATEGORY}/${PN}[kernel-open]" && NV_HAD_KERNEL_OPEN= + + use modules || return + + # set video group id based on live system (bug #491414) + local g=$(egetent group video | cut -d: -f3) + [[ ${g} =~ ^[0-9]+$ ]] || die "Failed to determine video group id (got '${g}')" + sed -i "s/@VIDEOGID@/${g}/" "${ED}"/etc/modprobe.d/nvidia.conf || die + + # try to find driver mismatches using temporary supported-gpus.json + for g in $(grep -l 0x10de /sys/bus/pci/devices/*/vendor 2>/dev/null); do + g=$(grep -io "\"devid\":\"$(<${g%vendor}device)\"[^}]*branch\":\"[0-9]*" \ + "${ED}"/usr/share/nvidia/supported-gpus.json 2>/dev/null) + if [[ ${g} ]]; then + g=$((${g##*\"}+1)) + if ver_test -ge ${g}; then + NV_LEGACY_MASK=">=${CATEGORY}/${PN}-${g}" + break + fi + fi + done + rm "${ED}"/usr/share/nvidia/supported-gpus.json || die +} + +pkg_postinst() { + linux-mod-r1_pkg_postinst + + readme.gentoo_print_elog + + if [[ -r /proc/driver/nvidia/version && + $(</proc/driver/nvidia/version) != *" ${PV} "* ]]; then + ewarn "\nCurrently loaded NVIDIA modules do not match the newly installed" + ewarn "libraries and may prevent launching GPU-accelerated applications." + if use modules; then + ewarn "Easiest way to fix this is normally to reboot. If still run into issues" + ewarn "(e.g. API mismatch messages in the \`dmesg\` output), please verify" + ewarn "that the running kernel is ${KV_FULL} and that (if used) the" + ewarn "initramfs does not include NVIDIA modules (or at least, not old ones)." + fi + fi + + if [[ $(</proc/cmdline) == *slub_debug=[!-]* ]]; then + ewarn "\nDetected that the current kernel command line is using 'slub_debug='," + ewarn "this may lead to system instability/freezes with this version of" + ewarn "${PN}. Bug: https://bugs.gentoo.org/796329" + fi + + if [[ -v NV_LEGACY_MASK ]]; then + ewarn "\n***WARNING***" + ewarn "\nYou are installing a version of ${PN} known not to work" + ewarn "with a GPU of the current system. If unwanted, add the mask:" + if [[ -d ${EROOT}/etc/portage/package.mask ]]; then + ewarn " echo '${NV_LEGACY_MASK}' > ${EROOT}/etc/portage/package.mask/${PN}" + else + ewarn " echo '${NV_LEGACY_MASK}' >> ${EROOT}/etc/portage/package.mask" + fi + ewarn "...then downgrade to a legacy[1] branch if possible (not all old versions" + ewarn "are available or fully functional, may need to consider nouveau[2])." + ewarn "[1] https://www.nvidia.com/object/IO_32667.html" + ewarn "[2] https://wiki.gentoo.org/wiki/Nouveau" + fi + + if use kernel-open && use modules && [[ ! -v NV_HAD_KERNEL_OPEN ]]; then + ewarn "\nOpen source variant of ${PN} was selected, note that it requires" + ewarn "Turing/Ampere+ GPUs (aka GTX 1650+). Try disabling if run into issues." + ewarn "Also see: ${EROOT}/usr/share/doc/${PF}/html/kernel_open.html" + fi + + if ver_replacing -lt 580.126.09-r1; then + elog "\n>=nvidia-drivers-580.126.09-r1 changes some defaults that may or may" + elog "not need attention:" + elog "1. nvidia-drm.modeset=1 is now default regardless of USE=wayland" + elog "2. nvidia-drm.fbdev=1 is now also tentatively default to match upstream" + elog "See ${EROOT}/etc/modprobe.d/nvidia.conf to modify settings if needed," + elog "fbdev=1 *could* cause issues for the console display with some setups." + fi +} diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.95.05.ebuild b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.126.09.ebuild similarity index 95% rename from sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.95.05.ebuild rename to sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.126.09.ebuild index 3dde3bbccdd..d4e71fe8b01 100644 --- a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.95.05.ebuild +++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.126.09.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -7,7 +7,7 @@ MODULES_OPTIONAL_IUSE=+modules inherit desktop dot-a eapi9-pipestatus flag-o-matic linux-mod-r1 inherit readme.gentoo-r1 systemd toolchain-funcs unpacker user-info -MODULES_KERNEL_MAX=6.18 +MODULES_KERNEL_MAX=6.19 NV_URI="https://download.nvidia.com/XFree86/" DESCRIPTION="NVIDIA Accelerated Graphics Driver" @@ -29,7 +29,6 @@ LICENSE=" SLOT="0/${PV%%.*}" KEYWORDS="-* amd64 ~arm64" IUSE="+X abi_x86_32 abi_x86_64 kernel-open persistenced powerd +static-libs +tools wayland" -REQUIRED_USE="kernel-open? ( modules )" COMMON_DEPEND=" acct-group/video @@ -64,10 +63,7 @@ RDEPEND=" powerd? ( sys-apps/dbus[abi_x86_32(-)?] ) wayland? ( >=gui-libs/egl-gbm-1.1.1-r2[abi_x86_32(-)?] - || ( - >=gui-libs/egl-wayland-1.1.13.1[abi_x86_32(-)?] - gui-libs/egl-wayland2[abi_x86_32(-)?] - ) + >=gui-libs/egl-wayland-1.1.13.1[abi_x86_32(-)?] X? ( gui-libs/egl-x11[abi_x86_32(-)?] ) ) " @@ -100,7 +96,7 @@ QA_PREBUILT="lib/firmware/* usr/bin/* usr/lib*" PATCHES=( "${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch "${FILESDIR}"/nvidia-settings-530.30.02-desktop.patch - "${FILESDIR}"/nvidia-kernel-module-source-580.95.05-kernel6.18.patch + "${FILESDIR}"/nvidia-kernel-module-source-${PV}-kernel6.19.patch ) pkg_setup() { @@ -117,6 +113,8 @@ pkg_setup() { ~SYSVIPC ~!LOCKDEP ~!PREEMPT_RT + ~!RANDSTRUCT_FULL + ~!RANDSTRUCT_PERFORMANCE ~!SLUB_DEBUG_ON !DEBUG_MUTEXES $(usev powerd '~CPU_FREQ') @@ -150,6 +148,13 @@ pkg_setup() { will fail to build unless the env var IGNORE_PREEMPT_RT_PRESENCE=1 is set. Please do not report issues if run into e.g. kernel panics while ignoring this." + local randstruct_msg="is set but NVIDIA may be unstable with + it such as causing a kernel panic on shutdown, it is recommended to + disable with CONFIG_RANDSTRUCT_NONE=y (https://bugs.gentoo.org/969413 + -- please report if this appears fixed on NVIDIA's side so can remove + this warning)." + local ERROR_RANDSTRUCT_FULL="CONFIG_RANDSTRUCT_FULL: ${randstruct_msg}" + local ERROR_RANDSTRUCT_PERFORMANCE="CONFIG_RANDSTRUCT_PERFORMANCE: ${randstruct_msg}" linux-mod-r1_pkg_setup } @@ -191,6 +196,14 @@ src_compile() { local xnvflags=-fPIC #840389 tc-is-lto && xnvflags+=" $(test-flags-CC -ffat-lto-objects)" + # Same as uname -m. + local target_arch + case ${ARCH} in + amd64) target_arch=x86_64 ;; + arm64) target_arch=aarch64 ;; + *) die "Unrecognised architecture: ${ARCH}" ;; + esac + NV_ARGS=( PREFIX="${EPREFIX}"/usr HOST_CC="$(tc-getBUILD_CC)" @@ -198,6 +211,7 @@ src_compile() { BUILD_GTK2LIB= NV_USE_BUNDLED_LIBJANSSON=0 NV_VERBOSE=1 DO_STRIP= MANPAGE_GZIP= OUTPUTDIR=out + TARGET_ARCH="${target_arch}" WAYLAND_AVAILABLE=$(usex wayland 1 0) XNVCTRL_CFLAGS="${xnvflags}" ) @@ -222,6 +236,7 @@ src_compile() { local modargs=( IGNORE_CC_MISMATCH=yes NV_VERBOSE=1 SYSOUT="${KV_OUT_DIR}" SYSSRC="${KV_DIR}" + TARGET_ARCH="${target_arch}" # kernel takes "x86" and "x86_64" as meaning the same, but nvidia # makes the distinction (since 550.135) and is not happy with "x86" @@ -574,7 +589,7 @@ pkg_postinst() { ewarn "[2] https://wiki.gentoo.org/wiki/Nouveau" fi - if use kernel-open && [[ ! -v NV_HAD_KERNEL_OPEN ]]; then + if use kernel-open && use modules && [[ ! -v NV_HAD_KERNEL_OPEN ]]; then ewarn "\nOpen source variant of ${PN} was selected, note that it requires" ewarn "Turing/Ampere+ GPUs (aka GTX 1650+). Try disabling if run into issues." ewarn "Also see: ${EROOT}/usr/share/doc/${PF}/html/kernel_open.html" diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.119.02.ebuild b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.126.18.ebuild similarity index 91% rename from sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.119.02.ebuild rename to sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.126.18.ebuild index d32bb11ae40..d2e30cb0cb6 100644 --- a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.119.02.ebuild +++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.126.18.ebuild @@ -1,18 +1,13 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -# note: while this 580.119.02 version is not as broken as 580.105.08 -# was (no need to mask), it still seem to be affected by notable -# regressions compared to 580.95.05 and it should not be considered -# for stable (e.g. https://forums.developer.nvidia.com/t/355216) - MODULES_OPTIONAL_IUSE=+modules -inherit desktop dot-a eapi9-pipestatus flag-o-matic linux-mod-r1 +inherit desktop dot-a eapi9-pipestatus eapi9-ver flag-o-matic linux-mod-r1 inherit readme.gentoo-r1 systemd toolchain-funcs unpacker user-info -MODULES_KERNEL_MAX=6.18 +MODULES_KERNEL_MAX=6.19 NV_URI="https://download.nvidia.com/XFree86/" DESCRIPTION="NVIDIA Accelerated Graphics Driver" @@ -32,9 +27,11 @@ LICENSE=" curl openssl public-domain " SLOT="0/${PV%%.*}" -KEYWORDS="-* ~amd64 ~arm64" -IUSE="+X abi_x86_32 abi_x86_64 kernel-open persistenced powerd +static-libs +tools wayland" -REQUIRED_USE="kernel-open? ( modules )" +KEYWORDS="-* amd64 ~arm64" +IUSE=" + +X abi_x86_32 abi_x86_64 kernel-open persistenced powerd + +static-libs +tools wayland +" COMMON_DEPEND=" acct-group/video @@ -69,10 +66,7 @@ RDEPEND=" powerd? ( sys-apps/dbus[abi_x86_32(-)?] ) wayland? ( >=gui-libs/egl-gbm-1.1.1-r2[abi_x86_32(-)?] - || ( - >=gui-libs/egl-wayland-1.1.13.1[abi_x86_32(-)?] - gui-libs/egl-wayland2[abi_x86_32(-)?] - ) + >=gui-libs/egl-wayland-1.1.13.1[abi_x86_32(-)?] X? ( gui-libs/egl-x11[abi_x86_32(-)?] ) ) " @@ -121,6 +115,8 @@ pkg_setup() { ~SYSVIPC ~!LOCKDEP ~!PREEMPT_RT + ~!RANDSTRUCT_FULL + ~!RANDSTRUCT_PERFORMANCE ~!SLUB_DEBUG_ON !DEBUG_MUTEXES $(usev powerd '~CPU_FREQ') @@ -137,15 +133,16 @@ pkg_setup() { selection of a DRM device even if unused, e.g. CONFIG_DRM_QXL=m or DRM_AMDGPU=m (among others, consult the kernel config's help), can also use DRM_NOUVEAU=m as long as built as module *not* built-in." - local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but needed for Xorg auto-detection - of drivers (no custom config), and for wayland / nvidia-drm.modeset=1. + local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but is needed for nvidia-drm.modeset=1 + support (see ${EPREFIX}/etc/modprobe.d/nvidia.conf) which is needed for wayland + and for config-less Xorg auto-detection. ${drm_helper_msg}" local ERROR_DRM_TTM_HELPER="CONFIG_DRM_TTM_HELPER: is not set but is needed to compile when using kernel version 6.11.x or newer while DRM_FBDEV_EMULATION is set. ${drm_helper_msg}" local ERROR_DRM_FBDEV_EMULATION="CONFIG_DRM_FBDEV_EMULATION: is not set but is needed for - nvidia-drm.fbdev=1 support, currently off-by-default and it could - be ignored, but note that is due to change in the future." + nvidia-drm.fbdev=1 support (see ${EPREFIX}/etc/modprobe.d/nvidia.conf), may + result in a blank console/tty." local ERROR_MMU_NOTIFIER="CONFIG_MMU_NOTIFIER: is not set but needed to build with USE=kernel-open. Cannot be directly selected in the kernel's menuconfig, and may need selection of another option that requires it such as CONFIG_AMD_IOMMU=y, @@ -154,6 +151,13 @@ pkg_setup() { will fail to build unless the env var IGNORE_PREEMPT_RT_PRESENCE=1 is set. Please do not report issues if run into e.g. kernel panics while ignoring this." + local randstruct_msg="is set but NVIDIA may be unstable with + it such as causing a kernel panic on shutdown, it is recommended to + disable with CONFIG_RANDSTRUCT_NONE=y (https://bugs.gentoo.org/969413 + -- please report if this appears fixed on NVIDIA's side so can remove + this warning)." + local ERROR_RANDSTRUCT_FULL="CONFIG_RANDSTRUCT_FULL: ${randstruct_msg}" + local ERROR_RANDSTRUCT_PERFORMANCE="CONFIG_RANDSTRUCT_PERFORMANCE: ${randstruct_msg}" linux-mod-r1_pkg_setup } @@ -179,10 +183,6 @@ src_prepare() { # use alternative vulkan icd option if USE=-X (bug #909181) use X || sed -i 's/"libGLX/"libEGL/' nvidia_{layers,icd}.json || die - # enable nvidia-drm.modeset=1 by default with USE=wayland - cp "${FILESDIR}"/nvidia-570.conf "${T}"/nvidia.conf || die - use !wayland || sed -i '/^#.*modeset=1$/s/^#//' "${T}"/nvidia.conf || die - # makefile attempts to install wayland library even if not built use wayland || sed -i 's/ WAYLAND_LIB_install$//' \ nvidia-settings/src/Makefile || die @@ -195,6 +195,14 @@ src_compile() { local xnvflags=-fPIC #840389 tc-is-lto && xnvflags+=" $(test-flags-CC -ffat-lto-objects)" + # Same as uname -m. + local target_arch + case ${ARCH} in + amd64) target_arch=x86_64 ;; + arm64) target_arch=aarch64 ;; + *) die "Unrecognised architecture: ${ARCH}" ;; + esac + NV_ARGS=( PREFIX="${EPREFIX}"/usr HOST_CC="$(tc-getBUILD_CC)" @@ -202,6 +210,7 @@ src_compile() { BUILD_GTK2LIB= NV_USE_BUNDLED_LIBJANSSON=0 NV_VERBOSE=1 DO_STRIP= MANPAGE_GZIP= OUTPUTDIR=out + TARGET_ARCH="${target_arch}" WAYLAND_AVAILABLE=$(usex wayland 1 0) XNVCTRL_CFLAGS="${xnvflags}" ) @@ -226,6 +235,7 @@ src_compile() { local modargs=( IGNORE_CC_MISMATCH=yes NV_VERBOSE=1 SYSOUT="${KV_OUT_DIR}" SYSSRC="${KV_DIR}" + TARGET_ARCH="${target_arch}" # kernel takes "x86" and "x86_64" as meaning the same, but nvidia # makes the distinction (since 550.135) and is not happy with "x86" @@ -346,7 +356,7 @@ documentation that is installed alongside this README." linux-mod-r1_src_install insinto /etc/modprobe.d - doins "${T}"/nvidia.conf + newins "${FILESDIR}"/nvidia-580.conf nvidia.conf # used for gpu verification with binpkgs (not kept, see pkg_preinst) insinto /usr/share/nvidia @@ -516,7 +526,6 @@ documentation that is installed alongside this README." pkg_preinst() { has_version "${CATEGORY}/${PN}[kernel-open]" && NV_HAD_KERNEL_OPEN= - has_version "${CATEGORY}/${PN}[wayland]" && NV_HAD_WAYLAND= use modules || return @@ -578,15 +587,18 @@ pkg_postinst() { ewarn "[2] https://wiki.gentoo.org/wiki/Nouveau" fi - if use kernel-open && [[ ! -v NV_HAD_KERNEL_OPEN ]]; then + if use kernel-open && use modules && [[ ! -v NV_HAD_KERNEL_OPEN ]]; then ewarn "\nOpen source variant of ${PN} was selected, note that it requires" ewarn "Turing/Ampere+ GPUs (aka GTX 1650+). Try disabling if run into issues." ewarn "Also see: ${EROOT}/usr/share/doc/${PF}/html/kernel_open.html" fi - if use wayland && use modules && [[ ! -v NV_HAD_WAYLAND ]]; then - elog "\nNote that with USE=wayland, nvidia-drm.modeset=1 will be enabled" - elog "in '${EROOT}/etc/modprobe.d/nvidia.conf'. *If* experience issues," - elog "either disable wayland or edit nvidia.conf." + if ver_replacing -lt 580.126.09-r1; then + elog "\n>=nvidia-drivers-580.126.09-r1 changes some defaults that may or may" + elog "not need attention:" + elog "1. nvidia-drm.modeset=1 is now default regardless of USE=wayland" + elog "2. nvidia-drm.fbdev=1 is now also tentatively default to match upstream" + elog "See ${EROOT}/etc/modprobe.d/nvidia.conf to modify settings if needed," + elog "fbdev=1 *could* cause issues for the console display with some setups." fi } diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.94.13.ebuild b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.94.18.ebuild similarity index 93% rename from sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.94.13.ebuild rename to sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.94.18.ebuild index f3d232db2c6..3af5a212985 100644 --- a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.94.13.ebuild +++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-580.94.18.ebuild @@ -1,14 +1,14 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 MODULES_OPTIONAL_IUSE=+modules -inherit desktop dot-a eapi9-pipestatus flag-o-matic linux-mod-r1 +inherit desktop dot-a eapi9-pipestatus eapi9-ver flag-o-matic linux-mod-r1 inherit readme.gentoo-r1 systemd toolchain-funcs unpacker user-info MODULES_KERNEL_MAX=6.18 -NV_PIN=580.95.05 +NV_PIN=580.126.18 DESCRIPTION="NVIDIA Accelerated Graphics Driver" HOMEPAGE="https://developer.nvidia.com/vulkan-driver/" @@ -29,8 +29,10 @@ LICENSE=" " SLOT="0/vulkan" KEYWORDS="-* ~amd64" -IUSE="+X abi_x86_32 abi_x86_64 kernel-open persistenced powerd +static-libs +tools wayland" -REQUIRED_USE="kernel-open? ( modules )" +IUSE=" + +X abi_x86_32 abi_x86_64 kernel-open persistenced powerd + +static-libs +tools wayland +" COMMON_DEPEND=" acct-group/video @@ -65,10 +67,7 @@ RDEPEND=" powerd? ( sys-apps/dbus[abi_x86_32(-)?] ) wayland? ( >=gui-libs/egl-gbm-1.1.1-r2[abi_x86_32(-)?] - || ( - >=gui-libs/egl-wayland-1.1.13.1[abi_x86_32(-)?] - gui-libs/egl-wayland2[abi_x86_32(-)?] - ) + >=gui-libs/egl-wayland-1.1.13.1[abi_x86_32(-)?] X? ( gui-libs/egl-x11[abi_x86_32(-)?] ) ) " @@ -133,15 +132,16 @@ pkg_setup() { selection of a DRM device even if unused, e.g. CONFIG_DRM_QXL=m or DRM_AMDGPU=m (among others, consult the kernel config's help), can also use DRM_NOUVEAU=m as long as built as module *not* built-in." - local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but needed for Xorg auto-detection - of drivers (no custom config), and for wayland / nvidia-drm.modeset=1. + local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but is needed for nvidia-drm.modeset=1 + support (see ${EPREFIX}/etc/modprobe.d/nvidia.conf) which is needed for wayland + and for config-less Xorg auto-detection. ${drm_helper_msg}" local ERROR_DRM_TTM_HELPER="CONFIG_DRM_TTM_HELPER: is not set but is needed to compile when using kernel version 6.11.x or newer while DRM_FBDEV_EMULATION is set. ${drm_helper_msg}" local ERROR_DRM_FBDEV_EMULATION="CONFIG_DRM_FBDEV_EMULATION: is not set but is needed for - nvidia-drm.fbdev=1 support, currently off-by-default and it could - be ignored, but note that is due to change in the future." + nvidia-drm.fbdev=1 support (see ${EPREFIX}/etc/modprobe.d/nvidia.conf), may + result in a blank console/tty." local ERROR_MMU_NOTIFIER="CONFIG_MMU_NOTIFIER: is not set but needed to build with USE=kernel-open. Cannot be directly selected in the kernel's menuconfig, and may need selection of another option that requires it such as CONFIG_AMD_IOMMU=y, @@ -175,10 +175,6 @@ src_prepare() { # use alternative vulkan icd option if USE=-X (bug #909181) use X || sed -i 's/"libGLX/"libEGL/' nvidia_{layers,icd}.json || die - # enable nvidia-drm.modeset=1 by default with USE=wayland - cp "${FILESDIR}"/nvidia-570.conf "${T}"/nvidia.conf || die - use !wayland || sed -i '/^#.*modeset=1$/s/^#//' "${T}"/nvidia.conf || die - # makefile attempts to install wayland library even if not built use wayland || sed -i 's/ WAYLAND_LIB_install$//' \ nvidia-settings/src/Makefile || die @@ -191,6 +187,14 @@ src_compile() { local xnvflags=-fPIC #840389 tc-is-lto && xnvflags+=" $(test-flags-CC -ffat-lto-objects)" + # Same as uname -m. + local target_arch + case ${ARCH} in + amd64) target_arch=x86_64 ;; + arm64) target_arch=aarch64 ;; + *) die "Unrecognised architecture: ${ARCH}" ;; + esac + NV_ARGS=( PREFIX="${EPREFIX}"/usr HOST_CC="$(tc-getBUILD_CC)" @@ -198,6 +202,7 @@ src_compile() { BUILD_GTK2LIB= NV_USE_BUNDLED_LIBJANSSON=0 NV_VERBOSE=1 DO_STRIP= MANPAGE_GZIP= OUTPUTDIR=out + TARGET_ARCH="${target_arch}" WAYLAND_AVAILABLE=$(usex wayland 1 0) XNVCTRL_CFLAGS="${xnvflags}" ) @@ -222,6 +227,7 @@ src_compile() { local modargs=( IGNORE_CC_MISMATCH=yes NV_VERBOSE=1 SYSOUT="${KV_OUT_DIR}" SYSSRC="${KV_DIR}" + TARGET_ARCH="${target_arch}" # kernel takes "x86" and "x86_64" as meaning the same, but nvidia # makes the distinction (since 550.135) and is not happy with "x86" @@ -342,7 +348,7 @@ documentation that is installed alongside this README." linux-mod-r1_src_install insinto /etc/modprobe.d - doins "${T}"/nvidia.conf + newins "${FILESDIR}"/nvidia-580.conf nvidia.conf # used for gpu verification with binpkgs (not kept, see pkg_preinst) insinto /usr/share/nvidia @@ -512,7 +518,6 @@ documentation that is installed alongside this README." pkg_preinst() { has_version "${CATEGORY}/${PN}[kernel-open]" && NV_HAD_KERNEL_OPEN= - has_version "${CATEGORY}/${PN}[wayland]" && NV_HAD_WAYLAND= use modules || return @@ -574,15 +579,18 @@ pkg_postinst() { ewarn "[2] https://wiki.gentoo.org/wiki/Nouveau" fi - if use kernel-open && [[ ! -v NV_HAD_KERNEL_OPEN ]]; then + if use kernel-open && use modules && [[ ! -v NV_HAD_KERNEL_OPEN ]]; then ewarn "\nOpen source variant of ${PN} was selected, note that it requires" ewarn "Turing/Ampere+ GPUs (aka GTX 1650+). Try disabling if run into issues." ewarn "Also see: ${EROOT}/usr/share/doc/${PF}/html/kernel_open.html" fi - if use wayland && use modules && [[ ! -v NV_HAD_WAYLAND ]]; then - elog "\nNote that with USE=wayland, nvidia-drm.modeset=1 will be enabled" - elog "in '${EROOT}/etc/modprobe.d/nvidia.conf'. *If* experience issues," - elog "either disable wayland or edit nvidia.conf." + if ver_replacing -lt 580.94.18; then + elog "\n>=nvidia-drivers-580.94.18:0/vulkan changes some defaults that may or may" + elog "not need attention:" + elog "1. nvidia-drm.modeset=1 is now default regardless of USE=wayland" + elog "2. nvidia-drm.fbdev=1 is now also tentatively default to match upstream" + elog "See ${EROOT}/etc/modprobe.d/nvidia.conf to modify settings if needed," + elog "fbdev=1 *could* cause issues for the console display with some setups." fi } diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-590.44.01.ebuild b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-590.44.01.ebuild deleted file mode 100644 index e1f8b776485..00000000000 --- a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-590.44.01.ebuild +++ /dev/null @@ -1,567 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -MODULES_OPTIONAL_IUSE=+modules -inherit desktop dot-a eapi9-pipestatus eapi9-ver flag-o-matic linux-mod-r1 -inherit readme.gentoo-r1 systemd toolchain-funcs unpacker user-info - -MODULES_KERNEL_MAX=6.18 -NV_URI="https://download.nvidia.com/XFree86/" - -DESCRIPTION="NVIDIA Accelerated Graphics Driver" -HOMEPAGE="https://www.nvidia.com/" -SRC_URI=" - amd64? ( ${NV_URI}Linux-x86_64/${PV}/NVIDIA-Linux-x86_64-${PV}.run ) - arm64? ( ${NV_URI}Linux-aarch64/${PV}/NVIDIA-Linux-aarch64-${PV}.run ) - $(printf "${NV_URI}%s/%s-${PV}.tar.bz2 " \ - nvidia-{installer,modprobe,persistenced,settings,xconfig}{,}) - ${NV_URI}NVIDIA-kernel-module-source/NVIDIA-kernel-module-source-${PV}.tar.xz -" -# nvidia-installer is unused but here for GPL-2's "distribute sources" -S=${WORKDIR} - -LICENSE=" - NVIDIA-2025 Apache-2.0 Boost-1.0 BSD BSD-2 GPL-2 MIT ZLIB - curl openssl public-domain -" -SLOT="0/${PV%%.*}" -# kept unkeyworded due to being a beta, users are free to opt-in for testing -#KEYWORDS="-* ~amd64 ~arm64" -IUSE="+X abi_x86_32 abi_x86_64 persistenced powerd +static-libs +tools wayland" - -COMMON_DEPEND=" - acct-group/video - X? ( x11-libs/libpciaccess ) - persistenced? ( - acct-user/nvpd - net-libs/libtirpc:= - ) - tools? ( - >=app-accessibility/at-spi2-core-2.46:2 - dev-libs/glib:2 - dev-libs/jansson:= - media-libs/harfbuzz:= - x11-libs/cairo - x11-libs/gdk-pixbuf:2 - x11-libs/gtk+:3[X] - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXxf86vm - x11-libs/pango - ) -" -# egl-wayland2: nvidia currently ships both versions so, to ensure -# everything works properly, depend on both at same time for now -# (may use one or the other depending on setup) -RDEPEND=" - ${COMMON_DEPEND} - dev-libs/openssl:0/3 - sys-libs/glibc - X? ( - media-libs/libglvnd[X,abi_x86_32(-)?] - x11-libs/libX11[abi_x86_32(-)?] - x11-libs/libXext[abi_x86_32(-)?] - ) - powerd? ( sys-apps/dbus[abi_x86_32(-)?] ) - wayland? ( - >=gui-libs/egl-gbm-1.1.1-r2[abi_x86_32(-)?] - >=gui-libs/egl-wayland-1.1.13.1[abi_x86_32(-)?] - gui-libs/egl-wayland2[abi_x86_32(-)?] - X? ( gui-libs/egl-x11[abi_x86_32(-)?] ) - ) -" -DEPEND=" - ${COMMON_DEPEND} - static-libs? ( - x11-base/xorg-proto - x11-libs/libX11 - x11-libs/libXext - ) - tools? ( - dev-util/vulkan-headers - media-libs/libglvnd - sys-apps/dbus - x11-base/xorg-proto - x11-libs/libXrandr - x11-libs/libXv - x11-libs/libvdpau - ) -" -BDEPEND=" - app-alternatives/awk - sys-devel/m4 - virtual/pkgconfig -" - -# there is some non-prebuilt exceptions but rather not maintain a list -QA_PREBUILT="lib/firmware/* usr/bin/* usr/lib*" - -PATCHES=( - "${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch - "${FILESDIR}"/nvidia-settings-530.30.02-desktop.patch -) - -pkg_setup() { - use modules && [[ ${MERGE_TYPE} != binary ]] || return - - # do early before linux-mod-r1 so can use chkconfig to setup CONFIG_CHECK - get_version - require_configured_kernel - - local CONFIG_CHECK=" - MMU_NOTIFIER - PROC_FS - ~DRM_KMS_HELPER - ~DRM_FBDEV_EMULATION - ~SYSVIPC - ~!LOCKDEP - ~!PREEMPT_RT - ~!SLUB_DEBUG_ON - !DEBUG_MUTEXES - $(usev powerd '~CPU_FREQ') - " - - kernel_is -ge 6 11 && linux_chkconfig_present DRM_FBDEV_EMULATION && - CONFIG_CHECK+=" DRM_TTM_HELPER" - - use amd64 && kernel_is -ge 5 8 && CONFIG_CHECK+=" X86_PAT" #817764 - - local drm_helper_msg="Cannot be directly selected in the kernel's config menus, and may need - selection of a DRM device even if unused, e.g. CONFIG_DRM_QXL=m or - DRM_AMDGPU=m (among others, consult the kernel config's help), can - also use DRM_NOUVEAU=m as long as built as module *not* built-in." - local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but is needed for nvidia-drm.modeset=1 - support (see ${EPREFIX}/etc/modprobe.d/nvidia.conf) which is needed for wayland - and for config-less Xorg auto-detection. - ${drm_helper_msg}" - local ERROR_DRM_TTM_HELPER="CONFIG_DRM_TTM_HELPER: is not set but is needed to compile when using - kernel version 6.11.x or newer while DRM_FBDEV_EMULATION is set. - ${drm_helper_msg}" - local ERROR_DRM_FBDEV_EMULATION="CONFIG_DRM_FBDEV_EMULATION: is not set but is needed for - nvidia-drm.fbdev=1 support (see ${EPREFIX}/etc/modprobe.d/nvidia.conf), may - result in a blank console/tty." - local ERROR_MMU_NOTIFIER="CONFIG_MMU_NOTIFIER: is not set but is required for compilation. - Cannot be directly selected in the kernel's menuconfig, and may need - selection of another option that requires it such as CONFIG_AMD_IOMMU=y, - or DRM_I915=m (among others, consult the kernel config's help)." - local ERROR_PREEMPT_RT="CONFIG_PREEMPT_RT: is set but is unsupported by NVIDIA upstream and - will fail to build unless the env var IGNORE_PREEMPT_RT_PRESENCE=1 is - set. Please do not report issues if run into e.g. kernel panics while - ignoring this." - - linux-mod-r1_pkg_setup -} - -src_prepare() { - # make patches usable across versions - rm nvidia-modprobe && mv nvidia-modprobe{-${PV},} || die - rm nvidia-persistenced && mv nvidia-persistenced{-${PV},} || die - rm nvidia-settings && mv nvidia-settings{-${PV},} || die - rm nvidia-xconfig && mv nvidia-xconfig{-${PV},} || die - mv NVIDIA-kernel-module-source-${PV} kernel-module-source || die - - default - - sed 's/__USER__/nvpd/' \ - nvidia-persistenced/init/systemd/nvidia-persistenced.service.template \ - > "${T}"/nvidia-persistenced.service || die - - # use alternative vulkan icd option if USE=-X (bug #909181) - use X || sed -i 's/"libGLX/"libEGL/' nvidia_{layers,icd}.json || die - - # makefile attempts to install wayland library even if not built - use wayland || sed -i 's/ WAYLAND_LIB_install$//' \ - nvidia-settings/src/Makefile || die -} - -src_compile() { - tc-export AR CC CXX LD OBJCOPY OBJDUMP PKG_CONFIG - - # extra flags for the libXNVCtrl.a static library - local xnvflags=-fPIC #840389 - tc-is-lto && xnvflags+=" $(test-flags-CC -ffat-lto-objects)" - - NV_ARGS=( - PREFIX="${EPREFIX}"/usr - HOST_CC="$(tc-getBUILD_CC)" - HOST_LD="$(tc-getBUILD_LD)" - BUILD_GTK2LIB= - NV_USE_BUNDLED_LIBJANSSON=0 - NV_VERBOSE=1 DO_STRIP= MANPAGE_GZIP= OUTPUTDIR=out - WAYLAND_AVAILABLE=$(usex wayland 1 0) - XNVCTRL_CFLAGS="${xnvflags}" - ) - - if use modules; then - local o_cflags=${CFLAGS} o_cxxflags=${CXXFLAGS} o_ldflags=${LDFLAGS} - - # environment flags are normally unused for modules, but nvidia uses - # them for building the formerly closed "blob" and it is a bit fragile - filter-flags -fno-plt #912949 - filter-lto - CC=${KERNEL_CC} CXX=${KERNEL_CXX} strip-unsupported-flags - LDFLAGS=$(raw-ldflags) - - : video:kernel-module-source:kernel-module-source/kernel-open - local modlist=( nvidia{,-drm,-modeset,-peermem,-uvm}=${_} ) - local modargs=( - IGNORE_CC_MISMATCH=yes NV_VERBOSE=1 - SYSOUT="${KV_OUT_DIR}" SYSSRC="${KV_DIR}" - - # kernel takes "x86" and "x86_64" as meaning the same, but nvidia - # makes the distinction (since 550.135) and is not happy with "x86" - # TODO?: it should be ok/better for tc-arch-kernel to do x86_64 - $(usev amd64 ARCH=x86_64) - ) - - # temporary workaround for bug #914468 - addpredict "${KV_OUT_DIR}" - - linux-mod-r1_src_compile - CFLAGS=${o_cflags} CXXFLAGS=${o_cxxflags} LDFLAGS=${o_ldflags} - fi - - emake "${NV_ARGS[@]}" -C nvidia-modprobe - use persistenced && emake "${NV_ARGS[@]}" -C nvidia-persistenced - use X && emake "${NV_ARGS[@]}" -C nvidia-xconfig - - if use tools; then - # avoid noisy *very* noisy logs with deprecation warnings - CFLAGS="-Wno-deprecated-declarations ${CFLAGS}" \ - emake "${NV_ARGS[@]}" -C nvidia-settings - elif use static-libs; then - # pretend GTK+3 is available, not actually used (bug #880879) - emake "${NV_ARGS[@]}" BUILD_GTK3LIB=1 \ - -C nvidia-settings/src out/libXNVCtrl.a - fi -} - -src_install() { - local libdir=$(get_libdir) libdir32=$(ABI=x86 get_libdir) - - NV_ARGS+=( DESTDIR="${D}" LIBDIR="${ED}"/usr/${libdir} ) - - local -A paths=( - [APPLICATION_PROFILE]=/usr/share/nvidia - [CUDA_ICD]=/etc/OpenCL/vendors - [EGL_EXTERNAL_PLATFORM_JSON]=/usr/share/egl/egl_external_platform.d - [FIRMWARE]=/lib/firmware/nvidia/${PV} - [GBM_BACKEND_LIB_SYMLINK]=/usr/${libdir}/gbm - [GLVND_EGL_ICD_JSON]=/usr/share/glvnd/egl_vendor.d - [OPENGL_DATA]=/usr/share/nvidia - [VULKANSC_ICD_JSON]=/usr/share/vulkansc - [VULKAN_ICD_JSON]=/usr/share/vulkan - [WINE_LIB]=/usr/${libdir}/nvidia/wine - [XORG_OUTPUTCLASS_CONFIG]=/usr/share/X11/xorg.conf.d - - [GLX_MODULE_SHARED_LIB]=/usr/${libdir}/xorg/modules/extensions - [GLX_MODULE_SYMLINK]=/usr/${libdir}/xorg/modules - [XMODULE_SHARED_LIB]=/usr/${libdir}/xorg/modules - ) - - local skip_files=( - $(usev !X "libGLX_nvidia libglxserver_nvidia") - libGLX_indirect # non-glvnd unused fallback - libnvidia-{gtk,wayland-client} nvidia-{settings,xconfig} # from source - libnvidia-egl-gbm 15_nvidia_gbm # gui-libs/egl-gbm - libnvidia-egl-wayland 10_nvidia_wayland # gui-libs/egl-wayland - libnvidia-egl-wayland2 99_nvidia_wayland2 # gui-libs/egl-wayland2 - libnvidia-egl-xcb 20_nvidia_xcb.json # gui-libs/egl-x11 - libnvidia-egl-xlib 20_nvidia_xlib.json # gui-libs/egl-x11 - libnvidia-pkcs11.so # using the openssl3 version instead - ) - local skip_modules=( - $(usev !X "nvfbc vdpau xdriver") - $(usev !modules gsp) - $(usev !powerd nvtopps) - installer nvpd # handled separately / built from source - ) - local skip_types=( - GLVND_LIB GLVND_SYMLINK EGL_CLIENT.\* GLX_CLIENT.\* # media-libs/libglvnd - OPENCL_WRAPPER.\* # virtual/opencl - DOCUMENTATION DOT_DESKTOP .\*_SRC DKMS_CONF SYSTEMD_UNIT # handled separately / unused - ) - - local DOCS=( - README.txt NVIDIA_Changelog supported-gpus/supported-gpus.json - nvidia-settings/doc/{FRAMELOCK,NV-CONTROL-API}.txt - ) - local HTML_DOCS=( html/. ) - einstalldocs - - local DISABLE_AUTOFORMATTING=yes - local DOC_CONTENTS="\ -Trusted users should be in the 'video' group to use NVIDIA devices. -You can add yourself by using: gpasswd -a my-user video\ -$(usev modules " - -Like all out-of-tree kernel modules, it is necessary to rebuild -${PN} after upgrading or rebuilding the Linux kernel -by for example running \`emerge @module-rebuild\`. Alternatively, -if using a distribution kernel (sys-kernel/gentoo-kernel{,-bin}), -this can be automated by setting USE=dist-kernel globally. - -Loaded kernel modules also must not mismatch with the installed -${PN} version (excluding -r revision), meaning should -ensure \`eselect kernel list\` points to the kernel that will be -booted before building and preferably reboot after upgrading -${PN} (the ebuild will emit a warning if mismatching). - -See '${EPREFIX}/etc/modprobe.d/nvidia.conf' for modules options.")\ -$(use amd64 && usev !abi_x86_32 " - -Note that without USE=abi_x86_32 on ${PN}, 32bit applications -(typically using wine / steam) will not be able to use GPU acceleration.") - -For additional information or for troubleshooting issues, please see -https://wiki.gentoo.org/wiki/NVIDIA/nvidia-drivers and NVIDIA's own -documentation that is installed alongside this README." - readme.gentoo_create_doc - - if use modules; then - linux-mod-r1_src_install - - insinto /etc/modprobe.d - newins "${FILESDIR}"/nvidia-590.conf nvidia.conf - - # used for gpu verification with binpkgs (not kept, see pkg_preinst) - insinto /usr/share/nvidia - doins supported-gpus/supported-gpus.json - fi - - emake "${NV_ARGS[@]}" -C nvidia-modprobe install - fowners :video /usr/bin/nvidia-modprobe #505092 - fperms 4710 /usr/bin/nvidia-modprobe - - if use persistenced; then - emake "${NV_ARGS[@]}" -C nvidia-persistenced install - newconfd "${FILESDIR}"/nvidia-persistenced.confd nvidia-persistenced - newinitd "${FILESDIR}"/nvidia-persistenced.initd nvidia-persistenced - systemd_dounit "${T}"/nvidia-persistenced.service - fi - - if use tools; then - emake "${NV_ARGS[@]}" -C nvidia-settings install - - doicon nvidia-settings/doc/nvidia-settings.png - domenu nvidia-settings/doc/nvidia-settings.desktop - - exeinto /etc/X11/xinit/xinitrc.d - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings - fi - - if use static-libs; then - dolib.a nvidia-settings/src/out/libXNVCtrl.a - strip-lto-bytecode - - insinto /usr/include/NVCtrl - doins nvidia-settings/src/libXNVCtrl/NVCtrl{Lib,}.h - fi - - use X && emake "${NV_ARGS[@]}" -C nvidia-xconfig install - - # mimic nvidia-installer by reading .manifest to install files - # 0:file 1:perms 2:type 3+:subtype/arguments -:module - local m into - while IFS=' ' read -ra m; do - ! [[ ${#m[@]} -ge 2 && ${m[-1]} =~ MODULE: ]] || - [[ " ${m[0]##*/}" =~ ^(\ ${skip_files[*]/%/.*|\\} )$ ]] || - [[ " ${m[2]}" =~ ^(\ ${skip_types[*]/%/|\\} )$ ]] || - has ${m[-1]#MODULE:} "${skip_modules[@]}" && continue - - case ${m[2]} in - MANPAGE) - gzip -dc ${m[0]} | newman - ${m[0]%.gz} - pipestatus || die - continue - ;; - GBM_BACKEND_LIB_SYMLINK) m[4]=../${m[4]};; # missing ../ - VDPAU_SYMLINK) m[4]=vdpau/; m[5]=${m[5]#vdpau/};; # .so to vdpau/ - esac - - if [[ -v 'paths[${m[2]}]' ]]; then - into=${paths[${m[2]}]} - elif [[ ${m[2]} == EXPLICIT_PATH ]]; then - into=${m[3]} - elif [[ ${m[2]} == *_BINARY ]]; then - into=/usr/bin - elif [[ ${m[3]} == COMPAT32 ]]; then - use abi_x86_32 || continue - into=/usr/${libdir32} - elif [[ ${m[2]} == *_@(LIB|SYMLINK) ]]; then - into=/usr/${libdir} - else - die "No known installation path for ${m[0]}" - fi - [[ ${m[3]: -2} == ?/ ]] && into+=/${m[3]%/} - [[ ${m[4]: -2} == ?/ ]] && into+=/${m[4]%/} - - if [[ ${m[2]} =~ _SYMLINK$ ]]; then - [[ ${m[4]: -1} == / ]] && m[4]=${m[5]} - dosym ${m[4]} ${into}/${m[0]} - continue - fi - # avoid portage warning due to missing soname links in manifest - [[ ${m[0]} =~ ^libnvidia-ngx.so ]] && - dosym ${m[0]} ${into}/${m[0]%.so*}.so.1 - - printf -v m[1] %o $((m[1] | 0200)) # 444->644 - insopts -m${m[1]} - insinto ${into} - doins ${m[0]} - done < .manifest || die - insopts -m0644 # reset - - # MODULE:installer non-skipped extras - : "$(systemd_get_sleepdir)" - exeinto "${_#"${EPREFIX}"}" - doexe systemd/system-sleep/nvidia - dobin systemd/nvidia-sleep.sh - systemd_dounit systemd/system/nvidia-{hibernate,resume,suspend,suspend-then-hibernate}.service - - dobin nvidia-bug-report.sh - - insinto /usr/share/nvidia/files.d - doins sandboxutils-filelist.json - - # MODULE:powerd extras - if use powerd; then - newinitd "${FILESDIR}"/nvidia-powerd.initd nvidia-powerd #923117 - systemd_dounit systemd/system/nvidia-powerd.service - - insinto /usr/share/dbus-1/system.d - doins nvidia-dbus.conf - fi - - # enabling is needed for sleep to work properly and little reason not to do - # it unconditionally for a better user experience - : "$(systemd_get_systemunitdir)" - local unitdir=${_#"${EPREFIX}"} - # not using relative symlinks to match systemd's own links - dosym {"${unitdir}",/etc/systemd/system/systemd-hibernate.service.wants}/nvidia-hibernate.service - dosym {"${unitdir}",/etc/systemd/system/systemd-hibernate.service.wants}/nvidia-resume.service - dosym {"${unitdir}",/etc/systemd/system/systemd-suspend.service.wants}/nvidia-suspend.service - dosym {"${unitdir}",/etc/systemd/system/systemd-suspend.service.wants}/nvidia-resume.service - dosym {"${unitdir}",/etc/systemd/system/systemd-suspend-then-hibernate.service.wants}/nvidia-suspend-then-hibernate.service - dosym {"${unitdir}",/etc/systemd/system/systemd-suspend-then-hibernate.service.wants}/nvidia-resume.service - # also add a custom elogind hook to do the equivalent of the above - exeinto /usr/lib/elogind/system-sleep - newexe "${FILESDIR}"/system-sleep.elogind nvidia - # <elogind-255.5 used a different path (bug #939216), keep a compat symlink - # TODO: cleanup after 255.5 been stable for a few months - dosym {/usr/lib,/"${libdir}"}/elogind/system-sleep/nvidia - - # needed with >=systemd-256 or may fail to resume with some setups - # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1072722 - insinto "${unitdir}"/systemd-homed.service.d - newins - 10-nvidia.conf <<-EOF - [Service] - Environment=SYSTEMD_HOME_LOCK_FREEZE_SESSION=false - EOF - insinto "${unitdir}"/systemd-suspend.service.d - newins - 10-nvidia.conf <<-EOF - [Service] - Environment=SYSTEMD_SLEEP_FREEZE_USER_SESSIONS=false - EOF - dosym -r "${unitdir}"/systemd-{suspend,hibernate}.service.d/10-nvidia.conf - dosym -r "${unitdir}"/systemd-{suspend,hybrid-sleep}.service.d/10-nvidia.conf - dosym -r "${unitdir}"/systemd-{suspend,suspend-then-hibernate}.service.d/10-nvidia.conf - - # symlink non-versioned so nvidia-settings can use it even if misdetected - dosym nvidia-application-profiles-${PV}-key-documentation \ - ${paths[APPLICATION_PROFILE]}/nvidia-application-profiles-key-documentation - - # don't attempt to strip firmware files (silences errors) - dostrip -x ${paths[FIRMWARE]} - - # sandbox issues with /dev/nvidiactl and others (bug #904292,#921578) - # are widespread and sometime affect revdeps of packages built with - # USE=opencl/cuda making it hard to manage in ebuilds (minimal set, - # ebuilds should handle manually if need others or addwrite) - insinto /etc/sandbox.d - newins - 20nvidia <<<'SANDBOX_PREDICT="/dev/nvidiactl:/dev/nvidia-caps:/dev/char"' - - # dracut does not use /etc/modprobe.d if hostonly=no, but want to make sure - # our settings are used for bug 932781#c8 and nouveau blacklist if either - # modules are included (however, just best-effort without initramfs regen) - if use modules; then - echo "install_items+=\" ${EPREFIX}/etc/modprobe.d/nvidia.conf \"" >> \ - "${ED}"/usr/lib/dracut/dracut.conf.d/10-${PN}.conf || die - fi -} - -pkg_preinst() { - use modules || return - - # set video group id based on live system (bug #491414) - local g=$(egetent group video | cut -d: -f3) - [[ ${g} =~ ^[0-9]+$ ]] || die "Failed to determine video group id (got '${g}')" - sed -i "s/@VIDEOGID@/${g}/" "${ED}"/etc/modprobe.d/nvidia.conf || die - - # try to find driver mismatches using temporary supported-gpus.json - for g in $(grep -l 0x10de /sys/bus/pci/devices/*/vendor 2>/dev/null); do - g=$(grep -io "\"devid\":\"$(<${g%vendor}device)\"[^}]*branch\":\"[0-9]*" \ - "${ED}"/usr/share/nvidia/supported-gpus.json 2>/dev/null) - if [[ ${g} ]]; then - g=$((${g##*\"}+1)) - if ver_test -ge ${g}; then - NV_LEGACY_MASK=">=${CATEGORY}/${PN}-${g}" - break - fi - fi - done - rm "${ED}"/usr/share/nvidia/supported-gpus.json || die -} - -pkg_postinst() { - linux-mod-r1_pkg_postinst - - readme.gentoo_print_elog - - if [[ -r /proc/driver/nvidia/version && - $(</proc/driver/nvidia/version) != *" ${PV} "* ]]; then - ewarn "\nCurrently loaded NVIDIA modules do not match the newly installed" - ewarn "libraries and may prevent launching GPU-accelerated applications." - if use modules; then - ewarn "Easiest way to fix this is normally to reboot. If still run into issues" - ewarn "(e.g. API mismatch messages in the \`dmesg\` output), please verify" - ewarn "that the running kernel is ${KV_FULL} and that (if used) the" - ewarn "initramfs does not include NVIDIA modules (or at least, not old ones)." - fi - fi - - if [[ $(</proc/cmdline) == *slub_debug=[!-]* ]]; then - ewarn "\nDetected that the current kernel command line is using 'slub_debug='," - ewarn "this may lead to system instability/freezes with this version of" - ewarn "${PN}. Bug: https://bugs.gentoo.org/796329" - fi - - if [[ -v NV_LEGACY_MASK ]]; then - ewarn "\n***WARNING***" - ewarn "\nYou are installing a version of ${PN} known not to work" - ewarn "with a GPU of the current system. If unwanted, add the mask:" - if [[ -d ${EROOT}/etc/portage/package.mask ]]; then - ewarn " echo '${NV_LEGACY_MASK}' > ${EROOT}/etc/portage/package.mask/${PN}" - else - ewarn " echo '${NV_LEGACY_MASK}' >> ${EROOT}/etc/portage/package.mask" - fi - ewarn "...then downgrade to a legacy[1] branch if possible (not all old versions" - ewarn "are available or fully functional, may need to consider nouveau[2])." - ewarn "[1] https://www.nvidia.com/object/IO_32667.html" - ewarn "[2] https://wiki.gentoo.org/wiki/Nouveau" - fi - - if ver_replacing -lt 590; then - elog "\n>=${PN}-590 has changes that may or may not need attention:" - elog "1. support for Pascal, Maxwell, and Volta cards has been dropped" - elog " (if affected, there should be a another message about this above)" - elog "2. kernel-open USE is gone and the open source variant is *always* used" - elog " (no longer possible to disable GSP with NVreg_EnableGpuFirmware=0)" - elog "3. nvidia-drm.modeset=1 is now default regardless of USE=wayland" - elog "4. nvidia-drm.fbdev=1 is now also tentatively default to match upstream" - elog "See ${EROOT}/etc/modprobe.d/nvidia.conf to modify settings if needed," - elog "fbdev=1 *could* cause issues for the console display with some setups." - fi -} diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-590.48.01.ebuild b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-590.48.01-r1.ebuild similarity index 91% rename from sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-590.48.01.ebuild rename to sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-590.48.01-r1.ebuild index 79ae5026092..de8dcd9a226 100644 --- a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-590.48.01.ebuild +++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-590.48.01-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -7,7 +7,7 @@ MODULES_OPTIONAL_IUSE=+modules inherit desktop dot-a eapi9-pipestatus eapi9-ver flag-o-matic linux-mod-r1 inherit readme.gentoo-r1 systemd toolchain-funcs unpacker user-info -MODULES_KERNEL_MAX=6.18 +MODULES_KERNEL_MAX=6.19 NV_URI="https://download.nvidia.com/XFree86/" DESCRIPTION="NVIDIA Accelerated Graphics Driver" @@ -27,9 +27,11 @@ LICENSE=" curl openssl public-domain " SLOT="0/${PV%%.*}" -# kept unkeyworded due to being a beta, users are free to opt-in for testing KEYWORDS="-* ~amd64 ~arm64" -IUSE="+X abi_x86_32 abi_x86_64 persistenced powerd +static-libs +tools wayland" +IUSE=" + +X abi_x86_32 abi_x86_64 +kernel-open persistenced powerd + +static-libs +tools wayland +" COMMON_DEPEND=" acct-group/video @@ -101,6 +103,7 @@ QA_PREBUILT="lib/firmware/* usr/bin/* usr/lib*" PATCHES=( "${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch "${FILESDIR}"/nvidia-settings-530.30.02-desktop.patch + "${FILESDIR}"/nvidia-kernel-module-source-${PV}-kernel6.19.patch ) pkg_setup() { @@ -111,13 +114,14 @@ pkg_setup() { require_configured_kernel local CONFIG_CHECK=" - MMU_NOTIFIER PROC_FS ~DRM_KMS_HELPER ~DRM_FBDEV_EMULATION ~SYSVIPC ~!LOCKDEP ~!PREEMPT_RT + ~!RANDSTRUCT_FULL + ~!RANDSTRUCT_PERFORMANCE ~!SLUB_DEBUG_ON !DEBUG_MUTEXES $(usev powerd '~CPU_FREQ') @@ -128,6 +132,8 @@ pkg_setup() { use amd64 && kernel_is -ge 5 8 && CONFIG_CHECK+=" X86_PAT" #817764 + use kernel-open && CONFIG_CHECK+=" MMU_NOTIFIER" #843827 + local drm_helper_msg="Cannot be directly selected in the kernel's config menus, and may need selection of a DRM device even if unused, e.g. CONFIG_DRM_QXL=m or DRM_AMDGPU=m (among others, consult the kernel config's help), can @@ -142,7 +148,7 @@ pkg_setup() { local ERROR_DRM_FBDEV_EMULATION="CONFIG_DRM_FBDEV_EMULATION: is not set but is needed for nvidia-drm.fbdev=1 support (see ${EPREFIX}/etc/modprobe.d/nvidia.conf), may result in a blank console/tty." - local ERROR_MMU_NOTIFIER="CONFIG_MMU_NOTIFIER: is not set but is required for compilation. + local ERROR_MMU_NOTIFIER="CONFIG_MMU_NOTIFIER: is not set but needed to build with USE=kernel-open. Cannot be directly selected in the kernel's menuconfig, and may need selection of another option that requires it such as CONFIG_AMD_IOMMU=y, or DRM_I915=m (among others, consult the kernel config's help)." @@ -150,6 +156,13 @@ pkg_setup() { will fail to build unless the env var IGNORE_PREEMPT_RT_PRESENCE=1 is set. Please do not report issues if run into e.g. kernel panics while ignoring this." + local randstruct_msg="is set but NVIDIA may be unstable with + it such as causing a kernel panic on shutdown, it is recommended to + disable with CONFIG_RANDSTRUCT_NONE=y (https://bugs.gentoo.org/969413 + -- please report if this appears fixed on NVIDIA's side so can remove + this warning)." + local ERROR_RANDSTRUCT_FULL="CONFIG_RANDSTRUCT_FULL: ${randstruct_msg}" + local ERROR_RANDSTRUCT_PERFORMANCE="CONFIG_RANDSTRUCT_PERFORMANCE: ${randstruct_msg}" linux-mod-r1_pkg_setup } @@ -183,6 +196,14 @@ src_compile() { local xnvflags=-fPIC #840389 tc-is-lto && xnvflags+=" $(test-flags-CC -ffat-lto-objects)" + # Same as uname -m. + local target_arch + case ${ARCH} in + amd64) target_arch=x86_64 ;; + arm64) target_arch=aarch64 ;; + *) die "Unrecognised architecture: ${ARCH}" ;; + esac + NV_ARGS=( PREFIX="${EPREFIX}"/usr HOST_CC="$(tc-getBUILD_CC)" @@ -190,6 +211,7 @@ src_compile() { BUILD_GTK2LIB= NV_USE_BUNDLED_LIBJANSSON=0 NV_VERBOSE=1 DO_STRIP= MANPAGE_GZIP= OUTPUTDIR=out + TARGET_ARCH="${target_arch}" WAYLAND_AVAILABLE=$(usex wayland 1 0) XNVCTRL_CFLAGS="${xnvflags}" ) @@ -197,18 +219,24 @@ src_compile() { if use modules; then local o_cflags=${CFLAGS} o_cxxflags=${CXXFLAGS} o_ldflags=${LDFLAGS} - # environment flags are normally unused for modules, but nvidia uses - # them for building the formerly closed "blob" and it is a bit fragile - filter-flags -fno-plt #912949 - filter-lto - CC=${KERNEL_CC} CXX=${KERNEL_CXX} strip-unsupported-flags - LDFLAGS=$(raw-ldflags) + local modlistargs=video:kernel + if use kernel-open; then + modlistargs+=-module-source:kernel-module-source/kernel-open + + # environment flags are normally unused for modules, but nvidia + # uses it for building the "blob" and it is a bit fragile + filter-flags -fno-plt #912949 + filter-lto + CC=${KERNEL_CC} CXX=${KERNEL_CXX} strip-unsupported-flags + + LDFLAGS=$(raw-ldflags) + fi - : video:kernel-module-source:kernel-module-source/kernel-open - local modlist=( nvidia{,-drm,-modeset,-peermem,-uvm}=${_} ) + local modlist=( nvidia{,-drm,-modeset,-peermem,-uvm}=${modlistargs} ) local modargs=( IGNORE_CC_MISMATCH=yes NV_VERBOSE=1 SYSOUT="${KV_OUT_DIR}" SYSSRC="${KV_DIR}" + TARGET_ARCH="${target_arch}" # kernel takes "x86" and "x86_64" as meaning the same, but nvidia # makes the distinction (since 550.135) and is not happy with "x86" @@ -324,7 +352,7 @@ documentation that is installed alongside this README." linux-mod-r1_src_install insinto /etc/modprobe.d - newins "${FILESDIR}"/nvidia-590.conf nvidia.conf + newins "${FILESDIR}"/nvidia-580.conf nvidia.conf # used for gpu verification with binpkgs (not kept, see pkg_preinst) insinto /usr/share/nvidia @@ -557,10 +585,11 @@ pkg_postinst() { elog "\n>=${PN}-590 has changes that may or may not need attention:" elog "1. support for Pascal, Maxwell, and Volta cards has been dropped" elog " (if affected, there should be a another message about this above)" - elog "2. kernel-open USE is gone and the open source variant is *always* used" - elog " (no longer possible to disable GSP with NVreg_EnableGpuFirmware=0)" + elog "2. USE=kernel-open is now enabled by default" + elog " (generally safe and recommended, but some setups may hit regressions)" elog "3. nvidia-drm.modeset=1 is now default regardless of USE=wayland" elog "4. nvidia-drm.fbdev=1 is now also tentatively default to match upstream" + elog "(3+4 were also later changed in >=580.126.09-r1, may already be in-use)" elog "See ${EROOT}/etc/modprobe.d/nvidia.conf to modify settings if needed," elog "fbdev=1 *could* cause issues for the console display with some setups." fi From 42155c05b9277e51af2b0071ff51785c6a516eb9 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Fri, 27 Feb 2026 11:20:50 +0100 Subject: [PATCH 260/291] .github: Add acct-group/clock to automation Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .github/workflows/portage-stable-packages-list | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/portage-stable-packages-list b/.github/workflows/portage-stable-packages-list index 715463d768d..2627a1f65d6 100644 --- a/.github/workflows/portage-stable-packages-list +++ b/.github/workflows/portage-stable-packages-list @@ -3,6 +3,7 @@ acct-group/adm acct-group/audio acct-group/cdrom +acct-group/clock acct-group/cuse acct-group/dialout acct-group/disk From 042bb731790119371204ca0a8769221f80f1ca36 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Fri, 27 Feb 2026 11:32:14 +0100 Subject: [PATCH 261/291] overlay profiles: Update accept keywords for dev-util/catalyst Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../coreos-overlay/profiles/coreos/base/package.accept_keywords | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords index d9d41639741..9efaedfebb9 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords @@ -84,7 +84,7 @@ dev-db/etcd amd64 =dev-util/bsdiff-4.3-r4 ** # Catalyst 4 is not stable yet, but earlier versions are masked now. -=dev-util/catalyst-4.0.0 ~amd64 ~arm64 +=dev-util/catalyst-4.1.1 ~amd64 ~arm64 # Keep versions on both arches in sync. =net-firewall/conntrack-tools-1.4.8-r1 ~arm64 From a87a5b5578cae45f2d7fd4917224ee9e0e330ee8 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Thu, 5 Mar 2026 16:26:56 +0100 Subject: [PATCH 262/291] overlay coreos/user-patches: Drop unnecessary patches for dev-util/catalyst Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- ...upport-locale-gen-3-the-perl-version.patch | 47 ------------------- .../catalyst/0002-Fix-UTF-8-spelling.patch | 41 ---------------- .../user-patches/dev-util/catalyst/README.md | 3 -- 3 files changed, 91 deletions(-) delete mode 100644 sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-util/catalyst/0001-Support-locale-gen-3-the-perl-version.patch delete mode 100644 sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-util/catalyst/0002-Fix-UTF-8-spelling.patch delete mode 100644 sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-util/catalyst/README.md diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-util/catalyst/0001-Support-locale-gen-3-the-perl-version.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-util/catalyst/0001-Support-locale-gen-3-the-perl-version.patch deleted file mode 100644 index ed392d74e00..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-util/catalyst/0001-Support-locale-gen-3-the-perl-version.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 2478055bf48a54c0fcb518bbd48a30b307db0009 Mon Sep 17 00:00:00 2001 -From: Kerin Millar <kfm@plushkava.net> -Date: Mon, 18 Aug 2025 14:25:20 +0200 -Subject: [PATCH 1/2] Support locale-gen-3 (the perl version) -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org> ---- - targets/stage1/chroot.sh | 6 +++++- - targets/support/chroot-functions.sh | 2 +- - 2 files changed, 6 insertions(+), 2 deletions(-) - -diff --git a/targets/stage1/chroot.sh b/targets/stage1/chroot.sh -index e0587b59..541c060f 100755 ---- a/targets/stage1/chroot.sh -+++ b/targets/stage1/chroot.sh -@@ -91,7 +91,11 @@ run_merge --implicit-system-deps=n --oneshot "${buildpkgs[@]}" - # not run locale-gen when ROOT is set. Since we've set LANG, we need to run - # locale-gen explicitly. - if [ -x "$(command -v locale-gen)" ]; then -- locale-gen --destdir "$ROOT"/ || die "locale-gen failed" -+ if ! locale-gen -V | grep -q '^locale-gen-2\.'; then -+ locale-gen --config /etc/locale.gen --prefix "$ROOT"/ -+ else -+ locale-gen --destdir "$ROOT"/ -+ fi || die "locale-gen failed" - fi - - # Why are we removing these? Don't we need them for final make.conf? -diff --git a/targets/support/chroot-functions.sh b/targets/support/chroot-functions.sh -index d8472d46..08738d0a 100755 ---- a/targets/support/chroot-functions.sh -+++ b/targets/support/chroot-functions.sh -@@ -284,7 +284,7 @@ show_debug() { - } - - readonly locales=" --C.UTF8 UTF-8 -+C.UTF-8 UTF-8 - " - - if [[ ${RUN_DEFAULT_FUNCS} != no ]] --- -2.51.0 - diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-util/catalyst/0002-Fix-UTF-8-spelling.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-util/catalyst/0002-Fix-UTF-8-spelling.patch deleted file mode 100644 index 79f65d21802..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-util/catalyst/0002-Fix-UTF-8-spelling.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 8f3dad52ef6b7360f69f93554172d76aa5d59d8a Mon Sep 17 00:00:00 2001 -From: Sam James <sam@gentoo.org> -Date: Mon, 15 Sep 2025 12:35:43 +0100 -Subject: [PATCH 2/2] Fix UTF-8 spelling - -Bug: https://bugs.gentoo.org/962878 -Signed-off-by: Sam James <sam@gentoo.org> ---- - catalyst/base/stagebase.py | 2 +- - targets/stage1/chroot.sh | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/catalyst/base/stagebase.py b/catalyst/base/stagebase.py -index 8a3d2af6..d09b3aad 100644 ---- a/catalyst/base/stagebase.py -+++ b/catalyst/base/stagebase.py -@@ -1252,7 +1252,7 @@ class StageBase(TargetBase, ClearBase, GenBase): - '\n' - '# This sets the language of build output to English.\n' - '# Please keep this setting intact when reporting bugs.\n' -- 'LC_MESSAGES=C.utf8\n') -+ 'LC_MESSAGES=C.UTF-8\n') - - def write_binrepos_conf(self): - # only if catalyst.conf defines the host and the spec defines the path... -diff --git a/targets/stage1/chroot.sh b/targets/stage1/chroot.sh -index 541c060f..dc8571bd 100755 ---- a/targets/stage1/chroot.sh -+++ b/targets/stage1/chroot.sh -@@ -67,7 +67,7 @@ sed -i "/USE=\"${USE} build\"/d" ${clst_make_conf} - - echo "$locales" > /etc/locale.gen - for etc in /etc "$ROOT"/etc; do -- echo "LANG=C.UTF8" > ${etc}/env.d/02locale -+ echo "LANG=C.UTF-8" > ${etc}/env.d/02locale - done - update_env_settings - --- -2.51.0 - diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-util/catalyst/README.md b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-util/catalyst/README.md deleted file mode 100644 index e404416d8ee..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-util/catalyst/README.md +++ /dev/null @@ -1,3 +0,0 @@ -The patches fix some locale generation issues in catalyst - they are -currently a part of the master branch, so there is no release that -contain those fixes yet. From eeeee0c18ea693b9b43e4f4180da5cfcfabad1d0 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Fri, 27 Feb 2026 11:38:30 +0100 Subject: [PATCH 263/291] dev-util/debugedit: Add from Gentoo It's from Gentoo commit 5f5aa54bc26aee3851cacd81b560a05e4368e993. Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../dev-util/debugedit/Manifest | 4 + .../debugedit/debugedit-5.1-r3.ebuild | 64 ++++++++++++++++ .../debugedit/debugedit-5.2-r1.ebuild | 76 +++++++++++++++++++ .../dev-util/debugedit/debugedit-5.2.ebuild | 71 +++++++++++++++++ .../files/debugedit-5.2-bashism.patch | 35 +++++++++ .../files/debugedit-5.2-buildid.patch | 37 +++++++++ .../dev-util/debugedit/metadata.xml | 8 ++ 7 files changed, 295 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-util/debugedit/Manifest create mode 100644 sdk_container/src/third_party/portage-stable/dev-util/debugedit/debugedit-5.1-r3.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-util/debugedit/debugedit-5.2-r1.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-util/debugedit/debugedit-5.2.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-util/debugedit/files/debugedit-5.2-bashism.patch create mode 100644 sdk_container/src/third_party/portage-stable/dev-util/debugedit/files/debugedit-5.2-buildid.patch create mode 100644 sdk_container/src/third_party/portage-stable/dev-util/debugedit/metadata.xml diff --git a/sdk_container/src/third_party/portage-stable/dev-util/debugedit/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/debugedit/Manifest new file mode 100644 index 00000000000..7e155fd3d28 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-util/debugedit/Manifest @@ -0,0 +1,4 @@ +DIST debugedit-5.1.tar.xz 186320 BLAKE2B 21117429cda436ef73d5b713596380558bf0cfbe1feae85c9d31a4dddce0a7a4a1ca89608c547954afd6066722aff5d048bffde79489b873df3b63ce2553dc3a SHA512 72f4dcc0fba223a85d261aa38400e229f04c7c96adafe455919a8f702d3d7d9cdfb991b403d53f2ac4948ca19eeb43d3d49c0ea2616065657c120647a30575d3 +DIST debugedit-5.1.tar.xz.sig 310 BLAKE2B c8975b2a1a9fdfdaac01674aebf76df9dd93a59469d5660d857b2f7c71e6eb5fa1a79d09ab057e2c0050f6cd566c3ebe953e4581bffbdd2003fd45e34a97d4a9 SHA512 8fc5072f05df2df630994844bd758dece9479c5f68182c10fd7ba4bc1c9a9601f6e399a2ad3146e58cdef75aa36871b642b64cb53c42cedfb05b310773994e5f +DIST debugedit-5.2.tar.xz 196724 BLAKE2B ced3d1ff03f06cc2411627067c3e194951793b230fb37ac8f2528c6dd898841ca452b0f86107de3830c03123d34987c42a0427e40c579d775764bf5b09180410 SHA512 0fe21d7576ca8ea8067f6afe5c02807ace77051249d8911531e6f9d077db59487ee29dfbdb5e9c80aebaa8bd22c6efe515d25a502d614bc058f24d174c7ebe4b +DIST debugedit-5.2.tar.xz.sig 310 BLAKE2B 599db2dfb9a85a70dff9aadf606f6eb308246e1628ca465ba7d58fb73842ed9c4b4e27ee23818d968c8fd7314678b7bb63ba1f77ad94bb7ed15e8f0d4bd94ee3 SHA512 5c80ea4b43e1363399b858a0758e944f49cedf50828f60867651f65e5469d217e7a6b4ac790266016ed5eb512ae7af67690d99ea020d8497b8289c3a88c9908d diff --git a/sdk_container/src/third_party/portage-stable/dev-util/debugedit/debugedit-5.1-r3.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/debugedit/debugedit-5.1-r3.ebuild new file mode 100644 index 00000000000..d394aa8deda --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-util/debugedit/debugedit-5.1-r3.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multiprocessing verify-sig toolchain-funcs + +DESCRIPTION="Create debuginfo and source file distributions" +HOMEPAGE="https://sourceware.org/debugedit/" +SRC_URI=" + https://sourceware.org/ftp/debugedit/${PV}/${P}.tar.xz + verify-sig? ( https://sourceware.org/ftp/debugedit/${PV}/${P}.tar.xz.sig ) +" + +LICENSE="GPL-3+ GPL-2+ LGPL-2+" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" +#KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" + +DEPEND=" + >=dev-libs/elfutils-0.176-r1:= + >=dev-libs/xxhash-0.8:= + elibc_musl? ( >=sys-libs/error-standalone-2.0 ) +" +RDEPEND=" + ${DEPEND} + sys-devel/dwz +" +BDEPEND=" + sys-apps/help2man + virtual/pkgconfig + verify-sig? ( + sec-keys/openpgp-keys-debugedit + ) +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/debugedit.gpg + +src_prepare() { + default + + # bashism, https://sourceware.org/bugzilla/show_bug.cgi?id=32321 + sed -i -e '/test/s:==:=:' tests/debugedit.at || die +} + +src_configure() { + tc-export PKG_CONFIG + + if use elibc_musl; then + export CFLAGS="${CFLAGS} $(${PKG_CONFIG} --cflags error-standalone)" + export LIBS="${LIBS} $(${PKG_CONFIG} --libs error-standalone)" + fi + + local myconf=( + # avoid BDEP on dwz + DWZ=dwz + ac_cv_dwz_j=yes + ) + econf "${myconf[@]}" +} + +src_test() { + emake -Onone check TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)" +} diff --git a/sdk_container/src/third_party/portage-stable/dev-util/debugedit/debugedit-5.2-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/debugedit/debugedit-5.2-r1.ebuild new file mode 100644 index 00000000000..0b8b28ab50d --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-util/debugedit/debugedit-5.2-r1.ebuild @@ -0,0 +1,76 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multiprocessing optfeature verify-sig toolchain-funcs + +DESCRIPTION="Create debuginfo and source file distributions" +HOMEPAGE="https://sourceware.org/debugedit/" +SRC_URI=" + https://sourceware.org/ftp/debugedit/${PV}/${P}.tar.xz + verify-sig? ( https://sourceware.org/ftp/debugedit/${PV}/${P}.tar.xz.sig ) +" + +LICENSE="GPL-3+ GPL-2+ LGPL-2+" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" +IUSE="test" +RESTRICT="!test? ( test )" + +DEPEND=" + >=dev-libs/elfutils-0.176-r1:= + >=dev-libs/xxhash-0.8:= + elibc_musl? ( >=sys-libs/error-standalone-2.0 ) +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + sys-apps/help2man + virtual/pkgconfig + test? ( + app-alternatives/cpio + dev-debug/gdb + sys-devel/dwz + ) + verify-sig? ( + sec-keys/openpgp-keys-debugedit + ) +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/debugedit.gpg + +PATCHES=( + "${FILESDIR}"/${P}-bashism.patch + "${FILESDIR}"/${P}-buildid.patch +) + +src_configure() { + tc-export PKG_CONFIG + + if use elibc_musl; then + export CFLAGS="${CFLAGS} $(${PKG_CONFIG} --cflags error-standalone)" + export LIBS="${LIBS} $(${PKG_CONFIG} --libs error-standalone)" + fi + + local myconf=( + # avoid BDEP on dwz + DWZ=dwz + ac_cv_dwz_j=yes + + # We don't want to effectively bundle xxhash. It fails to + # build with -Og and such too (bug #956627). + --disable-inlined-xxhash + ) + econf "${myconf[@]}" +} + +src_test() { + local -x CCACHE_DISABLE=1 + emake -Onone check TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)" +} + +pkg_postinst() { + optfeature "dwz support in find-debuginfo" sys-devel/dwz +} diff --git a/sdk_container/src/third_party/portage-stable/dev-util/debugedit/debugedit-5.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/debugedit/debugedit-5.2.ebuild new file mode 100644 index 00000000000..8afaf15c626 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-util/debugedit/debugedit-5.2.ebuild @@ -0,0 +1,71 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multiprocessing verify-sig toolchain-funcs + +DESCRIPTION="Create debuginfo and source file distributions" +HOMEPAGE="https://sourceware.org/debugedit/" +SRC_URI=" + https://sourceware.org/ftp/debugedit/${PV}/${P}.tar.xz + verify-sig? ( https://sourceware.org/ftp/debugedit/${PV}/${P}.tar.xz.sig ) +" + +LICENSE="GPL-3+ GPL-2+ LGPL-2+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +DEPEND=" + >=dev-libs/elfutils-0.176-r1:= + >=dev-libs/xxhash-0.8:= + elibc_musl? ( >=sys-libs/error-standalone-2.0 ) +" +RDEPEND=" + ${DEPEND} + sys-devel/dwz +" +BDEPEND=" + sys-apps/help2man + virtual/pkgconfig + test? ( + app-alternatives/cpio + ) + verify-sig? ( + sec-keys/openpgp-keys-debugedit + ) +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/debugedit.gpg + +PATCHES=( + "${FILESDIR}"/${P}-bashism.patch + "${FILESDIR}"/${P}-buildid.patch +) + +src_configure() { + tc-export PKG_CONFIG + + if use elibc_musl; then + export CFLAGS="${CFLAGS} $(${PKG_CONFIG} --cflags error-standalone)" + export LIBS="${LIBS} $(${PKG_CONFIG} --libs error-standalone)" + fi + + local myconf=( + # avoid BDEP on dwz + DWZ=dwz + ac_cv_dwz_j=yes + + # We don't want to effectively bundle xxhash. It fails to + # build with -Og and such too (bug #956627). + --disable-inlined-xxhash + ) + econf "${myconf[@]}" +} + +src_test() { + local -x CCACHE_DISABLE=1 + emake -Onone check TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)" +} diff --git a/sdk_container/src/third_party/portage-stable/dev-util/debugedit/files/debugedit-5.2-bashism.patch b/sdk_container/src/third_party/portage-stable/dev-util/debugedit/files/debugedit-5.2-bashism.patch new file mode 100644 index 00000000000..8f5bd0eac22 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-util/debugedit/files/debugedit-5.2-bashism.patch @@ -0,0 +1,35 @@ +https://sourceware.org/cgit/debugedit/commit/?id=40b9c550dd2f94a069f3bedf51ceb310d7487d88 + +From 40b9c550dd2f94a069f3bedf51ceb310d7487d88 Mon Sep 17 00:00:00 2001 +From: Michał Górny <mgorny@gentoo.org> +Date: Tue, 8 Jul 2025 07:40:20 +0200 +Subject: tests/debugedit.at: Replace 'type -p' bashism +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Replace 'type -p' with more portable 'command -v', in order to fix +running the test suite on non-bash shells. Note that while the test +itself invokes bash, the backticks are evaluated within the context +of the shell used by autotest. + +Signed-off-by: Michał Górny <mgorny@gentoo.org> +--- + tests/find-debuginfo.at | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/find-debuginfo.at b/tests/find-debuginfo.at +index 5552ce1..dd59374 100644 +--- a/tests/find-debuginfo.at ++++ b/tests/find-debuginfo.at +@@ -67,7 +67,7 @@ AT_CHECK([$READELF --debug-dump=line subdir_build/dupes.a | grep `pwd`], [0], [s + + # run conversion, under bash -x tracing for fuller testing log + AT_CHECK([[env RPM_BUILD_DIR=${PWD} RPM_BUILD_ROOT=${PWD} RPM_PACKAGE_NAME=pkg RPM_PACKAGE_VERSION=ver RPM_PACKAGE_RELEASE=rel RPM_ARCH=arch \ +- bash -x `type -p find-debuginfo` -S sourcefiles.list -v ${PWD}/subdir_build]], [0], [stdout], [ignore]) ++ bash -x `command -v find-debuginfo` -S sourcefiles.list -v ${PWD}/subdir_build]], [0], [stdout], [ignore]) + + # list new .a contents; ar tPv contains timestamps / subdirs, so not a good fit for AT_DATA() here + AT_CHECK([$AR tPv subdir_build/dupes.a],[0],[stdout],[ignore]) +-- +cgit diff --git a/sdk_container/src/third_party/portage-stable/dev-util/debugedit/files/debugedit-5.2-buildid.patch b/sdk_container/src/third_party/portage-stable/dev-util/debugedit/files/debugedit-5.2-buildid.patch new file mode 100644 index 00000000000..09875de1652 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-util/debugedit/files/debugedit-5.2-buildid.patch @@ -0,0 +1,37 @@ +https://sourceware.org/cgit/debugedit/commit/?id=c011f478dca2c89d52958a8999b99663d14db85d + +From c011f478dca2c89d52958a8999b99663d14db85d Mon Sep 17 00:00:00 2001 +From: Mark Wielaard <mark@klomp.org> +Date: Tue, 8 Jul 2025 13:05:37 +0200 +Subject: find-debuginfo.at: Make sure foo, bar and baz have build-ids + +There are still distros that don't configure gcc with +--enable-linker-build-id. So explicitly add -Wl,--build-id +to the test binaries generated. + +https://sourceware.org/bugzilla/show_bug.cgi?id=33135 + +Signed-off-by: Mark Wielaard <mark@klomp.org> +--- + tests/find-debuginfo.at | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/tests/find-debuginfo.at b/tests/find-debuginfo.at +index dd59374..1d7ad57 100644 +--- a/tests/find-debuginfo.at ++++ b/tests/find-debuginfo.at +@@ -93,9 +93,9 @@ cp "${abs_srcdir}"/data/SOURCES/baz.c subdir_build + cd subdir_build + # Three almost identical binaries + # so dwz has something to put into the alt file +-$CC $CFLAGS -g3 -I. -o foo foo.c bar.c baz.c +-$CC $CFLAGS -g3 -I. -o bar bar.c baz.c foo.c +-$CC $CFLAGS -g3 -I. -o baz baz.c foo.c bar.c ++$CC $CFLAGS -Wl,--build-id -g3 -I. -o foo foo.c bar.c baz.c ++$CC $CFLAGS -Wl,--build-id -g3 -I. -o bar bar.c baz.c foo.c ++$CC $CFLAGS -Wl,--build-id -g3 -I. -o baz baz.c foo.c bar.c + cd .. + ]]) + +-- +cgit diff --git a/sdk_container/src/third_party/portage-stable/dev-util/debugedit/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-util/debugedit/metadata.xml new file mode 100644 index 00000000000..076793e3f54 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-util/debugedit/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>mgorny@gentoo.org</email> + <name>Michał Górny</name> + </maintainer> +</pkgmetadata> From 38d5fc059ae118594c7502e956d14824a99160b7 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Fri, 27 Feb 2026 11:39:18 +0100 Subject: [PATCH 264/291] sys-devel/dwz: Add from Gentoo It's from Gentoo commit 2abd41e4abfcaf2cad94d37450e246446e751461. Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../portage-stable/sys-devel/dwz/Manifest | 2 + .../sys-devel/dwz/dwz-0.16.ebuild | 82 +++++++++++++++++++ .../sys-devel/dwz/dwz-9999.ebuild | 78 ++++++++++++++++++ .../dwz/files/dwz-0.15-readelf.patch | 43 ++++++++++ .../portage-stable/sys-devel/dwz/metadata.xml | 17 ++++ 5 files changed, 222 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/dwz/Manifest create mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/dwz/dwz-0.16.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/dwz/dwz-9999.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/dwz/files/dwz-0.15-readelf.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-devel/dwz/metadata.xml diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/dwz/Manifest b/sdk_container/src/third_party/portage-stable/sys-devel/dwz/Manifest new file mode 100644 index 00000000000..1139826d8b9 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/dwz/Manifest @@ -0,0 +1,2 @@ +DIST dwz-0.16.tar.xz 151304 BLAKE2B 16c4fdae44734c8cac60635ae24b24d0d23e384b310c2331c018623ceeba2c3108cc31ade392bcad9910fbc77a7230ac56facdb94bcda125250b5fe19bf9cb18 SHA512 1d6584ad8a0558b8a1351472c968c7b86849267872a50f11ab7b2a0866403dfb2dcf5e14c7c1a97a7c014c7b9fe8ce56c37aaa28b04bd6ddb0fd04bfbc8b97fe +DIST dwz-0.16.tar.xz.asc 488 BLAKE2B fe7bc5919c873d61801b60d06c2793b8b888f43794ff6655637908745db6306c6c1ab97bb7ddec6827886dbf76d48aa045780c265f6c8e07dd2f87b79978de26 SHA512 2003de1de923b3844c7d441de5e6055c679a82dafd2895578b49af5c7ceac41bcdbb284bfe43b9d86419b479d701f02f10c92552a1296e69e8f11451f7b8ebd4 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/dwz/dwz-0.16.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/dwz/dwz-0.16.ebuild new file mode 100644 index 00000000000..c2230a955c1 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/dwz/dwz-0.16.ebuild @@ -0,0 +1,82 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="DWARF optimization and duplicate removal tool" +HOMEPAGE="https://sourceware.org/dwz" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://sourceware.org/git/dwz.git" + inherit git-r3 +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/dwz.asc + inherit verify-sig + + SRC_URI=" + https://sourceware.org/ftp/dwz/releases/${P}.tar.xz + verify-sig? ( https://sourceware.org/ftp/dwz/releases/${P}.tar.xz.asc ) + " + S="${WORKDIR}/${PN}" + + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-dwz )" +fi + +LICENSE="GPL-2+ GPL-3+" +SLOT="0" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-libs/elfutils + dev-libs/xxhash + elibc_musl? ( + >=sys-libs/error-standalone-2.0 + sys-libs/obstack-standalone + ) +" +DEPEND="${RDEPEND}" +BDEPEND+=" + test? ( + dev-debug/gdb + dev-libs/elfutils[utils] + dev-util/dejagnu + ) + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/dwz-0.15-readelf.patch +) + +src_prepare() { + default + tc-export CC +} + +src_compile() { + export LANG=C LC_ALL=C # grep find nothing for non-ascii locales + + local current_binutils_path=$(binutils-config -B) + export READELF="${current_binutils_path}/readelf" + + tc-export PKG_CONFIG READELF + + export LIBS="-lelf" + if use elibc_musl; then + export CFLAGS="${CFLAGS} $(${PKG_CONFIG} --cflags obstack-standalone error-standalone)" + export LIBS="${LIBS} $(${PKG_CONFIG} --libs obstack-standalone error-standalone)" + fi + + emake CFLAGS="${CFLAGS}" LIBS="${LIBS}" srcdir="${S}" prefix="${EPREFIX}/usr" +} + +src_test() { + emake CFLAGS="${CFLAGS}" LIBS="${LIBS}" srcdir="${S}" prefix="${EPREFIX}/usr" check +} + +src_install() { + emake DESTDIR="${D}" CFLAGS="${CFLAGS}" LIBS="${LIBS}" srcdir="${S}" prefix="${EPREFIX}/usr" install +} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/dwz/dwz-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/dwz/dwz-9999.ebuild new file mode 100644 index 00000000000..2d1a4408ffe --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/dwz/dwz-9999.ebuild @@ -0,0 +1,78 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="DWARF optimization and duplicate removal tool" +HOMEPAGE="https://sourceware.org/dwz" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://sourceware.org/git/dwz.git" + inherit git-r3 +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/dwz.asc + inherit verify-sig + + SRC_URI=" + https://sourceware.org/ftp/dwz/releases/${P}.tar.xz + verify-sig? ( https://sourceware.org/ftp/dwz/releases/${P}.tar.xz.asc ) + " + S="${WORKDIR}/${PN}" + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-dwz )" +fi + +LICENSE="GPL-2+ GPL-3+" +SLOT="0" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-libs/elfutils + dev-libs/xxhash + elibc_musl? ( + >=sys-libs/error-standalone-2.0 + sys-libs/obstack-standalone + ) +" +DEPEND="${RDEPEND}" +BDEPEND+=" + test? ( + dev-debug/gdb + dev-libs/elfutils[utils] + dev-util/dejagnu + ) + virtual/pkgconfig +" + +src_prepare() { + default + tc-export CC +} + +src_compile() { + export LANG=C LC_ALL=C # grep find nothing for non-ascii locales + + local current_binutils_path=$(binutils-config -B) + export READELF="${current_binutils_path}/readelf" + + tc-export PKG_CONFIG READELF + + export LIBS="-lelf" + if use elibc_musl; then + export CFLAGS="${CFLAGS} $(${PKG_CONFIG} --cflags obstack-standalone error-standalone)" + export LIBS="${LIBS} $(${PKG_CONFIG} --libs obstack-standalone error-standalone)" + fi + + emake CFLAGS="${CFLAGS}" LIBS="${LIBS}" srcdir="${S}" prefix="${EPREFIX}/usr" +} + +src_test() { + emake CFLAGS="${CFLAGS}" LIBS="${LIBS}" srcdir="${S}" prefix="${EPREFIX}/usr" check +} + +src_install() { + emake DESTDIR="${D}" CFLAGS="${CFLAGS}" LIBS="${LIBS}" srcdir="${S}" prefix="${EPREFIX}/usr" install +} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/dwz/files/dwz-0.15-readelf.patch b/sdk_container/src/third_party/portage-stable/sys-devel/dwz/files/dwz-0.15-readelf.patch new file mode 100644 index 00000000000..038c832e395 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/dwz/files/dwz-0.15-readelf.patch @@ -0,0 +1,43 @@ +From 2ae1b0ee518ba40fe985aa644d3a66ebca1165e4 Mon Sep 17 00:00:00 2001 +From: "Haelwenn (lanodan) Monnier" <contact@hacktivis.me> +Upstream: https://sourceware.org/pipermail/dwz/2024q4/001435.html +Date: Fri, 22 Nov 2024 07:33:09 +0100 +Subject: [PATCH 2/2] Makefile: use $READELF variable instead of hardcoding + 'readelf' + +--- + Makefile | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index 3dc6c6f..f0841aa 100644 +--- a/Makefile ++++ b/Makefile +@@ -19,6 +19,8 @@ endif + + override CFLAGS += $(CFLAGS_COMMON) $(CFLAGS_VERSION) $(CFLAGS_COPYRIGHT) + ++READELF ?= $(CROSS_COMPILE)readelf ++ + prefix = /usr + exec_prefix = $(prefix) + bindir = $(exec_prefix)/bin +@@ -35,13 +37,13 @@ args.o: native.o + args.o: CFLAGS_FOR_SOURCE = \ + -DNATIVE_ENDIAN_VAL=$(NATIVE_ENDIAN_VAL) \ + -DNATIVE_POINTER_SIZE=$(NATIVE_POINTER_SIZE) +-NATIVE_ENDIAN=$(shell readelf -h native.o \ ++NATIVE_ENDIAN=$(shell ${READELF} -h native.o \ + | grep Data \ + | sed 's/.*, //;s/ endian//') + NATIVE_ENDIAN_LITTLE=$(findstring $(NATIVE_ENDIAN),$(findstring little,$(NATIVE_ENDIAN))) + NATIVE_ENDIAN_BIG=$(findstring $(NATIVE_ENDIAN),$(findstring big,$(NATIVE_ENDIAN))) + NATIVE_ENDIAN_VAL=$(if $(NATIVE_ENDIAN_LITTLE),ELFDATA2LSB,$(if $(NATIVE_ENDIAN_BIG),ELFDATA2MSB,ELFDATANONE)) +-NATIVE_POINTER_SIZE=$(shell readelf -wi native.o \ ++NATIVE_POINTER_SIZE=$(shell ${READELF} -wi native.o \ + | grep "Pointer Size:" \ + | sed 's/.*: *//') + %.o: %.c +-- +2.45.2 + diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/dwz/metadata.xml b/sdk_container/src/third_party/portage-stable/sys-devel/dwz/metadata.xml new file mode 100644 index 00000000000..c87f24a6621 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/dwz/metadata.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>toolchain@gentoo.org</email> + <name>Gentoo Toolchain Project</name> + </maintainer> + <longdescription> + The dwz package contains a program that attempts to optimize DWARF + debugging information contained in ELF shared libraries and ELF executables + for size, by replacing DWARF information representation with equivalent + smaller representation where possible and by reducing the amount of + duplication using techniques from DWARF standard appendix E - creating + DW_TAG_partial_unit compilation units (CUs) for duplicated information + and using DW_TAG_imported_unit to import it into each CU that needs it. + </longdescription> +</pkgmetadata> From 02bf81eb1eae0a24f67438f35383694052dfe425 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Fri, 27 Feb 2026 11:40:30 +0100 Subject: [PATCH 265/291] .github: Add dev-util/debugedit and sys-devel/dwz to automation Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .github/workflows/portage-stable-packages-list | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/portage-stable-packages-list b/.github/workflows/portage-stable-packages-list index 2627a1f65d6..28cb1139894 100644 --- a/.github/workflows/portage-stable-packages-list +++ b/.github/workflows/portage-stable-packages-list @@ -380,6 +380,7 @@ dev-python/wheel dev-util/bpftool dev-util/bsdiff dev-util/catalyst +dev-util/debugedit dev-util/gdbus-codegen dev-util/glib-utils dev-util/gperf @@ -661,6 +662,7 @@ sys-devel/binutils sys-devel/binutils-config sys-devel/bison sys-devel/crossdev +sys-devel/dwz sys-devel/flex sys-devel/gcc sys-devel/gcc-config From 4b921dc362302c1f209899a34a254a3fb4a96ab8 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Fri, 27 Feb 2026 12:13:53 +0100 Subject: [PATCH 266/291] overlay profiles: Update accept keywords for app-containers/incus Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../coreos-overlay/profiles/coreos/base/package.accept_keywords | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords index 9efaedfebb9..efba16b2246 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords @@ -15,7 +15,7 @@ # Keep versions on both arches in sync. =app-containers/cri-tools-1.33.0 ~arm64 -=app-containers/incus-6.0.5 ~arm64 +=app-containers/incus-6.0.5-r1 ~arm64 =app-containers/lxc-6.0.5 ~arm64 # We always want the latest version available. From 9944f4c4fb37fc12738003ee29f109de396e8422 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Fri, 27 Feb 2026 12:23:10 +0100 Subject: [PATCH 267/291] overlay profiles: Update accept keywords for dev-libs/xxhash Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../coreos-overlay/profiles/coreos/base/package.accept_keywords | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords index efba16b2246..e020026973a 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords @@ -78,7 +78,7 @@ dev-db/etcd amd64 # Used to be in sdk target profile, unversioned, so pinning it to a # version used at a time of the move. Needed for building signed # sysexts with systemd-repart -=dev-libs/xxhash-0.8.3-r1 +=dev-libs/xxhash-0.8.3-r2 # No arm64 keyword in package. =dev-util/bsdiff-4.3-r4 ** From 310f520491b31d358ac5f5d4beafd77aa12bb93b Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Mon, 2 Mar 2026 11:10:42 +0100 Subject: [PATCH 268/291] overlay coreos/config: Drop our cross-compilation fix for app-containers/docker Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../coreos/config/env/app-containers/docker | 12 ------------ 1 file changed, 12 deletions(-) delete mode 100644 sdk_container/src/third_party/coreos-overlay/coreos/config/env/app-containers/docker diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/config/env/app-containers/docker b/sdk_container/src/third_party/coreos-overlay/coreos/config/env/app-containers/docker deleted file mode 100644 index e7ee65aa01c..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/config/env/app-containers/docker +++ /dev/null @@ -1,12 +0,0 @@ -# Fix cross-compilation by setting up the environment properly. -# -# This is what go-module_src_unpack does, but docker does not use it. -cros_pre_src_unpack_set_build_env() { - if use amd64 || use arm || use arm64 || - ( use ppc64 && [[ $(tc-endian) == "little" ]] ) || use s390 || use x86; then - GOFLAGS="-buildmode=pie ${GOFLAGS}" - fi - GOFLAGS="${GOFLAGS} -p=$(makeopts_jobs)" - - go-env_set_compile_environment -} From 261796f6ef69032de81b8a5b3837a8dcab7a970b Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Mon, 2 Mar 2026 11:13:13 +0100 Subject: [PATCH 269/291] overlay profiles: Drop USE=hardened for app-containers/docker-cli Was dropped from the ebuild as it was broken and unnecessary. Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../third_party/coreos-overlay/profiles/coreos/base/package.use | 1 - 1 file changed, 1 deletion(-) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use index 4ad395781de..c6fbd0ced1b 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use @@ -143,7 +143,6 @@ sys-apps/findutils selinux # Flatcar defaults formerly defined in coreos-overlay ebuilds app-containers/containerd btrfs device-mapper app-containers/docker btrfs overlay seccomp -app-containers/docker-cli hardened # Drop python dependencies from some SELinux packages. # From e1077665931a3c0050b220aa62954384a6ad44e8 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Mon, 2 Mar 2026 11:16:03 +0100 Subject: [PATCH 270/291] overlay coreos/config: Drop our cross-compilation fixes for app-containers/incus Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../coreos/config/env/app-containers/incus | 21 ------------------- 1 file changed, 21 deletions(-) delete mode 100644 sdk_container/src/third_party/coreos-overlay/coreos/config/env/app-containers/incus diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/config/env/app-containers/incus b/sdk_container/src/third_party/coreos-overlay/coreos/config/env/app-containers/incus deleted file mode 100644 index ea65a61db07..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/config/env/app-containers/incus +++ /dev/null @@ -1,21 +0,0 @@ -# https://codeberg.org/gentoo/gentoo/pulls/36 -cros_post_src_compile_move_agent_binaries() { - local bindir="_dist/bin" - local host_arch=$(go-env_goarch "${CBUILD}") - if [[ "${GOARCH}" = "${host_arch}" ]]; then - # nothing to fix - return 0 - fi - local correct_bindir="_dist/bin/linux_${GOARCH}" - mv '_dist/bin/incus-agent.'* "${correct_bindir}" || die -} - -# https://codeberg.org/gentoo/gentoo/pulls/36 -cros_post_src_install_move_agent_binaries() { - if use amd64; then - # nothing to fix - return 0 - fi - dodir '/usr/libexec/incus/agents' - mv "${ED}/usr/libexec/incus/incus-agent."* "${ED}/usr/libexec/incus/agents" || die -} From 56a519719a8d8a36661409ae2e032ee1dc017782 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Mon, 2 Mar 2026 16:05:08 +0100 Subject: [PATCH 271/291] overlay profiles: Drop accept keywords for dev-libs/elfutils Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../coreos-overlay/profiles/coreos/base/package.accept_keywords | 1 - 1 file changed, 1 deletion(-) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords index e020026973a..370078b0811 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords @@ -61,7 +61,6 @@ dev-db/etcd amd64 # Keep versions on both arches in sync. =dev-libs/cowsql-1.15.9 ~arm64 =dev-libs/ding-libs-0.6.2-r1 ~arm64 -=dev-libs/elfutils-0.194 ~amd64 # The only available ebuild has ~amd64 and no keyword for arm64 yet. =dev-libs/jose-14 ** From bd363114549cc916fe45bcb0dc9aa555419bc5d3 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Tue, 3 Mar 2026 11:13:17 +0100 Subject: [PATCH 272/291] overlay profiles: Disable debuginfod Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../coreos-overlay/profiles/coreos/base/package.use | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use index c6fbd0ced1b..17856aa3244 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use @@ -196,3 +196,7 @@ app-emulation/open-vmdk -python # Avoid pulling extra perl packages dev-perl/File-Slurper minimal + +# We don't need debuginfod support. +dev-debug/gdb -debuginfod +dev-util/elfutils -debuginfod -libarchive From e26b8871111ba84ed742e4297f1d104532663084 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Tue, 3 Mar 2026 11:13:35 +0100 Subject: [PATCH 273/291] overlay profiles: Drop accept keywords for dev-libs/libnl Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../profiles/coreos/base/package.accept_keywords | 3 --- 1 file changed, 3 deletions(-) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords index 370078b0811..0eb4a4c09ee 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords @@ -65,9 +65,6 @@ dev-db/etcd amd64 # The only available ebuild has ~amd64 and no keyword for arm64 yet. =dev-libs/jose-14 ** -# Keep versions on both arches in sync. -=dev-libs/libnl-3.11.0 ~amd64 - # The only available ebuild (from GURU) has ~amd64 and no keyword for arm64 yet. =dev-libs/luksmeta-9-r1 ** From 7d88b2b5982ea9d77772d99c85c1645879c98b3f Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Tue, 3 Mar 2026 11:24:11 +0100 Subject: [PATCH 274/291] overlay coreos/user-patches: Drop unnecessary dev-libs/libxslt patches Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../dev-libs/libxslt/CVE-2025-7424.patch | 99 ------------------- .../user-patches/dev-libs/libxslt/README.md | 2 - 2 files changed, 101 deletions(-) delete mode 100644 sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-libs/libxslt/CVE-2025-7424.patch delete mode 100644 sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-libs/libxslt/README.md diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-libs/libxslt/CVE-2025-7424.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-libs/libxslt/CVE-2025-7424.patch deleted file mode 100644 index 62a34fa61d3..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-libs/libxslt/CVE-2025-7424.patch +++ /dev/null @@ -1,99 +0,0 @@ -From 345d6826d0eae6f0a962456b8ed6f6a1bad0877d Mon Sep 17 00:00:00 2001 -From: David Kilzer <ddkilzer@apple.com> -Date: Sat, 24 May 2025 15:06:42 -0700 -Subject: [PATCH] libxslt: Type confusion in xmlNode.psvi between stylesheet - and source nodes - -* libxslt/functions.c: -(xsltDocumentFunctionLoadDocument): -- Implement fix suggested by Ivan Fratric. This copies the xmlDoc, - calls xsltCleanupSourceDoc() to remove pvsi fields, then adds the - xmlDoc to tctxt->docList. -- Add error handling for functions that may return NULL. -* libxslt/transform.c: -- Remove static keyword so this can be called from - xsltDocumentFunctionLoadDocument(). -* libxslt/transformInternals.h: Add. -(xsltCleanupSourceDoc): Add declaration. - -Fixes #139. ---- - libxslt/functions.c | 16 +++++++++++++++- - libxslt/transform.c | 3 ++- - libxslt/transformInternals.h | 9 +++++++++ - 3 files changed, 26 insertions(+), 2 deletions(-) - create mode 100644 libxslt/transformInternals.h - -diff --git a/libxslt/functions.c b/libxslt/functions.c -index 72a58dc4..11ec039f 100644 ---- a/libxslt/functions.c -+++ b/libxslt/functions.c -@@ -34,6 +34,7 @@ - #include "numbersInternals.h" - #include "keys.h" - #include "documents.h" -+#include "transformInternals.h" - - #ifdef WITH_XSLT_DEBUG - #define WITH_XSLT_DEBUG_FUNCTION -@@ -125,7 +126,20 @@ xsltDocumentFunctionLoadDocument(xmlXPathParserContextPtr ctxt, - /* - * This selects the stylesheet's doc itself. - */ -- doc = tctxt->style->doc; -+ doc = xmlCopyDoc(tctxt->style->doc, 1); -+ if (doc == NULL) { -+ xsltTransformError(tctxt, NULL, NULL, -+ "document() : failed to copy style doc\n"); -+ goto out_fragment; -+ } -+ xsltCleanupSourceDoc(doc); /* Remove psvi fields. */ -+ idoc = xsltNewDocument(tctxt, doc); -+ if (idoc == NULL) { -+ xsltTransformError(tctxt, NULL, NULL, -+ "document() : failed to create xsltDocument\n"); -+ xmlFreeDoc(doc); -+ goto out_fragment; -+ } - } else { - goto out_fragment; - } -diff --git a/libxslt/transform.c b/libxslt/transform.c -index 54ef821b..38c2dce6 100644 ---- a/libxslt/transform.c -+++ b/libxslt/transform.c -@@ -43,6 +43,7 @@ - #include "xsltlocale.h" - #include "pattern.h" - #include "transform.h" -+#include "transformInternals.h" - #include "variables.h" - #include "numbersInternals.h" - #include "namespaces.h" -@@ -5757,7 +5758,7 @@ xsltCountKeys(xsltTransformContextPtr ctxt) - * - * Resets source node flags and ids stored in 'psvi' member. - */ --static void -+void - xsltCleanupSourceDoc(xmlDocPtr doc) { - xmlNodePtr cur = (xmlNodePtr) doc; - void **psviPtr; -diff --git a/libxslt/transformInternals.h b/libxslt/transformInternals.h -new file mode 100644 -index 00000000..d0f42823 ---- /dev/null -+++ b/libxslt/transformInternals.h -@@ -0,0 +1,9 @@ -+/* -+ * Summary: set of internal interfaces for the XSLT engine transformation part. -+ * -+ * Copy: See Copyright for the status of this software. -+ * -+ * Author: David Kilzer <ddkilzer@apple.com> -+ */ -+ -+void xsltCleanupSourceDoc(xmlDocPtr doc); --- -2.39.5 (Apple Git-154) - diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-libs/libxslt/README.md b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-libs/libxslt/README.md deleted file mode 100644 index 7dd3ad0ced9..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-libs/libxslt/README.md +++ /dev/null @@ -1,2 +0,0 @@ -The libxslt project in unmaintained, so we will need to carry the -patch indefinitely. From fbd4b06b2b870bd2db7a9b3e8407e96a8edbca45 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Tue, 3 Mar 2026 12:48:08 +0100 Subject: [PATCH 275/291] overlay profiles: Add accept keywords for net-analyzer/netperf Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../profiles/coreos/base/package.accept_keywords | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords index 0eb4a4c09ee..6b41943e784 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords @@ -82,6 +82,9 @@ dev-db/etcd amd64 # Catalyst 4 is not stable yet, but earlier versions are masked now. =dev-util/catalyst-4.1.1 ~amd64 ~arm64 +# Needed to build with gcc 15 +=net-analyzer/netperf-2.7.0_p20210121-r1 + # Keep versions on both arches in sync. =net-firewall/conntrack-tools-1.4.8-r1 ~arm64 From 70c9dcfed7918f6264cc8e656ae0e7087aa99254 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Tue, 3 Mar 2026 12:48:39 +0100 Subject: [PATCH 276/291] overlay coreos/user-patches: Drop unnecessary patch for net-analyzer/netperf Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../net-analyzer/netperf/0000-gcc15.patch | 167 ------------------ .../net-analyzer/netperf/README.md | 4 - 2 files changed, 171 deletions(-) delete mode 100644 sdk_container/src/third_party/coreos-overlay/coreos/user-patches/net-analyzer/netperf/0000-gcc15.patch delete mode 100644 sdk_container/src/third_party/coreos-overlay/coreos/user-patches/net-analyzer/netperf/README.md diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/net-analyzer/netperf/0000-gcc15.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/net-analyzer/netperf/0000-gcc15.patch deleted file mode 100644 index fe6335b26c2..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/net-analyzer/netperf/0000-gcc15.patch +++ /dev/null @@ -1,167 +0,0 @@ -From 2bf2c2d7b6fecc43c70567054071134ab13ef0a6 Mon Sep 17 00:00:00 2001 -From: "mark.yang" <mark.yang@lge.com> -Date: Wed, 16 Apr 2025 20:02:36 +0900 -Subject: [PATCH] Fix too many arguments error occurring in gcc-15 - -* See more details in http://errors.yoctoproject.org/Errors/Details/851803/ -../../git/src/nettest_bsd.c:4497:19: error: too many arguments to function 'alloc_sendfile_buf_ring'; expected 0, have 4 - 4497 | send_ring = alloc_sendfile_buf_ring(send_width, - | ^~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ -In file included from ../../git/src/nettest_bsd.c:175: -../../git/src/netlib.h:690:26: note: declared here - 690 | extern struct ring_elt *alloc_sendfile_buf_ring(); - | ^~~~~~~~~~~~~~~~~~~~~~~ -In file included from ../../git/src/nettest_omni.c:184: -../../git/src/hist.h:135:6: error: conflicting types for 'HIST_purge'; have 'void(struct histogram_struct *)' - 135 | void HIST_purge(HIST h); - | ^~~~~~~~~~ -In file included from ../../git/src/nettest_omni.c:166: -../../git/src/netlib.h:651:17: note: previous declaration of 'HIST_purge' with type 'void(void)' - 651 | extern void HIST_purge(); - | ^~~~~~~~~~ -../../git/src/nettest_bsd.c: In function 'recv_tcp_stream': -../../git/src/nettest_bsd.c:5197:15: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 - 5197 | recv_ring = allocate_buffer_ring(recv_width, - | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ -../../git/src/netlib.h:679:26: note: declared here - 679 | extern struct ring_elt *allocate_buffer_ring(); - | ^~~~~~~~~~~~~~~~~~~~ -../../git/src/nettest_bsd.c: In function 'recv_tcp_maerts': -../../git/src/nettest_bsd.c:5617:15: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 - 5617 | send_ring = allocate_buffer_ring(send_width, - | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ -../../git/src/netlib.h:679:26: note: declared here - 679 | extern struct ring_elt *allocate_buffer_ring(); - | ^~~~~~~~~~~~~~~~~~~~ -../../git/src/nettest_bsd.c: In function 'recv_udp_stream': -../../git/src/nettest_bsd.c:7345:15: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 - 7345 | recv_ring = allocate_buffer_ring(recv_width, - | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ -../../git/src/netlib.h:679:26: note: declared here - 679 | extern struct ring_elt *allocate_buffer_ring(); - | ^~~~~~~~~~~~~~~~~~~~ -../../git/src/nettest_bsd.c: In function 'recv_udp_rr': -../../git/src/nettest_bsd.c:8360:15: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 - 8360 | recv_ring = allocate_buffer_ring(recv_width, - | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ -../../git/src/netlib.h:679:26: note: declared here - 679 | extern struct ring_elt *allocate_buffer_ring(); - | ^~~~~~~~~~~~~~~~~~~~ -../../git/src/nettest_bsd.c:8365:15: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 - 8365 | send_ring = allocate_buffer_ring(send_width, - | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ -../../git/src/netlib.h:679:26: note: declared here - 679 | extern struct ring_elt *allocate_buffer_ring(); - | ^~~~~~~~~~~~~~~~~~~~ -../../git/src/nettest_bsd.c: In function 'recv_tcp_rr': -../../git/src/nettest_bsd.c:8677:15: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 - 8677 | send_ring = allocate_buffer_ring(send_width, - | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ -../../git/src/netlib.h:679:26: note: declared here - 679 | extern struct ring_elt *allocate_buffer_ring(); - | ^~~~~~~~~~~~~~~~~~~~ -../../git/src/nettest_bsd.c:8682:15: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 - 8682 | recv_ring = allocate_buffer_ring(recv_width, - | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ -../../git/src/netlib.h:679:26: note: declared here - 679 | extern struct ring_elt *allocate_buffer_ring(); - | ^~~~~~~~~~~~~~~~~~~~ -../../git/src/nettest_omni.c: In function 'send_omni_inner': -../../git/src/nettest_omni.c:4044:21: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 - 4044 | send_ring = allocate_buffer_ring(send_width, - | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ -../../git/src/netlib.h:679:26: note: declared here - 679 | extern struct ring_elt *allocate_buffer_ring(); - | ^~~~~~~~~~~~~~~~~~~~ -../../git/src/nettest_omni.c:4086:21: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 - 4086 | recv_ring = allocate_buffer_ring(recv_width, - | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ -../../git/src/netlib.h:679:26: note: declared here - 679 | extern struct ring_elt *allocate_buffer_ring(); - | ^~~~~~~~~~~~~~~~~~~~ -../../git/src/nettest_omni.c:5050:5: error: too many arguments to function 'HIST_get_stats'; expected 0, have 5 - 5050 | HIST_get_stats(time_hist, - | ^~~~~~~~~~~~~~ ~~~~~~~~~ -../../git/src/netlib.h:650:17: note: declared here - 650 | extern void HIST_get_stats(); - | ^~~~~~~~~~~~~~ -../../git/src/nettest_omni.c:5055:19: error: too many arguments to function 'HIST_get_percentile'; expected 0, have 2 - 5055 | p50_latency = HIST_get_percentile(time_hist, 0.50); - | ^~~~~~~~~~~~~~~~~~~ ~~~~~~~~~ -../../git/src/netlib.h:649:17: note: declared here - 649 | extern int HIST_get_percentile(); - | ^~~~~~~~~~~~~~~~~~~ -../../git/src/nettest_omni.c:5056:19: error: too many arguments to function 'HIST_get_percentile'; expected 0, have 2 - 5056 | p90_latency = HIST_get_percentile(time_hist, 0.90); - | ^~~~~~~~~~~~~~~~~~~ ~~~~~~~~~ -../../git/src/netlib.h:649:17: note: declared here - 649 | extern int HIST_get_percentile(); - | ^~~~~~~~~~~~~~~~~~~ -../../git/src/nettest_omni.c:5057:19: error: too many arguments to function 'HIST_get_percentile'; expected 0, have 2 - 5057 | p99_latency = HIST_get_percentile(time_hist, 0.99); - | ^~~~~~~~~~~~~~~~~~~ ~~~~~~~~~ -../../git/src/netlib.h:649:17: note: declared here - 649 | extern int HIST_get_percentile(); - | ^~~~~~~~~~~~~~~~~~~ -../../git/src/nettest_omni.c: In function 'recv_omni': -../../git/src/nettest_omni.c:5354:17: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 - 5354 | send_ring = allocate_buffer_ring(send_width, - | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ -../../git/src/netlib.h:679:26: note: declared here - 679 | extern struct ring_elt *allocate_buffer_ring(); - | ^~~~~~~~~~~~~~~~~~~~ -../../git/src/nettest_omni.c:5396:17: error: too many arguments to function 'allocate_buffer_ring'; expected 0, have 4 - 5396 | recv_ring = allocate_buffer_ring(recv_width, - | ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ -../../git/src/netlib.h:679:26: note: declared here - 679 | extern struct ring_elt *allocate_buffer_ring(); - | ^~~~~~~~~~~~~~~~~~~~ - -Signed-off-by: mark.yang <mark.yang@lge.com> ---- - src/netlib.h | 11 ++++++----- - 1 file changed, 6 insertions(+), 5 deletions(-) - -diff --git a/src/netlib.h b/src/netlib.h -index b1f4199..8e1f6fe 100644 ---- a/src/netlib.h -+++ b/src/netlib.h -@@ -564,6 +564,7 @@ extern void demo_interval_final(); - #endif - #endif - -+#include "hist.h" - extern void netlib_init(); - extern int netlib_get_page_size(); - extern void install_signal_catchers(); -@@ -646,9 +647,9 @@ extern char *find_interface_slot(char *interface_name); - extern void find_interface_ids(char *interface_name, int *vendor, int *device, int *sub_vend, int *sub_dev); - extern void find_driver_info(char *ifname, char *driver, char *version, char *firmware, char *bus, int len); - extern void find_system_info(char **system_model, char **cpu_model, int *cpu_frequency); --extern int HIST_get_percentile(); --extern void HIST_get_stats(); --extern void HIST_purge(); -+extern int HIST_get_percentile(HIST h, const double percentile); -+extern void HIST_get_stats(HIST h, int *min, int *max, double *mean, double *stddev); -+extern void HIST_purge(HIST h); - extern void find_security_info(int *enabled, int *type, char **specific); - extern void demo_first_timestamp(); - extern void demo_reset(); -@@ -676,7 +677,7 @@ extern void catcher(int, siginfo_t *,void *); - #else - extern void catcher(int); - #endif /* __hpux */ --extern struct ring_elt *allocate_buffer_ring(); -+extern struct ring_elt *allocate_buffer_ring(int recv_width, int recv_size, int local_recv_align, int local_recv_offset); - extern void access_buffer(char *buffer_ptr, - int length, - int dirty_count, -@@ -687,7 +688,7 @@ extern struct ring_elt *allocate_exs_buffer_ring(); - #endif /* HAVE_ICSC_EXS */ - - #ifdef HAVE_SENDFILE --extern struct ring_elt *alloc_sendfile_buf_ring(); -+extern struct ring_elt *alloc_sendfile_buf_ring(int send_width, int send_size, int local_send_align, int local_send_offset); - extern int netperf_sendfile(SOCKET send_socket, struct ring_elt *send_ring); - #endif /* HAVE_SENDFILE */ - diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/net-analyzer/netperf/README.md b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/net-analyzer/netperf/README.md deleted file mode 100644 index 86432d03b8b..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/net-analyzer/netperf/README.md +++ /dev/null @@ -1,4 +0,0 @@ -The `0000-gcc15.patch` can be dropped when the PR below gets merged -and we pull the updated ebuild: - -https://codeberg.org/gentoo/gentoo/pulls/36 From f3f0109438c21b28cd0d193016ed7d2e129fb6e3 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Tue, 3 Mar 2026 15:29:08 +0100 Subject: [PATCH 277/291] overlay profiles: Disable USE=suid for net-misc/iputils Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../third_party/coreos-overlay/profiles/coreos/base/package.use | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use index 17856aa3244..4fa7886ad6f 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use @@ -15,7 +15,7 @@ dev-vcs/git webdav curl # I'm not sure we really need it.) # Disable websockets, we never had them, and now they are enabled by default. net-misc/curl kerberos telnet -http3 -quic -curl_quic_openssl -websockets -net-misc/iputils arping tracepath +net-misc/iputils arping tracepath -suid sys-devel/gettext -git # for profile migration, needs to be enabled despite the fact it's From d011609f0905336d06ae557c24c978f7502d4a96 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Wed, 4 Mar 2026 13:38:41 +0100 Subject: [PATCH 278/291] overlay profiles: Add accept keywords for sys-apps/iucode_tool Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../profiles/coreos/base/package.accept_keywords | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords index 6b41943e784..f275f86582a 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords @@ -97,6 +97,9 @@ dev-db/etcd amd64 # latest version of the package with the unstable keywords. sys-apps/azure-vm-utils +# Will be handy for arm64 sdk. +=sys-apps/iucode_tool-2.3.1-r2 + # Keep versions on both arches in sync. =sys-apps/zram-generator-1.2.1 ~arm64 =sys-auth/sssd-2.9.7 ~arm64 From 493f02ce690a999df4a8a9adea155fdf54697062 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Wed, 4 Mar 2026 13:39:50 +0100 Subject: [PATCH 279/291] overlay coreos/user-patches: Regenerate patches for sys-apps/systemd Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../0001-wait-online-set-any-by-default.patch | 10 ++-- ...ate-don-t-require-strictly-newer-usr.patch | 16 +++--- ...003-core-use-max-for-DefaultTasksMax.patch | 18 +++---- ...d-Disable-SELinux-permissions-checks.patch | 8 +-- ...-Pass-tty-to-use-by-agetty-via-stdin.patch | 48 ++++++++++-------- ...s-Keep-using-old-journal-file-format.patch | 6 +-- ...NS-issues-with-default-k8s-configura.patch | 5 +- ...multi-user.target-the-default-target.patch | 31 ++++++------ ...penat-directly-but-resolve-symlinks.patch} | 6 +-- ...age-Follow-symlinks-in-a-given-root.patch} | 6 +-- ...t-image-name-for-extension-release-.patch} | 12 ++--- ...r-handling-symlinks-with-systemd-sy.patch} | 7 +-- ...table-directory-with-the-right-mode.patch} | 6 +-- ...kip-refresh-if-no-changes-are-found.patch} | 6 +-- ...t-verity-user-certs-from-given-root.patch} | 50 +++++++++++-------- ...sysext-introduce-global-config-file.patch} | 6 +-- ...onf-add-systemd-sysext-config-files.patch} | 6 +-- ...rt-ImagePolicy-global-config-option.patch} | 6 +-- ...t-Fix-config-file-support-with-root.patch} | 4 +- ...SC-event-field-if-etc-machine-id-do.patch} | 19 ++++--- .../user-patches/sys-apps/systemd/README.md | 20 +++++++- 21 files changed, 171 insertions(+), 125 deletions(-) rename sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/{0001-vpick-Don-t-use-openat-directly-but-resolve-symlinks.patch => 0009-vpick-Don-t-use-openat-directly-but-resolve-symlinks.patch} (87%) rename sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/{0002-discover-image-Follow-symlinks-in-a-given-root.patch => 0010-discover-image-Follow-symlinks-in-a-given-root.patch} (99%) rename sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/{0003-sysext-Use-correct-image-name-for-extension-release-.patch => 0011-sysext-Use-correct-image-name-for-extension-release-.patch} (86%) rename sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/{0004-test-Add-tests-for-handling-symlinks-with-systemd-sy.patch => 0012-test-Add-tests-for-handling-symlinks-with-systemd-sy.patch} (98%) rename sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/{0005-sysext-Create-mutable-directory-with-the-right-mode.patch => 0013-sysext-Create-mutable-directory-with-the-right-mode.patch} (92%) rename sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/{0006-sysext-Skip-refresh-if-no-changes-are-found.patch => 0014-sysext-Skip-refresh-if-no-changes-are-found.patch} (99%) rename sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/{0007-sysext-Get-verity-user-certs-from-given-root.patch => 0015-sysext-Get-verity-user-certs-from-given-root.patch} (91%) rename sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/{0008-sysext-introduce-global-config-file.patch => 0016-sysext-introduce-global-config-file.patch} (95%) rename sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/{0009-man-sysext.conf-add-systemd-sysext-config-files.patch => 0017-man-sysext.conf-add-systemd-sysext-config-files.patch} (97%) rename sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/{0010-sysext-support-ImagePolicy-global-config-option.patch => 0018-sysext-support-ImagePolicy-global-config-option.patch} (93%) rename sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/{0011-sysext-Fix-config-file-support-with-root.patch => 0019-sysext-Fix-config-file-support-with-root.patch} (98%) rename sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/{0001-handle-missing-machine-id.patch => 0020-Drop-machine-id-OSC-event-field-if-etc-machine-id-do.patch} (72%) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0001-wait-online-set-any-by-default.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0001-wait-online-set-any-by-default.patch index 6cbf8caa1b1..3625fda73fb 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0001-wait-online-set-any-by-default.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0001-wait-online-set-any-by-default.patch @@ -1,7 +1,7 @@ -From 61ae07bbf1d7032eef32137b1fe299647602e3de Mon Sep 17 00:00:00 2001 +From 6055d8b50c4a39d3e5f4fa0cf017a3b04786c5ba Mon Sep 17 00:00:00 2001 From: David Michael <dm0@redhat.com> Date: Tue, 16 Apr 2019 02:44:51 +0000 -Subject: [PATCH] wait-online: set --any by default +Subject: [PATCH 01/20] wait-online: set --any by default The systemd-networkd-wait-online command would normally continue waiting after a network interface is usable if other interfaces are @@ -11,8 +11,8 @@ Preserve previous Container Linux behavior for compatibility by setting the --any flag by default. See patches from v241 (or earlier) for the original implementation. --- - src/network/wait-online/wait-online.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) + src/network/wait-online/wait-online.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/network/wait-online/wait-online.c b/src/network/wait-online/wait-online.c index b1d0b9cde2..e07c11d807 100644 @@ -28,5 +28,5 @@ index b1d0b9cde2..e07c11d807 100644 STATIC_DESTRUCTOR_REGISTER(arg_interfaces, hashmap_freep); -- -2.51.0 +2.52.0 diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0002-needs-update-don-t-require-strictly-newer-usr.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0002-needs-update-don-t-require-strictly-newer-usr.patch index b2b93ebb853..d785014aeaf 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0002-needs-update-don-t-require-strictly-newer-usr.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0002-needs-update-don-t-require-strictly-newer-usr.patch @@ -1,7 +1,7 @@ -From 5097368cb45b455355165706876509272e49d538 Mon Sep 17 00:00:00 2001 +From 5bff53a23228b10d93d342510f0ffd41185e3011 Mon Sep 17 00:00:00 2001 From: Alex Crawford <alex.crawford@coreos.com> Date: Wed, 2 Mar 2016 10:46:33 -0800 -Subject: [PATCH 2/8] needs-update: don't require strictly newer usr +Subject: [PATCH 02/20] needs-update: don't require strictly newer usr Updates should be triggered whenever usr changes, not only when it is newer. --- @@ -10,10 +10,10 @@ Updates should be triggered whenever usr changes, not only when it is newer. 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/man/systemd-update-done.service.xml b/man/systemd-update-done.service.xml -index 6b863ecff3..c166c5e7ab 100644 +index d9d78262a1..761bbdecca 100644 --- a/man/systemd-update-done.service.xml +++ b/man/systemd-update-done.service.xml -@@ -50,7 +50,7 @@ +@@ -49,7 +49,7 @@ <varname>ConditionNeedsUpdate=</varname> (see <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>) condition to make sure to run when <filename>/etc/</filename> or @@ -23,10 +23,10 @@ index 6b863ecff3..c166c5e7ab 100644 This requires that updates to <filename>/usr/</filename> are always followed by an update of the modification time of diff --git a/src/shared/condition.c b/src/shared/condition.c -index 1a03fdbe37..8577c35fa0 100644 +index b09eff1bfb..3a170b1820 100644 --- a/src/shared/condition.c +++ b/src/shared/condition.c -@@ -796,7 +796,7 @@ static int condition_test_needs_update(Condition *c, char **env) { +@@ -817,7 +817,7 @@ static int condition_test_needs_update(Condition *c, char **env) { * First, compare seconds as they are always accurate... */ if (usr.st_mtim.tv_sec != other.st_mtim.tv_sec) @@ -35,7 +35,7 @@ index 1a03fdbe37..8577c35fa0 100644 /* * ...then compare nanoseconds. -@@ -807,7 +807,7 @@ static int condition_test_needs_update(Condition *c, char **env) { +@@ -828,7 +828,7 @@ static int condition_test_needs_update(Condition *c, char **env) { * (otherwise the filesystem supports nsec timestamps, see stat(2)). */ if (usr.st_mtim.tv_nsec == 0 || other.st_mtim.tv_nsec > 0) @@ -44,7 +44,7 @@ index 1a03fdbe37..8577c35fa0 100644 _cleanup_free_ char *timestamp_str = NULL; r = parse_env_file(NULL, p, "TIMESTAMP_NSEC", ×tamp_str); -@@ -827,7 +827,7 @@ static int condition_test_needs_update(Condition *c, char **env) { +@@ -848,7 +848,7 @@ static int condition_test_needs_update(Condition *c, char **env) { return true; } diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0003-core-use-max-for-DefaultTasksMax.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0003-core-use-max-for-DefaultTasksMax.patch index e11beb5457a..446428fbb6a 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0003-core-use-max-for-DefaultTasksMax.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0003-core-use-max-for-DefaultTasksMax.patch @@ -1,7 +1,7 @@ -From 18ce110c4a4a5065ac9003ef67ccd58ada6d3c38 Mon Sep 17 00:00:00 2001 +From df56cf2ad0c6c84a22e9fca8893c610b82b78377 Mon Sep 17 00:00:00 2001 From: Adrian Vladu <avladu@cloudbasesolutions.com> Date: Fri, 16 Feb 2024 11:22:08 +0000 -Subject: [PATCH 3/8] core: use max for DefaultTasksMax +Subject: [PATCH 03/20] core: use max for DefaultTasksMax Since systemd v228, systemd has a DefaultTasksMax which defaulted to 512, later 15% of the system's maximum number of PIDs. This @@ -21,10 +21,10 @@ Signed-off-by: Adrian Vladu <avladu@cloudbasesolutions.com> 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/man/systemd-system.conf.xml b/man/systemd-system.conf.xml -index f7b414da5c..9c07e235ab 100644 +index cf5a3612f6..a0f9f8ba57 100644 --- a/man/systemd-system.conf.xml +++ b/man/systemd-system.conf.xml -@@ -230,7 +230,7 @@ +@@ -227,7 +227,7 @@ <listitem><para>Configure the default value for the per-unit <varname>TasksMax=</varname> setting. See <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. This setting applies to all unit types that support resource control settings, with the exception @@ -34,10 +34,10 @@ index f7b414da5c..9c07e235ab 100644 Kernel has a default value for <varname>kernel.pid_max=</varname> and an algorithm of counting in case of more than 32 cores. For example, with the default <varname>kernel.pid_max=</varname>, <varname>DefaultTasksMax=</varname> defaults to 4915, diff --git a/src/core/manager.c b/src/core/manager.c -index e9fa84079d..af8d3c7b41 100644 +index 20a535f2f4..be1c352045 100644 --- a/src/core/manager.c +++ b/src/core/manager.c -@@ -117,7 +117,7 @@ +@@ -112,7 +112,7 @@ /* How many units and jobs to process of the bus queue before returning to the event loop. */ #define MANAGER_BUS_MESSAGE_BUDGET 100U @@ -45,12 +45,12 @@ index e9fa84079d..af8d3c7b41 100644 +#define DEFAULT_TASKS_MAX ((CGroupTasksMax) { 100U, 100U }) /* 15% */ static int manager_dispatch_notify_fd(sd_event_source *source, int fd, uint32_t revents, void *userdata); - static int manager_dispatch_cgroups_agent_fd(sd_event_source *source, int fd, uint32_t revents, void *userdata); + static int manager_dispatch_signal_fd(sd_event_source *source, int fd, uint32_t revents, void *userdata); diff --git a/src/core/system.conf.in b/src/core/system.conf.in -index 1c08aa4d22..2faea3605e 100644 +index 54196e8489..b0b5c78b56 100644 --- a/src/core/system.conf.in +++ b/src/core/system.conf.in -@@ -59,7 +59,7 @@ +@@ -58,7 +58,7 @@ #DefaultIPAccounting=no #DefaultMemoryAccounting={{ 'yes' if MEMORY_ACCOUNTING_DEFAULT else 'no' }} #DefaultTasksAccounting=yes diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0004-systemd-Disable-SELinux-permissions-checks.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0004-systemd-Disable-SELinux-permissions-checks.patch index d22e57f1833..0903e0e3b7f 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0004-systemd-Disable-SELinux-permissions-checks.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0004-systemd-Disable-SELinux-permissions-checks.patch @@ -1,7 +1,7 @@ -From 1716754b1f3ea3d5d3f232d9fe50ba1df0c5eff7 Mon Sep 17 00:00:00 2001 +From 38ef166d85928d1f806bc48f3d29f45563d1abde Mon Sep 17 00:00:00 2001 From: Matthew Garrett <mjg59@coreos.com> Date: Tue, 20 Dec 2016 16:43:22 +0000 -Subject: [PATCH 4/8] systemd: Disable SELinux permissions checks +Subject: [PATCH 04/20] systemd: Disable SELinux permissions checks We don't care about the interaction between systemd and SELinux policy, so let's just disable these checks rather than having to incorporate policy @@ -12,7 +12,7 @@ to limit containers and not anything running directly on the host. 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core/selinux-access.c b/src/core/selinux-access.c -index a67a520a3b..3365b920eb 100644 +index 8ccc31630d..34e9cebee8 100644 --- a/src/core/selinux-access.c +++ b/src/core/selinux-access.c @@ -2,7 +2,7 @@ @@ -22,8 +22,8 @@ index a67a520a3b..3365b920eb 100644 -#if HAVE_SELINUX +#if 0 - #include <errno.h> #include <selinux/avc.h> + #include <selinux/selinux.h> -- 2.52.0 diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0005-Revert-getty-Pass-tty-to-use-by-agetty-via-stdin.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0005-Revert-getty-Pass-tty-to-use-by-agetty-via-stdin.patch index 0bbf3aff06d..0517aea527c 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0005-Revert-getty-Pass-tty-to-use-by-agetty-via-stdin.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0005-Revert-getty-Pass-tty-to-use-by-agetty-via-stdin.patch @@ -1,7 +1,7 @@ -From 306da1d06e84a721ac34fbc303b4629b2c1c7257 Mon Sep 17 00:00:00 2001 +From 4e071bef0713099cfe2540a5576744c0e5c41723 Mon Sep 17 00:00:00 2001 From: Sayan Chowdhury <schowdhury@microsoft.com> Date: Fri, 16 Dec 2022 16:28:26 +0530 -Subject: [PATCH] Revert "getty: Pass tty to use by agetty via stdin" +Subject: [PATCH 05/20] Revert "getty: Pass tty to use by agetty via stdin" This reverts commit b4bf9007cbee7dc0b1356897344ae2a7890df84c. @@ -10,22 +10,24 @@ input for serial consoles (which is used for SSH connections). Signed-off-by: Sayan Chowdhury <schowdhury@microsoft.com> --- - units/console-getty.service.in | 4 +--- - units/container-getty@.service.in | 4 +--- - units/getty@.service.in | 4 +--- - units/serial-getty@.service.in | 4 +--- - 4 files changed, 4 insertions(+), 12 deletions(-) + units/console-getty.service.in | 6 +++--- + units/container-getty@.service.in | 6 +++--- + units/getty@.service.in | 6 +++--- + units/serial-getty@.service.in | 6 +++--- + 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/units/console-getty.service.in b/units/console-getty.service.in -index 967d8337ab..cde822afc8 100644 +index 967d8337ab..1f2d8b910f 100644 --- a/units/console-getty.service.in +++ b/units/console-getty.service.in -@@ -20,12 +20,10 @@ Before=getty.target +@@ -20,12 +20,12 @@ Before=getty.target ConditionPathExists=/dev/console [Service] -ExecStart=-/sbin/agetty --noreset --noclear --issue-file=/etc/issue:/etc/issue.d:/run/issue.d:/usr/lib/issue.d --keep-baud 115200,57600,38400,9600 - ${TERM} -+ExecStart=-/sbin/agetty --noreset --noclear --issue-file=/etc/issue:/etc/issue.d:/run/issue.d:/usr/lib/issue.d --keep-baud 115200,57600,38400,9600 console ${TERM} ++# The '-o' option value tells agetty to replace 'login' arguments with '--' for ++# safety, and then the entered username. ++ExecStart=-/sbin/agetty -o '-- \\u' --noreset --noclear --keep-baud 115200,57600,38400,9600 console ${TERM} Type=idle Restart=always UtmpIdentifier=cons @@ -35,15 +37,17 @@ index 967d8337ab..cde822afc8 100644 TTYReset=yes TTYVHangup=yes diff --git a/units/container-getty@.service.in b/units/container-getty@.service.in -index e0b27613df..2868d56ad0 100644 +index e0b27613df..5f27653d1f 100644 --- a/units/container-getty@.service.in +++ b/units/container-getty@.service.in -@@ -25,13 +25,11 @@ Conflicts=rescue.service +@@ -25,13 +25,13 @@ Conflicts=rescue.service Before=rescue.service [Service] -ExecStart=-/sbin/agetty --noreset --noclear --issue-file=/etc/issue:/etc/issue.d:/run/issue.d:/usr/lib/issue.d - ${TERM} -+ExecStart=-/sbin/agetty --noreset --noclear --issue-file=/etc/issue:/etc/issue.d:/run/issue.d:/usr/lib/issue.d pts/%I ${TERM} ++# The '-o' option value tells agetty to replace 'login' arguments with '--' for ++# safety, and then the entered username. ++ExecStart=-/sbin/agetty -o '-- \\u' --noreset --noclear pts/%I ${TERM} Type=idle Restart=always RestartSec=0 @@ -54,15 +58,17 @@ index e0b27613df..2868d56ad0 100644 TTYReset=yes TTYVHangup=yes diff --git a/units/getty@.service.in b/units/getty@.service.in -index 104c4acc96..bedf0aae54 100644 +index 104c4acc96..1819627d1c 100644 --- a/units/getty@.service.in +++ b/units/getty@.service.in -@@ -34,13 +34,11 @@ Before=rescue.service +@@ -34,13 +34,13 @@ Before=rescue.service ConditionPathExists=/dev/tty0 [Service] -ExecStart=-/sbin/agetty --noreset --noclear --issue-file=/etc/issue:/etc/issue.d:/run/issue.d:/usr/lib/issue.d - ${TERM} -+ExecStart=-/sbin/agetty --noreset --noclear --issue-file=/etc/issue:/etc/issue.d:/run/issue.d:/usr/lib/issue.d %I ${TERM} ++# The '-o' option value tells agetty to replace 'login' arguments with '--' for ++# safety, and then the entered username. ++ExecStart=-/sbin/agetty -o '-- \\u' --noreset --noclear %I ${TERM} Type=idle Restart=always RestartSec=0 @@ -73,15 +79,17 @@ index 104c4acc96..bedf0aae54 100644 TTYReset=yes TTYVHangup=yes diff --git a/units/serial-getty@.service.in b/units/serial-getty@.service.in -index 0134c83d48..7e5c8797ca 100644 +index 0134c83d48..ba4cbc0edb 100644 --- a/units/serial-getty@.service.in +++ b/units/serial-getty@.service.in -@@ -30,12 +30,10 @@ Conflicts=rescue.service +@@ -30,12 +30,12 @@ Conflicts=rescue.service Before=rescue.service [Service] -ExecStart=-/sbin/agetty --noreset --noclear --issue-file=/etc/issue:/etc/issue.d:/run/issue.d:/usr/lib/issue.d --keep-baud 115200,57600,38400,9600 - ${TERM} -+ExecStart=-/sbin/agetty --noreset --noclear --issue-file=/etc/issue:/etc/issue.d:/run/issue.d:/usr/lib/issue.d --keep-baud 115200,57600,38400,9600 %I ${TERM} ++# The '-o' option value tells agetty to replace 'login' arguments with '--' for ++# safety, and then the entered username. ++ExecStart=-/sbin/agetty -o '-- \\u' --noreset --noclear --keep-baud 115200,57600,38400,9600 %I ${TERM} Type=idle Restart=always UtmpIdentifier=%I @@ -91,5 +99,5 @@ index 0134c83d48..7e5c8797ca 100644 TTYReset=yes TTYVHangup=yes -- -2.51.0 +2.52.0 diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0006-units-Keep-using-old-journal-file-format.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0006-units-Keep-using-old-journal-file-format.patch index 7cdedc6ba62..38f780cec13 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0006-units-Keep-using-old-journal-file-format.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0006-units-Keep-using-old-journal-file-format.patch @@ -1,7 +1,7 @@ -From 63fe9e7a742c070c83919be74c383f74420e6777 Mon Sep 17 00:00:00 2001 +From b097e139801009d722c33a9580bcda23a4a7a1e1 Mon Sep 17 00:00:00 2001 From: Adrian Vladu <avladu@cloudbasesolutions.com> Date: Fri, 16 Feb 2024 11:29:04 +0000 -Subject: [PATCH 6/8] units: Keep using old journal file format +Subject: [PATCH 06/20] units: Keep using old journal file format Systemd 252 made an incompatible change in journal file format. Temporarily force journald to use the old journal format to give logging containers more @@ -14,7 +14,7 @@ Signed-off-by: Adrian Vladu <avladu@cloudbasesolutions.com> 2 files changed, 2 insertions(+) diff --git a/units/systemd-journald.service.in b/units/systemd-journald.service.in -index 4404af963b..323af7cfb0 100644 +index 1fb080d268..960568aaff 100644 --- a/units/systemd-journald.service.in +++ b/units/systemd-journald.service.in @@ -30,6 +30,7 @@ IgnoreOnIsolate=yes diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0007-tmpfiles.d-Fix-DNS-issues-with-default-k8s-configura.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0007-tmpfiles.d-Fix-DNS-issues-with-default-k8s-configura.patch index 28215448a31..9925f0dfc67 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0007-tmpfiles.d-Fix-DNS-issues-with-default-k8s-configura.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0007-tmpfiles.d-Fix-DNS-issues-with-default-k8s-configura.patch @@ -1,7 +1,8 @@ -From a31573ecdeff40d109951750c7adf086c52c2869 Mon Sep 17 00:00:00 2001 +From 0ba9b9356861f8012c0e7794d9c61ebf21a9c6d7 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Wed, 22 Oct 2025 10:39:42 +0200 -Subject: [PATCH 7/8] tmpfiles.d: Fix DNS issues with default k8s configuration +Subject: [PATCH 07/20] tmpfiles.d: Fix DNS issues with default k8s + configuration The Kubelet takes /etc/resolv.conf for, e.g., CoreDNS which has dnsPolicy "default", but unless the kubelet `--resolv-conf` flag is set to point to diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0008-units-Make-multi-user.target-the-default-target.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0008-units-Make-multi-user.target-the-default-target.patch index a09e66cc703..418a015c0c7 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0008-units-Make-multi-user.target-the-default-target.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0008-units-Make-multi-user.target-the-default-target.patch @@ -1,38 +1,41 @@ -From 3c13363e4b3f2e5bcc762a71460d84b93452f53f Mon Sep 17 00:00:00 2001 +From b3430348f5ae93251076fb4e3b4aecbfa02513b5 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Fri, 24 Oct 2025 11:06:57 +0200 -Subject: [PATCH] units: Make multi-user.target the default target +Subject: [PATCH 08/20] units: Make multi-user.target the default target Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> -Signed-off-by: Kai Lueke <kailuke@microsoft.com> --- - units/meson.build | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) + units/meson.build | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/units/meson.build b/units/meson.build -index 4f47a3b2bd..9663e21e0c 100644 +index 4f47a3b2bd..63940a72be 100644 --- a/units/meson.build +++ b/units/meson.build -@@ -48,8 +48,7 @@ units = [ +@@ -47,10 +47,7 @@ units = [ + 'file' : 'getty@.service.in', 'symlinks' : ['autovt@.service'], }, - { +- { - 'file' : 'graphical.target', - 'symlinks' : ['default.target'], -+ 'file' : 'graphical.target' - }, +- }, ++ { 'file' : 'graphical.target' }, { 'file' : 'halt.target' }, { -@@ -142,7 +141,9 @@ units = [ + 'file' : 'hibernate.target', +@@ -142,7 +139,10 @@ units = [ 'conditions' : ['ENABLE_MACHINED'], }, { 'file' : 'modprobe@.service' }, - { 'file' : 'multi-user.target' }, -+ { 'file' : 'multi-user.target' , -+ 'symlinks' : ['default.target'] ++ { ++ 'file' : 'multi-user.target', ++ 'symlinks' : ['default.target'], + }, { 'file' : 'network-online.target' }, { 'file' : 'network-pre.target' }, { 'file' : 'network.target' }, -- -2.51.0 +2.52.0 + diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0001-vpick-Don-t-use-openat-directly-but-resolve-symlinks.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0009-vpick-Don-t-use-openat-directly-but-resolve-symlinks.patch similarity index 87% rename from sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0001-vpick-Don-t-use-openat-directly-but-resolve-symlinks.patch rename to sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0009-vpick-Don-t-use-openat-directly-but-resolve-symlinks.patch index 2c7319246f0..cd41955840f 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0001-vpick-Don-t-use-openat-directly-but-resolve-symlinks.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0009-vpick-Don-t-use-openat-directly-but-resolve-symlinks.patch @@ -1,7 +1,7 @@ -From 6f4b065b626edd8a06ff0c8028173e060b5e444b Mon Sep 17 00:00:00 2001 +From 42b6a55f8d2bdf68ff93764219b3bedffb11f4e0 Mon Sep 17 00:00:00 2001 From: Kai Lueke <kailuke@microsoft.com> Date: Thu, 20 Nov 2025 23:43:55 +0900 -Subject: [PATCH 03/10] vpick: Don't use openat directly but resolve symlinks +Subject: [PATCH 09/20] vpick: Don't use openat directly but resolve symlinks in given root With systemd-sysext --root= all symlinks should be followed relative to @@ -13,7 +13,7 @@ symlink in the given root. 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/shared/vpick.c b/src/shared/vpick.c -index b1b2d93054..dfe58cafa5 100644 +index 07d9d9ffd8..b203609cc9 100644 --- a/src/shared/vpick.c +++ b/src/shared/vpick.c @@ -471,9 +471,9 @@ static int make_choice( diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0002-discover-image-Follow-symlinks-in-a-given-root.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0010-discover-image-Follow-symlinks-in-a-given-root.patch similarity index 99% rename from sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0002-discover-image-Follow-symlinks-in-a-given-root.patch rename to sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0010-discover-image-Follow-symlinks-in-a-given-root.patch index fcef9d20ac1..3aa92e1e6c3 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0002-discover-image-Follow-symlinks-in-a-given-root.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0010-discover-image-Follow-symlinks-in-a-given-root.patch @@ -1,7 +1,7 @@ -From 9b6f1b1d8e1066a513a2939c613b36c9e887512c Mon Sep 17 00:00:00 2001 +From 530ffcd9e3212e0c93002e752b682dd41a8889b1 Mon Sep 17 00:00:00 2001 From: Kai Lueke <kailuke@microsoft.com> Date: Thu, 20 Nov 2025 23:43:55 +0900 -Subject: [PATCH 04/10] discover-image: Follow symlinks in a given root +Subject: [PATCH 10/20] discover-image: Follow symlinks in a given root So far systemd-sysext with --root= specified didn't follow extension symlinks (such as the "current" symlinks managed by systemd-sysupdate). @@ -25,7 +25,7 @@ is to do this for the final system which is trusted at this stage. 1 file changed, 122 insertions(+), 40 deletions(-) diff --git a/src/shared/discover-image.c b/src/shared/discover-image.c -index 1402303a8e..97c4284eca 100644 +index 888f11f206..53ee30c3f8 100644 --- a/src/shared/discover-image.c +++ b/src/shared/discover-image.c @@ -356,6 +356,8 @@ static int image_make( diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0003-sysext-Use-correct-image-name-for-extension-release-.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0011-sysext-Use-correct-image-name-for-extension-release-.patch similarity index 86% rename from sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0003-sysext-Use-correct-image-name-for-extension-release-.patch rename to sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0011-sysext-Use-correct-image-name-for-extension-release-.patch index adedfd3268a..01379577a90 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0003-sysext-Use-correct-image-name-for-extension-release-.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0011-sysext-Use-correct-image-name-for-extension-release-.patch @@ -1,7 +1,7 @@ -From 5480f56002399069f74f30ce3ef620ec44ecf527 Mon Sep 17 00:00:00 2001 +From 6a95919888a99d92636e0aa28c68d0f95f16e48e Mon Sep 17 00:00:00 2001 From: Kai Lueke <kailuke@microsoft.com> Date: Thu, 20 Nov 2025 23:43:55 +0900 -Subject: [PATCH 3/7] sysext: Use correct image name for extension release +Subject: [PATCH 11/20] sysext: Use correct image name for extension release checks For the extension release check the image name is needed and was derived @@ -21,12 +21,12 @@ device but directly the extension name we have at hand. 2 files changed, 10 insertions(+) diff --git a/src/shared/discover-image.c b/src/shared/discover-image.c -index 91f4407b0e..480ffd221c 100644 +index 53ee30c3f8..2801793d6d 100644 --- a/src/shared/discover-image.c +++ b/src/shared/discover-image.c -@@ -1822,6 +1822,11 @@ int image_read_metadata(Image *i, const ImagePolicy *image_policy) { +@@ -1844,6 +1844,11 @@ int image_read_metadata(Image *i, const ImagePolicy *image_policy) { if (r < 0) - return r; + return log_debug_errno(r, "Failed to decrypt image '%s': %m", i->path); + /* Do not use the image name derived from the backing file of the loop device */ + r = free_and_strdup(&m->image_name, i->name); @@ -53,5 +53,5 @@ index 5d432b42da..72da02cd89 100644 m, d->fd, -- -2.51.1 +2.52.0 diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0004-test-Add-tests-for-handling-symlinks-with-systemd-sy.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0012-test-Add-tests-for-handling-symlinks-with-systemd-sy.patch similarity index 98% rename from sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0004-test-Add-tests-for-handling-symlinks-with-systemd-sy.patch rename to sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0012-test-Add-tests-for-handling-symlinks-with-systemd-sy.patch index 3f5c483ad70..b6d24f71936 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0004-test-Add-tests-for-handling-symlinks-with-systemd-sy.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0012-test-Add-tests-for-handling-symlinks-with-systemd-sy.patch @@ -1,7 +1,8 @@ -From f2e3cd402e64528454d3825681ccf242ff1b46af Mon Sep 17 00:00:00 2001 +From 187e60032a26fb58b8944aac5c48a495f9de2644 Mon Sep 17 00:00:00 2001 From: Kai Lueke <kailuke@microsoft.com> Date: Thu, 20 Nov 2025 23:43:55 +0900 -Subject: [PATCH 4/7] test: Add tests for handling symlinks with systemd-sysext +Subject: [PATCH 12/20] test: Add tests for handling symlinks with + systemd-sysext When we now allow following symlinks inside a --root= we should also test that it works in various cases from simple relative and absolute @@ -330,5 +331,5 @@ index ecf0b83b1d..3eec224eb6 100755 -- -2.51.1 +2.52.0 diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0005-sysext-Create-mutable-directory-with-the-right-mode.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0013-sysext-Create-mutable-directory-with-the-right-mode.patch similarity index 92% rename from sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0005-sysext-Create-mutable-directory-with-the-right-mode.patch rename to sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0013-sysext-Create-mutable-directory-with-the-right-mode.patch index b9cfd819a84..6e9fa16df48 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0005-sysext-Create-mutable-directory-with-the-right-mode.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0013-sysext-Create-mutable-directory-with-the-right-mode.patch @@ -1,7 +1,7 @@ -From cf36f845e6a806161e008def40a271e9e9746c4f Mon Sep 17 00:00:00 2001 +From 773073faa6582a0bbb6f3c4d3b35a1a81fbffd81 Mon Sep 17 00:00:00 2001 From: Kai Lueke <kailuke@microsoft.com> Date: Wed, 3 Dec 2025 00:02:32 +0900 -Subject: [PATCH 5/7] sysext: Create mutable directory with the right mode +Subject: [PATCH 13/20] sysext: Create mutable directory with the right mode When the mutable directory didn't exist but gets created with --mutable=yes then it used to get mode 700 and later it got patched by @@ -41,5 +41,5 @@ index 72da02cd89..d63cf39fbb 100644 if (atfd < 0) return log_error_errno(errno, "Failed to open directory '%s': %m", path_in_root); -- -2.51.1 +2.52.0 diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0006-sysext-Skip-refresh-if-no-changes-are-found.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0014-sysext-Skip-refresh-if-no-changes-are-found.patch similarity index 99% rename from sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0006-sysext-Skip-refresh-if-no-changes-are-found.patch rename to sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0014-sysext-Skip-refresh-if-no-changes-are-found.patch index 066717d5b66..ca3f2773101 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0006-sysext-Skip-refresh-if-no-changes-are-found.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0014-sysext-Skip-refresh-if-no-changes-are-found.patch @@ -1,7 +1,7 @@ -From 34f3aeb2b92388e26cabe51e48dea99845e0930f Mon Sep 17 00:00:00 2001 +From d8ccdfe333a2eda7770371112cf5dea0ae67598c Mon Sep 17 00:00:00 2001 From: Kai Lueke <kailuke@microsoft.com> Date: Wed, 26 Nov 2025 00:04:43 +0900 -Subject: [PATCH 1/3] sysext: Skip refresh if no changes are found +Subject: [PATCH 14/20] sysext: Skip refresh if no changes are found When the extensions for the final system are already set up from the initrd we should avoid disrupting the boot process with the remount @@ -292,7 +292,7 @@ index 5f1d90ad79..f244ffa9f1 100644 +#define AT_HANDLE_MNT_ID_UNIQUE 0x001 /* Return the u64 unique mount ID. */ +#endif diff --git a/src/shared/discover-image.c b/src/shared/discover-image.c -index d6d41b4ecf..ddb2edaa33 100644 +index 2801793d6d..192ed18687 100644 --- a/src/shared/discover-image.c +++ b/src/shared/discover-image.c @@ -35,6 +35,9 @@ diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0007-sysext-Get-verity-user-certs-from-given-root.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0015-sysext-Get-verity-user-certs-from-given-root.patch similarity index 91% rename from sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0007-sysext-Get-verity-user-certs-from-given-root.patch rename to sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0015-sysext-Get-verity-user-certs-from-given-root.patch index 8df4af8a142..494a0e8dbe8 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0007-sysext-Get-verity-user-certs-from-given-root.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0015-sysext-Get-verity-user-certs-from-given-root.patch @@ -1,7 +1,7 @@ -From 439fb373b7360ba3759b8978d0354d4fe760c8f2 Mon Sep 17 00:00:00 2001 +From a228e6433b6febd4d252a3cb71bb0c2e63156b93 Mon Sep 17 00:00:00 2001 From: Kai Lueke <kailuke@microsoft.com> Date: Thu, 27 Nov 2025 17:49:15 +0900 -Subject: [PATCH 2/3] sysext: Get verity user certs from given --root= +Subject: [PATCH 15/20] sysext: Get verity user certs from given --root= The verity user certs weren't looked up in the given --root= for systemd-sysext which made it fail to set up extensions with a strict @@ -18,16 +18,16 @@ Signed-off-by: Kai Lueke <kailuke@microsoft.com> src/machine/machined-varlink.c | 2 +- src/mountfsd/mountwork.c | 1 + src/portable/portabled-image-bus.c | 2 +- - src/shared/discover-image.c | 2 +- + src/shared/discover-image.c | 3 +- src/shared/discover-image.h | 2 +- src/shared/dissect-image.c | 22 ++++++----- src/shared/dissect-image.h | 2 +- src/sysext/sysext.c | 4 +- test/units/TEST-50-DISSECT.sysext.sh | 58 ++++++++++++++++++++++++++++ - 11 files changed, 84 insertions(+), 20 deletions(-) + 11 files changed, 85 insertions(+), 20 deletions(-) diff --git a/src/core/namespace.c b/src/core/namespace.c -index 283a1108ce..97cf008194 100644 +index 2e3b2a4177..95f8714ea6 100644 --- a/src/core/namespace.c +++ b/src/core/namespace.c @@ -2593,6 +2593,7 @@ int setup_namespace(const NamespaceParameters *p, char **reterr_path) { @@ -79,7 +79,7 @@ index 8bc6565079..2857cd18be 100644 return sd_bus_error_set_errnof(error, r, "Failed to read image metadata: %m"); } diff --git a/src/machine/machined-varlink.c b/src/machine/machined-varlink.c -index 52b1fc12d2..1e8f4ce9a8 100644 +index 064ffab137..f3676e625c 100644 --- a/src/machine/machined-varlink.c +++ b/src/machine/machined-varlink.c @@ -621,7 +621,7 @@ static int list_image_one_and_maybe_read_metadata(sd_varlink *link, Image *image @@ -117,7 +117,7 @@ index e8bcb900ef..380a6d5d45 100644 return sd_bus_error_set_errnof(error, r, "Failed to read image metadata: %m"); } diff --git a/src/shared/discover-image.c b/src/shared/discover-image.c -index 9ce5f028fc..822ea2bd24 100644 +index 192ed18687..925bc6010b 100644 --- a/src/shared/discover-image.c +++ b/src/shared/discover-image.c @@ -1766,7 +1766,7 @@ int image_set_pool_limit(ImageClass class, uint64_t referenced_max) { @@ -129,6 +129,14 @@ index 9ce5f028fc..822ea2bd24 100644 _cleanup_(release_lock_file) LockFile global_lock = LOCK_FILE_INIT, local_lock = LOCK_FILE_INIT; int r; +@@ -1892,6 +1892,7 @@ int image_read_metadata(Image *i, const ImagePolicy *image_policy) { + + r = dissected_image_decrypt( + m, ++ root, + /* passphrase= */ NULL, + &verity, + flags); diff --git a/src/shared/discover-image.h b/src/shared/discover-image.h index 7b5593f08d..4d64a306c8 100644 --- a/src/shared/discover-image.h @@ -143,10 +151,10 @@ index 7b5593f08d..4d64a306c8 100644 bool image_in_search_path(RuntimeScope scope, ImageClass class, const char *root, const char *image); diff --git a/src/shared/dissect-image.c b/src/shared/dissect-image.c -index 715afc8882..8ffb63e1d3 100644 +index 64639000b1..cec4225e92 100644 --- a/src/shared/dissect-image.c +++ b/src/shared/dissect-image.c -@@ -2611,7 +2611,7 @@ static char* dm_deferred_remove_clean(char *name) { +@@ -2740,7 +2740,7 @@ static char* dm_deferred_remove_clean(char *name) { } DEFINE_TRIVIAL_CLEANUP_FUNC(char *, dm_deferred_remove_clean); @@ -155,7 +163,7 @@ index 715afc8882..8ffb63e1d3 100644 int r; if (!FLAGS_SET(flags, DISSECT_IMAGE_ALLOW_USERSPACE_VERITY)) { -@@ -2656,7 +2656,7 @@ static int validate_signature_userspace(const VeritySettings *verity, DissectIma +@@ -2785,7 +2785,7 @@ static int validate_signature_userspace(const VeritySettings *verity, DissectIma /* Because installing a signature certificate into the kernel chain is so messy, let's optionally do * userspace validation. */ @@ -164,7 +172,7 @@ index 715afc8882..8ffb63e1d3 100644 if (r < 0) return log_debug_errno(r, "Failed to enumerate certificates: %m"); if (strv_isempty(certs)) { -@@ -2718,6 +2718,7 @@ static int validate_signature_userspace(const VeritySettings *verity, DissectIma +@@ -2847,6 +2847,7 @@ static int validate_signature_userspace(const VeritySettings *verity, DissectIma static int do_crypt_activate_verity( struct crypt_device *cd, @@ -172,7 +180,7 @@ index 715afc8882..8ffb63e1d3 100644 const char *name, const VeritySettings *verity, DissectImageFlags flags) { -@@ -2765,7 +2766,7 @@ static int do_crypt_activate_verity( +@@ -2894,7 +2895,7 @@ static int do_crypt_activate_verity( /* Preferably propagate the original kernel error, so that the fallback logic can work, * as the device-mapper is finicky around concurrent activations of the same volume */ @@ -181,7 +189,7 @@ index 715afc8882..8ffb63e1d3 100644 if (k < 0) return r < 0 ? r : k; if (k == 0) -@@ -2805,8 +2806,9 @@ static usec_t verity_timeout(void) { +@@ -2934,8 +2935,9 @@ static usec_t verity_timeout(void) { static int verity_partition( PartitionDesignator designator, @@ -193,7 +201,7 @@ index 715afc8882..8ffb63e1d3 100644 const VeritySettings *verity, DissectImageFlags flags, DecryptedImage *d) { -@@ -2886,7 +2888,7 @@ static int verity_partition( +@@ -3015,7 +3017,7 @@ static int verity_partition( goto check; /* The device already exists. Let's check it. */ /* The symlink to the device node does not exist yet. Assume not activated, and let's activate it. */ @@ -202,7 +210,7 @@ index 715afc8882..8ffb63e1d3 100644 if (r >= 0) goto try_open; /* The device is activated. Let's open it. */ /* libdevmapper can return EINVAL when the device is already in the activation stage. -@@ -2980,7 +2982,7 @@ static int verity_partition( +@@ -3109,7 +3111,7 @@ static int verity_partition( */ sym_crypt_free(cd); cd = NULL; @@ -211,7 +219,7 @@ index 715afc8882..8ffb63e1d3 100644 } return log_debug_errno(SYNTHETIC_ERRNO(EBUSY), "All attempts to activate verity device %s failed.", name); -@@ -3000,6 +3002,7 @@ success: +@@ -3129,6 +3131,7 @@ success: int dissected_image_decrypt( DissectedImage *m, @@ -219,7 +227,7 @@ index 715afc8882..8ffb63e1d3 100644 const char *passphrase, const VeritySettings *verity, DissectImageFlags flags) { -@@ -3047,7 +3050,7 @@ int dissected_image_decrypt( +@@ -3176,7 +3179,7 @@ int dissected_image_decrypt( if (k >= 0) { flags |= getenv_bool("SYSTEMD_VERITY_SHARING") != 0 ? DISSECT_IMAGE_VERITY_SHARE : 0; @@ -228,7 +236,7 @@ index 715afc8882..8ffb63e1d3 100644 if (r < 0) return r; } -@@ -3080,7 +3083,7 @@ int dissected_image_decrypt_interactively( +@@ -3209,7 +3212,7 @@ int dissected_image_decrypt_interactively( n--; for (;;) { @@ -237,7 +245,7 @@ index 715afc8882..8ffb63e1d3 100644 if (r >= 0) return r; if (r == -EKEYREJECTED) -@@ -4367,6 +4370,7 @@ int verity_dissect_and_mount( +@@ -4455,6 +4458,7 @@ int verity_dissect_and_mount( r = dissected_image_decrypt( dissected_image, NULL, @@ -259,7 +267,7 @@ index 97431bca67..004dc46dc3 100644 int dissected_image_mount(DissectedImage *m, const char *where, uid_t uid_shift, uid_t uid_range, int userns_fd, DissectImageFlags flags); int dissected_image_mount_and_warn(DissectedImage *m, const char *where, uid_t uid_shift, uid_t uid_range, int userns_fd, DissectImageFlags flags); diff --git a/src/sysext/sysext.c b/src/sysext/sysext.c -index c33ce0d0a4..dbd6df63b4 100644 +index bfe71f2267..20acc60724 100644 --- a/src/sysext/sysext.c +++ b/src/sysext/sysext.c @@ -1888,7 +1888,7 @@ static int merge_subprocess( @@ -271,7 +279,7 @@ index c33ce0d0a4..dbd6df63b4 100644 if (r < 0) return r; -@@ -2308,7 +2308,7 @@ static int image_discover_and_read_metadata(ImageClass image_class, Hashmap **re +@@ -2312,7 +2312,7 @@ static int image_discover_and_read_metadata(ImageClass image_class, Hashmap **re return log_error_errno(r, "Failed to discover images: %m"); HASHMAP_FOREACH(img, images) { diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0008-sysext-introduce-global-config-file.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0016-sysext-introduce-global-config-file.patch similarity index 95% rename from sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0008-sysext-introduce-global-config-file.patch rename to sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0016-sysext-introduce-global-config-file.patch index 9efede37480..784f4fdbc5d 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0008-sysext-introduce-global-config-file.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0016-sysext-introduce-global-config-file.patch @@ -1,7 +1,7 @@ -From d711880914fe0e32f3fbc946d8b8ee54031727b1 Mon Sep 17 00:00:00 2001 +From aeacbbca05e0479c0768c4b368a2ea68668d20bc Mon Sep 17 00:00:00 2001 From: Emanuele Giuseppe Esposito <eesposit@redhat.com> Date: Thu, 17 Jul 2025 05:03:54 -0400 -Subject: [PATCH 1/4] sysext: introduce global config file +Subject: [PATCH 16/20] sysext: introduce global config file Introduce systemd/{sysext/confext}.conf and systemd/{sysext/confext}.conf.d to provide an alternative way of setting the cmdline options in systemd-sysext. @@ -85,5 +85,5 @@ index 20acc60724..332fc55bb3 100644 if (r <= 0) return r; -- -2.51.0 +2.52.0 diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0009-man-sysext.conf-add-systemd-sysext-config-files.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0017-man-sysext.conf-add-systemd-sysext-config-files.patch similarity index 97% rename from sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0009-man-sysext.conf-add-systemd-sysext-config-files.patch rename to sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0017-man-sysext.conf-add-systemd-sysext-config-files.patch index 94f19211be6..e8b406a8194 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0009-man-sysext.conf-add-systemd-sysext-config-files.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0017-man-sysext.conf-add-systemd-sysext-config-files.patch @@ -1,7 +1,7 @@ -From 88943429fbf80cf55fc7307ea34b5942524c2f45 Mon Sep 17 00:00:00 2001 +From d8eabd012273376febada7ad6c9481a360c2e113 Mon Sep 17 00:00:00 2001 From: Emanuele Giuseppe Esposito <eesposit@redhat.com> Date: Thu, 17 Jul 2025 05:28:21 -0400 -Subject: [PATCH 2/4] man/sysext.conf: add systemd-sysext config files +Subject: [PATCH 17/20] man/sysext.conf: add systemd-sysext config files Add sysext.conf, which similar to other configs like coredump, will be searched in: @@ -152,5 +152,5 @@ index 3f60c85dba..6df2d94e9f 100644 <member><citerefentry><refentrytitle>systemd-stub</refentrytitle><manvolnum>7</manvolnum></citerefentry></member> <member><citerefentry><refentrytitle>importctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></member> -- -2.51.0 +2.52.0 diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0010-sysext-support-ImagePolicy-global-config-option.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0018-sysext-support-ImagePolicy-global-config-option.patch similarity index 93% rename from sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0010-sysext-support-ImagePolicy-global-config-option.patch rename to sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0018-sysext-support-ImagePolicy-global-config-option.patch index 34979f46f17..9fe86a6d78a 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0010-sysext-support-ImagePolicy-global-config-option.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0018-sysext-support-ImagePolicy-global-config-option.patch @@ -1,7 +1,7 @@ -From 363c849b4faed27449a0e3ee41c302709aec0807 Mon Sep 17 00:00:00 2001 +From dccee58738d9602dd62f482ed11152f51b4da896 Mon Sep 17 00:00:00 2001 From: Emanuele Giuseppe Esposito <eesposit@redhat.com> Date: Thu, 17 Jul 2025 10:16:24 -0400 -Subject: [PATCH 3/4] sysext: support ImagePolicy global config option +Subject: [PATCH 18/20] sysext: support ImagePolicy global config option Just as Mutable=, support ImagePolicy in systemd/{sysext/confext}.conf and dropins in systemd/{sysext.confext}.conf.d/* configs. @@ -46,5 +46,5 @@ index 332fc55bb3..9656e975c4 100644 }; _cleanup_free_ char *config_file = NULL; -- -2.51.0 +2.52.0 diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0011-sysext-Fix-config-file-support-with-root.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0019-sysext-Fix-config-file-support-with-root.patch similarity index 98% rename from sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0011-sysext-Fix-config-file-support-with-root.patch rename to sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0019-sysext-Fix-config-file-support-with-root.patch index 92ea3ec8337..2620c76742d 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0011-sysext-Fix-config-file-support-with-root.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0019-sysext-Fix-config-file-support-with-root.patch @@ -1,7 +1,7 @@ -From 3498a462f517b024b3125e0bb79c8c6c54bb62c9 Mon Sep 17 00:00:00 2001 +From 5d8c8737ea0b44c50e4e60a9c93c7321051f7955 Mon Sep 17 00:00:00 2001 From: Kai Lueke <kailuke@microsoft.com> Date: Thu, 11 Dec 2025 19:49:20 +0900 -Subject: [PATCH] sysext: Fix config file support with --root= +Subject: [PATCH 19/20] sysext: Fix config file support with --root= Config files for --root= weren't picked up as expected because the --root= flag got parsed after the config file. diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0001-handle-missing-machine-id.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0020-Drop-machine-id-OSC-event-field-if-etc-machine-id-do.patch similarity index 72% rename from sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0001-handle-missing-machine-id.patch rename to sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0020-Drop-machine-id-OSC-event-field-if-etc-machine-id-do.patch index 431957d8271..001d72a0575 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0001-handle-missing-machine-id.patch +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/0020-Drop-machine-id-OSC-event-field-if-etc-machine-id-do.patch @@ -1,10 +1,8 @@ -This can be dropped in v285.5+. - -From b1d53ddea750f761234c2d8fb04b10f23f77347e Mon Sep 17 00:00:00 2001 +From 4bf1282faa430669eba4169837657f00f2cba019 Mon Sep 17 00:00:00 2001 From: Justin Kromlinger <hashworks@archlinux.org> Date: Wed, 8 Oct 2025 16:55:09 +0200 -Subject: [PATCH] Drop `machine-id` OSC event field if /etc/machine-id doesn't - exist +Subject: [PATCH 20/20] Drop `machine-id` OSC event field if /etc/machine-id + doesn't exist While we can safely assume that `/proc/sys/kernel/random/boot_id` exists, the same can't be said for `/etc/machine-id` in environments @@ -18,9 +16,15 @@ no such file or directory` with the OSC events introduced in dadbb34 [0] https://gitlab.archlinux.org/archlinux/archlinux-docker/-/issues/107 (cherry picked from commit 0fe45b98dd737da86fcbb703809ebf2163c397f3) +--- + profile.d/80-systemd-osc-context.sh | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/profile.d/80-systemd-osc-context.sh b/profile.d/80-systemd-osc-context.sh +index a0ac858828..ead61b6753 100644 --- a/profile.d/80-systemd-osc-context.sh +++ b/profile.d/80-systemd-osc-context.sh -@@ -32,7 +32,10 @@ __systemd_osc_context_escape() { +@@ -28,7 +28,10 @@ __systemd_osc_context_escape() { } __systemd_osc_context_common() { @@ -32,3 +36,6 @@ no such file or directory` with the OSC events introduced in dadbb34 } __systemd_osc_context_precmdline() { +-- +2.52.0 + diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/README.md b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/README.md index 643b45fdafc..633e0c57a45 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/README.md +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-apps/systemd/README.md @@ -1,4 +1,4 @@ -Most of these patches are not really upstreamable. +Most of these patches are not really upstreamable: - `0001-wait-online-set-any-by-default.patch` - backward compat stuff @@ -18,3 +18,21 @@ Most of these patches are not really upstreamable. - workaround for issues with default k8s coredns config - `0008-units-Make-multi-user.target-the-default-target.patch` - change default.target to a suitable symlink for Flatcar + +These patches can be dropped after we update to systemd 260: + +- `0009-vpick-Don-t-use-openat-directly-but-resolve-symlinks.patch` +- `0010-discover-image-Follow-symlinks-in-a-given-root.patch` +- `0011-sysext-Use-correct-image-name-for-extension-release-.patch` +- `0012-test-Add-tests-for-handling-symlinks-with-systemd-sy.patch` +- `0013-sysext-Create-mutable-directory-with-the-right-mode.patch` +- `0014-sysext-Skip-refresh-if-no-changes-are-found.patch` +- `0015-sysext-Get-verity-user-certs-from-given-root.patch` +- `0016-sysext-introduce-global-config-file.patch` +- `0017-man-sysext.conf-add-systemd-sysext-config-files.patch` +- `0018-sysext-support-ImagePolicy-global-config-option.patch` +- `0019-sysext-Fix-config-file-support-with-root.patch` + +This patch can be dropped after updating to systemd 258.5: + +- `0020-Drop-machine-id-OSC-event-field-if-etc-machine-id-do.patch` From e12970f387cb245fdd3b9f17515c47c22dfe4808 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Wed, 4 Mar 2026 20:14:51 +0100 Subject: [PATCH 280/291] overlay profiles: Drop accept keywords for sys-apps/systemd Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../profiles/coreos/base/package.accept_keywords | 3 --- 1 file changed, 3 deletions(-) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords index f275f86582a..3a04a8b98f8 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords @@ -126,6 +126,3 @@ sys-apps/azure-vm-utils # Our own ebuild fixing issues in Gentoo, hopefully will be fixed # there too eventually. =sys-libs/libselinux-3.8.1-r3 ~amd64 ~arm64 - -# Use new systemd -=sys-apps/systemd-258.2 ~amd64 ~arm64 From 612af31f0daa998ecc6b67f5b4dfa617a817945f Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Wed, 4 Mar 2026 14:36:23 +0100 Subject: [PATCH 281/291] overlay profiles: Drop accept keywords for sys-fs/erofs-utils Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../profiles/coreos/base/package.accept_keywords | 5 ----- 1 file changed, 5 deletions(-) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords index 3a04a8b98f8..3110acd43b9 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords @@ -110,11 +110,6 @@ sys-apps/azure-vm-utils # Enable ipvsadm for arm64. =sys-cluster/ipvsadm-1.31-r1 ~arm64 -# Used to be in sdk target profile, unversioned, so pinning it to a -# version used at a time of the move. Needed for building signed -# sysexts with systemd-repart -=sys-fs/erofs-utils-1.8.10-r1 - # Keep versions on both arches in sync. =sys-fs/lxcfs-6.0.5 ~arm64 =sys-fs/zfs-2.3.4 ~arm64 From b6ec0fc42da5d023a9b76f96ff1bdf6a98785dd7 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Wed, 4 Mar 2026 14:36:38 +0100 Subject: [PATCH 282/291] overlay profiles: Disable debuginfod also for binutils Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../third_party/coreos-overlay/profiles/coreos/base/package.use | 1 + 1 file changed, 1 insertion(+) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use index 4fa7886ad6f..06f9320c23d 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use @@ -200,3 +200,4 @@ dev-perl/File-Slurper minimal # We don't need debuginfod support. dev-debug/gdb -debuginfod dev-util/elfutils -debuginfod -libarchive +sys-devel/binutils -debuginfod From b735a0385a763de292cd87ae6c19554c674d9545 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Wed, 4 Mar 2026 15:41:57 +0100 Subject: [PATCH 283/291] overlay profiles: Drop accept keywords for sys-fs/zfs{,-kmod} Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../coreos-overlay/profiles/coreos/base/package.accept_keywords | 2 -- 1 file changed, 2 deletions(-) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords index 3110acd43b9..271a3e1cea7 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords @@ -112,8 +112,6 @@ sys-apps/azure-vm-utils # Keep versions on both arches in sync. =sys-fs/lxcfs-6.0.5 ~arm64 -=sys-fs/zfs-2.3.4 ~arm64 -=sys-fs/zfs-kmod-2.3.4 ~arm64 # Bump early for newer features. =sys-kernel/dracut-109* ~amd64 ~arm64 From e10b3b78b213fa384edc84f1df5303cd3cac51fb Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Wed, 4 Mar 2026 16:50:01 +0100 Subject: [PATCH 284/291] overlay profiles: Add accept keywords for net-misc/rsync-3.4.1-r2 Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../profiles/coreos/base/package.accept_keywords | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords index 271a3e1cea7..fea6e1d496d 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords @@ -92,6 +92,9 @@ dev-db/etcd amd64 =net-libs/libnetfilter_cthelper-1.0.1-r1 ~arm64 =net-libs/libnetfilter_cttimeout-1.0.1 ~arm64 +# Needed to address CVE-2025-10158 +=net-misc/rsync-3.4.1-r2 + # Packages are in Gentoo but not expected to be used outside Flatcar, so they # are generally never stabilised. Thus an unusual form is used to pick up the # latest version of the package with the unstable keywords. From 78663c42197f58923ceab3b6ad0697523dc13775 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Wed, 4 Mar 2026 16:50:28 +0100 Subject: [PATCH 285/291] overlay profiles: Add a patch for dev-libs/libxml2 Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../0001-ignore-next-prev-docs-xpath.patch | 130 ++++++++++++++++++ .../user-patches/dev-libs/libxml2/README.md | 3 + 2 files changed, 133 insertions(+) create mode 100644 sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-libs/libxml2/0001-ignore-next-prev-docs-xpath.patch create mode 100644 sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-libs/libxml2/README.md diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-libs/libxml2/0001-ignore-next-prev-docs-xpath.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-libs/libxml2/0001-ignore-next-prev-docs-xpath.patch new file mode 100644 index 00000000000..117a0500de0 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-libs/libxml2/0001-ignore-next-prev-docs-xpath.patch @@ -0,0 +1,130 @@ +From d583ca9bbfbfa58f8f2c400c7eade02dfc70bbbd Mon Sep 17 00:00:00 2001 +From: Daniel Garcia Moreno <daniel.garcia@suse.com> +Date: Wed, 8 Oct 2025 09:18:51 +0200 +Subject: [PATCH] Ignore next/prev of documents when traversing XPath + +See https://gitlab.gnome.org/GNOME/libxml2/-/issues/996 +--- + xpath.c | 66 ++++++++++++++++++++++++++++++++++++++++++--------------- + 1 file changed, 49 insertions(+), 17 deletions(-) + +diff --git a/xpath.c b/xpath.c +index b8e197cc9..442ce02f8 100644 +--- a/xpath.c ++++ b/xpath.c +@@ -6558,12 +6558,18 @@ xmlNode * + xmlXPathNextFollowingSibling(xmlXPathParserContext *ctxt, xmlNode *cur) { + if ((ctxt == NULL) || (ctxt->context == NULL)) return(NULL); + if ((ctxt->context->node->type == XML_ATTRIBUTE_NODE) || +- (ctxt->context->node->type == XML_NAMESPACE_DECL)) +- return(NULL); ++ (ctxt->context->node->type == XML_NAMESPACE_DECL)) ++ return(NULL); ++ + if (cur == (xmlNodePtr) ctxt->context->doc) + return(NULL); ++ + if (cur == NULL) +- return(ctxt->context->node->next); ++ cur = ctxt->context->node; ++ ++ if (cur->type == XML_DOCUMENT_NODE) ++ return(NULL); ++ + return(cur->next); + } + +@@ -6581,17 +6587,23 @@ xmlNode * + xmlXPathNextPrecedingSibling(xmlXPathParserContext *ctxt, xmlNode *cur) { + if ((ctxt == NULL) || (ctxt->context == NULL)) return(NULL); + if ((ctxt->context->node->type == XML_ATTRIBUTE_NODE) || +- (ctxt->context->node->type == XML_NAMESPACE_DECL)) +- return(NULL); ++ (ctxt->context->node->type == XML_NAMESPACE_DECL)) ++ return(NULL); ++ + if (cur == (xmlNodePtr) ctxt->context->doc) + return(NULL); +- if (cur == NULL) +- return(ctxt->context->node->prev); +- if ((cur->prev != NULL) && (cur->prev->type == XML_DTD_NODE)) { +- cur = cur->prev; +- if (cur == NULL) +- return(ctxt->context->node->prev); ++ ++ if (cur == NULL) { ++ cur = ctxt->context->node; ++ } else if ((cur->prev != NULL) && (cur->prev->type == XML_DTD_NODE)) { ++ cur = cur->prev; ++ if (cur == NULL) ++ cur = ctxt->context->node; + } ++ ++ if (cur->type == XML_DOCUMENT_NODE) ++ return(NULL); ++ + return(cur->prev); + } + +@@ -6626,14 +6638,27 @@ xmlXPathNextFollowing(xmlXPathParserContext *ctxt, xmlNode *cur) { + cur = (xmlNodePtr) ns->next; + } + } +- if (cur == NULL) return(NULL) ; /* ERROR */ +- if (cur->next != NULL) return(cur->next) ; ++ ++ /* ERROR */ ++ if (cur == NULL) ++ return(NULL); ++ ++ if (cur->type == XML_DOCUMENT_NODE) ++ return(NULL); ++ ++ if (cur->next != NULL) ++ return(cur->next); ++ + do { + cur = cur->parent; +- if (cur == NULL) break; +- if (cur == (xmlNodePtr) ctxt->context->doc) return(NULL); +- if (cur->next != NULL) return(cur->next); ++ if (cur == NULL) ++ break; ++ if (cur == (xmlNodePtr) ctxt->context->doc) ++ return(NULL); ++ if (cur->next != NULL && cur->type != XML_DOCUMENT_NODE) ++ return(cur->next); + } while (cur != NULL); ++ + return(cur); + } + +@@ -6746,10 +6771,13 @@ xmlXPathNextPrecedingInternal(xmlXPathParserContextPtr ctxt, + } + ctxt->ancestor = cur->parent; + } +- if (cur->type == XML_NAMESPACE_DECL) ++ ++ if (cur->type == XML_NAMESPACE_DECL || cur->type == XML_DOCUMENT_NODE) + return(NULL); ++ + if ((cur->prev != NULL) && (cur->prev->type == XML_DTD_NODE)) + cur = cur->prev; ++ + while (cur->prev == NULL) { + cur = cur->parent; + if (cur == NULL) +@@ -6760,6 +6788,10 @@ xmlXPathNextPrecedingInternal(xmlXPathParserContextPtr ctxt, + return (cur); + ctxt->ancestor = cur->parent; + } ++ ++ if (cur->type == XML_DOCUMENT_NODE) ++ return(NULL); ++ + cur = cur->prev; + while (cur->last != NULL) + cur = cur->last; +-- +GitLab + diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-libs/libxml2/README.md b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-libs/libxml2/README.md new file mode 100644 index 00000000000..dac6c15c9dc --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/dev-libs/libxml2/README.md @@ -0,0 +1,3 @@ +The `0001-ignore-next-prev-docs-xpath.patch` is for addressing +CVE-2025-10911 in libxslt. The patch can be dropped when updating +libxml2 to 2.15.2. From 035f76fef69346f99111d32ab9ca9bd408fa4704 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Wed, 4 Mar 2026 16:53:57 +0100 Subject: [PATCH 286/291] overlay profiles: Update accept keywords for sys-auth/sssd Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../profiles/coreos/base/package.accept_keywords | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords index fea6e1d496d..9e0a5e03502 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords @@ -105,7 +105,9 @@ sys-apps/azure-vm-utils # Keep versions on both arches in sync. =sys-apps/zram-generator-1.2.1 ~arm64 -=sys-auth/sssd-2.9.7 ~arm64 + +# Needed to address CVE-2025-11561 +=sys-auth/sssd-2.9.8 # Keep versions on both arches in sync. =sys-boot/mokutil-0.7.2 ** From 10a34523c5fef6fd95ee3a28a944f9edef0f446d Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Wed, 4 Mar 2026 17:13:42 +0100 Subject: [PATCH 287/291] overlay profiles: Add some accept keywords to fix some CVEs Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../profiles/coreos/base/package.accept_keywords | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords index 9e0a5e03502..5ba638fa45d 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords @@ -41,6 +41,9 @@ app-crypt/azure-keyvault-pkcs11 # Keep versions on both arches in sync. =app-crypt/mit-krb5-1.21.3-r1 ~arm64 +# Needed to address CVE-2026-2100. +=app-crypt/p11-kit-0.26.2 + # No stable keywords yet because it's new. =app-emulation/open-vmdk-0.3.12 ~amd64 @@ -62,6 +65,9 @@ dev-db/etcd amd64 =dev-libs/cowsql-1.15.9 ~arm64 =dev-libs/ding-libs-0.6.2-r1 ~arm64 +# Needed to address CVE-2025-13601, CVE-2025-14087 +=dev-libs/glib-2.84.4-r2 + # The only available ebuild has ~amd64 and no keyword for arm64 yet. =dev-libs/jose-14 ** @@ -88,6 +94,9 @@ dev-db/etcd amd64 # Keep versions on both arches in sync. =net-firewall/conntrack-tools-1.4.8-r1 ~arm64 +# Needed to address CVE-2025-14831, CVE-2026-1584 +=net-libs/gnutls-3.8.12 + # Keep versions on both arches in sync. =net-libs/libnetfilter_cthelper-1.0.1-r1 ~arm64 =net-libs/libnetfilter_cttimeout-1.0.1 ~arm64 From b0a626c2f4d00d37cf56b47d5e1e09cb977468c2 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Wed, 4 Mar 2026 17:42:56 +0100 Subject: [PATCH 288/291] overlay x11-drivers/nvidia-drivers-service: Bump to latest patch releases Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- ...535.274.02.ebuild => nvidia-drivers-service-535.288.01.ebuild} | 0 ...570.195.03.ebuild => nvidia-drivers-service-570.211.01.ebuild} | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename sdk_container/src/third_party/coreos-overlay/x11-drivers/nvidia-drivers-service/{nvidia-drivers-service-535.274.02.ebuild => nvidia-drivers-service-535.288.01.ebuild} (100%) rename sdk_container/src/third_party/coreos-overlay/x11-drivers/nvidia-drivers-service/{nvidia-drivers-service-570.195.03.ebuild => nvidia-drivers-service-570.211.01.ebuild} (100%) diff --git a/sdk_container/src/third_party/coreos-overlay/x11-drivers/nvidia-drivers-service/nvidia-drivers-service-535.274.02.ebuild b/sdk_container/src/third_party/coreos-overlay/x11-drivers/nvidia-drivers-service/nvidia-drivers-service-535.288.01.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/x11-drivers/nvidia-drivers-service/nvidia-drivers-service-535.274.02.ebuild rename to sdk_container/src/third_party/coreos-overlay/x11-drivers/nvidia-drivers-service/nvidia-drivers-service-535.288.01.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/x11-drivers/nvidia-drivers-service/nvidia-drivers-service-570.195.03.ebuild b/sdk_container/src/third_party/coreos-overlay/x11-drivers/nvidia-drivers-service/nvidia-drivers-service-570.211.01.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/x11-drivers/nvidia-drivers-service/nvidia-drivers-service-570.195.03.ebuild rename to sdk_container/src/third_party/coreos-overlay/x11-drivers/nvidia-drivers-service/nvidia-drivers-service-570.211.01.ebuild From decc0b60cd191281ac3a69af89430cd9a94ab950 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Wed, 4 Mar 2026 17:47:40 +0100 Subject: [PATCH 289/291] overlay coreos-devel/sdk-depend: Explicitly add some packages Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- ...pends-0.0.1-r56.ebuild => sdk-depends-0.0.1-r57.ebuild} | 0 .../coreos-devel/sdk-depends/sdk-depends-0.0.1.ebuild | 7 +++++++ 2 files changed, 7 insertions(+) rename sdk_container/src/third_party/coreos-overlay/coreos-devel/sdk-depends/{sdk-depends-0.0.1-r56.ebuild => sdk-depends-0.0.1-r57.ebuild} (100%) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-devel/sdk-depends/sdk-depends-0.0.1-r56.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-devel/sdk-depends/sdk-depends-0.0.1-r57.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/coreos-devel/sdk-depends/sdk-depends-0.0.1-r56.ebuild rename to sdk_container/src/third_party/coreos-overlay/coreos-devel/sdk-depends/sdk-depends-0.0.1-r57.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-devel/sdk-depends/sdk-depends-0.0.1.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-devel/sdk-depends/sdk-depends-0.0.1.ebuild index f6812c1f75e..8063335f421 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-devel/sdk-depends/sdk-depends-0.0.1.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-devel/sdk-depends/sdk-depends-0.0.1.ebuild @@ -79,4 +79,11 @@ DEPEND="${DEPEND} virtual/ssh " +# These packages tend to disappear for some reason from reports, even +# if they are a part of the default set of packages. +DEPEND="${DEPEND} + sys-apps/man-pages + virtual/man +" + RDEPEND="${DEPEND}" From e231f64a274c82308ec859276caef9b4ba6712f5 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Wed, 4 Mar 2026 18:10:23 +0100 Subject: [PATCH 290/291] coreos-base/coreos-dev: Add virtual/man and sys-apps/man-pages Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- ...-0.1.0-r87.ebuild => coreos-dev-0.1.0-r88.ebuild} | 0 .../coreos-base/coreos-dev/coreos-dev-0.1.0.ebuild | 12 +++++++----- 2 files changed, 7 insertions(+), 5 deletions(-) rename sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/{coreos-dev-0.1.0-r87.ebuild => coreos-dev-0.1.0-r88.ebuild} (100%) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/coreos-dev-0.1.0-r87.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/coreos-dev-0.1.0-r88.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/coreos-dev-0.1.0-r87.ebuild rename to sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/coreos-dev-0.1.0-r88.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/coreos-dev-0.1.0.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/coreos-dev-0.1.0.ebuild index b1fcfa044bf..3161dcfdcab 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/coreos-dev-0.1.0.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/coreos-dev-0.1.0.ebuild @@ -1,14 +1,14 @@ # Copyright (c) 2012 The Chromium OS Authors. All rights reserved. # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -DESCRIPTION="CoreOS developer images and containers (meta package)" -HOMEPAGE="http://coreos.com" +DESCRIPTION="Flatcar developer images and containers (meta package)" +HOMEPAGE="https://www.flatcar.org/" LICENSE="GPL-2" SLOT="0" -KEYWORDS="amd64 arm arm64 x86" +KEYWORDS="amd64 arm64" # The dependencies here are meant to capture "all the packages # developers want to use for development, test, or debug". This @@ -38,6 +38,7 @@ RDEPEND=" sys-apps/i2c-tools sys-apps/kbd sys-apps/less + sys-apps/man-pages sys-apps/portage sys-apps/smartmontools sys-apps/which @@ -47,4 +48,5 @@ RDEPEND=" sys-fs/squashfs-tools sys-process/procps sys-process/psmisc - " + virtual/man +" From 4ed6684049b7329d0e8a8d57687e53aa4cc107e3 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak <knowak@microsoft.com> Date: Wed, 4 Mar 2026 18:57:38 +0100 Subject: [PATCH 291/291] changelog: Add entries Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> --- .../security/2026-03-04-weekly-updates.md | 17 ++++++ .../updates/2026-03-04-weekly-updates.md | 59 +++++++++++++++++++ 2 files changed, 76 insertions(+) create mode 100644 changelog/security/2026-03-04-weekly-updates.md create mode 100644 changelog/updates/2026-03-04-weekly-updates.md diff --git a/changelog/security/2026-03-04-weekly-updates.md b/changelog/security/2026-03-04-weekly-updates.md new file mode 100644 index 00000000000..9b5905e7b72 --- /dev/null +++ b/changelog/security/2026-03-04-weekly-updates.md @@ -0,0 +1,17 @@ +- c-ares ([CVE-2025-62408](https://www.cve.org/CVERecord?id=CVE-2025-62408)) +- curl ([CVE-2025-13034](https://www.cve.org/CVERecord?id=CVE-2025-13034), [CVE-2025-14017](https://www.cve.org/CVERecord?id=CVE-2025-14017), [CVE-2025-14524](https://www.cve.org/CVERecord?id=CVE-2025-14524), [CVE-2025-14819](https://www.cve.org/CVERecord?id=CVE-2025-14819), [CVE-2025-15079](https://www.cve.org/CVERecord?id=CVE-2025-15079), [CVE-2025-15224](https://www.cve.org/CVERecord?id=CVE-2025-15224)) +- expat ([CVE-2026-24515](https://www.cve.org/CVERecord?id=CVE-2026-24515), [CVE-2026-25210](https://www.cve.org/CVERecord?id=CVE-2026-25210)) +- glib ([CVE-2025-13601](https://www.cve.org/CVERecord?id=CVE-2025-13601), [CVE-2025-14087](https://www.cve.org/CVERecord?id=CVE-2025-14087)) +- glibc ([CVE-2026-0861](https://www.cve.org/CVERecord?id=CVE-2026-0861), [CVE-2026-0915](https://www.cve.org/CVERecord?id=CVE-2026-0915), [CVE-2025-15281](https://www.cve.org/CVERecord?id=CVE-2025-15281)) +- gnupg ([CVE-2026-24881](https://www.cve.org/CVERecord?id=CVE-2026-24881), [CVE-2026-24882](https://www.cve.org/CVERecord?id=CVE-2026-24882), [CVE-2026-24883](https://www.cve.org/CVERecord?id=CVE-2026-24883)) +- gnutls ([CVE-2025-14831](https://www.cve.org/CVERecord?id=CVE-2025-14831), [CVE-2026-1584](https://www.cve.org/CVERecord?id=CVE-2026-1584)) +- incus ([CVE-2026-23953](https://www.cve.org/CVERecord?id=CVE-2026-23953)) +- intel-microcode ([CVE-2025-31648](https://www.cve.org/CVERecord?id=CVE-2025-31648)) +- libpcap ([CVE-2025-11961](https://www.cve.org/CVERecord?id=CVE-2025-11961), [CVE-2025-11964](https://www.cve.org/CVERecord?id=CVE-2025-11964)) +- libtasn1 ([CVE-2025-13151](https://www.cve.org/CVERecord?id=CVE-2025-13151)) +- libxslt ([CVE-2025-10911](https://www.cve.org/CVERecord?id=CVE-2025-10911), [CVE-2025-11731](https://www.cve.org/CVERecord?id=CVE-2025-9714)) +- nvidia-drivers ([CVE-2025-33219](https://www.cve.org/CVERecord?id=CVE-2025-33219)) +- p11-kit ([CVE-2026-2100](https://www.cve.org/CVERecord?id=CVE-2026-2100)) +- rsync ([CVE-2025-10158](https://www.cve.org/CVERecord?id=CVE-2025-10158)) +- sssd ([CVE-2025-11561](https://www.cve.org/CVERecord?id=CVE-2025-11561)) +- util-linux ([CVE-2025-14104](https://www.cve.org/CVERecord?id=CVE-2025-14104)) diff --git a/changelog/updates/2026-03-04-weekly-updates.md b/changelog/updates/2026-03-04-weekly-updates.md new file mode 100644 index 00000000000..974d29d701a --- /dev/null +++ b/changelog/updates/2026-03-04-weekly-updates.md @@ -0,0 +1,59 @@ +- SDK: catalyst ([4.1.1](https://gitweb.gentoo.org/proj/catalyst.git/log/?h=4.1.1)) +- SDK: gnu-efi ([4.0.4](https://github.com/ncroxon/gnu-efi/releases/tag/4.0.4) (includes [4.0.3](https://github.com/ncroxon/gnu-efi/releases/tag/4.0.3))) +- SDK: meson ([1.9.2](https://github.com/mesonbuild/meson/commits/1.9.2/)) +- SDK: qemu ([10.2.0](https://wiki.qemu.org/ChangeLog/10.2) (includes [10.1.0](https://wiki.qemu.org/ChangeLog/10.1))) +- SDK: rust ([1.92.0_p1](https://blog.rust-lang.org/2025/12/11/Rust-1.92.0/)) +- base, dev: c-ares ([1.34.6](https://github.com/c-ares/c-ares/releases/tag/v1.34.6)) +- base, dev: cryptsetup ([2.8.3](https://gitlab.com/cryptsetup/cryptsetup/-/raw/v2.8.3/docs/v2.8.3-ReleaseNotes) (includes [2.8.2](https://gitlab.com/cryptsetup/cryptsetup/-/raw/v2.8.2/docs/v2.8.2-ReleaseNotes))) +- base, dev: curl ([8.18.0](https://curl.se/ch/8.18.0.html)) +- base, dev: expat ([2.7.4](https://github.com/libexpat/libexpat/blob/R_2_7_4/expat/Changes)) +- base, dev: gentoo-functions ([1.7.6](https://gitweb.gentoo.org/proj/gentoo-functions.git/log/?h=gentoo-functions-1.7.6)) +- base, dev: glibc ([2.42](https://lists.gnu.org/archive/html/info-gnu/2025-07/msg00011.html)) +- base, dev: gnupg ([2.5.17](https://files.gnupg.net/file/data/jiwtprsp56hruiqgobdo/PHID-FILE-xmky7kawpp72qwjjv3ss/NEWS)) +- base, dev: gnutls ([3.8.12](https://lists.gnutls.org/pipermail/gnutls-help/2026-February/004914.html)) +- base, dev: intel-microcode ([20260210_p20260211](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/releases/tag/microcode-20260210-rev1)) +- base, dev: iproute2 ([6.18.0](https://www.spinics.net/lists/netdev/msg1142134.html)) +- base, dev: libgpg-error ([1.58](https://raw.githubusercontent.com/gpg/libgpg-error/refs/tags/libgpg-error-1.58/NEWS)) +- base, dev: libpcap ([1.10.6](https://github.com/the-tcpdump-group/libpcap/blob/libpcap-1.10.6/CHANGES)) +- base, dev: libsodium ([1.0.21_p20260122](https://github.com/jedisct1/libsodium/releases/tag/1.0.21-RELEASE)) +- base, dev: libtasn1 ([4.21.0](https://lists.gnu.org/archive/html/info-gnu/2026-01/msg00003.html)) +- base, dev: linux-headers ([6.18](https://kernelnewbies.org/Linux_6.18)) +- base, dev: nftables ([1.1.6](https://lwn.net/Articles/1049470/)) +- base, dev: nghttp2 ([1.68.0](https://github.com/nghttp2/nghttp2/releases/tag/v1.68.0) (includes [1.67.1](https://github.com/nghttp2/nghttp2/releases/tag/v1.67.1), [1.67.0](https://github.com/nghttp2/nghttp2/releases/tag/v1.67.0), [1.66.0](https://github.com/nghttp2/nghttp2/releases/tag/v1.66.0))) +- base, dev: p11-kit ([0.26.2](https://github.com/p11-glue/p11-kit/releases/tag/0.26.2) (includes [0.26.1](https://github.com/p11-glue/p11-kit/releases/tag/0.26.1), [0.26.0](https://github.com/p11-glue/p11-kit/releases/tag/0.26.0), [0.25.10](https://github.com/p11-glue/p11-kit/releases/tag/0.25.10), [0.25.9](https://github.com/p11-glue/p11-kit/releases/tag/0.25.9), [0.25.8](https://github.com/p11-glue/p11-kit/releases/tag/0.25.8), [0.25.7](https://github.com/p11-glue/p11-kit/releases/tag/0.25.7), [0.25.6](https://github.com/p11-glue/p11-kit/releases/tag/0.25.6))) +- base, dev: pax-utils ([1.3.10](https://gitweb.gentoo.org/proj/pax-utils.git/log/?h=v1.3.10)) +- base, dev: quota ([4.11](https://sourceforge.net/projects/linuxquota/files/quota-tools/4.11/)) +- base, dev: socat ([1.8.1.0](https://repo.or.cz/socat.git/blob/refs/tags/tag-1.8.1.0:/CHANGES)) +- base, dev: sqlite ([3.51.2](https://sqlite.org/releaselog/3_51_2.html)) +- base, dev: sssd ([2.9.8](https://sssd.io/release-notes/sssd-2.9.8.html)) +- base, dev: strace ([6.18](https://github.com/strace/strace/releases/tag/v6.18)) +- base, dev: systemd ([258.3](https://github.com/systemd/systemd/releases/tag/v258)) +- base, dev: tcpdump ([4.99.6](https://raw.githubusercontent.com/the-tcpdump-group/tcpdump/refs/tags/tcpdump-4.99.6/CHANGES)) +- base, dev: timezone-data ([2025c](https://lists.iana.org/hyperkitty/list/tz-announce@iana.org/thread/TAGXKYLMAQRZRFTERQ33CEKOW7KRJVAK/)) +- base, dev: util-linux ([2.41.3](https://raw.githubusercontent.com/util-linux/util-linux/refs/tags/v2.41.3/Documentation/releases/v2.41.3-ReleaseNotes)) +- base, dev: wireguard-tools ([1.0.20250521](https://git.zx2c4.com/wireguard-tools/log/?h=v1.0.20250521)) +- base, dev: xfsprogs ([6.18.0](https://web.git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/plain/doc/CHANGES?h=v6.18.0)) +- base, dev: xz-utils ([5.8.2](https://github.com/tukaani-project/xz/releases/tag/v5.8.2)) +- dev: eselect ([1.4.31](https://gitweb.gentoo.org/proj/eselect.git/plain/NEWS?id=598206e66aa7c08192113249e13f4083a13deeae)) +- dev: gdb ([17.1](https://sourceware.org/pipermail/gdb-announce/2025/000147.html)) +- dev: gentoolkit ([0.7.1](https://gitweb.gentoo.org/proj/gentoolkit.git/log/?h=gentoolkit-0.7.1)) +- dev: iperf ([3.20](https://github.com/esnet/iperf/releases/tag/3.20)) +- dev: portage ([3.0.77](https://codeberg.org/gentoo/portage/raw/tag/portage-3.0.77/NEWS) (includes [3.0.76](https://codeberg.org/gentoo/portage/raw/tag/portage-3.0.76/NEWS), [3.0.75](https://codeberg.org/gentoo/portage/raw/tag/portage-3.0.75/NEWS), [3.0.74](https://codeberg.org/gentoo/portage/raw/tag/portage-3.0.74/NEWS), [3.0.73](https://codeberg.org/gentoo/portage/raw/tag/portage-3.0.73/NEWS))) +- sysext-containerd: containerd ([2.2.1](https://github.com/containerd/containerd/releases/tag/v2.2.1)) +- sysext-incus, sysext-podman, vmware: fuse ([3.18.1](https://github.com/libfuse/libfuse/releases/tag/fuse-3.18.1) (includes [3.18.0](https://github.com/libfuse/libfuse/releases/tag/fuse-3.18.0))) +- sysext-nvidia-drivers-535, sysext-nvidia-drivers-535-open: nvidia-drivers ([535.288.01](https://docs.nvidia.com/datacenter/tesla/tesla-release-notes-535-288-01/index.html)) +- sysext-nvidia-drivers-570, sysext-nvidia-drivers-570-open: nvidia-drivers ([570.211.01](https://docs.nvidia.com/datacenter/tesla/tesla-release-notes-570-211-01/index.html)) +- sysext-podman: aardvark-dns ([1.17.0](https://github.com/containers/aardvark-dns/releases/tag/v1.17.0) (includes [1.16.0](https://github.com/containers/aardvark-dns/releases/tag/v1.16.0))) +- sysext-podman: containers-common ([0.64.2](https://github.com/containers/common/releases/tag/v0.64.2) (includes [0.64.1](https://github.com/containers/common/releases/tag/v0.64.1), [0.64.0](https://github.com/containers/common/releases/tag/v0.64.0))) +- sysext-podman: containers-image ([5.36.2](https://github.com/containers/image/releases/tag/v5.36.2) (includes [5.36.1](https://github.com/containers/image/releases/tag/v5.36.1), [5.36.0](https://github.com/containers/image/releases/tag/v5.36.0))) +- sysext-podman: containers-storage ([1.59.1](https://github.com/containers/storage/releases/tag/v1.59.1) (includes [1.59.0](https://github.com/containers/storage/releases/tag/v1.59.0), [1.58.0](https://github.com/containers/storage/releases/tag/v1.58.0))) +- sysext-podman: fuse-overlayfs ([1.16](https://github.com/containers/fuse-overlayfs/releases/tag/v1.16)) +- sysext-podman: netavark ([1.17.1](https://github.com/containers/netavark/releases/tag/v1.17.1) (includes [1.17.0](https://github.com/containers/netavark/releases/tag/v1.17.0))) +- sysext-podman: passt ([2025.12.15](https://archives.passt.top/passt-user/20251215183014.758802aa@elisabeth/T/#u)) +- sysext-podman: podman ([5.7.1](https://github.com/containers/podman/releases/tag/v5.7.1)) +- sysext-python: jaraco-context ([6.1.0](https://raw.githubusercontent.com/jaraco/jaraco.context/refs/tags/v6.1.0/NEWS.rst)) +- sysext-python: jaraco-functools ([4.4.0](https://raw.githubusercontent.com/jaraco/jaraco.functools/refs/tags/v4.4.0/NEWS.rst)) +- sysext-python: packaging ([26.0](https://github.com/pypa/packaging/releases/tag/26.0)) +- sysext-python: trove-classifiers ([2026.1.14.14](https://github.com/pypa/trove-classifiers/releases/tag/2026.1.14.14)) +- sysext-python: wheel ([0.46.2](https://github.com/pypa/wheel/releases/tag/0.46.2) (includes [0.46.1](https://github.com/pypa/wheel/releases/tag/0.46.1), [0.46.0](https://github.com/pypa/wheel/releases/tag/0.46.0))) +- vmware: libxslt ([1.1.45](https://gitlab.gnome.org/GNOME/libxslt/-/releases/v1.1.45))