diff --git a/changelog/updates/2025-07-07-weekly-updates.md b/changelog/updates/2025-07-07-weekly-updates.md new file mode 100644 index 0000000000..7fb738f564 --- /dev/null +++ b/changelog/updates/2025-07-07-weekly-updates.md @@ -0,0 +1,5 @@ +- base, dev: glibc ([2.41](https://lists.gnu.org/archive/html/info-gnu/2025-01/msg00014.html)) +- base, dev: jq ([1.8.1](https://github.com/jqlang/jq/releases/tag/jq-1.8.1)) +- base, dev: sssd ([2.9.7](https://sssd.io/release-notes/sssd-2.9.7.html)) +- dev: pahole ([1.30](https://git.kernel.org/pub/scm/devel/pahole/pahole.git/tag/?h=v1.30)) +- sysext-python: urllib3 ([2.5.0](https://github.com/urllib3/urllib3/releases/tag/2.5.0)) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-auth/sssd/0001-Assume-that-callbacks-are-not-broken-in-OpenLDAP-whe.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-auth/sssd/0001-Assume-that-callbacks-are-not-broken-in-OpenLDAP-whe.patch deleted file mode 100644 index bfcbfe1574..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-auth/sssd/0001-Assume-that-callbacks-are-not-broken-in-OpenLDAP-whe.patch +++ /dev/null @@ -1,34 +0,0 @@ -From a559550c8e2d162735ff8a43de6dc59af71cf3df Mon Sep 17 00:00:00 2001 -From: Krzesimir Nowak -Date: Tue, 3 Dec 2024 19:05:44 +0100 -Subject: [PATCH] Assume that callbacks are not broken in OpenLDAP when - cross-compiling - -If we do cross-compiling against a known broken version of OpenLDAP, -we can do `export ac_cv_member_struct_ldap_conncb_lc_arg=no` before -running configure. This is rather unlikely now, as the test was done -to detect a bug that was fixed 16 years ago. - -This allows the project to be configured successfully when -cross-compiling, without disabling connection callbacks. ---- - src/external/ldap.m4 | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/src/external/ldap.m4 b/src/external/ldap.m4 -index f42023cd4..09e44fc7b 100644 ---- a/src/external/ldap.m4 -+++ b/src/external/ldap.m4 -@@ -80,7 +80,8 @@ AC_CHECK_MEMBERS([struct ldap_conncb.lc_arg], - [AC_DEFINE([HAVE_LDAP_CONNCB], [1], - [Define if LDAP connection callbacks are available])], - [AC_MSG_WARN([Found broken callback implementation])], -- [])], -+ [AC_DEFINE([HAVE_LDAP_CONNCB], [1], -+ [Define if LDAP connection callbacks are available])])], - [], [[#include ]]) - - AC_CHECK_TYPE([LDAPDerefRes], --- -2.34.1 - diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-auth/sssd/README.md b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-auth/sssd/README.md deleted file mode 100644 index decf8bef1e..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-auth/sssd/README.md +++ /dev/null @@ -1,3 +0,0 @@ -The `0001-Assume-that-callbacks-are-not-broken-in-OpenLDAP-whe.patch` allows -the project to be cross-compiled without disabling LDAP connection -callbacks. Drop when updating to >=2.9.7 or >=2.10.2. 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 679beb69c4..66fc439ea8 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 @@ -7,22 +7,10 @@ # Gentoo upstream package stabilisation # (the following packages are "unstable" upstream; we're stabilising these) -# Needed to address CVE-2024-40635, CVE-2025-47291 -=app-containers/containerd-2.0.5 ~arm64 - # Keep versions on both arches in sync. -=app-containers/containers-common-0.63.0 ~arm64 =app-containers/cri-tools-1.32.0 ~arm64 - -# Needed to address CVE-2025-24965. -=app-containers/crun-1.20 ~arm64 - -# Keep versions on both arches in sync. -=app-containers/docker-28.0.4 ~arm64 -=app-containers/docker-cli-28.0.4 ~arm64 =app-containers/incus-6.0.4-r1 ~arm64 =app-containers/lxc-6.0.4-r1 ~arm64 -=app-containers/runc-1.2.6 ~arm64 # No stable keywords. =app-containers/syft-1.18.1 ~amd64 ~arm64 @@ -41,9 +29,6 @@ app-crypt/azure-keyvault-pkcs11 # The only available ebuild (from GURU) has ~amd64 and no keyword for arm64 yet. =app-crypt/clevis-19-r1 ** -# Keep versions on both arches in sync. -=app-crypt/gnupg-2.4.8 ~arm64 - # Needed to address CVE-2025-1215, CVE-2025-22134, CVE-2025-24014, GHSA-63p5-mwg2-787v, CVE-2025-27423, CVE-2025-29768 =app-editors/vim-9.1.1436 ~amd64 ~arm64 =app-editors/vim-core-9.1.1436 ~amd64 ~arm64 @@ -53,11 +38,6 @@ app-crypt/azure-keyvault-pkcs11 # Keep versions on both arches in sync. =app-emulation/qemu-guest-agent-9.2.0 ~arm64 - -# Needed to address CVE-2024-23337, CVE-2024-53427, CVE-2025-48060 -=app-misc/jq-1.8.0 ~amd64 ~arm64 - -# Keep versions on both arches in sync. =dev-build/meson-1.7.2 ~arm64 # Packages are in Gentoo but not expected to be used outside Flatcar, so they @@ -71,34 +51,16 @@ dev-cpp/azure-security-keyvault-keys # Keep versions on both arches in sync. =dev-db/sqlite-3.49.2 ~arm64 =dev-lang/go-1.24.4 ~arm64 -=dev-lang/python-3.11.13 ~arm64 =dev-lang/yasm-1.3.0-r1 ~arm64 =dev-libs/cowsql-1.15.8 ~arm64 =dev-libs/ding-libs-0.6.2-r1 ~arm64 -# Needed to address CVE-2025-4373 -=dev-libs/glib-2.84.3 ~arm64 -=dev-libs/gobject-introspection-common-1.84.0 ~arm64 - -# Keep versions on both arches in sync. -=dev-libs/jansson-2.14.1 ~arm64 - # The only available ebuild (from GURU) has ~amd64 and no keyword for arm64 yet. =dev-libs/jose-12 ** - -# Keep versions on both arches in sync. -=dev-libs/libgcrypt-1.11.1 ~arm64 -=dev-libs/libtracefs-1.8.2 ~arm64 -=dev-libs/libunistring-1.3 ~arm64 - -# The only available ebuild (from GURU) has ~amd64 and no keyword for arm64 yet. =dev-libs/luksmeta-9-r1 ** # Keep versions on both arches in sync. =dev-libs/raft-0.22.1 ~arm64 -=dev-python/cryptography-45.0.4 ~arm64 -=dev-python/cython-3.1.2 ~arm64 -=dev-python/msgpack-1.1.1 ~arm64 # No arm64 keyword in package. =dev-util/bsdiff-4.3-r4 ** @@ -106,10 +68,6 @@ dev-cpp/azure-security-keyvault-keys # Catalyst 4 is not stable yet, but earlier versions are masked now. =dev-util/catalyst-4.0.0 ~amd64 ~arm64 -# Needed to address CVE-2025-4373 -=dev-util/gdbus-codegen-2.84.3 ~arm64 -=dev-util/glib-utils-2.84.3 ~arm64 - # Keep versions on both arches in sync. =dev-util/xdelta-3.0.11-r1 ~arm64 @@ -118,7 +76,6 @@ dev-cpp/azure-security-keyvault-keys # Keep versions on both arches in sync. =net-firewall/conntrack-tools-1.4.8-r1 ~arm64 -=net-firewall/ipset-7.24 ~arm64 # Needed to address CVE-2025-2312. =net-fs/cifs-utils-7.3 ~amd64 ~arm64 @@ -126,29 +83,19 @@ dev-cpp/azure-security-keyvault-keys # Keep versions on both arches in sync. =net-libs/libnetfilter_cthelper-1.0.1-r1 ~arm64 =net-libs/libnetfilter_cttimeout-1.0.1 ~arm64 -=net-libs/libnftnl-1.2.9 ~arm64 # Needed for addressing CVE-2025-47268 and CVE-2025-48964 =net-misc/iputils-20250605 ~amd64 ~arm64 -# Keep versions on both arches in sync. -=net-misc/passt-2025.04.15 ~arm64 - # 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. sys-apps/azure-vm-utils # Keep versions on both arches in sync. -=sys-apps/dtc-1.7.2-r2 ~arm64 =sys-apps/portage-3.0.68 ~arm64 =sys-apps/zram-generator-1.2.1 ~arm64 - -# Needed to avoid pulling python into production images. -=sys-auth/sssd-2.9.6-r3 ~arm64 - -# Keep versions on both arches in sync. -=sys-boot/gnu-efi-4.0.1 ~arm64 +=sys-auth/sssd-2.9.7 ~arm64 =sys-boot/mokutil-0.7.2 ** # Enable ipvsadm for arm64. @@ -156,6 +103,3 @@ sys-apps/azure-vm-utils # Keep versions on both arches in sync. =sys-fs/lxcfs-6.0.4 ~arm64 -=sys-libs/libcap-2.76 ~arm64 -=sys-libs/libunwind-1.8.2 ~arm64 -=sys-process/audit-4.0.2-r1 ~arm64 diff --git a/sdk_container/src/third_party/portage-stable/app-admin/sudo/Manifest b/sdk_container/src/third_party/portage-stable/app-admin/sudo/Manifest index 1167978daa..67dd2c6a6c 100644 --- a/sdk_container/src/third_party/portage-stable/app-admin/sudo/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-admin/sudo/Manifest @@ -1,6 +1,2 @@ -DIST sudo-1.9.16p2.tar.gz 5398419 BLAKE2B ef9f1c2cd4044454a808d1dff5f865355e1bd061d1b5c93a005207e28e9b9df7c267cf01358ce60dd2c98f6844b51dab00eac4e7a08bade1d621235c3a4774bf SHA512 1e2ea762671890a03b0ea4b95b3849f2d3a4c301432db8767433e9d80c517efd8b7a68e0bbce1b178aff5857907600f1f5e0d889779cb27e38c2f602395f6f06 -DIST sudo-1.9.16p2.tar.gz.sig 566 BLAKE2B 90f90658a7d6ec3b32f6a726a2cd28e156826a65749a88a2a29d970e97804d2d75de856bc85c9a459233b59e35564c5fbf93aff53ffe42d17d0e94dd23724acd SHA512 7f0e3269c9befada535590b2cfc36f96cd70831b5c030df5b3bf8c7cb3eff296d22193429f940db4a0df849b4d8080e4006086c49869b4bbae663836b2632b49 -DIST sudo-1.9.17.tar.gz 5447899 BLAKE2B d9f2e0d8bca5d5dba5f78a9c064454032038fa60dae022ce72dd0d262bc4bd756fcc5a8e5b0ab4e179c3786fc86a401f7f1ba6d45ca4fe02e43d5cacb1e7f022 SHA512 e94df174ca63a828d953d8400d7e68f8cb86119ca1cd845567b7b452d09bef806a6bd0a6cfc232acfdf7c85aa915f2897b29990c7df89b36c92c62aa469cd7a7 -DIST sudo-1.9.17.tar.gz.sig 566 BLAKE2B c7543ab8f3a20a27eb2df6b4b6f0aa69d657cbc5d88ea4377ec28b5ef77ec137b7a88a9f28d7051a0ce95493e4c860a01a1cb7e081563183850f4d704805336e SHA512 c03534cf696f300c4434ad2053267b586d3a01459269206632c3c8f348469d3b40d7b4ace30373203c539e2f69b94402d6d2b96da1427d7e872509e4e8029812 DIST sudo-1.9.17p1.tar.gz 5449076 BLAKE2B 21771348a8de392767c366bb938951327dcc64a4cedee716a802435899e5135c218468271833a9e3ab9d90bda29e36c0870e27dd333d3a5c64fb8e3a5ebbff58 SHA512 1a9fb27a117b54adf5c99443b3375f7e0eaaf3a2d5a3d409f7c7b10c43432eb301d721df93fb1a8a2e45bf4a4957288d4f153359fc018af00973be57f62a1ebc DIST sudo-1.9.17p1.tar.gz.sig 566 BLAKE2B b6380c84b82740455a28388925d27bdf9296ddef943653c1883af3c7684ab53571053ef333ac9747ee11330b06fd23adf477856f70bd5fcaa6dbda1c9e432675 SHA512 714ce7c613683689e9d166171b04c03220e21d06f2e66d800f2d075927830014447611933d7293d9c763beeea66fc02255d8175c9ac8cba6d62166750aab50a6 diff --git a/sdk_container/src/third_party/portage-stable/app-admin/sudo/sudo-1.9.16_p2-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-admin/sudo/sudo-1.9.16_p2-r1.ebuild deleted file mode 100644 index 9d6ed763c8..0000000000 --- a/sdk_container/src/third_party/portage-stable/app-admin/sudo/sudo-1.9.16_p2-r1.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 - -inherit pam tmpfiles toolchain-funcs - -MY_P="${P/_/}" -MY_P="${MY_P/beta/b}" - -DESCRIPTION="Allows users or groups to run commands as other users" -HOMEPAGE="https://www.sudo.ws/" - -if [[ ${PV} == 9999 ]] ; then - inherit autotools mercurial - EHG_REPO_URI="https://www.sudo.ws/repos/sudo" -else - VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/sudo.ws.asc - inherit libtool verify-sig - - uri_prefix= - case ${P} in - *_beta*|*_rc*) uri_prefix=beta/ ;; - esac - - SRC_URI=" - https://www.sudo.ws/sudo/dist/${uri_prefix}${MY_P}.tar.gz - verify-sig? ( - https://www.sudo.ws/sudo/dist/${uri_prefix}${MY_P}.tar.gz.sig - ) - " - - if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" - fi - - BDEPEND="verify-sig? ( sec-keys/openpgp-keys-sudo )" -fi - -S="${WORKDIR}/${MY_P}" - -# Basic license is ISC-style as-is, some files are released under -# 3-clause BSD license -LICENSE="ISC BSD" -SLOT="0" -IUSE="gcrypt ldap nls offensive pam sasl +secure-path selinux +sendmail skey ssl sssd" - -DEPEND=" - sys-libs/zlib:= - virtual/libcrypt:= - gcrypt? ( dev-libs/libgcrypt:= ) - ldap? ( - >=net-nds/openldap-2.1.30-r1:= - sasl? ( - dev-libs/cyrus-sasl - net-nds/openldap:=[sasl] - ) - ) - pam? ( sys-libs/pam ) - sasl? ( dev-libs/cyrus-sasl ) - selinux? ( sys-libs/libselinux ) - skey? ( >=sys-auth/skey-1.1.5-r1 ) - ssl? ( dev-libs/openssl:= ) - sssd? ( sys-auth/sssd[sudo(+)] ) -" -RDEPEND=" - ${DEPEND} - >=app-misc/editor-wrapper-3 - virtual/editor - ldap? ( dev-lang/perl ) - pam? ( sys-auth/pambase ) - selinux? ( sec-policy/selinux-sudo ) - sendmail? ( virtual/mta ) -" -BDEPEND+=" - app-alternatives/yacc - virtual/pkgconfig -" - -REQUIRED_USE=" - ?? ( pam skey ) - ?? ( gcrypt ssl ) -" - -MAKEOPTS+=" SAMPLES=" - -src_prepare() { - default - - if [[ ${PV} == 9999 ]] ; then - eautoreconf - else - elibtoolize - fi -} - -set_secure_path() { - # First extract the default ROOTPATH from build env - SECURE_PATH=$(unset ROOTPATH; . "${EPREFIX}"/etc/profile.env; echo "${ROOTPATH}") - - case "${SECURE_PATH}" in - */usr/sbin*) - ;; - *) - SECURE_PATH=$(unset PATH; . "${EPREFIX}"/etc/profile.env; echo "${PATH}") - ;; - esac - - if [[ -z ${SECURE_PATH} ]] ; then - ewarn " Failed to detect SECURE_PATH, please report this" - fi - - # Then remove duplicate path entries - cleanpath() { - local newpath thisp IFS=: - for thisp in $1 ; do - if [[ :${newpath}: != *:${thisp}:* ]] ; then - newpath+=:${thisp} - else - einfo " Duplicate entry ${thisp} removed..." - fi - done - SECURE_PATH=${newpath#:} - } - cleanpath /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin${SECURE_PATH:+:${SECURE_PATH}} - - # Finally, strip gcc paths, bug #136027 - rmpath() { - local e newpath thisp IFS=: - for thisp in ${SECURE_PATH} ; do - for e ; do - [[ ${thisp} == ${e} ]] && continue 2 ; - done - newpath+=:${thisp} - done - SECURE_PATH=${newpath#:} - } - rmpath '*/gcc-bin/*' '*/gnat-gcc-bin/*' '*/gnat-gcc/*' -} - -src_configure() { - local SECURE_PATH - - set_secure_path - - # bug #767712 - tc-export PKG_CONFIG - - # - audit: somebody got to explain me how I can test this before I - # enable it.. - Diego - # - plugindir: autoconf code is crappy and does not delay evaluation - # until `make` time, so we have to use a full path here rather than - # basing off other values. - local myeconfargs=( - # We set all of the relevant options by ourselves (patched - # into the toolchain) and setting these in the build system - # actually causes a downgrade when using e.g. -D_FORTIFY_SOURCE=3 - # (it'll downgrade to =2). So, this has no functional effect on - # the hardening for users. It's safe. - --disable-hardening - - # requires some python eclass - --disable-python - --enable-tmpfiles.d="${EPREFIX}"/usr/lib/tmpfiles.d - --enable-zlib=system - --with-editor="${EPREFIX}"/usr/libexec/editor - --with-env-editor - --with-plugindir="${EPREFIX}"/usr/$(get_libdir)/sudo - --with-rundir="${EPREFIX}"/run/sudo - --with-vardir="${EPREFIX}"/var/db/sudo - --without-linux-audit - --without-opie - $(use_enable gcrypt) - $(use_enable nls) - $(use_enable sasl) - $(use_enable ssl openssl) - $(use_with ldap) - $(use_with ldap ldap_conf_file /etc/ldap.conf.sudo) - $(use_with offensive insults) - $(use_with offensive all-insults) - $(use_with pam) - $(use_with pam pam-login) - $(use_with secure-path) - "$(use_with secure-path secure-path-value "${SECURE_PATH}")" - $(use_with selinux) - $(use_with sendmail) - $(use_with skey) - $(use_with sssd) - ) - - econf "${myeconfargs[@]}" -} - -src_install() { - default - - if use ldap ; then - dodoc README.LDAP.md - - cat <<-EOF > "${T}"/ldap.conf.sudo - # See ldap.conf(5) and README.LDAP.md for details - # This file should only be readable by root - - # supported directives: host, port, ssl, ldap_version - # uri, binddn, bindpw, sudoers_base, sudoers_debug - # tls_{checkpeer,cacertfile,cacertdir,randfile,ciphers,cert,key} - EOF - - if use sasl ; then - cat <<-EOF >> "${T}"/ldap.conf.sudo - - # SASL directives: use_sasl, sasl_mech, sasl_auth_id - # sasl_secprops, rootuse_sasl, rootsasl_auth_id, krb5_ccname - EOF - fi - - insinto /etc - doins "${T}"/ldap.conf.sudo - fperms 0440 /etc/ldap.conf.sudo - - insinto /etc/openldap/schema - newins docs/schema.OpenLDAP sudo.schema - fi - - if use pam ; then - pamd_mimic system-auth sudo auth account session - pamd_mimic system-auth sudo-i auth account session - fi - - keepdir /var/db/sudo/lectured - fperms 0700 /var/db/sudo/lectured - # bug #652958 - fperms 0711 /var/db/sudo - - # Don't install into /run as that is a tmpfs most of the time - # (bug #504854) - rm -rf "${ED}"/run || die - - # bug #697812 - find "${ED}" -type f -name "*.la" -delete || die -} - -pkg_postinst() { - tmpfiles_process sudo.conf - - # bug #652958 - local sudo_db="${EROOT}/var/db/sudo" - if [[ "$(stat -c %a "${sudo_db}")" -ne 711 ]] ; then - chmod 711 "${sudo_db}" || die - fi - - if use ldap ; then - ewarn - ewarn "sudo uses the ${ROOT}/etc/ldap.conf.sudo file for ldap configuration." - ewarn - if grep -qs '^[[:space:]]*sudoers:' "${ROOT}"/etc/nsswitch.conf ; then - ewarn "In 1.7 series, LDAP is no more consulted, unless explicitly" - ewarn "configured in ${ROOT}/etc/nsswitch.conf." - ewarn - ewarn "To make use of LDAP, add this line to your ${ROOT}/etc/nsswitch.conf:" - ewarn " sudoers: ldap files" - ewarn - fi - fi - if use prefix ; then - ewarn - ewarn "To use sudo on Prefix, you need to change file ownership and permissions" - ewarn "with root privileges, as follows:" - ewarn - ewarn " # chown root:root ${EPREFIX}/usr/bin/sudo" - ewarn " # chown root:root ${EPREFIX}/usr/lib/sudo/sudoers.so" - ewarn " # chown root:root ${EPREFIX}/etc/sudoers" - ewarn " # chown root:root ${EPREFIX}/etc/sudoers.d" - ewarn " # chown root:root ${EPREFIX}/var/db/sudo" - ewarn " # chmod 4111 ${EPREFIX}/usr/bin/sudo" - ewarn - fi - - elog "To use the -A (askpass) option, you need to install a compatible" - elog "password program from the following list. Starred packages will" - elog "automatically register for the use with sudo (but will not force" - elog "the -A option):" - elog "" - elog " [*] net-misc/ssh-askpass-fullscreen" - elog " net-misc/x11-ssh-askpass" - elog "" - elog "You can override the choice by setting the SUDO_ASKPASS environmnent" - elog "variable to the program you want to use." -} diff --git a/sdk_container/src/third_party/portage-stable/app-admin/sudo/sudo-1.9.17.ebuild b/sdk_container/src/third_party/portage-stable/app-admin/sudo/sudo-1.9.17.ebuild deleted file mode 100644 index 8fff95b78b..0000000000 --- a/sdk_container/src/third_party/portage-stable/app-admin/sudo/sudo-1.9.17.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 - -inherit pam tmpfiles toolchain-funcs - -MY_P="${P/_/}" -MY_P="${MY_P/beta/b}" - -DESCRIPTION="Allows users or groups to run commands as other users" -HOMEPAGE="https://www.sudo.ws/" - -if [[ ${PV} == 9999 ]] ; then - inherit autotools mercurial - EHG_REPO_URI="https://www.sudo.ws/repos/sudo" -else - VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/sudo.ws.asc - inherit libtool verify-sig - - uri_prefix= - case ${P} in - *_beta*|*_rc*) uri_prefix=beta/ ;; - esac - - SRC_URI=" - https://www.sudo.ws/sudo/dist/${uri_prefix}${MY_P}.tar.gz - verify-sig? ( - https://www.sudo.ws/sudo/dist/${uri_prefix}${MY_P}.tar.gz.sig - ) - " - - if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - fi - - BDEPEND="verify-sig? ( sec-keys/openpgp-keys-sudo )" -fi - -S="${WORKDIR}/${MY_P}" - -# Basic license is ISC-style as-is, some files are released under -# 3-clause BSD license -LICENSE="ISC BSD" -SLOT="0" -IUSE="gcrypt ldap nls offensive pam sasl +secure-path selinux +sendmail skey ssl sssd" - -DEPEND=" - sys-libs/zlib:= - virtual/libcrypt:= - gcrypt? ( dev-libs/libgcrypt:= ) - ldap? ( - >=net-nds/openldap-2.1.30-r1:= - sasl? ( - dev-libs/cyrus-sasl - net-nds/openldap:=[sasl] - ) - ) - pam? ( sys-libs/pam ) - sasl? ( dev-libs/cyrus-sasl ) - selinux? ( sys-libs/libselinux ) - skey? ( >=sys-auth/skey-1.1.5-r1 ) - ssl? ( dev-libs/openssl:= ) - sssd? ( sys-auth/sssd[sudo(+)] ) -" -RDEPEND=" - ${DEPEND} - >=app-misc/editor-wrapper-3 - virtual/editor - ldap? ( dev-lang/perl ) - pam? ( sys-auth/pambase ) - selinux? ( sec-policy/selinux-sudo ) - sendmail? ( virtual/mta ) -" -BDEPEND+=" - app-alternatives/yacc - virtual/pkgconfig -" - -REQUIRED_USE=" - ?? ( pam skey ) - ?? ( gcrypt ssl ) -" - -MAKEOPTS+=" SAMPLES=" - -src_prepare() { - default - - if [[ ${PV} == 9999 ]] ; then - eautoreconf - else - elibtoolize - fi -} - -set_secure_path() { - # First extract the default ROOTPATH from build env - SECURE_PATH=$(unset ROOTPATH; . "${EPREFIX}"/etc/profile.env; echo "${ROOTPATH}") - - case "${SECURE_PATH}" in - */usr/sbin*) - ;; - *) - SECURE_PATH=$(unset PATH; . "${EPREFIX}"/etc/profile.env; echo "${PATH}") - ;; - esac - - if [[ -z ${SECURE_PATH} ]] ; then - ewarn " Failed to detect SECURE_PATH, please report this" - fi - - # Then remove duplicate path entries - cleanpath() { - local newpath thisp IFS=: - for thisp in $1 ; do - if [[ :${newpath}: != *:${thisp}:* ]] ; then - newpath+=:${thisp} - else - einfo " Duplicate entry ${thisp} removed..." - fi - done - SECURE_PATH=${newpath#:} - } - cleanpath /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin${SECURE_PATH:+:${SECURE_PATH}} - - # Finally, strip gcc paths, bug #136027 - rmpath() { - local e newpath thisp IFS=: - for thisp in ${SECURE_PATH} ; do - for e ; do - [[ ${thisp} == ${e} ]] && continue 2 ; - done - newpath+=:${thisp} - done - SECURE_PATH=${newpath#:} - } - rmpath '*/gcc-bin/*' '*/gnat-gcc-bin/*' '*/gnat-gcc/*' -} - -src_configure() { - local SECURE_PATH - - set_secure_path - - # bug #767712 - tc-export PKG_CONFIG - - # - audit: somebody got to explain me how I can test this before I - # enable it.. - Diego - # - plugindir: autoconf code is crappy and does not delay evaluation - # until `make` time, so we have to use a full path here rather than - # basing off other values. - local myeconfargs=( - # We set all of the relevant options by ourselves (patched - # into the toolchain) and setting these in the build system - # actually causes a downgrade when using e.g. -D_FORTIFY_SOURCE=3 - # (it'll downgrade to =2). So, this has no functional effect on - # the hardening for users. It's safe. - --disable-hardening - - # requires some python eclass - --disable-python - --enable-tmpfiles.d="${EPREFIX}"/usr/lib/tmpfiles.d - --enable-zlib=system - --with-editor="${EPREFIX}"/usr/libexec/editor - --with-env-editor - --with-plugindir="${EPREFIX}"/usr/$(get_libdir)/sudo - --with-rundir="${EPREFIX}"/run/sudo - --with-vardir="${EPREFIX}"/var/db/sudo - --without-linux-audit - --without-opie - $(use_enable gcrypt) - $(use_enable nls) - $(use_enable sasl) - $(use_enable ssl openssl) - $(use_with ldap) - $(use_with ldap ldap_conf_file /etc/ldap.conf.sudo) - $(use_with offensive insults) - $(use_with offensive all-insults) - $(use_with pam) - $(use_with pam pam-login) - $(use_with secure-path) - "$(use_with secure-path secure-path-value "${SECURE_PATH}")" - $(use_with selinux) - $(use_with sendmail) - $(use_with skey) - $(use_with sssd) - ) - - econf "${myeconfargs[@]}" -} - -src_install() { - default - - if use ldap ; then - dodoc README.LDAP.md - - cat <<-EOF > "${T}"/ldap.conf.sudo - # See ldap.conf(5) and README.LDAP.md for details - # This file should only be readable by root - - # supported directives: host, port, ssl, ldap_version - # uri, binddn, bindpw, sudoers_base, sudoers_debug - # tls_{checkpeer,cacertfile,cacertdir,randfile,ciphers,cert,key} - EOF - - if use sasl ; then - cat <<-EOF >> "${T}"/ldap.conf.sudo - - # SASL directives: use_sasl, sasl_mech, sasl_auth_id - # sasl_secprops, rootuse_sasl, rootsasl_auth_id, krb5_ccname - EOF - fi - - insinto /etc - doins "${T}"/ldap.conf.sudo - fperms 0440 /etc/ldap.conf.sudo - - insinto /etc/openldap/schema - newins docs/schema.OpenLDAP sudo.schema - fi - - if use pam ; then - pamd_mimic system-auth sudo auth account session - pamd_mimic system-auth sudo-i auth account session - fi - - keepdir /var/db/sudo/lectured - fperms 0700 /var/db/sudo/lectured - # bug #652958 - fperms 0711 /var/db/sudo - - # Don't install into /run as that is a tmpfs most of the time - # (bug #504854) - rm -rf "${ED}"/run || die - - # bug #697812 - find "${ED}" -type f -name "*.la" -delete || die -} - -pkg_postinst() { - tmpfiles_process sudo.conf - - # bug #652958 - local sudo_db="${EROOT}/var/db/sudo" - if [[ "$(stat -c %a "${sudo_db}")" -ne 711 ]] ; then - chmod 711 "${sudo_db}" || die - fi - - if use ldap ; then - ewarn - ewarn "sudo uses the ${ROOT}/etc/ldap.conf.sudo file for ldap configuration." - ewarn - if grep -qs '^[[:space:]]*sudoers:' "${ROOT}"/etc/nsswitch.conf ; then - ewarn "In 1.7 series, LDAP is no more consulted, unless explicitly" - ewarn "configured in ${ROOT}/etc/nsswitch.conf." - ewarn - ewarn "To make use of LDAP, add this line to your ${ROOT}/etc/nsswitch.conf:" - ewarn " sudoers: ldap files" - ewarn - fi - fi - if use prefix ; then - ewarn - ewarn "To use sudo on Prefix, you need to change file ownership and permissions" - ewarn "with root privileges, as follows:" - ewarn - ewarn " # chown root:root ${EPREFIX}/usr/bin/sudo" - ewarn " # chown root:root ${EPREFIX}/usr/lib/sudo/sudoers.so" - ewarn " # chown root:root ${EPREFIX}/etc/sudoers" - ewarn " # chown root:root ${EPREFIX}/etc/sudoers.d" - ewarn " # chown root:root ${EPREFIX}/var/db/sudo" - ewarn " # chmod 4111 ${EPREFIX}/usr/bin/sudo" - ewarn - fi - - elog "To use the -A (askpass) option, you need to install a compatible" - elog "password program from the following list. Starred packages will" - elog "automatically register for the use with sudo (but will not force" - elog "the -A option):" - elog "" - elog " [*] net-misc/ssh-askpass-fullscreen" - elog " net-misc/x11-ssh-askpass" - elog "" - elog "You can override the choice by setting the SUDO_ASKPASS environmnent" - elog "variable to the program you want to use." -} diff --git a/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.1.ebuild b/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.1.ebuild index c8371de4ea..35c6e3d9ee 100644 --- a/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.1.ebuild @@ -16,7 +16,7 @@ SRC_URI=" LICENSE="BSD BSD-2 BSD-4 public-domain" SLOT="0/13" -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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE=" acl blake2 +bzip2 +e2fsprogs expat +iconv lz4 +lzma lzo nettle static-libs test xattr +zstd 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 4ccc0a66c9..fbd848d132 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 @@ -11,7 +11,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" +KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv ~x86" IUSE="apparmor btrfs device-mapper +cri hardened +seccomp selinux test" COMMON_DEPEND=" diff --git a/sdk_container/src/third_party/portage-stable/app-containers/containers-common/containers-common-0.63.0.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/containers-common/containers-common-0.63.0.ebuild index 53718051c4..05d73bee38 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/containers-common/containers-common-0.63.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/containers-common/containers-common-0.63.0.ebuild @@ -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" diff --git a/sdk_container/src/third_party/portage-stable/app-containers/crun/crun-1.20.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/crun/crun-1.20.ebuild index 29f34ed3c5..1a97040741 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/crun/crun-1.20.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/crun/crun-1.20.ebuild @@ -15,7 +15,7 @@ if [[ "$PV" == *9999* ]]; then EGIT_REPO_URI="https://github.com/containers/${PN}.git" else SRC_URI="https://github.com/containers/${PN}/releases/download/${PV}/${P}.tar.gz" - KEYWORDS="amd64 ~arm ~arm64 ~loong ppc64 ~riscv" + KEYWORDS="amd64 ~arm arm64 ~loong ppc64 ~riscv" fi LICENSE="GPL-2+ LGPL-2.1+" 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 9ead91b31e..5fc6a3e9f2 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 @@ -23,7 +23,7 @@ S="${WORKDIR}/cli-${PV}" LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ~loong ppc64 ~riscv ~x86" +KEYWORDS="amd64 ~arm arm64 ~loong ppc64 ~riscv ~x86" IUSE="hardened selinux" RDEPEND="selinux? ( sec-policy/selinux-docker )" diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.0.4.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.0.4.ebuild index 0bb74bbb78..9964d5337e 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.0.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-28.0.4.ebuild @@ -15,7 +15,7 @@ S="${WORKDIR}/moby-${PV}" LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ppc64 ~riscv ~x86" +KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv ~x86" IUSE="apparmor btrfs +container-init cuda +overlay2 seccomp selinux systemd" DEPEND=" 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 7e1509f5a9..449e318ef1 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 @@ -2,5 +2,5 @@ DIST incus-6.0.3.tar.xz 11916020 BLAKE2B d3d998bd50124604c52ff007eefed586c216ce1 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.13.tar.xz 12416404 BLAKE2B 0eca3b80762e9473be21f29157eb42d655a09db97084f6cccd1317595f96593c866110c19a4a42592ae556e8f2f3e40153a7430730373cdb777261bc4a8f0d5e SHA512 80411e23aa95f021f349463b15146444bba7f5cad42e094ff099ec70df8083d7b54d8374ef659d3f4d01afbcbf4287b7238e973d53fecd9a7af046df85b1b05f -DIST incus-6.13.tar.xz.asc 833 BLAKE2B fbdb41110452716aa333f444801152456ec1196cbdb151c5dfdb940d3e82e39cbbc70990ec999b723938ec3986deafff0c1e77376cdd19fb862aa8c59083d363 SHA512 a29978fd9d9f89f7ae6585f150cf78ec7819360e189ce6bbb5559049cecd2b667a46857a852a77d22edba60fce083c2bfccbf89535dad7d415e82c0eec995700 +DIST incus-6.14.tar.xz 12509468 BLAKE2B ec3bb614088d82e07c13169a6b26d8c83214fddbdf30049d58f2cca2678a16ccb6acca7bba68d4e15a514dad71639a144a7b2f4b9f3efdf9c8ca8d750692e250 SHA512 186abb32dcfbe851f04131ea7a9256fafaa465d40379e825554275697e04f005920c09939a8cb199b499b60df667921900c4a2d5b9a7ab9bd20b3e473468dbf1 +DIST incus-6.14.tar.xz.asc 833 BLAKE2B c9cfa631bb316234a6958f2aa3e708e32ea2fca34357700e7d1e38723be539f5b6b1484597c18baca1f22d922c7aca148463dfc0b818f7809126e6873e4826b5 SHA512 6a2f4ceeab44462cca74799a1c135eeb17cbece3d270c5195c3eacda8ea24419fc34cab6d157dbfed803bb269df42a02abc417b98887cec5f10b0ec70b430644 diff --git a/sdk_container/src/third_party/portage-stable/app-containers/incus/files/incus-6.14-fix-qemu-memory-calculation-logic.patch b/sdk_container/src/third_party/portage-stable/app-containers/incus/files/incus-6.14-fix-qemu-memory-calculation-logic.patch new file mode 100644 index 0000000000..dea5b2dc14 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-containers/incus/files/incus-6.14-fix-qemu-memory-calculation-logic.patch @@ -0,0 +1,35 @@ +From 60c8f084a7cb9e38b5003fc056538f6631609cb8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?St=C3=A9phane=20Graber?= +Date: Tue, 1 Jul 2025 21:24:04 -0400 +Subject: [PATCH] incusd/instance/qemu: Fix memory calculation logic +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This fixes another issue with the logic where a system with no detected +physical bits would cause a 0 value which would then be decreased, +leading to the maximum value possible of 1TB. + +Signed-off-by: Stéphane Graber +--- + internal/server/instance/drivers/driver_qemu.go | 7 ++----- + 1 file changed, 2 insertions(+), 5 deletions(-) + +diff --git a/internal/server/instance/drivers/driver_qemu.go b/internal/server/instance/drivers/driver_qemu.go +index 995d1d31ed5..2897226d930 100644 +--- a/internal/server/instance/drivers/driver_qemu.go ++++ b/internal/server/instance/drivers/driver_qemu.go +@@ -4183,11 +4183,8 @@ func (d *qemu) addCPUMemoryConfig(conf *[]cfg.Section, cpuType string, cpuInfo * + } + } + +- if cpuType == "host" && lowestPhysBits > 0 { +- // Line up cpuPhysBits with the lowest physical CPU value. +- cpuPhysBits = lowestPhysBits +- } else if lowestPhysBits < cpuPhysBits { +- // Reduce curPhysBits below the default of 39 if a physical CPU uses a lower value. ++ // If a physical address size was detected, either align it with the VM (CPU passthrough) or use it as an upper bound. ++ if lowestPhysBits > 0 && (cpuType == "host" || lowestPhysBits < cpuPhysBits) { + cpuPhysBits = lowestPhysBits + } + diff --git a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.13.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.13.ebuild deleted file mode 100644 index f0e16b062e..0000000000 --- a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.13.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-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-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 "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.13-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.14-r1.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.13-r1.ebuild rename to sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.14-r1.ebuild index e9a35ca7d8..2058289f5d 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.13-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-containers/incus/incus-6.14-r1.ebuild @@ -94,6 +94,8 @@ 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 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 c8abf75348..3de53bfbaf 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 @@ -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" +KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv ~x86" IUSE="apparmor hardened +kmem +seccomp selinux test" COMMON_DEPEND=" diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.4.8.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.4.8.ebuild index bc45391f14..e160012a42 100644 --- a/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.4.8.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-crypt/gnupg/gnupg-2.4.8.ebuild @@ -23,7 +23,7 @@ S="${WORKDIR}/${MY_P}" LICENSE="GPL-3+" 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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE="bzip2 doc ldap nls readline selinux +smartcard ssl test +tofu tpm tools usb user-socket wks-server" RESTRICT="!test? ( test )" REQUIRED_USE="test? ( tofu )" diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/gpgme/gpgme-1.24.3.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/gpgme/gpgme-1.24.3-r1.ebuild similarity index 94% rename from sdk_container/src/third_party/portage-stable/app-crypt/gpgme/gpgme-1.24.3.ebuild rename to sdk_container/src/third_party/portage-stable/app-crypt/gpgme/gpgme-1.24.3-r1.ebuild index f6b4669fd2..c6374afa61 100644 --- a/sdk_container/src/third_party/portage-stable/app-crypt/gpgme/gpgme-1.24.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-crypt/gpgme/gpgme-1.24.3-r1.ebuild @@ -44,26 +44,21 @@ REQUIRED_USE=" " # - On each bump, update dep bounds on each version from configure.ac! -RDEPEND=" +COMMON_DEPEND=" >=app-crypt/gnupg-2 >=dev-libs/libassuan-2.5.3:= >=dev-libs/libgpg-error-1.46-r1:= - cxx? ( !dev-cpp/gpgmepp ) - python? ( - !dev-python/gpgmepy - ${PYTHON_DEPS} - ) + python? ( ${PYTHON_DEPS} ) qt5? ( dev-qt/qtcore:5 ) - qt6? ( - !dev-libs/qgpgme - dev-qt/qtbase:6 - ) + qt6? ( dev-qt/qtbase:6 ) " -DEPEND=" - ${RDEPEND} - test? ( - qt5? ( dev-qt/qttest:5 ) - ) +DEPEND="${COMMON_DEPEND} + test? ( qt5? ( dev-qt/qttest:5 ) ) +" +RDEPEND="${COMMON_DEPEND} + cxx? ( !>=dev-cpp/gpgmepp-2 ) + python? ( !>dev-python/gpgmepy-1.9999 ) + qt6? ( !>=dev-libs/qgpgme-2 ) " #doc? ( app-text/doxygen[dot] ) BDEPEND=" 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 0f9e1ab950..049cbcbbb0 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,5 +1,3 @@ -DIST eclass-manpages-20241115.tar.xz 456160 BLAKE2B eeaa4c964dbc784ae6351b89c4a8d6bac15c80cfefc4c3df17b3a243b1f95c682ca2d25fcf62a2fb23dc9b47f18f468dd43b9a73588cb9e38b7bbe90ed616773 SHA512 42152fd59a660b63a0bb50f285dfb95de132d3687833491b92ce91602fcc10fde1419ab985763c61d32c4753b350070ee47a3fd163d3b31636f27ac31ce3dafd -DIST eclass-manpages-20241117.tar.xz 456132 BLAKE2B 7111d9817b32ede80fb1e917f43e94b9342573684b715b874a2d880121840bbe67fa7c5aff95f5e7c99a25f2ae5beebadb3326c3a0df7117e99c0903cdcf3052 SHA512 73e28a2c40e89bbe2ba6611dc70c0b0320c8cf981b479ba3be86165d0b90c75f84c209d203d0ad612544709da881f7549d66560b4bccdb73209586d1a2cf8590 -DIST eclass-manpages-20241210.tar.xz 459680 BLAKE2B 076038d98bfae109ceaa1b14eff7f3e5ba575622243c60f59e7102d23d80e640c5e2932e2c614200cf3f653fc6cf4d0041dc4cc3011207273a690fc930e06091 SHA512 c3252f797ca71e9ca89b6d45715d763031733deb0f220aef65ddf750343693757f51d6535a22536b973c1c189b7cbe11306408c9c160e6ee3864e89af060ed8d -DIST eclass-manpages-20250105.tar.xz 471540 BLAKE2B f21e783d233611349e036bb2e9ec52e3a8293891dcc56be15c628e9507b6bf5b650184eb7d57296a006f2a9764ac586257b61e1b810622bffff52c78708dfb9d SHA512 13c6ec0ad7251d287ba18dff6a362088c7e4f80036e225d1dc993cb467536566d88e588df0983207f26a06e39450c3072c436e391431df8d3e2b8a595a809022 DIST eclass-manpages-20250506.tar.xz 483068 BLAKE2B e4c2aacd5e2b1416c9deb337a0b8d74b664b1f38e7f0555f812c25de494d8c18628f08e065738e6cfd2082769fc8367478a53849f1923d461027acca16f2a66a SHA512 99a361f0c4a144bf89f3dfdd02d298ef6c3a7138cd2b4e151449559fafaf6e83403ad73334494239c827bbc25eef30e701945b1783c9cc16aeff94fdf29679bb +DIST eclass-manpages-20250704.tar.xz 484052 BLAKE2B 9711ec8ba766335eb73cfa69cd406960055213eb7d29f7a1e7fd1fcef504e8becc4f638eb351a54dd5032725bdcb43342dba38d80929aa8843d31be03e8332d4 SHA512 a96be86457a9268e986e07496d4a0ac07737ee58e63d7b4e7d4538519b47795d0cbf164520ab253645befeafae35e79832386a0a6dfce5f686f5c25e62a0d413 +DIST eclass-manpages-20250705.tar.xz 498848 BLAKE2B 0a7907abaf983968c219ae26f3c5f0a0e33103b94ea7afdfad06cea22810094e0fdec2bfb150def85158922a444bdb675c0ae3d618d4a6a52175b83771f9e03a SHA512 2fb686403c8307e3a5259c15abdd23bf117ca9d4bcbda2b301e68755a0ba6dc3a2a4fac48d64803cca72626e410295e8684c0a45812788353cd11366b4df8f36 diff --git a/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20241117.ebuild b/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20241117.ebuild deleted file mode 100644 index b33b7a6bb4..0000000000 --- a/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20241117.ebuild +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 1999-2024 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 ~amd64-linux ~x86-linux ~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-20241210.ebuild b/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20241210.ebuild deleted file mode 100644 index b33b7a6bb4..0000000000 --- a/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20241210.ebuild +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 1999-2024 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 ~amd64-linux ~x86-linux ~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-20250105.ebuild b/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250704.ebuild similarity index 100% rename from sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250105.ebuild rename to sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250704.ebuild diff --git a/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20241115.ebuild b/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250705.ebuild similarity index 95% rename from sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20241115.ebuild rename to sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250705.ebuild index b33b7a6bb4..0e318cc5af 100644 --- a/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20241115.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/eclass-manpages-20250705.ebuild @@ -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 EAPI=8 diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim-core/Manifest b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/Manifest index c19394a82a..16da5ddee6 100644 --- a/sdk_container/src/third_party/portage-stable/app-editors/vim-core/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/Manifest @@ -1,4 +1,5 @@ DIST vim-9.0.2092-patches.tar.xz 2640 BLAKE2B 3a4b2bc57712de3b92b0e8d9b2d428e4d576665a183927051eddd53d019a5ca413c74dc10aff09917ee3120bd2e2ba441219d7238994f0d5ba14fc9c31180199 SHA512 ec27e4056460948ff86bc48a21de239a84b53757a8283144ec121654096796d970ad832234d6591a132bcd38bc12dc507cc7795a11cd383d20f08b4d9bcb051f DIST vim-9.1.0794.tar.gz 18235753 BLAKE2B 6ab377e6e0661ff8d4f0de2526b29b1c58c128babff662144425665582d390f772b9ded38ec21db4c32c4d68441b566500c434139f23f1ea79af8b7ecd693953 SHA512 38106d56c774b8f1dfed16953c07ff09c411bba5c7ab69e696ee9423dabdec9b0b405665fbd2411122f9963d3af8f9a259cc56b2954443ab41a14a8f2476624a DIST vim-9.1.1436.tar.gz 18860692 BLAKE2B ae0471654446ff4101f2df698f46c59c9d634336a6dd762732e46238e97bb6fd00a42b56cad3ae5cce572da2fc3cc65490cd10a024419940352fddd285bd6e23 SHA512 c6007fecf7e8ba2134246b0072ebfa8ce0f85666ac96a6ccc1a81e23a4e46a6b75c136823cdf6dccb6dfdf703affaede9ce83988cf8fe7e5542087a769e61961 +DIST vim-9.1.1500.tar.gz 18567738 BLAKE2B 9222c3245eed55b71b228562ee768857207b3198d738dddfab0fdbb3bb8e497a906fedc497f55a416d4e05c5dda4cd0d373298557fe05c554a03c28732c06bba SHA512 f36a80bf76ea2813aba64d5ce7c6d60241609409bdb70d3a1a622fdcab826d9c8d61a611379125428136afc64b309ca92c33c265dfc276a1bebfc0d4f5d71253 DIST vim-patches-vim-9.1.1432-patches.tar.bz2 2618 BLAKE2B fe7c302c71fbf66f1921e1b55e2f67914ed104ab86e2a6cf2e6bf67c98214f13f1d8ff1ed7015ec41a5665c692946e20ec5bdf4806e789a70e34c0c888472739 SHA512 a794a7e4d9014d5508db7b205404f5a4b44748a82c5599a26c1ec6b06d3105f6cebf9a93a058f65ad853bbadf432034fc8257a7c77b4f3446331b9d66c19b3af diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.1.1500.ebuild b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.1.1500.ebuild new file mode 100644 index 0000000000..d2e0274761 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.1.1500.ebuild @@ -0,0 +1,233 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please bump with app-editors/vim and app-editors/gvim + +VIM_VERSION="9.1" +VIM_PATCHES_VERSION="9.1.1432" +inherit bash-completion-r1 desktop flag-o-matic prefix toolchain-funcs vim-doc xdg-utils + +if [[ ${PV} == 9999* ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/vim/vim.git" + EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV} +else + SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz + https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2" + # https://github.com/douglarek/gentoo-vim-patches/releases/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.tar.gz" + 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" +fi + +DESCRIPTION="vim and gvim shared files" +HOMEPAGE="https://www.vim.org https://github.com/vim/vim" +S="${WORKDIR}/vim-${PV}" + +LICENSE="vim" +SLOT="0" +IUSE="nls acl minimal" + +# ncurses is only needed by ./configure, so no subslot operator required +DEPEND=">=sys-libs/ncurses-5.2-r2:0" +BDEPEND="dev-build/autoconf" + +if [[ ${PV} != 9999* ]]; then + # Gentoo patches to fix runtime issues, cross-compile errors, etc + PATCHES=( + "${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches" + ) +fi + +# platform-specific checks (bug #898406): +# - acl() -- Solaris +# - statacl() -- AIX +QA_CONFIG_IMPL_DECL_SKIP=( + 'acl' + 'statacl' +) + +pkg_setup() { + # people with broken alphabets run into trouble. bug #82186. + unset LANG LC_ALL + export LC_COLLATE="C" +} + +src_prepare() { + default + + # Fixup a script to use awk instead of nawk + sed -i \ + -e '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \ + "${S}"/runtime/tools/mve.awk || die "sed failed" + + # See bug #77841. We remove this file after the tarball extraction. + rm -v "${S}"/runtime/tools/vimspell.sh || die "rm failed" + + # Read vimrc and gvimrc from /etc/vim + echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' >> "${S}"/src/feature.h || die + echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' >> "${S}"/src/feature.h || die + + # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. + # Hopefully this pattern won't break for a while at least. + # This fixes bug #29398 (27 Sep 2003 agriffis) + sed -i 's/\> "$c" || die "echo failed" + done + + # Try to avoid sandbox problems. Bug #114475. + if [[ -d "${S}"/src/po ]]; then + sed -i -e \ + '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \ + "${S}"/src/po/Makefile || die "sed failed" + fi + + cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" + + # Fix bug #76331: -O3 causes problems, use -O2 instead. We'll do this for + # everyone since previous flag filtering bugs have turned out to affect + # multiple archs... + replace-flags -O3 -O2 + + # Fix bug #18245: Prevent "make" from the following chain: + # (1) Notice configure.ac is newer than auto/configure + # (2) Rebuild auto/configure + # (3) Notice auto/configure is newer than auto/config.mk + # (4) Run ./configure (with wrong args) to remake auto/config.mk + sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" + + # Remove src/auto/configure file. + rm -v src/auto/configure || die "rm configure failed" + + # bug 908961 + if use elibc_musl ; then + sed -i -e '/ja.sjis/d' src/po/Make_all.mak || die + fi +} + +src_configure() { + emake -j1 -C src autoconf + + # This should fix a sandbox violation (see bug 24447). The hvc + # things are for ppc64, see bug 86433. + for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do + if [[ -e "${file}" ]]; then + addwrite ${file} + fi + done + + # Let Portage do the stripping. Some people like that. + export ac_cv_prog_STRIP="$(type -P true ) faking strip" + + local myconf=( + --with-modified-by="Gentoo-${PVR} (RIP Bram)" + --enable-gui=no + --without-x + --disable-darwin + --disable-perlinterp + --disable-pythoninterp + --disable-rubyinterp + --disable-gpm + --disable-selinux + $(use_enable nls) + $(use_enable acl) + ) + + # Keep Gentoo Prefix env contained within the EPREFIX + use prefix && myconf+=( --without-local-dir ) + + if tc-is-cross-compiler ; then + export vim_cv_getcwd_broken=no \ + vim_cv_memmove_handles_overlap=yes \ + vim_cv_stat_ignores_slash=yes \ + vim_cv_terminfo=yes \ + vim_cv_toupper_broken=no + fi + + econf "${myconf[@]}" +} + +src_compile() { + emake -j1 -C src auto/osdef.h objects + emake tools +} + +src_test() { :; } + +src_install() { + local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} + + dodir /usr/{bin,share/{man/man1,vim}} + emake -C src \ + installruntime \ + installmanlinks \ + installmacros \ + installtutor \ + installtutorbin \ + installtools \ + install-languages \ + DESTDIR="${D}" \ + BINDIR="${EPREFIX}"/usr/bin \ + MANDIR="${EPREFIX}"/usr/share/man \ + DATADIR="${EPREFIX}"/usr/share + + keepdir ${vimfiles}/keymap + + # default vimrc is installed by vim-core since it applies to + # both vim and gvim + insinto /etc/vim/ + newins "${FILESDIR}"/vimrc-r7 vimrc + eprefixify "${ED}"/etc/vim/vimrc + + if use minimal; then + # To save space, install only a subset of the files. + # Helps minimalize the livecd, bug 65144. + rm -rv "${ED}${vimfiles}"/{compiler,doc,ftplugin,indent} || die + rm -rv "${ED}${vimfiles}"/{macros,print,tools,tutor} || die + rm -v "${ED}"/usr/bin/vimtutor || die + + for f in "${ED}${vimfiles}"/colors/*.vim; do + if [[ ${f} != */@(default).vim ]] ; then + printf '%s\0' "${f}" + fi + done | xargs -0 rm -f || die + + for f in "${ED}${vimfiles}"/syntax/*.vim; do + if [[ ${f} != */@(conf|crontab|fstab|inittab|resolv|sshdconfig|syntax|nosyntax|synload).vim ]] ; then + printf '%s\0' "${f}" + fi + done | xargs -0 rm -f || die + fi + + newbashcomp "${FILESDIR}"/xxd-completion xxd + + # install gvim icon since both vim/gvim desktop files reference it + doicon -s scalable "${FILESDIR}"/gvim.svg +} + +pkg_postinst() { + # update documentation tags (from vim-doc.eclass) + update_vim_helptags + + # update icon cache + xdg_icon_cache_update +} + +pkg_postrm() { + # Update documentation tags (from vim-doc.eclass) + update_vim_helptags + + # update icon cache + xdg_icon_cache_update +} diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim/Manifest b/sdk_container/src/third_party/portage-stable/app-editors/vim/Manifest index c19394a82a..16da5ddee6 100644 --- a/sdk_container/src/third_party/portage-stable/app-editors/vim/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-editors/vim/Manifest @@ -1,4 +1,5 @@ DIST vim-9.0.2092-patches.tar.xz 2640 BLAKE2B 3a4b2bc57712de3b92b0e8d9b2d428e4d576665a183927051eddd53d019a5ca413c74dc10aff09917ee3120bd2e2ba441219d7238994f0d5ba14fc9c31180199 SHA512 ec27e4056460948ff86bc48a21de239a84b53757a8283144ec121654096796d970ad832234d6591a132bcd38bc12dc507cc7795a11cd383d20f08b4d9bcb051f DIST vim-9.1.0794.tar.gz 18235753 BLAKE2B 6ab377e6e0661ff8d4f0de2526b29b1c58c128babff662144425665582d390f772b9ded38ec21db4c32c4d68441b566500c434139f23f1ea79af8b7ecd693953 SHA512 38106d56c774b8f1dfed16953c07ff09c411bba5c7ab69e696ee9423dabdec9b0b405665fbd2411122f9963d3af8f9a259cc56b2954443ab41a14a8f2476624a DIST vim-9.1.1436.tar.gz 18860692 BLAKE2B ae0471654446ff4101f2df698f46c59c9d634336a6dd762732e46238e97bb6fd00a42b56cad3ae5cce572da2fc3cc65490cd10a024419940352fddd285bd6e23 SHA512 c6007fecf7e8ba2134246b0072ebfa8ce0f85666ac96a6ccc1a81e23a4e46a6b75c136823cdf6dccb6dfdf703affaede9ce83988cf8fe7e5542087a769e61961 +DIST vim-9.1.1500.tar.gz 18567738 BLAKE2B 9222c3245eed55b71b228562ee768857207b3198d738dddfab0fdbb3bb8e497a906fedc497f55a416d4e05c5dda4cd0d373298557fe05c554a03c28732c06bba SHA512 f36a80bf76ea2813aba64d5ce7c6d60241609409bdb70d3a1a622fdcab826d9c8d61a611379125428136afc64b309ca92c33c265dfc276a1bebfc0d4f5d71253 DIST vim-patches-vim-9.1.1432-patches.tar.bz2 2618 BLAKE2B fe7c302c71fbf66f1921e1b55e2f67914ed104ab86e2a6cf2e6bf67c98214f13f1d8ff1ed7015ec41a5665c692946e20ec5bdf4806e789a70e34c0c888472739 SHA512 a794a7e4d9014d5508db7b205404f5a4b44748a82c5599a26c1ec6b06d3105f6cebf9a93a058f65ad853bbadf432034fc8257a7c77b4f3446331b9d66c19b3af diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.1.1500.ebuild b/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.1.1500.ebuild new file mode 100644 index 0000000000..0327597dac --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.1.1500.ebuild @@ -0,0 +1,370 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please bump with app-editors/vim-core and app-editors/gvim + +VIM_VERSION="9.1" +VIM_PATCHES_VERSION="9.1.1432" + +LUA_COMPAT=( lua5-{1..4} luajit ) +PYTHON_COMPAT=( python3_{10..14} ) +PYTHON_REQ_USE="threads(+)" +USE_RUBY="ruby31 ruby32" + +inherit vim-doc flag-o-matic bash-completion-r1 lua-single python-single-r1 ruby-single toolchain-funcs desktop xdg-utils + +if [[ ${PV} == 9999* ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/vim/vim.git" +else + SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz + https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2" + # https://github.com/douglarek/gentoo-vim-patches/releases/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.tar.gz" + 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" +fi + +DESCRIPTION="Vim, an improved vi-style text editor" +HOMEPAGE="https://www.vim.org https://github.com/vim/vim" + +LICENSE="vim" +SLOT="0" +IUSE="X acl crypt cscope debug gpm lua minimal nls perl python racket ruby selinux sound tcl terminal vim-pager" +REQUIRED_USE=" + lua? ( ${LUA_REQUIRED_USE} ) + python? ( ${PYTHON_REQUIRED_USE} ) + vim-pager? ( !minimal ) +" + +RDEPEND=" + >=app-eselect/eselect-vi-1.1 + >=sys-libs/ncurses-5.2-r2:0= + nls? ( virtual/libintl ) + acl? ( kernel_linux? ( sys-apps/acl ) ) + crypt? ( dev-libs/libsodium:= ) + cscope? ( dev-util/cscope ) + gpm? ( >=sys-libs/gpm-1.19.3 ) + lua? ( ${LUA_DEPS} + $(lua_gen_impl_dep 'deprecated' lua5-1) + ) + ~app-editors/vim-core-${PV} + vim-pager? ( app-editors/vim-core[-minimal] ) + perl? ( dev-lang/perl:= ) + python? ( ${PYTHON_DEPS} ) + racket? ( dev-scheme/racket ) + ruby? ( ${RUBY_DEPS} ) + selinux? ( sys-libs/libselinux ) + sound? ( media-libs/libcanberra ) + tcl? ( dev-lang/tcl:0= ) + X? ( x11-libs/libXt ) +" +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto ) +" +# configure runs the Lua interpreter +BDEPEND=" + dev-build/autoconf + lua? ( ${LUA_DEPS} ) + nls? ( sys-devel/gettext ) +" +PDEPEND="!minimal? ( app-vim/gentoo-syntax )" + +if [[ ${PV} != 9999* ]]; then + # Gentoo patches to fix runtime issues, cross-compile errors, etc + PATCHES=( + "${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches" + ) +fi + +# platform-specific checks (bug #898452): +# - acl() -- Solaris +# - statacl() -- AIX +QA_CONFIG_IMPL_DECL_SKIP=( + 'acl' + 'statacl' +) + +pkg_setup() { + # people with broken alphabets run into trouble. bug #82186. + unset LANG LC_ALL + export LC_COLLATE="C" + + use lua && lua-single_pkg_setup + use python && python-single-r1_pkg_setup +} + +src_prepare() { + default + + # Fixup a script to use awk instead of nawk + sed -i -e \ + '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \ + "${S}"/runtime/tools/mve.awk || die "mve.awk sed failed" + + # Read vimrc and gvimrc from /etc/vim + echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \ + >> "${S}"/src/feature.h || die "echo failed" + echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \ + >> "${S}"/src/feature.h || die "echo failed" + + # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. + # Hopefully this pattern won't break for a while at least. + # This fixes bug #29398 (27 Sep 2003 agriffis) + sed -i -e \ + 's/\> "$c" || die "echo failed" + done + + # conditionally make the manpager.sh script + if use vim-pager; then + cat > "${S}"/runtime/macros/manpager.sh <<-_EOF_ || die "cat EOF failed" + #!/bin/sh + sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\ + vim \\ + -c 'let no_plugin_maps = 1' \\ + -c 'set nolist nomod ft=man ts=8' \\ + -c 'let g:showmarks_enable=0' \\ + -c 'runtime! macros/less.vim' - + _EOF_ + fi + + # Try to avoid sandbox problems. Bug #114475. + if [[ -d "${S}"/src/po ]]; then + sed -i -e \ + '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \ + "${S}"/src/po/Makefile || die "sed failed" + fi + + cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" + + # Fix bug 18245: Prevent "make" from the following chain: + # (1) Notice configure.ac is newer than auto/configure + # (2) Rebuild auto/configure + # (3) Notice auto/configure is newer than auto/config.mk + # (4) Run ./configure (with wrong args) to remake auto/config.mk + sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" + rm src/auto/configure || die "rm failed" + + # bug 908961 + if use elibc_musl ; then + sed -i -e '/ja.sjis/d' src/po/Make_all.mak || die + fi +} + +src_configure() { + emake -j1 -C src autoconf + + # This should fix a sandbox violation (see bug #24447). The hvc + # things are for ppc64, see bug #86433. + for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do + if [[ -e "${file}" ]]; then + addwrite ${file} + fi + done + + local myconf=() + if use minimal; then + myconf=( + --with-features=tiny + --disable-nls + --disable-canberra + --disable-acl + --enable-gui=no + --without-x + --disable-darwin + --disable-luainterp + --disable-perlinterp + --disable-pythoninterp + --disable-mzschemeinterp + --disable-rubyinterp + --disable-selinux + --disable-tclinterp + --disable-gpm + ) + else + use debug && append-flags "-DDEBUG" + + myconf=( + --with-features=huge + $(use_enable sound canberra) + $(use_enable acl) + $(use_enable crypt libsodium) + $(use_enable cscope) + $(use_enable gpm) + $(use_enable nls) + $(use_enable perl perlinterp) + $(use_enable python python3interp) + $(use_with python python3-command "${PYTHON}") + $(use_enable racket mzschemeinterp) + $(use_enable ruby rubyinterp) + $(use_enable selinux) + $(use_enable tcl tclinterp) + $(use_enable terminal) + ) + + # --with-features=huge forces on cscope even if we --disable it. We need + # to sed this out to avoid screwiness. (1 Sep 2004 ciaranm) + if ! use cscope; then + sed -i -e \ + '/# define FEAT_CSCOPE/d' src/feature.h || die "sed failed" + fi + + if use lua; then + # -DLUA_COMPAT_OPENLIB=1 is required to enable the + # deprecated (in 5.1) luaL_openlib API (#874690) + use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1 + + myconf+=( + --enable-luainterp + $(use_with lua_single_target_luajit luajit) + --with-lua-prefix="${EPREFIX}/usr" + ) + fi + + # don't test USE=X here ... see bug #19115 + # but need to provide a way to link against X ... see bug #20093 + myconf+=( + --enable-gui=no + --disable-darwin + $(use_with X x) + ) + fi + + # let package manager strip binaries + export ac_cv_prog_STRIP="$(type -P true ) faking strip" + + # keep prefix env contained within the EPREFIX + use prefix && myconf+=( --without-local-dir ) + + if tc-is-cross-compiler ; then + export vim_cv_getcwd_broken=no \ + vim_cv_memmove_handles_overlap=yes \ + vim_cv_stat_ignores_slash=yes \ + vim_cv_terminfo=yes \ + vim_cv_toupper_broken=no + fi + + econf \ + --with-modified-by="Gentoo-${PVR} (RIP Bram)" \ + "${myconf[@]}" +} + +src_compile() { + # The following allows emake to be used + emake -j1 -C src auto/osdef.h objects + + emake +} + +src_test() { + einfo + einfo "Starting vim tests. Several error messages will be shown" + einfo "while the tests run. This is normal behaviour and does not" + einfo "indicate a fault." + einfo + ewarn "If the tests fail, your terminal may be left in a strange" + ewarn "state. Usually, running 'reset' will fix this." + einfo + + # Don't let vim talk to X + unset DISPLAY + + # Arch and opensuse seem to do this and at this point, I'm willing + # to try anything to avoid random test hangs! + export TERM=xterm + + # See https://github.com/vim/vim/blob/f08b0eb8691ff09f98bc4beef986ece1c521655f/src/testdir/runtest.vim#L5 + # for more information on test variables we can use. + # Note that certain variables need vim-compatible regex (not PCRE), see e.g. + # http://www.softpanorama.org/Editors/Vimorama/vim_regular_expressions.shtml. + # + # Skipped tests: + # - Test_expand_star_star + # Hangs because of a recursive symlink in /usr/include/nodejs (bug #616680) + # - Test_exrc + # Looks in wrong location? (bug #742710) + # - Test_job_tty_in_out + # Fragile and depends on TERM(?) + # - Test_spelldump_bang + # Hangs. + # - Test_fuzzy_completion_env + # Too sensitive to leaked environment variables. + # - Test_term_mouse_multiple_clicks_to_select_mode + # Hangs. + # - Test_spelldump + # Hangs. + # - Test_glvs_* + # Depends on local network. + export TEST_SKIP_PAT='\(Test_expand_star_star\|Test_exrc\|Test_job_tty_in_out\|Test_spelldump_bang\|Test_fuzzy_completion_env\|Test_term_mouse_multiple_clicks_to_select_mode\|Test_spelldump\|Test_glvs_\)' + + emake -j1 -C src/testdir nongui +} + +# Call eselect vi update with --if-unset +# to respect user's choice (bug #187449) +eselect_vi_update() { + ebegin "Calling eselect vi update" + eselect vi update --if-unset + eend $? +} + +src_install() { + local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} + + # Note: Do not install symlinks for 'vi', 'ex', or 'view', as these are + # managed by eselect-vi + dobin src/vim + if ! use minimal ; then + dosym vim /usr/bin/vimdiff + fi + dosym vim /usr/bin/rvim + dosym vim /usr/bin/rview + if use vim-pager ; then + dosym ${vimfiles}/macros/less.sh /usr/bin/vimpager + dosym ${vimfiles}/macros/manpager.sh /usr/bin/vimmanpager + insinto ${vimfiles}/macros + doins runtime/macros/manpager.sh + fperms a+x ${vimfiles}/macros/manpager.sh + fi + + domenu runtime/vim.desktop + + newbashcomp "${FILESDIR}"/${PN}-completion ${PN} + + # keep in sync with 'complete ... -F' list + bashcomp_alias vim ex vi view rvim rview vimdiff +} + +pkg_postinst() { + # Update documentation tags (from vim-doc.eclass) + update_vim_helptags + + # Call eselect vi update + eselect_vi_update + + # update desktop file mime cache + xdg_desktop_database_update +} + +pkg_postrm() { + # Update documentation tags (from vim-doc.eclass) + update_vim_helptags + + # Call eselect vi update + eselect_vi_update + + # update desktop file mime cache + xdg_desktop_database_update +} diff --git a/sdk_container/src/third_party/portage-stable/app-misc/jq/Manifest b/sdk_container/src/third_party/portage-stable/app-misc/jq/Manifest index 7871bb9e9f..b74509dbe6 100644 --- a/sdk_container/src/third_party/portage-stable/app-misc/jq/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-misc/jq/Manifest @@ -1,2 +1,3 @@ DIST jq-1.7.1.gh.tar.gz 1323338 BLAKE2B 17e3b68e23f9a7f1aa8749ede6c0b8fe435990899886f0c96da36d130c17d13609ba7f910321316f0c3b35985360f8cb5e6a3b12caea5e9bc7792e128798f137 SHA512 af9c444e5306423182f467a53acdf45bb8aefa058a47f490ce16395f0aebfb7627e3843f65e96f41cd9d4b72b8ad274ab0bdb061abc6990b1158f86d2256d4ec DIST jq-1.8.0.gh.tar.gz 1355079 BLAKE2B 0d98ed6ccf90d2d110cb3e04aa3058237f1650f246860c60a33528886374d247ba774ed64a0cf8f06b8c135ce0281b7b183732c0dfb9c267a9858df2e18b9740 SHA512 36c4035fbb5c7a6523c98d09cf8ba9636e79919f1620eb3934f4dec7ea42009ad5cce49ed67e516880911b98eb2d7188f58c75aa88359a20f848815b3c9032ee +DIST jq-1.8.1.gh.tar.gz 1409730 BLAKE2B 8a7cad88d62c6ec4388d8859eca2e7acdf0053f1277d61bccf87cdb6eafb69a0a00574c6b0bd5f46a512a3857ca880a9ac5f0732b3ea5e29a17fd67b90e193e7 SHA512 7eece5744008710d6098d2b945b52250184e981ed3b7a66d4e8e1d0484539a281031900fa9dda7e1004a3fcfa8b5be39814d499c66c34707b35962a365d24fde diff --git a/sdk_container/src/third_party/portage-stable/app-misc/jq/jq-1.8.1.ebuild b/sdk_container/src/third_party/portage-stable/app-misc/jq/jq-1.8.1.ebuild new file mode 100644 index 0000000000..74a8836144 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-misc/jq/jq-1.8.1.ebuild @@ -0,0 +1,86 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools flag-o-matic + +MY_PV="${PV/_/}" +MY_P="${PN}-${MY_PV}" +DESCRIPTION="A lightweight and flexible command-line JSON processor" +HOMEPAGE="https://stedolan.github.io/jq/" +SRC_URI="https://github.com/jqlang/jq/archive/refs/tags/${MY_P}.tar.gz -> ${P}.gh.tar.gz" +S="${WORKDIR}/${PN}-${MY_P}" + +LICENSE="MIT icu CC-BY-3.0" +SLOT="0/1" +KEYWORDS="~alpha amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="+oniguruma static-libs test" + +ONIGURUMA_MINPV='>=dev-libs/oniguruma-6.9.10' # Keep this in sync with bundled vendor/oniguruma/ +DEPEND=" + >=sys-devel/bison-3.0 + app-alternatives/lex + oniguruma? ( ${ONIGURUMA_MINPV}:=[static-libs?] ) +" +RDEPEND=" + !static-libs? ( + oniguruma? ( ${ONIGURUMA_MINPV}[static-libs?] ) + ) +" +PATCHES=( + "${FILESDIR}"/jq-1.6-r3-never-bundle-oniguruma.patch +) + +RESTRICT="!test? ( test )" +REQUIRED_USE="test? ( oniguruma )" + +src_prepare() { + sed -e '/^dist_doc_DATA/d; s:-Wextra ::' -i Makefile.am || die + printf "#!/bin/sh\\nprintf '%s'\\n\n" "${MY_PV}" > scripts/version || die + + # jq-1.6-r3-never-bundle-oniguruma makes sure we build with the system oniguruma, + # but the bundled copy of oniguruma still gets eautoreconf'd since it + # exists; save the cycles by nuking it. + sed -e '/vendor\/oniguruma/d' -i Makefile.am || die + rm -rf "${S}"/vendor/oniguruma || die + + default + + sed -i "s/\[jq_version\]/[${MY_PV}]/" configure.ac || die + + eautoreconf +} + +src_configure() { + # TODO: Drop on next release > 1.7.1 + # bug #944014 + append-cflags -std=gnu17 + + local econfargs=( + # don't try to rebuild docs + --disable-docs + --enable-valgrind=no + --disable-maintainer-mode + $(use_enable static-libs static) + $(use_with oniguruma oniguruma yes) + ) + econf "${econfargs[@]}" +} + +src_test() { + if ! LD_LIBRARY_PATH="${S}/.libs" nonfatal emake check; then + if [[ -r "${S}/test-suite.log" ]]; then + eerror "Tests failed, outputting testsuite log" + cat "${S}/test-suite.log" + fi + die "Tests failed" + fi +} + +src_install() { + local DOCS=( AUTHORS NEWS.md README.md SECURITY.md ) + default + + use static-libs || { find "${D}" -name '*.la' -delete || die; } +} 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 f9396b0c1e..3dce9b11c0 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 @@ -22,11 +22,8 @@ DIST bash-5.1.tar.gz 10458638 BLAKE2B 42059556694b604911b5b7936f94d42d8923f2931f DIST bash-5.1.tar.gz.sig 95 BLAKE2B ac9209d6a4ab4436c511a7a195594e9036d7d1aef7887972f61a0e97378a9685b882621d7f95f5326b155dc155c41635417ce2ca41ac6d0dda78bd293ea4249f SHA512 3966404c0f683c7ef214fcf283b551e5441af3897009f778308c2e34067d98d57c95561453416a54ca5b1daf9a1288dbf950fe3f13353703cead12f5eec5fad8 DIST bash-5.2.tar.gz 10950833 BLAKE2B 51b196e710794ebad8eac28c31c93eb99ac1a7db30919a13271e39e1cb66a0672f242df75fc7d71627ea873dfbce53ec35c0c56a71c5167143070a7811343fd9 SHA512 5647636223ba336bf33e0c65e516d8ebcf6932de8b44f37bc468eedb87579c628ad44213f78534beb10f47aebb9c6fa670cb0bed3b4e7717e5faf7e9a1ef81ae DIST bash-5.2.tar.gz.sig 95 BLAKE2B 2991b7c46ef1cdca08062f419be47fca7551f4c5d9aad8a5c1da74974f5e7707d23914b4cecf9b6c9610471146b2c49b611bb62a5d974f1c37cceb77b719851c SHA512 a161664f124f906be32709f66702f8f780e6d52e558ea45e71ec60a959c9435ff68477ee65a0a9f6c0051d5592f5044fb3b410cf3cd3ae5a8a323789b01be258 -DIST bash-5.3-rc2.tar.gz 11032468 BLAKE2B 42f3b6b3b675a618c965fbde8e3052ac4e171b0f50848589ab4996f6a8de22aca8bdaa5819eb21d3e3dbd67cddaad17d8c48d5a977ae77373fedfdec67cb4155 SHA512 8dfd16723ea14a5901f3a056d30a0fa7b633e41495bbf071897f6a7794293dec59e4eb8618345aeb9e06a924e87c8b823e3ab1e3888a963421b1e8398cc0c12e -DIST bash-5.3-rc2.tar.gz.sig 95 BLAKE2B 2068f4b5e5045f00a389256c8e753253a1f9b7d06970c51516555e463ef3d5e682e28a9052a2fbae0f9ce7bb0f9e31116a0a780ae3dc7d083a71591feee6501d SHA512 2a4cad6d8f5212319045b6139fb8e3c56664efa5ffcf1ef522219f5a100d5385ab627f6c122f9b49178b48e9c2a85da43f72fd70425547c3a71c0ec1ae812e33 -DIST bash-5.3_rc2_p20250606-727b8d366390fea446f7a566c4be1be6c0e2a765.tar.gz 16083935 BLAKE2B 05821cd7598a6915651ca5f0f9c601ea4e118406d3db652c0989cebe32d15a03e1c95b517740834564e27be1d1e312aa2433f4456a4a8307249d2cfd9fd471fd SHA512 f9f8b17efd119fb0d82251a5be7ead3af8502461116036ffb22b4318f924d97927f1ec010982a21fb0f6fe39ad78e0ccbedfd66a469bb20ed4006bb39595ae4e -DIST bash-5.3_rc2_p20250616-0f0cea342e32f1f82aa9cc9026038bfc3bb03e92.tar.gz 16112367 BLAKE2B 5b3644b8a931b7c81c2bca36f880f403f758bf4076d8268c0c607ebabd0239d6e453a748726763b39902fa198748d20cc31994b59e54ef770f38549d295bcb81 SHA512 f53108830f660b58c784559a43a6f9fb988f7a5eb53695ca315ba4b6c3b4af139b35f12de041d3bb014ee8b0b730c709ca46873f6a38c5d1af5d2922d7a52cdd -DIST bash-5.3_rc2_p20250627-b35866a2891a9b069e37ca5684d4309c0391e261.tar.gz 16113487 BLAKE2B 3e6af98b369afa1b61bb3f63dd1cf800d3fc109e0af946cf0ddedf0ed15bf602d1bcfef6b31d3ae0441cead3391894e8b3f0ea503ac72e02ecd546ee310ae8ec SHA512 91c7c02aa4077df6fd1151ff949a7063de98b742eae2e1305071e84453ba436a07c62adfc8dceaac7c64ae583c23ae07fa9039277740deaa8981816312e7344f +DIST bash-5.3.tar.gz 11354270 BLAKE2B 88a4f0146eb11698120890f2afaf28210295135f8f7f61dcbb99eeb0c39c84da5360a3b0572a26dc2a36b207fd440b83bb5a947213af90306c8f6ab608964ff1 SHA512 05ef640e8ba011d10f858a270c626daa42ed5a75789d0298ae0ced9b2ebaf93d94d8ed5a211ac30cd34e82af8865e50024144c88a3c979bee7c38e449350e02e +DIST bash-5.3.tar.gz.sig 95 BLAKE2B 90a6a47b5b318d03ff7e196e6504a987c281f564db878e8452f0543953832b5ac4f767f69a9bdf6b6a98938b0b439040c10674dd54e38ef03730ae6a2ec4484e SHA512 e9da98e993528d69bec9c6da272eb7a96858b4ba33487435f584c7df2d73c3ce82f373b5277cc3a7d8dc9ee04410dc06ce476d3f9ade097121bea0570abe07bc DIST bash205b-001 1132 BLAKE2B 0c5eef29777d54ef05957ea3d63b1556fb380bd20c238dc28993d822b37bc4e78ff4048ad069f6b8cd25da77ccdeb7aecd86c4349cb9d81e5e94c7001eeae5e6 SHA512 5ce4357468821b05e747201f3aa57225ad8f540c9e2c87051720490e039c30b478b9b662a68f14a0800fefe40184e4495e2645665200f9d75e9a115b2ac08071 DIST bash205b-002 755 BLAKE2B 6a6ed5679d451f02f8104b345c1722d11718ce3b4043b581c17786d40d8da69a34786fb56d0c363dba277b8e9dd33f12f70c9cc73a9fc39ba4a8319406f0458d SHA512 46947b0229478d5c2cfeff68b8ebc00e4ef0c8b94e336ca12f72b4490ba3622c0240c01c17c1641c3b07adc2c64ec94d6d780365e8990768ec8888f3a9526883 DIST bash205b-003 2356 BLAKE2B b7887d00d92fd298cd07a15e1c73b516dabd22ecd74c97091636dd97a0cd55024ed698e5cc924c4311d994dd326b1ad074bea35e7650cf9cf4e25c60d2713fa7 SHA512 74528ca5d165b812d299f1c69b47757bd677c0b22ce4217e155cd641708b02364a93c6709fb57b546b376b36da74429a61493921c7c199563da40ddcf1c1f399 diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.2_p37-r3.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.2_p37-r3.ebuild index 65cd38ce6a..ffdcd70900 100644 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.2_p37-r3.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.2_p37-r3.ebuild @@ -65,7 +65,7 @@ S=${WORKDIR}/${MY_P} LICENSE="GPL-3+" SLOT="0" if (( PLEVEL >= 0 )); then - 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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi IUSE="afs bashlogger examples mem-scramble +net nls plugins pgo +readline" diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_rc2_p20250627.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_rc2_p20250627.ebuild rename to sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3.ebuild index 1fa3e6be53..ba4de7b688 100644 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_rc2_p20250627.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3.ebuild @@ -31,7 +31,7 @@ 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_rc1" +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" @@ -146,15 +146,6 @@ src_prepare() { # Include official patches. (( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}" - # Clean out local libs so we know we use system ones w/releases. The - # touch utility is invoked for the benefit of config.status. - if (( PLEVEL >= 0 )); then - rm -rf lib/{readline,termcap}/* \ - && touch lib/{readline,termcap}/Makefile.in \ - && sed -i -E 's:\$[{(](RL|HIST)_LIBSRC[)}]/[[:alpha:]_-]*\.h::g' Makefile.in \ - || die - fi - # Prefixify hardcoded path names. No-op for non-prefix. hprefixify pathnames.h.in diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_rc2.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_rc2.ebuild deleted file mode 100644 index 1efdb19b50..0000000000 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_rc2.ebuild +++ /dev/null @@ -1,412 +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/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 ftp://ftp.gnu.org/gnu/bash/bash-5.2-patches/. -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 - -# 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_rc1" - -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 )) && [[ ${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. - BASH_COMMIT="dbe4256d5ea02fec1817fe7e275b0e534dc33a40" - 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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-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 )) && [[ ${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() { - # Include official patches. - (( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}" - - # Clean out local libs so we know we use system ones w/releases. The - # touch utility is invoked for the benefit of config.status. - if (( PLEVEL >= 0 )); then - rm -rf lib/{readline,termcap}/* \ - && touch lib/{readline,termcap}/Makefile.in \ - && sed -i -E 's:\$[{(](RL|HIST)_LIBSRC[)}]/[[:alpha:]_-]*\.h::g' Makefile.in \ - || die - fi - - # 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. - 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\"\' \ - -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-r1 | 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-r2.bash 10-gentoo-title.bash - if [[ ! ${EPREFIX} ]]; then - doins "${FILESDIR}"/bashrc.d/15-gentoo-bashrc-check.bash - fi - - insinto /etc/skel - for f in bash{_logout,_profile,rc}; do - newins "${FILESDIR}/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 old_ver - - # If /bin/sh does not exist, provide it. - if [[ ! -e ${EROOT}/bin/sh ]]; then - ln -sf -- bash "${EROOT}"/bin/sh || die - fi - - read -r old_ver <<<"${REPLACING_VERSIONS}" - if [[ ! $old_ver ]]; then - : - elif ver_test "$old_ver" -ge "5.2" && ver_test "$old_ver" -ge "5.2_p26-r8"; then - return - fi - - while read -r; do ewarn "${REPLY}"; done <<'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 -} diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_rc2_p20250606.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_rc2_p20250606.ebuild deleted file mode 100644 index 829bb15fb6..0000000000 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_rc2_p20250606.ebuild +++ /dev/null @@ -1,412 +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/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 ftp://ftp.gnu.org/gnu/bash/bash-5.2-patches/. -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 - -# 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_rc1" - -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 )) && [[ ${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. - BASH_COMMIT="727b8d366390fea446f7a566c4be1be6c0e2a765" - 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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-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 )) && [[ ${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() { - # Include official patches. - (( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}" - - # Clean out local libs so we know we use system ones w/releases. The - # touch utility is invoked for the benefit of config.status. - if (( PLEVEL >= 0 )); then - rm -rf lib/{readline,termcap}/* \ - && touch lib/{readline,termcap}/Makefile.in \ - && sed -i -E 's:\$[{(](RL|HIST)_LIBSRC[)}]/[[:alpha:]_-]*\.h::g' Makefile.in \ - || die - fi - - # 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. - 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\"\' \ - -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-r1 | 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-r2.bash 10-gentoo-title.bash - if [[ ! ${EPREFIX} ]]; then - doins "${FILESDIR}"/bashrc.d/15-gentoo-bashrc-check.bash - fi - - insinto /etc/skel - for f in bash{_logout,_profile,rc}; do - newins "${FILESDIR}/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 old_ver - - # If /bin/sh does not exist, provide it. - if [[ ! -e ${EROOT}/bin/sh ]]; then - ln -sf -- bash "${EROOT}"/bin/sh || die - fi - - read -r old_ver <<<"${REPLACING_VERSIONS}" - if [[ ! $old_ver ]]; then - : - elif ver_test "$old_ver" -ge "5.2" && ver_test "$old_ver" -ge "5.2_p26-r8"; then - return - fi - - while read -r; do ewarn "${REPLY}"; done <<'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 -} diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_rc2_p20250616.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_rc2_p20250616.ebuild deleted file mode 100644 index 022b71dce2..0000000000 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_rc2_p20250616.ebuild +++ /dev/null @@ -1,412 +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/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 ftp://ftp.gnu.org/gnu/bash/bash-5.2-patches/. -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 - -# 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_rc1" - -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 )) && [[ ${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. - BASH_COMMIT="0f0cea342e32f1f82aa9cc9026038bfc3bb03e92" - 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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-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 )) && [[ ${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() { - # Include official patches. - (( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}" - - # Clean out local libs so we know we use system ones w/releases. The - # touch utility is invoked for the benefit of config.status. - if (( PLEVEL >= 0 )); then - rm -rf lib/{readline,termcap}/* \ - && touch lib/{readline,termcap}/Makefile.in \ - && sed -i -E 's:\$[{(](RL|HIST)_LIBSRC[)}]/[[:alpha:]_-]*\.h::g' Makefile.in \ - || die - fi - - # 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. - 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\"\' \ - -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-r1 | 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-r2.bash 10-gentoo-title.bash - if [[ ! ${EPREFIX} ]]; then - doins "${FILESDIR}"/bashrc.d/15-gentoo-bashrc-check.bash - fi - - insinto /etc/skel - for f in bash{_logout,_profile,rc}; do - newins "${FILESDIR}/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 old_ver - - # If /bin/sh does not exist, provide it. - if [[ ! -e ${EROOT}/bin/sh ]]; then - ln -sf -- bash "${EROOT}"/bin/sh || die - fi - - read -r old_ver <<<"${REPLACING_VERSIONS}" - if [[ ! $old_ver ]]; then - : - elif ver_test "$old_ver" -ge "5.2" && ver_test "$old_ver" -ge "5.2_p26-r8"; then - return - fi - - while read -r; do ewarn "${REPLY}"; done <<'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 -} diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-9999.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-9999.ebuild index 3d5c11da47..ba4de7b688 100644 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-9999.ebuild @@ -31,7 +31,7 @@ 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_rc1" +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" @@ -46,7 +46,7 @@ elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then # 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. - BASH_COMMIT="535a8150b65ee6888f54f602274dbbdcd77c788e" + BASH_COMMIT="b35866a2891a9b069e37ca5684d4309c0391e261" 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 @@ -146,15 +146,6 @@ src_prepare() { # Include official patches. (( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}" - # Clean out local libs so we know we use system ones w/releases. The - # touch utility is invoked for the benefit of config.status. - if (( PLEVEL >= 0 )); then - rm -rf lib/{readline,termcap}/* \ - && touch lib/{readline,termcap}/Makefile.in \ - && sed -i -E 's:\$[{(](RL|HIST)_LIBSRC[)}]/[[:alpha:]_-]*\.h::g' Makefile.in \ - || die - fi - # Prefixify hardcoded path names. No-op for non-prefix. hprefixify pathnames.h.in diff --git a/sdk_container/src/third_party/portage-stable/dev-build/automake-wrapper/automake-wrapper-20250528.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/automake-wrapper/automake-wrapper-20250528.ebuild index 731042260a..59f1583955 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/automake-wrapper/automake-wrapper-20250528.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-build/automake-wrapper/automake-wrapper-20250528.ebuild @@ -20,7 +20,7 @@ else SRC_URI="https://gitweb.gentoo.org/proj/autotools-wrappers.git/snapshot/${MY_P}.tar.gz" S="${WORKDIR}"/${MY_P} - 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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi LICENSE="GPL-2" diff --git a/sdk_container/src/third_party/portage-stable/dev-build/automake/Manifest b/sdk_container/src/third_party/portage-stable/dev-build/automake/Manifest index 057ffb5a55..0be9664106 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/automake/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-build/automake/Manifest @@ -3,5 +3,3 @@ DIST automake-1.17.tar.xz 1652632 BLAKE2B 53c24c138faf3d2be4e30ababcccd4d157c03e DIST automake-1.17.tar.xz.sig 833 BLAKE2B 4564c7189360c61bde7e16a7c3a52b86084fb16b7f4625969fc588a6aa0da687c7b27acf7247822ec0e09e59336acf0ef69784032f255190a070081f6d9da5cc SHA512 180dde452ec097a9267c334044a9ec16bb65cc6ccbc000b7eca0af81ed7ece6f4ce6f6c2be8a2cabca9d48fd46085c81f0ee5d020967104bc25f37f52927829a DIST automake-1.18.1.tar.xz 1652392 BLAKE2B 4461062a4d596dd87caec7d388449f5f8fe7a4faede8fd0d77d1fb3bb5d23caabb3b715fbb9f29f33326bec527f3d8da6251d9282d4007cef9af146d28fe96cf SHA512 8baa16831416a953a743f4e3c0f55cea5ebefe0f5a7a0e390581981d4461d02dc9038415124e974b2ec390c40daaa241802cd7d42c6fafb793f87cf355db2a61 DIST automake-1.18.1.tar.xz.sig 488 BLAKE2B c8efc6847f83d3c1565783ce9d1c22924ca5e409894f7d9f28b2b492b3c2cb6e937fa85f6c36a67fd484fffd0b89cdae0a09239ab71e6da8d01015528a78c9ed SHA512 5a1f0e89a8f3826c766aa98617765f4a576dc278abb7a0a4c0fa04d27d15bf670b79853642914db58731eb4dc737f0b9ad65ba9a07b7bb227e763e90e2e54349 -DIST automake-1.18.tar.xz 1652364 BLAKE2B 45456d6d0fdcd1222c79980ede1df16dfbf18fa4d4698289dbef7c9e24ae8877881678974c5defcce0a9f46b72882b4603e457e8142722174ccf0e495f941550 SHA512 3488d9188a9e11a3e7f911f429ef49d2d92c5ea42262e3e288e1d4de39217facd5a7b7c7ccac06e6fd78a661985af1fe5638353575ebadffb36fc22553e5f782 -DIST automake-1.18.tar.xz.sig 488 BLAKE2B 5a0e9784f536262ab1015e444a67f827e123da7122730e3c4d8c474de544473b731f876a5e743df15b97571990be7509d9007ea8a1ddf00af9cf1747b528016e SHA512 0c01e85ce08a88809d0205de1250836b2a81bb1c16abb395937f737a1bd37fe8d5612c19dbed7d1afd02ed8a8a321356601e4ae8d32b0859dc50fc3617c33f0c diff --git a/sdk_container/src/third_party/portage-stable/dev-build/automake/automake-1.18.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/automake/automake-1.18.ebuild deleted file mode 100644 index a126027842..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-build/automake/automake-1.18.ebuild +++ /dev/null @@ -1,148 +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_AUTOMAKE_VER 'upstream' in dev-build/automake-wrapper -# on new automake (major) releases, as well as the dependency in RDEPEND below too. -# * Update _WANT_AUTOMAKE and _automake_atom case statement in autotools.eclass. - -PYTHON_COMPAT=( python3_{11..14} ) - -inherit python-any-r1 verify-sig - -MANGLED_SLOT=${PV:0:4} - -if [[ ${PV} == 9999 ]] ; then - EGIT_MIN_CLONE_TYPE=single - EGIT_REPO_URI="https://git.savannah.gnu.org/r/${PN}.git" - inherit git-r3 -else - VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/karlberry.asc - if [[ $(ver_cut 3) -ge 90 ]] ; then - MANGLED_SLOT=$(ver_cut 1).$(($(ver_cut 2) + 1)) - SRC_URI=" - https://alpha.gnu.org/pub/gnu/${PN}/${P}.tar.xz - verify-sig? ( - https://alpha.gnu.org/pub/gnu/${PN}/${P}.tar.xz.sig - ) - " - 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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" - fi -fi - -DESCRIPTION="Used to generate Makefile.in from Makefile.am" -HOMEPAGE="https://www.gnu.org/software/automake/" - -LICENSE="GPL-2+ FSFAP" -# Use Gentoo versioning for slotting. -SLOT="${MANGLED_SLOT}" -IUSE="test" -RESTRICT="!test? ( test )" - -RDEPEND=" - >=dev-lang/perl-5.6 - >=dev-build/automake-wrapper-20250528 - >=dev-build/autoconf-2.69:* - sys-devel/gnuconfig -" -BDEPEND=" - app-alternatives/gzip - sys-apps/help2man - dev-build/autoconf-wrapper - dev-build/autoconf - test? ( - ${PYTHON_DEPS} - dev-util/dejagnu - sys-devel/bison - sys-devel/flex - ) - verify-sig? ( sec-keys/openpgp-keys-karlberry ) -" - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -src_prepare() { - default - - export WANT_AUTOCONF=2.5 - # 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 - sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die - - # bug #628912 - if ! has_version -b sys-apps/texinfo ; then - touch doc/{stamp-vti,version.texi,automake.info} || die - fi -} - -src_configure() { - # Also used in install. - infopath="${EPREFIX}/usr/share/automake-${PV}/info" - econf --infodir="${infopath}" -} - -src_test() { - # Fails with byacc/flex - emake YACC="bison -y" LEX="flex" check -} - -src_install() { - default - - rm "${ED}"/usr/share/aclocal/README || die - rmdir "${ED}"/usr/share/aclocal || die - rm \ - "${ED}"/usr/bin/{aclocal,automake} \ - "${ED}"/usr/share/man/man1/{aclocal,automake}.1 || die - - # remove all config.guess and config.sub files replacing them - # w/a symlink to a specific gnuconfig version - local x - for x in guess sub ; do - dosym ../gnuconfig/config.${x} \ - /usr/share/${PN}-${SLOT}/config.${x} - done - - # Avoid QA message about pre-compressed file in docs - local tarfile="${ED}/usr/share/doc/${PF}/amhello-1.0.tar.gz" - if [[ -f "${tarfile}" ]] ; then - gunzip "${tarfile}" || die - fi - - pushd "${D}/${infopath}" >/dev/null || die - for f in *.info*; do - # Install convenience aliases for versioned Automake pages. - ln -s "$f" "${f/./-${PV}.}" || die - done - popd >/dev/null || die - - if [[ ${PV} == 9999 ]]; then - local major="89" - local minor="999" - else - local major="$(ver_cut 1)" - if [[ $(ver_cut 3) -ge 90 ]] ; then - local minor=$(($(ver_cut 2) + 1)) - else - local minor="$(ver_cut 2)" - fi - fi - local idx="$((99999-(major*1000+minor)))" - newenvd - "06automake${idx}" <<-EOF - INFOPATH="${infopath}" - EOF - - docompress "${infopath}" -} 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 2f3e53251a..ac104ac432 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 @@ -4,9 +4,11 @@ DIST sqlite-doc-3490100.zip 11333315 BLAKE2B 28fe302820898861e404f5c6dd1c05c3ff3 DIST sqlite-doc-3490200.zip 11340124 BLAKE2B 56c1456f5720ee98553350790232d043caf197ed6b47bee57405561180513db7ed60c517dd9e86c80aced2a630dd7ca4314a0546de39419fafaccd3d8bd14c52 SHA512 0ea707eb52d019f20157a5b5334340169981547b0714ed58912df932fb76dd0d2cabb6ed3afaefcda24e5477ccbc3cdc1fc81a761d792c06dbad3cc3928a3368 DIST sqlite-doc-3500000.zip 11367399 BLAKE2B 3356bfc188a8827dbee655df559e0c12391e74d7d1a8afff47f19fd4e6136f30b8eaf43ad1a51da39b9e8e4259e24dc5c4f976d96ea5be008219b4caa48cd105 SHA512 bc385c3d47f738547eac353d78121076bc188cb972b78b5ef8176da91e7c325e99111ebdd80f93538254562281113a527bbfbcd687923874291f19481980cb22 DIST sqlite-doc-3500100.zip 11377048 BLAKE2B 1634de3e4e31661d0039a62c362f3668b47bc01b3220c82e97d93f8d93a3502960d7fbd1d26dd1a3a6924d795fa50a61273956ccec14c0c4b596b117517ee598 SHA512 a4be8415e07750e6e414fbb3282087438dabf0a36cf81c60052e78618264688784da98ee30ad476fbc47fa405f5cc0d2db92010a1173d0b65a58608177e12589 +DIST sqlite-doc-3500200.zip 11382890 BLAKE2B f7cea3721d77b32ac4b4c514023750aae8fd95e417fa594452b6f29aa56a061f4177187effaad82d25b868076c6dd8b15db08cf5b9353aa6be06e9938be73e9d SHA512 d1dbec8bc41cc83d2fd048cdc353e44f1ae4a60949aabec1e5aee50485f8535efba85bdae88f93785c8e53d48feb76b8143f272d70f73ce13368815f978bd4bc DIST sqlite-src-3460100.zip 14276926 BLAKE2B df16ea944e317df8ed64fdfab289e3699ec71725ce55e2b30450adaeb41c061b4fba1eb8c41ba638b0edcd12b23264a1f9e413b69fd593c2b65fb1037d3fc8b2 SHA512 6d32a0db9f95d3cec34f02f3fd45b453bf7c422d4d4d9570790f641e7d190b8b31be8e8715afacc1b6e4417f15a4d15a0b28e608ae0b4b5f3054b075783b916e DIST sqlite-src-3470200.zip 14421983 BLAKE2B dcaea5be0099b2dad1b53403933f0037ace48b1f248040c1b5cc116ac2ad6c9b44c71b8efe3afd16bef01119b440d1a2ec9d553a22f855e0ba55793684f53d8d SHA512 a6280a02304bfae173d9e9ebf376b2d3624658f04af4d8e95d5a042e24cf0405a47c0a4023f4dbc2790716cd85e16b97fcc0a83c1534e6d554f4eb0bfb0a3ed3 DIST sqlite-src-3490100.zip 14372402 BLAKE2B c7f6a574698512e2fde44e54ed2a101e7307821b0015287bbf5ab151f5f59432fe051fda1d1caec865928717f51c42f1161187fb768180088574ca225cd29250 SHA512 24c81cee52e5655f4e9d6496a366e4787352b5108ea27eb5ce3dc07ef3e1975205bb250584b0758fb2832add84ca922b09a4d925e0dc2f55dd3613a58b414ec3 DIST sqlite-src-3490200.zip 14377708 BLAKE2B b455388c3c9d0424b7f36b5ab41b7506f524d35c015205eaf164a62494061a308ed419cb75cde6f5c1011a724274980675e4958a9a24d025c7a94ba8f9a13551 SHA512 d07600391df9fd635b1d43cff208021450a18cedad67221e239b0ed86ef287f2f31c040ac413c8a69123615f01658b68f26b6e70a71da39be3ead372a13c8bdc DIST sqlite-src-3500000.zip 14387288 BLAKE2B 9df808ca2e754d8196c19bba3eca370b7675edb89c1fe3bce4d50f848132a5a67079ef6bfceef44fafc7f96f2ded495416093dcda821ea64e06b04b81f3678f1 SHA512 d1b14906011c22bdb1a77e2668aceb42ea912047d8c6358e68fd4097cdaf1dc932ad47f3e621b5242c0c30366a1ecea26c170cd21ff4153d4f0c91d4b9c9eb14 DIST sqlite-src-3500100.zip 14391009 BLAKE2B 4e8568e3994b6fc63f0d27e035001fcf4798b6dda50e9a52943b618a5585c87b2658b57f7153361253bf574f2948c0f44436514c890f1e98f7d816e77d3b985c SHA512 20d5bda28ab6a9edff28c7a7b5c36b3aeabf34758560e87205626dad4202cd2e1e0e01226791e866e995423f7c76e89f26da49515f47c774a3241f59228a27f7 +DIST sqlite-src-3500200.zip 14392422 BLAKE2B d1d21b53e4eb5b4a89d1460e2a1f57f198fa194efa804f1eb71a747d8a8ff75240f7d2757bee537b901830c359b42d7639943f59d28623bc2fb3c870b725debf SHA512 827c78b2bfd823626cdae6a88fff882cbd90430babfab6c6fd224cf05c8764b43499184a4f07293fb00bfcbbaedfec958d1afbfe4431ea9b24b189c561213e7d diff --git a/sdk_container/src/third_party/portage-stable/dev-db/sqlite/sqlite-3.50.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-db/sqlite/sqlite-3.50.2.ebuild new file mode 100644 index 0000000000..b1a38b7423 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-db/sqlite/sqlite-3.50.2.ebuild @@ -0,0 +1,444 @@ +# Copyright 1999-2025 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/2025/${PN}-src-${SRC_PV}.zip + doc? ( https://sqlite.org/2025/${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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-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=" + sys-libs/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 +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/perl/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/perl/Manifest index 4991a2dab6..98441c039f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/perl/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-lang/perl/Manifest @@ -2,9 +2,8 @@ DIST perl-5.40.0-patches-2.tar.xz 17072 BLAKE2B 7cc1085a0a701f72cf1fce2b7f18ac94 DIST perl-5.40.0.tar.xz 13804184 BLAKE2B cf191c3ccaf6f395c0c7d08c2ad3456c1dd622d4fe78e7fb3a74c741e9a84f1d39a55f5bc6adbea54c9520b1b387e72e957f9a7544ab8f24968d233cd5b959ae SHA512 a2fb1a24c6367b4043f4e929b2d74fc3bad1415e53b791ed1f219f1701064ae21b2bd3164ba95fcf24eaf458bd54433024ccae43725c0bb82a1ec6a98dc7052d DIST perl-5.40.1.tar.xz 13930924 BLAKE2B 2f421a9eb6c68e2f12b95e6ac70ede3819c0d31c6f25ec5e45337faa053eaf21911413573624e3e84d82e4d863ed21799dbf471865c7e04519dcb81eac9c5c36 SHA512 3ff16b3462ce43ff38dab21b3dfc20f81772b8c9eac19ab96ba2d5e6cbb390e2302fa76c4879f915249357cd11c7ec0d548bcbf3ab2c156df1b9fca95da3f545 DIST perl-5.40.2.tar.xz 13923524 BLAKE2B e37d0a71fcf91c065f7d6a75077be257c679eb1b8f167a569e4cfd532baa7af621ff887691293a3ec39cd35b960aa3de59f826f3351938994d77d00b44501bca SHA512 1324b119e4370bbeb47a343d152f46c637addb0373ff07f0e214aa9d5912c03cd2bd23987a6e86d43453166412d3a03a52e780201941f679ef4186df16590e41 -DIST perl-5.42.0-RC1.tar.xz 14380792 BLAKE2B f7f26bfe302313df9d69bf952b94ee70b470ce4493e2cf88014dc6fe5a980b69e55d57eca4253c6c9e3a172f01aa123a4de116200e42fa6581c7ae983697a0b9 SHA512 05bf18c86b3e8372ed8a18f23404e4f3343c74ce821e4484709c13087473161b786fa543a7e602d1c7463a161d3db6389ead240c2d1a56280dd5b14ea71fd996 -DIST perl-5.42.0-RC2.tar.xz 14395024 BLAKE2B b01e041f00ce45219aaf7dda5221356ccfe594eac3013c2b001be0f261faceb82622403bee03c47e0780d9b142cf7e0cd6ed7f2afb7c3cdc351efdf3a85d9efc SHA512 8642e16adb8065637d07aaa2fc34612c4f749b45a0398a7e8a4518930b14c91117669952f520306e60c20dfb47ea3e411b11efa558c11c917074649d1aa73441 DIST perl-5.42.0-patches-1.tar.xz 17108 BLAKE2B 0ac95f8c2665a087215dc896c3e00ccfe4103a781c05eff2f4f80bda4ffc36b5745e190dd85056934d340726a6c25885fda458e560581175531f17fe1e27ae22 SHA512 7e1efa62911229f48250a97f7479d15155e94f577bf257020a7a280b38b7547a3b4a397c212dbfcf5a2d187caa29c6006e76f95c66fe5dd59d3c333680c55986 +DIST perl-5.42.0.tar.xz 14400988 BLAKE2B 51c31bfd924e6fb4fca5e149986575cb9b455a40ae2a3e03935423612b34491c8382866ca2f3b1ea9cb6ed415f0c570c817612265335bff2603be721c145da61 SHA512 b10f74d1245a879ae51d3ad93ad519a148df126ec865715474c801548ccfc3f542ef3bbb1f59568cea2ec77302d428dc772aba605357d7faf13eb6a351917275 DIST perl-cross-1.6.1.tar.gz 124122 BLAKE2B b1b78b30f2cf8c5ba12e3df6177b7d102033c8eaceeea9f12a1aeb2bfdf97edda83842e32de797b7ffa3ef6bc66dfba6ccbbacc25367b6f7bc2d137ce58aca93 SHA512 35a4f7966f1f94ef0b6bfe7a82e8a50e0daf6e5e0c1ed99c7c4767aa4f0708db05e8cc01a883257f970703991f617a189609cd57eec63767e2e73de3d6155bdf DIST perl-cross-1.6.2.tar.gz 123761 BLAKE2B c3c51d5a86940914c3a037d1cace49c6def531cdc380771f968461a3552c0200c8a802f4ff74ddb5fcd494ab1e1b582a4c1c5214be4faae8712fc506b19ca04f SHA512 51b45bf972304634d706d09e27d457636e43f9f27f739004eca529b21245ba78612dcb08b54225fc7ca19511983642c37915939ea8aa1c1a4560093474d9e76b DIST perl-cross-1.6.tar.gz 121973 BLAKE2B b3a17d92dd7621a3bc253a6c4e56eccd3adec2c2b52e606c956a08f48d786a16a3ac5beb056a732ba3df92227f210193b0f516fd9d73cac362a04ec52efab029 SHA512 980af804513ec126e40eb9d8200ca54ba805bbb13b38d20a45daaf8d98d6b257e2eebc1ecad56cd47f60e235fa1141f6df9518d748db4f18d5219180750ca615 diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/perl/perl-5.42.0_rc1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/perl/perl-5.42.0.ebuild similarity index 96% rename from sdk_container/src/third_party/portage-stable/dev-lang/perl/perl-5.42.0_rc1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/perl/perl-5.42.0.ebuild index ca10f3d35d..10f0171d4e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/perl/perl-5.42.0_rc1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/perl/perl-5.42.0.ebuild @@ -10,7 +10,7 @@ CROSS_VER=1.6.2 PATCH_BASE="perl-5.42.0-patches-${PATCH_VER}" PATCH_DEV=dilfridge -DIST_AUTHOR=SHAY +DIST_AUTHOR=BOOK # Greatest first, don't include yourself # Devel point-releases are not ABI-intercompatible, but stable point releases are @@ -42,7 +42,6 @@ DESCRIPTION="Larry Wall's Practical Extraction and Report Language" HOMEPAGE="https://www.perl.org/" SRC_URI=" - https://drop.perl.fish/${MY_P}.tar.xz mirror://cpan/src/5.0/${MY_P}.tar.xz mirror://cpan/authors/id/${DIST_AUTHOR:0:1}/${DIST_AUTHOR:0:2}/${DIST_AUTHOR}/${MY_P}.tar.xz https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${PATCH_BASE}.tar.xz @@ -56,7 +55,7 @@ LICENSE="|| ( Artistic GPL-1+ )" SLOT="0/${SUBSLOT}" if [[ "${PV##*.}" != "9999" ]] && [[ "${PV/rc//}" == "${PV}" ]] ; then - 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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi IUSE="berkdb perl_features_debug doc gdbm perl_features_ithreads minimal perl_features_quadmath" @@ -94,7 +93,7 @@ dual_scripts() { src_remove_dual perl-core/ExtUtils-ParseXS 3.570.0 xsubpp src_remove_dual perl-core/IO-Compress 2.213.0 zipdetails src_remove_dual perl-core/JSON-PP 4.160.0 json_pp - src_remove_dual perl-core/Module-CoreList 5.202.506.240 corelist + src_remove_dual perl-core/Module-CoreList 5.202.507.20 corelist src_remove_dual perl-core/Pod-Checker 1.770.0 podchecker src_remove_dual perl-core/Pod-Perldoc 3.280.100 perldoc src_remove_dual perl-core/Pod-Usage 2.50.0 pod2usage @@ -115,18 +114,12 @@ check_rebuild() { [[ ${v%.*} == "${SHORT_PV}" ]] && continue echo "" ewarn "UPDATE THE PERL MODULES:" - ewarn "After updating dev-lang/perl the installed Perl modules" + ewarn "After updating dev-lang/perl to a new major version the installed Perl modules" ewarn "have to be re-installed. In most cases, this is done automatically" - ewarn "by the package manager, but subsequent steps are still recommended" - ewarn "to ensure system consistency." + ewarn "by the package manager." ewarn - ewarn "You should start with a depclean to remove any unused perl dependencies" - ewarn "that may confuse portage in future. Regular depcleans are also encouraged" - ewarn "as part of your regular update cycle, as that will keep perl upgrades working." - ewarn "Recommended: emerge --depclean -va" - ewarn - ewarn "You should then call perl-cleaner to clean up any old files and trigger any" - ewarn "remaining rebuilds portage may have missed." + ewarn "ONLY if you encounter problems, call perl-cleaner to clean up any old files" + ewarn "and trigger any remaining rebuilds portage may have missed." ewarn "Use: perl-cleaner --all" return 0 done diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/perl/perl-5.42.0_rc2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/perl/perl-5.42.0_rc2.ebuild deleted file mode 100644 index 92c207e7bb..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/perl/perl-5.42.0_rc2.ebuild +++ /dev/null @@ -1,870 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit alternatives flag-o-matic toolchain-funcs multilib multiprocessing - -PATCH_VER=1 -CROSS_VER=1.6.2 -PATCH_BASE="perl-5.42.0-patches-${PATCH_VER}" -PATCH_DEV=dilfridge - -DIST_AUTHOR=SHAY - -# Greatest first, don't include yourself -# Devel point-releases are not ABI-intercompatible, but stable point releases are -# BIN_OLDVERSEN contains only C-ABI-intercompatible versions -PERL_BIN_OLDVERSEN="" - -if [[ "${PV##*.}" == "9999" ]]; then - DIST_VERSION=5.42.0 -else - DIST_VERSION="${PV/_rc/-RC}" -fi -SHORT_PV="${DIST_VERSION%.*}" - -# Even numbered major versions are ABI intercompatible -# Odd numbered major versions are not -if [[ $(( ${SHORT_PV#*.} % 2 )) == 1 ]]; then - SUBSLOT="${DIST_VERSION%-RC*}" -else - SUBSLOT="${DIST_VERSION%.*}" -fi - -# Used only in tar paths -MY_P="perl-${DIST_VERSION}" -# Used in library paths -MY_PV="${DIST_VERSION%-RC*}" - -DESCRIPTION="Larry Wall's Practical Extraction and Report Language" - -HOMEPAGE="https://www.perl.org/" - -SRC_URI=" - https://drop.perl.fish/${MY_P}.tar.xz - mirror://cpan/src/5.0/${MY_P}.tar.xz - mirror://cpan/authors/id/${DIST_AUTHOR:0:1}/${DIST_AUTHOR:0:2}/${DIST_AUTHOR}/${MY_P}.tar.xz - https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${PATCH_BASE}.tar.xz - https://github.com/arsv/perl-cross/releases/download/${CROSS_VER}/perl-cross-${CROSS_VER}.tar.gz -" - -S="${WORKDIR}/${MY_P}" - -LICENSE="|| ( Artistic GPL-1+ )" - -SLOT="0/${SUBSLOT}" - -if [[ "${PV##*.}" != "9999" ]] && [[ "${PV/rc//}" == "${PV}" ]] ; then - 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" -fi - -IUSE="berkdb perl_features_debug doc gdbm perl_features_ithreads minimal perl_features_quadmath" - -RDEPEND=" - berkdb? ( sys-libs/db:= ) - gdbm? ( >=sys-libs/gdbm-1.8.3:= ) - app-arch/bzip2 - >=sys-libs/zlib-1.2.12 - virtual/libcrypt:= -" -DEPEND="${RDEPEND}" -BDEPEND="${RDEPEND}" -PDEPEND=" - !minimal? ( - >=app-admin/perl-cleaner-2.31 - >=virtual/perl-CPAN-2.290.0 - >=virtual/perl-Encode-3.120.0 - >=virtual/perl-File-Temp-0.230.400-r2 - >=virtual/perl-Data-Dumper-2.154.0 - >=virtual/perl-Math-BigInt-1.999.842 - virtual/perl-Test-Harness - ) -" - -# bug 390719, bug 523624 -# virtual/perl-Test-Harness is here for the bundled ExtUtils::MakeMaker - -dual_scripts() { - src_remove_dual perl-core/Archive-Tar 3.40.0 ptar ptardiff ptargrep - src_remove_dual perl-core/CPAN 2.380.0 cpan - src_remove_dual perl-core/Digest-SHA 6.40.0 shasum - src_remove_dual perl-core/Encode 3.210.0 enc2xs piconv - src_remove_dual perl-core/ExtUtils-MakeMaker 7.760.0 instmodsh - src_remove_dual perl-core/ExtUtils-ParseXS 3.570.0 xsubpp - src_remove_dual perl-core/IO-Compress 2.213.0 zipdetails - src_remove_dual perl-core/JSON-PP 4.160.0 json_pp - src_remove_dual perl-core/Module-CoreList 5.202.506.270 corelist - src_remove_dual perl-core/Pod-Checker 1.770.0 podchecker - src_remove_dual perl-core/Pod-Perldoc 3.280.100 perldoc - src_remove_dual perl-core/Pod-Usage 2.50.0 pod2usage - src_remove_dual perl-core/Test-Harness 3.500.0 prove - src_remove_dual perl-core/podlators 6.0.2 pod2man pod2text - src_remove_dual_man perl-core/podlators 6.0.2 /usr/share/man/man1/perlpodstyle.1 -} - -check_rebuild() { - # Fresh install - if [[ -z ${REPLACING_VERSIONS} ]]; then - return 0 - fi - - # Major Upgrade - local v - for v in ${REPLACING_VERSIONS}; do - [[ ${v%.*} == "${SHORT_PV}" ]] && continue - echo "" - ewarn "UPDATE THE PERL MODULES:" - ewarn "After updating dev-lang/perl the installed Perl modules" - ewarn "have to be re-installed. In most cases, this is done automatically" - ewarn "by the package manager, but subsequent steps are still recommended" - ewarn "to ensure system consistency." - ewarn - ewarn "You should start with a depclean to remove any unused perl dependencies" - ewarn "that may confuse portage in future. Regular depcleans are also encouraged" - ewarn "as part of your regular update cycle, as that will keep perl upgrades working." - ewarn "Recommended: emerge --depclean -va" - ewarn - ewarn "You should then call perl-cleaner to clean up any old files and trigger any" - ewarn "remaining rebuilds portage may have missed." - ewarn "Use: perl-cleaner --all" - return 0 - done - - # Reinstall w/ USE Change - if - ( use perl_features_ithreads && ( has_version '=dev-lang/perl-5.38.2-r3[-perl_features_ithreads]' ) ) || \ - ( ! use perl_features_ithreads && ( has_version '=dev-lang/perl-5.38.2-r3[perl_features_ithreads]' ) ) || \ - ( use perl_features_quadmath && ( has_version '=dev-lang/perl-5.38.2-r3[-perl_features_quadmath]' ) ) || \ - ( ! use perl_features_quadmath && ( has_version '=dev-lang/perl-5.38.2-r3[perl_features_quadmath]' ) ) || \ - ( use perl_features_debug && ( has_version '=dev-lang/perl-5.38.2-r3[-perl_features_debug]' ) ) || \ - ( ! use perl_features_debug && ( has_version '=dev-lang/perl-5.38.2-r3[perl_features_debug]' ) ) ; then - echo "" - ewarn "TOGGLED PERL FEATURES WARNING:" - ewarn "You changed one of the PERL_FEATURES flags ithreads, quadmath, or debug." - ewarn "You must rebuild all perl-modules installed. Mostly this should be done automatically" - ewarn "via the flag changes of the packages. If the rebuild fails, use perl-cleaner." - ewarn "Use: perl-cleaner --modules ; perl-cleaner --force --libperl" - ewarn - ewarn "NOTE: Previous to perl-5.38.2-r3, these flags were useflags for dev-lang/perl." - ewarn "If you just upgraded and do not intend to change anything, carry the same settings over" - ewarn "into a global PERL_FEATURES variable set in make.conf. E.g., " - ewarn "dev-lang/perl[ithreads,quadmath] becomes PERL_FEATURES=\"ithreads quadmath\"" - fi -} - -pkg_pretend() { - if \ - ( use perl_features_ithreads && has_version ' "${infodir}/${dest_name}.desc" || die "Couldn't write ${dest_name}.desc" - fi - if [[ $# -gt 0 ]]; then - # Note: when $@ is more than one element, this emits a - # line for each element - printf "%s\n" "$@" > "${infodir}/${dest_name}.bugs" || die "Couldn't write ${dest_name}.bugs" - fi -} - -# Remove a patch using a glob expr -# eg: -# rm_patch *-darwin-Use-CC* -# -rm_patch() { - local patchdir="${WORKDIR}/patches" - local expr="$1" - local patch="$( cd "${patchdir}"; echo $expr )" - einfo "Removing $patch ($expr) from patch bundle" - if [[ -e "${patchdir}/${patch}" ]]; then - rm -f "${patchdir}/${patch}" || die "Can't remove ${patch} ( $expr )" - else - ewarn "No ${expr} found in ${patchdir} to remove" - fi -} - -# Yes, this is a reasonable amount of code for something seemingly simple -# but this is far easier to debug when things go wrong, and things went wrong -# multiple times while I was getting the exact number of slashes right, which -# requires circumnavigating both bash and sed escape mechanisms. -c_escape_string() { - local slash dquote - slash='\' - dquote='"' - re_slash="${slash}${slash}" - re_dquote="${slash}${dquote}" - - # Convert \ to \\, - # " to \" - echo "$1" |\ - sed "s|${re_slash}|${re_slash}${re_slash}|g" |\ - sed "s|${re_dquote}|${re_slash}${re_dquote}|g" -} -c_escape_file() { - c_escape_string "$(cat "$1")" -} - -apply_patchdir() { - local patchdir="${WORKDIR}/patches" - local infodir="${WORKDIR}/patch-info" - local patchoutput="patchlevel-gentoo.h" - - # Inject Patch-Level info into description for patchlevel.h patch - # to show in -V - local patch_expr="*List-packaged-patches*" - local patch="$( cd "${patchdir}"; echo $patch_expr )"; - einfo "Injecting patch-level info into ${patch}.desc ( $patch_expr )" - - if [[ -e "${patchdir}/${patch}" ]]; then - printf "List packaged patches for %s(%s) in patchlevel.h" "${PF}" "${PATCH_BASE}"\ - >"${infodir}/${patch}.desc" || die "Can't rewrite ${patch}.desc" - else - eerror "No $patch_expr found in ${patchdir}" - fi - - # Compute patch list to apply - # different name other than PATCHES to stop default - # reapplying it - # Single depth is currently only supported, as artifacts can reside - # from the old layout being multiple-directories, as well as it grossly - # simplifying the patchlevel_gentoo.h generation. - local PERL_PATCHES=($( - find "${patchdir}" -maxdepth 1 -mindepth 1 -type f -printf "%f\n" |\ - grep -E '[.](diff|patch)$' |\ - sort -n - )) - - for patch in "${PERL_PATCHES[@]}"; do - eapply "${WORKDIR}"/patches/${patch} - done - - einfo "Generating $patchoutput" - - # This code creates a header file, each iteration - # creates one-or-more-lines for each entry found in PERL_PATCHES - # and STDOUT is redirected to the .h file - for patch in "${PERL_PATCHES[@]}"; do - local desc_f="${infodir}/${patch}.desc" - local bugs_f="${infodir}/${patch}.bugs" - - printf ',"%s"\n' "${patch}" - if [[ ! -e "${desc_f}" ]]; then - ewarn "No description provided for ${patch} (expected: ${desc_f} )" - else - local desc="$(c_escape_file "${desc_f}")" - printf ',"- %s"\n' "${desc}" - fi - if [[ -e "${bugs_f}" ]]; then - while read -d $'\n' -r line; do - local esc_line="$(c_escape_string "${line}")" - printf ',"- Bug: %s"\n' "${esc_line}" - done <"${bugs_f}" - fi - done > "${S}/${patchoutput}" - printf "%s\n" "${patchoutput}" >> "${S}/MANIFEST" - -} - -src_prepare() { - - local patchdir="${WORKDIR}/patches" - - # mv -v "${WORKDIR}/perl-patchset-${PATCH_BASE}/patches" "${WORKDIR}/patches" || die - # mv -v "${WORKDIR}/perl-patchset-${PATCH_BASE}/patch-info" "${WORKDIR}/patch-info" || die - - # Prepare Patch dir with additional patches / remove unwanted patches - # Inject bug/desc entries for perl -V - # Old example: - # add_patch "${FILESDIR}/${PN}-5.26.2-hppa.patch" "100-5.26.2-hppa.patch"\ - # "Fix broken miniperl on hppa"\ - # "https://bugs.debian.org/869122" "https://bugs.gentoo.org/634162" - - if [[ ${CHOST} == *-solaris* ]] ; then - # do NOT mess with nsl, on Solaris this is always necessary, - # when -lsocket is used e.g. to get h_errno - rm_patch "*-nsl-and-cl*" - fi - - apply_patchdir - - tc-is-cross-compiler && src_prepare_perlcross - - tc-is-static-only || src_prepare_dynamic - - if use gdbm; then - sed -i "s:INC => .*:INC => \"-I${ESYSROOT}/usr/include/gdbm\":g" \ - ext/NDBM_File/Makefile.PL || die - fi - - # Use errno.h from prefix rather than from host system, bug #645804 - if use prefix && [[ -e "${EPREFIX}"/usr/include/errno.h ]] ; then - sed -i "/my..sysroot/s:'':'${EPREFIX}':" ext/Errno/Errno_pm.PL || die - fi - - if [[ ${CHOST} == *-solaris* ]] ; then - # set a soname, fix linking against just built libperl - sed -i -e 's/netbsd\*/netbsd*|solaris*/' Makefile.SH || die - fi - - if [[ ${CHOST} == *-darwin* ]] ; then - # fix install_name (soname) not to reference $D - sed -i -e '/install_name `pwd/s/`pwd`/\\$(shrpdir)/' Makefile.SH || die - - # fix environ linkage absence (only a real issue on Darwin9) - if [[ ${CHOST##*-darwin} -le 9 ]] ; then - sed -i -e '/^PLDLFLAGS =/s/=/= -include crt_externs.h -Denviron="(*_NSGetEnviron())"/' \ - Makefile.SH || die - fi - fi - - default -} - -myconf() { - # the myconf array is declared in src_configure - myconf=( "${myconf[@]}" "$@" ) -} - -# Outputs a list of versions which have been seen in any of the -# primary perl @INC prefix paths, such as: -# /usr/lib64/perl5/ -# /usr/local/lib64/perl5/ -# /usr/lib64/perl5/vendor_perl/ -# -# All values of NUMBER must be like "5.x.y" or like "5.x" -# -find_candidate_inc_versions() { - local regex='.*/5[.][0-9]+\([.][0-9]+\|\)$' - local dirs=( - "${EROOT}${PRIV_BASE}" - "${EROOT}${SITE_BASE}" - "${EROOT}${VENDOR_BASE}" - ) - for dir in "${dirs[@]}"; do - if [[ ! -e "${dir}" ]]; then - continue - fi - # Without access to readdir() on these dirs, find will not be able - # to reveal any @INC directories inside them, and will subsequently prune - # them from the built perl's @INC support, breaking our compatiblity options - # entirely. - if [[ ! -r "${dir}" || ! -x "${dir}" ]]; then - eerror "Bad permissions on ${dir}, this will probably break things" - eerror "Ensure ${dir} is +rx for at least uid=$EUID" - eerror "Recommended permission is +rx for all" - eerror "> chmod o+rx ${dir}" - fi - done - einfo "Scanning for old @INC dirs matching '$regex' in: ${dirs[*]}" - find "${dirs[@]}" -maxdepth 1 -mindepth 1 -type d -regex "${regex}" -printf "%f " 2>/dev/null -} - -# Sort versions passed versiony-ly, remove self-version if present -# dedup. Takes each version as an argument -sanitize_inc_versions() { - local vexclude="${SUBSLOT}" - einfo "Normalizing/Sorting candidate list: $*" - einfo " to remove '${vexclude}'" - # Note, general numeric sort has to be used - # for the last component, or unique will convert - # 5.30.0 + 5.30 into just 5.30 - printf "%s\n" "$@" |\ - grep -vxF "${vexclude}" |\ - sort -u -nr -t'.' -k1,1rn -k2,2rn -k3,3rg -} - -versions_to_inclist() { - local oldv="${DIST_VERSION%-RC} ${PERL_BIN_OLDVERSEN}" - - for v; do - has "${v}" ${oldv} && echo -n "${v}/${myarch}${mythreading}/ "; - echo -n "${v}/ "; - done -} - -versions_to_gentoolibdirs() { - local oldv="${DIST_VERSION%-RC} ${PERL_BIN_OLDVERSEN}" - local root - local v - for v; do - for root in "${PRIV_BASE}" "${VENDOR_BASE}" "${SITE_BASE}"; do - local fullpath="${EROOT}${root}/${v}" - if [[ -e "${fullpath}" ]]; then - has "${v}" ${oldv} && printf "%s:" "${fullpath}/${myarch}${mythreading}"; - printf "%s:" "${fullpath}" - fi - done - done -} - -src_configure() { - declare -a myconf - - export LC_ALL="C" - [[ ${COLUMNS:-1} -ge 1 ]] || unset COLUMNS # bug #394091 - - # Perl has problems compiling with -Os in your flags with glibc - replace-flags "-Os" "-O2" - - # xlocale.h is going away in glibc-2.26, so it's counterproductive - # if we use it and include it in CORE/perl.h ... Perl builds just - # fine with glibc and locale.h only. - # However, the darwin prefix people have no locale.h ... - use elibc_glibc && myconf -Ui_xlocale - - # Perl relies on -fwrapv semantics - filter-flags -ftrapv - - # This flag makes compiling crash in interesting ways - filter-flags "-malign-double" - - # On musl we dont want to use largefile *64 types, since 1) normal - # types are 64bit / largefile anyway and 2) the *64 types are going - # away in 1.2.4... bug #911233 - use elibc_musl && myconf -Ud_off64_t - - use sparc && myconf -Ud_longdbl - - # This urgently needs debugging - on m68k, miniperl crashes during - # build otherwise.. - use m68k && append-ldflags -Wl,-z,norelro - - export BUILD_BZIP2=0 - export BZIP2_INCLUDE=${ESYSROOT}/usr/include - export BZIP2_LIB=${ESYSROOT}/usr/$(get_libdir) - - export BUILD_ZLIB=False - export ZLIB_INCLUDE=${ESYSROOT}/usr/include - export ZLIB_LIB=${ESYSROOT}/usr/$(get_libdir) - - # allow either gdbm to provide ndbm (in ) or db1 - myndbm='U' - mygdbm='U' - mydb='U' - if use gdbm ; then - mygdbm='D' - if use berkdb ; then - myndbm='D' - fi - fi - if use berkdb ; then - mydb='D' - has_version '=sys-libs/db-1*' && myndbm='D' - fi - - myconf "-${myndbm}i_ndbm" "-${mygdbm}i_gdbm" "-${mydb}i_db" - - if use alpha && [[ "$(tc-getCC)" = "ccc" ]] ; then - ewarn "Perl will not be built with berkdb support, use gcc if you need it..." - myconf -Ui_db -Ui_ndbm - fi - - use perl_features_ithreads && myconf -Dusethreads - - use perl_features_quadmath && myconf -Dusequadmath - - if use perl_features_debug ; then - append-cflags "-g" - myconf -DDEBUGGING - elif [[ ${CFLAGS} == *-g* ]] ; then - myconf -DDEBUGGING=-g - else - myconf -DDEBUGGING=none - fi - - # modifying 'optimize' prevents cross configure script from appending required flags - if tc-is-cross-compiler; then - append-cflags "-fwrapv" - tc-export_build_env - - # Needed for the CHOST build too (bug #932385) - export CFLAGS="${CFLAGS} -D_GNU_SOURCE" - - # bug #913171 - export \ - HOSTCC=$(tc-getBUILD_CC) \ - HOSTCFLAGS="${CFLAGS_FOR_BUILD} -D_GNU_SOURCE" \ - HOSTLDFLAGS="${LDFLAGS_FOR_BUILD}" - fi - - # bug #877659, bug #821577 - append-cflags -fno-strict-aliasing - - # Autodiscover all old version directories, some of them will even be newer - # if you downgrade - if [[ -z ${PERL_OLDVERSEN} ]]; then - PERL_OLDVERSEN="$( find_candidate_inc_versions )" - fi - - # Fixup versions, removing self match, fixing order and dupes - PERL_OLDVERSEN="$( sanitize_inc_versions ${PERL_OLDVERSEN} )" - - # Experts who want a "Pure" install can set PERL_OLDVERSEN to an empty string - if [[ -n "${PERL_OLDVERSEN// }" ]]; then - local inclist="$( versions_to_inclist ${PERL_OLDVERSEN} )" - einfo "This version of perl may partially support modules previously" - einfo "installed in any of the following paths:" - for incpath in ${inclist}; do - [[ -e "${EROOT}${VENDOR_BASE}/${incpath}" ]] && einfo " ${EROOT}${VENDOR_BASE}/${incpath}" - [[ -e "${EROOT}${PRIV_BASE}/${incpath}" ]] && einfo " ${EROOT}${PRIV_BASE}/${incpath}" - [[ -e "${EROOT}${SITE_BASE}/${incpath}" ]] && einfo " ${EROOT}${SITE_BASE}/${incpath}" - done - einfo "This is a temporary measure and you should aim to cleanup these paths" - einfo "via world updates and perl-cleaner" - # myconf -Dinc_version_list="${inclist}" - myconf -Dgentoolibdirs="$( versions_to_gentoolibdirs ${PERL_OLDVERSEN} )" - fi - - [[ ${ELIBC} == "FreeBSD" ]] && myconf "-Dlibc=/usr/$(get_libdir)/libc.a" - - # Make sure we can do the final link #523730, need to set deployment - # target to override hardcoded 10.3 which breaks on modern OSX - [[ ${CHOST} == *-darwin* ]] && \ - myconf "-Dld=env MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} $(tc-getCC)" - - # Older macOS with non-Apple GCC chokes on inline in system headers - # using c89 mode as injected by cflags.SH, in addition, we override - # cflags, so we loose PERL_DARWIN which enables compat code that - # apparently on more recent macOS releases is no longer necessary - [[ ${CHOST} == *-darwin* && ${CHOST##*darwin} -le 9 ]] && tc-is-gcc && \ - append-cflags -Dinline=__inline__ -DPERL_DARWIN - - # Prefix: the host system needs not to follow Gentoo multilib stuff, and in - # Prefix itself we don't do multilib either, so make sure perl can find - # something compatible. - if use prefix ; then - # Set a hook to check for each detected library whether it actually works. - export libscheck=" - ( echo 'int main(){}' > '${T}'/conftest.c && - $(tc-getCC) -o '${T}'/conftest '${T}'/conftest.c -l\$thislib >/dev/null 2>/dev/null - ) || xxx=/dev/null" - - # Use all host paths that might contain useful stuff, the hook above will filter out bad choices. - local paths="/lib/*-linux-gnu /usr/lib/*-linux-gnu /lib64 /lib/64 /usr/lib64 /usr/lib/64 /lib32 /usr/lib32 /lib /usr/lib" - myconf "-Dlibpth=${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir) ${paths}" - elif [[ $(get_libdir) != "lib" ]] ; then - # We need to use " and not ', as the written config.sh use ' ... - myconf "-Dlibpth=/usr/local/$(get_libdir) /$(get_libdir) /usr/$(get_libdir)" - fi - - # don't try building ODBM, bug #354453 - disabled_extensions="ODBM_File" - - if ! use gdbm ; then - # workaround for bug #157774: don't try building GDBM related stuff with USE="-gdbm" - disabled_extensions="${disabled_extensions} GDBM_File NDBM_File" - fi - - myconf -Dnoextensions="${disabled_extensions}" - - [[ "${PV##*.}" == "9999" ]] && myconf -Dusedevel -Uversiononly - - [[ -n "${EXTRA_ECONF}" ]] && ewarn During Perl build, EXTRA_ECONF=${EXTRA_ECONF} - # allow fiddling via EXTRA_ECONF, bug 558070 - eval "local -a EXTRA_ECONF=(${EXTRA_ECONF})" - - myconf \ - -Duseshrplib \ - -Darchname="${myarch}" \ - -Dar="$(tc-getAR)" \ - -Dcc="$(tc-getCC)" \ - -Dcpp="$(tc-getCPP)" \ - -Dld="$(tc-getCC)" \ - -Dnm="$(tc-getNM)" \ - -Dranlib="$(tc-getRANLIB)" \ - -Accflags="${CFLAGS} -DNO_PERL_RAND_SEED" \ - -Doptimize="${CFLAGS}" \ - -Dldflags="${LDFLAGS}" \ - -Dprefix="${EPREFIX}"'/usr' \ - -Dsiteprefix="${EPREFIX}"'/usr/local' \ - -Dvendorprefix="${EPREFIX}"'/usr' \ - -Dscriptdir="${EPREFIX}"'/usr/bin' \ - -Dprivlib="${EPREFIX}${PRIV_LIB}" \ - -Darchlib="${EPREFIX}${ARCH_LIB}" \ - -Dsitelib="${EPREFIX}${SITE_LIB}" \ - -Dsitearch="${EPREFIX}${SITE_ARCH}" \ - -Dvendorlib="${EPREFIX}${VENDOR_LIB}" \ - -Dvendorarch="${EPREFIX}${VENDOR_ARCH}" \ - -Dman1dir="${EPREFIX}"/usr/share/man/man1 \ - -Dman3dir="${EPREFIX}"/usr/share/man/man3 \ - -Dsiteman1dir="${EPREFIX}"/usr/local/man/man1 \ - -Dsiteman3dir="${EPREFIX}"/usr/local/man/man3 \ - -Dvendorman1dir="${EPREFIX}"/usr/share/man/man1 \ - -Dvendorman3dir="${EPREFIX}"/usr/share/man/man3 \ - -Dman1ext='1' \ - -Dman3ext='3pm' \ - -Dlibperl="${LIBPERL}" \ - -Dlocincpth="${EPREFIX}"'/usr/include ' \ - -Dglibpth="${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir)"' ' \ - -Duselargefiles \ - -Duse64bitint \ - -Dd_semctl_semun \ - -Dcf_by='Gentoo' \ - -Dmyhostname='localhost' \ - -Dperladmin='root@localhost' \ - -Ud_csh \ - -Dsh="${BROOT}"/bin/sh \ - -Dtargetsh="${EPREFIX}"/bin/sh \ - -Uusenm \ - "${EXTRA_ECONF[@]}" - - if tc-is-cross-compiler; then - ./configure \ - --target="${CHOST}" \ - --build="${CBUILD}" \ - -Dinstallprefix='' \ - -Dinstallusrbinperl='undef' \ - -Dusevendorprefix='define' \ - "${myconf[@]}" \ - || die "Unable to configure" - else - sh Configure \ - -des \ - -Dinstallprefix="${EPREFIX}"'/usr' \ - -Dinstallusrbinperl='n' \ - "${myconf[@]}" \ - || die "Unable to configure" - fi -} - -src_test() { - export NO_GENTOO_NETWORK_TESTS=1; - export GENTOO_ASSUME_SANDBOXED="${GENTOO_ASSUME_SANDBOXED:-1}" - export GENTOO_NO_PORTING_TESTS="${GENTOO_NO_PORTING_TESTS:-1}" - if [[ ${EUID} == 0 ]] ; then - ewarn "Test fails with a sandbox error (#328793) if run as root. Skipping tests..." - return 0 - fi - TEST_JOBS="$(makeopts_jobs)" make test_harness || die "test failed" -} - -src_install() { - local i - local coredir="${ARCH_LIB}/CORE" - - emake DESTDIR="${D}" install - - rm -f "${ED}/usr/bin/perl${MY_PV}" - ln -s perl "${ED}"/usr/bin/perl${MY_PV} || die - - if ! tc-is-static-only ; then - dolib.so "${ED}"${coredir}/${LIBPERL} - rm -f "${ED}"${coredir}/${LIBPERL} - ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname ${SHORT_PV}) || die - ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname) || die - - ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/${LIBPERL} || die - ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/libperl$(get_libname ${SHORT_PV}) || die - ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/libperl$(get_libname) || die - fi - - rm -rf "${ED}"/usr/share/man/man3 || die "Unable to remove module man pages" - - # This removes ${D} from Config.pm - for i in $(find "${D}" -iname "Config.pm" ) ; do - einfo "Removing ${D} from ${i}..." - sed -i -e "s:${D}::" "${i}" || die "Sed failed" - done - - dodoc Changes* README AUTHORS - - if use doc ; then - # HTML Documentation - # We expect errors, warnings, and such with the following. - - dodir /usr/share/doc/${PF}/html - LD_LIBRARY_PATH=. ./perl installhtml \ - --podroot='.' \ - --podpath='lib:ext:pod:vms' \ - --recurse \ - --htmldir="${ED}/usr/share/doc/${PF}/html" - fi - - [[ -d ${ED}/usr/local ]] && rm -r "${ED}"/usr/local - - dual_scripts -} - -pkg_preinst() { - check_rebuild -} - -pkg_postinst() { - dual_scripts - - if [[ -z "${ROOT}" ]] ; then - local INC DIR file - INC=$(perl -e 'for $line (@INC) { next if $line eq "."; next if $line =~ m/'${SHORT_PV}'|etc|local|perl$/; print "$line\n" }') - einfo "Removing old .ph files" - for DIR in ${INC} ; do - if [[ -d "${DIR}" ]] ; then - for file in $(find "${DIR}" -name "*.ph" -type f ) ; do - rm -f "${file}" - einfo "<< ${file}" - done - fi - done - # Silently remove the now empty dirs - for DIR in ${INC} ; do - if [[ -d "${DIR}" ]] ; then - find "${DIR}" -depth -type d -print0 | xargs -0 -r rmdir &> /dev/null - fi - done - - fi -} - -pkg_postrm() { - dual_scripts -} 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 02511f4110..8a2fe93dbe 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,46 +1,28 @@ 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.17.tar.xz 19608144 BLAKE2B 9caebdcdc21c07037f423bc4831b0e4654dea4264b7a176b2caed625a930f0d6e8e2f6d581dee6f666a1fc17139d1ccd8bcf13c958df14dfd8de31f321d3e048 SHA512 11b1e647f8db05041bcafe110698af8bf5e9f7c8d23c0e9eb568a60544bb9a9e9c3ac94b34f0898f0d4e6c23da3cb81f844ae9d9c8b750058763502eaba39880 -DIST Python-3.10.17.tar.xz.asc 833 BLAKE2B 9468dc33530d8a4ec911e7a2bacd2d1c3533e6819a91c1307e8d577cefe6c6bdb9e9dc7f2abc078cd35186db7f58efd89eb4170fb20887bb2de5a5aa68b3c1f4 SHA512 f5fea78e2ea413c9befb6181787b3a5ea3bc0f5dbf808a94465b558c09353482cd34631a4c505f72aa343a2f4fae291453324cd8e6b18df214baaf4680fc17cf 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.11.12.tar.xz 20112232 BLAKE2B 95f82af070e86ecf48881103ce6d7211a4a915a93a49b1407eaf445364b7a7daec406cf07eb9334ed47a59397a9796f6a5c70dcc9b7b47103beb3bffc6aa56d7 SHA512 5c95900de73cd187f5d7a89a05314ef85f4d680308d0d5fff5e6ada81f8ecf030018bef0f1a819d007e8b6d01b52e50395572c2d1a56d2c164492e13a69a9926 -DIST Python-3.11.12.tar.xz.asc 833 BLAKE2B b874df8019eb3c548598f8723fa38c89189cc375d6ced7cae180ffdc35a8e7b0ba93638861412e19037aa1fee76749186f10c4929dc7f4fb4ef7a8f4561d325c SHA512 cb1f82d44be6de67182747f8ad1054e85cca22753c0c86ff12b95ec7044c5c6c37f40a876e5707a6c422d58f483257b8ddbb3ea87893679f81b9299c48373f20 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.12.10.tar.xz 20520960 BLAKE2B f05805da36958e3ebb68c69353e8119b20ee4c1a123f4492e9bf614e7faa856180ef2017f2a698bcacf19cac01d89329ed5ee45e00c98b255d4854090a2e6926 SHA512 520c30e3958d0be3c127e5dbb1c52bb3bfc404b5b3c7eb56525e25b9b59af9b21b53bee192f323f470e1df806f6cb2dd3411eb90cbc1c4b7d9b6b0777c29e644 -DIST Python-3.12.10.tar.xz.asc 963 BLAKE2B 45e1ec67311d1ac5679cb5a05b92e61f3e5e6e9d3ffa5462c09c2aa066fda7ea915df13f6e5ad33aa924f6ce1f18e2d78a31af15412a10c093fc8a5b536c5133 SHA512 7edfa6fd816cf2a052abdb775d464e2f389105ed3e782cacf90805613aaca54bf71308504a5336ee1204e872e7db28df32413fb10b057056b0d5cb3c7a20a9f1 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.13.3.tar.xz 22654240 BLAKE2B 24ac47c13cbfa4dc9ce6ae4d18d7b5310f83ac1f4f18722138ef07e01cb8ac37edf6f4301983cb468f533b9b475b5a9d761d3044e61c7ccaa99dceadb954fe34 SHA512 f7559b6dceae69f48742af0a6497fbec42cd1e5304f64b6eb9d89222a1171ccf12fa186cc0decabb4e98d05223184967a4a7537754c01083dacdc9073cb1a578 -DIST Python-3.13.3.tar.xz.asc 963 BLAKE2B 4a98965305b80e985512f54d9ce8ab88a74fe0d3ee48e300fbc2b4e251c0f499f4eb935e0aeb6d5ad8262338643325126f094fff926da1e2b9a2b3a2247701dc SHA512 54f8da5f4a4dcadc9830cb07aecf695a26a2de48ab98e1f42b09fdde1c70989476d07ce7ea81337216f1e5fcbf6b688e0608c88a2545ced416b01640108e94db DIST Python-3.13.4.tar.xz 22672472 BLAKE2B d453538db82084f490456416829c7d30672e5c05c1c1baf428493f16fa78ce63b69544787373e4679826f32a18af5c5de5225f8f507699113346917df0e3de31 SHA512 91454bb4d04c192721d2df980a806858bd8aadb5cef92159c2844cc33e92b0386b1b33d5cfff0f69d449e9f978a5f67f6032155f7b1425ff38e36477637c0c68 DIST Python-3.13.4.tar.xz.asc 963 BLAKE2B 5c594f95a7b74c2191b553f50020cd6db9b400f32af62d12094fa4c449651079a662645de8118a7a661c4ceafceb9ce5bcecbbbf8d6bc80d6657a0247e88e510 SHA512 ba9c1dee0f3bf564e6ac19cbe08cf4fdc3779a04ed8289654f6dda3fba9f07a0937764a12f1e7e2f6d7ff17bb5b86c05b8ea19296a2b98d1c81a48362ccf6104 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.14.0b2.tar.xz 23579860 BLAKE2B bf5ebac54531a7c837e7650754264b4be28e28613d488d1c7546db77e2ef3b501ff646d7fb505c6ac0fa1381c3230d1c1899bc82144f369339c89687b5dc7f5c SHA512 cdd37f8a982e6194d5afa80a2eb94c899080809749d59a50a2ce3eed37f720a1fd9a7977f0dd3992650d173a7070b15610077d97cb499bd16a7500c56ef1f8dd -DIST Python-3.14.0b2.tar.xz.sigstore 5131 BLAKE2B 04cab57a4da63f5abf28db94e5fd952206124ce37ef5a5d981839a0790881c9c4ea6d186f233eaaf6e82350bdfdbb0048d761b816d81eaba71c707bd9714a9d9 SHA512 a356037824fbde5950f197cf04f0d71ddaf4b68006b2ab9951f9b4c2df508e84bd0bec7d72051e75d22c17eee767e46e5d2c167e853fb941b0831cb26d518fdc DIST Python-3.14.0b3.tar.xz 23626928 BLAKE2B 354a07abfe838688ca2e02a989864bfd3dfc903b62968125bd0e74c76caa57b1488aace8cf96942f07a29decb89d72c7ca52cb21cdef5948ca79b8f2fdd710e6 SHA512 621bcaf2ae4b6f0ba6c95ef74b5ffb78d8a2a0bb10415fb4c5eab1cad26c63098237944713a7f0812ec3e014ff62cd0f9bd5663e87799fcf1856aa4b937be914 DIST Python-3.14.0b3.tar.xz.sigstore 5326 BLAKE2B 61bb9e80c2c2149aa43e7f97f472e14b71af1bbbef0641e891bc440e9ddae7b968d525b0d44e152c911a05e5f04ca0a710483dfbf4675d0894f619f0e7190595 SHA512 80feff3997ff99f053ad3d8b8e488e5b952c6e0cdb1fedfcb31a7a72ca67eff60b99d875767df068c8833ec7d40cec53fdc838ce5bb85d330a86283d3057c567 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.22.tar.xz 19652572 BLAKE2B 59f2d2cecde8179064115b52205c2195b26cd0f37aec3e88b0fe2a1a7893a7df8ae38a024814d42064d5e4916e4054a76dddeec0a0dcf29af576d52dbcf65f4c SHA512 c5a76c579455626bf40bb41ee99cab6e444aa5d5085dab7cf622c70ded750e31710c2c30f032917f0d4069350c01a889ed9831d77fcc2d52fcec54055dd07496 -DIST Python-3.9.22.tar.xz.asc 833 BLAKE2B 2bc75d7e39ebee63b8cfd9ee1af2941bc0bd659becf89d291ea33f5baea2b606a34841c7ac5c597eac51b19602cf24ccec123964a1022d43fd251553fb3f90f7 SHA512 9a04fcf7d7fc0521873d29efad3a80a9ff63df4fc4fe4108059246db6517b22d967f4d4e0eebb32c79417f66ee3b60fe00428be155fc1cbea163aa36c1a3ddee 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-gentoo-patches-2.7.18_p16.tar.xz 35448 BLAKE2B 0139c0944f62f9cdd236f6a8557e0ed19704c7d72869af1cb7d8bd3e646a746cd4a0201e1b44232a5e78ef49f254db20b0d0271bf744fbfd4fe0f1e99b8f3e6c SHA512 810be590d0e06fab4b2165e6852ca49662f09dcd7e20b47a29f613ad7653252c8dfac3f0eb228d77c8a914efa7c08788b2fbd552a4b47504f5fd0ec17450c48f -DIST python-gentoo-patches-3.10.17_p2.tar.xz 49552 BLAKE2B 9cc0d8aee08209eb453320fa59c5398e3044f4c1788029c871be5e6ada7482b503920896a15b9462949c8bd1be57fd9fc7b10da4d6db1ee564c22e8d6fcb8fc6 SHA512 f0f4752b4bb4928716d832324de1085bd1520b852d855a30fa0c928ed9243716b556c7e3788f5fed39d4d3b4e898154f1456ce818e8467b5a98b4337ec39c727 DIST python-gentoo-patches-3.10.18.tar.xz 29664 BLAKE2B dd69f7866cebad2536b41056571d74cbd90800062b06612b7509c9ce8f258aef66586f3c6e08f52caaceb7b0a01a52502b9c763b6f7d94caac0e929d9d77219b SHA512 b4cf4ff2d7e5b73e1102acc2183c4da3e734bdbec1c284d1fef8aceba0d49246dcdc954d3e4119521fde1e895bab0754b34b346b736b46ce45aff1afc6d38cef -DIST python-gentoo-patches-3.11.12_p2.tar.xz 37360 BLAKE2B 0f8a3b260e4f1d1c824fd962f8ed0fd7e50cb3384795b3bc03f83511dce73235aa4c43a51a5e2198aedc06467b35962b9e55a97eb58d569844d6298b3bee1c15 SHA512 48fbabd1f82c5a6ecc75067e007c62cbefa5efd3276c7aadb802892c3ebe5bdaaad01ad8bff92cec6bfc6f5212c842105540f3bf7c679cb31dee36013a99ee8f DIST python-gentoo-patches-3.11.13.tar.xz 16492 BLAKE2B 8b188742dd3f25974cead290e5793c31f02741a901dce65137c596045fa2fbd5baaef332204af90f95ddcd864ee542b252c00b190e15c25af60a7bda771b116f SHA512 b5abad341d2eede81df445b56a98720466ec23df40a8a2e99a04dba5a106205655c8e2b64df0ca2630f036c8fe457ba64524280d137bbc99f52e4fd8e6bbd5ae -DIST python-gentoo-patches-3.12.10_p2.tar.xz 33236 BLAKE2B e73edf8caf53799f4407ebd08211e86e6c8850441c3c845264b7d250b9fd1630865ff9dfa184ab6f0a4ac2f56326f88af24a006c68d62e2f57c027f93ec6cd31 SHA512 36e2bf3d288a06e60f412e4335563d8633ee2a5c4c798d6a90133d7dcbd3cbc4d9a9c8f1167e10f52740f34cb2ea510981166c6b7a333587118c4da85a1ef354 DIST python-gentoo-patches-3.12.11.tar.xz 12020 BLAKE2B b419d32b1d7bef9408027edda7eac9a920a877e1b8f521483df595199bad1bbadd9dd9500079c09beab63286a801bfb25da5f93a5d31462ed3e457a6e40ad6af SHA512 1b0eaff4c0df06554525a50576da7eadb4067c4f2970851e5c9e3e527a9ccc4216cbd65c45fd562af4a1cedc2c66278a74bee5cf5c1a65df8feb22f34f5a19e4 -DIST python-gentoo-patches-3.13.3_p2.tar.xz 36284 BLAKE2B c1f62268013a055ac477e3e7b49c313d8a41e1fdbd806bb9ddb3a57926297ba7d67e20dadc47ab21ec35f1b0bc504ffd4f039846d8588d143f4e379d8bdc5a12 SHA512 d80856c60c519f28660d6ac5c3df0446759df4c962ab5c989dca1147e92e53e07ed19c75f75a7fdce8e85e919bc77c6ad06a25a611c09764b3eafd61f7d8b63d DIST python-gentoo-patches-3.13.4.tar.xz 8912 BLAKE2B e3d9f2a12f801dc75e09c5301757f35216d712b5e5394f2ec3ce1d79d0cb57571dbca525e3d5c35b90fa059c2b78ee24341b6a51cbe9691deac84c9ee0578824 SHA512 1a7141accb7aa70c7bd8dd12528f7de031dfeab9ff089f3d044da0b7b52461e2d6d7d1467161e0fe1e259d9fa06d70bcf107d86ad3590e8cf73aa1132ef3aaf9 DIST python-gentoo-patches-3.13.5.tar.xz 8916 BLAKE2B 9d985b12af62b8a917cac1dab9576aac099bc81ad954a5de254a14a3c7d2254edcdcfaadc46314b69a1bb76bd30ca8bed7c866c0de3fc3f89aac0f76af344f32 SHA512 5ac92aa3eef82eae5d707ffcb5085ac98bd9bf64f72fc7ac4aa1b12a0c3aa86c57d0f671ca07f46e2250779f4cf4885916e4d175357ad626eca6e41257a027e7 DIST python-gentoo-patches-3.14.0b1.tar.xz 5680 BLAKE2B 514b3edc3025e5bf675d371b5ada17dea426856edf1fb6095c2ee400eae95bd4265ef81fe593ae9338e801e7d0a25b1d5ba2d05ca563fd9dd020114b13575746 SHA512 74289e42cf532b54bb1b66a283ec19156f8a36ba38764209c133842314c9efb2ce2ebcba5aa9213bcf7fc0c8a5ca9b6e7adbd5dbfa4397233136d7cd55f53ee7 -DIST python-gentoo-patches-3.14.0b2_p1.tar.xz 23992 BLAKE2B 65346fe06b2f03251882542b90821c28bd16d9f1c81d1e594bf78403689b444688a9cffa1d52faf63dd9c4db301a9b2a1e6729026e73525fe2f0622f896b6a46 SHA512 c98600da507541c0ba3a03dcaa6d344596fd8f5ef8169eff276318ed33a38ba4794ea346b25b9d11f9a277334bdcc1105e6332bb212602c3c993866340aa8482 DIST python-gentoo-patches-3.14.0b3.tar.xz 5708 BLAKE2B 14706315eeed5b2e3d13d0479443e7b9153bc4be8510620e54453ac1b81d2baf0156d1ac67fd2927a2b389c7dfe18cc67ce14e7e7d6e01f2cb0ebe255baf462a SHA512 45d1d194efcc08f7e4b4b593604f52abb34b5f6a6b81370540d489d362a61894ddf86ab59c2d5aa67a5293613f081bc50586257060929702914851170f1b37a6 DIST python-gentoo-patches-3.8.20_p7.tar.xz 54544 BLAKE2B e31fc9fb5e98b62b0f70165670ec58ed4fa932cfc95d5287c249015a3a372fdbf0d1ba08cb98f63c2dc500700edfd6ffea6db670385d2c86a4fdb92ffb991192 SHA512 a9e7e4976be226931a503af2c986da207d060d4ce436af61f5e8427da513639adbed32bb0061963b83fef275a5de91707ab13b7a9abf3a7472ee0e2c5310eda1 -DIST python-gentoo-patches-3.9.22_p2.tar.xz 59416 BLAKE2B 7904d5272c3dfab6eb9ec188802367faf843303b8af18d75aa03f6ad814ca8aefbf495696a5fb4279fa6f3620a00d0c84989bc007b80546041fedcef8555283a SHA512 acd78c422c360bea4c4be84e718072eb8182b1662d1bf94aa72785319a9f35d1f11a05343d4770d50673cd5c2876a5a99c127559badde7cf335070dfa7d81cf6 DIST python-gentoo-patches-3.9.23.tar.xz 37148 BLAKE2B a7c0514037169b9938b2180ec2dd22063621d532367f6febfa47da43f47534559baab992d9c5257271121af755b8445346d4d92582e7e11b6468a1c359f28bf2 SHA512 73ef00a7aa671016de396c9e1c4bb5f5c1a97dc735739f806d809f987e802ec440370bf4c85468097547284a5d2b476cbffcec3cf219b7cb6fc890d5029eb5bd diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.3_p2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.3_p2.ebuild deleted file mode 100644 index f8274cb351..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.3_p2.ebuild +++ /dev/null @@ -1,625 +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 build 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 - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=sys-libs/zlib-1.1.3:= - virtual/libintl - ensurepip? ( dev-python/ensurepip-pip ) - 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 - verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) -" -RDEPEND+=" - !build? ( app-misc/mime-types ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi - -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=( - # 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 - ) - ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - 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_gdb - # 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.4.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.4.ebuild index f8274cb351..58645b4268 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.4.ebuild @@ -77,7 +77,6 @@ DEPEND=" test? ( dev-python/ensurepip-pip dev-python/ensurepip-setuptools - dev-python/ensurepip-wheel ) valgrind? ( dev-debug/valgrind ) " diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.9999.ebuild index 6dbe301dac..0861f69afc 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.9999.ebuild @@ -69,7 +69,6 @@ DEPEND=" test? ( dev-python/ensurepip-pip dev-python/ensurepip-setuptools - dev-python/ensurepip-wheel ) valgrind? ( dev-debug/valgrind ) " diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_beta2_p1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_beta2_p1.ebuild deleted file mode 100644 index 4722ef1c39..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_beta2_p1.ebuild +++ /dev/null @@ -1,628 +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 python-utils-r1 toolchain-funcs -inherit verify-sig - -REAL_PV=${PV#0.} -MY_PV=${REAL_PV/_beta/b} -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 build 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:= - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=sys-libs/zlib-1.1.3:= - virtual/libintl - ensurepip? ( dev-python/ensurepip-pip ) - 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 -" -RDEPEND+=" - !build? ( app-misc/mime-types ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi - -# 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 - 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=( - # 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 - ) - ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - 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_gdb - # 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 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 -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_beta3.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_beta3.ebuild index 3a63db6a18..26514fc0a6 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_beta3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_beta3.ebuild @@ -78,7 +78,6 @@ DEPEND=" test? ( dev-python/ensurepip-pip dev-python/ensurepip-setuptools - dev-python/ensurepip-wheel ) valgrind? ( dev-debug/valgrind ) " diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.9999.ebuild index d3ee27dfca..391c012371 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.9999.ebuild @@ -69,7 +69,6 @@ DEPEND=" test? ( dev-python/ensurepip-pip dev-python/ensurepip-setuptools - dev-python/ensurepip-wheel ) valgrind? ( dev-debug/valgrind ) " diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.17_p2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18-r1.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.17_p2.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18-r1.ebuild index 4fde84190d..640cb5a898 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.17_p2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18-r1.ebuild @@ -50,7 +50,10 @@ RDEPEND=" >=sys-libs/zlib-1.1.3:= virtual/libcrypt:= virtual/libintl - ensurepip? ( dev-python/ensurepip-wheels ) + ensurepip? ( + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + ) gdbm? ( sys-libs/gdbm:=[berkdb] ) kernel_linux? ( sys-apps/util-linux:= ) ncurses? ( >=sys-libs/ncurses-5.2:= ) @@ -71,8 +74,12 @@ RDEPEND=" DEPEND=" ${RDEPEND} bluetooth? ( net-wireless/bluez ) + test? ( + app-arch/xz-utils + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + ) valgrind? ( dev-debug/valgrind ) - test? ( app-arch/xz-utils ) " # autoconf-archive needed to eautoreconf BDEPEND=" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18.ebuild deleted file mode 100644 index c3a4673640..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18.ebuild +++ /dev/null @@ -1,563 +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 build 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:= - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=sys-libs/zlib-1.1.3:= - virtual/libcrypt:= - virtual/libintl - ensurepip? ( dev-python/ensurepip-wheels ) - 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 ) - valgrind? ( dev-debug/valgrind ) - test? ( app-arch/xz-utils ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-python ) -" -RDEPEND+=" - !build? ( app-misc/mime-types ) -" - -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=( - -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.10.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.9999.ebuild index 34bb287093..f43d0be502 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.9999.ebuild @@ -44,7 +44,10 @@ RDEPEND=" >=sys-libs/zlib-1.1.3:= virtual/libcrypt:= virtual/libintl - ensurepip? ( dev-python/ensurepip-wheels ) + ensurepip? ( + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + ) gdbm? ( sys-libs/gdbm:=[berkdb] ) kernel_linux? ( sys-apps/util-linux:= ) ncurses? ( >=sys-libs/ncurses-5.2:= ) @@ -65,8 +68,12 @@ RDEPEND=" DEPEND=" ${RDEPEND} bluetooth? ( net-wireless/bluez ) + test? ( + app-arch/xz-utils + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + ) valgrind? ( dev-debug/valgrind ) - test? ( app-arch/xz-utils ) " # autoconf-archive needed to eautoreconf BDEPEND=" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.12_p2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13-r1.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.12_p2.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13-r1.ebuild index d1a54799b0..541230b5f8 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.12_p2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13-r1.ebuild @@ -51,7 +51,10 @@ RDEPEND=" >=sys-libs/zlib-1.1.3:= virtual/libcrypt:= virtual/libintl - ensurepip? ( dev-python/ensurepip-wheels ) + ensurepip? ( + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + ) gdbm? ( sys-libs/gdbm:=[berkdb] ) kernel_linux? ( sys-apps/util-linux:= ) ncurses? ( >=sys-libs/ncurses-5.2:= ) @@ -72,7 +75,11 @@ RDEPEND=" DEPEND=" ${RDEPEND} bluetooth? ( net-wireless/bluez ) - test? ( app-arch/xz-utils ) + test? ( + app-arch/xz-utils + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + ) valgrind? ( dev-debug/valgrind ) " # autoconf-archive needed to eautoreconf diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13.ebuild deleted file mode 100644 index 1a6e332542..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13.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" -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 build 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 - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=sys-libs/zlib-1.1.3:= - virtual/libcrypt:= - virtual/libintl - ensurepip? ( dev-python/ensurepip-wheels ) - 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 ) - 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 ) -" -RDEPEND+=" - !build? ( app-misc/mime-types ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi - -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=( - # 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 - ) - ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_descr - -x test_gdb - ) - ;; - 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 - -x test_gdb - # 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.11.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.9999.ebuild index 224e9c5699..769d7f5c80 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.9999.ebuild @@ -45,7 +45,10 @@ RDEPEND=" >=sys-libs/zlib-1.1.3:= virtual/libcrypt:= virtual/libintl - ensurepip? ( dev-python/ensurepip-wheels ) + ensurepip? ( + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + ) gdbm? ( sys-libs/gdbm:=[berkdb] ) kernel_linux? ( sys-apps/util-linux:= ) ncurses? ( >=sys-libs/ncurses-5.2:= ) @@ -66,7 +69,11 @@ RDEPEND=" DEPEND=" ${RDEPEND} bluetooth? ( net-wireless/bluez ) - test? ( app-arch/xz-utils ) + test? ( + app-arch/xz-utils + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + ) valgrind? ( dev-debug/valgrind ) " # autoconf-archive needed to eautoreconf diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.10_p2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.10_p2.ebuild deleted file mode 100644 index d73d44638f..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.10_p2.ebuild +++ /dev/null @@ -1,610 +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 build 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 - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=sys-libs/zlib-1.1.3:= - virtual/libcrypt:= - virtual/libintl - ensurepip? ( dev-python/ensurepip-pip ) - 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 ) -" -RDEPEND+=" - !build? ( app-misc/mime-types ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi - -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=( - # 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 - ) - ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - 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_gdb - # 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.12.11.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.11.ebuild index 4824c12138..d73d44638f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.11.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.11.ebuild @@ -28,7 +28,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 build debug +ensurepip examples gdbm 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.3_p2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.3_p2.ebuild deleted file mode 100644 index 0852164592..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.3_p2.ebuild +++ /dev/null @@ -1,630 +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 build 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 - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=sys-libs/zlib-1.1.3:= - virtual/libintl - ensurepip? ( dev-python/ensurepip-pip ) - 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} - ') - ) - verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) -" -RDEPEND+=" - !build? ( app-misc/mime-types ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi - -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=( - # 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 - ) - ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - 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_gdb - # 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.4.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.4.ebuild deleted file mode 100644 index a31a7b2e3f..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.4.ebuild +++ /dev/null @@ -1,630 +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 build 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 - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=sys-libs/zlib-1.1.3:= - virtual/libintl - ensurepip? ( dev-python/ensurepip-pip ) - 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} - ') - ) - verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) -" -RDEPEND+=" - !build? ( app-misc/mime-types ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi - -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=( - # 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 - ) - ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - 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_gdb - # 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.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.5.ebuild index 4746b4ca83..0da2daf1ef 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.5.ebuild @@ -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 build debug +ensurepip examples gdbm jit libedit +ncurses pgo +readline +sqlite +ssl test tk valgrind @@ -79,7 +79,6 @@ DEPEND=" test? ( dev-python/ensurepip-pip dev-python/ensurepip-setuptools - dev-python/ensurepip-wheel ) valgrind? ( dev-debug/valgrind ) " diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.9999.ebuild index 37ac8dcf64..5af2cbe80f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.9999.ebuild @@ -72,7 +72,6 @@ DEPEND=" test? ( dev-python/ensurepip-pip dev-python/ensurepip-setuptools - dev-python/ensurepip-wheel ) valgrind? ( dev-debug/valgrind ) " diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_beta2_p1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_beta2_p1.ebuild deleted file mode 100644 index fc54f8a402..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_beta2_p1.ebuild +++ /dev/null @@ -1,633 +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 python-utils-r1 toolchain-funcs -inherit verify-sig - -MY_PV=${PV/_beta/b} -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 build 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:= - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=sys-libs/zlib-1.1.3:= - virtual/libintl - ensurepip? ( dev-python/ensurepip-pip ) - 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} - ') - ) -" -RDEPEND+=" - !build? ( app-misc/mime-types ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi - -# 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 - 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=( - # 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 - ) - ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - 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_gdb - # 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 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 -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_beta3.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_beta3.ebuild index 4337b2f22e..96b2eb2465 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_beta3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_beta3.ebuild @@ -80,7 +80,6 @@ DEPEND=" test? ( dev-python/ensurepip-pip dev-python/ensurepip-setuptools - dev-python/ensurepip-wheel ) valgrind? ( dev-debug/valgrind ) " diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.9999.ebuild index 14832e2506..0ded39fc40 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.9999.ebuild @@ -72,7 +72,6 @@ DEPEND=" test? ( dev-python/ensurepip-pip dev-python/ensurepip-setuptools - dev-python/ensurepip-wheel ) valgrind? ( dev-debug/valgrind ) " diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.20_p7.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.20_p7-r1.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.20_p7.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.20_p7-r1.ebuild index fdb933080a..befe9e3cb7 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.20_p7.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.20_p7-r1.ebuild @@ -50,7 +50,10 @@ RDEPEND=" >=sys-libs/zlib-1.1.3:= virtual/libcrypt:= virtual/libintl - ensurepip? ( dev-python/ensurepip-wheels ) + ensurepip? ( + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + ) gdbm? ( sys-libs/gdbm:=[berkdb] ) kernel_linux? ( sys-apps/util-linux:= ) ncurses? ( >=sys-libs/ncurses-5.2:= ) @@ -68,7 +71,11 @@ RDEPEND=" DEPEND=" ${RDEPEND} bluetooth? ( net-wireless/bluez ) - test? ( app-arch/xz-utils ) + test? ( + app-arch/xz-utils + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + ) valgrind? ( dev-debug/valgrind ) " # autoconf-archive needed to eautoreconf diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.22_p2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23-r1.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.22_p2.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23-r1.ebuild index 951e622dbb..b01210124d 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.22_p2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23-r1.ebuild @@ -50,7 +50,10 @@ RDEPEND=" >=sys-libs/zlib-1.1.3:= virtual/libcrypt:= virtual/libintl - ensurepip? ( dev-python/ensurepip-wheels ) + ensurepip? ( + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + ) gdbm? ( sys-libs/gdbm:=[berkdb] ) kernel_linux? ( sys-apps/util-linux:= ) ncurses? ( >=sys-libs/ncurses-5.2:= ) @@ -68,7 +71,11 @@ RDEPEND=" DEPEND=" ${RDEPEND} bluetooth? ( net-wireless/bluez ) - test? ( app-arch/xz-utils ) + test? ( + app-arch/xz-utils + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + ) valgrind? ( dev-debug/valgrind ) " # autoconf-archive needed to eautoreconf diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23.ebuild deleted file mode 100644 index f6d6810606..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23.ebuild +++ /dev/null @@ -1,557 +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 build 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:= - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=sys-libs/zlib-1.1.3:= - virtual/libcrypt:= - virtual/libintl - ensurepip? ( dev-python/ensurepip-wheels ) - 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 ) - 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 ) -" -RDEPEND+=" - !build? ( app-misc/mime-types ) -" - -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=( - -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 index 4a4effea93..efa77f20d7 100644 --- 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 @@ -44,7 +44,10 @@ RDEPEND=" >=sys-libs/zlib-1.1.3:= virtual/libcrypt:= virtual/libintl - ensurepip? ( dev-python/ensurepip-wheels ) + ensurepip? ( + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + ) gdbm? ( sys-libs/gdbm:=[berkdb] ) kernel_linux? ( sys-apps/util-linux:= ) ncurses? ( >=sys-libs/ncurses-5.2:= ) @@ -62,7 +65,11 @@ RDEPEND=" DEPEND=" ${RDEPEND} bluetooth? ( net-wireless/bluez ) - test? ( app-arch/xz-utils ) + test? ( + app-arch/xz-utils + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + ) valgrind? ( dev-debug/valgrind ) " # autoconf-archive needed to eautoreconf diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.84.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.84.3.ebuild index 99992e2b37..02de262bfe 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.84.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.84.3.ebuild @@ -22,7 +22,7 @@ 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 ~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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE="dbus debug +elf doc +introspection +mime selinux static-libs sysprof systemtap test utils xattr" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection-common/gobject-introspection-common-1.84.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection-common/gobject-introspection-common-1.84.0.ebuild index 5257f8070c..a9bfae4188 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection-common/gobject-introspection-common-1.84.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection-common/gobject-introspection-common-1.84.0.ebuild @@ -11,7 +11,7 @@ HOMEPAGE="https://gi.readthedocs.io/" LICENSE="HPND" 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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" RDEPEND="!<${CATEGORY}/${GNOME_ORG_MODULE}-${PV}" # Use !<${PV} because mixing gobject-introspection with different version of -common can cause issues like: diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/jansson/jansson-2.14.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/jansson/jansson-2.14.1.ebuild index 3ffd0049bf..c0f116198e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/jansson/jansson-2.14.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/jansson/jansson-2.14.1.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/akheron/jansson/releases/download/v${PV}/${P}.tar.bz LICENSE="MIT" SLOT="0/4" -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="doc static-libs" BDEPEND=" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.11.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.11.1.ebuild index b199ba6b54..c5917c3233 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.11.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.11.1.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 ~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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-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/libtracefs/libtracefs-1.8.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libtracefs/libtracefs-1.8.2.ebuild index 2a5f2f4476..6dee26acce 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libtracefs/libtracefs-1.8.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libtracefs/libtracefs-1.8.2.ebuild @@ -13,7 +13,7 @@ if [[ ${PV} =~ [9]{4,} ]]; then inherit git-r3 else SRC_URI="https://git.kernel.org/pub/scm/libs/libtrace/libtracefs.git/snapshot/${P}.tar.gz" - KEYWORDS="~alpha amd64 ~arm ~arm64 ~loong ppc ppc64 ~riscv x86" + KEYWORDS="~alpha amd64 arm arm64 ~loong ppc ppc64 ~riscv x86" fi LICENSE="LGPL-2.1" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libunistring/libunistring-1.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libunistring/libunistring-1.3.ebuild index 923121637c..d4cea54d88 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libunistring/libunistring-1.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libunistring/libunistring-1.3.ebuild @@ -12,7 +12,7 @@ SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" LICENSE="|| ( LGPL-3+ GPL-2+ ) || ( FDL-1.2 GPL-3+ )" # Check regularly even on "minor" bumps SLOT="0/5" -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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE="doc static-libs" QA_CONFIG_IMPL_DECL_SKIP=( 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 3cf74be61e..85d7fa6dae 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 @@ -14,11 +14,13 @@ DIST cryptography-44.0.3.tar.gz 711096 BLAKE2B 42b1fd4cd22c50d377c9942740561612d DIST cryptography-45.0.2.tar.gz 743865 BLAKE2B e2aa5e53b2e6564ed70762c2439b9e75f24042ef30aa2c47f97cd556e5ba95c362f5e30368e79b397b71ddba77feb6d9cc295a9b7062cf32c00cf02e9a02498e SHA512 b81cb339e8f8853503d518e37a958115c995565aa241d80307e2fb75cb46d476ce400e6871bc4beb93e0b35e456c8b7dbb49f161f8f112bd01e137770d251964 DIST cryptography-45.0.3.tar.gz 744738 BLAKE2B 45cf4cba1babdf5cde1d22903d0e01f4796e68e4a38c6f7ef4075ea851faad4ecc1575eef1cfc3f6194aa35796a0187e5b1969ea32f9273a0c2e4a0350310cfe SHA512 e8cb59820de89d7a5b2bd2a4b79d5a040b225910eb0653ce5b89fbd694951c6b6ce928c548666e7c879fb71ec4661b426f140959bee6556c9a265c679fa51fbf DIST cryptography-45.0.4.tar.gz 744890 BLAKE2B 34687a369894b0dfcf8a81c6d1b8cbb0b4a711fd17d4419c5368c41b7e5192cad7233295976a236a52c20493b980a5df77ff4af5a9d54925510d00e833971a22 SHA512 d5bdb21956b80675ccfae78be3d56a2e3bfe8c6ceac15c87c9a3ca470605cb798774018c6c9b9597e90a6918912c9a6b5d83eac9f446364b917d7e8888b83eee +DIST cryptography-45.0.5.tar.gz 744903 BLAKE2B c8bee14a11b613b8e37fa9ed57dc8fc65b136c738ebe41a2aa753e9dbfed1976bebb429a62e869fd0a138ff222860d629280589b2340a4654f85b5b968af3a8c SHA512 1704f17250d8da6a33ac361f0fe07f6f91ebf087e81cee8fa783b220e118eba83f5c79eab001d79b383d7577b6dabd1e18de718cb16b5780d2f145107bf9cc79 DIST cryptography_vectors-44.0.2.tar.gz 35318019 BLAKE2B 67ed8f4af54c4469f1da21993e7220c649b1098f6e2b82fff10f8339cfd89506d6b6f64083999998408bc60fd66172e1b33844f39d41387c7ff8cc1efc52a35d SHA512 7a75078eae4a1a46d5aa87961aa2e4f28725a2feac99ea0ce00d48aa509ce00fb43176d48eab8eabaa3f7204ba8c4b2ef78b4b65187cfd5056b3c3e3116b4239 DIST cryptography_vectors-44.0.3.tar.gz 35317973 BLAKE2B 1c76a7ddfb188db3cdd72c1458be6b249bbf9ea403767f002bb4044bdcc835d28aa3c5ff9ad15dd7721d0f54d76db499e44d9dda7cd4a35817b7a6cac6e206f8 SHA512 1287901703699053099bb8843928d0621884864d727de65d4a19d4f841271af8b2a773e8a0cbd7e850258db202bfb345439a72f57d8e5f69c6e1366618c1fa64 DIST cryptography_vectors-45.0.2.tar.gz 35340607 BLAKE2B 433b09f69a1e69bcd5ae1346ec2564b3bcb5a7eca26bd65389a9be8383b7891d8fa63b0d81805fd30bb2f5fa136600c0c79bddb7219f45b6fb85f8ecdd713f88 SHA512 cac88b001c6a374c98cb8222477f8ed111ca873f5146143912070949dbeca3ccf7fa1d788220c6bbe67a86d88487f736b4ad536156cb47e99db0546e5f8f2d7d DIST cryptography_vectors-45.0.3.tar.gz 35344263 BLAKE2B 43368794c68188daa66944617c634fc6e66b30750bd36c3c9a5effc0fc0930cc36171bf5ae95d6a37ac208996b8b6b625451445f07d13a76cd6b0f1bb3feb406 SHA512 a5acf8a30779f6378761aea8618f8e8c6bf7de10980a9166adc82a47072f3f609a05f01105ddf19ec2525bbd821fda52fad6b54cd42645a20168f8db874f10a8 DIST cryptography_vectors-45.0.4.tar.gz 35345034 BLAKE2B 578bd6dc066079a47cc8291a6b4ecec055b2374046efe12fdc1479505fd9bd5afbc9750e879d6d66b896ff7465abf4f1c133eb41dc4a75c57f5dc635ed8163f0 SHA512 0f2b6310eec21add1caa8ab60e8bb1399177b5a4bc50832fb5db581ed94d030871d2fdd53256e3764c67f58391673005db0527e15063554876306364a8111972 +DIST cryptography_vectors-45.0.5.tar.gz 35344700 BLAKE2B 620d31f2ef2482990567bfaeb21163a96b4da20829c80367511a9803bfc2ecad9edb54e37ad1d3c2848c747d14db61323d9613765bd94462adb9228d8a6d43fc SHA512 7d5706243ec69ae670a7d8e0e6e7a650d4ba7e10b5bd8b05641d7f0e2291cd719c3b2bfccb975c429046a1a347316aa86f40d128160ef176efa294c1d843ff86 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 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-45.0.4.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-45.0.4.ebuild index 743f67faf9..1cd67a1327 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-45.0.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-45.0.4.ebuild @@ -68,7 +68,7 @@ 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" +KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" RDEPEND=" >=dev-libs/openssl-1.0.2o-r6:0= diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-45.0.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-45.0.5.ebuild new file mode 100644 index 0000000000..c157835b21 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/cryptography/cryptography-45.0.5.ebuild @@ -0,0 +1,133 @@ +# 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/cython/cython-3.1.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.1.2.ebuild index 2ac21dd68b..24a437ad5c 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.1.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.1.2.ebuild @@ -21,7 +21,7 @@ HOMEPAGE=" LICENSE="Apache-2.0" 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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE="test test-full" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/dev-python/msgpack/msgpack-1.1.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/msgpack/msgpack-1.1.1.ebuild index cb46b90a79..4c92056f0d 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/msgpack/msgpack-1.1.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/msgpack/msgpack-1.1.1.ebuild @@ -18,7 +18,7 @@ HOMEPAGE=" LICENSE="Apache-2.0" 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="+native-extensions" # extension code is relying on CPython implementation details diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pillow/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/pillow/Manifest index 2b8cc0a12e..e97fcd4b06 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/pillow/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/pillow/Manifest @@ -1,5 +1,7 @@ DIST pillow-11.1.0.gh.tar.gz 46815201 BLAKE2B 7990683c90359e0a72e17a13e1a29455bc3ace8ce3616d6af59360edfc1ac87541bd1fd6967160bd8d7dd25cfedfc9d2e9b058c3ed433a6208379834f15bc312 SHA512 bb0622fae0b9c3903ddd945dced8e2b94348b2bd06c14bc74da00d8aa3a795aab2daaff39ca6c40b712dcce4f10218cd30739f0eb616c9dfbc16efcf80886f1e DIST pillow-11.2.0.gh.tar.gz 47097571 BLAKE2B d59e87e7249e7a2b64dd420702d08f6da1d29d91fd32d7043eacac7c5cf33e4cef6d378545454bcb460ea1ae49052e2e684335966e00f6003e018e9241ad50eb SHA512 4ab01472accb056ef48feab6c945a3792b622053c1dc166daf0095597a2df846562ae5ee56e66e595d65e76e7b7bfaf3d5b0cf7847777603a1abdc7af135ec44 DIST pillow-11.2.1.gh.tar.gz 47086538 BLAKE2B 306c3f4292681caea75835dc972229854e12260190f7e7b63ad5292091fcbb28a16fe102c9b2359fe72b99ad97821fa37715f5934bfe79a983efa81b07abf2a4 SHA512 4b5eee712b6cedf175e251ca29bb6e6dda27491585d343ef71ed416819e91510c4add6be50fe1151ab5f178f4686968de111beff4143a978b7a32519293a5725 +DIST pillow-11.3.0.gh.tar.gz 47173056 BLAKE2B 1260c7025e6013c50782024756a0c891d3735bd7d4c1c9d0a89d9eb1c94bd2f762369086f7269d487100e8a0e2678a73012bf29172697c1a1a18e58f9019a9bd SHA512 7d97e623bd41da94dd89a66dc600cea016d0a4f33fbf036175768ea96b2031c1968acf4fc3d9b2835ce93f9533838a9ce68a6579a7397f4aeccafb6032adb3db +DIST pillow-test-images-7077675d2cda485d63de4aefe0fefbf6f655c5a0.gh.tar.gz 57430276 BLAKE2B 6e8dcde60832004f5a0ea0e14024fdcd0b08cf0e225f27e39b7c2058582d6d5efe7fcaccb5bd28754affa6fe4125735fb4beeaa2075e6aceea0a998ebc0747fe SHA512 795f015c9b73a8c941fb5cd880b1ab36b24d38612db53367ab0e6c05dd1cdbfd47034decb7e36d7de940eeea1582d644ca7bee3b131577578692569c2c60c32b DIST pillow-test-images-716bdc4adaf97601e5b9a31c9be25f8975381ee1.gh.tar.gz 57416881 BLAKE2B 8ea5fff2231567f957fc911120c1b50610722477da99559639317e4513e4bc4e73b8b49368a6d95c6938333f0c48db7672c3713eaef70494f7896dadd07cc42d SHA512 b00009be0f5ca85ec0c761fa780f0e650c1877b456b9a9426a4d2300a0c5654358495299e129ded411fccb641e4add7e460bcb3ca7be055f3b207407ccefb33c DIST pythoncapi_compat.h 61109 BLAKE2B 9b8d9f774a6803dee73aedc5465519f2956c284bf70314f5e046d0d5522a10891bf55358a85fea5a156d4063736424c0f019bc71dd18592bbf56c364db7b6bce SHA512 d0ca43186fdc3cd8d0e993135b50fc86eeea05e8b84cba529d89f60ce28bc9502f8d3825eb508be5d68d1fbfc53423a69756c0e79fe0fe7adf94c602b1cf79ff diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pillow/pillow-11.3.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pillow/pillow-11.3.0.ebuild new file mode 100644 index 0000000000..4350e2bd15 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/pillow/pillow-11.3.0.ebuild @@ -0,0 +1,168 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +# setuptools wrapper +DISTUTILS_USE_PEP517=standalone +PYTHON_COMPAT=( python3_{11..14} pypy3_11 ) +PYTHON_REQ_USE='tk?,threads(+)' + +inherit distutils-r1 toolchain-funcs virtualx + +MY_PN=Pillow +MY_P=${MY_PN}-${PV} + +# upstream always fetches from main +TEST_IMAGE_COMMIT="7077675d2cda485d63de4aefe0fefbf6f655c5a0" + +DESCRIPTION="Python Imaging Library (fork)" +HOMEPAGE=" + https://python-pillow.org/ + https://github.com/python-pillow/Pillow/ + https://pypi.org/project/pillow/ +" +SRC_URI=" + https://github.com/python-pillow/Pillow/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz + test? ( + https://github.com/python-pillow/test-images/archive/${TEST_IMAGE_COMMIT}.tar.gz + -> pillow-test-images-${TEST_IMAGE_COMMIT}.gh.tar.gz + ) +" +S=${WORKDIR}/${MY_P} + +LICENSE="HPND" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos" +IUSE="avif examples imagequant +jpeg jpeg2k lcms test tiff tk truetype webp xcb zlib" +REQUIRED_USE="test? ( jpeg jpeg2k lcms tiff truetype )" +RESTRICT="!test? ( test )" + +DEPEND=" + avif? ( media-libs/libavif:= ) + imagequant? ( media-gfx/libimagequant:= ) + jpeg? ( media-libs/libjpeg-turbo:= ) + jpeg2k? ( media-libs/openjpeg:2= ) + lcms? ( media-libs/lcms:2= ) + tiff? ( media-libs/tiff:=[jpeg,zlib] ) + truetype? ( + media-libs/freetype:2= + media-libs/harfbuzz:= + ) + webp? ( media-libs/libwebp:= ) + xcb? ( x11-libs/libxcb ) + zlib? ( sys-libs/zlib:= ) +" +RDEPEND=" + ${DEPEND} + dev-python/olefile[${PYTHON_USEDEP}] +" +BDEPEND=" + >=dev-python/setuptools-77[${PYTHON_USEDEP}] + dev-python/wheel[${PYTHON_USEDEP}] + virtual/pkgconfig + test? ( + dev-python/defusedxml[${PYTHON_USEDEP}] + dev-python/packaging[${PYTHON_USEDEP}] + || ( + media-gfx/imagemagick[png] + media-gfx/graphicsmagick[png] + ) + ) +" + +EPYTEST_PLUGINS=( pytest-timeout ) +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + local PATCHES=( + # https://github.com/python-pillow/pillow/pull/7634 + "${FILESDIR}/${PN}-10.2.0-cross.patch" + ) + + distutils-r1_src_prepare + + if use test; then + mv "${WORKDIR}/test-images-${TEST_IMAGE_COMMIT}"/* \ + Tests/images || die + fi +} + +usepil() { + usex "${1}" enable disable +} + +python_configure_all() { + cat >> setup.cfg <<-EOF || die + [build_ext] + debug = True + disable_platform_guessing = True + $(usepil avif)_avif = True + $(usepil truetype)_freetype = True + $(usepil jpeg)_jpeg = True + $(usepil jpeg2k)_jpeg2000 = True + $(usepil lcms)_lcms = True + $(usepil tiff)_tiff = True + $(usepil imagequant)_imagequant = True + $(usepil webp)_webp = True + $(usepil xcb)_xcb = True + $(usepil zlib)_zlib = True + EOF + if use truetype; then + # these dependencies are implicitly disabled by USE=-truetype + # and we can't pass both disable_* and vendor_* + # https://bugs.gentoo.org/935124 + cat >> setup.cfg <<-EOF || die + vendor_raqm = False + vendor_fribidi = False + EOF + fi + + tc-export PKG_CONFIG +} + +src_test() { + virtx distutils-r1_src_test +} + +python_test() { + local EPYTEST_DESELECT=( + # TODO (is clipboard unreliable in Xvfb?) + Tests/test_imagegrab.py::TestImageGrab::test_grabclipboard + # requires xz-utils[extra-filters]? + Tests/test_file_libtiff.py::TestFileLibTiff::test_lzma + ) + + case ${ARCH} in + ppc) + EPYTEST_DESELECT+=( + # https://github.com/python-pillow/Pillow/issues/7008 + # (we've reverted the upstream patch because it was worse + # than the original issue) + Tests/test_file_libtiff.py::TestFileLibTiff::test_exif_ifd + ) + ;; + esac + + "${EPYTHON}" selftest.py --installed || die "selftest failed with ${EPYTHON}" + # leak tests are fragile and broken under xdist + # nonfatal implied by xvfb + nonfatal epytest -k "not leak" || die "Tests failed with ${EPYTHON}" +} + +python_install() { + python_doheader src/libImaging/*.h + distutils-r1_python_install +} + +python_install_all() { + if use examples ; then + docinto example + dodoc docs/example/* + docompress -x /usr/share/doc/${PF}/example + fi + distutils-r1_python_install_all +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pip/pip-25.1.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pip/pip-25.1.1.ebuild index b7f8e74be8..21d48cae39 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/pip/pip-25.1.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/pip/pip-25.1.1.ebuild @@ -106,7 +106,13 @@ python_compile_all() { # 'pip completion' command embeds full $0 into completion script, which confuses # 'complete' and causes QA warning when running as "${PYTHON} -m pip". # This trick sets correct $0 while still calling just installed pip. - local pipcmd='import sys; sys.argv[0] = "pip"; __file__ = ""; from pip._internal.cli.main import main; sys.exit(main())' + local pipcmd='if True: + import sys + sys.argv[0] = "pip" + __file__ = "" + from pip._internal.cli.main import main + sys.exit(main()) + ' "${EPYTHON}" -c "${pipcmd}" completion --bash > completion.bash || die "${EPYTHON}" -c "${pipcmd}" completion --zsh > completion.zsh || die } @@ -184,12 +190,12 @@ python_test() { fi local -x PIP_DISABLE_PIP_VERSION_CHECK=1 - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + local EPYTEST_PLUGINS=( pytest-rerunfailures ) local EPYTEST_XDIST=1 # rerunfailures because test suite breaks if packages are installed # in parallel epytest -m "not network" -o tmp_path_retention_policy=all \ - -p rerunfailures --reruns=5 --use-venv + --reruns=5 --use-venv } python_install_all() { diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-80.9.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-80.9.0-r1.ebuild new file mode 100644 index 0000000000..f983770caa --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-80.9.0-r1.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2025 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-collections[${PYTHON_USEDEP}] + >=dev-python/jaraco-functools-4[${PYTHON_USEDEP}] + >=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}] + >=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}] + >=dev-python/packaging-24.2[${PYTHON_USEDEP}] + >=dev-python/platformdirs-4.2.2[${PYTHON_USEDEP}] + >=dev-python/wheel-0.44.0[${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 + ) + + 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/typing-extensions/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/Manifest index 39350d146c..43bba8d045 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/Manifest @@ -1 +1,2 @@ DIST typing_extensions-4.14.0.tar.gz 107423 BLAKE2B dc5035fd1e7029b50ca92f286ca01839e722279e7a0d4325f1217b2546ebb4b01dcba36cb364d50c71f176b9a8ab42b55f29fef87f5856b5d215b39006e35bae SHA512 69cc6588c22744758461bc752ad983111a55e256fbe29250f36077b349b8266b12920897fe70d48d7994db644737dc1e6f74626e22d972aef7a1c3f4204779eb +DIST typing_extensions-4.14.1.tar.gz 107673 BLAKE2B 02f48033a36b66d541f49c3c84a65f6a47bf63a09d23bece262182cb3d9a527dd2eef17ec9c74b33b0cacbd52472eebfb4243a31575ef6c0c2846ae7499fca7c SHA512 9db9e56d321e707562b07d633c1c4bcfe2505947d9d40a3540273e1337619e8573ee014708686fba45d14fac7841ed2cddbe53288d8283a8fcede62a5afe5eee diff --git a/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/typing-extensions-4.14.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/typing-extensions-4.14.1.ebuild new file mode 100644 index 0000000000..edb1594f47 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/typing-extensions-4.14.1.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{11..14} python3_{13,14}t pypy3_11 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Backported and Experimental Type Hints for Python 3.7+" +HOMEPAGE=" + https://pypi.org/project/typing-extensions/ + https://github.com/python/typing_extensions/ +" + +LICENSE="PSF-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" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + >=dev-python/flit-core-3.11[${PYTHON_USEDEP}] + test? ( + dev-python/test[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests unittest + +python_test() { + cd src || die + eunittest +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/urllib3/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/urllib3/Manifest index ae13fe1ff6..c4a31cd9b8 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/urllib3/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/urllib3/Manifest @@ -1,3 +1,2 @@ DIST hypercorn-d1719f8c1570cbd8e6a3719ffdb14a4d72880abb.gh.tar.gz 156216 BLAKE2B fcb5f49653401e6e4079e1c770d3cd407602d4d6764437b735bd4ec04191dec59cdc930822fa2aff726ee25cddd0f71fd457dedf31026bff1da121d93af8b768 SHA512 62d6787d88a2e716f0ac04fc49f6cdc586e473a660ee754ff66961922ae78bcc75d1f78b091e78557dd60f006e8e480114738c7b4ff71beac804e4fc9603240b -DIST urllib3-2.4.0.tar.gz 390672 BLAKE2B 2c5aa1f5fb210d13cd26b022a4c81b9d1dbe8a8bac26dadcf2b3c1a515df5fc2376b26aedd07badbcd36241920a1de2889c4190f02ceeafdae4732aa83055321 SHA512 d5c5ffc6ace356769f0fa80279ce1f07f3fe5913942acadac93d965612a9225bc3da94f711184ecd5b76bf893a29c7c854903c2c4e4de84edc490e6d72a80693 DIST urllib3-2.5.0.tar.gz 393185 BLAKE2B 3885be1dae81cb63cfd0c52242b8ff342e4fb398816f94b556e929af0328f4063d705f15201005f4247b278420794984277999751170e124c23ac99c6dc881d4 SHA512 f417a2745bc9750da23916690937e5c0dfe0534354f2c1c9f056baf16554a831a28937acca2b1f23941d5b6e87a372f2e074508eaf2c3304fd1014b8afc3295e diff --git a/sdk_container/src/third_party/portage-stable/dev-python/urllib3/urllib3-2.4.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/urllib3/urllib3-2.4.0.ebuild deleted file mode 100644 index 3ff57c7164..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/urllib3/urllib3-2.4.0.ebuild +++ /dev/null @@ -1,99 +0,0 @@ -# Copyright 1999-2025 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=hatchling -PYTHON_TESTED=( python3_{11..14} pypy3_11 ) -PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) -PYTHON_REQ_USE="ssl(+)" - -inherit distutils-r1 pypi - -# The package has a test dependency on their own hypercorn fork. -HYPERCORN_COMMIT=d1719f8c1570cbd8e6a3719ffdb14a4d72880abb -DESCRIPTION="HTTP library with thread-safe connection pooling, file post, and more" -HOMEPAGE=" - https://github.com/urllib3/urllib3/ - https://pypi.org/project/urllib3/ -" -SRC_URI+=" - test? ( - https://github.com/urllib3/hypercorn/archive/${HYPERCORN_COMMIT}.tar.gz - -> hypercorn-${HYPERCORN_COMMIT}.gh.tar.gz - ) -" - -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="brotli http2 test zstd" -RESTRICT="!test? ( test )" - -# [secure] extra is deprecated and slated for removal, we don't need it: -# https://github.com/urllib3/urllib3/issues/2680 -RDEPEND=" - >=dev-python/pysocks-1.5.8[${PYTHON_USEDEP}] - =dev-python/brotlicffi-0.8.0[${PYTHON_USEDEP}] ) - http2? ( - =dev-python/h2-4[${PYTHON_USEDEP}] - ) - zstd? ( >=dev-python/zstandard-0.18.0[${PYTHON_USEDEP}] ) -" -BDEPEND=" - dev-python/hatch-vcs[${PYTHON_USEDEP}] - test? ( - $(python_gen_cond_dep " - ${RDEPEND} - dev-python/brotlicffi[\${PYTHON_USEDEP}] - dev-python/freezegun[\${PYTHON_USEDEP}] - dev-python/h2[\${PYTHON_USEDEP}] - dev-python/httpx[\${PYTHON_USEDEP}] - dev-python/pytest[\${PYTHON_USEDEP}] - dev-python/pytest-rerunfailures[\${PYTHON_USEDEP}] - dev-python/pytest-timeout[\${PYTHON_USEDEP}] - dev-python/pytest-xdist[\${PYTHON_USEDEP}] - dev-python/quart[\${PYTHON_USEDEP}] - dev-python/quart-trio[\${PYTHON_USEDEP}] - dev-python/trio[\${PYTHON_USEDEP}] - >=dev-python/tornado-4.2.1[\${PYTHON_USEDEP}] - >=dev-python/trustme-0.5.3[\${PYTHON_USEDEP}] - >=dev-python/zstandard-0.18.0[\${PYTHON_USEDEP}] - " "${PYTHON_TESTED[@]}") - ) -" - -src_prepare() { - # upstream considers 0.5 s to be "long" for a timeout - # we get tons of test failures on *fast* systems because of that - sed -i -e '/LONG_TIMEOUT/s:0.5:5:' test/__init__.py || die - distutils-r1_src_prepare -} - -python_test() { - local -x PYTHONPATH=${WORKDIR}/hypercorn-${HYPERCORN_COMMIT}/src - local -x CI=1 - if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then - einfo "Skipping tests on ${EPYTHON}" - return - fi - - local EPYTEST_DESELECT=( - # TODO: timeouts - test/contrib/test_pyopenssl.py::TestSocketClosing::test_timeout_errors_cause_retries - test/with_dummyserver/test_socketlevel.py::TestSocketClosing::test_timeout_errors_cause_retries - # TODO - test/contrib/test_pyopenssl.py::TestSocketClosing::test_socket_shutdown_stops_recv - test/with_dummyserver/test_socketlevel.py::TestSocketClosing::test_socket_shutdown_stops_recv - # hangs randomly - test/contrib/test_pyopenssl.py::TestHTTPS_TLSv1_{2,3}::test_http2_probe_blocked_per_thread - test/with_dummyserver/test_https.py::TestHTTPS_TLSv1_{2,3}::test_http2_probe_blocked_per_thread - ) - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - local EPYTEST_XDIST=1 - epytest -p timeout -p rerunfailures --reruns=10 --reruns-delay=2 -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/urllib3/urllib3-2.5.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/urllib3/urllib3-2.5.0.ebuild index bb27fdaec9..3ff57c7164 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/urllib3/urllib3-2.5.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/urllib3/urllib3-2.5.0.ebuild @@ -27,7 +27,7 @@ SRC_URI+=" 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="brotli http2 test zstd" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.45.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.45.1.ebuild index 7fa0a7ca64..85ebbcc343 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.45.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.45.1.ebuild @@ -28,6 +28,9 @@ BDEPEND=" ) " +# xdist is slightly flaky here +EPYTEST_PLUGINS=( pytest-rerunfailures ) +EPYTEST_XDIST=1 distutils_enable_tests pytest src_prepare() { @@ -57,6 +60,5 @@ python_test() { tests/test_bdist_wheel.py::test_licenses_override ) - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest + epytest --reruns=5 } diff --git a/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.84.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.84.3.ebuild index 8c51c5e119..8f3eccbfad 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.84.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.84.3.ebuild @@ -17,7 +17,7 @@ S="${WORKDIR}/glib-${PV}/gio/gdbus-2.0/codegen" LICENSE="LGPL-2+" SLOT="0" -KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos" RDEPEND=" ${PYTHON_DEPS} diff --git a/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.84.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.84.3.ebuild index de0e2333ec..f2c2aa1bf0 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.84.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.84.3.ebuild @@ -14,7 +14,7 @@ LICENSE="LGPL-2.1+" SLOT="0" # /usr/bin utilities that can't be parallel installed by their nature REQUIRED_USE="${PYTHON_REQUIRED_USE}" -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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" RDEPEND="${PYTHON_DEPS}" DEPEND="${RDEPEND}" 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 aec4fed1de..7867e99d52 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 @@ -3,7 +3,7 @@ EAPI=8 -PYTHON_COMPAT=( python3_{10..13} ) +PYTHON_COMPAT=( python3_{11..13} ) inherit cmake python-single-r1 MY_PN=dwarves @@ -30,7 +30,7 @@ else fi S="${WORKDIR}"/${MY_P} BDEPEND="verify-sig? ( sec-keys/openpgp-keys-arnaldocarvalhodemelo )" - 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 LICENSE="GPL-2" # only diff --git a/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.14.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.14.ebuild index 58aa1617e7..5c0ba7afde 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.14.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.14.ebuild @@ -8,7 +8,7 @@ PYTHON_COMPAT=( python3_{10..13} python3_13t) 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://perf.wiki.kernel.org/" +HOMEPAGE="https://perfwiki.github.io/main/" LINUX_V="${PV:0:1}.x" if [[ ${PV} == *_rc* ]] ; then diff --git a/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.15.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.15.ebuild index 6ca04f5fbb..7f0ba7a9ef 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.15.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.15.ebuild @@ -8,7 +8,7 @@ PYTHON_COMPAT=( python3_{10..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://perf.wiki.kernel.org/" +HOMEPAGE="https://perfwiki.github.io/main/" LINUX_V="${PV:0:1}.x" if [[ ${PV} == *_rc* ]] ; then diff --git a/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.7.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.7.ebuild index 7ddda6cf41..cc108b97af 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.7.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.7.ebuild @@ -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 EAPI=8 @@ -7,7 +7,7 @@ PYTHON_COMPAT=( python3_{10..12} ) inherit bash-completion-r1 estack flag-o-matic linux-info llvm toolchain-funcs python-r1 DESCRIPTION="Userland tools for Linux Performance Counters" -HOMEPAGE="https://perf.wiki.kernel.org/" +HOMEPAGE="https://perfwiki.github.io/main/" LINUX_V="${PV:0:1}.x" if [[ ${PV} == *_rc* ]] ; then diff --git a/sdk_container/src/third_party/portage-stable/dev-util/pkgcheck/pkgcheck-0.10.36.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/pkgcheck/pkgcheck-0.10.36.ebuild index 512571dac3..dedc375e9b 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/pkgcheck/pkgcheck-0.10.36.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/pkgcheck/pkgcheck-0.10.36.ebuild @@ -61,6 +61,13 @@ distutils_enable_tests pytest export USE_SYSTEM_TREE_SITTER_BASH=1 +src_prepare() { + distutils-r1_src_prepare + + # unpin dependencies + sed -i -e 's:~=:>=:' pyproject.toml || die +} + src_compile() { distutils-r1_src_compile diff --git a/sdk_container/src/third_party/portage-stable/dev-util/pkgcheck/pkgcheck-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/pkgcheck/pkgcheck-9999.ebuild index 3ee623f65a..8a8dae53df 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/pkgcheck/pkgcheck-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/pkgcheck/pkgcheck-9999.ebuild @@ -60,6 +60,13 @@ distutils_enable_tests pytest export USE_SYSTEM_TREE_SITTER_BASH=1 +src_prepare() { + distutils-r1_src_prepare + + # unpin dependencies + sed -i -e 's:~=:>=:' pyproject.toml || die +} + src_compile() { distutils-r1_src_compile diff --git a/sdk_container/src/third_party/portage-stable/eclass/dot-a.eclass b/sdk_container/src/third_party/portage-stable/eclass/dot-a.eclass index ffd34d9e08..8d866e6ded 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/dot-a.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/dot-a.eclass @@ -50,6 +50,12 @@ _DOT_A_ECLASS=1 inherit flag-o-matic toolchain-funcs +# @VARIABLE: _DOT_A_IS_LTO +# @INTERNAL +# @DESCRIPTION: +# Records the state of tc-is-lto across eclass function calls. +_DOT_A_IS_LTO=0 + # TODO: QA check # @FUNCTION: lto-guarantee-fat @@ -59,6 +65,7 @@ inherit flag-o-matic toolchain-funcs lto-guarantee-fat() { tc-is-lto || return + _DOT_A_IS_LTO=1 # We add this for all languages as LTO obviously can't be done # if different compilers are used for e.g. C vs C++ anyway. append-flags $(test-flags-CC -ffat-lto-objects) @@ -73,7 +80,9 @@ lto-guarantee-fat() { # As an optimisation, if USE=static-libs exists for a package and is disabled, # the default-searching behaviour with no arguments is suppressed. strip-lto-bytecode() { - tc-is-lto || return + if [[ ${_DOT_A_IS_LTO} != 1 ]] && ! tc-is-lto; then + return + fi local files=() 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 f22854c646..1c9abe1280 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 @@ -636,6 +636,11 @@ _test-flag-PROG() { cmdline_extra+=(-xc) ;; + hip) + in_ext='hip' + in_src='int main(void) { return 0; }' + cmdline_extra+=(-xhip -c) + ;; esac local test_in=${T}/test-flag.${in_ext} local test_out=${T}/test-flag.exe @@ -707,6 +712,12 @@ test-flag-FC() { _test-flag-PROG FC f95 "$@"; } # Returns shell true if is supported by the C compiler and linker, else returns shell false. test-flag-CCLD() { _test-flag-PROG CC c+ld "$@"; } +# @FUNCTION: test-flag-HIPCXX +# @USAGE: +# @DESCRIPTION: +# Returns shell true if is supported by the HIP compiler, else returns shell false. +test-flag-HIPCXX() { _test-flag-PROG HIPCXX hip "$@"; } + # @FUNCTION: test-flags-PROG # @USAGE: [more flags...] # @INTERNAL @@ -788,6 +799,12 @@ test-flags-FC() { _test-flags-PROG FC "$@"; } # Returns shell true if are supported by the C compiler and default linker, else returns shell false. test-flags-CCLD() { _test-flags-PROG CCLD "$@"; } +# @FUNCTION: test-flags-HIPCXX +# @USAGE: +# @DESCRIPTION: +# Returns shell true if are supported by the HIP compiler and default linker, else returns shell false. +test-flags-HIPCXX() { _test-flags-PROG HIPCXX "$@"; } + # @FUNCTION: test-flags # @USAGE: # @DESCRIPTION: @@ -810,7 +827,7 @@ test_version_info() { # @FUNCTION: strip-unsupported-flags # @DESCRIPTION: -# Strip {C,CXX,F,FC}FLAGS of any flags not supported by the active toolchain. +# Strip {C,CXX,F,FC,HIP}FLAGS of any flags not supported by the active toolchain. strip-unsupported-flags() { [[ $# -ne 0 ]] && die "strip-unsupported-flags takes no arguments" export CFLAGS=$(test-flags-CC ${CFLAGS}) @@ -818,6 +835,7 @@ strip-unsupported-flags() { export FFLAGS=$(test-flags-F77 ${FFLAGS}) export FCFLAGS=$(test-flags-FC ${FCFLAGS}) export LDFLAGS=$(test-flags-CCLD ${LDFLAGS}) + export HIPFLAGS=$(test-flags-HIPCXX ${HIPFLAGS}) } # @FUNCTION: get-flag @@ -1008,6 +1026,12 @@ test-compile() { args+=(${FCFLAGS[@]} ${LDFLAGS[@]} -xf95) libs+=(${LIBS[@]}) ;; + hip) + compiler="$(tc-getHIPCXX)" + filename_in="${T}/test.hip" + filename_out="${T}/test.o" + args+=(${CFLAGS[@]} -xhip -c) + ;; *) die "Unknown compiled language ${lang}" ;; 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 baf032bbd4..1f3f958bad 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 @@ -73,6 +73,10 @@ tc-getCPP() { tc-getPROG CPP "${CC:-gcc} -E" "$@"; } # @USAGE: [toolchain prefix] # @RETURN: name of the C++ compiler tc-getCXX() { tc-getPROG CXX g++ "$@"; } +# @FUNCTION: tc-getHIPCXX +# @USAGE: [toolchain prefix] +# @RETURN: name of the HIP compiler +tc-getHIPCXX() { tc-getPROG HIPCXX "$(hipconfig --hipclangpath)/clang++" "$@"; } # @FUNCTION: tc-getLD # @USAGE: [toolchain prefix] # @RETURN: name of the linker 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 12b689f0f4..1cd3e1010a 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 @@ -412,7 +412,7 @@ verify-sig_verify_signed_checksums() { case ${VERIFY_SIG_METHOD} in openpgp) _gpg_verify_signed_checksums \ - "${checksum_file}" "${algo}" "${files[@]}" "${key}" + "${checksum_file}" "${algo}" "${files[*]}" "${key}" ;; signify) signify -C -p "${key}" \ diff --git a/sdk_container/src/third_party/portage-stable/licenses/GPL-2+-with-font-exception b/sdk_container/src/third_party/portage-stable/licenses/GPL-2+-with-font-exception new file mode 100644 index 0000000000..1a6d0435af --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/licenses/GPL-2+-with-font-exception @@ -0,0 +1,12 @@ +GNU General Public License, version 2 or any later version. +See GPL-2 or GPL-3 for the full text of these licenses. + +As a special exception, if you create a document which uses this font, +and embed this font or unaltered portions of this font into the +document, this font does not by itself cause the resulting document to +be covered by the GNU General Public License. This exception does not +however invalidate any other reasons why the document might be covered +by the GNU General Public License. If you modify this font, you may +extend this exception to your version of the font, but you are not +obligated to do so. If you do not wish to do so, delete this exception +statement from your version. 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 985c357c9c..5b0b3e9024 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 @@ -2,4 +2,6 @@ DIST libpng-1.6.47-libpng-apng-apng.patch.gz 10697 BLAKE2B eadf410ea5ef073e444dd DIST libpng-1.6.47.tar.xz 1054664 BLAKE2B 3dafe005931cd5b7709278f8d1961250c1d80ade4e73b568a211b409e7cac44f42692c6501851620ccd549d5c466b697dc6bbecf56e969e00b54c22a7cde0d72 SHA512 932578dedd7916e2c502d8d11eef845e15733e84062510ba246b027d5467efe786725ff3dd22b9a33ff6a052c8dab3da3b45cb737a00caed43b6598c2bd8122b DIST libpng-1.6.48.tar.xz 1054968 BLAKE2B 2aec3b237d8cf2109186518a1604d9d10e0ef6739730988e01b91f20d48dcd736a293d3c96bed719807778a68273d1bf5cc2467fc19852dbfffd39295fcbf515 SHA512 aae6cdd7d55d78aea820165493e31ea7c0de8b2272b709d334dfe7bac96e24099330f0e9049062fde34b6ea926af50987c390dab1b91bdfe3586b2ee4aed8b33 DIST libpng-1.6.49-apng-apng.patch.gz 10354 BLAKE2B b829da1c8a19e00d9b60e1ac2ab636134b8972f28c06ee9e2ff15ae90ee48d10a89b47e8589c9c9b6527d5cfa4541d12b8e51755505001272eadea104f92226f SHA512 cf0641f4cccf58b1a5ed3ea4046d7279d71308b4ce639cf4bf7439af5ecdb32e5698f54ad2c80a375c714c077a6b4dcdeaf41399766952752ad743600c6bcd48 +DIST libpng-1.6.49-libpng-apng-apng.patch.gz 10676 BLAKE2B a726acae0da7905c5f1c59e42bcef8c3b46c545bf4955e0c40a21f0ed928b43af47e3dd6a771a3fb954fb6172218bec0472c62f591b4c470fc14a99a873645d3 SHA512 d3a7121f892049f5488f32b5de29fb8892f2b329ee1df956b129918601946ab86a542a4412587ee5f660c581484812aaf101f953bcc187c993d98ba9d8d63a00 DIST libpng-1.6.49.tar.xz 1060752 BLAKE2B 2f09651a7c022d270ca90de2cb235c88ac9cec232b42cb72cfa9f1b8962cb2146d248348a12f5fd26b7fff78d5eb7a0f76b3457ede7df34fd30575b6781ad30f SHA512 c40e605c50f632b55809199cba40041b46b5b2ff37659e17dcd5ffe457d926532f3469151f99ad7aab898ef5bedf08ed134a0a4e7d00ac1e9c8cebe5b5eef9bc +DIST libpng-1.6.50.tar.xz 1060992 BLAKE2B 2191536b4448d3a058b9dbb31f3d780959c9daf7b104550cc89e8ae984a3c9f01b86bf6c6708983989b4bfbe7232e3716b8a3b8cd3313a12c31e0623b6241d11 SHA512 05adc94ef532bbddaae46e087088a23236e6528fd3fc705c8edfb5ff293983b790d4361d6b20c20df73632a9fbe55d2f394296385cd8efd646f58393ff21257d diff --git a/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.50-r1.ebuild b/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.50-r1.ebuild new file mode 100644 index 0000000000..c99936a12c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.50-r1.ebuild @@ -0,0 +1,78 @@ +# Copyright 1999-2025 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.49" +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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="apng cpu_flags_x86_sse static-libs test" +RESTRICT="!test? ( test )" + +RDEPEND=">=sys-libs/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/net-dns/bind/bind-9.18.37-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-dns/bind/bind-9.18.37-r1.ebuild index c5dd842ede..04370951b5 100644 --- a/sdk_container/src/third_party/portage-stable/net-dns/bind/bind-9.18.37-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-dns/bind/bind-9.18.37-r1.ebuild @@ -15,7 +15,7 @@ S="${WORKDIR}/${PN}-${MY_PV}" LICENSE="MPL-2.0" SLOT="0" -KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" IUSE="+caps dnstap doc doh fixed-rrset idn jemalloc geoip gssapi lmdb selinux static-libs test xml" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.34.4.ebuild b/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.34.4.ebuild index f5bf9a5624..7ae948ac11 100644 --- a/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.34.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.34.4.ebuild @@ -5,7 +5,7 @@ EAPI=8 # Both Daniel and Brad are listed as possible signers on the homepage VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradhouse.asc -inherit edo flag-o-matic multilib-minimal verify-sig +inherit edo flag-o-matic libtool multilib-minimal verify-sig DESCRIPTION="C library that resolves names asynchronously" HOMEPAGE="https://c-ares.org/" @@ -50,6 +50,7 @@ A__QA_CONFIG_IMPL_DECL_SKIP=( src_prepare() { default + elibtoolize if [[ ${CHOST} == *-darwin* ]] ; then # warnings are default, but enable -std=c90 which doesn't define diff --git a/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.34.5.ebuild b/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.34.5.ebuild index c2639589bb..5beae570fa 100644 --- a/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.34.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.34.5.ebuild @@ -5,7 +5,7 @@ EAPI=8 # Both Daniel and Brad are listed as possible signers on the homepage VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradhouse.asc -inherit edo flag-o-matic multilib-minimal verify-sig +inherit edo flag-o-matic libtool multilib-minimal verify-sig DESCRIPTION="C library that resolves names asynchronously" HOMEPAGE="https://c-ares.org/" @@ -50,6 +50,7 @@ A__QA_CONFIG_IMPL_DECL_SKIP=( src_prepare() { default + elibtoolize if [[ ${CHOST} == *-darwin* ]] ; then # warnings are default, but enable -std=c90 which doesn't define diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/ipset/ipset-7.24.ebuild b/sdk_container/src/third_party/portage-stable/net-firewall/ipset/ipset-7.24.ebuild index 28906ea04f..a3d2d9d3a8 100644 --- a/sdk_container/src/third_party/portage-stable/net-firewall/ipset/ipset-7.24.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-firewall/ipset/ipset-7.24.ebuild @@ -12,7 +12,7 @@ SRC_URI="https://ipset.netfilter.org/${P}.tar.bz2" LICENSE="GPL-2" SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ~loong ppc ppc64 ~riscv x86" +KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv x86" RDEPEND=" net-firewall/iptables diff --git a/sdk_container/src/third_party/portage-stable/net-libs/libnftnl/libnftnl-1.2.9.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/libnftnl/libnftnl-1.2.9.ebuild index c50e71f56c..d2bb3d6358 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/libnftnl/libnftnl-1.2.9.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-libs/libnftnl/libnftnl-1.2.9.ebuild @@ -18,7 +18,7 @@ else https://netfilter.org/projects/${PN}/files/${P}.tar.xz verify-sig? ( https://netfilter.org/projects/${PN}/files/${P}.tar.xz.sig ) " - 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" BDEPEND+="verify-sig? ( >=sec-keys/openpgp-keys-netfilter-20240415 )" fi diff --git a/sdk_container/src/third_party/portage-stable/net-libs/rpcsvc-proto/rpcsvc-proto-1.4.4-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/rpcsvc-proto/rpcsvc-proto-1.4.4-r1.ebuild index 7f825b44e1..ba9772d51b 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/rpcsvc-proto/rpcsvc-proto-1.4.4-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-libs/rpcsvc-proto/rpcsvc-proto-1.4.4-r1.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/thkukuk/rpcsvc-proto/releases/download/v${PV}/${P}.t LICENSE="LGPL-2.1+ BSD" 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=" ! (2025-06-28) +# dev-db/mariadb is not keyworded +dev-db/mariadb-connector-c test +dev-perl/DBD-mysql test +dev-perl/DBD-MariaDB test + # Sam James (2025-06-07) # Needs dev-python/matplotlib dev-python/mpmath test-full 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 b449f5b19f..4c99f63446 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 # Distributed under the terms of the GNU General Public License v2 +# Alfredo Tupone (2025-07-02) +# sci-ml/pytorch is not keyworded here +sci-ml/huggingface_hub test + # Eray Aslan (2025-05-08) # dev-db/tinycdb is not keyworded here net-mail/dovecot cdb 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 e41322e9d9..ca9699a9db 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 @@ -43,6 +43,10 @@ media-libs/zxing-cpp experimental # dev-cpp/prometheus-cpp is not keyworded dev-cpp/opentelemetry-cpp prometheus +# Zurab Kvachadze (2025-02-18) +# www-servers/uwsgi, required for tests, is not keyworded on ppc64. +www-servers/nginx test + # Michał Górny (2024-12-24) # OpenMP offloading is supported on 64-bit architectures only. llvm-core/clang-runtime -offload diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/riscv/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/riscv/package.use.mask index 9a41debc65..744b729ab8 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/riscv/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/riscv/package.use.mask @@ -25,6 +25,10 @@ dev-ml/yojson test # media-libs/libyuv is not keyworded media-libs/libavif libyuv +# Zurab Kvachadze (2025-02-18) +# www-servers/uwsgi, required for tests, is not keyworded on riscv. +www-servers/nginx test + # Alexey Shvetsov (2024-11-21) # sci-ml/caffe2 is not keyworded on riscv sci-chemistry/gromacs nnpot 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 67f29ae842..65f9ce45da 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 @@ -668,7 +668,8 @@ net-misc/networkmanager wext # Marius Brehler (2015-08-13) # missing keyword ->=sci-misc/boinc-7.4.42-r1 X +=sci-misc/boinc-8.0.2 gui # Pacho Ramos (2015-06-13) # Missing keywords, bug #513108 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 8bb729bf5a..55438d83fb 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,6 +1,11 @@ # Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Robin H. Johnson (2025-07-04) +# Deeper test dependencies with Ruby 3.3 are no longer yet keyworded keyword; +# manually tested instead; Test dependencies work with stable Ruby 3.2. +dev-ruby/facter test + # Mike Gilbert (2025-06-18) # media-libs/libsdl3 is missing keywords. >=net-misc/freerdp-3.16.0 sdl 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 047400302b..8ffe7de57a 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 @@ -164,7 +164,7 @@ POSTGRES_TARGETS="postgres17" # Moreover, it should only contain targets that have a stable version # of PHP, to avoid pulling in an unstable PHP on stable systems. # -PHP_TARGETS="php8-2" +PHP_TARGETS="php8-3" # Sam James (2025-02-19) # diff --git a/sdk_container/src/third_party/portage-stable/profiles/base/use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/base/use.stable.mask index 80663b9d24..ad77e0d837 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/base/use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/base/use.stable.mask @@ -29,5 +29,4 @@ python_single_target_pypy3_11 # Michael Orlitzky (2023-12-05) # New unstable PHP slots. -php_targets_php8-3 php_targets_php8-4 diff --git a/sdk_container/src/third_party/portage-stable/profiles/categories b/sdk_container/src/third_party/portage-stable/profiles/categories index 40dc2fa551..0b6d868594 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/categories +++ b/sdk_container/src/third_party/portage-stable/profiles/categories @@ -158,6 +158,7 @@ www-apache www-apps www-client www-misc +www-nginx www-plugins www-servers x11-apps diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/eapi new file mode 100644 index 0000000000..7ed6ff82de --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/hardened/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/hardened/eapi new file mode 100644 index 0000000000..7ed6ff82de --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/hardened/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/hardened/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/hardened/parent new file mode 100644 index 0000000000..e5d746a4ea --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/hardened/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../features/hardened/x86 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/hardened/selinux/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/hardened/selinux/eapi new file mode 100644 index 0000000000..7ed6ff82de --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/hardened/selinux/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/hardened/selinux/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/hardened/selinux/parent new file mode 100644 index 0000000000..23c5fe07a2 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/hardened/selinux/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../../features/selinux diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/make.defaults new file mode 100644 index 0000000000..7e52c5f471 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/make.defaults @@ -0,0 +1,5 @@ +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +CHOST="i486-pc-linux-gnut64" +CHOST_x86="${CHOST}" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/parent new file mode 100644 index 0000000000..1072670e42 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/parent @@ -0,0 +1,2 @@ +.. +../../../../../../features/time64 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/eapi new file mode 100644 index 0000000000..7ed6ff82de --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/hardened/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/hardened/eapi new file mode 100644 index 0000000000..7ed6ff82de --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/hardened/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/hardened/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/hardened/parent new file mode 100644 index 0000000000..e2f1a20d38 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/hardened/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../../features/hardened/x86 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/hardened/selinux/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/hardened/selinux/eapi new file mode 100644 index 0000000000..7ed6ff82de --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/hardened/selinux/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/hardened/selinux/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/hardened/selinux/parent new file mode 100644 index 0000000000..d148b9ae67 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/hardened/selinux/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../../../features/selinux diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/parent new file mode 100644 index 0000000000..d9e9cc8f6c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/split-usr/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../features/split-usr diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/systemd/eapi new file mode 100644 index 0000000000..7ed6ff82de --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/systemd/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/systemd/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/systemd/parent new file mode 100644 index 0000000000..44f88d3e2d --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i486/time64/systemd/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../targets/systemd diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i686/time64/package.accept_keywords b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i686/time64/package.accept_keywords deleted file mode 100644 index 0d0241ad4d..0000000000 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/i686/time64/package.accept_keywords +++ /dev/null @@ -1,10 +0,0 @@ -# Copyright 2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# For better testing of time64, we use gcc-14 here already in an otherwise stable -# environment. -sys-devel/gcc:14 ~x86 - -# We need glibc-2.39-r11 at least so we can handle the compiler that auto-sets _TIME_BITS -# etc -=sys-libs/glibc-2.39* ~x86 diff --git a/sdk_container/src/third_party/portage-stable/profiles/desc/nginx_modules_http.desc b/sdk_container/src/third_party/portage-stable/profiles/desc/nginx_modules_http.desc index dd1d7ea38a..ae7a675159 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/desc/nginx_modules_http.desc +++ b/sdk_container/src/third_party/portage-stable/profiles/desc/nginx_modules_http.desc @@ -1,77 +1,80 @@ -# Copyright 1999-2018 Gentoo Foundation. +# Copyright 1999-2025 Gentoo Authors. # Distributed under the terms of the GNU General Public License v2 # This file contains descriptions of NGINX_MODULES_HTTP USE_EXPAND flags. # Keep it sorted. -access - This module provides a simple host-based access control. -addition - This module adds contents of other locations before and after the current location's content. -auth_basic - This module protects your site or parts of it with username and password based on HTTP Basic Authentication. -auth_ldap - LDAP module for nginx which supports authentication against multiple LDAP servers. -auth_pam - This module provides authentication via PAM. -auth_request - Module implementing client authorization based on the result of a subrequest. -autoindex - This module provides automatic directory listings. -brotli - This module allows for on-the-fly Brotli compression. -browser - This module creates variables, the values of which depend on the request header "User-agent". -cache_purge - External module adding ability to purge content from nginx's FastCGI and proxy caches. -charset - This module can reencode data of one encoding into another. -dav - This module adds the HTTP and WebDAV methods PUT, DELETE, MKCOL, COPY and MOVE. -dav_ext - Add missing WebDAV methods PROPFIND & OPTIONS to the existing WebDAV module. -degradation - Allows to return 204 or 444 code for some locations on low memory condition (reliable on FreeBSD only) -echo - Brings shell-style goodies to Nginx config file. -empty_gif - This module keeps a 1x1 transparent GIF in memory that can be served very quickly. -fancyindex - This module makes possible the generation of file listings, like the built-in autoindex module does, but adding a touch of style. -fastcgi - This module allows Nginx to interact with FastCGI processes and control what parameters are passed to the process. -flv - This module provides the ability to seek within FLV (Flash) files using time-based offsets. -geo - This module creates variables, whose values depend on the IP-address of the client. -geoip - This module creates variables based on the IP-address of the client matched against the MaxMind GeoIP binary files. -geoip2 - This module creates variables based on the IP-address of the client matched against the MaxMind GeoIP2 binary files. -grpc - This module provides gRPC support. -gunzip - Permits to decompress gzip'ed files on-the-fly for clients not supporting the gzip encoding method. -gzip - This module allows for on-the-fly gzip compression. -gzip_static - Before serving a file from disk to a gzip-enabled client, this module will look for a precompressed file in the same location. -headers_more - Set and clear input and output headers -image_filter - This module is a filter for transforming JPEG, GIF and PNG images. -javascript - This module implements location and variable handlers in nginScript. -limit_conn - This module makes it possible to limit the number of simultaneous connections for the assigned session -limit_req - This module allows you to limit the number of requests for a given session. -limit_conn - This module makes it possible to limit the number of simultaneous connections for the assigned session -lua - Embed the power of Lua into nginx -map - This module allows you to classify, or map a set of values into a different set of values and store the result in a variable. -memc - An extended version of the standard memcached module that supports set, add, delete, and many more memcached commands. -memcached - You can use this module to perform simple caching. -metrics - Module to export various metrics in easy-parseable JSON. -mirror - This module implements mirroring of an original request by creating background mirror subrequests. -mogilefs - Enable support for MogileFS. -mp4 - This module adds pseudo-streaming -naxsi - An open source, high performance, low rules maintenance, Web Application Firewall module for Nginx. -perl - This module makes it possible to execute Perl directly within Nginx and call Perl via SSI. -proxy - This module makes it possible to transfer requests to another server. -push_stream - Push Stream module, supporting EventSource, WebSocket, Long Polling, and Forever Iframe. -random_index - Pick a random directory index from a directory. -realip - This module allows to change the client's IP address to value from request header (e. g. X-Real-IP or X-Forwarded-For). -referer - This module makes it possible to block access to the site with the incorrect values of line "Referer" in the request header. -rewrite - This module makes it possible to change URI using regular expressions (PCRE), and to redirect and select configuration depending on variables. -scgi - An implementation of the Simple Common Gateway Interface. -secure_link - This module computes and checks request URLs for a required security token. -security - Web application firewall and Intrusion Detection System. -slice - A filter that splits a request into subrequests, each returning a certain range of response -slowfs_cache - This module adds the ability to cache static files -split_clients - This module provides A/B testing support. -ssi - This module provides a filter which processes Server-Side Includes (SSI) in the input. -spdy - This module provides an SPDY implementation. (Deprecated, use IUSE="http2" instead) -sticky - Module to always forward clients to the same upstream server (via sticky cookies) -stub_status - This module provides the ability to get some status from nginx. -sub - This module can search and replace text in the nginx response. -upload_progress - This module adds the ability to track POST upload progress via JSON API -upstream_check - Add health check support for upstream servers. -upstream_hash - This module provides the ability to distribute upstream requests based on hashed key value. -upstream_ip_hash - This module provides the ability to distribute upstream requests based on the IP-address of the client. -upstream_keepalive - Thiis module provides the ability to cache connections to upstream servers. -upstream_least_conn - This module provides the ability to distribute upstream requests using load balancing methods. -upstream_zone - This module makes it possible to define a shared memory zone that keeps the group's configuration and run-time state that are shared between worker processes. -userid - This module gives out cookies for identification of clients. -uwsgi - External module for the uWSGI protocol for python web apps. -vhost_traffic_status - This module provides access to virtual host status information. -vod - Adds support for video streaming using DASH, HDS, HLS, MSS. -xslt - This module is a filter which converts an XML response with the aid of one or more XSLT templates. +access - Add support for a simple host-based access control +addition - Add support for adding contents of other locations before and after the current location's content +auth_basic - Add support for limiting access to a location by validating the username and password using the HTTP Basic Authentication +auth_ldap - Add support for LDAP authentication module for NGINX +auth_pam - Add support for authentication via PAM +auth_request - Add support for client authorization based on the result of a subrequest +autoindex - Add support for processing requests ending with the slash character ('/') and produciing a directory listing +brotli - Add support for on-the-fly Brotli compression +browser - Add support for creating variables whose values depend on the value of the "User-Agent" request header field +cache_purge - Add support for purging content from NGINX's FastCGI and proxy caches +charset - Add support for adding the specified charset to the "Content-Type" response header field and reencoding singe-byte charsets +dav - Add support for the WebDAV functionality and methods: PUT, DELETE, MKCOL, COPY and MOVE +dav_ext - Add support for the additional WebDAV methods into the existing WebDAV module: PROPFIND & OPTIONS +degradation - Add support for returning 204 or 444 code for some locations on low memory condition (reliable on FreeBSD only) +echo - Add support for shell-style goodies in the NGINX configuration file +empty_gif - Add support for emiting a single-pixel transparent GIF +fancyindex - Add support for the fancy generation of file listings +fastcgi - Add support for passing requests to a FastCGI server +flv - Add support for the server-side pseudo-streaming of Flash Video (FLV) files +geo - Add support for creating variables whose values depend on the client IP-address +geoip - Add support for creating variables whose values depend on the client IP-address, using the precompiled MaxMind databases +geoip2 - Add support for creating variables whose values depend on the client IP-address, using the precompiled MaxMind GeoIP2 databases +grpc - Add support for passing requests to a gRPC server +gunzip - Add support for decompressing responses with "Content-Encoding: gzip" for clients that do not support "gzip" encoding method +gzip - Add support for compressing responses using the "gzip" method +gzip_static - Add support for sending precompressed files with the ".gz" filename extension instead of regular files +headers_more - Add support for setting arbitrary input and output headers +image_filter - Add support for transforming images in JPEG, GIF, PNG, and WebP formats +javascript - Add support for implementing location and variable handlers in njs - a subset of the JavaScript language +limit_conn - Add support for limiting the number of connections per a defined key, e.g. the number of connections from a single IP address +limit_req - Add support for limiting the request processing rate per a defined key, e.g. the processing rate of requests coming from a single IP address +lua - Add support for Lua scripting in NGINX +map - Add support for creating variables whose values depend on values of other variables +memc - Add support for an extended version of the standard memcached module that supports set, add, delete, and many more memcached commands +memcached - Add support for obtaining responses from a memcached server +metrics - Add support for exporting various metrics in an easy-parseable JSON format +mirror - Add support for mirroring of the original request by creating background mirror subrequests +mogilefs - Add support for MogileFS +mp4 - Add support for server-side pseudo-streaming for MP4 files +naxsi - Add support for NAXSI WAF (Web Application Firewall) +perl - Add support for implementing location and variable handlers in Perl and inserting Perl calls into SSI +proxy - Add support for passing subrequests to another server +push_stream - Add support for the stream HTTP push module, which supports EventSource, WebSocket, Long Polling, and Forever Iframe +random_index - Add support for processing requests ending with the slash character ('/') by picking a random file in a directory to serve as an index file +realip - Add support for setting the client address and optional port to those sent in the specified header field (e.g. "X-Real-IP" or "X-Forwarded-For") +referer - Add support for blocking access to a site for requests with invalid values in the "Referer" header field +rewrite - Add support for changing the request URI using PCRE regular expressions, returning redirects, and conditionally selecting configurations +scgi - Add support for passing requests to an SCGI server +secure_link - Add support for checking authenticity of requested links, protecting resources from unauthorized access, and limiting link lifetime +security - Add support for modsecurity: web application firewall and intrusion detection system +slice - Add support for spliting a request into subrequests, each returning a certain range of response +slowfs_cache - Add support for caching static files +spdy - Add support for an SPDY implementation. (Deprecated, use USE="nginx_modules_http_v2" instead) +split_clients - Add support for creating variables suitable for A/B testing, also known as split testing +ssi - Add support for processing SSI (Server Side Includes) commands in responses passing through NGINX +ssl - Add support for HTTPS - SSL/TLS-encrypted HTTP +sticky - Add support for sending a sticky cookie in order to always forward client to the same upstream server +stub_status - Add support for providing access to basic status information +sub - Add support for modifying a response by replacing one specified string by another +upload_progress - Add support for an upload progress system, that monitors RFC1867 POST uploads as they are transmitted to upstream servers +upstream_check - Add support for performing health check of upstream servers +upstream_hash - Add support for distributing upstream requests based on hashed key value +upstream_ip_hash - Add support for distributing upstream requests based on the IP-address of the client +upstream_keepalive - Add support for caching connections to upstream servers +upstream_least_conn - Add support for passing upstream requests to the server with the least number of active connections +upstream_random - Add support for passing upstream requests to a randomly selected server +upstream_zone - Add support for defining a shared memory zone that keeps the group's configuration and run-time state that are shared between worker processes +userid - Add support for setting cookies suitable for client identification +uwsgi - Add support for passing requests to a uwsgi server +vhost_traffic_status - Add support for providing access to virtual host status information +v2 - Add support for HTTP/2 +v3 - Add experimental support for HTTP/3 +vod - Add support for streaming video using DASH, HDS, HLS, MSS +xslt - Add support for transforming XML responses using one or more XSLT stylesheets diff --git a/sdk_container/src/third_party/portage-stable/profiles/desc/nginx_modules_mail.desc b/sdk_container/src/third_party/portage-stable/profiles/desc/nginx_modules_mail.desc index 930f57bc24..7e428689a5 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/desc/nginx_modules_mail.desc +++ b/sdk_container/src/third_party/portage-stable/profiles/desc/nginx_modules_mail.desc @@ -1,9 +1,10 @@ -# Copyright 2010 Gentoo Foundation. +# Copyright 2010-2025 Gentoo Authors. # Distributed under the terms of the GNU General Public License v2 # This file contains descriptions of NGINX_MODULES_MAIL USE_EXPAND flags. # Keep it sorted. -imap - This module provides IMAP proxy capability. -pop3 - This module provides POP3 proxy capability. -smtp - This module provides SMTP proxy capability. +imap - Add support for proxying IMAP messages +pop3 - Add support for proxying POP3 messages +smtp - Add support for proxying SMTP messages +ssl - Add SSL/TLS protocol support to a mail proxy server (implicit TLS, STARTTLS, etc.) diff --git a/sdk_container/src/third_party/portage-stable/profiles/desc/nginx_modules_stream.desc b/sdk_container/src/third_party/portage-stable/profiles/desc/nginx_modules_stream.desc index 8d8e9cb5a5..54c5966498 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/desc/nginx_modules_stream.desc +++ b/sdk_container/src/third_party/portage-stable/profiles/desc/nginx_modules_stream.desc @@ -1,20 +1,24 @@ -# Copyright 1999-2017 Gentoo Foundation. +# Copyright 1999-2025 Gentoo Authors. # Distributed under the terms of the GNU General Public License v2 # This file contains descriptions of NGINX_MODULES_STREAM USE_EXPAND flags. # Keep it sorted. -access - This module allows limiting access to certain client addresses. -geo - This module creates variables, whose values depend on the IP-address of the client. -geoip - This module creates variables based on the IP-address of the client matched against the MaxMind GeoIP binary files. -geoip2 - This module creates variables based on the IP-address of the client matched against the MaxMind GeoIP2 binary files. -javascript - This module implements location and variable handlers in nginScript. -limit_conn - This module is used to limit the number of connections per the defined key. -map - This module allows you to classify, or map a set of values into a different set of values and store the result in a variable. -realip - This module allows to change the client's IP address to value from request header (e. g. X-Real-IP or X-Forwarded-For). -return - This module allows sending a specified value to the client and then closing the connection. -split_clients - This module provides A/B testing support. -ssl_preread - This module allows extracting information from the ClientHello message without terminating SSL/TLS. -upstream_hash - This module provides the ability to distribute upstream requests based on hashed key value. -upstream_least_conn - This module provides the ability to distribute upstream requests using load balancing methods. -upstream_zone - This module makes it possible to define a shared memory zone that keeps the group's configuration and run-time state that are shared between worker processes. +access - Add support for a simple host-based access control +geo - Add support for creating variables whose values depend on the client IP-address +geoip - Add support for creating variables whose values depend on the client IP-address, using the precompiled MaxMind databases +geoip2 - Add support for creating variables whose values depend on the client IP-address, using the precompiled MaxMind GeoIP2 databases +javascript - Add support for implementing location and variable handlers in njs - a subset of the JavaScript language +limit_conn - Add support for limiting the number of connections per a defined key, e.g. the number of connections from a single IP address +map - Add support for creating variables whose values depend on the values of other variables +pass - Add support for passing the accepted connection directly to any configured listening socket in "http", "stream", "mail", and other similar modules +realip - Add support for setting the client address and optional port to those sent in the specified header field (e.g. "X-Real-IP" or "X-Forwarded-For") +return - Add support for sending a specified value to the client and then closing the connection +set - Add support for setting a value for a variable +split_clients - Add support for creating variables suitable for A/B testing, also known as split testing +ssl - Add SSL/TLS protocol support to a stream proxy server +ssl_preread - Add support for extracting information from the ClientHello message without terminating SSL/TLS connection +upstream_hash - Add support for distributing upstream requests based on hashed key value +upstream_least_conn - Add support for passing upstream requests to the server with the least number of active connections +upstream_random - Add support for passing upstream requests to a randomly selected server +upstream_zone - Add support for defining a shared memory zone that keeps the group's configuration and run-time state that are shared between worker processes diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/musl/packages b/sdk_container/src/third_party/portage-stable/profiles/features/musl/packages index 4bbf9c3209..a3dc908787 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/musl/packages +++ b/sdk_container/src/third_party/portage-stable/profiles/features/musl/packages @@ -1,6 +1,9 @@ -# Copyright 1999-2018 Gentoo Foundation. +# Copyright 1999-2025 Gentoo Authors. # Distributed under the terms of the GNU General Public License v2 *app-misc/pax-utils *sys-apps/sandbox -*sys-apps/man-pages + +# Provides the `locale` binary, which is not present in musl itself +*sys-apps/musl-locales diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/time64/package.mask b/sdk_container/src/third_party/portage-stable/profiles/features/time64/package.mask index c4b9df1a1e..aa6a22df68 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/time64/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/time64/package.mask @@ -1,6 +1,36 @@ -# Copyright 2024 Gentoo Authors +# Copyright 2024-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Andreas K. Hüttel (2025-07-06) +# gcc[ada] is not available here yet +dev-ada/ada_language_server +dev-ada/ada_libfswatch +dev-ada/AdaSAT +dev-ada/aunit +dev-ada/aws +dev-ada/gnatcoll-bindings +dev-ada/gnatcoll-core +dev-ada/gnatcoll-db +dev-ada/gnatdoc +dev-ada/gnatformat +dev-ada/gnatmem +dev-ada/gnatsymbolize +dev-ada/gpr +dev-ada/gprbuild +dev-ada/gtkada +dev-ada/lal-refactor +dev-ada/langkit +dev-ada/langkit-contrib +dev-ada/libadalang +dev-ada/libadalang-tools +dev-ada/libgpr +dev-ada/markdown +dev-ada/prettier-ada +dev-ada/spawn +dev-ada/templates-parser +dev-ada/VSS +dev-ada/xmlada + # Michał Górny (2024-11-06) # Old versions of GCC do not support USE=time64, and as such do not # enforce 64-bit time_t as required by this profile. 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 84bcba70f0..c0976a22a5 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/license_groups +++ b/sdk_container/src/third_party/portage-stable/profiles/license_groups @@ -15,7 +15,7 @@ # https://www.gnu.org/licenses/license-list.html # GPL or LGPL with various exceptions are also included here, because # they are more permissive than the licenses they are based on. -GPL-COMPATIBLE AGPL-3 AGPL-3+ Apache-2.0 Apache-2.0-with-LLVM-exceptions Artistic-2 Boost-1.0 BSD BSD-2 CC0-1.0 CeCILL-2 Clarified-Artistic Clear-BSD ECL-2.0 FSFAP FTL gcc-runtime-library-exception-3.1 GPL-1 GPL-1+ GPL-2 GPL-2+ GPL-2+-with-openssl-exception GPL-2+-with-eCos-exception-2 GPL-2-with-classpath-exception GPL-2-with-font-exception GPL-2-with-linking-exception GPL-2-with-MySQL-FLOSS-exception GPL-2+-with-Pyinstaller-Bootloader-exception GPL-3 GPL-3+ GPL-3+-with-autoconf-exception GPL-3+-with-font-exception GPL-3+-with-openssl-exception GPL-3-with-font-exception GPL-3-with-openssl-exception HPND IJG ISC LGPL-2 LGPL-2+ LGPL-2-with-linking-exception LGPL-2.1 LGPL-2.1+ LGPL-2.1-with-linking-exception LGPL-3 LGPL-3+ LGPL-3-with-linking-exception libgcc libstdc++ metapackage MIT MPL-2.0 Nokia-Qt-LGPL-Exception-1.1 OPENLDAP PSF-2 PSF-2.4 public-domain PYTHON qwt Ruby Ruby-BSD SGI-B-2.0 Sleepycat tanuki-community Transmission-OpenSSL-exception Unicode-DFS-2015 Unicode-DFS-2016 Unlicense UoI-NCSA UPL-1.0 UPX-exception vim W3C WTFPL-2 wxWinLL-3.1 ZLIB ZPL +GPL-COMPATIBLE 0BSD AGPL-3 AGPL-3+ Apache-2.0 Apache-2.0-with-LLVM-exceptions Artistic-2 Boost-1.0 BSD BSD-2 CC0-1.0 CeCILL-2 Clarified-Artistic Clear-BSD ECL-2.0 FSFAP FTL gcc-runtime-library-exception-3.1 GPL-1 GPL-1+ GPL-2 GPL-2+ GPL-2+-with-eCos-exception-2 GPL-2+-with-font-exception GPL-2+-with-openssl-exception GPL-2+-with-Pyinstaller-Bootloader-exception GPL-2-with-classpath-exception GPL-2-with-font-exception GPL-2-with-linking-exception GPL-2-with-MySQL-FLOSS-exception GPL-3 GPL-3+ GPL-3+-with-autoconf-exception GPL-3+-with-font-exception GPL-3+-with-openssl-exception GPL-3-with-font-exception GPL-3-with-openssl-exception HPND IJG ISC LGPL-2 LGPL-2+ LGPL-2-with-linking-exception LGPL-2.1 LGPL-2.1+ LGPL-2.1-with-linking-exception LGPL-3 LGPL-3+ LGPL-3-with-linking-exception libgcc libstdc++ metapackage MIT MPL-2.0 Nokia-Qt-LGPL-Exception-1.1 OPENLDAP PSF-2 PSF-2.4 public-domain PYTHON qwt Ruby Ruby-BSD SGI-B-2.0 Sleepycat tanuki-community Transmission-OpenSSL-exception Unicode-DFS-2015 Unicode-DFS-2016 Unlicense UoI-NCSA UPL-1.0 UPX-exception vim W3C WTFPL-2 wxWinLL-3.1 ZLIB ZPL # Free software licenses approved by the FSF FSF-APPROVED @GPL-COMPATIBLE AFL-2.1 AFL-3.0 Apache-1.0 Apache-1.1 APSL-2 BSD-4 CDDL CeCILL-B CeCILL-C CNRI CPAL-1.0 CPL-1.0 EPL-1.0 EPL-2.0 EUPL-1.1 EUPL-1.2 FraunhoferFDK gnuplot IBM LPL-1.02 LPPL-1.2 LPPL-1.3a MPL-1.0 MPL-1.1 Ms-PL Ms-RL NPL-1.1 openssl OSL-1.1 OSL-2.0 OSL-2.1 PHP-3.01 QPL-1.0 Zend-2.0 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 c56563e0e9..0e08db2da5 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/package.mask @@ -36,6 +36,40 @@ #--- END OF EXAMPLES --- +# Michał Górny (2025-07-05) +# Metapackage used as a dependency in dev-lang/python and dev-lang/pypy. +# Replaced with inlined specific dev-python/ensurepip-* packages. +# Removal on 2025-08-04. +dev-python/ensurepip-wheels + +# Arthur Zamarin (2025-07-04) +# EAPI=7, upstream gone, Gentoo is the last distro packaging it. +# Removal on 2025-08-03. Bug #959505. +app-misc/pip + +# Andreas K. Hüttel (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 +# required anymore. +virtual/perl-bignum +virtual/perl-HTTP-Tiny +virtual/perl-IO-Zlib +virtual/perl-Locale-Maketext +virtual/perl-Math-BigInt-FastCalc +virtual/perl-Math-BigRat +virtual/perl-Parse-CPAN-Meta +virtual/perl-Params-Check +perl-core/Params-Check +virtual/perl-Term-ReadLine +virtual/perl-Unicode-Normalize + +# Joonas Niilola (2025-07-01) +# Python-3.13 enabled version of Spidermonkey. The test phase crashes +# with 3.13 so I'm not fully convinced there won't be runtime issues +# with rdeps (gjs, libpeas) but try it out and report back in +# bug #952299. +=dev-lang/spidermonkey-128.12.0-r1 + # Andreas Sturmlechner (2025-06-29) # KF5-based package, unmaintained upstream, see also: # https://mail.kde.org/pipermail/release-team/2025-June/013683.html @@ -75,40 +109,6 @@ dev-python/caldav # Qt5 package without any revdeps. Removal on 2025-07-24. Bug #938823 dev-libs/libdbusmenu-qt -# Andreas K. Hüttel (2025-06-24) -# Perl 5.42 mask/unmask block, complete as of 5.42.0_rc2 -=dev-lang/perl-5.42* -~virtual/perl-Archive-Tar-3.40.0 -~virtual/perl-Compress-Raw-Bzip2-2.213.0 -~virtual/perl-CPAN-2.380.0 -~virtual/perl-Data-Dumper-2.192.0 -~virtual/perl-Devel-PPPort-3.730.0 -~virtual/perl-Digest-MD5-2.590.0 -~virtual/perl-Exporter-5.790.0 -~virtual/perl-ExtUtils-CBuilder-0.280.241 -~virtual/perl-ExtUtils-CBuilder-0.280.242 -~virtual/perl-ExtUtils-MakeMaker-7.760.0 -~virtual/perl-ExtUtils-ParseXS-3.570.0 -~virtual/perl-File-Spec-3.940.0 -~virtual/perl-HTTP-Tiny-0.90.0 -~virtual/perl-IO-Compress-2.213.0 -~virtual/perl-IO-Socket-IP-0.430.0 -~virtual/perl-Math-BigInt-2.5.2 -~virtual/perl-Math-BigInt-FastCalc-0.502.0 -~virtual/perl-Math-BigRat-2.5.2 -~virtual/perl-Math-Complex-1.630.0 -=virtual/perl-Module-CoreList-5.202.506* -=virtual/perl-Module-CoreList-5.202.507* -~virtual/perl-parent-0.244.0 -~virtual/perl-podlators-6.0.2 -~virtual/perl-Scalar-List-Utils-1.680.100_rc -~virtual/perl-Storable-3.370.0 -~virtual/perl-Test2-Suite-1.302.210 -~virtual/perl-Test-Simple-1.302.210 -~virtual/perl-threads-2.430.0 -~virtual/perl-Time-HiRes-1.977.800 -~virtual/perl-version-0.993.300 - # Michał Górny (2025-06-21) # Last commit in 2019. Has an entry point conflict with # dev-python/pytest-tornasync. No reverse dependencies left. @@ -129,6 +129,7 @@ sci-mathematics/boolector # Sam James (2025-06-12) # Breaks several applications (bug #957943) >=dev-python/pygobject-3.52 +>=net-im/gajim-2.3.0 # Alexey Sokolov (2025-06-09) # Dead upstream, fails to compile with gcc 15 and cmake 4. @@ -209,8 +210,8 @@ dev-util/bin_replace_string # Sam James (2025-06-03) # Major changes to packaging as bindings are split out by upstream. >=app-crypt/gpgme-2 -dev-cpp/gpgmepp -dev-libs/qgpgme +>=dev-cpp/gpgmepp-2 +>=dev-libs/qgpgme-2 dev-python/gpgmepy # Sam James (2025-06-03) @@ -220,12 +221,6 @@ dev-python/gpgmepy # > Unable to locally verify the issuer's authority. =app-misc/ca-certificates-20250419.3.112 -# Andreas Sturmlechner (2025-06-02) -# Gui depends on Qt5 and is unmaintained for a very long time - its main -# developers have moved to the InputLeap project (gui-apps/input-leap). -# Bugs #942580, #949911, #951987, #953262; removal on 2025-07-02. -x11-misc/barrier - # Michael Orlitzky (2025-05-28) # I added this for SageMath, but in hindsight do not think anyone is # using it. It has code issues and upstream is not terribly interested @@ -277,7 +272,6 @@ x11-misc/meteo # Sam James (2025-05-22) # Introduces REQUIRED_USE that needs more discussion (bug #956402) =media-gfx/gimp-3.0.2-r2 -=media-gfx/gimp-3.0.4 # Ulrich Müller (2025-05-18) # Pretest versions, masked for testing. 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 de775131b9..b48c09558f 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/profiles.desc +++ b/sdk_container/src/third_party/portage-stable/profiles/profiles.desc @@ -578,21 +578,21 @@ x86 default/linux/x86/23.0/i686/split-usr/prefix exp x86 default/linux/x86/23.0/i686/split-usr/prefix/kernel-2.6.32+ exp x86 default/linux/x86/23.0/i686/split-usr/prefix/kernel-2.6.16+ exp x86 default/linux/x86/23.0/i686/split-usr/prefix/kernel-3.2+ exp -x86 default/linux/x86/23.0/i686/time64 exp -x86 default/linux/x86/23.0/i686/time64/systemd exp -x86 default/linux/x86/23.0/i686/time64/hardened exp -x86 default/linux/x86/23.0/i686/time64/hardened/selinux exp -x86 default/linux/x86/23.0/i686/time64/desktop exp -x86 default/linux/x86/23.0/i686/time64/desktop/gnome exp -x86 default/linux/x86/23.0/i686/time64/desktop/gnome/systemd exp -x86 default/linux/x86/23.0/i686/time64/desktop/plasma exp -x86 default/linux/x86/23.0/i686/time64/desktop/plasma/systemd exp -x86 default/linux/x86/23.0/i686/time64/split-usr exp -x86 default/linux/x86/23.0/i686/time64/split-usr/hardened exp -x86 default/linux/x86/23.0/i686/time64/split-usr/hardened/selinux exp -x86 default/linux/x86/23.0/i686/time64/split-usr/desktop exp -x86 default/linux/x86/23.0/i686/time64/split-usr/desktop/gnome exp -x86 default/linux/x86/23.0/i686/time64/split-usr/desktop/plasma exp +x86 default/linux/x86/23.0/i686/time64 stable +x86 default/linux/x86/23.0/i686/time64/systemd stable +x86 default/linux/x86/23.0/i686/time64/hardened stable +x86 default/linux/x86/23.0/i686/time64/hardened/selinux stable +x86 default/linux/x86/23.0/i686/time64/desktop stable +x86 default/linux/x86/23.0/i686/time64/desktop/gnome stable +x86 default/linux/x86/23.0/i686/time64/desktop/gnome/systemd stable +x86 default/linux/x86/23.0/i686/time64/desktop/plasma stable +x86 default/linux/x86/23.0/i686/time64/desktop/plasma/systemd stable +x86 default/linux/x86/23.0/i686/time64/split-usr stable +x86 default/linux/x86/23.0/i686/time64/split-usr/hardened stable +x86 default/linux/x86/23.0/i686/time64/split-usr/hardened/selinux stable +x86 default/linux/x86/23.0/i686/time64/split-usr/desktop stable +x86 default/linux/x86/23.0/i686/time64/split-usr/desktop/gnome stable +x86 default/linux/x86/23.0/i686/time64/split-usr/desktop/plasma stable x86 default/linux/x86/23.0/i486 stable x86 default/linux/x86/23.0/i486/systemd stable x86 default/linux/x86/23.0/i486/hardened dev @@ -600,6 +600,13 @@ x86 default/linux/x86/23.0/i486/hardened/selinux dev x86 default/linux/x86/23.0/i486/split-usr dev x86 default/linux/x86/23.0/i486/split-usr/hardened dev x86 default/linux/x86/23.0/i486/split-usr/hardened/selinux dev +x86 default/linux/x86/23.0/i486/time64 stable +x86 default/linux/x86/23.0/i486/time64/systemd stable +x86 default/linux/x86/23.0/i486/time64/hardened dev +x86 default/linux/x86/23.0/i486/time64/hardened/selinux dev +x86 default/linux/x86/23.0/i486/time64/split-usr dev +x86 default/linux/x86/23.0/i486/time64/split-usr/hardened dev +x86 default/linux/x86/23.0/i486/time64/split-usr/hardened/selinux dev # musl profiles diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/dtc/dtc-1.7.2-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/dtc/dtc-1.7.2-r2.ebuild index f19b5919a7..aef3877b5b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/dtc/dtc-1.7.2-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/dtc/dtc-1.7.2-r2.ebuild @@ -11,7 +11,7 @@ if [[ ${PV} == 9999 ]] ; then inherit git-r3 else SRC_URI="https://www.kernel.org/pub/software/utils/${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="Open Firmware device tree compiler" diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/keyutils/files/keyutils-1.6.3-symbols.patch b/sdk_container/src/third_party/portage-stable/sys-apps/keyutils/files/keyutils-1.6.3-symbols.patch new file mode 100644 index 0000000000..b7be1e71b7 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/keyutils/files/keyutils-1.6.3-symbols.patch @@ -0,0 +1,30 @@ +https://lore.kernel.org/keyrings/85561febfcf0618a9280448d5c53775646f470d6.1703712863.git.nvinson234@gmail.com/raw + +Functions keyctl_restrict() and keyctl_dh_compute_kdf_alloc() are +nodefined. Their inclusion in version.lds causes clang/llvm LTO +optimizations to fail with error messages similar to + + error: version script assignment of KEYUTILS_1.7 to symbol + keyctl_restrict failed: symbol not defined + +This patch fixes the issue by removing the symbol names from +version.lds. + +Fixes Gentoo bug 914637 (https://bugs.gentoo.org/914637) + +Signed-off-by: Nicholas Vinson + +--- a/version.lds ++++ b/version.lds +@@ -76,9 +76,7 @@ KEYUTILS_1.6 { + + KEYUTILS_1.7 { + /* management functions */ +- keyctl_restrict; + keyctl_dh_compute_kdf; +- keyctl_dh_compute_kdf_alloc; + + } KEYUTILS_1.6; + +-- +2.43.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 691b0f34f6..b825ccd3a1 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 @@ -23,6 +23,7 @@ PATCHES=( "${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 ) 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 a85ff015a2..dc458eae81 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 @@ -1,4 +1,3 @@ DIST less-643.tar.gz 592291 BLAKE2B 6dc60dc2e8db05afdae466877a1d26a3008ff5378bbbf2fbdf9efc4f87c0fcfde5703d44a24d4355c98d3a5f438bdb51173150f2a69f801d9c8e4a7401d71b53 SHA512 6a324ac54e22429ac652dc303bc1fe48933555d1cbf8ad7ecf345940910c014fef9551a3219743cfb7115e356b5841ae97d6ce62e7a1ba1e3300d243efca34d9 DIST less-668.tar.gz 649770 BLAKE2B 0f6a85a1c66577dd2a28682a6f8399e42fdbe9fc1498b2e89c6bb7c47109e8d3ab934abe5dd998b2c8dfacfb174ad9daeb79b3d4c13df22fa035ea792b2eaf5e SHA512 6527741a609849ec27b6ab35de46f2c5c2b2771391e3efe263207bee28915946f44331a42f832a7cb42231a19b135cbadc15ae02cd997b83a13cdfbc7213fc27 -DIST less-678.tar.gz 876971 BLAKE2B 5e6644a8c66f35f1b3ab72a0727c76922b7d3cf299d5d1cf1c94882e8b0d3ec0461cd351e6b2db554b331d993760db8eb17209f41f271f5704fee0caf8d6540e SHA512 ad1983229bfb5a30c6139db60012d3a12b613011f044acb4c0ec5c0fc809b8dc9be40255bf420f65d51425152c4cfc943076ccd2ee63b196165d6ab1426ea187 DIST less-679.tar.gz 877094 BLAKE2B 024cd7f4014958e9be52a89aefd9404298850c56f0f8d2403e8648b06ce37bcca6742ebd8a3a4900acb78a3884c4f17270919feb3ca76c6978c34ec79043f154 SHA512 f04e37dc4b2839b416a195e107d21328800e75080054788002c109b3b113a6a898b953391912e7538fb9843ef530b1991efc76dbf6fb5960e5530f3ff83421f6 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/less/less-678.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/less/less-678.ebuild deleted file mode 100644 index d0f19d686a..0000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/less/less-678.ebuild +++ /dev/null @@ -1,95 +0,0 @@ -# Copyright 1999-2025 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 - SRC_URI="https://www.greenwoodsoftware.com/less/${MY_P}.tar.gz" - - if [[ ${PV} != *_beta* ]] ; then - 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" - 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 )" - -PATCHES=( - "${FILESDIR}"/${PN}-643-lesstest-pkg-config.patch -) - -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/locale-gen/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/locale-gen/Manifest index 6b7bfc73ba..06ec41ec60 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 +1,2 @@ DIST locale-gen-2.23.tar.bz2 7664 BLAKE2B a529b62fbb840c9352f06e8f5c80fc764425a2619dc69cc820f550a026d391788d5e2cfeeb46a8b5b9716da63340b4fce57a5b523edd4196ee1219c1200cb752 SHA512 c1245caadb04403c535a836f19bc410d0f04b5c0e297ea5be9852e6d71e08e528071ae769d63d31a677dda8fdd618b4c4d581ed525cf8786b82d8f37636db754 +DIST locale-gen-3.0.tar.bz2 14810 BLAKE2B f88381ca53eff89016daddedcaf349d4584a991de384e08f0908b025e37df8ecc90ee0b2834e596c8330516bbabd2e17a6c460ce5190e939704ae683732cc456 SHA512 4bfc27a12b2f4822ce7fb8ac7881adc2d1c34f8722aa688c940caaed06225d99a1c81569871de3cac9980725ed9743508ade0f68b171062d607e71261951373a diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/locale-gen/locale-gen-3.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/locale-gen/locale-gen-3.0.ebuild new file mode 100644 index 0000000000..b3a29ad9df --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/locale-gen/locale-gen-3.0.ebuild @@ -0,0 +1,26 @@ +# Copyright 2023-2025 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/" +SRC_URI="https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/${P}.tar.bz2" + +LICENSE="GPL-2" + +SLOT="0" +#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-lang/perl + ! +Date: Thu, 30 Jan 2025 14:26:17 +0100 +Subject: * tp/Texinfo/Convert/Converter.pm (output_tree), + tp/Texinfo/Convert/LaTeX.pm (output), tp/Texinfo/Convert/IXIN.pm: fix + precedence problem between ! and string eq, which leads to a warning with + Perl 5.41.7. Report from Igor Todorovski, details on: + https://github.com/Perl/perl5/issues/22954#issuecomment-2623408763 + +--- + ChangeLog | 8 ++++++++ + tp/Texinfo/Convert/Converter.pm | 2 +- + tp/Texinfo/Convert/IXIN.pm | 2 +- + tp/Texinfo/Convert/LaTeX.pm | 2 +- + 4 files changed, 11 insertions(+), 3 deletions(-) + +diff --git a/tp/Texinfo/Convert/Converter.pm b/tp/Texinfo/Convert/Converter.pm +index a54e1f509e..c0d1359334 100644 +--- a/tp/Texinfo/Convert/Converter.pm ++++ b/tp/Texinfo/Convert/Converter.pm +@@ -403,7 +403,7 @@ sub output_tree($$) + + my $fh; + my $encoded_output_file; +- if (! $output_file eq '') { ++ if ($output_file ne '') { + my $path_encoding; + ($encoded_output_file, $path_encoding) + = $self->encoded_output_file_name($output_file); +diff --git a/tp/Texinfo/Convert/IXIN.pm b/tp/Texinfo/Convert/IXIN.pm +index e5d82a7851..71fa03fbeb 100644 +--- a/tp/Texinfo/Convert/IXIN.pm ++++ b/tp/Texinfo/Convert/IXIN.pm +@@ -341,7 +341,7 @@ sub output_ixin($$) + + my $fh; + my $encoded_output_file; +- if (! $output_file eq '') { ++ if ($output_file ne '') { + my $path_encoding; + ($encoded_output_file, $path_encoding) + = $self->encoded_output_file_name($output_file); +diff --git a/tp/Texinfo/Convert/LaTeX.pm b/tp/Texinfo/Convert/LaTeX.pm +index d4126d217f..9ddf3e0e59 100644 +--- a/tp/Texinfo/Convert/LaTeX.pm ++++ b/tp/Texinfo/Convert/LaTeX.pm +@@ -1085,7 +1085,7 @@ sub output($$) + + my $fh; + my $encoded_output_file; +- if (! $output_file eq '') { ++ if ($output_file ne '') { + my $path_encoding; + ($encoded_output_file, $path_encoding) + = $self->encoded_output_file_name($output_file); +-- +cgit v1.2.3 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.2-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.2-r1.ebuild new file mode 100644 index 0000000000..4352121c1e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.2-r1.ebuild @@ -0,0 +1,98 @@ +# Copyright 1999-2025 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 + " +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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + REGEN_BDEPEND="" +fi + +LICENSE="GPL-3+" +SLOT="0" +IUSE="nls +standalone static" + +RDEPEND=" + >=sys-libs/ncurses-5.2-r2:= + virtual/perl-Data-Dumper + virtual/perl-Encode + virtual/perl-Unicode-Collate + 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 ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-7.2-perl-5.42.patch +) + +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 + # --enable-xs-perl-libintl for musl (7.2)? + # + # 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) + ) + + econf "${myeconfargs[@]}" +} 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 860a880b4b..268d2ff2e1 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 @@ -15,7 +15,7 @@ DESCRIPTION="System Security Services Daemon provides access to identity and aut HOMEPAGE="https://github.com/SSSD/sssd" if [[ ${PV} != 9999 ]]; then SRC_URI="https://github.com/SSSD/sssd/releases/download/${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" + 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" diff --git a/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-4.0.1.ebuild b/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-4.0.1.ebuild index 59cd7fd115..36a058e28b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-4.0.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-boot/gnu-efi/gnu-efi-4.0.1.ebuild @@ -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 ) ) diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/bc/bc-1.08.2.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/bc/bc-1.08.2.ebuild index 0a08fa03ba..38de476650 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/bc/bc-1.08.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/bc/bc-1.08.2.ebuild @@ -11,7 +11,7 @@ SRC_URI="mirror://gnu/bc/${P}.tar.gz" LICENSE="GPL-3+" 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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE="libedit readline static" RDEPEND=" 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 ed43343f8a..d9c483ede0 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 @@ -12,17 +12,20 @@ DIST gcc-12-20250604.tar.xz 79932044 BLAKE2B 6be96d278106c52bb44cd7a82dcbbc270c9 DIST gcc-12-20250611.tar.xz 79932880 BLAKE2B ae368816a13791a00d14494ce9e132d5dd9d2de74e335a8a9c68b568a1ec25aa264c07292d31d379ce092577b036313d5d62536c7802eb16d08e777c36b7d969 SHA512 e6b47dce06e07aabdbaf4f74b9b387b9b19331675c4abb7ef69541d8188b2370b1887047b2179d6a5eb7c412c81c919612b68892f760c2a2586028fb5483d7fd DIST gcc-12-20250618.tar.xz 79951420 BLAKE2B 20d719edd362f5c8cedf3a641847961b4685f3ee9b0d60f0dacc5237722718b78123a15bfb262b983313c01cd330af3c4933b947eddccaa3545d179d00b7c333 SHA512 cbf9a0c3ca8ae85dc735d349a7a61de7e9d6b7215bb14962d8becbded5dc67718565e013d3c1fcc3083a8baaea5ba518e5a7c7d1576b2ae99c51c0385b204a84 DIST gcc-12-20250625.tar.xz 79946552 BLAKE2B add33d9fe5aa460bfdd961391ba5a5a58ad2c1d2063957a496d18b242a030f6e6297a5eca5d3524752fdbd56be8708ee55f1265002f638de0f55ff8449c71539 SHA512 3fa1d8efcececf41b7b83987765a7b92bbff878208709a43b4ff9aabbfbcbc6a755fbb724dab4d5b718eb347f3829966b3e9c7cfa63b8101cb985a3287ef9003 +DIST gcc-12-20250702.tar.xz 79955860 BLAKE2B 972b865eddffb8816579ea98d0690114b51cd5cd2617ed8cacd749da924bf39353867f5243a0e56bcd18187773f454b122a081941d93a6824cdb1acd4b3239ce SHA512 eed45ffe22a598902d9f06fc13063df992ac5c2f6433aea48c5f0ce84a8b36e80608315546df39ee7538e965c1fdcd85c48f5dba3226b7cfea88524883285d5d DIST gcc-12.4.0-musl-patches-1.tar.xz 3068 BLAKE2B e5e39c24934072ea89e4467d0dc5196f3dadfb5ffba0c856d051648a2fbf57d434a57e95227cdf2b8cea45f0f5555aec2bc372d2f6cb0b69efd87831d248d364 SHA512 b9db204845a25be043d76cae826d42eebeeb4f9be7c3049af6fe7601a552bedfd24731156a6a36b4b5e2e2af656a589a5c556d2b0b3ded33ba290a773ee87c62 DIST gcc-12.4.0-patches-1.tar.xz 15576 BLAKE2B 98c29888de7701b365be7ac9062f0cee3340d58c85485e26f0d02f1483ec64cc9c10651488a4fd937551afe30f4e19777e6766871a724ae3ba6c290c16f4fdf1 SHA512 3f7c5d36e56e07ea9dd143a5d13342a6c1ccbf0643abd1c0bcbfb46bb7c7b1308aef6e3e882031c9c191610f01af906b19be5aa2b139cf617614f46e97463aec DIST gcc-12.4.0-patches-2.tar.xz 14876 BLAKE2B 6bf5abbb2abba4b9fe9fa153ac4112fe5f563e97cd4e1b885ccd0d88abf1124fa91f20d6be972e2242410447be73bca60014785f8551b8087ed0d4cc3e868225 SHA512 dfd5f02d4c1076fad4ee998b2f620171dd3eb65a1160312def9dae89b18327a06db853f569e0e3c049e5ab06c61488bb6faecec52bafe737fddeb43628c54a1f DIST gcc-12.4.0-patches-3.tar.xz 14140 BLAKE2B cc73805b2c1f9f6a8d96b2a31d79ce0034ebc3ef1976e78e8ec4f2649c33cef48acee943773de5e03b891128f37e4d72c07d7f4c0bd6d473e484a4b6a9df9f25 SHA512 a93c6bc7d2bd1d7b80bfc6b16c042ac6d3cb6e15cada16041baa48b8023d857b4a1557f4620c46646136daece6566655523010366411aa9fad671398efb03b6f DIST gcc-12.4.0.tar.xz 83377372 BLAKE2B 0d5aa9995bf53fa2dc976a846240cfb8fafd125ad6c54f45dc9d770215eae3e9ea0db82a9a4f79c51b4d5f8461a1d730c17db6841bc31bd96dba11d9ed7544ae SHA512 5bd29402cad2deb5d9388d0236c7146414d77e5b8d5f1c6c941c7a1f47691c3389f08656d5f6e8e2d6717bf2c81f018d326f632fb468f42925b40bd217fc4853 +DIST gcc-12.5.0-RC-20250704.tar.xz 86030356 BLAKE2B 640429aac8340ca738ec84bc4eee24c1d2087927c81b7152c2a40fc083dd427ddcb7a639302ab851b5bdb4ac2edf22929bfd9c405ae1a3bc8bffdd7a2d50f415 SHA512 8b14e76acb5ccb20dd0d3480244e866e87dcf7fd92528679956e3b84470cc0e9c5e21f2f39139272a4a43a88536a4a07496a127cfb41cefd92195812c3aae858 DIST gcc-13-20241220.tar.xz 84504500 BLAKE2B 60d6dcdcafa36399a0c0de7fef3a4eb4ca8e0b6780cd31c9eace2965c53115205bf64e8247b833a4375c1e3ad2d94820b5bdc97a4689be95d8ab55a676afa689 SHA512 10fe009dc3b8872b24350e4fb999f71b848bd5a03e48e8292f76e6eca3dbdef8383a3b13b813aada983ebdbe3ecab1642961b3210cd1e0063a86655a44493017 DIST gcc-13-20250418.tar.xz 84528940 BLAKE2B 566cc9570d9a2e41e67416cd3bb3609fad38a37cc648422988182652010ba2f2eb459c29fce32f8f97ea33c23eac3b43098af6fb333ce250a7e9eac4ca0abeb7 SHA512 185179a591d6ecc3a6477379fd877241a18b25bec0eacd0819e6e0ee38abbbebe7fee9027d36a60087f487c65a8afd17228e8dc0b803f4cf5ae6b8ce9cdadcbc DIST gcc-13-20250522.tar.xz 84560600 BLAKE2B 418d5f6eb25542519317aa18f16d347940549b4bdbcd5a75279d784e310758e870d8814c4ff631195d44a05d57da95f8bef3a1ba5931f1a085f9e88912ddf993 SHA512 4c16bd9d3e0aa38772ae5a347f99f2d3fbf5587d5fbf7fe9e8c2f8cda203221a424e161719ddc42cb945ec3a75c5956da61ccccf4ff7b3a9eb377962b28e506c DIST gcc-13-20250612.tar.xz 84587824 BLAKE2B 4ec2b89a912c185b0c62c5d290c50a2febdaf9c1496dad944ebfe5dac18df74fcda5142040bc5407388983210662fe2643967c56494b66e81e80fc6e65841fd3 SHA512 015dda44b0894ee0d45d4398ee93e2dec4350ba51584af9dc642a43c3a376c00e738e779021412cf658e143e78276c390254d7cee34939cb160f865a5187292e DIST gcc-13-20250619.tar.xz 84584096 BLAKE2B c69932af22adc03527c296e69a07face4c65366dc4d14430d310731ab7470cb18b1f30aa4720ad877d5421cd50e1424deead88d231ba1f7f95a427a26d0ed073 SHA512 2611c0c586706ec95f22ebaf8b557e432be2224518fb1656c1a44f7f8b6b066caa48de48894990ca2a20f2fe3ec456434fd4d8ede356cb0b72d9ec0f0223a055 DIST gcc-13-20250626.tar.xz 84567576 BLAKE2B 49eb8e3132a0d0a6fe5c127adf446992032be7bcd74103577e13a08f06d451312d7b6f3328864906c3cd29ecd9e4b274bb2cfc4b9b0ee53a5a6d513bbbd1089a SHA512 0f98f211aa6aad4cba2aaa9d0535856304fa3f2c1d4d2f26646641bbe50575322f1562188f9b38c837ac2bd6ee4a22acb66be19ce73ef4b253c54aa19090aaed +DIST gcc-13-20250703.tar.xz 84586348 BLAKE2B 767826f6d4ab9ee1e2b7558ff7e32f5bf409e07283b7a103d42324f0df002a54d3e23066119fd85a30c0abc45bd108c8b63dfadf573b221fe9c3557f4998ec42 SHA512 518aaaec32bb381c4827f1984a87cd057980e0453aaa4b6083102548ec2d7fd9904c7b3a7b2e97bee4f771d46b9a79dc9b49eac5c9074f237d5779b5eaa59c85 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 @@ -37,6 +40,7 @@ DIST gcc-14-20250419.tar.xz 88251960 BLAKE2B b9d8312ac8dd9dd82128ff872e379f3426b DIST gcc-14-20250613.tar.xz 88314832 BLAKE2B b42b88d3990a792357e92e23e1b645c5d3505844c7298a2e41361c9672eb48835db3372a1890c6bfe02d67fe4af3f7130f05318977ecaca39846edd350e51060 SHA512 c3f57b72a886a8a862cf5c5de781316b4b30734a24c0f5762ad73badc51e1a651847a139d4402e8cee96e841206e7a32be389e8428d03c04076cfef50bb03c17 DIST gcc-14-20250620.tar.xz 88310004 BLAKE2B c33c3bdb12d3fcb500829b4781ea66edcd5b69ba1b72cb38f4248d7cc5ddd76a627d94ae9511dbe676c4cd17dfc0cdba5bdc6f05d3b938ac6f4afe0e4a804e25 SHA512 e5a99c1fcac867787d2e96b1c0f9180813a7cdc7ccb5f4002644c619edb0296d4a227ef62e988a98528b7430c35e69bc6e46981b90db5f599d1045ef96a9669c DIST gcc-14-20250627.tar.xz 88324360 BLAKE2B 17b98dfc88416e4f0567969215533c980e526fa1ce5d11366f66987117bfa2adf13f111f4a1b6b066f02d41d99f78d686d33db4669ef4887848922bb190feb00 SHA512 3b0b6529a48d80a7ef6d23c693cce1c2b767def1b574df5bb49638a9a04305a376f3da81291ca4eed3907c33dc6eaddd6eee1f82e5574246054ad22914188651 +DIST gcc-14-20250704.tar.xz 88301340 BLAKE2B db43d299aec1e402703db5c63a296065cdfdc94065ac3609c16e6594e80aae08e23448ef2405ade23c3d5fd38d2b79851b243807744f5b4f37eab71a0f526718 SHA512 7362674f80be46aa524a99b04a7d8130f02459a5d7bed430fe0dbf4d8ee3affe397c0689ba4d2ea60ad099788518da0ba1cba5bd54ddeb7b23d96137e6552f68 DIST gcc-14.1.0-musl-patches-1.tar.xz 3600 BLAKE2B 4cd920b7ca1f122cae806707564d8e45bfd48e78c88788a12a301f6068b5a5f335d8885e67479ac536c66aeaa81f2ecb7240ae56e9fc821a7246ab66b453711f SHA512 61c48d90a55dfc2129d96aee69d939d6a89f6407f69f7bd12c1a619f28989f471fd219d731958f8e62b0fd650c32300f0ad8dc06d5df23d9fc8c1a77fe210c25 DIST gcc-14.2.0-patches-7.tar.xz 14244 BLAKE2B 11236e91e1fe83fec8ffaa40ec0cdd4b52a00a951e9aa9a7a0a932b234b8f1a9603333a7ccf55859f4ef53dd4d8ad1fd5c1d2514b6e45fce5b86bb58622a0ecc SHA512 5a4d86d943e31fa068b5a784c0132bd83c23243dcb3cf972557a42e004469a415e1b3185f31b1bb36f916594d475f266a2fda031a414e4a15e0bbfe471269eee DIST gcc-14.2.0-patches-8.tar.xz 14540 BLAKE2B 09f66035343d4cab694b8ab382170f8e2d546ddffedf3477f26edbd6a798ddf94294f569c2661729d40088d590bc17a4eb651710d8d9f66f33703734a1a82b67 SHA512 7a9a2724ef8db3c57b033d90751192969c16e5eaa8f4777b7f16470222ff3a18771b461bd89feaad701e7f0d573b883b487981588129933c732fb76117728b86 @@ -44,15 +48,18 @@ DIST gcc-14.3.0.tar.xz 95212220 BLAKE2B 11c0e549b2e9b4bbbe4cd64782032d2ec783b3db DIST gcc-15-20250614.tar.xz 92119808 BLAKE2B 48afa87106afc50bdbaf41ab4754589919c1ad5c1de4b3ed778839e03c46eb353c47b0157477d610516259b7d7586b7b160449d3e38fd0db3d6dacf55e6ff4a7 SHA512 2acc4fecbf2d11224ff85453558ebc17633dad99227b9c479753259060656f03e6defae1cef19e4866b92142f8225ac010c5f50189fd3bea99ae81ae0e4e029d DIST gcc-15-20250621.tar.xz 92115632 BLAKE2B a0150cba4a33a70014ab3c139de9f85e29e22f8282404cb27f499f9d44d493a946066750241742f1036160d440431c68646f2eb0d1e33d936719f7784ddb3887 SHA512 f9b46e222378fc006bf0d80a0a0acafb37011c3a0feb10dca37dba59d1ad4906605ac01e60737a0867738ae057773ea3d67c481bc2521cd2372f43bd59272fdb DIST gcc-15-20250628.tar.xz 92108604 BLAKE2B 45801afeb773ea1249441041d268b03477d891a931d2b3033aa61e3affa60d7a70aa79aae2e89e1cab9fa9b02f0b9b5016ad8c744f38ec6fe05555fcc7e0c450 SHA512 7d56709c60a34a4e7912c257508b2f640fc04c8fef8d7b5041bf8ea59c11942136ecd4c2a4e4b79c104b84ee8559d93efca5b955ee84357da132d2d439639630 +DIST gcc-15-20250705.tar.xz 92140172 BLAKE2B ac66bdda7beccab8b5b5565852e7f9743ba6f1cdeaa8ca7d15b14369251a0b592f92714c8c12e05df7d52d296a15843fe3301906e7e3c3574483be1e5485ffce SHA512 4a7304ed4ada55f5d37c191627de9f62e86c0a374987a3cdf43695ef436ab3eeeb7a143e5a11c3e5cac01c8c23c035f126d0c0a10dfd7686c8ec537dde61b9eb DIST gcc-15.1.0-musl-patches-1.tar.xz 3036 BLAKE2B f7e8b794feb3c30252dd3e35b990c8a134d337e285a2778ad5575b04667cf01040bf4187252151cd57097cd6d440851843156c9631736f4f065ca8b7ce2f0678 SHA512 4d3f1660d89484f63ad6c238884415673cdfdabb8833cce2fe114193b52f11b3518b034881024527f6553de93936d15ed707d4d2b1e8221908a08ec67810464b DIST gcc-15.1.0-patches-1.tar.xz 18628 BLAKE2B ee5fc9d6a06374ccc8d85cd1e269514fde8fed9b1810867a199ac747c09fc166e11e54ba531d42ee2ffbab3ca80277f9ad3c873fbaa3530ff60e5f2bc25c41ba SHA512 72992f0698f632c98abd6d8c7a7a38a109b2f064775a0c5029e44dc29cd88ae061cddd603d47eabced5af5f8571e0b73c9778080873c69dd4dc4766c60339b28 DIST gcc-15.1.0.tar.xz 98268344 BLAKE2B a902ce99db4e93615879e435bcd0b96d5a16ea0af42598ca0e6d12913b2ce3651a98574c3264b2717b848e6b5a823b403ccca0adde463938d5b41aa3f1da0d34 SHA512 ddd35ca6c653dffa88f7c7ef9ee4cd806e156e0f3b30f4d63e75a8363361285cd566ee73127734cde6a934611de815bee3e32e24bfd2e0ab9f7ff35c929821c1 DIST gcc-16-20250615.tar.xz 94008204 BLAKE2B 31c303929d60423cb2355c35f9b3d7e37108ed7ec3b66b411463e3681ddbc088c7556cc7a1639b83bc470ae833987158b206d8044c2f2a22c40661e79bcae252 SHA512 e69a6eea38b75aab569ff7cbabae06da27198fb07d7009dee44b8d81cbeceb4b9e6bd07b9db6a1b347d9ea286353b5a9619ee800f243ac02ec13126c1d4183f3 DIST gcc-16-20250622.tar.xz 94019404 BLAKE2B 0f4adc77b90c864efbb07e5a132642ade9ffb1b57920afcc0695bf170f33d979c7bac465038f5e4e7f0e06c54aaca32be947f2b4ec912cf7a504e560df768ea4 SHA512 9e35a51a369e7ff362fe0f9d4b8200f1d9330ec4e0cff4d8d61343e6ae5030c178469cb1af0c11768ba78f496ba521aca2b68b6e940db48f0496b829d288fbc4 DIST gcc-16-20250629.tar.xz 94070816 BLAKE2B 2ce09cd75bb7d6817c1f3764226c2c562130ed36514653e3cc44a8f0cd011b5d9f22c48508dfe9c1720e6ee178e0575982ccbae98ce6e8657ae85a563f9a0aa0 SHA512 86f1e2c0b54913a7b4417b57392f0fec521974a7c260e0bc098607b382e49b43eb476541e6e58ddf024ac17c6a342b3905ed7768318d2d741621f2f244c7fe37 +DIST gcc-16-20250706.tar.xz 94122820 BLAKE2B ec48e2eef32aa2dfebff8264b943f344f8e06d6f2175ba75850a14d5019060800cfc94984ea7649483661c62818210259a22d0e33e60bfb32db02d372ce6b12a SHA512 a194f808ce19b66dc0786b62e23bc75e29e3d79779b2176c0f7e8bda564d937e2f0e83fb2337d3b8b5230bb22d1a053b371276418fd537d7ccc9e5242496037c DIST gcc-16.0.0-musl-patches-1.tar.xz 3040 BLAKE2B 18b16357699780eb470cf44a10710281955140103198e0bd55b75e1efe3dbec233689edb11e1b9a62f782f3d97293af4906c18c2c41613b422eda085ee819467 SHA512 5ba580c7c7bb9e62935a5162d44d357cc31185a113acff7498ed7b1ac43fd0a35de7c3de0c87f02fe0be46b5e55b49bb35d1f5cd470058d21a9ea4096a37e13d DIST gcc-16.0.0-patches-3.tar.xz 17832 BLAKE2B 8ca77441e3909b650f1894144eefa57ec8c9591adaedccf738d37c7d28626d08927794053d3d2e5a0d10a9d8727584183042e2607e56f09ee6401ef5a002477d SHA512 1b21a7cc71f3c927eaff6d50fafd3c4f9fb206870dbdc4742cee6dcb31b8469ac1baff49b458152324daef5a5e867b376642f25ed2a6c6126d11c2878deace0e DIST gcc-16.0.0-patches-4.tar.xz 22180 BLAKE2B 2746a4e115da4a12f64c8655fe43ae5bb722c1be658585eed7091613c8449908d79ecbc7fcb9a7302f22c4bfdc99c30b20e51caea8533027bc85f9898fc19a6b SHA512 e603a754df9bb602e929280fe305866337653d09f0e293273f0a7b50f514b8778adab701d5934fd1e8d2744f3889c05d26599bfdd270f84244f6a554c92b6a4c +DIST gcc-16.0.0-patches-5.tar.xz 23960 BLAKE2B 216e4d2b669043f2bd50fa69099388475b81129a9c96884f5ee1846dedd926e5243217d361ad840537c503e3af429d4930dbda92becbd4575fd6d5f4e3b3f47e SHA512 7aa48f5b979ee8feaa722d718d94497f7ae2d51b1793f7f7717befd7d8c5f379557e03d8af14c33b4483e64ad2e702ae6ae34a127a082abeb7e65acaa4999a3f DIST gcc-8.5.0-patches-4.tar.xz 18616 BLAKE2B 7594cbaea5daecf1a0b3d526c06aeba0a84c6da66aee2e105a51fda6be8d30a37ccc3814281b284a4582d892a1d556bca063551584edfc2525bed8ea5b6888e7 SHA512 1aa5742c361186637e7855f06feb1a4547e7d4d5de6e51f3d049e0ef3c19e2eff179465f52781739f59422035b7f8e4c0efa3844849f920f3c96acfdc37ca6a6 DIST gcc-8.5.0.tar.xz 63841008 BLAKE2B aa81a1a730fd7371360f6abed6ba78b5843fd18c58d5de5687acc320741b9e430e85df3535a1ef7a26051409be8d2f0945f503e5968480d919103123a99d4b12 SHA512 92f599680e6b7fbce88bcdda810f468777d541e5fddfbb287f7977d51093de2a5178bd0e6a08dfe37090ea10a0508a43ccd00220041abbbec33f1179bfc174d8 DIST gcc-9.5.0-patches-2.tar.xz 14324 BLAKE2B 1d3bf3e673108ad2fcdcb86daefb4603d1c9f6aa815e34d1591054d466b76d6f50cce124ab4760528c4951ea16eb00888a3e6485417f81ebf250548732df4a8e SHA512 a6d6f650aaf0bd193a17ac279649f0544a282cea295824384c59341c3000eac4b574b60e00dd427585d928f9768166abf85168b47772132790ad98854acacbbf diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.4.1_p20250702.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.4.1_p20250702.ebuild new file mode 100644 index 0000000000..b56179223d --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.4.1_p20250702.ebuild @@ -0,0 +1,68 @@ +# 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="12.4.0" +PATCH_VER="3" +MUSL_VER="1" +MUSL_GCC_VER="12.4.0" +PYTHON_COMPAT=( python3_{10..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 ~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_user +} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.4.1_p20250704.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.4.1_p20250704.ebuild new file mode 100644 index 0000000000..bd7c494fee --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.4.1_p20250704.ebuild @@ -0,0 +1,69 @@ +# 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 +TOOLCHAIN_GCC_RC=1 +PATCH_GCC_VER="12.4.0" +PATCH_VER="3" +MUSL_VER="1" +MUSL_GCC_VER="12.4.0" +PYTHON_COMPAT=( python3_{10..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 ~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_user +} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20250703.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20250703.ebuild new file mode 100644 index 0000000000..bb96cde3f4 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20250703.ebuild @@ -0,0 +1,69 @@ +# 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="13.3.0" +MUSL_GCC_VER="13.2.0" +PATCH_VER="5" +MUSL_VER="2" +PYTHON_COMPAT=( python3_{10..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-14.3.1_p20250704.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20250704.ebuild new file mode 100644 index 0000000000..999d16e0cd --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20250704.ebuild @@ -0,0 +1,57 @@ +# 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="14.2.0" +PATCH_VER="8" +MUSL_VER="1" +MUSL_GCC_VER="14.1.0" +PYTHON_COMPAT=( python3_{10..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-15.1.1_p20250705.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.1.1_p20250705.ebuild new file mode 100644 index 0000000000..60e2fc3636 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.1.1_p20250705.ebuild @@ -0,0 +1,56 @@ +# 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.1.0" +PATCH_VER="1" +MUSL_VER="1" +MUSL_GCC_VER="15.1.0" +PYTHON_COMPAT=( python3_{10..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_p20250706.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20250706.ebuild new file mode 100644 index 0000000000..98c97a4646 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.0_p20250706.ebuild @@ -0,0 +1,56 @@ +# 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="5" +MUSL_VER="1" +MUSL_GCC_VER="16.0.0" +PYTHON_COMPAT=( python3_{10..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/gettext/Manifest b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/Manifest index a269dcd016..efb2d2132b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/Manifest @@ -4,5 +4,9 @@ DIST gettext-0.22.5.tar.xz 10270724 BLAKE2B 18c383518f5a78b5c04cf76de976524da2a8 DIST gettext-0.22.5.tar.xz.sig 833 BLAKE2B bb3e5ced34ab109f498347a3567103fe3491f69addb4a5ce25bf854fae1a11340eef1a9826b369d2416b53e5f7065aeebdb1609615f064cf7fb4151e82a5b4e5 SHA512 87f1df69206702be928b09a59a19ae4c23072cbc78ea16e76bfc4c929de76a3c0bb8e4eb2c3100c6e7b3b51d23e3b0e484c7e1d576ba7e25fd887934dc9ed8f7 DIST gettext-0.23.1.tar.xz 11038556 BLAKE2B 08d10340f3d855a87a96594c6f2dcf72925394f02e86235090f8d272e0a27ce32e57a0fbaed61aaf61d7328ff30be076dccaecaa13832d8db3ec0a51786780b9 SHA512 d75908f73eabe36c01d72d342ca694dbefad5f43da54f0ccb43bfd0518baff5becc8f50e787f21fadb7c29b3123638e4559334ea4f8e48a97107e8c5e22453b6 DIST gettext-0.23.1.tar.xz.sig 833 BLAKE2B 7ab3c5b76825fcd71371f25f0cc3d79704c5ae405f153917901f583f5780f3707f622522b2bac89dbf32a7bf281216ad7469608af490ad6072f12c81e472200a SHA512 8aa2ba38d863d15a91b526b8b22d5aa54e07bc9cf716a551338d4f7f4230288bfa1234d4628e28fcdb4dc4050786a233a194197ca247d98c939e4d06bca4c230 +DIST gettext-0.23.2.tar.xz 11050476 BLAKE2B a59345e2164ef67bab6cb87593a51c6cdba7ee3a0d3805a8603bcd50e3d3351d7c3b0f9f3241c616a790ea5a4cedea171fad349bbabbea18c5d2245c2c6b5f6f SHA512 0c4d1a2cd6849a39eae3e2b94bc9627822c5c5262689b2dd5aa7295a811a82727a7ac83125ef841b19895a70a223e46b048806597f9626acc73438f6d394db3e +DIST gettext-0.23.2.tar.xz.sig 228 BLAKE2B a407f7fb586e300b6ba4032f9e5920864e1f3ba7dfc37fa3d6a48aa4e6e1eaa8238fc8f02ba6ee8e5e4eed9a0206eb61c52cc0f4121bc23d59fc00b3238accd7 SHA512 172f3fb3a7645a2259912d002e7700fa411a9be33b76d2eaacdafe1352cd8dcca23b335d6fbe8b31cbae18f1036be50e27ee7fd9bb2048a991238f99791f54a4 +DIST gettext-0.25.1.tar.xz 9930836 BLAKE2B 8a1e512b9bcfa196dcf138e80844766fe35d6c08240e862ac9a728aee378c711e88f7145f9142e7178fa25b6556f1daa6d2de066714cbe26db64dd24fb3516ae SHA512 321c890c2fa535a7ad7a0d4a9fdf08ecd679cfc91bae1a84d54454bcfa5cfc46240be03444c55c0ab9d5b5e1b7d3db2d22ff81d94f595d8c793e370caf4b5c94 +DIST gettext-0.25.1.tar.xz.sig 228 BLAKE2B 613be788a4b7ebf1318103b1c2dd0bad0397e4f453de8cfc924915008e43c7c224a435710a3dc19f42ed6f42ff14d124ca04482d1a2ed6bc12dd39b950526685 SHA512 36efdfce828171f062b899a6655939a923294bef0fa664e1c39a519241cecfc09bcbd9471bcc9150e96446e83042cd5a4cc034f8f1f39d02c59bde3cede4417a DIST gettext-0.25.tar.xz 9932992 BLAKE2B cec5dd43f64ea676b112d53374452852ad25b2d31833a805bb2f92cd0b172536b47f916ad630fd4acd11208d408ff302eac2a5cd6a78ec653b7d5a3b447f5584 SHA512 8fb6934c7603304ce1b8f23740e68a6d23252e71f3cb22849506230ad289c03dd1a4d9bf01387b9a7bc6413e37bda14ab9bf166eecd678373d896c08c016c9dd DIST gettext-0.25.tar.xz.sig 228 BLAKE2B 62d65e8734808c6a717f2cd147e9ff5f7ef2e07b5535a711a745444c277a167936124f1b17006476d1db3b94da0ebd27b39f918960c0848219facab4db0790b5 SHA512 4d364fa91375c0fad002d350a16a9c0afb723e52ebd771a24a0d8209459a0baf273b2cd2920c3f3bb291e5069ff55107d1096c9147bb51ec49bd156006853c9a diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/files/gettext-0.23-no-nls.patch b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/files/gettext-0.23-no-nls.patch deleted file mode 100644 index cade5e421e..0000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/files/gettext-0.23-no-nls.patch +++ /dev/null @@ -1,163 +0,0 @@ -https://bugs.gentoo.org/945817 -https://savannah.gnu.org/bugs/?66533 -https://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commitdiff;h=4a2fe717080b34a2770a674235bb2b6e3e3dd86f - --- -Patch from: -https://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commitdiff;h=4a2fe717080b34a2770a674235bb2b6e3e3dd86f -Removed non-applying Changelog hunk & fixed patch prefix to match file path in the tarball. - -Bug: https://bugs.gentoo.org/945817 -Signed-off-by: Holger Hoffstätte ---- a/gettext-tools/gnulib-m4/bison-i18n.m4 -+++ b/gettext-tools/gnulib-m4/bison-i18n.m4 -@@ -1,5 +1,5 @@ - # bison-i18n.m4 --# serial 5 -+# serial 6 - dnl Copyright (C) 2005-2006, 2009-2024 Free Software Foundation, Inc. - dnl This file is free software; the Free Software Foundation - dnl gives unlimited permission to copy and/or distribute it, -@@ -57,27 +57,28 @@ AC_DEFUN([BISON_I18N], - fi - fi - AC_SUBST([BISON_LOCALEDIR]) -+ fi - -- dnl Define BISON_LOCALEDIR_c and BISON_LOCALEDIR_c_make. -- dnl Find the final value of BISON_LOCALEDIR. -- gl_saved_prefix="${prefix}" -- gl_saved_datarootdir="${datarootdir}" -- gl_saved_localedir="${localedir}" -- gl_saved_bisonlocaledir="${BISON_LOCALEDIR}" -- dnl Unfortunately, prefix gets only finally determined at the end of -- dnl configure. -- if test "X$prefix" = "XNONE"; then -- prefix="$ac_default_prefix" -- fi -- eval datarootdir="$datarootdir" -- eval localedir="$localedir" -- eval BISON_LOCALEDIR="$BISON_LOCALEDIR" -- gl_BUILD_TO_HOST([BISON_LOCALEDIR]) -- BISON_LOCALEDIR="${gl_saved_bisonlocaledir}" -- localedir="${gl_saved_localedir}" -- datarootdir="${gl_saved_datarootdir}" -- prefix="${gl_saved_prefix}" -+ dnl Define BISON_LOCALEDIR_c and BISON_LOCALEDIR_c_make. -+ dnl Find the final value of BISON_LOCALEDIR. -+ gl_saved_prefix="${prefix}" -+ gl_saved_datarootdir="${datarootdir}" -+ gl_saved_localedir="${localedir}" -+ gl_saved_bisonlocaledir="${BISON_LOCALEDIR}" -+ dnl Unfortunately, prefix gets only finally determined at the end of -+ dnl configure. -+ if test "X$prefix" = "XNONE"; then -+ prefix="$ac_default_prefix" - fi -+ eval datarootdir="$datarootdir" -+ eval localedir="$localedir" -+ eval BISON_LOCALEDIR="$BISON_LOCALEDIR" -+ gl_BUILD_TO_HOST([BISON_LOCALEDIR]) -+ BISON_LOCALEDIR="${gl_saved_bisonlocaledir}" -+ localedir="${gl_saved_localedir}" -+ datarootdir="${gl_saved_datarootdir}" -+ prefix="${gl_saved_prefix}" -+ - if test $BISON_USE_NLS = yes; then - AC_DEFINE([YYENABLE_NLS], [1], - [Define to 1 to internationalize bison runtime messages.]) - ---- a/gettext-tools/configure -+++ b/gettext-tools/configure -@@ -29892,17 +29892,18 @@ fi - fi - fi - -+ fi - -- gl_saved_prefix="${prefix}" -- gl_saved_datarootdir="${datarootdir}" -- gl_saved_localedir="${localedir}" -- gl_saved_bisonlocaledir="${BISON_LOCALEDIR}" -- if test "X$prefix" = "XNONE"; then -- prefix="$ac_default_prefix" -- fi -- eval datarootdir="$datarootdir" -- eval localedir="$localedir" -- eval BISON_LOCALEDIR="$BISON_LOCALEDIR" -+ gl_saved_prefix="${prefix}" -+ gl_saved_datarootdir="${datarootdir}" -+ gl_saved_localedir="${localedir}" -+ gl_saved_bisonlocaledir="${BISON_LOCALEDIR}" -+ if test "X$prefix" = "XNONE"; then -+ prefix="$ac_default_prefix" -+ fi -+ eval datarootdir="$datarootdir" -+ eval localedir="$localedir" -+ eval BISON_LOCALEDIR="$BISON_LOCALEDIR" - - - -@@ -29927,11 +29928,11 @@ fi - fi - - -- BISON_LOCALEDIR="${gl_saved_bisonlocaledir}" -- localedir="${gl_saved_localedir}" -- datarootdir="${gl_saved_datarootdir}" -- prefix="${gl_saved_prefix}" -- fi -+ BISON_LOCALEDIR="${gl_saved_bisonlocaledir}" -+ localedir="${gl_saved_localedir}" -+ datarootdir="${gl_saved_datarootdir}" -+ prefix="${gl_saved_prefix}" -+ - if test $BISON_USE_NLS = yes; then - - printf "%s\n" "#define YYENABLE_NLS 1" >>confdefs.h -@@ -61062,17 +61063,18 @@ fi - fi - fi - -+ fi - -- gl_saved_prefix="${prefix}" -- gl_saved_datarootdir="${datarootdir}" -- gl_saved_localedir="${localedir}" -- gl_saved_bisonlocaledir="${BISON_LOCALEDIR}" -- if test "X$prefix" = "XNONE"; then -- prefix="$ac_default_prefix" -- fi -- eval datarootdir="$datarootdir" -- eval localedir="$localedir" -- eval BISON_LOCALEDIR="$BISON_LOCALEDIR" -+ gl_saved_prefix="${prefix}" -+ gl_saved_datarootdir="${datarootdir}" -+ gl_saved_localedir="${localedir}" -+ gl_saved_bisonlocaledir="${BISON_LOCALEDIR}" -+ if test "X$prefix" = "XNONE"; then -+ prefix="$ac_default_prefix" -+ fi -+ eval datarootdir="$datarootdir" -+ eval localedir="$localedir" -+ eval BISON_LOCALEDIR="$BISON_LOCALEDIR" - - - -@@ -61097,11 +61099,11 @@ fi - fi - - -- BISON_LOCALEDIR="${gl_saved_bisonlocaledir}" -- localedir="${gl_saved_localedir}" -- datarootdir="${gl_saved_datarootdir}" -- prefix="${gl_saved_prefix}" -- fi -+ BISON_LOCALEDIR="${gl_saved_bisonlocaledir}" -+ localedir="${gl_saved_localedir}" -+ datarootdir="${gl_saved_datarootdir}" -+ prefix="${gl_saved_prefix}" -+ - if test $BISON_USE_NLS = yes; then - - printf "%s\n" "#define YYENABLE_NLS 1" >>confdefs.h diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.22.5-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.22.5-r2.ebuild index 9fffec587c..8ddf1eec6d 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.22.5-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.22.5-r2.ebuild @@ -23,7 +23,7 @@ else 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 ~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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi # Only libasprintf is under the LGPL (and libintl is in a sep package), diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.22.5-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.23.2.ebuild similarity index 81% rename from sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.22.5-r1.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.23.2.ebuild index c9ee1016f9..5b164e7b73 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.22.5-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.23.2.ebuild @@ -6,8 +6,7 @@ EAPI=8 VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gettext.asc -inherit java-pkg-opt-2 libtool multilib-minimal verify-sig toolchain-funcs -inherit flag-o-matic +inherit flag-o-matic java-pkg-opt-2 libtool multilib-minimal verify-sig toolchain-funcs DESCRIPTION="GNU locale utilities" HOMEPAGE="https://www.gnu.org/software/gettext/" @@ -23,7 +22,7 @@ else 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 ~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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi # Only libasprintf is under the LGPL (and libintl is in a sep package), @@ -37,15 +36,10 @@ IUSE="acl +cxx doc emacs git java ncurses nls openmp static-libs xattr" # Note: The version of libxml2 corresponds to the version bundled via gnulib. # If the build detects too old of a system version, it will end up falling back # to the bundled copy (bug #596918). -# -# Note: expat lacks a subslot because it is dynamically loaded at runtime. We -# would depend on older subslots if they were available (based on the ABIs that -# are explicitly handled), but expat doesn't currently use subslots. DEPEND=" >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}] >=virtual/libintl-0-r2[${MULTILIB_USEDEP}] >=dev-libs/libxml2-2.9.3:= - dev-libs/expat acl? ( virtual/acl ) ncurses? ( sys-libs/ncurses:= ) java? ( >=virtual/jdk-1.8:* ) @@ -55,6 +49,7 @@ RDEPEND=" ${DEPEND} git? ( dev-vcs/git ) java? ( >=virtual/jre-1.8:* ) + nls? ( app-i18n/gnulib-l10n ) " BDEPEND=" git? ( dev-vcs/git ) @@ -93,12 +88,11 @@ src_prepare() { default - # gettext-0.21.1-java-autoconf.patch changes - # gettext-{runtime,tools}/configure.ac and the corresponding - # configure scripts. Avoid regenerating other autotools output. - #touch -c gettext-{runtime,tools}/{aclocal.m4,Makefile.in,config.h.in,configure} || die - # Makefile.am adds a dependency on gettext-{runtime,tools}/configure.ac - #touch -c configure || die + # gettext-0.23-no-nls.patch changes gettext-tools/configure.ac and the + # corresponding configure scripts. Avoid regenerating other autotools output. + touch -c gettext-tools/{aclocal.m4,Makefile.in,config.h.in,configure} || die + # Makefile.am adds a dependency on gettext-tools/configure.ac + touch -c configure || die elibtoolize @@ -108,6 +102,9 @@ src_prepare() { } multilib_src_configure() { + # see https://bugs.gentoo.org/955689 + append-flags -Wno-error=format-security + local myconf=( # switches common to runtime and top-level --cache-file="${BUILD_DIR}"/config.cache @@ -149,9 +146,6 @@ multilib_src_configure() { ECONF_SOURCE+=/gettext-runtime fi - # should be gone on next release, for memset_s breakage - [[ ${CHOST} == *-solaris* ]] && append-cppflags -D__STDC_WANT_LIB_EXT1__=1 - econf "${myconf[@]}" } diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.22.5.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.25.1.ebuild similarity index 79% rename from sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.22.5.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.25.1.ebuild index 826a4441d3..16a4615dd3 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.22.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.25.1.ebuild @@ -6,8 +6,7 @@ EAPI=8 VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gettext.asc -inherit java-pkg-opt-2 libtool multilib-minimal verify-sig toolchain-funcs -inherit flag-o-matic +inherit flag-o-matic java-pkg-opt-2 libtool multilib-minimal verify-sig toolchain-funcs DESCRIPTION="GNU locale utilities" HOMEPAGE="https://www.gnu.org/software/gettext/" @@ -23,7 +22,7 @@ else 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 ~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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi # Only libasprintf is under the LGPL (and libintl is in a sep package), @@ -37,28 +36,24 @@ IUSE="acl +cxx doc emacs git java ncurses nls openmp static-libs xattr" # Note: The version of libxml2 corresponds to the version bundled via gnulib. # If the build detects too old of a system version, it will end up falling back # to the bundled copy (bug #596918). -# -# Note: expat lacks a subslot because it is dynamically loaded at runtime. We -# would depend on older subslots if they were available (based on the ABIs that -# are explicitly handled), but expat doesn't currently use subslots. DEPEND=" >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}] >=virtual/libintl-0-r2[${MULTILIB_USEDEP}] >=dev-libs/libxml2-2.9.3:= - dev-libs/expat acl? ( virtual/acl ) ncurses? ( sys-libs/ncurses:= ) - java? ( virtual/jdk:1.8 ) + java? ( >=virtual/jdk-1.8:* ) xattr? ( sys-apps/attr ) " RDEPEND=" ${DEPEND} git? ( dev-vcs/git ) - java? ( virtual/jre:1.8 ) + java? ( >=virtual/jre-1.8:* ) + nls? ( app-i18n/gnulib-l10n ) " BDEPEND=" git? ( dev-vcs/git ) - verify-sig? ( sec-keys/openpgp-keys-gettext ) + verify-sig? ( >=sec-keys/openpgp-keys-gettext-20250608 ) " PDEPEND="emacs? ( app-emacs/po-mode )" @@ -93,13 +88,19 @@ src_prepare() { default - # gettext-0.21.1-java-autoconf.patch changes - # gettext-{runtime,tools}/configure.ac and the corresponding - # configure scripts. Avoid regenerating other autotools output. - #touch -c gettext-{runtime,tools}/{aclocal.m4,Makefile.in,config.h.in,configure} || die - # Makefile.am adds a dependency on gettext-{runtime,tools}/configure.ac + # gettext-0.23-no-nls.patch changes gettext-tools/configure.ac and the + # corresponding configure scripts. Avoid regenerating other autotools output. + #touch -c gettext-tools/{aclocal.m4,Makefile.in,config.h.in,configure} || die + # Makefile.am adds a dependency on gettext-tools/configure.ac #touch -c configure || die + # TOOD: Investigate why this fails + cat <<-EOF > gettext-tools/tests/autopoint-3 || die + #!/bin/sh + exit 77 + EOF + chmod +x gettext-tools/tests/autopoint-3 || die + elibtoolize if use elibc_musl || use elibc_Darwin; then @@ -108,6 +109,9 @@ src_prepare() { } multilib_src_configure() { + # see https://bugs.gentoo.org/955689 + append-flags -Wno-error=format-security + local myconf=( # switches common to runtime and top-level --cache-file="${BUILD_DIR}"/config.cache @@ -131,6 +135,11 @@ multilib_src_configure() { --disable-csharp --without-cvs + # TODO: needs help finding our libm2pim.so (finds 32-bit version) + --disable-modula2 + # Tests try to access the network + --disable-go + $(use_enable acl) $(use_enable cxx c++) $(use_enable cxx libasprintf) @@ -149,9 +158,6 @@ multilib_src_configure() { ECONF_SOURCE+=/gettext-runtime fi - # should be gone on next release, for memset_s breakage - [[ ${CHOST} == *-solaris* ]] && append-cppflags -D__STDC_WANT_LIB_EXT1__=1 - econf "${myconf[@]}" } 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-106-r2.ebuild index 5095b44322..71e06f30c7 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-106-r2.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}" diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.44-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.44-r2.ebuild index 68778c83c8..30409721e9 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.44-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.44-r2.ebuild @@ -3,7 +3,7 @@ EAPI=8 -inherit dot-a libtool toolchain-funcs multilib-minimal +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/" @@ -208,9 +208,37 @@ multilib_src_configure() { } multilib_src_test() { - # Without this, the default `src_test` check for the 'check' target - # with `-n` may fail with parallel make and silently skip tests (bug #955595) - emake check + ( + # 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() { diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-9999.ebuild index bf7a24d748..5afd4e37fd 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-9999.ebuild @@ -3,7 +3,7 @@ EAPI=8 -inherit dot-a libtool toolchain-funcs multilib-minimal +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/" @@ -208,9 +208,37 @@ multilib_src_configure() { } multilib_src_test() { - # Without this, the default `src_test` check for the 'check' target - # with `-n` may fail with parallel make and silently skip tests (bug #955595) - emake check + ( + # 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() { 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 528b2d6c16..fd9bfed0df 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,7 +25,6 @@ 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-4.tar.xz 75808 BLAKE2B 09a5447ddcfb60fa5b8d6325ea19b4431a4c723deddda40ff1465726e6834a4b412bde218308ecf44a05b58226d6f2affc93b4fc1db5171cf3a55e54db17ee82 SHA512 54aca5239f5cbe7f50b10b9e503388801fe6ada4ec40f3f686b9dd20c2d377ceb361f5b6681bd30b3460edd649fc4a0219004e88e01c20288867de82bf0981a7 DIST glibc-2.41-patches-6.tar.xz 83980 BLAKE2B ca689782db9f78751d5b5004ee9bf7bd6daf4cf071bb25507e53e4408fdd0331a9f4c82bbe7579e38540fc4d416bd858f76e5655f4e8a87048067fbc5e3c7a17 SHA512 bce972f5e036712e178d0adc97bef17b83a5c5cc3139d689bfc2847bc5e8126ee01250ce41033bc78919a7638965740d54eb431b240a9a32460c433335da968f DIST glibc-2.41.tar.xz 19344868 BLAKE2B 4da62f489ba7a95bb069c2cfea8cf78e4d37e3a5f7e1736239670ba1dca12b69aa77bd00ced078c27d91b1e622c58cbd70258161a9d18c5b3bcc95863b8d744d SHA512 894a3e5a796bc13df30c26a5bfbe4d60b5dbdaac54e7763432235124b547070c7dda88c50584536870cab79183d8cad73a3ac6ed09bfe54fa8482aad07253169 DIST glibc-systemd-20210729.tar.gz 1480 BLAKE2B 37722c7579df782d890e44dbab99c3de52ab466eb9de80d82405e9bb5620bf39ffc8c5f466a435bdb86ef6d36dd7019c0736573916bda6c67d02a2581e0ec979 SHA512 efd75af58b50522c28cdac7abd1fc56555bc1bb042512c90d8340c1ec09c5791b3872a305bf83723252bbde5855b75d958c041083457765c4cfd170732d09238 diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41-r3.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41-r3.ebuild deleted file mode 100644 index 105d02ffa3..0000000000 --- a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41-r3.ebuild +++ /dev/null @@ -1,1768 +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=4 -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 ~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 - -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} - !/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_ 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 \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 \n#include \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() 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 ; 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() { - # if the host locales.gen contains no entries, we'll install everything - local root="$1" - local inplace="" - - if [[ "${root}" == "--inplace-glibc" ]] ; then - inplace="--inplace-glibc" - root="$2" - fi - - local locale_list="${root%/}/etc/locale.gen" - - pushd "${ED}"/$(get_libdir) >/dev/null - - if [[ -z $(locale-gen --list --config "${locale_list}") ]] ; then - [[ -z ${inplace} ]] && ewarn "Generating all locales; edit /etc/locale.gen to save time/space" - locale_list="${root%/}/usr/share/i18n/SUPPORTED" - 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 - local mygenjobs="$(makeopts_jobs)" - if [[ "${EMERGE_FROM}" == "binary" ]] ; then - mygenjobs="$(nproc)" - fi - - set -- locale-gen ${inplace} --jobs "${mygenjobs}" --config "${locale_list}" \ - --destdir "${root}" - echo "$@" - "$@" - - popd >/dev/null -} - -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-.a ..." -> "GROUP ( /usr/lib64/glibc-/libm-.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 --inplace-glibc "${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 - - use compile-locales || run_locale_gen "${EROOT}/" - - # 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.41-r4.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41-r4.ebuild index d4c9fa6db4..373c2958ca 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41-r4.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41-r4.ebuild @@ -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/libcap/libcap-2.76.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libcap/libcap-2.76.ebuild index 6a6ea8d8fc..62a99858f4 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libcap/libcap-2.76.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libcap/libcap-2.76.ebuild @@ -11,7 +11,7 @@ if [[ ${PV} == *9999 ]]; then else SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz" - KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" fi DESCRIPTION="POSIX 1003.1e capabilities" diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libunwind/libunwind-1.8.2.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libunwind/libunwind-1.8.2.ebuild index e7142007a7..5438575643 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libunwind/libunwind-1.8.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libunwind/libunwind-1.8.2.ebuild @@ -31,7 +31,7 @@ else S="${WORKDIR}"/${P/_rc/-rc} if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="amd64 ~arm ~arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 -sparc x86 ~amd64-linux ~x86-linux" + KEYWORDS="amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 -sparc x86 ~amd64-linux ~x86-linux" fi fi diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/readline/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/readline/Manifest index 9dfa4203c7..a93694b7d0 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/readline/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/readline/Manifest @@ -1,8 +1,8 @@ DIST readline-8.1-rlfe-c99.patch.xz 5756 BLAKE2B fb2df42d2c16bef68a3716c55374da7a9d95c8f4c5645da9a60aa72624d5baa50c70da78292adcb20e5fb11f28d6320d627522bc4c8faf0f7c4c782fd75664e8 SHA512 1bad39eff82212ed2cd5ae4ff574a4cdbe20ee56ecac1bae469c90304573d10ed82fdab75bc09725e400dbb5568a34345f3241a409b7ede5645a3c02c0101018 DIST readline-8.2.tar.gz 3043952 BLAKE2B 7974322b9c092a756a79e537df08e8532f8e0fcb598f77732e28287c33ebec9e9837ed88b43334c310892d56a871b423903f0f564def2fbe700a1004f2ae7b18 SHA512 0a451d459146bfdeecc9cdd94bda6a6416d3e93abd80885a40b334312f16eb890f8618a27ca26868cebbddf1224983e631b1cbc002c1a4d1cd0d65fba9fea49a DIST readline-8.2.tar.gz.sig 95 BLAKE2B dc510459c0c47782ca87364a6677b4d8f0b68a984143122c08bd15aef08a71bff59ac92d3c3ada518dad09f189c144748e840175041eb619f679e2d8b95dc2aa SHA512 0effd273689e5f7fe7e049c8f2c5f3c97149f198a90d053231ee4de34901560a465ab0d4fd71fd07c7d7e233caed7f42e5b668bffaf1e23a7eb373c8f9e150fe -DIST readline-8.3-rc2.tar.gz 3417192 BLAKE2B 6306fa5c3f4bf532f869f6f2055a3cbc98b320c802f87d0fcd36300bd2553d2bbd36f2f60c5d39d84e5d7479f4825d1db4f1ae73fa2b1a036474f12713a23caf SHA512 9e246a111a73ace7b3f9f536e931bdf1cf8fe6a28a61ece6b422d1cbc8116ec6d8007ff4ff4a035cae73e2c25afc71d4054aa41260f7cfa5894a204df7ab48e0 -DIST readline-8.3-rc2.tar.gz.sig 95 BLAKE2B e4338c0928989a590313864022dff9b92f054e2aa13cc4996904766a35770015f5f01c2964f979dd5c764ad56cacffc2ece3ad3042bd6a0a950f09cb1312c4c6 SHA512 0c6d89de878583fc0acff6bf50fd7faf93135375084c86d330c11238f9a496864beea2ffb58c89df2615585f8096061f4f64b0fef67ca3068e3cdaeacd6fb2c0 +DIST readline-8.3.tar.gz 3419642 BLAKE2B 45d6fe7e34c56d309102a94aa776a7f5284201e844450e14ff818df9fa84a72154bdca70f11828c94954b080cbbe4666fa0b00ffa8460118ec8f3ea551b73dad SHA512 513002753dcf5db9213dbbb61d51217245f6a40d33b1dd45238e8062dfa8eef0c890b87a5548e11db959e842724fb572c4d3d7fb433773762a63c30efe808344 +DIST readline-8.3.tar.gz.sig 95 BLAKE2B 088be0a0dbcafc6e9643daac987bf09e37b919b28c87ffbd7d47ee798f71d5e2eb48a07ae040e7290465c95c32385b10b3a0c1285861d4c663e6e1fd28b091b6 SHA512 8f9d4adeb068016e61f76052fb38552db447fc461c7d48811d8af5f0436abce20277e08c475a1c48c99fa37f2b20ca549a94eb5cee0fe6f0d4c854699cc0988c DIST readline82-001 1198 BLAKE2B 2e8f3d2aa14c4c4c4f9621f80f4ffae9bbd6f46c3561e87aaf684c759ffd82e3c46843cf4c4224533b28a847d83f7b8b254813f8a306d438e9f7cb457516c4e0 SHA512 ea3800a62e992b3e594d78e77b6c4b662fb8c501b81010277e478656bb3b56db7747ba40c6c3d68c3ec5ab8e9e41be104788ec52268135d7e642ff40dea421a8 DIST readline82-001.sig 94 BLAKE2B 542ac331a7da3702b47f4828b3264bc7bf996f473807d675044beeb9688c4ca3645bcba0898d3ea9447c1cde540eb8a6b1934008b0a11baef33235e43f44c6c7 SHA512 01ad9769fee42dc601b511c87bd39e15c74226e1747c4ae8914e303213706005780135add180dbfe538fe847533dc56cfe8f51a3ad9ec55d1fde2cb2e096bfb5 DIST readline82-002 1134 BLAKE2B 799f089105be9931ba13d562d4579b4d1dbdd5440b625b8fe0f1cec6438a1623bf473944cb278b937ca5ab2b98eac2f5993d6e047b96368b5fcd5649fb536d96 SHA512 2d4058c5c886498486d8514c238c0a05c0a97409011a7da40745e842977f0a29754e8b678f7e6e7a47c00df7e2e4c522d34d473118a24524af3824eed912e74a diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3_rc2.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3.ebuild similarity index 100% rename from sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3_rc2.ebuild rename to sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-9999.ebuild index 1cde47e3aa..1afe268f72 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-9999.ebuild @@ -44,7 +44,7 @@ elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then # 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="4d34c34b3aa955f65e79bfbf7b7426344a3c2840" + 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 diff --git a/sdk_container/src/third_party/portage-stable/sys-process/audit/audit-4.0.2-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-process/audit/audit-4.0.2-r1.ebuild index ccaff3704f..e962706150 100644 --- a/sdk_container/src/third_party/portage-stable/sys-process/audit/audit-4.0.2-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-process/audit/audit-4.0.2-r1.ebuild @@ -17,7 +17,7 @@ SRC_URI="https://people.redhat.com/sgrubb/audit/${P}.tar.gz" LICENSE="GPL-2+ 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="gssapi io-uring ldap python static-libs test" REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" @@ -51,6 +51,10 @@ QA_CONFIG_IMPL_DECL_SKIP=( strndupa ) +PATCHES=( + "${FILESDIR}/${PN}-4.0.1-musl-basename.patch" +) + src_prepare() { # audisp-remote moved in multilib_src_install_all sed -i \ diff --git a/sdk_container/src/third_party/portage-stable/sys-process/audit/files/audit-4.0.1-musl-basename.patch b/sdk_container/src/third_party/portage-stable/sys-process/audit/files/audit-4.0.1-musl-basename.patch new file mode 100644 index 0000000000..08b74caf8a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-process/audit/files/audit-4.0.1-musl-basename.patch @@ -0,0 +1,14 @@ +Since musl 1.2.5, basename(3) is strict-POSIX compliant, and +needs #include , instead of the GNU version included +with + +--- a/audisp/plugins/zos-remote/zos-remote-config.c ++++ b/audisp/plugins/zos-remote/zos-remote-config.c +@@ -32,6 +32,7 @@ + #include + #include + #include ++#include + #include "zos-remote-log.h" + + /* Local prototypes */ diff --git a/sdk_container/src/third_party/portage-stable/virtual/service-manager/service-manager-2.ebuild b/sdk_container/src/third_party/portage-stable/virtual/service-manager/service-manager-2.ebuild index 37ea1b960b..bcf9c97ad9 100644 --- a/sdk_container/src/third_party/portage-stable/virtual/service-manager/service-manager-2.ebuild +++ b/sdk_container/src/third_party/portage-stable/virtual/service-manager/service-manager-2.ebuild @@ -6,7 +6,7 @@ EAPI=8 DESCRIPTION="Virtual for various service managers" 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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE="systemd" RDEPEND=" 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 7953f11ff1..e0bdf6134e 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,9 +1,9 @@ DIST NVIDIA-Linux-aarch64-535.247.01.run 269861217 BLAKE2B c72eb28472c6a5ee5344618b343efc3f8edac94a5d2c994b86d113f7258c0df228076462d3fb84791f8f1c666554d20116ebb6a7444b680128556a4b9e8b2b29 SHA512 a0bd487238d41fd907c7e87d8ce10b4e19a367c8faafafc914fe6d741b348619e7427a5ff22dd2a475e4dd5cf3148965934b746bcc34b3f572bc01e8a6429bda DIST NVIDIA-Linux-aarch64-550.163.01.run 236409124 BLAKE2B 21c79346f6b739f44d7ed2d4955129613f51e1329ff15948ef50a9a06b82975ad890d6142e5dfb163e7b0da19bf5c26029cf507d120037f8a76abc177a286403 SHA512 0ef4ab4aae308ec0cfb5458cef34a1503ac1a85f0e1d0c9f061d8e28f939b15784e3862d96d83e93123d9eb56807a6804318ce230ee68917fb75e363011f8304 -DIST NVIDIA-Linux-aarch64-570.144.run 289812160 BLAKE2B 45b7fd81be03b5ee96c51081ed2eb498b3ab45ff3d31459f4d220dc022c790ba5186dff37bc9cfcc49d0874fb9c49fedbe9edb9268d4c5577bafad0c85c7667b SHA512 554e3ae25643502562017c2c6d5224ef8d6065ac81602d9d561576390f8e402f4ab365d5fc46e2139abf47073b4af7e98b60c602035bbc3f1450947bcc00b432 DIST NVIDIA-Linux-aarch64-570.153.02.run 289829452 BLAKE2B aae0e65be8f5d617b4c270d9042b410773cc476446f922e3f8b27d87f64cfe38cc12a586c369fc824cb185977d648854953803f203707294043d6a30361c4c01 SHA512 e5e3bc0f0f5684ef5b1fd54e7dbc92b455242b4b54511ecce41534890c552d29d6985c9ac41bb150a6ba3f24b39122fe36fcac339a7cb8587b79d4ead7b28c64 DIST NVIDIA-Linux-aarch64-570.169.run 290106494 BLAKE2B b8b332c3b121063af061f1ab19f87db6c528da977847423f6d7f0b6c6d7d8bd118e6f0518fbd66c6c633647efb64a3a670cd5ecadffd41faf6271916446f2143 SHA512 551615d6ecc982acdbb52049c5afd11cd8ca69999d097f076884c3f632b3880f95c707ebadf66c3aabf5452aab52cd372894eff574382ed2d79444a65c368369 DIST NVIDIA-Linux-aarch64-575.57.08.run 304970395 BLAKE2B 5c490e71ced2ad94916e660686518063f440ec6be3b00e25dd46969107cd313680092b18efa5a4bb050105ebbf2ec1891b6eb172cac95e52ab1fef3193032853 SHA512 c0e33f925f7e9c121bd5af813898a272eb8d2b99a3e1761aab6965bb95b24c17a994120dcfaf509360bd8087e97cc36fd3dfc95677a59af5f0b1da9321b99746 +DIST NVIDIA-Linux-aarch64-575.64.03.run 305150077 BLAKE2B 5b7a9e0ec90130f8009e9612102e87cc513fef04ffc34e47cc8eb3b787c4642d3445aef0a064005bb33972925a110d7f4716dccc71840e273010b519b019be55 SHA512 16f9fae89102ee1d9f587c8e85098e34e5cd84299766a97920ea4c23aae7e353837e4e69c4c067c27a85ce0d8f18df90c8cc368a100ddc846744d6bff09ad7da DIST NVIDIA-Linux-aarch64-575.64.run 307581538 BLAKE2B 3d15baff14400022abdb7f147c1972fc10b48429c0efbb6d2594c4eaafb760781519538be5505976b98247ce8b342fa790e4f85fd827fee5198a693e6b13ee1b SHA512 e006cf3641245ff2fe92c23273e0e05c2da33577527450672349a20605531836f57b43c4e131995b7f0934113be2cbe8e0c820f70af9ff1073d797daf611933a 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 @@ -11,61 +11,61 @@ DIST NVIDIA-Linux-x86_64-470.256.02.run 272850014 BLAKE2B 0fdc867f92b82b2a60810c DIST NVIDIA-Linux-x86_64-535.247.01.run 341853459 BLAKE2B ef91097a36add821a623c8d1f19eca8ca9571fe4a08b8e25eb70f09923899bcb3bd2c0f408dd6ff045ffdccb192be3a46cec4fd7b7d8d7bc17449c436cc2cbde SHA512 f8e04e5f7cf8b7fdae9135cb5f0f2740d5eae0ef9a44a41dbf78996d3c2d4139bdbec99be14f73aa2d275d78658b4a91a274f20545e4325cef787548e3d073a6 DIST NVIDIA-Linux-x86_64-550.163.01.run 307143336 BLAKE2B 256106bcd3bace402289e60aca4cd3b447d0fd8ec3dabd50e2bb303c5e866f8da5c28f9b578d95775bf69158f100d68a91d20d9a91426285a8e799817f21db6b SHA512 676b1de35d21e80091528a49080c114e0870ea90b3f3721265ae8071abbc2183c851e6f11ba96a332c743fedfaf4ec9a014ad6ceed586fdbb03d94d33405e356 DIST NVIDIA-Linux-x86_64-570.123.18.run 376011120 BLAKE2B 4e58db37bee9caafc49120cb3739847787e08382d50543e3a2a22b9e75fcd515969e3637ad60686bc12150f80c028af8caae14427a24e54fce220761683e81d8 SHA512 64cc8fca0b2d0c3b5c118940b4ae3ffecb297cb1595cc71f66927926e1467cb6577b15d2bcf46cbda4d928a0218ca1d019b0ed27e2c03bfebf244b8551cbb485 -DIST NVIDIA-Linux-x86_64-570.144.run 375742470 BLAKE2B 8611e5d7a5043c18d1ef122c62d2a4efed6dcdec343c7a519778c603f2ddc5186b479af1b09277b47c92af9e6021dedca33e02fb3c7f3096d4dea18acfb2c9d1 SHA512 f0d6a8377cbcb38a4a0491a654d3ed86082ac5609129a247daaa455bd7cffbad0be579db2ba9448a9f0ebc7cf36459d640f03ecbe1f25e8e47f3990f78989c97 DIST NVIDIA-Linux-x86_64-570.153.02.run 375742097 BLAKE2B 608facd79c913fdd58829e2639429e0834feacd52997980d1c143453346790cebaf8dd9295a4cd05947548821891e16bdddf291875e03736ffca7b5d1c9834c6 SHA512 6da277640a4727a420379b43b44c6222869e2fd10794627e73a0a1fe7db6213c0cbab7901799cc9ee2431df54e0c4857eaf1b293fd1750a3bc68c2bf3852413f DIST NVIDIA-Linux-x86_64-570.169.run 375816796 BLAKE2B 1934cc5276433b6ee54b31358d85f88e3e81dd23732fa72848a6c60c455399b5217301e1c8aa1795dd8292bf4e604c6cbc144700775ec2661029b737ba2e3324 SHA512 79cf53770f11405ea416b4a3fe91edd34e8bc99e2f8e0d47dd2b01045b17f23998bfd3d60fc660c0826c69305ee928dec56fb251205e183ede9235e31d01d7d5 DIST NVIDIA-Linux-x86_64-575.57.08.run 389558524 BLAKE2B 04274c2fa9a97767a13c9896ba1132388b4edfb521856e235fcb6e1a2350bbccdfcf3329d41283b98260f51b9af8ebb10b46d19fae4383c3fdc0147d308766f6 SHA512 6ade3fb7227e51f88671f460d990bbd090ac9d4f8968c3c5c6d22011a78c1267c959916e9cdd18ba165c6f0b8f459c9b3534fa39eae9ae527232911fdd8f2417 +DIST NVIDIA-Linux-x86_64-575.64.03.run 387655074 BLAKE2B af4c42095bff2b195f46cb3472cde599e6b8cea7841110da75f7659c41cb83d8a4ee33b242aab44af606353456d9163bc9a73562be4693ac2d5a31621fb9af13 SHA512 ca705ad35dbb6e3e4872ec85dd78e70760e86b28d5d4b9bfe7b5d5ad0fca3bfdcf794e8708f3b1dfcea8edeabc208e820388af4a57dc9c6dcffb5d1761598779 DIST NVIDIA-Linux-x86_64-575.64.run 387052180 BLAKE2B 8ae4ff774e76815c839f1dc150e4750332e4dd59f048b00d19f1ef3c462877776249b4b8275c2960b8ae2b3b19c3196f63047168b2f468e15a8c864917ef3ae1 SHA512 21951798f0823ba63dc47ee94d9b27c72ae1788899f2181df0d6352b1d4b3f19a4e051687f3bb5f9f3e0fbda8f256748171a283837bf369a85fd9d8b552ac068 DIST NVIDIA-kernel-module-source-535.247.01.tar.xz 12517152 BLAKE2B b12497621ba32da4ca80ca6736d559bc98ba45974e06bbb63c08695c3b24c45752b3fd3dc2854ed64950e89e99b38d1006ce672096e35daced0ebe0a9dda77f6 SHA512 ed8e10d5245447fcdf348509ad62e9ac3d56a052d254b764e3a574a711cfa5c8831a759d425f42795c2db752f3d91d60b6097f6901c88654f242c94768faddb6 DIST NVIDIA-kernel-module-source-550.163.01.tar.xz 13552400 BLAKE2B e1fd753127d10097c5f1d3c90d95c7eb0934c0d5e1df0a371aed2a0d7669960b67c46eed20eec3c42ca41c0f34bf6d7d3d2a77a94308c9f86d4f5d831da19363 SHA512 c9f4ce2890db3fdc66dd080da4d6802a8bc3b18feba96be5d33641b02cca637b1bcd2a3748f36f93a32f26ba57eb352156314f139688b0d3a102efdfde6c32ba -DIST NVIDIA-kernel-module-source-570.144.tar.xz 17900228 BLAKE2B 9003530642f17f8ee61599716d7981fa8326c6b3c38aa84c4a9056894f3e1f06da211eb1383b84c9871a612e8e4081af8112584b185820b6c1aa446d2b5a7935 SHA512 761561fbc7433815fae79644c2996b8894edbc8158fd53ab81a143e869b0ae832a965bd7dcfe5f54db0f1b8e06ae1a02a921b7657d4fbd76a4fb252f39cef427 DIST NVIDIA-kernel-module-source-570.153.02.tar.xz 17938000 BLAKE2B 9d4ac90b48b80dc0d2263347dff51f1340227b99bef737bc43b3d44b695a27c2bd34ea6f760cbf0e1cc09ba22cad9286681c351c243a7d4c3559eda6084cf913 SHA512 b0cb2e748746906a973df597c91bac087c033bcb06b62e1778f7df5d2499ae90392759a2e7e28187d28211f11b7ca7200f2a903db9fa64854ea93768c362e0a7 DIST NVIDIA-kernel-module-source-570.169.tar.xz 17928016 BLAKE2B 4d68cbcbbb14f0b9741c09dedad5abf859f971676869d46e8a6749c04dfc39a6f24098aff9c55d8d33e1e5b1f67be16a99af702f29003354635019ff94ee683f SHA512 7d5a06e596235d90ba5b26a4b04b68623b501643ea8c6bcd7342add6563684486f32b6399335a853f03cb588dc57cdb1397e2705bce512a8be57d3b615b8eb22 DIST NVIDIA-kernel-module-source-575.57.08.tar.xz 18201104 BLAKE2B 893696ba425f659aa35e7762b7d50e3bff4b9088a79e10b47127662c4dacb9eda9ab4ce072bcd39e68ca0f75110cbdde0e2762f20b8d0d9623e16b9bd28ada7f SHA512 1fbb0c3da87b61666dff3d6838df291ded0d7d62a83d914233cd11c9fc3ed4becf55ecd00763261a5a87975276a5749fb4a38ed59eb10807b891fd444a1bba75 +DIST NVIDIA-kernel-module-source-575.64.03.tar.xz 18219744 BLAKE2B 4207f768bdcd1c72a42a1030e5f8e38afb3f3e23ea368a19f0b01dbdaf66d552d4a2573cc4aba31f31f006f6c829e99ccbb3775bf629b41cc1ddf13632a4ea40 SHA512 2acd48d39e9aabc892ad0eb3d98bc9b723fd79a9b7f24b9f55b3e591e5d27445fe5ffc9d1bd8042e9741d56ca815c47065f36d88a3a008e635af2011eb07cf40 DIST NVIDIA-kernel-module-source-575.64.tar.xz 18197028 BLAKE2B 9bd4ccc572af84821cd591c871b961dd01f3b2e8faccc47101d2aea8bc9adeb16c464e7a28393d145411d0361d3f1462fe343c9e2821ec8819a3370b54d3c6f0 SHA512 634cd78335eab2841aa6b662eb67c0c90c313ae6fe1c436b62befb02a9a8c89d36c45ff9d6ca7b3c031f80dbc8be195e5faa7f1e8c0e65740d6b569aea7a017d 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.247.01.tar.bz2 148887 BLAKE2B 3455f064d3a5745971e8ca6574bfe16258544e669f05fa6e1f31cc88a7224f76cbf5d1ea26a62e70e908b7261c3264664e090209221a6e64030c6f486b9452b3 SHA512 be97915091e60c56b442dcec45f76380ab316e95b7417d99133419a7883e1cf547ac0c03d7e763574613dfe5bc27dbc6c887ed9870e528ae056b2400175044e4 DIST nvidia-installer-550.163.01.tar.bz2 155861 BLAKE2B 662064b3ceb4aadebde419057d85c6b4e28b91944bd5bab241bcba9b3c9a105e507afc7651b17fff01e1cccb78d66fdc6789597ce059f882a6f322b08f28e832 SHA512 f8df7a0eccdecb7d4d4f47d96050cdbefff91289b29550b061358614845648451d4b161d9bdbfbf5a9a87ce650d272cb3b795e6d2ed4d0274844a56db097bd15 -DIST nvidia-installer-570.144.tar.bz2 169317 BLAKE2B 8238feeebd61c1ae37bad82ae6801aaedddc2b861ca4c2eccde7c5576f82baf14969b8acaf4b0e922ebae218201d47190b6e9b3ff1ce264857ae58586b2df7b0 SHA512 2201cf95bb2f69067e3a2f555877b46ded5cd46e8f91e0adb100adaed03df1de7eae15bf593a8834516d62a029f81793c5d5406a314551039115f601bda1a465 DIST nvidia-installer-570.153.02.tar.bz2 169264 BLAKE2B 527574c76c3732d6e0ce81b55f9a92ae9d4a757151bdf6a5449d677b2991c48af652f61199c235e3253ae173ed314b8e58b968cb074022659a0d00e0ca23c389 SHA512 22a51690e159468b732109005c75a77a46c9e531f869c1590d859a515b6b9325dd076fb81b1542aee8617b68b4f7b7df1d8b7507123a73064a6a34ec435b5334 DIST nvidia-installer-570.169.tar.bz2 169301 BLAKE2B 2676261d50cfe235d099475bcedcc96549d5140bf0c95b8f41b49d62eb0cd5fdf5c2ed53a59f79c778011b50e95ef440cc7a3a7a6673de7311e4508fa8f5960b SHA512 5864343b23a27cf994e414bb8a3b90e7b740df54188d43172456ea163162cea74e0b38a0b41717756818262d9f80b25cfc7566900bc682ea0546a825d52e3cfd DIST nvidia-installer-575.57.08.tar.bz2 169416 BLAKE2B 12bbde414a119911402bae54befb218890cb29d64b3b32b807e44eb2e56f0592da0881c605c6df2941aaf2c4eef9fb3fe25c5afa2b8b7fa6e6d7af6b22c1e1cf SHA512 d3e365590aacb075d647c320e43f237c90bd124e3aca257e623bb7780b368903ca861244f91773f8dd8f1910fb245beba94d11f82d97abe4fa491711d210543f +DIST nvidia-installer-575.64.03.tar.bz2 169433 BLAKE2B b7e5b7e064739eff7088f329446db56892f0b2d5c29895da097aced366e248ddc88ba3922b3e94bf12883a7551edee7c9229787d0748df202823f6399cb480a0 SHA512 e32cbb2bfd94769c6808218a939380afc9a2da98c528a195e838c11e807438a6adcdc757bcbdcf7859c54d72f60c69f96bc21008d4cd38b67ac274e193fb6b1f DIST nvidia-installer-575.64.tar.bz2 169449 BLAKE2B d32cfada19098ff9cdd2c32eebed422ca77048bec18555f9b6358765ceaa944ce4216c49893a2d3903f1ac31f69362d108661aa232bf006a559d5de069d3ea91 SHA512 f1086367a43ab87bcfa9b50772d9b2c21b313148fe44e9a0e99b2206dde06dda8ca13b569c7d203ea9ae58a8603cd3e3f5b5475b125a77fd998a07402cd2144c 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.247.01.tar.bz2 40736 BLAKE2B 31172b50777fb0bcc7696af660fd4f8ddc42bb126ff42edcee12097fe37748727c6357ef46b65a96004345fdc501487f8b5ad89eccef991eeb3c83e958f41a09 SHA512 f28340f935804e3cb07d394ad103b296a5e4fbfadeef7905266b85afd7cd145de033d603a4bd7947348add23a866548605264c814b48f4f6a5a1f4254f82cdc1 DIST nvidia-modprobe-550.163.01.tar.bz2 41448 BLAKE2B 23e567d612e669ec6ae9f389651c9e1cebe7ba59ee95bb5961e5071952697860df77f02026040e29135338eb7cf96bba0015b3d94548297235fb5214f35bec48 SHA512 0f5b59468a6e5e95dcdef1d938ea78f4ce09a0c9784e3c70d83f1c3b1bd52e8055b6b332147316445c3be714abab3629320d6117878d50aa7a2d7d2d9b9b6485 -DIST nvidia-modprobe-570.144.tar.bz2 41634 BLAKE2B 212578e8a49aa482524cb9da7a60249b88e9a151e19eb64b2e8195883f26476db3bb2859b2df3307a5281311311c22f24fdf2ae7019e9a2a07363b1ebef22b7c SHA512 56c7d8d0b8419d61676f4a9f9ab8b0592bb8f341b54bded42949bcdd1face39a264253a9f391e8f69b3c07631aca457a5c98ccf6b66eb8a9de3df4335f6c34bc DIST nvidia-modprobe-570.153.02.tar.bz2 41627 BLAKE2B 685205e27589941884243d7440390b572d03395d9758881ae69d86b8c6a3c33e3960411c3fde9d2d8efa0ef09d1476734cf06f0facea468faaf4382862c2e6c0 SHA512 3d25d3576630c9d3468102868b4f09036ffc72ba51494b2d07125643bbbd925ce5a9b6f305bd8e10aa51516754625170c184a05848ec6d84e642cfecd4429807 DIST nvidia-modprobe-570.169.tar.bz2 41618 BLAKE2B ce6967fea67a387ab177d75cf0bec4162127e7f440ffc971115b2307d68307fdbddcded8e932022088f1815d7208d4b7b8d1895125866d443750307c1353867a SHA512 e7f4d0ad9b29f13b2fccddd27570832d7a95925d82aac0ea0af8b8dcf80ba220c82352b0394eff2184b7f6da227df2462d5579ed75c1a952727820503f37ea7e DIST nvidia-modprobe-575.57.08.tar.bz2 41665 BLAKE2B 6b9aba76113854f16955bcdcab23a24d4fbdd1defc44b7087d8429f62035f0e9c8c69a47c69c88aacca4e0626b123ed847712b4f4e78cfe61a2a857ca50c5721 SHA512 c201cf42e274a89a4ff9f7881bbb4f5dde281513ac9811fa4a65c3359047fb2f477a8c3357c9bd08158f7478807d2dfe078324671c79dabb9206844b65c1391a +DIST nvidia-modprobe-575.64.03.tar.bz2 41690 BLAKE2B dc2811d4c4febba18e0e1dd6632c5f4c3b1e289a27aa2f3b44eaa1e8ef5fc2daf37f52046ac27da1126fd4732be1ad8fa47f11ecc0850a5ff22d606b64710650 SHA512 7b2f99ae0c796e5099b775bee3e7edee898ed504d7165a916ad8a9c289859482866800cf6954f04f5058eb60479c867936fc019b9d2bf6578375534a19482129 DIST nvidia-modprobe-575.64.tar.bz2 41705 BLAKE2B e69272e05302f6033dc56bd9a4e7d1e2abbb9e087813f2f361047b4fa82c7777d3fdfe7b9315a71c47332e82259e5fbdccbe5c9739782be3e06aa49700d775e7 SHA512 2ce516db4d3549717c8933c46258d6fdde8804a6b5cd10ab2eb2eca67dae2941adeacd66659182dd62d9e743426c0085d1e40eb90a10cd7102c206e28b137cb7 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.247.01.tar.bz2 48589 BLAKE2B 1b641fb85fb74e5314c0f525361cba23ac08d5f6570bcd9a6d89b376497bd0aa1cbbb52fe391a8f7bf41734e49d46d464440573b0298b5c0fd5db7fcf3100d58 SHA512 be23e7790d582a340e14c7df16f9ed09447ef8efb352d8b8e53e5be91b624953d8237c988ce0b0b0c90e1b15077af7efd6c6a0e628345f2188b6dbe09122373b DIST nvidia-persistenced-550.163.01.tar.bz2 61450 BLAKE2B 1a11cb89981b88f8d14558227d9493f1f8a81ccb5502002c436e9311a38c9c8fe0402c65eac1517a2893985eec07699b2e7bc7a81aa14dc0d52198ac85a2cd1b SHA512 f17dbcafa917b5b450f7665f98fd24f06ad99e6bcd1fcf42ef95aa9337b55561b7b16eaad8fa408110d08ee7e6d812444792cccbb9c92865099891832da779ce -DIST nvidia-persistenced-570.144.tar.bz2 61930 BLAKE2B 5839812070626045f492803238fbb9989be2f43d0c8e98bf79716d7fc6f0561142578682c850aa423d707ee6f9922f1bb3673826573a9d037616173324adf4f9 SHA512 c08a261fd0158a0b2fd77de3c2b32ee99034dd1ad064b0693a07545c7b7f9cbedab21de80c03488f1762323bb4e4644e6c5c3b838cf2b3d977c1244563af829b DIST nvidia-persistenced-570.153.02.tar.bz2 61814 BLAKE2B 204e9b91d992aaea15634632d45684b982bc897d356a6dedefd70b4a0a3e51b285de52386992efebbe5392b41f0996eba69de518b4869daf0a2675908b444b91 SHA512 24ceb1e0dde5b4df0b46febc270966be40f6b40f23f25fe55c0f8798be8d03a1869f4cd0d272ef9525f3c9a10d8673e8ccd151734006fc870e9622af0b40a681 DIST nvidia-persistenced-570.169.tar.bz2 61792 BLAKE2B 14568a42ee3473efe341bd9332081d2a1625f91662c58e75b1b218d5a3d19496071fcc5e9840fa1563aec2755c9d6810db531ed3616c825987311cf3690147f5 SHA512 c5e343be16719ba89f1a37ca8fdeb7f15a4fb028dbce554a7c524238ccb1ed1c1b0527a86a2e6dbdc01cd0b6f3a5d996a0895de4698a0ea98278cd93ef911d58 DIST nvidia-persistenced-575.57.08.tar.bz2 61959 BLAKE2B aed09532346dfd4b34e14b37df9bfa75bf6cea89705084826521cdc3ad38919937bf206b77698d97b9f62324c998cc6d11abbf787301ddd134ea9848fc5c5fea SHA512 fc14e58e80798f0370639ac32d8e729ac5809587b42438725305a8b9b45f101a91b241de2d5196c1791b79c6ccebc612a3c3ec26d0b85d6f90d9d22996d1c3af +DIST nvidia-persistenced-575.64.03.tar.bz2 61943 BLAKE2B 745dc8114a0857d4ca0ebe928f4ebc82cf526c1b593717e0fa1148c3d62976e3c8b97b6a96ad9ca3abc10a7d0090fd8f8a9e135df498a4c2bb053db8faa273e2 SHA512 1872b34b4830984b5ea1b79dc328bcc2c013804fb8fbac549291750719a6493606e8d5580a857701fec12cd24e2319d1d1d6c124f2b129473bffa457f3a6ac9b DIST nvidia-persistenced-575.64.tar.bz2 61990 BLAKE2B aaa52db7ea3be3cc5839a34f1b91f08ff2decc53b9264aa72aa88fb32e9a1bd12f9ae9ffaff8120cd32ef5439995bfc8b4649e3cc2c6bd602889b61befdd38b8 SHA512 085e742ab6f4b50eb5e6afeb34ccd5eec9506c104f4207f4f1af8327333e0d39ee0ed850af5e0d53e17d813f5046d0c9cbde55bb9d441010ee288bbaa3ac1f81 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.247.01.tar.bz2 1094617 BLAKE2B 26a12ea76be9ab930553fcdd0f19db1de8e8fd41a5f180a09f418bdbec38aab6f05c019a85249de3fe523df4aba6ffd339ccce4758e739fe092ecaaf25fb5008 SHA512 9651cc907fa78139f4774764132f5a46c1feee016aae021905a463100f102e6321b79c2c4f5b1fe149cde481a5baac17017770244ad35c6d7f14e7975f23a7c9 DIST nvidia-settings-550.163.01.tar.bz2 1099317 BLAKE2B 25419c1796deeea238b3e44fd8d648a8627272565be40cb0745132cef1c16e0c422242a1e6369745d577e674a68bf9dfc3c009e281a84ba58db5429d97ac9cff SHA512 5306ab05f284ba06852d7c96ff62ded7b8b615d3a002009cd5d781fdad716db37f53d1c8a43337ada60d524b4f7d183d98ad2673f40a5ca1ca4c5112bb913e74 -DIST nvidia-settings-570.144.tar.bz2 1123525 BLAKE2B 02cd0624b3b34ed05c72f6aa5fd0eec8ee75759297324d47dfb17ad0c935c5ce25835720405f65096dee88cd633501346d1dc1b5958ae65b8573e3f5c59111dc SHA512 71caea01dee3fab5b2f28ff27bbc886688b40f6a2298c73367d1819441ac52e47fb93caa27917962f9a6a2d97b5f7967a6db27834e1fec3acb4f80cc00d14baf DIST nvidia-settings-570.153.02.tar.bz2 1123390 BLAKE2B 2ad8e171a984ce3cbfc6b98e59d8a9534cbc89610f1840e0c12428a5c7f561d4726b6770a7c56953d8cd97969579fbdce6bc934dc35c4751bc7ad1a6ab6a31dd SHA512 0a109d9ed1827673100cb32a47f132cf196bdd7bfd42a329de1e19000dcf47c72b49815bd6c273a16d1cc714132dfcef5ac1c94e24c9645bb90665f55b7c8144 DIST nvidia-settings-570.169.tar.bz2 1123877 BLAKE2B df4309c9230352b88467537e9de9372e3e422a1b346c01ca807191aa322638ead912ffd80eeef8e404231f9d28ec9e45fddb1fe1a94777f6ca122e378c0c5b7b SHA512 34c25843c55e80efc987f344b3226e2715ccbf60e9d9f75f665c1a4199d69bef005f5c27d04f5d1cdf4fee38e4d44857d32f2dd97f84764e054d0050881a6377 DIST nvidia-settings-575.57.08.tar.bz2 1127882 BLAKE2B 5fd286849e13b30510a14b64248d7e3073198a6a1b4d4048528dcd82ca459811ff77faf2195a54a6bf1f2ee249a8bef4adcf82fecc111871bb7253bfd449cb1a SHA512 73b82a74efd4d22e6ff8876e8b975ab8cb6d8735b2e484154ceba411accc36c9cfd49cd1c70715077d322e2bc38e47264e149bab772a5e948bfbf8689edac44b +DIST nvidia-settings-575.64.03.tar.bz2 1127787 BLAKE2B fc1d1748054261a6a9a86bfdad07955ddea9de1cabdf4a56fa714c2782a018215fd3a12690aaec16a50a7fabc5c3e24d2cb7f18eed2c41f7c9308fbb2cfd0ccf SHA512 fddfe256939f279e86f5ab8cbcee599b052d712be94b724003199c11a8d702742e03a0d9e473a6ae7671e8f56f10e2e86e7f216022dc45558412ae4d045aaeb0 DIST nvidia-settings-575.64.tar.bz2 1127867 BLAKE2B 27d5e8a4ec8371bf91e050100ce49b00ca3b6c294118bab0af171b153c22a0470b18a933368b22424e1a132465370948e763fd44cc83ed87bd5eafdc20a451ef SHA512 054866076d8499cc880cc5e4e3106f0b017f1621e6dc9fa0df341689436a5fc3d56eefeee0d1e9ae11b257e4cfe001b1ccd1054048a8e93289036a679e59eb42 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.247.01.tar.bz2 110621 BLAKE2B 3d567d30e19dfc449e23c80e6fe25536f02e2450bb82c4cdc2b508493cad6d6b4f58467d302fd64a8b37e8a129be4c04b365ec3e4e9f18966d25cd23c6adc91c SHA512 2748aa9997e84e0f39b52bc6f49e2b53ffa7181aaf0ce5b9d06d8e6e010ecd589ee77388807d922c3be4a847b8a4e9e1eeba42c905a32ebb5d3f9b93d6f30511 DIST nvidia-xconfig-550.163.01.tar.bz2 111149 BLAKE2B d19ef0427e3432798e674dc66447090e8fb8fcb549ebe27aaee19aa38294cf178e175a067b2da5313342c93ea2aebef35861d05cc4cc0ee2c3eae955b3ddbbb3 SHA512 35f95d85928c82bc5de8e462ca5e90a6d8fe03e5b5367b9cdaadddc1e956f0d26b6dc42e716ae7c88512afdfb98cc841fe9b22846f6d6acc578c5dba4d0a16e1 -DIST nvidia-xconfig-570.144.tar.bz2 111243 BLAKE2B f7c9cd692665ef563238fb8cd1d2294b4b9acab6b082c8541ed24f6cdbb3f5466a1fa0b7be06d51ba1c87648cc8d0fecc1137d898844c80a0ba0fba8dfe43bad SHA512 9d38abf935dbce8d50d7d758a543e2ac4ba278a527a4dd6d167551a2ed11bbe17c3290a51f59f6a0e3611cd8e3d695efd09e9dab4aab748bdb70320c8c9d2f0c DIST nvidia-xconfig-570.153.02.tar.bz2 111136 BLAKE2B 6f7e8f46182d945ddf457595b5829742fa826a19ef279b87d8f8d35ffa5c2377a96be4f76f9ca5a4e271b1678b4a9b00fe6dbcb475cb15efba5a7b902230d9bd SHA512 066ab2a230c56cced0faa2e3bf8c4b135795fc457cabd3b716709db94b82d5515580e6b2768955a877ae224b6b56e0d97c0315a122087a6da77442754935bad8 DIST nvidia-xconfig-570.169.tar.bz2 111343 BLAKE2B ff9c00145277241a5acb290fddfa01a906ba26601c45f12d06ea8754be9d29c836f68640db411de6e904d608523bd9d10b644bf1976ef201c58d55db2fc16a47 SHA512 5db772f2cecb3436a42b0f5cad550afae3453d3b17897f457e8f6b48a9c2a71997a317b121837f68e7f23d9a3e141464485144ce362f33adf3d70b326205bbb8 DIST nvidia-xconfig-575.57.08.tar.bz2 111794 BLAKE2B 52f3080a29fdffe167439c911187432f880dfefd7005f5eea378bc3eae887f6a181accc2705c81dc5929472b3eeb29e2703190289c4a539ba4122cd4f7e4d7ec SHA512 6bdb5a3778f6d18a8588a7d8b4b226860cfb2770ed1f52c512a05a98b367d1d52d727132473475a1dce27a0fde0b82519938b5cfb1db7f6668de7f9121928321 +DIST nvidia-xconfig-575.64.03.tar.bz2 111258 BLAKE2B 9375391caf27760915417bb9beab02061def4b58a1e4bbd72ca95877931f9431258838f3db56000ddfa7684b3d3ac6d935d3aab790526d670d5ff0ddce7c0461 SHA512 9cc6a87f3ae9cc5dc3a07750c1f4d50b339a4eacee1ab320b47a339d191e0a150536563adaff265f5611a927fc4efc1f5009f22597489cf8521812c55ffc334f DIST nvidia-xconfig-575.64.tar.bz2 111310 BLAKE2B 72af0b794a3d2f226898419d39fec494a8ecb99ffb5c96a412fb25285db2ea2b556929b261969a820fbeee4c28cdc7bfba41796f261422091ecc87db82c59349 SHA512 359ff35920f97b963352f7ff7273fed1a1d232ef094bd00e8d2d3a88b10339cfeb3f0bab94f448c74fc39c17f3ac3bdedb1de5fcbc8d9affe94cfc2973a807aa DIST open-gpu-kernel-modules-570.123.18.tar.gz 18685315 BLAKE2B 26886a8d92642d498f30d5a7b9e715c9ca203fecd1389ebe66982395054ee684ea05b69a84d679722d6fc9207c31a20edf29b7fdebe6bfd508ffb88cf6c9962a SHA512 5a4c01153d4033ebc5b3b5f67b00ca8331bd13ed67b850af9ffe65380593f575764d07a56b5278e1af09c74610d36fd76e738a229713afa0e0102f54ceefcdfc diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-570.169.ebuild b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-570.169.ebuild index b4532b4492..2562854dc5 100644 --- a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-570.169.ebuild +++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-570.169.ebuild @@ -24,7 +24,7 @@ S=${WORKDIR} LICENSE="NVIDIA-2025 Apache-2.0 BSD BSD-2 GPL-2 MIT ZLIB curl openssl" SLOT="0/${PV%%.*}" -KEYWORDS="-* ~amd64 ~arm64" +KEYWORDS="-* amd64 ~arm64" # TODO: enable kernel-open by default to match nvidia upstream, but should # first setup a supported-gpus.json "kernelopen" check to abort and avoid bad # surprises (should abort for legacy cards too, and have a bypass variable) diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-570.144-r1.ebuild b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-575.64.03.ebuild similarity index 93% rename from sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-570.144-r1.ebuild rename to sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-575.64.03.ebuild index fe847d3ba4..b39715d6e1 100644 --- a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-570.144-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/nvidia-drivers-575.64.03.ebuild @@ -4,10 +4,10 @@ EAPI=8 MODULES_OPTIONAL_IUSE=+modules -inherit desktop dot-a eapi9-pipestatus eapi9-ver flag-o-matic linux-mod-r1 +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.14 +MODULES_KERNEL_MAX=6.15 NV_URI="https://download.nvidia.com/XFree86/" DESCRIPTION="NVIDIA Accelerated Graphics Driver" @@ -22,11 +22,15 @@ SRC_URI=" # nvidia-installer is unused but here for GPL-2's "distribute sources" S=${WORKDIR} -LICENSE="NVIDIA-2023 Apache-2.0 BSD BSD-2 GPL-2 MIT ZLIB curl openssl" +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" -# note: kernel-open is an upstream default in >=560 if all GPUs on the system -# support it but, since no automagic here, keeping it off for the wider support +KEYWORDS="-* ~amd64 ~arm64" +# TODO: enable kernel-open by default to match nvidia upstream, but should +# first setup a supported-gpus.json "kernelopen" check to abort and avoid bad +# surprises (should abort for legacy cards too, and have a bypass variable) IUSE="+X abi_x86_32 abi_x86_64 kernel-open persistenced powerd +static-libs +tools wayland" REQUIRED_USE="kernel-open? ( modules )" @@ -85,6 +89,7 @@ DEPEND=" ) " BDEPEND=" + app-alternatives/awk sys-devel/m4 virtual/pkgconfig " @@ -198,11 +203,6 @@ src_compile() { if use modules; then local o_cflags=${CFLAGS} o_cxxflags=${CXXFLAGS} o_ldflags=${LDFLAGS} - # conftest.sh is broken with c23 due to func() changing meaning, - # and then fails later due to ealier misdetections - # TODO: try without now and then + drop modargs' CC= (bug #944092) - KERNEL_CC+=" -std=gnu17" - local modlistargs=video:kernel if use kernel-open; then modlistargs+=-module-source:kernel-module-source/kernel-open @@ -218,7 +218,6 @@ src_compile() { local modlist=( nvidia{,-drm,-modeset,-peermem,-uvm}=${modlistargs} ) local modargs=( - CC="${KERNEL_CC}" # needed for above gnu17 workaround IGNORE_CC_MISMATCH=yes NV_VERBOSE=1 SYSOUT="${KV_OUT_DIR}" SYSSRC="${KV_DIR}" @@ -286,7 +285,7 @@ src_install() { local skip_modules=( $(usev !X "nvfbc vdpau xdriver") $(usev !modules gsp) - $(usev !powerd powerd) + $(usev !powerd nvtopps) installer nvpd # handled separately / built from source ) local skip_types=( @@ -521,7 +520,6 @@ pkg_preinst() { sed -i "s/@VIDEOGID@/${g}/" "${ED}"/etc/modprobe.d/nvidia.conf || die # try to find driver mismatches using temporary supported-gpus.json - # TODO?: automatically check "kernelopen" bit for USE=kernel-open compat 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) @@ -585,18 +583,8 @@ pkg_postinst() { if use wayland && use modules && [[ ! -v NV_HAD_WAYLAND ]]; then elog - elog "With USE=wayland, this version of ${PN} sets nvidia-drm.modeset=1" - elog "in '${EROOT}/etc/modprobe.d/nvidia.conf'. This feature is considered" - elog "experimental but is required for wayland." - elog - elog "If you experience issues, either disable wayland or edit nvidia.conf." - elog "Of note, may possibly cause issues with SLI and Reverse PRIME." - fi - - if use !kernel-open && ver_replacing -lt 555; then - elog - elog "If using a Turing/Ampere+ GPU (aka GTX 1650+), note that >=nvidia-drivers-555" - elog "enables the use of the GSP firmware by default. *If* experience regressions," - elog "please see '${EROOT}/etc/modprobe.d/nvidia.conf' to optionally disable." + elog "Note 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." fi } diff --git a/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.46.0.ebuild b/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.46.0.ebuild index 8cac0712d6..667174d8ef 100644 --- a/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.46.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.46.0.ebuild @@ -14,7 +14,7 @@ inherit flag-o-matic ${GIT_ECLASS} meson-multilib multiprocessing toolchain-func DESCRIPTION="Low-level pixel manipulation routines" HOMEPAGE="http://www.pixman.org/ https://gitlab.freedesktop.org/pixman/pixman/" if [[ ${PV} != 9999* ]]; then - 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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" SRC_URI="https://www.x.org/releases/individual/lib/${P}.tar.xz" fi diff --git a/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.46.2.ebuild b/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.46.2-r1.ebuild similarity index 96% rename from sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.46.2.ebuild rename to sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.46.2-r1.ebuild index 8cac0712d6..ef06454954 100644 --- a/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.46.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.46.2-r1.ebuild @@ -51,6 +51,8 @@ multilib_src_configure() { -Ddemos=disabled -Dgtk=disabled -Dlibpng=disabled + # explicitly disable RVV due to https://bugs.gentoo.org/95938 + -Drvv=disabled ) if [[ ${ABI} == arm64 ]]; then