diff --git a/changelog/security/2025-02-10-weekly-updates.md b/changelog/security/2025-02-10-weekly-updates.md new file mode 100644 index 00000000000..5e402efa1ce --- /dev/null +++ b/changelog/security/2025-02-10-weekly-updates.md @@ -0,0 +1,2 @@ +- socat ([CVE-2024-54661](https://nvd.nist.gov/vuln/detail/CVE-2024-54661)) +- vim ([CVE-2024-41957](https://nvd.nist.gov/vuln/detail/CVE-2024-41957), [CVE-2024-41965](https://nvd.nist.gov/vuln/detail/CVE-2024-41965), [CVE-2024-43374](https://nvd.nist.gov/vuln/detail/CVE-2024-43374), [CVE-2024-43790](https://nvd.nist.gov/vuln/detail/CVE-2024-43790), [CVE-2024-43802](https://nvd.nist.gov/vuln/detail/CVE-2024-43802), [CVE-2024-45306](https://nvd.nist.gov/vuln/detail/CVE-2024-45306), [CVE-2024-47814](https://nvd.nist.gov/vuln/detail/CVE-2024-47814)) diff --git a/changelog/updates/2025-02-10-weekly-updates.md b/changelog/updates/2025-02-10-weekly-updates.md new file mode 100644 index 00000000000..662f419feb6 --- /dev/null +++ b/changelog/updates/2025-02-10-weekly-updates.md @@ -0,0 +1,9 @@ +- SDK: qemu ([9.1.2](https://wiki.qemu.org/ChangeLog/9.1) (includes [9.0](https://wiki.qemu.org/ChangeLog/9.0))) +- base, dev: c-ares ([1.34.4](https://github.com/c-ares/c-ares/releases/tag/v1.34.4)) +- base, dev: libsemanage ([3.7](https://github.com/SELinuxProject/selinux/releases/tag/3.7)) +- base, dev: openssh ([9.9_p1](https://www.openssh.com/txt/release-9.9)) +- base, dev: policycoreutils ([3.7](https://github.com/SELinuxProject/selinux/releases/tag/3.7)) +- base, dev: semodule-utils ([3.7](https://github.com/SELinuxProject/selinux/releases/tag/3.7)) +- base, dev: socat ([1.8.0.2](https://repo.or.cz/socat.git/blob/refs/tags/tag-1.8.0.2:/CHANGES)) +- base, dev: vim ([9.1.0794](https://github.com/vim/vim/commits/v9.1.0794/)) +- sysext-python: more-itertools ([10.6.0](https://github.com/more-itertools/more-itertools/releases/tag/v10.6.0)) 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 f0938641418..a57e1631e83 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 @@ -22,9 +22,6 @@ # The only available ebuild (from GURU) has ~amd64 and no keyword for arm64 yet. =app-crypt/clevis-19-r1 ** -# We need the new --provider option. -=app-crypt/p11-kit-0.25.5 ~amd64 ~arm64 - # Needed by arm64-native SDK. =app-emulation/open-vmdk-1.0 * @@ -60,8 +57,8 @@ =net-libs/libnetfilter_cthelper-1.0.1-r1 ~arm64 =net-libs/libnetfilter_cttimeout-1.0.1 ~arm64 -# Needed to address CVE-2024-11053 and CVE-2024-9681 -=net-misc/curl-8.11.1-r2 ~amd64 ~arm64 +# Needed to address CVE-2024-54661 +=net-misc/socat-1.8.0.2 ~amd64 ~arm64 # Keep versions on both arches in sync. =net-nds/openldap-2.6.8 ~amd64 @@ -70,6 +67,8 @@ =sys-apps/azure-vm-utils-0.4.0 ~amd64 ~arm64 # Keep versions on both arches in sync. +=sys-apps/policycoreutils-3.7 ~arm64 +=sys-apps/semodule-utils-3.7 ~arm64 =sys-apps/zram-generator-1.2.1 ~arm64 # Needed to avoid pulling python into production images. @@ -81,8 +80,6 @@ # Enable ipvsadm for arm64. =sys-cluster/ipvsadm-1.31-r1 ~arm64 -# Needed in SDK for Secure Boot on arm64. Also addresses CVE-2024-1298. -=sys-firmware/edk2-bin-202408 ~amd64 - # Keep versions on both arches in sync. +=sys-libs/libsemanage-3.7 ~arm64 =sys-process/audit-4.0.2-r1 ~arm64 diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/policycoreutils/Manifest b/sdk_container/src/third_party/coreos-overlay/sys-apps/policycoreutils/Manifest index 8b299836d98..e9147083950 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/policycoreutils/Manifest +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/policycoreutils/Manifest @@ -1,2 +1,2 @@ -DIST policycoreutils-3.6.tar.gz 755682 BLAKE2B a8b180c8006989192d152651dcfa51856956780bfe1139cc1dc0162eb66ba1eef4f7d64f68a48479572b02e2e97a68c7082722a745d22a9453e8378373319e3c SHA512 e1f32e6e0310b879a5aadab157b103314a61bf3b8fd59c1212d701fbf39900e3b9a0b727338988103d784a7e505355a871ba519dd91520b135a3b9dae40bf1b0 +DIST policycoreutils-3.7.tar.gz 757142 BLAKE2B 95794d48ef80882803199af5330f0ac4f1cee6710562a559e3d8fd94475d117286f8b612ffc5dc9027f4f8f4cd55e82ddb4d328e91d6c9846b18460c9bee159b SHA512 30e3413b15df0bf1a994d2b3a03a719f89b3ee521a708b92fcc684822152145722cb3ef28fd5b7c42b779281b0bd4d69d65c0bc2605eec1af3f388609d985500 DIST policycoreutils-extra-1.37.tar.bz2 8809 BLAKE2B a7f6122c2e27f54b018174e962bd7f4c14af04e09bbb5300bde6967ea7f2dc5cd03b5787919a4e7f5288bcbc6747922962b5bd3b588ab1e3a035fbff4910d8f5 SHA512 0a85cd7cf279256b5e1927f9dfdd89626a1c8b77b0aeb62b496e7e8d1dccbaa315e39f9308fb2df7270f0bc1c10787b19990e7365cad74b47b61e30394c8b23f diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/policycoreutils/policycoreutils-3.6.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/policycoreutils/policycoreutils-3.7.ebuild similarity index 97% rename from sdk_container/src/third_party/coreos-overlay/sys-apps/policycoreutils/policycoreutils-3.6.ebuild rename to sdk_container/src/third_party/coreos-overlay/sys-apps/policycoreutils/policycoreutils-3.7.ebuild index 1def5f4a4e6..1255d76d283 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/policycoreutils/policycoreutils-3.6.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/policycoreutils/policycoreutils-3.7.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI="7" -PYTHON_COMPAT=( python3_{10..11} ) +EAPI="8" +PYTHON_COMPAT=( python3_{10..12} ) PYTHON_REQ_USE="xml(+)" inherit python-r1 toolchain-funcs bash-completion-r1 @@ -24,7 +24,7 @@ if [[ ${PV} == 9999 ]]; then else SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz !vanilla? ( https://dev.gentoo.org/~perfinion/distfiles/policycoreutils-extra-${EXTRAS_VER}.tar.bz2 )" - KEYWORDS="amd64 arm arm64 ~mips x86" + KEYWORDS="amd64 ~arm ~arm64 ~riscv x86" S1="${WORKDIR}/${MY_P}" S2="${WORKDIR}/policycoreutils-extra" S="${S1}" diff --git a/sdk_container/src/third_party/coreos-overlay/sys-libs/libsemanage/Manifest b/sdk_container/src/third_party/coreos-overlay/sys-libs/libsemanage/Manifest index 00164c9e9c2..b31d2c33221 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-libs/libsemanage/Manifest +++ b/sdk_container/src/third_party/coreos-overlay/sys-libs/libsemanage/Manifest @@ -1 +1 @@ -DIST libsemanage-3.6.tar.gz 182583 BLAKE2B 3ed9ef06601093983fa41ad6ab9f7eeae241dce98937db04efca6f421afcfd3f59cf5e51d24c596ae03997a398949ed84fbdf629518e3c382a5453129b0a87ab SHA512 8998b6a1b254a9673b99ae4d70a1edc769bb728a44f573cdf62e0a9c9392b77644ee2d70e1936a2f8a9a7f8b063ce98a981f4b8b7060f5b82791889330d69364 +DIST libsemanage-3.7.tar.gz 182896 BLAKE2B e8a4a9a57f1862efac7e46b33f34f2fdcd116a14487ca07f65aebed62b3914bb1892606a76ed8addcbdb111f361507294ae3c75975a10b90f5d554ba59d2562d SHA512 4b6370b02116364964ff24b93fb6629c885611de78419f649a027db38b4f1c3b3adf3b438efb34a92b49407ab8f9446ed4091fe4c99fa4752f0f5e3e31589415 diff --git a/sdk_container/src/third_party/coreos-overlay/sys-libs/libsemanage/libsemanage-3.6.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-libs/libsemanage/libsemanage-3.7.ebuild similarity index 72% rename from sdk_container/src/third_party/coreos-overlay/sys-libs/libsemanage/libsemanage-3.6.ebuild rename to sdk_container/src/third_party/coreos-overlay/sys-libs/libsemanage/libsemanage-3.7.ebuild index 3de45166437..97e2ab1cbe6 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-libs/libsemanage/libsemanage-3.6.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/sys-libs/libsemanage/libsemanage-3.7.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 -PYTHON_COMPAT=( python3_{10..11} ) +EAPI="8" +PYTHON_COMPAT=( python3_{10..12} ) inherit python-r1 toolchain-funcs multilib-minimal @@ -18,7 +18,7 @@ if [[ ${PV} == 9999 ]]; then S="${WORKDIR}/${P}/${PN}" else SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz" - KEYWORDS="amd64 arm arm64 ~mips ~riscv x86" + KEYWORDS="amd64 ~arm ~arm64 ~mips ~riscv x86" S="${WORKDIR}/${MY_P}" fi @@ -103,16 +103,3 @@ multiib_src_install_all() { python_fix_shebang "${ED}"/usr/libexec/selinux/semanage_migrate_store fi } - -pkg_postinst() { - # Migrate the SELinux semanage configuration store if not done already - local selinuxtype=$(awk -F'=' '/SELINUXTYPE=/ {print $2}' "${EROOT}"/etc/selinux/config 2>/dev/null) - if [ -n "${selinuxtype}" ] && [ ! -d "${EROOT}"/var/lib/selinux/${selinuxtype}/active ] ; then - ewarn "Since the 2.4 SELinux userspace, the policy module store is moved" - ewarn "from /etc/selinux to /var/lib/selinux. The migration will be run now." - ewarn "If there are any issues, it can be done manually by running:" - ewarn "/usr/libexec/selinux/semanage_migrate_store" - ewarn "For more information, please see" - ewarn "- https://github.com/SELinuxProject/selinux/wiki/Policy-Store-Migration" - fi -} diff --git a/sdk_container/src/third_party/portage-stable/app-admin/eselect/Manifest b/sdk_container/src/third_party/portage-stable/app-admin/eselect/Manifest index 5e4e8c59696..0ef181823e7 100644 --- a/sdk_container/src/third_party/portage-stable/app-admin/eselect/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-admin/eselect/Manifest @@ -1,2 +1,3 @@ DIST eselect-1.4.27.tar.xz 184464 BLAKE2B 718874f4d0651194f361ca3202e5140982812bf486c8efe82354944d55206b0113fa135992203e8baa00019c3fd773a90ddaf67157c16f4ac2d69965d9822fbd SHA512 f534785fc1f79869840f420b4ab2b2bf35593c504cce878a6d3d07f75012cf32288009ea9ac2a5607dba216a794110a64c5f2c54d5d8a3c641328489cecc024b DIST eselect-1.4.28.tar.xz 184692 BLAKE2B 86d1bbc0cb618f6edf49753c9f2be0f67670590ae55b8d2a8824940a5efa8462e395e1ee7f42379bd4ea64ea74f775a78e0a3a23ed565c67c3485f7e4e2d7a83 SHA512 26ac77465e2d6ab5193083c350cfd027d73ecd6d2702fc5f3db90373e92bf3722aead99c9b00b540c7972761620a485941c897854fe110454a4c6897f3f92868 +DIST eselect-1.4.29.tar.xz 185948 BLAKE2B bb387a14c81d5ff5bf2e6e703465b24140b047f1464dee3c7fc0a125c9d94544a9afd801b42d2902dd6dee1af705f7dcfad854286d7e243a0f654cec35ab8eea SHA512 0466be2634f9d632d628cb11793d604002d989c222758ed33259c6b1dede80765d80f782242b22704e890bde84b2e1e3b3fb3d31574812cc803aad64ba8e7cf6 diff --git a/sdk_container/src/third_party/portage-stable/app-admin/eselect/eselect-1.4.29.ebuild b/sdk_container/src/third_party/portage-stable/app-admin/eselect/eselect-1.4.29.ebuild new file mode 100644 index 00000000000..2755cd4663f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-admin/eselect/eselect-1.4.29.ebuild @@ -0,0 +1,61 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# Packages sharing a common release tarball: +# app-admin/eselect +# app-emacs/eselect-mode +# Please bump and mark them stable together! + +inherit bash-completion-r1 + +DESCRIPTION="Gentoo's multi-purpose configuration and management tool" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Eselect" +SRC_URI="https://dev.gentoo.org/~ulm/eselect/${P}.tar.xz" + +LICENSE="GPL-2+ || ( GPL-2+ CC-BY-SA-4.0 )" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="doc emacs vim-syntax" + +# coreutils for realpath +DEPEND="sys-apps/coreutils + sys-apps/sed" +RDEPEND="${DEPEND} + sys-apps/file + sys-libs/ncurses:0" +BDEPEND="doc? ( dev-python/docutils )" +PDEPEND="emacs? ( app-emacs/eselect-mode ) + vim-syntax? ( app-vim/eselect-syntax )" + +src_compile() { + emake + use doc && emake html +} + +src_install() { + emake DESTDIR="${D}" install + newbashcomp misc/${PN}.bashcomp ${PN} + dodoc AUTHORS ChangeLog NEWS README TODO doc/*.txt + if use doc; then + docinto html + dodoc *.html doc/*.html doc/*.css + fi + + # needed by news module + keepdir /var/lib/gentoo/news + if ! use prefix; then + fowners root:portage /var/lib/gentoo/news + fperms g+w /var/lib/gentoo/news + fi +} + +pkg_postinst() { + # fowners in src_install doesn't work for the portage group: + # merging changes the group back to root + if ! use prefix; then + chgrp portage "${EROOT}/var/lib/gentoo/news" \ + && chmod g+w "${EROOT}/var/lib/gentoo/news" + fi +} diff --git a/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.6.4.ebuild b/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.6.4.ebuild index c27c74e7eee..9ee03ab5b7d 100644 --- a/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.6.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.6.4.ebuild @@ -66,10 +66,6 @@ src_prepare() { } multilib_src_configure() { - # Workaround for bug #934370 (libtool-2.5.0), drop when dist tarball - # uses newer libtool with the fix. - export ac_cv_prog_ac_ct_FILECMD='file' FILECMD='file' - local myconf=( --enable-threads $(multilib_native_use_enable doc) diff --git a/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.7.1_alpha.ebuild b/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.7.1_alpha.ebuild index c27c74e7eee..9ee03ab5b7d 100644 --- a/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.7.1_alpha.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.7.1_alpha.ebuild @@ -66,10 +66,6 @@ src_prepare() { } multilib_src_configure() { - # Workaround for bug #934370 (libtool-2.5.0), drop when dist tarball - # uses newer libtool with the fix. - export ac_cv_prog_ac_ct_FILECMD='file' FILECMD='file' - local myconf=( --enable-threads $(multilib_native_use_enable doc) diff --git a/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-9999.ebuild b/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-9999.ebuild index 0a33785a8c4..9ee03ab5b7d 100644 --- a/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-9999.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 # Remember: we cannot leverage autotools in this ebuild in order @@ -66,10 +66,6 @@ src_prepare() { } multilib_src_configure() { - # Workaround for bug #934370 (libtool-2.5.0), drop when dist tarball - # uses newer libtool with the fix. - export ac_cv_prog_ac_ct_FILECMD='file' FILECMD='file' - local myconf=( --enable-threads $(multilib_native_use_enable doc) diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/Manifest b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/Manifest index e7cd7a7fda9..36bd6c357ab 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/Manifest @@ -2,3 +2,5 @@ DIST docker-cli-27.4.1-man.tar.xz 70252 BLAKE2B 3fbefe359b39cfb7eda125830dc6c8e9 DIST docker-cli-27.4.1.tar.gz 7273057 BLAKE2B 3ebebe0e0918dd54d45c058c2922107fc2e82170c6e00540fde2c884c8f88945ceb5428fd5917014af5d35a554a0d9e83306d173ceea9c7461508b902f0023f8 SHA512 5880053d44e169b93fe50f3d4b13fa2f8f60de32a96f8ee2923a3291385532c1903027f0654a65a8eab51f29caf7b805857b491c0bfeee2e1983f822e579851e DIST docker-cli-27.5.0-man.tar.xz 70224 BLAKE2B 4c2a4025721fbfbb63c24e20bdbc68f3a8b2d355d57060a86190ea30ec4dc1e01eae1265a3de6077c3952e1c9d859c1c28c707caccf07260f6dabe8bf3ef5439 SHA512 4450669971503665ca644899a657c587e86edaf4462ef47bd49b09da961111e8bc27a61caf8a8dbf9a617427bb2ebf92ab8d7adb6c4f33001383e590b59cfff3 DIST docker-cli-27.5.0.tar.gz 7462649 BLAKE2B 89ae65834c606d9ef4f8ebc9fee5052d3e12b8aa6d9f4df7c0415157b24a55e89d0758b4f5cf0e4f3f5b6ea2f9c46bfc010c604995cb5cf1d162c068ba679787 SHA512 3c7c709f38fffd4d4e134d2abd7e6dc606e1cba765d36924a53f9470d6077be2282983eb23995bd56d772da253a69a854fe3112fea1a7ed2c9a1b70d2cc45b57 +DIST docker-cli-27.5.1-man.tar.xz 70236 BLAKE2B 82bf35e1b2ec149aa64ee5c72691a1af790e02e85c02c7078f6d2cff0c52143f64270467b00cf6410b6b80cf5088b15dc0bf87b98df0091bc61fa000b4dcec29 SHA512 6cec8418851dd4226e38319038b621e4697458b18496a0a4bacf1473007d5242a56af66d2a0d90f64bd5a9ccce1777c6c0788bc649c0e6cc38be1ecf63bd64da +DIST docker-cli-27.5.1.tar.gz 7462515 BLAKE2B cd2970ac46092bc040ebb663d1dc3bcd488f1c2e8dfc81b36f937c22cb4becbf79f8d4f537cf482d59fa032e86a183b3c4c781ccda09de68be217347320ad9d6 SHA512 165bd5984786fe6fa6398d6e2b1757ce013a91434317339b360721327d4f74bd52fe0ec3936ae3a0665f0fbbf2cd2c49bd2c503783c25651f8d91a172e1c2d3e diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-27.5.1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-27.5.1.ebuild new file mode 100644 index 00000000000..dfa0303d067 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-27.5.1.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit bash-completion-r1 go-module +MY_PV=${PV/_/-} + +# update this on every bump +GIT_COMMIT=9f9e4058019a37304dc6572ffcbb409d529b59d8 + +DESCRIPTION="the command line binary for docker" +HOMEPAGE="https://www.docker.com/" +SRC_URI="https://github.com/docker/cli/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz" +SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-man.tar.xz" +S="${WORKDIR}/cli-${PV}" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" +IUSE="hardened selinux" + +RDEPEND="selinux? ( sec-policy/selinux-docker )" + +RESTRICT="installsources strip test" + +src_unpack() { + default + cd "${S}" + ln -s vendor.mod go.mod + ln -s vendor.sum go.sum +} + +src_prepare() { + default + sed -i 's@dockerd\?\.exe@@g' contrib/completion/bash/docker || die +} + +src_compile() { + export DISABLE_WARN_OUTSIDE_CONTAINER=1 + # setup CFLAGS and LDFLAGS for separate build target + # see https://github.com/tianon/docker-overlay/pull/10 + CGO_CFLAGS+=" -I${ESYSROOT}/usr/include" + CGO_LDFLAGS+=" -L${ESYSROOT}/usr/$(get_libdir)" + emake \ + LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" \ + VERSION="${PV}" \ + GITCOMMIT="${GIT_COMMIT}" \ + dynbinary +} + +src_install() { + dobin build/docker + doman "${WORKDIR}"/man/man?/* + dobashcomp contrib/completion/bash/docker + bashcomp_alias docker dockerd + insinto /usr/share/fish/vendor_completions.d/ + doins contrib/completion/fish/docker.fish + insinto /usr/share/zsh/site-functions + doins contrib/completion/zsh/_* +} + +pkg_postinst() { + has_version "app-containers/docker-buildx" && return + ewarn "the 'docker build' command is deprecated and will be removed in a" + ewarn "future release. If you need this functionality, install" + ewarn "app-containers/docker-buildx." +} diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker/Manifest b/sdk_container/src/third_party/portage-stable/app-containers/docker/Manifest index ce0f4353cab..caad1a0c5f4 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/docker/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker/Manifest @@ -1,2 +1,3 @@ DIST docker-27.4.1.tar.gz 16837429 BLAKE2B da2e915944a0260619b1e036b43d40f5cbff66f07182153c0ae238ecbcecdfe2066473887882fdaaffa5ef29e2328211f1d07ba3a5239381f9e82d34d9da43fe SHA512 3d77708f7373c1b58b1c46428c2cfc9e8985076e494e40ab86709f37a686cf92b9e2c9db5aa34293f728bb7ccd6a7e08e0cbb1c6d20acfd025c4c787d5908dc0 DIST docker-27.5.0.tar.gz 17076981 BLAKE2B 20dfdb9fb3d594520f063352c28ccc7a936ec2dc0cd6d04737c2d8c78c54db024ac33fc986ddf06cbe4f496b27bd6e63cc3a2532f3c36b83cf8f9eca0dbae3a2 SHA512 89245805edebd7d43d5b47a38aba115239c20448fc10bce5a1605f99951a303ba360456a54815ffc5346cdd97ddd08657df1881c97f79066e9e2bd075af542da +DIST docker-27.5.1.tar.gz 17077765 BLAKE2B dc6bfa960fc5c8c45629284dcdaddd6df3295dea2259ebf003900efbb24a4f4719030b5e12baaa87e4c1e3ecf27e1c4ef9e3f9b2fccef1541908fbee4ebecbc8 SHA512 6080fa59efa5b35b23bbd363569df7261783ab2527cda9c391f0853b58b55e34824b4a6019e0366aaed5cfaba5ff70b253dcc90b1b77149a85eea0c282d05bdf diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-27.5.1.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-27.5.1.ebuild new file mode 100644 index 00000000000..917f65bb2a5 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker/docker-27.5.1.ebuild @@ -0,0 +1,331 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +MY_PV=${PV/_/-} +inherit go-module linux-info optfeature systemd toolchain-funcs udev +GIT_COMMIT=4c9b3b011ae4c30145a7b344c870bdda01b454e2 + +DESCRIPTION="The core functions you need to create Docker images and run Docker containers" +HOMEPAGE="https://www.docker.com/" +SRC_URI="https://github.com/moby/moby/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/moby-${PV}" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" +IUSE="apparmor btrfs +container-init cuda +overlay2 seccomp selinux systemd" + +DEPEND=" + acct-group/docker + >=dev-db/sqlite-3.7.9:3 + apparmor? ( sys-libs/libapparmor ) + btrfs? ( >=sys-fs/btrfs-progs-3.16.1 ) + seccomp? ( >=sys-libs/libseccomp-2.2.1 ) + systemd? ( sys-apps/systemd ) +" + +# https://github.com/moby/moby/blob/master/project/PACKAGERS.md#runtime-dependencies +# https://github.com/moby/moby/blob/master/project/PACKAGERS.md#optional-dependencies +RDEPEND=" + ${DEPEND} + >=net-firewall/iptables-1.4 + sys-process/procps + >=dev-vcs/git-1.7 + >=app-arch/xz-utils-4.9 + >=app-containers/containerd-1.7.24[apparmor?,btrfs?,seccomp?] + >=app-containers/runc-1.2.2[apparmor?,seccomp?] + !app-containers/docker-proxy + !=sys-process/tini-0.19.0[static] ) + cuda? ( app-containers/nvidia-container-toolkit ) + selinux? ( sec-policy/selinux-docker ) +" + +# https://github.com/docker/docker/blob/master/project/PACKAGERS.md#build-dependencies +BDEPEND=" + dev-go/go-md2man + virtual/pkgconfig +" +# tests require running dockerd as root and downloading containers +RESTRICT="installsources strip test" + +# https://bugs.gentoo.org/748984 https://github.com/etcd-io/etcd/pull/12552 +pkg_setup() { + # this is based on "contrib/check-config.sh" from upstream's sources + # required features. + CONFIG_CHECK=" + ~NAMESPACES ~NET_NS ~PID_NS ~IPC_NS ~UTS_NS + ~CGROUPS ~CGROUP_CPUACCT ~CGROUP_DEVICE ~CGROUP_FREEZER ~CGROUP_SCHED ~CPUSETS ~MEMCG + ~KEYS + ~VETH ~BRIDGE ~BRIDGE_NETFILTER + ~IP_NF_FILTER ~IP_NF_TARGET_MASQUERADE + ~NETFILTER_XT_MATCH_ADDRTYPE + ~NETFILTER_XT_MATCH_CONNTRACK + ~NETFILTER_XT_MATCH_IPVS + ~NETFILTER_XT_MARK + ~IP_NF_NAT ~NF_NAT + ~POSIX_MQUEUE + " + WARNING_POSIX_MQUEUE="CONFIG_POSIX_MQUEUE: is required for bind-mounting /dev/mqueue into containers" + + if kernel_is lt 4 8; then + CONFIG_CHECK+=" + ~DEVPTS_MULTIPLE_INSTANCES + " + fi + + if kernel_is le 5 1; then + CONFIG_CHECK+=" + ~NF_NAT_IPV4 + " + fi + + if kernel_is le 5 2; then + CONFIG_CHECK+=" + ~NF_NAT_NEEDED + " + fi + + if kernel_is ge 4 15; then + CONFIG_CHECK+=" + ~CGROUP_BPF + " + fi + + # optional features + CONFIG_CHECK+=" + ~USER_NS + " + + if use seccomp; then + CONFIG_CHECK+=" + ~SECCOMP ~SECCOMP_FILTER + " + fi + + CONFIG_CHECK+=" + ~CGROUP_PIDS + " + + if kernel_is lt 6 1; then + CONFIG_CHECK+=" + ~MEMCG_SWAP + " + fi + + if kernel_is le 5 8; then + CONFIG_CHECK+=" + ~MEMCG_SWAP_ENABLED + " + fi + + CONFIG_CHECK+=" + ~!LEGACY_VSYSCALL_NATIVE + " + if kernel_is lt 5 19; then + CONFIG_CHECK+=" + ~LEGACY_VSYSCALL_EMULATE + " + fi + CONFIG_CHECK+=" + ~!LEGACY_VSYSCALL_NONE + " + WARNING_LEGACY_VSYSCALL_NONE="CONFIG_LEGACY_VSYSCALL_NONE enabled: \ + Containers with <=glibc-2.13 will not work" + + if kernel_is le 4 5; then + CONFIG_CHECK+=" + ~MEMCG_KMEM + " + fi + + if kernel_is lt 5; then + CONFIG_CHECK+=" + ~IOSCHED_CFQ ~CFQ_GROUP_IOSCHED + " + fi + + CONFIG_CHECK+=" + ~BLK_CGROUP ~BLK_DEV_THROTTLING + ~CGROUP_PERF + ~CGROUP_HUGETLB + ~NET_CLS_CGROUP ~CGROUP_NET_PRIO + ~CFS_BANDWIDTH ~FAIR_GROUP_SCHED + ~IP_NF_TARGET_REDIRECT + ~IP_VS + ~IP_VS_NFCT + ~IP_VS_PROTO_TCP + ~IP_VS_PROTO_UDP + ~IP_VS_RR + " + + if use selinux; then + CONFIG_CHECK+=" + ~SECURITY_SELINUX + " + fi + + if use apparmor; then + CONFIG_CHECK+=" + ~SECURITY_APPARMOR + " + fi + + # if ! is_set EXT4_USE_FOR_EXT2; then + # check_flags EXT3_FS EXT3_FS_XATTR EXT3_FS_POSIX_ACL EXT3_FS_SECURITY + # if ! is_set EXT3_FS || ! is_set EXT3_FS_XATTR || ! is_set EXT3_FS_POSIX_ACL || ! is_set EXT3_FS_SECURITY; then + # echo " $(wrap_color '(enable these ext3 configs if you are using ext3 as backing filesystem)' bold black)" + # fi + # fi + + CONFIG_CHECK+=" + ~EXT4_FS ~EXT4_FS_POSIX_ACL ~EXT4_FS_SECURITY + " + + # if ! is_set EXT4_FS || ! is_set EXT4_FS_POSIX_ACL || ! is_set EXT4_FS_SECURITY; then + # if is_set EXT4_USE_FOR_EXT2; then + # echo " $(wrap_color 'enable these ext4 configs if you are using ext3 or ext4 as backing filesystem' bold black)" + # else + # echo " $(wrap_color 'enable these ext4 configs if you are using ext4 as backing filesystem' bold black)" + # fi + # fi + + # network drivers + CONFIG_CHECK+=" + ~VXLAN ~BRIDGE_VLAN_FILTERING + ~CRYPTO ~CRYPTO_AEAD ~CRYPTO_GCM ~CRYPTO_SEQIV ~CRYPTO_GHASH + ~XFRM ~XFRM_USER ~XFRM_ALGO ~INET_ESP + " + if kernel_is le 5 3; then + CONFIG_CHECK+=" + ~INET_XFRM_MODE_TRANSPORT + " + fi + + CONFIG_CHECK+=" + ~IPVLAN + " + CONFIG_CHECK+=" + ~MACVLAN ~DUMMY + " + CONFIG_CHECK+=" + ~NF_NAT_FTP ~NF_CONNTRACK_FTP ~NF_NAT_TFTP ~NF_CONNTRACK_TFTP + " + + # storage drivers + if use btrfs; then + CONFIG_CHECK+=" + ~BTRFS_FS + ~BTRFS_FS_POSIX_ACL + " + fi + + CONFIG_CHECK+=" + ~OVERLAY_FS + " + + linux-info_pkg_setup +} + +src_unpack() { + default + cd "${S}" + [[ -f go.mod ]] || ln -s vendor.mod go.mod || die + [[ -f go.sum ]] || ln -s vendor.sum go.sum || die +} + +src_compile() { + export DOCKER_GITCOMMIT="${GIT_COMMIT}" + export VERSION=${PV} + tc-export PKG_CONFIG + + # setup CFLAGS and LDFLAGS for separate build target + # see https://github.com/tianon/docker-overlay/pull/10 + CGO_CFLAGS+=" -I${ESYSROOT}/usr/include" + CGO_LDFLAGS+=" -L${ESYSROOT}/usr/$(get_libdir)" + + # let's set up some optional features :) + export DOCKER_BUILDTAGS='' + for gd in btrfs overlay2; do + if ! use $gd; then + DOCKER_BUILDTAGS+=" exclude_graphdriver_${gd//-/}" + fi + done + + for tag in apparmor seccomp; do + if use $tag; then + DOCKER_BUILDTAGS+=" $tag" + fi + done + + export AUTO_GOPATH=1 + export EXCLUDE_AUTO_BUILDTAG_JOURNALD=$(usex systemd '' 'y') + export GO_MD2MAN=/usr/bin/go-md2man + + # build binaries + ./hack/make.sh dynbinary || die 'dynbinary failed' + + # build man page + cd man || die + emake || die +} + +src_install() { + dosym containerd /usr/bin/docker-containerd + dosym containerd-shim-runc-v2 /usr/bin/docker-containerd-shim + dosym runc /usr/bin/docker-runc + use container-init && dosym tini /usr/bin/docker-init + dobin bundles/dynbinary-daemon/dockerd + dobin bundles/dynbinary-daemon/docker-proxy + for f in dockerd-rootless-setuptool.sh dockerd-rootless.sh; do + dosym ../share/docker/contrib/${f} /usr/bin/${f} + done + + newinitd contrib/init/openrc/docker.initd docker + newconfd contrib/init/openrc/docker.confd docker + + systemd_dounit contrib/init/systemd/docker.{service,socket} + + udev_dorules contrib/udev/*.rules + + dodoc AUTHORS CONTRIBUTING.md NOTICE README.md + dodoc -r docs/* + doman man/man8/dockerd.8 + + # note: intentionally not using "doins" so that we preserve +x bits + dodir /usr/share/${PN}/contrib + cp -R contrib/* "${ED}/usr/share/${PN}/contrib" +} + +pkg_postinst() { + udev_reload + + elog + elog "To use Docker, the Docker daemon must be running as root. To automatically" + elog "start the Docker daemon at boot:" + if systemd_is_booted || has_version sys-apps/systemd; then + elog " systemctl enable docker.service" + else + elog " rc-update add docker default" + fi + elog + elog "To use Docker as a non-root user, add yourself to the 'docker' group:" + elog ' usermod -aG docker ' + elog + + if has_version sys-fs/zfs; then + elog " ZFS storage driver is available" + elog " Check https://docs.docker.com/storage/storagedriver/zfs-driver for more info" + elog + fi + + optfeature "rootless mode support" sys-apps/shadow + optfeature "rootless mode support" sys-apps/rootlesskit + optfeature_header "for rootless mode you also need a network stack" + optfeature "rootless mode network stack" app-containers/slirp4netns +} + +pkg_postrm() { + udev_reload +} diff --git a/sdk_container/src/third_party/portage-stable/app-containers/podman/files/podman-restart-5.0.0_rc4.initd b/sdk_container/src/third_party/portage-stable/app-containers/podman/files/podman-restart-5.0.0_rc4.initd index d02bd64c627..62bea5bc12d 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/podman/files/podman-restart-5.0.0_rc4.initd +++ b/sdk_container/src/third_party/portage-stable/app-containers/podman/files/podman-restart-5.0.0_rc4.initd @@ -2,21 +2,21 @@ # Copyright 2015-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -description="Start all containers with restart-policy set to always" +description="Start all containers with restart-policy set to always or unless-stopped" command_user="${RUN_AS_USER:=root:root}" command="/usr/bin/podman" -command_args="--log-level ${LOG_LEVEL:=info} start --all --filter restart-policy=always" +command_args="--log-level ${LOG_LEVEL:=info} start --all --filter restart-policy=always --filter restart-policy=unless-stopped" depend() { after net } stop() { - ebegin "Stopping all containers with restart-policy set to always" + ebegin "Stopping all containers with restart-policy set to always or unless-stopped" ${command} \ --log-level ${LOG_LEVEL} \ stop \ - $(${command} container ls --filter restart-policy=always -q) - eend $? "Failed to stop containers with restart-policy set to always" + $(${command} container ls --filter restart-policy=always --filter restart-policy=unless-stopped -q) + eend $? "Failed to stop containers with restart-policy set to always or unless-stopped" } diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/p11-kit/p11-kit-0.25.5.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/p11-kit/p11-kit-0.25.5.ebuild index a45bc6063cc..41fce9d3d3b 100644 --- a/sdk_container/src/third_party/portage-stable/app-crypt/p11-kit/p11-kit-0.25.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-crypt/p11-kit/p11-kit-0.25.5.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 @@ -12,7 +12,7 @@ SRC_URI="https://github.com/p11-glue/p11-kit/releases/download/${PV}/${P}.tar.xz LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~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 ~ppc-macos ~x64-macos ~x64-solaris" IUSE="+libffi gtk-doc nls systemd test" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/rhash/rhash-1.4.5.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/rhash/rhash-1.4.5.ebuild index a8d92ff1409..f6708fd1b41 100644 --- a/sdk_container/src/third_party/portage-stable/app-crypt/rhash/rhash-1.4.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-crypt/rhash/rhash-1.4.5.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 @@ -12,7 +12,7 @@ S="${WORKDIR}/RHash-${PV}" LICENSE="0BSD" SLOT="0/1" -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="debug nls ssl static-libs" RDEPEND=" diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.1.0794.ebuild b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.1.0794.ebuild index 11172cbf29b..44626cc641a 100644 --- a/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.1.0794.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.1.0794.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 @@ -16,7 +16,7 @@ if [[ ${PV} == 9999* ]] ; then else SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz https://git.sr.ht/~xxc3nsoredxx/vim-patches/refs/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.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" + 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 S="${WORKDIR}/vim-${PV}" diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.1.0794.ebuild b/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.1.0794.ebuild index 80ea5b2aeb1..9ea9fe31a46 100644 --- a/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.1.0794.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.1.0794.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 @@ -21,7 +21,7 @@ if [[ ${PV} == 9999* ]] ; then else SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz https://git.sr.ht/~xxc3nsoredxx/vim-patches/refs/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.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" + 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" diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/files/qemu-9.2.0-glibc-2.41.patch b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/files/qemu-9.2.0-glibc-2.41.patch new file mode 100644 index 00000000000..00ffd0a1bbf --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/files/qemu-9.2.0-glibc-2.41.patch @@ -0,0 +1,46 @@ +https://bugs.gentoo.org/949098 +https://gitlab.com/qemu-project/qemu/-/issues/2799 +https://lists.nongnu.org/archive/html/qemu-devel/2024-10/msg02221.html + +glibc 2.41+ has added [1] definitions for sched_setattr and sched_getattr functions +and struct sched_attr. Therefore, it needs to be checked for here as well before +defining sched_attr + +Define sched_attr conditionally on SCHED_ATTR_SIZE_VER0 + +Fixes builds with glibc/trunk + +[1] +https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=21571ca0d70302909cf72707b2a7736cf12190a0;hp=298bc488fdc047da37482f4003023cb9adef78f8 + +Signed-off-by: Khem Raj +Cc: Laurent Vivier +Cc: Paolo Bonzini +--- +v2: Use SCHED_ATTR_SIZE_VER0 instead of glibc version check + + linux-user/syscall.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/linux-user/syscall.c b/linux-user/syscall.c +index 1ce4c79..a407d4a 100644 +--- a/linux-user/syscall.c ++++ b/linux-user/syscall.c +@@ -358,7 +358,8 @@ _syscall3(int, sys_sched_getaffinity, pid_t, pid, unsigned int, len, + #define __NR_sys_sched_setaffinity __NR_sched_setaffinity + _syscall3(int, sys_sched_setaffinity, pid_t, pid, unsigned int, len, + unsigned long *, user_mask_ptr); +-/* sched_attr is not defined in glibc */ ++/* sched_attr is not defined in glibc < 2.41 */ ++#ifndef SCHED_ATTR_SIZE_VER0 + struct sched_attr { + uint32_t size; + uint32_t sched_policy; +@@ -371,6 +372,7 @@ struct sched_attr { + uint32_t sched_util_min; + uint32_t sched_util_max; + }; ++#endif + #define __NR_sys_sched_getattr __NR_sched_getattr + _syscall4(int, sys_sched_getattr, pid_t, pid, struct sched_attr *, attr, + unsigned int, size, unsigned int, flags); diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.1.2.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.1.2.ebuild index df4b36f615e..55b0215c9f4 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.1.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.1.2.ebuild @@ -47,7 +47,7 @@ else fi S="${WORKDIR}/${MY_P}" - [[ "${PV}" != *_rc* ]] && KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ppc64 ~riscv x86" + [[ "${PV}" != *_rc* ]] && KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ppc64 ~riscv x86" fi DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.2.0.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.2.0.ebuild index a6895240627..e62552d849f 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.2.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-9.2.0.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 @@ -319,7 +319,7 @@ PATCHES=( "${FILESDIR}"/${PN}-9.2.0-capstone-include-path.patch "${FILESDIR}"/${PN}-8.1.0-skip-tests.patch "${FILESDIR}"/${PN}-8.1.0-find-sphinx.patch - + "${FILESDIR}"/${PN}-9.2.0-glibc-2.41.patch ) QA_PREBUILT=" diff --git a/sdk_container/src/third_party/portage-stable/app-portage/getuto/Manifest b/sdk_container/src/third_party/portage-stable/app-portage/getuto/Manifest index 442b16691ee..bc81303868a 100644 --- a/sdk_container/src/third_party/portage-stable/app-portage/getuto/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-portage/getuto/Manifest @@ -1,4 +1,5 @@ DIST getuto-1.13.tar.gz 10758 BLAKE2B cf7412e6253f883c29a3d89048073d14f982e4bc708ebe11541e4273c69cdc3f1131b6b62484b3b4f1131a11dc541776368f4bfe4500f0ec01e24de9e925a69d SHA512 111c60595dce79b3286afaa8d8485cb852d4d8a4ea5f0659ccde538a9ee8ccdb4d7d7251cce713b30e4f8a769891539bf6fdb52978b5f25df6536afb16dc8f2a DIST getuto-1.14.tar.gz 10801 BLAKE2B cbcbbdfa42a4dc1d1d0e6a0fe573c14a5937e5573c9332e7adae35931885964ef7e0e3c6c7229a1f27995b22feeb5d49bd80b56db73a242e210f726e35235224 SHA512 a796db7212df9cc723c05e93f9938697f2b593ce694668028c617a48bdf69a358db6687e34ff6a69fb379156b03cc4f06e1f5f7a743102f6ebe219fa468b5c09 +DIST getuto-1.15.tar.gz 10749 BLAKE2B 535a400a2ebdf2cee2d00466557863a1d1ab5f409c3fa12e8d0bb08379331d5684ba9f9aed5da67e761b9373aa8d675810ff7b803a993a606982bfc56cbe9195 SHA512 98f6c8900fa4469fb76bae42712e8457a3cf07b8c0ca99aa24ece2691677a06b6952b714d3a04f6f102880c5dd7fe390352b4474cdd39647d88cb7d7b7c776c7 DIST getuto-23.0-libc-1-r1-1.gpkg.tar 20480 BLAKE2B a6f9284131690c39ff63a6046b19478a9f460d4115b1bd306d2996b631026fe9c4c4b2e3be23f30d2668794302d2a1686680738dd052a53e2d4c3ecb2a513070 SHA512 a692817ea63fb69c7cbb5e32fcba21e78bd87dd4e670d4c1ac9105e390ef63ea0f3660464e573adb28320b0a9cb0a78c52fe895ecdfd62a24986b1d79d2c692e DIST libc-1-r1-1.gpkg.tar 20480 BLAKE2B b2c184e20c1a29ff66240e992f9f81219285f525eb63cea081372685cf03a2e231a2edb528259617e74c655fbe61b6e0d8fc0bbdbd8452b6098de58432f019d7 SHA512 ce52f398ea8979ec16161381803740d49a4294c77303880f54090c379ba5eb8e545a3d3550f229cacc18c7763dc3adf7936561ba1c64b43c87692ec66084e4e6 diff --git a/sdk_container/src/third_party/portage-stable/app-portage/getuto/getuto-1.14.ebuild b/sdk_container/src/third_party/portage-stable/app-portage/getuto/getuto-1.14.ebuild index 288ed5ed1b9..5f8453a0db8 100644 --- a/sdk_container/src/third_party/portage-stable/app-portage/getuto/getuto-1.14.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-portage/getuto/getuto-1.14.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 @@ -15,7 +15,7 @@ else " S=${WORKDIR}/${PN}-${P} - 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 SRC_URI+=" test? ( https://mirror.bytemark.co.uk/gentoo/releases/amd64/binpackages/23.0/x86-64/virtual/libc/libc-1-r1-1.gpkg.tar -> ${PN}-23.0-libc-1-r1-1.gpkg.tar )" diff --git a/sdk_container/src/third_party/portage-stable/app-portage/getuto/getuto-1.15.ebuild b/sdk_container/src/third_party/portage-stable/app-portage/getuto/getuto-1.15.ebuild new file mode 100644 index 00000000000..07fa69a5722 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-portage/getuto/getuto-1.15.ebuild @@ -0,0 +1,50 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="Standalone Gentoo gpg trust anchor generation tool for binpkgs" +HOMEPAGE="https://github.com/projg2/getuto" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/projg2/getuto" + inherit git-r3 +else + SRC_URI=" + https://github.com/projg2/getuto/archive/refs/tags/${P}.tar.gz + " + S=${WORKDIR}/${PN}-${P} + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +fi + +SRC_URI+=" test? ( https://mirror.bytemark.co.uk/gentoo/releases/amd64/binpackages/23.0/x86-64/virtual/libc/libc-1-r1-1.gpkg.tar -> ${PN}-23.0-libc-1-r1-1.gpkg.tar )" + +LICENSE="GPL-2" +SLOT="0" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + app-crypt/gnupg + dev-libs/openssl + sec-keys/openpgp-keys-gentoo-release + sys-apps/gentoo-functions +" + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + else + # Don't mangle test data + unpack ${P}.tar.gz + fi + + if use test ; then + cp "${DISTDIR}"/${PN}-23.0-libc-1-r1-1.gpkg.tar "${S}/libc-1-r1-1.gpkg.tar" || die + fi +} + +src_install() { + dobin getuto +} diff --git a/sdk_container/src/third_party/portage-stable/app-portage/getuto/metadata.xml b/sdk_container/src/third_party/portage-stable/app-portage/getuto/metadata.xml index d83b8d67cb6..02abb635200 100644 --- a/sdk_container/src/third_party/portage-stable/app-portage/getuto/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/app-portage/getuto/metadata.xml @@ -5,6 +5,10 @@ dilfridge@gentoo.org Andreas K. Hüttel + + binhost@gentoo.org + Binhost + https://github.com/projg2/getuto/issues/ diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/Manifest b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/Manifest index b68607c0b93..d050a3e7aee 100644 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/Manifest @@ -1,3 +1,4 @@ DIST bash-completion-2.14.0.tar.xz 428980 BLAKE2B c28ec0cd348a3954461f7a865823a358e47c4b479c7812baa6d54aef856c958510967806550e62784955f9daf233a0b01edade19884e534df857472a3196e63e SHA512 2e12d2e57c932b931a6cfe59234f9d33d715538d6ea4eb72ed4ed3d8d2cf2cedaf08fcb6abaf3117e06115d892283e38a07b3abe5c91c026d2c06a0f64e347bd DIST bash-completion-2.15.0.tar.xz 457836 BLAKE2B d2234cb2baf8494d2159e8abe6780e0879efb6fe9e851c0d51ebf09363c83652ef610658e2beca181adc0d6c844472a68a219be8b3ca51271fdfc53477f174ba SHA512 3b7e98801c3ceab7853c0603bdaa0cd6f0a658e0f7f24b092f341bd1794633b62d33e664035b6ab3c03b5a3dd941b16f87a415aade8a2707578c59cc48b1a9f7 +DIST bash-completion-2.16.0.tar.xz 464764 BLAKE2B 389be47536f8f9aa383ff85bf19a00562b30b6d3e3652feaa01284987af13c2dc9850b59341956dd8e94e54251cd36902a60d5e3420ebfa2567216546144f675 SHA512 3711d6cb53cedff94efca0325479ac73f40b536fce250dbcc18ef120a8d0d2248f086ca26e245d163e6058d1b1087d57ced041317163d0e25592d6cb7acbc102 DIST bashcomp-2.0.3.tar.gz 3539 BLAKE2B 75304d144792cc7f6ad5455a05a65c33c646d6f7384d020a06a1fcf012cd51625a3dd0750ad539253453b1eede196c340286a1e81737f0835b5091609ba01295 SHA512 b2bd185ccbd4456939ccc731cc1983fcec2b9564a9920642a753fadd5d897fdb96b925ac1524657629d621d45b37d99076c8ae72511a827e96ff6c388d720008 diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.16.0.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.16.0.ebuild new file mode 100644 index 00000000000..c6b9132f3f5 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.16.0.ebuild @@ -0,0 +1,167 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +BASHCOMP_P=bashcomp-2.0.3 +PYTHON_COMPAT=( python3_{10..13} ) + +inherit python-any-r1 + +DESCRIPTION="Programmable Completion for bash" +HOMEPAGE="https://github.com/scop/bash-completion" +SRC_URI=" + https://github.com/scop/bash-completion/releases/download/${PV}/${P}.tar.xz + eselect? ( + https://github.com/projg2/bashcomp2/releases/download/v${BASHCOMP_P#*-}/${BASHCOMP_P}.tar.gz + ) +" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" +IUSE="+eselect test" +RESTRICT="!test? ( test )" + +# completion collision with net-fs/mc +RDEPEND=" + >=app-shells/bash-4.3_p30-r1:0 + sys-apps/miscfiles + ! 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','ftp://ftp.cwru.edu/pub/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 + + # wcsnwidth(), substring() issues with -Wlto-type-mismatch, reported + # upstream to Chet by email. + filter-lto + + 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 + + # builtins/evalstring.c needs y.tab.h but can't (easily) specify the dep on it from above + emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" y.tab.h + 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[*]}" y.tab.h + 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.bash | newins - 10-gentoo-color.bash + newins "${FILESDIR}"/bashrc.d/10-gentoo-title-r1.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/dev-build/meson/meson-1.6.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.6.1.ebuild index 724b55bd99c..db12e34d1b0 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.6.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.6.1.ebuild @@ -59,6 +59,7 @@ DEPEND=" test-full? ( || ( dev-lang/rust dev-lang/rust-bin ) dev-lang/nasm + >=dev-lang/pypy-3 dev-lang/vala dev-python/cython virtual/fortran @@ -70,12 +71,13 @@ DEPEND=" dev-util/bindgen dev-util/gtk-doc dev-util/itstool + llvm-core/llvm media-libs/libsdl2 media-libs/libwmf net-libs/libpcap - sci-libs/hdf5 + sci-libs/hdf5[fortran] sci-libs/netcdf - sys-cluster/openmpi + sys-cluster/openmpi[fortran] sys-devel/bison sys-devel/flex diff --git a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.7.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.7.0.ebuild index 64be9d3d5fa..d668b8b5513 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.7.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.7.0.ebuild @@ -59,6 +59,7 @@ DEPEND=" test-full? ( || ( dev-lang/rust dev-lang/rust-bin ) dev-lang/nasm + >=dev-lang/pypy-3 dev-lang/vala dev-python/cython virtual/fortran @@ -70,12 +71,13 @@ DEPEND=" dev-util/bindgen dev-util/gtk-doc dev-util/itstool + llvm-core/llvm media-libs/libsdl2 media-libs/libwmf net-libs/libpcap - sci-libs/hdf5 + sci-libs/hdf5[fortran] sci-libs/netcdf - sys-cluster/openmpi + sys-cluster/openmpi[fortran] sys-devel/bison sys-devel/flex diff --git a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-9999.ebuild index 64be9d3d5fa..d668b8b5513 100644 --- a/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-build/meson/meson-9999.ebuild @@ -59,6 +59,7 @@ DEPEND=" test-full? ( || ( dev-lang/rust dev-lang/rust-bin ) dev-lang/nasm + >=dev-lang/pypy-3 dev-lang/vala dev-python/cython virtual/fortran @@ -70,12 +71,13 @@ DEPEND=" dev-util/bindgen dev-util/gtk-doc dev-util/itstool + llvm-core/llvm media-libs/libsdl2 media-libs/libwmf net-libs/libpcap - sci-libs/hdf5 + sci-libs/hdf5[fortran] sci-libs/netcdf - sys-cluster/openmpi + sys-cluster/openmpi[fortran] sys-devel/bison sys-devel/flex 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 eba80916aa8..fd9c8b6aae9 100644 --- a/sdk_container/src/third_party/portage-stable/dev-db/sqlite/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-db/sqlite/Manifest @@ -1,6 +1,6 @@ DIST sqlite-doc-3460100.zip 10851427 BLAKE2B 7462e83ca84e3e9aac7236f575fd2bdddac7744ae700a63fe8fdc9d2df3157c59fd374d99a0526bd4d9f742005ee7a90f3d78057861d3c3fcba9f897630e48db SHA512 1ad7dfc938d182f69ea9367b4f5ead1d48b991626521249e8b58c9fb4c2553e348ce402de9cc81b0ad699d4c45c467de56a98ee39f9c3555c6fafff15fba41ce DIST sqlite-doc-3470200.zip 10957830 BLAKE2B cbc40dd440d1c5af4ad4333090a7306bd54ec43250a478b6900b8f74bd721035018ea7647f3a208d42cc0639827325be26a9412d17af7d390f4e584d4c6acf44 SHA512 48349d512b7cd9bc6f6a5da3a2b2285de159d4653667311adb0f5e6a970060db940a590c2d01b529afc1614065b22434d5b3ac4d8d0122d003d74926745ba56e -DIST sqlite-doc-3480000.zip 11391112 BLAKE2B d28531e5d3ac7802700636a669f165cb9fa2a6077422b1ba956b6b9e29db48941489b5a3bc1c4936723e59343e00c3edc9310db9724d914a30ac9aca775dc70d SHA512 d7cad0da8598a3abcacf0e05ba4e285ad1d790691e571e431f920abf1bf27c5a416408ff60ff051b01a65662c0e60bb63b9ba73872851fe63f379e834c5a0f04 +DIST sqlite-doc-3490000.zip 11327988 BLAKE2B ecabc9b9217953874cc575ef06d93f3ef5da25d82c0837b827daca3ca1da54968d7f3f2498ec7fee22d43fb2a2bcc2077be396dfc5f6e4ee62e1493d7be20e9e SHA512 89823a426aba9db78597f99df6fe2162601d0133d7490c83c939414372c293e9f313bd2e46c5e5d4b19dd3846337f53eb788208c91a1fa7ffc768a0a5966da03 DIST sqlite-src-3460100.zip 14276926 BLAKE2B df16ea944e317df8ed64fdfab289e3699ec71725ce55e2b30450adaeb41c061b4fba1eb8c41ba638b0edcd12b23264a1f9e413b69fd593c2b65fb1037d3fc8b2 SHA512 6d32a0db9f95d3cec34f02f3fd45b453bf7c422d4d4d9570790f641e7d190b8b31be8e8715afacc1b6e4417f15a4d15a0b28e608ae0b4b5f3054b075783b916e DIST sqlite-src-3470200.zip 14421983 BLAKE2B dcaea5be0099b2dad1b53403933f0037ace48b1f248040c1b5cc116ac2ad6c9b44c71b8efe3afd16bef01119b440d1a2ec9d553a22f855e0ba55793684f53d8d SHA512 a6280a02304bfae173d9e9ebf376b2d3624658f04af4d8e95d5a042e24cf0405a47c0a4023f4dbc2790716cd85e16b97fcc0a83c1534e6d554f4eb0bfb0a3ed3 -DIST sqlite-src-3480000.zip 14350897 BLAKE2B 1dafce5575cbf8eb4e7efb5c033322b887bcce38129756994da45b1d8e0cf136f337e6cb9fa3c4b5abcf1f68bff6763247bec1ad04975fc9de308e3b75fb4e54 SHA512 854832e9a5dc486a81934e36c1f1678ce50db55b8bd3c48ed2d569fb0bb7ce23d4b490c0a0f699274ff11ddf2000db4a620e064557084c54b217e7fdd836f4e1 +DIST sqlite-src-3490000.zip 14371111 BLAKE2B 895d8869b3bc0abeb5faf8cdd0de29e0d86f44fa6eafb154e0df4373161fe79c5e35d360100064778f0a3f57a232e15dc8ec73ef5e75d23a4c8ffc880d2c571d SHA512 a414c544ca4288ab475c449327b3e2136e9d01145fc8b9c723ccfd30e356cc90411ca74ae969f3fe4c8212cad4d0969b2f3a72922ee073049c25e4984336eb7c diff --git a/sdk_container/src/third_party/portage-stable/dev-db/sqlite/files/sqlite-3.49.0-cppflags.patch b/sdk_container/src/third_party/portage-stable/dev-db/sqlite/files/sqlite-3.49.0-cppflags.patch new file mode 100644 index 00000000000..13c6eafc390 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-db/sqlite/files/sqlite-3.49.0-cppflags.patch @@ -0,0 +1,75 @@ +From 3e06f2d79b15754999892a4ded6a7585520294a6 Mon Sep 17 00:00:00 2001 +From: stephan +Date: Sun, 9 Feb 2025 01:25:00 +0000 +Subject: [PATCH] configure: when transfering ENABLE/OMIT flags from CFLAGS to + OPT_FEATURE_FLAGS, also do the same for CPPFLAGS and remove those ENABLE/OMIT + flags from CFLAGS/CPPFLAGS to mimic legacy build behavior. Strip ENABLE/OMIT + flags from BUILD_CFLAGS but do not transfer those to OPT_FEATURE_FLAGS, also + to mimic legacy behavior. This is the second part of a fix discussed at + [forum:9801e54665afd728|forum post 9801e54665afd728]. + +FossilOrigin-Name: 16d307cc6c1e203900e7a2dc0730fc0e453946622a2114a07d64ebb99045cfbf +--- + autosetup/sqlite-config.tcl | 36 ++++++++++++++++++++++++++++++------ + manifest | 14 +++++++------- + manifest.uuid | 2 +- + 3 files changed, 38 insertions(+), 14 deletions(-) + +diff --git a/autosetup/sqlite-config.tcl b/autosetup/sqlite-config.tcl +index cabb32aac0..2a73548662 100644 +--- a/autosetup/sqlite-config.tcl ++++ b/autosetup/sqlite-config.tcl +@@ -230,23 +230,47 @@ proc sqlite-setup-default-cflags {} { + # BUILD_CFLAGS is the CFLAGS for CC_FOR_BUILD. + define BUILD_CFLAGS [proj-get-env BUILD_CFLAGS {-g}] + +- # Copy all CFLAGS entries matching -DSQLITE_OMIT* and ++ # Copy all CFLAGS and CPPFLAGS entries matching -DSQLITE_OMIT* and + # -DSQLITE_ENABLE* to OPT_FEATURE_FLAGS. This behavior is derived + # from the legacy build and was missing the 3.48.0 release (the + # initial Autosetup port). + # https://sqlite.org/forum/forumpost/9801e54665afd728 + # ++ # Handling of CPPFLAGS, as well as removing ENABLE/OMIT from ++ # CFLAGS/CPPFLAGS, was missing in the 3.49.0 release as well. ++ # + # If any configure flags for features are in conflict with +- # CFLAGS-specified feature flags, all bets are off. There are no +- # guarantees about which one will take precedence. +- foreach cf [get-define CFLAGS ""] { ++ # CFLAGS/CPPFLAGS-specified feature flags, all bets are off. There ++ # are no guarantees about which one will take precedence. ++ foreach flagDef {CFLAGS CPPFLAGS} { ++ set tmp "" ++ foreach cf [get-define $flagDef ""] { ++ switch -glob -- $cf { ++ -DSQLITE_OMIT* - ++ -DSQLITE_ENABLE* { ++ sqlite-add-feature-flag $cf ++ } ++ default { ++ lappend tmp $cf ++ } ++ } ++ } ++ define $flagDef $tmp ++ } ++ ++ # Strip all SQLITE_ENABLE/OMIT flags from BUILD_CFLAGS, ++ # for compatibility with the legacy build. ++ set tmp "" ++ foreach cf [get-define BUILD_CFLAGS ""] { + switch -glob -- $cf { + -DSQLITE_OMIT* - +- -DSQLITE_ENABLE* { +- sqlite-add-feature-flag $cf ++ -DSQLITE_ENABLE* {} ++ default { ++ lappend tmp $cf + } + } + } ++ define BUILD_CFLAGS $tmp + } + + ######################################################################## diff --git a/sdk_container/src/third_party/portage-stable/dev-db/sqlite/sqlite-3.48.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-db/sqlite/sqlite-3.49.0.ebuild similarity index 96% rename from sdk_container/src/third_party/portage-stable/dev-db/sqlite/sqlite-3.48.0-r1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-db/sqlite/sqlite-3.49.0.ebuild index ffb79ecc5f1..d8e44a41790 100644 --- a/sdk_container/src/third_party/portage-stable/dev-db/sqlite/sqlite-3.48.0-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-db/sqlite/sqlite-3.49.0.ebuild @@ -24,7 +24,7 @@ else " 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" + 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" @@ -51,6 +51,8 @@ fi PATCHES=( "${FILESDIR}"/${PN}-3.47.2-hwtime.h-Don-t-use-rdtsc-on-i486.patch + # https://sqlite.org/forum/forumpost/3c2014fea4 + "${FILESDIR}"/${PN}-3.49.0-cppflags.patch ) _fossil_fetch() { @@ -197,7 +199,8 @@ multilib_src_configure() { # 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 -DSQLITE_ENABLE_FTS4 + append-cppflags -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS + options+=( --enable-fts4 ) options+=( --enable-fts5 ) # Support hidden columns. @@ -206,7 +209,7 @@ multilib_src_configure() { # Support memsys5 memory allocator. # https://sqlite.org/compile.html#enable_memsys5 # https://sqlite.org/malloc.html#memsys5 - append-cppflags -DSQLITE_ENABLE_MEMSYS5 + options+=( --enable-memsys5 ) # Support sqlite3_normalized_sql() function. # https://sqlite.org/c3ref/expanded_sql.html @@ -232,12 +235,12 @@ multilib_src_configure() { # https://sqlite.org/compile.html#enable_geopoly # https://sqlite.org/rtree.html # https://sqlite.org/geopoly.html - append-cppflags -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_GEOPOLY + options+=( --enable-rtree --enable-geopoly ) # Support Session extension. # https://sqlite.org/compile.html#enable_session # https://sqlite.org/sessionintro.html - append-cppflags -DSQLITE_ENABLE_SESSION + options+=( --enable-session ) # Support scan status functions. # https://sqlite.org/compile.html#enable_stmt_scanstatus @@ -281,8 +284,7 @@ multilib_src_configure() { if use icu; then # Support ICU extension. # https://sqlite.org/compile.html#enable_icu - append-cppflags -DSQLITE_ENABLE_ICU - sed -e "s/^TLIBS = @LIBS@/& -licui18n -licuuc/" -i Makefile.in || die "sed failed" + options+=( --with-icu-config ) fi options+=( @@ -326,6 +328,7 @@ multilib_src_configure() { # https://sqlite.org/forum/forumpost/4f4d06a9f6683bb9 tc-export CC + CC_FOR_BUILD=${CC} econf "${options[@]}" } diff --git a/sdk_container/src/third_party/portage-stable/dev-debug/gdb/Manifest b/sdk_container/src/third_party/portage-stable/dev-debug/gdb/Manifest index b71c33b6be9..7536e0f048c 100644 --- a/sdk_container/src/third_party/portage-stable/dev-debug/gdb/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-debug/gdb/Manifest @@ -1,2 +1,2 @@ DIST gdb-15.2.tar.xz 24332820 BLAKE2B 073668c21b41f12bf40160c6d3df808056453cc9df3b5b86374abe38e955d208f86467458b7e64b3c3e93d70b7f87425619778173fdb375256cd85be15419f14 SHA512 624007deceb5b15ba89c0725883d1a699fa46714ef30887f3d0165e17c5d65d634671740a135aa69e437d916218abb08cfa2a38ed309ff19d48f51da56b2a8ba -DIST gdb-16.1.tar.xz 24427088 BLAKE2B d1907a4abffda663e3d383959ee18e1ef91fe913c378cf9681bdf5810bf7e7f065236f722564fd77eebf15700751fed1cef58c25cd0c0c44d1d9a416809f6a66 SHA512 17b322fde0655a849506851c879aba9ad1f8bfee804b900efc718806091bec75511383bd4d632b8b32a32ef207233331581501157df18a8df528abe6ff667577 +DIST gdb-16.2.tar.xz 24426680 BLAKE2B 480cc5c116e418d7eb13a68bee8a2ced8e7a40bd38826dde3590a8d5b690c3dd46be6fa3790518b39ac7255698a1ecf35a2bb51d7e38d849f7b9277c15fe38fc SHA512 f04a6335dbdee371edb7e3213294fcbb878ac39adedb73f7e17e621f54350488f5f5bea9bc742639239c122d590bed158771a74fc3aaeaa7fa0ae304232576a3 diff --git a/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-15.2-r101.ebuild b/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-15.2-r101.ebuild index 811789dab6d..ccaf7c91ccd 100644 --- a/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-15.2-r101.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-15.2-r101.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 @@ -75,7 +75,7 @@ LICENSE="GPL-3+ LGPL-2.1+" SLOT="0" IUSE="cet debuginfod guile lzma multitarget nls +python rocm +server sim source-highlight test vanilla xml xxhash zstd" if [[ -n ${REGULAR_RELEASE} ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" fi REQUIRED_USE=" guile? ( ${GUILE_REQUIRED_USE} ) diff --git a/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-16.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-16.2.ebuild similarity index 100% rename from sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-16.1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-debug/gdb/gdb-16.2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-debug/strace/Manifest b/sdk_container/src/third_party/portage-stable/dev-debug/strace/Manifest index f144249df8c..9d5a2271475 100644 --- a/sdk_container/src/third_party/portage-stable/dev-debug/strace/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-debug/strace/Manifest @@ -2,6 +2,8 @@ DIST strace-6.11.tar.xz 2610440 BLAKE2B 5ea511cd0d2f287ec4c979af7306b29ca39975a4 DIST strace-6.11.tar.xz.asc 801 BLAKE2B bc60367dafb08551510bf64c384315aadc3027ed256fbfa5a6e23139800ad01f12b7ebdc09e7845b202260ec38b4a5de70e5701abd9dddc0c5f3c4c32bd6c97b SHA512 bdb86f8fa9b168240b892814037660456ee7beed547e6f5bbcb61431e6fd8d6544b8b169cc794e084c3c11f2f62aff36de410294c609c0a9ea8781fa1ddf57aa DIST strace-6.12.tar.xz 2628804 BLAKE2B 8077a9ae0b05065cf2de7a2bd630a6275735bd77765a5654cb34f17c93b3fda69d77743c5eb8e75efcc1f6ec8707698642d30bd62cc3aa4355bec0d5a00eec89 SHA512 ae28f0b6b6fdc980898f11d1903aacb5a31760a07d63bd7cbc8f9b5f337d9db6b40464d6b61a9b03ba6442b476edb78afc91348f539f7780cdd98b174c6a9a1d DIST strace-6.12.tar.xz.asc 801 BLAKE2B 0c3d81747128039c2304c2c6509f14d868c49b1d7036128ab58a2df7690ea40ab643a54f274c0fecbae4bbc4e90ee5d05037630525db828aa4995199ab415cba SHA512 7b8d6148f3160e39033016d17a54f0b0e0a67fb20ab688486db401521d45ba5197d4a8106f6b173f08a787e59d88147a71ee88435afe0a545fc8f75f621bee79 +DIST strace-6.13.tar.xz 2642452 BLAKE2B cdac801dc5b0fe9c165d9d99a41e51aacf13e8bd05baccca26fff360f2a7052a3f1b7016dee85a37d074c4e0f3b9255a29a146e13b6099a2ef8f9d493e3b1079 SHA512 e702238f32882f92a2b2834fb853b5fa3d81decb441b69f0e74ba0205f6a586bfe698e34bfbac6d4f766ebd25d0b99d4679d9eb27845e5129cfd4e34ced6a8d2 +DIST strace-6.13.tar.xz.asc 801 BLAKE2B 508286a008213e2bd3e0cba6c339a61abae1460f0f71b885c7bef480431bdf5e190a2cb3e44d236019ed54d3bf3a257ebb94e2161971abe0648f685e7849e3bd SHA512 a59e4aeff491ad62603b0591653e7da5e8a4ef0fedcf2faad3f485993b37b738c0809cefa5753ab7d1b85f3b6c87b423b6416dea36def65e220548ee0b4afb46 DIST strace-6.8.tar.xz 2457948 BLAKE2B 0897aedc6a1ed162b8967a56d54dd0bc589ce027321c1219e5fc23e6a44103576e0f363f79a03def365a05989173271eb6096a9c48b16cdf8c54033ec6bd6f2a SHA512 c477724a77112a74a5236a38b7dbaa9b6199622a1d21cc6253cac80dc4ddea78aeaf8cddf4a51ee4119e00e1adaf95f64f64e20d9775ec3edd77cd82c8f7b30e DIST strace-6.8.tar.xz.asc 801 BLAKE2B 544f9a59824f5bd2e682b4df0106c85c90be8eba8fe99fa5a5b6ccc69bd9ced176f4ce3a02253e16a51290dae452426da3827e653d4c38f44eaf06427007e5a5 SHA512 4bcbf6b01440cd94ae2e05cc13220a141a0cc7c3a974d92947e09217fa4c77d7f7c272aaf32107c8974e140da25fd78e45f9f48731406b4dfd4d5a955e663daa DIST strace-6.9.tar.xz 2466252 BLAKE2B 2da51f253ea18f27b5fabafaebdc54805aeca5b750bec6169c269dbcadb98cf76a47bf92dd619458ca86d46ec7a03710e16e0ac4973d89a86edc2d0b853714c8 SHA512 aa80b9b6ec41082f1710f2327f7a22003cdce6d95ab0e5083ada9c5b7b40b8f7cbc7dc6c017878dc0e42c52e405e98ed1488c51d17bc3538989ff4be2c2411e1 diff --git a/sdk_container/src/third_party/portage-stable/dev-debug/strace/strace-6.13.ebuild b/sdk_container/src/third_party/portage-stable/dev-debug/strace/strace-6.13.ebuild new file mode 100644 index 00000000000..d5b1de3c19a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-debug/strace/strace-6.13.ebuild @@ -0,0 +1,117 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools edo flag-o-matic toolchain-funcs verify-sig + +DESCRIPTION="Useful diagnostic, instructional, and debugging tool" +HOMEPAGE="https://strace.io/" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/strace/strace.git" + inherit git-r3 +else + SRC_URI=" + https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz + verify-sig? ( https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz.asc ) + " + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +fi + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/strace.asc + +LICENSE="LGPL-2.1+ test? ( GPL-2+ )" +SLOT="0" +IUSE="aio perl selinux static test unwind elfutils" +RESTRICT="!test? ( test )" +REQUIRED_USE="?? ( unwind elfutils )" + +BDEPEND=" + virtual/pkgconfig + verify-sig? ( >=sec-keys/openpgp-keys-strace-20151021 ) +" +LIB_DEPEND=" + unwind? ( sys-libs/libunwind[static-libs(+)] ) + elfutils? ( dev-libs/elfutils[static-libs(+)] ) + selinux? ( sys-libs/libselinux[static-libs(+)] ) +" +# strace only uses the header from libaio to decode structs +DEPEND=" + static? ( ${LIB_DEPEND} ) + aio? ( >=dev-libs/libaio-0.3.106 ) + sys-kernel/linux-headers +" +RDEPEND=" + !static? ( ${LIB_DEPEND//\[static-libs(+)]} ) + perl? ( dev-lang/perl ) +" + +PATCHES=( + "${FILESDIR}/${PN}-6.5-static.patch" +) + +src_prepare() { + default + + if [[ ! -e configure ]] ; then + # git generation + sed /autoreconf/d -i bootstrap || die + edo ./bootstrap + [[ ! -e CREDITS ]] && cp CREDITS{.in,} + fi + + eautoreconf + + # Stub out the -k test since it's known to be flaky. bug #545812 + sed -i '1iexit 77' tests*/strace-k.test || die +} + +src_configure() { + # Set up the default build settings, and then use the names strace expects. + tc-export_build_env BUILD_{CC,CPP} + local v bv + for v in CC CPP {C,CPP,LD}FLAGS ; do + bv="BUILD_${v}" + export "${v}_FOR_BUILD=${!bv}" + done + + filter-lfs-flags # configure handles this sanely + + export ac_cv_header_libaio_h=$(usex aio) + use elibc_musl && export ac_cv_header_stdc=no + + local myeconfargs=( + --disable-gcc-Werror + + # Don't require mpers support on non-multilib systems. #649560 + --enable-mpers=check + + $(use_enable static) + $(use_with unwind libunwind) + $(use_with elfutils libdw) + $(use_with selinux libselinux) + ) + econf "${myeconfargs[@]}" +} + +src_test() { + if has usersandbox ${FEATURES} ; then + # bug #643044 + ewarn "Test suite is known to fail with FEATURES=usersandbox -- skipping ..." + return 0 + fi + + default +} + +src_install() { + default + + if use perl ; then + exeinto /usr/bin + doexe src/strace-graph + fi + + dodoc CREDITS +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/go/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/go/Manifest index d080a95cfd4..39b7ef1b567 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/go/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-lang/go/Manifest @@ -1,2 +1,4 @@ DIST go1.22.11.src.tar.gz 27565913 BLAKE2B d4b8f746846f0ba45307ecf732e035c2628483d59402f0868bc42a2fd1ae3447f61d9c3a6eacbc28b1f25e0b35b99ccf8831baeba4203601810b09267d8743f6 SHA512 40c133d6008df7c7cc3bb95a41c29f7442a6af2dd78b807007daf732471c88e2c641aed32878414d57be3904e5efa580d2ecd13fff5412ee668e753e50f1356e +DIST go1.22.12.src.tar.gz 27566409 BLAKE2B ea8ce4abd7d6548aef14c0803a07b4beba8728f40f96db5feb6eb4b48fce5866fbccd0b2d1e670dafd2e58e6ec814ef6f83a16ed6b6214be76597748bf87ec9d SHA512 de498f72c398c5587abb6e6943a21b1b9835fde16dbda4d64a1ad847f5b2399ed289fe327255dcde104ad9e7f3fd6c520ddb13ee1900ba5d5c45aa5e1c1e30c8 DIST go1.23.5.src.tar.gz 28179014 BLAKE2B 6fe6101054a0c10ce415aea65367a48ef8397c88d66bad01b7c72107a6c60daf0b9a47f7c1cd6c8da9855ab04309f25941cc867e6a9f90ac51d1ab0c54662313 SHA512 b04317afeab2d0ced7c36b8682dd32ac085d95d874cf3f614daa34859d7f7f2b75138132e7a64e237c6b4d711d5b03a4d20533f92a44840915630f4ea7cfafa2 +DIST go1.23.6.src.tar.gz 28179132 BLAKE2B 25c988547604c35de65aedfdee5af9f35f7a1c43f634c0147373d9c86baf2bb10068463f70013ef60acd3088149eb16502958b1ca63d7cee310e32eaddf1578a SHA512 c504476d42cdbcd1b6afe53c0974e82c19eb0efac974bc06d41c1641440676891cfe6416455a0cfc81fe82902a9b82ea0a1d95089c676667d05487e45f5e04e3 diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.22.11.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.22.11-r1.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.22.11.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.22.11-r1.ebuild index bd8a9171cf6..c9c7981b3aa 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.22.11.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.22.11-r1.ebuild @@ -36,8 +36,8 @@ SLOT="0/${PV}" IUSE="cpu_flags_x86_sse2" RDEPEND=" -arm? ( sys-devel/binutils[gold] ) -arm64? ( sys-devel/binutils[gold] )" +arm? ( sys-devel/binutils[gold(-)] ) +arm64? ( sys-devel/binutils[gold(-)] )" BDEPEND="|| ( >=dev-lang/go-${GO_BOOTSTRAP_MIN} >=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN} )" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.22.12.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.22.12.ebuild new file mode 100644 index 00000000000..57a3e9a8de8 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.22.12.ebuild @@ -0,0 +1,166 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +export CBUILD=${CBUILD:-${CHOST}} +export CTARGET=${CTARGET:-${CHOST}} + +# See "Bootstrap" in release notes +GO_BOOTSTRAP_MIN=1.20.14 +MY_PV=${PV/_/} + +inherit go-env toolchain-funcs + +case ${PV} in +*9999*) + EGIT_REPO_URI="https://github.com/golang/go.git" + inherit git-r3 + ;; +*) + SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz " + S="${WORKDIR}"/go + case ${PV} in + *_beta*|*_rc*) ;; + *) + KEYWORDS="-* ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" + ;; + esac +esac + +DESCRIPTION="A concurrent garbage collected and typesafe programming language" +HOMEPAGE="https://go.dev" + +LICENSE="BSD" +SLOT="0/${PV}" +IUSE="cpu_flags_x86_sse2" + +RDEPEND=" +arm? ( sys-devel/binutils[gold(-)] ) +arm64? ( sys-devel/binutils[gold(-)] )" +BDEPEND="|| ( + >=dev-lang/go-${GO_BOOTSTRAP_MIN} + >=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN} )" + +# the *.syso files have writable/executable stacks +QA_EXECSTACK='*.syso' + +# Do not complain about CFLAGS, etc, since Go doesn't use them. +QA_FLAGS_IGNORED='.*' + +# The tools in /usr/lib/go should not cause the multilib-strict check to fail. +QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*" + +# This package triggers "unrecognized elf file(s)" notices on riscv. +# https://bugs.gentoo.org/794046 +QA_PREBUILT='.*' + +# Do not strip this package. Stripping is unsupported upstream and may +# fail. +RESTRICT=" strip" + +DOCS=( + CONTRIBUTING.md + PATENTS + README.md + SECURITY.md +) + +go_tuple() { + echo "$(go-env_goos $@)_$(go-env_goarch $@)" +} + +go_cross_compile() { + [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]] +} + +PATCHES=( + "${FILESDIR}"/go-never-download-newer-toolchains.patch +) + +src_compile() { + if has_version -b ">=dev-lang/go-${GO_BOOTSTRAP_MIN}"; then + export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go" + elif has_version -b ">=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN}"; then + export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap" + else + eerror "Go cannot be built without go or go-bootstrap installed" + die "Should not be here, please report a bug" + fi + + export GOROOT_FINAL="${EPREFIX}"/usr/lib/go + export GOROOT="${PWD}" + export GOBIN="${GOROOT}/bin" + + # Go's build script does not use BUILD/HOST/TARGET consistently. :( + export GOHOSTARCH=$(go-env_goarch ${CBUILD}) + export GOHOSTOS=$(go-env_goos ${CBUILD}) + export CC=$(tc-getBUILD_CC) + + export GOARCH=$(go-env_goarch) + export GOOS=$(go-env_goos) + export CC_FOR_TARGET=$(tc-getCC) + export CXX_FOR_TARGET=$(tc-getCXX) + use arm && export GOARM=$(go-env_goarm) + use x86 && export GO386=$(go-env_go386) + + cd src + bash -x ./make.bash || die "build failed" +} + +src_test() { + go_cross_compile && return 0 + + cd src + + # https://github.com/golang/go/issues/42005 + rm cmd/link/internal/ld/fallocate_test.go || die + + PATH="${GOBIN}:${PATH}" \ + ./run.bash -no-rebuild -k || die "tests failed" + cd .. + rm -fr pkg/*_race || die + rm -fr pkg/obj/go-build || die +} + +src_install() { + dodir /usr/lib/go + # The use of cp is deliberate in order to retain permissions + cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go + einstalldocs + + insinto /usr/lib/go + doins go.env VERSION* + + # testdata directories are not needed on the installed system + rm -fr $(find "${ED}"/usr/lib/go -iname testdata -type d -print) + + local bin_path + if go_cross_compile; then + bin_path="bin/$(go_tuple)" + else + bin_path=bin + fi + local f x + for x in ${bin_path}/*; do + f=${x##*/} + dosym ../lib/go/${bin_path}/${f} /usr/bin/${f} + done + + # install the @golang-rebuild set for Portage + insinto /usr/share/portage/config/sets + newins "${FILESDIR}"/go-sets.conf go.conf +} + +pkg_postinst() { + [[ -z ${REPLACING_VERSIONS} ]] && return + elog "After ${CATEGORY}/${PN} is updated it is recommended to rebuild" + elog "all packages compiled with previous versions of ${CATEGORY}/${PN}" + elog "due to the static linking nature of go." + elog "If this is not done, the packages compiled with the older" + elog "version of the compiler will not be updated until they are" + elog "updated individually, which could mean they will have" + elog "vulnerabilities." + elog "Run 'emerge @golang-rebuild' to rebuild all 'go' packages" + elog "See https://bugs.gentoo.org/752153 for more info" +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.23.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.23.5-r1.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.23.5.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.23.5-r1.ebuild index 7958019d7f9..8e165768f1e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.23.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.23.5-r1.ebuild @@ -36,8 +36,8 @@ SLOT="0/${PV}" IUSE="cpu_flags_x86_sse2" RDEPEND=" -arm? ( sys-devel/binutils[gold] ) -arm64? ( sys-devel/binutils[gold] )" +arm? ( sys-devel/binutils[gold(-)] ) +arm64? ( sys-devel/binutils[gold(-)] )" BDEPEND="|| ( >=dev-lang/go-${GO_BOOTSTRAP_MIN} >=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN} )" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.23.6.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.23.6.ebuild new file mode 100644 index 00000000000..bdfada7c265 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-1.23.6.ebuild @@ -0,0 +1,162 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +export CBUILD=${CBUILD:-${CHOST}} +export CTARGET=${CTARGET:-${CHOST}} + +# See "Bootstrap" in release notes +GO_BOOTSTRAP_MIN=1.20.14 +MY_PV=${PV/_/} + +inherit go-env toolchain-funcs + +case ${PV} in +*9999*) + EGIT_REPO_URI="https://github.com/golang/go.git" + inherit git-r3 + ;; +*) + SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz " + S="${WORKDIR}"/go + case ${PV} in + *_beta*|*_rc*) ;; + *) + KEYWORDS="-* ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" + ;; + esac +esac + +DESCRIPTION="A concurrent garbage collected and typesafe programming language" +HOMEPAGE="https://go.dev" + +LICENSE="BSD" +SLOT="0/${PV}" +IUSE="cpu_flags_x86_sse2" + +RDEPEND=" +arm? ( sys-devel/binutils[gold(-)] ) +arm64? ( sys-devel/binutils[gold(-)] )" +BDEPEND="|| ( + >=dev-lang/go-${GO_BOOTSTRAP_MIN} + >=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN} )" + +# the *.syso files have writable/executable stacks +QA_EXECSTACK='*.syso' + +# Do not complain about CFLAGS, etc, since Go doesn't use them. +QA_FLAGS_IGNORED='.*' + +# The tools in /usr/lib/go should not cause the multilib-strict check to fail. +QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*" + +# This package triggers "unrecognized elf file(s)" notices on riscv. +# https://bugs.gentoo.org/794046 +QA_PREBUILT='.*' + +# Do not strip this package. Stripping is unsupported upstream and may +# fail. +RESTRICT=" strip" + +DOCS=( + CONTRIBUTING.md + PATENTS + README.md + SECURITY.md +) + +go_tuple() { + echo "$(go-env_goos $@)_$(go-env_goarch $@)" +} + +go_cross_compile() { + [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]] +} + +PATCHES=( + "${FILESDIR}"/go-never-download-newer-toolchains.patch +) + +src_compile() { + if has_version -b ">=dev-lang/go-${GO_BOOTSTRAP_MIN}"; then + export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go" + elif has_version -b ">=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN}"; then + export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap" + else + eerror "Go cannot be built without go or go-bootstrap installed" + die "Should not be here, please report a bug" + fi + + # Go's build script does not use BUILD/HOST/TARGET consistently. :( + export GOHOSTARCH=$(go-env_goarch ${CBUILD}) + export GOHOSTOS=$(go-env_goos ${CBUILD}) + export CC=$(tc-getBUILD_CC) + + export GOARCH=$(go-env_goarch) + export GOOS=$(go-env_goos) + export CC_FOR_TARGET=$(tc-getCC) + export CXX_FOR_TARGET=$(tc-getCXX) + use arm && export GOARM=$(go-env_goarm) + use x86 && export GO386=$(go-env_go386) + + cd src + bash -x ./make.bash || die "build failed" +} + +src_test() { + go_cross_compile && return 0 + + cd src + + # https://github.com/golang/go/issues/42005 + rm cmd/link/internal/ld/fallocate_test.go || die + + PATH="${GOBIN}:${PATH}" \ + ./run.bash -no-rebuild -k || die "tests failed" + cd .. + rm -fr pkg/*_race || die + rm -fr pkg/obj/go-build || die +} + +src_install() { + dodir /usr/lib/go + # The use of cp is deliberate in order to retain permissions + cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go + einstalldocs + + insinto /usr/lib/go + doins go.env VERSION* + + # testdata directories are not needed on the installed system + rm -fr $(find "${ED}"/usr/lib/go -iname testdata -type d -print) + + local bin_path + if go_cross_compile; then + bin_path="bin/$(go_tuple)" + else + bin_path=bin + fi + local f x + for x in ${bin_path}/*; do + f=${x##*/} + dosym ../lib/go/${bin_path}/${f} /usr/bin/${f} + done + + # install the @golang-rebuild set for Portage + insinto /usr/share/portage/config/sets + newins "${FILESDIR}"/go-sets.conf go.conf +} + +pkg_postinst() { + [[ -z ${REPLACING_VERSIONS} ]] && return + elog "After ${CATEGORY}/${PN} is updated it is recommended to rebuild" + elog "all packages compiled with previous versions of ${CATEGORY}/${PN}" + elog "due to the static linking nature of go." + elog "If this is not done, the packages compiled with the older" + elog "version of the compiler will not be updated until they are" + elog "updated individually, which could mean they will have" + elog "vulnerabilities." + elog "Run 'emerge @golang-rebuild' to rebuild all 'go' packages" + elog "See https://bugs.gentoo.org/752153 for more info" +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/go/go-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-9999.ebuild index 485f2a1bde8..3625ad65125 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/go/go-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/go/go-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -36,8 +36,8 @@ SLOT="0/${PV}" IUSE="cpu_flags_x86_sse2" RDEPEND=" -arm? ( sys-devel/binutils[gold] ) -arm64? ( sys-devel/binutils[gold] )" +arm? ( sys-devel/binutils[gold(-)] ) +arm64? ( sys-devel/binutils[gold(-)] )" BDEPEND="|| ( >=dev-lang/go-${GO_BOOTSTRAP_MIN} >=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN} )" 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 076e86ad56c..6a20cc78f0e 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 @@ -6,10 +6,14 @@ DIST Python-3.11.11.tar.xz 20085792 BLAKE2B a9a778eff94529e1029ae252ef28ecdc2f06 DIST Python-3.11.11.tar.xz.asc 833 BLAKE2B 6a9d873e181d636712567ea46823ad7f972f872d038092506e67bada24187441188b8fde4672c205ce6d37e60c4e0c69a8f3cc5d1915fd8f5dd8743292a16d1b SHA512 d71b0b42537fb636e8c469d62d13ff020149e4fb9d87eb17f8c999301195e418d134dbdb7e4ab49b06de16e96f8ef6bbcf2a749956fffca2ce03185f191c181d DIST Python-3.12.8.tar.xz 20489808 BLAKE2B 24b9a5abafdb9fedfc371e7acf0efce50bdc6702050c4f5f0b9e97916a899e3462f928cb217c48e6ffae6fdd4d2cd7c05c5f1d73eaa9ef646f4b3281db5ca977 SHA512 406ce1146c4c2c70d252df56bbe9e5970ef469395cbaa211a96af71f32de2cf7abd944906920cc18b4a470027e63a3f64bf7679fb4954b31bf4ca4baf24fa370 DIST Python-3.12.8.tar.xz.asc 963 BLAKE2B 5aeacf16d337949a66bb56e346447e7bbcd9166b60fc512c98bcff6862976732ef2e3ac59869cd9df29a653c2bafd4af63b1e6c14f4c6603efb85d5c3dd88357 SHA512 19493499ddb80764aa105e100585d2ef872798dc30fdff2e31d158cd7fd65b69ca133c6d9d16eb974660eed6ba474a26a2af3acd13a90522cf50e142492bd9a6 +DIST Python-3.12.9.tar.xz 20502440 BLAKE2B df1a8ba4996219c018fc14156958ca9c0e8af4854819064fbcf0c927258ecb3c5f46e562213799a87dafb35ae5bd647e1ce280affe2ac8ce6a85c351822b6693 SHA512 c840b14aa21e6a963d18c06ebaafb551d9c9a101b3866417e762fc4a2fde071a7a25fa257faba2956c7344bbc2413ed61690a712d26fba4d0dbeaa50e49b2574 +DIST Python-3.12.9.tar.xz.asc 963 BLAKE2B d90b9c1a3aafa1a942ef8d978b566829656db1114b74f1565b7cbba188cf3bf5637c1dbeec3432ae0af0f826a154c40f27fd8fc46350a757ef91f5c426908149 SHA512 b59251ca3a0a17c06ff7d165f6c025eb91127c80be0782642590f5c922297e0710544ac5a9ae977378e393f1c4861149576a0515af5ec0e54e6827c4010d544f DIST Python-3.13.0.tar.xz 22532980 BLAKE2B 4a4e397199402de8c9fe8e4d63443ed972cbe8a4f541743908d699c7987127d159d600fd14145b6a946e8671426279d230c9155fdc5863c1e49a945eedcbf21b SHA512 44a143c9b96b55b01885ec020c3364265bda55289615cd7d5071915b0d0178a6f35e7551a89090001fcb7f3172d38177a56bf8b8532b15c9dbc50295c9210152 DIST Python-3.13.0.tar.xz.asc 963 BLAKE2B d05f02692a9fea42b73dbfe5dc42bd6533555e5ecb848510d2b94bb7f0e55d4a0f89bcd20b073ed2c7f7a68be35b12cb6dbff6bc16fc9a4592ded2c339ada7fd SHA512 1b8bb0fe4eb93e31ec1770e90b94d44b5864c0391aad5dcba3a30d8e505d9b17107385414353c0060007f8a536254f49b8e919f36ddf6421a6e4330f817f1a3e DIST Python-3.13.1.tar.xz 22589692 BLAKE2B 161d5c0a7b4cacc4ce9983f9540a7e01662a7b76cbb34c5f3681582b0e7207574bdec5ad7bf79d820d8744b69bc2fb7196cf07a2ecadbfab6a158872f562741d SHA512 056c9b5fc0a6b540f41513d045f43c1ed463d15e0f345cecec703ec9c2335e53b4beb19de9c74ab2b236b023f934d5fd9ae7727a808634eaa01cfe66018a9a35 DIST Python-3.13.1.tar.xz.asc 963 BLAKE2B 47cbfb6bceb92716181a0ed8f41742958568e62609fa4996d341e465bd6be0ebcab586ba1ebe275aa3a99108221be047fab66ec4b7e90af27d9db7524b6b4951 SHA512 1b56b7c2f547aa39c75c18978e174debb113444ce3f9da3829ba6842e3160051e0de70bd49d306b8014299aa8aa911d7c67efe71dd648c3528cf8d7535a01599 +DIST Python-3.13.2.tar.xz 22621108 BLAKE2B 79c7dff8a15fd2487d62847a8e654c02433a89887aa4f93819020b60a30587e3ba92b101553d971b59e132677f9f74dfc41cd7c7901db78a7787607ec96c6664 SHA512 bb1c0598914c6d4326554faa568f660f10b20c701d0f36bf1fa58837b6498d728a407416b06ede39604caea1ca93f60545b83b01ae8ee65f55d4cc83242b63fe +DIST Python-3.13.2.tar.xz.asc 963 BLAKE2B 95a36c305dd452df23b4f119de05e1d3a2b2c9e0c2778a52dc4065f82b52752b68d89eb737cc54cced70623ad4a7b48c85fdff781bf7d7e3b747dacb1ef77db0 SHA512 5f019be530f688b0adf5d5cc9f2c2243e2f1dc7338559db14c1eedd12aadc85404d42c7aafd74e41828205d85f13f278876662ac30c8f3382a1ee081ba5f29f2 DIST Python-3.14.0a3.tar.xz 22749680 BLAKE2B 4a0457a98fe1a35c01a4607c11eefeb7ef4f4a3bc7bd8b04e129137c1f7f7ee8806fe5561e88dbf8866f461f2d7d3577618b7918fb85a0e99f7c225fd4593778 SHA512 e26c9736f00af680b5f1ff1ba0f06562c48550836088d79dd8b4c97016d52f9f76979de32fa8556e9d750a5dad488643e897807ab6cb0c1424882151fe5f3337 DIST Python-3.14.0a3.tar.xz.sigstore 4891 BLAKE2B c251bfc3e332174c5050c2d8524aea4865e28e73c39288ac151bea10e0039c3af545a26acc48b9ae8deed9befddb11e810103620be6a7934ea79e7b1f3182eb2 SHA512 dd7d6c543ba2ba8dc8d2a6c891adcf85de7eb857ceb3ffb33f5f06fbcf0a6bcd6517502cfd35acb86ec13d85d487313eb9a396d78c42d1c506d2261e1c4b861d DIST Python-3.14.0a4.tar.xz 22798932 BLAKE2B 4dd8632503e142456deefa749aa8d7a93b98c988bdfe905ae650e8e72b2a22de9e88b6d7ba65ec277748b4c8b919a176ca22552e9482f4883b96bf9129dd15c2 SHA512 b70671ebbd9f777fdcb661405c538c733600470ac34992a5b3df99d2f5afecc22cd8325eeec50eeef043181e634da91e535c166b9b5ed421d4e6aa41b79da3ab @@ -25,9 +29,11 @@ DIST python-gentoo-patches-3.10.16_p1.tar.xz 24964 BLAKE2B 93cf5d208f80f1017e4af DIST python-gentoo-patches-3.11.11_p1.tar.xz 11644 BLAKE2B d080e1b987ea0e1b397113f20a5c84f6a34d6619a3ed9f7389fd10d95636169563fba97d212477ca7f9b93d2bd0b66c9521fc61963bb468805a661ca3ab287a7 SHA512 f6045adf25923053fc9a60506b9164c9c062580d6886f1a3dcaca00dc4affe69aa9e138f8ce93f093798ccf33322ccca2aca674ab87457df98a93dcaca234b44 DIST python-gentoo-patches-3.12.8.tar.xz 10772 BLAKE2B 9833b5ee6c307a4aa1335fd966fcd64a0f3732a97a190abdd3121b3496ea68ead9436af4ec5e3e8c0e781fd68df41403a1b2e5f29f264fc8569a883141e5f7f9 SHA512 d5906845a6259f7349a0299e185f569750b493c64ea1f6537dc8bfc0babc9b54de7db1c4f1b5b6ec2f7076937ad07ca0ca9c4941bbb8d542da6c687957bdbd5e DIST python-gentoo-patches-3.12.8_p1.tar.xz 11088 BLAKE2B 4d7ccf4759b624aafde1ef2a0a341cda8f4d3e7c4d86586201a910d77327219e61b134985f2fe85e83892ad4ba607b4e661aed675cc038e4cc193efe9fbe6f6e SHA512 6f1d6ab2b9e958ae7d2ca3f204b7c7eb1435998919cf5a577a82bbf1339232f92a2f517c248afb9e1802850acd2b59b84c41e87f4b8582e19ec88155743cdaae +DIST python-gentoo-patches-3.12.9.tar.xz 10736 BLAKE2B 1f87d1bba8c094936e5cd3e0ef2eede0dbca3e658430f81b398735d8f02fff1f87739914014dbcb17163f8a969ffc5e7e4cce7d71557ce3c2e58487e6ed8b80f SHA512 342f11df85926e32455d52115d06b817a17f7ae104e3ea8e852046d321d829835bba7c07803c50dd5433ac8b615499428d5bc1a088b484ca0c4304eb8b2cb879 DIST python-gentoo-patches-3.13.0.tar.xz 8316 BLAKE2B 8fb8ba8f41f310140ad7066b614952023112d5043e5d82058364125611785144c1843e87eecb7669bcbab51c40d0694069526219f7419a7009517ce0821b74ba SHA512 0eb31ebfa3411020aa70b3b66fd7eec98b4b7a686b0e8f1f7ed76a8186a7c1ee85ccd9565a86a1d7ec13b975855eeb7303036af05e2dfdce3d64e4ad99299df4 DIST python-gentoo-patches-3.13.1.tar.xz 8320 BLAKE2B 2fef9c501df7ed7603eabb3e01a8c3bde5bcfae3a8ac9bbe772b458cb04ffa9598cf38f3a74f6dcbcda29e7bd294d664b8fb12f7ddd9e0e42ed6268300947bb0 SHA512 419e1f12daaf19ed2d2195699b5e8c2c604779562d84d6a68adb4016dcb13fc3e0383ccc4b01eb153930600e6c9cdcc518929ffce3d6343019226a6111e9d617 DIST python-gentoo-patches-3.13.1_p1.tar.xz 8672 BLAKE2B d35b8b47c6d549753d9a764fbc3538cb6517c809e69901f3221110ccbb0ea9eed10ba1f1637a5ffe4f90d8c3932f53815c7dcf844a7350ad89458763bf0aeea1 SHA512 0505bc1f7c8e264fdcad5459900e37d12ed9bea57e615ea42492fa211d3f0641e79c3e711a6970cd34a3a6275f36a22ed7ba64fd71c988bcdaebfcefc7b6a1d2 +DIST python-gentoo-patches-3.13.2.tar.xz 8316 BLAKE2B 2367808924c83c02b8b2ca765fd4768d4f12cb8e8451eab9d084ce5950a5a81829e573d415f9a16db2e053105def90b5f52c91423fc71e57cd182a1d9c824d8c SHA512 580332ca037c1453f314d5811f96f7bf74defc16cfe515c4fe82ea08a7bf3679aa88d5456db846d988bcf4fbc9eeb4ebe7cee01d135bd55c87931206250e301a DIST python-gentoo-patches-3.14.0a3.tar.xz 6036 BLAKE2B bbcb3f31acb533b8291f4cedcb89c0501a7054bbf1f98ea000c43e5a99e3b8bd160c6fb81e28bad90c85dd0256d523f72b9e25f30c30b5b5e9d60a9055a612d1 SHA512 9f87b3f1f326f88c924c49e37f39f63314199cfc354d452fef860ab36e143145a2c1d832c1b7d4357ade1c1090de00086bc5d6a9d7981bad210a99ffcfa2a858 DIST python-gentoo-patches-3.14.0a4.tar.xz 7452 BLAKE2B 5d3b0dc6f9c2f0ffeac50e4af1915a8d8ec29350c56203ec66d6580ae705a23316f4c85f28908000c50c58eb3400e63ff379ba26d219f48ca7f559633ba4c153 SHA512 0e571f6693e44f439c7ac499216f4cf70e487768116290c24ee66323c9113fc91d0b4b68c79d1d549d0a14fcee4f79ddc377dfd87932dfcf00c5c11d3784bedc DIST python-gentoo-patches-3.8.20_p6.tar.xz 50876 BLAKE2B df0df21c75972fb73e36f66f0c90d3f953b14d7a59bf97ce4214dce6e6d937ed52fbf3db8f3eaf42cde141bfe4d7a731b06e41723285517461c790912706be9e SHA512 48ef567f6972e7975cb61d34a876d8c0db42f1a3c0b832f9366091dd5f2ca854c02887808843d314816c8cf6d7b0738c40e7835fedbba7b84e57f2515dde45e2 diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.9.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.9.ebuild new file mode 100644 index 00000000000..34d02eeb616 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.9.ebuild @@ -0,0 +1,609 @@ +# 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 + + append-flags -fwrapv + 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 + ) + ;; + 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-computed-gotos + --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) + ) + + # https://bugs.gentoo.org/700012 + if tc-is-lto; then + append-cflags $(test-flags-CC -ffat-lto-objects) + myeconfargs+=( + --with-lto + ) + fi + + # Force-disable modules we don't want built. + # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. + cat > Modules/Setup.local <<-EOF || die + *disabled* + nis + $(usev !gdbm '_gdbm _dbm') + $(usev !sqlite '_sqlite3') + $(usev !ssl '_hashlib _ssl') + $(usev !ncurses '_curses _curses_panel') + $(usev !readline 'readline') + $(usev !tk '_tkinter') + EOF + + # disable implicit optimization/debugging flags + local -x OPT= + + if tc-is-cross-compiler ; then + build_cbuild_python + myeconfargs+=( + # Point the imminent CHOST build to the Python we just + # built for CBUILD. + --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python + ) + fi + + # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get + # propagated to sysconfig for built extensions + local -x CFLAGS_NODIST=${CFLAGS} + local -x LDFLAGS_NODIST=${LDFLAGS} + local -x CFLAGS= LDFLAGS= + + # Fix implicit declarations on cross and prefix builds. Bug #674070. + if use ncurses; then + append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw + fi + + econf "${myeconfargs[@]}" + + if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then + eerror "configure has detected that the sem_open function is broken." + eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." + die "Broken sem_open function (bug 496328)" + fi + + # install epython.py as part of stdlib + echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die +} + +src_compile() { + # Ensure sed works as expected + # https://bugs.gentoo.org/594768 + local -x LC_ALL=C + export PYTHONSTRICTEXTENSIONBUILD=1 + + # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't + # end up writing bytecode & violating sandbox. + # bug #831897 + local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} + + # Gentoo hack to disable accessing system site-packages + export GENTOO_CPYTHON_BUILD=1 + + if use pgo ; then + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + local -x TMPDIR=/var/tmp + fi + + # also need to clear the flags explicitly here or they end up + # in _sysconfigdata* + emake CPPFLAGS= CFLAGS= LDFLAGS= + + # Restore saved value from above. + local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} + + # Work around bug 329499. See also bug 413751 and 457194. + if has_version dev-libs/libffi[pax-kernel]; then + pax-mark E python + else + pax-mark m python + fi +} + +src_test() { + # Tests will not work when cross compiling. + if tc-is-cross-compiler; then + elog "Disabling tests due to crosscompiling." + return + fi + + # this just happens to skip test_support.test_freeze that is broken + # without bundled expat + # TODO: get a proper skip for it upstream + local -x LOGNAME=buildbot + + local test_opts=( + --verbose3 + -u-network + -j "$(makeopts_jobs)" + "${COMMON_TEST_SKIPS[@]}" + ) + + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + local -x TMPDIR=/var/tmp + + nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ + CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty + local ret=${?} + + [[ ${ret} -eq 0 ]] || die "emake test failed" +} + +src_install() { + local libdir=${ED}/usr/lib/python${PYVER} + + # the Makefile rules are broken + # https://github.com/python/cpython/issues/100221 + mkdir -p "${libdir}"/lib-dynload || die + + # -j1 hack for now for bug #843458 + emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall + + # Fix collisions between different slots of Python. + rm "${ED}/usr/$(get_libdir)/libpython3.so" || die + + # Cheap hack to get version with ABIFLAGS + local abiver=$(cd "${ED}/usr/include"; echo python*) + if [[ ${abiver} != python${PYVER} ]]; then + # Replace python3.X with a symlink to python3.Xm + rm "${ED}/usr/bin/python${PYVER}" || die + dosym "${abiver}" "/usr/bin/python${PYVER}" + # Create python3.X-config symlink + dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" + # Create python-3.5m.pc symlink + dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" + fi + + # python seems to get rebuilt in src_install (bug 569908) + # Work around it for now. + if has_version dev-libs/libffi[pax-kernel]; then + pax-mark E "${ED}/usr/bin/${abiver}" + else + pax-mark m "${ED}/usr/bin/${abiver}" + fi + + rm -r "${libdir}"/ensurepip/_bundled || die + if ! use sqlite; then + rm -r "${libdir}/"sqlite3 || die + fi + if ! use tk; then + rm -r "${ED}/usr/bin/idle${PYVER}" || die + rm -r "${libdir}/"{idlelib,tkinter} || die + fi + + ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die + + dodoc Misc/{ACKS,HISTORY,NEWS} + + if use examples; then + docinto examples + find Tools -name __pycache__ -exec rm -fr {} + || die + dodoc -r Tools + fi + insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 + local libname=$( + printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | + emake --no-print-directory -s -f - 2>/dev/null + ) + newins Tools/gdb/libpython.py "${libname}"-gdb.py + + newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} + newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} + sed \ + -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ + -e "s:@PYDOC@:pydoc${PYVER}:" \ + -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ + "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" + + # python-exec wrapping support + local pymajor=${PYVER%.*} + local EPYTHON=python${PYVER} + local scriptdir=${D}$(python_get_scriptdir) + mkdir -p "${scriptdir}" || die + # python and pythonX + ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die + ln -s "python${pymajor}" "${scriptdir}/python" || die + # python-config and pythonX-config + # note: we need to create a wrapper rather than symlinking it due + # to some random dirname(argv[0]) magic performed by python-config + cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die + #!/bin/sh + exec "${abiver}-config" "\${@}" + EOF + chmod +x "${scriptdir}/python${pymajor}-config" || die + ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die + # 2to3, pydoc + ln -s "../../../bin/2to3-${PYVER}" "${scriptdir}/2to3" || die + ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die + # idle + if use tk; then + ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die + fi +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.2-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.2-r100.ebuild new file mode 100644 index 00000000000..f2f4b2b6ff3 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.2-r100.ebuild @@ -0,0 +1,634 @@ +# 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)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/${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%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 + 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 + + append-flags -fwrapv + 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 + ) + ;; + 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-computed-gotos + --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 jit experimental-jit) + $(use_enable pgo optimizations) + $(use_with readline readline "$(usex libedit editline readline)") + $(use_with valgrind) + ) + + # https://bugs.gentoo.org/700012 + if tc-is-lto; then + append-cflags $(test-flags-CC -ffat-lto-objects) + 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-3.13.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.2.ebuild new file mode 100644 index 00000000000..39406d1356b --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.2.ebuild @@ -0,0 +1,629 @@ +# 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 + + append-flags -fwrapv + 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 + ) + ;; + 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-computed-gotos + --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) + ) + + # https://bugs.gentoo.org/700012 + if tc-is-lto; then + append-cflags $(test-flags-CC -ffat-lto-objects) + 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/rust-bin/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/Manifest index 40f9dbf048b..ce1b51dead0 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/Manifest @@ -402,6 +402,42 @@ DIST rust-1.84.0-x86_64-unknown-linux-gnu.tar.xz 183288052 BLAKE2B 6a9bdf25e8ebd DIST rust-1.84.0-x86_64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 3ceb1130faa28ed9caf86b0c66471b04aa2663bf6188230fd96a0c0d4ff7a4255cb0e7e3e6e71d8a3de86798bd7f53ccdafe21285ae247d1f1718fbd0aa04d31 SHA512 bb782d01731f8aeb4a54555ac2163bbf625e83a17f5d8e10fa76217b345b247b4d653b5bada065fe647c8b19e1dc66316b1ebea252525fa194cb7bdc6370c59b DIST rust-1.84.0-x86_64-unknown-linux-musl.tar.xz 263170948 BLAKE2B d4e43adbcc8ab3f49306d5ae624340f7e7b0844821c74140997510ca40d4bf252ff698e1295ab8138bae237d079c1e3cff6a46f895f55fbb7ba2c93054e1648c SHA512 6cf083cc2cda4591314ba49a302aba2aec8fd036eb9a72b775d16561d0739df23a1f3b0cb44d6539a068a47730142b09aeaafa1b0756703c51b539851e59bee5 DIST rust-1.84.0-x86_64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B 9abf6ad52601fa64e807a71bb6af5a9fd8c3ecda5589ec7232ffdbd7884db67535a5845216fe7ab9133fc114fdc12caee436bc1bb78a163f94a021060459b1e6 SHA512 f9a0c7fa85668b034f0a0891ddc0b9d8f624589c8c9485421e199abc9a82dec481ef3491a4e1286fdf6c6863221e7761cada393697ff1da93716321bcbca679c +DIST rust-1.84.1-aarch64-unknown-linux-gnu.tar.xz 241951328 BLAKE2B 39af8e2258ee496150c12204975c44ddf8dd54f4bdd9414d774444403b9d9f997d6b0ea06c86a850ce75f8bdfb2049076b0487132d3df69fd0c36c6d290dea7c SHA512 285720f5da5eb6fc4d10c98e0d5e5961ec73fb8c99f2fdd60e7954c5fbae27f01ee1f97542af4c6181b2f8071ff0e0f4d7fb53d4019f355eedba19698af93c45 +DIST rust-1.84.1-aarch64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B b9624946128ad2d054d9f4ae3b54aa40657c4deb92a6fb44ad4f38f79ab24afa0c5a568b21ec54e62862ff7abf57102b424cc1383920f67f23be20902e1e5ab8 SHA512 23bba5bd8cf9c3ae591c6f48261b7e54be532dfcb6ffe133c6b374b831e3e00df54c89de4b6f34787dd1c5801c130b1d7b8a3168be46a97d3e412832f56c11e3 +DIST rust-1.84.1-aarch64-unknown-linux-musl.tar.xz 218987176 BLAKE2B a5ce111633f0a999754878b1ed77c5ba2fd3e3649fea2c23c85709b168bea49c110a1f04e35b67381e724c0a942837ebfce1a06f4dbe545ba2edb64943d39265 SHA512 c3d9c0c25a0a722f21cf9515ac4f9f2cdc8b37bc0c8cae2239fd9924748f92d10834a41a85672b63740a6687c0cc75be33e2aab5c982acda7cd0c0571ad89641 +DIST rust-1.84.1-aarch64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B 7cbe4b2adf445585b3535d7590ebb8b362f5f138b3bf8d7b5b766153fa3b24dba78e41d53686693016e53abfa2e9f4dd553b61254c699c7263a37a7f9c7d8eb1 SHA512 0a1d82e92bc1b1b4997f3d60562e13aa9af578052d72c63d2f0dd4c73c8e86422882051dabaa14dcc73b15a951043a6bb8f8bcb94213a757fa373bb9b3acfea1 +DIST rust-1.84.1-arm-unknown-linux-gnueabi.tar.xz 203627060 BLAKE2B 3d6294d3d594dac9468104d5b04f087862776084d3b6f21252bab9c5f084c193cdc520e68aacf161e940efa26446183705a76c0944a7e93229a88d6bdffceb90 SHA512 18e57c4c880c88773cca087614de1a2e77c9d1977d76960fb6041fa8e89ee851ac7dd4080ac37e07afcb780186a9cf8f5f76c3c0e8eea742adacacea38d105a4 +DIST rust-1.84.1-arm-unknown-linux-gnueabi.tar.xz.asc 801 BLAKE2B d84feab18653894552eb42aef01582eb8ab76f4ebf6c7eb9760ca6058a610cd7ee8f68990ead59293bfb568423fee3174d8b3e6d35b286b6e944af8f2a5f35a5 SHA512 7e8c9022e96b03dfc5dab4401d630f626cc0c49bd4969de060beb67ce0bb361bfb09400e91a08a00b5ddcb445dfe26db650ead495a3128bcae17776c970fb6e5 +DIST rust-1.84.1-arm-unknown-linux-gnueabihf.tar.xz 204000836 BLAKE2B c2708c8225c7acc8c5ff958ae107bb767769442f863c52f706bdb003dc4986a3a1f69ac9bd8c6024bfc76d232a938e056532314b01eb93bfe2280f3704010527 SHA512 81f308af5dbfedbcb7e77e571dace7378fc6a85a26f1a6663f932cab718742087f9ab178a45087a27e08a67bab10563c0eaf756b75b2e245ce1dc16f23886a33 +DIST rust-1.84.1-arm-unknown-linux-gnueabihf.tar.xz.asc 801 BLAKE2B ac95d48013eadc0d1b4f69396ac8f461edaaae396d1e917524d9138061c122004ce598de86bd392bd573cc50cc91038d741234355fe0051bf15ec176718f92c9 SHA512 2e3d06ddb8c6a8201580f726ce239edc687970e8d8ac5df201026de260d2893dd84e622fd35e28bdfc98f4eaa19802e7588ff90930a9fdc3daf565907e62a0b5 +DIST rust-1.84.1-armv7-unknown-linux-gnueabihf.tar.xz 209293460 BLAKE2B 847b7ceebffe51508f0c59c26f17344e8a30ecd0eec1f777af5314a96a17522c889d1803cceceeb5a1e240ca5aadcebfb626d4f83bf276aaf2a7a57a4ee303b2 SHA512 023293e977ecdfc50454a171751755c48916aeb5301bff166dbbd3835bf849bbc0f85c08b61c7411938e696e5394c8bcc6cb6bbe135dc8b899c6d0a010da92ea +DIST rust-1.84.1-armv7-unknown-linux-gnueabihf.tar.xz.asc 801 BLAKE2B c9043e263fea338940d5f7f3d45de307a0595106c5ebd4ac1f9f10fbb37d937ce51e845efbde6b093f66ceba40607d632b9f23d2ea885dcf9b887eb371225e31 SHA512 076aee4f5b93ec6478bdfb9ccbe614073fe4ef0c195b60b5c70e154e429765516a522d5c4a2bdb6fa1df0110d8fad60b354791c4c65ae01c014e2a9b4580f853 +DIST rust-1.84.1-i686-unknown-linux-gnu.tar.xz 236617104 BLAKE2B e4120991b23f8a253be7e9bcebcdba2947b9d21cbedcf02e4275fe854472fc9ba6ad87946c31c5aee0e46757b41ee393d35d5f3bb1a9eebc4a50817e4bd267ea SHA512 3b4e67c34fdc906a781de545bb82cf95f90bf762592f22f262a5efefbc5726c06575cc5c3ebbf8ca8c7d45950368cadcd6f6dcc208f096d811a8bfb0ad53b6f5 +DIST rust-1.84.1-i686-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B e18c919dccd29dc5521265db6f985ac53e9ccc2f4d7e07aadec2587e2a769acb72ee3249dbf2793679953b42e18fd957fff7ee3344b207ea1cda1e56dd4e91ab SHA512 60b34315ac9de14986d9cc05b1c40e4611ade8c568a288969d4f2d5a42cbfc930f11e7c628af9ad9707180cbbcad3c4e566f54538f8c36ff867663a25e2dbf8f +DIST rust-1.84.1-loongarch64-unknown-linux-gnu.tar.xz 234696928 BLAKE2B 947b5e165c1763f6d24778d8eb88c4779e68e4f1b6333ebd429795c1e61bef773a33bea4450bfe16951c00e45e5e3eae2a1f80c9f127b57c08858f504d9f2e8e SHA512 edaaec4c8c260ffbb4f78c4c64fcf23573055fac6de3f545100efc266b0f41a35f4f49964c404efa7950fda1434ca061063d6d0e354b6042dd2b64f3b16fe8ea +DIST rust-1.84.1-loongarch64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B f4c848f1f0f9b77c128e848b62d1f91b2b20e6ffcc4038da6556ffc59c5bd6f5d4139f8e617f5a1ebe8106e702123a69ac6d8c8be95d189cc933bd21248563fa SHA512 2bce7fff1c7370ae3af8f9ac4c75ee3d503a9bf85b605a98442a1fbe7b88a89ef194b7d1c34bb6a08d6696bc675cd220e787e05b4955b0e12f0aa62ef2545497 +DIST rust-1.84.1-mips-unknown-linux-gnu.tar.xz 75956440 BLAKE2B eeb8beae339f65a7c9db48a42454712b8251313da054388f889c05dc9a16037bc915247c44de045e54da1f34c6a04ab7417cbfa0f772e6e4f6d24bdd08a6abc6 SHA512 8d2cdb12e997a6fb349beaaaefeeded29ab914e3ccb9f3b0938e8e2f88d42dc273d05d2c0c61655fe7fe334331b1da4c8be9800360b9f0c6639cfb466629fe0d +DIST rust-1.84.1-mips64-unknown-linux-gnuabi64.tar.xz 75712160 BLAKE2B 91567f8a593127fac8df26c7cfbc5f31113eb6626b539dce16e31ed53dd3c7774f46ff9bf5b4dd14fa5c37ddc19aa9e93ad472abd3745e5db55e3e67cc993b87 SHA512 cce78b6eb971b59b312f6bbb578336d5550a5845e05e33e60aea54504d110f14f7959586954e05cfe1107a29c003082003f486f0b4f7cbb941b1231f66a708a6 +DIST rust-1.84.1-mips64el-unknown-linux-gnuabi64.tar.xz 77372292 BLAKE2B 43985b65231fcf2bd24b4b667f238884cf78b00df22238f843870e8a794bb959566c8ab76e5188ee50e11bf4b3fa69f87c8745c043377878bef75d727731f880 SHA512 c4a48fc84855c074ddc61fe61e427cc7530374e31353b2d2b10a16a0af523393ed59370779d5ca7dd76c6fd2d06500ec4a34f884a0cfe137ad598d24ad35f915 +DIST rust-1.84.1-mipsel-unknown-linux-gnu.tar.xz 77625204 BLAKE2B 6f0fa1a2745593d7e47fcb3622752bef121c386e888e74e5a9918f969f70074dd66f3f5e12410ec695230182d19968ecaf91a88a1af8a1ce5939dfad57027f7c SHA512 ab2b11db7d131827557dd794700372f5aeb1209513cc93ef6a179f7644ffd493816bbf6bece6d62c56d9e1cc1cb023d8d1a9ad53f47ac5b82360de2b26000212 +DIST rust-1.84.1-powerpc-unknown-linux-gnu.tar.xz 225950144 BLAKE2B 036db582096a06fedf5e97467d02ddd75dd027836f38814c0fb52aea46afaf7aa769c030d572099adcf2e541df9d85ae6fbf9ad806af5a443bd2507f359ac2f9 SHA512 27cd36ef0243bdb367ddeb941654227eae2a412036f9d7dcd8d8c78651ab83bc9e5313fafdad355a155b726aba9b32731a66f88cb9ab91e30dd7abdf5803e1b2 +DIST rust-1.84.1-powerpc-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 1fc0a161cac7ba4aaf273d3a6f130ff86beb1ca7e539b50cc948a4e4b5bb8bb857e963d4d3ce2ca4573800336791d4bb1aef9236cc3ee228500feb48b0800584 SHA512 8d77554d446a7e696d0ddba29ad4578629678c88a2ba905415e4207c608cade8da2c67b7dcbd446210dc1a4e3639f20bebef1a15a9629da95a5a1be65e4872da +DIST rust-1.84.1-powerpc64-unknown-linux-gnu.tar.xz 222960252 BLAKE2B 56271e4c45216bdd422b5281022cc8db1b9a87475e983e1a7b43ace3937fe3f3743f6af6ff30eefaf1d16a147e273ab240b451b57108bf80112980b641ff8847 SHA512 1aa08a1cf7c3e40a6adf763306fe73197e8663ecf7d29cd266acb68ff60d7743836d7f7d9e9cd7c8f6bfaf61ed5452dbfb176b6c61181774b4fde7321e0c7941 +DIST rust-1.84.1-powerpc64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B c174fb8700c97b07c6e573ca8ae2df57daa9bff308584f2855289fe7eece81ba72eefd0e01cee29a694cf3eddb25da7f492c4369e5360fee62692ae2fb2f1315 SHA512 3532057cd95219cbe7483376ceee24b3844f4148b9436bc6da0c9ec6c75a6b7e5896044d06b53d7e4b0965498693fd22238b9a7d2bc5eaaec8abb55cdae084f3 +DIST rust-1.84.1-powerpc64-unknown-linux-musl.tar.xz 78584072 BLAKE2B 77ae16ee5779c875b9fecca3d29d8ab003cd9f6dbecc662d7679d33541e06fc37b17121470b1a5760d3bea66816c476ff417f7b69e77aebd68dbc2a45ffbdd89 SHA512 ee1a4c84d99c490966431b6f7ebd98258ab9741277f05522f6d8989a6887202bf9b29ce20395c2366f07b49bbc47daa33498b5f1cc5fe49bd817f19e21f31b44 +DIST rust-1.84.1-powerpc64le-unknown-linux-gnu.tar.xz 235702728 BLAKE2B a3d113abc5eb3855e9abb4aa8428843f2ef682ae2786612370e4dfce662afd00ef665fa4325d0b270703e6a0e3fc52214e20713169c46bb1d9fe0bfb5ebd1273 SHA512 3962689137db3f59a4894b1f6b5ec87da7f96a384da0fec8d4722589b1852ba8ffd3ceb5de5f1d83f8d3d4eecdf38bb54b8b913907f13a681849e5e50ec643b3 +DIST rust-1.84.1-powerpc64le-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B b12ca2366aa878274e24ed2d72db053d82b6b7c79b52e015841d708be8a0ff4d2950dedbd46916b0b3bca5a459b8abd674b7ace7fcd7f75d2728574f43e8a57a SHA512 1dc026ce19e375a0075df381e35921d841ad79d9be440dcc602810114d2bfad0eebd3c1cf99559fe30da599a0d3d995ff2579bb75a535c92091b0d6d579da316 +DIST rust-1.84.1-powerpc64le-unknown-linux-musl.tar.xz 80947924 BLAKE2B 4909b9fe3c9caf36db02cc76a321456685125be90fd223bde61e32e7cbdb117f2a420fd479c9a61df46de61d2e0e318363eba356dcc229799d269bdf8e7a8e80 SHA512 08f9744cd9464e9723bf45567faf3e888c671cc4ce8b037bdd12f8b915ef1226540d3b54af979a4fd1e47e8e9abf22fc271edda452a2d3e1739ccb337559b4ef +DIST rust-1.84.1-riscv64gc-unknown-linux-gnu.tar.xz 222166452 BLAKE2B 9a0835109e1343f745db303d44deacbf81e0fc8f8d1ac4724dd503a6a6c394c82da3bf677d32bc72355606bc065c69fc37a3af1740d6b4e22d3dd4b12f1bc764 SHA512 788febdfdb46e41092665b828bd53fe98eb0bc04ba750845a5308b6069364dfb71b06f18c293d42bd0f608910c294595ecba821335cbe2f5a4499e663e74db36 +DIST rust-1.84.1-riscv64gc-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 7ccccbef2b78d73eb2526d1c33adb20b145acf3ba1db234ec88a6b512c5bb7e0236892bd3593431eaaa670c98aa44d93ccf35ade406ab4321d058f6338fe37e2 SHA512 554b2cc566a5cc366eddb6de3c62862c0a39593e5331fb1f50138f5abae521e52e397470e1c841734d29a49ab31a24c02201c0fdf42c37a75673cb29e3744b95 +DIST rust-1.84.1-riscv64gc-unknown-linux-musl.tar.xz 82788252 BLAKE2B 0f59237ecdb6c746bf56a626f23191d3671a96efc8dbae99b5325cc41a64dea833f0f4af1d014d46d38f5738972010530d460ebb8982dbc79c0c4aef5dff069c SHA512 862ed15e5c9271f8a0c88d1281d546c65ab9276ccdb35152ac1a198baa2d887f69c8b1176c3aba5cdf282846207c8dc45c68daec0c059f804fed761d7d811128 +DIST rust-1.84.1-s390x-unknown-linux-gnu.tar.xz 225661352 BLAKE2B 1ca5afa5c46eb65acbd85925971ed8eeb2bf87aaeb1158616e5ed0f7aeac1a44e262b333a56672a56bc52730cdb0cee56c825d4c45f0ce016591b3996b07e32f SHA512 4f8e1a74a8c29243f6220b1ff4cf694f7ad8afacb5884b05ef88d7bedb05fe2b4a34b38d614e7d72b94c2a923c0c7de733c36f3d51e8dbf3bae9aadcc01d45df +DIST rust-1.84.1-s390x-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 44d6ea57f512ec3ae7e10bf475ce50eb1d4955de64033ae2c4f715be3323ca0c308d3049f3b18f194569ab6eca47abaa205607c8efb5d99432f5bae5311581d8 SHA512 fd447b1655a7033c5b22cbf4401e52b755867ec60e5bca1fa01e9b05e730c20f9c23d6eaff2c3e71287406ad823b25eec252d41187703937b638fab15c1c49dc +DIST rust-1.84.1-sparc64-unknown-linux-gnu.tar.xz 74153720 BLAKE2B 5aa5b75f1e530ff364319c6b01ba2704d7b32f6fbed8da59f0de42052188b32200b89f544e616a68217196c541e6ef82422421c4008cfd46f410048fd0f2a89a SHA512 bff721ab589acca4f29603e62644fc2cca5113bf62ad2943bca8650543be447280b64971bd232361d3fc1cade531edb22e86e25ce03749dfa079dbf7256d2a22 +DIST rust-1.84.1-x86_64-unknown-linux-gnu.tar.xz 182944280 BLAKE2B ad8fd7b70e8687802e79a31eb913aa5f3dec61521bb98667c250988ccf69932d36fa94d15de3219aeb7820e776a818dbfe9a16ef9cc59059a7ac2d8e8e4e92f0 SHA512 cdc3ac3f8a3fd890bf6d43cd920bb72a077c66f273077409a8dea6d8a9a1f747169aebc5f645202a422c50b1bac5c55691e57a7b46b5b24bf2f1bfe8ad7ddb13 +DIST rust-1.84.1-x86_64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B cc4f3a136c7b137743792db470427a0d7823ae37a88c52b7dce35cdb72602557119fa68d01e4fec338556148dd7d760b3b95740b6e23bf45e80042d9203b50c9 SHA512 1b6e80910fc91997badc3113412b177d136495c22c02a4483e0bf221e609617ba05a30f8756ad72931fa92cd1d837ec15c579ce27bcef65629622648880a9fd5 +DIST rust-1.84.1-x86_64-unknown-linux-musl.tar.xz 263174048 BLAKE2B b3ec6201d10e5044ab27954a515a27d582a5aba75bb32437d4df2037225fc13fdaed68537add5baff1f390600ebdeab451a000624cab3a0a34b178043f0007b8 SHA512 f0c40edfdfcbef8472d0cf3c1bd167b2c7d9c238147048ad9d45ac8fac7d41b1e311757974fd6478b531c6788005aa4003c22ce223b47a2ad6444df10cfe4805 +DIST rust-1.84.1-x86_64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B 9424c40f72bda9334c904fea44d91ecd229c15e571bc6840831d90ce8e535cd9bfc472925baf155ced21626aa74afdc8f1d143233a24952a1bd59d84c8e56322 SHA512 0cfd282306cc4596d6c10f927277532be276e06c0ecde2e695d06159729ac4a99148b0a8db3de3ede4e81e1bd4a67be74f8e9e696f445e83d10394f1834b73e4 DIST rust-src-1.71.1.tar.xz 2460244 BLAKE2B e3a5b5bfb808310f96e760aab55310c7a790fa551d248c9c5dbb407e0a80653563d8df73a9e0973aa63d3286aad6c755b78098dd8db2dc1a2ed3cadb926b40e1 SHA512 659cc46e1ece2ddbcf5ab748bae48843bd36353cc633b59e4ac062d843af66919e8d5c39ccb72ebdbf94a0e26a8056ade6bd1c8fe9a936469bd405122a8ae35d DIST rust-src-1.74.1.tar.xz 2544036 BLAKE2B d95431b69f102782f51878ff73ce8802cac6dab7909497c3231d1c479b95dc2a618cc6efd8bac9c6bd59a2b10dc6be05199f1e1bd74e45cc640ee52352c29268 SHA512 11467d0936193c5a5be8c2eba1aefe2b7028af48494698863de2c4057d68ce33dcee1fc66dc2d68b1d32f0202ce49e9b906727849de8f8d904dd07930e76d5a4 DIST rust-src-1.75.0.tar.xz 2570256 BLAKE2B 9db7ccff07ffe6991233e9f530321fd6ba48c561dcf1226537afa70c7d045421d8e83c5300b0866ec6fccfaae96dd67b9f204e9e0e12108c0c766d467cd78909 SHA512 e7565cea2f1658a05237a698e38880df2544319b41b6d8b0805db5f1f94fd3bb4f986967d0440fcdfe3a135e33246f3c747665b964f57ff5942f56133af78cdd @@ -414,3 +450,4 @@ DIST rust-src-1.81.0.tar.xz 2901440 BLAKE2B 7ad2855c21728cc323108f7e45416a425a22 DIST rust-src-1.82.0.tar.xz 2966368 BLAKE2B 4162e7393ac21a095ac1541ea7b62fafa561ce2153bdd2b3723d0f2e0130fb2fb1325ac8583d87d64b6cf6b76400d12aaac144c781e89a177483adb46854c81b SHA512 4f7817eb16dbddf15ab09206738569370c42abe117086b085a7cc8f7174f9c2b42571707558642c72597236610eeeca32575b665acbc2cbc4f7709e624c16cc4 DIST rust-src-1.83.0.tar.xz 2998424 BLAKE2B de758c5bfb29865a3ab7ab02d17b0282272fa7d1cf5da333a6a19d6a16813320317785e9bab02e3ba9ca6ee9f26e0c96b00a117f33b74c82b13ece44133e3130 SHA512 e1f0ccae1fd4202d86cde1f1e2f4491983ec49fafb2b9eaca6260e9173bea0e0cc2567946e48e3ce48f0a620f63dc44d30334f06c935628158de110d43c7d53b DIST rust-src-1.84.0.tar.xz 3016148 BLAKE2B e948d4edb88f81ecfb49f56a3ca6331c4e9de17bd9f56af823e1cefdc5098abebc2bb013d7c12ca1713a43fec588f33befcb7146713eeade1511914f70146d62 SHA512 ccb45d57c7cdac311478a5b4689144297717e6404f9c4fb168127804f13f72c15433b32765f90ce56e6f34435229e754241cb3656b28a4b33c6070b6f79b7c53 +DIST rust-src-1.84.1.tar.xz 3016012 BLAKE2B c9edeaf0797a22e384c54b3fe3e7c833464c09f8828474e05400a561a369d836626387caa495689e4b14fad691a85d6859098c84347211a6f79e2ef2c8d9d6f2 SHA512 564c440a05b67fd3a5dcb4dea21800d32ae65ca12230b804b5efa4bd468fe1b185bd7ed89041782018f70f60afd7554d7755edbe20e9cdc930a9fad390deb317 diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.71.1-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.71.1-r100.ebuild deleted file mode 100644 index 9e716ace2e5..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.71.1-r100.ebuild +++ /dev/null @@ -1,234 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( 16 ) -LLVM_OPTIONAL="yes" - -inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig multilib-minimal - -MY_P="rust-${PV}" -# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep "xz_url.*rust-src" -MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2023-08-03/rust-src-${PV}.tar.xz" -GENTOO_BIN_BASEURI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}" # omit leading slash - -DESCRIPTION="Language empowering everyone to build reliable and efficient software" -HOMEPAGE="https://www.rust-lang.org/" -SRC_URI="$(rust_all_arch_uris ${MY_P}) - rust-src? ( ${MY_SRC_URI} ) -" -# Keep this separate to allow easy commenting out if not yet built -SRC_URI+=" sparc? ( ${GENTOO_BIN_BASEURI}/${MY_P}-sparc64-unknown-linux-gnu.tar.xz -> ${MY_P}-sparc64-unknown-linux-gnu.sam.tar.xz ) " - -LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4 UoI-NCSA" -SLOT="${PV}" -KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86" -IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src rustfmt" - -RDEPEND=" - >=app-eselect/eselect-rust-20190311 - dev-libs/openssl - sys-apps/lsb-release - sys-devel/gcc:* - !dev-lang/rust:stable - !dev-lang/rust-bin:stable -" -BDEPEND=" - prefix? ( dev-util/patchelf ) - verify-sig? ( sec-keys/openpgp-keys-rust ) -" - -REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )" - -# stripping rust may break it (at least on x86_64) -# https://github.com/rust-lang/rust/issues/112286 -RESTRICT="strip" - -QA_PREBUILT=" - opt/${P}/bin/.* - opt/${P}/lib/.*.so - opt/${P}/libexec/.* - opt/${P}/lib/rustlib/.*/bin/.* - opt/${P}/lib/rustlib/.*/lib/.* -" - -# An rmeta file is custom binary format that contains the metadata for the crate. -# rmeta files do not support linking, since they do not contain compiled object files. -# so we can safely silence the warning for this QA check. -QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta" - -VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc" - -pkg_pretend() { - if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then - die "${CHOST} is not supported by upstream Rust. You must use a hard float version." - fi -} - -src_unpack() { - # sadly rust-src tarball does not have corresponding .asc file - # so do partial verification - if use verify-sig; then - for f in ${A}; do - if [[ -f ${DISTDIR}/${f}.asc ]]; then - verify-sig_verify_detached "${DISTDIR}/${f}" "${DISTDIR}/${f}.asc" - fi - done - fi - - default_src_unpack - - mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die -} - -patchelf_for_bin() { - local filetype=$(file -b ${1}) - if [[ ${filetype} == *ELF*interpreter* ]]; then - einfo "${1}'s interpreter changed" - patchelf ${1} --set-interpreter ${2} || die - elif [[ ${filetype} == *script* ]]; then - hprefixify ${1} - fi -} - -multilib_src_install() { - if multilib_is_native_abi; then - - # start native abi install - pushd "${S}" >/dev/null || die - local analysis std - analysis="$(grep 'analysis' ./components)" - std="$(grep 'std' ./components)" - local components="rustc,cargo,${std}" - use doc && components="${components},rust-docs" - use clippy && components="${components},clippy-preview" - use rustfmt && components="${components},rustfmt-preview" - use rust-analyzer && components="${components},rust-analyzer-preview,${analysis}" - # Rust component 'rust-src' is extracted from separate archive - if use rust-src; then - einfo "Combining rust and rust-src installers" - mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die - echo rust-src >> ./components || die - components="${components},rust-src" - fi - ./install.sh \ - --components="${components}" \ - --disable-verify \ - --prefix="${ED}/opt/${P}" \ - --mandir="${ED}/opt/${P}/man" \ - --disable-ldconfig \ - || die - - if use prefix; then - local interpreter=$(patchelf --print-interpreter "${EPREFIX}/bin/bash") - ebegin "Changing interpreter to ${interpreter} for Gentoo prefix at ${ED}/opt/${P}/bin" - find "${ED}/opt/${P}/bin" -type f -print0 | \ - while IFS= read -r -d '' filename; do - patchelf_for_bin ${filename} ${interpreter} \; || die - done - eend ${PIPESTATUS[0]} - fi - - local symlinks=( - cargo - rustc - rustdoc - rust-gdb - rust-gdbgui - rust-lldb - ) - - use clippy && symlinks+=( clippy-driver cargo-clippy ) - use rustfmt && symlinks+=( rustfmt cargo-fmt ) - use rust-analyzer && symlinks+=( rust-analyzer ) - - einfo "installing eselect-rust symlinks and paths" - local i - for i in "${symlinks[@]}"; do - # we need realpath on /usr/bin/* symlink return version-appended binary path. - # so /usr/bin/rustc should point to /opt/rust-bin-/bin/rustc- - local ver_i="${i}-bin-${PV}" - ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}" || die - dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}" - done - - # symlinks to switch components to active rust in eselect - dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}" - dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}" - dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}" - dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}" - - # make all capital underscored variable - local CARGO_TRIPLET="$(rust_abi)" - CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" - CARGO_TRIPLET="${CARGO_TRIPLET^^}" - cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" - $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") - _EOF_ - doenvd "${T}/50${P}" - - # note: eselect-rust adds EROOT to all paths below - cat <<-_EOF_ > "${T}/provider-${P}" - /usr/bin/cargo - /usr/bin/rustdoc - /usr/bin/rust-gdb - /usr/bin/rust-gdbgui - /usr/bin/rust-lldb - /usr/lib/rustlib - /usr/lib/rust/lib - /usr/lib/rust/man - /usr/share/doc/rust - _EOF_ - - if use clippy; then - echo /usr/bin/clippy-driver >> "${T}/provider-${P}" - echo /usr/bin/cargo-clippy >> "${T}/provider-${P}" - fi - if use rustfmt; then - echo /usr/bin/rustfmt >> "${T}/provider-${P}" - echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" - fi - if use rust-analyzer; then - echo /usr/bin/rust-analyzer >> "${T}/provider-${P}" - fi - - insinto /etc/env.d/rust - doins "${T}/provider-${P}" - popd >/dev/null || die - #end native abi install - - else - local rust_target - rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))" - dodir "/opt/${P}/lib/rustlib" - cp -vr "${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\ - "${ED}/opt/${P}/lib/rustlib" || die - fi - - # BUG: installs x86_64 binary on other arches - rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die -} - -pkg_postinst() { - eselect rust update - - if has_version dev-debug/gdb || has_version llvm-core/lldb; then - elog "Rust installs helper scripts for calling GDB and LLDB," - elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${PV}." - fi - - if has_version app-editors/emacs; then - elog "install app-emacs/rust-mode to get emacs support for rust." - fi - - if has_version app-editors/gvim || has_version app-editors/vim; then - elog "install app-vim/rust-vim to get vim support for rust." - fi -} - -pkg_postrm() { - eselect rust cleanup -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.71.1-r101.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.71.1-r102.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.71.1-r101.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.71.1-r102.ebuild index 9e716ace2e5..a631c26c994 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.71.1-r101.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.71.1-r102.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 @@ -164,8 +164,7 @@ multilib_src_install() { CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" CARGO_TRIPLET="${CARGO_TRIPLET^^}" cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") _EOF_ doenvd "${T}/50${P}" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.74.1-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.74.1-r100.ebuild deleted file mode 100644 index 23d2616783a..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.74.1-r100.ebuild +++ /dev/null @@ -1,244 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( 17 ) -LLVM_OPTIONAL="yes" - -inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig multilib-minimal - -MY_P="rust-${PV}" -# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep "xz_url.*rust-src" -MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2023-12-07/rust-src-${PV}.tar.xz" -GENTOO_BIN_BASEURI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}" # omit leading slash - -DESCRIPTION="Language empowering everyone to build reliable and efficient software" -HOMEPAGE="https://www.rust-lang.org/" -SRC_URI="$(rust_all_arch_uris ${MY_P}) - rust-src? ( ${MY_SRC_URI} ) -" -# Keep this separate to allow easy commenting out if not yet built -SRC_URI+=" sparc? ( ${GENTOO_BIN_BASEURI}/${MY_P}-sparc64-unknown-linux-gnu.tar.xz ) " -#SRC_URI+=" mips? ( -# abi_mips_o32? ( -# big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips-unknown-linux-gnu.tar.xz ) -# !big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mipsel-unknown-linux-gnu.tar.xz ) -# ) -# abi_mips_n64? ( -# big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips64-unknown-linux-gnuabi64.tar.xz ) -# !big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips64el-unknown-linux-gnuabi64.tar.xz ) -# ) -#)" - -LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" -SLOT="${PV}" -KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~s390 sparc x86" -IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src rustfmt" - -RDEPEND=" - >=app-eselect/eselect-rust-20190311 - dev-libs/openssl - sys-apps/lsb-release - sys-devel/gcc:* - !dev-lang/rust:stable - !dev-lang/rust-bin:stable -" -BDEPEND=" - prefix? ( dev-util/patchelf ) - verify-sig? ( sec-keys/openpgp-keys-rust ) -" - -REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )" - -# stripping rust may break it (at least on x86_64) -# https://github.com/rust-lang/rust/issues/112286 -RESTRICT="strip" - -QA_PREBUILT=" - opt/${P}/bin/.* - opt/${P}/lib/.*.so - opt/${P}/libexec/.* - opt/${P}/lib/rustlib/.*/bin/.* - opt/${P}/lib/rustlib/.*/lib/.* -" - -# An rmeta file is custom binary format that contains the metadata for the crate. -# rmeta files do not support linking, since they do not contain compiled object files. -# so we can safely silence the warning for this QA check. -QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta" - -VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc" - -pkg_pretend() { - if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then - die "${CHOST} is not supported by upstream Rust. You must use a hard float version." - fi -} - -src_unpack() { - # sadly rust-src tarball does not have corresponding .asc file - # so do partial verification - if use verify-sig; then - for f in ${A}; do - if [[ -f ${DISTDIR}/${f}.asc ]]; then - verify-sig_verify_detached "${DISTDIR}/${f}" "${DISTDIR}/${f}.asc" - fi - done - fi - - default_src_unpack - - mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die -} - -patchelf_for_bin() { - local filetype=$(file -b ${1}) - if [[ ${filetype} == *ELF*interpreter* ]]; then - einfo "${1}'s interpreter changed" - patchelf ${1} --set-interpreter ${2} || die - elif [[ ${filetype} == *script* ]]; then - hprefixify ${1} - fi -} - -multilib_src_install() { - if multilib_is_native_abi; then - - # start native abi install - pushd "${S}" >/dev/null || die - local analysis std - analysis="$(grep 'analysis' ./components)" - std="$(grep 'std' ./components)" - local components="rustc,cargo,${std}" - use doc && components="${components},rust-docs" - use clippy && components="${components},clippy-preview" - use rustfmt && components="${components},rustfmt-preview" - use rust-analyzer && components="${components},rust-analyzer-preview,${analysis}" - # Rust component 'rust-src' is extracted from separate archive - if use rust-src; then - einfo "Combining rust and rust-src installers" - mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die - echo rust-src >> ./components || die - components="${components},rust-src" - fi - ./install.sh \ - --components="${components}" \ - --disable-verify \ - --prefix="${ED}/opt/${P}" \ - --mandir="${ED}/opt/${P}/man" \ - --disable-ldconfig \ - || die - - if use prefix; then - local interpreter=$(patchelf --print-interpreter "${EPREFIX}/bin/bash") - ebegin "Changing interpreter to ${interpreter} for Gentoo prefix at ${ED}/opt/${P}/bin" - find "${ED}/opt/${P}/bin" -type f -print0 | \ - while IFS= read -r -d '' filename; do - patchelf_for_bin ${filename} ${interpreter} \; || die - done - eend ${PIPESTATUS[0]} - fi - - local symlinks=( - cargo - rustc - rustdoc - rust-gdb - rust-gdbgui - rust-lldb - ) - - use clippy && symlinks+=( clippy-driver cargo-clippy ) - use rustfmt && symlinks+=( rustfmt cargo-fmt ) - use rust-analyzer && symlinks+=( rust-analyzer ) - - einfo "installing eselect-rust symlinks and paths" - local i - for i in "${symlinks[@]}"; do - # we need realpath on /usr/bin/* symlink return version-appended binary path. - # so /usr/bin/rustc should point to /opt/rust-bin-/bin/rustc- - local ver_i="${i}-bin-${PV}" - ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}" || die - dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}" - done - - # symlinks to switch components to active rust in eselect - dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}" - dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}" - dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}" - dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}" - - # make all capital underscored variable - local CARGO_TRIPLET="$(rust_abi)" - CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" - CARGO_TRIPLET="${CARGO_TRIPLET^^}" - cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" - $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") - _EOF_ - doenvd "${T}/50${P}" - - # note: eselect-rust adds EROOT to all paths below - cat <<-_EOF_ > "${T}/provider-${P}" - /usr/bin/cargo - /usr/bin/rustdoc - /usr/bin/rust-gdb - /usr/bin/rust-gdbgui - /usr/bin/rust-lldb - /usr/lib/rustlib - /usr/lib/rust/lib - /usr/lib/rust/man - /usr/share/doc/rust - _EOF_ - - if use clippy; then - echo /usr/bin/clippy-driver >> "${T}/provider-${P}" - echo /usr/bin/cargo-clippy >> "${T}/provider-${P}" - fi - if use rustfmt; then - echo /usr/bin/rustfmt >> "${T}/provider-${P}" - echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" - fi - if use rust-analyzer; then - echo /usr/bin/rust-analyzer >> "${T}/provider-${P}" - fi - - insinto /etc/env.d/rust - doins "${T}/provider-${P}" - popd >/dev/null || die - #end native abi install - - else - local rust_target - rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))" - dodir "/opt/${P}/lib/rustlib" - cp -vr "${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\ - "${ED}/opt/${P}/lib/rustlib" || die - fi - - # BUG: installs x86_64 binary on other arches - rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die -} - -pkg_postinst() { - eselect rust update - - if has_version dev-debug/gdb || has_version llvm-core/lldb; then - elog "Rust installs helper scripts for calling GDB and LLDB," - elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${PV}." - fi - - if has_version app-editors/emacs; then - elog "install app-emacs/rust-mode to get emacs support for rust." - fi - - if has_version app-editors/gvim || has_version app-editors/vim; then - elog "install app-vim/rust-vim to get vim support for rust." - fi -} - -pkg_postrm() { - eselect rust cleanup -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.74.1-r101.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.74.1-r102.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.74.1-r101.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.74.1-r102.ebuild index 23d2616783a..e7490ef7bbb 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.74.1-r101.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.74.1-r102.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 @@ -174,8 +174,7 @@ multilib_src_install() { CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" CARGO_TRIPLET="${CARGO_TRIPLET^^}" cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") _EOF_ doenvd "${T}/50${P}" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.75.0-r101.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.75.0-r101.ebuild deleted file mode 100644 index 9bb32c144c6..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.75.0-r101.ebuild +++ /dev/null @@ -1,244 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( 17 ) -LLVM_OPTIONAL="yes" - -inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig multilib-minimal - -MY_P="rust-${PV}" -# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep "xz_url.*rust-src" -MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2023-12-28/rust-src-${PV}.tar.xz" -GENTOO_BIN_BASEURI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}" # omit leading slash - -DESCRIPTION="Language empowering everyone to build reliable and efficient software" -HOMEPAGE="https://www.rust-lang.org/" -SRC_URI="$(rust_all_arch_uris ${MY_P}) - rust-src? ( ${MY_SRC_URI} ) -" -# Keep this separate to allow easy commenting out if not yet built -SRC_URI+=" sparc? ( ${GENTOO_BIN_BASEURI}/${MY_P}-sparc64-unknown-linux-gnu.tar.xz ) " -#SRC_URI+=" mips? ( -# abi_mips_o32? ( -# big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips-unknown-linux-gnu.tar.xz ) -# !big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mipsel-unknown-linux-gnu.tar.xz ) -# ) -# abi_mips_n64? ( -# big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips64-unknown-linux-gnuabi64.tar.xz ) -# !big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips64el-unknown-linux-gnuabi64.tar.xz ) -# ) -#)" - -LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" -SLOT="${PV}" -KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~s390 sparc x86" -IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src rustfmt" - -RDEPEND=" - >=app-eselect/eselect-rust-20190311 - dev-libs/openssl - sys-apps/lsb-release - sys-devel/gcc:* - !dev-lang/rust:stable - !dev-lang/rust-bin:stable -" -BDEPEND=" - prefix? ( dev-util/patchelf ) - verify-sig? ( sec-keys/openpgp-keys-rust ) -" - -REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )" - -# stripping rust may break it (at least on x86_64) -# https://github.com/rust-lang/rust/issues/112286 -RESTRICT="strip" - -QA_PREBUILT=" - opt/${P}/bin/.* - opt/${P}/lib/.*.so - opt/${P}/libexec/.* - opt/${P}/lib/rustlib/.*/bin/.* - opt/${P}/lib/rustlib/.*/lib/.* -" - -# An rmeta file is custom binary format that contains the metadata for the crate. -# rmeta files do not support linking, since they do not contain compiled object files. -# so we can safely silence the warning for this QA check. -QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta" - -VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc" - -pkg_pretend() { - if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then - die "${CHOST} is not supported by upstream Rust. You must use a hard float version." - fi -} - -src_unpack() { - # sadly rust-src tarball does not have corresponding .asc file - # so do partial verification - if use verify-sig; then - for f in ${A}; do - if [[ -f ${DISTDIR}/${f}.asc ]]; then - verify-sig_verify_detached "${DISTDIR}/${f}" "${DISTDIR}/${f}.asc" - fi - done - fi - - default_src_unpack - - mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die -} - -patchelf_for_bin() { - local filetype=$(file -b ${1}) - if [[ ${filetype} == *ELF*interpreter* ]]; then - einfo "${1}'s interpreter changed" - patchelf ${1} --set-interpreter ${2} || die - elif [[ ${filetype} == *script* ]]; then - hprefixify ${1} - fi -} - -multilib_src_install() { - if multilib_is_native_abi; then - - # start native abi install - pushd "${S}" >/dev/null || die - local analysis std - analysis="$(grep 'analysis' ./components)" - std="$(grep 'std' ./components)" - local components="rustc,cargo,${std}" - use doc && components="${components},rust-docs" - use clippy && components="${components},clippy-preview" - use rustfmt && components="${components},rustfmt-preview" - use rust-analyzer && components="${components},rust-analyzer-preview,${analysis}" - # Rust component 'rust-src' is extracted from separate archive - if use rust-src; then - einfo "Combining rust and rust-src installers" - mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die - echo rust-src >> ./components || die - components="${components},rust-src" - fi - ./install.sh \ - --components="${components}" \ - --disable-verify \ - --prefix="${ED}/opt/${P}" \ - --mandir="${ED}/opt/${P}/man" \ - --disable-ldconfig \ - || die - - if use prefix; then - local interpreter=$(patchelf --print-interpreter "${EPREFIX}"/bin/bash) - ebegin "Changing interpreter to ${interpreter} for Gentoo prefix at ${ED}/opt/${P}/bin" - find "${ED}/opt/${P}/bin" -type f -print0 | \ - while IFS= read -r -d '' filename; do - patchelf_for_bin ${filename} ${interpreter} \; || die - done - eend ${PIPESTATUS[0]} - fi - - local symlinks=( - cargo - rustc - rustdoc - rust-gdb - rust-gdbgui - rust-lldb - ) - - use clippy && symlinks+=( clippy-driver cargo-clippy ) - use rustfmt && symlinks+=( rustfmt cargo-fmt ) - use rust-analyzer && symlinks+=( rust-analyzer ) - - einfo "installing eselect-rust symlinks and paths" - local i - for i in "${symlinks[@]}"; do - # we need realpath on /usr/bin/* symlink return version-appended binary path. - # so /usr/bin/rustc should point to /opt/rust-bin-/bin/rustc- - local ver_i="${i}-bin-${PV}" - ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}" || die - dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}" - done - - # symlinks to switch components to active rust in eselect - dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}" - dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}" - dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}" - dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}" - - # make all capital underscored variable - local CARGO_TRIPLET="$(rust_abi)" - CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" - CARGO_TRIPLET="${CARGO_TRIPLET^^}" - cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" - $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") - _EOF_ - doenvd "${T}/50${P}" - - # note: eselect-rust adds EROOT to all paths below - cat <<-_EOF_ > "${T}/provider-${P}" - /usr/bin/cargo - /usr/bin/rustdoc - /usr/bin/rust-gdb - /usr/bin/rust-gdbgui - /usr/bin/rust-lldb - /usr/lib/rustlib - /usr/lib/rust/lib - /usr/lib/rust/man - /usr/share/doc/rust - _EOF_ - - if use clippy; then - echo /usr/bin/clippy-driver >> "${T}/provider-${P}" - echo /usr/bin/cargo-clippy >> "${T}/provider-${P}" - fi - if use rustfmt; then - echo /usr/bin/rustfmt >> "${T}/provider-${P}" - echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" - fi - if use rust-analyzer; then - echo /usr/bin/rust-analyzer >> "${T}/provider-${P}" - fi - - insinto /etc/env.d/rust - doins "${T}/provider-${P}" - popd >/dev/null || die - #end native abi install - - else - local rust_target - rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))" - dodir "/opt/${P}/lib/rustlib" - cp -vr "${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\ - "${ED}/opt/${P}/lib/rustlib" || die - fi - - # BUG: installs x86_64 binary on other arches - rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die -} - -pkg_postinst() { - eselect rust update - - if has_version dev-debug/gdb || has_version llvm-core/lldb; then - elog "Rust installs helper scripts for calling GDB and LLDB," - elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${PV}." - fi - - if has_version app-editors/emacs; then - elog "install app-emacs/rust-mode to get emacs support for rust." - fi - - if has_version app-editors/gvim || has_version app-editors/vim; then - elog "install app-vim/rust-vim to get vim support for rust." - fi -} - -pkg_postrm() { - eselect rust cleanup -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.75.0-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.75.0-r102.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.75.0-r100.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.75.0-r102.ebuild index 9bb32c144c6..bb60f0c714a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.75.0-r100.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.75.0-r102.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 @@ -174,8 +174,7 @@ multilib_src_install() { CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" CARGO_TRIPLET="${CARGO_TRIPLET^^}" cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") _EOF_ doenvd "${T}/50${P}" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.76.0-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.76.0-r101.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.76.0-r100.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.76.0-r101.ebuild index 1768a0889ea..a1a14f63040 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.76.0-r100.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.76.0-r101.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 @@ -162,8 +162,7 @@ multilib_src_install() { CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" CARGO_TRIPLET="${CARGO_TRIPLET^^}" cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") _EOF_ doenvd "${T}/50${P}" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.77.1-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.77.1-r100.ebuild deleted file mode 100644 index 5eb6567f5cd..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.77.1-r100.ebuild +++ /dev/null @@ -1,246 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( 17 ) -LLVM_OPTIONAL="yes" - -inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig multilib-minimal - -MY_P="rust-${PV}" -# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep "xz_url.*rust-src" -MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2024-03-28/rust-src-${PV}.tar.xz" -GENTOO_BIN_BASEURI="https://dev.gentoo.org/~arthurzam/distfiles/${CATEGORY}/${PN}" # omit leading slash - -DESCRIPTION="Systems programming language from Mozilla" -HOMEPAGE="https://www.rust-lang.org/" -SRC_URI="$(rust_all_arch_uris ${MY_P}) - rust-src? ( ${MY_SRC_URI} ) -" -# Keep this separate to allow easy commenting out if not yet built -SRC_URI+=" sparc? ( ${GENTOO_BIN_BASEURI}/${MY_P}-sparc64-unknown-linux-gnu.tar.xz ) " -SRC_URI+=" mips? ( - abi_mips_o32? ( - big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips-unknown-linux-gnu.tar.xz ) - !big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mipsel-unknown-linux-gnu.tar.xz ) - ) - abi_mips_n64? ( - big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips64-unknown-linux-gnuabi64.tar.xz ) - !big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips64el-unknown-linux-gnuabi64.tar.xz ) - ) -)" - -LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" -SLOT="${PV}" -KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86" -IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src rustfmt" - -RDEPEND=" - >=app-eselect/eselect-rust-20190311 - dev-libs/openssl - sys-apps/lsb-release - sys-devel/gcc:* - !dev-lang/rust:stable - !dev-lang/rust-bin:stable -" -BDEPEND=" - prefix? ( dev-util/patchelf ) - verify-sig? ( sec-keys/openpgp-keys-rust ) -" - -REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )" - -# stripping rust may break it (at least on x86_64) -# https://github.com/rust-lang/rust/issues/112286 -RESTRICT="strip" - -QA_PREBUILT=" - opt/${P}/bin/.* - opt/${P}/lib/.*.so - opt/${P}/libexec/.* - opt/${P}/lib/rustlib/.*/bin/.* - opt/${P}/lib/rustlib/.*/lib/.* -" - -# An rmeta file is custom binary format that contains the metadata for the crate. -# rmeta files do not support linking, since they do not contain compiled object files. -# so we can safely silence the warning for this QA check. -QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta" - -VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc" - -pkg_pretend() { - if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then - die "${CHOST} is not supported by upstream Rust. You must use a hard float version." - fi -} - -src_unpack() { - # sadly rust-src tarball does not have corresponding .asc file - # so do partial verification - if use verify-sig; then - for f in ${A}; do - if [[ -f ${DISTDIR}/${f}.asc ]]; then - verify-sig_verify_detached "${DISTDIR}/${f}" "${DISTDIR}/${f}.asc" - fi - done - fi - - default_src_unpack - - mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die -} - -patchelf_for_bin() { - local filetype=$(file -b ${1}) - if [[ ${filetype} == *ELF*interpreter* ]]; then - einfo "${1}'s interpreter changed" - patchelf ${1} --set-interpreter ${2} || die - elif [[ ${filetype} == *script* ]]; then - hprefixify ${1} - fi -} - -multilib_src_install() { - if multilib_is_native_abi; then - - # start native abi install - pushd "${S}" >/dev/null || die - local analysis std - analysis="$(grep 'analysis' ./components)" - std="$(grep 'std' ./components)" - local components="rustc,cargo,rust-demangler-preview,${std}" - use doc && components="${components},rust-docs" - use clippy && components="${components},clippy-preview" - use rustfmt && components="${components},rustfmt-preview" - use rust-analyzer && components="${components},rust-analyzer-preview,${analysis}" - # Rust component 'rust-src' is extracted from separate archive - if use rust-src; then - einfo "Combining rust and rust-src installers" - mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die - echo rust-src >> ./components || die - components="${components},rust-src" - fi - ./install.sh \ - --components="${components}" \ - --disable-verify \ - --prefix="${ED}/opt/${P}" \ - --mandir="${ED}/opt/${P}/man" \ - --disable-ldconfig \ - || die - - if use prefix; then - local interpreter=$(patchelf --print-interpreter "${EPREFIX}"/bin/bash) - ebegin "Changing interpreter to ${interpreter} for Gentoo prefix at ${ED}/opt/${P}/bin" - find "${ED}/opt/${P}/bin" -type f -print0 | \ - while IFS= read -r -d '' filename; do - patchelf_for_bin ${filename} ${interpreter} \; || die - done - eend ${PIPESTATUS[0]} - fi - - local symlinks=( - cargo - rustc - rustdoc - rust-demangler - rust-gdb - rust-gdbgui - rust-lldb - ) - - use clippy && symlinks+=( clippy-driver cargo-clippy ) - use rustfmt && symlinks+=( rustfmt cargo-fmt ) - use rust-analyzer && symlinks+=( rust-analyzer ) - - einfo "installing eselect-rust symlinks and paths" - local i - for i in "${symlinks[@]}"; do - # we need realpath on /usr/bin/* symlink return version-appended binary path. - # so /usr/bin/rustc should point to /opt/rust-bin-/bin/rustc- - local ver_i="${i}-bin-${PV}" - ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}" || die - dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}" - done - - # symlinks to switch components to active rust in eselect - dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}" - dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}" - dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}" - dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}" - - # make all capital underscored variable - local CARGO_TRIPLET="$(rust_abi)" - CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" - CARGO_TRIPLET="${CARGO_TRIPLET^^}" - cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" - $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") - _EOF_ - doenvd "${T}/50${P}" - - # note: eselect-rust adds EROOT to all paths below - cat <<-_EOF_ > "${T}/provider-${P}" - /usr/bin/cargo - /usr/bin/rustdoc - /usr/bin/rust-demangler - /usr/bin/rust-gdb - /usr/bin/rust-gdbgui - /usr/bin/rust-lldb - /usr/lib/rustlib - /usr/lib/rust/lib - /usr/lib/rust/man - /usr/share/doc/rust - _EOF_ - - if use clippy; then - echo /usr/bin/clippy-driver >> "${T}/provider-${P}" - echo /usr/bin/cargo-clippy >> "${T}/provider-${P}" - fi - if use rustfmt; then - echo /usr/bin/rustfmt >> "${T}/provider-${P}" - echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" - fi - if use rust-analyzer; then - echo /usr/bin/rust-analyzer >> "${T}/provider-${P}" - fi - - insinto /etc/env.d/rust - doins "${T}/provider-${P}" - popd >/dev/null || die - #end native abi install - - else - local rust_target - rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))" - dodir "/opt/${P}/lib/rustlib" - cp -vr "${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\ - "${ED}/opt/${P}/lib/rustlib" || die - fi - - # BUG: installs x86_64 binary on other arches - rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die -} - -pkg_postinst() { - eselect rust update - - if has_version dev-debug/gdb || has_version llvm-core/lldb; then - elog "Rust installs helper scripts for calling GDB and LLDB," - elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${PV}." - fi - - if has_version app-editors/emacs; then - elog "install app-emacs/rust-mode to get emacs support for rust." - fi - - if has_version app-editors/gvim || has_version app-editors/vim; then - elog "install app-vim/rust-vim to get vim support for rust." - fi -} - -pkg_postrm() { - eselect rust cleanup -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.77.1-r101.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.77.1-r102.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.77.1-r101.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.77.1-r102.ebuild index 5eb6567f5cd..701e6ea2460 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.77.1-r101.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.77.1-r102.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 @@ -175,8 +175,7 @@ multilib_src_install() { CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" CARGO_TRIPLET="${CARGO_TRIPLET^^}" cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") _EOF_ doenvd "${T}/50${P}" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.78.0-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.78.0-r101.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.78.0-r100.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.78.0-r101.ebuild index 80ef90b24dd..28e01814d17 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.78.0-r100.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.78.0-r101.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 @@ -178,8 +178,7 @@ multilib_src_install() { CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" CARGO_TRIPLET="${CARGO_TRIPLET^^}" cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") _EOF_ doenvd "${T}/50${P}" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.79.0-r101.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.79.0-r101.ebuild deleted file mode 100644 index 55b9d0d1596..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.79.0-r101.ebuild +++ /dev/null @@ -1,249 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( 18 ) -LLVM_OPTIONAL="yes" - -inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig multilib-minimal - -MY_P="rust-${PV}" -# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep "xz_url.*rust-src" -MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2024-06-13/rust-src-${PV}.tar.xz" -GENTOO_BIN_BASEURI="https://dev.gentoo.org/~arthurzam/distfiles/${CATEGORY}/${PN}" # omit leading slash - -DESCRIPTION="Systems programming language from Mozilla" -HOMEPAGE="https://www.rust-lang.org/" -SRC_URI="$(rust_all_arch_uris ${MY_P}) - rust-src? ( ${MY_SRC_URI} ) -" -# Keep this separate to allow easy commenting out if not yet built -SRC_URI+=" sparc? ( ${GENTOO_BIN_BASEURI}/${MY_P}-sparc64-unknown-linux-gnu.tar.xz ) " -SRC_URI+=" mips? ( - abi_mips_o32? ( - big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips-unknown-linux-gnu.tar.xz ) - !big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mipsel-unknown-linux-gnu.tar.xz ) - ) - abi_mips_n64? ( - big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips64-unknown-linux-gnuabi64.tar.xz ) - !big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips64el-unknown-linux-gnuabi64.tar.xz ) - ) -)" -SRC_URI+=" riscv? ( - elibc_musl? ( ${GENTOO_BIN_BASEURI}/${MY_P}-riscv64gc-unknown-linux-musl.tar.xz ) -)" - -LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" -SLOT="${PV}" -KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86" -IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src rustfmt" - -RDEPEND=" - >=app-eselect/eselect-rust-20190311 - dev-libs/openssl - sys-apps/lsb-release - sys-devel/gcc:* - !dev-lang/rust:stable - !dev-lang/rust-bin:stable -" -BDEPEND=" - prefix? ( dev-util/patchelf ) - verify-sig? ( sec-keys/openpgp-keys-rust ) -" - -REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )" - -# stripping rust may break it (at least on x86_64) -# https://github.com/rust-lang/rust/issues/112286 -RESTRICT="strip" - -QA_PREBUILT=" - opt/${P}/bin/.* - opt/${P}/lib/.*.so* - opt/${P}/libexec/.* - opt/${P}/lib/rustlib/.*/bin/.* - opt/${P}/lib/rustlib/.*/lib/.* -" - -# An rmeta file is custom binary format that contains the metadata for the crate. -# rmeta files do not support linking, since they do not contain compiled object files. -# so we can safely silence the warning for this QA check. -QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta" - -VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc" - -pkg_pretend() { - if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then - die "${CHOST} is not supported by upstream Rust. You must use a hard float version." - fi -} - -src_unpack() { - # sadly rust-src tarball does not have corresponding .asc file - # so do partial verification - if use verify-sig; then - for f in ${A}; do - if [[ -f ${DISTDIR}/${f}.asc ]]; then - verify-sig_verify_detached "${DISTDIR}/${f}" "${DISTDIR}/${f}.asc" - fi - done - fi - - default_src_unpack - - mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die -} - -patchelf_for_bin() { - local filetype=$(file -b ${1}) - if [[ ${filetype} == *ELF*interpreter* ]]; then - einfo "${1}'s interpreter changed" - patchelf ${1} --set-interpreter ${2} || die - elif [[ ${filetype} == *script* ]]; then - hprefixify ${1} - fi -} - -multilib_src_install() { - if multilib_is_native_abi; then - - # start native abi install - pushd "${S}" >/dev/null || die - local analysis std - analysis="$(grep 'analysis' ./components)" - std="$(grep 'std' ./components)" - local components="rustc,cargo,rust-demangler-preview,${std}" - use doc && components="${components},rust-docs" - use clippy && components="${components},clippy-preview" - use rustfmt && components="${components},rustfmt-preview" - use rust-analyzer && components="${components},rust-analyzer-preview,${analysis}" - # Rust component 'rust-src' is extracted from separate archive - if use rust-src; then - einfo "Combining rust and rust-src installers" - mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die - echo rust-src >> ./components || die - components="${components},rust-src" - fi - ./install.sh \ - --components="${components}" \ - --disable-verify \ - --prefix="${ED}/opt/${P}" \ - --mandir="${ED}/opt/${P}/man" \ - --disable-ldconfig \ - || die - - if use prefix; then - local interpreter=$(patchelf --print-interpreter "${EPREFIX}"/bin/bash) - ebegin "Changing interpreter to ${interpreter} for Gentoo prefix at ${ED}/opt/${P}/bin" - find "${ED}/opt/${P}/bin" -type f -print0 | \ - while IFS= read -r -d '' filename; do - patchelf_for_bin ${filename} ${interpreter} \; || die - done - eend ${PIPESTATUS[0]} - fi - - local symlinks=( - cargo - rustc - rustdoc - rust-demangler - rust-gdb - rust-gdbgui - rust-lldb - ) - - use clippy && symlinks+=( clippy-driver cargo-clippy ) - use rustfmt && symlinks+=( rustfmt cargo-fmt ) - use rust-analyzer && symlinks+=( rust-analyzer ) - - einfo "installing eselect-rust symlinks and paths" - local i - for i in "${symlinks[@]}"; do - # we need realpath on /usr/bin/* symlink return version-appended binary path. - # so /usr/bin/rustc should point to /opt/rust-bin-/bin/rustc- - local ver_i="${i}-bin-${PV}" - ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}" || die - dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}" - done - - # symlinks to switch components to active rust in eselect - dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}" - dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}" - dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}" - dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}" - - # make all capital underscored variable - local CARGO_TRIPLET="$(rust_abi)" - CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" - CARGO_TRIPLET="${CARGO_TRIPLET^^}" - cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" - $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") - _EOF_ - doenvd "${T}/50${P}" - - # note: eselect-rust adds EROOT to all paths below - cat <<-_EOF_ > "${T}/provider-${P}" - /usr/bin/cargo - /usr/bin/rustdoc - /usr/bin/rust-demangler - /usr/bin/rust-gdb - /usr/bin/rust-gdbgui - /usr/bin/rust-lldb - /usr/lib/rustlib - /usr/lib/rust/lib - /usr/lib/rust/man - /usr/share/doc/rust - _EOF_ - - if use clippy; then - echo /usr/bin/clippy-driver >> "${T}/provider-${P}" - echo /usr/bin/cargo-clippy >> "${T}/provider-${P}" - fi - if use rustfmt; then - echo /usr/bin/rustfmt >> "${T}/provider-${P}" - echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" - fi - if use rust-analyzer; then - echo /usr/bin/rust-analyzer >> "${T}/provider-${P}" - fi - - insinto /etc/env.d/rust - doins "${T}/provider-${P}" - popd >/dev/null || die - #end native abi install - - else - local rust_target - rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))" - dodir "/opt/${P}/lib/rustlib" - cp -vr "${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\ - "${ED}/opt/${P}/lib/rustlib" || die - fi - - # BUG: installs x86_64 binary on other arches - rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die -} - -pkg_postinst() { - eselect rust update - - if has_version dev-debug/gdb || has_version llvm-core/lldb; then - elog "Rust installs helper scripts for calling GDB and LLDB," - elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${PV}." - fi - - if has_version app-editors/emacs; then - elog "install app-emacs/rust-mode to get emacs support for rust." - fi - - if has_version app-editors/gvim || has_version app-editors/vim; then - elog "install app-vim/rust-vim to get vim support for rust." - fi -} - -pkg_postrm() { - eselect rust cleanup -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.79.0-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.79.0-r102.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.79.0-r100.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.79.0-r102.ebuild index 55b9d0d1596..069025b78ef 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.79.0-r100.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.79.0-r102.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 @@ -178,8 +178,7 @@ multilib_src_install() { CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" CARGO_TRIPLET="${CARGO_TRIPLET^^}" cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") _EOF_ doenvd "${T}/50${P}" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.80.1-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.80.1-r100.ebuild deleted file mode 100644 index 8b3aab679bd..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.80.1-r100.ebuild +++ /dev/null @@ -1,253 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( 18 ) -LLVM_OPTIONAL="yes" - -inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig multilib-minimal - -MY_P="rust-${PV}" -# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep "xz_url.*rust-src" -MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2024-08-08/rust-src-${PV}.tar.xz" -GENTOO_BIN_BASEURI="https://dev.gentoo.org/~arthurzam/distfiles/${CATEGORY}/${PN}" # omit leading slash - -DESCRIPTION="Systems programming language from Mozilla" -HOMEPAGE="https://www.rust-lang.org/" -SRC_URI="$(rust_all_arch_uris ${MY_P}) - rust-src? ( ${MY_SRC_URI} ) -" -# Keep this separate to allow easy commenting out if not yet built -SRC_URI+=" sparc? ( ${GENTOO_BIN_BASEURI}/${MY_P}-sparc64-unknown-linux-gnu.tar.xz ) " -SRC_URI+=" mips? ( - abi_mips_o32? ( - big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips-unknown-linux-gnu.tar.xz ) - !big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mipsel-unknown-linux-gnu.tar.xz ) - ) - abi_mips_n64? ( - big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips64-unknown-linux-gnuabi64.tar.xz ) - !big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips64el-unknown-linux-gnuabi64.tar.xz ) - ) -)" -SRC_URI+=" riscv? ( - elibc_musl? ( ${GENTOO_BIN_BASEURI}/${MY_P}-riscv64gc-unknown-linux-musl.tar.xz ) -)" -SRC_URI+=" ppc64? ( elibc_musl? ( - big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64-unknown-linux-musl.tar.xz ) - !big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64le-unknown-linux-musl.tar.xz ) -) )" - -LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" -SLOT="${PV}" -KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86" -IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src rustfmt" - -RDEPEND=" - >=app-eselect/eselect-rust-20190311 - dev-libs/openssl - sys-apps/lsb-release - sys-devel/gcc:* - !dev-lang/rust:stable - !dev-lang/rust-bin:stable -" -BDEPEND=" - prefix? ( dev-util/patchelf ) - verify-sig? ( sec-keys/openpgp-keys-rust ) -" - -REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )" - -# stripping rust may break it (at least on x86_64) -# https://github.com/rust-lang/rust/issues/112286 -RESTRICT="strip" - -QA_PREBUILT=" - opt/${P}/bin/.* - opt/${P}/lib/.*.so* - opt/${P}/libexec/.* - opt/${P}/lib/rustlib/.*/bin/.* - opt/${P}/lib/rustlib/.*/lib/.* -" - -# An rmeta file is custom binary format that contains the metadata for the crate. -# rmeta files do not support linking, since they do not contain compiled object files. -# so we can safely silence the warning for this QA check. -QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta" - -VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc" - -pkg_pretend() { - if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then - die "${CHOST} is not supported by upstream Rust. You must use a hard float version." - fi -} - -src_unpack() { - # sadly rust-src tarball does not have corresponding .asc file - # so do partial verification - if use verify-sig; then - for f in ${A}; do - if [[ -f ${DISTDIR}/${f}.asc ]]; then - verify-sig_verify_detached "${DISTDIR}/${f}" "${DISTDIR}/${f}.asc" - fi - done - fi - - default_src_unpack - - mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die -} - -patchelf_for_bin() { - local filetype=$(file -b ${1}) - if [[ ${filetype} == *ELF*interpreter* ]]; then - einfo "${1}'s interpreter changed" - patchelf ${1} --set-interpreter ${2} || die - elif [[ ${filetype} == *script* ]]; then - hprefixify ${1} - fi -} - -multilib_src_install() { - if multilib_is_native_abi; then - - # start native abi install - pushd "${S}" >/dev/null || die - local analysis std - analysis="$(grep 'analysis' ./components)" - std="$(grep 'std' ./components)" - local components="rustc,cargo,rust-demangler-preview,${std}" - use doc && components="${components},rust-docs" - use clippy && components="${components},clippy-preview" - use rustfmt && components="${components},rustfmt-preview" - use rust-analyzer && components="${components},rust-analyzer-preview,${analysis}" - # Rust component 'rust-src' is extracted from separate archive - if use rust-src; then - einfo "Combining rust and rust-src installers" - mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die - echo rust-src >> ./components || die - components="${components},rust-src" - fi - ./install.sh \ - --components="${components}" \ - --disable-verify \ - --prefix="${ED}/opt/${P}" \ - --mandir="${ED}/opt/${P}/man" \ - --disable-ldconfig \ - || die - - if use prefix; then - local interpreter=$(patchelf --print-interpreter "${EPREFIX}"/bin/bash) - ebegin "Changing interpreter to ${interpreter} for Gentoo prefix at ${ED}/opt/${P}/bin" - find "${ED}/opt/${P}/bin" -type f -print0 | \ - while IFS= read -r -d '' filename; do - patchelf_for_bin ${filename} ${interpreter} \; || die - done - eend ${PIPESTATUS[0]} - fi - - local symlinks=( - cargo - rustc - rustdoc - rust-demangler - rust-gdb - rust-gdbgui - rust-lldb - ) - - use clippy && symlinks+=( clippy-driver cargo-clippy ) - use rustfmt && symlinks+=( rustfmt cargo-fmt ) - use rust-analyzer && symlinks+=( rust-analyzer ) - - einfo "installing eselect-rust symlinks and paths" - local i - for i in "${symlinks[@]}"; do - # we need realpath on /usr/bin/* symlink return version-appended binary path. - # so /usr/bin/rustc should point to /opt/rust-bin-/bin/rustc- - local ver_i="${i}-bin-${PV}" - ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}" || die - dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}" - done - - # symlinks to switch components to active rust in eselect - dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}" - dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}" - dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}" - dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}" - - # make all capital underscored variable - local CARGO_TRIPLET="$(rust_abi)" - CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" - CARGO_TRIPLET="${CARGO_TRIPLET^^}" - cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" - $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") - _EOF_ - doenvd "${T}/50${P}" - - # note: eselect-rust adds EROOT to all paths below - cat <<-_EOF_ > "${T}/provider-${P}" - /usr/bin/cargo - /usr/bin/rustdoc - /usr/bin/rust-demangler - /usr/bin/rust-gdb - /usr/bin/rust-gdbgui - /usr/bin/rust-lldb - /usr/lib/rustlib - /usr/lib/rust/lib - /usr/lib/rust/man - /usr/share/doc/rust - _EOF_ - - if use clippy; then - echo /usr/bin/clippy-driver >> "${T}/provider-${P}" - echo /usr/bin/cargo-clippy >> "${T}/provider-${P}" - fi - if use rustfmt; then - echo /usr/bin/rustfmt >> "${T}/provider-${P}" - echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" - fi - if use rust-analyzer; then - echo /usr/bin/rust-analyzer >> "${T}/provider-${P}" - fi - - insinto /etc/env.d/rust - doins "${T}/provider-${P}" - popd >/dev/null || die - #end native abi install - - else - local rust_target - rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))" - dodir "/opt/${P}/lib/rustlib" - cp -vr "${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\ - "${ED}/opt/${P}/lib/rustlib" || die - fi - - # BUG: installs x86_64 binary on other arches - rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die -} - -pkg_postinst() { - eselect rust update - - if has_version dev-debug/gdb || has_version llvm-core/lldb; then - elog "Rust installs helper scripts for calling GDB and LLDB," - elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${PV}." - fi - - if has_version app-editors/emacs; then - elog "install app-emacs/rust-mode to get emacs support for rust." - fi - - if has_version app-editors/gvim || has_version app-editors/vim; then - elog "install app-vim/rust-vim to get vim support for rust." - fi -} - -pkg_postrm() { - eselect rust cleanup -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.80.1-r101.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.80.1-r102.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.80.1-r101.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.80.1-r102.ebuild index 8b3aab679bd..327beab6696 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.80.1-r101.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.80.1-r102.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 @@ -182,8 +182,7 @@ multilib_src_install() { CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" CARGO_TRIPLET="${CARGO_TRIPLET^^}" cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") _EOF_ doenvd "${T}/50${P}" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.81.0-r101.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.81.0-r101.ebuild deleted file mode 100644 index aabb1ed9c38..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.81.0-r101.ebuild +++ /dev/null @@ -1,251 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( 18 ) -LLVM_OPTIONAL="yes" - -inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig multilib-minimal optfeature - -MY_P="rust-${PV}" -# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep "xz_url.*rust-src" -MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2024-09-05/rust-src-${PV}.tar.xz" -GENTOO_BIN_BASEURI="https://dev.gentoo.org/~arthurzam/distfiles/${CATEGORY}/${PN}" # omit leading slash - -DESCRIPTION="Systems programming language from Mozilla" -HOMEPAGE="https://www.rust-lang.org/" -SRC_URI="$(rust_all_arch_uris ${MY_P}) - rust-src? ( ${MY_SRC_URI} ) -" -# Keep this separate to allow easy commenting out if not yet built -SRC_URI+=" sparc? ( ${GENTOO_BIN_BASEURI}/${MY_P}-sparc64-unknown-linux-gnu.tar.xz ) " -SRC_URI+=" mips? ( - abi_mips_o32? ( - big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips-unknown-linux-gnu.tar.xz ) - !big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mipsel-unknown-linux-gnu.tar.xz ) - ) - abi_mips_n64? ( - big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips64-unknown-linux-gnuabi64.tar.xz ) - !big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips64el-unknown-linux-gnuabi64.tar.xz ) - ) -)" -SRC_URI+=" riscv? ( - elibc_musl? ( ${GENTOO_BIN_BASEURI}/${MY_P}-riscv64gc-unknown-linux-musl.tar.xz ) -)" -SRC_URI+=" ppc64? ( elibc_musl? ( - big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64-unknown-linux-musl.tar.xz ) - !big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64le-unknown-linux-musl.tar.xz ) -) )" - -LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" -SLOT="${PV}" -KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86" -IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src rustfmt" - -RDEPEND=" - >=app-eselect/eselect-rust-20190311 - dev-libs/openssl - sys-apps/lsb-release - sys-devel/gcc:* - !dev-lang/rust:stable - !dev-lang/rust-bin:stable -" -BDEPEND=" - prefix? ( dev-util/patchelf ) - verify-sig? ( sec-keys/openpgp-keys-rust ) -" - -REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )" - -# stripping rust may break it (at least on x86_64) -# https://github.com/rust-lang/rust/issues/112286 -RESTRICT="strip" - -QA_PREBUILT=" - opt/${P}/bin/.* - opt/${P}/lib/.*.so* - opt/${P}/libexec/.* - opt/${P}/lib/rustlib/.*/bin/.* - opt/${P}/lib/rustlib/.*/lib/.* -" - -# An rmeta file is custom binary format that contains the metadata for the crate. -# rmeta files do not support linking, since they do not contain compiled object files. -# so we can safely silence the warning for this QA check. -QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta" - -VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc" - -pkg_pretend() { - if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then - die "${CHOST} is not supported by upstream Rust. You must use a hard float version." - fi -} - -src_unpack() { - # sadly rust-src tarball does not have corresponding .asc file - # so do partial verification - if use verify-sig; then - for f in ${A}; do - if [[ -f ${DISTDIR}/${f}.asc ]]; then - verify-sig_verify_detached "${DISTDIR}/${f}" "${DISTDIR}/${f}.asc" - fi - done - fi - - default_src_unpack - - mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die -} - -patchelf_for_bin() { - local filetype=$(file -b ${1}) - if [[ ${filetype} == *ELF*interpreter* ]]; then - einfo "${1}'s interpreter changed" - patchelf ${1} --set-interpreter ${2} || die - elif [[ ${filetype} == *script* ]]; then - hprefixify ${1} - fi -} - -multilib_src_install() { - if multilib_is_native_abi; then - - # start native abi install - pushd "${S}" >/dev/null || die - local analysis std - analysis="$(grep 'analysis' ./components)" - std="$(grep 'std' ./components)" - local components="rustc,cargo,${std}" - use doc && components="${components},rust-docs" - use clippy && components="${components},clippy-preview" - use rustfmt && components="${components},rustfmt-preview" - use rust-analyzer && components="${components},rust-analyzer-preview,${analysis}" - # Rust component 'rust-src' is extracted from separate archive - if use rust-src; then - einfo "Combining rust and rust-src installers" - mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die - echo rust-src >> ./components || die - components="${components},rust-src" - fi - ./install.sh \ - --components="${components}" \ - --disable-verify \ - --prefix="${ED}/opt/${P}" \ - --mandir="${ED}/opt/${P}/man" \ - --disable-ldconfig \ - || die - - if use prefix; then - local interpreter=$(patchelf --print-interpreter "${EPREFIX}"/bin/bash) - ebegin "Changing interpreter to ${interpreter} for Gentoo prefix at ${ED}/opt/${P}/bin" - find "${ED}/opt/${P}/bin" -type f -print0 | \ - while IFS= read -r -d '' filename; do - patchelf_for_bin ${filename} ${interpreter} \; || die - done - eend ${PIPESTATUS[0]} - fi - - local symlinks=( - cargo - rustc - rustdoc - rust-gdb - rust-gdbgui - rust-lldb - ) - - use clippy && symlinks+=( clippy-driver cargo-clippy ) - use rustfmt && symlinks+=( rustfmt cargo-fmt ) - use rust-analyzer && symlinks+=( rust-analyzer ) - - einfo "installing eselect-rust symlinks and paths" - local i - for i in "${symlinks[@]}"; do - # we need realpath on /usr/bin/* symlink return version-appended binary path. - # so /usr/bin/rustc should point to /opt/rust-bin-/bin/rustc- - local ver_i="${i}-bin-${PV}" - ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}" || die - dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}" - done - - # symlinks to switch components to active rust in eselect - dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}" - dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}" - dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}" - dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}" - - # make all capital underscored variable - local CARGO_TRIPLET="$(rust_abi)" - CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" - CARGO_TRIPLET="${CARGO_TRIPLET^^}" - cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" - $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") - _EOF_ - doenvd "${T}/50${P}" - - # note: eselect-rust adds EROOT to all paths below - cat <<-_EOF_ > "${T}/provider-${P}" - /usr/bin/cargo - /usr/bin/rustdoc - /usr/bin/rust-gdb - /usr/bin/rust-gdbgui - /usr/bin/rust-lldb - /usr/lib/rustlib - /usr/lib/rust/lib - /usr/lib/rust/man - /usr/share/doc/rust - _EOF_ - - if use clippy; then - echo /usr/bin/clippy-driver >> "${T}/provider-${P}" - echo /usr/bin/cargo-clippy >> "${T}/provider-${P}" - fi - if use rustfmt; then - echo /usr/bin/rustfmt >> "${T}/provider-${P}" - echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" - fi - if use rust-analyzer; then - echo /usr/bin/rust-analyzer >> "${T}/provider-${P}" - fi - - insinto /etc/env.d/rust - doins "${T}/provider-${P}" - popd >/dev/null || die - #end native abi install - - else - local rust_target - rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))" - dodir "/opt/${P}/lib/rustlib" - cp -vr "${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\ - "${ED}/opt/${P}/lib/rustlib" || die - fi - - # BUG: installs x86_64 binary on other arches - rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die -} - -pkg_postinst() { - eselect rust update - - if has_version dev-debug/gdb || has_version llvm-core/lldb; then - elog "Rust installs helper scripts for calling GDB and LLDB," - elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${PV}." - fi - - if has_version app-editors/emacs; then - optfeature "emacs support for rust" app-emacs/rust-mode - fi - - if has_version app-editors/gvim || has_version app-editors/vim; then - optfeature "vim support for rust" app-vim/rust-vim - fi -} - -pkg_postrm() { - eselect rust cleanup -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.81.0-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.81.0-r102.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.81.0-r100.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.81.0-r102.ebuild index aabb1ed9c38..f139c60a539 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.81.0-r100.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.81.0-r102.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 @@ -181,8 +181,7 @@ multilib_src_install() { CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" CARGO_TRIPLET="${CARGO_TRIPLET^^}" cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") _EOF_ doenvd "${T}/50${P}" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.82.0-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.82.0-r102.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.82.0-r100.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.82.0-r102.ebuild index b1a1d5f9037..535a893ad01 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.82.0-r100.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.82.0-r102.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 @@ -183,8 +183,7 @@ multilib_src_install() { CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" CARGO_TRIPLET="${CARGO_TRIPLET^^}" cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") _EOF_ doenvd "${T}/50${P}" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.83.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.83.0-r1.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.83.0.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.83.0-r1.ebuild index eae591d4611..ad77ff518f1 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.83.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.83.0-r1.ebuild @@ -183,8 +183,7 @@ multilib_src_install() { CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" CARGO_TRIPLET="${CARGO_TRIPLET^^}" cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") _EOF_ doenvd "${T}/50${P}" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.84.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.84.0-r1.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.84.0.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.84.0-r1.ebuild index 48da1d3e8bd..33c87f94a21 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.84.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.84.0-r1.ebuild @@ -183,8 +183,7 @@ multilib_src_install() { CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" CARGO_TRIPLET="${CARGO_TRIPLET^^}" cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") _EOF_ doenvd "${T}/50${P}" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.82.0-r101.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.84.1-r1.ebuild similarity index 96% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.82.0-r101.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.84.1-r1.ebuild index b1a1d5f9037..dc92f054790 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.82.0-r101.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.84.1-r1.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 @@ -10,7 +10,7 @@ inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig multil MY_P="rust-${PV}" # curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep "xz_url.*rust-src" -MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2024-10-17/rust-src-${PV}.tar.xz" +MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2025-01-30/rust-src-${PV}.tar.xz" GENTOO_BIN_BASEURI="https://dev.gentoo.org/~arthurzam/distfiles/${CATEGORY}/${PN}" # omit leading slash DESCRIPTION="Systems programming language from Mozilla" @@ -40,7 +40,7 @@ SRC_URI+=" ppc64? ( elibc_musl? ( LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" SLOT="${PV}" -KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src rustfmt" RDEPEND=" @@ -146,7 +146,7 @@ multilib_src_install() { while IFS= read -r -d '' filename; do patchelf_for_bin ${filename} ${interpreter} \; || die done - eend ${PIPESTATUS[0]} + eend $? fi local symlinks=( @@ -183,8 +183,7 @@ multilib_src_install() { CARGO_TRIPLET="${CARGO_TRIPLET//-/_}" CARGO_TRIPLET="${CARGO_TRIPLET^^}" cat <<-_EOF_ > "${T}/50${P}" - LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}" - MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" + MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}" $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"") _EOF_ doenvd "${T}/50${P}" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/Manifest index 6bbfe739474..5535a172484 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/Manifest @@ -6,3 +6,5 @@ DIST rustc-1.83.0-src.tar.xz 353808388 BLAKE2B 217c85f7351a7c57a2684da2c7c81a320 DIST rustc-1.83.0-src.tar.xz.asc 801 BLAKE2B 3bacb43d50ebba579dc2d4f1726298a7887e303e15f039ef72b840e30d90bc2cf9cdbe4617a9ee113a2b1a48f1982e72cf30323d72cdfb9a65b5b4d734ca0024 SHA512 84b252ccaddc06cb05858ff64f582dd25823818c81b1e3a00362deeda06f09e6c36948fd316d5f0ca5e24949e6f99bb14a14dbd2af1cfbb85e679e27ab0a813c DIST rustc-1.84.0-src.tar.xz 354993944 BLAKE2B e4697d8a9f42484556ed490390aef535b2214ccb3715ade57936211c1c637737da5f2b9a6c53a30df0fba1744fbd80d4d1382c0b74f6b36b36098bf187557201 SHA512 9e964c1b964e74083a9002fa04b072fa8fe7a520b24ad55e88a89bb2a2a2cd5727c5438d6db425b824ae7502ab215c2dd3f49777efd65f76bae09965df2e070a DIST rustc-1.84.0-src.tar.xz.asc 801 BLAKE2B b1846702f36b92c479499f5eb704ce1e272131fc1b6b625c8d64c873a82ed79b1de8cceb1f21ae4b9dccf81e258547debf367b7b769ac94ed10a59dee18f79f1 SHA512 5ada0e0fed9901044eaa0d7cb657f685c7e183e91245714abe4a0a8bf3062a7de281932c7de7587220df0542511f6011d057bd8bed19d98c755eab74091cdfdb +DIST rustc-1.84.1-src.tar.xz 355078168 BLAKE2B 849e8c909493bf76ce9749b9dcb1967180223b91a41d690bc477e78557d4e24949c9a8d8276d824af8c54ad62bc4a998e7a8efbc0bbd2008a4f64f51a7690d48 SHA512 f1cc4765736551508408126e44086988e8ddc30c1a929bf7b61c6be85ad0d65928dd5fb1041cfaeee8eb37d2208f2c1917e276aef2bc9a8e40e34f6713b349e1 +DIST rustc-1.84.1-src.tar.xz.asc 801 BLAKE2B f3decd3470fd1eff33adbb376490a30eb8db28dd4176bde0fefe4f60acf79c3dd0e1a330d519b5319360136ea7d0a124f6720dea08617202d9e9298da992ccf6 SHA512 a241fe3efba293f3e872b74f09dd0d184e0239afd1416326d57bf1134d92721c65b187f5c99962b51671877a539f18e82d2d797c76af42615c11a8bb3905f796 diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.84.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.84.1.ebuild new file mode 100644 index 00000000000..0969c3472e3 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust-common/rust-common-1.84.1.ebuild @@ -0,0 +1,58 @@ +# 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/rust.asc +inherit bash-completion-r1 verify-sig + +DESCRIPTION="Common files shared between multiple slots of Rust" +HOMEPAGE="https://www.rust-lang.org/" + +if [[ ${PV} = *beta* ]]; then + betaver=${PV//*beta} + BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}" + SRC="${BETA_SNAPSHOT}/rustc-beta-src.tar.xz -> rustc-${PV}-src.tar.xz" +else + ABI_VER="$(ver_cut 1-2)" + MY_P="rustc-${PV}" + SRC="${MY_P}-src.tar.xz" +fi + +SRC_URI=" + https://static.rust-lang.org/dist/${SRC} + verify-sig? ( https://static.rust-lang.org/dist/${SRC}.asc ) +" +S="${WORKDIR}/${MY_P}-src" + +LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" + +# Legacy non-slotted versions bash completions will collide. +RDEPEND=" + !dev-lang/rust:stable + !dev-lang/rust-bin:stable +" +BDEPEND="verify-sig? ( sec-keys/openpgp-keys-rust )" + +src_unpack() { + if use verify-sig ; then + verify-sig_verify_detached "${DISTDIR}"/${SRC} "${DISTDIR}"/${SRC}.asc + fi + + # Avoid unpacking the whole tarball which would need check-reqs + tar -xf "${DISTDIR}"/${SRC} ${SRC%%.tar.xz}/src/tools/cargo/src/etc/cargo.bashcomp.sh || die +} + +src_configure() { + : +} + +src_compile() { + : +} + +src_install() { + newbashcomp src/tools/cargo/src/etc/cargo.bashcomp.sh cargo +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/rust/Manifest index 74d396547e7..f47aaa2f524 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/Manifest @@ -22,3 +22,5 @@ DIST rustc-1.83.0-src.tar.xz 353808388 BLAKE2B 217c85f7351a7c57a2684da2c7c81a320 DIST rustc-1.83.0-src.tar.xz.asc 801 BLAKE2B 3bacb43d50ebba579dc2d4f1726298a7887e303e15f039ef72b840e30d90bc2cf9cdbe4617a9ee113a2b1a48f1982e72cf30323d72cdfb9a65b5b4d734ca0024 SHA512 84b252ccaddc06cb05858ff64f582dd25823818c81b1e3a00362deeda06f09e6c36948fd316d5f0ca5e24949e6f99bb14a14dbd2af1cfbb85e679e27ab0a813c DIST rustc-1.84.0-src.tar.xz 354993944 BLAKE2B e4697d8a9f42484556ed490390aef535b2214ccb3715ade57936211c1c637737da5f2b9a6c53a30df0fba1744fbd80d4d1382c0b74f6b36b36098bf187557201 SHA512 9e964c1b964e74083a9002fa04b072fa8fe7a520b24ad55e88a89bb2a2a2cd5727c5438d6db425b824ae7502ab215c2dd3f49777efd65f76bae09965df2e070a DIST rustc-1.84.0-src.tar.xz.asc 801 BLAKE2B b1846702f36b92c479499f5eb704ce1e272131fc1b6b625c8d64c873a82ed79b1de8cceb1f21ae4b9dccf81e258547debf367b7b769ac94ed10a59dee18f79f1 SHA512 5ada0e0fed9901044eaa0d7cb657f685c7e183e91245714abe4a0a8bf3062a7de281932c7de7587220df0542511f6011d057bd8bed19d98c755eab74091cdfdb +DIST rustc-1.84.1-src.tar.xz 355078168 BLAKE2B 849e8c909493bf76ce9749b9dcb1967180223b91a41d690bc477e78557d4e24949c9a8d8276d824af8c54ad62bc4a998e7a8efbc0bbd2008a4f64f51a7690d48 SHA512 f1cc4765736551508408126e44086988e8ddc30c1a929bf7b61c6be85ad0d65928dd5fb1041cfaeee8eb37d2208f2c1917e276aef2bc9a8e40e34f6713b349e1 +DIST rustc-1.84.1-src.tar.xz.asc 801 BLAKE2B f3decd3470fd1eff33adbb376490a30eb8db28dd4176bde0fefe4f60acf79c3dd0e1a330d519b5319360136ea7d0a124f6720dea08617202d9e9298da992ccf6 SHA512 a241fe3efba293f3e872b74f09dd0d184e0239afd1416326d57bf1134d92721c65b187f5c99962b51671877a539f18e82d2d797c76af42615c11a8bb3905f796 diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/files/1.84.1-fix-cross.patch b/sdk_container/src/third_party/portage-stable/dev-lang/rust/files/1.84.1-fix-cross.patch new file mode 100644 index 00000000000..47d7766ae95 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/files/1.84.1-fix-cross.patch @@ -0,0 +1,30 @@ +https://github.com/rust-lang/rust/issues/133629 +https://github.com/rust-lang/rust/commit/a24d859f19bbefe5371694f318568b0ab5a13299 + +From: onur-ozkan +Date: Thu, 30 Jan 2025 16:51:08 +0000 +Subject: [PATCH] set rustc dylib on manually constructed rustc command + +Signed-off-by: onur-ozkan +--- a/src/bootstrap/src/core/builder/cargo.rs ++++ b/src/bootstrap/src/core/builder/cargo.rs +@@ -653,7 +653,10 @@ impl Builder<'_> { + // Build proc macros both for the host and the target unless proc-macros are not + // supported by the target. + if target != compiler.host && cmd_kind != Kind::Check { +- let error = command(self.rustc(compiler)) ++ let mut rustc_cmd = command(self.rustc(compiler)); ++ self.add_rustc_lib_path(compiler, &mut rustc_cmd); ++ ++ let error = rustc_cmd + .arg("--target") + .arg(target.rustc_target_arg()) + .arg("--print=file-names") +@@ -661,6 +664,7 @@ impl Builder<'_> { + .arg("-") + .run_capture(self) + .stderr(); ++ + let not_supported = error + .lines() + .any(|line| line.contains("unsupported crate type `proc-macro`")); diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.71.1-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.71.1-r101.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.71.1-r100.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.71.1-r101.ebuild index dedaab4fcba..a454fcc7d08 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.71.1-r100.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.71.1-r101.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 @@ -43,7 +43,7 @@ ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC CSKY DirectX M68k SPIRV Xtensa ) LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4 UoI-NCSA" SLOT="${PV}" -IUSE="big-endian clippy cpu_flags_x86_sse2 debug dist doc llvm-libunwind +lto miri nightly parallel-compiler rustfmt rust-analyzer rust-src system-llvm test wasm ${ALL_LLVM_TARGETS[*]}" +IUSE="big-endian clippy cpu_flags_x86_sse2 debug dist doc llvm-libunwind lto miri nightly parallel-compiler rustfmt rust-analyzer rust-src system-llvm test wasm ${ALL_LLVM_TARGETS[*]}" LLVM_DEPEND=() # splitting usedeps needed to avoid CI/pkgcheck's UncheckableDep limitation @@ -329,7 +329,7 @@ src_configure() { parallel-compiler = $(toml_usex parallel-compiler) channel = "$(usex nightly nightly stable)" description = "gentoo" - rpath = false + rpath = true verbose-tests = true optimize-tests = $(toml_usex !debug) codegen-tests = true @@ -586,7 +586,6 @@ src_install() { dosym "../../lib/${PN}/${PV}/share/doc/rust" "/usr/share/doc/${P}" newenvd - "50${P}" <<-_EOF_ - LDPATH="${EPREFIX}/usr/lib/rust/lib-${PV}" MANPATH="${EPREFIX}/usr/lib/rust/man-${PV}" _EOF_ diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.74.1-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.74.1-r101.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.74.1-r100.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.74.1-r101.ebuild index d131b800b87..cabb75e7e37 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.74.1-r100.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.74.1-r101.ebuild @@ -49,7 +49,7 @@ ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC CSKY DirectX M68k SPIRV Xtensa ) LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" SLOT="${PV}" -IUSE="big-endian clippy cpu_flags_x86_sse2 debug dist doc llvm-libunwind +lto miri mrustc-bootstrap nightly parallel-compiler rustfmt rust-analyzer rust-src system-llvm test wasm ${ALL_LLVM_TARGETS[*]}" +IUSE="big-endian clippy cpu_flags_x86_sse2 debug dist doc llvm-libunwind lto miri mrustc-bootstrap nightly parallel-compiler rustfmt rust-analyzer rust-src system-llvm test wasm ${ALL_LLVM_TARGETS[*]}" LLVM_DEPEND=() # splitting usedeps needed to avoid CI/pkgcheck's UncheckableDep limitation @@ -396,7 +396,7 @@ src_configure() { parallel-compiler = $(toml_usex parallel-compiler) channel = "$(usex nightly nightly stable)" description = "gentoo" - rpath = false + rpath = true verbose-tests = true optimize-tests = $(toml_usex !debug) codegen-tests = true @@ -899,7 +899,6 @@ src_install() { dosym "../../lib/${PN}/${PV}/share/doc/rust" "/usr/share/doc/${P}" newenvd - "50${P}" <<-_EOF_ - LDPATH="${EPREFIX}/usr/lib/rust/lib-${PV}" MANPATH="${EPREFIX}/usr/lib/rust/man-${PV}" _EOF_ diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.75.0-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.75.0-r101.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.75.0-r100.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.75.0-r101.ebuild index 478f58c567f..5bec96815fd 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.75.0-r100.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.75.0-r101.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 @@ -44,7 +44,7 @@ ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC CSKY DirectX M68k SPIRV Xtensa ) LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" SLOT="${PV}" -IUSE="big-endian clippy cpu_flags_x86_sse2 debug dist doc llvm-libunwind +lto miri nightly parallel-compiler rustfmt rust-analyzer rust-src system-llvm test wasm ${ALL_LLVM_TARGETS[*]}" +IUSE="big-endian clippy cpu_flags_x86_sse2 debug dist doc llvm-libunwind lto miri nightly parallel-compiler rustfmt rust-analyzer rust-src system-llvm test wasm ${ALL_LLVM_TARGETS[*]}" LLVM_DEPEND=() # splitting usedeps needed to avoid CI/pkgcheck's UncheckableDep limitation @@ -362,7 +362,7 @@ src_configure() { parallel-compiler = $(toml_usex parallel-compiler) channel = "$(usex nightly nightly stable)" description = "gentoo" - rpath = false + rpath = true verbose-tests = true optimize-tests = $(toml_usex !debug) codegen-tests = true @@ -619,7 +619,6 @@ src_install() { dosym "../../lib/${PN}/${PV}/share/doc/rust" "/usr/share/doc/${P}" newenvd - "50${P}" <<-_EOF_ - LDPATH="${EPREFIX}/usr/lib/rust/lib-${PV}" MANPATH="${EPREFIX}/usr/lib/rust/man-${PV}" _EOF_ diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.76.0-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.76.0-r101.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.76.0-r100.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.76.0-r101.ebuild index 364d59bed5b..f26d3673bb4 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.76.0-r100.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.76.0-r101.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 @@ -361,7 +361,7 @@ src_configure() { parallel-compiler = $(toml_usex parallel-compiler) channel = "$(usex nightly nightly stable)" description = "gentoo" - rpath = false + rpath = true verbose-tests = true optimize-tests = $(toml_usex !debug) codegen-tests = true @@ -536,7 +536,6 @@ src_install() { dosym "../../lib/${PN}/${PV}/share/doc/rust" "/usr/share/doc/${P}" newenvd - "50${P}" <<-_EOF_ - LDPATH="${EPREFIX}/usr/lib/rust/lib-${PV}" MANPATH="${EPREFIX}/usr/lib/rust/man-${PV}" _EOF_ diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.77.1-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.77.1-r101.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.77.1-r100.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.77.1-r101.ebuild index 5461a2a6b93..a84253b3343 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.77.1-r100.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.77.1-r101.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 @@ -360,7 +360,7 @@ src_configure() { parallel-compiler = $(toml_usex parallel-compiler) channel = "$(usex nightly nightly stable)" description = "gentoo" - rpath = false + rpath = true verbose-tests = true optimize-tests = $(toml_usex !debug) codegen-tests = true @@ -618,7 +618,6 @@ src_install() { dosym "../../lib/${PN}/${PV}/share/doc/rust" "/usr/share/doc/${P}" newenvd - "50${P}" <<-_EOF_ - LDPATH="${EPREFIX}/usr/lib/rust/lib-${PV}" MANPATH="${EPREFIX}/usr/lib/rust/man-${PV}" _EOF_ diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.79.0-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.78.0-r101.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.79.0-r100.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.78.0-r101.ebuild index 19a64890ab0..a2ab0b579d5 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.79.0-r100.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.78.0-r101.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 @@ -359,7 +359,7 @@ src_configure() { parallel-compiler = $(toml_usex parallel-compiler) channel = "$(usex nightly nightly stable)" description = "gentoo" - rpath = false + rpath = true verbose-tests = true optimize-tests = $(toml_usex !debug) codegen-tests = true @@ -620,7 +620,6 @@ src_install() { dosym "../../lib/${PN}/${PV}/share/doc/rust" "/usr/share/doc/${P}" newenvd - "50${P}" <<-_EOF_ - LDPATH="${EPREFIX}/usr/lib/rust/lib-${PV}" MANPATH="${EPREFIX}/usr/lib/rust/man-${PV}" _EOF_ diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.78.0-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.79.0-r101.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.78.0-r100.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.79.0-r101.ebuild index 19a64890ab0..a2ab0b579d5 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.78.0-r100.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.79.0-r101.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 @@ -359,7 +359,7 @@ src_configure() { parallel-compiler = $(toml_usex parallel-compiler) channel = "$(usex nightly nightly stable)" description = "gentoo" - rpath = false + rpath = true verbose-tests = true optimize-tests = $(toml_usex !debug) codegen-tests = true @@ -620,7 +620,6 @@ src_install() { dosym "../../lib/${PN}/${PV}/share/doc/rust" "/usr/share/doc/${P}" newenvd - "50${P}" <<-_EOF_ - LDPATH="${EPREFIX}/usr/lib/rust/lib-${PV}" MANPATH="${EPREFIX}/usr/lib/rust/man-${PV}" _EOF_ diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.80.1-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.80.1-r101.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.80.1-r100.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.80.1-r101.ebuild index fb5eef4568b..c569cb53351 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.80.1-r100.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.80.1-r101.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 @@ -358,7 +358,7 @@ src_configure() { parallel-compiler = $(toml_usex parallel-compiler) channel = "$(usex nightly nightly stable)" description = "gentoo" - rpath = false + rpath = true verbose-tests = true optimize-tests = $(toml_usex !debug) codegen-tests = true @@ -618,7 +618,6 @@ src_install() { dosym "../../lib/${PN}/${PV}/share/doc/rust" "/usr/share/doc/${P}" newenvd - "50${P}" <<-_EOF_ - LDPATH="${EPREFIX}/usr/lib/rust/lib-${PV}" MANPATH="${EPREFIX}/usr/lib/rust/man-${PV}" _EOF_ diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.81.0-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.81.0-r101.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.81.0-r100.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.81.0-r101.ebuild index 93dfa988757..01d49bc018e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.81.0-r100.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.81.0-r101.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 @@ -362,7 +362,7 @@ src_configure() { parallel-compiler = $(toml_usex parallel-compiler) channel = "$(usex nightly nightly stable)" description = "gentoo" - rpath = false + rpath = true verbose-tests = true optimize-tests = $(toml_usex !debug) codegen-tests = true @@ -622,7 +622,6 @@ src_install() { dosym "../../lib/${PN}/${PV}/share/doc/rust" "/usr/share/doc/${P}" newenvd - "50${P}" <<-_EOF_ - LDPATH="${EPREFIX}/usr/lib/rust/lib-${PV}" MANPATH="${EPREFIX}/usr/lib/rust/man-${PV}" _EOF_ diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.82.0-r101.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.82.0-r102.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.82.0-r101.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.82.0-r102.ebuild index 1f70f958d49..4408b27683c 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.82.0-r101.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.82.0-r102.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 @@ -370,7 +370,7 @@ src_configure() { parallel-compiler = $(toml_usex parallel-compiler) channel = "$(usex nightly nightly stable)" description = "gentoo" - rpath = false + rpath = true verbose-tests = true optimize-tests = $(toml_usex !debug) codegen-tests = true @@ -632,7 +632,6 @@ src_install() { dosym "../../lib/${PN}/${PV}/share/doc/rust" "/usr/share/doc/${P}" newenvd - "50${P}" <<-_EOF_ - LDPATH="${EPREFIX}/usr/lib/rust/lib-${PV}" MANPATH="${EPREFIX}/usr/lib/rust/man-${PV}" _EOF_ diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.83.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.83.0-r2.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.83.0-r1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.83.0-r2.ebuild index 2262915b0d6..d98a717dc57 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.83.0-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.83.0-r2.ebuild @@ -370,7 +370,7 @@ src_configure() { parallel-compiler = $(toml_usex parallel-compiler) channel = "$(usex nightly nightly stable)" description = "gentoo" - rpath = false + rpath = true verbose-tests = true optimize-tests = $(toml_usex !debug) codegen-tests = true @@ -632,7 +632,6 @@ src_install() { dosym "../../lib/${PN}/${PV}/share/doc/rust" "/usr/share/doc/${P}" newenvd - "50${P}" <<-_EOF_ - LDPATH="${EPREFIX}/usr/lib/rust/lib-${PV}" MANPATH="${EPREFIX}/usr/lib/rust/man-${PV}" _EOF_ diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.84.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.84.0-r1.ebuild similarity index 93% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.84.0.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.84.0-r1.ebuild index f07d34111b3..10294bcfad0 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.84.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.84.0-r1.ebuild @@ -39,6 +39,9 @@ ALL_LLVM_TARGETS=( AArch64 AMDGPU ARC ARM AVR BPF CSKY DirectX Hexagon Lanai ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" ) LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/(-)?} +# https://github.com/rust-lang/llvm-project/blob/rustc-1.84.0/llvm/CMakeLists.txt +ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC CSKY DirectX M68k SPIRV Xtensa ) + LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" SLOT="${PV}" @@ -269,6 +272,14 @@ src_configure() { rust_build="$(rust_abi "${CBUILD}")" rust_host="$(rust_abi "${CHOST}")" + LLVM_EXPERIMENTAL_TARGETS=() + for _x in "${ALL_LLVM_EXPERIMENTAL_TARGETS[@]}"; do + if use llvm_targets_${_x} ; then + LLVM_EXPERIMENTAL_TARGETS+=( ${_x} ) + fi + done + LLVM_EXPERIMENTAL_TARGETS=${LLVM_EXPERIMENTAL_TARGETS[@]} + local cm_btype="$(usex debug DEBUG RELEASE)" cat <<- _EOF_ > "${S}"/config.toml # https://github.com/rust-lang/rust/issues/135358 (bug #947897) @@ -280,7 +291,7 @@ src_configure() { assertions = $(toml_usex debug) ninja = true targets = "${LLVM_TARGETS// /;}" - experimental-targets = "" + experimental-targets = "${LLVM_EXPERIMENTAL_TARGETS// /;}" link-shared = $(toml_usex system-llvm) $(if is_libcxx_linked; then # https://bugs.gentoo.org/732632 @@ -361,7 +372,7 @@ src_configure() { parallel-compiler = $(toml_usex parallel-compiler) channel = "$(usex nightly nightly stable)" description = "gentoo" - rpath = false + rpath = true verbose-tests = true optimize-tests = $(toml_usex !debug) codegen-tests = true @@ -623,7 +634,6 @@ src_install() { dosym "../../lib/${PN}/${PV}/share/doc/rust" "/usr/share/doc/${P}" newenvd - "50${P}" <<-_EOF_ - LDPATH="${EPREFIX}/usr/lib/rust/lib-${PV}" MANPATH="${EPREFIX}/usr/lib/rust/man-${PV}" _EOF_ @@ -671,44 +681,8 @@ src_install() { fi } -pkg_preinst() { - # 943308 and friends; basically --keep-going can forget to unmerge old rust - # but the soft blocker allows us to install conflicting files. - # This results in duplicated .{rlib,so} files which confuses rustc and results in - # the need for manual intervention. - if has_version -b "dev-lang/rust:stable/$(ver_cut 1-2)"; then - # we need to find all .{rlib,so} files in the old rust lib directory - # and store them in an array for later use - readarray -d '' old_rust_libs < <( - find "${EROOT}/usr/lib/rust/${PV}/lib/rustlib" \ - -type f \( -name '*.rlib' -o -name '*.so' \) -print0) - export old_rust_libs - if [[ ${#old_rust_libs[@]} -gt 0 ]]; then - einfo "Found old .rlib and .so files in the old rust lib directory" - else - die "Found no old .rlib and .so files but old rust version is installed. Bailing!" - fi - fi -} - pkg_postinst() { - if has_version -b "dev-lang/rust:stable/$(ver_cut 1-2)"; then - # Be _extra_ careful here as we're removing files from the live filesystem - local f - for f in "${old_rust_libs[@]}"; do - [[ -f ${f} ]] || die "old_rust_libs array contains non-existent file" - local base_name="${f%-*}" - local ext="${f##*.}" - local matching_files=("${base_name}"-*.${ext}) - if [[ ${#matching_files[@]} -ne 2 ]]; then - die "Expected exactly two files matching ${base_name}-\*.rlib, but found ${#matching_files[@]}" - fi - einfo "Removing old .rlib file ${f}" - rm "${f}" || die - done - fi - eselect rust update if has_version dev-debug/gdb || has_version llvm-core/lldb; then diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.82.0-r100.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.84.1-r1.ebuild similarity index 88% rename from sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.82.0-r100.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.84.1-r1.ebuild index 25fbe716b6a..8ae682155bc 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.82.0-r100.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/rust/rust-1.84.1-r1.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 @@ -20,7 +20,7 @@ if [[ ${PV} = *beta* ]]; then else MY_P="rustc-${PV}" SRC="${MY_P}-src.tar.xz" - KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv sparc x86" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" fi DESCRIPTION="Systems programming language from Mozilla" @@ -39,6 +39,7 @@ ALL_LLVM_TARGETS=( AArch64 AMDGPU ARC ARM AVR BPF CSKY DirectX Hexagon Lanai ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" ) LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/(-)?} +# https://github.com/rust-lang/llvm-project/blob/rustc-1.84.0/llvm/CMakeLists.txt ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC CSKY DirectX M68k SPIRV Xtensa ) LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" @@ -134,9 +135,9 @@ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/rust.asc PATCHES=( "${FILESDIR}"/1.78.0-musl-dynamic-linking.patch - "${FILESDIR}"/1.74.1-cross-compile-libz.patch - #"${FILESDIR}"/1.72.0-bump-libc-deps-to-0.2.146.patch # pending refresh + "${FILESDIR}"/1.83.0-cross-compile-libz.patch "${FILESDIR}"/1.67.0-doc-wasm.patch + "${FILESDIR}"/1.84.1-fix-cross.patch # already upstreamed ) clear_vendor_checksums() { @@ -281,6 +282,8 @@ src_configure() { local cm_btype="$(usex debug DEBUG RELEASE)" cat <<- _EOF_ > "${S}"/config.toml + # https://github.com/rust-lang/rust/issues/135358 (bug #947897) + profile = "dist" [llvm] download-ci-llvm = false optimize = $(toml_usex !debug) @@ -369,7 +372,7 @@ src_configure() { parallel-compiler = $(toml_usex parallel-compiler) channel = "$(usex nightly nightly stable)" description = "gentoo" - rpath = false + rpath = true verbose-tests = true optimize-tests = $(toml_usex !debug) codegen-tests = true @@ -631,7 +634,6 @@ src_install() { dosym "../../lib/${PN}/${PV}/share/doc/rust" "/usr/share/doc/${P}" newenvd - "50${P}" <<-_EOF_ - LDPATH="${EPREFIX}/usr/lib/rust/lib-${PV}" MANPATH="${EPREFIX}/usr/lib/rust/man-${PV}" _EOF_ @@ -679,67 +681,8 @@ src_install() { fi } -pkg_preinst() { - # 943308 and friends; basically --keep-going can forget to unmerge old rust - # but the soft blocker allows us to install conflicting files. - # This results in duplicated .{rlib,so} files which confuses rustc and results in - # the need for manual intervention. - if has_version -b "dev-lang/rust:stable/$(ver_cut 1-2)"; then - # we need to find all .{rlib,so} files in the old rust lib directory - # and store them in an array for later use - readarray -d '' old_rust_libs < <( - find "${EROOT}/usr/lib/rust/${PV}/lib/rustlib" \ - -type f \( -name '*.rlib' -o -name '*.so' \) -print0) - export old_rust_libs - if [[ ${#old_rust_libs[@]} -gt 0 ]]; then - einfo "Found old .rlib and .so files in the old rust lib directory" - else - die "Found no old .rlib and .so files but old rust version is installed. Bailing!" - fi - fi -} - pkg_postinst() { - local old_rust="dev-lang/rust:stable/$(ver_cut 1-2)" - if has_version -b ${old_rust}; then - # Be _extra_ careful here as we're removing files from the live filesystem - local f - local only_one_file=() - einfo "Tidying up libraries files from non-slotted \`${old_rust}\`." - for f in "${old_rust_libs[@]}"; do - [[ -f ${f} ]] || die "old_rust_libs array contains non-existent file" - local base_name="${f%-*}" - local ext="${f##*.}" - local matching_files=("${base_name}"-*.${ext}) - case ${#matching_files[@]} in - 2) - einfo "Removing old .${ext}: ${f}" - rm "${f}" || die - ;; - 1) - # Turns out fingerprints are not as unique as we'd thought, _sometimes_ they collide, - # so we may have already installed over the old file. - # We'll warn about this just in case, but it's probably fine. - only_one_file+=( "${matching_files[0]}" ) - ;; - *) - die "Expected one or two files matching ${base_name}-\*.rlib, but found ${#matching_files[@]}" - ;; - esac - done - if [[ ${#only_one_file} -gt 0 ]]; then - einfo "While tidying up non-slotted rust libraries for \`${old_rust}\`," - einfo "the following file(s) did not have a duplicate where one was expected:" - for f in "${only_one_file[@]}"; do - einfo " * ${f}" - done - einfo "" - einfo "This is unlikely to cause problems; the fingerprint for the library ended up being the same." - einfo "However, if you encounter any issues please report them to the Gentoo Rust Team." - fi - fi - eselect rust update if has_version dev-debug/gdb || has_version llvm-core/lldb; then @@ -747,8 +690,13 @@ pkg_postinst() { elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${PV}." fi - optfeature "Emacs support" "app-emacs/rust-mode" - optfeature "Vim support" "app-vim/rust-vim" + if has_version app-editors/emacs; then + optfeature "emacs support for rust" app-emacs/rust-mode + fi + + if has_version app-editors/gvim || has_version app-editors/vim; then + optfeature "vim support for rust" app-vim/rust-vim + fi } pkg_postrm() { diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-8.6.15.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-8.6.15.ebuild index ba493ce1c42..f9caee6586a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-8.6.15.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-8.6.15.ebuild @@ -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 @@ -18,7 +18,7 @@ S="${SPARENT}"/unix LICENSE="tcltk Spencer-99" SLOT="0/8.6" -KEYWORDS="~alpha ~amd64 arm arm64 hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86 ~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="debug +threads" RDEPEND=">=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.191-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.191-r2.ebuild index ea40e46c2a4..59c2bad3f81 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.191-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.191-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 2003-2024 Gentoo Authors +# Copyright 2003-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -65,6 +65,7 @@ PATCHES=( "${FILESDIR}"/${PN}-0.189-musl-aarch64-regs.patch "${FILESDIR}"/${PN}-0.191-musl-macros.patch "${FILESDIR}"/${PN}-0.191-avoid-overriding-libcxx-system-header.patch + "${FILESDIR}"/${PN}-0.191-musl-configure-better-error-h-check.patch ) src_prepare() { diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.192-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.192-r1.ebuild index 66caa21ab47..53172912938 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.192-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.192-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 2003-2024 Gentoo Authors +# Copyright 2003-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -68,6 +68,7 @@ PATCHES=( "${FILESDIR}"/${P}-libelf-static-link-libeu.patch "${FILESDIR}"/${P}-configure-better-error-message.patch "${FILESDIR}"/${P}-stacktrace-maybe-uninit.patch + "${FILESDIR}"/${PN}-0.191-musl-configure-better-error-h-check.patch ) src_prepare() { diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/files/elfutils-0.191-musl-configure-better-error-h-check.patch b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/files/elfutils-0.191-musl-configure-better-error-h-check.patch new file mode 100644 index 00000000000..bdadcbb25d7 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/files/elfutils-0.191-musl-configure-better-error-h-check.patch @@ -0,0 +1,32 @@ +From 43ddbe073025fe2ff454dabb84674ccdbd013487 Mon Sep 17 00:00:00 2001 +From: Alfred Wingate +Date: Wed, 29 Jan 2025 09:32:49 +0200 +Subject: [PATCH] Declare HAVE_ERROR_H only if error symbol is available + +Musl doesn't provide error.h. But there exists a standalone implementation +that installs /usr/include/error.h but requires explicit linkage. This +leads linkage errors later on due to the assumption that error +symbols are provided by the libc. + +Bug: https://bugs.gentoo.org/948878 +Signed-off-by: Alfred Wingate +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 1da2a12c..7a2f2540 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -477,7 +477,7 @@ AC_CHECK_FUNCS([process_vm_readv mremap]) + AS_IF([test "x$ac_cv_func_mremap" = "xno"], + [AC_MSG_WARN([elf_update needs mremap to support ELF_C_RDWR_MMAP])]) + +-AC_CHECK_HEADERS([error.h]) ++AC_CHECK_HEADER([error.h], [AC_CHECK_FUNC([error], AC_DEFINE([HAVE_ERROR_H], [1], [Define if error.h is usable]))]) + AC_CHECK_HEADERS([err.h]) + + dnl for debuginfod concurrency heuristics +-- +2.48.1 + diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libffi/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libffi/Manifest index 8500e7a471b..25ec05a4fe6 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libffi/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libffi/Manifest @@ -1,2 +1,3 @@ DIST libffi-3.4.4.tar.gz 1362394 BLAKE2B 189fe1ffe9507f204581b0ab09995dc7e7b761bb4eac7e338e9f5ff81431aebcef6c182c1839c9f9acb2706697a260c67e6d1351cf7e2aed7c4eb5d694f6f8fd SHA512 88680aeb0fa0dc0319e5cd2ba45b4b5a340bc9b4bcf20b1e0613b39cd898f177a3863aa94034d8e23a7f6f44d858a53dcd36d1bb8dee13b751ef814224061889 DIST libffi-3.4.6.tar.gz 1391684 BLAKE2B af8402a09bdbd59b4e9400d2d71bd5ce98f6f1d981d35d1ab40d77a831b13b32c5bd34ca54ff75999e39f0d8a9c066381fae7a8d6c5216d955e064f929f08b88 SHA512 033d2600e879b83c6bce0eb80f69c5f32aa775bf2e962c9d39fbd21226fa19d1e79173d8eaa0d0157014d54509ea73315ad86842356fc3a303c0831c94c6ab39 +DIST libffi-3.4.7.tar.gz 1393979 BLAKE2B 0dd17b4fd358beb9842889168437443137445a5dba1f0a7e8669ae420d8efb927815c08602c1b1b141acfdfdbaa12b417863402a5c8df5f36519fd3e772d3f37 SHA512 d19f59a5b5d61bd7d9e8a7a74b8bf2e697201a19c247c410c789e93ca8678a4eb9f13c9bee19f129be80ade8514f6b1acb38d66f44d86edd32644ed7bbe31dd6 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libffi/files/libffi-3.4.7-Revert-Fix-x86-ffi64-calls-with-6-gp-and-some-sse-re.patch b/sdk_container/src/third_party/portage-stable/dev-libs/libffi/files/libffi-3.4.7-Revert-Fix-x86-ffi64-calls-with-6-gp-and-some-sse-re.patch new file mode 100644 index 00000000000..a8958b2fefd --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libffi/files/libffi-3.4.7-Revert-Fix-x86-ffi64-calls-with-6-gp-and-some-sse-re.patch @@ -0,0 +1,38 @@ +From 4354fe1434a37b781ff19f5a6be51ec4e982ad5a Mon Sep 17 00:00:00 2001 +Message-ID: <4354fe1434a37b781ff19f5a6be51ec4e982ad5a.1739062746.git.sam@gentoo.org> +From: Sam James +Date: Sun, 9 Feb 2025 00:54:28 +0000 +Subject: [PATCH] Revert "Fix x86/ffi64 calls with 6 gp and some sse registers + (#848)" + +This reverts commit d21881f55ed4a44d464c9091871e69b0bb47611a. + +Bug: https://github.com/libffi/libffi/issues/879 +Bug: https://bugs.gentoo.org/949051 +Signed-off-by: Sam James +--- a/src/x86/ffi64.c ++++ b/src/x86/ffi64.c +@@ -654,7 +654,7 @@ ffi_call_int (ffi_cif *cif, void (*fn)(void), void *rvalue, + break; + default: + reg_args->gpr[gprcount] = 0; +- memcpy (®_args->gpr[gprcount], a, sizeof(UINT64)); ++ memcpy (®_args->gpr[gprcount], a, size); + } + gprcount++; + break; +--- a/testsuite/libffi.call/struct_int_float.c ++++ b/testsuite/libffi.call/struct_int_float.c +@@ -5,6 +5,7 @@ + Originator: kellda */ + + /* { dg-do run } */ ++/* { dg-skip-if "libffi bug #879" { *-*-* } { "*" } } */ + #include "ffitest.h" + + typedef struct + +base-commit: 1716f81e9a115d340429504563bc8e7fb2eeef2b +-- +2.48.1 + diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libffi/libffi-3.4.6-r3.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libffi/libffi-3.4.6-r3.ebuild new file mode 100644 index 00000000000..91b74d8b3c1 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libffi/libffi-3.4.6-r3.ebuild @@ -0,0 +1,94 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib-minimal preserve-libs + +MY_PV=${PV/_rc/-rc} +MY_P=${PN}-${MY_PV} + +DESCRIPTION="Portable, high level programming interface to various calling conventions" +HOMEPAGE="https://sourceware.org/libffi/" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/libffi/libffi" + inherit git-r3 +else + SRC_URI="https://github.com/libffi/libffi/releases/download/v${MY_PV}/${MY_P}.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 + +S="${WORKDIR}"/${MY_P} + +LICENSE="MIT" +# This is a core package which is depended on by e.g. Python. +# Please use preserve-libs.eclass in pkg_{pre,post}inst to cover users +# with FEATURES="-preserved-libs" or another package manager if SONAME changes. +SLOT="0/8" # SONAME=libffi.so.8 +IUSE="debug exec-static-trampoline pax-kernel static-libs test" + +RESTRICT="!test? ( test )" +BDEPEND="test? ( dev-util/dejagnu )" + +PATCHES=( + "${FILESDIR}"/${P}-arm64-bti.patch + "${FILESDIR}"/${P}-arm64-bti-spelling.patch + "${FILESDIR}"/${P}-arm64-support-pac.patch + "${FILESDIR}"/${P}-arm64-fix-build.patch + "${FILESDIR}"/${P}-sparc-struct-targs.patch + "${FILESDIR}"/${P}-test-typo.patch + "${FILESDIR}"/${P}-arm64-cfi.patch + "${FILESDIR}"/${P}-asan.patch + "${FILESDIR}"/${P}-regenerate-autotools.patch + "${FILESDIR}"/${P}-c23-tests.patch +) + +src_prepare() { + default + + if [[ ${CHOST} == arm64-*-darwin* ]] ; then + # ensure we use aarch64 asm, not x86 on arm64 + sed -i -e 's/aarch64\*-\*-\*/arm64*-*-*|&/' \ + configure configure.host || die + fi +} + +multilib_src_configure() { + # --includedir= path maintains a few properties: + # 1. have stable name across libffi versions: some packages like + # dev-lang/ghc or kde-frameworks/networkmanager-qt embed + # ${includedir} at build-time. Don't require those to be + # rebuilt unless SONAME changes. bug #695788 + # + # We use /usr/.../${PN} (instead of former /usr/.../${P}). + # + # 2. have ${ABI}-specific location as ffi.h is target-dependent. + # + # We use /usr/$(get_libdir)/... to have ABI identifier. + ECONF_SOURCE="${S}" econf \ + --includedir="${EPREFIX}"/usr/$(get_libdir)/${PN}/include \ + --disable-multi-os-directory \ + $(use_enable static-libs static) \ + $(use_enable exec-static-trampoline exec-static-tramp) \ + $(use_enable pax-kernel pax_emutramp) \ + $(use_enable debug) +} + +multilib_src_test() { + emake -Onone check +} + +multilib_src_install_all() { + einstalldocs + find "${ED}" -name "*.la" -delete || die +} + +pkg_preinst() { + preserve_old_lib /usr/$(get_libdir)/libffi.so.7 +} + +pkg_postinst() { + preserve_old_lib_notify /usr/$(get_libdir)/libffi.so.7 +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libffi/libffi-3.4.7.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libffi/libffi-3.4.7.ebuild new file mode 100644 index 00000000000..072cb92af74 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libffi/libffi-3.4.7.ebuild @@ -0,0 +1,87 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib-minimal preserve-libs + +MY_PV=${PV/_rc/-rc} +MY_P=${PN}-${MY_PV} + +DESCRIPTION="Portable, high level programming interface to various calling conventions" +HOMEPAGE="https://sourceware.org/libffi/" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/libffi/libffi" + inherit autotools git-r3 +else + SRC_URI="https://github.com/libffi/libffi/releases/download/v${MY_PV}/${MY_P}.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 + +S="${WORKDIR}"/${MY_P} + +LICENSE="MIT" +# This is a core package which is depended on by e.g. Python. +# Please use preserve-libs.eclass in pkg_{pre,post}inst to cover users +# with FEATURES="-preserved-libs" or another package manager if SONAME changes. +SLOT="0/8" # SONAME=libffi.so.8 +IUSE="debug +exec-static-trampoline pax-kernel static-libs test" + +RESTRICT="!test? ( test )" +BDEPEND="test? ( dev-util/dejagnu )" + +PATCHES=( + "${FILESDIR}"/${PN}-3.4.7-Revert-Fix-x86-ffi64-calls-with-6-gp-and-some-sse-re.patch +) + +src_prepare() { + default + + [[ ${PV} == 9999 ]] && eautoreconf + + if [[ ${CHOST} == arm64-*-darwin* ]] ; then + # ensure we use aarch64 asm, not x86 on arm64 + sed -i -e 's/aarch64\*-\*-\*/arm64*-*-*|&/' \ + configure configure.host || die + fi +} + +multilib_src_configure() { + # --includedir= path maintains a few properties: + # 1. have stable name across libffi versions: some packages like + # dev-lang/ghc or kde-frameworks/networkmanager-qt embed + # ${includedir} at build-time. Don't require those to be + # rebuilt unless SONAME changes. bug #695788 + # + # We use /usr/.../${PN} (instead of former /usr/.../${P}). + # + # 2. have ${ABI}-specific location as ffi.h is target-dependent. + # + # We use /usr/$(get_libdir)/... to have ABI identifier. + ECONF_SOURCE="${S}" econf \ + --includedir="${EPREFIX}"/usr/$(get_libdir)/${PN}/include \ + --disable-multi-os-directory \ + $(use_enable static-libs static) \ + $(use_enable exec-static-trampoline exec-static-tramp) \ + $(use_enable pax-kernel pax_emutramp) \ + $(use_enable debug) +} + +multilib_src_test() { + emake -Onone check +} + +multilib_src_install_all() { + einstalldocs + find "${ED}" -name "*.la" -delete || die +} + +pkg_preinst() { + preserve_old_lib /usr/$(get_libdir)/libffi.so.7 +} + +pkg_postinst() { + preserve_old_lib_notify /usr/$(get_libdir)/libffi.so.7 +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libffi/libffi-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libffi/libffi-9999.ebuild index 51d1f5c466e..072cb92af74 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libffi/libffi-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libffi/libffi-9999.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 @@ -13,7 +13,7 @@ HOMEPAGE="https://sourceware.org/libffi/" if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/libffi/libffi" - inherit git-r3 + inherit autotools git-r3 else SRC_URI="https://github.com/libffi/libffi/releases/download/v${MY_PV}/${MY_P}.tar.gz" @@ -27,14 +27,20 @@ LICENSE="MIT" # Please use preserve-libs.eclass in pkg_{pre,post}inst to cover users # with FEATURES="-preserved-libs" or another package manager if SONAME changes. SLOT="0/8" # SONAME=libffi.so.8 -IUSE="debug exec-static-trampoline pax-kernel static-libs test" +IUSE="debug +exec-static-trampoline pax-kernel static-libs test" RESTRICT="!test? ( test )" BDEPEND="test? ( dev-util/dejagnu )" +PATCHES=( + "${FILESDIR}"/${PN}-3.4.7-Revert-Fix-x86-ffi64-calls-with-6-gp-and-some-sse-re.patch +) + src_prepare() { default + [[ ${PV} == 9999 ]] && eautoreconf + if [[ ${CHOST} == arm64-*-darwin* ]] ; then # ensure we use aarch64 asm, not x86 on arm64 sed -i -e 's/aarch64\*-\*-\*/arm64*-*-*|&/' \ diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.11.0-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.11.0-r2.ebuild index f1ad0491785..b3fba8d0d33 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.11.0-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.11.0-r2.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/libpcre2/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/Manifest index 44e0ea377ae..be23a2aa835 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/Manifest @@ -1,7 +1,5 @@ DIST libpcre2-10.44-32bit-tests.patch.xz 7024 BLAKE2B d8de8443a9ec165aa3b57384518c8bba06ded1c3d07d03d1451db07f4df13ee2514d055d4a4771162923a9845ac4694dd588ccdc773f0f3d013d7377581fe8b4 SHA512 bf8724db31b8cbdc631904cfdbcd1b2e66efa31f958a8919de0f3f03e129410e64e1274d28d0406c70b8a8ef49c3ed47712368bf9fd9ba2d3203afe4d4b104b7 -DIST pcre2-10.42.tar.bz2 1799866 BLAKE2B 40aa096745548c489a00ead87a191a4d24ecd924a5b8f00401c1273176de15ccb23510882467c8e2b5c1256b97db46fba5fcdfbd9f0d61d86a29d74bb4bca7a0 SHA512 72fbde87fecec3aa4b47225dd919ea1d55e97f2cbcf02aba26e5a0d3b1ffb58c25a80a9ef069eb99f9cf4e41ba9604ad06a7ec159870e1e875d86820e12256d3 -DIST pcre2-10.42.tar.bz2.sig 310 BLAKE2B 2125d7e23f7e75847573e3caeb8d55da5d8e0df3d166bf8b638b998aebacaefb4e88df7e813d6977af2dc7d82c93b7179ad0043c4f46fc4e06d99d214b0b7fcf SHA512 22ce3c7903835b1cf835ac6cfa725badecc982f1504382e62525c88307b2e3bd8951f2221fdd3d73920843e69f714b6df99fe741069e610f1f809087512a31f7 -DIST pcre2-10.43.tar.bz2 1905255 BLAKE2B f87f9f36dd6a806cdba1f077f51b53da2583f1898f83e41d594622b28ac8efbc1b2d122b752a9d6cd461fe0e3c7c85ee93358443df518a336da4ee9d72cca808 SHA512 8ac1520c32e9e5672404aaf6104e23c9ee5c3c28ad28ff101435599d813cbb20e0491a3fd34e012b4411b3e0366a4c6dfa3f02d093acaa6ff0ab25478bb7ade9 -DIST pcre2-10.43.tar.bz2.sig 310 BLAKE2B 5625358ec542a2c808be852437ca47a4df005068759e35b95ba20a55e5d1647b0953df6684e24b6a9de1442c6d6784e45fb1665d48c904dda4ffa16154437c7d SHA512 5edb16176ea4335ab1d35f1b77837c8b6b836f346e379e6b5762e1f4463cb3fb55557fee4dc6d0e9b2084766cdba727c9503830031bb92af91f9706e11389d81 DIST pcre2-10.44.tar.bz2 1928086 BLAKE2B fb06228f8bdc5906ef4f19d7d677f1009070855149d9ad3f807cfcd164f5cb6165f96e074fedc3942226d4b29edf4b29fab6cde2f2ba58bf6da282730941412b SHA512 ee91cc10a2962bc7818b03d368df3dd31f42ea9a7260ae51483ea8cd331b7431e36e63256b0adc213cc6d6741e7c90414fd420622308c0ae3fcb5dd878591be2 DIST pcre2-10.44.tar.bz2.sig 310 BLAKE2B a03943d4b04af319ca18992188c9fdd089fc20ef35207b09f2c859ab0090401a9bc140c653ee68a542984d26c0ec59f3ba72b0f9a9d6b3ae322b0823a440a21c SHA512 12dca6fb6ac3dbbe9e3625214b333d20d4ece4c2efa73ada292b178b17ea3640b4f068f2b4da2bea15f5368213e123837dea4e988170d1c6bf5b7afe04b3f8bc +DIST pcre2-10.45.tar.bz2 2072403 BLAKE2B ec8a76cb28ef6680f8655828462551baf4e48019ff01e40bda2732b43b849bd69f8321238d7fa8f6b650ec88f7229a72928ad95d57423643f995d95264f5a4db SHA512 4c1f0cf793624516d7eeb15745d6c07c9f678dd2c2b349062c6b614e88bf42262972d133576e85140dee2a882984aaf2d688953fc9c69ec7105b2daaeae89845 +DIST pcre2-10.45.tar.bz2.sig 566 BLAKE2B 21a7fc4d6a116c5fde78a8abc99445bd3ce8da70083e65b4117cec2520ed10fee810b8b82226cecb1e5649643be96bb8c89ec80f9dd907bbf95373477febc83d SHA512 ff8a0f036d98b902fa2476cf5875089685cc712294629fc385c8c84c8288674e83f278fe36141b4c109eb68a64b3e6a29d0049c799bd5ab77cf15142de3c8e20 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/files/libpcre2-10.43-fix-loong-sljit.patch b/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/files/libpcre2-10.43-fix-loong-sljit.patch deleted file mode 100644 index 30fe49410bd..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/files/libpcre2-10.43-fix-loong-sljit.patch +++ /dev/null @@ -1,30 +0,0 @@ -https://github.com/zherczeg/sljit/commit/7a821cd714d132e46e748275a80d402beea24764 -with file path adjusted to libpcre2 layout - -From: lrzlin <54242813+lrzlin@users.noreply.github.com> -Date: Wed, 10 Jan 2024 07:13:55 +0800 -Subject: [PATCH] Add LoongArch float to integer conversion special cases - (#226) - ---- a/src/sljit/sljitConfigInternal.h -+++ b/src/sljit/sljitConfigInternal.h -@@ -198,7 +198,7 @@ extern "C" { - /* Type of public API functions. */ - /*********************************/ - --#ifndef SLJIT_API_FUNC_ATTRIBUTE -+#ifndef SLJIT_API_FUNC_ATTRIBUTE - #if (defined SLJIT_CONFIG_STATIC && SLJIT_CONFIG_STATIC) - /* Static ABI functions. For all-in-one programs. */ - -@@ -399,6 +399,10 @@ typedef double sljit_f64; - #define SLJIT_CONV_MAX_FLOAT SLJIT_CONV_RESULT_MAX_INT - #define SLJIT_CONV_MIN_FLOAT SLJIT_CONV_RESULT_MIN_INT - #define SLJIT_CONV_NAN_FLOAT SLJIT_CONV_RESULT_MIN_INT -+#elif (defined SLJIT_CONFIG_LOONGARCH && SLJIT_CONFIG_LOONGARCH) -+#define SLJIT_CONV_MAX_FLOAT SLJIT_CONV_RESULT_MAX_INT -+#define SLJIT_CONV_MIN_FLOAT SLJIT_CONV_RESULT_MIN_INT -+#define SLJIT_CONV_NAN_FLOAT SLJIT_CONV_RESULT_ZERO - #else - #error "Result for float to integer conversion is not defined" - #endif diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/libpcre2-10.42-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/libpcre2-10.42-r1.ebuild deleted file mode 100644 index 7a0d032915a..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/libpcre2-10.42-r1.ebuild +++ /dev/null @@ -1,97 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/philiphazel.asc -inherit libtool multilib-minimal usr-ldscript verify-sig - -MY_P="pcre2-${PV/_rc/-RC}" - -DESCRIPTION="Perl-compatible regular expression library" -HOMEPAGE="https://www.pcre.org/" -if [[ ${PV} != *_rc* ]] ; then - # Only the final releases are available here. - SRC_URI="https://github.com/PCRE2Project/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2 - https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2 - verify-sig? ( https://github.com/PCRE2Project/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2.sig )" -else - SRC_URI="https://ftp.pcre.org/pub/pcre/Testing/${MY_P}.tar.bz2" -fi - -S="${WORKDIR}/${MY_P}" - -LICENSE="BSD" -SLOT="0/3" # libpcre2-posix.so 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" -IUSE="bzip2 +jit libedit +pcre16 +pcre32 +readline static-libs unicode valgrind zlib" -REQUIRED_USE="?? ( libedit readline )" - -RDEPEND=" - bzip2? ( app-arch/bzip2 ) - libedit? ( dev-libs/libedit ) - readline? ( sys-libs/readline:= ) - zlib? ( sys-libs/zlib ) -" -DEPEND=" - ${RDEPEND} - valgrind? ( dev-debug/valgrind ) -" -BDEPEND=" - virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-philiphazel ) -" - -MULTILIB_CHOST_TOOLS=( - /usr/bin/pcre2-config -) - -PATCHES=( - "${FILESDIR}"/${PN}-10.10-000-Fix-multilib.patch -) - -src_prepare() { - default - - elibtoolize -} - -multilib_src_configure() { - local myeconfargs=( - --enable-pcre2-8 - --enable-shared - $(multilib_native_use_enable bzip2 pcre2grep-libbz2) - $(multilib_native_use_enable libedit pcre2test-libedit) - $(multilib_native_use_enable readline pcre2test-libreadline) - $(multilib_native_use_enable valgrind) - $(multilib_native_use_enable zlib pcre2grep-libz) - $(use_enable jit) - $(use_enable jit pcre2grep-jit) - $(use_enable pcre16 pcre2-16) - $(use_enable pcre32 pcre2-32) - $(use_enable static-libs static) - $(use_enable unicode) - ) - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} - -multilib_src_compile() { - emake V=1 $(multilib_is_native_abi || echo "bin_PROGRAMS=") -} - -multilib_src_test() { - emake check VERBOSE=yes -} - -multilib_src_install() { - emake \ - DESTDIR="${D}" \ - $(multilib_is_native_abi || echo "bin_PROGRAMS= dist_html_DATA=") \ - install - multilib_is_native_abi && gen_usr_ldscript -a pcre2-posix pcre2-8 -} - -multilib_src_install_all() { - find "${ED}" -type f -name "*.la" -delete || die -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/libpcre2-10.42-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/libpcre2-10.42-r2.ebuild deleted file mode 100644 index 020533611b1..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/libpcre2-10.42-r2.ebuild +++ /dev/null @@ -1,96 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/philiphazel.asc -inherit libtool multilib-minimal verify-sig - -MY_P="pcre2-${PV/_rc/-RC}" - -DESCRIPTION="Perl-compatible regular expression library" -HOMEPAGE="https://www.pcre.org/" -if [[ ${PV} != *_rc* ]] ; then - # Only the final releases are available here. - SRC_URI="https://github.com/PCRE2Project/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2 - https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2 - verify-sig? ( https://github.com/PCRE2Project/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2.sig )" -else - SRC_URI="https://ftp.pcre.org/pub/pcre/Testing/${MY_P}.tar.bz2" -fi - -S="${WORKDIR}/${MY_P}" - -LICENSE="BSD" -SLOT="0/3" # libpcre2-posix.so 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" -IUSE="bzip2 +jit libedit +pcre16 +pcre32 +readline static-libs unicode valgrind zlib" -REQUIRED_USE="?? ( libedit readline )" - -RDEPEND=" - bzip2? ( app-arch/bzip2 ) - libedit? ( dev-libs/libedit ) - readline? ( sys-libs/readline:= ) - zlib? ( sys-libs/zlib ) -" -DEPEND=" - ${RDEPEND} - valgrind? ( dev-debug/valgrind ) -" -BDEPEND=" - virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-philiphazel ) -" - -MULTILIB_CHOST_TOOLS=( - /usr/bin/pcre2-config -) - -PATCHES=( - "${FILESDIR}"/${PN}-10.10-000-Fix-multilib.patch -) - -src_prepare() { - default - - elibtoolize -} - -multilib_src_configure() { - local myeconfargs=( - --enable-pcre2-8 - --enable-shared - $(multilib_native_use_enable bzip2 pcre2grep-libbz2) - $(multilib_native_use_enable libedit pcre2test-libedit) - $(multilib_native_use_enable readline pcre2test-libreadline) - $(multilib_native_use_enable valgrind) - $(multilib_native_use_enable zlib pcre2grep-libz) - $(use_enable jit) - $(use_enable jit pcre2grep-jit) - $(use_enable pcre16 pcre2-16) - $(use_enable pcre32 pcre2-32) - $(use_enable static-libs static) - $(use_enable unicode) - ) - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} - -multilib_src_compile() { - emake V=1 $(multilib_is_native_abi || echo "bin_PROGRAMS=") -} - -multilib_src_test() { - emake check VERBOSE=yes -} - -multilib_src_install() { - emake \ - DESTDIR="${D}" \ - $(multilib_is_native_abi || echo "bin_PROGRAMS= dist_html_DATA=") \ - install -} - -multilib_src_install_all() { - find "${ED}" -type f -name "*.la" -delete || die -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/libpcre2-10.44-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/libpcre2-10.44-r1.ebuild index a8241ab04ee..af9e44cfe85 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/libpcre2-10.44-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/libpcre2-10.44-r1.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 @@ -9,7 +9,7 @@ inherit libtool multilib multilib-minimal toolchain-funcs verify-sig MY_P="pcre2-${PV/_rc/-RC}" DESCRIPTION="Perl-compatible regular expression library" -HOMEPAGE="https://www.pcre.org/" +HOMEPAGE="https://pcre2project.github.io/pcre2/ https://www.pcre.org/" SRC_URI=" https://github.com/PCRE2Project/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2 https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/libpcre2-10.43.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/libpcre2-10.45.ebuild similarity index 70% rename from sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/libpcre2-10.43.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/libpcre2-10.45.ebuild index 65eaa84b3ca..eaf3934f098 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/libpcre2-10.43.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libpcre2/libpcre2-10.45.ebuild @@ -1,15 +1,15 @@ -# Copyright 1999-2024 Gentoo Authors +# 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/philiphazel.asc -inherit libtool multilib-minimal verify-sig +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/nicholaswilson.asc +inherit libtool multilib multilib-minimal toolchain-funcs verify-sig MY_P="pcre2-${PV/_rc/-RC}" DESCRIPTION="Perl-compatible regular expression library" -HOMEPAGE="https://www.pcre.org/" +HOMEPAGE="https://pcre2project.github.io/pcre2/ https://www.pcre.org/" SRC_URI=" https://github.com/PCRE2Project/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2 https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2 @@ -21,7 +21,7 @@ S="${WORKDIR}/${MY_P}" LICENSE="BSD" SLOT="0/3" # libpcre2-posix.so version if [[ ${PV} != *_rc* ]] ; 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="bzip2 +jit libedit +pcre16 +pcre32 +readline static-libs unicode valgrind zlib" REQUIRED_USE="?? ( libedit readline )" @@ -38,7 +38,7 @@ DEPEND=" " BDEPEND=" virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-philiphazel ) + verify-sig? ( sec-keys/openpgp-keys-nicholaswilson ) " MULTILIB_CHOST_TOOLS=( @@ -47,7 +47,6 @@ MULTILIB_CHOST_TOOLS=( PATCHES=( "${FILESDIR}"/${PN}-10.10-000-Fix-multilib.patch - "${FILESDIR}"/${PN}-10.43-fix-loong-sljit.patch ) src_prepare() { @@ -89,6 +88,13 @@ multilib_src_install() { DESTDIR="${D}" \ $(multilib_is_native_abi || echo "bin_PROGRAMS= dist_html_DATA=") \ install + + # bug #934977 + if ! tc-is-static-only && [[ ! -f "${ED}/usr/$(get_libdir)/libpcre2-8$(get_libname)" ]] ; then + eerror "Sanity check for libpcre2-8$(get_libname) failed." + eerror "Shared library wasn't built, possible libtool bug" + [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]] && die "libpcre2-8$(get_libname) not found in build, aborting" + fi } multilib_src_install_all() { diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/Manifest index 002fb8ad17a..576a9c7c86f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/Manifest @@ -1,2 +1,4 @@ DIST libtasn1-4.19.0.tar.gz 1786576 BLAKE2B 6e8232590cd87da3bfd9182ed44eccdfbdfcc85e88d8cf19fffdb3d600e04694b77079b95bbd822d2c3fff29458ddae0f0440f9c1c19c711923a2507bd19270f SHA512 287f5eddfb5e21762d9f14d11997e56b953b980b2b03a97ed4cd6d37909bda1ed7d2cdff9da5d270a21d863ab7e54be6b85c05f1075ac5d8f0198997cf335ef4 DIST libtasn1-4.19.0.tar.gz.sig 228 BLAKE2B f45b8c53844fad4d1044ef6915d88337affb0287973a0ffab2d77a6a61c850cebdea6904f077fcc13a8bc29ba7cbbef7cdf2a5e325c8180d574020eb3cb9f432 SHA512 e0417625f8df22c6421914bf2d4f19d7f27260c24c04f50e59669681f326debe06ddef9dc5a2e20fda50feb30bbbf3f41597e64961257304ec2c407aa76d107e +DIST libtasn1-4.20.0.tar.gz 1783873 BLAKE2B 3219b48e691abd7f6f4e32164ab708bc7c29832a2a7669aa03751d4a519dffb78d5a5f94530a3f35cd6516b39400da9e634d7f46245ab934465c305a1d387561 SHA512 0c0660085f5e80537aa3d65197967029be6cc5e27d7029789713902989c1694fdb49421ae0415b79b953e11893bb4bdaada85f7aff847dd0bb4075c91887e7b4 +DIST libtasn1-4.20.0.tar.gz.sig 1223 BLAKE2B c9bff7ae5b7f4939e4df1c0d67b634a1fde57554a5dae26a20fbe600dd9d5b79239a04d1531acdf1f6dedf2eb06bc2bab46c432dbe6c9ad991d0e06b41dcf268 SHA512 bb5da128c20ed8f1e7c681c779ac3d2e455c661d779a4a7a70a6cabc1ea4139df9d0acfd145545acc8fe41df6490fd7d3c2df4b8d7560891291abbf56ac3afdb diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.20.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.20.0.ebuild new file mode 100644 index 00000000000..adaefbd8d21 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.20.0.ebuild @@ -0,0 +1,54 @@ +# 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/libtasn1.asc +inherit multilib-minimal libtool verify-sig + +DESCRIPTION="ASN.1 library" +HOMEPAGE="https://www.gnu.org/software/libtasn1/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" +SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.gz.sig )" + +LICENSE="LGPL-2.1+" +SLOT="0/6" # subslot = libtasn1 soname 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" +IUSE="static-libs test" + +RESTRICT="!test? ( test )" + +BDEPEND=" + sys-apps/help2man + app-alternatives/yacc + verify-sig? ( >=sec-keys/openpgp-keys-libtasn1-20250209 ) +" + +DOCS=( AUTHORS ChangeLog NEWS README.md THANKS ) + +src_prepare() { + default + + # For Solaris shared library + elibtoolize +} + +multilib_src_configure() { + # -fanalyzer substantially slows down the build and isn't useful for + # us. It's useful for upstream as it's static analysis, but it's not + # useful when just getting something built. + export gl_cv_warn_c__fanalyzer=no + + local myeconfargs=( + --disable-valgrind-tests + $(use_enable static-libs static) + ) + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_install_all() { + einstalldocs + + find "${ED}" -type f -name '*.la' -delete || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/Manifest index 0182ccc2ccb..5327cca2414 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/Manifest @@ -1,6 +1,4 @@ -DIST libuv-1.48.0.tar.gz 1314877 BLAKE2B 7595797ab732109516ce280fa2efa3474e82e78890087408c7f5b1457ce8f44e53878581bb8d473795e298d7390dd8a269dd2e8970e10b50a2c0bbe1cce187cc SHA512 7ae3a4c02f654a26056db1541e52ccc4c54aaea39c33585f0cf6949af997d0a0a29f30a294c8df6e92f6f6af7ce64c2766b1a2cc67f342e3e139cd55b7326c94 -DIST libuv-1.48.0.tar.gz.sig 833 BLAKE2B f0982f7723fa81afe3fe668fc4497fb182a6093f38b185aba4f7359a3248062e7953acaba3f7fd739c9ff5b590664e4b7b81ee138442ffccd46c989c0a10345b SHA512 3a6441bb250badb7bb54a102dd7a1cf47ee4e0ed93ff0369c5b6a4b1e5440e613d85530f19c9ebdc586a97dfe1e06af09e2f90c13448e875dbaee1c703efa955 -DIST libuv-1.49.1.tar.gz 1332225 BLAKE2B 7a56817c94060629456a53026c142d74d72d2777a4e433bd370d76c93c8ae7a775d9cb9362241ce563948dd01a2b4bbe5d3bc10c014687fa9aff38b2fde98ccf SHA512 f0a55fd5e91b87418ec22b0bd607a9b46510296c8a33600878a6454033b0d1bc7b4b674255007e94b38057635c024f7cbff187e7c0f0e0d627604636c3ad3497 -DIST libuv-1.49.1.tar.gz.sig 833 BLAKE2B 826f6c97806a474c6b1f77b11b553d5f26d1c25261d9f25f4318552e1e4291cff56a4d5c9a7059ad938dc792e7015eab11d84132553e66c4ac164a847eb9d6dd SHA512 49ffdb678afb5c1c899745102e7d884d4a7bb933e88066cff82ef7c939bdbde5b2fa8e22094cdb75ed77697eef559dfa7f22d66d6a65b3a43a8a9d2cca4d7fd3 DIST libuv-1.49.2.tar.gz 1331024 BLAKE2B a4a3367053ab3d5b87c502ef4a25b569fc829b3580005333adf2d3f02a799e6fefec9b6c2cf354eb0e8fe003eff4d3bd5d0f91980dd44702595bfdc54a9fad66 SHA512 ecb94edb9393d1f3ace1e01e89a3f693fb813c1ed21a3c706409bdfd8821885e7713f8d6b043d97ab202cbea9edc99ad6672d1144858802dc92031800ffba1a1 DIST libuv-1.49.2.tar.gz.sig 833 BLAKE2B fe7ac42aad297f71e36995c665e445a82f8bb2fe6b2270fc7581dc1cf321c0bfc9c4238ad58b8666aec531c590c4df07268315980cf17406a5d448f2c5dc6d0b SHA512 66a6f345bfc16a5a673b8e7eb696e731b42f2cc9cb10f2a9eff74ca2ea5f47c7809f1ecea6182863531b776fef8bef8cefee3c7295d1976bd47f0f30afc455cf +DIST libuv-1.50.0.tar.gz 1340083 BLAKE2B 7acd891822157671eeef4ff3dbf8fdf29412faa65ad7f5a196218eb39f44c228757fe0f0df6f3e522ed50cbff856abd0a556ebcb48af3718307072cac855d82a SHA512 b153d019c630831819913ccd0615c22737df49125da533f86db27f24a519937ed64113ceb6445d731d133e2d97b43b6949877e6078c4459d50ea90d2af4a9da9 +DIST libuv-1.50.0.tar.gz.sig 833 BLAKE2B bb9819cb7da07589bf4e1693dbd7f533e6a5ce899fbe0893a448ef74949191ed71fb34d19c80f7eacde94395c62a525f7e9d05320240d5a72b1db2e77cbe1979 SHA512 91d3b876b49fe1205cb1a8448925db1f6256dad19c35e350b80fd08fa2ec9e15f8ef7d003cdea4794f22b34e12fca0b604deb4412227a2d583b77d193ff8e477 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.48.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.48.0.ebuild deleted file mode 100644 index 4e6ae3cdc86..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.48.0.ebuild +++ /dev/null @@ -1,62 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libuv.asc -inherit autotools verify-sig - -DESCRIPTION="Cross-platform asychronous I/O" -HOMEPAGE="https://github.com/libuv/libuv" - -if [[ ${PV} = 9999* ]]; then - EGIT_REPO_URI="https://github.com/libuv/libuv.git" - inherit git-r3 -else - SRC_URI=" - https://dist.libuv.org/dist/v${PV}/libuv-v${PV}.tar.gz -> ${P}.tar.gz - verify-sig? ( https://dist.libuv.org/dist/v${PV}/libuv-v${PV}.tar.gz.sign -> ${P}.tar.gz.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" - S="${WORKDIR}/${PN}-v${PV}" -fi - -LICENSE="BSD BSD-2 ISC MIT" -SLOT="0/1" - -BDEPEND=" - dev-build/libtool - virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-libuv ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-1.48.0-test-thread-priority-portage.patch -) - -src_prepare() { - default - - if [[ ${CHOST} == *-darwin* && ${CHOST##*darwin} -le 9 ]] ; then - eapply "${FILESDIR}"/${PN}-1.41.0-darwin.patch - fi - - # Upstream fails to ship a configure script and has missing m4 file. - echo "m4_define([UV_EXTRA_AUTOMAKE_FLAGS], [serial-tests])" \ - > m4/libuv-extra-automake-flags.m4 || die - eautoreconf -} - -src_configure() { - local myeconfargs=( - cc_cv_cflags__g=no - ) - - econf "${myeconfargs[@]}" -} - -src_install() { - default - - find "${ED}" -name '*.la' -delete || die -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.49.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.50.0.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.49.1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.50.0.ebuild index 859c1fae34d..a3ae6ee3208 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.49.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.50.0.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/dev-libs/libxml2/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/Manifest index 4c1b306daea..19b4e5e6d89 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/Manifest @@ -1,6 +1,4 @@ -DIST libxml2-2.11.8.tar.xz 2628212 BLAKE2B 7a9f62b9e6628e71462b0ae2a43947e398c8b948d57280ee5ac64a7cd0a13d39aa4cc55148421f999e5a04e19ca1ae2cb84884f85f3e22559cb45d8a7fca7d45 SHA512 b8c38365172b9f46e2da4dd696f5df4f917d05cc33456079d3d042578543c0f951da207361958ba8699a9f7256889f063737ba80dba8bb9720c8434be1ca723f DIST libxml2-2.11.9.tar.xz 2627500 BLAKE2B 3ecab5df9017673f31e8bbf737273d72cb4475c3a6f0d0669e7f074b0e4d378460df2e175fe4991c675d8462a2e4d4607c151ed11937a0c8a3a4e81107102f67 SHA512 d5c34ed56525f4c6b61d7055fe4219d7a3337077b4fb27081682e9f8350f1542b4476ac42f2754e590b371a4d9a00921cebf20c10b299371b05b8391e7fa7c33 -DIST libxml2-2.12.8.tar.xz 2643728 BLAKE2B d26fe61e913e73c923eb8140a9080d6b70078ce45e94fe61d1ca1b8919d5b86feb7f14156f5a8b06ea06a03a96a242ce3a32e8d61169cfa8bde587888438627b SHA512 59baac9a82a734045112be6da12bbbe80a71575145424c2225e4bd9f8d54e53c674dcbc9576eb55f646632335702e7f0b1928f96a851159ace9b26f677fd3d77 DIST libxml2-2.12.9.tar.xz 2643456 BLAKE2B 769ff564e62c1c0167e5334879ac9e912491c651b6d48a9d21db569002ae86bc4e4490098710a614bc90bbefc44a9dd0af6b02958041dd3bffccf8b5ddc0f7ca SHA512 6e4544ed3ab36d6cb7481d465ceabf223444739d7f41de3e1927309b8716a5eac85520b9bbaf69913f53e052fbfaf68bf27372074daaa24dca9463ce728b4173 DIST libxml2-2.13.5.tar.xz 2586872 BLAKE2B 46c280630638e2c8009c593bbbcf90ccbfffe9ddcc99987c4d91c2223043759f2b4d6511b31b2357c5250ac3b40d96ef05c17b4d2adc61972665f8a0d899dfe8 SHA512 acaecd4e3e95136d1c621f9e5f33976ebca87dfbf83859459e339597c3c57fbc47508a7de16af7fbf0e7e7c59fd6f9a82b2e732e1dd12efd79d666bac64ecf4e DIST xmlts20130923.tar.gz 641522 BLAKE2B 63a47bc69278ef510cd0b3779aed729e1b309e30efa0015d28ed051cc03f9dfddb447ab57b07b3393e8f47393d15473b0e199c34cb1f5f746b15ddfaa55670be SHA512 d5c4d26b324ed21f4e0641cd7f8b76dbf9de80df8b519982e44d41c960df29fd03618e02e9693b2d11ad06d19c4a965274c95a048ec3b9653eacb919a7f8b733 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.11.8.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.11.8.ebuild deleted file mode 100644 index e4810b5b930..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.11.8.ebuild +++ /dev/null @@ -1,200 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Note: Please bump in sync with dev-libs/libxslt - -PYTHON_COMPAT=( python3_{10..12} ) -PYTHON_REQ_USE="xml(+)" -inherit flag-o-matic python-r1 multilib-minimal - -XSTS_HOME="http://www.w3.org/XML/2004/xml-schema-test-suite" -XSTS_NAME_1="xmlschema2002-01-16" -XSTS_NAME_2="xmlschema2004-01-14" -XSTS_TARBALL_1="xsts-2002-01-16.tar.gz" -XSTS_TARBALL_2="xsts-2004-01-14.tar.gz" -XMLCONF_TARBALL="xmlts20130923.tar.gz" - -DESCRIPTION="XML C parser and toolkit" -HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home" -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2" - inherit autotools git-r3 -else - inherit gnome.org libtool - 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 - -SRC_URI+=" - test? ( - ${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1} - ${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2} - https://www.w3.org/XML/Test/${XMLCONF_TARBALL} - ) -" -S="${WORKDIR}/${PN}-${PV%_rc*}" - -LICENSE="MIT" -SLOT="2" -IUSE="debug examples +ftp icu lzma +python readline static-libs test" -RESTRICT="!test? ( test )" -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" - -RDEPEND=" - virtual/libiconv - >=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] - icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] ) - lzma? ( >=app-arch/xz-utils-5.0.5-r1:=[${MULTILIB_USEDEP}] ) - python? ( ${PYTHON_DEPS} ) - readline? ( sys-libs/readline:= ) -" -DEPEND="${RDEPEND}" -BDEPEND="virtual/pkgconfig" - -if [[ ${PV} == 9999 ]] ; then - BDEPEND+=" dev-build/gtk-doc-am" -fi - -MULTILIB_CHOST_TOOLS=( - /usr/bin/xml2-config -) - -PATCHES=( - "${FILESDIR}"/${PN}-2.11.5-CVE-2023-45322.patch -) - -src_unpack() { - if [[ ${PV} == 9999 ]] ; then - git-r3_src_unpack - else - local tarname=${P/_rc/-rc}.tar.xz - - # ${A} isn't used to avoid unpacking of test tarballs into ${WORKDIR}, - # as they are needed as tarballs in ${S}/xstc instead and not unpacked - unpack ${tarname} - - if [[ -n ${PATCHSET_VERSION} ]] ; then - unpack ${PN}-${PATCHSET_VERSION}.tar.xz - fi - fi - - cd "${S}" || die - - if use test ; then - cp "${DISTDIR}/${XSTS_TARBALL_1}" \ - "${DISTDIR}/${XSTS_TARBALL_2}" \ - "${S}"/xstc/ \ - || die "Failed to install test tarballs" - unpack ${XMLCONF_TARBALL} - fi -} - -src_prepare() { - default - - if [[ ${PV} == 9999 ]] ; then - eautoreconf - else - # Please do not remove, as else we get references to PORTAGE_TMPDIR - # in /usr/lib/python?.?/site-packages/libxml2mod.la among things. - elibtoolize - fi -} - -multilib_src_configure() { - # Filter seemingly problematic CFLAGS (bug #26320) - filter-flags -fprefetch-loop-arrays -funroll-loops - - # Notes: - # The meaning of the 'debug' USE flag does not apply to the --with-debug - # switch (enabling the libxml2 debug module). See bug #100898. - libxml2_configure() { - ECONF_SOURCE="${S}" econf \ - --enable-ipv6 \ - $(use_with ftp) \ - $(use_with debug run-debug) \ - $(use_with icu) \ - $(use_with lzma) \ - $(use_enable static-libs static) \ - $(multilib_native_use_with readline) \ - $(multilib_native_use_with readline history) \ - "$@" - } - - # Build python bindings separately - libxml2_configure --without-python - - multilib_is_native_abi && use python && - python_foreach_impl run_in_build_dir libxml2_configure --with-python -} - -libxml2_py_emake() { - pushd "${BUILD_DIR}"/python >/dev/null || die - - emake top_builddir="${NATIVE_BUILD_DIR}" "$@" - - popd >/dev/null || die -} - -multilib_src_compile() { - default - - if multilib_is_native_abi && use python ; then - NATIVE_BUILD_DIR="${BUILD_DIR}" - python_foreach_impl run_in_build_dir libxml2_py_emake all - fi -} - -multilib_src_test() { - ln -s "${S}"/xmlconf || die - - emake check - - multilib_is_native_abi && use python && - python_foreach_impl run_in_build_dir libxml2_py_emake check -} - -multilib_src_install() { - emake DESTDIR="${D}" install - - multilib_is_native_abi && use python && - python_foreach_impl run_in_build_dir libxml2_py_emake DESTDIR="${D}" install - - # Hack until automake release is made for the optimise fix - # https://git.savannah.gnu.org/cgit/automake.git/commit/?id=bde43d0481ff540418271ac37012a574a4fcf097 - multilib_is_native_abi && use python && python_foreach_impl python_optimize -} - -multilib_src_install_all() { - einstalldocs - - if ! use examples ; then - rm -rf "${ED}"/usr/share/doc/${PF}/examples || die - rm -rf "${ED}"/usr/share/doc/${PF}/python/examples || die - fi - - rm -rf "${ED}"/usr/share/doc/${PN}-python-${PVR} || die - - find "${ED}" -name '*.la' -delete || die -} - -pkg_postinst() { - # We don't want to do the xmlcatalog during stage1, as xmlcatalog will not - # be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug #208887. - if [[ -n "${ROOT}" ]]; then - elog "Skipping XML catalog creation for stage building (bug #208887)." - else - # Need an XML catalog, so no-one writes to a non-existent one - CATALOG="${EROOT}/etc/xml/catalog" - - # We don't want to clobber an existing catalog though, - # only ensure that one is there - # - if [[ ! -e "${CATALOG}" ]]; then - [[ -d "${EROOT}/etc/xml" ]] || mkdir -p "${EROOT}/etc/xml" - "${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}" - einfo "Created XML catalog in ${CATALOG}" - fi - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.12.8.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.12.8.ebuild deleted file mode 100644 index b18992816fd..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.12.8.ebuild +++ /dev/null @@ -1,196 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Note: Please bump in sync with dev-libs/libxslt - -PYTHON_COMPAT=( python3_{10..13} ) -PYTHON_REQ_USE="xml(+)" -inherit flag-o-matic python-r1 multilib-minimal - -XSTS_HOME="http://www.w3.org/XML/2004/xml-schema-test-suite" -XSTS_NAME_1="xmlschema2002-01-16" -XSTS_NAME_2="xmlschema2004-01-14" -XSTS_TARBALL_1="xsts-2002-01-16.tar.gz" -XSTS_TARBALL_2="xsts-2004-01-14.tar.gz" -XMLCONF_TARBALL="xmlts20130923.tar.gz" - -DESCRIPTION="XML C parser and toolkit" -HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home" -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2" - inherit autotools git-r3 -else - inherit gnome.org libtool - 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 - -SRC_URI+=" - test? ( - ${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1} - ${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2} - https://www.w3.org/XML/Test/${XMLCONF_TARBALL} - ) -" -S="${WORKDIR}/${PN}-${PV%_rc*}" - -LICENSE="MIT" -SLOT="2" -IUSE="debug examples +ftp icu lzma +python readline static-libs test" -RESTRICT="!test? ( test )" -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" - -RDEPEND=" - virtual/libiconv - >=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] - icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] ) - lzma? ( >=app-arch/xz-utils-5.0.5-r1:=[${MULTILIB_USEDEP}] ) - python? ( ${PYTHON_DEPS} ) - readline? ( sys-libs/readline:= ) -" -DEPEND="${RDEPEND}" -BDEPEND="virtual/pkgconfig" - -if [[ ${PV} == 9999 ]] ; then - BDEPEND+=" dev-build/gtk-doc-am" -fi - -MULTILIB_CHOST_TOOLS=( - /usr/bin/xml2-config -) - -src_unpack() { - if [[ ${PV} == 9999 ]] ; then - git-r3_src_unpack - else - local tarname=${P/_rc/-rc}.tar.xz - - # ${A} isn't used to avoid unpacking of test tarballs into ${WORKDIR}, - # as they are needed as tarballs in ${S}/xstc instead and not unpacked - unpack ${tarname} - - if [[ -n ${PATCHSET_VERSION} ]] ; then - unpack ${PN}-${PATCHSET_VERSION}.tar.xz - fi - fi - - cd "${S}" || die - - if use test ; then - cp "${DISTDIR}/${XSTS_TARBALL_1}" \ - "${DISTDIR}/${XSTS_TARBALL_2}" \ - "${S}"/xstc/ \ - || die "Failed to install test tarballs" - unpack ${XMLCONF_TARBALL} - fi -} - -src_prepare() { - default - - if [[ ${PV} == 9999 ]] ; then - eautoreconf - else - # Please do not remove, as else we get references to PORTAGE_TMPDIR - # in /usr/lib/python?.?/site-packages/libxml2mod.la among things. - elibtoolize - fi -} - -multilib_src_configure() { - # Filter seemingly problematic CFLAGS (bug #26320) - filter-flags -fprefetch-loop-arrays -funroll-loops - - # Notes: - # The meaning of the 'debug' USE flag does not apply to the --with-debug - # switch (enabling the libxml2 debug module). See bug #100898. - libxml2_configure() { - ECONF_SOURCE="${S}" econf \ - --enable-ipv6 \ - $(use_with ftp) \ - $(use_with debug run-debug) \ - $(use_with icu) \ - $(use_with lzma) \ - $(use_enable static-libs static) \ - $(multilib_native_use_with readline) \ - $(multilib_native_use_with readline history) \ - "$@" - } - - # Build python bindings separately - libxml2_configure --without-python - - multilib_is_native_abi && use python && - python_foreach_impl run_in_build_dir libxml2_configure --with-python -} - -libxml2_py_emake() { - pushd "${BUILD_DIR}"/python >/dev/null || die - - emake top_builddir="${NATIVE_BUILD_DIR}" "$@" - - popd >/dev/null || die -} - -multilib_src_compile() { - default - - if multilib_is_native_abi && use python ; then - NATIVE_BUILD_DIR="${BUILD_DIR}" - python_foreach_impl run_in_build_dir libxml2_py_emake all - fi -} - -multilib_src_test() { - ln -s "${S}"/xmlconf || die - - emake check - - multilib_is_native_abi && use python && - python_foreach_impl run_in_build_dir libxml2_py_emake check -} - -multilib_src_install() { - emake DESTDIR="${D}" install - - multilib_is_native_abi && use python && - python_foreach_impl run_in_build_dir libxml2_py_emake DESTDIR="${D}" install - - # Hack until automake release is made for the optimise fix - # https://git.savannah.gnu.org/cgit/automake.git/commit/?id=bde43d0481ff540418271ac37012a574a4fcf097 - multilib_is_native_abi && use python && python_foreach_impl python_optimize -} - -multilib_src_install_all() { - einstalldocs - - if ! use examples ; then - rm -rf "${ED}"/usr/share/doc/${PF}/examples || die - rm -rf "${ED}"/usr/share/doc/${PF}/python/examples || die - fi - - rm -rf "${ED}"/usr/share/doc/${PN}-python-${PVR} || die - - find "${ED}" -name '*.la' -delete || die -} - -pkg_postinst() { - # We don't want to do the xmlcatalog during stage1, as xmlcatalog will not - # be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug #208887. - if [[ -n "${ROOT}" ]]; then - elog "Skipping XML catalog creation for stage building (bug #208887)." - else - # Need an XML catalog, so no-one writes to a non-existent one - CATALOG="${EROOT}/etc/xml/catalog" - - # We don't want to clobber an existing catalog though, - # only ensure that one is there - # - if [[ ! -e "${CATALOG}" ]]; then - [[ -d "${EROOT}/etc/xml" ]] || mkdir -p "${EROOT}/etc/xml" - "${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}" - einfo "Created XML catalog in ${CATALOG}" - fi - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/nspr/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/nspr/Manifest index c9f0651f9f8..a36c2942a3e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/nspr/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/nspr/Manifest @@ -1,2 +1 @@ -DIST nspr-4.35.tar.gz 1096974 BLAKE2B c80402d7be9e69ab6d1e768a18d271a8d28900f4cae7df2709d1ab26e100d908f508762bb771d4042aa7152934ce83d495e2102e894c56574187be8040d65629 SHA512 502815833116e25f79ddf71d1526484908aa92fbc55f8a892729cb404a4daafcc0470a89854cd080d2d20299fdb7d9662507c5362c7ae661cbacf308ac56ef7f DIST nspr-4.36.tar.gz 1036274 BLAKE2B 369d851db0f425f0c6c3cdaeb333320860b77b49b40b77cc983998de3f9128f9d987f143e9f2ce155d609fb23f3f9ed0d0abe7d74e20c59763e2b9bdd1835817 SHA512 55d21e196508ad29a179639fc8006f44b04dc2c0b5a85895e727f0a4f0ea37aeeceb936e37ac6b271b882a18e9f06d96133a60f19cee6345f8424c1c66e270ee diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/nspr/nspr-4.35-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/nspr/nspr-4.35-r2.ebuild deleted file mode 100644 index 4aafc2acbe8..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/nspr/nspr-4.35-r2.ebuild +++ /dev/null @@ -1,178 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools flag-o-matic toolchain-funcs multilib-minimal - -MIN_PV="$(ver_cut 2)" - -DESCRIPTION="Netscape Portable Runtime" -HOMEPAGE="https://www.mozilla.org/projects/nspr/" -SRC_URI="https://archive.mozilla.org/pub/nspr/releases/v${PV}/src/${P}.tar.gz" - -LICENSE="|| ( MPL-2.0 GPL-2 LGPL-2.1 )" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" -IUSE="debug" - -MULTILIB_CHOST_TOOLS=( - /usr/bin/nspr-config -) - -PATCHES=( - "${FILESDIR}"/${PN}-4.10.6-solaris.patch - "${FILESDIR}"/${PN}-4.23-prtime.patch - "${FILESDIR}"/${PN}-4.7.1-solaris.patch - "${FILESDIR}"/${PN}-4.8.4-darwin-install_name.patch - "${FILESDIR}"/${PN}-4.8.9-link-flags.patch - # We do not need to pass -L$libdir via nspr-config --libs - "${FILESDIR}"/${PN}-4.9.5_nspr_config.patch -) - -QA_CONFIGURE_OPTIONS="--disable-static" - -src_prepare() { - cd "${S}"/nspr || die - - default - - if use elibc_musl; then - eapply "${FILESDIR}"/${PN}-4.21-ipv6-musl-support.patch - eapply "${FILESDIR}"/nspr-4.35-bgo-905998-lfs64-musl.patch - fi - - # rename configure.in to configure.ac for new autotools compatibility - if [[ -e "${S}"/nspr/configure.in ]] ; then - einfo "Renaming configure.in to configure.ac" - mv "${S}"/nspr/configure.{in,ac} || die - else - elog "configure.in rename logic can be removed from ebuild." - fi - - # We must run eautoconf to regenerate configure - eautoconf - - # make sure it won't find Perl out of Prefix - sed -i -e "s/perl5//g" "${S}"/nspr/configure || die - - # Respect LDFLAGS - sed -i -e 's/\$(MKSHLIB) \$(OBJS)/\$(MKSHLIB) \$(LDFLAGS) \$(OBJS)/g' \ - "${S}"/nspr/config/rules.mk || die -} - -multilib_src_configure() { - # -Werror=strict-aliasing - # https://bugs.gentoo.org/867634 - # - # Testsuite-only issue. Still, this makes it challenging to test the package with LTO - # enabled... - append-flags -fno-strict-aliasing - filter-lto - - # The build system overrides user optimization level based on a configure flag. #886987 - local my_optlvl=$(get-flag '-O*') - - # bgo #923802 - append-lfs-flags - - # We use the standard BUILD_xxx but nspr uses HOST_xxx - tc-export_build_env BUILD_CC - export HOST_CC=${BUILD_CC} HOST_CFLAGS=${BUILD_CFLAGS} HOST_LDFLAGS=${BUILD_LDFLAGS} - tc-export AR AS CC CXX RANLIB - [[ ${CBUILD} != ${CHOST} ]] \ - && export CROSS_COMPILE=1 \ - || unset CROSS_COMPILE - - local myconf=( --libdir="${EPREFIX}/usr/$(get_libdir)" ) - - # Optimization is disabled when debug is enabled. - if use debug; then - myconf+=( --enable-debug ) - else - myconf+=( --disable-debug ) - myconf+=( --enable-optimize="${my_optlvl}" ) - fi - - # The configure has some fancy --enable-{{n,x}32,64bit} switches - # that trigger some code conditional to platform & arch. This really - # matters for the few common arches (x86, ppc) but we pass a little - # more of them to be future-proof. - - # use ABI first, this will work for most cases - case "${ABI}" in - alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86) ;; - n32) myconf+=( --enable-n32 );; - x32) myconf+=( --enable-x32 );; - s390x|*64) myconf+=( --enable-64bit );; - default) # no abi actually set, fall back to old check - einfo "Running a short build test to determine 64bit'ness" - # TODO: Port this to toolchain-funcs tc-get-ptr-size/tc-get-build-ptr-size - echo > "${T}"/test.c || die - ${CC} ${CFLAGS} ${CPPFLAGS} -fno-lto -c "${T}"/test.c -o "${T}"/test.o || die - case $(file -S "${T}"/test.o) in - *32-bit*x86-64*) myconf+=( --enable-x32 );; - *64-bit*|*ppc64*|*x86_64*) myconf+=( --enable-64bit );; - *32-bit*|*ppc*|*i386*) ;; - *) die "Failed to detect whether your arch is 64bits or 32bits, disable distcc if you're using it, please";; - esac ;; - *) ;; - esac - - # Ancient autoconf needs help finding the right tools. - LC_ALL="C" ECONF_SOURCE="${S}/nspr" \ - ac_cv_path_AR="${AR}" \ - ac_cv_path_AS="${AS}" \ - econf "${myconf[@]}" -} - -multilib_src_test() { - # https://firefox-source-docs.mozilla.org/nspr/running_nspr_tests.html - cd "${BUILD_DIR}/pr/tests" || die - einfo "Building tests" - emake - - einfo "Running test suite" - ../../../${P}/${PN}/pr/tests/runtests.pl | tee "${T}"/${ABI}-tests.log - - # Needed to check if runtests.pl itself or the tee (somehow) failed - # (can't use die with pipes to check each component) - [[ ${PIPESTATUS[@]} == "0 0" ]] || die "Tests failed to run!" - - local known_failures=( - # network-sandbox related? - cltsrv - # network-sandbox related? - gethost - ) - - local known_failure - for known_failure in "${known_failures[@]}" ; do - sed -i -e "/${known_failure}.*FAILED/d" "${T}"/${ABI}-tests.log || die - done - - # But to actually check the test results, we examine the log. - if grep -q "FAILED" "${T}"/${ABI}-tests.log ; then - die "Test failure for ${ABI}!" - fi -} - -multilib_src_install() { - # Their build system is royally confusing, as usual - MINOR_VERSION=${MIN_PV} # Used for .so version - emake DESTDIR="${D}" install - - einfo "removing static libraries as upstream has requested!" - rm "${ED}"/usr/$(get_libdir)/*.a || die "failed to remove static libraries." - - # install nspr-config - dobin config/nspr-config - - # Remove stupid files in /usr/bin - rm "${ED}"/usr/bin/prerr.properties || die - - # This is used only to generate prerr.c and prerr.h at build time. - # No other projects use it, and we don't want to depend on perl. - # Talked to upstream and they agreed w/punting. - rm "${ED}"/usr/bin/compile-et.pl || die -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/Manifest index 37d84c04034..78fce2b3203 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/Manifest @@ -3,10 +3,6 @@ DIST openssl-1.0.2t-bindist-1.0.tar.xz 13872 BLAKE2B b2aade96a6e0ca6209a39e205b1 DIST openssl-1.0.2u.tar.gz 5355412 BLAKE2B b2ff2a10e5851af5aca4093422a9a072c794e87b997263826c1c35910c040f695fac63decac5856cb49399ed03d410f97701d9fd4e1ebfbcacd8f3a74ce8bf57 SHA512 c455bb309e20e2c2d47fdc5619c734d107d5c8c38c1409903ce979acc120b0d5fa0312917c0aa0d630e402d092a703d4249643f36078e8528a3cafc9dac6ab32 DIST openssl-1.1.1w.tar.gz 9893384 BLAKE2B 2fdba6ca0188928ab2f74e606136afca66cfa0467170fa6298ef160b64ac6fdcad1e81e5dd14013ce0e9921d0f7417edec531cd0beaf1196fec704c2c6d48395 SHA512 b4c625fe56a4e690b57b6a011a225ad0cb3af54bd8fb67af77b5eceac55cc7191291d96a660c5b568a08a2fbf62b4612818e7cca1bb95b2b6b4fc649b0552b6d DIST openssl-1.1.1w.tar.gz.asc 833 BLAKE2B d990be69ed913509d52b78e7473668429d4485adb29ef03e4612dd0cadbac4f04c7289d8e5baf6f397bcedeaac9f802f18fc719964d882ae0514ed1ca16ae277 SHA512 0f3d7aa48b1cabf8dd43e8108aeed10a4dffb4f5a244d4da9c86ea358b0c8b90c46da561d21e01c567c2f5035d824ed82ec104aad1776b7f33a1be85990e98ef -DIST openssl-3.0.13.tar.gz 15294843 BLAKE2B 869aa5f70a8c1d0cac6027e9261530df70ab5a8b448c785f5f8ff3f206e742c5364424132d0e109a6449af9b4082c4c179c7103dccb16a4539f776ca834c8ccc SHA512 22f4096781f0b075f5bf81bd39a0f97e111760dfa73b6f858f6bb54968a7847944d74969ae10f9a51cc21a2f4af20d9a4c463649dc824f5e439e196d6764c4f9 -DIST openssl-3.0.13.tar.gz.asc 833 BLAKE2B 519515b6faa505d68ff9acc30db9515fac494145086fa5ad9561c39385a6fabb39ad9de10fedd49c8fc716ec59ea1b13ec5e6b466e549ea9f29b8d0bb74ba7b3 SHA512 c52d97c93d16f3ca2a7026fb25890482b6d86c37b5ab686c56b0e08522743ec4ea3f84afa4deb64b0df0d9a16b557430c4d4139ab42ffcf97d769b61d1e6197c -DIST openssl-3.0.14.tar.gz 15305497 BLAKE2B 7426aea63d5495775c4a0440658cc9c46c4aa31c31473cd5519c2b1ca158e122634e0bbc275237d3eb124fc8bed3d58808d8ac1d228f24f7281d2630ff7813e0 SHA512 1c59c01e60da902a20780d71f1fa5055d4037f38c4bc3fb27ed5b91f211b36a6018055409441ad4df58b5e9232b2528240d02067272c3c9ccb8c221449ca9ac0 -DIST openssl-3.0.14.tar.gz.asc 833 BLAKE2B 8a700452f6f698fbfa206469888fd72706f1798be212e712fd8a4c1ae87f0d98d54820974c64a3db3b5ac69d7beda665f462e83182337391212c0e72e1feb72e SHA512 003d17a2b71176517f5bfba6699c18b271111e5fec3effc275b965286140d1281fa6f5f5e6bcf63feca89dfa035ab776bda8d2af4b71ae921ca9e7a936581fb4 DIST openssl-3.0.15.tar.gz 15318633 BLAKE2B f2900d0894b97e86c709079ca4336d5dc508d69e91d3a4de4420c8d9344cb54dada6ea2cdd408166e53db0c652b06654e670701166b67a0a40578676e1cea535 SHA512 acd80f2f7924d90c1416946a5c61eff461926ad60f4821bb6b08845ea18f8452fd5e88a2c2c5bd0d7590a792cb8341a3f3be042fd0a5b6c9c1b84a497c347bbf DIST openssl-3.0.15.tar.gz.asc 833 BLAKE2B 43088d6ae9e95aec8cfa08c0d338d76c2299ee89a1719a39c497b25c83a4c0c2d155fa00a62b47e15a7f2889680197741390c850d62a84ec5ce27ed1bbddcd28 SHA512 8b9471074130fd26b511820a1c2586792fd0105421515734c213ae18de27b5b026261e64d4cb8f5e7b568d1f4193484ebe0e99eda9d99df72474310a568ca3bf DIST openssl-3.1.7.tar.gz 15684836 BLAKE2B 1332f4b2454b6c9bf3ff2099aa343d6202bec98c6e44fba6377d5bb8efd9bf337df3a95549d874a2908f376056f6f333e6f65cbec7e27377d1ab8cbefddaa241 SHA512 bb4743c1a95148901d2d2bc51460c14cea3387c7dda9323524adbdb11334562f72aa3a873913c51ea1ffce606e675e22a74f78b3119b6a956da3f75c942cd0e2 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.0.13-CVE-2024-2511.patch b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.0.13-CVE-2024-2511.patch deleted file mode 100644 index fff4fb72837..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.0.13-CVE-2024-2511.patch +++ /dev/null @@ -1,141 +0,0 @@ -https://www.openssl.org/news/secadv/20240408.txt -https://bugs.gentoo.org/930047 -https://github.com/openssl/openssl/commit/b52867a9f618bb955bed2a3ce3db4d4f97ed8e5d -https://github.com/openssl/openssl/commit/cc9ece9118eeacccc3571c2ee852f8ba067d0607 - -From b52867a9f618bb955bed2a3ce3db4d4f97ed8e5d Mon Sep 17 00:00:00 2001 -From: Matt Caswell -Date: Tue, 5 Mar 2024 15:43:53 +0000 -Subject: [PATCH] Fix unconstrained session cache growth in TLSv1.3 - -In TLSv1.3 we create a new session object for each ticket that we send. -We do this by duplicating the original session. If SSL_OP_NO_TICKET is in -use then the new session will be added to the session cache. However, if -early data is not in use (and therefore anti-replay protection is being -used), then multiple threads could be resuming from the same session -simultaneously. If this happens and a problem occurs on one of the threads, -then the original session object could be marked as not_resumable. When we -duplicate the session object this not_resumable status gets copied into the -new session object. The new session object is then added to the session -cache even though it is not_resumable. - -Subsequently, another bug means that the session_id_length is set to 0 for -sessions that are marked as not_resumable - even though that session is -still in the cache. Once this happens the session can never be removed from -the cache. When that object gets to be the session cache tail object the -cache never shrinks again and grows indefinitely. - -CVE-2024-2511 - -Reviewed-by: Neil Horman -Reviewed-by: Tomas Mraz -(Merged from https://github.com/openssl/openssl/pull/24044) - -(cherry picked from commit 7e4d731b1c07201ad9374c1cd9ac5263bdf35bce) ---- a/ssl/ssl_lib.c -+++ b/ssl/ssl_lib.c -@@ -3736,9 +3736,10 @@ void ssl_update_cache(SSL *s, int mode) - - /* - * If the session_id_length is 0, we are not supposed to cache it, and it -- * would be rather hard to do anyway :-) -+ * would be rather hard to do anyway :-). Also if the session has already -+ * been marked as not_resumable we should not cache it for later reuse. - */ -- if (s->session->session_id_length == 0) -+ if (s->session->session_id_length == 0 || s->session->not_resumable) - return; - - /* ---- a/ssl/ssl_sess.c -+++ b/ssl/ssl_sess.c -@@ -152,16 +152,11 @@ SSL_SESSION *SSL_SESSION_new(void) - return ss; - } - --SSL_SESSION *SSL_SESSION_dup(const SSL_SESSION *src) --{ -- return ssl_session_dup(src, 1); --} -- - /* - * Create a new SSL_SESSION and duplicate the contents of |src| into it. If - * ticket == 0 then no ticket information is duplicated, otherwise it is. - */ --SSL_SESSION *ssl_session_dup(const SSL_SESSION *src, int ticket) -+static SSL_SESSION *ssl_session_dup_intern(const SSL_SESSION *src, int ticket) - { - SSL_SESSION *dest; - -@@ -285,6 +280,27 @@ SSL_SESSION *ssl_session_dup(const SSL_SESSION *src, int ticket) - return NULL; - } - -+SSL_SESSION *SSL_SESSION_dup(const SSL_SESSION *src) -+{ -+ return ssl_session_dup_intern(src, 1); -+} -+ -+/* -+ * Used internally when duplicating a session which might be already shared. -+ * We will have resumed the original session. Subsequently we might have marked -+ * it as non-resumable (e.g. in another thread) - but this copy should be ok to -+ * resume from. -+ */ -+SSL_SESSION *ssl_session_dup(const SSL_SESSION *src, int ticket) -+{ -+ SSL_SESSION *sess = ssl_session_dup_intern(src, ticket); -+ -+ if (sess != NULL) -+ sess->not_resumable = 0; -+ -+ return sess; -+} -+ - const unsigned char *SSL_SESSION_get_id(const SSL_SESSION *s, unsigned int *len) - { - if (len) ---- a/ssl/statem/statem_srvr.c -+++ b/ssl/statem/statem_srvr.c -@@ -2338,9 +2338,8 @@ int tls_construct_server_hello(SSL *s, WPACKET *pkt) - * so the following won't overwrite an ID that we're supposed - * to send back. - */ -- if (s->session->not_resumable || -- (!(s->ctx->session_cache_mode & SSL_SESS_CACHE_SERVER) -- && !s->hit)) -+ if (!(s->ctx->session_cache_mode & SSL_SESS_CACHE_SERVER) -+ && !s->hit) - s->session->session_id_length = 0; - - if (usetls13) { - -From cc9ece9118eeacccc3571c2ee852f8ba067d0607 Mon Sep 17 00:00:00 2001 -From: Matt Caswell -Date: Fri, 15 Mar 2024 17:58:42 +0000 -Subject: [PATCH] Hardening around not_resumable sessions - -Make sure we can't inadvertently use a not_resumable session - -Related to CVE-2024-2511 - -Reviewed-by: Neil Horman -Reviewed-by: Tomas Mraz -(Merged from https://github.com/openssl/openssl/pull/24044) - -(cherry picked from commit c342f4b8bd2d0b375b0e22337057c2eab47d9b96) ---- a/ssl/ssl_sess.c -+++ b/ssl/ssl_sess.c -@@ -531,6 +531,12 @@ SSL_SESSION *lookup_sess_in_cache(SSL *s, const unsigned char *sess_id, - ret = s->session_ctx->get_session_cb(s, sess_id, sess_id_len, ©); - - if (ret != NULL) { -+ if (ret->not_resumable) { -+ /* If its not resumable then ignore this session */ -+ if (!copy) -+ SSL_SESSION_free(ret); -+ return NULL; -+ } - ssl_tsan_counter(s->session_ctx, - &s->session_ctx->stats.sess_cb_hit); - diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.0.13-p11-segfault.patch b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.0.13-p11-segfault.patch deleted file mode 100644 index 73b131ab792..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.0.13-p11-segfault.patch +++ /dev/null @@ -1,79 +0,0 @@ -https://bugs.gentoo.org/916328 -https://github.com/opendnssec/SoftHSMv2/issues/729 -https://github.com/openssl/openssl/issues/22508 -https://github.com/openssl/openssl/commit/ad6cbe4b7f57a783a66a7ae883ea0d35ef5f82b6 - -From ad6cbe4b7f57a783a66a7ae883ea0d35ef5f82b6 Mon Sep 17 00:00:00 2001 -From: Tomas Mraz -Date: Fri, 15 Dec 2023 13:45:50 +0100 -Subject: [PATCH] Revert "Improved detection of engine-provided private - "classic" keys" - -This reverts commit 2b74e75331a27fc89cad9c8ea6a26c70019300b5. - -The commit was wrong. With 3.x versions the engines must be themselves -responsible for creating their EVP_PKEYs in a way that they are treated -as legacy - either by using the respective set1 calls or by setting -non-default EVP_PKEY_METHOD. - -The workaround has caused more problems than it solved. - -Fixes #22945 - -Reviewed-by: Dmitry Belyavskiy -Reviewed-by: Neil Horman -(Merged from https://github.com/openssl/openssl/pull/23063) - -(cherry picked from commit 39ea78379826fa98e8dc8c0d2b07e2c17cd68380) ---- a/crypto/engine/eng_pkey.c -+++ b/crypto/engine/eng_pkey.c -@@ -79,48 +79,6 @@ EVP_PKEY *ENGINE_load_private_key(ENGINE *e, const char *key_id, - ERR_raise(ERR_LIB_ENGINE, ENGINE_R_FAILED_LOADING_PRIVATE_KEY); - return NULL; - } -- /* We enforce check for legacy key */ -- switch (EVP_PKEY_get_id(pkey)) { -- case EVP_PKEY_RSA: -- { -- RSA *rsa = EVP_PKEY_get1_RSA(pkey); -- EVP_PKEY_set1_RSA(pkey, rsa); -- RSA_free(rsa); -- } -- break; --# ifndef OPENSSL_NO_EC -- case EVP_PKEY_SM2: -- case EVP_PKEY_EC: -- { -- EC_KEY *ec = EVP_PKEY_get1_EC_KEY(pkey); -- EVP_PKEY_set1_EC_KEY(pkey, ec); -- EC_KEY_free(ec); -- } -- break; --# endif --# ifndef OPENSSL_NO_DSA -- case EVP_PKEY_DSA: -- { -- DSA *dsa = EVP_PKEY_get1_DSA(pkey); -- EVP_PKEY_set1_DSA(pkey, dsa); -- DSA_free(dsa); -- } -- break; --#endif --# ifndef OPENSSL_NO_DH -- case EVP_PKEY_DH: -- { -- DH *dh = EVP_PKEY_get1_DH(pkey); -- EVP_PKEY_set1_DH(pkey, dh); -- DH_free(dh); -- } -- break; --#endif -- default: -- /*Do nothing */ -- break; -- } -- - return pkey; - } - - diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.3.2-arm64-clobber.patch b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.3.2-arm64-clobber.patch new file mode 100644 index 00000000000..d83c5b4fb87 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-3.3.2-arm64-clobber.patch @@ -0,0 +1,55 @@ +https://gcc.gnu.org/PR118537 +https://www.postgresql.org/message-id/6fxlmnyagkycru3bewa4ympknywnsswlqzvwfft3ifqqiioxlv%40ax53pv7xdrc2 +https://github.com/openssl/openssl/pull/26469 +https://github.com/openssl/openssl/commit/4f7d8b2724ea7f42cff1e8a0e736ad448def60f5 + +From 4f7d8b2724ea7f42cff1e8a0e736ad448def60f5 Mon Sep 17 00:00:00 2001 +From: Julian Andres Klode +Date: Sat, 18 Jan 2025 21:12:45 +0100 +Subject: [PATCH] Restore correct registers in aarch64 AES-CTR code + +Commit 1d1ca79fe35dbe5c05faed5a2ef8c4de9c5adc49 introduced +save and restore for the registers, saving them as + + stp d8,d9,[sp, #16] + stp d10,d11,[sp, #32] + stp d12,d13,[sp, #48] + stp d14,d15,[sp, #64] + +But the restore code was inadvertently typoed: + + ldp d8,d9,[sp, #16] + ldp d10,d11,[sp, #32] + ldp d12,d13,[sp, #48] + ldp d15,d16,[sp, #64] + +Restoring [sp, #64] into d15,d16 instead of d14,d15. + +Fixes: #26466 + +CLA: trivial + +Reviewed-by: Kurt Roeckx +Reviewed-by: Paul Dale +Reviewed-by: Tomas Mraz +(Merged from https://github.com/openssl/openssl/pull/26469) + +(cherry picked from commit 5261f3ca41cda7ad5767e399e9a2dc008bbad5d6) +--- + crypto/aes/asm/aesv8-armx.pl | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/crypto/aes/asm/aesv8-armx.pl b/crypto/aes/asm/aesv8-armx.pl +index 33a2dd53dae19..dc019b04ccd25 100755 +--- a/crypto/aes/asm/aesv8-armx.pl ++++ b/crypto/aes/asm/aesv8-armx.pl +@@ -2493,7 +2493,7 @@ () + ldp d8,d9,[sp, #16] + ldp d10,d11,[sp, #32] + ldp d12,d13,[sp, #48] +- ldp d15,d16,[sp, #64] ++ ldp d14,d15,[sp, #64] + ldr x29,[sp],#80 + ret + .size ${prefix}_ctr32_encrypt_blocks_unroll12_eor3,.-${prefix}_ctr32_encrypt_blocks_unroll12_eor3 + diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.13-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.13-r2.ebuild deleted file mode 100644 index a7de7307589..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.13-r2.ebuild +++ /dev/null @@ -1,283 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openssl.org.asc -inherit edo flag-o-matic linux-info toolchain-funcs -inherit multilib multilib-minimal multiprocessing preserve-libs verify-sig - -DESCRIPTION="Robust, full-featured Open Source Toolkit for the Transport Layer Security (TLS)" -HOMEPAGE="https://openssl-library.org/" - -MY_P=${P/_/-} - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://github.com/openssl/openssl.git" - - inherit git-r3 -else - SRC_URI="mirror://openssl/source/${MY_P}.tar.gz - verify-sig? ( mirror://openssl/source/${MY_P}.tar.gz.asc )" - KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi - -S="${WORKDIR}"/${MY_P} - -LICENSE="Apache-2.0" -SLOT="0/3" # .so version of libssl/libcrypto -IUSE="+asm cpu_flags_x86_sse2 fips ktls rfc3779 sctp static-libs test tls-compression vanilla verify-sig weak-ssl-ciphers" -RESTRICT="!test? ( test )" - -COMMON_DEPEND=" - tls-compression? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+)?,${MULTILIB_USEDEP}] ) -" -BDEPEND=" - >=dev-lang/perl-5 - sctp? ( >=net-misc/lksctp-tools-1.0.12 ) - test? ( - sys-apps/diffutils - app-alternatives/bc - sys-process/procps - ) - verify-sig? ( =4.18!" - else - CONFIG_CHECK="~TLS ~TLS_DEVICE" - ERROR_TLS="You will be unable to offload TLS to kernel because CONFIG_TLS is not set!" - ERROR_TLS_DEVICE="You will be unable to offload TLS to kernel because CONFIG_TLS_DEVICE is not set!" - use test && CONFIG_CHECK+=" ~CRYPTO_USER_API_SKCIPHER" - - linux-info_pkg_setup - fi - fi - - [[ ${MERGE_TYPE} == binary ]] && return - - # must check in pkg_setup; sysctl doesn't work with userpriv! - if use test && use sctp ; then - # test_ssl_new will fail with "Ensure SCTP AUTH chunks are enabled in kernel" - # if sctp.auth_enable is not enabled. - local sctp_auth_status=$(sysctl -n net.sctp.auth_enable 2>/dev/null) - if [[ -z "${sctp_auth_status}" ]] || [[ ${sctp_auth_status} != 1 ]] ; then - die "FEATURES=test with USE=sctp requires net.sctp.auth_enable=1!" - fi - fi -} - -src_prepare() { - # Make sure we only ever touch Makefile.org and avoid patching a file - # that gets blown away anyways by the Configure script in src_configure - rm -f Makefile || die - - if ! use vanilla ; then - PATCHES+=( - # Add patches which are Gentoo-specific customisations here - ) - fi - - default - - if use test && use sctp && has network-sandbox ${FEATURES} ; then - einfo "Disabling test '80-test_ssl_new.t' which is known to fail with FEATURES=network-sandbox ..." - rm test/recipes/80-test_ssl_new.t || die - fi - - # Test fails depending on kernel configuration, bug #699134 - rm test/recipes/30-test_afalg.t || die -} - -src_configure() { - # Keep this in sync with app-misc/c_rehash - SSL_CNF_DIR="/etc/ssl" - - # Quiet out unknown driver argument warnings since openssl - # doesn't have well-split CFLAGS and we're making it even worse - # and 'make depend' uses -Werror for added fun (bug #417795 again) - tc-is-clang && append-flags -Qunused-arguments - - # We really, really need to build OpenSSL w/ strict aliasing disabled. - # It's filled with violations and it *will* result in miscompiled - # code. This has been in the ebuild for > 10 years but even in 2022, - # it's still relevant: - # - https://github.com/llvm/llvm-project/issues/55255 - # - https://github.com/openssl/openssl/issues/12247 - # - https://github.com/openssl/openssl/issues/18225 - # - https://github.com/openssl/openssl/issues/18663#issuecomment-1181478057 - # Don't remove the no strict aliasing bits below! - filter-flags -fstrict-aliasing - append-flags -fno-strict-aliasing - # The OpenSSL developers don't test with LTO right now, it leads to various - # warnings/errors (which may or may not be false positives), it's considered - # unsupported, and it's not tested in CI: https://github.com/openssl/openssl/issues/18663. - filter-lto - - append-flags $(test-flags-CC -Wa,--noexecstack) - - # bug #895308 - append-atomic-flags - # Configure doesn't respect LIBS - export LDLIBS="${LIBS}" - - # bug #197996 - unset APPS - # bug #312551 - unset SCRIPTS - # bug #311473 - unset CROSS_COMPILE - - tc-export AR CC CXX RANLIB RC - - multilib-minimal_src_configure -} - -multilib_src_configure() { - use_ssl() { usex $1 "enable-${2:-$1}" "no-${2:-$1}" " ${*:3}" ; } - - local krb5=$(has_version app-crypt/mit-krb5 && echo "MIT" || echo "Heimdal") - - # See if our toolchain supports __uint128_t. If so, it's 64bit - # friendly and can use the nicely optimized code paths, bug #460790. - #local ec_nistp_64_gcc_128 - # - # Disable it for now though (bug #469976) - # Do NOT re-enable without substantial discussion first! - # - #echo "__uint128_t i;" > "${T}"/128.c - #if ${CC} ${CFLAGS} -c "${T}"/128.c -o /dev/null >&/dev/null ; then - # ec_nistp_64_gcc_128="enable-ec_nistp_64_gcc_128" - #fi - - local sslout=$(bash "${FILESDIR}/gentoo.config-1.0.4") - einfo "Using configuration: ${sslout:-(openssl knows best)}" - - # https://github.com/openssl/openssl/blob/master/INSTALL.md#enable-and-disable-features - local myeconfargs=( - ${sslout} - - $(use cpu_flags_x86_sse2 || echo "no-sse2") - enable-camellia - enable-ec - enable-ec2m - enable-sm2 - enable-srp - $(use elibc_musl && echo "no-async") - enable-idea - enable-mdc2 - enable-rc5 - $(use fips && echo "enable-fips") - $(use_ssl asm) - $(use_ssl ktls) - $(use_ssl rfc3779) - $(use_ssl sctp) - $(use test || echo "no-tests") - $(use_ssl tls-compression zlib) - $(use_ssl weak-ssl-ciphers) - - --prefix="${EPREFIX}"/usr - --openssldir="${EPREFIX}"${SSL_CNF_DIR} - --libdir=$(get_libdir) - - shared - threads - ) - - edo perl "${S}/Configure" "${myeconfargs[@]}" -} - -multilib_src_compile() { - emake build_sw - - if multilib_is_native_abi; then - emake build_docs - fi -} - -multilib_src_test() { - # VFP = show subtests verbosely and show failed tests verbosely - # Normal V=1 would show everything verbosely but this slows things down. - emake HARNESS_JOBS="$(makeopts_jobs)" -Onone VFP=1 test -} - -multilib_src_install() { - # Only -j1 is supported for the install targets: - # https://github.com/openssl/openssl/issues/21999#issuecomment-1771150305 - emake DESTDIR="${D}" -j1 install_sw - if use fips; then - emake DESTDIR="${D}" -j1 install_fips - # Regen this in pkg_preinst, bug 900625 - rm "${ED}${SSL_CNF_DIR}"/fipsmodule.cnf || die - fi - - if multilib_is_native_abi; then - emake DESTDIR="${D}" -j1 install_ssldirs - emake DESTDIR="${D}" DOCDIR='$(INSTALLTOP)'/share/doc/${PF} -j1 install_docs - fi - - # This is crappy in that the static archives are still built even - # when USE=static-libs. But this is due to a failing in the openssl - # build system: the static archives are built as PIC all the time. - # Only way around this would be to manually configure+compile openssl - # twice; once with shared lib support enabled and once without. - if ! use static-libs ; then - rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die - fi -} - -multilib_src_install_all() { - # openssl installs perl version of c_rehash by default, but - # we provide a shell version via app-misc/c_rehash - rm "${ED}"/usr/bin/c_rehash || die - - dodoc {AUTHORS,CHANGES,NEWS,README,README-PROVIDERS}.md doc/*.txt doc/${PN}-c-indent.el - - # Create the certs directory - keepdir ${SSL_CNF_DIR}/certs - - # bug #254521 - dodir /etc/sandbox.d - echo 'SANDBOX_PREDICT="/dev/crypto"' > "${ED}"/etc/sandbox.d/10openssl - - diropts -m0700 - keepdir ${SSL_CNF_DIR}/private -} - -pkg_preinst() { - if use fips; then - # Regen fipsmodule.cnf, bug 900625 - ebegin "Running openssl fipsinstall" - "${ED}/usr/bin/openssl" fipsinstall -quiet \ - -out "${ED}${SSL_CNF_DIR}/fipsmodule.cnf" \ - -module "${ED}/usr/$(get_libdir)/ossl-modules/fips.so" - eend $? - fi - - preserve_old_lib /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1) \ - /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1.1) -} - -pkg_postinst() { - ebegin "Running 'openssl rehash ${EROOT}${SSL_CNF_DIR}/certs' to rebuild hashes (bug #333069)" - openssl rehash "${EROOT}${SSL_CNF_DIR}/certs" - eend $? - - preserve_old_lib_notify /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1) \ - /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1.1) -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.14.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.14.ebuild deleted file mode 100644 index 24e53cd2ac7..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.14.ebuild +++ /dev/null @@ -1,278 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openssl.org.asc -inherit edo flag-o-matic linux-info toolchain-funcs -inherit multilib multilib-minimal multiprocessing preserve-libs verify-sig - -DESCRIPTION="Robust, full-featured Open Source Toolkit for the Transport Layer Security (TLS)" -HOMEPAGE="https://openssl-library.org/" - -MY_P=${P/_/-} - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://github.com/openssl/openssl.git" - - inherit git-r3 -else - SRC_URI="mirror://openssl/source/${MY_P}.tar.gz - verify-sig? ( mirror://openssl/source/${MY_P}.tar.gz.asc )" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi - -S="${WORKDIR}"/${MY_P} - -LICENSE="Apache-2.0" -SLOT="0/3" # .so version of libssl/libcrypto -IUSE="+asm cpu_flags_x86_sse2 fips ktls rfc3779 sctp static-libs test tls-compression vanilla verify-sig weak-ssl-ciphers" -RESTRICT="!test? ( test )" - -COMMON_DEPEND=" - tls-compression? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+)?,${MULTILIB_USEDEP}] ) -" -BDEPEND=" - >=dev-lang/perl-5 - sctp? ( >=net-misc/lksctp-tools-1.0.12 ) - test? ( - sys-apps/diffutils - app-alternatives/bc - sys-process/procps - ) - verify-sig? ( =4.18!" - else - CONFIG_CHECK="~TLS ~TLS_DEVICE" - ERROR_TLS="You will be unable to offload TLS to kernel because CONFIG_TLS is not set!" - ERROR_TLS_DEVICE="You will be unable to offload TLS to kernel because CONFIG_TLS_DEVICE is not set!" - use test && CONFIG_CHECK+=" ~CRYPTO_USER_API_SKCIPHER" - - linux-info_pkg_setup - fi - fi - - [[ ${MERGE_TYPE} == binary ]] && return - - # must check in pkg_setup; sysctl doesn't work with userpriv! - if use test && use sctp ; then - # test_ssl_new will fail with "Ensure SCTP AUTH chunks are enabled in kernel" - # if sctp.auth_enable is not enabled. - local sctp_auth_status=$(sysctl -n net.sctp.auth_enable 2>/dev/null) - if [[ -z "${sctp_auth_status}" ]] || [[ ${sctp_auth_status} != 1 ]] ; then - die "FEATURES=test with USE=sctp requires net.sctp.auth_enable=1!" - fi - fi -} - -src_prepare() { - # Make sure we only ever touch Makefile.org and avoid patching a file - # that gets blown away anyways by the Configure script in src_configure - rm -f Makefile || die - - if ! use vanilla ; then - PATCHES+=( - # Add patches which are Gentoo-specific customisations here - ) - fi - - default - - if use test && use sctp && has network-sandbox ${FEATURES} ; then - einfo "Disabling test '80-test_ssl_new.t' which is known to fail with FEATURES=network-sandbox ..." - rm test/recipes/80-test_ssl_new.t || die - fi - - # Test fails depending on kernel configuration, bug #699134 - rm test/recipes/30-test_afalg.t || die -} - -src_configure() { - # Keep this in sync with app-misc/c_rehash - SSL_CNF_DIR="/etc/ssl" - - # Quiet out unknown driver argument warnings since openssl - # doesn't have well-split CFLAGS and we're making it even worse - # and 'make depend' uses -Werror for added fun (bug #417795 again) - tc-is-clang && append-flags -Qunused-arguments - - # We really, really need to build OpenSSL w/ strict aliasing disabled. - # It's filled with violations and it *will* result in miscompiled - # code. This has been in the ebuild for > 10 years but even in 2022, - # it's still relevant: - # - https://github.com/llvm/llvm-project/issues/55255 - # - https://github.com/openssl/openssl/issues/12247 - # - https://github.com/openssl/openssl/issues/18225 - # - https://github.com/openssl/openssl/issues/18663#issuecomment-1181478057 - # Don't remove the no strict aliasing bits below! - filter-flags -fstrict-aliasing - append-flags -fno-strict-aliasing - # The OpenSSL developers don't test with LTO right now, it leads to various - # warnings/errors (which may or may not be false positives), it's considered - # unsupported, and it's not tested in CI: https://github.com/openssl/openssl/issues/18663. - filter-lto - - append-flags $(test-flags-CC -Wa,--noexecstack) - - # bug #895308 - append-atomic-flags - # Configure doesn't respect LIBS - export LDLIBS="${LIBS}" - - # bug #197996 - unset APPS - # bug #312551 - unset SCRIPTS - # bug #311473 - unset CROSS_COMPILE - - tc-export AR CC CXX RANLIB RC - - multilib-minimal_src_configure -} - -multilib_src_configure() { - use_ssl() { usex $1 "enable-${2:-$1}" "no-${2:-$1}" " ${*:3}" ; } - - local krb5=$(has_version app-crypt/mit-krb5 && echo "MIT" || echo "Heimdal") - - # See if our toolchain supports __uint128_t. If so, it's 64bit - # friendly and can use the nicely optimized code paths, bug #460790. - #local ec_nistp_64_gcc_128 - # - # Disable it for now though (bug #469976) - # Do NOT re-enable without substantial discussion first! - # - #echo "__uint128_t i;" > "${T}"/128.c - #if ${CC} ${CFLAGS} -c "${T}"/128.c -o /dev/null >&/dev/null ; then - # ec_nistp_64_gcc_128="enable-ec_nistp_64_gcc_128" - #fi - - local sslout=$(bash "${FILESDIR}/gentoo.config-1.0.4") - einfo "Using configuration: ${sslout:-(openssl knows best)}" - - # https://github.com/openssl/openssl/blob/master/INSTALL.md#enable-and-disable-features - local myeconfargs=( - ${sslout} - - $(use cpu_flags_x86_sse2 || echo "no-sse2") - enable-camellia - enable-ec - enable-ec2m - enable-sm2 - enable-srp - $(use elibc_musl && echo "no-async") - enable-idea - enable-mdc2 - enable-rc5 - $(use fips && echo "enable-fips") - $(use_ssl asm) - $(use_ssl ktls) - $(use_ssl rfc3779) - $(use_ssl sctp) - $(use test || echo "no-tests") - $(use_ssl tls-compression zlib) - $(use_ssl weak-ssl-ciphers) - - --prefix="${EPREFIX}"/usr - --openssldir="${EPREFIX}"${SSL_CNF_DIR} - --libdir=$(get_libdir) - - shared - threads - ) - - edo perl "${S}/Configure" "${myeconfargs[@]}" -} - -multilib_src_compile() { - emake build_sw - - if multilib_is_native_abi; then - emake build_docs - fi -} - -multilib_src_test() { - # VFP = show subtests verbosely and show failed tests verbosely - # Normal V=1 would show everything verbosely but this slows things down. - emake HARNESS_JOBS="$(makeopts_jobs)" -Onone VFP=1 test -} - -multilib_src_install() { - # Only -j1 is supported for the install targets: - # https://github.com/openssl/openssl/issues/21999#issuecomment-1771150305 - emake DESTDIR="${D}" -j1 install_sw - if use fips; then - emake DESTDIR="${D}" -j1 install_fips - # Regen this in pkg_preinst, bug 900625 - rm "${ED}${SSL_CNF_DIR}"/fipsmodule.cnf || die - fi - - if multilib_is_native_abi; then - emake DESTDIR="${D}" -j1 install_ssldirs - emake DESTDIR="${D}" DOCDIR='$(INSTALLTOP)'/share/doc/${PF} -j1 install_docs - fi - - # This is crappy in that the static archives are still built even - # when USE=static-libs. But this is due to a failing in the openssl - # build system: the static archives are built as PIC all the time. - # Only way around this would be to manually configure+compile openssl - # twice; once with shared lib support enabled and once without. - if ! use static-libs ; then - rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die - fi -} - -multilib_src_install_all() { - # openssl installs perl version of c_rehash by default, but - # we provide a shell version via app-misc/c_rehash - rm "${ED}"/usr/bin/c_rehash || die - - dodoc {AUTHORS,CHANGES,NEWS,README,README-PROVIDERS}.md doc/*.txt doc/${PN}-c-indent.el - - # Create the certs directory - keepdir ${SSL_CNF_DIR}/certs - - # bug #254521 - dodir /etc/sandbox.d - echo 'SANDBOX_PREDICT="/dev/crypto"' > "${ED}"/etc/sandbox.d/10openssl - - diropts -m0700 - keepdir ${SSL_CNF_DIR}/private -} - -pkg_preinst() { - if use fips; then - # Regen fipsmodule.cnf, bug 900625 - ebegin "Running openssl fipsinstall" - "${ED}/usr/bin/openssl" fipsinstall -quiet \ - -out "${ED}${SSL_CNF_DIR}/fipsmodule.cnf" \ - -module "${ED}/usr/$(get_libdir)/ossl-modules/fips.so" - eend $? - fi - - preserve_old_lib /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1) \ - /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1.1) -} - -pkg_postinst() { - ebegin "Running 'openssl rehash ${EROOT}${SSL_CNF_DIR}/certs' to rebuild hashes (bug #333069)" - openssl rehash "${EROOT}${SSL_CNF_DIR}/certs" - eend $? - - preserve_old_lib_notify /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1) \ - /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1.1) -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.15-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.15-r1.ebuild index 210e8a87c01..2d404c45bcf 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.15-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.15-r1.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 @@ -23,7 +23,7 @@ else https://github.com/openssl/openssl/releases/download/${P}/${P}.tar.gz.asc ) " - KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi S="${WORKDIR}"/${MY_P} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.15.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.15.ebuild deleted file mode 100644 index cc6072743d0..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.0.15.ebuild +++ /dev/null @@ -1,283 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openssl.org.asc -inherit edo flag-o-matic linux-info toolchain-funcs -inherit multilib multilib-minimal multiprocessing preserve-libs verify-sig - -DESCRIPTION="Robust, full-featured Open Source Toolkit for the Transport Layer Security (TLS)" -HOMEPAGE="https://openssl-library.org/" - -MY_P=${P/_/-} - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://github.com/openssl/openssl.git" - - inherit git-r3 -else - SRC_URI=" - https://github.com/openssl/openssl/releases/download/${P}/${P}.tar.gz - verify-sig? ( - https://github.com/openssl/openssl/releases/download/${P}/${P}.tar.gz.asc - ) - " - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi - -S="${WORKDIR}"/${MY_P} - -LICENSE="Apache-2.0" -SLOT="0/3" # .so version of libssl/libcrypto -IUSE="+asm cpu_flags_x86_sse2 fips ktls rfc3779 sctp static-libs test tls-compression vanilla verify-sig weak-ssl-ciphers" -RESTRICT="!test? ( test )" - -COMMON_DEPEND=" - tls-compression? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+)?,${MULTILIB_USEDEP}] ) -" -BDEPEND=" - >=dev-lang/perl-5 - sctp? ( >=net-misc/lksctp-tools-1.0.12 ) - test? ( - sys-apps/diffutils - app-alternatives/bc - sys-process/procps - ) - verify-sig? ( >=sec-keys/openpgp-keys-openssl-20240920 ) -" - -DEPEND="${COMMON_DEPEND}" -RDEPEND="${COMMON_DEPEND}" -PDEPEND="app-misc/ca-certificates" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/openssl/configuration.h -) - -pkg_setup() { - if use ktls ; then - if kernel_is -lt 4 18 ; then - ewarn "Kernel implementation of TLS (USE=ktls) requires kernel >=4.18!" - else - CONFIG_CHECK="~TLS ~TLS_DEVICE" - ERROR_TLS="You will be unable to offload TLS to kernel because CONFIG_TLS is not set!" - ERROR_TLS_DEVICE="You will be unable to offload TLS to kernel because CONFIG_TLS_DEVICE is not set!" - use test && CONFIG_CHECK+=" ~CRYPTO_USER_API_SKCIPHER" - - linux-info_pkg_setup - fi - fi - - [[ ${MERGE_TYPE} == binary ]] && return - - # must check in pkg_setup; sysctl doesn't work with userpriv! - if use test && use sctp ; then - # test_ssl_new will fail with "Ensure SCTP AUTH chunks are enabled in kernel" - # if sctp.auth_enable is not enabled. - local sctp_auth_status=$(sysctl -n net.sctp.auth_enable 2>/dev/null) - if [[ -z "${sctp_auth_status}" ]] || [[ ${sctp_auth_status} != 1 ]] ; then - die "FEATURES=test with USE=sctp requires net.sctp.auth_enable=1!" - fi - fi -} - -src_prepare() { - # Make sure we only ever touch Makefile.org and avoid patching a file - # that gets blown away anyways by the Configure script in src_configure - rm -f Makefile || die - - if ! use vanilla ; then - PATCHES+=( - # Add patches which are Gentoo-specific customisations here - ) - fi - - default - - if use test && use sctp && has network-sandbox ${FEATURES} ; then - einfo "Disabling test '80-test_ssl_new.t' which is known to fail with FEATURES=network-sandbox ..." - rm test/recipes/80-test_ssl_new.t || die - fi - - # Test fails depending on kernel configuration, bug #699134 - rm test/recipes/30-test_afalg.t || die -} - -src_configure() { - # Keep this in sync with app-misc/c_rehash - SSL_CNF_DIR="/etc/ssl" - - # Quiet out unknown driver argument warnings since openssl - # doesn't have well-split CFLAGS and we're making it even worse - # and 'make depend' uses -Werror for added fun (bug #417795 again) - tc-is-clang && append-flags -Qunused-arguments - - # We really, really need to build OpenSSL w/ strict aliasing disabled. - # It's filled with violations and it *will* result in miscompiled - # code. This has been in the ebuild for > 10 years but even in 2022, - # it's still relevant: - # - https://github.com/llvm/llvm-project/issues/55255 - # - https://github.com/openssl/openssl/issues/12247 - # - https://github.com/openssl/openssl/issues/18225 - # - https://github.com/openssl/openssl/issues/18663#issuecomment-1181478057 - # Don't remove the no strict aliasing bits below! - filter-flags -fstrict-aliasing - append-flags -fno-strict-aliasing - # The OpenSSL developers don't test with LTO right now, it leads to various - # warnings/errors (which may or may not be false positives), it's considered - # unsupported, and it's not tested in CI: https://github.com/openssl/openssl/issues/18663. - filter-lto - - append-flags $(test-flags-CC -Wa,--noexecstack) - - # bug #895308 - append-atomic-flags - # Configure doesn't respect LIBS - export LDLIBS="${LIBS}" - - # bug #197996 - unset APPS - # bug #312551 - unset SCRIPTS - # bug #311473 - unset CROSS_COMPILE - - tc-export AR CC CXX RANLIB RC - - multilib-minimal_src_configure -} - -multilib_src_configure() { - use_ssl() { usex $1 "enable-${2:-$1}" "no-${2:-$1}" " ${*:3}" ; } - - local krb5=$(has_version app-crypt/mit-krb5 && echo "MIT" || echo "Heimdal") - - # See if our toolchain supports __uint128_t. If so, it's 64bit - # friendly and can use the nicely optimized code paths, bug #460790. - #local ec_nistp_64_gcc_128 - # - # Disable it for now though (bug #469976) - # Do NOT re-enable without substantial discussion first! - # - #echo "__uint128_t i;" > "${T}"/128.c - #if ${CC} ${CFLAGS} -c "${T}"/128.c -o /dev/null >&/dev/null ; then - # ec_nistp_64_gcc_128="enable-ec_nistp_64_gcc_128" - #fi - - local sslout=$(bash "${FILESDIR}/gentoo.config-1.0.4") - einfo "Using configuration: ${sslout:-(openssl knows best)}" - - # https://github.com/openssl/openssl/blob/master/INSTALL.md#enable-and-disable-features - local myeconfargs=( - ${sslout} - - $(use cpu_flags_x86_sse2 || echo "no-sse2") - enable-camellia - enable-ec - enable-ec2m - enable-sm2 - enable-srp - $(use elibc_musl && echo "no-async") - enable-idea - enable-mdc2 - enable-rc5 - $(use fips && echo "enable-fips") - $(use_ssl asm) - $(use_ssl ktls) - $(use_ssl rfc3779) - $(use_ssl sctp) - $(use test || echo "no-tests") - $(use_ssl tls-compression zlib) - $(use_ssl weak-ssl-ciphers) - - --prefix="${EPREFIX}"/usr - --openssldir="${EPREFIX}"${SSL_CNF_DIR} - --libdir=$(get_libdir) - - shared - threads - ) - - edo perl "${S}/Configure" "${myeconfargs[@]}" -} - -multilib_src_compile() { - emake build_sw - - if multilib_is_native_abi; then - emake build_docs - fi -} - -multilib_src_test() { - # VFP = show subtests verbosely and show failed tests verbosely - # Normal V=1 would show everything verbosely but this slows things down. - emake HARNESS_JOBS="$(makeopts_jobs)" -Onone VFP=1 test -} - -multilib_src_install() { - # Only -j1 is supported for the install targets: - # https://github.com/openssl/openssl/issues/21999#issuecomment-1771150305 - emake DESTDIR="${D}" -j1 install_sw - if use fips; then - emake DESTDIR="${D}" -j1 install_fips - # Regen this in pkg_preinst, bug 900625 - rm "${ED}${SSL_CNF_DIR}"/fipsmodule.cnf || die - fi - - if multilib_is_native_abi; then - emake DESTDIR="${D}" -j1 install_ssldirs - emake DESTDIR="${D}" DOCDIR='$(INSTALLTOP)'/share/doc/${PF} -j1 install_docs - fi - - # This is crappy in that the static archives are still built even - # when USE=static-libs. But this is due to a failing in the openssl - # build system: the static archives are built as PIC all the time. - # Only way around this would be to manually configure+compile openssl - # twice; once with shared lib support enabled and once without. - if ! use static-libs ; then - rm "${ED}"/usr/$(get_libdir)/lib{crypto,ssl}.a || die - fi -} - -multilib_src_install_all() { - # openssl installs perl version of c_rehash by default, but - # we provide a shell version via app-misc/c_rehash - rm "${ED}"/usr/bin/c_rehash || die - - dodoc {AUTHORS,CHANGES,NEWS,README,README-PROVIDERS}.md doc/*.txt doc/${PN}-c-indent.el - - # Create the certs directory - keepdir ${SSL_CNF_DIR}/certs - - # bug #254521 - dodir /etc/sandbox.d - echo 'SANDBOX_PREDICT="/dev/crypto"' > "${ED}"/etc/sandbox.d/10openssl - - diropts -m0700 - keepdir ${SSL_CNF_DIR}/private -} - -pkg_preinst() { - if use fips; then - # Regen fipsmodule.cnf, bug 900625 - ebegin "Running openssl fipsinstall" - "${ED}/usr/bin/openssl" fipsinstall -quiet \ - -out "${ED}${SSL_CNF_DIR}/fipsmodule.cnf" \ - -module "${ED}/usr/$(get_libdir)/ossl-modules/fips.so" - eend $? - fi - - preserve_old_lib /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1) \ - /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1.1) -} - -pkg_postinst() { - ebegin "Running 'openssl rehash ${EROOT}${SSL_CNF_DIR}/certs' to rebuild hashes (bug #333069)" - openssl rehash "${EROOT}${SSL_CNF_DIR}/certs" - eend $? - - preserve_old_lib_notify /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1) \ - /usr/$(get_libdir)/lib{crypto,ssl}$(get_libname 1.1) -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.1.7-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.1.7-r1.ebuild index 5ca73111c8f..aeaa611d6f6 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.1.7-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.1.7-r1.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 @@ -23,7 +23,8 @@ else https://github.com/openssl/openssl/releases/download/${P}/${P}.tar.gz.asc ) " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + + KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi S="${WORKDIR}"/${MY_P} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.2.3-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.2.3-r1.ebuild index 9e0ddd97404..15ae0fec713 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.2.3-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.2.3-r1.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 @@ -25,7 +25,7 @@ else " if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi fi diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.2-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.2-r1.ebuild index f33725cf316..7ea54de6cf6 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.2-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.2-r1.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 @@ -25,7 +25,7 @@ else " if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then - KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi fi diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.2-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.2-r2.ebuild index 0299c1afeaf..cdfcb021249 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.2-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.2-r2.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 @@ -25,7 +25,7 @@ else " if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi fi diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.2-r3.ebuild similarity index 96% rename from sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.2.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.2-r3.ebuild index 7165d21845e..74109bfb1ff 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-3.3.2-r3.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 @@ -25,7 +25,7 @@ else " if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi fi @@ -58,6 +58,12 @@ MULTILIB_WRAPPED_HEADERS=( /usr/include/openssl/configuration.h ) +PATCHES=( + "${FILESDIR}"/${P}-CVE-2024-9143.patch + "${FILESDIR}"/${PN}-3.3.2-silence-warning.patch + "${FILESDIR}"/${P}-arm64-clobber.patch +) + pkg_setup() { if use ktls ; then if kernel_is -lt 4 18 ; then diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-0.24.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-0.24.3.ebuild index 765a16ffae3..20863acffab 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-0.24.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/tree-sitter/tree-sitter-0.24.3.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 @@ -12,7 +12,7 @@ if [[ ${PV} == *9999* ]]; then EGIT_REPO_URI="https://github.com/${PN}/${PN}" else SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" fi LICENSE="MIT" diff --git a/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/Manifest index f6b5c941c8a..e2d4f1d8b9b 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/Manifest @@ -1,2 +1,4 @@ DIST pip-24.1-py3-none-any.whl 1823006 BLAKE2B ca5282b1100243cc4e391ce30d5ae7d4978987e46323b7e151c87457c4ab762f909c88ae3cb72015d09bf7c1243ddb6ad791e991093713431961962fc6fdde83 SHA512 84e8318896294e5750f30a3fa55833e5e5c802066091802e05ff94fe139c825f3fe0fb5014b899f0afd844ad1129e8d04b9fedd74a7f46a1c248dac546ab16f8 DIST pip-24.3.1-py3-none-any.whl 1822182 BLAKE2B 8ec4f45dcc84094426db053dea43d86d14d24f6f23ca8b1b094a989f08b5653a2290df24e907c3ed283a668fa6da305620b4f74a3054d67f6e048327c5f06c66 SHA512 21cb4a844b7c9216a4878639a876acdce17ffda9e7228e85e344169d548a3f4316e5ec5183a950848c7391e2a650152e4a1e1f0f020de57f895c458de5ee7b82 +DIST pip-25.0-py3-none-any.whl 1841506 BLAKE2B 35c1ca34f202f397785b3a229379e0c58c4c9733280d2283ce9c6cfd4e3190283b708f99096015b0f556e98885622cb443976763af3c077ef4bdd73403959ca4 SHA512 e6037f24540ee96016fbd59a9250692407123db0966478b5d8e50e37de157cecfedc177002e4e98e1cbcbe9fb35561d72b5d20166c2919968794033c8b688cbf +DIST pip-25.0.1-py3-none-any.whl 1841526 BLAKE2B 928210cf0586b2e17cf96c341babbbf612eb08775af716588fad8840d04153d264b64098f97c8d2d7b219389d571cee8e4190195f8c5cc9f602749aad92df437 SHA512 48315489f2c0a76b49386228f9a2f675e71f20ff2f4aaaf65b2634ba5cac7c98facfbdebeb4651c65efdd2ade053a140d7a2a6b44587549d6663bc8bb5ef2220 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-25.0.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-25.0.1.ebuild new file mode 100644 index 00000000000..dcf21d3e394 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-25.0.1.ebuild @@ -0,0 +1,20 @@ +# Copyright 2022-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit pypi + +DESCRIPTION="Shared pip wheel for ensurepip Python module" +HOMEPAGE="https://pypi.org/project/pip/" +SRC_URI="$(pypi_wheel_url "${PN#ensurepip-}")" +S=${DISTDIR} + +LICENSE="Apache-2.0 BSD BSD-2 ISC LGPL-2.1+ MIT MPL-2.0 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" + +src_install() { + insinto /usr/lib/python/ensurepip + doins "${A}" +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-25.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-25.0.ebuild new file mode 100644 index 00000000000..dcf21d3e394 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-25.0.ebuild @@ -0,0 +1,20 @@ +# Copyright 2022-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit pypi + +DESCRIPTION="Shared pip wheel for ensurepip Python module" +HOMEPAGE="https://pypi.org/project/pip/" +SRC_URI="$(pypi_wheel_url "${PN#ensurepip-}")" +S=${DISTDIR} + +LICENSE="Apache-2.0 BSD BSD-2 ISC LGPL-2.1+ MIT MPL-2.0 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" + +src_install() { + insinto /usr/lib/python/ensurepip + doins "${A}" +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/Manifest index 585448cbb56..e19b9d37d76 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/Manifest @@ -1,2 +1 @@ -DIST more-itertools-10.5.0.tar.gz 121020 BLAKE2B 16ab278873f4d7de97f61a2e865ff8561baa0aacd743c7483138c3dc7c8a219609ae80a0ff30bfc22f7064bfed45d764f17e35c2780ac6caf3a24231ab544e9b SHA512 fdb56b6bce26b335da61ae3a4bd0154a78389786132f62eaea53f0e8ee603c5609e35c69baccaac57935e81f839409b70f94cb8bbab9d541b0964a2c929c8168 DIST more-itertools-10.6.0.tar.gz 125009 BLAKE2B f4bade093a730f7daf035d698bfb0fb8f0f8aa6832546e30f9e6d0c39aef96e9cd326d73682c7fa5458f7e75511d759c443a58fed96e831d11375818abb020d8 SHA512 57322c80252e79d1ef82fe5cfc3a3f0208ab6f90d2e59c47491974c23fc30ad1b48d1671c06507b0489b2bdb240c52dee5419a19b96ae06a3d2bdb3a3b483eab diff --git a/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/more-itertools-10.5.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/more-itertools-10.5.0.ebuild deleted file mode 100644 index f7ed9cbc11c..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/more-itertools-10.5.0.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 - -DISTUTILS_USE_PEP517=flit -PYPI_NO_NORMALIZE=1 -PYTHON_COMPAT=( python3_{10..13} python3_13t pypy3 ) - -inherit distutils-r1 pypi - -DESCRIPTION="More routines for operating on iterables, beyond itertools" -HOMEPAGE=" - https://github.com/more-itertools/more-itertools/ - https://pypi.org/project/more-itertools/ -" - -LICENSE="MIT" -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" - -distutils_enable_sphinx docs \ - dev-python/sphinx-rtd-theme -distutils_enable_tests unittest diff --git a/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/more-itertools-10.6.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/more-itertools-10.6.0.ebuild index 3fe77bf8eaa..7e6ec340b77 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/more-itertools-10.6.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/more-itertools-10.6.0.ebuild @@ -17,7 +17,7 @@ HOMEPAGE=" LICENSE="MIT" 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" distutils_enable_sphinx docs \ dev-python/sphinx-rtd-theme diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pip/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/pip/Manifest index f21fcaf5824..d0ec7085b28 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/pip/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/pip/Manifest @@ -1,2 +1,4 @@ DIST pip-24.1.gh.tar.gz 9188658 BLAKE2B 4a43ff0199d811dd30461e376f655a447f3f706a48dd97fe1d0ccf630f558e72209ccd06d98949a1541cd6b2942a816db23ce8aaa7fbbf9aef429502fb91ab92 SHA512 c60ab329fe91202ff64b5f0f90209085fbf8db0f0a05f0703f952ad69e39e2e3edb5dadc006a3f317cdd4ba4fb5abe56dfbd22792249a2d139702eec272186d1 DIST pip-24.3.1.gh.tar.gz 9198711 BLAKE2B c70524bfedf46776d5ab8da24754e8177caac6d87cc90aa86b144c0fe9718860fe3d08823f655495c059dbece6e0ecbb2ac8e655cff3124693f64a35deac512e SHA512 9cf5f18eefd559cf27bc026e5206b0028ea77fd904a61fea9a6682b519305c962dd19170b841581bd05ff72192a9c458ec0eba173fa66db0438b046111ff5856 +DIST pip-25.0.1.gh.tar.gz 9224526 BLAKE2B db729b8c75d8e15c6fed1dbc9e08adc4e82114f2bbd953859ec03c7948e521629afd8cea6adb08110b987d6adf48fd600a59a3bcc27774db61ea92675ad90d42 SHA512 a6850c8567082bbf98483a45e523c4de12132136d2b0aa388ac619c02ffd0c8f6aea7d727f7d84167dadec5f1e56dd478b2233b0caa5d9b3e5cadc9e1f3dc12c +DIST pip-25.0.gh.tar.gz 9224545 BLAKE2B 9606eea2b08d5220f9ed7528c14251ef20499693bdb817a2280124672860cb24111999bdb67af1107006ae4dd02c52d395fddea7e6b09dbc820a41ee8618fd50 SHA512 023db908a1da1cbbd2134bb83cc69a7a35e6d010b3f846bb8abcab14ca79a8cee4d02ead9346220e05fe137039377074c732b4bf2a9e6eee5c0d9161f1754f95 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pip/pip-25.0.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pip/pip-25.0.1.ebuild new file mode 100644 index 00000000000..8ab316566c0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/pip/pip-25.0.1.ebuild @@ -0,0 +1,170 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# please bump dev-python/ensurepip-pip along with this package! + +DISTUTILS_USE_PEP517=setuptools +PYTHON_TESTED=( pypy3 python3_{10..13} ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) +PYTHON_REQ_USE="ssl(+),threads(+)" + +inherit bash-completion-r1 distutils-r1 + +DESCRIPTION="The PyPA recommended tool for installing Python packages" +HOMEPAGE=" + https://pip.pypa.io/en/stable/ + https://pypi.org/project/pip/ + https://github.com/pypa/pip/ +" +SRC_URI=" + https://github.com/pypa/pip/archive/${PV}.tar.gz -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="test-rust" + +# see src/pip/_vendor/vendor.txt +RDEPEND=" + >=dev-python/cachecontrol-0.14.1[${PYTHON_USEDEP}] + >=dev-python/distlib-0.3.9[${PYTHON_USEDEP}] + >=dev-python/distro-1.9.0[${PYTHON_USEDEP}] + >=dev-python/msgpack-1.1.0[${PYTHON_USEDEP}] + >=dev-python/packaging-24.2[${PYTHON_USEDEP}] + >=dev-python/platformdirs-4.3.6[${PYTHON_USEDEP}] + >=dev-python/pyproject-hooks-1.2.0[${PYTHON_USEDEP}] + >=dev-python/requests-2.32.0[${PYTHON_USEDEP}] + >=dev-python/rich-13.9.4[${PYTHON_USEDEP}] + >=dev-python/resolvelib-1.0.1[${PYTHON_USEDEP}] + >=dev-python/setuptools-69.5.1[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/tomli-2.2.1[${PYTHON_USEDEP}] + ' 3.10) + >=dev-python/truststore-0.10.0[${PYTHON_USEDEP}] + >=dev-python/typing-extensions-4.12.2[${PYTHON_USEDEP}] +" +BDEPEND=" + ${RDEPEND} + test? ( + $(python_gen_cond_dep ' + dev-python/ensurepip-setuptools + dev-python/ensurepip-wheel + dev-python/freezegun[${PYTHON_USEDEP}] + dev-python/pretend[${PYTHON_USEDEP}] + dev-python/pytest-rerunfailures[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + dev-python/scripttest[${PYTHON_USEDEP}] + dev-python/tomli-w[${PYTHON_USEDEP}] + dev-python/virtualenv[${PYTHON_USEDEP}] + dev-python/werkzeug[${PYTHON_USEDEP}] + dev-python/wheel[${PYTHON_USEDEP}] + test-rust? ( + dev-python/cryptography[${PYTHON_USEDEP}] + ) + dev-vcs/git + ' "${PYTHON_TESTED[@]}") + ) +" + +distutils_enable_tests pytest + +python_prepare_all() { + local PATCHES=( + "${FILESDIR}/pip-23.1-no-coverage.patch" + # prepare to unbundle dependencies + "${FILESDIR}/pip-24.1-unbundle.patch" + ) + + distutils-r1_python_prepare_all + + # unbundle dependencies + rm -r src/pip/_vendor || die + find -name '*.py' -exec sed -i \ + -e 's:from pip\._vendor import:import:g' \ + -e 's:from pip\._vendor\.:from :g' \ + {} + || die + + if use test; then + local wheels=( + "${BROOT}"/usr/lib/python/ensurepip/{setuptools,wheel}-*.whl + ) + mkdir tests/data/common_wheels/ || die + cp "${wheels[@]}" tests/data/common_wheels/ || die + fi +} + +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())' + "${EPYTHON}" -c "${pipcmd}" completion --bash > completion.bash || die + "${EPYTHON}" -c "${pipcmd}" completion --zsh > completion.zsh || die +} + +python_test() { + local EPYTEST_DESELECT=( + tests/functional/test_inspect.py::test_inspect_basic + # Internet + tests/functional/test_config_settings.py::test_backend_sees_config_via_sdist + tests/functional/test_install.py::test_double_install_fail + tests/functional/test_install.py::test_install_sdist_links + tests/functional/test_install_config.py::test_prompt_for_keyring_if_needed + # broken by system site-packages use + tests/functional/test_freeze.py::test_freeze_with_setuptools + tests/functional/test_pip_runner_script.py::test_runner_work_in_environments_with_no_pip + tests/functional/test_uninstall.py::test_basic_uninstall_distutils + tests/unit/test_base_command.py::test_base_command_global_tempdir_cleanup + tests/unit/test_base_command.py::test_base_command_local_tempdir_cleanup + tests/unit/test_base_command.py::test_base_command_provides_tempdir_helpers + # broken by unbundling + "tests/functional/test_debug.py::test_debug[vendored library versions:]" + tests/functional/test_debug.py::test_debug__library_versions + tests/functional/test_python_option.py::test_python_interpreter + tests/functional/test_uninstall.py::test_uninstall_non_local_distutils + ) + local EPYTEST_IGNORE=( + # requires proxy.py + tests/functional/test_proxy.py + ) + + case ${EPYTHON} in + pypy3) + EPYTEST_DESELECT+=( + # unexpected tempfiles? + tests/functional/test_install_config.py::test_do_not_prompt_for_authentication + tests/functional/test_install_config.py::test_prompt_for_authentication + ) + ;; + esac + + if ! has_version "dev-python/cryptography[${PYTHON_USEDEP}]"; then + EPYTEST_DESELECT+=( + tests/functional/test_install.py::test_install_sends_client_cert + tests/functional/test_install_config.py::test_do_not_prompt_for_authentication + tests/functional/test_install_config.py::test_prompt_for_authentication + tests/functional/test_install_config.py::test_prompt_for_keyring_if_needed + ) + fi + + local -x PIP_DISABLE_PIP_VERSION_CHECK=1 + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + 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 +} + +python_install_all() { + local DOCS=( AUTHORS.txt docs/html/**/*.rst ) + distutils-r1_python_install_all + + newbashcomp completion.bash pip + + insinto /usr/share/zsh/site-functions + newins completion.zsh _pip +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pip/pip-25.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pip/pip-25.0.ebuild new file mode 100644 index 00000000000..8ab316566c0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/pip/pip-25.0.ebuild @@ -0,0 +1,170 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# please bump dev-python/ensurepip-pip along with this package! + +DISTUTILS_USE_PEP517=setuptools +PYTHON_TESTED=( pypy3 python3_{10..13} ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) +PYTHON_REQ_USE="ssl(+),threads(+)" + +inherit bash-completion-r1 distutils-r1 + +DESCRIPTION="The PyPA recommended tool for installing Python packages" +HOMEPAGE=" + https://pip.pypa.io/en/stable/ + https://pypi.org/project/pip/ + https://github.com/pypa/pip/ +" +SRC_URI=" + https://github.com/pypa/pip/archive/${PV}.tar.gz -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="test-rust" + +# see src/pip/_vendor/vendor.txt +RDEPEND=" + >=dev-python/cachecontrol-0.14.1[${PYTHON_USEDEP}] + >=dev-python/distlib-0.3.9[${PYTHON_USEDEP}] + >=dev-python/distro-1.9.0[${PYTHON_USEDEP}] + >=dev-python/msgpack-1.1.0[${PYTHON_USEDEP}] + >=dev-python/packaging-24.2[${PYTHON_USEDEP}] + >=dev-python/platformdirs-4.3.6[${PYTHON_USEDEP}] + >=dev-python/pyproject-hooks-1.2.0[${PYTHON_USEDEP}] + >=dev-python/requests-2.32.0[${PYTHON_USEDEP}] + >=dev-python/rich-13.9.4[${PYTHON_USEDEP}] + >=dev-python/resolvelib-1.0.1[${PYTHON_USEDEP}] + >=dev-python/setuptools-69.5.1[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/tomli-2.2.1[${PYTHON_USEDEP}] + ' 3.10) + >=dev-python/truststore-0.10.0[${PYTHON_USEDEP}] + >=dev-python/typing-extensions-4.12.2[${PYTHON_USEDEP}] +" +BDEPEND=" + ${RDEPEND} + test? ( + $(python_gen_cond_dep ' + dev-python/ensurepip-setuptools + dev-python/ensurepip-wheel + dev-python/freezegun[${PYTHON_USEDEP}] + dev-python/pretend[${PYTHON_USEDEP}] + dev-python/pytest-rerunfailures[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + dev-python/scripttest[${PYTHON_USEDEP}] + dev-python/tomli-w[${PYTHON_USEDEP}] + dev-python/virtualenv[${PYTHON_USEDEP}] + dev-python/werkzeug[${PYTHON_USEDEP}] + dev-python/wheel[${PYTHON_USEDEP}] + test-rust? ( + dev-python/cryptography[${PYTHON_USEDEP}] + ) + dev-vcs/git + ' "${PYTHON_TESTED[@]}") + ) +" + +distutils_enable_tests pytest + +python_prepare_all() { + local PATCHES=( + "${FILESDIR}/pip-23.1-no-coverage.patch" + # prepare to unbundle dependencies + "${FILESDIR}/pip-24.1-unbundle.patch" + ) + + distutils-r1_python_prepare_all + + # unbundle dependencies + rm -r src/pip/_vendor || die + find -name '*.py' -exec sed -i \ + -e 's:from pip\._vendor import:import:g' \ + -e 's:from pip\._vendor\.:from :g' \ + {} + || die + + if use test; then + local wheels=( + "${BROOT}"/usr/lib/python/ensurepip/{setuptools,wheel}-*.whl + ) + mkdir tests/data/common_wheels/ || die + cp "${wheels[@]}" tests/data/common_wheels/ || die + fi +} + +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())' + "${EPYTHON}" -c "${pipcmd}" completion --bash > completion.bash || die + "${EPYTHON}" -c "${pipcmd}" completion --zsh > completion.zsh || die +} + +python_test() { + local EPYTEST_DESELECT=( + tests/functional/test_inspect.py::test_inspect_basic + # Internet + tests/functional/test_config_settings.py::test_backend_sees_config_via_sdist + tests/functional/test_install.py::test_double_install_fail + tests/functional/test_install.py::test_install_sdist_links + tests/functional/test_install_config.py::test_prompt_for_keyring_if_needed + # broken by system site-packages use + tests/functional/test_freeze.py::test_freeze_with_setuptools + tests/functional/test_pip_runner_script.py::test_runner_work_in_environments_with_no_pip + tests/functional/test_uninstall.py::test_basic_uninstall_distutils + tests/unit/test_base_command.py::test_base_command_global_tempdir_cleanup + tests/unit/test_base_command.py::test_base_command_local_tempdir_cleanup + tests/unit/test_base_command.py::test_base_command_provides_tempdir_helpers + # broken by unbundling + "tests/functional/test_debug.py::test_debug[vendored library versions:]" + tests/functional/test_debug.py::test_debug__library_versions + tests/functional/test_python_option.py::test_python_interpreter + tests/functional/test_uninstall.py::test_uninstall_non_local_distutils + ) + local EPYTEST_IGNORE=( + # requires proxy.py + tests/functional/test_proxy.py + ) + + case ${EPYTHON} in + pypy3) + EPYTEST_DESELECT+=( + # unexpected tempfiles? + tests/functional/test_install_config.py::test_do_not_prompt_for_authentication + tests/functional/test_install_config.py::test_prompt_for_authentication + ) + ;; + esac + + if ! has_version "dev-python/cryptography[${PYTHON_USEDEP}]"; then + EPYTEST_DESELECT+=( + tests/functional/test_install.py::test_install_sends_client_cert + tests/functional/test_install_config.py::test_do_not_prompt_for_authentication + tests/functional/test_install_config.py::test_prompt_for_authentication + tests/functional/test_install_config.py::test_prompt_for_keyring_if_needed + ) + fi + + local -x PIP_DISABLE_PIP_VERSION_CHECK=1 + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + 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 +} + +python_install_all() { + local DOCS=( AUTHORS.txt docs/html/**/*.rst ) + distutils-r1_python_install_all + + newbashcomp completion.bash pip + + insinto /usr/share/zsh/site-functions + newins completion.zsh _pip +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/Manifest index 5d840579cd1..b2fe3d55f1e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/Manifest @@ -1,3 +1 @@ -DIST poetry-core-1.9.1.gh.tar.gz 371296 BLAKE2B 0ccd041a9c5491bb9c9234ca5094162995a3959be0272d916866770d6dbc67bb183c3b1b863b24fc1906c7d4fca0f9593d3c2c7571d4c3bb37c2f8f9dd6316c5 SHA512 9ca0aa68e4e7637e78b0a02cb3946b6efd29b91e99663f26fbb09736ff2fbfa13cd683337001b2200e3037e5d4adcd745bc6ff4c91a708880238f0b78719c281 -DIST poetry-core-2.0.0.gh.tar.gz 406242 BLAKE2B dd5508f8f07a909d38f289ae928502e55713f2f0c3249ec93be9b6f12d951eca68a1d014f7a364b528c9273c68f3ad3f803349c3036af57ececc0b2d9bd3b59d SHA512 7a942feef963e94d8e2661fde1058bfaee19155ee94be6892e0065d241fbda02fce60fd58f56ae7333e2c6d2b709c792ebf0bbcd378fc2513acb00f459dd2a56 DIST poetry_core-2.0.1.tar.gz 355487 BLAKE2B 84bbeb7129c13d3ed1a06fbcbdcb8e1a1a608c35d398bdbf35ea70c467adbbe5d293945fecdf90e7795122af2a3f5d9fa64a99e56ee37a197ea022d271f10a15 SHA512 dd1d303abd034fc0341aaa5fc8d11f13ef305e93b9e9036f4040c2cb007c8b1eecbdb719d2b5692530b80ecc06d416751a45c499f373a05b7066e56785d1a8e8 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-1.9.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-1.9.1.ebuild deleted file mode 100644 index d4f3b995dbc..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-1.9.1.ebuild +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright 2022-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=standalone -PYTHON_TESTED=( pypy3 python3_{10..13} ) -PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) - -inherit distutils-r1 - -DESCRIPTION="Poetry PEP 517 Build Backend" -HOMEPAGE=" - https://github.com/python-poetry/poetry-core/ - https://pypi.org/project/poetry-core/ -" -SRC_URI=" - https://github.com/python-poetry/poetry-core/archive/${PV}.tar.gz - -> ${P}.gh.tar.gz -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos" - -# check inside vendors/pyproject.toml -# (note that some are indirect deps) -RDEPEND=" - >=dev-python/fastjsonschema-2.18.0[${PYTHON_USEDEP}] - >=dev-python/lark-1.1.3[${PYTHON_USEDEP}] - >=dev-python/packaging-22.0[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}] - ' 3.10) -" -BDEPEND=" - ${RDEPEND} - test? ( - $(python_gen_cond_dep ' - dev-python/build[${PYTHON_USEDEP}] - dev-python/pytest-mock[${PYTHON_USEDEP}] - dev-python/tomli-w[${PYTHON_USEDEP}] - >=dev-python/virtualenv-20.21[${PYTHON_USEDEP}] - dev-vcs/git - ' "${PYTHON_TESTED[@]}") - ) -" - -distutils_enable_tests pytest - -src_prepare() { - # remove vendoring of dependencies - rm -r src/poetry/core/_vendor || die - sed -e '/__vendor_site__/d' -i src/poetry/core/__init__.py || die - - distutils-r1_src_prepare -} - -python_test() { - local EPYTEST_DESELECT=( - # These "fail" bacause of glob file path resulting from newer versions - # in our tree than vendored. But those don't affect anything. - tests/masonry/builders/test_sdist.py::test_default_with_excluded_data - tests/masonry/builders/test_wheel.py::test_default_src_with_excluded_data - ) - - if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then - einfo "Skipping tests on ${EPYTHON} (unported deps)" - return - fi - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest -p pytest_mock -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-2.0.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-2.0.0.ebuild deleted file mode 100644 index 8613c979713..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-2.0.0.ebuild +++ /dev/null @@ -1,73 +0,0 @@ -# Copyright 2022-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=standalone -PYTHON_TESTED=( pypy3 python3_{10..13} ) -PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) - -inherit distutils-r1 - -DESCRIPTION="Poetry PEP 517 Build Backend" -HOMEPAGE=" - https://github.com/python-poetry/poetry-core/ - https://pypi.org/project/poetry-core/ -" -SRC_URI=" - https://github.com/python-poetry/poetry-core/archive/${PV}.tar.gz - -> ${P}.gh.tar.gz -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" - -# check inside vendors/pyproject.toml -# (note that some are indirect deps) -RDEPEND=" - >=dev-python/fastjsonschema-2.21.1[${PYTHON_USEDEP}] - >=dev-python/lark-1.2.2[${PYTHON_USEDEP}] - >=dev-python/packaging-24.2[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - >=dev-python/tomli-2.2.1[${PYTHON_USEDEP}] - ' 3.10) -" -BDEPEND=" - ${RDEPEND} - test? ( - $(python_gen_cond_dep ' - dev-python/build[${PYTHON_USEDEP}] - dev-python/pytest-mock[${PYTHON_USEDEP}] - dev-python/tomli-w[${PYTHON_USEDEP}] - >=dev-python/trove-classifiers-2022.5.19[${PYTHON_USEDEP}] - >=dev-python/virtualenv-20.21[${PYTHON_USEDEP}] - dev-vcs/git - ' "${PYTHON_TESTED[@]}") - ) -" - -distutils_enable_tests pytest - -src_prepare() { - # remove vendoring of dependencies - rm -r src/poetry/core/_vendor || die - sed -e '/__vendor_site__/d' -i src/poetry/core/__init__.py || die - - distutils-r1_src_prepare -} - -python_test() { - if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then - einfo "Skipping tests on ${EPYTHON} (unported deps)" - return - fi - - # Poetry expects test to be run inside a git repository, otherwise - # VCS-related logic doesn't get triggered. An empty repository - # suffices, though. - git init || die - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest -p pytest_mock -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-2.0.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-2.0.1.ebuild index 68733f5a721..42a1fcd1cce 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-2.0.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/poetry-core/poetry-core-2.0.1.ebuild @@ -17,7 +17,7 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" +KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos" # check inside vendors/pyproject.toml # (note that some are indirect deps) diff --git a/sdk_container/src/third_party/portage-stable/dev-python/tree-sitter/tree-sitter-0.23.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/tree-sitter/tree-sitter-0.23.1.ebuild index 2ca69f44e4b..453e180d3b3 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/tree-sitter/tree-sitter-0.23.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/tree-sitter/tree-sitter-0.23.1.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 @@ -22,7 +22,7 @@ S=${WORKDIR}/py-${P} LICENSE="MIT" 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" # setuptools is needed for distutils import DEPEND=">=dev-libs/tree-sitter-0.24.0:=" diff --git a/sdk_container/src/third_party/portage-stable/dev-python/truststore/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/truststore/Manifest index 850407ee7ad..dc591a432fe 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/truststore/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/truststore/Manifest @@ -1 +1,2 @@ DIST truststore-0.10.0.gh.tar.gz 28644 BLAKE2B cf83a6936e361bb08f399ea5f6739acbe254dab380b06cf4befab8e1084e01d0757afd02eb0b9718963b4249280e2fa629b079eea143a7d3c5bda3767d4e0611 SHA512 eb1b16f093f32ff8be29bb696e92843823a8ffe2e7428ea989ee987d94d7328b5c40d6d8e5aa25eb223ca348ca30b29018decaec11d6106221753fd4525aa5b0 +DIST truststore-0.10.1.gh.tar.gz 29120 BLAKE2B 2efb72b04f3e6fd5365d0d4f8fda12fcaa6fd2008cb17fdc76a679b4bff965040d30465cf78dc0a2cec2e02430100b5e6cc1f4ec4102326805a6d9bd52c38b10 SHA512 8a1c1269d44c0c33444c67d4302484eddcd3223b3e792b133efcf547ed1292cdca0ebc15447f68e7078928ea01d5c2108692dffb703d6bbdad0b9f1c23eeebe9 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/truststore/truststore-0.10.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/truststore/truststore-0.10.1.ebuild new file mode 100644 index 00000000000..f508f827a26 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/truststore/truststore-0.10.1.ebuild @@ -0,0 +1,47 @@ +# Copyright 2023-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( pypy3 python3_{10..13} ) + +inherit distutils-r1 + +DESCRIPTION="Verify certificates using native system trust stores" +HOMEPAGE=" + https://github.com/sethmlarson/truststore/ + https://pypi.org/project/truststore/ +" +SRC_URI=" + https://github.com/sethmlarson/truststore/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +# The vast majority of tests require Internet access. +PROPERTIES="test_network" +RESTRICT="test" + +BDEPEND=" + test? ( + dev-python/aiohttp[${PYTHON_USEDEP}] + dev-python/flaky[${PYTHON_USEDEP}] + dev-python/httpx[${PYTHON_USEDEP}] + dev-python/pyopenssl[${PYTHON_USEDEP}] + dev-python/pytest-asyncio[${PYTHON_USEDEP}] + dev-python/pytest-httpserver[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/trustme[${PYTHON_USEDEP}] + dev-python/urllib3[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest -p asyncio -p pytest_httpserver +} diff --git a/sdk_container/src/third_party/portage-stable/dev-util/maturin/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/maturin/Manifest index 52f5a7c1a76..53b9f3cae24 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/maturin/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-util/maturin/Manifest @@ -191,6 +191,8 @@ DIST maturin-1.7.4.gh.tar.gz 511488 BLAKE2B 008b2d67d553479040fcd3062b93ca12dc6f DIST maturin-1.7.8.gh.tar.gz 526856 BLAKE2B 0fcd40dbf20cd961aa97e936b58ea79aceddfe6175ba4c1d1b413c224c889f393719dffe583859c35894173801cbd5303093802c5a4986038eb00a1f4ff3f3d4 SHA512 11dd229bc0a240fe915ae4aa69d5dd10032ea41782cb2bf76e77e58a8d474543b133a78d6b24a0383ef281f83122f34e1e0c332227720643b63226c18e318445 DIST maturin-1.8.1-vendor.tar.xz 28014132 BLAKE2B 0fdaa5c2005645a964594431ea29faeed2aa703f8e33776fe1c02f865a36a11793e8aad5c18f295e97085e7c1e2fb26ada8968703920455c78327b23a9338182 SHA512 3bf23cf509ba416002d8a7b2a0cd2e6b2b6ec98ab335fcdade501a99b068cbf6db5a3665ca918b1192839cc0377ede0d150a657a104a98cc85e90a83d030d174 DIST maturin-1.8.1.gh.tar.gz 542041 BLAKE2B 0ded1146c03d1139cc826bff520dbed4f27f4c0d2fa58a1336b075d222bb73881ec455d9b8480206c9f25756d6680a3918db4b4043fb6a63a023d94d23c5ea48 SHA512 2f07ced149fd59035c3acddbc4449cdfa59f8680d1784a68fbb71414a8a6309d3e138b10a7aeb3ca1f35f52ffe04c0e557e4636c84b7d8c60cd012798e3ec041 +DIST maturin-1.8.2-vendor.tar.xz 17297348 BLAKE2B 400ae0e41d3c3a7e330482902fe73c1def631bbdb32734e6fa110eb6d2d954b464d9feeca5727d8f551d30cb6868c3000afcaed452c3f10a661e6f03d79edd02 SHA512 c5faa7ff3c49e5097a27f19821bf4a355dd17ed74efae503ec1639cb8a695873cdc5a89a94da77fe7cb7cb1e1685ab895c801bbf94828c22d7c0ba29105213fa +DIST maturin-1.8.2.gh.tar.gz 544160 BLAKE2B d5784b76ee7dbbb48818e3ef0acebe32cee423e787f9c4bdcc50af90656a34d1dd1a89c414948b07e983edc1047382b82a1590d4c0de0e59279be81e06bbbdfc SHA512 83ca2dc64e1933f18b66d06bb985f6834a41ae289cf74d01689158febda783157cbecfb5c10c6da9544eda501acb9fdc52dd9cd7f351c2c4c5c0c0a1e6cffc4f DIST memchr-2.7.2.crate 96220 BLAKE2B 2399064b6db21838d4aa0b25ed0bf04940ee3820741658cc6bf62e5ade08f41320df743ff13f99b2781da7b844e18deb1cfe25fe570f0e93f98ff03ca5d442e3 SHA512 cadcb4239c7f3aaab042592c5186770a225621e32f8583052fd3dbebb4a6d9b99be28f589b39b5ca36cb2d56fb3709e7d4ba91838ebb882e28e51280c02bbc40 DIST memchr-2.7.4.crate 96670 BLAKE2B da38114beca670467c3e1fbf4e415af6f22d52e3223715d52e181babb89b872b46511563985bcc16d7ff4e82f812c6e83ad904b0fe2501b14445119dfa8240e6 SHA512 8d0e8b9c30208897d4b1b920f1bdcccd0c2b75d92a06abe4a1b2407938768abb6487d63de56c6a80419798fe69517210643dfaf11f5f5540185f0eccf220adb2 DIST memoffset-0.9.0.crate 9033 BLAKE2B 19090c1af8b8cf54a2cf7593748aff4d3dc685ec7080aa476139c1721ef71555495e1bc513b1efaddc7e7702f83e0e1c2a8f71ff40009d266539484c9297e0ed SHA512 2f04f9b6fed31e94388c18162ad275897a835df7b9ac827f4df0f4b0ecf71064ef247f7ad11dbc27d7a6d448984a0f29d1c000e3c8d5fa6e121fa9571770ec55 diff --git a/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.8.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.8.2.ebuild new file mode 100644 index 00000000000..0a39c135c2f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.8.2.ebuild @@ -0,0 +1,160 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( pypy3 python3_{10..13} ) +RUST_MIN_VER=1.75.0 +inherit cargo distutils-r1 flag-o-matic shell-completion toolchain-funcs + +DESCRIPTION="Build and publish crates with pyo3, rust-cpython and cffi bindings" +HOMEPAGE="https://www.maturin.rs/" +SRC_URI=" + https://github.com/PyO3/maturin/archive/refs/tags/v${PV}.tar.gz + -> ${P}.gh.tar.gz + https://dev.gentoo.org/~ionen/distfiles/${P}-vendor.tar.xz +" +# ^ tarball also includes test-crates' Cargo.lock(s) crates for tests + +# rustls+ring is unused, so openssl license can be skipped +LICENSE="|| ( Apache-2.0 MIT ) doc? ( CC-BY-4.0 OFL-1.1 )" +LICENSE+=" + 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 MIT + MPL-2.0 Unicode-3.0 Unicode-DFS-2016 +" # crates +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="doc +ssl test" +RESTRICT="!test? ( test )" + +TOMLI_DEPEND="$(python_gen_cond_dep 'dev-python/tomli[${PYTHON_USEDEP}]' 3.10)" +DEPEND=" + app-arch/xz-utils + ssl? ( dev-libs/openssl:= ) +" +RDEPEND=" + ${DEPEND} + ${TOMLI_DEPEND} +" +BDEPEND=" + virtual/pkgconfig + doc? ( app-text/mdbook ) + test? ( + ${TOMLI_DEPEND} + $(python_gen_cond_dep 'dev-python/cffi[${PYTHON_USEDEP}]' 'python*') + dev-python/boltons[${PYTHON_USEDEP}] + dev-python/virtualenv[${PYTHON_USEDEP}] + dev-vcs/git + elibc_musl? ( dev-util/patchelf ) + ) +" + +QA_FLAGS_IGNORED="usr/bin/${PN}" + +src_prepare() { + distutils-r1_src_prepare + + # we build the Rust executable (just once) via cargo_src_compile + sed -i -e '/setuptools_rust/d' -e '/rust_extensions/d' setup.py || die + + if use test; then + # used to prevent use of network during tests, and silence pip + # if it finds unrelated issues with system packages (bug #913613) + cat > "${T}"/pip.conf <<-EOF || die + [global] + quiet = 2 + + [install] + no-index = yes + no-dependencies = yes + EOF + + # uv does not work easily w/ network-sandbox, force virtualenv + sed -i 's/"uv"/"uv-not-found"/' tests/common/mod.rs || die + + # used by *git_sdist_generator tests + git init -q || die + git config --global user.email "larry@gentoo.org" || die + git config --global user.name "Larry the Cow" || die + git add . || die + git commit -qm init || die + fi +} + +src_configure() { + export OPENSSL_NO_VENDOR=1 + + # bug #938847 (TODO?: should probably be an eclass default for musl) + use elibc_musl && RUSTFLAGS+=" -C target-feature=-crt-static" + + # https://github.com/rust-lang/stacker/issues/79 + use s390 && ! is-flagq '-march=*' && + append-cflags $(test-flags-CC -march=z10) + + local myfeatures=( + # like release.yml + native-tls for better platform support than rustls + full + password-storage + $(usev ssl native-tls) + ) + + cargo_src_configure --no-default-features +} + +python_compile_all() { + cargo_src_compile + + use !doc || mdbook build -d html guide || die + + if ! tc-is-cross-compiler; then + local maturin=$(cargo_target_dir)/maturin + "${maturin}" completions bash > "${T}"/${PN} || die + "${maturin}" completions fish > "${T}"/${PN}.fish || die + "${maturin}" completions zsh > "${T}"/_${PN} || die + else + ewarn "shell completion files were skipped due to cross-compilation" + fi +} + +python_test() { + local -x MATURIN_TEST_PYTHON=${EPYTHON} + local -x PIP_CONFIG_FILE=${T}/pip.conf + local -x VIRTUALENV_SYSTEM_SITE_PACKAGES=1 + + # need this for (new) python versions not yet recognized by pyo3 + local -x PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1 + + local skip=( + # picky cli output test that easily benignly fail (bug #937992) + --skip cli_tests + # avoid need for wasm over a single hello world test + --skip integration_wasm_hello_world + # fragile depending on rust version, also wants libpypy*-c.so for pypy + --skip pyo3_no_extension_module + # unimportant tests that require uv, and not obvious to get it + # to work with network-sandbox (not worth the trouble) + --skip develop_hello_world::case_2 + --skip develop_pyo3_ffi_pure::case_2 + # compliance test using zig requires an old libc to pass (bug #946967) + --skip integration_pyo3_mixed_py_subdir + # fails on sparc since rust-1.74 (bug #934573), skip for now given + # should not affect the pep517 backend which is all we need on sparc + $(usev sparc '--skip build_context::test::test_macosx_deployment_target') + ) + + cargo_src_test -- "${skip[@]}" +} + +python_install_all() { + cargo_src_install + + dodoc Changelog.md README.md + use doc && dodoc -r guide/html + + if ! tc-is-cross-compiler; then + dobashcomp "${T}"/${PN} + dofishcomp "${T}"/${PN}.fish + dozshcomp "${T}"/_${PN} + fi +} diff --git a/sdk_container/src/third_party/portage-stable/dev-util/perf/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/perf/Manifest index 977f179955c..0500a6afa64 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/perf/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-util/perf/Manifest @@ -1,4 +1,6 @@ DIST linux-6.11.tar.xz 146900704 BLAKE2B e7750c0878d71a56a0ce52d4c4c912199dad5bf5e2e8f872585a6494afbb37cbd852e612a6858936d2dc9b7776a3933818f540db408d57e90d18ea5249bba7ab SHA512 329c1f94008742e3f0c2ce7e591a16316d1b2cb9ea4596d4f45604097e07b7aa2f64afa40630a07f321a858455c77aa32ba57b271932ddcf4dc27863f9081cea DIST linux-6.12.tar.xz 147906904 BLAKE2B b2ec2fc69218cacabbbe49f78384a5d259ca581b717617c12b000b16f4a4c59ee348ea886b37147f5f70fb9a7a01c1e2c8f19021078f6b23f5bc62d1c48d5e5e SHA512 a37b1823df7b4f72542f689b65882634740ba0401a42fdcf6601d9efd2e132e5a7650e70450ba76f6cd1f13ca31180f2ccee9d54fe4df89bc0000ade4380a548 +DIST linux-6.13.tar.xz 148523052 BLAKE2B 9f617ecb3f2393b57ba03c654fea62a7213f24c835989f333a1ef29492af551bfa7d9ad786d5ef1484854adc77c7c6af38fb09a72d994d305695f512c325e77f SHA512 1137e6440132b0958f89165440e99208f82b204e7245ae69dc9c808df97d13ce8f58136db92407e0e93394fa7f6283ec7a34597c6e92a5b6d9025e0960357957 DIST linux-6.7.tar.xz 141406528 BLAKE2B cecdbd19905e43e485ab73b352ced18b37f2a138c97a6956cadcda5d3d271001117dc1cf896b166ff019fc7f405f9539e2ed0d6112b0890efb04d182adf4fd0e SHA512 de06de556191614bd9daf077ae239360352a402bab407748e67f1e5108c92fd933e451707840ab22fe0f9976db3d1e1b60ca9d41cf894f015ca09b3f652b74ad DIST patch-6.11.7.xz 669756 BLAKE2B f2ec79bd337eaa61c7203c00ce61b3e5afa9eee38a3e38e63a7fc9270af86674e5c369ca7ddfe4fa5f79601b1c874af1ce732bd8987529c7db2f2f9ca54ba85b SHA512 031c22e2fa7e1c7808f50dc2120a35d10a0b81d30636c5d19146fe12558999517f132213b72c39a32d8cc2c0e14e16ff64cac63ef97f8be0ebe8e709a3de8156 +DIST patch-6.13.1.xz 9376 BLAKE2B 569a23e297ba11a0f344346253603abf178a3a534847d9b5481c1e69d825afb00d5996e4488ecc44f45272a74d130b4fd53094e3508f9c1da878eefe36d46b46 SHA512 f964a63a1b186f64042a08f454f9b025a3f013aecf860538ba5597c9ee75ac7c1210f6ec57d8c6dab9fe8af348c511dadda04e23baa6bea6f3f6c084593e3d0e diff --git a/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.13.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.13.1.ebuild new file mode 100644 index 00000000000..1ad4d07300a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.13.1.ebuild @@ -0,0 +1,350 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_COMPAT=( {16..19} ) +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/" + +LINUX_V="${PV:0:1}.x" +if [[ ${PV} == *_rc* ]] ; then + LINUX_VER=$(ver_cut 1-2).$(($(ver_cut 3)-1)) + PATCH_VERSION=$(ver_cut 1-3) + LINUX_PATCH=patch-${PV//_/-}.xz + SRC_URI="https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/testing/${LINUX_PATCH} + https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/testing/v${PATCH_VERSION}/${LINUX_PATCH}" +elif [[ ${PV} == *.*.* ]] ; then + # stable-release series + LINUX_VER=$(ver_cut 1-2) + LINUX_PATCH=patch-${PV}.xz + SRC_URI="https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/${LINUX_PATCH}" +else + LINUX_VER=${PV} +fi + +LINUX_SOURCES="linux-${LINUX_VER}.tar.xz" +SRC_URI+=" https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/${LINUX_SOURCES}" + +S_K="${WORKDIR}/linux-${LINUX_VER}" +S="${S_K}/tools/perf" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux" +IUSE="abi_mips_o32 abi_mips_n32 abi_mips_n64 babeltrace capstone big-endian bpf caps crypt debug +doc gtk java libpfm +libtraceevent +libtracefs lzma numa perl +python +slang systemtap tcmalloc unwind zstd" + +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} +" + +# setuptools (and Python) are always needed even if not building Python bindings +BDEPEND=" + ${LINUX_PATCH+dev-util/patchutils} + ${PYTHON_DEPS} + >=app-arch/tar-1.34-r2 + dev-python/setuptools[${PYTHON_USEDEP}] + app-alternatives/yacc + app-alternatives/lex + virtual/pkgconfig + doc? ( + app-text/asciidoc + app-text/sgml-common + app-text/xmlto + sys-process/time + ) +" + +RDEPEND=" + babeltrace? ( dev-util/babeltrace:0/1 ) + bpf? ( + dev-libs/libbpf + dev-util/bpftool + dev-util/pahole + $(llvm_gen_dep ' + llvm-core/clang:${LLVM_SLOT}= + llvm-core/llvm:${LLVM_SLOT}= + ') + ) + caps? ( sys-libs/libcap ) + capstone? ( dev-libs/capstone ) + crypt? ( dev-libs/openssl:= ) + gtk? ( x11-libs/gtk+:2 ) + java? ( virtual/jre:* ) + libpfm? ( dev-libs/libpfm:= ) + libtraceevent? ( dev-libs/libtraceevent ) + libtracefs? ( dev-libs/libtracefs ) + lzma? ( app-arch/xz-utils ) + numa? ( sys-process/numactl ) + perl? ( dev-lang/perl:= ) + python? ( ${PYTHON_DEPS} ) + slang? ( sys-libs/slang ) + systemtap? ( dev-debug/systemtap ) + tcmalloc? ( dev-util/google-perftools ) + unwind? ( sys-libs/libunwind:= ) + zstd? ( app-arch/zstd:= ) + dev-libs/elfutils + sys-libs/binutils-libs:= + sys-libs/zlib + virtual/libcrypt +" + +DEPEND="${RDEPEND} + >=sys-kernel/linux-headers-5.10 + java? ( virtual/jdk ) +" + +QA_FLAGS_IGNORED=( + 'usr/bin/perf-read-vdso32' # not linked with anything except for libc + 'usr/libexec/perf-core/dlfilters/.*' # plugins +) + +pkg_pretend() { + if ! use doc ; then + ewarn "Without the doc USE flag you won't get any documentation nor man pages." + ewarn "And without man pages, you won't get any --help output for perf and its" + ewarn "sub-tools." + fi +} + +pkg_setup() { + local CONFIG_CHECK=" + ~!SCHED_OMIT_FRAME_POINTER + ~DEBUG_INFO + ~FRAME_POINTER + ~FTRACE + ~FTRACE_SYSCALLS + ~FUNCTION_TRACER + ~KALLSYMS + ~KALLSYMS_ALL + ~KPROBES + ~KPROBE_EVENTS + ~PERF_EVENTS + ~STACKTRACE + ~TRACEPOINTS + ~UPROBES + ~UPROBE_EVENTS + " + + use bpf && llvm-r1_pkg_setup + # We enable python unconditionally as libbpf always generates + # API headers using python script + python_setup + + if use bpf ; then + CONFIG_CHECK+="~BPF ~BPF_EVENTS ~BPF_SYSCALL ~DEBUG_INFO_BTF ~HAVE_EBPF_JIT ~UNWINDER_FRAME_POINTER" + fi + + linux-info_pkg_setup +} + +# src_unpack and src_prepare are copied to dev-util/bpftool since +# it's building from the same tarball, please keep it in sync with bpftool +src_unpack() { + local paths=( + 'arch/*/include/*' 'arch/*/lib/*' 'arch/*/tools/*' 'include/*' + 'kernel/bpf/*' 'lib/*' 'scripts/*' 'tools/arch/*' 'tools/bpf/*' + 'tools/build/*' 'tools/include/*' 'tools/lib/*' 'tools/perf/*' + 'tools/scripts/*' + ) + + # We expect the tar implementation to support the -j option (both + # GNU tar and libarchive's tar support that). + echo ">>> Unpacking ${LINUX_SOURCES} (${paths[*]}) to ${PWD}" + gtar --wildcards -xpf "${DISTDIR}"/${LINUX_SOURCES} \ + "${paths[@]/#/linux-${LINUX_VER}/}" || die + + if [[ -n ${LINUX_PATCH} ]] ; then + eshopts_push -o noglob + ebegin "Filtering partial source patch" + xzcat "${DISTDIR}"/${LINUX_PATCH} | filterdiff -p1 ${paths[@]/#/-i} > ${P}.patch + assert -n "Unpacking to ${P} from ${DISTDIR}/${LINUX_PATCH} failed" + eend $? || die "filterdiff failed" + test -s ${P}.patch || die "patch is empty?!" + eshopts_pop + fi + + local a + for a in ${A}; do + [[ ${a} == ${LINUX_SOURCES} ]] && continue + [[ ${a} == ${LINUX_PATCH} ]] && continue + unpack ${a} + done +} + +src_prepare() { + default + if [[ -n ${LINUX_PATCH} ]] ; then + pushd "${S_K}" >/dev/null || die + eapply "${WORKDIR}"/${P}.patch + popd || die + fi + + pushd "${S_K}" >/dev/null || die + # Gentoo patches go here + popd || die + + # Drop some upstream too-developer-oriented flags and fix the + # Makefile in general + sed -i \ + -e "s@\$(sysconfdir_SQ)/bash_completion.d@$(get_bashcompdir)@" \ + "${S}"/Makefile.perf || die + # A few places still use -Werror w/out $(WERROR) protection. + sed -i -e 's@-Werror@@' \ + "${S}"/Makefile.perf "${S_K}"/tools/lib/bpf/Makefile \ + "${S_K}"/tools/lib/perf/Makefile || die + + # Avoid the call to make kernelversion + sed -i -e '/PERF-VERSION-GEN/d' Makefile.perf || die + echo "#define PERF_VERSION \"${PV}\"" > PERF-VERSION-FILE + + # The code likes to compile local assembly files which lack ELF markings. + find -name '*.S' -exec sed -i '$a.section .note.GNU-stack,"",%progbits' {} + +} + +puse() { usex $1 "" 1; } +perf_make() { + # The arch parsing is a bit funky. The perf tools package is integrated + # into the kernel, so it wants an ARCH that looks like the kernel arch, + # but it also wants to know about the split value -- i386/x86_64 vs just + # x86. We can get that by telling the func to use an older linux version. + # It's kind of a hack, but not that bad ... + + # LIBDIR sets a search path of perf-gtk.so. Bug 515954 + + local arch=$(tc-arch-kernel) + local java_dir + use java && java_dir="${EPREFIX}/etc/java-config-2/current-system-vm" + + # sync this with the whitelist in tools/perf/Makefile.config + local disable_libdw + if ! use amd64 && ! use x86 && \ + ! use arm && \ + ! use arm64 && \ + ! use ppc && ! use ppc64 \ + ! use s390 && \ + ! use riscv && \ + ! use loong + then + disable_libdw=1 + fi + + # perf directly invokes LD for linking without going through CC, on mips + # it is required to specify the emulation. port of below buildroot patch + # https://patchwork.ozlabs.org/project/buildroot/patch/20170217105905.32151-1-Vincent.Riera@imgtec.com/ + local linker="$(tc-getLD)" + if use mips + then + if use big-endian + then + use abi_mips_n64 && linker+=" -m elf64btsmip" + use abi_mips_n32 && linker+=" -m elf32btsmipn32" + use abi_mips_o32 && linker+=" -m elf32btsmip" + else + use abi_mips_n64 && linker+=" -m elf64ltsmip" + use abi_mips_n32 && linker+=" -m elf32ltsmipn32" + use abi_mips_o32 && linker+=" -m elf32ltsmip" + fi + fi + + # FIXME: NO_CORESIGHT + local emakeargs=( + V=1 VF=1 + HOSTCC="$(tc-getBUILD_CC)" HOSTLD="$(tc-getBUILD_LD)" + CC="$(tc-getCC)" CXX="$(tc-getCXX)" AR="$(tc-getAR)" LD="${linker}" NM="$(tc-getNM)" + CLANG="${CHOST}-clang" + PKG_CONFIG="$(tc-getPKG_CONFIG)" + prefix="${EPREFIX}/usr" bindir_relative="bin" + tipdir="share/doc/${PF}" + EXTRA_CFLAGS="${CFLAGS}" + EXTRA_LDFLAGS="${LDFLAGS}" + ARCH="${arch}" + BUILD_BPF_SKEL=$(usex bpf 1 "") \ + BUILD_NONDISTRO=1 + JDIR="${java_dir}" + CORESIGHT= + GTK2=$(usex gtk 1 "") + feature-gtk2-infobar=$(usex gtk 1 "") + NO_AUXTRACE= + NO_BACKTRACE= + NO_CAPSTONE=$(puse capstone) + NO_DEMANGLE= + NO_JEVENTS=$(puse python) + NO_JVMTI=$(puse java) + NO_LIBAUDIT=1 + NO_LIBBABELTRACE=$(puse babeltrace) + NO_LIBBIONIC=1 + NO_LIBBPF=$(puse bpf) + NO_LIBCAP=$(puse caps) + NO_LIBCRYPTO=$(puse crypt) + NO_LIBDW_DWARF_UNWIND="${disable_libdw}" + NO_LIBELF= + NO_LIBLLVM=$(puse bpf) + NO_LIBNUMA=$(puse numa) + NO_LIBPERL=$(puse perl) + NO_LIBPFM4=$(puse libpfm) + NO_LIBPYTHON=$(puse python) + NO_LIBTRACEEVENT=$(puse libtraceevent) + NO_LIBUNWIND=$(puse unwind) + NO_LIBZSTD=$(puse zstd) + NO_SDT=$(puse systemtap) + NO_SHELLCHECK=1 + NO_SLANG=$(puse slang) + NO_LZMA=$(puse lzma) + NO_ZLIB= + TCMALLOC=$(usex tcmalloc 1 "") + WERROR=0 + DEBUG=$(usex debug 1 "") + LIBDIR="/usr/libexec/perf-core" + libdir="${EPREFIX}/usr/$(get_libdir)" + plugindir="${EPREFIX}/usr/$(get_libdir)/perf/plugins" + "$@" + ) + emake "${emakeargs[@]}" +} + +src_compile() { + filter-lto + + perf_make -f Makefile.perf + use doc && perf_make -C Documentation man +} + +src_test() { + : +} + +src_install() { + _install_python_ext() { + perf_make -f Makefile.perf install-python_ext DESTDIR="${D}" + } + + perf_make -f Makefile.perf install DESTDIR="${D}" + + if use python; then + python_foreach_impl _install_python_ext + fi + + if use gtk; then + local libdir + libdir="$(get_libdir)" + # on some arches it ends up in lib even on 64bit, ppc64 for instance. + [[ -f "${ED}"/usr/lib/libperf-gtk.so ]] && libdir="lib" + mv "${ED}"/usr/${libdir}/libperf-gtk.so \ + "${ED}"/usr/libexec/perf-core || die + fi + + dodoc CREDITS + + dodoc *txt Documentation/*.txt + + # perf needs this decompressed to print out tips for users + docompress -x /usr/share/doc/${PF}/tips.txt + + if use doc ; then + doman Documentation/*.1 + fi +} diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/git/files/git-2.48.1-parallel-build.patch b/sdk_container/src/third_party/portage-stable/dev-vcs/git/files/git-2.48.1-parallel-build.patch new file mode 100644 index 00000000000..fb10f59b2d0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-vcs/git/files/git-2.48.1-parallel-build.patch @@ -0,0 +1,85 @@ +https://bugs.gentoo.org/948865 +https://lore.kernel.org/git/20250122-b4-pks-meson-additions-v3-4-5a51eb5d3dcd@pks.im/ + +From: Patrick Steinhardt +Date: Wed, 22 Jan 2025 13:05:47 +0100 +Subject: [PATCH v3 04/11] meson: fix dependencies for generated headers +Precedence: bulk +X-Mailing-List: git@vger.kernel.org +List-Id: +List-Subscribe: +List-Unsubscribe: +MIME-Version: 1.0 +Content-Type: text/plain; charset="utf-8" +Content-Transfer-Encoding: 7bit +Message-Id: <20250122-b4-pks-meson-additions-v3-4-5a51eb5d3dcd@pks.im> +References: <20250122-b4-pks-meson-additions-v3-0-5a51eb5d3dcd@pks.im> +In-Reply-To: <20250122-b4-pks-meson-additions-v3-0-5a51eb5d3dcd@pks.im> +To: git@vger.kernel.org +Cc: Evan Martin , + Eli Schwartz , Junio C Hamano , + M Hickford , Toon Claes +X-Mailer: b4 0.14.2 + +We generate a couple of headers from our documentation. These headers +are added to the libgit sources, but two of them aren't used by the +library, but instead by our builtins. This can cause parallel builds to +fail because the builtin object may be compiled before the header was +generated. + +Fix the issue by adding both "config-list.h" and "hook-list.h" to the +list of builtin sources. While "command-list.h" is generated similarly, +it is used by "help.c" and thus part of the libgit sources indeed. + +Reported-by: Evan Martin +Signed-off-by: Patrick Steinhardt +--- + meson.build | 18 +++++++++--------- + 1 file changed, 9 insertions(+), 9 deletions(-) + +diff --git a/meson.build b/meson.build +index 213998986e..4053024dad 100644 +--- a/meson.build ++++ b/meson.build +@@ -487,6 +487,13 @@ libgit_sources = [ + 'xdiff/xutils.c', + ] + ++libgit_sources += custom_target( ++ input: 'command-list.txt', ++ output: 'command-list.h', ++ command: [shell, meson.current_source_dir() + '/generate-cmdlist.sh', meson.current_source_dir(), '@OUTPUT@'], ++ env: script_environment, ++) ++ + builtin_sources = [ + 'builtin/add.c', + 'builtin/am.c', +@@ -614,14 +621,7 @@ builtin_sources = [ + 'builtin/write-tree.c', + ] + +-libgit_sources += custom_target( +- input: 'command-list.txt', +- output: 'command-list.h', +- command: [shell, meson.current_source_dir() + '/generate-cmdlist.sh', meson.current_source_dir(), '@OUTPUT@'], +- env: script_environment, +-) +- +-libgit_sources += custom_target( ++builtin_sources += custom_target( + output: 'config-list.h', + command: [ + shell, +@@ -632,7 +632,7 @@ libgit_sources += custom_target( + env: script_environment, + ) + +-libgit_sources += custom_target( ++builtin_sources += custom_target( + input: 'Documentation/githooks.txt', + output: 'hook-list.h', + command: [ + +-- +2.48.1.321.gbf1f004a4a.dirty diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.48.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.48.1.ebuild index f90f10f55f1..12b9dd2011c 100644 --- a/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.48.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.48.1.ebuild @@ -149,6 +149,7 @@ RESTRICT="!test? ( test )" PATCHES=( "${FILESDIR}"/${PN}-2.48.0-doc-deps.patch + "${FILESDIR}"/${PN}-2.48.1-parallel-build.patch ) pkg_setup() { diff --git a/sdk_container/src/third_party/portage-stable/eclass/cargo.eclass b/sdk_container/src/third_party/portage-stable/eclass/cargo.eclass index 0bc24feea22..25a2127f639 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/cargo.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/cargo.eclass @@ -396,6 +396,9 @@ cargo_gen_config() { jobs = $(makeopts_jobs) incremental = false + [env] + RUST_TEST_THREADS = "$(makeopts_jobs)" + [term] verbose = true $([[ "${NOCOLOR}" = true || "${NOCOLOR}" = yes ]] && echo "color = 'never'") 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 3e67e3b4c11..9590192bb1f 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/flag-o-matic.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/flag-o-matic.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: flag-o-matic.eclass @@ -201,7 +201,7 @@ _filter-hardened() { continue fi - is-flagq -fno-stack-protector-all || append-flags $(test-flags -fno-stack-protector-all) + is-flagq -fno-stack-protector || append-flags $(test-flags -fno-stack-protector) ;; -fno-strict-overflow) gcc-specs-nostrict || continue diff --git a/sdk_container/src/third_party/portage-stable/eclass/rust.eclass b/sdk_container/src/third_party/portage-stable/eclass/rust.eclass index 0630d597385..46b441ba670 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/rust.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/rust.eclass @@ -67,6 +67,7 @@ fi # @DESCRIPTION: # Definitive list of Rust slots and the associated LLVM slot, newest first. declare -A -g -r _RUST_LLVM_MAP=( + ["1.84.1"]=19 ["1.84.0"]=19 ["1.83.0"]=19 ["1.82.0"]=19 @@ -79,7 +80,6 @@ declare -A -g -r _RUST_LLVM_MAP=( ["1.75.0"]=17 ["1.74.1"]=17 ["1.71.1"]=16 - ["1.54.0"]=12 ) # @ECLASS_VARIABLE: _RUST_SLOTS_ORDERED @@ -89,6 +89,7 @@ declare -A -g -r _RUST_LLVM_MAP=( # While _RUST_LLVM_MAP stores useful info about the relationship between Rust and LLVM slots, # this array is used to store the Rust slots in a more convenient order for iteration. declare -a -g -r _RUST_SLOTS_ORDERED=( + "1.84.1" "1.84.0" "1.83.0" "1.82.0" @@ -101,7 +102,6 @@ declare -a -g -r _RUST_SLOTS_ORDERED=( "1.75.0" "1.74.1" "1.71.1" - "1.54.0" ) # == user control knobs == diff --git a/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass b/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass index 3f7c2fbff78..f0a6caf5674 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass @@ -299,7 +299,8 @@ tc_has_feature() { if [[ ${PN} != kgcc64 && ${PN} != gcc-* ]] ; then IUSE+=" debug +cxx" IUSE+=" +fortran" TC_FEATURES+=( fortran ) - IUSE+=" doc hardened multilib objc" + IUSE+=" doc" TC_FEATURES+=( doc ) + IUSE+=" hardened multilib objc" IUSE+=" pgo" IUSE+=" objc-gc" TC_FEATURES+=( objc-gc ) IUSE+=" libssp objc++" @@ -380,6 +381,11 @@ BDEPEND=" >=sys-devel/autogen-5.5.4 ) " + +if tc_has_feature doc ; then + BDEPEND+=" doc? ( app-text/doxygen )" +fi + DEPEND="${RDEPEND}" if [[ ${PN} == gcc && ${PV} == *_p* ]] ; then @@ -1473,7 +1479,7 @@ toolchain_src_configure() { confgcc+=( # https://gcc.gnu.org/PR100289 - # TOOD: Find a way to disable this just for stage1 cross? + # TODO: Find a way to disable this just for stage1 cross? --disable-gcov --disable-bootstrap @@ -2099,6 +2105,11 @@ gcc_do_filter_flags() { # https://gcc.gnu.org/PR100431 filter-flags -Werror=format-security + if ver_test -lt 10.1 ; then + filter-flags '-fdiagnostics-urls=*' + filter-flags '-Wstringop-overread' + fi + if ver_test -lt 13.6 ; then # These aren't supported by the just-built compiler either. filter-flags -fharden-compares -fharden-conditional-branches \ @@ -2266,6 +2277,8 @@ gcc_do_make() { local emakeargs=( LDFLAGS="${LDFLAGS}" + # TODO: Can we replace this with --enable-version-specific-runtime-libs + # these days? LIBPATH="${LIBPATH}" ) @@ -2340,22 +2353,18 @@ gcc_do_make() { pushd "${WORKDIR}"/build >/dev/null || die emake "${emakeargs[@]}" ${GCC_MAKE_TARGET} - if ! is_crosscompile && _tc_use_if_iuse cxx && _tc_use_if_iuse doc ; then - if type -p doxygen > /dev/null ; then - cd "${CTARGET}"/libstdc++-v3/doc || die - emake doc-man-doxygen + if ! is_crosscompile && _tc_use_if_iuse cxx && tc_has_feature doc && _tc_use_if_iuse doc ; then + cd "${CTARGET}"/libstdc++-v3/doc || die + emake doc-man-doxygen - # Clean bogus manpages. bug #113902 - find -name '*_build_*' -delete || die + # Clean bogus manpages. bug #113902 + find -name '*_build_*' -delete || die - # Blow away generated directory references. Newer versions of gcc - # have gotten better at this, but not perfect. This is easier than - # backporting all of the various doxygen patches. bug #486754 - find -name '*_.3' -exec grep -l ' Directory Reference ' {} + | \ - xargs rm -f - else - ewarn "Skipping libstdc++ manpage generation since you don't have doxygen installed" - fi + # Blow away generated directory references. Newer versions of gcc + # have gotten better at this, but not perfect. This is easier than + # backporting all of the various doxygen patches. bug #486754 + find -name '*_.3' -exec grep -l ' Directory Reference ' {} + | \ + xargs rm -f fi popd >/dev/null || die @@ -2965,7 +2974,7 @@ toolchain_pkg_postrm() { return 0 else # Removed the last GCC installed (bug #906040) - if ! has_version "sys-devel/gcc" && has_version "sys-devel/clang" ; then + if ! has_version "sys-devel/gcc" && has_version "llvm-core/clang" ; then einfo "Last GCC version removed. Cleaning up ${EROOT}/etc/clang/gentoo-gcc-install.cfg." echo > "${EROOT}"/etc/clang/gentoo-gcc-install.cfg fi 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 17ef60db1f6..3ded2bc40c6 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 @@ -1,8 +1,4 @@ -DIST libpng-1.6.40-apng-apng.patch.gz 10330 BLAKE2B e2a5ff10ebaf75019d20edb148ea26fd6b255842aa34e8af31a919ae3c059b28eb827831289f47428e5f55c239f23a600677fde58e74bf0a2db27b5001f9ccb1 SHA512 803c45c2bbaf6c12863a09fb4d307c629680835b11a01c456512c81ef705e4f96c29e98c2486970ff1d86335cb4bd7568a30482c3e69601275d2a31d294058db -DIST libpng-1.6.40-libpng-apng-apng.patch.gz 10815 BLAKE2B 47b09d730d6be1d481ab48e511068a38fc3448339aaeab1d8ad21f26de6cb79006c64785de2e0514ff820a75101c0010b84cce923d10e8f6198e4e99916d08f2 SHA512 373cc9f0df15f7c77c0a59ddaac22374cfae37174b63a642e68e3a17a6d0bb1015399d771998c7eb6b356b634f157f0009743f4cc659f3b8e480a9533010ef9c -DIST libpng-1.6.40.tar.xz 1021332 BLAKE2B 4dd2df57791ca68cc31ba966b9176ecb37458572c60eef34e31ff0d3266d25ad6ea9d2e8cae6bfaf7932b5c7bc231047d3ed139b3464304c41cc4d89611f5ba8 SHA512 a2ec37c529bf80f3fee3798191d080d06e14d6a1ffecd3c1a02845cb9693b5e308a1d82598a376101f9312d989d19f1fb6735b225d4b0b9f1b73f9f8a3edb17f -DIST libpng-1.6.42.tar.xz 1035484 BLAKE2B 8a8895b673ff90416a00c9ff775d7bdc38ab1ab0d83fd6e70cfffea2ed78bd42896950a64bf48ad9a00ea50d8c5d5702975b0bae7bb3300d4de4c82b334e513e SHA512 a9e8641f79ebc811e8e1e94c4966737f8d0f3aef33c86834c419ca76050567891c065899c3bc0c945c59b5d50c5ff7d693cc51089d06efe92e71ae8014fa157c -DIST libpng-1.6.43-apng-apng.patch.gz 10333 BLAKE2B 11bc92064e52f8a045b9d2a7158808471faf3e94b08dceae6aa5cfef635731ef3740e69b27118b9a5b2f2d3b810f108b8c30192388c569de1371f34a5f49f592 SHA512 3a3320c682fe8a575e76e9ede0a2d2d62533cbb206b428bfdf2729c649aaf3061b21e55c1d8848d474e40615b4e9870d49927b14de237777135524f904bac36c -DIST libpng-1.6.43.tar.xz 1044076 BLAKE2B e8781001f001e6f514ca01ceafc51557e6cdedcbed3aa64df213d02635eec937cac4ccc0f34b636f582a7d141b67ec6c8d90a6ffb15c679ab0c3f4f8798be791 SHA512 c95d661fed548708ce7de5d80621a432272bdfe991f0d4db3695036e5fafb8a717b4e4314991bdd3227d7aa07f8c6afb6037c57fa0fe3349334a0b6c58268487 DIST libpng-1.6.44-apng-apng.patch.gz 10336 BLAKE2B 3c78cadd08b48466eee7c271ec82649dab55f28977622128c78764257a3f53e3255ddb1d728f10cb457b4db314566fe54b7edc88ab68b3dd1a8310bda500ab4f SHA512 5b8502abd3fad84772136a9eea53a918f806ef7035fe6df5d2b631a5279f298b9f125922d5aab7306e7c7aa1445ac9e36072e22fab4005d20662232078187f3c DIST libpng-1.6.44.tar.xz 1045640 BLAKE2B 61064dd83f40a7e2e60ff723a568b7d0cda95aa80621a211aee7127b9783fbfc20cd82a2fe2d03584cbf9ab77c5444e3e008ac5ccc7f64af6e858ebcbcb78822 SHA512 bbd3e5e68d8b6fe3d85e59ca0babe8b522c19cac4b6ce0fcf21516cda7120b642be611eb1eaa565b7eabbacd22606593619aabd227b43a36f1efc707e7e11851 +DIST libpng-1.6.46-apng-apng.patch.gz 10266 BLAKE2B 51d04187fa631fcc388fafa86683579fe20a58c3f5dafb721632b82a82568842dff6772e29de1d95ffa5cb2dc188338c67f3d4427b9ee69fe98d20ab825aa0ba SHA512 78b33e4e2c68e8486c6666a5e2bdc57457e34952e2d0f8eed710913c92b895b8f96b96f0cfe8600a1c47c0b368e025f2fc20f3f52c435e5b3574e9f5aa546863 +DIST libpng-1.6.46.tar.xz 1054296 BLAKE2B 0cc4e4ca0a9394e1ee2778065ef03859854062103609c9356709a9540b8953a6198b5c44a5a05ae97d8f0e6035a171ab1797627f6523805cedf3f985960752c3 SHA512 80c4cb644e11d39533344e017faf61700fdfbf758531b1a9ffbeb0a2f8540d9ed373f4adab590ae994f5a17f7fd6eff8dac16ebfcc2a0c31e899fd63ae1e4c1e diff --git a/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.40-r1.ebuild b/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.40-r1.ebuild deleted file mode 100644 index eb69793bf03..00000000000 --- a/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.40-r1.ebuild +++ /dev/null @@ -1,67 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit libtool multilib-minimal - -APNG_REPO=apng # sometimes libpng-apng is more up to date -APNG_VERSION="1.6.40" -DESCRIPTION="Portable Network Graphics library" -HOMEPAGE="http://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_arm_neon cpu_flags_x86_sse static-libs" - -RDEPEND=">=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]" -DEPEND="${RDEPEND}" - -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 -} - -multilib_src_configure() { - local myeconfargs=( - $(use_enable cpu_flags_arm_neon arm-neon) - $(use_enable cpu_flags_x86_sse intel-sse) - $(use_enable static-libs static) - ) - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} - -multilib_src_install_all() { - default - - find "${ED}" \( -type f -o -type l \) -name '*.la' -delete || die -} diff --git a/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.43.ebuild b/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.43.ebuild deleted file mode 100644 index 07d46653406..00000000000 --- a/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.43.ebuild +++ /dev/null @@ -1,70 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit libtool multilib-minimal - -APNG_REPO=apng # sometimes libpng-apng is more up to date -APNG_VERSION="1.6.43" -DESCRIPTION="Portable Network Graphics library" -HOMEPAGE="http://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_arm_neon cpu_flags_x86_sse static-libs test" -RESTRICT="!test? ( test )" - -RDEPEND=">=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]" -DEPEND="${RDEPEND}" - -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 -} - -multilib_src_configure() { - local myeconfargs=( - $(multilib_native_enable tools) - $(use_enable test tests) - $(use_enable cpu_flags_arm_neon arm-neon) - $(use_enable cpu_flags_x86_sse intel-sse) - $(use_enable static-libs static) - ) - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} - -multilib_src_install_all() { - default - - find "${ED}" \( -type f -o -type l \) -name '*.la' -delete || die -} diff --git a/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.42.ebuild b/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.46.ebuild similarity index 88% rename from sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.42.ebuild rename to sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.46.ebuild index 9b2e3527fb9..17cfb6906cf 100644 --- a/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.42.ebuild +++ b/sdk_container/src/third_party/portage-stable/media-libs/libpng/libpng-1.6.46.ebuild @@ -1,12 +1,12 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit libtool multilib-minimal -APNG_REPO=libpng-apng # sometimes libpng-apng is more up to date -APNG_VERSION="1.6.40" +APNG_REPO=apng # sometimes libpng-apng is more up to date +APNG_VERSION="1.6.46" DESCRIPTION="Portable Network Graphics library" HOMEPAGE="http://www.libpng.org/" SRC_URI=" @@ -20,7 +20,7 @@ SRC_URI=" 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_arm_neon cpu_flags_x86_sse static-libs test" +IUSE="apng cpu_flags_x86_sse static-libs test" RESTRICT="!test? ( test )" RDEPEND=">=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]" @@ -55,7 +55,6 @@ multilib_src_configure() { local myeconfargs=( $(multilib_native_enable tools) $(use_enable test tests) - $(use_enable cpu_flags_arm_neon arm-neon) $(use_enable cpu_flags_x86_sse intel-sse) $(use_enable static-libs static) ) 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 756f84c586f..90e34546815 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 @@ -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 @@ -18,7 +18,7 @@ SRC_URI=" LICENSE="MIT ISC" # Subslot = SONAME of libcares.so.2 SLOT="0/2" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~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="static-libs test" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/net-libs/gnutls/Manifest b/sdk_container/src/third_party/portage-stable/net-libs/gnutls/Manifest index 97b49acfe0d..d5dd2ac23fa 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/gnutls/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-libs/gnutls/Manifest @@ -2,3 +2,5 @@ DIST gnutls-3.8.7.1.tar.xz 6695404 BLAKE2B 43334190ce1e45c5302b195f17d06e767d1be DIST gnutls-3.8.7.1.tar.xz.sig 580 BLAKE2B ca627d7b3f089205c94f556bee9c06428ada9e0116bb50486dc7dd70f611ae744416d96b17452749d102ccd16bf7b400577b1886a7c8be55833c9e2fde85f9ae SHA512 53ebdaa9775ae22f7eb5e7d6f5411ec667c9c880cea84e23651b6d1994fb1398c09d8efa39b21c96f8be29fa09c2436bdd732a061308956ca1650e3e1878ed57 DIST gnutls-3.8.8.tar.xz 6696460 BLAKE2B d1498b0b9f14789599fd5b984d5370b632611f2702e9f4fc504ddba2a3e0dd4137bec858eb6150d031f9f50e6b3a3a7d905864f0a9f50a1f01e5ea8f37a44ba8 SHA512 4f617c63e8e8392e400d72c9e39989fcd782268b4a4c4e36bbfb0444a4b5bcb0f53054f04a6dce99ab89c0f38f57430c95aaaec6eb9209b8e9329140abf230c3 DIST gnutls-3.8.8.tar.xz.sig 580 BLAKE2B 11a30f09e3a478615df2c6a0e40c0b9b2aad5794a82ae0cc871fcf3699b5d9725c9d04708c6f0b983da6e21f90a81f7550e723d0d04f97d1a16d526efbe91b1e SHA512 fdff792511e9e5de203a1dfd66bf521c12fb74a19de651ffa1f7359dafdd1dad59ae57d0f95fa363c4167f798e6b624b4ae1f84d4e0737ff690c2fb0e5a5bdce +DIST gnutls-3.8.9.tar.xz 6847364 BLAKE2B 0fd4751e24649a9c4b8ee7616350a4b6a504ec10b3ef39b450af25abc4935f30df9e8f732435166516f89c692ac7cb7a0aafb76c4c86c1faff53119840d26ae7 SHA512 b3b201671bf4e75325610a0291d4cd36a669718e22b3685246b64bde97b5bd94f463ab376ed817869869714115f4ff11bdc53c32604bb04a8ff8e10daa6d1fc7 +DIST gnutls-3.8.9.tar.xz.sig 566 BLAKE2B 3e723c90186a00b33f1d036c564039f7340ae495400f05d31bb054dad93a9529be4761ba9f97b2df51e8483dd1433c902cf5b8f9bdc127d0f540c9faf82a8f1c SHA512 5a47a519ef35f21b59e2122528246d6109dd95667bfe5d01713b9a7efa2931f8523bf325b8824433f3117d63e0e50d66f8c467a7ee4bd2068ae039601a28441e diff --git a/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.9.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.9.ebuild new file mode 100644 index 00000000000..2b4733c304d --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-libs/gnutls/gnutls-3.8.9.ebuild @@ -0,0 +1,161 @@ +# 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/gnutls.asc +inherit autotools multilib-minimal verify-sig + +DESCRIPTION="A secure communications library implementing the SSL, TLS and DTLS protocols" +HOMEPAGE="https://www.gnutls.org/" +SRC_URI="mirror://gnupg/gnutls/v$(ver_cut 1-2)/${P}.tar.xz" +SRC_URI+=" verify-sig? ( mirror://gnupg/gnutls/v$(ver_cut 1-2)/${P}.tar.xz.sig )" +if [[ ${PV} == 3.8.7.1 ]] ; then + # Workaround for botched dist tarball + S="${WORKDIR}"/gnutls-3.8.7 +fi + +LICENSE="GPL-3 LGPL-2.1+" +# As of 3.8.0, the C++ library is header-only, but we won't drop the subslot +# component for it until libgnutls.so breaks ABI, to avoid pointless rebuilds. +# Subslot format: +# . +SLOT="0/30.30" +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="brotli +cxx dane doc examples +idn nls +openssl pkcs11 sslv2 sslv3 static-libs test test-full +tls-heartbeat tools zlib zstd" +REQUIRED_USE="test-full? ( cxx dane doc examples idn nls openssl pkcs11 tls-heartbeat tools )" +RESTRICT="!test? ( test )" + +# >=nettle-3.10 as a workaround for bug #936011 +RDEPEND=" + >=dev-libs/libtasn1-4.9:=[${MULTILIB_USEDEP}] + dev-libs/libunistring:=[${MULTILIB_USEDEP}] + >=dev-libs/nettle-3.10:=[gmp,${MULTILIB_USEDEP}] + >=dev-libs/gmp-5.1.3-r1:=[${MULTILIB_USEDEP}] + brotli? ( >=app-arch/brotli-1.0.0:=[${MULTILIB_USEDEP}] ) + dane? ( >=net-dns/unbound-1.4.20:=[${MULTILIB_USEDEP}] ) + nls? ( >=virtual/libintl-0-r1:=[${MULTILIB_USEDEP}] ) + pkcs11? ( >=app-crypt/p11-kit-0.23.1[${MULTILIB_USEDEP}] ) + idn? ( >=net-dns/libidn2-0.16-r1:=[${MULTILIB_USEDEP}] ) + zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] ) + zstd? ( >=app-arch/zstd-1.3.0:=[${MULTILIB_USEDEP}] ) +" +DEPEND=" + ${RDEPEND} + test-full? ( sys-libs/libseccomp ) +" +BDEPEND=" + dev-build/gtk-doc-am + >=virtual/pkgconfig-0-r1 + doc? ( dev-util/gtk-doc ) + nls? ( sys-devel/gettext ) + test-full? ( + app-crypt/dieharder + || ( sys-libs/libfaketime >=app-misc/datefudge-1.22 ) + dev-libs/softhsm:2[-bindist(-)] + net-dialup/ppp + net-misc/socat + ) + verify-sig? ( >=sec-keys/openpgp-keys-gnutls-20240415 ) +" + +DOCS=( README.md doc/certtool.cfg ) + +HTML_DOCS=() + +QA_CONFIG_IMPL_DECL_SKIP=( + # gnulib FPs + MIN + alignof + static_assert +) + +src_prepare() { + default + + # bug #520818 + export TZ=UTC + + use doc && HTML_DOCS+=( doc/gnutls.html ) + + # don't try to use system certificate store on macOS, it is + # confusingly ignoring our ca-certificates and more importantly + # fails to compile in certain configurations + sed -i -e 's/__APPLE__/__NO_APPLE__/' lib/system/certs.c || die + + # Use sane .so versioning on FreeBSD. + #elibtoolize + + # Switch back to elibtoolize after 3.8.7.1 + eautoreconf +} + +multilib_src_configure() { + LINGUAS="${LINGUAS//en/en@boldquot en@quot}" + + local libconf=() + + # TPM needs to be tested before being enabled + # Note that this may add a libltdl dep when enabled. Check configure.ac. + libconf+=( + --without-tpm + --without-tpm2 + ) + + # hardware-accel is disabled on OSX because the asm files force + # GNU-stack (as doesn't support that) and when that's removed ld + # complains about duplicate symbols + [[ ${CHOST} == *-darwin* ]] && libconf+=( --disable-hardware-acceleration ) + + # -fanalyzer substantially slows down the build and isn't useful for + # us. It's useful for upstream as it's static analysis, but it's not + # useful when just getting something built. + export gl_cv_warn_c__fanalyzer=no + + local myeconfargs=( + --disable-valgrind-tests + $(multilib_native_enable manpages) + $(multilib_native_use_enable doc gtk-doc) + $(multilib_native_use_enable doc) + $(multilib_native_use_enable test tests) + $(multilib_native_use_enable test-full full-test-suite) + $(multilib_native_use_enable test-full seccomp-tests) + $(multilib_native_use_enable tools) + $(use_enable cxx) + $(use_enable dane libdane) + $(use_enable nls) + $(use_enable openssl openssl-compatibility) + $(use_enable sslv2 ssl2-support) + $(use_enable sslv3 ssl3-support) + $(use_enable static-libs static) + $(use_enable tls-heartbeat heartbeat-support) + $(use_with brotli) + $(use_with idn) + $(use_with pkcs11 p11-kit) + $(use_with zlib) + $(use_with zstd) + --disable-rpath + --with-default-trust-store-file="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt + --with-unbound-root-key-file="${EPREFIX}"/etc/dnssec/root-anchors.txt + --without-included-libtasn1 + $("${S}/configure" --help | grep -o -- '--without-.*-prefix') + ) + + ECONF_SOURCE="${S}" econf "${libconf[@]}" "${myeconfargs[@]}" + + if [[ ${CHOST} == *-solaris* ]] ; then + # gnulib ends up defining its own pthread_mutexattr_gettype + # otherwise, which is causing versioning problems + echo "#define PTHREAD_IN_USE_DETECTION_HARD 1" >> config.h || die + fi +} + +multilib_src_install_all() { + einstalldocs + find "${ED}" -type f -name '*.la' -delete || die + + if use examples; then + docinto examples + dodoc doc/examples/*.c + fi +} diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/Manifest b/sdk_container/src/third_party/portage-stable/net-misc/curl/Manifest index d4b9c62c3d6..24f5ecbff77 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/Manifest @@ -1,10 +1,8 @@ DIST curl-8.10.1.tar.xz 2726748 BLAKE2B bfdfa24f6d652884044c5e8eea5d70daad651b46255c99c9df502f9595a2dcbf8c4034446becf9e87f8e8a3f397a8fda29ab3e0d6020ac0dae62dd42b8136b78 SHA512 f1c7a12492dcfb8ba08be69b96a83ce9074592cbaa6b95c72b3c16fc58ad35e9f9deec7b72baca7d360d013b0b1c7ea38bd4edae464903ac67aa3c76238d8c6c DIST curl-8.10.1.tar.xz.asc 488 BLAKE2B 8e8f2b628d4e8964a76c1c43c5557aacbfc2d2dbc51be8a0fa1b157c257f15f29aedba842cba7cb270c4adcf0b4a5d9c8b0b3d49633c48b061fb3e1472303d66 SHA512 21d6d560c027efc9e3e5db182a77501d6376442221ba910df817e2ec980bee44a9fe2afc698205f8d5e8313ae47915a341d60206a46b46e816d73ee357a894ac -DIST curl-8.11.0.tar.xz 2750684 BLAKE2B 3db13ed558bee332e07e1eab878b5ecae14cd049c115eea3a25fcb78cf28aadfe577dc224df75b62844529994ec478a9a74fed5c9bae338f809d231420ae5d0a SHA512 3a642d421e0a5c09ecb681bea18498f2c6124e9af4d8afdc074dfb85a9b0211d8972ade9cf00ab44b5dfed9303262cd83551dd3b5e0976d11fc19da3c4a0987e -DIST curl-8.11.0.tar.xz.asc 488 BLAKE2B 5d91dc654d6a62c66e344ca92676b42e7a49f437e14f9fb714f7ae64a266d24d9bb7006b4512fc323459072ff0d9e05f627e494f34f845eadbedbd83acacc2ce SHA512 71073dde48e8f0013e392eb88bf70f6b8a4a4f0c955a3fb56db98e74aa10acc1004e2a0483f30be082e61b59a76fa75ae1d90545ace7c6b07bca8164078375f0 DIST curl-8.11.1.tar.xz 2751236 BLAKE2B a87ec2c78c5d6daf44eee4cf8e3ed124849d067f6c63145205fda18f33ddd3adce386058ead8f9b713f8e595f5e059acd13479eb00edc226247aabd3c2234112 SHA512 7c7c47a49505575b610c56b455f0919ea5082a993bf5483eeb258ead167aadb87078d626b343b417dcfc5439c53556425c8fb4fe3b01b53a87b47c01686a3e57 DIST curl-8.11.1.tar.xz.asc 488 BLAKE2B 53d58ebb8ab722d8394b7ce94b646c876324cd89b3e47d9129bddcfbb6db338c1dbe93a5e72a25caf7be9ddd450c2b0832cfee17beb8ba701bdeefe653235d53 SHA512 c09bedb67e83fb8ca3ad73c5bd0d92fed7fc2c26dbe5a71cccb193fd151c7219713241a9fe74baefcd1d008cfafba78142bf04cec24dd4a88d67179184d35824 -DIST curl-8.8.0.tar.xz 2748860 BLAKE2B c14903bad4cbd1752a5335afa6bcc78be1a484692fce0e0a6c2061963e0e6b4e56defb8332cef32d0dbddb481ad0443b71faf3a52a6e9d945c89ecbce373d2a3 SHA512 9d2c0d3a0d8f6c31ba4fabe48f801910f886fde43dc198dc4213708d6967ed5e040a1bb7348aa1cb126577ee508a3ec36fe65256d027d861d6ffb70f6383967a -DIST curl-8.8.0.tar.xz.asc 488 BLAKE2B d80c0ff357b344d7ec2b975a92f1eeb7557993b61a69e7adaaeab89c9b5a53ddade5104fe1a0ad260145db9c90fc0aae36dfc22320492db6696f290da9ff675b SHA512 37b501770225dff6b1e7bde1157f556f10ec1c597fcbbb5c8b8c370efb97a3a70f585f2f5c201b96380d68466696474a5f65a07da59b704678d6927567d25359 +DIST curl-8.12.0.tar.xz 2777552 BLAKE2B b38c7465a38f6bbdc6daa1e8a27dc810f970c9172ddf532881e83965e1fa6001beff1bf358e5138e1a0ae1121d877f6a5a4f38ef7ea7e03c8b06dc46fbf24022 SHA512 ed35f0020541050ce387f4ba80f9e87562ececd99082da1bae85840dee81c49b86a4a55909e15fcbf4eb116106a796c29a9b2678dee11326f80db75992c6edc5 +DIST curl-8.12.0.tar.xz.asc 488 BLAKE2B 8977dabab96b6f188e8b16497e7a4e589f05b5512a9bc6ec0ee36797615c720b9cb5c34bc90df6ee037d898b8fa7f708ad2b2ff789163adcb5308a2e0d7cf9df SHA512 8526554ffb2187b48b6a4c6a0d4a8c73d484ef3ce4c3791add0e759baf953ac7ae0b2f88d688365b1f09c5745198611fa1761aa14d02ddf52823c4ff238779cd DIST curl-8.9.1.tar.xz 2782364 BLAKE2B 6e38e20e2b03ab5bfbb8d9797442dfdd9644fc80d7b1f7c1efb1f44e0d730524e82ccf7413b2c6f4555bd61ae42f91ec7c0201e2c0d563811c85164aa234aada SHA512 a0fe234402875db194aad4e4208b7e67e7ffc1562622eea90948d4b9b0122c95c3dde8bbe2f7445a687cb3de7cb09f20e5819d424570442d976aa4c913227fc7 DIST curl-8.9.1.tar.xz.asc 488 BLAKE2B 437268f6e5ba5db73f205fd87f3ded1e5fc200e8bf63a83cdb7e21dfbf2f4a4620e598cd0bf5d8fa1548ade08d45b386599542cd988df46a238b85790409f42e SHA512 18acd58436d70900ab6912b84774da2c451b9dbfc83d6d00f85bbbe7894b67075918e58956fdb753fcc1486e4f10caa31139d7c68b037d7c83dc2e9c2fae9f9b diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.11.1-r2.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.11.1-r2.ebuild index 96c0bc7723d..1c959b004fb 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.11.1-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.11.1-r2.ebuild @@ -21,7 +21,7 @@ else https://curl.se/download/${P}.tar.xz verify-sig? ( https://curl.se/download/${P}.tar.xz.asc ) " - 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="BSD curl ISC test? ( BSD-4 )" diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.11.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.12.0-r1.ebuild similarity index 95% rename from sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.11.0-r1.ebuild rename to sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.12.0-r1.ebuild index 25637863726..7acb873fe0b 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.11.0-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.12.0-r1.ebuild @@ -156,15 +156,9 @@ QA_CONFIG_IMPL_DECL_SKIP=( ) PATCHES=( - "${FILESDIR}/${PN}-prefix-3.patch" + "${FILESDIR}/${PN}-prefix-4.patch" "${FILESDIR}/${PN}-respect-cflags-3.patch" - "${FILESDIR}/${P}-cmdline-ech-docs.patch" - "${FILESDIR}/${P}-curl-libssh-ipv6-brackets.patch" - "${FILESDIR}/${P}-mbedtls-global-init.patch" - "${FILESDIR}/${P}-setopt-http_content_decoding.patch" - "${FILESDIR}/${P}-cookie-case-sensitive.patch" - "${FILESDIR}/${P}-duphandle-init-netrc.patch" - "${FILESDIR}/${P}-netrc-large-file.patch" + "${FILESDIR}/${P}-multi.patch" ) src_prepare() { @@ -277,15 +271,12 @@ multilib_src_configure() { --enable-socketpair --disable-sspi $(use_enable static-libs static) - --enable-pthreads - --enable-threaded-resolver --disable-versioned-symbols --without-amissl --without-bearssl $(use_with brotli) --with-fish-functions-dir="${EPREFIX}"/usr/share/fish/vendor_completions.d $(use_with http2 nghttp2) - --without-hyper $(use_with idn libidn2) $(use_with kerberos gssapi "${EPREFIX}"/usr) --without-libgsasl @@ -321,9 +312,17 @@ multilib_src_configure() { ) fi - if [[ ${CHOST} == *mingw* ]] ; then + # Since 8.12.0 adns/c-ares and the threaded resolver are mutually exclusive + # This is in support of some work to enable `httpsrr` to use adns and the rest + # of curl to use the threaded resolver; we'll just make `httpsrr` conditional on adns + # when the time comes. + if use adns; then myconf+=( - --disable-pthreads + --disable-threaded-resolver + ) + else + myconf+=( + --enable-threaded-resolver ) fi diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.8.0-r2.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.12.0.ebuild similarity index 78% rename from sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.8.0-r2.ebuild rename to sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.12.0.ebuild index 89b07c74c60..f8c60550186 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.8.0-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.12.0.ebuild @@ -21,21 +21,30 @@ else https://curl.se/download/${P}.tar.xz verify-sig? ( https://curl.se/download/${P}.tar.xz.asc ) " - 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="BSD curl ISC test? ( BSD-4 )" SLOT="0" -IUSE="+adns +alt-svc brotli debug +ftp gnutls gopher +hsts +http2 idn +imap kerberos ldap mbedtls nghttp3 +openssl +pop3" -IUSE+=" +psl +progress-meter rtmp rustls samba +smtp ssh ssl sslv3 static-libs test telnet +tftp websockets zstd" -# These select the default SSL implementation -IUSE+=" curl_ssl_gnutls curl_ssl_mbedtls +curl_ssl_openssl curl_ssl_rustls" +IUSE="+adns +alt-svc brotli debug +ftp gnutls gopher +hsts +http2 +http3 idn +imap kerberos ldap mbedtls +openssl +pop3" +IUSE+=" +psl +progress-meter +quic rtmp rustls samba +smtp ssh ssl sslv3 static-libs test telnet +tftp +websockets zstd" +# These select the default tls implementation / which quic impl to use +IUSE+=" +curl_quic_openssl curl_quic_ngtcp2 curl_ssl_gnutls curl_ssl_mbedtls +curl_ssl_openssl curl_ssl_rustls" RESTRICT="!test? ( test )" -# Only one default ssl provider can be enabled -# The default ssl provider needs its USE satisfied -# nghttp3 = https://bugs.gentoo.org/912029 +# Only one default ssl / quic provider can be enabled +# The default provider needs its USE satisfied +# HTTP/3 and MultiSSL are mutually exclusive; it's not clear if MultiSSL offers any benefit at all in the modern day. +# https://github.com/curl/curl/commit/65ece771f4602107d9cdd339dff4b420280a2c2e REQUIRED_USE=" + quic? ( + ^^ ( + curl_quic_openssl + curl_quic_ngtcp2 + ) + http3 + ssl + ) ssl? ( ^^ ( curl_ssl_gnutls @@ -44,36 +53,49 @@ REQUIRED_USE=" curl_ssl_rustls ) ) + curl_quic_openssl? ( + curl_ssl_openssl + quic + !gnutls + !mbedtls + !rustls + ) + curl_quic_ngtcp2? ( + curl_ssl_gnutls + quic + !mbedtls + !openssl + !rustls + ) curl_ssl_gnutls? ( gnutls ) curl_ssl_mbedtls? ( mbedtls ) curl_ssl_openssl? ( openssl ) curl_ssl_rustls? ( rustls ) - nghttp3? ( - !openssl - alt-svc ) + http3? ( alt-svc quic ) " # cURL's docs and CI/CD are great resources for confirming supported versions # particulary for fast-moving targets like HTTP/2 and TCP/2 e.g.: # - https://github.com/curl/curl/blob/master/docs/INTERNALS.md (core dependencies + minimum versions) # - https://github.com/curl/curl/blob/master/docs/HTTP3.md (example of a feature that moves quickly) -# - https://github.com/curl/curl/blob/master/.github/workflows/quiche-linux.yml (CI/CD for TCP/2) +# - https://github.com/curl/curl/blob/master/.github/workflows/http3-linux.yml (CI/CD for TCP/2) # However 'supported' vs 'works' are two entirely different things; be sane but # don't be afraid to require a later version. - +# ngtcp2 = https://bugs.gentoo.org/912029 - can only build with one tls backend at a time. RDEPEND=" >=sys-libs/zlib-1.1.4[${MULTILIB_USEDEP}] adns? ( >=net-dns/c-ares-1.16.0:=[${MULTILIB_USEDEP}] ) brotli? ( app-arch/brotli:=[${MULTILIB_USEDEP}] ) - http2? ( >=net-libs/nghttp2-1.12.0:=[${MULTILIB_USEDEP}] ) - idn? ( net-dns/libidn2:=[static-libs?,${MULTILIB_USEDEP}] ) + http2? ( >=net-libs/nghttp2-1.15.0:=[${MULTILIB_USEDEP}] ) + http3? ( >=net-libs/nghttp3-1.1.0[${MULTILIB_USEDEP}] ) + idn? ( >=net-dns/libidn2-2.0.0:=[static-libs?,${MULTILIB_USEDEP}] ) kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] ) ldap? ( >=net-nds/openldap-2.0.0:=[static-libs?,${MULTILIB_USEDEP}] ) - nghttp3? ( - >=net-libs/nghttp3-1.1.0[${MULTILIB_USEDEP}] - >=net-libs/ngtcp2-1.2.0[gnutls,ssl,-openssl,${MULTILIB_USEDEP}] - ) psl? ( net-libs/libpsl[${MULTILIB_USEDEP}] ) + quic? ( + curl_quic_openssl? ( >=dev-libs/openssl-3.3.0:=[quic,${MULTILIB_USEDEP}] ) + curl_quic_ngtcp2? ( >=net-libs/ngtcp2-1.2.0[gnutls,ssl,-openssl,${MULTILIB_USEDEP}] ) + ) rtmp? ( media-video/rtmpdump[${MULTILIB_USEDEP}] ) ssh? ( >=net-libs/libssh2-1.0.0[${MULTILIB_USEDEP}] ) ssl? ( @@ -90,7 +112,7 @@ RDEPEND=" >=dev-libs/openssl-0.9.7:=[sslv3(-)=,static-libs?,${MULTILIB_USEDEP}] ) rustls? ( - >=net-libs/rustls-ffi-0.13.0:=[${MULTILIB_USEDEP}] + >=net-libs/rustls-ffi-0.14.0:=[${MULTILIB_USEDEP}] ) ) zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) @@ -104,12 +126,12 @@ BDEPEND=" test? ( sys-apps/diffutils http2? ( >=net-libs/nghttp2-1.15.0:=[utils,${MULTILIB_USEDEP}] ) - nghttp3? ( net-libs/nghttp2:=[utils,${MULTILIB_USEDEP}] ) + http3? ( net-libs/nghttp2:=[utils,${MULTILIB_USEDEP}] ) ) verify-sig? ( sec-keys/openpgp-keys-danielstenberg ) " -DOCS=( CHANGES README docs/{FEATURES.md,INTERNALS.md,FAQ,BUGS.md,CONTRIBUTE.md} ) +DOCS=( README docs/{FEATURES.md,INTERNALS.md,FAQ,BUGS.md,CONTRIBUTE.md} ) MULTILIB_WRAPPED_HEADERS=( /usr/include/curl/curlbuild.h @@ -134,11 +156,8 @@ QA_CONFIG_IMPL_DECL_SKIP=( ) PATCHES=( - "${FILESDIR}"/${PN}-prefix-2.patch - "${FILESDIR}"/${PN}-respect-cflags-3.patch - "${FILESDIR}"/${P}-install-manpage.patch - "${FILESDIR}"/${P}-mbedtls.patch - "${FILESDIR}"/${P}-multi_wait-timeout.patch + "${FILESDIR}/${PN}-prefix-4.patch" + "${FILESDIR}/${PN}-respect-cflags-3.patch" ) src_prepare() { @@ -251,22 +270,20 @@ multilib_src_configure() { --enable-socketpair --disable-sspi $(use_enable static-libs static) - --enable-pthreads - --enable-threaded-resolver --disable-versioned-symbols --without-amissl --without-bearssl $(use_with brotli) --with-fish-functions-dir="${EPREFIX}"/usr/share/fish/vendor_completions.d $(use_with http2 nghttp2) - --without-hyper $(use_with idn libidn2) $(use_with kerberos gssapi "${EPREFIX}"/usr) --without-libgsasl $(use_with psl libpsl) --without-msh3 - $(use_with nghttp3) - $(use_with nghttp3 ngtcp2) + $(use_with http3 nghttp3) + $(use_with curl_quic_ngtcp2 ngtcp2) + $(use_with curl_quic_openssl openssl-quic) --without-quiche $(use_with rtmp librtmp) --without-schannel @@ -288,15 +305,23 @@ multilib_src_configure() { ) fi - if use test && multilib_is_native_abi && ( use http2 || use nghttp3 ); then + if use test && multilib_is_native_abi && ( use http2 || use http3 ); then myconf+=( --with-test-nghttpx="${BROOT}/usr/bin/nghttpx" ) fi - if [[ ${CHOST} == *mingw* ]] ; then + # Since 8.12.0 adns/c-ares and the threaded resolver are mutually exclusive + # This is in support of some work to enable `httpsrr` to use adns and the rest + # of curl to use the threaded resolver; we'll just make `httpsrr` conditional on adns + # when the time comes. + if use adns; then + myconf+=( + --disable-threaded-resolver + ) + else myconf+=( - --disable-pthreads + --enable-threaded-resolver ) fi @@ -308,30 +333,6 @@ multilib_src_configure() { sed -i -e '/SUBDIRS/s:scripts::' Makefile || die fi - # Fix up the pkg-config file to be more robust. - # https://github.com/curl/curl/issues/864 - local priv=() libs=() - # We always enable zlib. - libs+=( "-lz" ) - priv+=( "zlib" ) - if use http2; then - libs+=( "-lnghttp2" ) - priv+=( "libnghttp2" ) - fi - if use nghttp3; then - libs+=( "-lnghttp3" "-lngtcp2" ) - priv+=( "libnghttp3" "libngtcp2" ) - fi - if use ssl && use curl_ssl_openssl; then - libs+=( "-lssl" "-lcrypto" ) - priv+=( "openssl" ) - fi - grep -q Requires.private libcurl.pc && die "need to update ebuild" - libs=$(printf '|%s' "${libs[@]}") - sed -i -r \ - -e "/^Libs.private/s:(${libs#|})( |$)::g" \ - libcurl.pc || die - echo "Requires.private: ${priv[*]}" >> libcurl.pc || die } multilib_src_compile() { @@ -349,7 +350,7 @@ multilib_src_test() { # See https://github.com/curl/curl/blob/master/tests/runtests.pl#L5721 # -n: no valgrind (unreliable in sandbox and doesn't work correctly on all arches) # -v: verbose - # -a: keep going on failure (so we see everything which breaks, not just 1st test) + # -a: keep going on failure (so we see everything that breaks, not just 1st test) # -k: keep test files after completion # -am: automake style TAP output # -p: print logs if test fails diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-9999.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-9999.ebuild index 5a37525caae..f8c60550186 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-9999.ebuild @@ -156,7 +156,7 @@ QA_CONFIG_IMPL_DECL_SKIP=( ) PATCHES=( - "${FILESDIR}/${PN}-prefix-3.patch" + "${FILESDIR}/${PN}-prefix-4.patch" "${FILESDIR}/${PN}-respect-cflags-3.patch" ) @@ -270,15 +270,12 @@ multilib_src_configure() { --enable-socketpair --disable-sspi $(use_enable static-libs static) - --enable-pthreads - --enable-threaded-resolver --disable-versioned-symbols --without-amissl --without-bearssl $(use_with brotli) --with-fish-functions-dir="${EPREFIX}"/usr/share/fish/vendor_completions.d $(use_with http2 nghttp2) - --without-hyper $(use_with idn libidn2) $(use_with kerberos gssapi "${EPREFIX}"/usr) --without-libgsasl @@ -314,9 +311,17 @@ multilib_src_configure() { ) fi - if [[ ${CHOST} == *mingw* ]] ; then + # Since 8.12.0 adns/c-ares and the threaded resolver are mutually exclusive + # This is in support of some work to enable `httpsrr` to use adns and the rest + # of curl to use the threaded resolver; we'll just make `httpsrr` conditional on adns + # when the time comes. + if use adns; then myconf+=( - --disable-pthreads + --disable-threaded-resolver + ) + else + myconf+=( + --enable-threaded-resolver ) fi diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/files/curl-8.12.0-multi.patch b/sdk_container/src/third_party/portage-stable/net-misc/curl/files/curl-8.12.0-multi.patch new file mode 100644 index 00000000000..b9405af8da5 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/files/curl-8.12.0-multi.patch @@ -0,0 +1,136 @@ +https://github.com/curl/curl/issues/16236#issuecomment-2645385845 +https://github.com/curl/curl/commit/242a1439e7d8cdb72ae6a2fa2e705e2d9a2b7501 + + +--- a/lib/setopt.c ++++ b/lib/setopt.c +@@ -1584,10 +1584,6 @@ static CURLcode setopt_pointers(struct Curl_easy *data, CURLoption option, + if(data->share->hsts == data->hsts) + data->hsts = NULL; + #endif +-#ifdef USE_SSL +- if(data->share->ssl_scache == data->state.ssl_scache) +- data->state.ssl_scache = data->multi ? data->multi->ssl_scache : NULL; +-#endif + #ifdef USE_LIBPSL + if(data->psl == &data->share->psl) + data->psl = data->multi ? &data->multi->psl : NULL; +@@ -1628,10 +1624,6 @@ static CURLcode setopt_pointers(struct Curl_easy *data, CURLoption option, + data->hsts = data->share->hsts; + } + #endif +-#ifdef USE_SSL +- if(data->share->ssl_scache) +- data->state.ssl_scache = data->share->ssl_scache; +-#endif + #ifdef USE_LIBPSL + if(data->share->specifier & (1 << CURL_LOCK_DATA_PSL)) + data->psl = &data->share->psl; +--- a/lib/transfer.c ++++ b/lib/transfer.c +@@ -567,12 +567,6 @@ CURLcode Curl_pretransfer(struct Curl_easy *data) + #endif + data->state.httpreq = data->set.method; + +-#ifdef USE_SSL +- if(!data->state.ssl_scache) +- /* There was no ssl session cache set via a share, use the multi one */ +- data->state.ssl_scache = data->multi->ssl_scache; +-#endif +- + data->state.requests = 0; + data->state.followlocation = 0; /* reset the location-follow counter */ + data->state.this_is_a_follow = FALSE; /* reset this */ +--- a/lib/urldata.h ++++ b/lib/urldata.h +@@ -1199,7 +1199,6 @@ struct UrlState { + curl_prot_t first_remote_protocol; + + int retrycount; /* number of retries on a new connection */ +- struct Curl_ssl_scache *ssl_scache; /* TLS session pool */ + int os_errno; /* filled in with errno whenever an error occurs */ + long followlocation; /* redirect counter */ + int requests; /* request counter: redirects + authentication retakes */ +--- a/lib/vtls/vtls_scache.c ++++ b/lib/vtls/vtls_scache.c +@@ -82,6 +82,17 @@ struct Curl_ssl_scache { + long age; + }; + ++static struct Curl_ssl_scache *cf_ssl_scache_get(struct Curl_easy *data) ++{ ++ struct Curl_ssl_scache *scache = NULL; ++ /* If a share is present, its ssl_scache has preference over the multi */ ++ if(data->share && data->share->ssl_scache) ++ scache = data->share->ssl_scache; ++ else if(data->multi && data->multi->ssl_scache) ++ scache = data->multi->ssl_scache; ++ return scache; ++} ++ + static void cf_ssl_scache_clear_session(struct Curl_ssl_session *s) + { + if(s->sdata) { +@@ -792,7 +803,7 @@ CURLcode Curl_ssl_scache_put(struct Curl_cfilter *cf, + const char *ssl_peer_key, + struct Curl_ssl_session *s) + { +- struct Curl_ssl_scache *scache = data->state.ssl_scache; ++ struct Curl_ssl_scache *scache = cf_ssl_scache_get(data); + struct ssl_config_data *ssl_config = Curl_ssl_cf_get_config(cf, data); + CURLcode result; + DEBUGASSERT(ssl_config); +@@ -826,7 +837,7 @@ CURLcode Curl_ssl_scache_take(struct Curl_cfilter *cf, + const char *ssl_peer_key, + struct Curl_ssl_session **ps) + { +- struct Curl_ssl_scache *scache = data->state.ssl_scache; ++ struct Curl_ssl_scache *scache = cf_ssl_scache_get(data); + struct ssl_primary_config *conn_config = Curl_ssl_cf_get_primary_config(cf); + struct Curl_ssl_scache_peer *peer = NULL; + struct Curl_llist_node *n; +@@ -870,7 +881,7 @@ CURLcode Curl_ssl_scache_add_obj(struct Curl_cfilter *cf, + void *sobj, + Curl_ssl_scache_obj_dtor *sobj_free) + { +- struct Curl_ssl_scache *scache = data->state.ssl_scache; ++ struct Curl_ssl_scache *scache = cf_ssl_scache_get(data); + struct ssl_primary_config *conn_config = Curl_ssl_cf_get_primary_config(cf); + struct Curl_ssl_scache_peer *peer = NULL; + CURLcode result; +@@ -898,7 +909,7 @@ bool Curl_ssl_scache_get_obj(struct Curl_cfilter *cf, + const char *ssl_peer_key, + void **sobj) + { +- struct Curl_ssl_scache *scache = data->state.ssl_scache; ++ struct Curl_ssl_scache *scache = cf_ssl_scache_get(data); + struct ssl_primary_config *conn_config = Curl_ssl_cf_get_primary_config(cf); + struct Curl_ssl_scache_peer *peer = NULL; + CURLcode result; +@@ -924,7 +935,7 @@ void Curl_ssl_scache_remove_all(struct Curl_cfilter *cf, + struct Curl_easy *data, + const char *ssl_peer_key) + { +- struct Curl_ssl_scache *scache = data->state.ssl_scache; ++ struct Curl_ssl_scache *scache = cf_ssl_scache_get(data); + struct ssl_primary_config *conn_config = Curl_ssl_cf_get_primary_config(cf); + struct Curl_ssl_scache_peer *peer = NULL; + CURLcode result; +@@ -1021,7 +1032,7 @@ CURLcode Curl_ssl_session_import(struct Curl_easy *data, + const unsigned char *shmac, size_t shmac_len, + const unsigned char *sdata, size_t sdata_len) + { +- struct Curl_ssl_scache *scache = data->state.ssl_scache; ++ struct Curl_ssl_scache *scache = cf_ssl_scache_get(data); + struct Curl_ssl_scache_peer *peer = NULL; + struct Curl_ssl_session *s = NULL; + bool locked = FALSE; +@@ -1092,7 +1103,7 @@ CURLcode Curl_ssl_session_export(struct Curl_easy *data, + curl_ssls_export_cb *export_fn, + void *userptr) + { +- struct Curl_ssl_scache *scache = data->state.ssl_scache; ++ struct Curl_ssl_scache *scache = cf_ssl_scache_get(data); + struct Curl_ssl_scache_peer *peer; + struct dynbuf sbuf, hbuf; + struct Curl_llist_node *n; diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/files/curl-prefix-4.patch b/sdk_container/src/third_party/portage-stable/net-misc/curl/files/curl-prefix-4.patch new file mode 100644 index 00000000000..796b67fd927 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/files/curl-prefix-4.patch @@ -0,0 +1,35 @@ +From f18f4362d7ca60fb12248a559dab26aea330771c Mon Sep 17 00:00:00 2001 +From: Matt Jolly +Date: Wed, 5 Feb 2025 17:27:11 +1000 +Subject: [PATCH] Update prefix patch for 8.12.0 + +Signed-off-by: Matt Jolly +--- + curl-config.in | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/curl-config.in b/curl-config.in +index 55184167b..df31fdb46 100644 +--- a/curl-config.in ++++ b/curl-config.in +@@ -141,7 +141,7 @@ while test "$#" -gt 0; do + ;; + + --cflags) +- if test "X@includedir@" = 'X/usr/include'; then ++ if test "X@includedir@" = "X@GENTOO_PORTAGE_EPREFIX@/usr/include"; then + echo '@LIBCURL_PC_CFLAGS@' + else + echo "@LIBCURL_PC_CFLAGS@ -I@includedir@" +@@ -149,7 +149,7 @@ while test "$#" -gt 0; do + ;; + + --libs) +- if test "X@libdir@" != 'X/usr/lib' -a "X@libdir@" != 'X/usr/lib64'; then ++ if test "X@libdir@" != "X@GENTOO_PORTAGE_EPREFIX@/usr/lib" -a "X@libdir@" != "X@GENTOO_PORTAGE_EPREFIX@/usr/lib64"; then + curllibdir="-L@libdir@ " + else + curllibdir='' +-- +2.48.0 + diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/metadata.xml b/sdk_container/src/third_party/portage-stable/net-misc/curl/metadata.xml index 884608c7c1f..b3581ad8285 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/metadata.xml @@ -17,7 +17,6 @@ Enable HTTP Strict Transport Security Enable Internet Message Access Protocol support Enable mbedtls ssl backend - Enable HTTP/3 support using net-libs/nghttp3 Enable HTTP/3 support Enable openssl ssl backend Enable Post Office Protocol 3 support diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/openssh-9.9_p1.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/openssh/openssh-9.9_p1.ebuild index 80a886b7ecc..53c02164c5a 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/openssh-9.9_p1.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/openssh/openssh-9.9_p1.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 @@ -23,7 +23,7 @@ S="${WORKDIR}/${PARCH}" LICENSE="BSD GPL-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" # Probably want to drop ssl defaulting to on in a future version. IUSE="abi_mips_n32 audit debug kerberos ldns legacy-ciphers libedit livecd pam +pie security-key selinux +ssl static test xmss" diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/package.use.mask index 66cd6e9d165..676b01c1c8e 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/package.use.mask @@ -1,6 +1,10 @@ # Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Matt Jolly (2025-01-29) +# Needs dev-lang/go which is not keyworded here +x11-wm/fvwm3 go + # Pacho Ramos (2025-01-26) # Needs unkeyworded net-libs/msgraph gnome-base/gvfs onedrive @@ -116,6 +120,7 @@ app-alternatives/ninja samurai # https://buildd.debian.org/status/logs.php?pkg=weston&arch=alpha gui-libs/gtk wayland dev-libs/libportal wayland +app-i18n/ibus wayland # matoro (2023-06-18) # sci-physics/bullet not keyworded here (#908240) diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.mask index 814bd5ba41a..008329e5676 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.mask @@ -17,6 +17,18 @@ #--- END OF EXAMPLES --- +# Nowa Ammerlaan (2025-02-03) +# QtWebView is available here +dev-python/pyside -webview + +# Nowa Ammerlaan (2025-02-03) +# QtSerialBus is available here +dev-python/pyside -serialbus + +# Eli Schwartz (2025-01-27) +# All dependencies available +dev-build/meson -test-full + # Matt Jolly (2025-01-11) # We can bootstrap with mrustc on amd64. dev-lang/rust -mrustc-bootstrap @@ -86,6 +98,7 @@ media-gfx/blender -gnome -oneapi -renderdoc -vulkan # dev-qt/qtlanguageserver:6 is keyworded here dev-qt/qtdeclarative:6 -qmlls dev-qt/qttools:6 -qmlls +dev-python/pyside -tools # Nowa Ammerlaan (2024-03-17) # virt-firmware is keyworded here @@ -146,11 +159,6 @@ sys-apps/irqbalance -thermal # media-libs/shaderc is keyworded here. media-libs/libplacebo -shaderc -# Michał Górny (2023-09-19) -# dev-cpp/cpp-httplib is keyworded here. -llvm-core/lldb -debuginfod -llvm-core/llvm -debuginfod - # Ionen Wolkens (2023-09-13) # media-gfx/renderdoc is keyworded here dev-qt/qtbase -renderdoc diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.stable.mask index c3caa1362c0..6e15d890b56 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.stable.mask @@ -17,6 +17,10 @@ #--- END OF EXAMPLES --- +# Sam James (2025-02-09) +# dev-libs/rocdbgapi is not yet marked stable +dev-debug/gdb rocm + # Matt Jolly (2025-01-11) # Stable-mask until mrustc is stabilised dev-lang/rust mrustc-bootstrap diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.mask index 505bdf5077a..79669263ee9 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.mask @@ -102,7 +102,6 @@ kde-apps/akonadiconsole kde-apps/akregator kde-apps/calendarjanitor kde-apps/calendarsupport - (2024-07-01) -# USE="kf6compat,kaccounts" depends on kde-frameworks/purpose:6[webengine] -# which is package.use.mask'ed on these arches. We cannot mask the -# combination specifically but in reality kaccounts is useless without -# additional dev-qt/qtwebengine revdeps. -kde-frameworks/purpose:5 kaccounts +# Nowa Ammerlaan (2025-02-03) +# QtWebView is masked here +dev-python/pyside webview # Ben Kohler (2024-05-27) # Runtime issues (bug #925115) and build issues (bug #931092) diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.mask index 85408fcd3be..d525eba1917 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.mask @@ -1,10 +1,6 @@ # Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -# Eli Schwartz (2025-01-26) -# Dependencies e.g. bindgen not keyworded -dev-build/meson test-full - # Sam James (2025-01-04) # kde-plasma/kde-cli-tools not keyworded here x11-misc/xdg-utils plasma @@ -53,13 +49,6 @@ games-emulation/rmg -dynarec # See #934149, #934151, #936022, #936021 sys-devel/binutils -gold -# Andreas Sturmlechner (2024-07-01) -# USE="kf6compat,kaccounts" depends on kde-frameworks/purpose:6[webengine] -# which is package.use.mask'ed on these arches. We cannot mask the -# combination specifically but in reality kaccounts is useless without -# additional dev-qt/qtwebengine revdeps. -kde-frameworks/purpose:5 kaccounts - # Sam James (2024-06-13) # Needs as-yet-unkeyworded KF6 (bug #934215) app-crypt/pinentry qt6 @@ -68,7 +57,7 @@ app-crypt/pinentry qt6 # Nowa Ammerlaan (2024-06-01) # qtnetworkauth, qtremoteobjects and qthttpserver not yet keyworded here -dev-python/pyside6 network-auth httpserver remoteobjects +dev-python/pyside network-auth httpserver remoteobjects dev-python/qtpy remoteobjects # Nowa Ammerlaan (2024-03-21) diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.stable.mask index 8d5b6036f96..d8aa2a4fdd9 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.stable.mask @@ -1,6 +1,10 @@ # Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Andreas Sturmlechner (2025-01-28) +# PyQt 6 is not stable here +>=app-admin/setools-4.5.1 gui test + # Sam James (2024-10-05) # media-libs/jasper fails tests (bug #907259) media-gfx/graphicsmagick jpeg2k diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.force b/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.force index c58f1d48569..21465a9f984 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.force +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.force @@ -5,10 +5,6 @@ # supports 64 bit neon media-libs/opencv cpu_flags_arm_neon -# Matt Jolly (2024-01-30) -# Google does not provide an arm64 toolchain -www-client/chromium system-toolchain - # matoro (2022-08-31) # GHC does not gain native codegen for arm64 until 9.2. # We don't want an unregisterised build, so force LLVM codegen. diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.mask index 718fb400f48..fc09e29863e 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.mask @@ -1,13 +1,21 @@ # Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Nowa Ammerlaan (2025-02-03) +# QtWebView is available here +dev-python/pyside -webview + +# Eli Schwartz (2025-01-27) +# Dependencies e.g. pypy keyworded (not stable) here. +dev-build/meson -test-full + # Michał Górny (2024-12-24) # OpenMP offloading is supported on 64-bit architectures only. llvm-core/clang-runtime -offload # Nowa Ammerlaan (2024-12-20) # qtremoteobjects and qthttpserver not yet keyworded here -dev-python/pyside6 httpserver remoteobjects +dev-python/pyside httpserver remoteobjects dev-python/qtpy remoteobjects # Sam James (2024-12-17) diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.stable.mask index 3ccac09b940..d82a9fed8ab 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.stable.mask @@ -1,6 +1,10 @@ # Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Eli Schwartz (2025-01-27) +# Dependencies e.g. pypy not stable here. +dev-build/meson test-full + # Eray Aslan (2024-06-17) # mongodb needed for tests which is not stable keyworded for arm64 dev-libs/mongo-c-driver test @@ -14,7 +18,7 @@ app-emulation/qemu capstone sys-kernel/installkernel efistub # Ionen Wolkens (2024-01-27) -# dev-python/pyside6 is not stable here yet +# dev-python/pyside is not stable here yet dev-python/qtpy pyside6 # Michał Górny (2023-04-22) diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/base/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/base/package.use.mask index bd928db11c2..bbdf1065dbd 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/base/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/base/package.use.mask @@ -1,6 +1,14 @@ # Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Nowa Ammerlaan (2025-02-03) +# QtWebView is not available everywhere +dev-python/pyside webview + +# Nowa Ammerlaan (2025-02-03) +# QtSerialBus is not available everywhere +dev-python/pyside serialbus + # Michał Górny (2024-12-24) # OpenMP offloading is supported on 64-bit architectures only. llvm-core/clang-runtime offload @@ -63,6 +71,7 @@ media-gfx/blender gnome oneapi renderdoc vulkan # dev-qt/qtlanguageserver:6 currently has very few keywords dev-qt/qtdeclarative:6 qmlls dev-qt/qttools:6 qmlls +dev-python/pyside tools # Mike Gilbert (2024-04-13) # Missing keywords on dev-python/looseversion. @@ -125,11 +134,6 @@ media-video/obs-studio mpegts # media-libs/shaderc has very few keywords. media-libs/libplacebo shaderc -# Michał Górny (2023-09-19) -# dev-cpp/cpp-httplib is barely keyworded anywhere. -llvm-core/lldb debuginfod -llvm-core/llvm debuginfod - # Ionen Wolkens (2023-09-13) # media-gfx/renderdoc currently has few keywords dev-qt/qtbase renderdoc diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/loong/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/loong/package.use.mask index 67d0b332482..864c9e29bec 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/loong/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/loong/package.use.mask @@ -1,10 +1,6 @@ # Copyright 2022-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -# Eli Schwartz (2025-01-26) -# Dependencies e.g. netcdf not keyworded -dev-build/meson test-full - # WANG Xuerui (2025-01-16) # tests require qtwebengine which is unavailable dev-python/qtconsole test @@ -85,13 +81,6 @@ net-misc/curl http3 quic curl_quic_openssl curl_quic_ngtcp2 # Full testing requires www-client/firefox. dev-python/selenium test-rust -# Andreas Sturmlechner (2024-07-01) -# USE="kf6compat,kaccounts" depends on kde-frameworks/purpose:6[webengine] -# which is package.use.mask'ed on these arches. We cannot mask the -# combination specifically but in reality kaccounts is useless without -# additional dev-qt/qtwebengine revdeps. -kde-frameworks/purpose:5 kaccounts - # Andreas Sturmlechner (2024-06-15) # Requires unkeyworded dev-qt/qtwebengine (and revdeps) kde-plasma/plasma-nm openconnect @@ -168,11 +157,6 @@ gnome-extra/gnome-software flatpak # dev-ruby/asciidoctor is not keyworded yet. dev-util/librnp man -# Michał Górny (2023-09-19) -# dev-cpp/cpp-httplib is keyworded here. -llvm-core/lldb -debuginfod -llvm-core/llvm -debuginfod - # WANG Xuerui (2023-09-10) # Revdeps of dev-python/ujson which is masked. dev-python/cattrs test diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.use.mask index 7f9c65aac21..7584271fbb0 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.use.mask @@ -1,10 +1,6 @@ # Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -# Eli Schwartz (2025-01-26) -# Dependencies e.g. bindgen not keyworded -dev-build/meson test-full - # Pacho Ramos (2025-01-26) # Needs unkeyworded net-libs/msgraph gnome-base/gvfs onedrive @@ -19,7 +15,7 @@ dev-libs/libfido2 hidapi # Matt Jolly (2024-11-03) # Requires llvm 16 which is not keyworded -=dev-lang/rust-1.71.1-r100 system-llvm +~dev-lang/rust-1.71.1 system-llvm # Felix Janda (2024-10-20) # requires dev-libs/libcss and net-libs/libdom to be keyworded @@ -192,8 +188,8 @@ net-analyzer/rrdtool rados >=media-video/ffmpeg-5 shaderc # matoro (2023-11-22) -# Qt 5 is not keyworded here -app-admin/setools X test +# PyQt 6 is not keyworded here +app-admin/setools gui test # matoro (2023-11-22) # Qt 5 is not keyworded here 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 7955e2e9dfb..5c1746b3c08 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 @@ -91,7 +91,7 @@ dev-db/spatialite rttopo # Nowa Ammerlaan (2023-08-30) # Avoid keywordming more Qt stuff dev-python/pyside2 3d datavis scxml -dev-python/pyside6 3d httpserver remoteobjects scxml +dev-python/pyside 3d httpserver remoteobjects scxml dev-python/qtpy remoteobjects # Nowa Ammerlaan (2023-03-07) diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.use.force b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.use.force index d198bbc2157..0e93c499f29 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.use.force +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.use.force @@ -1,10 +1,6 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -# Matt Jolly (2024-01-30) -# Google does not provide a ppc64 toolchain -www-client/chromium system-toolchain - # Alexey Sokolov (2023-08-14) # OpenMW is only playtested with LuaJIT, and in fact unit tests fail with Lua-5. # Therefore apply mask/force to override the profile's defaults, and invert on 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 d12a85711db..e253da8fbf4 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 @@ -17,13 +17,6 @@ media-libs/libass libunibreak # QUIC dependencies are not keyworded net-misc/curl http3 quic curl_quic_openssl curl_quic_ngtcp2 -# Andreas Sturmlechner (2024-07-01) -# USE="kf6compat,kaccounts" depends on kde-frameworks/purpose:6[webengine] -# which is package.use.mask'ed on these arches. We cannot mask the -# combination specifically but in reality kaccounts is useless without -# additional dev-qt/qtwebengine revdeps. -kde-frameworks/purpose:5 kaccounts - # Sam James (2024-05-19) # media-libs/jasper not yet keyworded here: https://bugs.gentoo.org/921559 media-gfx/graphicsmagick jpeg2k diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.use.stable.mask index 3c1f55daae6..80cfc4da964 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.use.stable.mask @@ -31,7 +31,7 @@ dev-python/selenium test-rust dev-util/selenium-manager test # Andreas Sturmlechner (2024-09-12) -# dev-python/pyside6 is not stable here +# dev-python/pyside is not stable here dev-python/qtpy pyside6 # Sam James (2024-04-30) diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/ppc/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/ppc/package.use.mask index 4cfea6fc21a..406a9252e17 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/ppc/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/ppc/package.use.mask @@ -1,9 +1,9 @@ # Copyright 2023-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -# Eli Schwartz (2025-01-26) -# Dependencies e.g. bindgen not keyworded -dev-build/meson test-full +# Matt Jolly (2025-01-29) +# Needs dev-lang/go which is not keyworded here +x11-wm/fvwm3 go # Paul Zander (2024-11-04) # media-libs/libavif is not keyworded 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 5227b633551..5bb9427b613 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 @@ -1,10 +1,6 @@ # Copyright 2019-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -# Eli Schwartz (2025-01-26) -# Dependencies e.g. netcdf not keyworded -dev-build/meson test-full - # Alexey Shvetsov (2024-11-21) # sci-libs/caffe2 is not keyworded on arm64 sci-chemistry/gromacs nnpot @@ -29,13 +25,6 @@ sci-mathematics/maxima vtk sci-libs/fplll qd sci-mathematics/lcalc double-double quad-double -# Andreas Sturmlechner (2024-07-01) -# USE="kf6compat,kaccounts" depends on kde-frameworks/purpose:6[webengine] -# which is package.use.mask'ed on these arches. We cannot mask the -# combination specifically but in reality kaccounts is useless without -# additional dev-qt/qtwebengine revdeps. -kde-frameworks/purpose:5 kaccounts - # Andreas Sturmlechner (2024-06-15) # Requires unkeyworded dev-qt/qtwebengine (and revdeps) kde-plasma/plasma-nm openconnect @@ -71,7 +60,7 @@ sys-apps/openrc-navi s6 # Nowa Ammerlaan (2023-08-30) # Avoid keywording more Qt stuff -dev-python/pyside6 httpserver remoteobjects +dev-python/pyside httpserver remoteobjects dev-python/qtpy remoteobjects # Marek Szuba (2023-08-19) diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/s390/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/s390/package.use.mask index bc1bc060764..f39f5b057b6 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/s390/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/s390/package.use.mask @@ -1,10 +1,6 @@ # Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -# Eli Schwartz (2025-01-26) -# Dependencies e.g. bindgen not keyworded -dev-build/meson test-full - # Sam James (2025-01-26) -# Dependencies e.g. bindgen not keyworded -dev-build/meson test-full +# Matt Jolly (2025-01-29) +# Needs dev-lang/go which is not keyworded here +x11-wm/fvwm3 go # Pacho Ramos (2025-01-26) # Needs unkeyworded net-libs/msgraph 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 36087928dcd..b0a86cacb75 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,13 +1,13 @@ # Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -# Eli Schwartz (2025-01-26) -# Dependencies e.g. bindgen not keyworded -dev-build/meson test-full +# Nowa Ammerlaan (2025-02-03) +# QtSerialBus is available here +dev-python/pyside -serialbus # Nowa Ammerlaan (2024-12-20) # qtremoteobjects and qthttpserver not yet keyworded here -dev-python/pyside6 httpserver remoteobjects +dev-python/pyside httpserver remoteobjects dev-python/qtpy remoteobjects # Ben Kohler (2024-10-23) @@ -62,13 +62,6 @@ dev-lang/php opcache-jit # app-office/lyx is unavailable on x86 dev-tex/abntex lyx -# Andreas Sturmlechner (2024-07-01) -# USE="kf6compat,kaccounts" depends on kde-frameworks/purpose:6[webengine] -# which is package.use.mask'ed on these arches. We cannot mask the -# combination specifically but in reality kaccounts is useless without -# additional dev-qt/qtwebengine revdeps. -kde-frameworks/purpose:5 kaccounts - # Nowa Ammerlaan (2024-03-21) # virt-firmware is keyworded here sys-kernel/installkernel -efistub @@ -99,11 +92,6 @@ sys-kernel/installkernel -grub # media-libs/shaderc is keyworded here. media-libs/libplacebo -shaderc -# Michał Górny (2023-09-19) -# dev-cpp/cpp-httplib is keyworded here. -llvm-core/lldb -debuginfod -llvm-core/llvm -debuginfod - # Jon Janzen (2023-09-11) # librttopo has not been tested on this arch dev-db/spatialite rttopo diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.stable.mask index 78cae9fe9e9..9726a67d739 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.stable.mask @@ -35,7 +35,7 @@ dev-python/selenium test-rust dev-util/selenium-manager test # Andreas Sturmlechner (2024-09-20) -# dev-python/pyside6 is not stable here. +# dev-python/pyside is not stable here. dev-python/qtpy pyside6 # Andreas Sturmlechner (2024-09-02) diff --git a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.force b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.force index 6546f32dd3f..03ebc138e7c 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.force +++ b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.force @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Ionen Wolkens (2024-12-24) @@ -26,6 +26,10 @@ llvm-runtimes/libcxxabi clang # echo "dev-lang/rust:${slot} llvm_slot_${_RUST_LLVM_MAP[${slot}]}" # echo "dev-lang/rust-bin:${slot} llvm_slot_${_RUST_LLVM_MAP[${slot}]}" # done +dev-lang/rust:1.84.1 llvm_slot_19 +dev-lang/rust-bin:1.84.1 llvm_slot_19 +dev-lang/rust:1.84.0 llvm_slot_19 +dev-lang/rust-bin:1.84.0 llvm_slot_19 dev-lang/rust:1.83.0 llvm_slot_19 dev-lang/rust-bin:1.83.0 llvm_slot_19 dev-lang/rust:1.82.0 llvm_slot_19 @@ -36,8 +40,12 @@ dev-lang/rust:1.80.1 llvm_slot_18 dev-lang/rust-bin:1.80.1 llvm_slot_18 dev-lang/rust:1.79.0 llvm_slot_18 dev-lang/rust-bin:1.79.0 llvm_slot_18 +dev-lang/rust:1.78.0 llvm_slot_18 +dev-lang/rust-bin:1.78.0 llvm_slot_18 dev-lang/rust:1.77.1 llvm_slot_17 dev-lang/rust-bin:1.77.1 llvm_slot_17 +dev-lang/rust:1.76.0 llvm_slot_17 +dev-lang/rust-bin:1.76.0 llvm_slot_17 dev-lang/rust:1.75.0 llvm_slot_17 dev-lang/rust-bin:1.75.0 llvm_slot_17 dev-lang/rust:1.74.1 llvm_slot_17 diff --git a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.mask index d7c3876f5fa..9d1c9ca1bf6 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.mask @@ -3,6 +3,25 @@ # New entries go on top. +# Michał Górny (2025-02-08) +# Requires dev-cpp/cpp-httplib that has extremely unstable ABI. +# Not worth the constant churn of having to rebuild LLVM again and again. +llvm-core/lldb debuginfod +llvm-core/llvm debuginfod + +# Nowa Ammerlaan (2025-01-04) +# Missing dependencies not packaged currently +dev-python/pyside doc + +# Andreas Sturmlechner (2025-01-29) +# Prepare cleanup of kde-frameworks/syndication:5 +kde-frameworks/knewstuff:5 opds + +# Eli Schwartz (2025-01-27) +# Dependencies e.g. bindgen/netcdf/pypy not keyworded or stable in +# most places. +dev-build/meson test-full + # Matt Jolly (2025-01-11) # mrustc currenly only works on amd64. dev-lang/rust mrustc-bootstrap @@ -17,8 +36,9 @@ kde-frameworks/kfilemetadata:5 mobi media-gfx/okularpart:5 mobi # Andreas Sturmlechner (2025-01-03) -# Prepare cleanup of kde-apps/kaccounts-integration:6[qt5] -kde-frameworks/purpose:5 kaccounts +# Prepare cleanup of kde-apps/kaccounts-integration:6[qt5] and +# kde-frameworks/bluez-qt:5 +kde-frameworks/purpose:5 bluetooth kaccounts # Michał Górny (2024-12-31) # None of the sci-libs/symengine versions work with the modern versions diff --git a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.stable.mask index b918228c0dd..bfa19e1b822 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.stable.mask @@ -4,6 +4,10 @@ # New entries go on top. # Please use the same syntax as in package.use.mask. +# Arthur Zamarin (2025-02-03) +# Requires dev-util/shelltestrunner +app-arch/mt-st test + # Volkmar W. Pogatzki (2025-01-04) # dev-libs/protobuf-28.3 is not yet marked stable. >=dev-java/protobuf-java-4.28.3 system-protoc diff --git a/sdk_container/src/third_party/portage-stable/profiles/base/use.mask b/sdk_container/src/third_party/portage-stable/profiles/base/use.mask index d06cfe9445a..fbfe251fd8c 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/base/use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/base/use.mask @@ -1,11 +1,12 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # This file is only for generic masks. For arch-specific masks (i.e. # mask everywhere, unmask on arch/*) use arch/base. # Michał Górny (2024-12-31) -# LLVM slot 20 has no releases yet. +# LLVM slots with no keyworded releases yet. +llvm_slot_21 llvm_slot_20 # Andreas Sturmlechner (2024-12-11) diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/llvm/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/llvm/parent index 845cedb73fd..bce85960e26 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/llvm/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/llvm/parent @@ -1,2 +1,2 @@ .. -../../../../../../features/llvm +../../../../../../features/musl/llvm diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/musl/llvm/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/musl/llvm/parent index 63a4f9547e6..bc92e589ba2 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/musl/llvm/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/musl/llvm/parent @@ -1,2 +1,2 @@ .. -../../../../../../../features/llvm +../../../../../../../features/musl/llvm diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm64/23.0/musl/llvm/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm64/23.0/musl/llvm/parent index 845cedb73fd..bce85960e26 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm64/23.0/musl/llvm/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm64/23.0/musl/llvm/parent @@ -1,2 +1,2 @@ .. -../../../../../../features/llvm +../../../../../../features/musl/llvm diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm64/23.0/split-usr/musl/llvm/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm64/23.0/split-usr/musl/llvm/parent index 63a4f9547e6..bc92e589ba2 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm64/23.0/split-usr/musl/llvm/parent +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm64/23.0/split-usr/musl/llvm/parent @@ -1,2 +1,2 @@ .. -../../../../../../../features/llvm +../../../../../../../features/musl/llvm diff --git a/sdk_container/src/third_party/portage-stable/profiles/desc/cpu_flags_arm.desc b/sdk_container/src/third_party/portage-stable/profiles/desc/cpu_flags_arm.desc index 029f3aa89aa..ad687c48c6b 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/desc/cpu_flags_arm.desc +++ b/sdk_container/src/third_party/portage-stable/profiles/desc/cpu_flags_arm.desc @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 aes - Use the AES cryptography instruction set @@ -13,6 +13,7 @@ sha1 - Use the SHA-1 cryptography instruction set sha2 - Use the SHA-2 cryptography instruction set sm4 - Use the SM4 cryptography instruction set sve - Use the Scalable Vector Extension instruction set +sve2 - Use the Scalable Vector Extension 2 instruction set thumb - Enable Thumb instruction set (ARMv*T and ARMv6+) thumb2 - Enable Thumb-2 instruction set (ARMv*T2 and ARMv7+) v4 - Use instructions added in ARMv4 diff --git a/sdk_container/src/third_party/portage-stable/profiles/desc/llvm_slot.desc b/sdk_container/src/third_party/portage-stable/profiles/desc/llvm_slot.desc index b6a02407e14..8577ceeffb2 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/desc/llvm_slot.desc +++ b/sdk_container/src/third_party/portage-stable/profiles/desc/llvm_slot.desc @@ -1,4 +1,4 @@ -# Copyright 2024 Gentoo Authors. +# Copyright 2024-2025 Gentoo Authors. # Distributed under the terms of the GNU General Public License v2 15 - Use LLVM 15. @@ -7,3 +7,4 @@ 18 - Use LLVM 18. 19 - Use LLVM 19. 20 - Use LLVM 20. +21 - Use LLVM 21. diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.use.mask index 57cd68309a3..7b11c936a2e 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.use.mask @@ -1,6 +1,10 @@ -# Copyright 2023-2024 Gentoo Authors +# Copyright 2023-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Nowa Ammerlaan (2025-02-03) +# QtWebView is masked here +dev-python/pyside webview + # Michał Górny (2024-06-05) # media-libs/exempi is seriously broken on big endian platforms. # https://gitlab.freedesktop.org/libopenraw/exempi/-/merge_requests/8#note_2277243 @@ -43,6 +47,7 @@ mail-client/thunderbird system-av1 # dev-libs/weston casualties (#833010) # https://gitlab.freedesktop.org/wayland/weston/-/issues/739 gui-libs/gtk wayland +app-i18n/ibus wayland gnome-base/gnome-control-center wayland sys-apps/xdg-desktop-portal-gnome wayland net-libs/webkit-gtk:6 wayland diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/musl/llvm/eapi b/sdk_container/src/third_party/portage-stable/profiles/features/musl/llvm/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/features/musl/llvm/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/musl/llvm/package.mask b/sdk_container/src/third_party/portage-stable/profiles/features/musl/llvm/package.mask new file mode 100644 index 00000000000..963110bb1b3 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/features/musl/llvm/package.mask @@ -0,0 +1,10 @@ +# Copyright 2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Michal Rostecki (2025-02-09) +# A libgcc_s drop-in replacement, which conflicts with sys-devel/gcc, +# therefore meant only for profiles which can work without GCC being +# present even as a fallback. Since glibc can't be built with clang, +# it's possible only on musl/llvm profiles. If that ever changes, we +# can move this unmask to all llvm profiles. +-llvm-runtimes/libgcc diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/musl/llvm/parent b/sdk_container/src/third_party/portage-stable/profiles/features/musl/llvm/parent new file mode 100644 index 00000000000..fe91e777cfe --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/features/musl/llvm/parent @@ -0,0 +1,2 @@ +.. +../../llvm diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.mask b/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.mask index c4d4892c0c6..bff0c8c5c52 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.mask @@ -1,6 +1,10 @@ # Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# NHOrus (2025-02-01) +# not ported to musl, bug #713434 +app-crypt/mit-krb5-appl + # Arthur Zamarin (2025-01-25) # depends on vscode/vscodium, which are glibc binary package kde-misc/krunner-vscodeprojects @@ -42,7 +46,7 @@ net-nds/nsscache # Sam James (2024-09-30) # Needs porting to musl (bug #940130) -=sys-auth/elogind-255.5-r1 +~sys-auth/elogind-255.5 # Sam James (2024-08-31) # sys-devel/binutils[gprofng] is masked on musl @@ -97,6 +101,7 @@ dev-ada/libgpr dev-ada/gnatcoll-core dev-ada/gnatcoll-bindings dev-ada/langkit +dev-ada/langkit-contrib dev-ada/templates-parser dev-ada/libadalang-tools dev-ada/libadalang @@ -266,6 +271,7 @@ app-office/onlyoffice-bin app-shells/pwsh-bin app-text/master-pdf-editor app-text/zotero-bin +dev-db/mongodb-compass-bin dev-db/ocp dev-db/oracle-instantclient dev-db/sqlcl-bin diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.use.mask index d7bf599bc90..8127476c7ca 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.use.mask @@ -211,10 +211,10 @@ media-video/mkvtoolnix nls sci-electronics/kicad-meta doc sys-apps/fakeroot nls sys-apps/man-db nls -sys-apps/man-pages l10n_cs l10n_da l10n_de l10n_el l10n_es l10n_fi l10n_fr l10n_hu -sys-apps/man-pages l10n_id l10n_it l10n_mk l10n_nb l10n_nl l10n_pl l10n_pt-BR l10n_ro -sys-apps/man-pages l10n_sr l10n_sv l10n_uk l10n_vi -sys-apps/man-pages l10n_ja l10n_ru l10n_zh-CN +sys-apps/man-pages l10n_cs l10n_da l10n_de l10n_el l10n_es l10n_fi l10n_fr +sys-apps/man-pages l10n_hu l10n_id l10n_it l10n_ko l10n_mk l10n_nb l10n_nl +sys-apps/man-pages l10n_pl l10n_pt-BR l10n_ro l10n_ru l10n_sr l10n_sv +sys-apps/man-pages l10n_uk l10n_vi sys-apps/sysvinit nls sys-auth/sssd man sys-apps/util-linux nls diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.mask b/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.mask index 1237c6125a5..4b33cfbd0b8 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.mask @@ -143,7 +143,6 @@ dev-python/pysnmpcrypto dev-java/icedtea-web dev-debug/pwndbg dev-db/mycli -sci-mathematics/mathlib-tools dev-python/keep dev-db/pgcli dev-db/mysql-workbench diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.use.mask index 4a46c53b5f2..ca24ddf1d27 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.use.mask @@ -1,10 +1,6 @@ # Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -# Eli Schwartz (2025-01-26) -# Tests the ability to compile rust projects -dev-build/meson test-full - # Viorel Munteanu (2025-01-24) # Requires dev-python/asyncssh. net-misc/dropbear test-async 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 05cd13ce24d..64efb72da32 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/package.mask @@ -33,12 +33,110 @@ #--- END OF EXAMPLES --- +# Matt Jolly (2025-02-10) +# Rust ebuilds are migrating to use RPATH/RUNPATH to find their libraries. +# New revisions for each Slot are already in-tree and should be used instead. +# Bug 949374 +=dev-lang/rust-1.71.1-r100 +=dev-lang/rust-1.74.1-r100 +=dev-lang/rust-1.75.0-r100 +=dev-lang/rust-1.76.0-r100 +=dev-lang/rust-1.77.1-r100 +=dev-lang/rust-1.79.0-r100 +=dev-lang/rust-1.78.0-r100 +=dev-lang/rust-1.80.1-r100 +=dev-lang/rust-1.81.0-r100 +=dev-lang/rust-1.82.0-r100 +=dev-lang/rust-1.82.0-r101 +=dev-lang/rust-1.83.0-r1 +=dev-lang/rust-1.84.0 +=dev-lang/rust-1.84.1 +=dev-lang/rust-bin-1.71.1-r101 +=dev-lang/rust-bin-1.74.1-r101 +=dev-lang/rust-bin-1.75.0-r101 +=dev-lang/rust-bin-1.77.1-r101 +=dev-lang/rust-bin-1.79.0-r101 +=dev-lang/rust-bin-1.80.1-r101 +=dev-lang/rust-bin-1.81.0-r101 +=dev-lang/rust-bin-1.82.0-r101 +=dev-lang/rust-bin-1.83.0 +=dev-lang/rust-bin-1.84.0 +=dev-lang/rust-bin-1.84.1 + +# Michal Rostecki (2025-02-09) +# A libgcc_s drop-in replacement, which conflicts with sys-devel/gcc, +# therefore meant only for profiles which can work without GCC being +# present even as a fallback. +llvm-runtimes/libgcc + +# Michał Górny (2025-02-08) +# Suspicious subslot bump, causing humongous rebuilds. +# https://bugs.gentoo.org/949414 +=dev-cpp/cpp-httplib-0.18.6 + +# Mike Pagano (2025-02-07) +# Last release 3 years ago, no version compiles; ours or upstreams. +# Ack from maintainer. Driver is available in the Linux Kernel +# Removal on 2025-03-07. Bug: 949318 +net-misc/AQtion + +# Matt Turner (2025-02-05) +# Masked for testing +=dev-util/mesa_clc-25.0* +=media-libs/mesa-25.0* + +# Ionen Wolkens (2025-01-30) +# Breaks the only consumer of pytest-bdd (qutebrowser), +# not looked into yet but mask for now as it prevents +# using it to test PyQt6 for the upcoming Qt bump. +>=dev-python/gherkin-official-31.0.0 + +# Andreas Sturmlechner (2025-01-30) +# Last release 15 years ago, dead upstream (never imported from kdesvn), +# no revdeps probably since amarok last-rites. Removal on 2025-02-27. +media-libs/taglib-extras + +# Conrad Kostecki (2024-01-28) +# A package, which depends on Qt5. Upstream dead for many years. +# Removal on 2025-02-28. Bug #948048 +net-wireless/linssid + +# Conrad Kostecki (2024-01-28) +# Binary package, which depends on Qt5. Bug #926665 +# Please update to v5 beta or v6 beta. Removal on 2025-02-28. +media-sound/teamspeak-client:3 + +# Andreas Sturmlechner (2025-01-28) +# Last release 8 years ago, dead upstream (repository gone as well), +# depends on Qt5, no one else packages this. Removal on 2025-02-27. +net-misc/qtm + +# Andreas Sturmlechner (2025-01-28) +# Last release+commit 7 years ago, dead upstream, unmaintained in Gentoo, +# depends on Qt5, broken with >= ffmpeg-5, no one else packages this. +# Removal on 2025-02-27. Bug #900947 +app-misc/qcma + +# Andreas Sturmlechner (2025-01-28) +# Last release+commit 8 years ago, dead upstream, unmaintained in Gentoo, +# depends on Qt5, no one else packages this. Removal on 2025-02-27. +x11-misc/urxvtconfig + +# Arthur Zamarin (2025-01-28) +# Since we are done with EGO_SUM, this tool isn't needed any more. +# Removal on 2025-02-27. Bug #948966. +dev-go/get-ego-vendor + +# Andreas Sturmlechner (2025-01-28) +# Last release from 14 years ago, dead upstream (repository gone as well). +# Plenty of other options in ::gentoo. Bug #947724, removal on 2025-02-27. +media-sound/bempc + # Anthony G. Basile (2025-01-25) # Bug 909889. Needs PEP517 build. Very low user base # Remove 2025-02-24. app-portage/grs - # Arthur Zamarin (2025-01-24) # EAPI=7, uses deprecated Go eclasses, fails to compile, installation # blocked by current versions of docker (which provides the features). @@ -77,11 +175,14 @@ dev-python/spyder-terminal # CVE-2025-23050, bug #948573; Removal on 2025-02-22. dev-qt/qtbluetooth:5 +# Andreas Sturmlechner (2025-01-23) +# Qt5 package without any revdeps. Use dev-qt/qttools[qdbus] instead. +dev-qt/qdbusviewer + # Andreas Sturmlechner (2025-01-23) # Qt5 packages without any revdeps. dev-qt/pixeltool dev-qt/qdbus -dev-qt/qdbusviewer dev-qt/qdoc dev-qt/qtplugininfo dev-qt/qtquicktimeline:5 @@ -151,145 +252,18 @@ dev-qt/qtstyleplugins >=dev-libs/intel-compute-runtime-24.52.32224.5 >=dev-util/intel-graphics-compiler-2.5.7 -# Andrey Grozin (2025-01-09) -# Unsupported old version, newer versions are not open-source. -# Depends on Qt5. -# Bugs 499030, 437262, 597268, 603592, 734890, 745495, 947740. -# Use app-text/crqt-ng instead. -# Removal on 2025-02-08. -app-text/fbreader - -# Andreas Sturmlechner (2025-01-09) -# Last release from 2017; fails to build w/ GCC-14 and qscintilla-2.14.1. -# Depends on Qt5. Bugs #914918, #917408. Removal on 2025-02-08. -dev-db/tora - -# Andreas Sturmlechner (2025-01-08) -# Qt5-based library without any revdeps. Removal on 2025-02-07. -dev-libs/kqoauth - -# Andreas Sturmlechner (2025-01-08) -# Qt5-based library without any revdeps. Removal on 2025-02-07. -dev-libs/qcoro5 - # Andreas K. Hüttel (2025-01-06) # Masked for testing =dev-lang/perl-5.40.1* ~virtual/perl-File-Spec-3.910.0 ~virtual/perl-Module-CoreList-5.202.501.184_rc -# Hans de Graaff (2025-01-06) -# ruby32-only package. Depends on assumptions that are no longer true in -# ruby33. No reverse dependencies left. Last release in 2007. Upstream -# gone. Removal on 2025-02-06. -dev-ruby/dust - -# Sam James (2025-01-05) -# Removed upstream in gstreamer-1.24. See bug #947522. Removal on 2025-02-05. -media-plugins/gst-plugins-kate - -# Paul Zander (2025-01-05) -# Masked for testing ->=dev-build/rocm-cmake-6.3.0 ->=dev-libs/hipother-6.3.0 ->=dev-libs/rccl-6.3.0 ->=dev-libs/rocdbgapi-6.3.0 ->=dev-libs/rocm-comgr-6.3.0 ->=dev-libs/rocm-device-libs-6.3.0 ->=dev-libs/rocm-opencl-runtime-6.3.0 ->=dev-libs/rocr-runtime-6.3.0 ->=dev-libs/roct-thunk-interface-6.3.0 ->=dev-util/hip-6.3.0 ->=dev-util/hipcc-6.3.0 ->=dev-util/hipify-clang-6.3.0 ->=dev-util/rocm_bandwidth_test-6.3.0 ->=dev-util/rocm-smi-6.3.0 ->=dev-util/rocminfo-6.3.0 ->=dev-util/roctracer-6.3.0 ->=dev-util/Tensile-6.3.0 ->=sci-libs/composable-kernel-6.3.0 ->=sci-libs/hipBLAS-common-6.3.0 ->=sci-libs/hipBLAS-6.3.0 ->=sci-libs/hipBLASLt-6.3.0 ->=sci-libs/hipCUB-6.3.0 ->=sci-libs/hipFFT-6.3.0 ->=sci-libs/hipRAND-6.3.0 ->=sci-libs/hipSOLVER-6.3.0 ->=sci-libs/hipSPARSE-6.3.0 ->=sci-libs/miopen-6.3.0 ->=sci-libs/rocBLAS-6.3.0 ->=sci-libs/rocFFT-6.3.0 ->=sci-libs/rocPRIM-6.3.0 ->=sci-libs/rocRAND-6.3.0 ->=sci-libs/rocSOLVER-6.3.0 ->=sci-libs/rocSPARSE-6.3.0 ->=sci-libs/rocThrust-6.3.0 ->=sci-libs/rocWMMA-6.3.0 ->=sci-libs/rpp-6.3.0 - # Nowa Ammerlaan (2025-01-03) # Contains a serious bug that can cause deletion of the users home dir. # See-also: https://github.com/keshavbhatt/whatsie/issues/230 # Removal on 2025-03-03 unless upstream fixes the issue net-im/whatsie -# Maciej Barć (2025-01-02) -# Deprecated LEAN 3 packages. The "mathlib-tools" repo is archived -# (https://github.com/leanprover-community/mathlib-tools). Migrate to LEAN 4. -# Removal on 2025-02-02 -sci-mathematics/lean:0/3 -sci-mathematics/mathlib-tools - -# Maciej Barć (2025-01-02) -# Upstream dead, repo archived (https://github.com/mono/xsp). Uses deprecated -# "dotnet" eclass. Depends on old mono. As a replacement one can use official -# .NET 6.0-9.0 ASP.NET instead. -# Removal on 2025-02-02 -acct-group/aspnet -acct-user/aspnet -www-servers/xsp - -# Andreas Sturmlechner (2025-01-02) -# No more revdeps, depends on Qt5, bug #942178. Removal on 2025-01-29. -dev-libs/libqt5pas - -# Andreas Sturmlechner (2025-01-01) -# Transitional package without any revdeps left. Removal on 2025-01-31 -kde-apps/konsolepart - -# Nowa Ammerlaan (2025-01-01) -# Broken with Qt6 and in wayland sessions. Archived upstream. Has been on life -# support for several years already. -# Removal on 2025-02-01 -media-video/vidify -media-video/vidify-audiosync -net-misc/lyricwikia - -# Sam James (2024-12-31) -# Many open bugs and requires a large amount of patching to build correctly -# as a shared library. Breaks reverse dependencies in a few ways. -# Removal on 2025-01-30. bug #924174 and friends. -dev-libs/dmalloc - -# Michał Górny (2024-12-29) -# As of 3.1.0, upstream has removed all mocking and made it impossible -# to test the package locally. As such, we cannot maintain it going -# forward. Removal on 2025-01-28. Bug #947144. -dev-python/pslab - -# Andreas Sturmlechner (2024-12-28) -# Cleanup transitional Bitcoin meta packages, as well as -# unmaintainable net-p2p/bitcoin-core[system-leveldb] and -# virtual/bitcoin-leveldb. Use net-p2p/bitcoin-core instead which is -# the same as these packages but merged into one ebuild for maintainability. -# Removal on 2025-01-27. Bug #945359 -dev-util/bitcoin-tx -net-libs/libbitcoinconsensus -net-p2p/bitcoin-cli -net-p2p/bitcoin-qt -net-p2p/bitcoind -virtual/bitcoin-leveldb - # Michał Górny (2024-12-05) # 6.12.2 does not boot for me. =sys-kernel/gentoo-kernel-6.12.2 @@ -297,11 +271,6 @@ virtual/bitcoin-leveldb =sys-kernel/vanilla-kernel-6.12.2 =virtual/dist-kernel-6.12.2 -# Andreas Sturmlechner (2024-11-28) -# Grave data loss bug. See also: -# https://github.com/nicotine-plus/nicotine-plus/issues/3152 -=net-p2p/nicotine+-3.3.5 - # Ionen Wolkens (2024-11-19) # NVIDIA dropped support for the 470.xx branch in September 2024[1]. # diff --git a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/plasma/package.use b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/plasma/package.use index 365fff91265..b96230069e6 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/plasma/package.use +++ b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/plasma/package.use @@ -17,7 +17,7 @@ dev-libs/libjcat gpg pkcs7 # required by some popular desktop packages such as calibre, # qutebrowser, and freecad (or indirectly through PyQt*WebEngine). dev-python/pyqt6 webchannel -dev-python/pyside6 webchannel +dev-python/pyside webchannel # Required by sys-apps/flatpak, a dependency of kde-plasma/discover dev-util/ostree curl diff --git a/sdk_container/src/third_party/portage-stable/profiles/updates/1Q-2025 b/sdk_container/src/third_party/portage-stable/profiles/updates/1Q-2025 new file mode 100644 index 00000000000..ae7c9c333ef --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/updates/1Q-2025 @@ -0,0 +1 @@ +move dev-python/pyside6 dev-python/pyside diff --git a/sdk_container/src/third_party/portage-stable/profiles/updates/4Q-2023 b/sdk_container/src/third_party/portage-stable/profiles/updates/4Q-2023 index 173fb6a27ff..c5afcd49c6a 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/updates/4Q-2023 +++ b/sdk_container/src/third_party/portage-stable/profiles/updates/4Q-2023 @@ -12,7 +12,6 @@ move dev-libs/Imath dev-libs/imath move dev-python/cli_helpers dev-python/cli-helpers move dev-python/python-cstruct dev-python/cstruct move dev-python/swagger_spec_validator dev-python/swagger-spec-validator -move dev-python/pslab-python dev-python/pslab move dev-python/python-discid dev-python/discid move dev-python/py-amqp dev-python/amqp move dev-python/python-sshpubkeys dev-python/sshpubkeys diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/checkpolicy/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/checkpolicy/Manifest index 8507bbc18d9..5367d64bca2 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/checkpolicy/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/checkpolicy/Manifest @@ -1,2 +1,3 @@ DIST checkpolicy-3.6.tar.gz 70684 BLAKE2B d32a8b86897bd4a08caf61a096a691c8d049fa7b5b4561f4847e0dfbb62a82fc6c3ddb5be163c7cd6163491c50513aec14e4c67842f256f48688b26178c2887a SHA512 0d48fb385b4d1e66d562e40b6e794406f46d8803cc504705b26547130cb13b65fab5fdb4fc032b1c95d4f91862ff134a89fffde854c5ce466c2dd2657e416070 DIST checkpolicy-3.7.tar.gz 74992 BLAKE2B 78f419fa89981ad16364b3d6406e313fda5230588063c9a9dbb70535f0421c5b402b9c86d2f63d4ab7b8119c38044b6dc556fb2dd40240428c914cb25a2facbe SHA512 f428edcbe17bd5b5f22dd827cf21c89c2cf645bae6c0342c6663743cafd9f8a8d7c8b5a1b48c04569fdb0cce11ffcb6c0b6d7fa76075a1a274948ba418bcc5b4 +DIST checkpolicy-3.8.tar.gz 76237 BLAKE2B 1f7315dcc1b216abfe79799beb55cee8fa02ffbe66e386a011f47b31f858cafb21295094a1ce7d1473831fac24499bd8864f76a20502f84d4da9c1f97a8abdab SHA512 644e82a681faa398ee5fa9705ff7213f8105afcf2d6e3e3b5a593eeb300fa0b5d38a8188e28bb1e33ff41b9162f4131d5dd5359a13278acda8307f779b0cd9e9 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/checkpolicy/checkpolicy-3.8.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/checkpolicy/checkpolicy-3.8.ebuild new file mode 100644 index 00000000000..b5524796510 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/checkpolicy/checkpolicy-3.8.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" + +inherit toolchain-funcs + +MY_PV="${PV//_/-}" +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="SELinux policy compiler" +HOMEPAGE="http://userspace.selinuxproject.org" + +if [[ ${PV} == 9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git" + S="${WORKDIR}/${P}/${PN}" +else + SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~mips ~riscv ~x86" + S="${WORKDIR}/${MY_P}" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="debug" + +RDEPEND=">=sys-libs/libsepol-${PV}:=[static-libs(+)]" +DEPEND="${RDEPEND}" +BDEPEND="sys-devel/flex + sys-devel/bison" + +src_compile() { + emake \ + CC="$(tc-getCC)" \ + YACC="bison -y" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" +} + +src_install() { + default + + if use debug; then + dobin "${S}/test/dismod" + dobin "${S}/test/dispol" + fi +} + +pkg_postinst() { + if ! tc-is-cross-compiler; then + einfo "This checkpolicy can compile version `checkpolicy -V | cut -f 1 -d ' '` policy." + fi +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9.6.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9.6.ebuild index 6630d91c84d..13548680185 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9.6.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9.6.ebuild @@ -221,29 +221,33 @@ src_test() { local -x PATH="${T}/mount-wrappers:${PATH}" local -x gl_public_submodule_commit= - local xfail_tests=( - # bug #629660 - # Commented out again in 9.6 as it XPASSes on linux-6.12.10 - # with sandbox-2.43 on tmpfs. Let's see if it lasts.. - #tests/dd/no-allocate.sh - - # bug #675802 - tests/env/env-S - tests/env/env-S.pl - - # bug #413621 and bug #548250 - tests/du/long-from-unreadable.sh - tests/ls/removed-directory - tests/ls/removed-directory.sh - tests/ls/stat-free-symlinks - tests/ls/stat-free-symlinks.sh - tests/rm/deep-2 - tests/rm/deep-2.sh - - # We have a patch which fixes this (bug #259876) - #tests/touch/not-owner - #tests/touch/not-owner.sh - ) + local xfail_tests=() + + if [[ -n ${SANDBOX_ACTIVE} ]]; then + xfail_tests+=( + # bug #629660 + # Commented out again in 9.6 as it XPASSes on linux-6.12.10 + # with sandbox-2.43 on tmpfs. Let's see if it lasts.. + #tests/dd/no-allocate.sh + + # bug #675802 + tests/env/env-S + tests/env/env-S.pl + + # bug #413621 and bug #548250 + tests/du/long-from-unreadable.sh + tests/ls/removed-directory + tests/ls/removed-directory.sh + tests/ls/stat-free-symlinks + tests/ls/stat-free-symlinks.sh + tests/rm/deep-2 + tests/rm/deep-2.sh + + # We have a patch which fixes this (bug #259876) + #tests/touch/not-owner + #tests/touch/not-owner.sh + ) + fi # This test is flaky (bug #910640). cat > tests/tty/tty-eof.pl <<-EOF || die diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9999.ebuild index 6630d91c84d..13548680185 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-9999.ebuild @@ -221,29 +221,33 @@ src_test() { local -x PATH="${T}/mount-wrappers:${PATH}" local -x gl_public_submodule_commit= - local xfail_tests=( - # bug #629660 - # Commented out again in 9.6 as it XPASSes on linux-6.12.10 - # with sandbox-2.43 on tmpfs. Let's see if it lasts.. - #tests/dd/no-allocate.sh - - # bug #675802 - tests/env/env-S - tests/env/env-S.pl - - # bug #413621 and bug #548250 - tests/du/long-from-unreadable.sh - tests/ls/removed-directory - tests/ls/removed-directory.sh - tests/ls/stat-free-symlinks - tests/ls/stat-free-symlinks.sh - tests/rm/deep-2 - tests/rm/deep-2.sh - - # We have a patch which fixes this (bug #259876) - #tests/touch/not-owner - #tests/touch/not-owner.sh - ) + local xfail_tests=() + + if [[ -n ${SANDBOX_ACTIVE} ]]; then + xfail_tests+=( + # bug #629660 + # Commented out again in 9.6 as it XPASSes on linux-6.12.10 + # with sandbox-2.43 on tmpfs. Let's see if it lasts.. + #tests/dd/no-allocate.sh + + # bug #675802 + tests/env/env-S + tests/env/env-S.pl + + # bug #413621 and bug #548250 + tests/du/long-from-unreadable.sh + tests/ls/removed-directory + tests/ls/removed-directory.sh + tests/ls/stat-free-symlinks + tests/ls/stat-free-symlinks.sh + tests/rm/deep-2 + tests/rm/deep-2.sh + + # We have a patch which fixes this (bug #259876) + #tests/touch/not-owner + #tests/touch/not-owner.sh + ) + fi # This test is flaky (bug #910640). cat > tests/tty/tty-eof.pl <<-EOF || die diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/diffutils/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/diffutils/Manifest index 245d881f551..0d012a91e84 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/diffutils/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/diffutils/Manifest @@ -1,4 +1,4 @@ -DIST diffutils-3.10.242-d65b.tar.xz 1924516 BLAKE2B 3d4a2928b0c9462d1cd570d31b5d8ba32f3c3db23c2f96aca53c55a5d0738ee38ebd412138247313e7dc540284c2243ab49bffd23ed7eb320cef39118f195a2a SHA512 ad27490d59e77f5f6ca4d3a7d88d0ccbc1727aeded2427fd3bf7d5ecf478f182ae24938dec30f0eba9524cae771aac732ad26193a9a3f5356ab204152fa35423 -DIST diffutils-3.10.242-d65b.tar.xz.sig 833 BLAKE2B 2a7c70105d2d88edca9d771a21d39fba78ed25213fb922a48eae1e37d3eb2c07cce5ac24713cfdb336e1edd0def6f31aa79bac84ecc5a7d4ea80b4094cfccb26 SHA512 8a0564e14131c01aa93163a026fe9f87a2bebf4d9354b757233a1af81d7e276fb2e0dbc15e0d95ba89315a33d9751badd641755c901daa531d05547f4bcc9fb0 DIST diffutils-3.10.tar.xz 1624240 BLAKE2B 24a90162b3d876e6378243f19a85a1f1bb4cdfe98d130dee684740a902f2987509d5830dd32df4e26678b468b96960f6f9785ffb922e828cb8b4acce0d8587f6 SHA512 219d2c815a120690c6589846271e43aee5c96c61a7ee4abbef97dfcdb3d6416652ed494b417de0ab6688c4322540d48be63b5e617beb6d20530b5d55d723ccbb DIST diffutils-3.10.tar.xz.sig 833 BLAKE2B 06650838d6a3327fda6b2ab09693170ec18b730b1f5981c8f3e2180b2c8a553307ae93199e4be0532a534a8a3f95e4a7b4fccbbd9e5f8d1b1cedd0816b0aac90 SHA512 91aa1fcfca224454e292540ea7813f4a0eb348f06a4374017326d524949775359fc833de597cc201c97f357eb6c675800828a6e3332572376f3554f1f2e1aca1 +DIST diffutils-3.11.tar.xz 1926052 BLAKE2B e3d78548d1fbee060a9e0a7ee93f4aebaa80a9ff15867f13e2f1d09672e2b1e8dcf01f264d5184c441bc81b0b1a797210cbf4a1f9b8ba061994066e710e79fc1 SHA512 a381ee6bcbbead155ab6ea1aecc167ab1077c6d95133a876e26284b60bcaae26f01c62eaee400c86302b74fa8ab0c5239b7860ea86478b739ddc304367a35960 +DIST diffutils-3.11.tar.xz.sig 833 BLAKE2B 5b7f8d8b0ec2f1443270f9291acfd6ec7833268c5287d98225fb997efcfbbbec2e27f565226ae7d350576765689d7efd352b83c5a3ffca113963d9ec86b6a467 SHA512 81ac0cff6b9015758182e41688df70244f1ceac77835e0b06cb2c6c8ca89d93d1567010fed9b216bd65ebde8fcb89f162cc3112aa01f05b5b05f4a26f6fe69d7 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/diffutils/diffutils-3.10_p20250103.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/diffutils/diffutils-3.11-r1.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/sys-apps/diffutils/diffutils-3.10_p20250103.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/diffutils/diffutils-3.11-r1.ebuild index 069dd2e3134..128dac1face 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/diffutils/diffutils-3.10_p20250103.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/diffutils/diffutils-3.11-r1.ebuild @@ -31,6 +31,9 @@ BDEPEND=" nls? ( sys-devel/gettext ) verify-sig? ( sec-keys/openpgp-keys-diffutils ) " +RDEPEND=" + nls? ( app-i18n/gnulib-l10n ) +" src_prepare() { default diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/gawk/gawk-5.3.1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/gawk/gawk-5.3.1.ebuild index 65e4aa1189b..116a94925b2 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/gawk/gawk-5.3.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/gawk/gawk-5.3.1.ebuild @@ -107,30 +107,3 @@ src_install() { doins *.h rm "${ED}"/usr/include/awk/config.h || die } - -pkg_postinst() { - # Symlink creation here as the links do not belong to gawk, but to any awk - if has_version app-admin/eselect && has_version app-eselect/eselect-awk ; then - eselect awk update ifunset - else - local l - for l in "${EROOT}"/usr/share/man/man1/gawk.1* "${EROOT}"/usr/bin/gawk ; do - if [[ -e ${l} ]] && ! [[ -e ${l/gawk/awk} ]] ; then - ln -s "${l##*/}" "${l/gawk/awk}" || die - fi - done - - if ! [[ -e ${EROOT}/bin/awk ]] ; then - # /bin might not exist yet (stage1) - [[ -d "${EROOT}/bin" ]] || mkdir "${EROOT}/bin" || die - - ln -s "../usr/bin/gawk" "${EROOT}/bin/awk" || die - fi - fi -} - -pkg_postrm() { - if has_version app-admin/eselect && has_version app-eselect/eselect-awk ; then - eselect awk update ifunset - fi -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/Manifest index 6d83ad4b25e..209ff561676 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/Manifest @@ -1,3 +1,3 @@ DIST iproute2-6.11.0.tar.xz 923736 BLAKE2B 1a360d7cb9a70f5cde184abe934f2d08e9c0d2196c4ec10015636af3984abe2738d9dd8d6c7a69569fc7449e9933829f4eccd593ab8c041ce7b6385adaed63cc SHA512 06bedd7ae573fe5cf9c72af698987ba03e53dc6fce5f41813bf5bb155b683490e5c75cc835ce5ba4509e491eb6138e96da162204c28ea1b3d80887107997a3b3 DIST iproute2-6.12.0.tar.xz 925392 BLAKE2B 95aee769662e21c8c6223d09ee0ec365fcdeb7a10d01e89e33aa3039a6dfac11401cbdca4bf436544fc05ed709ad90871ac91eaf17dc553d7ca157b98577a7b7 SHA512 dbd6afb8162a6086e4be9045b8dc53aa563bd4b7abaf43ee13cd7d493730ff0b90e6985f68c6f42d64f4af6a692d0589e0cefd2f24045ec1c10418cfb73940b2 -DIST iproute2-6.9.0.tar.xz 918144 BLAKE2B a7434a2537a55b4875db0e3cc35383dfe4d0c8a118a8a1102c4076bfb154c9c2ab0781dcff324fa18ce7cfde798bf332a9e0ff08003ff39acbb8129b597a93a6 SHA512 1cbb234cb8f94213c3529f0b74fed5a575ff1fb838e783b8d2b440643c2e91246eda42e9b26e9775897aadb8b8133d199b2851b8ea0df06a899dc02acf403325 +DIST iproute2-6.13.0.tar.xz 927416 BLAKE2B bbebc44d1a7e35c410869a2a5884df09698ea3950acd126e5736a938718d40e57d539ff88ecd7827cbdf2f9481c3d728fff3948a61c2ba3e1483c5b7a7616577 SHA512 2e392a8ddc3d7662c3a72bba1c845587df85b7afc6efabf7df0ec2830bb1d4b16cac5bfb7a43dc3ac73adf0ea3fe3670824674d4f32209c6d1aa638a7cb7cd6c diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-6.11.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-6.13.0.ebuild similarity index 95% rename from sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-6.11.0.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-6.13.0.ebuild index debd258b42e..dcaf60620fa 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-6.11.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-6.13.0.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 @@ -10,7 +10,7 @@ if [[ ${PV} == 9999 ]] ; then inherit git-r3 else SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz" - KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" fi DESCRIPTION="kernel routing and traffic control utilities" @@ -24,7 +24,6 @@ RESTRICT="test" # We could make libmnl optional, but it's tiny, so eh RDEPEND=" - !net-misc/arpd !minimal? ( net-libs/libmnl:= ) atm? ( net-dialup/linux-atm ) berkdb? ( sys-libs/db:= ) @@ -48,7 +47,6 @@ BDEPEND=" " PATCHES=( - "${FILESDIR}"/${PN}-6.10.0-musl-1.patch # bug #936234 "${FILESDIR}"/${PN}-6.10.0-musl-2.patch # bug #926341 "${FILESDIR}"/${PN}-6.9.0-mtu.patch # bug #291907 "${FILESDIR}"/${PN}-6.8.0-configure-nomagic-nolibbsd.patch # bug #643722 & #911727 @@ -112,7 +110,8 @@ src_configure() { # run "configure" script first which will create "config.mk"... # Using econf breaks since 5.14.0 (a9c3d70d902a0473ee5c13336317006a52ce8242) - edo ./configure --color=auto --libbpf_force $(usex bpf on off) + eval "local -a EXTRA_ECONF=(${EXTRA_ECONF})" + edo ./configure --libbpf_force $(usex bpf on off) "${EXTRA_ECONF[@]}" # Remove the definitions made by configure and allow them to be overridden # by USE flags below. diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-6.9.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-6.9.0.ebuild deleted file mode 100644 index 1e889a3bf89..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-6.9.0.ebuild +++ /dev/null @@ -1,213 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit edo toolchain-funcs flag-o-matic - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git" - inherit git-r3 -else - SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" -fi - -DESCRIPTION="kernel routing and traffic control utilities" -HOMEPAGE="https://wiki.linuxfoundation.org/networking/iproute2" - -LICENSE="GPL-2" -SLOT="0" -IUSE="atm berkdb bpf caps elf +iptables minimal nfs selinux" -# Needs root -RESTRICT="test" - -# We could make libmnl optional, but it's tiny, so eh -RDEPEND=" - !net-misc/arpd - !minimal? ( net-libs/libmnl:= ) - atm? ( net-dialup/linux-atm ) - berkdb? ( sys-libs/db:= ) - bpf? ( dev-libs/libbpf:= ) - caps? ( sys-libs/libcap ) - elf? ( virtual/libelf:= ) - iptables? ( >=net-firewall/iptables-1.4.20:= ) - nfs? ( net-libs/libtirpc:= ) - selinux? ( sys-libs/libselinux ) -" -# We require newer linux-headers for ipset support (bug #549948) and some defines (bug #553876) -DEPEND=" - ${RDEPEND} - >=sys-kernel/linux-headers-3.16 -" -BDEPEND=" - app-arch/xz-utils - >=sys-devel/bison-2.4 - app-alternatives/lex - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}"/${PN}-6.9.0-mtu.patch # bug #291907 - "${FILESDIR}"/${PN}-6.8.0-configure-nomagic-nolibbsd.patch # bug #643722 & #911727 - "${FILESDIR}"/${PN}-6.8.0-disable-libbsd-fallback.patch # bug #911727 - "${FILESDIR}"/${PN}-6.6.0-musl-c99.patch # bug #922622 & #932617 -) - -src_prepare() { - default - - # Fix version if necessary - local versionfile="include/version.h" - if [[ ${PV} != 9999 ]] && ! grep -Fq "${PV}" ${versionfile} ; then - einfo "Fixing version string" - sed -i "s@\"[[:digit:]\.]\+\"@\"${PV}\"@" \ - ${versionfile} || die - fi - - # echo -n is not POSIX compliant - sed -i 's@echo -n@printf@' configure || die - - sed -i \ - -e '/^CC :\?=/d' \ - -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \ - -e "s|-O2|${CFLAGS} ${CPPFLAGS}|" \ - -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \ - -e "/^DBM_INCLUDE/s:=.*:=${T}:" \ - Makefile || die - - # Build against system headers - rm -r include/netinet || die #include/linux include/ip{,6}tables{,_common}.h include/libiptc - sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die - - if use minimal ; then - sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile || die - fi -} - -src_configure() { - tc-export AR CC PKG_CONFIG - - # This sure is ugly. Should probably move into toolchain-funcs at some point. - local setns - pushd "${T}" >/dev/null || die - printf '#include \nint main(){return setns(0, 0);}\n' > test.c || die - if ${CC} ${CFLAGS} ${CPPFLAGS} -D_GNU_SOURCE ${LDFLAGS} test.c >&/dev/null ; then - setns=y - else - setns=n - fi - - echo 'int main(){return 0;}' > test.c || die - if ! ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null ; then - sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile || die - fi - popd >/dev/null || die - - # build system does not pass CFLAGS to LDFLAGS, as is recommended by GCC upstream - # https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#index-flto - # https://bugs.gentoo.org/929233 - append-ldflags ${CFLAGS} - - # run "configure" script first which will create "config.mk"... - # Using econf breaks since 5.14.0 (a9c3d70d902a0473ee5c13336317006a52ce8242) - edo ./configure --color=auto --libbpf_force $(usex bpf on off) - - # Remove the definitions made by configure and allow them to be overridden - # by USE flags below. - # We have to do the cheesy only-sed-if-disabled because otherwise - # the *_FLAGS etc stuff found by configure will be used but result - # in a broken build. - if ! use berkdb ; then - sed -i -e '/HAVE_BERKELEY_DB/d' config.mk || die - fi - - if ! use caps ; then - sed -i -e '/HAVE_CAP/d' config.mk || die - fi - - if use minimal ; then - sed -i -e '/HAVE_MNL/d' config.mk || die - fi - - if ! use elf ; then - sed -i -e '/HAVE_ELF/d' config.mk || die - fi - - if ! use nfs ; then - sed -i -e '/HAVE_RPC/d' config.mk || die - fi - - if ! use selinux ; then - sed -i -e '/HAVE_SELINUX/d' config.mk || die - fi - - # ...Now switch on/off requested features via USE flags - # this is only useful if the test did not set other things, per bug #643722 - # Keep in sync with ifs above, or refactor to be unified. - cat <<-EOF >> config.mk - TC_CONFIG_ATM := $(usex atm y n) - TC_CONFIG_XT := $(usex iptables y n) - TC_CONFIG_NO_XT := $(usex iptables n y) - # We've locked in recent enough kernel headers, bug #549948 - TC_CONFIG_IPSET := y - HAVE_BERKELEY_DB := $(usex berkdb y n) - HAVE_CAP := $(usex caps y n) - HAVE_MNL := $(usex minimal n y) - HAVE_ELF := $(usex elf y n) - HAVE_RPC := $(usex nfs y n) - HAVE_SELINUX := $(usex selinux y n) - IP_CONFIG_SETNS := ${setns} - # Use correct iptables dir, bug #144265, bug #293709 - IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir) - EOF -} - -src_compile() { - emake V=1 NETNS_RUN_DIR=/run/netns -} - -src_test() { - emake check -} - -src_install() { - if use minimal ; then - into / - dosbin tc/tc - dobin ip/ip - return 0 - fi - - emake \ - DESTDIR="${D}" \ - PREFIX="${EPREFIX}/usr" \ - LIBDIR="${EPREFIX}"/$(get_libdir) \ - SBINDIR="${EPREFIX}"/sbin \ - CONFDIR="${EPREFIX}"/etc/iproute2 \ - DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \ - MANDIR="${EPREFIX}"/usr/share/man \ - ARPDDIR="${EPREFIX}"/var/lib/arpd \ - install - - dodir /bin - mv "${ED}"/{s,}bin/ip || die # bug #330115 - mv "${ED}"/{s,}bin/ss || die # bug #547264 - - dolib.a lib/libnetlink.a - insinto /usr/include - doins include/libnetlink.h - - # Collides with net-analyzer/ifstat - # https://bugs.gentoo.org/868321 - mv "${ED}"/sbin/ifstat{,-iproute2} || die - - if use berkdb ; then - keepdir /var/lib/arpd - # bug #47482, arpd doesn't need to be in /sbin - dodir /usr/bin - mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die - elif [[ -d "${ED}"/var/lib/arpd ]]; then - rmdir --ignore-fail-on-non-empty -p "${ED}"/var/lib/arpd || die - fi -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-9999.ebuild index 3ea2b7db3ea..dcaf60620fa 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-9999.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 @@ -47,7 +47,6 @@ BDEPEND=" " PATCHES=( - "${FILESDIR}"/${PN}-6.10.0-musl-1.patch # bug #936234 "${FILESDIR}"/${PN}-6.10.0-musl-2.patch # bug #926341 "${FILESDIR}"/${PN}-6.9.0-mtu.patch # bug #291907 "${FILESDIR}"/${PN}-6.8.0-configure-nomagic-nolibbsd.patch # bug #643722 & #911727 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.10.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.10.ebuild index 1eb43be993f..eeb536cb1d0 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.10.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.10.ebuild @@ -61,7 +61,7 @@ SRC_URI+=" LICENSE="man-pages GPL-2+ BSD" SLOT="0" # Keep the following in sync with app-i18n/man-pages-l10n -MY_L10N=( cs da de el es fi fr hu id it mk nb nl pl pt-BR ro sr sv uk vi ) +MY_L10N=( cs da de el es fi fr hu id it ko mk nb nl pl pt-BR ro ru sr sv uk vi ) IUSE="l10n_ja l10n_ru l10n_zh-CN ${MY_L10N[@]/#/l10n_}" RESTRICT="binchecks" diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/semodule-utils/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/semodule-utils/Manifest index 72580447cbc..80c5054e0e5 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/semodule-utils/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/semodule-utils/Manifest @@ -1,2 +1,3 @@ DIST semodule-utils-3.6.tar.gz 12844 BLAKE2B e5e7501c412649f471e89cc89569d6c51421e0b46f172f243ce778bbe3a2c658ef9a92e3f3e1e07fb3358e25f63e004b6bd4b56619472fbcae8cb5b916d54170 SHA512 16b58bbafcaef9a2e8e34a20d0e1e4024a9044024de8fa3137c5ba1b9af600afac51c15ccb648dd6bff77747c047f4c9feafeea07c19b1eb14955acc92697a48 DIST semodule-utils-3.7.tar.gz 12896 BLAKE2B 7487c74585e281f6c44e9977efb85e89bf01d93285c6cc6593dd876e948cc385ec9f11b52f3fc182b2bac3621bcc89c53fc217c41b1a01d586274139b0a40fa6 SHA512 133f76ddff0cc4121e59560f4167e15288cc7f6172a39b49ea631803f6e3365fef95166a55498fa2e036de85466e37bb6ec164ef60855eef8c888c9b384b0120 +DIST semodule-utils-3.8.tar.gz 12905 BLAKE2B 13c863ab3240e24f6d6069ed29bfa51133d593fa779040852b45640403482f0087b15de351a63a04c75940cdacb901c9c865257785aaf19cb13fbef8ebac2e8d SHA512 2983607b171201a66fcf8299ffa77e0a9c4d3042a360eb961ec470af27b528db995c959cee9934ce6b3f6de4e2f28db587c5b25ebe7e74386136874f704bc2d0 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/semodule-utils/semodule-utils-3.7.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/semodule-utils/semodule-utils-3.7.ebuild index eb2433901ee..a0623ed0368 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/semodule-utils/semodule-utils-3.7.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/semodule-utils/semodule-utils-3.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" @@ -17,7 +17,7 @@ if [[ ${PV} == *9999 ]] ; then S="${WORKDIR}/${P}/${PN}" else SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~mips ~riscv ~x86" + KEYWORDS="amd64 ~arm ~arm64 ~mips ~riscv x86" S="${WORKDIR}/${MY_P}" fi diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/semodule-utils/semodule-utils-3.8.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/semodule-utils/semodule-utils-3.8.ebuild new file mode 100644 index 00000000000..184020a21d9 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/semodule-utils/semodule-utils-3.8.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" + +inherit toolchain-funcs + +MY_PV="${PV//_/-}" +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="SELinux policy module utilities" +HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki" + +if [[ ${PV} == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git" + S="${WORKDIR}/${P}/${PN}" +else + SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" + S="${WORKDIR}/${MY_P}" +fi + +LICENSE="GPL-2" +SLOT="0" + +DEPEND=">=sys-libs/libsepol-${PV}:=" +RDEPEND="${DEPEND}" + +src_prepare() { + default + + sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror" +} + +src_compile() { + emake CC="$(tc-getCC)" +} + +src_install() { + emake DESTDIR="${D}" install +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/which/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/which/Manifest index 75aa5ac8b28..679c43d0cce 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/which/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/which/Manifest @@ -1 +1,2 @@ DIST which-2.21.tar.gz 149305 BLAKE2B 355888b0dfe3e4e1679a8a9e1255a935fa48be220408abc441fae69fe0b26bd39e0544ed20e75497ed5bccaa75e788d9aec17007c668f15eaf6b1599faa131a0 SHA512 d2f04a5c5291f2d7d1226982da7cf999d36cfe24d3f7bda145508efcfb359511251d3c68b860c0ddcedd66b15a0587b648a35ab6d1f173707565305c506dfc61 +DIST which-2.23.tar.gz 201930 BLAKE2B 64a3ae1f23a4c389f945f6c0985e6f6062b46785125a0d0659ff160560a4a473633d38af71b1505beeabba8336f5a9906f1ba58ab3494635e970bd5529b3936f SHA512 738807f79e8cfc5967541a28ae7021247c04c4177279f09be2c19c069af450a7e3b19baf9079fe5569b25b4630bb400be242a123647e52c9fe54f0ad007317bf diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/which/which-2.23.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/which/which-2.23.ebuild new file mode 100644 index 00000000000..62bcd5206bb --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/which/which-2.23.ebuild @@ -0,0 +1,20 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="Prints out location of specified executables that are in your path" +HOMEPAGE="https://carlowood.github.io/which/" +SRC_URI="mirror://gnu/${PN}/${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" + +src_configure() { + tc-export AR + + CONFIG_SHELL="${BROOT}"/bin/bash econf +} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/Manifest b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/Manifest index b72d306765d..c048e8822a4 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/Manifest @@ -20,6 +20,7 @@ DIST binutils-2.41-patches-5.tar.xz 95176 BLAKE2B bbc94b3c7d70653a1056afe57a120b DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba63dcd74c665fd834e858645c912ffd8245d848435288b938852830b482905606f55c40df4061215fd75c52ffc75 SHA512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374 DIST binutils-2.42-patches-6.tar.xz 50664 BLAKE2B f13b65a761cfba80caf2e4740c6383b40305558365b950fba22aca95a104e799e8bd476082f36fb9288de4f224b09f317792c1444e549c40d15a4b64cdf61989 SHA512 1203eca0a9e622411eac377509de8fd0db3ffcb282ac38ab7a0369b166cc1091197daad85b51b145b34a4832f1a1a4d573c8254e8d67aeb22f35adb1ab3ece1f DIST binutils-2.42.tar.xz 27567160 BLAKE2B e67a5c028fba70e70088fd11b38ec8c9c4ed5a019badefda25abeb6275997b16f0891e7ff3424c4b82bbfae92e8992669826920dd53df61cd48469d8f7cd5bd1 SHA512 155f3ba14cd220102f4f29a4f1e5cfee3c48aa03b74603460d05afb73c70d6657a9d87eee6eb88bf13203fe6f31177a5c9addc04384e956e7da8069c8ecd20a6 -DIST binutils-2.43-patches-2.tar.xz 35184 BLAKE2B fa35c9f182c7ae0fed28614f47618d1563a58f223fd1805f348b618c1fbf039a444e44d88f46d040b6971e481e0da882e5c4492fd167d17bf39579d87a446434 SHA512 a7e167d3f6a2c08f19af4685d90a6160a1a52f1a87f5660fb6d80ec664033829c0eacad0d77b1306620e50ff89d1f9f63a7c2b064ad9775400f0cb0eba3159a4 DIST binutils-2.43-patches-3.tar.xz 62692 BLAKE2B a189a01a6a99c4fdff124cf90ecc18f874812c17fc735376c855469c487b6a71489ad5c2f86c518d2e029cc83d65757144ff9abddbe7ec3fc06e22f9501c62f4 SHA512 99a30e18fdfd7bdce85bb903f8d61837cfbb639ead8a680ff1a85ad1d615b658e696bdf196c4a002d029f952d34aa441e09e861b22f5400c65f07cce5934cd8f DIST binutils-2.43.tar.xz 28175768 BLAKE2B 28b0a04a28273b76eab2d00e00160be889f155f77f5a9d8759ef8dce505c97e97641bf7ec70b92b731b520570a02b06e04e8215b068fcb1bb2573e9ef24732d9 SHA512 93e063163e54d6a6ee2bd48dc754270bf757a3635b49a702ed6b310e929e94063958512d191e66beaf44275f7ea60865dbde138b624626739679fcc306b133bb +DIST binutils-2.44-patches-1.tar.xz 9156 BLAKE2B c72a7d0ffdb852f8de9c18e187b5768085b3a070744a4fadef508ab0e865d3a3967ec12a0ee7a325b6b689f39e5243aacd9d3f73ceb723d53592ec6ca640161b SHA512 053de98536e92837d0a08fac26bb0f057431747fe6e82f8b9ac54dd9aed65d8de379d653c0e8a8cd31267b9769825a420db5f40957f8c4eb54a7e4a9d76fadb8 +DIST binutils-2.44.tar.xz 27285788 BLAKE2B 0eb031ace9fb5a7047b81b5a05b1760f7d332c8ed67f98899f153a45f181b83e661a484551af05c0a9b2adc422da84619103c7b1f3c9fad5327872832b5446aa SHA512 b85d3bbc0e334cf67a96219d3c7c65fbf3e832b2c98a7417bf131f3645a0307057ec81cd2b29ff2563cec53e3d42f73e2c60cc5708e80d4a730efdcc6ae14ad7 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.42-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.42-r2.ebuild index 267d2d3fd4b..741c42f7de4 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.42-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.42-r2.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=7 @@ -309,7 +309,7 @@ src_configure() { if use hardened ; then myconf+=( - # TOOD: breaks glibc test suite + # TODO: breaks glibc test suite #--enable-error-execstack=yes #--enable-error-rwx-segments=yes --enable-default-execstack=no diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.43-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.43-r2.ebuild index 3771850d208..675b58d5c5f 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.43-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.43-r2.ebuild @@ -316,7 +316,7 @@ src_configure() { if use hardened ; then myconf+=( - # TOOD: breaks glibc test suite + # TODO: breaks glibc test suite #--enable-error-execstack=yes #--enable-error-rwx-segments=yes --enable-default-execstack=no diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.43.9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.43.9999.ebuild index 1aaa2aa7ea0..aba22e72ca2 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.43.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.43.9999.ebuild @@ -327,7 +327,7 @@ src_configure() { if use hardened ; then myconf+=( - # TOOD: breaks glibc test suite + # TODO: breaks glibc test suite #--enable-error-execstack=yes #--enable-error-rwx-segments=yes --enable-default-execstack=no diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.44.9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.44.9999.ebuild new file mode 100644 index 00000000000..f6894326484 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.44.9999.ebuild @@ -0,0 +1,568 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs + +DESCRIPTION="Tools necessary to build programs" +HOMEPAGE="https://sourceware.org/binutils/" + +LICENSE="GPL-3+" +IUSE="cet debuginfod doc gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla xxhash zstd" + +# Variables that can be set here (ignored for live ebuilds) +# PATCH_VER - the patchset version +# Default: empty, no patching +# PATCH_BINUTILS_VER - the binutils version in the patchset name +# - Default: PV +# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/... +# for the patchsets + +PATCH_VER=1 +PATCH_DEV=dilfridge + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + SLOT=${PV} +elif [[ ${PV} == *9999 ]]; then + inherit git-r3 + SLOT=$(ver_cut 1-2) +else + PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}} + PATCH_DEV=${PATCH_DEV:-dilfridge} + SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz https://sourceware.org/pub/binutils/releases/binutils-${PV}.tar.xz https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PV}.tar.xz" + [[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI} + https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz" + SLOT=$(ver_cut 1-2) + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +# +# The cross-compile logic +# +export CTARGET=${CTARGET:-${CHOST}} +if [[ ${CTARGET} == ${CHOST} ]] ; then + if [[ ${CATEGORY} == cross-* ]] ; then + export CTARGET=${CATEGORY#cross-} + fi +fi +is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; } + +# +# The dependencies +# +RDEPEND=" + >=sys-devel/binutils-config-3 + sys-libs/zlib + debuginfod? ( + dev-libs/elfutils[debuginfod(-)] + ) + zstd? ( app-arch/zstd:= ) +" +DEPEND=" + ${RDEPEND} + xxhash? ( dev-libs/xxhash ) +" +BDEPEND=" + doc? ( sys-apps/texinfo ) + pgo? ( + dev-util/dejagnu + app-alternatives/bc + ) + test? ( + dev-util/dejagnu + app-alternatives/bc + ) + nls? ( sys-devel/gettext ) + zstd? ( virtual/pkgconfig ) + app-alternatives/lex + app-alternatives/yacc +" + +RESTRICT="!test? ( test )" + +MY_BUILDDIR=${WORKDIR}/build + +src_unpack() { + if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/toolchain/binutils-patches.git + https://github.com/gentoo/binutils-patches + " + EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git + git-r3_src_unpack + mv patches-git/9999 patch || die + + if [[ ${PV} != 9999 ]] ; then + EGIT_BRANCH=binutils-$(ver_cut 1)_$(ver_cut 2)-branch + fi + EGIT_REPO_URI=" + https://sourceware.org/git/binutils-gdb.git + https://git.sr.ht/~sourceware/binutils-gdb + https://gitlab.com/x86-binutils/binutils-gdb.git + " + S=${WORKDIR}/binutils + EGIT_CHECKOUT_DIR=${S} + git-r3_src_unpack + else + unpack ${P/-hppa64/}.tar.xz + + cd "${WORKDIR}" || die + unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz + + # _p patch versions are Gentoo specific tarballs ... + local dir=${P%_p?} + dir=${dir/-hppa64/} + + S=${WORKDIR}/${dir} + fi + + cd "${WORKDIR}" || die + mkdir -p "${MY_BUILDDIR}" || die +} + +src_prepare() { + local patchsetname + if [[ ${PV} == 9999 ]] ; then + patchsetname="from git master" + elif [[ ${PV} == *9999 ]] ; then + patchsetname="from git branch ${EGIT_BRANCH}" + else + patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}" + fi + + if [[ -n ${PATCH_VER} ]] || [[ ${PV} == *9999 ]] ; then + if ! use vanilla; then + einfo "Applying binutils patchset ${patchsetname}" + eapply "${WORKDIR}/patch" + einfo "Done." + + # This is applied conditionally for now just out of caution. + # It should be okay on non-prefix systems though. See bug #892549. + if is_cross || use prefix; then + eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch \ + "${FILESDIR}"/binutils-2.41-linker-prefix.patch + fi + fi + fi + + # Make sure our explicit libdir paths don't get clobbered, bug #562460 + sed -i \ + -e 's:@bfdlibdir@:@libdir@:g' \ + -e 's:@bfdincludedir@:@includedir@:g' \ + {bfd,opcodes}/Makefile.in || die + + # Apply things from PATCHES and user dirs + default + + # Run misc portage update scripts + gnuconfig_update + elibtoolize --portage --no-uclibc +} + +toolchain-binutils_bugurl() { + printf "https://bugs.gentoo.org/" +} +toolchain-binutils_pkgversion() { + printf "Gentoo ${PV}" + [[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}" +} + +src_configure() { + # See https://www.gnu.org/software/make/manual/html_node/Parallel-Output.html + # Avoid really confusing logs from subconfigure spam, makes logs far + # more legible. + MAKEOPTS="--output-sync=line ${MAKEOPTS}" + + # Setup some paths + LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${PV} + INCPATH=${LIBPATH}/include + DATAPATH=/usr/share/binutils-data/${CTARGET}/${PV} + if is_cross ; then + TOOLPATH=/usr/${CHOST}/${CTARGET} + else + TOOLPATH=/usr/${CTARGET} + fi + BINPATH=${TOOLPATH}/binutils-bin/${PV} + + # Make sure we filter $LINGUAS so that only ones that + # actually work make it through, bug #42033 + strip-linguas -u */po + + # Keep things sane + strip-flags + use cet && filter-flags -mindirect-branch -mindirect-branch=* + use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152 + + local x + echo + for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do + einfo "$(printf '%10s' ${x}:) ${!x}" + done + echo + + cd "${MY_BUILDDIR}" || die + local myconf=() + + if use plugins ; then + myconf+=( --enable-plugins ) + fi + + if use nls ; then + myconf+=( --without-included-gettext ) + else + myconf+=( --disable-nls ) + fi + + myconf+=( --with-system-zlib ) + + # For bi-arch systems, enable a 64bit bfd. This matches the bi-arch + # logic in toolchain.eclass. bug #446946 + # + # We used to do it for everyone, but it's slow on 32bit arches. bug #438522 + case $(tc-arch) in + ppc|sparc|x86) myconf+=( --enable-64-bit-bfd ) ;; + esac + + use multitarget && myconf+=( --enable-targets=all --enable-64-bit-bfd ) + + [[ -n ${CBUILD} ]] && myconf+=( --build=${CBUILD} ) + + is_cross && myconf+=( + --with-sysroot="${EPREFIX}"/usr/${CTARGET} + --enable-poison-system-directories + ) + + myconf+=( --enable-secureplt ) + + # mips can't do hash-style=gnu ... + if [[ $(tc-arch) != mips ]] ; then + myconf+=( --enable-default-hash-style=gnu ) + fi + + myconf+=( + --prefix="${EPREFIX}"/usr + --host=${CHOST} + --target=${CTARGET} + --datadir="${EPREFIX}"${DATAPATH} + --datarootdir="${EPREFIX}"${DATAPATH} + --infodir="${EPREFIX}"${DATAPATH}/info + --mandir="${EPREFIX}"${DATAPATH}/man + --bindir="${EPREFIX}"${BINPATH} + --libdir="${EPREFIX}"${LIBPATH} + --libexecdir="${EPREFIX}"${LIBPATH} + --includedir="${EPREFIX}"${INCPATH} + # portage's econf() does not detect presence of --d-d-t + # because it greps only top-level ./configure. But not + # libiberty's or bfd's configure. + --disable-dependency-tracking + --disable-silent-rules + --enable-obsolete + --enable-shared + --enable-threads + --enable-relro + --enable-install-libiberty + --enable-textrel-check=$(usex hardened error warning) + # Things to think about + #--enable-deterministic-archives + --enable-new-dtags + --disable-jansson + --disable-werror + --with-bugurl="$(toolchain-binutils_bugurl)" + --with-pkgversion="$(toolchain-binutils_pkgversion)" + $(use_enable static-libs static) + $(use_with xxhash) + $(use_with zstd) + + # Disable modules that are in a combined binutils/gdb tree, bug #490566 + --disable-{gdb,gdbserver,libbacktrace,libdecnumber,readline,sim} + # Strip out broken static link flags: https://gcc.gnu.org/PR56750 + --without-stage1-ldflags + # Change SONAME to avoid conflict across {native,cross}/binutils, binutils-libs. bug #666100 + --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st) + + $(use_with debuginfod) + + # Avoid automagic dev-libs/msgpack dep, bug #865875 + --without-msgpack + + # Allow user to opt into CET for host libraries. + # Ideally we would like automagic-or-disabled here. + # But the check does not quite work on i686: bug #760926. + $(use_enable cet) + + # We can enable this by default in future, but it's brand new + # in 2.39 with several bugs: + # - Doesn't build on musl (https://sourceware.org/bugzilla/show_bug.cgi?id=29477) + # - No man pages (https://sourceware.org/bugzilla/show_bug.cgi?id=29521) + # - Broken at runtime without Java (https://sourceware.org/bugzilla/show_bug.cgi?id=29479) + # - binutils-config (and this ebuild?) needs adaptation first (https://bugs.gentoo.org/865113) + $(use_enable gprofng) + + # Enables colored disassembly by default (equivalent to passing + # --disassembler-color=terminal to all objdump invocations). + --enable-colored-disassembly + ) + + case ${CTARGET} in + x86_64-*|aarch64*|arm64*|i[3456]*) + # These hardening options are available from 2.39+ but + # they unconditionally enable the behaviour even on arches + # where e.g. execstacks can't be avoided. + # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592. + # + # TODO: Get the logic for this fixed upstream so it doesn't + # create impossible broken combinations on some arches, like mips. + # + # TODO: Get the logic for this fixed upstream so --disable-* works + # as expected. + myconf+=( + --enable-warn-execstack=yes + --enable-warn-rwx-segments=yes + ) + + if use hardened ; then + myconf+=( + # TODO: breaks glibc test suite + #--enable-error-execstack=yes + #--enable-error-rwx-segments=yes + --enable-default-execstack=no + ) + fi + ;; + *) + ;; + esac + + if use elibc_musl ; then + # Override our earlier setting for musl, as textrels don't + # work there at all. See bug #707660. + myconf+=( + --enable-textrel-check=error + ) + fi + + if use test || { use pgo && tc-is-lto ; } ; then + # -Wa,* needs to be consistent everywhere or lto-wrapper will complain + filter-flags '-Wa,*' + fi + + if ! is_cross ; then + myconf+=( $(use_enable pgo pgo-build $(tc-is-lto && echo "lto" || echo "yes")) ) + + if use pgo ; then + # We let configure handle it for us because it has to run + # the testsuite later on for profiling, and LTO isn't compatible + # with the testsuite. + filter-lto + + export BUILD_CFLAGS="${CFLAGS}" + fi + fi + + ECONF_SOURCE="${S}" econf "${myconf[@]}" + + # Prevent makeinfo from running if doc is unset. + if ! use doc ; then + sed -i \ + -e '/^MAKEINFO/s:=.*:= true:' \ + Makefile || die + fi +} + +src_compile() { + cd "${MY_BUILDDIR}" || die + + # see Note [tooldir hack for ldscripts] + # see linker prefix patch + emake \ + tooldir="${EPREFIX}${TOOLPATH}" \ + gentoo_prefix=$(usex prefix-guest "${EPREFIX}"/usr /usr) \ + all + + # only build info pages if the user wants them + if use doc ; then + emake info + fi + + # we nuke the manpages when we're left with junk + # (like when we bootstrap, no perl -> no manpages) + find . -name '*.1' -a -size 0 -delete +} + +src_test() { + cd "${MY_BUILDDIR}" || die + + ( + # Tests don't expect LTO + filter-lto + + # lto-wrapper warnings which confuse tests + filter-flags '-Wa,*' + + # bug #637066 + filter-flags -Wall -Wreturn-type + + emake -k check \ + CFLAGS_FOR_TARGET="${CFLAGS_FOR_TARGET:-${CFLAGS}}" \ + CXXFLAGS_FOR_TARGET="${CXXFLAGS_FOR_TARGET:-${CXXFLAGS}}" \ + LDFLAGS_FOR_TARGET="${LDFLAGS_FOR_TARGET:-${LDFLAGS}}" \ + CFLAGS="${CFLAGS}" \ + CXXFLAGS="${CXXFLAGS}" \ + LDFLAGS="${LDFLAGS}" + ) +} + +src_install() { + local x d + + cd "${MY_BUILDDIR}" || die + + # see Note [tooldir hack for ldscripts] + emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install + rm -rf "${ED}"/${LIBPATH}/bin || die + use static-libs || find "${ED}" -name '*.la' -delete + + # Newer versions of binutils get fancy with ${LIBPATH}, bug #171905 + cd "${ED}"/${LIBPATH} || die + for d in ../* ; do + [[ ${d} == ../${PV} ]] && continue + mv ${d}/* . || die + rmdir ${d} || die + done + + # Now we collect everything intp the proper SLOT-ed dirs + # When something is built to cross-compile, it installs into + # /usr/$CHOST/ by default ... we have to 'fix' that :) + if is_cross ; then + cd "${ED}"/${BINPATH} || die + for x in * ; do + mv ${x} ${x/${CTARGET}-} || die + done + + if [[ -d ${ED}/usr/${CHOST}/${CTARGET} ]] ; then + mv "${ED}"/usr/${CHOST}/${CTARGET}/include "${ED}"/${INCPATH} + mv "${ED}"/usr/${CHOST}/${CTARGET}/lib/* "${ED}"/${LIBPATH}/ + rm -r "${ED}"/usr/${CHOST}/{include,lib} + fi + fi + + insinto ${INCPATH} + local libiberty_headers=( + # Not all the libiberty headers. See libiberty/Makefile.in:install_to_libdir. + demangle.h + dyn-string.h + fibheap.h + hashtab.h + libiberty.h + objalloc.h + splay-tree.h + ) + doins "${libiberty_headers[@]/#/${S}/include/}" + if [[ -d ${ED}/${LIBPATH}/lib ]] ; then + mv "${ED}"/${LIBPATH}/lib/* "${ED}"/${LIBPATH}/ || die + rm -r "${ED}"/${LIBPATH}/lib || die + fi + + # Generate an env.d entry for this binutils + insinto /etc/env.d/binutils + cat <<-EOF > "${T}"/env.d + TARGET="${CTARGET}" + VER="${PV}" + LIBPATH="${EPREFIX}${LIBPATH}" + EOF + newins "${T}"/env.d ${CTARGET}-${PV} + + # Handle documentation + if ! is_cross ; then + cd "${S}" || die + dodoc README + + docinto bfd + dodoc bfd/ChangeLog* bfd/README bfd/PORTING bfd/TODO + + docinto binutils + dodoc binutils/ChangeLog binutils/NEWS binutils/README + + docinto gas + dodoc gas/ChangeLog* gas/CONTRIBUTORS gas/NEWS gas/README* + + docinto gprof + dodoc gprof/ChangeLog* gprof/TEST gprof/TODO gprof/bbconv.pl + + docinto ld + dodoc ld/ChangeLog* ld/README ld/NEWS ld/TODO + + docinto libiberty + dodoc libiberty/ChangeLog* libiberty/README + + docinto opcodes + dodoc opcodes/ChangeLog* + fi + + # Remove shared info pages + rm -f "${ED}"/${DATAPATH}/info/{dir,configure.info,standards.info} + + docompress "${DATAPATH}"/{info,man} + + # Trim all empty dirs + find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null +} + +pkg_postinst() { + # Make sure this ${CTARGET} has a binutils version selected + [[ -e ${EROOT}/etc/env.d/binutils/config-${CTARGET} ]] && return 0 + binutils-config ${CTARGET}-${PV} || eerror binutils-config returned an error +} + +pkg_postrm() { + local current_profile=$(binutils-config -c ${CTARGET}) + + # If no other versions exist, then uninstall for this + # target ... otherwise, switch to the newest version + # Note: only do this if this version is unmerged. We + # rerun binutils-config if this is a remerge, as + # we want the mtimes on the symlinks updated (if + # it is the same as the current selected profile) + if [[ ! -e ${EPREFIX}${BINPATH}/ld ]] && [[ ${current_profile} == ${CTARGET}-${PV} ]] ; then + local choice=$(binutils-config -l | grep ${CTARGET} | awk '{print $2}') + choice=${choice//$'\n'/ } + choice=${choice/* } + if [[ -z ${choice} ]] ; then + binutils-config -u ${CTARGET} || eerror binutils-config returned an error + else + binutils-config ${choice} || eerror binutils-config returned an error + fi + elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${PV} ]] ; then + binutils-config ${CTARGET}-${PV} || eerror binutils-config returned an error + fi +} + +# Note [slotting support] +# ----------------------- +# Gentoo's layout for binutils files is non-standard as Gentoo +# supports slotted installation for binutils. Many tools +# still expect binutils to reside in known locations. +# binutils-config package restores symlinks into known locations, +# like: +# /usr/bin/${CTARGET}- +# /usr/bin/${CHOST}/${CTARGET}/lib/ldscrips +# /usr/include/ +# +# Note [tooldir hack for ldscripts] +# --------------------------------- +# Build system does not allow ./configure to tweak every location +# we need for slotting binutils hence all the shuffling in +# src_install(). This note is about SCRIPTDIR define handling. +# +# SCRIPTDIR defines 'ldscripts/' directory location. SCRIPTDIR value +# is set at build-time in ld/Makefile.am as: 'scriptdir = $(tooldir)/lib' +# and hardcoded as -DSCRIPTDIR='"$(scriptdir)"' at compile time. +# Thus we can't just move files around after compilation finished. +# +# Our goal is the following: +# - at build-time set scriptdir to point to symlinked location: +# ${TOOLPATH}: /usr/${CHOST} (or /usr/${CHOST}/${CTARGET} for cross-case) +# - at install-time set scriptdir to point to slotted location: +# ${LIBPATH}: /usr/$(get_libdir)/binutils/${CTARGET}/${PV} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.43-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.44.ebuild similarity index 94% rename from sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.43-r1.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.44.ebuild index 65d4e3c31f1..6628fbed5bc 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.43-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.44.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=7 @@ -9,7 +9,7 @@ DESCRIPTION="Tools necessary to build programs" HOMEPAGE="https://sourceware.org/binutils/" LICENSE="GPL-3+" -IUSE="cet debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd" +IUSE="cet debuginfod doc gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla xxhash zstd" # Variables that can be set here (ignored for live ebuilds) # PATCH_VER - the patchset version @@ -19,7 +19,7 @@ IUSE="cet debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins sta # PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/... # for the patchsets -PATCH_VER=2 +PATCH_VER=1 PATCH_DEV=dilfridge if [[ ${PV} == 9999 ]]; then @@ -60,7 +60,10 @@ RDEPEND=" ) zstd? ( app-arch/zstd:= ) " -DEPEND="${RDEPEND}" +DEPEND=" + ${RDEPEND} + xxhash? ( dev-libs/xxhash ) +" BDEPEND=" doc? ( sys-apps/texinfo ) pgo? ( @@ -83,7 +86,10 @@ MY_BUILDDIR=${WORKDIR}/build src_unpack() { if [[ ${PV} == *9999 ]] ; then - EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/toolchain/binutils-patches.git" + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/toolchain/binutils-patches.git + https://github.com/gentoo/binutils-patches + " EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git git-r3_src_unpack mv patches-git/9999 patch || die @@ -91,7 +97,11 @@ src_unpack() { if [[ ${PV} != 9999 ]] ; then EGIT_BRANCH=binutils-$(ver_cut 1)_$(ver_cut 2)-branch fi - EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git" + EGIT_REPO_URI=" + https://sourceware.org/git/binutils-gdb.git + https://git.sr.ht/~sourceware/binutils-gdb + https://gitlab.com/x86-binutils/binutils-gdb.git + " S=${WORKDIR}/binutils EGIT_CHECKOUT_DIR=${S} git-r3_src_unpack @@ -131,8 +141,8 @@ src_prepare() { # This is applied conditionally for now just out of caution. # It should be okay on non-prefix systems though. See bug #892549. if is_cross || use prefix; then - eapply "${FILESDIR}"/binutils-2.43-linker-search-path.patch \ - "${FILESDIR}"/binutils-2.43-linker-prefix.patch + eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch \ + "${FILESDIR}"/binutils-2.41-linker-prefix.patch fi fi fi @@ -185,9 +195,6 @@ src_configure() { use cet && filter-flags -mindirect-branch -mindirect-branch=* use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152 - # https://sourceware.org/PR32372 - append-cflags $(test-flags-CC -std=gnu17) - local x echo for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do @@ -201,10 +208,6 @@ src_configure() { if use plugins ; then myconf+=( --enable-plugins ) fi - # enable gold (installed as ld.gold) and ld's plugin architecture - if use gold ; then - myconf+=( --enable-gold ) - fi if use nls ; then myconf+=( --without-included-gettext ) @@ -269,6 +272,7 @@ src_configure() { --with-bugurl="$(toolchain-binutils_bugurl)" --with-pkgversion="$(toolchain-binutils_pkgversion)" $(use_enable static-libs static) + $(use_with xxhash) $(use_with zstd) # Disable modules that are in a combined binutils/gdb tree, bug #490566 @@ -295,6 +299,10 @@ src_configure() { # - Broken at runtime without Java (https://sourceware.org/bugzilla/show_bug.cgi?id=29479) # - binutils-config (and this ebuild?) needs adaptation first (https://bugs.gentoo.org/865113) $(use_enable gprofng) + + # Enables colored disassembly by default (equivalent to passing + # --disassembler-color=terminal to all objdump invocations). + --enable-colored-disassembly ) case ${CTARGET} in @@ -316,7 +324,7 @@ src_configure() { if use hardened ; then myconf+=( - # TOOD: breaks glibc test suite + # TODO: breaks glibc test suite #--enable-error-execstack=yes #--enable-error-rwx-segments=yes --enable-default-execstack=no diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-9999.ebuild index cf451757ad6..1593824987f 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-9999.ebuild @@ -9,7 +9,7 @@ DESCRIPTION="Tools necessary to build programs" HOMEPAGE="https://sourceware.org/binutils/" LICENSE="GPL-3+" -IUSE="cet debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd" +IUSE="cet debuginfod doc gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla xxhash zstd" # Variables that can be set here (ignored for live ebuilds) # PATCH_VER - the patchset version @@ -60,7 +60,10 @@ RDEPEND=" ) zstd? ( app-arch/zstd:= ) " -DEPEND="${RDEPEND}" +DEPEND=" + ${RDEPEND} + xxhash? ( dev-libs/xxhash ) +" BDEPEND=" doc? ( sys-apps/texinfo ) pgo? ( @@ -205,10 +208,6 @@ src_configure() { if use plugins ; then myconf+=( --enable-plugins ) fi - # enable gold (installed as ld.gold) and ld's plugin architecture - if use gold ; then - myconf+=( --enable-gold ) - fi if use nls ; then myconf+=( --without-included-gettext ) @@ -273,6 +272,7 @@ src_configure() { --with-bugurl="$(toolchain-binutils_bugurl)" --with-pkgversion="$(toolchain-binutils_pkgversion)" $(use_enable static-libs static) + $(use_with xxhash) $(use_with zstd) # Disable modules that are in a combined binutils/gdb tree, bug #490566 @@ -324,7 +324,7 @@ src_configure() { if use hardened ; then myconf+=( - # TOOD: breaks glibc test suite + # TODO: breaks glibc test suite #--enable-error-execstack=yes #--enable-error-rwx-segments=yes --enable-default-execstack=no diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/metadata.xml b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/metadata.xml index 3cc10686343..88560e418c0 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/metadata.xml @@ -14,6 +14,7 @@ Enable plugin support in tools Adds support to binutils for cross compiling (does not work with gas) Enable debuginfod support via dev-libs/elfutils libdebuginfod + Use dev-libs/xxhash for --build-id=xx support cpe:/a:gnu:binutils diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/bison/bison-3.8.2-r3.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/bison/bison-3.8.2-r3.ebuild index 966b52d053a..b8c28351a7c 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/bison/bison-3.8.2-r3.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/bison/bison-3.8.2-r3.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 @@ -13,7 +13,7 @@ SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )" 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="examples nls static test" RESTRICT="!test? ( test )" 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 a9feafe03bf..79236dcac2a 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 @@ -7,6 +7,8 @@ DIST gcc-11.5.0.tar.xz 82399864 BLAKE2B f4a61faad32aac9e9cb553c1a1a011df0a057f6e DIST gcc-12-20241219.tar.xz 79920016 BLAKE2B 71044352515f33eaf0bcc64cc6eacdecb8b7b1dbca6d8836b629f76e60320f5090178ff37b6804fbda0913c0f55afca37588647974fd72e9961edd338ccf6ffb SHA512 e0c08366f392083feb1ae242242e9bd335681234808ed44d4e75afe157be2814bef321d2327186d217f38bbb6176706e1258228904d31fdb3bb37c8e245dacb0 DIST gcc-12-20250116.tar.xz 79921816 BLAKE2B b4c2ee7fb76b15834b5637d157c39cbdedca4b458d767eaa5b7275ef835db5f2f44437a7242dcccb1c57a706cdb7788cecc42bfb99795b8ed0ccf589c24296f5 SHA512 271f31a7d213da38f197fe8124030780b334dd84b62d09e58757c722232c3465d2344e0664be6c62f0b5187f604e5af01fffa262a6b4f5b27a0199693e563ac4 DIST gcc-12-20250123.tar.xz 79912136 BLAKE2B f143da3aaa36020b99c0da4b4951743f90fcbcdf93af325bd76878944187005e80b11657b85ab0cf014434acf5431a45cb29effb9a8e3922092ec5dee6606b51 SHA512 1b9dba666d9538171f935334c5a7106499758f26422a497c748c4ea90983e77bfaaecdb8a96099e1a43c0722e15d34a3c0f549e531cb56ea3a990e71f0b2135b +DIST gcc-12-20250130.tar.xz 79936036 BLAKE2B ceca895f319d4d97e1d936c8caad24b847d95aba24270c5489dda55ed0a2f69f6da58b34705af7ccedd002567e6dba52f91e82a4b79d646e7a885057267838fe SHA512 043ca62adc0d7dc9a3021dc288c2483c0baf4e18b7f155944e79d6b95b4c8efe3ac694ddc8d7ab12d715a9313dd0a5f9fe7271002a497ad0ecdf9e9451f95073 +DIST gcc-12-20250206.tar.xz 79919852 BLAKE2B b20f3c61d9f25a78bb3b60243d523552d36728353e75c77cf71831685f83fdc539c5ea52244a41deabe64e4158a62d852478e261be82cc97b4c28e6393d842ac SHA512 34692ec6575ab526123f697888bfa8b48103a3416a82562e292adc845db31adf3eb76179625627b908ed129c893f200657537e3a33ad7f2619b635f285171d64 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 @@ -14,6 +16,8 @@ DIST gcc-12.4.0.tar.xz 83377372 BLAKE2B 0d5aa9995bf53fa2dc976a846240cfb8fafd125a DIST gcc-13-20241220.tar.xz 84504500 BLAKE2B 60d6dcdcafa36399a0c0de7fef3a4eb4ca8e0b6780cd31c9eace2965c53115205bf64e8247b833a4375c1e3ad2d94820b5bdc97a4689be95d8ab55a676afa689 SHA512 10fe009dc3b8872b24350e4fb999f71b848bd5a03e48e8292f76e6eca3dbdef8383a3b13b813aada983ebdbe3ecab1642961b3210cd1e0063a86655a44493017 DIST gcc-13-20250117.tar.xz 84520416 BLAKE2B 3ce98ce1a17ec5a733e3cb8eab0a6084d5e32b225213f0af6f3ff699552d162514a0d6eb6e2805b07d5f97229a92a15f67958dc2ccc82e9d937b8af688a9528b SHA512 121f176f2d9779e33245ddc4048f1ca683311cf20c240e8e76ad6fea892a2e968876b838cc1d90cba06184a9cf4b4408b78dcbabc27368e0cadf1d8de749eed2 DIST gcc-13-20250124.tar.xz 84528596 BLAKE2B db8c45b1babd48158644899fe1a3e263eee6e716bc117be95f53aa30e00bf4a87b6de7c852e558887001cea53fbaaea4fe176f8a2361cf122cd05c36c7a0ae8f SHA512 d5d32c66d22a1fb2fca1db1c473125003ef204c68711459eb358374259efb924ea160c363b7b1c81659cc6bf154de499949c02e9adde1ddb4dcb2f2ebbb27e42 +DIST gcc-13-20250131.tar.xz 84530144 BLAKE2B 45a667a31abd556383009d64ab9860ce2815c2446db02b985ec295344aed40060f8e90a01cea907082fdfc25a4572e0baf3fea9739b8777c0b9f76a9eacc4a22 SHA512 909fd58368f379863580e3641b0404e187293db5b3a88c703231726d8aced1241578d5865dcc1c62fcbe3ce030f24e433ff75bfff8266801d829998cab6abb01 +DIST gcc-13-20250207.tar.xz 84528380 BLAKE2B da70e92437a364ae75c83199c3d1d075d73d5e3a9d78159633736f15a483771f352d3628c0f99de727790197f60fe9ad40a25d106b6a646a703e72599c419244 SHA512 c99701b181903169ed664e3b53b1f8c84f894b047ff9da0535fd02ab1160a290bbd7e34709d87f611617f24a7f44b1a348ca37d6d60ce356fe8bcb3cf78506fb 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 @@ -21,15 +25,22 @@ DIST gcc-13.3.0-patches-2.tar.xz 44440 BLAKE2B ebde73f6c3cd1a5fdc5bbce36414a59dd DIST gcc-14-20241221.tar.xz 88198252 BLAKE2B 7491c2e1c8885e201859143bdf5cae95af4c0db77709ec7d761ad535df30042f5deb8488ba7c508de3673e4b0f2af1de8d17476f39cd47b745ddccec6a9e4470 SHA512 91fe1e1d1f8e8fad64930a2eadf942a542bd42f841fceb49f475bccac00f04692b8cd38821ea9ee05f78b5c51001d8bd39df5f71f3a3d89aab8980019cea9be8 DIST gcc-14-20250118.tar.xz 88214804 BLAKE2B dd35140f0565d419eee272f70e668a8614cfc8f6b7d352a1df8ba2408c6533711e024ca1a7b5e309421138e21d63c5b7f8b581d50b0680abf3dfd6002004bd14 SHA512 692fc50fec856c6cc5a0576d1caa59fd8b5ec298e36daaf5855ea0f922ed134fff346f73e38e47673b692cf03606a66f82e6bdb46e5d7729c370299645a2a093 DIST gcc-14-20250125.tar.xz 88214960 BLAKE2B c8f89803928db5c0374751b10a7d0bcaacfaa425f2b869fac96d35173afa9adf24d6969cdbfe20eea7425b97c23c14dbfda94bd72f447e530632e33719cd9916 SHA512 8d61d0002de3738ef51bbf0338d849121eb009a2908314511da0f79914f73bb5d1f8b1cc06b932188a3814f3bd6a61d0911da942ccc2352d8e2844f9f10ad039 +DIST gcc-14-20250201.tar.xz 88210968 BLAKE2B 609c60e6343d2b947ca179b438d296409fcde779fe8eb96bbc56b105ba4bb3489ec1f0d609482bcfff7b25f5390eef9fced93e451acea17c52a182fe3584d6df SHA512 56362fe7169b6ca25c1fa729919a75c81080db54f43e25444957c72a82584ab7b209f72bdd01240a6bfa91b206e7f430e80bb13313a0b6453c88ca9244f32eb7 +DIST gcc-14-20250208.tar.xz 88198624 BLAKE2B 28f3dba8fa1a9b31792140f0b8fcb6aaf6c4a4252f2131d8110024c8fdd5db8d3ebe060a9e9ed7b13c99791c3a3a68be76b9ff4aa9226dc035d965e5f25032ba SHA512 a12105a75c3affc1dd4eb28c3ec75a5d142b37a0b13f91c43a7dd760deedd5a09df3d2cf1f68540eb62c0e6ce47831814aa0a77cc594f79b88c3ab060776d4e1 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 DIST gcc-15-20250112.tar.xz 90584884 BLAKE2B 35200ad43eaca0b97d330d22abb517ee5f8d196b83d40650e5a2e39b5a847b2c686108d15edf998df511992930bf3464b7e63d4562c17a6330a22a693b795122 SHA512 cd2b282eb7cd352fb326df692b653572319edc179ae6dec0c96ead858da4a85134098e128afa9dd76ff691262fd3cfce176c38420a78f56121b039a2a297f63e DIST gcc-15-20250119.tar.xz 90709176 BLAKE2B da815cd472c0bb4101fb65fac73e93d8da8981c268880222501deb48f03865824773f93ae182ec60465e2b122a1503936dc10337b9b87dfdd15cde5e18641026 SHA512 9f3bb4ff5b04fe84ec3ce5342a29ca1d98f1988c0b3703c63b3f5bd5d58d035ed7c676cdf6bf730f5399a7b461e2929f28494f9ca4a87a6783c6e30114d2c838 DIST gcc-15-20250126.tar.xz 90895328 BLAKE2B 472b5c0ad2da8525a40530089f02bcdf6b8b3d3e31c1f5f86339d624c3a461ab24d35d815554513ba6dbe807f8f3a7f9e123f63ec0fe33796bee9e6da411deab SHA512 e55a19e07bd10b6c5f4a639d0fe548495297a4a1efe4c2cd4e891f27a2962bd929baeaf312b4f3a9e0a51b105e470de37a717fd8161ff75759aaa6b48c937d8a +DIST gcc-15-20250202.tar.xz 91011652 BLAKE2B 414fac76d3bb3887658387f80c64b587e75f71a8e1f2dc2c455c06a9d333125fdb113b30115ad1c3586fe92c786768c5f01eb1cb7e2cb6811adfb5fb1c46b391 SHA512 403c45199be4fb3f4b29495d26720f75bce20cea42fe0f47959db81f24769e20291a70ca2d63eccbeda9efd5abfb344ef7337c62118093092cd3438a1ef8fff4 +DIST gcc-15-20250209.tar.xz 91287472 BLAKE2B e589600b828d560f9de5af01d340f5ac710c23c45fb5e66fe2876e3e73052f435e25c7c630c09b6fbf05381299effae6415a3592a4222687c15e96f54896752e SHA512 fcadf48cdd2cc55a7f0266eaa7643ffeb3c4606c3a6f6780a501b30ab8babe4b15d1cfe55038a65ae789e600119d86819af2ffe2b0800512bd9b3803e2407ec7 DIST gcc-15.0.0-musl-patches-2.tar.xz 3076 BLAKE2B 0073248fe4f7dd827980559017b5aa1fb5c4c46acc9ad5c410dc152fd1e44966d3066bf7152338573cb45b1c36027de5f0c519abd414d97a37bccef07f6a5281 SHA512 295f1a669020bbe2874e9b03afd46b5d083073b276fca3543f3767a2d74f35df81cf0a67abad50c200cf7a3af36ec98ff9977cb7d5c19f334af7d3bb1926a3de DIST gcc-15.0.0-patches-41.tar.xz 33308 BLAKE2B d95b2798837a40380d06818fb047b7a5ea2e5a20de12a760b168c4dbb39c7af6b45621034d17250754f6dbc83dacdd7a75ff41c505b158bcf2090eca678d5f05 SHA512 203bedbab8e5d139ac3421e6347a2aecba48f5757ea524241feff7154eb918dad0c7f9f7505bf9041ab67b7c57170f5ea26f8160af3b268aec2b9a1113325733 DIST gcc-15.0.0-patches-42.tar.xz 26904 BLAKE2B 21fad98bfa977cb359dfeecec5b35d4470429acf103f99e3519a34f87926225e83257f23eb2983adf68d2a8a3089f7769dedfde7302ef9f55c30b59bba47d1bb SHA512 3ede6bf4c908a179b4b9bf8d281385a6ecf64be481479c88ad0b250b6c93050ff76dd2cf6fc9b12bf8b503a123cad2b8c418abc4ab233524d7bd78e1d9f31009 DIST gcc-15.0.0-patches-43.tar.xz 25892 BLAKE2B 1d0dbbe277179aefaab20e03bf152ded962c69fe4b3afcdcf7211a71327149977109fe0e8b2bc198ee16a59ab2569d2b698f216712eaa65c2cdb6de209aa1ffb SHA512 ddf3e6d2876c4d567830de91b39acedda280d739f7948ec02d04b409be10d8e1bb41a510d1b5f78b26e79de18aa2b281f9ce2182088b6b514f2f46389af8c22e +DIST gcc-15.0.0-patches-44.tar.xz 25092 BLAKE2B 4010f1f7ab17e47879db78f11f99ff4c8fe1258dc326aae9af6e25be098d8cc5806223d014a668cf6d2f8e1a36a40ca0a6a5aa87e70f15164460c728d329793e SHA512 329ffc475fde3d5c19382c83fae2ce60fd3c0f1e336f7e87ca2df4689c73747807f1b9665ee00995356b5fbcee3bb1e3092c100d1b08f98f1d0b17d1ec8c8581 +DIST gcc-15.0.0-patches-45.tar.xz 25044 BLAKE2B f270b48434ec3ca3b1c52e62efa09a38625d40290fabf059914116423d14173c63cd45fcd496768cdc19eafdb10fabfe651d03ec56bb6b44a0e70eb00814b1dd SHA512 bb301b36c3c033f8d0abde9729f3c22d4867d4f6f9cfcf4456ee0a58331af25205db5d87fe1727fdbc3da04fa84c7434da83cc48c6674671a2db1a7e9b093a0b 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_p20250130.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.4.1_p20250130.ebuild new file mode 100644 index 00000000000..83011b194d3 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.4.1_p20250130.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="12.4.0" +PATCH_VER="2" +MUSL_VER="1" +MUSL_GCC_VER="12.4.0" +PYTHON_COMPAT=( python3_{10..12} ) + +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_p20250206.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.4.1_p20250206.ebuild new file mode 100644 index 00000000000..83011b194d3 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.4.1_p20250206.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="12.4.0" +PATCH_VER="2" +MUSL_VER="1" +MUSL_GCC_VER="12.4.0" +PYTHON_COMPAT=( python3_{10..12} ) + +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.3.1_p20250131.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.3.1_p20250131.ebuild new file mode 100644 index 00000000000..ac245b9b417 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.3.1_p20250131.ebuild @@ -0,0 +1,66 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="13.3.0" +MUSL_GCC_VER="13.2.0" +PATCH_VER="2" +MUSL_VER="2" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch + eapply_user +} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.3.1_p20250207.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.3.1_p20250207.ebuild new file mode 100644 index 00000000000..ac245b9b417 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.3.1_p20250207.ebuild @@ -0,0 +1,66 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="13.3.0" +MUSL_GCC_VER="13.2.0" +PATCH_VER="2" +MUSL_VER="2" +PYTHON_COMPAT=( python3_{10..12} ) + +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.2.1_p20250201.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.2.1_p20250201.ebuild new file mode 100644 index 00000000000..95c826f0298 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.2.1_p20250201.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="14.2.0" +PATCH_VER="7" +MUSL_VER="1" +MUSL_GCC_VER="14.1.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # m68k doesnt build (ICE, bug 932733) + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch + eapply_user +} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.2.1_p20250208.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.2.1_p20250208.ebuild new file mode 100644 index 00000000000..8797a7ea318 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.2.1_p20250208.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +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..12} ) + +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.0.1_pre20250202.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.0.1_pre20250202.ebuild new file mode 100644 index 00000000000..3af8354bedc --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.0.1_pre20250202.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="15.0.0" +PATCH_VER="44" +MUSL_VER="2" +MUSL_GCC_VER="15.0.0" +PYTHON_COMPAT=( python3_{10..12} ) + +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_user +} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.0.1_pre20250209.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.0.1_pre20250209.ebuild new file mode 100644 index 00000000000..55be6a99ea8 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.0.1_pre20250209.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="15.0.0" +PATCH_VER="45" +MUSL_VER="2" +MUSL_GCC_VER="15.0.0" +PYTHON_COMPAT=( python3_{10..12} ) + +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_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 0104221a7a8..f4a76d0f327 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,5 @@ DIST gettext-0.22.4.tar.xz 10255384 BLAKE2B 3f93aa5aef8e40d2e01acaa5aeed11efefd0 DIST gettext-0.22.4.tar.xz.sig 833 BLAKE2B fbb00b53c807934a11263c120861971fffebbd39689eda1fae0fb956476e69c3fb6799440cbf3acfcf43ecea2c134ea4dadb95becbac98badb43e546f3c8e9fb SHA512 a774c98de643b1ea3df645e451878652c2baa5cd786642aa457e6d5f5c44787cb1231eb15ad4390acdf314822633acaffffaa853eb69cbbc72c3b79b547a8854 DIST gettext-0.22.5.tar.xz 10270724 BLAKE2B 18c383518f5a78b5c04cf76de976524da2a87a892a30d6386778bb4c7dd526ffc3f14f484906c5d3a513b7caf76ea560e53962b325e552182d6940055d798f24 SHA512 a60999bb9d09441f138214d87acb7e59aab81e765bb9253a77c54902681c5de164a5a04de2a9778dfb479dbdefaab2d5de1fbaf6095c555c43e7e9fd7a1c09bd DIST gettext-0.22.5.tar.xz.sig 833 BLAKE2B bb3e5ced34ab109f498347a3567103fe3491f69addb4a5ce25bf854fae1a11340eef1a9826b369d2416b53e5f7065aeebdb1609615f064cf7fb4151e82a5b4e5 SHA512 87f1df69206702be928b09a59a19ae4c23072cbc78ea16e76bfc4c929de76a3c0bb8e4eb2c3100c6e7b3b51d23e3b0e484c7e1d576ba7e25fd887934dc9ed8f7 -DIST gettext-0.23.tar.xz 11053572 BLAKE2B 208e5a73ed021c22357b1a1f0324dd7c9fa14b458b610c6f2fbd85f6541dd2bc23179c63dcd43000689482d8a6337f5255f501581d67ee2338ef3d50ec5e9c2e SHA512 1de09c0a83b1b4bb810abacbaf7c3e0fedbfbddea1cf7c89df3838c5f0a14cf58d686eb5876cfae302acb31c93beefb61a12c8a889a998fd235798699dc2c155 -DIST gettext-0.23.tar.xz.sig 833 BLAKE2B 5da93144e3d2eb745729b3f2d68e85ad508214b62694a22da7d37c6a3c9eaacd0d44339564b6373690dce29d9140a8af31ccea9e61726d2651ecc8234405b681 SHA512 25a6a2d1d9eb406b2be036b01f709a0badb84b70e23908c51fcbc1e26836510748f9623a075622271962d37bb859d4553755c6ed9832c1f39742ae1179b9292a +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 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.22.5-r1.ebuild index cbcedaee51d..1528c6eabef 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.22.5-r1.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 # Note: Keep version bumps in sync with dev-libs/libintl. @@ -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.23.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.23.1.ebuild similarity index 97% rename from sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.23.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.23.1.ebuild index 05471c9bd42..9a7956b9ee6 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.23.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.23.1.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 # Note: Keep version bumps in sync with dev-libs/libintl. @@ -54,6 +54,7 @@ RDEPEND=" ${DEPEND} git? ( dev-vcs/git ) java? ( >=virtual/jre-1.8:* ) + nls? ( app-i18n/gnulib-l10n ) " BDEPEND=" git? ( dev-vcs/git ) @@ -74,8 +75,6 @@ MULTILIB_WRAPPED_HEADERS=( PATCHES=( "${FILESDIR}"/${PN}-0.21-CVE-2020-12825.patch - "${FILESDIR}"/${PN}-0.23-libxml2-2.12.0.patch - "${FILESDIR}"/${PN}-0.23-no-nls.patch ) QA_SONAME_NO_SYMLINK=".*/preloadable_libintl.so" diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/patch/Manifest b/sdk_container/src/third_party/portage-stable/sys-devel/patch/Manifest index 8da8b1d590a..ebef4b3a0b5 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/patch/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-devel/patch/Manifest @@ -1,4 +1,4 @@ DIST patch-2.7.6.tar.xz 783756 BLAKE2B e3dd2d155a94c39cb60eafc26677e84de14c3a6d5814dff69de091ded52f21862490970254297795f2c42a0c3203f7e88a8f65bb66968f8dfd6e066bf53f2dfb SHA512 fcca87bdb67a88685a8a25597f9e015f5e60197b9a269fa350ae35a7991ed8da553939b4bbc7f7d3cfd863c67142af403b04165633acbce4339056a905e87fbd DIST patch-2.7.6.tar.xz.sig 801 BLAKE2B 8f2decb10402ecf0208d05ea7cce3bae565d31ee2bb2a118367c117d25b158d8bd525cae654ec0c0e2c036cc8f47a331edc1bb10b100683ade64dfa3b651988b SHA512 1302a1110dcda4f3d83b5263415d72be55c46dae0efb1c123e9c346154e09def5657004bbe7249e2d014555349410e7a5217140dd8852331235f75bcc757351b -DIST patch-2.7.6_p20241103.tar.xz 903028 BLAKE2B 874f390bd9a3ed2c5da59c41c708bf41d9bf3bcfe799a0647c7382013793a29ec331df82510424ff2fd9b280e0594822d08eae1074af774d57f625214edc3578 SHA512 29db065dd17e25aa562acb1d7ba6be780eed59c2cc9b74e76b5d5b2dac1768e25e8a28acde0907825f6d863a7e14ede33537c89361624e3dcfbb6c0fa6fb0cf2 -DIST patch-2.7.6_p20241103.tar.xz.sig 833 BLAKE2B 3a065dd0c8f83a0287f091536fa89a9914272ae49bdd2b67f91173365789275427e52f20bfcff50c65194a97e96cd07201781d1d13eb84f0adc2d52d741d8598 SHA512 4ee1151deced3dab999794913a2bfc54096cf42a9c0757b192b7fad71ecd6ec28f4f1451818262f154240e909654253d20b41a555230d260c9c4d29f36dd54ba +DIST patch-2.7.6_p20250206.tar.xz 906596 BLAKE2B f110bcf19b655c900327088ba023743fd845161dd00cab228675d3c0992fa397916adf153c35775fc5ff8e733b559ce8a05eac71eec7156403f4c9ab17ff2a3e SHA512 2dd05af5f9f0864b0cccc5c5194d0ba4ca427fc366b91210e2f539a50bd2006d7142606f8f223b45c5d426eafef7e6b17c6b67c2ef9b7ec75589bb3d9fce68d3 +DIST patch-2.7.6_p20250206.tar.xz.sig 833 BLAKE2B 8363136c58bbde5c349a4c96cd277588f3b679a98ea1c21da39bcf375c2b85c0d36165f1dceab453a09bcc2745d5ab6959d5ba28020e138591e7530dbf72f180 SHA512 a114f836502bb02910c8f88d7e667ce92ef6b0b9a26eb466ee9bd1ad8956036867801b19ea3ee27418fe0fb6e673e3d5d2aad2b9c05f7e99fd8bb1a9d604ea6f diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/patch/files/patch-2.7.6-configure-mkdir-spruced-up.patch b/sdk_container/src/third_party/portage-stable/sys-devel/patch/files/patch-2.7.6-configure-mkdir-spruced-up.patch new file mode 100644 index 00000000000..8ef7a954a4d --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/patch/files/patch-2.7.6-configure-mkdir-spruced-up.patch @@ -0,0 +1,38 @@ +https://bugs.gentoo.org/898598 +https://github.com/coreutils/gnulib/commit/3c136a2cc38d71083f123231a8b9ad4b01930789 +--- a/configure ++++ b/configure +@@ -17084,6 +17084,8 @@ else + #include + #include + #include ++/* Android 4.3 declares fchownat() in instead. */ ++#include + #include + int + main () +@@ -17130,6 +17132,8 @@ else + /* end confdefs.h. */ + #include + #include ++ /* Android 4.3 declares fchownat() in instead. */ ++ #include + + int + main () +--- a/lib/unistd.in.h ++++ b/lib/unistd.in.h +@@ -113,6 +113,13 @@ + # include + #endif + ++/* Android 4.3 declares fchownat in , not in . */ ++/* But avoid namespace pollution on glibc systems. */ ++#if (@GNULIB_FCHOWNAT@ || defined GNULIB_POSIXCHECK) && defined __ANDROID__ \ ++ && !defined __GLIBC__ ++# include ++#endif ++ + /* MSVC defines off_t in . + May also define off_t to a 64-bit type on native Windows. */ + #if !@HAVE_UNISTD_H@ || @WINDOWS_64_BIT_OFF_T@ diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/patch/files/patch-2.7.6-ndebug-assert-hash-table.patch b/sdk_container/src/third_party/portage-stable/sys-devel/patch/files/patch-2.7.6-ndebug-assert-hash-table.patch new file mode 100644 index 00000000000..d3aa7aa4c34 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/patch/files/patch-2.7.6-ndebug-assert-hash-table.patch @@ -0,0 +1,37 @@ +From 01ae7ce6a7f270937face6aec75db28d30d83059 Mon Sep 17 00:00:00 2001 +Message-ID: <01ae7ce6a7f270937face6aec75db28d30d83059.1738773172.git.sam@gentoo.org> +From: Sam James +Date: Wed, 5 Feb 2025 16:16:06 +0000 +Subject: [PATCH] Fix dodgy assert with side-effects in insert_cached_dirfd +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Michał Górny reported that patch was running out of +FDs and that the `deep-directories` test was failing. This turns out +to be because `hash_insert` isn't called at all with `-DNDEBUG` because +`insert_cached_dirfd` only calls it in one case inside of an `assert`. + +See https://github.com/conda-forge/patch-feedstock/issues/11. + +This regressed in 025a54b789bd88ed15430f8633514e296826983e. + +* src/safe.c (insert_cached_dirfd): Don't use 'assert' for 'hash_insert' + call with side-effects. +--- a/src/safe.c ++++ b/src/safe.c +@@ -183,7 +183,8 @@ static void insert_cached_dirfd (struct cached_dirfd *entry, int keepfd) + + /* Only insert if the parent still exists. */ + if (! list_empty (&entry->children_link)) +- assert (hash_insert (cached_dirfds, entry) == entry); ++ if (hash_insert (cached_dirfds, entry) != entry) ++ xalloc_die (); + } + + static void invalidate_cached_dirfd (int dirfd, const char *name) + +base-commit: 1da6bf84db2ed0be88ccb47139256e48243a75f0 +-- +2.48.1 + diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/patch/patch-2.7.6-r7.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/patch/patch-2.7.6-r7.ebuild new file mode 100644 index 00000000000..61ce4a002a1 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/patch/patch-2.7.6-r7.ebuild @@ -0,0 +1,86 @@ +# 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/patch.asc +inherit flag-o-matic verify-sig + +DESCRIPTION="Utility to apply diffs to files" +HOMEPAGE="https://www.gnu.org/software/patch/patch.html" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/patch.git" + inherit git-r3 +else + SRC_URI="mirror://gnu/patch/${P}.tar.xz" + SRC_URI+=" verify-sig? ( mirror://gnu/patch/${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 + +LICENSE="GPL-3+" +SLOT="0" +IUSE="static test xattr" +RESTRICT="!test? ( test )" + +RDEPEND="xattr? ( sys-apps/attr )" +DEPEND="${RDEPEND}" +BDEPEND=" + test? ( sys-apps/ed ) + verify-sig? ( sec-keys/openpgp-keys-patch ) +" + +PATCHES=( + "${FILESDIR}"/${P}-fix-test-suite.patch + "${FILESDIR}"/${PN}-2.7.6-fix-error-handling-with-git-style-patches.patch + "${FILESDIR}"/${PN}-2.7.6-CVE-2018-6951.patch + "${FILESDIR}"/${PN}-2.7.6-allow-input-files-to-be-missing-for-ed-style-patches.patch + "${FILESDIR}"/${PN}-2.7.6-CVE-2018-1000156.patch + "${FILESDIR}"/${PN}-2.7.6-CVE-2018-6952.patch + "${FILESDIR}"/${PN}-2.7.6-Do-not-crash-when-RLIMIT_NOFILE-is-set-to-RLIM_INFINITY.patch + "${FILESDIR}"/${PN}-2.7.6-CVE-2018-1000156-fix1.patch + "${FILESDIR}"/${PN}-2.7.6-CVE-2018-1000156-fix2.patch + "${FILESDIR}"/${PN}-2.7.6-CVE-2019-13636.patch + "${FILESDIR}"/${PN}-2.7.6-CVE-2019-13638.patch + "${FILESDIR}"/${PN}-2.7.6-Avoid-invalid-memory-access-in-context-format-diffs.patch + "${FILESDIR}"/${PN}-2.7.6-configure-mkdir-spruced-up.patch + "${FILESDIR}"/${PN}-2.7.6-ndebug-assert-hash-table.patch +) + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + + cd "${S}" || die + ./bootstrap || die + elif use verify-sig ; then + verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.sig} + fi + + default +} + +src_configure() { + use static && append-ldflags -static + + local myeconfargs=( + $(use_enable xattr) + # rename to gpatch for better BSD compatibility + --program-prefix=g + ) + # Do not let $ED mess up the search for `ed` 470210. + ac_cv_path_ED=$(type -P ed) \ + econf "${myeconfargs[@]}" +} + +src_test() { + emake check gl_public_submodule_commit= +} + +src_install() { + default + + # symlink to the standard name + dosym gpatch /usr/bin/patch + dosym gpatch.1 /usr/share/man/man1/patch.1 +} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/patch/patch-2.7.6_p20241103.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/patch/patch-2.7.6_p20250206.ebuild similarity index 83% rename from sdk_container/src/third_party/portage-stable/sys-devel/patch/patch-2.7.6_p20241103.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/patch/patch-2.7.6_p20250206.ebuild index 05897044bef..c410f22ffd4 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/patch/patch-2.7.6_p20241103.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/patch/patch-2.7.6_p20250206.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 @@ -14,9 +14,9 @@ if [[ ${PV} == 9999 ]] ; then elif [[ ${PV} = *_p* ]] ; then # Note: could put this in devspace, but if it's gone, we don't want # it in tree anyway. It's just for testing. - MY_SNAPSHOT="$(ver_cut 1-3).200-be8b" - SRC_URI="https://meyering.net/patch/patch-${MY_SNAPSHOT}.tar.xz -> ${P}.tar.xz" - SRC_URI+=" verify-sig? ( https://meyering.net/patch/patch-${MY_SNAPSHOT}.tar.xz.sig -> ${P}.tar.xz.sig )" + MY_SNAPSHOT="$(ver_cut 1-3).211-86ac" + SRC_URI="https://alpha.gnu.org/gnu/patch/patch-${MY_SNAPSHOT}.tar.xz -> ${P}.tar.xz" + SRC_URI+=" verify-sig? ( https://alpha.gnu.org/gnu/patch/patch-${MY_SNAPSHOT}.tar.xz.sig -> ${P}.tar.xz.sig )" S="${WORKDIR}"/${PN}-${MY_SNAPSHOT} else SRC_URI="mirror://gnu/patch/${P}.tar.xz" @@ -34,7 +34,7 @@ RDEPEND="xattr? ( sys-apps/attr )" DEPEND="${RDEPEND}" BDEPEND=" test? ( sys-apps/ed ) - verify-sig? ( sec-keys/openpgp-keys-patch ) + verify-sig? ( >=sec-keys/openpgp-keys-patch-20250206 ) " src_unpack() { diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/patch/patch-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/patch/patch-9999.ebuild index df6c6cec8db..c410f22ffd4 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/patch/patch-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/patch/patch-9999.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 @@ -11,6 +11,13 @@ HOMEPAGE="https://www.gnu.org/software/patch/patch.html" if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://git.savannah.gnu.org/git/patch.git" inherit git-r3 +elif [[ ${PV} = *_p* ]] ; then + # Note: could put this in devspace, but if it's gone, we don't want + # it in tree anyway. It's just for testing. + MY_SNAPSHOT="$(ver_cut 1-3).211-86ac" + SRC_URI="https://alpha.gnu.org/gnu/patch/patch-${MY_SNAPSHOT}.tar.xz -> ${P}.tar.xz" + SRC_URI+=" verify-sig? ( https://alpha.gnu.org/gnu/patch/patch-${MY_SNAPSHOT}.tar.xz.sig -> ${P}.tar.xz.sig )" + S="${WORKDIR}"/${PN}-${MY_SNAPSHOT} else SRC_URI="mirror://gnu/patch/${P}.tar.xz" SRC_URI+=" verify-sig? ( mirror://gnu/patch/${P}.tar.xz.sig )" @@ -27,7 +34,7 @@ RDEPEND="xattr? ( sys-apps/attr )" DEPEND="${RDEPEND}" BDEPEND=" test? ( sys-apps/ed ) - verify-sig? ( sec-keys/openpgp-keys-patch ) + verify-sig? ( >=sec-keys/openpgp-keys-patch-20250206 ) " src_unpack() { diff --git a/sdk_container/src/third_party/portage-stable/sys-firmware/edk2-bin/edk2-bin-202408.ebuild b/sdk_container/src/third_party/portage-stable/sys-firmware/edk2-bin/edk2-bin-202408.ebuild index f6b8f58721e..e2582a3f091 100644 --- a/sdk_container/src/third_party/portage-stable/sys-firmware/edk2-bin/edk2-bin-202408.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-firmware/edk2-bin/edk2-bin-202408.ebuild @@ -14,7 +14,7 @@ SRC_URI=$(printf "https://dev.gentoo.org/~chewi/distfiles/${BINPKG}-%s.xpak\n" $ S="${WORKDIR}" LICENSE="BSD-2 MIT" SLOT="0" -KEYWORDS="~amd64 arm64 ~loong ~ppc ppc64 ~riscv x86" +KEYWORDS="amd64 arm64 ~loong ~ppc ppc64 ~riscv x86" RDEPEND="!sys-firmware/edk2" diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-2.3.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-2.3.0.ebuild index 48dcd8358c6..1f1fcfb8f87 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-2.3.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-2.3.0.ebuild @@ -5,7 +5,7 @@ EAPI=8 DISTUTILS_OPTIONAL=1 DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_COMPAT=( python3_{10..13} ) inherit autotools bash-completion-r1 dist-kernel-utils distutils-r1 flag-o-matic linux-info pam systemd udev usr-ldscript diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-9999.ebuild index 53bc008f513..1f1fcfb8f87 100644 --- a/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-fs/zfs/zfs-9999.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_OPTIONAL=1 DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_COMPAT=( python3_{10..13} ) inherit autotools bash-completion-r1 dist-kernel-utils distutils-r1 flag-o-matic linux-info pam systemd udev usr-ldscript diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/Manifest b/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/Manifest index 210e0cbbde3..993c30347f0 100644 --- a/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/Manifest @@ -10,6 +10,7 @@ DIST gentoo-headers-6.1-0.tar.xz 1172 BLAKE2B 6929760733cd4a89228554b57b1027ccf8 DIST gentoo-headers-6.10-1.tar.xz 1164 BLAKE2B 83c11fb4d7a2ecc3ca34dd271918da3ec6d31cdd78926f1530ef44bd401a810b5013fcf0018c03bca6856427406cfcef10df77d86f77324eb5f837c19dc392b5 SHA512 b17238528653e3be95b6871a49a5d52275fd8a1126df6255090adff18d5e1b1aa84dabb942f6933245e0cc6386ea7145aee0c986507c3a9986e186d9643175a5 DIST gentoo-headers-6.11-1.tar.xz 1164 BLAKE2B 381aef3f8f8dd3f5f2c6ffb162bc2e509df6a0b61e935c92319a7f0594551fb4c05d0b7c3dc88362f49c272b47626d5df2cffbb4c541672102f9f4e76d1abb09 SHA512 60fd8ae83bbb43f5215ffcea37ed3b9e71820d4e9cbc4a3f2e4016970791ae68adea677ef777e4ed931b88b586e2a5470f9a447cdf2b1e87a6252fd0fbc3a1be DIST gentoo-headers-6.12-1.tar.xz 1164 BLAKE2B 87b1f0e5bbc7e7a04dc05a12c8ac0e1a210bc88a8bcbfbe6c3cd905f803f21eaa15d847f673e1c778d807346e2cfa728df83d3f4ea2df1b61a5436971cf8d309 SHA512 2abdc467fefbbc498f9e2deeaa189f038ea9a2d28e27ee9b682dcbd48ce51103e3d3d6888127a4b5e88ea1ff16522c1fa20e39c90eff4831398782ae4d48e1ba +DIST gentoo-headers-6.13-1.tar.xz 1164 BLAKE2B 92c2b223c597b1aa94be129932902253308ceb66a0f4b8f9d1a79582a241c5e50d75363c6ebfc8266141f5d576dacc42acb7f6c09fe2c374b98f70c2210f4a08 SHA512 6885e725f17e07e565512dfaeb248fba01822a8836e4d6a8d3f84436ffe9290df2d0450de282efb4a18af893111e4258f69a5c6581d1783aebaee999c7e6db02 DIST gentoo-headers-6.6-1.tar.xz 1172 BLAKE2B 626bb33b42f48bceca2ba6a0a9c0b043a8607bb391d3b541e98d2af42eacfabeda3a5a3d48b7bee1fd0a2a8ad0b6173bde49d3827ea087e501eb0e91d18c4ab7 SHA512 09bcda97d9d17ee3f66ee46d9c00b8ac4fba5b9662fa24e4e2754bd9e4e7b3f097e5f2d52281eeb7a671dfe303aabe15c8fd66f117fddf29fb094e28d8c603b3 DIST gentoo-headers-6.8-1.tar.xz 1164 BLAKE2B 43283b61fc35057c7f703108d6e4aead901329106e4c297cdfc261e8f9cb1f2ec9370b7367432b9eabe9fcc4358da745170b1f4ec6079d373f50de1fde148778 SHA512 c43e18ce1b39a60e163c2e0f824b1402bcbda84f20b2ae38d53681ff517713c42fd876954fab0ab8044b66e28e32f9ee93fc61ecbbc9c2bb5a9932a0616e570c DIST gentoo-headers-6.9-1.tar.xz 1164 BLAKE2B fd385a2c39e9528f60dee582f153485842e76a8a9ad87fd8a11179b8ad2558df23e3c7fb7476f3f1011536e26da50f625a660d2a8ae01954300085f8b3f1bb01 SHA512 3fad4602e453a9aae24cc640ee6c70b06f221c78262f5befe794ca5eb48c352aff335715b5033760ca690bdef55e6a6acb5d3d2351bae885f3023098b5c6ecb1 @@ -25,6 +26,7 @@ DIST linux-6.1.tar.xz 134728520 BLAKE2B ae60257860b2bd1bd708d183f0443afc60ebbd2b DIST linux-6.10.tar.xz 145142812 BLAKE2B bb243ea7493b9d63aa2df2050a3f1ae2b89ee84a20015239cf157e3f4f51c7ac5efedc8a51132b2d7482f9276ac418de6624831c8a3b806130d9c2d2124c539b SHA512 baa2487954044f991d2ae254d77d14a1f0185dd62c9f0fcaff69f586c9f906823017b8db1c4588f27b076dfa3ebb606929fec859f60ea419e7974330b9289cc2 DIST linux-6.11.tar.xz 146900704 BLAKE2B e7750c0878d71a56a0ce52d4c4c912199dad5bf5e2e8f872585a6494afbb37cbd852e612a6858936d2dc9b7776a3933818f540db408d57e90d18ea5249bba7ab SHA512 329c1f94008742e3f0c2ce7e591a16316d1b2cb9ea4596d4f45604097e07b7aa2f64afa40630a07f321a858455c77aa32ba57b271932ddcf4dc27863f9081cea DIST linux-6.12.tar.xz 147906904 BLAKE2B b2ec2fc69218cacabbbe49f78384a5d259ca581b717617c12b000b16f4a4c59ee348ea886b37147f5f70fb9a7a01c1e2c8f19021078f6b23f5bc62d1c48d5e5e SHA512 a37b1823df7b4f72542f689b65882634740ba0401a42fdcf6601d9efd2e132e5a7650e70450ba76f6cd1f13ca31180f2ccee9d54fe4df89bc0000ade4380a548 +DIST linux-6.13.tar.xz 148523052 BLAKE2B 9f617ecb3f2393b57ba03c654fea62a7213f24c835989f333a1ef29492af551bfa7d9ad786d5ef1484854adc77c7c6af38fb09a72d994d305695f512c325e77f SHA512 1137e6440132b0958f89165440e99208f82b204e7245ae69dc9c808df97d13ce8f58136db92407e0e93394fa7f6283ec7a34597c6e92a5b6d9025e0960357957 DIST linux-6.6.tar.xz 140064536 BLAKE2B 5f02fd8696d42f7ec8c5fbadec8e7270bdcfcb1f9844a6c4db3e1fd461c93ce1ccda650ca72dceb4890ebcbbf768ba8fba0bce91efc49fbd2c307b04e95665f2 SHA512 458b2c34d46206f9b4ccbac54cc57aeca1eaecaf831bc441e59701bac6eadffc17f6ce24af6eadd0454964e843186539ac0d63295ad2cc32d112b60360c39a35 DIST linux-6.8.tar.xz 142502100 BLAKE2B c6f17f816cea16e629f63e9379b98888713f57b2c5173306926471f139a9d612a0c74e119341f8075390e55e203d787d9edeb4ad5a064b18870f6f0f7ffaafb2 SHA512 5c4eb4aa1d3f7d1ea01c0f7ddeadacdece6e144fd4bdfc16b2b925d3e10dc04de3a6db69320b79a96c3560052616f001d2c09e7a1bb4f7b731e2380a7ecce068 DIST linux-6.9.tar.xz 144034416 BLAKE2B 4cf86c3cfe6e6534745d42dfaeca59b17ea1168c4e8b615c80e6d8aac735f11283cd85fa992b440b5d4452917e94b9f08397a64af0be5894e3df23c68892377e SHA512 fed3b4cd1fbfb4d94618587c1934273d2ecc8b6e42a3d586ff8a5f24980be930f2ef803aa2923ca3bfa5e4e619f967f3af315368f24fa76f610b10443624a579 diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/linux-headers-6.13.ebuild b/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/linux-headers-6.13.ebuild new file mode 100644 index 00000000000..2296d0506c4 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/linux-headers-6.13.ebuild @@ -0,0 +1,51 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ETYPE="headers" +H_SUPPORTEDARCH="alpha amd64 arc arm arm64 csky hexagon hppa loong m68k microblaze mips nios2 openrisc ppc ppc64 riscv s390 sh sparc x86 xtensa" +inherit kernel-2 +detect_version + +PATCH_PV=${PV} # to ease testing new versions against not existing patches +PATCH_VER="1" +PATCH_DEV="sam" +SRC_URI=" + ${KERNEL_URI} + ${PATCH_VER:+https://dev.gentoo.org/~${PATCH_DEV}/distfiles/sys-kernel/linux-headers/gentoo-headers-${PATCH_PV}-${PATCH_VER}.tar.xz} +" +S="${WORKDIR}/linux-${PV}" + +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" + +BDEPEND=" + app-arch/xz-utils + dev-lang/perl +" + +src_unpack() { + # Avoid kernel-2_src_unpack + default +} + +src_prepare() { + local PATCHES=() + [[ -n ${PATCH_VER} ]] && PATCHES+=( "${WORKDIR}"/${PATCH_PV} ) + + # TODO: May need forward porting to newer versions + use elibc_musl && PATCHES+=( + "${FILESDIR}"/${PN}-5.15-remove-inclusion-sysinfo.h.patch + ) + + # Avoid kernel-2_src_prepare + default +} + +src_install() { + kernel-2_src_install + + find "${ED}" \( -name '.install' -o -name '*.cmd' \) -delete || die + # Delete empty directories + find "${ED}" -empty -type d -delete || die +} diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/Manifest index 875f490bc0d..5f7d3dbdec9 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/Manifest @@ -16,6 +16,7 @@ DIST binutils-2.41-patches-5.tar.xz 95176 BLAKE2B bbc94b3c7d70653a1056afe57a120b DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba63dcd74c665fd834e858645c912ffd8245d848435288b938852830b482905606f55c40df4061215fd75c52ffc75 SHA512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374 DIST binutils-2.42-patches-6.tar.xz 50664 BLAKE2B f13b65a761cfba80caf2e4740c6383b40305558365b950fba22aca95a104e799e8bd476082f36fb9288de4f224b09f317792c1444e549c40d15a4b64cdf61989 SHA512 1203eca0a9e622411eac377509de8fd0db3ffcb282ac38ab7a0369b166cc1091197daad85b51b145b34a4832f1a1a4d573c8254e8d67aeb22f35adb1ab3ece1f DIST binutils-2.42.tar.xz 27567160 BLAKE2B e67a5c028fba70e70088fd11b38ec8c9c4ed5a019badefda25abeb6275997b16f0891e7ff3424c4b82bbfae92e8992669826920dd53df61cd48469d8f7cd5bd1 SHA512 155f3ba14cd220102f4f29a4f1e5cfee3c48aa03b74603460d05afb73c70d6657a9d87eee6eb88bf13203fe6f31177a5c9addc04384e956e7da8069c8ecd20a6 -DIST binutils-2.43-patches-2.tar.xz 35184 BLAKE2B fa35c9f182c7ae0fed28614f47618d1563a58f223fd1805f348b618c1fbf039a444e44d88f46d040b6971e481e0da882e5c4492fd167d17bf39579d87a446434 SHA512 a7e167d3f6a2c08f19af4685d90a6160a1a52f1a87f5660fb6d80ec664033829c0eacad0d77b1306620e50ff89d1f9f63a7c2b064ad9775400f0cb0eba3159a4 DIST binutils-2.43-patches-3.tar.xz 62692 BLAKE2B a189a01a6a99c4fdff124cf90ecc18f874812c17fc735376c855469c487b6a71489ad5c2f86c518d2e029cc83d65757144ff9abddbe7ec3fc06e22f9501c62f4 SHA512 99a30e18fdfd7bdce85bb903f8d61837cfbb639ead8a680ff1a85ad1d615b658e696bdf196c4a002d029f952d34aa441e09e861b22f5400c65f07cce5934cd8f DIST binutils-2.43.tar.xz 28175768 BLAKE2B 28b0a04a28273b76eab2d00e00160be889f155f77f5a9d8759ef8dce505c97e97641bf7ec70b92b731b520570a02b06e04e8215b068fcb1bb2573e9ef24732d9 SHA512 93e063163e54d6a6ee2bd48dc754270bf757a3635b49a702ed6b310e929e94063958512d191e66beaf44275f7ea60865dbde138b624626739679fcc306b133bb +DIST binutils-2.44-patches-1.tar.xz 9156 BLAKE2B c72a7d0ffdb852f8de9c18e187b5768085b3a070744a4fadef508ab0e865d3a3967ec12a0ee7a325b6b689f39e5243aacd9d3f73ceb723d53592ec6ca640161b SHA512 053de98536e92837d0a08fac26bb0f057431747fe6e82f8b9ac54dd9aed65d8de379d653c0e8a8cd31267b9769825a420db5f40957f8c4eb54a7e4a9d76fadb8 +DIST binutils-2.44.tar.xz 27285788 BLAKE2B 0eb031ace9fb5a7047b81b5a05b1760f7d332c8ed67f98899f153a45f181b83e661a484551af05c0a9b2adc422da84619103c7b1f3c9fad5327872832b5446aa SHA512 b85d3bbc0e334cf67a96219d3c7c65fbf3e832b2c98a7417bf131f3645a0307057ec81cd2b29ff2563cec53e3d42f73e2c60cc5708e80d4a730efdcc6ae14ad7 diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.43-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.44.ebuild similarity index 69% rename from sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.43-r2.ebuild rename to sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.44.ebuild index bd0b6b20c16..b744d212fce 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.43-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.44.ebuild @@ -1,37 +1,46 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PATCH_VER=2 -PATCH_DEV=dilfridge - inherit flag-o-matic libtool toolchain-funcs multilib-minimal -MY_PN="binutils" -MY_P="${MY_PN}-${PV}" -PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}} -PATCH_DEV=${PATCH_DEV:-dilfridge} - DESCRIPTION="Core binutils libraries (libbfd, libopcodes, libiberty) for external packages" HOMEPAGE="https://sourceware.org/binutils/" -SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz - https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${MY_P}.tar.xz - https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${MY_PN}-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz" LICENSE="|| ( GPL-3 LGPL-3 )" +IUSE="64-bit-bfd cet multitarget nls static-libs test" -if [[ ${PV} == 2.43 ]] ; then - SLOT="0/${PV%_p?}.1" +# Variables that can be set here (ignored for live ebuilds) +# PATCH_VER - the patchset version +# Default: empty, no patching +# PATCH_BINUTILS_VER - the binutils version in the patchset name +# - Default: PV +# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/... +# for the patchsets + +PATCH_VER=1 +PATCH_DEV=dilfridge + +MY_PN=binutils +MY_P=${MY_PN}-${PV} + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + SLOT="0/${PV}" +elif [[ ${PV} == *9999 ]]; then + inherit git-r3 + SLOT="0/$(ver_cut 1-2)" else - die "Please cleanup the ebuild to drop the 2.43 fudge!" - SLOT="0/${PV%_p?}.0" + PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}} + PATCH_DEV=${PATCH_DEV:-dilfridge} + SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz + https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${MY_P}.tar.xz + https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${MY_PN}-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz" + SLOT="0/${PV}" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" fi -IUSE="64-bit-bfd cet multitarget nls static-libs test" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" -RESTRICT="!test? ( test )" - BDEPEND=" nls? ( sys-devel/gettext ) test? ( dev-util/dejagnu ) @@ -42,12 +51,52 @@ RDEPEND="${DEPEND} >=sys-devel/binutils-config-5 " -S="${WORKDIR}/${MY_P%_p?}" +RESTRICT="!test? ( test )" + +MY_BUILDDIR=${WORKDIR}/build MULTILIB_WRAPPED_HEADERS=( /usr/include/bfd.h ) +src_unpack() { + if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/toolchain/binutils-patches.git + https://github.com/gentoo/binutils-patches + " + EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git + git-r3_src_unpack + mv patches-git/9999 patch || die + + if [[ ${PV} != 9999 ]] ; then + EGIT_BRANCH=binutils-$(ver_cut 1)_$(ver_cut 2)-branch + fi + EGIT_REPO_URI=" + https://sourceware.org/git/binutils-gdb.git + https://git.sr.ht/~sourceware/binutils-gdb + https://gitlab.com/x86-binutils/binutils-gdb.git + " + S=${WORKDIR}/binutils + EGIT_CHECKOUT_DIR=${S} + git-r3_src_unpack + else + unpack ${MY_P}.tar.xz + + cd "${WORKDIR}" || die + unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz + + # _p patch versions are Gentoo specific tarballs ... + local dir=${MY_P} + dir=${dir/-hppa64/} + + S=${WORKDIR}/${dir} + fi + + cd "${WORKDIR}" || die + mkdir -p "${MY_BUILDDIR}" || die +} + src_prepare() { if [[ -n ${PATCH_VER} ]] ; then einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}" @@ -80,9 +129,6 @@ pkgversion() { } multilib_src_configure() { - # https://sourceware.org/PR32372 - append-cflags -std=gnu17 - filter-lto local myconf=( @@ -110,9 +156,9 @@ multilib_src_configure() { --without-zlib --with-system-zlib # We only care about the libs, so disable programs. #528088 - --disable-{binutils,etc,ld,gas,gold,gprof,gprofng} + --disable-{binutils,etc,ld,gas,gprof,gprofng} # Disable modules that are in a combined binutils/gdb tree. #490566 - --disable-{gdb,libdecnumber,readline,sim} + --disable-{gdb,gdbserver,libbacktrace,libdecnumber,readline,sim} # Strip out broken static link flags. # https://gcc.gnu.org/PR56750 --without-stage1-ldflags @@ -165,7 +211,9 @@ multilib_src_install() { emake DESTDIR="${D}" install # Provided by dev-debug/gdb instead - rm "${ED}"/usr/share/info/sframe-spec.info || die + if [[ ${PV} != 9999 ]] ; then + rm "${ED}"/usr/share/info/sframe-spec.info || die + fi # Provide libiberty.h directly. dosym libiberty/libiberty.h /usr/include/libiberty.h 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 0f5bb98f395..6b4dbbfd697 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 @@ -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=7 @@ -81,7 +81,7 @@ src_unpack() { EGIT_CHECKOUT_DIR=${S} git-r3_src_unpack else - unpack ${P/-hppa64/}.tar.xz + unpack ${MY_P}.tar.xz cd "${WORKDIR}" || die unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz @@ -156,9 +156,9 @@ multilib_src_configure() { --without-zlib --with-system-zlib # We only care about the libs, so disable programs. #528088 - --disable-{binutils,etc,ld,gas,gold,gprof,gprofng} + --disable-{binutils,etc,ld,gas,gprof,gprofng} # Disable modules that are in a combined binutils/gdb tree. #490566 - --disable-{gdb,gdbserver,libdecnumber,readline,sim} + --disable-{gdb,gdbserver,libbacktrace,libdecnumber,readline,sim} # Strip out broken static link flags. # https://gcc.gnu.org/PR56750 --without-stage1-ldflags @@ -210,6 +210,11 @@ multilib_src_configure() { multilib_src_install() { emake DESTDIR="${D}" install + # Provided by dev-debug/gdb instead + if [[ ${PV} != 9999 ]] ; then + rm "${ED}"/usr/share/info/sframe-spec.info || die + fi + # Provide libiberty.h directly. dosym libiberty/libiberty.h /usr/include/libiberty.h } 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 49fb11471ca..6c699618549 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 @@ -24,9 +24,10 @@ DIST glibc-2.38.tar.xz 18913712 BLAKE2B f9b039f0ef98a7dd8e1cba228ed10286b9e4fbe4 DIST glibc-2.39-patches-11.tar.xz 192784 BLAKE2B fef42e0bd2a3341f41cac56dc878dcc95b7f521ffb27686a9109fe92e0458e903a24e763db17631b8ae6c1e8de7add2a11979b970689b2378aeb6ef29da7ceb6 SHA512 9daf2c57d178c7ce9d98ee454f680280738b37571bbbecc1724282e4866df29b78e60de40ad81a6efcc0a75b45d08148cb1a5f942ae7e308ae6fa63f9671b7de DIST glibc-2.39.tar.xz 18520988 BLAKE2B 9d98459a2d58401e07c081e0d841935b23998da75a7eb5a7ebd23a1f9ebab99dee623fe166397c1b6c926960c570f62dbca5cb3b5ce84a918adff6b7a15e16bb SHA512 818f58172a52815b4338ea9f2a69ecaa3335492b9f8f64cbf8afb24c0d737982341968ecd79631cae3d3074ab0ae4bc6056fc4ba3ffe790849dc374835cd57e2 DIST glibc-2.40-patches-5.tar.xz 87376 BLAKE2B b09b9d2c8e45c0b494223cd01effb14ef205b030f2aeb76e1d7d289997258c1e46d85f8f4ad761e22afc35b1f4747fbca51d7caf252181c7b054b6a3e6bd2bfe SHA512 bf4776c27e5d962d2774afbed2236996a712a6127e5fdccd051af212d86a7e699a932cf4cb22f5516d513b9490b91d5e145727035e845cd4ef290985ac3dc524 -DIST glibc-2.40-patches-7.tar.xz 104100 BLAKE2B 6e91571bea0475b1a47a2c1b796cc91d2ab0f542cc82dba8691f99d09459bea73c0940c89c8f559edfb315cf9844a5c1eb0392f40499b1b8861f1e16f8b549db SHA512 8d61810f11f4c2ce97037e0f3c62e2a7bf0d83571fe68c7f80a248df744c31c2bda075c1f4c6189e8d5de0b200c1070e667a753144c61b0cb9bd5456b1c99d8b DIST glibc-2.40-patches-8.tar.xz 112020 BLAKE2B 17f5a3e5486aa570cb4d9103a84b649af9731bc398a4ff65d3d24c8912215dc7f5f2d6fa9a0222c514374a132b96796e8926a5cc31c87b326bf6d1a39772bd7a SHA512 97a28822f97d1c06773953750a8d9a38a6bd9ce488f4c4d5f0752b573591cbdc84dfbbb277e3fb8e5664c56596efc093fd83a78e4c47bb9c11cafe942b13a0f1 DIST glibc-2.40.tar.xz 18752204 BLAKE2B 8593cab5b2549b77159b6866fbb40b917e491fd5bc0814f7f85b6529166d78d4583436450c479b86cdfe468304fc4d2a9ba8294230a55dbc4c15e89c3ab6c000 SHA512 33caf91dbfddde6480b7cdf7a68b36aff8c522bfee56160af26af297f1b768668edb08bc4e1a7ff61c64721e3c1d49c347a5dd01c5edd3b914ee6479c8b27885 +DIST glibc-2.41-patches-1.tar.xz 17560 BLAKE2B dc4e39cb5605867b44c2308a8d6d6c0a662656b80a0aa2734f488e2cc22e26c948177eeb80ff6c79d82925b4dbd146a4d78646879c6e32fd60f817fb0d9ae092 SHA512 94da2092e49ee827d7558bcbfa8ebcbb9f81ed68848221d139039ea788cef57375ccfa61498bc73c6e83050681990d3968791a5f90514de12e45c10baef31d1e +DIST glibc-2.41.tar.xz 19344868 BLAKE2B 4da62f489ba7a95bb069c2cfea8cf78e4d37e3a5f7e1736239670ba1dca12b69aa77bd00ced078c27d91b1e622c58cbd70258161a9d18c5b3bcc95863b8d744d SHA512 894a3e5a796bc13df30c26a5bfbe4d60b5dbdaac54e7763432235124b547070c7dda88c50584536870cab79183d8cad73a3ac6ed09bfe54fa8482aad07253169 DIST glibc-systemd-20210729.tar.gz 1480 BLAKE2B 37722c7579df782d890e44dbab99c3de52ab466eb9de80d82405e9bb5620bf39ffc8c5f466a435bdb86ef6d36dd7019c0736573916bda6c67d02a2581e0ec979 SHA512 efd75af58b50522c28cdac7abd1fc56555bc1bb042512c90d8340c1ec09c5791b3872a305bf83723252bbde5855b75d958c041083457765c4cfd170732d09238 DIST glibc-systemd-20210814.tar.gz 1469 BLAKE2B 10fa7bcb46d4fdce9c0ab353cbd30871e9b09a347a13a9c9a3b5777f931aa3c826c158d2e49532c604d4a834f2fab4089b67495fb88d0398945dc50d45ad9ef1 SHA512 5346a9ea459a1e6ccf665389f2a294de1e16f1e3e05cdf07e3dd99ed0e4f6f8b52cc333d4bff3c75ac90ab6ce70cd4ab2b3e126f920ce7979abd6dda56315efc DIST locale-gen-2.00.tar.gz 7738 BLAKE2B cde6de5ba3400aea24d0d5f1b79471f89f09fb747c8e371e38316c7ada92f967e0865f573f23cb353d82419c234724143c0aeca9eb70eb945dfc581cc7491eb1 SHA512 b609fddb9ec5e567c008841fef3390eddb5d6e7699a8271b3b8c0ade1b44b0ac2e5d1daa8b9acabf3432e3b88110b538a96f209b1ad0f9e988b7efce66606dff diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.40-r7.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.40-r7.ebuild rename to sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41.ebuild index e7b5d78134b..9706271cc1e 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.40-r7.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-2.41.ebuild @@ -12,7 +12,7 @@ TMPFILES_OPTIONAL=1 EMULTILIB_PKG="true" # Gentoo patchset (ignored for live ebuilds) -PATCH_VER=7 +PATCH_VER=1 PATCH_DEV=dilfridge # gcc mulitilib bootstrap files version @@ -118,6 +118,7 @@ BDEPEND=" test? ( dev-lang/perl >=net-dns/libidn2-2.3.0 + sys-apps/gawk[mpfr] ) " COMMON_DEPEND=" @@ -178,6 +179,7 @@ XFAIL_TEST_LIST=( # Fails with certain PORTAGE_NICENESS/PORTAGE_SCHEDULING_POLICY tst-sched1 + tst-sched_setattr # Fails regularly, unreliable tst-valgrind-smoke @@ -191,6 +193,7 @@ XFAIL_NSPAWN_TEST_LIST=( # upstream, as systemd-nspawn's default seccomp whitelist is too strict. # https://sourceware.org/PR30603 test-errno-linux + tst-aarch64-pkey tst-bz21269 tst-mlock2 tst-ntp_gettime @@ -289,9 +292,13 @@ do_run_test() { # 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 @@ -485,10 +492,6 @@ setup_flags() { # 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 - # glibc handles this internally already where it's appropriate; - # can't always have SSP when we're the ones setting it up, etc - filter-flags '-fstack-protector*' - # Similar issues as with SSP. Can't inject yourself that early. filter-flags '-fsanitize=*' @@ -933,12 +936,18 @@ src_unpack() { 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" + 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" + 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 diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-9999.ebuild index 9622057c772..3d994649ea3 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/glibc/glibc-9999.ebuild @@ -492,10 +492,6 @@ setup_flags() { # 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 - # glibc handles this internally already where it's appropriate; - # can't always have SSP when we're the ones setting it up, etc - filter-flags '-fstack-protector*' - # Similar issues as with SSP. Can't inject yourself that early. filter-flags '-fsanitize=*' diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libselinux/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/libselinux/Manifest index 21b7f934eef..1924cfe06b7 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libselinux/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libselinux/Manifest @@ -1,2 +1,3 @@ DIST libselinux-3.6.tar.gz 194210 BLAKE2B 615198d47ecfb4b6274810cbe32cce5953dd44d1d04e8ce244213dc4ddbd61cde3515f4650046b805cf98f341aba718af8d7a9e1d66773172031ac19599f6032 SHA512 182dcdf3510083ff4b9376a4a6d6a7b33905ac3c5e974c188bf3965686c54b663162c543ecf15eab75102f3c91a2502d33d0f1104dec01dd9b14737ef3f2b544 DIST libselinux-3.7.tar.gz 194834 BLAKE2B 07d87c37608b480d17355334459ecb006573d61a7d3fbf622033838559397abcf343e6399f3a49b6cf24e106d03fd997397d061491d2129c15a378960dacc350 SHA512 e949c20b606c50ad521b9592ce55ad6658e8c4b24d9838028f5aba0a4fc762b6d0d0d0d207f5bef7a2e41485e12d91382fa6090df27152dbb40071b273419352 +DIST libselinux-3.8.tar.gz 204389 BLAKE2B fdba907a3060138e065c016ab510042fc9e5760db278b99a6508f475fdb25125a7cbaba541e3e681b6cf4a092a2ad40ca08d7736687c9f326c9fe2c87953da85 SHA512 e36edec33c3960679a8975f839a4d64d4b1f82d51346fba21082c2686136259040099c7fee2c947ac2ca180d61d10356c9b3d359a1c5f1242b6ecdd7c036005e diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libselinux/libselinux-3.8.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libselinux/libselinux-3.8.ebuild new file mode 100644 index 00000000000..5bc7fa6d98f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libselinux/libselinux-3.8.ebuild @@ -0,0 +1,164 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" +PYTHON_COMPAT=( python3_{10..13} ) +USE_RUBY="ruby31 ruby32 ruby33" + +# No, I am not calling ruby-ng +inherit flag-o-matic python-r1 toolchain-funcs multilib-minimal + +MY_PV="${PV//_/-}" +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="SELinux userland library" +HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git" + S="${WORKDIR}/${P}/${PN}" +else + SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~mips ~riscv ~x86" + S="${WORKDIR}/${MY_P}" +fi + +LICENSE="public-domain" +SLOT="0" +IUSE="python ruby static-libs ruby_targets_ruby31 ruby_targets_ruby32 ruby_targets_ruby33" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND="dev-libs/libpcre2:=[static-libs?,${MULTILIB_USEDEP}] + >=sys-libs/libsepol-${PV}:=[${MULTILIB_USEDEP},static-libs(+)] + python? ( ${PYTHON_DEPS} ) + ruby? ( + ruby_targets_ruby31? ( dev-lang/ruby:3.1 ) + ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) + ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) + ) + elibc_musl? ( sys-libs/fts-standalone )" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig + python? ( + >=dev-lang/swig-2.0.9 + dev-python/pip[${PYTHON_USEDEP}] +) + ruby? ( >=dev-lang/swig-2.0.9 )" + +src_prepare() { + eapply_user + + multilib_copy_sources +} + +multilib_src_compile() { + tc-export AR CC PKG_CONFIG RANLIB + + local -x CFLAGS="${CFLAGS} -fno-semantic-interposition" + + emake \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + LDFLAGS="-fPIC ${LDFLAGS} -pthread" \ + USE_PCRE2=y \ + USE_LFS=y \ + FTS_LDLIBS="$(usex elibc_musl '-lfts' '')" \ + all + + if multilib_is_native_abi && use python; then + building() { + emake \ + LDFLAGS="-fPIC ${LDFLAGS} -lpthread" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + USE_PCRE2=y \ + USE_LFS=y \ + FTS_LDLIBS="$(usex elibc_musl '-lfts' '')" \ + pywrap + } + python_foreach_impl building + fi + + if multilib_is_native_abi && use ruby; then + building() { + einfo "Calling rubywrap for ${1}" + # Clean up .lo file to force rebuild + rm -f src/selinuxswig_ruby_wrap.lo || die + emake \ + RUBY=${1} \ + LDFLAGS="-fPIC ${LDFLAGS} -lpthread" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + USE_LFS=y \ + USE_PCRE2=y \ + FTS_LDLIBS="$(usex elibc_musl '-lfts' '')" \ + rubywrap + } + for RUBYTARGET in ${USE_RUBY}; do + use ruby_targets_${RUBYTARGET} || continue + + building ${RUBYTARGET} + done + fi +} + +multilib_src_install() { + emake DESTDIR="${D}" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + USE_LFS=y \ + USE_PCRE2=y \ + install + + if multilib_is_native_abi && use python; then + installation() { + emake DESTDIR="${D}" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + USE_LFS=y \ + USE_PCRE2=y \ + install-pywrap + python_optimize # bug 531638 + } + python_foreach_impl installation + fi + + if multilib_is_native_abi && use ruby; then + installation() { + einfo "Calling install-rubywrap for ${1}" + # Forcing (re)build here as otherwise the resulting SO file is used for all ruby versions + rm src/selinuxswig_ruby_wrap.lo + emake DESTDIR="${D}" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + RUBY=${1} \ + USE_LFS=y \ + USE_PCRE2=y \ + install-rubywrap + } + for RUBYTARGET in ${USE_RUBY}; do + use ruby_targets_${RUBYTARGET} || continue + + installation ${RUBYTARGET} + done + fi + + use static-libs || rm "${ED}"/usr/$(get_libdir)/*.a || die +} + +pkg_postinst() { + # Fix bug 473502 + for POLTYPE in ${POLICY_TYPES}; + do + mkdir -p "${ROOT}/etc/selinux/${POLTYPE}/contexts/files" || die + touch "${ROOT}/etc/selinux/${POLTYPE}/contexts/files/file_contexts.local" || die + # Fix bug 516608 + for EXPRFILE in file_contexts file_contexts.homedirs file_contexts.local ; do + if [[ -f "${ROOT}/etc/selinux/${POLTYPE}/contexts/files/${EXPRFILE}" ]]; then + sefcontext_compile "${ROOT}/etc/selinux/${POLTYPE}/contexts/files/${EXPRFILE}" \ + || die "Failed to recompile contexts" + fi + done + done +} diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libsepol/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/libsepol/Manifest index bced87d0764..88808f3d304 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libsepol/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libsepol/Manifest @@ -1,2 +1,3 @@ DIST libsepol-3.6.tar.gz 509100 BLAKE2B c073c9437004df0c723125971ed26354dc6b8a78b069c593977062527342061303bcc48917fcd9623d17998748254f63408b233173f3c62e92ee0ea2f3c4a430 SHA512 35a42d2749fc4f71bc6b7488380714f56975564007128566f1c73e5c50bf81c17535b2cfda4583aacb4870aa2cd5885321c01523e415bda8b3326bfefb13d58e DIST libsepol-3.7.tar.gz 511487 BLAKE2B 8e4a0b2b3731f49d8bc8ea03bd5269672428119578046bc7f38230e3c77459e6b9d4ab39285ea33c89d8e807499ef89faa606e4b4e1ecfac2c3d445454b16420 SHA512 85d12d0ba5a7a3225f08d041a18fd59641608db5e0a78a1e9649754e45be54a807cd422d4889b88da6e806b4af546336c7a0913448f08ac33dc6ffb983890ef8 +DIST libsepol-3.8.tar.gz 513780 BLAKE2B aca232da4f6bc21638f3e76d96c8349109edb64d8134c7d9c64bd4ee25c7ebbf69829eaa92493e0522a2a13e97a70f82514f24c6fff62e17f2a6874dd3fed516 SHA512 06da9bac1075b54177c3237994f3db0f9a50e16a363874df7ba11a52084bce4af9623ecfc1db1779b555dee6aab62fbfbf1cd03cf5760bd00f74ea5775897e09 diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libsepol/libsepol-3.8.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libsepol/libsepol-3.8.ebuild new file mode 100644 index 00000000000..041e040a37d --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libsepol/libsepol-3.8.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" + +inherit toolchain-funcs multilib-minimal + +MY_PV="${PV//_/-}" +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="SELinux binary policy representation library" +HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git" + S="${WORKDIR}/${P}/${PN}" +else + SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~mips ~riscv ~x86" + S="${WORKDIR}/${MY_P}" +fi + +LICENSE="GPL-2" +SLOT="0/2" +IUSE="+static-libs" + +# tests are not meant to be run outside of the full SELinux userland repo +RESTRICT="test" + +src_prepare() { + eapply_user + multilib_copy_sources +} + +my_make() { + emake \ + PREFIX="${EPREFIX}/usr" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="${EPREFIX}/$(get_libdir)" \ + "${@}" +} + +multilib_src_compile() { + tc-export CC AR RANLIB + + local -x CFLAGS="${CFLAGS} -fno-semantic-interposition" + + my_make +} + +multilib_src_install() { + my_make DESTDIR="${D}" install + use static-libs || rm "${ED}"/usr/$(get_libdir)/*.a || die +} diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libxcrypt/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/libxcrypt/Manifest index 416fefe5b93..18c4945f0d7 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libxcrypt/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libxcrypt/Manifest @@ -1 +1,2 @@ DIST libxcrypt-4.4.36-autotools.tar.xz 624660 BLAKE2B 8dc3d0f354baf8c64dc011e95e7df10d48b0dfe428503936ffd55edf2745de04003c7efe231ed5d9a14cea7f682ba377b7e00f0463b4060c50c9c29f555b790f SHA512 fb8391ecb89622eb0d74d13c5fc1369718e83c47671449044ca0c2f78a236d7b06177a60bf8cda47694caa840c68eaaf0b23690e8975fa5d64b734c8eb246d10 +DIST libxcrypt-4.4.38-autotools.tar.xz 630696 BLAKE2B 471066e83495fbaf3ef8dee066b4a7bff36dbc36d6ae1c09f2510d79b041b8517d6cc345e678d92508f5d044dc25fd7b1d36e0243aa46314bbbe7e3201838a5c SHA512 9b1d53119e0d808f6bc30e39cbe85710e3abb774109df28e05b90adebb828f47db3f7126de4ffdea2e63073905648ad941985d1a2167ba7282c01e132ef4e2b2 diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libxcrypt/libxcrypt-4.4.38.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libxcrypt/libxcrypt-4.4.38.ebuild new file mode 100644 index 00000000000..b4006c5176f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libxcrypt/libxcrypt-4.4.38.ebuild @@ -0,0 +1,250 @@ +# Copyright 2004-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +# NEED_BOOTSTRAP is for developers to quickly generate a tarball +# for publishing to the tree. +NEED_BOOTSTRAP="no" +inherit crossdev multibuild multilib python-any-r1 flag-o-matic toolchain-funcs multilib-minimal + +DESCRIPTION="Extended crypt library for descrypt, md5crypt, bcrypt, and others" +HOMEPAGE="https://github.com/besser82/libxcrypt" +if [[ ${NEED_BOOTSTRAP} == "yes" ]] ; then + inherit autotools + SRC_URI="https://github.com/besser82/libxcrypt/releases/download/v${PV}/${P}.tar.xz" +else + SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-autotools.tar.xz" +fi + +LICENSE="LGPL-2.1+ public-domain BSD BSD-2" +SLOT="0/1" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="+compat static-libs +system test headers-only" +RESTRICT="!test? ( test )" + +DEPEND=" + system? ( + elibc_glibc? ( + ${CATEGORY}/glibc[-crypt(-)] + !${CATEGORY}/glibc[crypt(-)] + ) + elibc_musl? ( + ${CATEGORY}/musl[-crypt(+)] + !${CATEGORY}/musl[crypt(+)] + ) + ) +" +RDEPEND="${DEPEND}" +BDEPEND=" + dev-lang/perl + test? ( $(python_gen_any_dep 'dev-python/passlib[${PYTHON_USEDEP}]') ) +" + +python_check_deps() { + python_has_version "dev-python/passlib[${PYTHON_USEDEP}]" +} + +pkg_pretend() { + if has "distcc" ${FEATURES} ; then + ewarn "Please verify all distcc nodes are using the same versions of GCC (>= 10) and Binutils!" + ewarn "Older/mismatched versions of GCC may lead to a misbehaving library: bug #823179." + + if [[ ${BUILD_TYPE} != "binary" ]] && tc-is-gcc && [[ $(gcc-major-version) -lt 10 ]] ; then + die "libxcrypt is known to fail to build or be broken at runtime with < GCC 10 (bug #823179)!" + fi + fi +} + +pkg_setup() { + : +} + +src_prepare() { + default + + # WARNING: Please read on bumping or applying patches! + # + # There are two circular dependencies to be aware of: + # 1) + # if we're bootstrapping configure and makefiles: + # libxcrypt -> automake -> perl -> libxcrypt + # + # mitigation: + # toolchain@ manually runs `make dist` after running autoconf + `./configure` + # and the ebuild uses that. + # (Don't include the pre-generated Perl artefacts.) + # + # solution for future: + # Upstream are working on producing `make dist` tarballs. + # https://github.com/besser82/libxcrypt/issues/134#issuecomment-871833573 + # + # 2) + # configure *unconditionally* needs Perl at build time to generate + # a list of enabled algorithms based on the set passed to `configure`: + # libxcrypt -> perl -> libxcrypt + # + # mitigation: + # None at the moment. + # + # solution for future: + # Not possible right now. Upstream intend on depending on Perl for further + # configuration options. + # https://github.com/besser82/libxcrypt/issues/134#issuecomment-871833573 + # + # Therefore, on changes (inc. bumps): + # * You must check whether upstream have started providing tarballs with bootstrapped + # auto{conf,make}; + # + # * diff the build system changes! + # + if [[ ${NEED_BOOTSTRAP} == "yes" ]] ; then + # Facilitate our split variant build for compat + non-compat + eapply "${FILESDIR}"/${PN}-4.4.19-multibuild.patch + eautoreconf + fi +} + +src_configure() { + MULTIBUILD_VARIANTS=( + $(usev compat 'xcrypt_compat') + xcrypt_nocompat + ) + + MYPREFIX=${EPREFIX} + MYSYSROOT=${ESYSROOT} + + if target_is_not_host; then + local CHOST=${CTARGET} + + MYPREFIX= + MYSYSROOT=${ESYSROOT}/usr/${CTARGET} + + # Ensure we get compatible libdir + unset DEFAULT_ABI MULTILIB_ABIS + multilib_env + ABI=${DEFAULT_ABI} + + tc-getCC >/dev/null + if [[ ${CC} != ${CHOST}-* ]]; then + unset CC + tc-getCC >/dev/null + fi + + strip-unsupported-flags + fi + + if use headers-only; then + # Nothing is compiled here which would affect the headers for the target. + # So forcing CC is sane. + local -x CC="$(tc-getBUILD_CC)" + fi + + # Doesn't work with LTO: bug #852917. + # https://github.com/besser82/libxcrypt/issues/24 + filter-lto + + append-ldflags $(test-flags-CCLD -Wl,--undefined-version) + + if use test; then + python_setup + fi + + multibuild_foreach_variant multilib-minimal_src_configure +} + +multilib_src_configure() { + local myconf=( + --disable-werror + --prefix="${MYPREFIX}/usr" + --libdir="${MYPREFIX}/usr/$(get_libdir)$(usev !system /xcrypt)" + --includedir="${MYPREFIX}/usr/include$(usev !system /xcrypt)" + --with-pkgconfigdir="${MYPREFIX}/usr/$(get_libdir)/pkgconfig" + --with-sysroot="${MYSYSROOT}" + ) + + tc-export PKG_CONFIG + + case "${MULTIBUILD_ID}" in + xcrypt_compat-*) + myconf+=( + --disable-static + --disable-xcrypt-compat-files + --enable-obsolete-api=yes + ) + ;; + xcrypt_nocompat-*) + myconf+=( + --enable-obsolete-api=no + $(use_enable static-libs static) + ) + ;; + *) die "Unexpected MULTIBUILD_ID: ${MULTIBUILD_ID}";; + esac + + ECONF_SOURCE="${S}" econf "${myconf[@]}" +} + +src_compile() { + use headers-only && return + + multibuild_foreach_variant multilib-minimal_src_compile +} + +multilib_src_test() { + emake check +} + +src_test() { + multibuild_foreach_variant multilib-minimal_src_test +} + +src_install() { + local DESTDIR=${D} + if target_is_not_host; then + DESTDIR=${ED}/usr/${CTARGET} + fi + + multibuild_foreach_variant multilib-minimal_src_install + + find "${ED}" -name '*.la' -delete || die + + if target_is_not_host; then + insinto /usr/${CTARGET}/usr/share + doins -r "${ED}/usr/share/doc" + rm -r "${ED}/usr/share/doc" || die + rmdir "${ED}/usr/share" || die + fi +} + +multilib_src_install() { + if use headers-only; then + emake DESTDIR="${DESTDIR}" install-nodist_includeHEADERS + else + emake DESTDIR="${DESTDIR}" install + # Conflicts with sys-apps/man-pages + rm "${DESTDIR}${MYPREFIX}"/usr/share/man/man3/crypt{,_r}.3 || die + fi +} + +pkg_preinst() { + # Verify we're not in a bad case like bug #843209 with broken symlinks. + # This can be dropped when, if ever, the split-usr && system && compat case + # is cleaned up in *_src_install. + local broken_symlinks=() + mapfile -d '' broken_symlinks < <( + find "${ED}" -xtype l -print0 + ) + + if [[ ${#broken_symlinks[@]} -gt 0 ]]; then + eerror "Broken symlinks found before merging!" + local symlink target resolved + for symlink in "${broken_symlinks[@]}" ; do + target="$(readlink "${symlink}")" + resolved="$(readlink -f "${symlink}")" + eerror " '${symlink}' -> '${target}' (${resolved})" + done + die "Broken symlinks found! Aborting to avoid damaging system. Please report a bug." + fi +} 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 2e53f6f61fc..f4e0b8fc29a 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 @@ -5,6 +5,7 @@ DIST readline-8.2.tar.gz 3043952 BLAKE2B 7974322b9c092a756a79e537df08e8532f8e0fc DIST readline-8.2.tar.gz.sig 95 BLAKE2B dc510459c0c47782ca87364a6677b4d8f0b68a984143122c08bd15aef08a71bff59ac92d3c3ada518dad09f189c144748e840175041eb619f679e2d8b95dc2aa SHA512 0effd273689e5f7fe7e049c8f2c5f3c97149f198a90d053231ee4de34901560a465ab0d4fd71fd07c7d7e233caed7f42e5b668bffaf1e23a7eb373c8f9e150fe DIST readline-8.3-beta.tar.gz 3412518 BLAKE2B 196812d49ad5a56d4163a50e603269e9d7a3e4b28acf0d09103bd64a12845c107ef03fd09812f93a3854cdf0dae201e780b9e71d51ed752233f1b38fef1d87dd SHA512 5a8727420917016ef1be2ec3dff1bff433a62b9e0732707f203a6ffbbaaff6134b3ab67d22a51ee86ed2c4d94b75e0fb2d41bca8018ce52cccb44d27320dfa1d DIST readline-8.3-beta.tar.gz.sig 95 BLAKE2B af715b9a5e4bcad38aec353c2501b82648544429acd0db6afc19c66c0f19d6b8215e1198b3d54e09a54edb94c8a5438fc07ba80df17fa2dab789ba2201355ac5 SHA512 1906eaf283f558a5401bdfe401081ed92c77bf36c5bee19c4460cf907e9578bff6ce29423577e58d9e920760dd3822424426637dce1346569bc3668c7fead104 +DIST readline-8.3_beta_p20250128-5bcabd92f35444fa87ed49bd180a2994fd9449ba.tar.gz 3475352 BLAKE2B 7ea7ee7706a4d815e7a60acf96fdb344ef2baeb362d13cd7f5b8e6021e117c18f801ad1788689745739f9c69de2b0da1a1d04078fc2610bbdf212e42583980a3 SHA512 7267f9b1a08479f13f721afe03c8a1453ec95404ce9bdcdb3a7d150faf96522542ae26ebbcd54d648855779b60b84fe2e8d14bf78afdb6d391ce9db5642cb90c DIST readline81-001 2454 BLAKE2B 7ec4e5c39a224a70643b44b88bcfef5198e199c76f2a34f0b0ce24f1747dd46be49ddf93871c474cda64322b4358127fec4c2401d19422f84934546bbe1f3bf2 SHA512 cfbef10bdeb562a302ccf214878d02ebadf799343b3d2d7996a282f81bcfde83997ba6dcc9a8477af4dd7c73bca74105ca00a81e42ed13321672bd2930550e54 DIST readline81-001.sig 95 BLAKE2B 7d523d0fc21772cb03aa4b5d66ea58c1a99a6c0e4a8625e89cad015cbff63cd68e08207ca5150819225300ac864806032888104bbbea64ca38ebf89e28c24b7e SHA512 7fa3747e388aecb26f2d4f8346b89b367710ea99a14618c625066b820901dc467bd156ec37340fde1f86f0fe0d6b33044c1ed5768cf8ed1a25386d32dc6419a6 DIST readline81-002 1242 BLAKE2B 4ef0404561bd8fc5559e8e5f675ae3f12c467178a8954f54f3204c2d09b88ccec960e807c7af0ec3514b489b676e3be51f98351e377fb18e3d7a14d33d4da69d SHA512 e47c029b82cf3a4d44e85c4348f7e059c56726694c190d84186822e1c893e1c006e7ec75f33c36791112f81abd792a2e2fdae9a65cd128f3c89ff4ffd9a9a1ff diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3_beta_p20250128.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3_beta_p20250128.ebuild new file mode 100644 index 00000000000..d3e7f154e81 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3_beta_p20250128.ebuild @@ -0,0 +1,265 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# There's no standard way of versioning the point releases upstream +# make anyway, so while this was added for RC versions, it's fine +# in general. +QA_PKGCONFIG_VERSION=$(ver_cut 1-2) +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc +inherit flag-o-matic multilib multilib-minimal preserve-libs toolchain-funcs verify-sig + +# Official patches +# See ftp://ftp.cwru.edu/pub/bash/readline-8.1-patches/ +PLEVEL="${PV##*_p}" +MY_PV="${PV/_p*}" +MY_PV="${MY_PV/_/-}" +MY_P="${PN}-${MY_PV}" +MY_PATCHES=() + +# Determine the patchlevel. +case ${PV} in + 9999|*_alpha*|*_beta*|*_rc*) + # Set a negative patchlevel to indicate that it's a pre-release. + PLEVEL=-1 + ;; + *_p*) + PLEVEL=${PV##*_p} + ;; + *) + PLEVEL=0 +esac + +DESCRIPTION="Another cute console display library" +HOMEPAGE="https://tiswww.case.edu/php/chet/readline/rltop.html https://git.savannah.gnu.org/cgit/readline.git" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/readline.git" + EGIT_BRANCH=devel + inherit git-r3 +elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then + # It can be useful to have snapshots in the pre-release period once + # the first alpha is out, as various bugs get reported and fixed from + # the alpha, and the next pre-release is usually quite far away. + # + # i.e. if it's worth packaging the alpha, it's worth packaging a followup. + READLINE_COMMIT="5bcabd92f35444fa87ed49bd180a2994fd9449ba" + SRC_URI="https://git.savannah.gnu.org/cgit/readline.git/snapshot/readline-${READLINE_COMMIT}.tar.gz -> ${P}-${READLINE_COMMIT}.tar.gz" + S=${WORKDIR}/${PN}-${READLINE_COMMIT} +else + SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz" + SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )" + S="${WORKDIR}/${MY_P}" + + if [[ ${PLEVEL} -gt 0 ]] ; then + # bash-5.1 -> bash51 + my_p=${PN}$(ver_rs 1-2 '' $(ver_cut 1-2)) + + patch_url= + my_patch_index= + + upstream_url_base="mirror://gnu/readline" + mirror_url_base="ftp://ftp.cwru.edu/pub/readline" + + for ((my_patch_index=1; my_patch_index <= ${PLEVEL} ; my_patch_index++)) ; do + printf -v mangled_patch_ver ${my_p}-%03d ${my_patch_index} + patch_url="${upstream_url_base}/${MY_P}-patches/${mangled_patch_ver}" + + SRC_URI+=" ${patch_url}" + SRC_URI+=" verify-sig? ( ${patch_url}.sig )" + + # Add in the mirror URL too. + SRC_URI+=" ${patch_url/${upstream_url_base}/${mirror_url_base}}" + SRC_URI+=" verify-sig? ( ${patch_url/${upstream_url_base}/${mirror_url_base}}.sig )" + + MY_PATCHES+=( "${DISTDIR}"/${mangled_patch_ver} ) + done + + unset my_p patch_url my_patch_index upstream_url_base mirror_url_base + fi +fi + +LICENSE="GPL-3+" +SLOT="0/8" # subslot matches SONAME major +if (( PLEVEL >= 0 )); then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi +IUSE="static-libs +unicode utils" + +RDEPEND=">=sys-libs/ncurses-5.9-r3:=[static-libs?,unicode(+)?,${MULTILIB_USEDEP}]" +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig + verify-sig? ( sec-keys/openpgp-keys-chetramey ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-5.0-no_rpath.patch + "${FILESDIR}"/${PN}-7.0-headers.patch + "${FILESDIR}"/${PN}-8.0-headers.patch + + # TODO: rebase + #"${FILESDIR}"/${PN}-8.0-darwin-shlib-versioning.patch +) + +src_unpack() { + local patch + + if [[ ${PV} == 9999 ]]; then + git-r3_src_unpack + elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then + default + else + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig} + + for patch in "${MY_PATCHES[@]}"; do + verify-sig_verify_detached "${patch}"{,.sig} + done + fi + + unpack "${MY_P}.tar.gz" + + if [[ ${GENTOO_PATCH_VER} ]]; then + unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz" + fi + fi +} + +src_prepare() { + (( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}" + + default + + #(( PLEVEL < 0 )) && eautoreconf + + if use prefix && [[ ! -x "${BROOT}"/usr/bin/pkg-config ]] ; then + # If we're bootstrapping, make a guess. We don't have pkg-config + # around yet. bug #818103. + # Incorrectly populating this leads to underlinked libreadline. + local ncurses_libs + local ncurses_libs_suffix=$(usex unicode w '') + + ncurses_libs="-lncurses${ncurses_libs_suffix}" + + if has_version "sys-libs/ncurses[tinfo(+)]" ; then + ncurses_libs+=" -ltinfo${ncurses_libs_suffix}" + fi + else + # Force ncurses linking, bug #71420. + # Use pkg-config to get the right values, bug #457558. + local ncurses_libs=$($(tc-getPKG_CONFIG) ncurses$(usex unicode w '') --libs) + fi + + sed -i \ + -e "/^SHLIB_LIBS=/s:=.*:='${ncurses_libs}':" \ + support/shobj-conf || die + sed -i \ + -e "/^[[:space:]]*LIBS=.-lncurses/s:-lncurses:${ncurses_libs}:" \ + examples/rlfe/configure || die + + # Fix building under Gentoo/FreeBSD; upstream FreeBSD deprecated + # objformat for years, so we don't want to rely on that. + sed -i -e '/objformat/s:if .*; then:if true; then:' support/shobj-conf || die + + # For local readline headers + ln -s ../.. examples/rlfe/readline || die +} + +src_configure() { + # Fix implicit decls with widechar funcs + append-cppflags -D_GNU_SOURCE + # https://lists.gnu.org/archive/html/bug-readline/2010-07/msg00013.html + append-cppflags -Dxrealloc=_rl_realloc -Dxmalloc=_rl_malloc -Dxfree=_rl_free + + # Make sure configure picks a better ar than `ar`, bug #484866 + export ac_cv_prog_AR="$(tc-getAR)" + + # Force the test since we used sed above to force it. + export bash_cv_termcap_lib=ncurses + + # Control cross-compiling cases when we know the right answer. + # In cases where the C library doesn't support wide characters, readline + # itself won't work correctly, so forcing the answer below should be OK. + if tc-is-cross-compiler ; then + export bash_cv_func_sigsetjmp="present" + export bash_cv_func_ctype_nonascii="yes" + # bug #503312 + export bash_cv_wcwidth_broken="no" + fi + + # This is for rlfe, but we need to make sure LDFLAGS doesn't change + # so we can re-use the config cache file between the two. + append-ldflags -L. + + multilib-minimal_src_configure +} + +multilib_src_configure() { + local myeconfargs=( + --cache-file="${BUILD_DIR}"/config.cache + --with-curses + $(use_enable static-libs static) + ) + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" + + if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then + # Code is full of AC_TRY_RUN() + mkdir -p examples/rlfe || die + cd examples/rlfe || die + + ECONF_SOURCE="${S}"/examples/rlfe econf --cache-file="${BUILD_DIR}"/config.cache + fi +} + +multilib_src_compile() { + emake + + if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then + # Code is full of AC_TRY_RUN() + cd examples/rlfe || die + local l + for l in readline history ; do + ln -s ../../shlib/lib${l}$(get_libname)* lib${l}$(get_libname) || die + ln -s ../../lib${l}.a lib${l}.a || die + done + emake + fi +} + +multilib_src_install() { + default + + if multilib_is_native_abi ; then + if use utils && ! tc-is-cross-compiler; then + dobin examples/rlfe/rlfe + fi + fi +} + +multilib_src_install_all() { + HTML_DOCS="doc/history.html doc/readline.html doc/rluserman.html" einstalldocs + + dodoc USAGE + docinto ps + dodoc doc/*.ps +} +pkg_preinst() { + # bug #29865 + # Reappeared in bug #595324 with paludis so keeping this for now... + preserve_old_lib \ + /$(get_libdir)/lib{history,readline}$(get_libname 4) \ + /$(get_libdir)/lib{history,readline}$(get_libname 5) \ + /$(get_libdir)/lib{history,readline}$(get_libname 6) \ + /$(get_libdir)/lib{history,readline}$(get_libname 7) +} + +pkg_postinst() { + preserve_old_lib_notify \ + /$(get_libdir)/lib{history,readline}$(get_libname 4) \ + /$(get_libdir)/lib{history,readline}$(get_libname 5) \ + /$(get_libdir)/lib{history,readline}$(get_libname 6) \ + /$(get_libdir)/lib{history,readline}$(get_libname 7) +}