diff --git a/sdk_container/src/third_party/portage-stable/.github/workflows/packages-list b/sdk_container/src/third_party/portage-stable/.github/workflows/packages-list
index 3891295dea..1d96c89fbe 100644
--- a/sdk_container/src/third_party/portage-stable/.github/workflows/packages-list
+++ b/sdk_container/src/third_party/portage-stable/.github/workflows/packages-list
@@ -1,11 +1,15 @@
# Please keep the list sorted!
+app-alternatives/awk
+app-alternatives/yacc
+
app-arch/bzip2
app-arch/cpio
app-arch/unzip
app-arch/xz-utils
app-crypt/adcli
+app-crypt/mit-krb5
app-editors/vim
app-editors/vim-core
@@ -18,8 +22,10 @@ dev-db/sqlite
dev-lang/duktape
dev-lang/perl
+dev-lang/python
dev-libs/boost
+dev-libs/cJSON
dev-libs/cyrus-sasl
dev-libs/expat
dev-libs/glib
@@ -35,7 +41,7 @@ dev-libs/oniguruma
dev-python/fasteners
-dev-util/boost-build
+dev-util/b2
dev-util/bpftool
dev-util/catalyst
dev-util/checkbashisms
@@ -114,6 +120,7 @@ net-dns/bind-tools
net-fs/cifs-utils
net-libs/gnutls
+net-libs/libpcap
net-misc/bridge-utils
net-misc/curl
@@ -167,4 +174,3 @@ sys-libs/zlib
virtual/libcrypt
virtual/pkgconfig
-virtual/yacc
diff --git a/sdk_container/src/third_party/portage-stable/app-alternatives/awk/awk-1.ebuild b/sdk_container/src/third_party/portage-stable/app-alternatives/awk/awk-1.ebuild
new file mode 100644
index 0000000000..cef6aea276
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/app-alternatives/awk/awk-1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Virtual for awk implementation"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+LICENSE="metapackage"
+
+RDEPEND="
+ || (
+ >=sys-apps/gawk-4.0.1-r1
+ sys-apps/mawk
+ sys-apps/nawk
+ sys-apps/busybox
+ )"
diff --git a/sdk_container/src/third_party/portage-stable/app-alternatives/awk/awk-2.ebuild b/sdk_container/src/third_party/portage-stable/app-alternatives/awk/awk-2.ebuild
new file mode 100644
index 0000000000..c76362361b
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/app-alternatives/awk/awk-2.ebuild
@@ -0,0 +1,62 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="/bin/awk and /usr/bin/awk symlinks"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Base/Alternatives"
+SRC_URI=""
+S=${WORKDIR}
+
+LICENSE="CC0-1.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="busybox +gawk mawk nawk split-usr"
+REQUIRED_USE="^^ ( busybox gawk mawk nawk )"
+
+RDEPEND="
+ busybox? ( sys-apps/busybox )
+ gawk? ( sys-apps/gawk )
+ mawk? ( sys-apps/mawk )
+ nawk? ( sys-apps/nawk )
+ !app-eselect/eselect-awk
+"
+
+src_install() {
+ local root_prefix=
+ use split-usr && root_prefix=../../bin/
+
+ # We could consider setting AWK=... like we do for yacc & lex,
+ # but it would need some testing with a fair amount of packages first,
+ # as autoconf prefers gawk.
+ if use busybox; then
+ dosym "${root_prefix}busybox" /usr/bin/awk
+ newman - awk.1 <<<".so busybox.1"
+ elif use gawk; then
+ dosym gawk /usr/bin/awk
+ newman - awk.1 <<<".so gawk.1"
+ elif use mawk; then
+ dosym mawk /usr/bin/awk
+ newman - awk.1 <<<".so mawk.1"
+ elif use nawk; then
+ dosym nawk /usr/bin/awk
+ newman - awk.1 <<<".so nawk.1"
+ else
+ die "Invalid USE flag combination (broken REQUIRED_USE?)"
+ fi
+
+ if use split-usr; then
+ dosym ../usr/bin/awk /bin/awk
+ fi
+}
+
+pkg_postrm() {
+ # make sure we don't leave the user without the symlinks, since
+ # they've not been owned by any other package
+ if [[ ! -h ${EROOT}/usr/bin/awk ]]; then
+ ln -s gawk "${EROOT}/usr/bin/awk" || die
+ fi
+ if [[ ! -h ${EROOT}/bin/awk ]]; then
+ ln -s ../usr/bin/awk "${EROOT}/bin/awk" || die
+ fi
+}
diff --git a/sdk_container/src/third_party/portage-stable/app-alternatives/awk/metadata.xml b/sdk_container/src/third_party/portage-stable/app-alternatives/awk/metadata.xml
new file mode 100644
index 0000000000..0cf5fbf0d2
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/app-alternatives/awk/metadata.xml
@@ -0,0 +1,31 @@
+
+
+
+
+ junghans@gentoo.org
+ Christoph Junghans
+
+
+ base-system@gentoo.org
+ Gentoo Base System
+
+
+ mgorny@gentoo.org
+ Michał Górny
+
+
+
diff --git a/sdk_container/src/third_party/portage-stable/app-alternatives/yacc/metadata.xml b/sdk_container/src/third_party/portage-stable/app-alternatives/yacc/metadata.xml
new file mode 100644
index 0000000000..0672d9fe1a
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/app-alternatives/yacc/metadata.xml
@@ -0,0 +1,23 @@
+
+
+
+
+ base-system@gentoo.org
+ Gentoo Base System
+
+
+ mgorny@gentoo.org
+ Michał Górny
+
+
+
diff --git a/sdk_container/src/third_party/portage-stable/virtual/yacc/yacc-0.ebuild b/sdk_container/src/third_party/portage-stable/app-alternatives/yacc/yacc-0.ebuild
similarity index 86%
rename from sdk_container/src/third_party/portage-stable/virtual/yacc/yacc-0.ebuild
rename to sdk_container/src/third_party/portage-stable/app-alternatives/yacc/yacc-0.ebuild
index d6275036ab..40f51b6795 100644
--- a/sdk_container/src/third_party/portage-stable/virtual/yacc/yacc-0.ebuild
+++ b/sdk_container/src/third_party/portage-stable/app-alternatives/yacc/yacc-0.ebuild
@@ -4,7 +4,9 @@
EAPI=7
DESCRIPTION="Virtual for yacc (yet another compiler compiler)"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+LICENSE="metapackage"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
diff --git a/sdk_container/src/third_party/portage-stable/app-alternatives/yacc/yacc-1-r2.ebuild b/sdk_container/src/third_party/portage-stable/app-alternatives/yacc/yacc-1-r2.ebuild
new file mode 100644
index 0000000000..e748c4e0ab
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/app-alternatives/yacc/yacc-1-r2.ebuild
@@ -0,0 +1,56 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="yacc symlinks"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Base/Alternatives"
+SRC_URI=""
+S=${WORKDIR}
+
+LICENSE="CC0-1.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="+bison byacc reference"
+REQUIRED_USE="^^ ( bison byacc reference )"
+
+RDEPEND="
+ bison? ( >=sys-devel/bison-3.8.2-r1 )
+ byacc? ( dev-util/byacc )
+ reference? ( >=dev-util/yacc-1.9.1-r7 )
+ !
-
- base-system@gentoo.org
- Gentoo Base System
-
-
-
- cpe:/a:tukaani:xz
-
+
+ base-system@gentoo.org
+ Gentoo Base System
+
+
+
+ cpe:/a:tukaani:xz
+ lzmautils
+
diff --git a/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.2.8.ebuild b/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.2.8.ebuild
index 651ac2f1d2..fb35eaff73 100644
--- a/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.2.8.ebuild
+++ b/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.2.8.ebuild
@@ -19,8 +19,13 @@ else
inherit verify-sig
MY_P="${PN/-utils}-${PV/_}"
- SRC_URI="https://tukaani.org/xz/${MY_P}.tar.gz"
- SRC_URI+=" verify-sig? ( https://tukaani.org/xz/${MY_P}.tar.gz.sig )"
+ SRC_URI="
+ mirror://sourceforge/lzmautils/${MY_P}.tar.gz
+ https://tukaani.org/xz/${MY_P}.tar.gz
+ verify-sig? (
+ https://tukaani.org/xz/${MY_P}.tar.gz.sig
+ )
+ "
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
diff --git a/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.2.7.ebuild b/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.2.9.ebuild
similarity index 86%
rename from sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.2.7.ebuild
rename to sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.2.9.ebuild
index 651ac2f1d2..92b43d373c 100644
--- a/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.2.7.ebuild
+++ b/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.2.9.ebuild
@@ -19,11 +19,16 @@ else
inherit verify-sig
MY_P="${PN/-utils}-${PV/_}"
- SRC_URI="https://tukaani.org/xz/${MY_P}.tar.gz"
- SRC_URI+=" verify-sig? ( https://tukaani.org/xz/${MY_P}.tar.gz.sig )"
+ SRC_URI="
+ mirror://sourceforge/lzmautils/${MY_P}.tar.gz
+ https://tukaani.org/xz/${MY_P}.tar.gz
+ verify-sig? (
+ https://tukaani.org/xz/${MY_P}.tar.gz.sig
+ )
+ "
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
S="${WORKDIR}/${MY_P}"
diff --git a/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.3.4_alpha.ebuild b/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.3.5_beta.ebuild
similarity index 94%
rename from sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.3.4_alpha.ebuild
rename to sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.3.5_beta.ebuild
index 650633ad35..53811b5967 100644
--- a/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.3.4_alpha.ebuild
+++ b/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.3.5_beta.ebuild
@@ -19,8 +19,13 @@ else
inherit verify-sig
MY_P="${PN/-utils}-${PV/_}"
- SRC_URI="https://tukaani.org/xz/${MY_P}.tar.gz"
- SRC_URI+=" verify-sig? ( https://tukaani.org/xz/${MY_P}.tar.gz.sig )"
+ SRC_URI="
+ mirror://sourceforge/lzmautils/${MY_P}.tar.gz
+ https://tukaani.org/xz/${MY_P}.tar.gz
+ verify-sig? (
+ https://tukaani.org/xz/${MY_P}.tar.gz.sig
+ )
+ "
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
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 650633ad35..53811b5967 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
@@ -19,8 +19,13 @@ else
inherit verify-sig
MY_P="${PN/-utils}-${PV/_}"
- SRC_URI="https://tukaani.org/xz/${MY_P}.tar.gz"
- SRC_URI+=" verify-sig? ( https://tukaani.org/xz/${MY_P}.tar.gz.sig )"
+ SRC_URI="
+ mirror://sourceforge/lzmautils/${MY_P}.tar.gz
+ https://tukaani.org/xz/${MY_P}.tar.gz
+ verify-sig? (
+ https://tukaani.org/xz/${MY_P}.tar.gz.sig
+ )
+ "
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/Manifest b/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/Manifest
index 4bf3915200..fcb575f401 100644
--- a/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/Manifest
+++ b/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/Manifest
@@ -1,2 +1 @@
-DIST krb5-1.19.2.tar.gz 8741053 BLAKE2B 963722721201e75381c91a2af6e982f569a5b1602beb2d1ded83d35f6f914235a6ed91e5d54f56c97e94921a32ed27c49aded258327966ee13d39485208c38d8 SHA512 b90d6ed0e1e8a87eb5cb2c36d88b823a6a6caabf85e5d419adb8a930f7eea09a5f8491464e7e454cca7ba88be09d19415962fe0036ad2e31fc584f9fc0bbd470
-DIST krb5-1.19.3.tar.gz 8741343 BLAKE2B 79e68237ee82affa85299060c509e303453c0fab965adc6b9ed305ab64a1f73bd51e65df1b3faadc60815cd506ffefaeed535765ca060d393a9141812f85b48a SHA512 18235440d6f7d8a72c5d7ca5cd8c6465e8adf091d85c483225c7b00d64b4688c1c7924cb800c2fc17e590b2709f1a9de48e6ec79f6debd11dcb7d6fa16c6f351
+DIST krb5-1.20.1.tar.gz 8661660 BLAKE2B ead16f8b1aec8bba3776628b74257c9aec891770c1fa6d5c5e66275db5f078ca59c9944cd2b017453b777ce080f8e5a322f735fab77691479cfad7b881b92830 SHA512 6f57479f13f107cd84f30de5c758eb6b9fc59171329c13e5da6073b806755f8d163eb7bd84767ea861ad6458ea0c9eeb00ee044d3bcad01ef136e9888564b6a2
diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/files/mit-krb5-1.20-missing-time-include.patch b/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/files/mit-krb5-1.20-missing-time-include.patch
new file mode 100644
index 0000000000..a8a4956991
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/files/mit-krb5-1.20-missing-time-include.patch
@@ -0,0 +1,20 @@
+https://github.com/krb5/krb5/commit/c3958cec43b598b25484b9805224c56f25f7a755
+https://bugs.gentoo.org/854561
+
+From: Greg Hudson
+Date: Tue, 29 Mar 2022 16:27:55 -0400
+Subject: [PATCH] Include time.h in kdb.h
+
+kdb.h uses time_t, and therefore must include to ensure its
+definition. Noticed when building t_sort_key_data.c on macOS.
+--- a/include/kdb.h
++++ b/include/kdb.h
+@@ -65,6 +65,7 @@
+ #ifndef KRB5_KDB5__
+ #define KRB5_KDB5__
+
++#include
+ #include
+
+ /* This version will be incremented when incompatible changes are made to the
+
diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/files/mit-krb5-1.20.1-autoconf-2.72.patch b/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/files/mit-krb5-1.20.1-autoconf-2.72.patch
new file mode 100644
index 0000000000..b55193bcc7
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/files/mit-krb5-1.20.1-autoconf-2.72.patch
@@ -0,0 +1,31 @@
+https://github.com/krb5/krb5/commit/d864d740d019fdf2c640460f2aa2760c7fa4d5e9
+
+From d864d740d019fdf2c640460f2aa2760c7fa4d5e9 Mon Sep 17 00:00:00 2001
+From: Julien Rische
+Date: Thu, 17 Nov 2022 15:01:24 +0100
+Subject: [PATCH] Fix aclocal.m4 syntax error for autoconf 2.72
+
+An incorrect closure inside KRB5_AC_INET6 is innocuous with autoconf
+versions up to 2.71, but will cause an error at configure time with
+the forthcoming autoconf 2.72.
+
+[ghudson@mit.edu: added more context to commit message]
+
+ticket: 9077 (new)
+tags: pullup
+target_version: 1.20-next
+target_version: 1.19-next
+--- a/aclocal.m4
++++ b/aclocal.m4
+@@ -409,8 +409,8 @@ else
+ [[struct sockaddr_in6 in;
+ AF_INET6;
+ IN6_IS_ADDR_LINKLOCAL(&in.sin6_addr);]])],
+- [krb5_cv_inet6=yes], [krb5_cv_inet6=no])])
+-fi
++ [krb5_cv_inet6=yes], [krb5_cv_inet6=no])
++fi])
+ AC_MSG_RESULT($krb5_cv_inet6)
+ if test "$krb5_cv_inet6" = no && test "$ac_cv_func_inet_ntop" = yes; then
+ AC_MSG_CHECKING(for IPv6 compile-time support with -DINET6)
+
diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/files/mit-krb5-CVE-2021-37750.patch b/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/files/mit-krb5-CVE-2021-37750.patch
deleted file mode 100644
index 2f4c949e9f..0000000000
--- a/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/files/mit-krb5-CVE-2021-37750.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From d775c95af7606a51bf79547a94fa52ddd1cb7f49 Mon Sep 17 00:00:00 2001
-From: Greg Hudson
-Date: Tue, 3 Aug 2021 01:15:27 -0400
-Subject: [PATCH] Fix KDC null deref on TGS inner body null server
-
-After the KDC decodes a FAST inner body, it does not check for a null
-server. Prior to commit 39548a5b17bbda9eeb63625a201cfd19b9de1c5b this
-would typically result in an error from krb5_unparse_name(), but with
-the addition of get_local_tgt() it results in a null dereference. Add
-a null check.
-
-Reported by Joseph Sutton of Catalyst.
-
-CVE-2021-37750:
-
-In MIT krb5 releases 1.14 and later, an authenticated attacker can
-cause a null dereference in the KDC by sending a FAST TGS request with
-no server field.
-
-ticket: 9008 (new)
-tags: pullup
-target_version: 1.19-next
-target_version: 1.18-next
----
- src/kdc/do_tgs_req.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/src/kdc/do_tgs_req.c b/src/kdc/do_tgs_req.c
-index 582e497cc9..32dc65fa8e 100644
---- a/kdc/do_tgs_req.c
-+++ b/kdc/do_tgs_req.c
-@@ -204,6 +204,11 @@ process_tgs_req(krb5_kdc_req *request, krb5_data *pkt,
- status = "FIND_FAST";
- goto cleanup;
- }
-+ if (sprinc == NULL) {
-+ status = "NULL_SERVER";
-+ errcode = KRB5KDC_ERR_S_PRINCIPAL_UNKNOWN;
-+ goto cleanup;
-+ }
-
- errcode = get_local_tgt(kdc_context, &sprinc->realm, header_server,
- &local_tgt, &local_tgt_storage, &local_tgt_key);
diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/metadata.xml b/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/metadata.xml
index af3905a6da..53f75a3481 100644
--- a/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/metadata.xml
+++ b/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/metadata.xml
@@ -12,11 +12,12 @@
which depends on kerberos
Enable for the keyring ccache using keyutils
- Add support for using dev-db/lmdb for lookup tables
+ Add support for using dev-db/lmdb for lookup tables
Enable pkinit support for the initial ticket
Enable support for ldap as a database backend
cpe:/a:mit:kerberos
+ krb5/krb5
diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/mit-krb5-1.19.2-r4.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/mit-krb5-1.19.2-r4.ebuild
deleted file mode 100644
index a88217f515..0000000000
--- a/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/mit-krb5-1.19.2-r4.ebuild
+++ /dev/null
@@ -1,162 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-inherit autotools flag-o-matic multilib-minimal python-any-r1 systemd toolchain-funcs
-
-MY_P="${P/mit-}"
-P_DIR=$(ver_cut 1-2)
-DESCRIPTION="MIT Kerberos V"
-HOMEPAGE="https://web.mit.edu/kerberos/www/"
-SRC_URI="https://web.mit.edu/kerberos/dist/krb5/${P_DIR}/${MY_P}.tar.gz"
-
-LICENSE="openafs-krb5-a BSD MIT OPENLDAP BSD-2 HPND BSD-4 ISC RSA CC-BY-SA-3.0 || ( BSD-2 GPL-2+ )"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="cpu_flags_x86_aes doc +keyutils lmdb nls openldap +pkinit selinux +threads test xinetd"
-
-# some tests requires network access
-RESTRICT="test"
-
-DEPEND="
- !!app-crypt/heimdal
- >=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}]
- || (
- >=dev-libs/libverto-0.2.5[libev,${MULTILIB_USEDEP}]
- >=dev-libs/libverto-0.2.5[libevent,${MULTILIB_USEDEP}]
- )
- keyutils? ( >=sys-apps/keyutils-1.5.8:=[${MULTILIB_USEDEP}] )
- lmdb? ( dev-db/lmdb:= )
- nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
- openldap? ( >=net-nds/openldap-2.4.38-r1:=[${MULTILIB_USEDEP}] )
- pkinit? ( >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}] )
- xinetd? ( sys-apps/xinetd )
- "
-BDEPEND="
- ${PYTHON_DEPS}
- virtual/yacc
- cpu_flags_x86_aes? (
- amd64? ( dev-lang/yasm )
- x86? ( dev-lang/yasm )
- )
- doc? ( virtual/latex-base )
- test? (
- ${PYTHON_DEPS}
- dev-lang/tcl:0
- dev-util/dejagnu
- dev-util/cmocka
- )"
-RDEPEND="${DEPEND}
- selinux? ( sec-policy/selinux-kerberos )"
-
-S=${WORKDIR}/${MY_P}/src
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.12_warn_cflags.patch"
- "${FILESDIR}/${PN}-config_LDFLAGS-r1.patch"
- "${FILESDIR}/${PN}_dont_create_rundir.patch"
- "${FILESDIR}/${PN}-1.18.2-krb5-config.patch"
- "${FILESDIR}/${PN}-CVE-2021-37750.patch"
-)
-
-MULTILIB_CHOST_TOOLS=(
- /usr/bin/krb5-config
-)
-
-src_prepare() {
- default
- # Make sure we always use the system copies.
- rm -rf util/{et,ss,verto}
- sed -i 's:^[[:space:]]*util/verto$::' configure.ac || die
-
- eautoreconf
-}
-
-src_configure() {
- # QA
- append-flags -fno-strict-aliasing
- append-flags -fno-strict-overflow
-
- multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
- ECONF_SOURCE=${S} \
- AR="$(tc-getAR)" \
- WARN_CFLAGS="set" \
- econf \
- $(use_with openldap ldap) \
- "$(multilib_native_use_with test tcl "${EPREFIX}/usr")" \
- $(use_enable nls) \
- $(use_enable pkinit) \
- $(use_enable threads thread-support) \
- $(use_with lmdb) \
- $(use_with keyutils) \
- --without-hesiod \
- --enable-shared \
- --with-system-et \
- --with-system-ss \
- --enable-dns-for-realm \
- --enable-kdc-lookaside-cache \
- --with-system-verto \
- --disable-rpath
-}
-
-multilib_src_compile() {
- emake -j1
-}
-
-multilib_src_test() {
- multilib_is_native_abi && emake -j1 check
-}
-
-multilib_src_install() {
- emake \
- DESTDIR="${D}" \
- EXAMPLEDIR="${EPREFIX}/usr/share/doc/${PF}/examples" \
- install
-}
-
-multilib_src_install_all() {
- # default database dir
- keepdir /var/lib/krb5kdc
-
- cd ..
- dodoc README
-
- if use doc; then
- dodoc -r doc/html
- docinto pdf
- dodoc doc/pdf/*.pdf
- fi
-
- newinitd "${FILESDIR}"/mit-krb5kadmind.initd-r2 mit-krb5kadmind
- newinitd "${FILESDIR}"/mit-krb5kdc.initd-r2 mit-krb5kdc
- newinitd "${FILESDIR}"/mit-krb5kpropd.initd-r2 mit-krb5kpropd
- newconfd "${FILESDIR}"/mit-krb5kadmind.confd mit-krb5kadmind
- newconfd "${FILESDIR}"/mit-krb5kdc.confd mit-krb5kdc
- newconfd "${FILESDIR}"/mit-krb5kpropd.confd mit-krb5kpropd
-
- systemd_newunit "${FILESDIR}"/mit-krb5kadmind.service mit-krb5kadmind.service
- systemd_newunit "${FILESDIR}"/mit-krb5kdc.service mit-krb5kdc.service
- systemd_newunit "${FILESDIR}"/mit-krb5kpropd.service mit-krb5kpropd.service
- systemd_newunit "${FILESDIR}"/mit-krb5kpropd_at.service "mit-krb5kpropd@.service"
- systemd_newunit "${FILESDIR}"/mit-krb5kpropd.socket mit-krb5kpropd.socket
-
- insinto /etc
- newins "${ED}/usr/share/doc/${PF}/examples/krb5.conf" krb5.conf.example
- insinto /var/lib/krb5kdc
- newins "${ED}/usr/share/doc/${PF}/examples/kdc.conf" kdc.conf.example
-
- if use openldap ; then
- insinto /etc/openldap/schema
- doins "${S}/plugins/kdb/ldap/libkdb_ldap/kerberos.schema"
- fi
-
- if use xinetd ; then
- insinto /etc/xinetd.d
- newins "${FILESDIR}/kpropd.xinetd" kpropd
- fi
-}
diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/mit-krb5-1.19.3-r2.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/mit-krb5-1.20.1.ebuild
similarity index 86%
rename from sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/mit-krb5-1.19.3-r2.ebuild
rename to sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/mit-krb5-1.20.1.ebuild
index 00127c9aa4..014a0511af 100644
--- a/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/mit-krb5-1.19.3-r2.ebuild
+++ b/sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/mit-krb5-1.20.1.ebuild
@@ -3,8 +3,8 @@
EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
-inherit autotools flag-o-matic multilib-minimal python-any-r1 systemd toolchain-funcs
+PYTHON_COMPAT=( python3_{8..11} )
+inherit autotools python-any-r1 systemd toolchain-funcs multilib-minimal
MY_P="${P/mit-}"
P_DIR=$(ver_cut 1-2)
@@ -14,11 +14,10 @@ SRC_URI="https://web.mit.edu/kerberos/dist/krb5/${P_DIR}/${MY_P}.tar.gz"
LICENSE="openafs-krb5-a BSD MIT OPENLDAP BSD-2 HPND BSD-4 ISC RSA CC-BY-SA-3.0 || ( BSD-2 GPL-2+ )"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="cpu_flags_x86_aes doc +keyutils lmdb nls openldap +pkinit selinux +threads test xinetd"
-# some tests requires network access
-RESTRICT="test"
+RESTRICT="!test? ( test )"
DEPEND="
!!app-crypt/heimdal
@@ -36,18 +35,14 @@ DEPEND="
"
BDEPEND="
${PYTHON_DEPS}
- virtual/yacc
+ app-alternatives/yacc
cpu_flags_x86_aes? (
amd64? ( dev-lang/yasm )
x86? ( dev-lang/yasm )
)
doc? ( virtual/latex-base )
- test? (
- ${PYTHON_DEPS}
- dev-lang/tcl:0
- dev-util/dejagnu
- dev-util/cmocka
- )"
+ test? ( dev-util/cmocka )
+ "
RDEPEND="${DEPEND}
selinux? ( sec-policy/selinux-kerberos )"
@@ -58,6 +53,8 @@ PATCHES=(
"${FILESDIR}/${PN}-config_LDFLAGS-r1.patch"
"${FILESDIR}/${PN}_dont_create_rundir.patch"
"${FILESDIR}/${PN}-1.18.2-krb5-config.patch"
+ "${FILESDIR}/${PN}-1.20-missing-time-include.patch"
+ "${FILESDIR}/${PN}-1.20.1-autoconf-2.72.patch"
)
MULTILIB_CHOST_TOOLS=(
@@ -73,21 +70,12 @@ src_prepare() {
eautoreconf
}
-src_configure() {
- # QA
- append-flags -fno-strict-aliasing
- append-flags -fno-strict-overflow
-
- multilib-minimal_src_configure
-}
-
multilib_src_configure() {
ECONF_SOURCE=${S} \
AR="$(tc-getAR)" \
WARN_CFLAGS="set" \
econf \
$(use_with openldap ldap) \
- "$(multilib_native_use_with test tcl "${EPREFIX}/usr")" \
$(use_enable nls) \
$(use_enable pkinit) \
$(use_enable threads thread-support) \
diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim-core/Manifest b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/Manifest
index 7ce52533f4..c193a5b4d8 100644
--- a/sdk_container/src/third_party/portage-stable/app-editors/vim-core/Manifest
+++ b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/Manifest
@@ -1,5 +1,5 @@
DIST vim-9.0.0099.tar.gz 16712565 BLAKE2B b3277ebda0bb40601d995935422006d1a266bb862be612e69abd057a7342d13457ded5cb4743cf43a09b7d2001438f5a426ba12c30947bb7c193188c5fc13cf7 SHA512 ca0dea7b7fd78cf9c7cd4656611d066540f9d81ab17bcb75c79f0e989bdcfb769940ea29f75445c554b159e9eb3b2c4f9d77448254c3e4e4457b1bf721936498
-DIST vim-9.0.0399.tar.gz 16833387 BLAKE2B f9d6588920b49ef32b82d012e1c4f8a34dc505267b67027a3b4302dd99d7987645c29a91fdb234fffa873b342488b4d9c85d05d3fe7a332042781881a61bea5e SHA512 6b261bf3aaa355e7a42de1785b134bccc51086495578730b9bc3b8e048679caa3a901e576a360cba5f1aa4d164c7f162a3f916e945b3f5f71e893ea30e0ca826
-DIST vim-9.0.0655.tar.gz 16804127 BLAKE2B e021ff4dd370cdd9b39fb9df0a12309215abd780ec297760b92b6caf924882465b28f9ba65d94ad75a229eb01c8f393f24a29a11919a96d78bb6fb45ef2971e3 SHA512 aa267941e835eecbeeffa7989fb525bdf4269f84d9c88d135a26d74ab7d025487863405b6e0f1391023c30193a122ed3e85a7a71bd4dc48058f3fe3377798f38
DIST vim-9.0.0828.tar.gz 16782339 BLAKE2B 6b997c1c828338d64a8b204a1e232676ec075834b1b7e74c2fc671e315f9bf6026b0c419ebb3c31e7ce58dbca23828ca11d866b2bfcb73f8a86fb31fa0d51b00 SHA512 03f93515039a2f275a8fe6b84bbac5875ffff17768ab3201e111eba4897a2485fe4ccfe238151f393334c7a6ea77eddd8898f0b816e26dbdb884f4e6bcbd2943
+DIST vim-9.0.1000.tar.gz 16842747 BLAKE2B 85edab7d13daa3e84ef0aeb50e3e9bfd31f0634d8e480c105727b0c34318e0adf7f1276dcdac53df8fc416fd8dfb70377cd74ed570752a3e77f07a083fa6c113 SHA512 9d2b914a112948d77b92c8dcafc2f711a83c3fdaf35a28f7f606e77007b9320e2260a0f6b24fc875a817c33c012f077f89730b34e9f12d6f00795c5c806704c8
DIST vim-patches-vim-9.0.0049-patches.tar.gz 2743 BLAKE2B dff3e215b235e1cbc2c62b1af2d1414d10b794dbee9f5e7797fb3d34e00c2e065c339d4c82bf28aed53e0b5f2f8f1ee5c7ce69851cd63360788609bf144ac922 SHA512 7d5c64d674fa77048fdca7287072c0e488723133e254c10711dbadf750416c368725327ca9b76f332017bc70aa544a9baef671765eabf0d172d39921ffd7d942
+DIST vim-patches-vim-9.0.1000-patches.tar.bz2 3245 BLAKE2B 3bf3d0e314cc3f96d5d9675de196a62c4c8a72645d56ef94b80768571c99cba5cc556442e3bd2dfa8818460fd851fe7bd1ae15999af7225fb271b81c43105843 SHA512 2883441a2001bf7ce89a7f0862f780b71cc0164c8fcb8dbdf7040e1bcbcf408d138d3d77f308aa54c762e9975fa5ec89cfceeabbf721344dfc938870a363667a
diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.0.0655.ebuild b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.0.0655.ebuild
deleted file mode 100644
index 9412ba5165..0000000000
--- a/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.0.0655.ebuild
+++ /dev/null
@@ -1,230 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Please bump with app-editors/vim and app-editors/gvim
-
-VIM_VERSION="9.0"
-inherit bash-completion-r1 desktop flag-o-matic prefix toolchain-funcs vim-doc xdg-utils
-
-if [[ ${PV} == 9999* ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/vim/vim.git"
- EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV}
-else
- SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz
- https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-9.0.0049-patches.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-S="${WORKDIR}/vim-${PV}"
-
-DESCRIPTION="vim and gvim shared files"
-HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim"
-
-LICENSE="vim"
-SLOT="0"
-IUSE="nls acl minimal"
-
-# ncurses is only needed by ./configure, so no subslot operator required
-DEPEND=">=sys-libs/ncurses-5.2-r2:0"
-BDEPEND="sys-devel/autoconf"
-
-pkg_setup() {
- # people with broken alphabets run into trouble. bug #82186.
- unset LANG LC_ALL
- export LC_COLLATE="C"
-}
-
-src_prepare() {
- if [[ ${PV} != 9999* ]] ; then
- # Gentoo patches to fix runtime issues, cross-compile errors, etc
- eapply "${WORKDIR}"/vim-patches-vim-9.0.0049-patches
- fi
-
- # Fixup a script to use awk instead of nawk
- sed -i \
- -e '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \
- "${S}"/runtime/tools/mve.awk || die "sed failed"
-
- # See bug #77841. We remove this file after the tarball extraction.
- rm -v "${S}"/runtime/tools/vimspell.sh || die "rm failed"
-
- # Read vimrc and gvimrc from /etc/vim
- echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' >> "${S}"/src/feature.h || die
- echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' >> "${S}"/src/feature.h || die
-
- # Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
- # Hopefully this pattern won't break for a while at least.
- # This fixes bug #29398 (27 Sep 2003 agriffis)
- sed -i 's/\> "$c" || die "echo failed"
- done
-
- # Try to avoid sandbox problems. Bug #114475.
- if [[ -d "${S}"/src/po ]]; then
- sed -i -e \
- '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
- "${S}"/src/po/Makefile || die "sed failed"
- fi
-
- cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed"
-
- # Bug #378107 - Build properly with >=perl-core/ExtUtils-ParseXS-3.20.0
- sed -i -e \
- "s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \
- "${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
-
- # Fix bug #76331: -O3 causes problems, use -O2 instead. We'll do this for
- # everyone since previous flag filtering bugs have turned out to affect
- # multiple archs...
- replace-flags -O3 -O2
-
- # Fix bug #18245: Prevent "make" from the following chain:
- # (1) Notice configure.ac is newer than auto/configure
- # (2) Rebuild auto/configure
- # (3) Notice auto/configure is newer than auto/config.mk
- # (4) Run ./configure (with wrong args) to remake auto/config.mk
- sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
-
- # Remove src/auto/configure file.
- rm -v src/auto/configure || die "rm configure failed"
-
- eapply_user
-}
-
-src_configure() {
- # Fix bug #37354: Disallow -funroll-all-loops on amd64
- # Bug 57859 suggests that we want to do this for all archs
- filter-flags -funroll-all-loops
-
- emake -j1 -C src autoconf
-
- # This should fix a sandbox violation (see bug 24447). The hvc
- # things are for ppc64, see bug 86433.
- for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do
- if [[ -e "${file}" ]]; then
- addwrite ${file}
- fi
- done
-
- # Let Portage do the stripping. Some people like that.
- export ac_cv_prog_STRIP="$(type -P true ) faking strip"
-
- local myconf=(
- --with-modified-by=Gentoo-${PVR}
- --enable-gui=no
- --without-x
- --disable-darwin
- --disable-perlinterp
- --disable-pythoninterp
- --disable-rubyinterp
- --disable-gpm
- --disable-selinux
- $(use_enable nls)
- $(use_enable acl)
- )
-
- # Keep Gentoo Prefix env contained within the EPREFIX
- use prefix && myconf+=( --without-local-dir )
-
- if tc-is-cross-compiler ; then
- export vim_cv_getcwd_broken=no \
- vim_cv_memmove_handles_overlap=yes \
- vim_cv_stat_ignores_slash=yes \
- vim_cv_terminfo=yes \
- vim_cv_toupper_broken=no
- fi
-
- econf "${myconf[@]}"
-}
-
-src_compile() {
- emake -j1 -C src auto/osdef.h objects
- emake tools
-}
-
-src_test() { :; }
-
-src_install() {
- local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
-
- dodir /usr/{bin,share/{man/man1,vim}}
- emake -C src \
- installruntime \
- installmanlinks \
- installmacros \
- installtutor \
- installtutorbin \
- installtools \
- install-languages \
- DESTDIR="${D}" \
- BINDIR="${EPREFIX}"/usr/bin \
- MANDIR="${EPREFIX}"/usr/share/man \
- DATADIR="${EPREFIX}"/usr/share
-
- keepdir ${vimfiles}/keymap
-
- # default vimrc is installed by vim-core since it applies to
- # both vim and gvim
- insinto /etc/vim/
- newins "${FILESDIR}"/vimrc-r6 vimrc
- eprefixify "${ED}"/etc/vim/vimrc
-
- if use minimal; then
- # To save space, install only a subset of the files.
- # Helps minimalize the livecd, bug 65144.
- rm -rv "${ED}${vimfiles}"/{compiler,doc,ftplugin,indent} || die
- rm -rv "${ED}${vimfiles}"/{macros,print,tools,tutor} || die
- rm -v "${ED}"/usr/bin/vimtutor || die
-
- for f in "${ED}${vimfiles}"/colors/*.vim; do
- if [[ ${f} != */@(default).vim ]] ; then
- printf '%s\0' "${f}"
- fi
- done | xargs -0 rm -f || die
-
- for f in "${ED}${vimfiles}"/syntax/*.vim; do
- if [[ ${f} != */@(conf|crontab|fstab|inittab|resolv|sshdconfig|syntax|nosyntax|synload).vim ]] ; then
- printf '%s\0' "${f}"
- fi
- done | xargs -0 rm -f || die
- fi
-
- newbashcomp "${FILESDIR}"/xxd-completion xxd
-
- # install gvim icon since both vim/gvim desktop files reference it
- doicon -s scalable "${FILESDIR}"/gvim.svg
-}
-
-pkg_postinst() {
- # update documentation tags (from vim-doc.eclass)
- update_vim_helptags
-
- # update icon cache
- xdg_icon_cache_update
-}
-
-pkg_postrm() {
- # Update documentation tags (from vim-doc.eclass)
- update_vim_helptags
-
- # update icon cache
- xdg_icon_cache_update
-}
diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.0.0399.ebuild b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.0.1000.ebuild
similarity index 97%
rename from sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.0.0399.ebuild
rename to sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.0.1000.ebuild
index 9412ba5165..a4e8eacc26 100644
--- a/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.0.0399.ebuild
+++ b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.0.1000.ebuild
@@ -6,6 +6,7 @@ EAPI=8
# Please bump with app-editors/vim and app-editors/gvim
VIM_VERSION="9.0"
+VIM_PATCHES_VERSION="9.0.1000"
inherit bash-completion-r1 desktop flag-o-matic prefix toolchain-funcs vim-doc xdg-utils
if [[ ${PV} == 9999* ]] ; then
@@ -14,7 +15,7 @@ if [[ ${PV} == 9999* ]] ; then
EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV}
else
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz
- https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-9.0.0049-patches.tar.gz"
+ https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
S="${WORKDIR}/vim-${PV}"
@@ -39,7 +40,7 @@ pkg_setup() {
src_prepare() {
if [[ ${PV} != 9999* ]] ; then
# Gentoo patches to fix runtime issues, cross-compile errors, etc
- eapply "${WORKDIR}"/vim-patches-vim-9.0.0049-patches
+ eapply "${WORKDIR}"/vim-patches-vim-${VIM_PATCHES_VERSION}-patches
fi
# Fixup a script to use awk instead of nawk
diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9999.ebuild b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9999.ebuild
index 9412ba5165..5ec3c7adc2 100644
--- a/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9999.ebuild
+++ b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9999.ebuild
@@ -6,6 +6,7 @@ EAPI=8
# Please bump with app-editors/vim and app-editors/gvim
VIM_VERSION="9.0"
+VIM_PATCHES_VERSION="9.0.1000"
inherit bash-completion-r1 desktop flag-o-matic prefix toolchain-funcs vim-doc xdg-utils
if [[ ${PV} == 9999* ]] ; then
@@ -14,7 +15,7 @@ if [[ ${PV} == 9999* ]] ; then
EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV}
else
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz
- https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-9.0.0049-patches.tar.gz"
+ https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
S="${WORKDIR}/vim-${PV}"
diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim/Manifest b/sdk_container/src/third_party/portage-stable/app-editors/vim/Manifest
index 7ce52533f4..c193a5b4d8 100644
--- a/sdk_container/src/third_party/portage-stable/app-editors/vim/Manifest
+++ b/sdk_container/src/third_party/portage-stable/app-editors/vim/Manifest
@@ -1,5 +1,5 @@
DIST vim-9.0.0099.tar.gz 16712565 BLAKE2B b3277ebda0bb40601d995935422006d1a266bb862be612e69abd057a7342d13457ded5cb4743cf43a09b7d2001438f5a426ba12c30947bb7c193188c5fc13cf7 SHA512 ca0dea7b7fd78cf9c7cd4656611d066540f9d81ab17bcb75c79f0e989bdcfb769940ea29f75445c554b159e9eb3b2c4f9d77448254c3e4e4457b1bf721936498
-DIST vim-9.0.0399.tar.gz 16833387 BLAKE2B f9d6588920b49ef32b82d012e1c4f8a34dc505267b67027a3b4302dd99d7987645c29a91fdb234fffa873b342488b4d9c85d05d3fe7a332042781881a61bea5e SHA512 6b261bf3aaa355e7a42de1785b134bccc51086495578730b9bc3b8e048679caa3a901e576a360cba5f1aa4d164c7f162a3f916e945b3f5f71e893ea30e0ca826
-DIST vim-9.0.0655.tar.gz 16804127 BLAKE2B e021ff4dd370cdd9b39fb9df0a12309215abd780ec297760b92b6caf924882465b28f9ba65d94ad75a229eb01c8f393f24a29a11919a96d78bb6fb45ef2971e3 SHA512 aa267941e835eecbeeffa7989fb525bdf4269f84d9c88d135a26d74ab7d025487863405b6e0f1391023c30193a122ed3e85a7a71bd4dc48058f3fe3377798f38
DIST vim-9.0.0828.tar.gz 16782339 BLAKE2B 6b997c1c828338d64a8b204a1e232676ec075834b1b7e74c2fc671e315f9bf6026b0c419ebb3c31e7ce58dbca23828ca11d866b2bfcb73f8a86fb31fa0d51b00 SHA512 03f93515039a2f275a8fe6b84bbac5875ffff17768ab3201e111eba4897a2485fe4ccfe238151f393334c7a6ea77eddd8898f0b816e26dbdb884f4e6bcbd2943
+DIST vim-9.0.1000.tar.gz 16842747 BLAKE2B 85edab7d13daa3e84ef0aeb50e3e9bfd31f0634d8e480c105727b0c34318e0adf7f1276dcdac53df8fc416fd8dfb70377cd74ed570752a3e77f07a083fa6c113 SHA512 9d2b914a112948d77b92c8dcafc2f711a83c3fdaf35a28f7f606e77007b9320e2260a0f6b24fc875a817c33c012f077f89730b34e9f12d6f00795c5c806704c8
DIST vim-patches-vim-9.0.0049-patches.tar.gz 2743 BLAKE2B dff3e215b235e1cbc2c62b1af2d1414d10b794dbee9f5e7797fb3d34e00c2e065c339d4c82bf28aed53e0b5f2f8f1ee5c7ce69851cd63360788609bf144ac922 SHA512 7d5c64d674fa77048fdca7287072c0e488723133e254c10711dbadf750416c368725327ca9b76f332017bc70aa544a9baef671765eabf0d172d39921ffd7d942
+DIST vim-patches-vim-9.0.1000-patches.tar.bz2 3245 BLAKE2B 3bf3d0e314cc3f96d5d9675de196a62c4c8a72645d56ef94b80768571c99cba5cc556442e3bd2dfa8818460fd851fe7bd1ae15999af7225fb271b81c43105843 SHA512 2883441a2001bf7ce89a7f0862f780b71cc0164c8fcb8dbdf7040e1bcbcf408d138d3d77f308aa54c762e9975fa5ec89cfceeabbf721344dfc938870a363667a
diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.0.0399.ebuild b/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.0.0399.ebuild
deleted file mode 100644
index 5ffcda64ba..0000000000
--- a/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.0.0399.ebuild
+++ /dev/null
@@ -1,370 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Please bump with app-editors/vim-core and app-editors/gvim
-
-VIM_VERSION="9.0"
-LUA_COMPAT=( lua5-{1..4} luajit )
-PYTHON_COMPAT=( python3_{8..11} )
-PYTHON_REQ_USE="threads(+)"
-USE_RUBY="ruby27 ruby30 ruby31"
-
-inherit vim-doc flag-o-matic bash-completion-r1 lua-single python-single-r1 ruby-single toolchain-funcs desktop xdg-utils
-
-if [[ ${PV} == 9999* ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/vim/vim.git"
-else
- SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz
- https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-9.0.0049-patches.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-
-DESCRIPTION="Vim, an improved vi-style text editor"
-HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim"
-
-LICENSE="vim"
-SLOT="0"
-IUSE="X acl crypt cscope debug gpm lua minimal nls perl python racket ruby selinux sound tcl terminal vim-pager"
-REQUIRED_USE="
- lua? ( ${LUA_REQUIRED_USE} )
- python? ( ${PYTHON_REQUIRED_USE} )
- vim-pager? ( !minimal )
-"
-
-RDEPEND="
- >=app-eselect/eselect-vi-1.1
- >=sys-libs/ncurses-5.2-r2:0=
- nls? ( virtual/libintl )
- acl? ( kernel_linux? ( sys-apps/acl ) )
- crypt? ( dev-libs/libsodium:= )
- cscope? ( dev-util/cscope )
- gpm? ( >=sys-libs/gpm-1.19.3 )
- lua? ( ${LUA_DEPS}
- $(lua_gen_impl_dep 'deprecated' lua5-1)
- )
- ~app-editors/vim-core-${PV}
- !> "${S}"/src/feature.h || die "echo failed"
- echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \
- >> "${S}"/src/feature.h || die "echo failed"
-
- # Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
- # Hopefully this pattern won't break for a while at least.
- # This fixes bug #29398 (27 Sep 2003 agriffis)
- sed -i -e \
- 's/\> "$c" || die "echo failed"
- done
-
- # conditionally make the manpager.sh script
- if use vim-pager; then
- cat > "${S}"/runtime/macros/manpager.sh <<-_EOF_ || die "cat EOF failed"
- #!/bin/sh
- sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\
- vim \\
- -c 'let no_plugin_maps = 1' \\
- -c 'set nolist nomod ft=man ts=8' \\
- -c 'let g:showmarks_enable=0' \\
- -c 'runtime! macros/less.vim' -
- _EOF_
- fi
-
- # Try to avoid sandbox problems. Bug #114475.
- if [[ -d "${S}"/src/po ]]; then
- sed -i -e \
- '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
- "${S}"/src/po/Makefile || die "sed failed"
- fi
-
- cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed"
-
- sed -i -e \
- "s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \
- "${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
-
- # Fix bug 18245: Prevent "make" from the following chain:
- # (1) Notice configure.ac is newer than auto/configure
- # (2) Rebuild auto/configure
- # (3) Notice auto/configure is newer than auto/config.mk
- # (4) Run ./configure (with wrong args) to remake auto/config.mk
- sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
- rm src/auto/configure || die "rm failed"
-
- eapply_user
-}
-
-src_configure() {
-
- # Fix bug #37354: Disallow -funroll-all-loops on amd64
- # Bug #57859 suggests that we want to do this for all archs
- filter-flags -funroll-all-loops
-
- # Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for
- # everyone since previous flag filtering bugs have turned out to affect
- # multiple archs...
- replace-flags -O3 -O2
-
- emake -j1 -C src autoconf
-
- # This should fix a sandbox violation (see bug #24447). The hvc
- # things are for ppc64, see bug #86433.
- for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do
- if [[ -e "${file}" ]]; then
- addwrite ${file}
- fi
- done
-
- local myconf=()
- if use minimal; then
- myconf=(
- --with-features=tiny
- --disable-nls
- --disable-canberra
- --disable-acl
- --enable-gui=no
- --without-x
- --disable-darwin
- --disable-luainterp
- --disable-perlinterp
- --disable-pythoninterp
- --disable-mzschemeinterp
- --disable-rubyinterp
- --disable-selinux
- --disable-tclinterp
- --disable-gpm
- )
- else
- use debug && append-flags "-DDEBUG"
-
- myconf=(
- --with-features=huge
- $(use_enable sound canberra)
- $(use_enable acl)
- $(use_enable crypt libsodium)
- $(use_enable cscope)
- $(use_enable gpm)
- $(use_enable nls)
- $(use_enable perl perlinterp)
- $(use_enable python python3interp)
- $(use_with python python3-command "${PYTHON}")
- $(use_enable racket mzschemeinterp)
- $(use_enable ruby rubyinterp)
- $(use_enable selinux)
- $(use_enable tcl tclinterp)
- $(use_enable terminal)
- )
-
- # --with-features=huge forces on cscope even if we --disable it. We need
- # to sed this out to avoid screwiness. (1 Sep 2004 ciaranm)
- if ! use cscope; then
- sed -i -e \
- '/# define FEAT_CSCOPE/d' src/feature.h || die "sed failed"
- fi
-
- if use lua; then
- # -DLUA_COMPAT_OPENLIB=1 is required to enable the
- # deprecated (in 5.1) luaL_openlib API (#874690)
- use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1
-
- myconf+=(
- --enable-luainterp
- $(use_with lua_single_target_luajit luajit)
- --with-lua-prefix="${EPREFIX}/usr"
- )
- fi
-
- # don't test USE=X here ... see bug #19115
- # but need to provide a way to link against X ... see bug #20093
- myconf+=(
- --enable-gui=no
- --disable-darwin
- $(use_with X x)
- )
- fi
-
- # let package manager strip binaries
- export ac_cv_prog_STRIP="$(type -P true ) faking strip"
-
- # keep prefix env contained within the EPREFIX
- use prefix && myconf+=( --without-local-dir )
-
- if tc-is-cross-compiler ; then
- export vim_cv_getcwd_broken=no \
- vim_cv_memmove_handles_overlap=yes \
- vim_cv_stat_ignores_slash=yes \
- vim_cv_terminfo=yes \
- vim_cv_toupper_broken=no
- fi
-
- econf \
- --with-modified-by=Gentoo-${PVR} \
- "${myconf[@]}"
-}
-
-src_compile() {
- # The following allows emake to be used
- emake -j1 -C src auto/osdef.h objects
-
- emake
-}
-
-src_test() {
- einfo
- einfo "Starting vim tests. Several error messages will be shown"
- einfo "while the tests run. This is normal behaviour and does not"
- einfo "indicate a fault."
- einfo
- ewarn "If the tests fail, your terminal may be left in a strange"
- ewarn "state. Usually, running 'reset' will fix this."
- einfo
-
- # Don't let vim talk to X
- unset DISPLAY
-
- # Arch and opensuse seem to do this and at this point, I'm willing
- # to try anything to avoid random test hangs!
- export TERM=xterm
-
- # See https://github.com/vim/vim/blob/f08b0eb8691ff09f98bc4beef986ece1c521655f/src/testdir/runtest.vim#L5
- # for more information on test variables we can use.
- # Note that certain variables need vim-compatible regex (not PCRE), see e.g.
- # http://www.softpanorama.org/Editors/Vimorama/vim_regular_expressions.shtml.
- #
- # Skipped tests:
- # - Test_expand_star_star
- # Hangs because of a recursive symlink in /usr/include/nodejs (bug #616680)
- # - Test_exrc
- # Looks in wrong location? (bug #742710)
- # - Test_job_tty_in_out
- # Fragile and depends on TERM(?)
- # - Test_spelldump_bang
- # Hangs.
- # - Test_fuzzy_completion_env
- # Too sensitive to leaked environment variables.
- # - Test_term_mouse_multiple_clicks_to_select_mode
- # Hangs.
- # - Test_spelldump
- # Hangs.
- export TEST_SKIP_PAT='\(Test_expand_star_star\|Test_exrc\|Test_job_tty_in_out\|Test_spelldump_bang\|Test_fuzzy_completion_env\|Test_term_mouse_multiple_clicks_to_select_mode\|Test_spelldump\)'
-
- emake -j1 -C src/testdir nongui
-}
-
-# Call eselect vi update with --if-unset
-# to respect user's choice (bug #187449)
-eselect_vi_update() {
- ebegin "Calling eselect vi update"
- eselect vi update --if-unset
- eend $?
-}
-
-src_install() {
- local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
-
- # Note: Do not install symlinks for 'vi', 'ex', or 'view', as these are
- # managed by eselect-vi
- dobin src/vim
- if ! use minimal ; then
- dosym vim /usr/bin/vimdiff
- fi
- dosym vim /usr/bin/rvim
- dosym vim /usr/bin/rview
- if use vim-pager ; then
- dosym ${vimfiles}/macros/less.sh /usr/bin/vimpager
- dosym ${vimfiles}/macros/manpager.sh /usr/bin/vimmanpager
- insinto ${vimfiles}/macros
- doins runtime/macros/manpager.sh
- fperms a+x ${vimfiles}/macros/manpager.sh
- fi
-
- domenu runtime/vim.desktop
-
- newbashcomp "${FILESDIR}"/${PN}-completion ${PN}
-
- # keep in sync with 'complete ... -F' list
- bashcomp_alias vim ex vi view rvim rview vimdiff
-}
-
-pkg_postinst() {
- # Update documentation tags (from vim-doc.eclass)
- update_vim_helptags
-
- # Call eselect vi update
- eselect_vi_update
-
- # update desktop file mime cache
- xdg_desktop_database_update
-}
-
-pkg_postrm() {
- # Update documentation tags (from vim-doc.eclass)
- update_vim_helptags
-
- # Call eselect vi update
- eselect_vi_update
-
- # update desktop file mime cache
- xdg_desktop_database_update
-}
diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.0.0655-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.0.1000.ebuild
similarity index 98%
rename from sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.0.0655-r1.ebuild
rename to sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.0.1000.ebuild
index f9e1c2239e..fd6fe05780 100644
--- a/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.0.0655-r1.ebuild
+++ b/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.0.1000.ebuild
@@ -6,6 +6,8 @@ EAPI=8
# Please bump with app-editors/vim-core and app-editors/gvim
VIM_VERSION="9.0"
+VIM_PATCHES_VERSION="9.0.1000"
+
LUA_COMPAT=( lua5-{1..4} luajit )
PYTHON_COMPAT=( python3_{8..11} )
PYTHON_REQ_USE="threads(+)"
@@ -18,7 +20,7 @@ if [[ ${PV} == 9999* ]] ; then
EGIT_REPO_URI="https://github.com/vim/vim.git"
else
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz
- https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-9.0.0049-patches.tar.gz"
+ https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
@@ -76,10 +78,9 @@ pkg_setup() {
}
src_prepare() {
-
if [[ ${PV} != 9999* ]] ; then
# Gentoo patches to fix runtime issues, cross-compile errors, etc
- eapply "${WORKDIR}"/vim-patches-vim-9.0.0049-patches
+ eapply "${WORKDIR}"/vim-patches-vim-${VIM_PATCHES_VERSION}-patches
fi
# Fixup a script to use awk instead of nawk
diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9999.ebuild b/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9999.ebuild
index f9e1c2239e..fd6fe05780 100644
--- a/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9999.ebuild
+++ b/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9999.ebuild
@@ -6,6 +6,8 @@ EAPI=8
# Please bump with app-editors/vim-core and app-editors/gvim
VIM_VERSION="9.0"
+VIM_PATCHES_VERSION="9.0.1000"
+
LUA_COMPAT=( lua5-{1..4} luajit )
PYTHON_COMPAT=( python3_{8..11} )
PYTHON_REQ_USE="threads(+)"
@@ -18,7 +20,7 @@ if [[ ${PV} == 9999* ]] ; then
EGIT_REPO_URI="https://github.com/vim/vim.git"
else
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz
- https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-9.0.0049-patches.tar.gz"
+ https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
@@ -76,10 +78,9 @@ pkg_setup() {
}
src_prepare() {
-
if [[ ${PV} != 9999* ]] ; then
# Gentoo patches to fix runtime issues, cross-compile errors, etc
- eapply "${WORKDIR}"/vim-patches-vim-9.0.0049-patches
+ eapply "${WORKDIR}"/vim-patches-vim-${VIM_PATCHES_VERSION}-patches
fi
# Fixup a script to use awk instead of nawk
diff --git a/sdk_container/src/third_party/portage-stable/changelog/security/2022-12-06-python.md b/sdk_container/src/third_party/portage-stable/changelog/security/2022-12-06-python.md
new file mode 100644
index 0000000000..856414446a
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/changelog/security/2022-12-06-python.md
@@ -0,0 +1 @@
+- Python ([CVE-2015-20107](https://nvd.nist.gov/vuln/detail/CVE-2015-20107), [CVE-2020-10735](https://nvd.nist.gov/vuln/detail/CVE-2020-10735), [CVE-2021-3654](https://nvd.nist.gov/vuln/detail/CVE-2021-3654), [CVE-2022-37454](https://nvd.nist.gov/vuln/detail/CVE-2022-37454), [CVE-2022-42919](https://nvd.nist.gov/vuln/detail/CVE-2022-42919), [CVE-2022-45061](https://nvd.nist.gov/vuln/detail/CVE-2022-45061))
diff --git a/sdk_container/src/third_party/portage-stable/changelog/updates/2022-12-06-weekly-updates.md b/sdk_container/src/third_party/portage-stable/changelog/updates/2022-12-06-weekly-updates.md
new file mode 100644
index 0000000000..ea97382d49
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/changelog/updates/2022-12-06-weekly-updates.md
@@ -0,0 +1 @@
+- MIT Kerberos V ([1.20.1](https://web.mit.edu/kerberos/krb5-1.20/krb5-1.20.1.html))
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 7ec3962075..021caf766a 100644
--- a/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest
@@ -1,21 +1,21 @@
DIST Python-2.7.18.tar.xz 12854736 BLAKE2B 060a621c91dd8e3d321aec99d44c17aa67381998256a1a002d316b38288349884d5960de35c49352d03129ed0bae599e641ec2225898158ebce50a7a2fd74d2c SHA512 a7bb62b51f48ff0b6df0b18f5b0312a523e3110f49c3237936bfe56ed0e26838c0274ff5401bda6fc21bf24337477ccac49e8026c5d651e4b4cafb5eb5086f6c
DIST Python-2.7.18.tar.xz.asc 833 BLAKE2B 1d98770e46171971fb99994508d238c01d2755281d2f94353314014d9e83e0ec5f0b3e3950ea1fdf5fce9ba6b8f55312355845c2a3fc4291c27ee56fe6215448 SHA512 c2a5f5a52f47dec52460ad3275758d4e5de6e7075c3def4353c988d74d563a39b42cae2d5eb24e2a23a6247cef69100f91620b11a49c2359fbf99b203c9cbda8
-DIST Python-3.10.4.tar.xz 19342692 BLAKE2B c430ad9bed71729fda29433af0614b6c0110a85e23f4cb5cff3a9b501febe99b20094367a5428f256fb3aeef97f34d439ef677fc8ae4d596d52da7976b65ebb5 SHA512 6c9aeecddc55c7896b2e8527fca131c7b2b6127d56ce1a001ccedfebf590334e0c0bb7c517ed3cf1da3c1910e002552b56aa7e03eeb672f42ff0bd8150799113
-DIST Python-3.10.4.tar.xz.asc 833 BLAKE2B 289f2e96bfc2b60c4ae94b1591779d604f203890c4f5db2ee16e305bf03c6ddb9c8d6da4471a06b5943e12888f37ca572ea30876e9a80382a26814f66b41b7bf SHA512 699e37bf09067083af159e3734b38c952bdc75432c8abfb7a7b8cce7ca975038da37490abeb5c13befd2dacb84a5341ad30de5d0a63d35af5c512215744f4d6d
-DIST Python-3.11.0b1.tar.xz 19416160 BLAKE2B b0eeb2d9ee9d54def7bf555d9d0dc9f343e98b48b77ce4d9a9ec5b7c45a4bfb11e70159cca8a4e384f8d21678f210dcaca5016f68ac59859a1bf336148498dc0 SHA512 f59f2905315593b2f486827ed7a1ffcce9e0faaac671c16026373c3e40d1e1c7b3e1f3384c2fbcbff8acc72c2466cd11c20fd04fbb6e839510d85966b38ebbf1
-DIST Python-3.11.0b1.tar.xz.asc 833 BLAKE2B d2e9fe9271d916133e3e9e13cef72af193cd3fd870143702f200ab77f14e85d1fdae2a59d12a62a361cc38f2a70d03aa0225f57f4c56c6ecdec9e687f9db245b SHA512 e47f2ad1ebc98681f82de74250b5d890e13d1c3c3573da24a4e646f9cdd41e035b9405646e0aee331df120d977f544a215df370b7a4b203082cf489776eca5ff
-DIST Python-3.7.13.tar.xz 18027980 BLAKE2B e5ea14e3b080e7a126a4faeaad9287a7b5cb6be138a0423b4dbfd1c3b07e452ed99aeb818380ab02e9967673b0855a4a81cec1fa5b9b919f8a4e45da70e9df3a SHA512 e95366b68c1bc1dc1cfb2d956f1f49c5d0f620b4780d03002b3c321d2788108eb4e51d224cfa6bcecf7d780e9024ab0ef88b422d6d25e983dbc56b2a89b7dce9
-DIST Python-3.7.13.tar.xz.asc 833 BLAKE2B 1e09a904c07951ae10fc039935c3974dbe2d0a51fed40c6830f321e42f7ddab32a17afe1b35319982160e0fed47b1ff7663d0f18d0b4ae8e81a34298394462a9 SHA512 35c35bd386841fde4f7d614de84cdc05d8ba1377b224bbcd4d6de18a1c87969b23e1583ca9f4e673e0340350c7f59c80986f8ccf41ef573b6585320c90fde19b
-DIST Python-3.8.13.tar.xz 19023016 BLAKE2B d3cb8624496e56d93d34f2aa5082746869a99210197529bc19e6a9d265f4ce246e0e83a3528a7602a28aac8855bf84e6bf6495b85e9202fcf04ef90600cb5e43 SHA512 5c732b5d21b189b99a0e9ccd3ae59466bed60a930d5d3f437a262d38f0797b776cecbf12a1852eaebcfb638a6f2e28e471cc2ebf94237cc728144be21842cb81
-DIST Python-3.8.13.tar.xz.asc 833 BLAKE2B 918894777e1a783f2a7c7958a808610631cb7a6039df84675158e8d2fd66782f29921d44ab9b4625c4ca3821852e0d0e0005163b086c7d0c3d617e3a76cb7033 SHA512 6683c4ae6cf20a97a29165f96b9f5dd09d618892583650d803aa677240695968dfe344294fc33db68fd4669c82021afcc29a1f6afe49915be51fae281eeeedbe
-DIST Python-3.9.11.tar.xz 19724780 BLAKE2B 25b017e36b22235790633eb1a88f52092225252f39963fc365c1ea863f5b5d98a796bceb01e5e34c02d9690f2a664959766b214b8c13350d6e22839218d0c097 SHA512 804e6e6b31922378f07f290023f6efc870c6fd3010204c499c2b375880f6e6ec0f72ce96a8fff81956f6fa3bea2123df2138ef0fda23a3d5d3cf757174a930c3
-DIST Python-3.9.11.tar.xz.asc 833 BLAKE2B c60c291f3dad39c842d16717239006f3ee703eaa586d95ea02ba4486d20a1e82065bbaf7af6f7cf6a04799229359791a72834096b6ce5f5d2b583ba5962d441b SHA512 a84bbfa68ec1c0e45bbd64af4481be7d68885021287731c69346a3cb25c9bf607be84dd72af2d3a6fbeabbde64975f37c4bb4f61274e72b92b4277fa48543e52
-DIST Python-3.9.12.tar.xz 19740524 BLAKE2B 05f2469aa53ca36221ef4976b17bfde3e5b86afd5a8114e5a7fd899f975a8e55022555ef718d5352ab68de1b7b23865a0bf713768c9c2b30d591438c9a396d25 SHA512 081981901e14149748fd35228db0b3b1d96fef227ae7404f07b8bad0fda4b02649bf31c348c94aefdaf3327565d78f9489437c2c02f647b15d41376a27a23e97
-DIST Python-3.9.12.tar.xz.asc 833 BLAKE2B 33436d0404a643215a8fd2b967ffd216201da24f374941bf65b888159ccfabcbe79b751eca2dd489b06605604338c8bbaab74aa10abbe4bcffaa54236301228e SHA512 dddaa27f8a29034f458edb6739398a5455c87fe37b6349e161865a9deedca118ffe9cb82663cc75bbe60b3b556399c0c6855f5262aac1fe90d36a3694fca65b2
-DIST python-gentoo-patches-2.7.18_p15.tar.xz 34956 BLAKE2B d173f276dd9c0ce31004dcc55a0d18e9ce25a47683c2df3c4dd62e967dfbbb35be59a2f08cf20f30a19475a8a2344dd95b17400eafa88b5fdbe9270a12ccbf32 SHA512 d9386808265f978808e5c0ffd384cefe54fb0e05aeccfd394167d5227d9cd66e25c8e93c54914762b2cfc3c2dd851b26a7a84d62634c6aa8a0798aacbb7ac25f
-DIST python-gentoo-patches-3.10.4.tar.xz 8592 BLAKE2B 67fba3e1fedb17430e5cd93da995b4acaf714db512031b5a2f775a25f793f007941561663cfa413d645ccddc2e22d65d250a40fa166cafda8805488d877ff57d SHA512 3ed2b8ff8f1eb8febe7dcd4b5d13d6d54468be1d525f8f1118977d3bbc78f690a597b09383939d023b03380a306e4bff1693382e29ff562312d803305b1709b2
-DIST python-gentoo-patches-3.11.0b1.tar.xz 3324 BLAKE2B aa54baab51376b63d7ec4783f9dd9d18581a07c935aaf3619d009d32e754b3a54cbcc2b4f9b0dd556bb91f74198a27ebee4e31baaac04907ba0f1fa87ad04121 SHA512 d609d95fe2e89550f70bb0cb3e4b468e571d00fa3e8a60020193a048c089685b7452146d8bb51e5e39203f08b0b53c661c156ba7711bdd7b107ceebd4ceec440
-DIST python-gentoo-patches-3.7.13.tar.xz 18344 BLAKE2B 038db3d4e08f7af41811af0073b9c970171a26ffdf8ca116646f285101cc2299372f264e89183f136b3a56c4f756f39518ef6083c3c13baf409034706212fd22 SHA512 7f0d95e0a558aa4171589b887121e09c74679fc99089274e38c35188cd77e7fd6c53231d052455d752fab0c7dcef86a0efc4b8875a9e2a6c295907c271c6e822
-DIST python-gentoo-patches-3.8.13.tar.xz 16004 BLAKE2B 5c0c6c9263570a467391e60c324d1dbc1e50ffda9cad1e204df124441b593146f18e5f1529eb7d385b35c5f4b9e597807971b6b66f7f8eef156ad87c9ad32743 SHA512 4ceb831e2d62bd73909b53a3b553b2cd73d08bcf2a1c92b47eaeb1221d40daabcaed14977265bcb265df00b6bf363dbebbd61a62dca4bf6ef40c6b911e980597
-DIST python-gentoo-patches-3.9.11.tar.xz 12844 BLAKE2B de7ffa39e96127949d2b894fe15c8c1345180842791743af14a3728a7c950e877ab7c74f3e72da5518b16ecb2f3ff13e6132740bb067fe43a8359c673befbaf5 SHA512 0507792188587e66d63a70dde17c6aea1c9aab9e40ace3aeb585adbd2c62acf828782312ba7523f7a4ea49ab1125a30c7b091d10fe02874b018f2733fb8e141d
-DIST python-gentoo-patches-3.9.12.tar.xz 12848 BLAKE2B 5dd66fa94b136a463d2c4be3a5b7dfad770c3905467a1d81af02a35b2783ce7d614881c915ee8f8e764c1656963d6886d9c60c6e524f512e1bc496e42d01307b SHA512 07de63e47a8e547724099062239df8fcfd254f19d38be28131e6bbb094ffbab8483861fb6a5905e60d7fa7a1a5dc06785951fa31984ecad89516b0b742c47f91
+DIST Python-3.10.8.tar.xz 19619508 BLAKE2B 8bbfbae34fbc517c4a746e5e4c360efc57aca175c50fe46a378aa9d6d023a3d90c7df816149e4cca0c9b64ca0142267d8df552e8f8dc53a04b5251e8848dce74 SHA512 40e3e77d79618c81d6fc57c5d119b99c2959dcf932f40aad6b26f2ec39c5e713e6ff298f7597b4fad2ab94680db3732483b5ca0a45e6ae58c14580b3ea44cb0f
+DIST Python-3.10.8.tar.xz.asc 833 BLAKE2B 1e94822a57d055f5db1a5d2915df24be9d6fd9e6b301d148919a7643285a93ca1c8a16db7d74e0adabe7d2a21678b5126e3df7fffb253b35f8db6f74284a0aba SHA512 0c2ef09d898257ba5e9ec7c5bb224a7e50e5ebca96843b4d9e25be6cdd2f17144772aafc92280af20c21491e3c8cedc697414688ece613c93b28ff7ecddcf93f
+DIST Python-3.11.0.tar.xz 19819768 BLAKE2B 3a9852b8973e0e6ce414742f08f17f2c239d20a4e437e95656a325e151d04f4751f07fce955e55f2818af6810b767f2438b3d14e9f2313fe607bab31c47a2fca SHA512 314eef88ae0d68760f34d7a32f238fd2ecb27c50963baa7357c42ad8159026ec50229a0b31d83c39710a472904a06422afc082f9658a90a1dc83ccb74c08039d
+DIST Python-3.11.0.tar.xz.asc 833 BLAKE2B 7133f390ff8e7d856466c8d310903ef694196f5d945d6b753dcd7bf3e5416d69ef0e2320252ecce419ecce07ac5e2a37ad1657e2ded393d0c38a6521a65cebc2 SHA512 d20fb152c5b16cfef1f59af588f7576eb45c903d9e15fd4ad0e15fd32bef7ffd951b99a062d2944234ecffcf29eb9266544e92d2f6584710cbb20ba38f8ac224
+DIST Python-3.12.0a1.tar.xz 19776600 BLAKE2B 035e75c5713f9ff139f6df50329d9b74ade3b255f5413311d7012b2298dd3cb6d71ed11f5855d01e79d6bac334f80bd6a3340591fc3654d9723fd1c5f80eb750 SHA512 fa69dddf36dfe89b869d4de71cb8e878ef1e8be2b96ddfe2d58286710dd09b64db67c130d0438e3cea6679f6e9cd6bb83633691c8b7d6f346b730668866a28f7
+DIST Python-3.12.0a1.tar.xz.asc 963 BLAKE2B 5027ce705b80ad2d186f45c27d00542df1090dcaa30e9d97e483d7debdaeb35b5bf94c9f0cd000715a8ccf6dc5f752e0129bb42e48bfd6b308754bd73ee26090 SHA512 4db7946d27505da9c9b358a3b0fc2f47bb79b10bbcdb8f3ce2f918d1b74665e41a51600de3b94d50b126b66c72f191f8532f4030af184698c32430c35ef8d821
+DIST Python-3.12.0a2.tar.xz 19633668 BLAKE2B 03c5b5637d43bd324f3dce2d16d8d12a585b2bbed82e165c1491e798f9a321547ab035372fe775b28098c6b8f65fc115f77d9ef677ec34da65cbf882689d6181 SHA512 0f830fdb514078c5403727b31fd81912382eca4decb52ae9bfb0f00b8a007be9f8e29bad349034ec97e2229f60fe0baae417227413350485d747d31f4567d5c1
+DIST Python-3.12.0a2.tar.xz.asc 963 BLAKE2B a5508457e61db805cbadcef66ebb92d6e62a797704827483cca616d6441a60f99ec7a826ad3ebdaa7c92865a9aa2e5b41fde248467d5b9e1c57fb4295f7910b4 SHA512 f0c22e071c68d648c8cf2823647f0c807db41b81b94b8100b50d2049a47f19475a4323c5ac488eb5a3798f942978054f358090c1e460804232bb46093fb3fd55
+DIST Python-3.8.15.tar.xz 19038408 BLAKE2B 4ce84171b2f7ca8c9cf1d130adf70f16a0899766cea98965c3e7afcb84b73c482bcb400b59b91736d20e31c57be79edc178f6eeecd775a1f8920a8fbfdd90c24 SHA512 4fb3827b13c2452faa75e5ed18dddf381e80b4fffcfde046e289b4629cff0bb87fba1d09916b9b8a6f8039dc422c952293ebdb381c49f8ca7e7893ae4be6c28d
+DIST Python-3.8.15.tar.xz.asc 833 BLAKE2B bff055e28f4a2e59bb9e6d131ed39f954b729ac791279a6ac618521b545ace16e4eba3aaab629ca1c155d973c0c255b3d184b38fd82ee943d59a328d0603b1b6 SHA512 8ed69db7773a111e7b356848e18fc35b8835426e8d2cb8f311644d511682960c97740232c32c92196391adaecebc0ff842c2f918aad07e5dd46b168e8277ac04
+DIST Python-3.9.15.tar.xz 19712208 BLAKE2B a8490c998c89ed4e3e87ef48e3b5d622e5d06ebd7b8b79db564d668cd1f0c7fe89e0ef37ec4481ff82b30778e2be1a96c1b16199b9dce1f82de32f73b4343ddd SHA512 9310d263bc7a7925f73a6f66fd254ae61f377f43011a6bc5c58e57c8b170c2da4f197a646927ab9d05f8912ed8be4369c09576063931a3f93c3b0228ccb33a39
+DIST Python-3.9.15.tar.xz.asc 833 BLAKE2B c325fb52fae254153456c24c1039b07c9ccf8734df3665640215d35219ccacb705f99d94c9f8b644d15d4ea4612f5ac0da599814f68f7d3b6fc1fdc175db9002 SHA512 722625091731536757b9db447590c31620665133d45076367a3281f2ee3add23a781b10ce5cea582d65caabb18814583c1a347689d2b396214e36a6771182f38
+DIST python-gentoo-patches-2.7.18_p16.tar.xz 35448 BLAKE2B 0139c0944f62f9cdd236f6a8557e0ed19704c7d72869af1cb7d8bd3e646a746cd4a0201e1b44232a5e78ef49f254db20b0d0271bf744fbfd4fe0f1e99b8f3e6c SHA512 810be590d0e06fab4b2165e6852ca49662f09dcd7e20b47a29f613ad7653252c8dfac3f0eb228d77c8a914efa7c08788b2fbd552a4b47504f5fd0ec17450c48f
+DIST python-gentoo-patches-3.10.8_p3-r1.tar.xz 16468 BLAKE2B be00739bdfc78623781139b8218d5173f13f252d3394482c38aeda8efd9b6bb4988a8dbec1b521a028448a0a92c7dce8b979eb2c38fdd6749bd9be682847d719 SHA512 094a058d2b956dfe017ae8b1da4c8da0a6aad82b70eebe9cdeb8d86bfe8b625aba57526186c97a805392c6baa62e5daaf005b54864e096f946f40ef3ce703bda
+DIST python-gentoo-patches-3.11.0_p2-r1.tar.xz 9140 BLAKE2B 3fa95d054c2702ec04f92493c1a721064a5119bfe555dc413f54977d2349d513c00586ec379ee3719e8c5a213c1c43b8702e945d1f6b746ba71dc53d70d98d9c SHA512 2372b40f5e5d391193c8560430c21d6b1d8d9aaefd8ea77aff68decc08addaea17c34ae3b3f754b6069bbab797f06361438585411276d680da2a18d6361be1fd
+DIST python-gentoo-patches-3.12.0a1_p2-r1.tar.xz 9168 BLAKE2B c2f1018c7890518c66051a3470bb4bec45342c0656a143e0a25ea5b2ec5c27a1285345f8f6fbc7eaea5e216ae1bd2462ecd6ad251851368921cb3fe816652d43 SHA512 7c5436768e3e4de8bafe16f0709115901c90892b127e6f81c06a6da4a3a35c973cb38542180c714d0f2848972db18a0f70e33f0a4dce9b037ea0d15ace045f5a
+DIST python-gentoo-patches-3.12.0a2.tar.xz 6164 BLAKE2B 734068ed87dae1bb30b61f42436664936f27c2507e89fde6da0ce10f791d444b54e8298810717e461b60b7fe572a8fbf2cc9c787e59f01aa0eb5fd1360b212bd SHA512 96e060dc6f2cf412cb1a1be251a6cdd2c30cd2706bfc669dfb920815bcc768b712ed53cc43ee6a1606504a19fdcd9492e7d88bf7e334e1dde2769aa7f1e6ed2d
+DIST python-gentoo-patches-3.8.15_p3-r1.tar.xz 30604 BLAKE2B 68ddeff291a70dfe22e8a0276b30db5a37d7e53dfc5d52c311573136f6fc322cddc65478684ed6339cd8156170588fe8ea3a454a5ec18e0bb91a898dc7c99f1e SHA512 ce9c73cd2b53c5c7f8bb27c65d5ea02bb7c38bfc1b25c972203fcea52bd1ffe4afcb65eedc8556b026a2faf0fc402f566c38b91ee54d6580bc958c0322e90e0a
+DIST python-gentoo-patches-3.9.15_p3-r1.tar.xz 26400 BLAKE2B 27198acf3e9087b96ef15328b9da6d80837a459c62b21c9785fde77dc6f4a5c8c4ccbc3cb48e5af684a253a978c5562fb1a342e6a554d2247aa968fd5890d6f5 SHA512 d658dc89ca29070de2a39d643cc9585ae7f66232dececfd7007cb57a6c6ededd30ae030dbe9226686b8517c48fdb5ed7e681decb64b207e41173a0993f461aea
diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-lang/python/metadata.xml
index 54c2aa9734..648562ff21 100644
--- a/sdk_container/src/third_party/portage-stable/dev-lang/python/metadata.xml
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/metadata.xml
@@ -1,15 +1,41 @@
-
- python@gentoo.org
- Python
-
-
+
+ python@gentoo.org
+ Python
+
+
+
+ cpe:/a:python:python
+ python/cpython
+
diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-2.7.18_p15.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-2.7.18_p16.ebuild
similarity index 67%
rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-2.7.18_p15.ebuild
rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-2.7.18_p16.ebuild
index b156a86e95..19033636cd 100644
--- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-2.7.18_p15.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-2.7.18_p16.ebuild
@@ -4,33 +4,43 @@
EAPI="7"
WANT_LIBTOOL="none"
-inherit autotools flag-o-matic pax-utils \
- python-utils-r1 toolchain-funcs verify-sig
+inherit autotools flag-o-matic pax-utils toolchain-funcs verify-sig
MY_P="Python-${PV%_p*}"
PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-${PV}"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
-HOMEPAGE="https://www.python.org/"
-SRC_URI="https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+ https://gitweb.gentoo.org/fork/cpython.git/
+"
+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 ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="berkdb bluetooth build examples gdbm hardened +ncurses +readline +sqlite +ssl tk wininst +xml"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="
+ berkdb bluetooth build examples gdbm hardened +ncurses +readline
+ +sqlite +ssl tk valgrind wininst +xml
+"
+RESTRICT="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:=
+RDEPEND="
+ app-arch/bzip2:=
dev-libs/libffi:=
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
@@ -50,18 +60,22 @@ RDEPEND="app-arch/bzip2:=
dev-tcltk/blt:=
dev-tcltk/tix
)
- xml? ( >=dev-libs/expat-2.1:= )"
+ xml? ( >=dev-libs/expat-2.1:= )
+"
# bluetooth requires headers from bluez
-DEPEND="${RDEPEND}
- bluetooth? ( net-wireless/bluez )"
+DEPEND="
+ ${RDEPEND}
+ bluetooth? ( net-wireless/bluez )
+ valgrind? ( dev-util/valgrind )
+"
BDEPEND="
- virtual/awk
+ app-alternatives/awk
virtual/pkgconfig
verify-sig? ( sec-keys/openpgp-keys-python )
- !sys-devel/gcc[libffi(-)]"
+"
RDEPEND+="
!build? ( app-misc/mime-types )
- !<=dev-lang/python-exec-2.4.6-r1"
+"
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/python.org.asc
@@ -73,12 +87,6 @@ pkg_setup() {
ewarn "dev-lang/python. 'bsddb' and 'dbhash' modules have been additionally"
ewarn "removed in Python 3. A maintained alternative of 'bsddb3' module"
ewarn "is provided by dev-python/bsddb3."
- else
- if has_version "=${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"; then
- ewarn "You are migrating from =${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"
- ewarn "to =${CATEGORY}/${PN}-${PV%%.*}*[-berkdb]."
- ewarn "You might need to migrate your databases."
- fi
fi
}
@@ -91,9 +99,9 @@ src_unpack() {
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
- rm -fr Modules/expat || die
- rm -fr Modules/_ctypes/libffi* || die
- rm -fr Modules/zlib || die
+ rm -r Modules/expat || die
+ rm -r Modules/_ctypes/libffi* || die
+ rm -r Modules/zlib || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
@@ -142,18 +150,10 @@ src_configure() {
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
- if [[ "$(gcc-major-version)" -ge 4 ]]; then
- append-flags -fwrapv
- fi
+ append-flags -fwrapv
filter-flags -malign-double
- # https://bugs.gentoo.org/show_bug.cgi?id=50309
- if is-flagq -O3; then
- is-flagq -fstack-protector-all && replace-flags -O3 -O2
- use hardened && replace-flags -O3 -O2
- fi
-
if tc-is-cross-compiler; then
# Force some tests that try to poke fs paths.
export ac_cv_file__dev_ptc=no
@@ -166,7 +166,7 @@ src_configure() {
# http://bugs.python.org/issue15506
export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
- local dbmliborder
+ local dbmliborder=
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
@@ -195,18 +195,25 @@ src_configure() {
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
+ --without-ensurepip
--with-system-expat
--with-system-ffi
- --without-ensurepip
+
+ $(use_with valgrind)
)
- OPT="" econf "${myeconfargs[@]}"
+ # disable implicit optimization/debugging flags
+ local -x OPT=
+ 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() {
@@ -215,7 +222,7 @@ src_compile() {
local -x LC_ALL=C
# Avoid invoking pgen for cross-compiles.
- touch Include/graminit.h Python/graminit.c
+ touch Include/graminit.h Python/graminit.c || die
emake
@@ -235,10 +242,10 @@ src_test() {
fi
# Skip failing tests.
- local skipped_tests="distutils gdb"
+ local skipped_tests=( distutils gdb )
- for test in ${skipped_tests}; do
- mv "${S}"/Lib/test/test_${test}.py "${T}"
+ for test in "${skipped_tests[@]}"; do
+ mv Lib/test/test_${test}.py "${T}"/ || die
done
# bug 660358
@@ -251,24 +258,10 @@ src_test() {
# Rerun failed tests in verbose mode (regrtest -w).
emake test EXTRATESTOPTS="-w" < /dev/tty
- local result="$?"
- for test in ${skipped_tests}; do
- mv "${T}/test_${test}.py" "${S}"/Lib/test
+ for test in "${skipped_tests[@]}"; do
+ mv "${T}/test_${test}.py" Lib/test/ || die
done
-
- elog "The following tests have been skipped:"
- for test in ${skipped_tests}; do
- elog "test_${test}.py"
- done
-
- elog "If you would like to run them, you may:"
- elog "cd '${EPREFIX}/usr/$(get_libdir)/python${PYVER}/test'"
- elog "and run the tests separately."
-
- if [[ ${result} -ne 0 ]]; then
- die "emake test failed"
- fi
}
src_install() {
@@ -278,17 +271,28 @@ src_install() {
sed -e "s/\(LDFLAGS=\).*/\1/" -i "${libdir}/config/Makefile" || die
+ # Remove static library
+ rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
+
# Fix collisions between different slots of Python.
mv "${ED}/usr/bin/2to3" "${ED}/usr/bin/2to3-${PYVER}" || die
mv "${ED}/usr/bin/pydoc" "${ED}/usr/bin/pydoc${PYVER}" || die
mv "${ED}/usr/bin/idle" "${ED}/usr/bin/idle${PYVER}" || die
rm "${ED}/usr/bin/smtpd.py" || die
- use berkdb || rm -r "${libdir}/"{bsddb,dbhash.py*,test/test_bsddb*} || die
- use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
- use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,lib-tk} || die
-
- use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
+ if ! use berkdb; then
+ rm -r "${libdir}/"{bsddb,dbhash.py*,test/test_bsddb*} || die
+ fi
+ if ! use sqlite; then
+ rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
+ fi
+ if ! use tk; then
+ rm -r "${ED}/usr/bin/idle${PYVER}" || die
+ rm -r "${libdir}/"{idlelib,lib-tk} || die
+ fi
+ if ! use wininst; then
+ rm "${libdir}/distutils/command/"wininst-*.exe || die
+ fi
dodoc Misc/{ACKS,HISTORY,NEWS}
@@ -296,10 +300,6 @@ src_install() {
docinto examples
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 "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
@@ -309,38 +309,6 @@ src_install() {
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
- local -x EPYTHON=python${PYVER}
- # if not using a cross-compiler, use the fresh binary
- if ! tc-is-cross-compiler; then
- local -x PYTHON=./python
- local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
- else
- local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
- fi
-
- echo "EPYTHON='${EPYTHON}'" > epython.py || die
- python_domodule epython.py
-
- # python-exec wrapping support
- local scriptdir=${D}$(python_get_scriptdir)
- mkdir -p "${scriptdir}" || die
- # python
- ln -s "../../../bin/python${PYVER}" \
- "${scriptdir}/python" || die
- # python-config
- ln -s "../../../bin/python${PYVER}-config" \
- "${scriptdir}/python-config" || die
- # 2to3, pydoc, pyvenv
- 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
-
# python2* is no longer wrapped, so just symlink it
local pymajor=${PYVER%.*}
dosym "python${PYVER}" "/usr/bin/python${pymajor}"
diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.4.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.8_p3.ebuild
similarity index 64%
rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.4.ebuild
rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.8_p3.ebuild
index 598af7c9b1..e7125a5118 100644
--- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.4.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.8_p3.ebuild
@@ -4,16 +4,19 @@
EAPI="7"
WANT_LIBTOOL="none"
-inherit autotools check-reqs flag-o-matic multiprocessing pax-utils \
- python-utils-r1 toolchain-funcs verify-sig
+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}"
+PATCHSET="python-gentoo-patches-${MY_PV}-r1"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
-HOMEPAGE="https://www.python.org/"
+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
@@ -26,7 +29,10 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="bluetooth build examples gdbm hardened libedit lto +ncurses pgo +readline +sqlite +ssl test tk wininst +xml"
+IUSE="
+ bluetooth build +ensurepip examples gdbm hardened libedit lto
+ +ncurses pgo +readline +sqlite +ssl test tk valgrind +xml
+"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
@@ -43,6 +49,7 @@ RDEPEND="
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
+ ensurepip? ( dev-python/ensurepip-wheels )
gdbm? ( sys-libs/gdbm:=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? (
@@ -64,18 +71,18 @@ RDEPEND="
DEPEND="
${RDEPEND}
bluetooth? ( net-wireless/bluez )
+ valgrind? ( dev-util/valgrind )
test? ( app-arch/xz-utils[extra-filters(+)] )
"
# autoconf-archive needed to eautoreconf
BDEPEND="
sys-devel/autoconf-archive
- virtual/awk
+ app-alternatives/awk
virtual/pkgconfig
verify-sig? ( sec-keys/openpgp-keys-python )
- !sys-devel/gcc[libffi(-)]
"
RDEPEND+="
- build? ( app-misc/mime-types )
+ !build? ( app-misc/mime-types )
"
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/python.org.asc
@@ -101,10 +108,9 @@ src_unpack() {
}
src_prepare() {
- # Ensure that internal copies of expat, libffi and zlib are not used.
- rm -fr Modules/expat || die
- rm -fr Modules/_ctypes/libffi* || die
- rm -fr Modules/zlib || die
+ # Ensure that internal copies of expat and libffi are not used.
+ rm -r Modules/expat || die
+ rm -r Modules/_ctypes/libffi* || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
@@ -112,12 +118,12 @@ src_prepare() {
default
- sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
- setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
+ # https://bugs.gentoo.org/850151
+ sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die
- # force correct number of jobs
+ # force the correct number of jobs
# https://bugs.gentoo.org/737660
- local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
+ local jobs=$(makeopts_jobs)
sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
@@ -125,9 +131,11 @@ src_prepare() {
}
src_configure() {
- local disable
# disable automagic bluetooth headers detection
- use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
+ if ! use bluetooth; then
+ local -x ac_cv_header_bluetooth_bluetooth_h=no
+ fi
+ local disable
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
@@ -147,47 +155,49 @@ src_configure() {
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
- if [[ "$(gcc-major-version)" -ge 4 ]]; then
- append-flags -fwrapv
- fi
-
+ append-flags -fwrapv
filter-flags -malign-double
- # https://bugs.gentoo.org/show_bug.cgi?id=50309
- if is-flagq -O3; then
- is-flagq -fstack-protector-all && replace-flags -O3 -O2
- use hardened && replace-flags -O3 -O2
- fi
-
# https://bugs.gentoo.org/700012
if is-flagq -flto || is-flagq '-flto=*'; then
append-cflags $(test-flags-CC -ffat-lto-objects)
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
- tc-export CXX
+ # PKG_CONFIG needed for cross.
+ tc-export CXX PKG_CONFIG
- # Fix implicit declarations on cross and prefix builds. Bug #674070.
- use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
-
- local dbmliborder
+ local dbmliborder=
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
if use pgo; then
- local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
- export PROFILE_TASK="-m test -j${jobs} --pgo-extended -x test_gdb -u-network"
+ local profile_task_flags=(
+ -m test
+ "-j$(makeopts_jobs)"
+ --pgo-extended
+ -x test_gdb
+ -u-network
- # 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)
- PROFILE_TASK+=" -x test_socket -x test_asyncio -x test_httpservers -x test_logging -x test_multiprocessing_fork -x test_xmlrpc"
+ # 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
+ )
if has_version "app-arch/rpm" ; then
# Avoid sandbox failure (attempts to write to /var/lib/rpm)
- PROFILE_TASK+=" -x test_distutils"
+ profile_task_flags+=(
+ -x test_distutils
+ )
fi
+ local -x PROFILE_TASK="${profile_task_flags[*]}"
fi
local myeconfargs=(
@@ -208,20 +218,79 @@ src_configure() {
--without-ensurepip
--with-system-expat
--with-system-ffi
+ --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
$(use_with lto)
$(use_enable pgo optimizations)
$(use_with readline readline "$(usex libedit editline readline)")
+ $(use_with valgrind)
)
# disable implicit optimization/debugging flags
local -x OPT=
+
+ if tc-is-cross-compiler ; then
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD}
+ local -x LDFLAGS_NODIST=${LDFLAGS_FOR_BUILD}
+ local -x CFLAGS= LDFLAGS=
+
+ # We need to build our own Python on CBUILD first, and feed it in.
+ # bug #847910 and bug #864911.
+ local myeconfargs_cbuild=(
+ "${myeconfargs[@]}"
+
+ # As minimal as possible for the mini CBUILD Python
+ # we build just for cross.
+ --without-lto
+ --disable-optimizations
+ )
+
+ # Point the imminent CHOST build to the Python we just
+ # built for CBUILD.
+ export PATH="${WORKDIR}/${P}-${CBUILD}:${PATH}"
+
+ mkdir "${WORKDIR}"/${P}-${CBUILD} || die
+ pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
+ ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
+
+ # Avoid as many dependencies as possible for the cross build.
+ cat >> Makefile <<-EOF || die
+ MODULE_NIS=disabled
+ MODULE__DBM=disabled
+ MODULE__GDBM=disabled
+ MODULE__DBM=disabled
+ MODULE__SQLITE3=disabled
+ MODULE__HASHLIB=disabled
+ MODULE__SSL=disabled
+ MODULE__CURSES=disabled
+ MODULE__CURSES_PANEL=disabled
+ MODULE_READLINE=disabled
+ MODULE__TKINTER=disabled
+ MODULE_PYEXPAT=disabled
+ MODULE_ZLIB=disabled
+ EOF
+
+ # Unfortunately, we do have to build this immediately, and
+ # not in src_compile, because CHOST configure for Python
+ # will check the existence of the Python it was pointed to
+ # immediately.
+ emake
+ popd &> /dev/null || die
+ fi
+
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
# propagated to sysconfig for built extensions
local -x CFLAGS_NODIST=${CFLAGS}
local -x LDFLAGS_NODIST=${LDFLAGS}
local -x CFLAGS= LDFLAGS=
+ # Fix implicit declarations on cross and prefix builds. Bug #674070.
+ if use ncurses; then
+ append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
+ fi
+
econf "${myeconfargs[@]}"
if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
@@ -229,6 +298,9 @@ src_configure() {
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() {
@@ -249,7 +321,7 @@ src_compile() {
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
- addpredict /usr/lib/python3.10/site-packages
+ addpredict "/usr/lib/python${PYVER}/site-packages"
fi
# also need to clear the flags explicitly here or they end up
@@ -274,47 +346,40 @@ src_test() {
return
fi
- # Skip failing tests.
- local skipped_tests="gdb"
+ local test_opts=(
+ -u-network
+ -j "$(makeopts_jobs)"
+
+ # fails
+ -x test_gdb
+ )
if use sparc ; then
# bug #788022
- skipped_tests+=" multiprocessing_fork"
- skipped_tests+=" multiprocessing_forkserver"
+ test_opts+=(
+ -x test_multiprocessing_fork
+ -x test_multiprocessing_forkserver
+ )
fi
- for test in ${skipped_tests}; do
- mv "${S}"/Lib/test/test_${test}.py "${T}"
- done
+ # workaround docutils breaking tests
+ cat > Lib/docutils.py <<-EOF || die
+ raise ImportError("Thou shalt not import!")
+ EOF
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
# workaround https://bugs.gentoo.org/775416
- addwrite /usr/lib/python3.10/site-packages
+ addwrite "/usr/lib/python${PYVER}/site-packages"
- local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
-
- emake test EXTRATESTOPTS="-u-network -j${jobs}" \
+ nonfatal emake test EXTRATESTOPTS="${test_opts[*]}" \
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
- local result=$?
+ local ret=${?}
- for test in ${skipped_tests}; do
- mv "${T}/test_${test}.py" "${S}"/Lib/test
- done
+ rm Lib/docutils.py || die
- elog "The following tests have been skipped:"
- for test in ${skipped_tests}; do
- elog "test_${test}.py"
- done
-
- elog "If you would like to run them, you may:"
- elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
- elog "and run the tests separately."
-
- if [[ ${result} -ne 0 ]]; then
- die "emake test failed"
- fi
+ [[ ${ret} -eq 0 ]] || die "emake test failed"
}
src_install() {
@@ -345,8 +410,17 @@ src_install() {
pax-mark m "${ED}/usr/bin/${abiver}"
fi
- use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
- use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
+ rm -r "${libdir}"/ensurepip/_bundled || die
+ if ! use ensurepip; then
+ rm -r "${libdir}"/ensurepip || die
+ fi
+ if ! use sqlite; then
+ rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
+ fi
+ if ! use tk; then
+ rm -r "${ED}/usr/bin/idle${PYVER}" || die
+ rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
+ fi
dodoc Misc/{ACKS,HISTORY,NEWS}
@@ -356,9 +430,11 @@ src_install() {
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 "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
+ 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}
@@ -368,25 +444,13 @@ src_install() {
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
- local -x EPYTHON=python${PYVER}
- # if not using a cross-compiler, use the fresh binary
- if ! tc-is-cross-compiler; then
- local -x PYTHON=./python
- local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
- else
- local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
- fi
-
- echo "EPYTHON='${EPYTHON}'" > epython.py || die
- python_domodule epython.py
-
# 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 "../../../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
@@ -396,16 +460,12 @@ src_install() {
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${scriptdir}/python${pymajor}-config" || die
- ln -s "python${pymajor}-config" \
- "${scriptdir}/python-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
+ 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
+ ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
fi
}
diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.0_p2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.0_p2.ebuild
new file mode 100644
index 0000000000..6888041b80
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.0_p2.ebuild
@@ -0,0 +1,500 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+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}-r1"
+
+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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="
+ bluetooth build +ensurepip examples gdbm hardened libedit lto
+ +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:=
+ sys-apps/util-linux:=
+ >=sys-libs/zlib-1.1.3:=
+ virtual/libcrypt:=
+ virtual/libintl
+ ensurepip? ( dev-python/ensurepip-wheels )
+ gdbm? ( sys-libs/gdbm:=[berkdb] )
+ 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
+ )
+ !! /dev/null || die
+ ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
+
+ # Avoid as many dependencies as possible for the cross build.
+ cat >> Makefile <<-EOF || die
+ MODULE_NIS_STATE=disabled
+ MODULE__DBM_STATE=disabled
+ MODULE__GDBM_STATE=disabled
+ MODULE__DBM_STATE=disabled
+ MODULE__SQLITE3_STATE=disabled
+ MODULE__HASHLIB_STATE=disabled
+ MODULE__SSL_STATE=disabled
+ MODULE__CURSES_STATE=disabled
+ MODULE__CURSES_PANEL_STATE=disabled
+ MODULE_READLINE_STATE=disabled
+ MODULE__TKINTER_STATE=disabled
+ MODULE_PYEXPAT_STATE=disabled
+ MODULE_ZLIB_STATE=disabled
+ EOF
+
+ # Unfortunately, we do have to build this immediately, and
+ # not in src_compile, because CHOST configure for Python
+ # will check the existence of the --with-build-python value
+ # immediately.
+ emake
+ popd &> /dev/null || die
+ fi
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ local -x CFLAGS_NODIST=${CFLAGS}
+ local -x LDFLAGS_NODIST=${LDFLAGS}
+ local -x CFLAGS= LDFLAGS=
+
+ # Fix implicit declarations on cross and prefix builds. Bug #674070.
+ if use ncurses; then
+ append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
+ fi
+
+ econf "${myeconfargs[@]}"
+
+ if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
+ eerror "configure has detected that the sem_open function is broken."
+ eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
+ die "Broken sem_open function (bug 496328)"
+ fi
+
+ # force-disable modules we don't want built
+ local disable_modules=( NIS )
+ use gdbm || disable_modules+=( _GDBM _DBM )
+ use sqlite || disable_modules+=( _SQLITE3 )
+ use ssl || disable_modules+=( _HASHLIB _SSL )
+ use ncurses || disable_modules+=( _CURSES _CURSES_PANEL )
+ use readline || disable_modules+=( READLINE )
+ use tk || disable_modules+=( _TKINTER )
+
+ local mod
+ for mod in "${disable_modules[@]}"; do
+ echo "MODULE_${mod}_STATE=disabled"
+ done >> Makefile || die
+
+ # install epython.py as part of stdlib
+ echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
+}
+
+src_compile() {
+ # Ensure sed works as expected
+ # https://bugs.gentoo.org/594768
+ local -x LC_ALL=C
+ # Prevent using distutils bundled by setuptools.
+ # https://bugs.gentoo.org/823728
+ export SETUPTOOLS_USE_DISTUTILS=stdlib
+ export PYTHONSTRICTEXTENSIONBUILD=1
+
+ # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
+ # end up writing bytecode & violating sandbox.
+ # bug #831897
+ local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
+
+ if use pgo ; then
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+
+ addpredict "/usr/lib/python${PYVER}/site-packages"
+ 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=(
+ -u-network
+ -j "$(makeopts_jobs)"
+
+ # fails
+ -x test_gdb
+ )
+
+ if use sparc ; then
+ # bug #788022
+ test_opts+=(
+ -x test_multiprocessing_fork
+ -x test_multiprocessing_forkserver
+ )
+ fi
+
+ # workaround docutils breaking tests
+ cat > Lib/docutils.py <<-EOF || die
+ raise ImportError("Thou shalt not import!")
+ EOF
+
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ # workaround https://bugs.gentoo.org/775416
+ addwrite "/usr/lib/python${PYVER}/site-packages"
+
+ nonfatal emake test EXTRATESTOPTS="${test_opts[*]}" \
+ CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
+ local ret=${?}
+
+ rm Lib/docutils.py || die
+
+ [[ ${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}" altinstall
+
+ # Fix collisions between different slots of Python.
+ rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
+
+ # Cheap hack to get version with ABIFLAGS
+ local abiver=$(cd "${ED}/usr/include"; echo python*)
+ if [[ ${abiver} != python${PYVER} ]]; then
+ # Replace python3.X with a symlink to python3.Xm
+ rm "${ED}/usr/bin/python${PYVER}" || die
+ dosym "${abiver}" "/usr/bin/python${PYVER}"
+ # Create python3.X-config symlink
+ dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
+ # Create python-3.5m.pc symlink
+ dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
+ fi
+
+ # python seems to get rebuilt in src_install (bug 569908)
+ # Work around it for now.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E "${ED}/usr/bin/${abiver}"
+ else
+ pax-mark m "${ED}/usr/bin/${abiver}"
+ fi
+
+ rm -r "${libdir}"/ensurepip/_bundled || die
+ if ! use ensurepip; then
+ rm -r "${libdir}"/ensurepip || die
+ fi
+ if ! use sqlite; then
+ rm -r "${libdir}/"sqlite3 || die
+ fi
+ if ! use tk; then
+ rm -r "${ED}/usr/bin/idle${PYVER}" || die
+ rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
+ fi
+
+ 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
+}
+
+pkg_postinst() {
+ local v
+ for v in ${REPLACING_VERSIONS}; do
+ if ver_test "${v}" -lt 3.11.0_beta4-r2; then
+ ewarn "Python 3.11.0b4 has changed its module ABI. The .pyc files"
+ ewarn "installed previously are no longer valid and will be regenerated"
+ ewarn "(or ignored) on the next import. This may cause sandbox failures"
+ ewarn "when installing some packages and checksum mismatches when removing"
+ ewarn "old versions. To actively prevent this, rebuild all packages"
+ ewarn "installing Python 3.11 modules, e.g. using:"
+ ewarn
+ ewarn " emerge -1v /usr/lib/python3.11/site-packages"
+ fi
+ done
+}
diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.0_beta1-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha1_p2.ebuild
similarity index 60%
rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.0_beta1-r2.ebuild
rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha1_p2.ebuild
index df656602e7..9c5e7029b3 100644
--- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.0_beta1-r2.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha1_p2.ebuild
@@ -4,13 +4,13 @@
EAPI="7"
WANT_LIBTOOL="none"
-inherit autotools check-reqs flag-o-matic multiprocessing pax-utils \
- python-utils-r1 toolchain-funcs verify-sig
+inherit autotools check-reqs flag-o-matic multiprocessing pax-utils
+inherit python-utils-r1 toolchain-funcs verify-sig
-MY_PV=${PV/_beta/b}
+MY_PV=${PV/_alpha/a}
MY_P="Python-${MY_PV%_p*}"
PYVER=$(ver_cut 1-2)
-PATCHSET="python-gentoo-patches-${MY_PV}"
+PATCHSET="python-gentoo-patches-${MY_PV}-r1"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="
@@ -29,7 +29,10 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="bluetooth build examples gdbm hardened libedit lto +ncurses pgo +readline +sqlite +ssl test tk wininst"
+IUSE="
+ bluetooth build +ensurepip examples gdbm hardened libedit lto
+ +ncurses pgo +readline +sqlite +ssl test tk
+"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
@@ -47,6 +50,7 @@ RDEPEND="
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
+ ensurepip? ( dev-python/ensurepip-wheels )
gdbm? ( sys-libs/gdbm:=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? (
@@ -72,10 +76,9 @@ DEPEND="
# autoconf-archive needed to eautoreconf
BDEPEND="
sys-devel/autoconf-archive
- virtual/awk
+ app-alternatives/awk
virtual/pkgconfig
- verify-sig? ( sec-keys/openpgp-keys-python )
- !sys-devel/gcc[libffi(-)]
+ verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 )
"
RDEPEND+="
!build? ( app-misc/mime-types )
@@ -109,10 +112,10 @@ src_unpack() {
}
src_prepare() {
- # Ensure that internal copies of expat, libffi and zlib are not used.
- rm -fr Modules/expat || die
- rm -fr Modules/_ctypes/libffi* || die
- rm -fr Modules/zlib || die
+ # Ensure that internal copies of expat and libffi are not used.
+ # TODO: Makefile has annoying deps on expat headers
+ #rm -r Modules/expat || die
+ rm -r Modules/_ctypes/libffi* || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
@@ -120,11 +123,9 @@ src_prepare() {
default
- # force correct number of jobs
+ # force the correct number of jobs
# https://bugs.gentoo.org/737660
- local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
- sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
- sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
+ sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die
eautoreconf
}
@@ -132,49 +133,53 @@ src_prepare() {
src_configure() {
local disable
# disable automagic bluetooth headers detection
- use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
-
- if [[ "$(gcc-major-version)" -ge 4 ]]; then
- append-flags -fwrapv
+ if ! use bluetooth; then
+ local -x ac_cv_header_bluetooth_bluetooth_h=no
fi
+ append-flags -fwrapv
filter-flags -malign-double
- # https://bugs.gentoo.org/show_bug.cgi?id=50309
- if is-flagq -O3; then
- is-flagq -fstack-protector-all && replace-flags -O3 -O2
- use hardened && replace-flags -O3 -O2
- fi
-
# https://bugs.gentoo.org/700012
if is-flagq -flto || is-flagq '-flto=*'; then
append-cflags $(test-flags-CC -ffat-lto-objects)
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
- tc-export CXX
+ # PKG_CONFIG needed for cross.
+ tc-export CXX PKG_CONFIG
- # Fix implicit declarations on cross and prefix builds. Bug #674070.
- use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
-
- local dbmliborder
+ local dbmliborder=
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
if use pgo; then
- local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
- export PROFILE_TASK="-m test -j${jobs} --pgo-extended -x test_gdb -u-network"
+ local profile_task_flags=(
+ -m test
+ "-j$(makeopts_jobs)"
+ --pgo-extended
+ -x test_gdb
+ -u-network
- # 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)
- PROFILE_TASK+=" -x test_socket -x test_asyncio -x test_httpservers -x test_logging -x test_multiprocessing_fork -x test_xmlrpc"
+ # 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
+ )
if has_version "app-arch/rpm" ; then
# Avoid sandbox failure (attempts to write to /var/lib/rpm)
- PROFILE_TASK+=" -x test_distutils"
+ profile_task_flags+=(
+ -x test_distutils
+ )
fi
+ local -x PROFILE_TASK="${profile_task_flags[*]}"
fi
local myeconfargs=(
@@ -197,6 +202,7 @@ src_configure() {
--with-system-ffi
--with-platlibdir=lib
--with-pkg-config=yes
+ --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
$(use_with lto)
$(use_enable pgo optimizations)
@@ -205,12 +211,72 @@ src_configure() {
# disable implicit optimization/debugging flags
local -x OPT=
+
+ if tc-is-cross-compiler ; then
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD}
+ local -x LDFLAGS_NODIST=${LDFLAGS_FOR_BUILD}
+ local -x CFLAGS= LDFLAGS=
+
+ # We need to build our own Python on CBUILD first, and feed it in.
+ # bug #847910
+ local myeconfargs_cbuild=(
+ "${myeconfargs[@]}"
+
+ # 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
+ )
+
+ myeconfargs+=(
+ # Point the imminent CHOST build to the Python we just
+ # built for CBUILD.
+ --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
+ )
+
+ mkdir "${WORKDIR}"/${P}-${CBUILD} || die
+ pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
+ ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
+
+ # Avoid as many dependencies as possible for the cross build.
+ cat >> Makefile <<-EOF || die
+ MODULE_NIS_STATE=disabled
+ MODULE__DBM_STATE=disabled
+ MODULE__GDBM_STATE=disabled
+ MODULE__DBM_STATE=disabled
+ MODULE__SQLITE3_STATE=disabled
+ MODULE__HASHLIB_STATE=disabled
+ MODULE__SSL_STATE=disabled
+ MODULE__CURSES_STATE=disabled
+ MODULE__CURSES_PANEL_STATE=disabled
+ MODULE_READLINE_STATE=disabled
+ MODULE__TKINTER_STATE=disabled
+ MODULE_PYEXPAT_STATE=disabled
+ MODULE_ZLIB_STATE=disabled
+ EOF
+
+ # Unfortunately, we do have to build this immediately, and
+ # not in src_compile, because CHOST configure for Python
+ # will check the existence of the --with-build-python value
+ # immediately.
+ emake
+ popd &> /dev/null || die
+ fi
+
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
# propagated to sysconfig for built extensions
local -x CFLAGS_NODIST=${CFLAGS}
local -x LDFLAGS_NODIST=${LDFLAGS}
local -x CFLAGS= LDFLAGS=
+ # Fix implicit declarations on cross and prefix builds. Bug #674070.
+ if use ncurses; then
+ append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
+ fi
+
econf "${myeconfargs[@]}"
if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
@@ -220,9 +286,7 @@ src_configure() {
fi
# force-disable modules we don't want built
- local disable_modules=(
- NIS
- )
+ local disable_modules=( NIS )
use gdbm || disable_modules+=( _GDBM _DBM )
use sqlite || disable_modules+=( _SQLITE3 )
use ssl || disable_modules+=( _HASHLIB _SSL )
@@ -232,8 +296,11 @@ src_configure() {
local mod
for mod in "${disable_modules[@]}"; do
- echo "MODULE_${mod}=disabled"
+ echo "MODULE_${mod}_STATE=disabled"
done >> Makefile || die
+
+ # install epython.py as part of stdlib
+ echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
}
src_compile() {
@@ -255,7 +322,7 @@ src_compile() {
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
- addpredict /usr/lib/python3.11/site-packages
+ addpredict "/usr/lib/python${PYVER}/site-packages"
fi
# also need to clear the flags explicitly here or they end up
@@ -280,52 +347,45 @@ src_test() {
return
fi
- # Skip failing tests.
- local skipped_tests="gdb"
+ # 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=(
+ -u-network
+ -j "$(makeopts_jobs)"
+
+ # fails
+ -x test_gdb
+ )
if use sparc ; then
# bug #788022
- skipped_tests+=" multiprocessing_fork"
- skipped_tests+=" multiprocessing_forkserver"
+ test_opts+=(
+ -x test_multiprocessing_fork
+ -x test_multiprocessing_forkserver
+ )
fi
- for test in ${skipped_tests}; do
- mv "${S}"/Lib/test/test_${test}.py "${T}"
- done
-
- # Expects to find skipped tests and fails
- mv "${S}"/Lib/test/test_tools/test_freeze.py "${T}" || die
+ # workaround docutils breaking tests
+ cat > Lib/docutils.py <<-EOF || die
+ raise ImportError("Thou shalt not import!")
+ EOF
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
# workaround https://bugs.gentoo.org/775416
- addwrite /usr/lib/python3.11/site-packages
+ addwrite "/usr/lib/python${PYVER}/site-packages"
- local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
-
- emake test EXTRATESTOPTS="-u-network -j${jobs}" \
+ nonfatal emake test EXTRATESTOPTS="${test_opts[*]}" \
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
- local result=$?
+ local ret=${?}
- for test in ${skipped_tests}; do
- mv "${T}/test_${test}.py" "${S}"/Lib/test
- done
+ rm Lib/docutils.py || die
- mv "${T}"/test_freeze.py "${S}"/Lib/test/test_tools/test_freeze.py || die
-
- elog "The following tests have been skipped:"
- for test in ${skipped_tests}; do
- elog "test_${test}.py"
- done
-
- elog "If you would like to run them, you may:"
- elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
- elog "and run the tests separately."
-
- if [[ ${result} -ne 0 ]]; then
- die "emake test failed"
- fi
+ [[ ${ret} -eq 0 ]] || die "emake test failed"
}
src_install() {
@@ -357,8 +417,17 @@ src_install() {
pax-mark m "${ED}/usr/bin/${abiver}"
fi
- use sqlite || rm -r "${libdir}/"sqlite3 || die
- use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
+ rm -r "${libdir}"/ensurepip/_bundled || die
+ if ! use ensurepip; then
+ rm -r "${libdir}"/ensurepip || die
+ fi
+ if ! use sqlite; then
+ rm -r "${libdir}/"sqlite3 || die
+ fi
+ if ! use tk; then
+ rm -r "${ED}/usr/bin/idle${PYVER}" || die
+ rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
+ fi
dodoc Misc/{ACKS,HISTORY,NEWS}
@@ -368,9 +437,11 @@ src_install() {
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 "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
+ 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}
@@ -380,25 +451,13 @@ src_install() {
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
- local -x EPYTHON=python${PYVER}
- # if not using a cross-compiler, use the fresh binary
- if ! tc-is-cross-compiler; then
- local -x PYTHON=./python
- local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
- else
- local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
- fi
-
- echo "EPYTHON='${EPYTHON}'" > epython.py || die
- python_domodule epython.py
-
# 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 "../../../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
@@ -408,16 +467,28 @@ src_install() {
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${scriptdir}/python${pymajor}-config" || die
- ln -s "python${pymajor}-config" \
- "${scriptdir}/python-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
+ 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
+ ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
fi
}
+
+pkg_postinst() {
+ local v
+ for v in ${REPLACING_VERSIONS}; do
+ if ver_test "${v}" -lt 3.11.0_beta4-r2; then
+ ewarn "Python 3.11.0b4 has changed its module ABI. The .pyc files"
+ ewarn "installed previously are no longer valid and will be regenerated"
+ ewarn "(or ignored) on the next import. This may cause sandbox failures"
+ ewarn "when installing some packages and checksum mismatches when removing"
+ ewarn "old versions. To actively prevent this, rebuild all packages"
+ ewarn "installing Python 3.11 modules, e.g. using:"
+ ewarn
+ ewarn " emerge -1v /usr/lib/python3.11/site-packages"
+ fi
+ done
+}
diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha2.ebuild
new file mode 100644
index 0000000000..ec1c57a295
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha2.ebuild
@@ -0,0 +1,493 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+WANT_LIBTOOL="none"
+
+inherit autotools check-reqs flag-o-matic multiprocessing pax-utils
+inherit python-utils-r1 toolchain-funcs verify-sig
+
+MY_PV=${PV/_alpha/a}
+MY_P="Python-${MY_PV%_p*}"
+PYVER=$(ver_cut 1-2)
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="An interpreted, interactive, object-oriented programming language"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
+ https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc
+ )
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="
+ bluetooth build +ensurepip examples gdbm hardened libedit lto
+ +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:=
+ sys-apps/util-linux:=
+ >=sys-libs/zlib-1.1.3:=
+ virtual/libcrypt:=
+ virtual/libintl
+ ensurepip? ( dev-python/ensurepip-wheels )
+ gdbm? ( sys-libs/gdbm:=[berkdb] )
+ 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
+ )
+ !!=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=${BROOT}/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}
+
+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
+ rm -r Modules/_ctypes/libffi* || 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
+
+ eautoreconf
+}
+
+src_configure() {
+ local disable
+ # 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
+
+ # https://bugs.gentoo.org/700012
+ if is-flagq -flto || is-flagq '-flto=*'; then
+ append-cflags $(test-flags-CC -ffat-lto-objects)
+ fi
+
+ # 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
+
+ if use pgo; then
+ local profile_task_flags=(
+ -m test
+ "-j$(makeopts_jobs)"
+ --pgo-extended
+ -x test_gdb
+ -u-network
+
+ # 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
+ )
+
+ 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
+ --with-system-expat
+ --with-system-ffi
+ --with-platlibdir=lib
+ --with-pkg-config=yes
+ --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
+
+ $(use_with lto)
+ $(use_enable pgo optimizations)
+ $(use_with readline readline "$(usex libedit editline readline)")
+ $(use_with valgrind)
+ )
+
+ # disable implicit optimization/debugging flags
+ local -x OPT=
+
+ if tc-is-cross-compiler ; then
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD}
+ local -x LDFLAGS_NODIST=${LDFLAGS_FOR_BUILD}
+ local -x CFLAGS= LDFLAGS=
+
+ # We need to build our own Python on CBUILD first, and feed it in.
+ # bug #847910
+ local myeconfargs_cbuild=(
+ "${myeconfargs[@]}"
+
+ # 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
+ )
+
+ myeconfargs+=(
+ # Point the imminent CHOST build to the Python we just
+ # built for CBUILD.
+ --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
+ )
+
+ mkdir "${WORKDIR}"/${P}-${CBUILD} || die
+ pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
+ ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
+
+ # Avoid as many dependencies as possible for the cross build.
+ cat >> Makefile <<-EOF || die
+ MODULE_NIS_STATE=disabled
+ MODULE__DBM_STATE=disabled
+ MODULE__GDBM_STATE=disabled
+ MODULE__DBM_STATE=disabled
+ MODULE__SQLITE3_STATE=disabled
+ MODULE__HASHLIB_STATE=disabled
+ MODULE__SSL_STATE=disabled
+ MODULE__CURSES_STATE=disabled
+ MODULE__CURSES_PANEL_STATE=disabled
+ MODULE_READLINE_STATE=disabled
+ MODULE__TKINTER_STATE=disabled
+ MODULE_PYEXPAT_STATE=disabled
+ MODULE_ZLIB_STATE=disabled
+ EOF
+
+ # Unfortunately, we do have to build this immediately, and
+ # not in src_compile, because CHOST configure for Python
+ # will check the existence of the --with-build-python value
+ # immediately.
+ emake
+ popd &> /dev/null || die
+ fi
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ local -x CFLAGS_NODIST=${CFLAGS}
+ local -x LDFLAGS_NODIST=${LDFLAGS}
+ local -x CFLAGS= LDFLAGS=
+
+ # Fix implicit declarations on cross and prefix builds. Bug #674070.
+ if use ncurses; then
+ append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
+ fi
+
+ econf "${myeconfargs[@]}"
+
+ if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
+ eerror "configure has detected that the sem_open function is broken."
+ eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
+ die "Broken sem_open function (bug 496328)"
+ fi
+
+ # force-disable modules we don't want built
+ local disable_modules=( NIS )
+ use gdbm || disable_modules+=( _GDBM _DBM )
+ use sqlite || disable_modules+=( _SQLITE3 )
+ use ssl || disable_modules+=( _HASHLIB _SSL )
+ use ncurses || disable_modules+=( _CURSES _CURSES_PANEL )
+ use readline || disable_modules+=( READLINE )
+ use tk || disable_modules+=( _TKINTER )
+
+ local mod
+ for mod in "${disable_modules[@]}"; do
+ echo "MODULE_${mod}_STATE=disabled"
+ done >> Makefile || die
+
+ # install epython.py as part of stdlib
+ echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
+}
+
+src_compile() {
+ # Ensure sed works as expected
+ # https://bugs.gentoo.org/594768
+ local -x LC_ALL=C
+ export PYTHONSTRICTEXTENSIONBUILD=1
+
+ # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
+ # end up writing bytecode & violating sandbox.
+ # bug #831897
+ local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
+
+ if use pgo ; then
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+
+ addpredict "/usr/lib/python${PYVER}/site-packages"
+ 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=(
+ -u-network
+ -j "$(makeopts_jobs)"
+
+ # fails
+ -x test_gdb
+ )
+
+ if use sparc ; then
+ # bug #788022
+ test_opts+=(
+ -x test_multiprocessing_fork
+ -x test_multiprocessing_forkserver
+ )
+ fi
+
+ # workaround docutils breaking tests
+ cat > Lib/docutils.py <<-EOF || die
+ raise ImportError("Thou shalt not import!")
+ EOF
+
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ # workaround https://bugs.gentoo.org/775416
+ addwrite "/usr/lib/python${PYVER}/site-packages"
+
+ nonfatal emake test EXTRATESTOPTS="${test_opts[*]}" \
+ CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
+ local ret=${?}
+
+ rm Lib/docutils.py || die
+
+ [[ ${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}" altinstall
+
+ # Fix collisions between different slots of Python.
+ rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
+
+ # Cheap hack to get version with ABIFLAGS
+ local abiver=$(cd "${ED}/usr/include"; echo python*)
+ if [[ ${abiver} != python${PYVER} ]]; then
+ # Replace python3.X with a symlink to python3.Xm
+ rm "${ED}/usr/bin/python${PYVER}" || die
+ dosym "${abiver}" "/usr/bin/python${PYVER}"
+ # Create python3.X-config symlink
+ dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
+ # Create python-3.5m.pc symlink
+ dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
+ fi
+
+ # python seems to get rebuilt in src_install (bug 569908)
+ # Work around it for now.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E "${ED}/usr/bin/${abiver}"
+ else
+ pax-mark m "${ED}/usr/bin/${abiver}"
+ fi
+
+ rm -r "${libdir}"/ensurepip/_bundled || die
+ if ! use ensurepip; then
+ rm -r "${libdir}"/ensurepip || die
+ fi
+ if ! use sqlite; then
+ rm -r "${libdir}/"sqlite3 || die
+ fi
+ if ! use tk; then
+ rm -r "${ED}/usr/bin/idle${PYVER}" || die
+ rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
+ fi
+
+ 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
+}
+
+pkg_postinst() {
+ local v
+ for v in ${REPLACING_VERSIONS}; do
+ if ver_test "${v}" -lt 3.11.0_beta4-r2; then
+ ewarn "Python 3.11.0b4 has changed its module ABI. The .pyc files"
+ ewarn "installed previously are no longer valid and will be regenerated"
+ ewarn "(or ignored) on the next import. This may cause sandbox failures"
+ ewarn "when installing some packages and checksum mismatches when removing"
+ ewarn "old versions. To actively prevent this, rebuild all packages"
+ ewarn "installing Python 3.11 modules, e.g. using:"
+ ewarn
+ ewarn " emerge -1v /usr/lib/python3.11/site-packages"
+ fi
+ done
+}
diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.7.13.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.7.13.ebuild
deleted file mode 100644
index 2048390938..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.7.13.ebuild
+++ /dev/null
@@ -1,351 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-WANT_LIBTOOL="none"
-
-inherit autotools flag-o-matic multiprocessing pax-utils \
- python-utils-r1 toolchain-funcs verify-sig
-
-MY_P="Python-${PV%_p*}"
-PYVER=$(ver_cut 1-2)
-PATCHSET="python-gentoo-patches-${PV}"
-
-DESCRIPTION="An interpreted, interactive, object-oriented programming language"
-HOMEPAGE="https://www.python.org/"
-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}/${PYVER}m"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="bluetooth build examples gdbm hardened +ncurses +readline +sqlite +ssl test tk wininst +xml"
-RESTRICT="!test? ( test )"
-
-# Do not add a dependency on dev-lang/python to this ebuild.
-# If you need to apply a patch which requires python for bootstrapping, please
-# run the bootstrap code on your dev box and include the results in the
-# patchset. See bug 447752.
-
-RDEPEND="
- app-arch/bzip2:=
- app-arch/xz-utils:=
- dev-libs/libffi:=
- sys-apps/util-linux:=
- >=sys-libs/zlib-1.1.3:=
- virtual/libcrypt:=
- virtual/libintl
- gdbm? ( sys-libs/gdbm:=[berkdb] )
- ncurses? ( >=sys-libs/ncurses-5.2:= )
- readline? ( >=sys-libs/readline-4.1:= )
- sqlite? ( >=dev-db/sqlite-3.3.8:3= )
- ssl? ( >=dev-libs/openssl-1.1.1:= )
- tk? (
- >=dev-lang/tcl-8.0:=
- >=dev-lang/tk-8.0:=
- dev-tcltk/blt:=
- dev-tcltk/tix
- )
- xml? ( >=dev-libs/expat-2.1:= )
-"
-# bluetooth requires headers from bluez
-DEPEND="
- ${RDEPEND}
- bluetooth? ( net-wireless/bluez )
- test? ( app-arch/xz-utils[extra-filters(+)] )
-"
-BDEPEND="
- virtual/awk
- virtual/pkgconfig
- verify-sig? ( sec-keys/openpgp-keys-python )
- !sys-devel/gcc[libffi(-)]
-"
-RDEPEND+="
- !build? ( app-misc/mime-types )
-"
-
-VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/python.org.asc
-
-QA_PKGCONFIG_VERSION=${PYVER}
-
-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, libffi and zlib are not used.
- rm -fr Modules/expat || die
- rm -fr Modules/_ctypes/libffi* || die
- rm -fr Modules/zlib || die
-
- local PATCHES=(
- "${WORKDIR}/${PATCHSET}"
- )
-
- default
-
- sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
- setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
-
- # force correct number of jobs
- # https://bugs.gentoo.org/737660
- local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
- sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
-
- eautoreconf
-}
-
-src_configure() {
- local disable
- # disable automagic bluetooth headers detection
- use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
- use gdbm || disable+=" gdbm"
- use ncurses || disable+=" _curses _curses_panel"
- use readline || disable+=" readline"
- use sqlite || disable+=" _sqlite3"
- use ssl || export PYTHON_DISABLE_SSL="1"
- use tk || disable+=" _tkinter"
- use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
- export PYTHON_DISABLE_MODULES="${disable}"
-
- if ! use xml; then
- ewarn "You have configured Python without XML support."
- ewarn "This is NOT a recommended configuration as you"
- ewarn "may face problems parsing any XML documents."
- fi
-
- if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
- einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
- fi
-
- if [[ "$(gcc-major-version)" -ge 4 ]]; then
- append-flags -fwrapv
- fi
-
- filter-flags -malign-double
-
- # https://bugs.gentoo.org/show_bug.cgi?id=50309
- if is-flagq -O3; then
- is-flagq -fstack-protector-all && replace-flags -O3 -O2
- use hardened && replace-flags -O3 -O2
- fi
-
- # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
- tc-export CXX
-
- # Fix implicit declarations on cross and prefix builds. Bug #674070.
- use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
-
- local dbmliborder
- if use gdbm; then
- dbmliborder+="${dbmliborder:+:}gdbm"
- fi
-
- local myeconfargs=(
- # glibc-2.30 removes it; since we can't cleanly force-rebuild
- # Python on glibc upgrade, remove it proactively to give
- # a chance for users rebuilding python before glibc
- ac_cv_header_stropts_h=no
-
- --enable-shared
- --enable-ipv6
- --infodir='${prefix}/share/info'
- --mandir='${prefix}/share/man'
- --with-computed-gotos
- --with-dbmliborder="${dbmliborder}"
- --with-libc=
- --enable-loadable-sqlite-extensions
- --without-ensurepip
- --with-system-expat
- --with-system-ffi
- )
-
- # disable implicit optimization/debugging flags
- local -x OPT=
- # 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=
-
- 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
-}
-
-src_compile() {
- # Ensure sed works as expected
- # https://bugs.gentoo.org/594768
- local -x LC_ALL=C
-
- # also need to clear the flags explicitly here or they end up
- # in _sysconfigdata*
- emake CPPFLAGS= CFLAGS= LDFLAGS=
-
- # 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
-
- # Skip failing tests.
- local skipped_tests="gdb"
-
- if use sparc ; then
- # bug #788022
- skipped_tests+=" multiprocessing_fork"
- skipped_tests+=" multiprocessing_forkserver"
- fi
-
- for test in ${skipped_tests}; do
- mv "${S}"/Lib/test/test_${test}.py "${T}"
- done
-
- # bug 660358
- local -x COLUMNS=80
- local -x PYTHONDONTWRITEBYTECODE=
-
- local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
-
- emake test EXTRATESTOPTS="-u-network -j${jobs}" \
- CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
- local result=$?
-
- for test in ${skipped_tests}; do
- mv "${T}/test_${test}.py" "${S}"/Lib/test
- done
-
- elog "The following tests have been skipped:"
- for test in ${skipped_tests}; do
- elog "test_${test}.py"
- done
-
- elog "If you would like to run them, you may:"
- elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
- elog "and run the tests separately."
-
- if [[ ${result} -ne 0 ]]; then
- die "emake test failed"
- fi
-}
-
-src_install() {
- local libdir=${ED}/usr/lib/python${PYVER}
-
- emake DESTDIR="${D}" altinstall
-
- # Remove static library
- rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
-
- # Fix collisions between different slots of Python.
- rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
-
- # Cheap hack to get version with ABIFLAGS
- local abiver=$(cd "${ED}/usr/include"; echo python*)
- if [[ ${abiver} != python${PYVER} ]]; then
- # Replace python3.X with a symlink to python3.Xm
- rm "${ED}/usr/bin/python${PYVER}" || die
- dosym "${abiver}" "/usr/bin/python${PYVER}"
- # Create python3.X-config symlink
- dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
- # Create python-3.5m.pc symlink
- dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
- fi
-
- # python seems to get rebuilt in src_install (bug 569908)
- # Work around it for now.
- if has_version dev-libs/libffi[pax-kernel]; then
- pax-mark E "${ED}/usr/bin/${abiver}"
- else
- pax-mark m "${ED}/usr/bin/${abiver}"
- fi
-
- use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
- use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
-
- use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || 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 "${S}"/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"
-
- local -x EPYTHON=python${PYVER}
- # if not using a cross-compiler, use the fresh binary
- if ! tc-is-cross-compiler; then
- local -x PYTHON=./python
- local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
- else
- local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
- fi
-
- echo "EPYTHON='${EPYTHON}'" > epython.py || die
- python_domodule epython.py
-
- # python-exec wrapping support
- local pymajor=${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, pyvenv
- ln -s "../../../bin/2to3-${PYVER}" \
- "${scriptdir}/2to3" || die
- ln -s "../../../bin/pydoc${PYVER}" \
- "${scriptdir}/pydoc" || die
- ln -s "../../../bin/pyvenv-${PYVER}" \
- "${scriptdir}/pyvenv" || 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.8.13.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.15_p3.ebuild
similarity index 62%
rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.13.ebuild
rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.15_p3.ebuild
index d6afe442a0..5f5bccbf66 100644
--- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.13.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.15_p3.ebuild
@@ -4,20 +4,24 @@
EAPI="7"
WANT_LIBTOOL="none"
-inherit autotools flag-o-matic multiprocessing pax-utils \
- python-utils-r1 toolchain-funcs verify-sig
+inherit autotools 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}"
+PATCHSET="python-gentoo-patches-${MY_PV}-r1"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
-HOMEPAGE="https://www.python.org/"
-SRC_URI="https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz
+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
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc
)
"
S="${WORKDIR}/${MY_P}"
@@ -25,7 +29,10 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="bluetooth build examples gdbm hardened +ncurses +readline +sqlite +ssl test tk wininst +xml"
+IUSE="
+ bluetooth build +ensurepip examples gdbm hardened lto +ncurses pgo
+ +readline +sqlite +ssl test tk valgrind wininst +xml
+"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
@@ -42,6 +49,7 @@ RDEPEND="
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
+ ensurepip? ( dev-python/ensurepip-wheels )
gdbm? ( sys-libs/gdbm:=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
@@ -60,16 +68,17 @@ DEPEND="
${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )
+ valgrind? ( dev-util/valgrind )
"
+# autoconf-archive needed to eautoreconf
BDEPEND="
sys-devel/autoconf-archive
- virtual/awk
+ app-alternatives/awk
virtual/pkgconfig
verify-sig? ( sec-keys/openpgp-keys-python )
- !sys-devel/gcc[libffi(-)]
"
RDEPEND+="
- build? ( app-misc/mime-types )
+ !build? ( app-misc/mime-types )
"
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/python.org.asc
@@ -84,10 +93,9 @@ src_unpack() {
}
src_prepare() {
- # Ensure that internal copies of expat, libffi and zlib are not used.
- rm -fr Modules/expat || die
- rm -fr Modules/_ctypes/libffi* || die
- rm -fr Modules/zlib || die
+ # Ensure that internal copies of expat and libffi are not used.
+ rm -r Modules/expat || die
+ rm -r Modules/_ctypes/libffi* || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
@@ -95,12 +103,12 @@ src_prepare() {
default
- sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
- setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
+ # https://bugs.gentoo.org/850151
+ sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die
- # force correct number of jobs
+ # force the correct number of jobs
# https://bugs.gentoo.org/737660
- local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
+ local jobs=$(makeopts_jobs)
sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
@@ -108,9 +116,11 @@ src_prepare() {
}
src_configure() {
- local disable
# disable automagic bluetooth headers detection
- use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
+ if ! use bluetooth; then
+ local -x ac_cv_header_bluetooth_bluetooth_h=no
+ fi
+ local disable
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
@@ -130,30 +140,20 @@ src_configure() {
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
- if [[ "$(gcc-major-version)" -ge 4 ]]; then
- append-flags -fwrapv
- fi
+ append-flags -fwrapv
filter-flags -malign-double
- # https://bugs.gentoo.org/show_bug.cgi?id=50309
- if is-flagq -O3; then
- is-flagq -fstack-protector-all && replace-flags -O3 -O2
- use hardened && replace-flags -O3 -O2
- fi
-
# https://bugs.gentoo.org/700012
if is-flagq -flto || is-flagq '-flto=*'; then
append-cflags $(test-flags-CC -ffat-lto-objects)
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
- tc-export CXX
+ # PKG_CONFIG needed for cross.
+ tc-export CXX PKG_CONFIG
- # Fix implicit declarations on cross and prefix builds. Bug #674070.
- use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
-
- local dbmliborder
+ local dbmliborder=
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
@@ -175,16 +175,76 @@ src_configure() {
--without-ensurepip
--with-system-expat
--with-system-ffi
+ --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
+
+ $(use_with valgrind)
)
# disable implicit optimization/debugging flags
local -x OPT=
+
+ if tc-is-cross-compiler ; then
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD}
+ local -x LDFLAGS_NODIST=${LDFLAGS_FOR_BUILD}
+ local -x CFLAGS= LDFLAGS=
+
+ # We need to build our own Python on CBUILD first, and feed it in.
+ # bug #847910 and bug #864911.
+ local myeconfargs_cbuild=(
+ "${myeconfargs[@]}"
+
+ # As minimal as possible for the mini CBUILD Python
+ # we build just for cross.
+ --without-lto
+ --disable-optimizations
+ )
+
+ # Point the imminent CHOST build to the Python we just
+ # built for CBUILD.
+ export PATH="${WORKDIR}/${P}-${CBUILD}:${PATH}"
+
+ mkdir "${WORKDIR}"/${P}-${CBUILD} || die
+ pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
+ ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
+
+ # Avoid as many dependencies as possible for the cross build.
+ cat >> Makefile <<-EOF || die
+ MODULE_NIS=disabled
+ MODULE__DBM=disabled
+ MODULE__GDBM=disabled
+ MODULE__DBM=disabled
+ MODULE__SQLITE3=disabled
+ MODULE__HASHLIB=disabled
+ MODULE__SSL=disabled
+ MODULE__CURSES=disabled
+ MODULE__CURSES_PANEL=disabled
+ MODULE_READLINE=disabled
+ MODULE__TKINTER=disabled
+ MODULE_PYEXPAT=disabled
+ MODULE_ZLIB=disabled
+ EOF
+
+ # Unfortunately, we do have to build this immediately, and
+ # not in src_compile, because CHOST configure for Python
+ # will check the existence of the Python it was pointed to
+ # immediately.
+ emake
+ popd &> /dev/null || die
+ fi
+
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
# propagated to sysconfig for built extensions
local -x CFLAGS_NODIST=${CFLAGS}
local -x LDFLAGS_NODIST=${LDFLAGS}
local -x CFLAGS= LDFLAGS=
+ # Fix implicit declarations on cross and prefix builds. Bug #674070.
+ if use ncurses; then
+ append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
+ fi
+
econf "${myeconfargs[@]}"
if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
@@ -192,6 +252,9 @@ src_configure() {
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() {
@@ -221,45 +284,38 @@ src_test() {
return
fi
- # Skip failing tests.
- local skipped_tests="gdb"
+ local test_opts=(
+ -u-network
+ -j "$(makeopts_jobs)"
+
+ # fails
+ -x test_gdb
+ )
if use sparc ; then
# bug #788022
- skipped_tests+=" multiprocessing_fork"
- skipped_tests+=" multiprocessing_forkserver"
+ test_opts+=(
+ -x test_multiprocessing_fork
+ -x test_multiprocessing_forkserver
+ )
fi
- for test in ${skipped_tests}; do
- mv "${S}"/Lib/test/test_${test}.py "${T}"
- done
+ # workaround docutils breaking tests
+ cat > Lib/docutils.py <<-EOF || die
+ raise ImportError("Thou shalt not import!")
+ EOF
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
- local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
-
- emake test EXTRATESTOPTS="-u-network -j${jobs}" \
+ nonfatal emake test EXTRATESTOPTS="${test_opts[*]}" \
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
- local result=$?
+ local ret=${?}
- for test in ${skipped_tests}; do
- mv "${T}/test_${test}.py" "${S}"/Lib/test
- done
+ rm Lib/docutils.py || die
- elog "The following tests have been skipped:"
- for test in ${skipped_tests}; do
- elog "test_${test}.py"
- done
-
- elog "If you would like to run them, you may:"
- elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
- elog "and run the tests separately."
-
- if [[ ${result} -ne 0 ]]; then
- die "emake test failed"
- fi
+ [[ ${ret} -eq 0 ]] || die "emake test failed"
}
src_install() {
@@ -293,10 +349,20 @@ src_install() {
pax-mark m "${ED}/usr/bin/${abiver}"
fi
- use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
- use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
-
- use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
+ rm -r "${libdir}"/ensurepip/_bundled || die
+ if ! use ensurepip; then
+ rm -r "${libdir}"/ensurepip || die
+ fi
+ if ! use sqlite; then
+ rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
+ fi
+ if ! use tk; then
+ rm -r "${ED}/usr/bin/idle${PYVER}" || die
+ rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
+ fi
+ if ! use wininst; then
+ rm "${libdir}/distutils/command/"wininst-*.exe || die
+ fi
dodoc Misc/{ACKS,HISTORY,NEWS}
@@ -306,9 +372,11 @@ src_install() {
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 "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
+ 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}
@@ -318,25 +386,13 @@ src_install() {
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
- local -x EPYTHON=python${PYVER}
- # if not using a cross-compiler, use the fresh binary
- if ! tc-is-cross-compiler; then
- local -x PYTHON=./python
- local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
- else
- local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
- fi
-
- echo "EPYTHON='${EPYTHON}'" > epython.py || die
- python_domodule epython.py
-
# 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 "../../../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
@@ -346,16 +402,12 @@ src_install() {
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${scriptdir}/python${pymajor}-config" || die
- ln -s "python${pymajor}-config" \
- "${scriptdir}/python-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
+ 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
+ ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
fi
}
diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.11.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.11.ebuild
deleted file mode 100644
index da80c30364..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.11.ebuild
+++ /dev/null
@@ -1,394 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-WANT_LIBTOOL="none"
-
-inherit autotools check-reqs flag-o-matic multiprocessing pax-utils \
- 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/"
-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 ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="bluetooth build examples gdbm hardened lto +ncurses pgo +readline +sqlite +ssl test tk wininst +xml"
-RESTRICT="!test? ( test )"
-
-# Do not add a dependency on dev-lang/python to this ebuild.
-# If you need to apply a patch which requires python for bootstrapping, please
-# run the bootstrap code on your dev box and include the results in the
-# patchset. See bug 447752.
-
-RDEPEND="app-arch/bzip2:=
- app-arch/xz-utils:=
- dev-lang/python-exec[python_targets_python3_9(-)]
- dev-libs/libffi:=
- sys-apps/util-linux:=
- >=sys-libs/zlib-1.1.3:=
- virtual/libcrypt:=
- virtual/libintl
- gdbm? ( sys-libs/gdbm:=[berkdb] )
- ncurses? ( >=sys-libs/ncurses-5.2:= )
- readline? ( >=sys-libs/readline-4.1:= )
- sqlite? ( >=dev-db/sqlite-3.3.8:3= )
- ssl? ( >=dev-libs/openssl-1.1.1:= )
- tk? (
- >=dev-lang/tcl-8.0:=
- >=dev-lang/tk-8.0:=
- dev-tcltk/blt:=
- dev-tcltk/tix
- )
- xml? ( >=dev-libs/expat-2.1:= )"
-# bluetooth requires headers from bluez
-DEPEND="${RDEPEND}
- bluetooth? ( net-wireless/bluez )
- test? ( app-arch/xz-utils[extra-filters(+)] )"
-BDEPEND="
- virtual/awk
- virtual/pkgconfig
- sys-devel/autoconf-archive
- verify-sig? ( sec-keys/openpgp-keys-python )
- !sys-devel/gcc[libffi(-)]"
-RDEPEND+=" !build? ( app-misc/mime-types )"
-
-VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/python.org.asc
-
-# large file tests involve a 2.5G file being copied (duplicated)
-CHECKREQS_DISK_BUILD=5500M
-
-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, libffi and zlib are not used.
- rm -fr Modules/expat || die
- rm -fr Modules/_ctypes/libffi* || die
- rm -fr Modules/zlib || die
-
- local PATCHES=(
- "${WORKDIR}/${PATCHSET}"
- )
-
- default
-
- sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
- setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
-
- # force correct number of jobs
- # https://bugs.gentoo.org/737660
- local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
- sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
- sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
-
- eautoreconf
-}
-
-src_configure() {
- local disable
- # disable automagic bluetooth headers detection
- use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
- use gdbm || disable+=" gdbm"
- use ncurses || disable+=" _curses _curses_panel"
- use readline || disable+=" readline"
- use sqlite || disable+=" _sqlite3"
- use ssl || export PYTHON_DISABLE_SSL="1"
- use tk || disable+=" _tkinter"
- use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
- export PYTHON_DISABLE_MODULES="${disable}"
-
- if ! use xml; then
- ewarn "You have configured Python without XML support."
- ewarn "This is NOT a recommended configuration as you"
- ewarn "may face problems parsing any XML documents."
- fi
-
- if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
- einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
- fi
-
- if [[ "$(gcc-major-version)" -ge 4 ]]; then
- append-flags -fwrapv
- fi
-
- filter-flags -malign-double
-
- # https://bugs.gentoo.org/show_bug.cgi?id=50309
- if is-flagq -O3; then
- is-flagq -fstack-protector-all && replace-flags -O3 -O2
- use hardened && replace-flags -O3 -O2
- fi
-
- # https://bugs.gentoo.org/700012
- if is-flagq -flto || is-flagq '-flto=*'; then
- append-cflags $(test-flags-CC -ffat-lto-objects)
- fi
-
- # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
- tc-export CXX
-
- # Fix implicit declarations on cross and prefix builds. Bug #674070.
- use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
-
- local dbmliborder
- if use gdbm; then
- dbmliborder+="${dbmliborder:+:}gdbm"
- fi
-
- if use pgo; then
- local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
- export PROFILE_TASK="-m test -j${jobs} --pgo-extended -x test_gdb -u-network"
-
- # 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)
- PROFILE_TASK+=" -x test_socket -x test_asyncio -x test_httpservers -x test_logging -x test_multiprocessing_fork -x test_xmlrpc"
-
- if has_version "app-arch/rpm" ; then
- # Avoid sandbox failure (attempts to write to /var/lib/rpm)
- PROFILE_TASK+=" -x test_distutils"
- fi
- fi
-
- local myeconfargs=(
- # glibc-2.30 removes it; since we can't cleanly force-rebuild
- # Python on glibc upgrade, remove it proactively to give
- # a chance for users rebuilding python before glibc
- ac_cv_header_stropts_h=no
-
- --enable-shared
- --enable-ipv6
- --infodir='${prefix}/share/info'
- --mandir='${prefix}/share/man'
- --with-computed-gotos
- --with-dbmliborder="${dbmliborder}"
- --with-libc=
- --enable-loadable-sqlite-extensions
- --without-ensurepip
- --with-system-expat
- --with-system-ffi
-
- $(use_with lto)
- $(use_enable pgo optimizations)
- )
-
- # disable implicit optimization/debugging flags
- local -x OPT=
- # 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=
-
- 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
-}
-
-src_compile() {
- # Ensure sed works as expected
- # https://bugs.gentoo.org/594768
- local -x LC_ALL=C
- # Prevent using distutils bundled by setuptools.
- # https://bugs.gentoo.org/823728
- export SETUPTOOLS_USE_DISTUTILS=stdlib
-
- # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
- # end up writing bytecode & violating sandbox.
- # bug #831897
- local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
-
- if use pgo ; then
- # bug 660358
- local -x COLUMNS=80
- local -x PYTHONDONTWRITEBYTECODE=
-
- addpredict /usr/lib/python3.9/site-packages
- 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
-
- # Skip failing tests.
- local skipped_tests="gdb"
-
- if use sparc ; then
- # bug #788022
- skipped_tests+=" multiprocessing_fork"
- skipped_tests+=" multiprocessing_forkserver"
- fi
-
- for test in ${skipped_tests}; do
- mv "${S}"/Lib/test/test_${test}.py "${T}"
- done
-
- # bug 660358
- local -x COLUMNS=80
- local -x PYTHONDONTWRITEBYTECODE=
-
- local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
-
- emake test EXTRATESTOPTS="-u-network -j${jobs}" \
- CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
- local result=$?
-
- for test in ${skipped_tests}; do
- mv "${T}/test_${test}.py" "${S}"/Lib/test
- done
-
- elog "The following tests have been skipped:"
- for test in ${skipped_tests}; do
- elog "test_${test}.py"
- done
-
- elog "If you would like to run them, you may:"
- elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
- elog "and run the tests separately."
-
- if [[ ${result} -ne 0 ]]; then
- die "emake test failed"
- fi
-}
-
-src_install() {
- local libdir=${ED}/usr/lib/python${PYVER}
-
- emake DESTDIR="${D}" altinstall
-
- # Remove static library
- rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
-
- # Fix collisions between different slots of Python.
- rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
-
- # Cheap hack to get version with ABIFLAGS
- local abiver=$(cd "${ED}/usr/include"; echo python*)
- if [[ ${abiver} != python${PYVER} ]]; then
- # Replace python3.X with a symlink to python3.Xm
- rm "${ED}/usr/bin/python${PYVER}" || die
- dosym "${abiver}" "/usr/bin/python${PYVER}"
- # Create python3.X-config symlink
- dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
- # Create python-3.5m.pc symlink
- dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
- fi
-
- # python seems to get rebuilt in src_install (bug 569908)
- # Work around it for now.
- if has_version dev-libs/libffi[pax-kernel]; then
- pax-mark E "${ED}/usr/bin/${abiver}"
- else
- pax-mark m "${ED}/usr/bin/${abiver}"
- fi
-
- use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
- use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || 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 "${S}"/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"
-
- local -x EPYTHON=python${PYVER}
- # if not using a cross-compiler, use the fresh binary
- if ! tc-is-cross-compiler; then
- local -x PYTHON=./python
- local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
- else
- local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
- fi
-
- echo "EPYTHON='${EPYTHON}'" > epython.py || die
- python_domodule epython.py
-
- # python-exec wrapping support
- local pymajor=${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.9.12.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.15_p3.ebuild
similarity index 63%
rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.12.ebuild
rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.15_p3.ebuild
index 110efb768a..4ab4f51b7f 100644
--- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.12.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.15_p3.ebuild
@@ -4,29 +4,35 @@
EAPI="7"
WANT_LIBTOOL="none"
-inherit autotools check-reqs flag-o-matic multiprocessing pax-utils \
- python-utils-r1 toolchain-funcs verify-sig
+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}"
+PATCHSET="python-gentoo-patches-${MY_PV}-r1"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
-HOMEPAGE="https://www.python.org/"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
SRC_URI="
- https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz
+ 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
+ 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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86"
-IUSE="bluetooth build examples gdbm hardened lto +ncurses pgo +readline +sqlite +ssl test tk wininst +xml"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="
+ bluetooth build +ensurepip examples gdbm hardened lto +ncurses pgo
+ +readline +sqlite +ssl test tk valgrind +xml
+"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
@@ -43,6 +49,7 @@ RDEPEND="
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
+ ensurepip? ( dev-python/ensurepip-wheels )
gdbm? ( sys-libs/gdbm:=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
@@ -61,13 +68,14 @@ DEPEND="
${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )
+ valgrind? ( dev-util/valgrind )
"
+# autoconf-archive needed to eautoreconf
BDEPEND="
- virtual/awk
- virtual/pkgconfig
sys-devel/autoconf-archive
+ app-alternatives/awk
+ virtual/pkgconfig
verify-sig? ( sec-keys/openpgp-keys-python )
- !sys-devel/gcc[libffi(-)]
"
RDEPEND+="
!build? ( app-misc/mime-types )
@@ -96,10 +104,9 @@ src_unpack() {
}
src_prepare() {
- # Ensure that internal copies of expat, libffi and zlib are not used.
- rm -fr Modules/expat || die
- rm -fr Modules/_ctypes/libffi* || die
- rm -fr Modules/zlib || die
+ # Ensure that internal copies of expat and libffi are not used.
+ rm -r Modules/expat || die
+ rm -r Modules/_ctypes/libffi* || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
@@ -107,12 +114,12 @@ src_prepare() {
default
- sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
- setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
+ # https://bugs.gentoo.org/850151
+ sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die
- # force correct number of jobs
+ # force the correct number of jobs
# https://bugs.gentoo.org/737660
- local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
+ local jobs=$(makeopts_jobs)
sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
@@ -120,9 +127,11 @@ src_prepare() {
}
src_configure() {
- local disable
# disable automagic bluetooth headers detection
- use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
+ if ! use bluetooth; then
+ local -x ac_cv_header_bluetooth_bluetooth_h=no
+ fi
+ local disable
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
@@ -142,47 +151,49 @@ src_configure() {
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
- if [[ "$(gcc-major-version)" -ge 4 ]]; then
- append-flags -fwrapv
- fi
-
+ append-flags -fwrapv
filter-flags -malign-double
- # https://bugs.gentoo.org/show_bug.cgi?id=50309
- if is-flagq -O3; then
- is-flagq -fstack-protector-all && replace-flags -O3 -O2
- use hardened && replace-flags -O3 -O2
- fi
-
# https://bugs.gentoo.org/700012
if is-flagq -flto || is-flagq '-flto=*'; then
append-cflags $(test-flags-CC -ffat-lto-objects)
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
- tc-export CXX
+ # PKG_CONFIG needed for cross.
+ tc-export CXX PKG_CONFIG
- # Fix implicit declarations on cross and prefix builds. Bug #674070.
- use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
-
- local dbmliborder
+ local dbmliborder=
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
if use pgo; then
- local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
- export PROFILE_TASK="-m test -j${jobs} --pgo-extended -x test_gdb -u-network"
+ local profile_task_flags=(
+ -m test
+ "-j$(makeopts_jobs)"
+ --pgo-extended
+ -x test_gdb
+ -u-network
- # 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)
- PROFILE_TASK+=" -x test_socket -x test_asyncio -x test_httpservers -x test_logging -x test_multiprocessing_fork -x test_xmlrpc"
+ # 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
+ )
if has_version "app-arch/rpm" ; then
# Avoid sandbox failure (attempts to write to /var/lib/rpm)
- PROFILE_TASK+=" -x test_distutils"
+ profile_task_flags+=(
+ -x test_distutils
+ )
fi
+ local -x PROFILE_TASK="${profile_task_flags[*]}"
fi
local myeconfargs=(
@@ -202,19 +213,78 @@ src_configure() {
--without-ensurepip
--with-system-expat
--with-system-ffi
+ --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
$(use_with lto)
$(use_enable pgo optimizations)
+ $(use_with valgrind)
)
# disable implicit optimization/debugging flags
local -x OPT=
+
+ if tc-is-cross-compiler ; then
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD}
+ local -x LDFLAGS_NODIST=${LDFLAGS_FOR_BUILD}
+ local -x CFLAGS= LDFLAGS=
+
+ # We need to build our own Python on CBUILD first, and feed it in.
+ # bug #847910 and bug #864911.
+ local myeconfargs_cbuild=(
+ "${myeconfargs[@]}"
+
+ # As minimal as possible for the mini CBUILD Python
+ # we build just for cross.
+ --without-lto
+ --disable-optimizations
+ )
+
+ # Point the imminent CHOST build to the Python we just
+ # built for CBUILD.
+ export PATH="${WORKDIR}/${P}-${CBUILD}:${PATH}"
+
+ mkdir "${WORKDIR}"/${P}-${CBUILD} || die
+ pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
+ ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
+
+ # Avoid as many dependencies as possible for the cross build.
+ cat >> Makefile <<-EOF || die
+ MODULE_NIS=disabled
+ MODULE__DBM=disabled
+ MODULE__GDBM=disabled
+ MODULE__DBM=disabled
+ MODULE__SQLITE3=disabled
+ MODULE__HASHLIB=disabled
+ MODULE__SSL=disabled
+ MODULE__CURSES=disabled
+ MODULE__CURSES_PANEL=disabled
+ MODULE_READLINE=disabled
+ MODULE__TKINTER=disabled
+ MODULE_PYEXPAT=disabled
+ MODULE_ZLIB=disabled
+ EOF
+
+ # Unfortunately, we do have to build this immediately, and
+ # not in src_compile, because CHOST configure for Python
+ # will check the existence of the Python it was pointed to
+ # immediately.
+ emake
+ popd &> /dev/null || die
+ fi
+
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
# propagated to sysconfig for built extensions
local -x CFLAGS_NODIST=${CFLAGS}
local -x LDFLAGS_NODIST=${LDFLAGS}
local -x CFLAGS= LDFLAGS=
+ # Fix implicit declarations on cross and prefix builds. Bug #674070.
+ if use ncurses; then
+ append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
+ fi
+
econf "${myeconfargs[@]}"
if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
@@ -222,6 +292,9 @@ src_configure() {
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() {
@@ -242,7 +315,7 @@ src_compile() {
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
- addpredict /usr/lib/python3.9/site-packages
+ addpredict "/usr/lib/python${PYVER}/site-packages"
fi
# also need to clear the flags explicitly here or they end up
@@ -267,45 +340,38 @@ src_test() {
return
fi
- # Skip failing tests.
- local skipped_tests="gdb"
+ local test_opts=(
+ -u-network
+ -j "$(makeopts_jobs)"
+
+ # fails
+ -x test_gdb
+ )
if use sparc ; then
# bug #788022
- skipped_tests+=" multiprocessing_fork"
- skipped_tests+=" multiprocessing_forkserver"
+ test_opts+=(
+ -x test_multiprocessing_fork
+ -x test_multiprocessing_forkserver
+ )
fi
- for test in ${skipped_tests}; do
- mv "${S}"/Lib/test/test_${test}.py "${T}"
- done
+ # workaround docutils breaking tests
+ cat > Lib/docutils.py <<-EOF || die
+ raise ImportError("Thou shalt not import!")
+ EOF
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
- local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
-
- emake test EXTRATESTOPTS="-u-network -j${jobs}" \
+ nonfatal emake test EXTRATESTOPTS="${test_opts[*]}" \
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
- local result=$?
+ local ret=${?}
- for test in ${skipped_tests}; do
- mv "${T}/test_${test}.py" "${S}"/Lib/test
- done
+ rm Lib/docutils.py || die
- elog "The following tests have been skipped:"
- for test in ${skipped_tests}; do
- elog "test_${test}.py"
- done
-
- elog "If you would like to run them, you may:"
- elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
- elog "and run the tests separately."
-
- if [[ ${result} -ne 0 ]]; then
- die "emake test failed"
- fi
+ [[ ${ret} -eq 0 ]] || die "emake test failed"
}
src_install() {
@@ -339,8 +405,17 @@ src_install() {
pax-mark m "${ED}/usr/bin/${abiver}"
fi
- use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
- use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
+ rm -r "${libdir}"/ensurepip/_bundled || die
+ if ! use ensurepip; then
+ rm -r "${libdir}"/ensurepip || die
+ fi
+ if ! use sqlite; then
+ rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
+ fi
+ if ! use tk; then
+ rm -r "${ED}/usr/bin/idle${PYVER}" || die
+ rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
+ fi
dodoc Misc/{ACKS,HISTORY,NEWS}
@@ -350,9 +425,11 @@ src_install() {
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 "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
+ 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}
@@ -362,25 +439,13 @@ src_install() {
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
- local -x EPYTHON=python${PYVER}
- # if not using a cross-compiler, use the fresh binary
- if ! tc-is-cross-compiler; then
- local -x PYTHON=./python
- local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
- else
- local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
- fi
-
- echo "EPYTHON='${EPYTHON}'" > epython.py || die
- python_domodule epython.py
-
# 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 "../../../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
@@ -390,16 +455,12 @@ src_install() {
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${scriptdir}/python${pymajor}-config" || die
- ln -s "python${pymajor}-config" \
- "${scriptdir}/python-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
+ 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
+ ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
fi
}
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/boost/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/boost/Manifest
index ba3e5b485a..3e1f8229c1 100644
--- a/sdk_container/src/third_party/portage-stable/dev-libs/boost/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-libs/boost/Manifest
@@ -1,2 +1 @@
-DIST boost_1_79_0.tar.bz2 113456811 BLAKE2B 61f47ca022e60745868e6bdd3b5c75603dd68d878e126dcbb73de5b40fc03c0eec8eede3ec304ece58050435ef2fc1ed7eb763773c20673f85e32bbf4d5f978a SHA512 70909e0561c213d10a1fdd692f9ae7b293d3cdc63e925bdc207da9e9bba6e86474341100e7ee5de6d94f9561196b1a3a1597055a7b7382babf8931131170a312
DIST boost_1_80_0.tar.bz2 115869904 BLAKE2B 507e811be7659442c41bc2d99811bd02a236dc94932e1a7a8cf256243b479f2d2707819cd99e016a51c9dadc215713e803afdd9ea4c105af8d5d2d28d3d06a1f SHA512 829a95b463473d69ff79ea41799c68429bb79d3b2321fbdb71df079af237ab01de9ad7e9612d8783d925730acada010068d2d1aa856c34244ee5c0ece16f208f
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/boost/boost-1.79.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/boost/boost-1.79.0.ebuild
deleted file mode 100644
index 844f6d24b1..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-libs/boost/boost-1.79.0.ebuild
+++ /dev/null
@@ -1,335 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..11} )
-
-inherit flag-o-matic multiprocessing python-r1 toolchain-funcs multilib-minimal
-
-MY_PV="$(ver_rs 1- _)"
-MAJOR_V="$(ver_cut 1-2)"
-
-DESCRIPTION="Boost Libraries for C++"
-HOMEPAGE="https://www.boost.org/"
-SRC_URI="https://boostorg.jfrog.io/artifactory/main/release/${PV}/source/boost_${MY_PV}.tar.bz2"
-S="${WORKDIR}/${PN}_${MY_PV}"
-
-LICENSE="Boost-1.0"
-SLOT="0/${PV}" # ${PV} instead ${MAJOR_V} due to bug 486122
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
-IUSE="bzip2 context debug doc icu lzma +nls mpi numpy python tools zlib zstd"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-# the tests will never fail because these are not intended as sanity
-# tests at all. They are more a way for upstream to check their own code
-# on new compilers. Since they would either be completely unreliable
-# (failing for no good reason) or completely useless (never failing)
-# there is no point in having them in the ebuild to begin with.
-RESTRICT="test"
-
-RDEPEND="
- !=dev-libs/icu-3.6:=[${MULTILIB_USEDEP}] )
- !icu? ( virtual/libiconv[${MULTILIB_USEDEP}] )
- lzma? ( app-arch/xz-utils:=[${MULTILIB_USEDEP}] )
- mpi? ( >=virtual/mpi-2.0-r4[${MULTILIB_USEDEP},cxx,threads] )
- python? (
- ${PYTHON_DEPS}
- numpy? ( dev-python/numpy[${PYTHON_USEDEP}] )
- )
- zlib? ( sys-libs/zlib:=[${MULTILIB_USEDEP}] )
- zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )"
-DEPEND="${RDEPEND}"
-#BDEPEND=">=dev-util/boost-build-${MAJOR_V}"
-BDEPEND=">=dev-util/boost-build-1.78.0-r1"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.79.0-disable_icu_rpath.patch
- "${FILESDIR}"/${PN}-1.79.0-context-x32.patch
- "${FILESDIR}"/${PN}-1.79.0-build-auto_index-tool.patch
- # Boost.MPI's __init__.py doesn't work on Py3
- "${FILESDIR}"/${PN}-1.79.0-boost-mpi-python-PEP-328.patch
- "${FILESDIR}"/${PN}-1.79.0-CVE-2012-2677.patch
- "${FILESDIR}"/${PN}-1.79.0-fix-mips1-transition.patch
-)
-
-python_bindings_needed() {
- multilib_is_native_abi && use python
-}
-
-tools_needed() {
- multilib_is_native_abi && use tools
-}
-
-create_user-config.jam() {
- local user_config_jam="${BUILD_DIR}"/user-config.jam
- if [[ -s ${user_config_jam} ]]; then
- einfo "${user_config_jam} already exists, skipping configuration"
- return
- else
- einfo "Creating configuration in ${user_config_jam}"
- fi
-
- local compiler compiler_version compiler_executable="$(tc-getCXX)"
- if [[ ${CHOST} == *-darwin* ]]; then
- compiler="darwin"
- compiler_version="$(gcc-fullversion)"
- else
- compiler="gcc"
- compiler_version="$(gcc-version)"
- fi
-
- if use mpi; then
- local mpi_configuration="using mpi ;"
- fi
-
- cat > "${user_config_jam}" <<- __EOF__ || die
- using ${compiler} : ${compiler_version} : ${compiler_executable} : "${CFLAGS}" "${CXXFLAGS}" "${LDFLAGS}" "$(tc-getAR)" "$(tc-getRANLIB)" ;
- ${mpi_configuration}
- __EOF__
-
- if python_bindings_needed; then
- append_to_user_config() {
- local py_config
- if tc-is-cross-compiler; then
- py_config="using python : ${EPYTHON#python} : : ${ESYSROOT}/usr/include/${EPYTHON} : ${ESYSROOT}/usr/$(get_libdir) ;"
- else
- py_config="using python : ${EPYTHON#python} : ${PYTHON} : $(python_get_includedir) ;"
- fi
- echo "${py_config}" >> "${user_config_jam}" || die
- }
- python_foreach_impl append_to_user_config
- fi
-
- if python_bindings_needed && use numpy; then
- einfo "Enabling support for NumPy extensions in Boost.Python"
- else
- einfo "Disabling support for NumPy extensions in Boost.Python"
-
- # Boost.Build does not allow for disabling of numpy
- # extensions, thereby leading to automagic numpy
- # https://github.com/boostorg/python/issues/111#issuecomment-280447482
- sed \
- -e 's/\[ unless \[ python\.numpy \] : no \]/no/g' \
- -i "${BUILD_DIR}"/libs/python/build/Jamfile || die
- fi
-}
-
-pkg_setup() {
- # Bail out on unsupported build configuration, bug #456792
- if [[ -f "${EROOT}"/etc/site-config.jam ]]; then
- if ! grep -q 'gentoo\(debug\|release\)' "${EROOT}"/etc/site-config.jam; then
- eerror "You are using custom ${EROOT}/etc/site-config.jam without defined gentoorelease/gentoodebug targets."
- eerror "Boost can not be built in such configuration."
- eerror "Please, either remove this file or add targets from ${EROOT}/usr/share/boost-build/site-config.jam to it."
- die "Unsupported target in ${EROOT}/etc/site-config.jam"
- fi
- fi
-}
-
-src_prepare() {
- default
- multilib_copy_sources
-}
-
-ejam() {
- create_user-config.jam
-
- local b2_opts=( "--user-config=${BUILD_DIR}/user-config.jam" )
- if python_bindings_needed; then
- append_to_b2_opts() {
- b2_opts+=( python="${EPYTHON#python}" )
- }
- python_foreach_impl append_to_b2_opts
- else
- b2_opts+=( --without-python )
- fi
- b2_opts+=( "$@" )
-
- echo b2 "${b2_opts[@]}" >&2
- b2 "${b2_opts[@]}"
-}
-
-src_configure() {
- # Workaround for too many parallel processes requested, bug #506064
- [[ "$(makeopts_jobs)" -gt 64 ]] && MAKEOPTS="${MAKEOPTS} -j64"
-
- OPTIONS=(
- $(usex debug gentoodebug gentoorelease)
- "-j$(makeopts_jobs)"
- -q
- -d+2
- pch=off
- $(usex icu "-sICU_PATH=${ESYSROOT}/usr" '--disable-icu boost.locale.icu=off')
- $(usev !mpi --without-mpi)
- $(usev !nls --without-locale)
- $(usev !context '--without-context --without-coroutine --without-fiber')
- --without-stacktrace
- --boost-build="${BROOT}"/usr/share/boost-build/src
- --layout=system
- # building with threading=single is currently not possible
- # https://svn.boost.org/trac/boost/ticket/7105
- threading=multi
- link=shared
- # this seems to be the only way to disable compression algorithms
- # https://www.boost.org/doc/libs/1_70_0/libs/iostreams/doc/installation.html#boost-build
- -sNO_BZIP2=$(usex bzip2 0 1)
- -sNO_LZMA=$(usex lzma 0 1)
- -sNO_ZLIB=$(usex zlib 0 1)
- -sNO_ZSTD=$(usex zstd 0 1)
- )
-
- if [[ ${CHOST} == *-darwin* ]]; then
- # We need to add the prefix, and in two cases this exceeds, so prepare
- # for the largest possible space allocation.
- append-ldflags -Wl,-headerpad_max_install_names
- fi
-
- # Use C++14 globally as of 1.62
- append-cxxflags -std=c++14
-}
-
-multilib_src_compile() {
- ejam \
- --prefix="${EPREFIX}"/usr \
- "${OPTIONS[@]}" || die
-
- if tools_needed; then
- pushd tools >/dev/null || die
- ejam \
- --prefix="${EPREFIX}"/usr \
- "${OPTIONS[@]}" \
- || die "Building of Boost tools failed"
- popd >/dev/null || die
- fi
-}
-
-multilib_src_install() {
- ejam \
- --prefix="${ED}"/usr \
- --includedir="${ED}"/usr/include \
- --libdir="${ED}"/usr/$(get_libdir) \
- "${OPTIONS[@]}" install || die "Installation of Boost libraries failed"
-
- if tools_needed; then
- dobin dist/bin/*
-
- insinto /usr/share
- doins -r dist/share/boostbook
- fi
-
- # boost's build system truely sucks for not having a destdir. Because for
- # this reason we are forced to build with a prefix that includes the
- # DESTROOT, dynamic libraries on Darwin end messed up, referencing the
- # DESTROOT instread of the actual EPREFIX. There is no way out of here
- # but to do it the dirty way of manually setting the right install_names.
- if [[ ${CHOST} == *-darwin* ]]; then
- einfo "Working around completely broken build-system(tm)"
- local d
- for d in "${ED}"/usr/lib/*.dylib; do
- if [[ -f ${d} ]]; then
- # fix the "soname"
- ebegin " correcting install_name of ${d#${ED}}"
- install_name_tool -id "/${d#${D}}" "${d}"
- eend $?
- # fix references to other libs
- refs=$(otool -XL "${d}" | \
- sed -e '1d' -e 's/^\t//' | \
- grep "^libboost_" | \
- cut -f1 -d' ')
- local r
- for r in ${refs}; do
- ebegin " correcting reference to ${r}"
- install_name_tool -change \
- "${r}" \
- "${EPREFIX}/usr/lib/${r}" \
- "${d}"
- eend $?
- done
- fi
- done
- fi
-}
-
-multilib_src_install_all() {
- if ! use numpy; then
- rm -r "${ED}"/usr/include/boost/python/numpy* || die
- fi
-
- if use python; then
- if use mpi; then
- move_mpi_py_into_sitedir() {
- python_moduleinto boost
- python_domodule "${S}"/libs/mpi/build/__init__.py
-
- python_domodule "${ED}"/usr/$(get_libdir)/boost-${EPYTHON}/mpi.so
- rm -r "${ED}"/usr/$(get_libdir)/boost-${EPYTHON} || die
-
- python_optimize
- }
- python_foreach_impl move_mpi_py_into_sitedir
- else
- rm -r "${ED}"/usr/include/boost/mpi/python* || die
- fi
- else
- rm -r "${ED}"/usr/include/boost/{python*,mpi/python*,parameter/aux_/python,parameter/python*} || die
- fi
-
- if ! use nls; then
- rm -r "${ED}"/usr/include/boost/locale || die
- fi
-
- if ! use context; then
- rm -r "${ED}"/usr/include/boost/context || die
- rm -r "${ED}"/usr/include/boost/coroutine{,2} || die
- rm "${ED}"/usr/include/boost/asio/spawn.hpp || die
- fi
-
- if use doc; then
- # find extraneous files that shouldn't be installed
- # as part of the documentation and remove them.
- find libs/*/* \( -iname 'test' -o -iname 'src' \) -exec rm -rf '{}' + || die
- find doc \( -name 'Jamfile.v2' -o -name 'build' -o -name '*.manifest' \) -exec rm -rf '{}' + || die
- find tools \( -name 'Jamfile.v2' -o -name 'src' -o -name '*.cpp' -o -name '*.hpp' \) -exec rm -rf '{}' + || die
-
- docinto html
- dodoc *.{htm,html,png,css}
- dodoc -r doc libs more tools
-
- # To avoid broken links
- dodoc LICENSE_1_0.txt
-
- dosym ../../../../include/boost /usr/share/doc/${PF}/html/boost
- fi
-}
-
-pkg_preinst() {
- # Yay for having symlinks that are nigh-impossible to remove without
- # resorting to dirty hacks like these. Removes lingering symlinks
- # from the slotted versions.
- local symlink
- for symlink in "${EROOT}"/usr/include/boost "${EROOT}"/usr/share/boostbook; do
- if [[ -L ${symlink} ]]; then
- rm -f "${symlink}" || die
- fi
- done
-
- # some ancient installs still have boost cruft lying around
- # for unknown reasons, causing havoc for reverse dependencies
- # Bug: 607734
- rm -rf "${EROOT}"/usr/include/boost-1_[3-5]? || die
-}
-
-pkg_postinst() {
- elog "Boost.Regex is *extremely* ABI sensitive. If you get errors such as"
- elog
- elog " undefined reference to \`boost::re_detail_$(ver_cut 1)0$(ver_cut 2)00::cpp_regex_traits_implementation"
- elog " ::transform_primary[abi:cxx11](char const*, char const*) const'"
- elog
- elog "Then you need to recompile Boost and all its reverse dependencies"
- elog "using the same toolchain. In general, *every* change of the C++ toolchain"
- elog "requires a complete rebuild of the Boost-dependent ecosystem."
- elog
- elog "See for instance https://bugs.gentoo.org/638138"
-}
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/boost/boost-1.80.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/boost/boost-1.80.0-r1.ebuild
index 36767a3386..c59b9cff63 100644
--- a/sdk_container/src/third_party/portage-stable/dev-libs/boost/boost-1.80.0-r1.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-libs/boost/boost-1.80.0-r1.ebuild
@@ -16,7 +16,7 @@ S="${WORKDIR}/${PN}_${MY_PV}"
LICENSE="Boost-1.0"
SLOT="0/${PV}" # ${PV} instead of the major version due to bug 486122
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
IUSE="bzip2 context debug doc icu lzma +nls mpi numpy python tools zlib zstd"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
# the tests will never fail because these are not intended as sanity
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/boost/boost-1.80.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/boost/boost-1.80.0.ebuild
deleted file mode 100644
index d70b29fc1b..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-libs/boost/boost-1.80.0.ebuild
+++ /dev/null
@@ -1,341 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..11} )
-
-inherit flag-o-matic multiprocessing python-r1 toolchain-funcs multilib-minimal
-
-MY_PV="$(ver_rs 1- _)"
-
-DESCRIPTION="Boost Libraries for C++"
-HOMEPAGE="https://www.boost.org/"
-SRC_URI="https://boostorg.jfrog.io/artifactory/main/release/${PV}/source/boost_${MY_PV}.tar.bz2"
-S="${WORKDIR}/${PN}_${MY_PV}"
-
-LICENSE="Boost-1.0"
-SLOT="0/${PV}" # ${PV} instead of the major version due to bug 486122
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
-IUSE="bzip2 context debug doc icu lzma +nls mpi numpy python tools zlib zstd"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-# the tests will never fail because these are not intended as sanity
-# tests at all. They are more a way for upstream to check their own code
-# on new compilers. Since they would either be completely unreliable
-# (failing for no good reason) or completely useless (never failing)
-# there is no point in having them in the ebuild to begin with.
-RESTRICT="test"
-
-RDEPEND="
- !=dev-libs/icu-3.6:=[${MULTILIB_USEDEP}] )
- !icu? ( virtual/libiconv[${MULTILIB_USEDEP}] )
- lzma? ( app-arch/xz-utils:=[${MULTILIB_USEDEP}] )
- mpi? ( >=virtual/mpi-2.0-r4[${MULTILIB_USEDEP},cxx,threads] )
- python? (
- ${PYTHON_DEPS}
- numpy? ( dev-python/numpy[${PYTHON_USEDEP}] )
- )
- zlib? ( sys-libs/zlib:=[${MULTILIB_USEDEP}] )
- zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )"
-DEPEND="${RDEPEND}"
-BDEPEND=">=dev-util/b2-4.9.2"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.80.0-disable_icu_rpath.patch
- "${FILESDIR}"/${PN}-1.79.0-context-x32.patch
- "${FILESDIR}"/${PN}-1.79.0-build-auto_index-tool.patch
- # Boost.MPI's __init__.py doesn't work on Py3
- "${FILESDIR}"/${PN}-1.79.0-boost-mpi-python-PEP-328.patch
- "${FILESDIR}"/${PN}-1.80.0-fix-mips1-transition.patch
- # (upstreamed)
- "${FILESDIR}"/${PN}-1.80.0-unordered-fix.patch
- "${FILESDIR}"/${PN}-1.80.0-unary-function.patch
-)
-
-python_bindings_needed() {
- multilib_is_native_abi && use python
-}
-
-tools_needed() {
- multilib_is_native_abi && use tools
-}
-
-create_user-config.jam() {
- local user_config_jam="${BUILD_DIR}"/user-config.jam
- if [[ -s ${user_config_jam} ]]; then
- einfo "${user_config_jam} already exists, skipping configuration"
- return
- else
- einfo "Creating configuration in ${user_config_jam}"
- fi
-
- local compiler compiler_version compiler_executable="$(tc-getCXX)"
- if [[ ${CHOST} == *-darwin* ]]; then
- compiler="darwin"
- compiler_version="$(gcc-fullversion)"
- else
- compiler="gcc"
- compiler_version="$(gcc-version)"
- fi
-
- if use mpi; then
- local mpi_configuration="using mpi ;"
- fi
-
- cat > "${user_config_jam}" <<- __EOF__ || die
- using ${compiler} : ${compiler_version} : ${compiler_executable} : "${CFLAGS}" "${CXXFLAGS}" "${LDFLAGS}" "$(tc-getAR)" "$(tc-getRANLIB)" ;
- ${mpi_configuration}
- __EOF__
-
- if python_bindings_needed; then
- append_to_user_config() {
- local py_config
- if tc-is-cross-compiler; then
- py_config="using python : ${EPYTHON#python} : : ${ESYSROOT}/usr/include/${EPYTHON} : ${ESYSROOT}/usr/$(get_libdir) ;"
- else
- py_config="using python : ${EPYTHON#python} : ${PYTHON} : $(python_get_includedir) ;"
- fi
- echo "${py_config}" >> "${user_config_jam}" || die
- }
- python_foreach_impl append_to_user_config
- fi
-
- if python_bindings_needed && use numpy; then
- einfo "Enabling support for NumPy extensions in Boost.Python"
- else
- einfo "Disabling support for NumPy extensions in Boost.Python"
-
- # Boost.Build does not allow for disabling of numpy
- # extensions, thereby leading to automagic numpy
- # https://github.com/boostorg/python/issues/111#issuecomment-280447482
- sed \
- -e 's/\[ unless \[ python\.numpy \] : no \]/no/g' \
- -i "${BUILD_DIR}"/libs/python/build/Jamfile || die
- fi
-}
-
-pkg_setup() {
- # Bail out on unsupported build configuration, bug #456792
- if [[ -f "${EROOT}"/etc/site-config.jam ]]; then
- if ! grep -q 'gentoo\(debug\|release\)' "${EROOT}"/etc/site-config.jam; then
- eerror "You are using custom ${EROOT}/etc/site-config.jam without defined gentoorelease/gentoodebug targets."
- eerror "Boost can not be built in such configuration."
- eerror "Please, either remove this file or add targets from ${EROOT}/usr/share/boost-build/site-config.jam to it."
- die "Unsupported target in ${EROOT}/etc/site-config.jam"
- fi
- fi
-}
-
-src_prepare() {
- default
- multilib_copy_sources
-}
-
-ejam() {
- create_user-config.jam
-
- local b2_opts=( "--user-config=${BUILD_DIR}/user-config.jam" )
- if python_bindings_needed; then
- append_to_b2_opts() {
- b2_opts+=( python="${EPYTHON#python}" )
- }
- python_foreach_impl append_to_b2_opts
- else
- b2_opts+=( --without-python )
- fi
- b2_opts+=( "$@" )
-
- echo b2 "${b2_opts[@]}" >&2
- b2 "${b2_opts[@]}"
-}
-
-src_configure() {
- # Workaround for too many parallel processes requested, bug #506064
- [[ "$(makeopts_jobs)" -gt 64 ]] && MAKEOPTS="${MAKEOPTS} -j64"
-
- # We don't want to end up with -L/usr/lib on our linker lines
- # which then gives us lots of
- # skipping incompatible /usr/lib/libc.a when searching for -lc
- # warnings
- [[ -n ${ESYSROOT} ]] && local icuarg="-sICU_PATH=${ESYSROOT}/usr"
-
- OPTIONS=(
- $(usex debug gentoodebug gentoorelease)
- "-j$(makeopts_jobs)"
- -q
- -d+2
- pch=off
- $(usex icu "${icuarg}" '--disable-icu boost.locale.icu=off')
- $(usev !mpi --without-mpi)
- $(usev !nls --without-locale)
- $(usev !context '--without-context --without-coroutine --without-fiber')
- --without-stacktrace
- --boost-build="${BROOT}"/usr/share/b2/src
- --layout=system
- # building with threading=single is currently not possible
- # https://svn.boost.org/trac/boost/ticket/7105
- threading=multi
- link=shared
- # this seems to be the only way to disable compression algorithms
- # https://www.boost.org/doc/libs/1_70_0/libs/iostreams/doc/installation.html#boost-build
- -sNO_BZIP2=$(usex bzip2 0 1)
- -sNO_LZMA=$(usex lzma 0 1)
- -sNO_ZLIB=$(usex zlib 0 1)
- -sNO_ZSTD=$(usex zstd 0 1)
- )
-
- if [[ ${CHOST} == *-darwin* ]]; then
- # We need to add the prefix, and in two cases this exceeds, so prepare
- # for the largest possible space allocation.
- append-ldflags -Wl,-headerpad_max_install_names
- fi
-
- # Use C++17 globally as of 1.80
- append-cxxflags -std=c++17
-}
-
-multilib_src_compile() {
- ejam \
- --prefix="${EPREFIX}"/usr \
- "${OPTIONS[@]}" || die
-
- if tools_needed; then
- pushd tools >/dev/null || die
- ejam \
- --prefix="${EPREFIX}"/usr \
- "${OPTIONS[@]}" \
- || die "Building of Boost tools failed"
- popd >/dev/null || die
- fi
-}
-
-multilib_src_install() {
- ejam \
- --prefix="${ED}"/usr \
- --includedir="${ED}"/usr/include \
- --libdir="${ED}"/usr/$(get_libdir) \
- "${OPTIONS[@]}" install || die "Installation of Boost libraries failed"
-
- if tools_needed; then
- dobin dist/bin/*
-
- insinto /usr/share
- doins -r dist/share/boostbook
- fi
-
- # boost's build system truely sucks for not having a destdir. Because for
- # this reason we are forced to build with a prefix that includes the
- # DESTROOT, dynamic libraries on Darwin end messed up, referencing the
- # DESTROOT instread of the actual EPREFIX. There is no way out of here
- # but to do it the dirty way of manually setting the right install_names.
- if [[ ${CHOST} == *-darwin* ]]; then
- einfo "Working around completely broken build-system(tm)"
- local d
- for d in "${ED}"/usr/lib/*.dylib; do
- if [[ -f ${d} ]]; then
- # fix the "soname"
- ebegin " correcting install_name of ${d#${ED}}"
- install_name_tool -id "/${d#${D}}" "${d}"
- eend $?
- # fix references to other libs
- refs=$(otool -XL "${d}" | \
- sed -e '1d' -e 's/^\t//' | \
- grep "^libboost_" | \
- cut -f1 -d' ')
- local r
- for r in ${refs}; do
- ebegin " correcting reference to ${r}"
- install_name_tool -change \
- "${r}" \
- "${EPREFIX}/usr/lib/${r}" \
- "${d}"
- eend $?
- done
- fi
- done
- fi
-}
-
-multilib_src_install_all() {
- if ! use numpy; then
- rm -r "${ED}"/usr/include/boost/python/numpy* || die
- fi
-
- if use python; then
- if use mpi; then
- move_mpi_py_into_sitedir() {
- python_moduleinto boost
- python_domodule "${S}"/libs/mpi/build/__init__.py
-
- python_domodule "${ED}"/usr/$(get_libdir)/boost-${EPYTHON}/mpi.so
- rm -r "${ED}"/usr/$(get_libdir)/boost-${EPYTHON} || die
-
- python_optimize
- }
- python_foreach_impl move_mpi_py_into_sitedir
- else
- rm -r "${ED}"/usr/include/boost/mpi/python* || die
- fi
- else
- rm -r "${ED}"/usr/include/boost/{python*,mpi/python*,parameter/aux_/python,parameter/python*} || die
- fi
-
- if ! use nls; then
- rm -r "${ED}"/usr/include/boost/locale || die
- fi
-
- if ! use context; then
- rm -r "${ED}"/usr/include/boost/context || die
- rm -r "${ED}"/usr/include/boost/coroutine{,2} || die
- rm "${ED}"/usr/include/boost/asio/spawn.hpp || die
- fi
-
- if use doc; then
- # find extraneous files that shouldn't be installed
- # as part of the documentation and remove them.
- find libs/*/* \( -iname 'test' -o -iname 'src' \) -exec rm -rf '{}' + || die
- find doc \( -name 'Jamfile.v2' -o -name 'build' -o -name '*.manifest' \) -exec rm -rf '{}' + || die
- find tools \( -name 'Jamfile.v2' -o -name 'src' -o -name '*.cpp' -o -name '*.hpp' \) -exec rm -rf '{}' + || die
-
- docinto html
- dodoc *.{htm,html,png,css}
- dodoc -r doc libs more tools
-
- # To avoid broken links
- dodoc LICENSE_1_0.txt
-
- dosym ../../../../include/boost /usr/share/doc/${PF}/html/boost
- fi
-}
-
-pkg_preinst() {
- # Yay for having symlinks that are nigh-impossible to remove without
- # resorting to dirty hacks like these. Removes lingering symlinks
- # from the slotted versions.
- local symlink
- for symlink in "${EROOT}"/usr/include/boost "${EROOT}"/usr/share/boostbook; do
- if [[ -L ${symlink} ]]; then
- rm -f "${symlink}" || die
- fi
- done
-
- # some ancient installs still have boost cruft lying around
- # for unknown reasons, causing havoc for reverse dependencies
- # Bug: 607734
- rm -rf "${EROOT}"/usr/include/boost-1_[3-5]? || die
-}
-
-pkg_postinst() {
- elog "Boost.Regex is *extremely* ABI sensitive. If you get errors such as"
- elog
- elog " undefined reference to \`boost::re_detail_$(ver_cut 1)0$(ver_cut 2)00::cpp_regex_traits_implementation"
- elog " ::transform_primary[abi:cxx11](char const*, char const*) const'"
- elog
- elog "Then you need to recompile Boost and all its reverse dependencies"
- elog "using the same toolchain. In general, *every* change of the C++ toolchain"
- elog "requires a complete rebuild of the Boost-dependent ecosystem."
- elog
- elog "See for instance https://bugs.gentoo.org/638138"
-}
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/glib/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/glib/Manifest
index e298847984..9ad6d080eb 100644
--- a/sdk_container/src/third_party/portage-stable/dev-libs/glib/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-libs/glib/Manifest
@@ -1,3 +1,2 @@
-DIST glib-2.72.3.tar.xz 4893484 BLAKE2B 1360c887b07ede3de3a7d31589f3dfc07ada2fe3e7901d3f30048ab9a1379357753ae142c6c107b3fcd6dd61e1401fbe6db22f0e89ea617db2c1073f1900cbe6 SHA512 8834ab7498577c2f659d135b87c27b34e1157be27f6c1fe5af0d64a94654f78cbe6a87e6868966849674c34e88a9d51d2de8d89f78f86aa1e1af3482761f0638
DIST glib-2.74.1.tar.xz 5189452 BLAKE2B 58d977a5d2a100aa9125f2009ae66c6f27232dff70159433076552bdb64f9a6a93d7cb705feba890ee43d6f16d4766f6f1d5502c2e01eeb7e88d5ed0dd205d5c SHA512 21176cb95fcab49a781d02789bf21191a96a34a6391f066699b3c20b414b3169c958bd86623deb34ca55912083862885f7a7d12b67cc041467da2ba94d9e83c3
-DIST glib-2.74.2.tar.xz 5182312 BLAKE2B 319a8fb793adb7343b77119d7b7839efad6f91b9c7af079f53d54b435067ab12162c4791ca6b8e9b7fd6d269975e9559951cbf80a065072541f407a0d8e2ce74 SHA512 90bb2410f038e47401fc985ff7fe6d1abecec9417254e039ac18e6b0d77e0b8539b975bef84d5f933be8e43c8ceca236bd466622504491e08e71d079d8804895
+DIST glib-2.74.3.tar.xz 5181732 BLAKE2B 46c37be9519866af040b2aaf35129a9cfae6e2c74636c01755b901002fa77f4e2305025691d7a8279acfbae1298a4b5b1e095b333bed3b067e9820547b6eca97 SHA512 a9aa7e84187abb57aeeff9c7f4c4125be742a510ae5d39b6b62696ad1a715c36b353c6c14222caeb1e87bed930fb54184dba77118b991c42f1857a292c6aa77b
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.72.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.72.3.ebuild
deleted file mode 100644
index 68cfcda453..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.72.3.ebuild
+++ /dev/null
@@ -1,288 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_REQ_USE="xml(+)"
-PYTHON_COMPAT=( python3_{8..11} )
-
-inherit flag-o-matic gnome.org gnome2-utils linux-info meson-multilib multilib python-any-r1 toolchain-funcs xdg
-
-DESCRIPTION="The GLib library of C routines"
-HOMEPAGE="https://www.gtk.org/"
-
-LICENSE="LGPL-2.1+"
-SLOT="2"
-IUSE="dbus debug +elf fam gtk-doc +mime selinux static-libs sysprof systemtap test utils xattr"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="gtk-doc? ( test )" # Bug #777636
-
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
-
-# * elfutils (via libelf) does not build on Windows. gresources are not embedded
-# within ELF binaries on that platform anyway and inspecting ELF binaries from
-# other platforms is not that useful so exclude the dependency in this case.
-# * Technically static-libs is needed on zlib, util-linux and perhaps more, but
-# these are used by GIO, which glib[static-libs] consumers don't really seem
-# to need at all, thus not imposing the deps for now and once some consumers
-# are actually found to static link libgio-2.0.a, we can revisit and either add
-# them or just put the (build) deps in that rare consumer instead of recursive
-# RDEPEND here (due to lack of recursive DEPEND).
-RDEPEND="
- !=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
- >=dev-libs/libpcre-8.31:3[${MULTILIB_USEDEP},static-libs?]
- >=dev-libs/libffi-3.0.13-r1:=[${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
- >=virtual/libintl-0-r2[${MULTILIB_USEDEP}]
- kernel_linux? ( >=sys-apps/util-linux-2.23[${MULTILIB_USEDEP}] )
- selinux? ( >=sys-libs/libselinux-2.2.2-r5[${MULTILIB_USEDEP}] )
- xattr? ( !elibc_glibc? ( >=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}] ) )
- elf? ( virtual/libelf:0= )
- fam? ( >=virtual/fam-0-r1[${MULTILIB_USEDEP}] )
- sysprof? ( >=dev-util/sysprof-capture-3.40.1:4[${MULTILIB_USEDEP}] )
-"
-DEPEND="${RDEPEND}"
-# libxml2 used for optional tests that get automatically skipped
-BDEPEND="
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
- >=sys-devel/gettext-0.19.8
- gtk-doc? ( >=dev-util/gtk-doc-1.33
- app-text/docbook-xml-dtd:4.2
- app-text/docbook-xml-dtd:4.5 )
- systemtap? ( >=dev-util/systemtap-1.3 )
- ${PYTHON_DEPS}
- test? ( >=sys-apps/dbus-1.2.14 )
- virtual/pkgconfig
-"
-# TODO: >=dev-util/gdbus-codegen-${PV} test dep once we modify gio/tests/meson.build to use external gdbus-codegen
-
-PDEPEND="
- dbus? ( gnome-base/dconf )
- mime? ( x11-misc/shared-mime-info )
-"
-# shared-mime-info needed for gio/xdgmime, bug #409481
-# dconf is needed to be able to save settings, bug #498436
-
-MULTILIB_CHOST_TOOLS=(
- /usr/bin/gio-querymodules$(get_exeext)
-)
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.64.1-mark-gdbus-server-auth-test-flaky.patch
-)
-
-pkg_setup() {
- if use kernel_linux ; then
- CONFIG_CHECK="~INOTIFY_USER"
- if use test ; then
- CONFIG_CHECK="~IPV6"
- WARNING_IPV6="Your kernel needs IPV6 support for running some tests, skipping them."
- fi
- linux-info_pkg_setup
- fi
- python-any-r1_pkg_setup
-}
-
-src_prepare() {
- if use test; then
- # TODO: Review the test exclusions, especially now with meson
- # Disable tests requiring dev-util/desktop-file-utils when not installed, bug #286629, upstream bug #629163
- if ! has_version dev-util/desktop-file-utils ; then
- ewarn "Some tests will be skipped due dev-util/desktop-file-utils not being present on your system,"
- ewarn "think on installing it to get these tests run."
- sed -i -e "/appinfo\/associations/d" gio/tests/appinfo.c || die
- sed -i -e "/g_test_add_func/d" gio/tests/desktop-app-info.c || die
- fi
-
- # gdesktopappinfo requires existing terminal (gnome-terminal or any
- # other), falling back to xterm if one doesn't exist
- #if ! has_version x11-terms/xterm && ! has_version x11-terms/gnome-terminal ; then
- # ewarn "Some tests will be skipped due to missing terminal program"
- # These tests seem to sometimes fail even with a terminal; skip for now and reevulate with meson
- # Also try https://gitlab.gnome.org/GNOME/glib/issues/1601 once ready for backport (or in a bump) and file new issue if still fails
- sed -i -e "/appinfo\/launch/d" gio/tests/appinfo.c || die
- # desktop-app-info/launch* might fail similarly
- sed -i -e "/desktop-app-info\/launch-as-manager/d" gio/tests/desktop-app-info.c || die
- #fi
-
- # https://bugzilla.gnome.org/show_bug.cgi?id=722604
- sed -i -e "/timer\/stop/d" glib/tests/timer.c || die
- sed -i -e "/timer\/basic/d" glib/tests/timer.c || die
-
- ewarn "Tests for search-utils have been skipped"
- sed -i -e "/search-utils/d" glib/tests/meson.build || die
-
- # Play nice with network-sandbox, but this approach would defeat the purpose of the test
- #sed -i -e "s/localhost/127.0.0.1/g" gio/tests/gsocketclient-slow.c || die
- else
- # Don't build tests, also prevents extra deps, bug #512022
- sed -i -e '/subdir.*tests/d' {.,gio,glib}/meson.build || die
- fi
-
- # Don't build fuzzing binaries - not used
- sed -i -e '/subdir.*fuzzing/d' meson.build || die
-
- # gdbus-codegen is a separate package
- sed -i -e '/install_dir/d' gio/gdbus-2.0/codegen/meson.build || die
-
- # Same kind of meson-0.50 issue with some installed-tests files; will likely be fixed upstream soon
- sed -i -e '/install_dir/d' gio/tests/meson.build || die
-
- cat > "${T}/glib-test-ld-wrapper" <<-EOF
- #!/usr/bin/env sh
- exec \${LD:-ld} "\$@"
- EOF
- chmod a+x "${T}/glib-test-ld-wrapper" || die
- sed -i -e "s|'ld'|'${T}/glib-test-ld-wrapper'|g" gio/tests/meson.build || die
-
- default
- gnome2_environment_reset
- # TODO: python_name sedding for correct python shebang? Might be relevant mainly for glib-utils only
-}
-
-multilib_src_configure() {
- if use debug; then
- append-cflags -DG_ENABLE_DEBUG
- else
- append-cflags -DG_DISABLE_CAST_CHECKS # https://gitlab.gnome.org/GNOME/glib/issues/1833
- fi
-
- # TODO: figure a way to pass appropriate values for all cross properties that glib uses (search for get_cross_property)
- #if tc-is-cross-compiler ; then
- # https://bugzilla.gnome.org/show_bug.cgi?id=756473
- # TODO-meson: This should be in meson cross file as 'growing_stack' property; and more, look at get_cross_property
- #case ${CHOST} in
- #hppa*|metag*) export glib_cv_stack_grows=yes ;;
- #*) export glib_cv_stack_grows=no ;;
- #esac
- #fi
-
- local emesonargs=(
- -Ddefault_library=$(usex static-libs both shared)
- $(meson_feature selinux)
- $(meson_use xattr)
- -Dlibmount=enabled # only used if host_system == 'linux'
- -Dman=true
- $(meson_use systemtap dtrace)
- $(meson_use systemtap)
- $(meson_feature sysprof)
- $(meson_native_use_bool gtk-doc gtk_doc)
- $(meson_use fam)
- $(meson_use test tests)
- -Dinstalled_tests=false
- -Dnls=enabled
- -Doss_fuzz=disabled
- $(meson_native_use_feature elf libelf)
- )
- meson_src_configure
-}
-
-multilib_src_test() {
- export XDG_CONFIG_DIRS=/etc/xdg
- export XDG_DATA_DIRS=/usr/local/share:/usr/share
- export G_DBUS_COOKIE_SHA1_KEYRING_DIR="${T}/temp"
- export LC_TIME=C # bug #411967
- export TZ=UTC
- unset GSETTINGS_BACKEND # bug #596380
- python_setup
-
- # https://bugs.gentoo.org/839807
- local -x SANDBOX_PREDICT=${SANDBOX_PREDICT}
- addpredict /usr/b
-
- # Related test is a bit nitpicking
- mkdir "$G_DBUS_COOKIE_SHA1_KEYRING_DIR"
- chmod 0700 "$G_DBUS_COOKIE_SHA1_KEYRING_DIR"
-
- meson_src_test --timeout-multiplier 2 --no-suite flaky
-}
-
-multilib_src_install() {
- meson_src_install
- keepdir /usr/$(get_libdir)/gio/modules
-}
-
-multilib_src_install_all() {
- # These are installed by dev-util/glib-utils
- # TODO: With patching we might be able to get rid of the python-any deps and removals, and test depend on glib-utils instead; revisit now with meson
- rm "${ED}/usr/bin/glib-genmarshal" || die
- rm "${ED}/usr/share/man/man1/glib-genmarshal.1" || die
- rm "${ED}/usr/bin/glib-mkenums" || die
- rm "${ED}/usr/share/man/man1/glib-mkenums.1" || die
- rm "${ED}/usr/bin/gtester-report" || die
- rm "${ED}/usr/share/man/man1/gtester-report.1" || die
- # gdbus-codegen manpage installed by dev-util/gdbus-codegen
- rm "${ED}/usr/share/man/man1/gdbus-codegen.1" || die
-}
-
-pkg_preinst() {
- xdg_pkg_preinst
-
- # Make gschemas.compiled belong to glib alone
- local cache="/usr/share/glib-2.0/schemas/gschemas.compiled"
-
- if [[ -e ${EROOT}${cache} ]]; then
- cp "${EROOT}"${cache} "${ED}"/${cache} || die
- else
- touch "${ED}"${cache} || die
- fi
-
- multilib_pkg_preinst() {
- # Make giomodule.cache belong to glib alone
- local cache="/usr/$(get_libdir)/gio/modules/giomodule.cache"
-
- if [[ -e ${EROOT}${cache} ]]; then
- cp "${EROOT}"${cache} "${ED}"${cache} || die
- else
- touch "${ED}"${cache} || die
- fi
- }
-
- # Don't run the cache ownership when cross-compiling, as it would end up with an empty cache
- # file due to inability to create it and GIO might not look at any of the modules there
- if ! tc-is-cross-compiler ; then
- multilib_foreach_abi multilib_pkg_preinst
- fi
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- # glib installs no schemas itself, but we force update for fresh install in case
- # something has dropped in a schemas file without direct glib dep; and for upgrades
- # in case the compiled schema format could have changed
- gnome2_schemas_update
-
- multilib_pkg_postinst() {
- gnome2_giomodule_cache_update \
- || die "Update GIO modules cache failed (for ${ABI})"
- }
- if ! tc-is-cross-compiler ; then
- multilib_foreach_abi multilib_pkg_postinst
- else
- ewarn "Updating of GIO modules cache skipped due to cross-compilation."
- ewarn "You might want to run gio-querymodules manually on the target for"
- ewarn "your final image for performance reasons and re-run it when packages"
- ewarn "installing GIO modules get upgraded or added to the image."
- fi
-
- for v in ${REPLACING_VERSIONS}; do
- if ver_test "$v" "-lt" "2.63.6"; then
- ewarn "glib no longer installs the gio-launch-desktop binary. You may need"
- ewarn "to restart your session for \"Open With\" dialogs to work."
- fi
- done
-}
-
-pkg_postrm() {
- xdg_pkg_postrm
- gnome2_schemas_update
-
- if [[ -z ${REPLACED_BY_VERSION} ]]; then
- multilib_pkg_postrm() {
- rm -f "${EROOT}"/usr/$(get_libdir)/gio/modules/giomodule.cache
- }
- multilib_foreach_abi multilib_pkg_postrm
- rm -f "${EROOT}"/usr/share/glib-2.0/schemas/gschemas.compiled
- fi
-}
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.74.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.74.3-r1.ebuild
similarity index 99%
rename from sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.74.2.ebuild
rename to sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.74.3-r1.ebuild
index c62ece284c..7585636eb1 100644
--- a/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.74.2.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-libs/glib/glib-2.74.3-r1.ebuild
@@ -30,7 +30,7 @@ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~
RDEPEND="
!=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
- >=dev-libs/libpcre2-10.32:0=[${MULTILIB_USEDEP},static-libs?]
+ >=dev-libs/libpcre2-10.32:0=[${MULTILIB_USEDEP},unicode(+),static-libs?]
>=dev-libs/libffi-3.0.13-r1:=[${MULTILIB_USEDEP}]
>=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
>=virtual/libintl-0-r2[${MULTILIB_USEDEP}]
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection-common/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection-common/Manifest
index 3df3cc0597..baaf52d4a7 100644
--- a/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection-common/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection-common/Manifest
@@ -1,2 +1 @@
-DIST gobject-introspection-1.72.0.tar.xz 1040936 BLAKE2B fd7600a927e57d5a076c203a084afe56a738d3a93109055be7bee22a96d6d5b08892300260288e5b83f883e54ca658cb24ef5c862abe435820c963bbf0cf8496 SHA512 b8fba2bd12e93776c55228acf3487bef36ee40b1abdc7f681b827780ac94a8bfa1f59b0c30d60fa5a1fea2f610de78b9e52029f411128067808f17eb6374cdc5
DIST gobject-introspection-1.74.0.tar.xz 1044008 BLAKE2B 223bb9b8b452f03945f941086e47fb3b14f03f8353f4f903b21e3f494af728652a44de986752374057e90dd8111f21f5b0cd3e00bb0a8c3aa25c8261bb0b9247 SHA512 decff5dda0ec5ec0afda4d6bcd3bdadcbf34289002c0d9c0c77ecf8c5d3f15d196b24d8035041545031006acbdfe76af47c42da061c40e200c87f2c74cd301f0
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection-common/gobject-introspection-common-1.72.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection-common/gobject-introspection-common-1.72.0.ebuild
deleted file mode 100644
index f41423be29..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection-common/gobject-introspection-common-1.72.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-GNOME_ORG_MODULE="gobject-introspection"
-
-inherit gnome.org
-
-DESCRIPTION="Build infrastructure for GObject Introspection"
-HOMEPAGE="https://wiki.gnome.org/Projects/GObjectIntrospection"
-
-LICENSE="HPND"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND="!<${CATEGORY}/${GNOME_ORG_MODULE}-${PV}"
-# Use !<${PV} because mixing gobject-introspection with different version of -common can cause issues like:
-# https://forums.gentoo.org/viewtopic-p-7421930.html
-
-src_configure() { :; }
-
-src_compile() { :; }
-
-src_install() {
- insinto /usr/share/aclocal
- doins m4/introspection.m4
-
- insinto /usr/share/gobject-introspection-1.0
- doins Makefile.introspection
-}
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection/Manifest
index 3df3cc0597..baaf52d4a7 100644
--- a/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection/Manifest
@@ -1,2 +1 @@
-DIST gobject-introspection-1.72.0.tar.xz 1040936 BLAKE2B fd7600a927e57d5a076c203a084afe56a738d3a93109055be7bee22a96d6d5b08892300260288e5b83f883e54ca658cb24ef5c862abe435820c963bbf0cf8496 SHA512 b8fba2bd12e93776c55228acf3487bef36ee40b1abdc7f681b827780ac94a8bfa1f59b0c30d60fa5a1fea2f610de78b9e52029f411128067808f17eb6374cdc5
DIST gobject-introspection-1.74.0.tar.xz 1044008 BLAKE2B 223bb9b8b452f03945f941086e47fb3b14f03f8353f4f903b21e3f494af728652a44de986752374057e90dd8111f21f5b0cd3e00bb0a8c3aa25c8261bb0b9247 SHA512 decff5dda0ec5ec0afda4d6bcd3bdadcbf34289002c0d9c0c77ecf8c5d3f15d196b24d8035041545031006acbdfe76af47c42da061c40e200c87f2c74cd301f0
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection/gobject-introspection-1.72.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection/gobject-introspection-1.72.0.ebuild
deleted file mode 100644
index 4aad17063e..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection/gobject-introspection-1.72.0.ebuild
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..11} )
-PYTHON_REQ_USE="xml(+)"
-inherit gnome.org meson python-single-r1 xdg
-
-DESCRIPTION="Introspection system for GObject-based libraries"
-HOMEPAGE="https://wiki.gnome.org/Projects/GObjectIntrospection"
-
-LICENSE="LGPL-2+ GPL-2+"
-SLOT="0"
-IUSE="doctool gtk-doc test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-# virtual/pkgconfig needed at runtime, bug #505408
-RDEPEND="
- >=dev-libs/gobject-introspection-common-${PV}
- >=dev-libs/glib-2.58.0:2
- dev-libs/libffi:=
- doctool? (
- $(python_gen_cond_dep '
- dev-python/mako[${PYTHON_USEDEP}]
- dev-python/markdown[${PYTHON_USEDEP}]
- ')
- )
- virtual/pkgconfig
- ${PYTHON_DEPS}
-"
-# Wants real bison, not virtual/yacc
-DEPEND="${RDEPEND}"
-BDEPEND="
- gtk-doc? (
- >=dev-util/gtk-doc-1.19
- app-text/docbook-xml-dtd:4.3
- app-text/docbook-xml-dtd:4.5
- )
- sys-devel/bison
- sys-devel/flex
- test? (
- x11-libs/cairo[glib]
- $(python_gen_cond_dep '
- dev-python/mako[${PYTHON_USEDEP}]
- dev-python/markdown[${PYTHON_USEDEP}]
- ')
- )
-"
-
-pkg_setup() {
- python-single-r1_pkg_setup
-}
-
-src_configure() {
- local emesonargs=(
- $(meson_feature test cairo)
- $(meson_feature doctool)
- #-Dglib_src_dir
- $(meson_use gtk-doc gtk_doc)
- #-Dcairo_libname
- -Dpython="${EPYTHON}"
- #-Dgir_dir_prefix
- )
- meson_src_configure
-}
-
-src_install() {
- meson_src_install
- python_fix_shebang "${ED}"/usr/bin/
- python_optimize "${ED}"/usr/$(get_libdir)/gobject-introspection/giscanner
-
- # Prevent collision with gobject-introspection-common
- rm -v "${ED}"/usr/share/aclocal/introspection.m4 \
- "${ED}"/usr/share/gobject-introspection-1.0/Makefile.introspection || die
- rmdir "${ED}"/usr/share/aclocal || die
-}
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection/gobject-introspection-1.74.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection/gobject-introspection-1.74.0.ebuild
index 6ac6d58ec4..140af9c36f 100644
--- a/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection/gobject-introspection-1.74.0.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-libs/gobject-introspection/gobject-introspection-1.74.0.ebuild
@@ -31,7 +31,7 @@ RDEPEND="
virtual/pkgconfig
${PYTHON_DEPS}
"
-# Wants real bison, not virtual/yacc
+# Wants real bison, not app-alternatives/yacc
DEPEND="${RDEPEND}"
BDEPEND="
gtk-doc? (
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.19.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.19.0.ebuild
index 13246a0a58..f392d54b0e 100644
--- a/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.19.0.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-libs/libtasn1/libtasn1-4.19.0.ebuild
@@ -20,7 +20,7 @@ RESTRICT="!test? ( test )"
BDEPEND="
sys-apps/help2man
- virtual/yacc
+ app-alternatives/yacc
test? ( valgrind? ( dev-util/valgrind ) )
verify-sig? ( sec-keys/openpgp-keys-libtasn1 )
"
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/files/libxml2-2.10.3-python3-unicode-errors.patch b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/files/libxml2-2.10.3-python3-unicode-errors.patch
new file mode 100644
index 0000000000..525e1fe36c
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/files/libxml2-2.10.3-python3-unicode-errors.patch
@@ -0,0 +1,35 @@
+https://bugs.gentoo.org/745162
+https://gitlab.gnome.org/GNOME/libxml2/-/issues/64
+
+--- a/python/libxml.c
++++ b/python/libxml.c
+@@ -1620,6 +1620,7 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNU
+ PyObject *message;
+ PyObject *result;
+ char str[1000];
++ unsigned char *ptr = (unsigned char *)str;
+
+ #ifdef DEBUG_ERROR
+ printf("libxml_xmlErrorFuncHandler(%p, %s, ...) called\n", ctx, msg);
+@@ -1636,12 +1637,20 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNU
+ str[999] = 0;
+ va_end(ap);
+
++#if PY_MAJOR_VERSION >= 3
++ /* Ensure the error string doesn't start at UTF8 continuation. */
++ while (*ptr && (*ptr & 0xc0) == 0x80)
++ ptr++;
++#endif
++
+ list = PyTuple_New(2);
+ PyTuple_SetItem(list, 0, libxml_xmlPythonErrorFuncCtxt);
+ Py_XINCREF(libxml_xmlPythonErrorFuncCtxt);
+- message = libxml_charPtrConstWrap(str);
++ message = libxml_charPtrConstWrap(ptr);
+ PyTuple_SetItem(list, 1, message);
+ result = PyEval_CallObject(libxml_xmlPythonErrorFuncHandler, list);
++ /* Forget any errors caused in the error handler. */
++ PyErr_Clear();
+ Py_XDECREF(list);
+ Py_XDECREF(result);
+ }
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.10.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.10.3-r1.ebuild
similarity index 98%
rename from sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.10.3.ebuild
rename to sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.10.3-r1.ebuild
index 7b940b3948..bc2c968b0d 100644
--- a/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.10.3.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.10.3-r1.ebuild
@@ -56,6 +56,8 @@ MULTILIB_CHOST_TOOLS=(
/usr/bin/xml2-config
)
+PATCHES=( "${FILESDIR}"/${PN}-2.10.3-python3-unicode-errors.patch )
+
DOCS=( NEWS README.md TODO TODO_SCHEMAS python/TODO )
src_unpack() {
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-3.0.21.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-3.0.21-r1.ebuild
similarity index 98%
rename from sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-3.0.21.ebuild
rename to sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-3.0.21-r1.ebuild
index a2a90b5763..0017e34636 100644
--- a/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-3.0.21.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-3.0.21-r1.ebuild
@@ -12,7 +12,7 @@ else
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
-PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_COMPAT=( python3_{9..10} )
DISTUTILS_USE_SETUPTOOLS=no
inherit distutils-r1 ${SRC_ECLASS}
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-3.0.22.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-3.0.22-r1.ebuild
similarity index 98%
rename from sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-3.0.22.ebuild
rename to sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-3.0.22-r1.ebuild
index 282eccf985..fee73e953a 100644
--- a/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-3.0.22.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-3.0.22-r1.ebuild
@@ -12,7 +12,7 @@ else
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
-PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_COMPAT=( python3_{9..10} )
DISTUTILS_USE_SETUPTOOLS=no
inherit distutils-r1 ${SRC_ECLASS}
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-9999.ebuild
index 494d051425..81289d3b60 100644
--- a/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-9999.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-util/catalyst/catalyst-9999.ebuild
@@ -12,7 +12,7 @@ else
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
-PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_COMPAT=( python3_{9..10} )
DISTUTILS_USE_SETUPTOOLS=no
inherit distutils-r1 linux-info optfeature ${SRC_ECLASS}
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/cmake/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/cmake/Manifest
index e8b0ff12b5..d2693717d5 100644
--- a/sdk_container/src/third_party/portage-stable/dev-util/cmake/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-util/cmake/Manifest
@@ -1,15 +1,11 @@
DIST cmake-3.23.3-SHA-256.txt 1452 BLAKE2B aa2e2dfb2757210688a5a9131ca1fffdf6617a52219d373fd908c08e52b7d77f0e980086561a083cabaf8d9f3e24b15064bb74ad2737fcbfe11c8aba5814eb4e SHA512 22808c050e8927867fc5d2daa6999d9eed53e99015f89d1f5bef61397d1b2a9888728e86fdca8716c47f8133e02b3fa726d0cc97c0bb4ab5f5ff16a1fc0ae82f
DIST cmake-3.23.3-SHA-256.txt.asc 833 BLAKE2B 10f61d7cfaa5c86d0e372f33d9ba0dbe7ae9cbfe17669107167b3ae72d0e337c63fb1c27a528dcda804323a1f0d4843b630e15427c33e0f5d5c568e27cea769d SHA512 75ff4b25fdd71bc05a7d6fec3c72ec5b8d6ed7ac980d533e6c820855c74a1a58f52d53c1a454dffe1a15568445c4c1c805891997e5709567c9e7709ba1c5e4d9
DIST cmake-3.23.3.tar.gz 9988050 BLAKE2B 55105ce380e5e9f1839fc38cc0eaefe505d58bffa60feab9813a36c7cac92f4fb6aa6b6aaad899f1e8d58cfa5ececb9e7335a470244ccc06848d833b1eddf224 SHA512 75f86abe60ef28ba9bd06546c0c24578921621fb4be942171e629366a759cf1469e430945addc85f8ce977920883c063ed26de1b78fd24dfd98d0eb604800632
-DIST cmake-3.24.2-SHA-256.txt 1646 BLAKE2B 3c48226c96844c5ddd8567637a61eca697425021735d5dc8613a1fd7a68887f6707b6030c1e4476af5e4bdb4830cc4ff3d8708f4bdf557ba94508086e0447030 SHA512 f7500d8c9a500c9ad2679a68d6343cbbbae1483014ab2cd48a056e1e9591b6edd0d712e9ff5441e19c05284696e6c52ebdc3cf1efc61432f2764da7703816b49
-DIST cmake-3.24.2-SHA-256.txt.asc 833 BLAKE2B fe6a3caa3db7b6be186e49ee5d86706f2cda9a45858bc964be5407f577195d0af74c10e66ea30faa0a35280f1c9f927732f9cc7fcb9dae8e521882955b6ef617 SHA512 a0fa1a002f2f23e8b3b8fb2689905ac618ca423b96f904bee172d6a62e6fb0c0a46394ce57474be9c9810e1d09abf3b192f595cb0e92d5c62d11b60f0c572b82
-DIST cmake-3.24.2-docs.tar.xz 492188 BLAKE2B 64e0d69ce8e739e6622b0cfde8956cb2bf67f9bf412b8d98afa1657bd30d8a2a1cf874e6422c78c222199616aac85d472ef398c83da29d5d64516384e9ed69aa SHA512 d0ef81dfe37ac2a225fe795fd3e6780e3b8fd5caa472a14ff8d036917172efd13126897c7a2a78d8269aa20e4f35c7b9be7bed14ecbfb24df332c332a4ff16c4
-DIST cmake-3.24.2.tar.gz 10396126 BLAKE2B fcfdbbce94ce6cdb3fa478afe591bc63ba25104a32edc3dd9395d7b6bd16e222f41428ef4f9982061d6d1e69b10efbc2a33cc9df4573400612b4b756b80ec348 SHA512 6f0e8e29bf0336f555ba72c4d83f35d820f8a5159cc999d48795dc57a6627b4ee3966dda84ca97d39906e35dd476ea00cf80023672cc0fad862e2996194c0674
DIST cmake-3.24.3-SHA-256.txt 1646 BLAKE2B 739503a16c2e333c9b05a3232e2dcc56105f6933414a4a2054a582b9cf53a12c2b1a37d2189077cbcd138b8cc2828ef1819ab0fc74ded926ef0df7c7ea8c79e1 SHA512 b670acc21b98d1da22b31743f83ba10d6dbfda60341457a02639ee6f15d50462ddcd90b5992eff275d77e7cce6f074aff72abd95c539d18f191682ad87d7884e
DIST cmake-3.24.3-SHA-256.txt.asc 833 BLAKE2B f8797072c2d30facfbbebc972c68cd1a6510331e63c67e6b665bd97dd9013e354bab68e03d578698d2f9e50c173ff8e1cac40751c7a3645be294a717f4bfee3a SHA512 bc67eaf6dba935df85ae3d7c37600259b032579813b275087332d5cc4c72dd6bdf44762260729a15f237f69f772670291bb2f2dcc4b155fb17112e0e8fa01d6b
DIST cmake-3.24.3-docs.tar.xz 492156 BLAKE2B 92edd031189673c46e8e13a5e1200917734b918651dc01d982c25602e48cd5d5f014fa8563bdc79b3d09d90ef07a52c9d5a570a5181c59c233ba5bf450cdd5df SHA512 75806743fca976098b9b7ee777c494478142ab5686dc8ccb18510b5938c7e88cf8b3bc47321022f55f33c04bb0a7f549d70be8c765d1ec143467e679c8863132
DIST cmake-3.24.3.tar.gz 10399876 BLAKE2B 24e2ff8cf4f63ba182dd305c14367fa0163f6187da84f7ec10b1ad6241c7df5b48f329b67ba5f7b5d3b644cba89c7adb848a3ae7196bf5b4dbfaedf178dba250 SHA512 57edf2a8c1c9edeed7fd11271083f333d940b31e0e909d9c71671465961559c505e4e22f36e68bfe1a40a01eb05fe94bc8d37b062f9be613f959f864207e3764
-DIST cmake-3.25.0-SHA-256.txt 1646 BLAKE2B 0408c43f36777473c0df229059d6508990a01535f5b3b8d3ae3b1cda221abab5cc2d37dc655de44a581a4b18b3ef73e920c20921d649a9149b7307b9d548ba6a SHA512 8b73a55837e86fa2e166a12041558cc45d1910514c9a1d63398758a99d76687f13f0c8b5244b89297bd890776a5c286a20e278361eefa0bf8db136744ba76515
-DIST cmake-3.25.0-SHA-256.txt.asc 833 BLAKE2B 1424ff89c7ae68352daddbdb810e818020bdd0979fac32de98839cea510ffb8d30a517327f1853d59bf83f846ccde528d07ed624e55c1b1f185551e4f7bc47d6 SHA512 354f7fbb3597eed8f0d94a496cac13b8d9301576b23bf85fcd5d14b84f2848d96534e2c827f7311a00043da789b4160adad805717f110cfc4677d585691e7e55
-DIST cmake-3.25.0-docs.tar.xz 499744 BLAKE2B d6bfb6f58bab66e0b444206c93a03c10e084f7326c9ecdc7a1a2c5ccd79e4d6403eff92989e05883e5985782dd93e9daea19e773a7fefdfb3808deda0546288b SHA512 7c382bd837f808fbfe3c665c2294ba935f20f62acf24c46c760d79f252b3e26f7ff70c75cdd802bfe9fc65ef73a560ce686caa53a4516c1071800f1ce2285285
-DIST cmake-3.25.0.tar.gz 10560389 BLAKE2B 182983a7fc2eedcbd369fef1b1cd118044abcd1679870ca301f3aa8c0ddebd7cb509ae843d0f7a9847b2b54f79235c3407efd47b6a4684c010b6a3b030e1db4b SHA512 f6e527161b8501c72b71a95ff7a0cf304ae02a214086ff58dd686543243d939e83faf94780cda477b19e4d42e4b8f1ff96c52f98e8f7f717e102a5229f4dd44c
+DIST cmake-3.25.1-SHA-256.txt 1646 BLAKE2B b5ebf93e481b2bf63c5448875983f0b4d13f4e588eb226577969738f3b56c0ca14d9ab99ffc4dbcf8a2ab74a159de00368ce6ebf9667b90ef657083f351c4c01 SHA512 5e7618b27b0cdb674ee0ea7e1e6641ba31da6f4414ae1a08ed11691e105ebd89a39a307b53e04e2386785bcd2917e1b8d65755ef7c07a1d9f4f400dcb5385b44
+DIST cmake-3.25.1-SHA-256.txt.asc 833 BLAKE2B 3dce05d9ad5852165418726fc16de4fcc6c66aa379ce926a68c10515dcd87ed40b60ce345952fc2c83f342b5ebb0f02134af6c07b58e9dcf7e1757ad6294d8b5 SHA512 70ec7f1cef52d76ab6732556b663509de780648a2009608632a7df0de86c1d8b91fab874233413216a486fa97648d95de1556f89f48cea936408b609380c5aa4
+DIST cmake-3.25.1-docs.tar.xz 499680 BLAKE2B 0baac457fbde68046080a906093be96c6fe3d7a4b592125237258768eeb0f9c80d3e1e867e2850fe3ebd27a1284d2f47245ca73b8f5b6eb4c046f2afdab78e56 SHA512 02e1bf84be15a7c796a9a7535ee286ca3cddc478707daa1be076be44285f762a0c5eb620b34815e6713b7262a534d7c7fb48e53896c4706645792397f8da83e3
+DIST cmake-3.25.1.tar.gz 10561054 BLAKE2B 3aaf546ebc935caaaf6d15c61f99184964902a50004222ba29e17714488b219f8d8754008f2b2d701dd7befe8c0f4cd0edad92fcabb8ad37b981f31b2d1e37a2 SHA512 ec4203cac569e3c340bf6535d193d9ccff9c4e4d59a7a7ae5b9156172f647d9f9212bdc37b3c12cbd676b1351b9a64364c563aaa968a2f41e0f402410ed78d57
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/cmake/cmake-3.24.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/cmake/cmake-3.24.2.ebuild
deleted file mode 100644
index 835f3a198d..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-util/cmake/cmake-3.24.2.ebuild
+++ /dev/null
@@ -1,293 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs
-# Set to 1 if prebuilt, 0 if not
-# (the construct below is to allow overriding from env for script)
-: ${CMAKE_DOCS_PREBUILT:=1}
-
-CMAKE_DOCS_PREBUILT_DEV=sam
-CMAKE_DOCS_VERSION=$(ver_cut 1-3)
-# Default to generating docs (inc. man pages) if no prebuilt; overridden later
-# See bug #784815
-CMAKE_DOCS_USEFLAG="+doc"
-
-# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja
-# ... but seems fine as of 3.22.3?
-# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759.
-CMAKE_MAKEFILE_GENERATOR="emake"
-CMAKE_REMOVE_MODULES_LIST=( none )
-inherit bash-completion-r1 cmake elisp-common flag-o-matic multiprocessing \
- toolchain-funcs virtualx xdg-utils
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="Cross platform Make"
-HOMEPAGE="https://cmake.org/"
-if [[ ${PV} == 9999 ]] ; then
- CMAKE_DOCS_PREBUILT=0
-
- EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git"
- inherit git-r3
-else
- SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz"
-
- if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then
- SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )"
- fi
-
- if [[ ${PV} != *_rc* ]] ; then
- VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/bradking.asc
- inherit verify-sig
-
- SRC_URI+=" verify-sig? (
- https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt
- https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt.asc
- )"
-
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
- BDEPEND="verify-sig? ( sec-keys/openpgp-keys-bradking )"
- fi
-fi
-
-[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc"
-
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="CMake"
-SLOT="0"
-IUSE="${CMAKE_DOCS_USEFLAG} emacs ncurses qt5 test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=app-arch/libarchive-3.3.3:=
- app-crypt/rhash
- >=dev-libs/expat-2.0.1
- >=dev-libs/jsoncpp-1.9.2-r2:0=
- >=dev-libs/libuv-1.10.0:=
- >=net-misc/curl-7.21.5[ssl]
- sys-libs/zlib
- virtual/pkgconfig
- emacs? ( >=app-editors/emacs-23.1:* )
- ncurses? ( sys-libs/ncurses:0= )
- qt5? (
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtwidgets:5
- )
-"
-DEPEND="${RDEPEND}"
-BDEPEND+="
- doc? (
- dev-python/requests
- dev-python/sphinx
- )
- test? ( app-arch/libarchive[zstd] )
-"
-
-SITEFILE="50${PN}-gentoo.el"
-
-PATCHES=(
- # Prefix
- "${FILESDIR}"/${PN}-3.16.0_rc4-darwin-bundle.patch
- "${FILESDIR}"/${PN}-3.14.0_rc3-prefix-dirs.patch
- "${FILESDIR}"/${PN}-3.19.1-darwin-gcc.patch
-
- # Handle gentoo packaging in find modules
- "${FILESDIR}"/${PN}-3.17.0_rc1-FindBLAS.patch
- # Next patch needs to be reworked
- #"${FILESDIR}"/${PN}-3.17.0_rc1-FindLAPACK.patch
- "${FILESDIR}"/${PN}-3.5.2-FindQt4.patch
-
- # Respect python eclasses
- "${FILESDIR}"/${PN}-2.8.10.2-FindPythonLibs.patch
- "${FILESDIR}"/${PN}-3.9.0_rc2-FindPythonInterp.patch
-
- "${FILESDIR}"/${PN}-3.18.0-filter_distcc_warning.patch # bug 691544
-
- # upstream fixes (can usually be removed with a version bump)
-)
-
-cmake_src_bootstrap() {
- # disable running of cmake in bootstrap command
- sed -i \
- -e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
- bootstrap || die "sed failed"
-
- # execinfo.h on Solaris isn't quite what it is on Darwin
- if [[ ${CHOST} == *-solaris* ]] ; then
- sed -i -e 's/execinfo\.h/blablabla.h/' \
- Source/kwsys/CMakeLists.txt || die
- fi
-
- # bootstrap script isn't exactly /bin/sh compatible
- tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \
- --prefix="${T}/cmakestrap/" \
- --parallel=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") \
- || die "Bootstrap failed"
-}
-
-src_unpack() {
- if [[ ${PV} == 9999 ]] ; then
- git-r3_src_unpack
- elif ! use verify-sig || [[ ${PV} == *_rc* ]] ; then
- default
- else
- cd "${DISTDIR}" || die
-
- # See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature
- verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc}
- verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz
-
- cd "${WORKDIR}" || die
-
- default
- fi
-}
-
-src_prepare() {
- cmake_src_prepare
-
- if [[ ${CHOST} == *-darwin* ]] ; then
- # Disable Xcode hooks, bug #652134
- sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \
- Source/CMakeLists.txt || die
- sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \
- -e '/cmGlobalXCodeGenerator.h/d' \
- Source/cmake.cxx || die
-
- # Disable isysroot usage with GCC, we've properly instructed
- # where things are via GCC configuration and ldwrapper
- sed -i -e '/cmake_gnu_set_sysroot_flag/d' \
- Modules/Platform/Apple-GNU-*.cmake || die
- # Disable isysroot usage with clang as well
- sed -i -e '/_SYSROOT_FLAG/d' \
- Modules/Platform/Apple-Clang.cmake || die
- # Don't set a POSIX standard, system headers don't like that, #757426
- sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \
- Source/cmLoadCommandCommand.cxx \
- Source/cmStandardLexer.h \
- Source/cmSystemTools.cxx \
- Source/cmTimestamp.cxx
- sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \
- Source/cmStandardLexer.h
- fi
-
- # Add gcc libs to the default link paths
- sed -i \
- -e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
- -e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \
- -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
- Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
-
- if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then
- CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
- cmake_src_bootstrap
- fi
-}
-
-src_configure() {
- # Fix linking on Solaris
- [[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl
-
- # ODR warnings, bug #858335
- # https://gitlab.kitware.com/cmake/cmake/-/issues/20740
- filter-lto
-
- local mycmakeargs=(
- -DCMAKE_USE_SYSTEM_LIBRARIES=ON
- -DCMAKE_DOC_DIR=/share/doc/${PF}
- -DCMAKE_MAN_DIR=/share/man
- -DCMAKE_DATA_DIR=/share/${PN}
- -DSPHINX_MAN=$(usex doc)
- -DSPHINX_HTML=$(usex doc)
- -DBUILD_CursesDialog="$(usex ncurses)"
- -DBUILD_TESTING=$(usex test)
- )
- use qt5 && mycmakeargs+=( -DBUILD_QtDialog=ON )
-
- cmake_src_configure
-}
-
-src_compile() {
- cmake_src_compile
- use emacs && elisp-compile Auxiliary/cmake-mode.el
-}
-
-src_test() {
- # Fix OutDir and SelectLibraryConfigurations tests
- # these are altered thanks to our eclass
- sed -i -e 's:^#_cmake_modify_IGNORE ::g' \
- "${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
- || die
-
- pushd "${BUILD_DIR}" > /dev/null || die
-
- # Excluded tests:
- # BootstrapTest: we actualy bootstrap it every time so why test it.
- # BundleUtilities: bundle creation broken
- # CMakeOnly.AllFindModules: pthread issues
- # CTest.updatecvs: which fails to commit as root
- # Fortran: requires fortran
- # RunCMake.CompilerLauncher: also requires fortran
- # RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because
- # debugedit binary is not in the expected location
- # RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because
- # it can't find a deb package that owns libc
- # TestUpload, which requires network access
- # RunCMake.CMP0125, known failure reported upstream (bug #829414)
- local myctestargs=(
- --output-on-failure
- -E "(BootstrapTest|BundleUtilities|CMakeOnly.AllFindModules|CompileOptions|CTest.UpdateCVS|Fortran|RunCMake.CompilerLauncher|RunCMake.CPack_(DEB|RPM)|TestUpload|RunCMake.CMP0125)" \
- )
-
- virtx cmake_src_test
-}
-
-src_install() {
- cmake_src_install
-
- # If USE=doc, there'll be newly generated docs which we install instead.
- if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then
- doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8]
- fi
-
- if use emacs; then
- elisp-install ${PN} Auxiliary/cmake-mode.el Auxiliary/cmake-mode.elc
- elisp-site-file-install "${FILESDIR}/${SITEFILE}"
- fi
-
- insinto /usr/share/vim/vimfiles/syntax
- doins Auxiliary/vim/syntax/cmake.vim
-
- insinto /usr/share/vim/vimfiles/indent
- doins Auxiliary/vim/indent/cmake.vim
-
- insinto /usr/share/vim/vimfiles/ftdetect
- doins "${FILESDIR}/${PN}.vim"
-
- dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
-}
-
-pkg_postinst() {
- use emacs && elisp-site-regen
-
- if use qt5; then
- xdg_icon_cache_update
- xdg_desktop_database_update
- xdg_mimeinfo_database_update
- fi
-}
-
-pkg_postrm() {
- use emacs && elisp-site-regen
-
- if use qt5; then
- xdg_icon_cache_update
- xdg_desktop_database_update
- xdg_mimeinfo_database_update
- fi
-}
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/cmake/cmake-3.25.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/cmake/cmake-3.25.1.ebuild
similarity index 100%
rename from sdk_container/src/third_party/portage-stable/dev-util/cmake/cmake-3.25.0.ebuild
rename to sdk_container/src/third_party/portage-stable/dev-util/cmake/cmake-3.25.1.ebuild
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/Manifest
index 878c1cbe29..9ad6d080eb 100644
--- a/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/Manifest
@@ -1,4 +1,2 @@
-DIST glib-2.72.3.tar.xz 4893484 BLAKE2B 1360c887b07ede3de3a7d31589f3dfc07ada2fe3e7901d3f30048ab9a1379357753ae142c6c107b3fcd6dd61e1401fbe6db22f0e89ea617db2c1073f1900cbe6 SHA512 8834ab7498577c2f659d135b87c27b34e1157be27f6c1fe5af0d64a94654f78cbe6a87e6868966849674c34e88a9d51d2de8d89f78f86aa1e1af3482761f0638
-DIST glib-2.74.0.tar.xz 5183072 BLAKE2B b21e5a72e2ce3390cbf13601aa902104f1ac1cfbd75181d30cd340f24b5875753f898b229f99c71d47d499be86cddb0191a0072c0c2decc82956a46c16255905 SHA512 5cdadd2f4568c0c3d45083b4d39699abf651e42e020f7bc880cce3ff33d28943118388d17a0632777e843f48009c1f97d5634fde3cb8c69c7c7f35b278ac8225
DIST glib-2.74.1.tar.xz 5189452 BLAKE2B 58d977a5d2a100aa9125f2009ae66c6f27232dff70159433076552bdb64f9a6a93d7cb705feba890ee43d6f16d4766f6f1d5502c2e01eeb7e88d5ed0dd205d5c SHA512 21176cb95fcab49a781d02789bf21191a96a34a6391f066699b3c20b414b3169c958bd86623deb34ca55912083862885f7a7d12b67cc041467da2ba94d9e83c3
-DIST glib-2.74.2.tar.xz 5182312 BLAKE2B 319a8fb793adb7343b77119d7b7839efad6f91b9c7af079f53d54b435067ab12162c4791ca6b8e9b7fd6d269975e9559951cbf80a065072541f407a0d8e2ce74 SHA512 90bb2410f038e47401fc985ff7fe6d1abecec9417254e039ac18e6b0d77e0b8539b975bef84d5f933be8e43c8ceca236bd466622504491e08e71d079d8804895
+DIST glib-2.74.3.tar.xz 5181732 BLAKE2B 46c37be9519866af040b2aaf35129a9cfae6e2c74636c01755b901002fa77f4e2305025691d7a8279acfbae1298a4b5b1e095b333bed3b067e9820547b6eca97 SHA512 a9aa7e84187abb57aeeff9c7f4c4125be742a510ae5d39b6b62696ad1a715c36b353c6c14222caeb1e87bed930fb54184dba77118b991c42f1857a292c6aa77b
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.72.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.72.3.ebuild
deleted file mode 100644
index 111476eb0a..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.72.3.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-GNOME_ORG_MODULE="glib"
-PYTHON_COMPAT=( python3_{8..11} )
-PYTHON_REQ_USE="xml(+)"
-DISTUTILS_SINGLE_IMPL=1
-DISTUTILS_USE_SETUPTOOLS=no
-
-inherit gnome.org distutils-r1
-
-DESCRIPTION="GDBus code and documentation generator"
-HOMEPAGE="https://www.gtk.org/"
-
-LICENSE="LGPL-2+"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
-
-RDEPEND="${PYTHON_DEPS}"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-libs/libxslt
- app-text/docbook-xsl-stylesheets
-"
-
-S="${WORKDIR}/glib-${PV}/gio/gdbus-2.0/codegen"
-
-python_prepare_all() {
- PATCHES=(
- "${FILESDIR}/${PN}-2.56.1-sitedir.patch"
- )
- distutils-r1_python_prepare_all
-
- local MAJOR_VERSION=$(ver_cut 1)
- local MINOR_VERSION=$(ver_cut 2)
- sed -e 's:@PYTHON@:python:' gdbus-codegen.in > gdbus-codegen || die
- sed -e "s:@VERSION@:${PV}:" \
- -e "s:@MAJOR_VERSION@:${MAJOR_VERSION}:" \
- -e "s:@MINOR_VERSION@:${MINOR_VERSION}:" config.py.in > config.py || die
- cp "${FILESDIR}/setup.py-2.32.4" setup.py || die "cp failed"
- sed -e "s/@PV@/${PV}/" -i setup.py || die "sed setup.py failed"
-}
-
-do_xsltproc_command() {
- # Taken from meson.build for manual manpage building - keep in sync (also copied to dev-util/glib-utils)
- xsltproc \
- --nonet \
- --stringparam man.output.quietly 1 \
- --stringparam funcsynopsis.style ansi \
- --stringparam man.th.extra1.suppress 1 \
- --stringparam man.authors.section.enabled 0 \
- --stringparam man.copyright.section.enabled 0 \
- -o "${2}" \
- http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl \
- "${1}" || die "manpage generation failed"
-}
-
-src_compile() {
- distutils-r1_src_compile
- do_xsltproc_command "${WORKDIR}/glib-${PV}/docs/reference/gio/gdbus-codegen.xml" "${WORKDIR}/glib-${PV}/docs/reference/gio/gdbus-codegen.1"
-}
-
-src_test() {
- einfo "Skipping tests. This package is tested by dev-libs/glib"
- einfo "when merged with FEATURES=test"
-}
-
-python_install_all() {
- distutils-r1_python_install_all # no-op, but prevents QA warning
- doman "${WORKDIR}/glib-${PV}/docs/reference/gio/gdbus-codegen.1"
-}
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.74.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.74.2.ebuild
deleted file mode 100644
index 6964fb9fd4..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.74.2.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-GNOME_ORG_MODULE="glib"
-PYTHON_COMPAT=( python3_{8..11} )
-PYTHON_REQ_USE="xml(+)"
-DISTUTILS_USE_PEP517=setuptools
-DISTUTILS_SINGLE_IMPL=1
-
-inherit gnome.org distutils-r1
-
-DESCRIPTION="GDBus code and documentation generator"
-HOMEPAGE="https://www.gtk.org/"
-
-LICENSE="LGPL-2+"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
-
-RDEPEND="${PYTHON_DEPS}"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-libs/libxslt
- app-text/docbook-xsl-stylesheets
-"
-
-S="${WORKDIR}/glib-${PV}/gio/gdbus-2.0/codegen"
-
-python_prepare_all() {
- PATCHES=(
- "${FILESDIR}/${PN}-2.56.1-sitedir.patch"
- )
- distutils-r1_python_prepare_all
-
- local MAJOR_VERSION=$(ver_cut 1)
- local MINOR_VERSION=$(ver_cut 2)
- sed -e 's:@PYTHON@:python:' gdbus-codegen.in > gdbus-codegen || die
- sed -e "s:@VERSION@:${PV}:" \
- -e "s:@MAJOR_VERSION@:${MAJOR_VERSION}:" \
- -e "s:@MINOR_VERSION@:${MINOR_VERSION}:" config.py.in > config.py || die
- cp "${FILESDIR}/setup.py-2.32.4" setup.py || die "cp failed"
- sed -e "s/@PV@/${PV}/" -i setup.py || die "sed setup.py failed"
-}
-
-do_xsltproc_command() {
- # Taken from meson.build for manual manpage building - keep in sync (also copied to dev-util/glib-utils)
- xsltproc \
- --nonet \
- --stringparam man.output.quietly 1 \
- --stringparam funcsynopsis.style ansi \
- --stringparam man.th.extra1.suppress 1 \
- --stringparam man.authors.section.enabled 0 \
- --stringparam man.copyright.section.enabled 0 \
- -o "${2}" \
- http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl \
- "${1}" || die "manpage generation failed"
-}
-
-src_compile() {
- distutils-r1_src_compile
- do_xsltproc_command "${WORKDIR}/glib-${PV}/docs/reference/gio/gdbus-codegen.xml" "${WORKDIR}/glib-${PV}/docs/reference/gio/gdbus-codegen.1"
-}
-
-src_test() {
- einfo "Skipping tests. This package is tested by dev-libs/glib"
- einfo "when merged with FEATURES=test"
-}
-
-python_install_all() {
- distutils-r1_python_install_all # no-op, but prevents QA warning
- doman "${WORKDIR}/glib-${PV}/docs/reference/gio/gdbus-codegen.1"
-}
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.74.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.74.3.ebuild
similarity index 100%
rename from sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.74.0.ebuild
rename to sdk_container/src/third_party/portage-stable/dev-util/gdbus-codegen/gdbus-codegen-2.74.3.ebuild
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/Manifest
index 878c1cbe29..9ad6d080eb 100644
--- a/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/Manifest
@@ -1,4 +1,2 @@
-DIST glib-2.72.3.tar.xz 4893484 BLAKE2B 1360c887b07ede3de3a7d31589f3dfc07ada2fe3e7901d3f30048ab9a1379357753ae142c6c107b3fcd6dd61e1401fbe6db22f0e89ea617db2c1073f1900cbe6 SHA512 8834ab7498577c2f659d135b87c27b34e1157be27f6c1fe5af0d64a94654f78cbe6a87e6868966849674c34e88a9d51d2de8d89f78f86aa1e1af3482761f0638
-DIST glib-2.74.0.tar.xz 5183072 BLAKE2B b21e5a72e2ce3390cbf13601aa902104f1ac1cfbd75181d30cd340f24b5875753f898b229f99c71d47d499be86cddb0191a0072c0c2decc82956a46c16255905 SHA512 5cdadd2f4568c0c3d45083b4d39699abf651e42e020f7bc880cce3ff33d28943118388d17a0632777e843f48009c1f97d5634fde3cb8c69c7c7f35b278ac8225
DIST glib-2.74.1.tar.xz 5189452 BLAKE2B 58d977a5d2a100aa9125f2009ae66c6f27232dff70159433076552bdb64f9a6a93d7cb705feba890ee43d6f16d4766f6f1d5502c2e01eeb7e88d5ed0dd205d5c SHA512 21176cb95fcab49a781d02789bf21191a96a34a6391f066699b3c20b414b3169c958bd86623deb34ca55912083862885f7a7d12b67cc041467da2ba94d9e83c3
-DIST glib-2.74.2.tar.xz 5182312 BLAKE2B 319a8fb793adb7343b77119d7b7839efad6f91b9c7af079f53d54b435067ab12162c4791ca6b8e9b7fd6d269975e9559951cbf80a065072541f407a0d8e2ce74 SHA512 90bb2410f038e47401fc985ff7fe6d1abecec9417254e039ac18e6b0d77e0b8539b975bef84d5f933be8e43c8ceca236bd466622504491e08e71d079d8804895
+DIST glib-2.74.3.tar.xz 5181732 BLAKE2B 46c37be9519866af040b2aaf35129a9cfae6e2c74636c01755b901002fa77f4e2305025691d7a8279acfbae1298a4b5b1e095b333bed3b067e9820547b6eca97 SHA512 a9aa7e84187abb57aeeff9c7f4c4125be742a510ae5d39b6b62696ad1a715c36b353c6c14222caeb1e87bed930fb54184dba77118b991c42f1857a292c6aa77b
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.72.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.72.3.ebuild
deleted file mode 100644
index fb40867171..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.72.3.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..11} )
-GNOME_ORG_MODULE="glib"
-
-inherit gnome.org python-single-r1
-
-DESCRIPTION="Build utilities for GLib using projects"
-HOMEPAGE="https://www.gtk.org/"
-
-LICENSE="LGPL-2.1+"
-SLOT="0" # /usr/bin utilities that can't be parallel installed by their nature
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
-
-RDEPEND="${PYTHON_DEPS}"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-libs/libxslt
- app-text/docbook-xsl-stylesheets
-"
-
-src_configure() { :; }
-
-do_xsltproc_command() {
- # Taken from meson.build for manual manpage building - keep in sync (also copied to dev-util/gdbus-codegen)
- xsltproc \
- --nonet \
- --stringparam man.output.quietly 1 \
- --stringparam funcsynopsis.style ansi \
- --stringparam man.th.extra1.suppress 1 \
- --stringparam man.authors.section.enabled 0 \
- --stringparam man.copyright.section.enabled 0 \
- -o "${2}" \
- http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl \
- "${1}" || die "manpage generation failed"
-}
-
-src_compile() {
- sed -e "s:@VERSION@:${PV}:g;s:@PYTHON@:python:g" gobject/glib-genmarshal.in > gobject/glib-genmarshal || die
- sed -e "s:@VERSION@:${PV}:g;s:@PYTHON@:python:g" gobject/glib-mkenums.in > gobject/glib-mkenums || die
- sed -e "s:@GLIB_VERSION@:${PV}:g;s:@PYTHON@:python:g" glib/gtester-report.in > glib/gtester-report || die
- do_xsltproc_command docs/reference/gobject/glib-genmarshal.xml docs/reference/gobject/glib-genmarshal.1
- do_xsltproc_command docs/reference/gobject/glib-mkenums.xml docs/reference/gobject/glib-mkenums.1
- do_xsltproc_command docs/reference/glib/gtester-report.xml docs/reference/glib/gtester-report.1
-}
-
-src_install() {
- python_fix_shebang gobject/glib-genmarshal
- python_fix_shebang gobject/glib-mkenums
- python_fix_shebang glib/gtester-report
- exeinto /usr/bin
- doexe gobject/glib-genmarshal
- doexe gobject/glib-mkenums
- doexe glib/gtester-report
- doman docs/reference/gobject/glib-genmarshal.1
- doman docs/reference/gobject/glib-mkenums.1
- doman docs/reference/glib/gtester-report.1
-}
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.74.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.74.2.ebuild
deleted file mode 100644
index c715c1e6fd..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.74.2.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..11} )
-GNOME_ORG_MODULE="glib"
-
-inherit gnome.org python-single-r1
-
-DESCRIPTION="Build utilities for GLib using projects"
-HOMEPAGE="https://www.gtk.org/"
-
-LICENSE="LGPL-2.1+"
-SLOT="0" # /usr/bin utilities that can't be parallel installed by their nature
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
-
-RDEPEND="${PYTHON_DEPS}"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-libs/libxslt
- app-text/docbook-xsl-stylesheets
-"
-
-src_configure() { :; }
-
-do_xsltproc_command() {
- # Taken from meson.build for manual manpage building - keep in sync (also copied to dev-util/gdbus-codegen)
- xsltproc \
- --nonet \
- --stringparam man.output.quietly 1 \
- --stringparam funcsynopsis.style ansi \
- --stringparam man.th.extra1.suppress 1 \
- --stringparam man.authors.section.enabled 0 \
- --stringparam man.copyright.section.enabled 0 \
- -o "${2}" \
- http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl \
- "${1}" || die "manpage generation failed"
-}
-
-src_compile() {
- sed -e "s:@VERSION@:${PV}:g;s:@PYTHON@:python:g" gobject/glib-genmarshal.in > gobject/glib-genmarshal || die
- sed -e "s:@VERSION@:${PV}:g;s:@PYTHON@:python:g" gobject/glib-mkenums.in > gobject/glib-mkenums || die
- sed -e "s:@GLIB_VERSION@:${PV}:g;s:@PYTHON@:python:g" glib/gtester-report.in > glib/gtester-report || die
- do_xsltproc_command docs/reference/gobject/glib-genmarshal.xml docs/reference/gobject/glib-genmarshal.1
- do_xsltproc_command docs/reference/gobject/glib-mkenums.xml docs/reference/gobject/glib-mkenums.1
- do_xsltproc_command docs/reference/glib/gtester-report.xml docs/reference/glib/gtester-report.1
-}
-
-src_install() {
- python_fix_shebang gobject/glib-genmarshal
- python_fix_shebang gobject/glib-mkenums
- python_fix_shebang glib/gtester-report
- exeinto /usr/bin
- doexe gobject/glib-genmarshal
- doexe gobject/glib-mkenums
- doexe glib/gtester-report
- doman docs/reference/gobject/glib-genmarshal.1
- doman docs/reference/gobject/glib-mkenums.1
- doman docs/reference/glib/gtester-report.1
-}
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.74.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.74.3.ebuild
similarity index 100%
rename from sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.74.0.ebuild
rename to sdk_container/src/third_party/portage-stable/dev-util/glib-utils/glib-utils-2.74.3.ebuild
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/patchelf/patchelf-0.17.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/patchelf/patchelf-0.17.0.ebuild
index 4192dd06a2..ef24854c86 100644
--- a/sdk_container/src/third_party/portage-stable/dev-util/patchelf/patchelf-0.17.0.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-util/patchelf/patchelf-0.17.0.ebuild
@@ -9,7 +9,7 @@ DESCRIPTION="Small utility to modify the dynamic linker and RPATH of ELF executa
HOMEPAGE="https://github.com/NixOS/patchelf"
SRC_URI="https://github.com/NixOS/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~riscv-linux ~x86-linux"
+KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~riscv-linux ~x86-linux"
LICENSE="GPL-3"
src_prepare() {
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/strace/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/strace/Manifest
index d37a85418b..537aae63a6 100644
--- a/sdk_container/src/third_party/portage-stable/dev-util/strace/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-util/strace/Manifest
@@ -1,3 +1,4 @@
DIST strace-5.17.tar.xz 2281220 BLAKE2B 27e7dc19302c58144b0a7d8de41f717760b8e3cde4ab56892045727597bbfc894bf8f137aee476548c2d16d1e9c8005f931f31a5d2f8bfc4ce5565c2aa01f1ec SHA512 1b63cf7e6e339333b9d24fa20232409192abc815f2ebe2e336ef4acc039cd06c976b3c12e9ce993491a0e6b86c26b90ceba962f580e894b1ff5ab9863bdfcc44
+DIST strace-5.18.tar.xz 2307412 BLAKE2B 658d17d2137344550ea3c2ece54708387c3b78020dbade45a7ef04905dc9d4703fa8d44802cca5a9448d096a7210d0178d8d78caab7e504fa998d1f9a0b59c65 SHA512 99418b84a5e2049cb6fe32eed19ddcb61bbefb25220550c67d92cd7bc3d44ae5d87ac228b3e1c207166b9bfdae55c624a0f4e603004599fb7ea3143bbccc749e
DIST strace-5.19.tar.xz 2353276 BLAKE2B 44b9a87f36e66481d8ac2107efbc389fa64c47b2ae7b1cc728241baa1c7d2d5d4d9410622763eb1247b415cad9afdd9f61552d2545388cadf5a33b568ed09af2 SHA512 1ea1c6e12d05bf145bc3c74f8d06b08dfc3eae3a5a21bfe8ab080053dc4c2da8a95be5956652ea62bb083462015a55f9bc1d1023919dcf2929a05211b7dde963
DIST strace-6.0.tar.xz 2367144 BLAKE2B ab9cb1f81b01068de5af5125ec2901b57a2f2b24fc01f4f68a284d74eb9fc0f4d583510a353554327845e7c157ea71ca4042ce3c27b3d2b0469d65a13aabfab1 SHA512 2f5aa18949b9f64769eee4e7720e41bf4a61e3b552acad693ff7baed2e662407a7b5e8bfba94ac49bb71639d21cd54084de902fb4337904f48480b25b8e72b54
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/strace/strace-5.18.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/strace/strace-5.18.ebuild
new file mode 100644
index 0000000000..bb61adbeb6
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/dev-util/strace/strace-5.18.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic toolchain-funcs
+
+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"
+ KEYWORDS="~alpha"
+fi
+
+DESCRIPTION="A useful diagnostic, instructional, and debugging tool"
+HOMEPAGE="https://strace.io/"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="aio perl selinux static unwind elfutils"
+REQUIRED_USE="?? ( unwind elfutils )"
+
+BDEPEND="virtual/pkgconfig"
+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}-5.11-static.patch"
+)
+
+src_prepare() {
+ default
+
+ eautoreconf
+
+ if [[ ! -e configure ]] ; then
+ # git generation
+ sed /autoreconf/d -i bootstrap || die
+ ./bootstrap || die
+ eautoreconf
+ [[ ! -e CREDITS ]] && cp CREDITS{.in,}
+ fi
+
+ # 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-vcs/git/Manifest b/sdk_container/src/third_party/portage-stable/dev-vcs/git/Manifest
index 7d66728032..4c565450b0 100644
--- a/sdk_container/src/third_party/portage-stable/dev-vcs/git/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-vcs/git/Manifest
@@ -1,21 +1,9 @@
-DIST git-2.35.1.tar.xz 6874520 BLAKE2B 028ff97b47748871da145720d0d258a0dcf4acc60b10c787dee5703fcab5f6e621c5671ee9e7a25009e82a2830400f35fa232d88c62606a6687260c744680025 SHA512 926c6813ef61931e1a1c43dfd7b15e20dc5878c1752876bd08f039249c9ed09f20f096b2f01947de9c9522c942e9fa8c1363d7d31a488bbe3f93c0cff31fcbcb
-DIST git-2.35.5.tar.xz 6879940 BLAKE2B 4e96108611db0cff8b6e74cd2265186a1f906580737462dbcd98efae355f9a62ca17d0530f83149443890dc9b4c4551e42c30274e4cff84f963399f83dadf62a SHA512 f8fab6ca37d42eec74047b95edc1f83deeb6f1d61f7a7785b571bbc32f2615651fec67126900d98cc45d5ed892bbbc6ac5ea3cb7cbe3ebcd46775adbb58fcd67
-DIST git-2.37.3.tar.xz 6987464 BLAKE2B b672ed0a99532b2e2e69babbea9155e39f05590a76f55791ffed6ce4ef8b68d8e306a0a23819af26f34fcf3d16211c3a10ec58d86d81262f7a1261d0e51b1305 SHA512 9120050b01d8ac8d9f9e85f19cb84dc90c28f3beadc3ea94da94845f2eb5e35aa83eee8447a7ecef5190b8eb5d01be621be2e82bb3020e51e05037cd1fa9b58f
DIST git-2.37.4.tar.xz 6990080 BLAKE2B 731ae7ff4247fd9d300b2b2b27074cce2d62b6333051bbdb161cdf644b4b40247963a978e1ed25a4f8fc9b544b52aa94ef97abf16db46ffcb688efab380efaec SHA512 f13a25548f6463ee0c3e662819a4af13dfafa8d18108534aeaebafd9a36c84dbea913402d781f7bc1436560c9937d76fd78b39cafa5864f576a1278ed96a9a80
-DIST git-2.38.0.tar.xz 7086664 BLAKE2B 800f46dc08b5a4df7437e07c7c9c23c29a3bfcbcc624e482590bbd15c046691922799e7d8650ef0b10825363b57060211f4692a639f095dcc1c6dcf0c43d726d SHA512 5c475d25b40a01cc62be28478b9b5a1b0cedf91c3e007d4869019a25bdc980b5ef9b761e7ee02d7c581bff6c7dbf2696a624431a718dcd976bad34a3f2be5cb6
DIST git-2.38.1.tar.xz 7088208 BLAKE2B 50e4e9ef04d9eef7c10aba1f0d53d5d15f50ea9a8c344733e7a7865e2f2a833edb4f4b5882f47dd39389dfdedf22a813cfe3d35ab950d6543d21e0294ce17f2d SHA512 e62ca6f54f01d2e4ccffb5f94e8e5cd2f3e098b766d909c694a8daf4d00d5cdeb9cc5ff8e9bc55d888406f292ba99433d334d4da9689c0ce5d7299a3c67c90e0
-DIST git-2.39.0.rc0.tar.xz 7145656 BLAKE2B 16d83de063441928a0dde93c879173f33343a6836ff4fc2983846b31e3b2590c5152b6c7e140a12727f47083af5aad69f88965d23df9c7be3fd207af87dff31a SHA512 da92b6b8ec804712f035cb4017ab5d277ca3149749921455cc362a11f7cb96d4347d1eb9e7d02fc31bc0c06f3bdc5ef7c4f40d02f9b92f42e708a2f474e28ea6
-DIST git-htmldocs-2.35.1.tar.xz 1410148 BLAKE2B 68c3d12341271b861f42135bd4bd6e68ebcc6466931d383378b49aac42f77187f3fadc237974349cb0b50e4c5fb7a8ab185114341dd3012d159e420405d9ef91 SHA512 52a40644a7cd38caddecc43182863ca2f456644fff918ed4c8f826cbf269352c73d6bdc9119d25fcf537bc2fa38750791013329e4b0e32c8d14f0769dab85804
-DIST git-htmldocs-2.35.5.tar.xz 1412776 BLAKE2B a76fafacd1f27f6c9e1acbf14a6b924228f1a66b0d69a7e533213aad3e3bacd38a353fb163fcfa3e5eca2a2c5396b4b9f1d34fbd27c3bbe002a8cebd3e3416c5 SHA512 4eca490371d4ba3c917a93f5f1d4a0ccb047ab177bb0080d91db0ba524895923ad7aaf61cd6bf404817d0d17fe7dfca687f44f3e8117df3b0f57dd3d5972d8ef
-DIST git-htmldocs-2.37.3.tar.xz 1447620 BLAKE2B 4efb86fb5431fd96ec4bcad7ecd9d5ae1d3f81f57f17dab4d8343948758f66b549b2442330b20cdb4ecd96f2029f4e7a376de5561fd9eda70acc46d2cffd7090 SHA512 ecc483a1fecf8c056a57e14a59950dc8a00f7940453dd5e2ccfd8dab966a9fee47178a7bbf8988e2c9a67ea6d84ffc33be790c49f812fb0ba661b57b7ff7b6ef
+DIST git-2.39.0.rc1.tar.xz 7146844 BLAKE2B 02d457b2c05290de9bd47e85ce55f2bc7e4b649f898bbda971aa447881ba4da3cf750d065a3bb431c974bf4602403c99af92089467a1b7c9d8c6b95c11d6beb1 SHA512 c90496689cf4ef5bd0efe85ac1f52b53527603596bef064470bd6c30f6b5d067e001d4a2f2cbe10f57235f8a74b733d59bc8cd8051f6fa9475b6dfb4df67577e
DIST git-htmldocs-2.37.4.tar.xz 1448376 BLAKE2B 2414b2f18e3c75c377400623f9e804b6fd5623724834ce52d2680cc10839466d52a8407cac9ed0c8c5928d65058963fe62e9ae2e31f1b695ea3a6fc18ea1938a SHA512 638feee014498af63ea083540b065778d3e3b7fdec9bb7f6e915bbc524e1525e0c4056f8af7d859376b60fcc936cb0ac1e6f83ff940e09f822dfa11570465db4
-DIST git-htmldocs-2.38.0.tar.xz 1478392 BLAKE2B d90dff60ed0acbf4b86049c06bc2978839906ebcc6aa6a12d8e78408bb79f8f62f38431f58bff18afec69ba99953de9d3815ddc270c3381b7ce7ea62980d9287 SHA512 460720021db8cef9125f9dfdfea54af05986b658958346d68e5dd8b6b13cb21797b3d6393888fb31b509d76b1e722f6e646bc5857daee507fa410dada4273924
DIST git-htmldocs-2.38.1.tar.xz 1479360 BLAKE2B 72d33a04c94ccb250def2136a2967fd333f3704f8e525f065b508cee890058546fec4e5b1349285b83768a7bd1513c0fac8d9ca287e5e964e6f1ec0d055ef7de SHA512 740da4546bdc0e9c4131e9dd0775662525aeb30a468fc4be63bb09c728da2903d479da5b7ef25d5ee029690ff5c9640de0271c7defcba1fadfa4a21f96d0aa8b
-DIST git-htmldocs-2.39.0.rc0.tar.xz 1502740 BLAKE2B 50a58c86c31f9f2f9c05f61f12ac3a3754bcd2d41ef2c61ca8ae21f75caed6fa09d06a4c5a1291b99c063a0d1d6571a04eaee4077f10e48c20c0751de1df4511 SHA512 7a471b89a62081c4369bb7db90d8804e8c71b67d798c39ff58c79feed190f98c9eb08e68b72acd50b802b83c67ad64311854f47f13116ce201893ccefb6d298f
-DIST git-manpages-2.35.1.tar.xz 497284 BLAKE2B 2d0d633320982243316575cc278df6c6a9ef181bf45ea9c1c8288e2677e4e71a33af96bada9bd90b03310be7dd33f2762b6b95489e267e2c191dcc7d1a715fe7 SHA512 0f4c46880f0e6d493112dcd4753fbe3702c06aa68be09bcbfc90263a355deba080995a08916b1f2404e4e17d720ee0de46a55e450c6cabeb1c147dcb2cd919d5
-DIST git-manpages-2.35.5.tar.xz 497864 BLAKE2B f68b528006e5393435f059f35dccb79250bf27fb79fd80fe72de70fa2e0c5158b8d9f7be95a4ed8c53dd40fa1aae874d529b0c73a1dfd378e85f84e382560d2c SHA512 efb2595a69f2c2548d0a10e6ad692a0da9c2b1b5b480f52ae9dc184f9de4ea4ddf5b05caaf9b567f9a3fbbf3a6b7aa5949b9c62e73f1a11ef40093c34353baf2
-DIST git-manpages-2.37.3.tar.xz 510096 BLAKE2B 0bc0b8c1818a06a6c7126119c04d2936bd38e997027bb31be5ad6bea2b43d71c5e9a76a29c576d84bd00c11f09bca7a67aa78a72f0171b41b93f6322c3b23808 SHA512 b25d4925f64e4de220dc9133d6e3ed13a397b160c27550c8700b76226f2b3a1611aec9ee24110ae16ebaceedc6617c6a04aa1b44270c7a0f166dd40d8f2f1132
+DIST git-htmldocs-2.39.0.rc1.tar.xz 1503072 BLAKE2B fe8beca129e7bc1dfc2198ad304adf92d88d43a6e50609831f8974dd3cc1e76e0317be8fa5fe2172aae930b622de7870e52f7faeb2b0f4715927745631c10be0 SHA512 e9de3cd8fb84d2bbe38b6185f732c9167b375fd12554f92b00d13cf9d772d9b9970fd83d61546251ff984c61c91565942157c32a3f49ebc57d77cbc3ece9ca34
DIST git-manpages-2.37.4.tar.xz 510016 BLAKE2B 03cba56a27039547429eca6a3dfda600d2b1332a6b0da321a1abc8bb311b03e46c389fdbbd7aafc8b5863730e9417ebbd3195ce04408e3f229e646d134a2ac13 SHA512 8cf5ae54ae3e86929f375ea2d229ecda7d8b5c8a7f7fbe790334fcd38069285b58636320b1886030402ac9d46ed324c1d26784fff14077f661c43ef98b5f5ec7
-DIST git-manpages-2.38.0.tar.xz 553512 BLAKE2B e2498a2363859ba21b65d7582090725f34e3b50fb7448e847d2711ef0c921aa7ec459e90dd8fa70bf43f04c40efc585d90c285c66241496a354f0cc3b6a37e49 SHA512 45e074a44840b00115546105bfd7bc1c3433234eee5777ecf0698b2f36f34c62effd6b258e06f67a22a8321654a0be5aaab0197c7e2ab615716c7015adfe6693
DIST git-manpages-2.38.1.tar.xz 553484 BLAKE2B 991e7f3916106e346921f6ae281df803b663b7fb4584f98f48f61a121030db8e5a1a97ecb147bf1559408893d3c9692c58b2890ff5a5a00bd451d8f20b73efdb SHA512 d2c75efc497ec62733be0ae0092a256dedb2a24b765e516218c9d96466aef34a0f2a118f68618ea457bf0fb39f5986c52022870116de974b21f541e0994c7d67
-DIST git-manpages-2.39.0.rc0.tar.xz 557232 BLAKE2B 4a685d324c2ad44b9cc1e3e95ab24157bff2e11712913de1583e2d5ad9bfb3afb01ce0c0f136ff83f9c381403e5d1f5cf1e3a3d21a3a67ec9e2b5889ea1061c7 SHA512 9698c673b4d00c68b6bbbc2c21ea8eb701bdd1a2b6028dcba161e7342638aabdf4969fd4e00b24a43aa78066d37cd560e53c2ab3ba8e36fa0a86dd94dc0927ec
+DIST git-manpages-2.39.0.rc1.tar.xz 557232 BLAKE2B 5bc878cccda24dee906f1c7e4f286539f8c8db29dd5d4b5eee111e45d2eb02c380be6cea1c01e34fdd7c9336bd0c476edba3f32121c3c042c938c4e178a9a5f3 SHA512 f43cb08eb00371995e98336f99db6fd0551d6abc069c0db5a1293a8cc4a0d426ea1c2d7f6b7bd4e38db9d82ee0aad24e7e5ff15ed3e2a4cec30e81503c7eb5ec
diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/git/files/git-2.31.0-darwin-prefix-gettext.patch b/sdk_container/src/third_party/portage-stable/dev-vcs/git/files/git-2.31.0-darwin-prefix-gettext.patch
deleted file mode 100644
index df87def607..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-vcs/git/files/git-2.31.0-darwin-prefix-gettext.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-Don't examine outside of the prefix for gettext on macOS/Darwin.
-https://bugs.gentoo.org/757309
---- a/config.mak.uname
-+++ b/config.mak.uname
-@@ -136,17 +136,6 @@ ifeq ($(uname_S),Darwin)
- HAVE_BSD_SYSCTL = YesPlease
- FREAD_READS_DIRECTORIES = UnfortunatelyYes
- HAVE_NS_GET_EXECUTABLE_PATH = YesPlease
--
-- # Workaround for `gettext` being keg-only and not even being linked via
-- # `brew link --force gettext`, should be obsolete as of
-- # https://github.com/Homebrew/homebrew-core/pull/53489
-- ifeq ($(shell test -d /usr/local/opt/gettext/ && echo y),y)
-- BASIC_CFLAGS += -I/usr/local/include -I/usr/local/opt/gettext/include
-- BASIC_LDFLAGS += -L/usr/local/lib -L/usr/local/opt/gettext/lib
-- ifeq ($(shell test -x /usr/local/opt/gettext/bin/msgfmt && echo y),y)
-- MSGFMT = /usr/local/opt/gettext/bin/msgfmt
-- endif
-- endif
- endif
- ifeq ($(uname_S),SunOS)
- NEEDS_SOCKET = YesPlease
diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/git/files/git-2.33.0_rc0-optional-cvs.patch b/sdk_container/src/third_party/portage-stable/dev-vcs/git/files/git-2.33.0_rc0-optional-cvs.patch
deleted file mode 100644
index ad3941a455..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-vcs/git/files/git-2.33.0_rc0-optional-cvs.patch
+++ /dev/null
@@ -1,457 +0,0 @@
-From 52dd2a35fece797c9a0bc23dd59154331a6c0472 Mon Sep 17 00:00:00 2001
-From: Robin Johnson
-Date: Tue, 14 May 2019 08:53:06 +0200
-Subject: [PATCH] Makefile: Add NO_CVS define to disable all CVS interface
- utilities
-
-Forward-ported from 1.7.12 to current git.git v1.8.4
-Forward-ported from v1.8.4 to v1.8.5.1
-Forward-ported from v1.8.5.3 to v1.9.0_rc3
-Forward-ported from 1.9.0_rc3 to current git.git v2.0.0_rc0
-Forward-ported from v2.0.0_rc0 to v2.0.0
-Forward-ported from v2.0.0 to v2.2.2
-Forward-ported from v2.2.2 to v2.8.4
-Forward-ported from v2.8.4 to v2.10.0
-Forward-ported from v2.10.0 to v2.12.0
-Forward-ported from v2.12.0 to v2.17.0-rc1
-Forward-ported from v2.17.0-rc1 to v2.18.0-rc1
-Forward-ported from v2.18.0-rc1 to v2.22.0-rc0
-Forward-ported from v2.22.0-rc0 to v2.31.0-rc0
-Forward-ported from v2.31.0-rc0 to v2.33.0-rc0
-
-Signed-off-by: Lars Wendler
----
- Makefile | 50 ++++++++++++++++++++++--------
- t/t9200-git-cvsexportcommit.sh | 5 +++
- t/t9400-git-cvsserver-server.sh | 8 ++++-
- t/t9401-git-cvsserver-crlf.sh | 15 ++++++---
- t/t9600-cvsimport.sh | 41 +++++++++++++++---------
- t/t9601-cvsimport-vendor-branch.sh | 11 +++++++
- t/t9602-cvsimport-branches-tags.sh | 11 +++++++
- t/t9603-cvsimport-patchsets.sh | 11 +++++++
- t/test-lib.sh | 1 +
- 9 files changed, 119 insertions(+), 34 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index c6f6246bf6..e701070b74 100644
---- a/Makefile
-+++ b/Makefile
-@@ -308,6 +308,8 @@ all::
- # Define SANE_TEXT_GREP to "-a" if you use recent versions of GNU grep
- # and egrep that are pickier when their input contains non-ASCII data.
- #
-+# Define NO_CVS if you do not want any CVS interface utilities.
-+#
- # The TCL_PATH variable governs the location of the Tcl interpreter
- # used to optimize git-gui for your system. Only used if NO_TCLTK
- # is not set. Defaults to the bare 'tclsh'.
-@@ -589,6 +591,7 @@ PROGRAM_OBJS =
- PROGRAMS =
- EXCLUDED_PROGRAMS =
- SCRIPT_PERL =
-+SCRIPT_PERL_CVS =
- SCRIPT_PYTHON =
- SCRIPT_SH =
- SCRIPT_LIB =
-@@ -622,31 +625,33 @@ SCRIPT_LIB += git-sh-setup
-
- SCRIPT_PERL += git-add--interactive.perl
- SCRIPT_PERL += git-archimport.perl
--SCRIPT_PERL += git-cvsexportcommit.perl
--SCRIPT_PERL += git-cvsimport.perl
--SCRIPT_PERL += git-cvsserver.perl
- SCRIPT_PERL += git-send-email.perl
- SCRIPT_PERL += git-svn.perl
-
-+SCRIPT_PERL_CVS += git-cvsexportcommit.perl
-+SCRIPT_PERL_CVS += git-cvsimport.perl
-+SCRIPT_PERL_CVS += git-cvsserver.perl
-+
- SCRIPT_PYTHON += git-p4.py
-
- # Generated files for scripts
- SCRIPT_SH_GEN = $(patsubst %.sh,%,$(SCRIPT_SH))
- SCRIPT_PERL_GEN = $(patsubst %.perl,%,$(SCRIPT_PERL))
-+SCRIPT_PERL_CVS_GEN = $(patsubst %.perl,%,$(SCRIPT_PERL_CVS))
- SCRIPT_PYTHON_GEN = $(patsubst %.py,%,$(SCRIPT_PYTHON))
-
- # Individual rules to allow e.g.
- # "make -C ../.. SCRIPT_PERL=contrib/foo/bar.perl build-perl-script"
- # from subdirectories like contrib/*/
- .PHONY: build-perl-script build-sh-script build-python-script
--build-perl-script: $(SCRIPT_PERL_GEN)
-+build-perl-script: $(SCRIPT_PERL_GEN) $(SCRIPT_PERL_CVS_GEN)
- build-sh-script: $(SCRIPT_SH_GEN)
- build-python-script: $(SCRIPT_PYTHON_GEN)
-
- .PHONY: install-perl-script install-sh-script install-python-script
- install-sh-script: $(SCRIPT_SH_GEN)
- $(INSTALL) $^ '$(DESTDIR_SQ)$(gitexec_instdir_SQ)'
--install-perl-script: $(SCRIPT_PERL_GEN)
-+install-perl-script: $(SCRIPT_PERL_GEN) $(SCRIPT_PERL_CVS_GEN)
- $(INSTALL) $^ '$(DESTDIR_SQ)$(gitexec_instdir_SQ)'
- install-python-script: $(SCRIPT_PYTHON_GEN)
- $(INSTALL) $^ '$(DESTDIR_SQ)$(gitexec_instdir_SQ)'
-@@ -655,12 +660,13 @@ install-python-script: $(SCRIPT_PYTHON_GEN)
- clean-sh-script:
- $(RM) $(SCRIPT_SH_GEN)
- clean-perl-script:
-- $(RM) $(SCRIPT_PERL_GEN)
-+ $(RM) $(SCRIPT_PERL_GEN) $(SCRIPT_PERL_CVS_GEN)
- clean-python-script:
- $(RM) $(SCRIPT_PYTHON_GEN)
-
- SCRIPTS = $(SCRIPT_SH_GEN) \
- $(SCRIPT_PERL_GEN) \
-+ $(SCRIPT_PERL_CVS_GEN) \
- $(SCRIPT_PYTHON_GEN) \
- git-instaweb
-
-@@ -2299,13 +2305,27 @@ git.res: git.rc GIT-VERSION-FILE GIT-PREFIX
- -DGIT_VERSION="\\\"$(GIT_VERSION)\\\"" -i $< -o $@
-
- # This makes sure we depend on the NO_PERL setting itself.
--$(SCRIPT_PERL_GEN): GIT-BUILD-OPTIONS
-+$(SCRIPT_PERL_GEN) $(SCRIPT_PERL_CVS_GEN): GIT-BUILD-OPTIONS
-+
-+_SCRIPT_PERL_GEN =
-+_SCRIPT_PERL_NOGEN =
-
- # Used for substitution in Perl modules. Disabled when using RUNTIME_PREFIX
- # since the locale directory is injected.
- perl_localedir_SQ = $(localedir_SQ)
-
- ifndef NO_PERL
-+_SCRIPT_PERL_GEN = $(SCRIPT_PERL_GEN)
-+
-+ifndef NO_CVS
-+_SCRIPT_PERL_GEN += $(SCRIPT_PERL_CVS_GEN)
-+else
-+_SCRIPT_PERL_NOGEN += $(SCRIPT_PERL_CVS_GEN)
-+_REASON = NO_CVS
-+_REASON_CONTENT = $(NO_CVS)
-+endif # NO_CVS
-+
-+$(_SCRIPT_PERL_GEN):
- PERL_HEADER_TEMPLATE = perl/header_templates/fixed_prefix.template.pl
- PERL_DEFINES =
- PERL_DEFINES += $(PERL_PATH_SQ)
-@@ -2329,7 +2349,7 @@ endif
-
- PERL_DEFINES += $(gitexecdir) $(perllibdir) $(localedir)
-
--$(SCRIPT_PERL_GEN): % : %.perl GIT-PERL-DEFINES GIT-PERL-HEADER GIT-VERSION-FILE
-+$(_SCRIPT_PERL_GEN): % : %.perl GIT-PERL-DEFINES GIT-PERL-HEADER GIT-VERSION-FILE
- $(QUIET_GEN) \
- sed -e '1{' \
- -e ' s|#!.*perl|#!$(PERL_PATH_SQ)|' \
-@@ -2375,14 +2395,18 @@ git-instaweb: git-instaweb.sh GIT-SCRIPT-DEFINES
- chmod +x $@+ && \
- mv $@+ $@
- else # NO_PERL
--$(SCRIPT_PERL_GEN) git-instaweb: % : unimplemented.sh
-- $(QUIET_GEN) \
-+_SCRIPT_PERL_NOGEN += $(SCRIPT_PERL_GEN) $(SCRIPT_PERL_CVS_GEN) git-instaweb
-+_REASON = NO_PERL
-+_REASON_CONTENT = $(NO_PERL)
-+endif # NO_PERL
-+
-+$(_SCRIPT_PERL_NOGEN): % : unimplemented.sh
-+ $(QUIET_GEN)$(RM) $@ $@+ && \
- sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \
-- -e 's|@@REASON@@|NO_PERL=$(NO_PERL)|g' \
-+ -e 's|@@REASON@@|$(_REASON)=$(_REASON_CONTENT)|g' \
- unimplemented.sh >$@+ && \
- chmod +x $@+ && \
- mv $@+ $@
--endif # NO_PERL
-
- # This makes sure we depend on the NO_PYTHON setting itself.
- $(SCRIPT_PYTHON_GEN): GIT-BUILD-OPTIONS
-@@ -2650,7 +2674,7 @@ LOCALIZED_C = $(C_OBJ:o=c) $(LIB_H) $(GENERATED_H)
- LOCALIZED_SH = $(SCRIPT_SH)
- LOCALIZED_SH += git-rebase--preserve-merges.sh
- LOCALIZED_SH += git-sh-setup.sh
--LOCALIZED_PERL = $(SCRIPT_PERL)
-+LOCALIZED_PERL = $(SCRIPT_PERL) $(SCRIPT_PERL_CVS)
-
- ifdef XGETTEXT_INCLUDE_TESTS
- LOCALIZED_C += t/t0200/test.c
-diff --git a/t/t9200-git-cvsexportcommit.sh b/t/t9200-git-cvsexportcommit.sh
-index c5946cb0b8..223fd5409b 100755
---- a/t/t9200-git-cvsexportcommit.sh
-+++ b/t/t9200-git-cvsexportcommit.sh
-@@ -11,6 +11,11 @@ if ! test_have_prereq PERL; then
- test_done
- fi
-
-+if ! test_have_prereq CVS; then
-+ skip_all='skipping git cvsexportcommit tests, cvs not available'
-+ test_done
-+fi
-+
- cvs >/dev/null 2>&1
- if test $? -ne 1
- then
-diff --git a/t/t9400-git-cvsserver-server.sh b/t/t9400-git-cvsserver-server.sh
-index 2d29d486ee..2ca6db10e0 100755
---- a/t/t9400-git-cvsserver-server.sh
-+++ b/t/t9400-git-cvsserver-server.sh
-@@ -14,9 +14,15 @@ export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME
- . ./test-lib.sh
-
- if ! test_have_prereq PERL; then
-- skip_all='skipping git cvsserver tests, perl not available'
-+ skip_all='skipping git-cvsserver tests, perl not available'
- test_done
- fi
-+
-+if ! test_have_prereq CVS; then
-+ skip_all='skipping git-cvsserver tests, cvs not available'
-+ test_done
-+fi
-+
- cvs >/dev/null 2>&1
- if test $? -ne 1
- then
-diff --git a/t/t9401-git-cvsserver-crlf.sh b/t/t9401-git-cvsserver-crlf.sh
-index a34805acdc..0d7759f73b 100755
---- a/t/t9401-git-cvsserver-crlf.sh
-+++ b/t/t9401-git-cvsserver-crlf.sh
-@@ -60,15 +60,20 @@ check_status_options() {
- return $stat
- }
-
--cvs >/dev/null 2>&1
--if test $? -ne 1
-+if ! test_have_prereq PERL
- then
-- skip_all='skipping git-cvsserver tests, cvs not found'
-+ skip_all='skipping git-cvsserver tests, perl not available'
- test_done
- fi
--if ! test_have_prereq PERL
-+if ! test_have_prereq CVS
- then
-- skip_all='skipping git-cvsserver tests, perl not available'
-+ skip_all='skipping git-cvsserver tests, cvs not available'
-+ test_done
-+fi
-+cvs >/dev/null 2>&1
-+if test $? -ne 1
-+then
-+ skip_all='skipping git-cvsserver tests, cvs not found'
- test_done
- fi
- perl -e 'use DBI; use DBD::SQLite' >/dev/null 2>&1 || {
-diff --git a/t/t9600-cvsimport.sh b/t/t9600-cvsimport.sh
-index 5680849218..7288db820b 100755
---- a/t/t9600-cvsimport.sh
-+++ b/t/t9600-cvsimport.sh
-@@ -11,14 +11,25 @@ if ! test_have_prereq NOT_ROOT; then
- test_done
- fi
-
--test_expect_success PERL 'setup cvsroot environment' '
-+if ! test_have_prereq PERL
-+then
-+ skip_all='skipping git cvsimport tests, perl not available'
-+ test_done
-+fi
-+if ! test_have_prereq CVS
-+then
-+ skip_all='skipping git cvsimport tests, cvs not available'
-+ test_done
-+fi
-+
-+test_expect_success 'setup cvsroot environment' '
- CVSROOT=$(pwd)/cvsroot &&
- export CVSROOT
- '
-
--test_expect_success PERL 'setup cvsroot' '$CVS init'
-+test_expect_success 'setup cvsroot' '$CVS init'
-
--test_expect_success PERL 'setup a cvs module' '
-+test_expect_success 'setup a cvs module' '
-
- mkdir "$CVSROOT/module" &&
- $CVS co -d module-cvs module &&
-@@ -50,23 +61,23 @@ EOF
- )
- '
-
--test_expect_success PERL 'import a trivial module' '
-+test_expect_success 'import a trivial module' '
-
- git cvsimport -a -R -z 0 -C module-git module &&
- test_cmp module-cvs/o_fortuna module-git/o_fortuna
-
- '
-
--test_expect_success PERL 'pack refs' '(cd module-git && git gc)'
-+test_expect_success 'pack refs' '(cd module-git && git gc)'
-
--test_expect_success PERL 'initial import has correct .git/cvs-revisions' '
-+test_expect_success 'initial import has correct .git/cvs-revisions' '
-
- (cd module-git &&
- git log --format="o_fortuna 1.1 %H" -1) > expected &&
- test_cmp expected module-git/.git/cvs-revisions
- '
-
--test_expect_success PERL 'update cvs module' '
-+test_expect_success 'update cvs module' '
- (cd module-cvs &&
- cat <o_fortuna &&
- O Fortune,
-@@ -94,7 +105,7 @@ EOF
- )
- '
-
--test_expect_success PERL 'update git module' '
-+test_expect_success 'update git module' '
-
- (cd module-git &&
- git config cvsimport.trackRevisions true &&
-@@ -105,7 +116,7 @@ test_expect_success PERL 'update git module' '
-
- '
-
--test_expect_success PERL 'update has correct .git/cvs-revisions' '
-+test_expect_success 'update has correct .git/cvs-revisions' '
-
- (cd module-git &&
- git log --format="o_fortuna 1.1 %H" -1 HEAD^ &&
-@@ -113,7 +124,7 @@ test_expect_success PERL 'update has correct .git/cvs-revisions' '
- test_cmp expected module-git/.git/cvs-revisions
- '
-
--test_expect_success PERL 'update cvs module' '
-+test_expect_success 'update cvs module' '
-
- (cd module-cvs &&
- echo 1 >tick &&
-@@ -122,7 +133,7 @@ test_expect_success PERL 'update cvs module' '
- )
- '
-
--test_expect_success PERL 'cvsimport.module config works' '
-+test_expect_success 'cvsimport.module config works' '
-
- (cd module-git &&
- git config cvsimport.module module &&
-@@ -134,7 +145,7 @@ test_expect_success PERL 'cvsimport.module config works' '
-
- '
-
--test_expect_success PERL 'second update has correct .git/cvs-revisions' '
-+test_expect_success 'second update has correct .git/cvs-revisions' '
-
- (cd module-git &&
- git log --format="o_fortuna 1.1 %H" -1 HEAD^^ &&
-@@ -143,7 +154,7 @@ test_expect_success PERL 'second update has correct .git/cvs-revisions' '
- test_cmp expected module-git/.git/cvs-revisions
- '
-
--test_expect_success PERL 'import from a CVS working tree' '
-+test_expect_success 'import from a CVS working tree' '
-
- $CVS co -d import-from-wt module &&
- (cd import-from-wt &&
-@@ -156,12 +167,12 @@ test_expect_success PERL 'import from a CVS working tree' '
-
- '
-
--test_expect_success PERL 'no .git/cvs-revisions created by default' '
-+test_expect_success 'no .git/cvs-revisions created by default' '
-
- ! test -e import-from-wt/.git/cvs-revisions
-
- '
-
--test_expect_success PERL 'test entire HEAD' 'test_cmp_branch_tree main'
-+test_expect_success 'test entire HEAD' 'test_cmp_branch_tree main'
-
- test_done
-diff --git a/t/t9601-cvsimport-vendor-branch.sh b/t/t9601-cvsimport-vendor-branch.sh
-index 116cddba3a..a7e7299c81 100755
---- a/t/t9601-cvsimport-vendor-branch.sh
-+++ b/t/t9601-cvsimport-vendor-branch.sh
-@@ -37,6 +37,17 @@ export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME
-
- . ./lib-cvs.sh
-
-+if ! test_have_prereq PERL
-+then
-+ skip_all='skipping git cvsimport tests, perl not available'
-+ test_done
-+fi
-+if ! test_have_prereq CVS
-+then
-+ skip_all='skipping git cvsimport tests, cvs not available'
-+ test_done
-+fi
-+
- setup_cvs_test_repository t9601
-
- test_expect_success PERL 'import a module with a vendor branch' '
-diff --git a/t/t9602-cvsimport-branches-tags.sh b/t/t9602-cvsimport-branches-tags.sh
-index e5266c9a87..0e1878ffd3 100755
---- a/t/t9602-cvsimport-branches-tags.sh
-+++ b/t/t9602-cvsimport-branches-tags.sh
-@@ -9,6 +9,17 @@ export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME
-
- . ./lib-cvs.sh
-
-+if ! test_have_prereq PERL
-+then
-+ skip_all='skipping git cvsimport tests, perl not available'
-+ test_done
-+fi
-+if ! test_have_prereq CVS
-+then
-+ skip_all='skipping git cvsimport tests, cvs not available'
-+ test_done
-+fi
-+
- setup_cvs_test_repository t9602
-
- test_expect_success PERL 'import module' '
-diff --git a/t/t9603-cvsimport-patchsets.sh b/t/t9603-cvsimport-patchsets.sh
-index 0e9daa5768..598c8595c5 100755
---- a/t/t9603-cvsimport-patchsets.sh
-+++ b/t/t9603-cvsimport-patchsets.sh
-@@ -17,6 +17,17 @@ export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME
-
- . ./lib-cvs.sh
-
-+if ! test_have_prereq PERL
-+then
-+ skip_all='skipping git cvsimport tests, perl not available'
-+ test_done
-+fi
-+if ! test_have_prereq CVS
-+then
-+ skip_all='skipping git cvsimport tests, cvs not available'
-+ test_done
-+fi
-+
- setup_cvs_test_repository t9603
-
- test_expect_failure PERL 'import with criss cross times on revisions' '
-diff --git a/t/test-lib.sh b/t/test-lib.sh
-index da13190970..aa4b4aa161 100644
---- a/t/test-lib.sh
-+++ b/t/test-lib.sh
-@@ -1521,6 +1521,7 @@ esac
- test_set_prereq REFFILES
-
- ( COLUMNS=1 && test $COLUMNS = 1 ) && test_set_prereq COLUMNS_CAN_BE_1
-+test -z "$NO_CVS" && test_set_prereq CVS
- test -z "$NO_PERL" && test_set_prereq PERL
- test -z "$NO_PTHREADS" && test_set_prereq PTHREADS
- test -z "$NO_PYTHON" && test_set_prereq PYTHON
---
-2.32.0
-
diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.35.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.35.1.ebuild
deleted file mode 100644
index f2fce14c49..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.35.1.ebuild
+++ /dev/null
@@ -1,641 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-GENTOO_DEPEND_ON_PERL=no
-
-# bug #329479: git-remote-testgit is not multiple-version aware
-PYTHON_COMPAT=( python3_{8..10} )
-
-inherit toolchain-funcs perl-module bash-completion-r1 plocale python-single-r1 systemd
-
-PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
-if [[ ${PV} == *9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/git/git.git"
- # Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
- # See https://git-scm.com/docs/gitworkflows#_graduation
- # In order of stability:
- # 9999-r0: maint
- # 9999-r1: master
- # 9999-r2: next
- # 9999-r3: seen
- case "${PVR}" in
- 9999) EGIT_BRANCH=maint ;;
- 9999-r1) EGIT_BRANCH=master ;;
- 9999-r2) EGIT_BRANCH=next;;
- 9999-r3) EGIT_BRANCH=seen ;;
- esac
-fi
-
-MY_PV="${PV/_rc/.rc}"
-MY_P="${PN}-${MY_PV}"
-
-DOC_VER="${MY_PV}"
-
-DESCRIPTION="stupid content tracker: distributed VCS designed for speed and efficiency"
-HOMEPAGE="https://www.git-scm.com/"
-if [[ ${PV} != *9999 ]]; then
- SRC_URI_SUFFIX="xz"
- SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
- [[ "${PV/rc}" != "${PV}" ]] && SRC_URI_KORG+='/testing'
- SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
- ${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
- doc? (
- ${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
- )"
- [[ "${PV}" == *_rc* ]] || \
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="+blksha1 +curl cgi doc gnome-keyring +gpg highlight +iconv mediawiki mediawiki-experimental +nls +pcre perforce +perl +ppcsha1 selinux subversion tk +threads +webdav xinetd cvs test"
-
-# Common to both DEPEND and RDEPEND
-DEPEND="
- gnome-keyring? (
- app-crypt/libsecret
- dev-libs/glib:2
- )
- dev-libs/openssl:0=
- sys-libs/zlib
- pcre? ( dev-libs/libpcre2:= )
- perl? ( dev-lang/perl:=[-build(-)] )
- tk? ( dev-lang/tk:0= )
- curl? (
- net-misc/curl
- webdav? ( dev-libs/expat )
- )
- iconv? ( virtual/libiconv )
-"
-
-RDEPEND="${DEPEND}
- gpg? ( app-crypt/gnupg )
- perl? (
- dev-perl/Error
- dev-perl/MailTools
- dev-perl/Authen-SASL
- >=virtual/perl-libnet-3.110.0-r4[ssl]
- cgi? (
- dev-perl/CGI
- highlight? ( app-text/highlight )
- )
- cvs? (
- >=dev-vcs/cvsps-2.1:0
- dev-perl/DBI
- dev-perl/DBD-SQLite
- )
- mediawiki? (
- dev-perl/DateTime-Format-ISO8601
- dev-perl/HTML-Tree
- dev-perl/MediaWiki-API
- )
- subversion? (
- dev-vcs/subversion[-dso(-),perl]
- dev-perl/libwww-perl
- dev-perl/TermReadKey
- )
- )
- perforce? ( ${PYTHON_DEPS} )
- selinux? ( sec-policy/selinux-git )
-"
-
-# This is how info docs are created with Git:
-# .txt/asciidoc --(asciidoc)---------> .xml/docbook
-# .xml/docbook --(docbook2texi.pl)--> .texi
-# .texi --(makeinfo)---------> .info
-BDEPEND="
- doc? (
- app-text/asciidoc
- app-text/docbook2X
- app-text/xmlto
- sys-apps/texinfo
- )
- gnome-keyring? ( virtual/pkgconfig )
- nls? ( sys-devel/gettext )
- test? ( app-crypt/gnupg )
-"
-
-# Live ebuild builds man pages and HTML docs, additionally
-if [[ ${PV} == *9999 ]]; then
- BDEPEND="${BDEPEND}
- app-text/asciidoc"
-fi
-
-SITEFILE="50${PN}-gentoo.el"
-S="${WORKDIR}/${MY_P}"
-
-REQUIRED_USE="
- cgi? ( perl )
- cvs? ( perl )
- mediawiki? ( perl )
- mediawiki-experimental? ( mediawiki )
- perforce? ( ${PYTHON_REQUIRED_USE} )
- subversion? ( perl )
- webdav? ( curl )
-"
-
-RESTRICT="!test? ( test )"
-
-PATCHES=(
- # bug #350330 - automagic CVS when we don't want it is bad.
- "${FILESDIR}"/git-2.33.0_rc0-optional-cvs.patch
-
- # Make submodule output quiet
- "${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch
-)
-
-pkg_setup() {
- if use subversion && has_version "dev-vcs/subversion[dso]" ; then
- ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
- ewarn "with USE=dso, there may be weird crashes in git-svn. You"
- ewarn "have been warned."
- fi
-
- if use perforce ; then
- python-single-r1_pkg_setup
- fi
-}
-
-# This is needed because for some obscure reasons future calls to make don't
-# pick up these exports if we export them in src_unpack()
-exportmakeopts() {
- local extlibs myopts
-
- myopts=(
- ASCIIDOC_NO_ROFF=YesPlease
- $(usex cvs '' NO_CVS=YesPlease)
- $(usex elibc_musl NO_REGEX=YesPlease '')
- $(usex iconv '' NO_ICONV=YesPlease)
- $(usex nls '' NO_GETTEXT=YesPlease)
- $(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
- $(usex perforce '' NO_PYTHON=YesPlease)
- $(usex subversion '' NO_SVN_TESTS=YesPlease)
- $(usex threads '' NO_PTHREADS=YesPlease)
- $(usex tk '' NO_TCLTK=YesPlease)
- )
-
- if use blksha1 ; then
- myopts+=( BLK_SHA1=YesPlease )
- elif use ppcsha1 ; then
- myopts+=( PPC_SHA1=YesPlease )
- fi
-
- if use curl ; then
- use webdav || myopts+=( NO_EXPAT=YesPlease )
- else
- myopts+=( NO_CURL=YesPlease )
- fi
-
- # broken assumptions, because of static build system ...
- myopts+=(
- NO_FINK=YesPlease
- NO_DARWIN_PORTS=YesPlease
- INSTALL=install
- TAR=tar
- SHELL_PATH="${EPREFIX}/bin/sh"
- SANE_TOOL_PATH=
- OLD_ICONV=
- NO_EXTERNAL_GREP=
- )
-
- # can't define this to null, since the entire makefile depends on it
- sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
-
- if use pcre; then
- myopts+=( USE_LIBPCRE2=YesPlease )
- extlibs+=( -lpcre2-8 )
- fi
- if [[ ${CHOST} == *-solaris* ]]; then
- myopts+=(
- NEEDS_LIBICONV=YesPlease
- HAVE_CLOCK_MONOTONIC=1
- )
- if grep -Fq getdelim "${EROOT}"/usr/include/stdio.h ; then
- myopts+=( HAVE_GETDELIM=1 )
- fi
- fi
-
- if has_version '>=app-text/asciidoc-8.0' ; then
- myopts+=( ASCIIDOC8=YesPlease )
- fi
-
- export MY_MAKEOPTS="${myopts[@]}"
- export EXTLIBS="${extlibs[@]}"
-}
-
-src_unpack() {
- if [[ ${PV} != *9999 ]] ; then
- unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
- cd "${S}" || die
- unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
- if use doc ; then
- pushd "${S}"/Documentation &>/dev/null || die
- unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
- popd &>/dev/null || die
- fi
- else
- git-r3_src_unpack
- #cp "${FILESDIR}"/GIT-VERSION-GEN .
- fi
-
-}
-
-src_prepare() {
- # add experimental patches to improve mediawiki support
- # see patches for origin
- if use mediawiki-experimental ; then
- PATCHES+=(
- "${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
- "${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
- "${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
- )
- fi
-
- default
-
- if use prefix ; then
- # bug #757309
- eapply "${FILESDIR}"/git-2.31.0-darwin-prefix-gettext.patch
- fi
-
- sed -i \
- -e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
- -e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
- -e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
- -e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
- -e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
- -e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
- Makefile || die
-
- # Fix docbook2texi command
- sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
- Documentation/Makefile || die
-}
-
-git_emake() {
- # bug #320647: PYTHON_PATH
- local PYTHON_PATH=""
- use perforce && PYTHON_PATH="${PYTHON}"
- emake ${MY_MAKEOPTS} \
- prefix="${EPREFIX}"/usr \
- htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
- perllibdir="$(use perl && perl_get_raw_vendorlib)" \
- sysconfdir="${EPREFIX}"/etc \
- GIT_TEST_OPTS="--no-color" \
- OPTAR="$(tc-getAR)" \
- OPTCC="$(tc-getCC)" \
- OPTCFLAGS="${CFLAGS}" \
- OPTLDFLAGS="${LDFLAGS}" \
- PERL_PATH="${EPREFIX}/usr/bin/perl" \
- PERL_MM_OPT="" \
- PYTHON_PATH="${PYTHON_PATH}" \
- V=1 \
- "$@"
-}
-
-src_configure() {
- exportmakeopts
-}
-
-src_compile() {
- git_emake || die "emake failed"
-
- if use perl && use cgi ; then
- git_emake gitweb || die "emake gitweb (cgi) failed"
- fi
-
- if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then
- pushd contrib/credential/osxkeychain &>/dev/null || die
- git_emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" \
- || die "emake credential-osxkeychain"
- popd &>/dev/null || die
- fi
-
- pushd Documentation &>/dev/null || die
- if [[ ${PV} == *9999 ]] ; then
- git_emake man || die "emake man failed"
- if use doc ; then
- git_emake info html || die "emake info html failed"
- fi
- else
- if use doc ; then
- git_emake info || die "emake info html failed"
- fi
- fi
- popd &>/dev/null || die
-
- if use gnome-keyring ; then
- pushd contrib/credential/libsecret &>/dev/null || die
- git_emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" PKG_CONFIG="$(tc-getPKG_CONFIG)"
- popd &>/dev/null || die
- fi
-
- pushd contrib/subtree &>/dev/null || die
- git_emake git-subtree || die
- # git-subtree.1 requires the full USE=doc dependency stack
- use doc && git_emake git-subtree.html git-subtree.1
- popd &>/dev/null || die
-
- pushd contrib/diff-highlight &>/dev/null || die
- git_emake || die
- popd &>/dev/null || die
-
- if use mediawiki ; then
- pushd contrib/mw-to-git &>/dev/null || die
- git_emake || die
- popd &>/dev/null || die
-
- fi
-}
-
-src_install() {
- git_emake DESTDIR="${D}" install || die "make install failed"
-
- if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then
- dobin contrib/credential/osxkeychain/git-credential-osxkeychain
- fi
-
- # Depending on the tarball and manual rebuild of the documentation, the
- # manpages may exist in either OR both of these directories.
- find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
- find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
- dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
- use doc && dodir /usr/share/doc/${PF}/html
- local d
- for d in / /howto/ /technical/ ; do
- docinto ${d}
- dodoc Documentation${d}*.txt
- if use doc ; then
- docinto ${d}/html
- dodoc Documentation${d}*.html
- fi
- done
- docinto /
- # Upstream does not ship this pre-built :-(
- use doc && doinfo Documentation/{git,gitman}.info
-
- newbashcomp contrib/completion/git-completion.bash ${PN}
- bashcomp_alias git gitk
- # Not really a bash-completion file (bug #477920)
- # but still needed uncompressed (bug #507480)
- insinto /usr/share/${PN}
- doins contrib/completion/git-prompt.sh
-
- #dobin contrib/fast-import/git-p4 # Moved upstream
- #dodoc contrib/fast-import/git-p4.txt # Moved upstream
- newbin contrib/fast-import/import-tars.perl import-tars
- exeinto /usr/libexec/git-core/
- newexe contrib/git-resurrect.sh git-resurrect
-
- # git-subtree
- pushd contrib/subtree &>/dev/null || die
- git_emake DESTDIR="${D}" install || die "Failed to emake install for git-subtree"
- if use doc ; then
- # Do not move git subtree install-man outside USE=doc!
- git_emake DESTDIR="${D}" install-man install-html || die "Failed to emake install-html install-man for git-subtree"
- fi
- newdoc README README.git-subtree
- dodoc git-subtree.txt
- popd &>/dev/null || die
-
- if use mediawiki ; then
- pushd contrib/mw-to-git &>/dev/null || die
- git_emake DESTDIR="${D}" install
- popd &>/dev/null || die
- fi
-
- # diff-highlight
- dobin contrib/diff-highlight/diff-highlight
- newdoc contrib/diff-highlight/README README.diff-highlight
-
- # git-jump
- exeinto /usr/libexec/git-core/
- doexe contrib/git-jump/git-jump
- newdoc contrib/git-jump/README git-jump.txt
-
- # git-contacts
- exeinto /usr/libexec/git-core/
- doexe contrib/contacts/git-contacts
- dodoc contrib/contacts/git-contacts.txt
-
- if use gnome-keyring ; then
- pushd contrib/credential/libsecret &>/dev/null || die
- dobin git-credential-libsecret
- popd &>/dev/null || die
- fi
-
- dodir /usr/share/${PN}/contrib
- # The following are excluded:
- # completion - installed above
- # diff-highlight - done above
- # emacs - removed upstream
- # examples - these are stuff that is not used in Git anymore actually
- # git-jump - done above
- # gitview - installed above
- # p4import - excluded because fast-import has a better one
- # patches - stuff the Git guys made to go upstream to other places
- # persistent-https - TODO
- # mw-to-git - TODO
- # subtree - build seperately
- # svnimport - use git-svn
- # thunderbird-patch-inline - fixes thunderbird
- local contrib_objects=(
- buildsystems
- fast-import
- hg-to-git
- hooks
- remotes2config.sh
- rerere-train.sh
- stats
- workdir
- )
- local i
- for i in "${contrib_objects[@]}" ; do
- cp -rf \
- "${S}"/contrib/${i} \
- "${ED}"/usr/share/${PN}/contrib \
- || die "Failed contrib ${i}"
- done
-
- if use perl && use cgi ; then
- # We used to install in /usr/share/${PN}/gitweb
- # but upstream installs in /usr/share/gitweb
- # so we will install a symlink and use their location for compat with other
- # distros
- dosym ../gitweb /usr/share/${PN}/gitweb
-
- # INSTALL discusses configuration issues, not just installation
- docinto /
- newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb
- newdoc "${S}"/gitweb/README README.gitweb
-
- for d in "${ED}"/usr/lib{,64}/perl5/ ; do
- if [[ -d "${d}" ]] ; then
- find "${d}" -name .packlist -delete || die
- fi
- done
- else
- rm -rf "${ED}"/usr/share/gitweb
- fi
-
- if ! use subversion ; then
- rm -f "${ED}"/usr/libexec/git-core/git-svn \
- "${ED}"/usr/share/man/man1/git-svn.1*
- fi
-
- if use xinetd ; then
- insinto /etc/xinetd.d
- newins "${FILESDIR}"/git-daemon.xinetd git-daemon
- fi
-
- if ! use prefix ; then
- newinitd "${FILESDIR}"/git-daemon-r2.initd git-daemon
- newconfd "${FILESDIR}"/git-daemon.confd git-daemon
- systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" \
- "git-daemon@.service"
- systemd_dounit "${FILESDIR}/git-daemon.socket"
- fi
-
- perl_delete_localpod
-
- # Remove disabled linguas
- # we could remove sources in src_prepare, but install does not
- # handle missing locale dir well
- rm_loc() {
- if [[ -e "${ED}/usr/share/locale/${1}" ]] ; then
- rm -r "${ED}/usr/share/locale/${1}" || die
- fi
- }
- plocale_for_each_disabled_locale rm_loc
-}
-
-src_test() {
- local disabled=()
- local tests_cvs=(
- t9200-git-cvsexportcommit.sh
- t9400-git-cvsserver-server.sh
- t9401-git-cvsserver-crlf.sh
- t9402-git-cvsserver-refs.sh
- t9600-cvsimport.sh
- t9601-cvsimport-vendor-branch.sh
- t9602-cvsimport-branches-tags.sh
- t9603-cvsimport-patchsets.sh
- t9604-cvsimport-timestamps.sh
- )
- local tests_perl=(
- t3701-add-interactive.sh
- t5502-quickfetch.sh
- t5512-ls-remote.sh
- t5520-pull.sh
- t7106-reset-unborn-branch.sh
- t7501-commit.sh
- )
- # Bug #225601 - t0004 is not suitable for root perm
- # Bug #219839 - t1004 is not suitable for root perm
- # t0001-init.sh - check for init notices EPERM* fails
- local tests_nonroot=(
- t0001-init.sh
- t0004-unwritable.sh
- t0070-fundamental.sh
- t1004-read-tree-m-u-wf.sh
- t3700-add.sh
- t7300-clean.sh
- )
- # t9100 still fails with symlinks in SVN 1.7
- local test_svn=( t9100-git-svn-basic.sh )
-
- # Unzip is used only for the testcase code, not by any normal parts of Git.
- if ! has_version app-arch/unzip ; then
- einfo "Disabling tar-tree tests"
- disabled+=( t5000-tar-tree.sh )
- fi
-
- local cvs=0
- use cvs && let cvs=${cvs}+1
- if [[ ${EUID} -eq 0 ]] ; then
- if [[ ${cvs} -eq 1 ]] ; then
- ewarn "Skipping CVS tests because CVS does not work as root!"
- ewarn "You should retest with FEATURES=userpriv!"
- disabled+=( ${tests_cvs[@]} )
- fi
- einfo "Skipping other tests that require being non-root"
- disabled+=( ${tests_nonroot[@]} )
- else
- [[ ${cvs} -gt 0 ]] && \
- has_version dev-vcs/cvs && \
- let cvs=${cvs}+1
- [[ ${cvs} -gt 1 ]] && \
- has_version "dev-vcs/cvs[server]" && \
- let cvs=${cvs}+1
- if [[ ${cvs} -lt 3 ]] ; then
- einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
- disabled+=( ${tests_cvs[@]} )
- fi
- fi
-
- if ! use perl ; then
- einfo "Disabling tests that need Perl"
- disabled+=( ${tests_perl[@]} )
- fi
-
- einfo "Disabling tests that fail with SVN 1.7"
- disabled+=( ${test_svn[@]} )
-
- # Reset all previously disabled tests
- pushd t &>/dev/null || die
- local i
- for i in *.sh.DISABLED ; do
- [[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
- done
- einfo "Disabled tests:"
- for i in ${disabled[@]} ; do
- if [[ -f "${i}" ]] ; then
- mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
- fi
- done
-
- # Avoid the test system removing the results because we want them ourselves
- sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' -i Makefile || die
-
- # Clean old results first, must always run
- nonfatal git_emake clean
- popd &>/dev/null || die
-
- # Now run the tests, keep going if we hit an error, and don't terminate on
- # failure
- local rc
- einfo "Start test run"
- #MAKEOPTS=-j1
- nonfatal git_emake --keep-going test
- rc=$?
-
- # Display nice results, now print the results
- pushd t &>/dev/null || die
- nonfatal git_emake aggregate-results
-
- # And bail if there was a problem
- [[ ${rc} -eq 0 ]] || die "tests failed. Please file a bug."
-}
-
-showpkgdeps() {
- local pkg=$1
- shift
- elog " $(printf "%-17s:" ${pkg}) ${@}"
-}
-
-pkg_postinst() {
- elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
- elog "completion."
- elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
- elog "Note that the prompt bash code is now in that separate script"
- elog "These additional scripts need some dependencies:"
- echo
- showpkgdeps git-quiltimport "dev-util/quilt"
- showpkgdeps git-instaweb \
- "|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
- echo
- use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
-}
diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.35.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.35.5.ebuild
deleted file mode 100644
index cf66a5432c..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.35.5.ebuild
+++ /dev/null
@@ -1,641 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-GENTOO_DEPEND_ON_PERL=no
-
-# bug #329479: git-remote-testgit is not multiple-version aware
-PYTHON_COMPAT=( python3_{8..10} )
-
-inherit toolchain-funcs perl-module bash-completion-r1 plocale python-single-r1 systemd
-
-PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
-if [[ ${PV} == *9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/git/git.git"
- # Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
- # See https://git-scm.com/docs/gitworkflows#_graduation
- # In order of stability:
- # 9999-r0: maint
- # 9999-r1: master
- # 9999-r2: next
- # 9999-r3: seen
- case "${PVR}" in
- 9999) EGIT_BRANCH=maint ;;
- 9999-r1) EGIT_BRANCH=master ;;
- 9999-r2) EGIT_BRANCH=next;;
- 9999-r3) EGIT_BRANCH=seen ;;
- esac
-fi
-
-MY_PV="${PV/_rc/.rc}"
-MY_P="${PN}-${MY_PV}"
-
-DOC_VER="${MY_PV}"
-
-DESCRIPTION="stupid content tracker: distributed VCS designed for speed and efficiency"
-HOMEPAGE="https://www.git-scm.com/"
-if [[ ${PV} != *9999 ]]; then
- SRC_URI_SUFFIX="xz"
- SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
- [[ "${PV/rc}" != "${PV}" ]] && SRC_URI_KORG+='/testing'
- SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
- ${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
- doc? (
- ${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
- )"
- [[ "${PV}" == *_rc* ]] || \
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="+blksha1 +curl cgi doc gnome-keyring +gpg highlight +iconv mediawiki mediawiki-experimental +nls +pcre perforce +perl +ppcsha1 selinux subversion tk +threads +webdav xinetd cvs test"
-
-# Common to both DEPEND and RDEPEND
-DEPEND="
- gnome-keyring? (
- app-crypt/libsecret
- dev-libs/glib:2
- )
- dev-libs/openssl:0=
- sys-libs/zlib
- pcre? ( dev-libs/libpcre2:= )
- perl? ( dev-lang/perl:=[-build(-)] )
- tk? ( dev-lang/tk:0= )
- curl? (
- net-misc/curl
- webdav? ( dev-libs/expat )
- )
- iconv? ( virtual/libiconv )
-"
-
-RDEPEND="${DEPEND}
- gpg? ( app-crypt/gnupg )
- perl? (
- dev-perl/Error
- dev-perl/MailTools
- dev-perl/Authen-SASL
- >=virtual/perl-libnet-3.110.0-r4[ssl]
- cgi? (
- dev-perl/CGI
- highlight? ( app-text/highlight )
- )
- cvs? (
- >=dev-vcs/cvsps-2.1:0
- dev-perl/DBI
- dev-perl/DBD-SQLite
- )
- mediawiki? (
- dev-perl/DateTime-Format-ISO8601
- dev-perl/HTML-Tree
- dev-perl/MediaWiki-API
- )
- subversion? (
- dev-vcs/subversion[-dso(-),perl]
- dev-perl/libwww-perl
- dev-perl/TermReadKey
- )
- )
- perforce? ( ${PYTHON_DEPS} )
- selinux? ( sec-policy/selinux-git )
-"
-
-# This is how info docs are created with Git:
-# .txt/asciidoc --(asciidoc)---------> .xml/docbook
-# .xml/docbook --(docbook2texi.pl)--> .texi
-# .texi --(makeinfo)---------> .info
-BDEPEND="
- doc? (
- app-text/asciidoc
- app-text/docbook2X
- app-text/xmlto
- sys-apps/texinfo
- )
- gnome-keyring? ( virtual/pkgconfig )
- nls? ( sys-devel/gettext )
- test? ( app-crypt/gnupg )
-"
-
-# Live ebuild builds man pages and HTML docs, additionally
-if [[ ${PV} == *9999 ]]; then
- BDEPEND="${BDEPEND}
- app-text/asciidoc"
-fi
-
-SITEFILE="50${PN}-gentoo.el"
-S="${WORKDIR}/${MY_P}"
-
-REQUIRED_USE="
- cgi? ( perl )
- cvs? ( perl )
- mediawiki? ( perl )
- mediawiki-experimental? ( mediawiki )
- perforce? ( ${PYTHON_REQUIRED_USE} )
- subversion? ( perl )
- webdav? ( curl )
-"
-
-RESTRICT="!test? ( test )"
-
-PATCHES=(
- # bug #350330 - automagic CVS when we don't want it is bad.
- "${FILESDIR}"/git-2.33.0_rc0-optional-cvs.patch
-
- # Make submodule output quiet
- "${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch
-)
-
-pkg_setup() {
- if use subversion && has_version "dev-vcs/subversion[dso]" ; then
- ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
- ewarn "with USE=dso, there may be weird crashes in git-svn. You"
- ewarn "have been warned."
- fi
-
- if use perforce ; then
- python-single-r1_pkg_setup
- fi
-}
-
-# This is needed because for some obscure reasons future calls to make don't
-# pick up these exports if we export them in src_unpack()
-exportmakeopts() {
- local extlibs myopts
-
- myopts=(
- ASCIIDOC_NO_ROFF=YesPlease
- $(usex cvs '' NO_CVS=YesPlease)
- $(usex elibc_musl NO_REGEX=YesPlease '')
- $(usex iconv '' NO_ICONV=YesPlease)
- $(usex nls '' NO_GETTEXT=YesPlease)
- $(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
- $(usex perforce '' NO_PYTHON=YesPlease)
- $(usex subversion '' NO_SVN_TESTS=YesPlease)
- $(usex threads '' NO_PTHREADS=YesPlease)
- $(usex tk '' NO_TCLTK=YesPlease)
- )
-
- if use blksha1 ; then
- myopts+=( BLK_SHA1=YesPlease )
- elif use ppcsha1 ; then
- myopts+=( PPC_SHA1=YesPlease )
- fi
-
- if use curl ; then
- use webdav || myopts+=( NO_EXPAT=YesPlease )
- else
- myopts+=( NO_CURL=YesPlease )
- fi
-
- # broken assumptions, because of static build system ...
- myopts+=(
- NO_FINK=YesPlease
- NO_DARWIN_PORTS=YesPlease
- INSTALL=install
- TAR=tar
- SHELL_PATH="${EPREFIX}/bin/sh"
- SANE_TOOL_PATH=
- OLD_ICONV=
- NO_EXTERNAL_GREP=
- )
-
- # can't define this to null, since the entire makefile depends on it
- sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
-
- if use pcre; then
- myopts+=( USE_LIBPCRE2=YesPlease )
- extlibs+=( -lpcre2-8 )
- fi
- if [[ ${CHOST} == *-solaris* ]]; then
- myopts+=(
- NEEDS_LIBICONV=YesPlease
- HAVE_CLOCK_MONOTONIC=1
- )
- if grep -Fq getdelim "${EROOT}"/usr/include/stdio.h ; then
- myopts+=( HAVE_GETDELIM=1 )
- fi
- fi
-
- if has_version '>=app-text/asciidoc-8.0' ; then
- myopts+=( ASCIIDOC8=YesPlease )
- fi
-
- export MY_MAKEOPTS="${myopts[@]}"
- export EXTLIBS="${extlibs[@]}"
-}
-
-src_unpack() {
- if [[ ${PV} != *9999 ]] ; then
- unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
- cd "${S}" || die
- unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
- if use doc ; then
- pushd "${S}"/Documentation &>/dev/null || die
- unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
- popd &>/dev/null || die
- fi
- else
- git-r3_src_unpack
- #cp "${FILESDIR}"/GIT-VERSION-GEN .
- fi
-
-}
-
-src_prepare() {
- # add experimental patches to improve mediawiki support
- # see patches for origin
- if use mediawiki-experimental ; then
- PATCHES+=(
- "${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
- "${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
- "${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
- )
- fi
-
- default
-
- if use prefix ; then
- # bug #757309
- eapply "${FILESDIR}"/git-2.31.0-darwin-prefix-gettext.patch
- fi
-
- sed -i \
- -e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
- -e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
- -e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
- -e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
- -e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
- -e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
- Makefile || die
-
- # Fix docbook2texi command
- sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
- Documentation/Makefile || die
-}
-
-git_emake() {
- # bug #320647: PYTHON_PATH
- local PYTHON_PATH=""
- use perforce && PYTHON_PATH="${PYTHON}"
- emake ${MY_MAKEOPTS} \
- prefix="${EPREFIX}"/usr \
- htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
- perllibdir="$(use perl && perl_get_raw_vendorlib)" \
- sysconfdir="${EPREFIX}"/etc \
- GIT_TEST_OPTS="--no-color" \
- OPTAR="$(tc-getAR)" \
- OPTCC="$(tc-getCC)" \
- OPTCFLAGS="${CFLAGS}" \
- OPTLDFLAGS="${LDFLAGS}" \
- PERL_PATH="${EPREFIX}/usr/bin/perl" \
- PERL_MM_OPT="" \
- PYTHON_PATH="${PYTHON_PATH}" \
- V=1 \
- "$@"
-}
-
-src_configure() {
- exportmakeopts
-}
-
-src_compile() {
- git_emake || die "emake failed"
-
- if use perl && use cgi ; then
- git_emake gitweb || die "emake gitweb (cgi) failed"
- fi
-
- if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then
- pushd contrib/credential/osxkeychain &>/dev/null || die
- git_emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" \
- || die "emake credential-osxkeychain"
- popd &>/dev/null || die
- fi
-
- pushd Documentation &>/dev/null || die
- if [[ ${PV} == *9999 ]] ; then
- git_emake man || die "emake man failed"
- if use doc ; then
- git_emake info html || die "emake info html failed"
- fi
- else
- if use doc ; then
- git_emake info || die "emake info html failed"
- fi
- fi
- popd &>/dev/null || die
-
- if use gnome-keyring ; then
- pushd contrib/credential/libsecret &>/dev/null || die
- git_emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" PKG_CONFIG="$(tc-getPKG_CONFIG)"
- popd &>/dev/null || die
- fi
-
- pushd contrib/subtree &>/dev/null || die
- git_emake git-subtree || die
- # git-subtree.1 requires the full USE=doc dependency stack
- use doc && git_emake git-subtree.html git-subtree.1
- popd &>/dev/null || die
-
- pushd contrib/diff-highlight &>/dev/null || die
- git_emake || die
- popd &>/dev/null || die
-
- if use mediawiki ; then
- pushd contrib/mw-to-git &>/dev/null || die
- git_emake || die
- popd &>/dev/null || die
-
- fi
-}
-
-src_install() {
- git_emake DESTDIR="${D}" install || die "make install failed"
-
- if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then
- dobin contrib/credential/osxkeychain/git-credential-osxkeychain
- fi
-
- # Depending on the tarball and manual rebuild of the documentation, the
- # manpages may exist in either OR both of these directories.
- find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
- find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
- dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
- use doc && dodir /usr/share/doc/${PF}/html
- local d
- for d in / /howto/ /technical/ ; do
- docinto ${d}
- dodoc Documentation${d}*.txt
- if use doc ; then
- docinto ${d}/html
- dodoc Documentation${d}*.html
- fi
- done
- docinto /
- # Upstream does not ship this pre-built :-(
- use doc && doinfo Documentation/{git,gitman}.info
-
- newbashcomp contrib/completion/git-completion.bash ${PN}
- bashcomp_alias git gitk
- # Not really a bash-completion file (bug #477920)
- # but still needed uncompressed (bug #507480)
- insinto /usr/share/${PN}
- doins contrib/completion/git-prompt.sh
-
- #dobin contrib/fast-import/git-p4 # Moved upstream
- #dodoc contrib/fast-import/git-p4.txt # Moved upstream
- newbin contrib/fast-import/import-tars.perl import-tars
- exeinto /usr/libexec/git-core/
- newexe contrib/git-resurrect.sh git-resurrect
-
- # git-subtree
- pushd contrib/subtree &>/dev/null || die
- git_emake DESTDIR="${D}" install || die "Failed to emake install for git-subtree"
- if use doc ; then
- # Do not move git subtree install-man outside USE=doc!
- git_emake DESTDIR="${D}" install-man install-html || die "Failed to emake install-html install-man for git-subtree"
- fi
- newdoc README README.git-subtree
- dodoc git-subtree.txt
- popd &>/dev/null || die
-
- if use mediawiki ; then
- pushd contrib/mw-to-git &>/dev/null || die
- git_emake DESTDIR="${D}" install
- popd &>/dev/null || die
- fi
-
- # diff-highlight
- dobin contrib/diff-highlight/diff-highlight
- newdoc contrib/diff-highlight/README README.diff-highlight
-
- # git-jump
- exeinto /usr/libexec/git-core/
- doexe contrib/git-jump/git-jump
- newdoc contrib/git-jump/README git-jump.txt
-
- # git-contacts
- exeinto /usr/libexec/git-core/
- doexe contrib/contacts/git-contacts
- dodoc contrib/contacts/git-contacts.txt
-
- if use gnome-keyring ; then
- pushd contrib/credential/libsecret &>/dev/null || die
- dobin git-credential-libsecret
- popd &>/dev/null || die
- fi
-
- dodir /usr/share/${PN}/contrib
- # The following are excluded:
- # completion - installed above
- # diff-highlight - done above
- # emacs - removed upstream
- # examples - these are stuff that is not used in Git anymore actually
- # git-jump - done above
- # gitview - installed above
- # p4import - excluded because fast-import has a better one
- # patches - stuff the Git guys made to go upstream to other places
- # persistent-https - TODO
- # mw-to-git - TODO
- # subtree - build seperately
- # svnimport - use git-svn
- # thunderbird-patch-inline - fixes thunderbird
- local contrib_objects=(
- buildsystems
- fast-import
- hg-to-git
- hooks
- remotes2config.sh
- rerere-train.sh
- stats
- workdir
- )
- local i
- for i in "${contrib_objects[@]}" ; do
- cp -rf \
- "${S}"/contrib/${i} \
- "${ED}"/usr/share/${PN}/contrib \
- || die "Failed contrib ${i}"
- done
-
- if use perl && use cgi ; then
- # We used to install in /usr/share/${PN}/gitweb
- # but upstream installs in /usr/share/gitweb
- # so we will install a symlink and use their location for compat with other
- # distros
- dosym ../gitweb /usr/share/${PN}/gitweb
-
- # INSTALL discusses configuration issues, not just installation
- docinto /
- newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb
- newdoc "${S}"/gitweb/README README.gitweb
-
- for d in "${ED}"/usr/lib{,64}/perl5/ ; do
- if [[ -d "${d}" ]] ; then
- find "${d}" -name .packlist -delete || die
- fi
- done
- else
- rm -rf "${ED}"/usr/share/gitweb
- fi
-
- if ! use subversion ; then
- rm -f "${ED}"/usr/libexec/git-core/git-svn \
- "${ED}"/usr/share/man/man1/git-svn.1*
- fi
-
- if use xinetd ; then
- insinto /etc/xinetd.d
- newins "${FILESDIR}"/git-daemon.xinetd git-daemon
- fi
-
- if ! use prefix ; then
- newinitd "${FILESDIR}"/git-daemon-r2.initd git-daemon
- newconfd "${FILESDIR}"/git-daemon.confd git-daemon
- systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" \
- "git-daemon@.service"
- systemd_dounit "${FILESDIR}/git-daemon.socket"
- fi
-
- perl_delete_localpod
-
- # Remove disabled linguas
- # we could remove sources in src_prepare, but install does not
- # handle missing locale dir well
- rm_loc() {
- if [[ -e "${ED}/usr/share/locale/${1}" ]] ; then
- rm -r "${ED}/usr/share/locale/${1}" || die
- fi
- }
- plocale_for_each_disabled_locale rm_loc
-}
-
-src_test() {
- local disabled=()
- local tests_cvs=(
- t9200-git-cvsexportcommit.sh
- t9400-git-cvsserver-server.sh
- t9401-git-cvsserver-crlf.sh
- t9402-git-cvsserver-refs.sh
- t9600-cvsimport.sh
- t9601-cvsimport-vendor-branch.sh
- t9602-cvsimport-branches-tags.sh
- t9603-cvsimport-patchsets.sh
- t9604-cvsimport-timestamps.sh
- )
- local tests_perl=(
- t3701-add-interactive.sh
- t5502-quickfetch.sh
- t5512-ls-remote.sh
- t5520-pull.sh
- t7106-reset-unborn-branch.sh
- t7501-commit.sh
- )
- # Bug #225601 - t0004 is not suitable for root perm
- # Bug #219839 - t1004 is not suitable for root perm
- # t0001-init.sh - check for init notices EPERM* fails
- local tests_nonroot=(
- t0001-init.sh
- t0004-unwritable.sh
- t0070-fundamental.sh
- t1004-read-tree-m-u-wf.sh
- t3700-add.sh
- t7300-clean.sh
- )
- # t9100 still fails with symlinks in SVN 1.7
- local test_svn=( t9100-git-svn-basic.sh )
-
- # Unzip is used only for the testcase code, not by any normal parts of Git.
- if ! has_version app-arch/unzip ; then
- einfo "Disabling tar-tree tests"
- disabled+=( t5000-tar-tree.sh )
- fi
-
- local cvs=0
- use cvs && let cvs=${cvs}+1
- if [[ ${EUID} -eq 0 ]] ; then
- if [[ ${cvs} -eq 1 ]] ; then
- ewarn "Skipping CVS tests because CVS does not work as root!"
- ewarn "You should retest with FEATURES=userpriv!"
- disabled+=( ${tests_cvs[@]} )
- fi
- einfo "Skipping other tests that require being non-root"
- disabled+=( ${tests_nonroot[@]} )
- else
- [[ ${cvs} -gt 0 ]] && \
- has_version dev-vcs/cvs && \
- let cvs=${cvs}+1
- [[ ${cvs} -gt 1 ]] && \
- has_version "dev-vcs/cvs[server]" && \
- let cvs=${cvs}+1
- if [[ ${cvs} -lt 3 ]] ; then
- einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
- disabled+=( ${tests_cvs[@]} )
- fi
- fi
-
- if ! use perl ; then
- einfo "Disabling tests that need Perl"
- disabled+=( ${tests_perl[@]} )
- fi
-
- einfo "Disabling tests that fail with SVN 1.7"
- disabled+=( ${test_svn[@]} )
-
- # Reset all previously disabled tests
- pushd t &>/dev/null || die
- local i
- for i in *.sh.DISABLED ; do
- [[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
- done
- einfo "Disabled tests:"
- for i in ${disabled[@]} ; do
- if [[ -f "${i}" ]] ; then
- mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
- fi
- done
-
- # Avoid the test system removing the results because we want them ourselves
- sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' -i Makefile || die
-
- # Clean old results first, must always run
- nonfatal git_emake clean
- popd &>/dev/null || die
-
- # Now run the tests, keep going if we hit an error, and don't terminate on
- # failure
- local rc
- einfo "Start test run"
- #MAKEOPTS=-j1
- nonfatal git_emake --keep-going test
- rc=$?
-
- # Display nice results, now print the results
- pushd t &>/dev/null || die
- nonfatal git_emake aggregate-results
-
- # And bail if there was a problem
- [[ ${rc} -eq 0 ]] || die "tests failed. Please file a bug."
-}
-
-showpkgdeps() {
- local pkg=$1
- shift
- elog " $(printf "%-17s:" ${pkg}) ${@}"
-}
-
-pkg_postinst() {
- elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
- elog "completion."
- elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
- elog "Note that the prompt bash code is now in that separate script"
- elog "These additional scripts need some dependencies:"
- echo
- showpkgdeps git-quiltimport "dev-util/quilt"
- showpkgdeps git-instaweb \
- "|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
- echo
- use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
-}
diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.37.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.37.3.ebuild
deleted file mode 100644
index a406c1e82c..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.37.3.ebuild
+++ /dev/null
@@ -1,647 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-GENTOO_DEPEND_ON_PERL=no
-
-# bug #329479: git-remote-testgit is not multiple-version aware
-PYTHON_COMPAT=( python3_{8..10} )
-
-inherit toolchain-funcs perl-module bash-completion-r1 plocale python-single-r1 systemd
-
-PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
-if [[ ${PV} == *9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/git/git.git"
- # Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
- # See https://git-scm.com/docs/gitworkflows#_graduation
- # In order of stability:
- # 9999-r0: maint
- # 9999-r1: master
- # 9999-r2: next
- # 9999-r3: seen
- case "${PVR}" in
- 9999) EGIT_BRANCH=maint ;;
- 9999-r1) EGIT_BRANCH=master ;;
- 9999-r2) EGIT_BRANCH=next;;
- 9999-r3) EGIT_BRANCH=seen ;;
- esac
-fi
-
-MY_PV="${PV/_rc/.rc}"
-MY_P="${PN}-${MY_PV}"
-
-DOC_VER="${MY_PV}"
-
-DESCRIPTION="stupid content tracker: distributed VCS designed for speed and efficiency"
-HOMEPAGE="https://www.git-scm.com/"
-if [[ ${PV} != *9999 ]]; then
- SRC_URI_SUFFIX="xz"
- SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
- [[ "${PV/rc}" != "${PV}" ]] && SRC_URI_KORG+='/testing'
- SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
- ${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
- doc? (
- ${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
- )"
- [[ "${PV}" == *_rc* ]] || \
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="+blksha1 +curl cgi doc gnome-keyring +gpg highlight +iconv mediawiki mediawiki-experimental +nls +pcre perforce +perl +ppcsha1 +safe-directory selinux subversion tk +webdav xinetd cvs test"
-
-# Common to both DEPEND and RDEPEND
-DEPEND="
- gnome-keyring? (
- app-crypt/libsecret
- dev-libs/glib:2
- )
- dev-libs/openssl:0=
- sys-libs/zlib
- pcre? ( dev-libs/libpcre2:= )
- perl? ( dev-lang/perl:=[-build(-)] )
- tk? ( dev-lang/tk:0= )
- curl? (
- net-misc/curl
- webdav? ( dev-libs/expat )
- )
- iconv? ( virtual/libiconv )
-"
-
-RDEPEND="${DEPEND}
- gpg? ( app-crypt/gnupg )
- perl? (
- dev-perl/Error
- dev-perl/MailTools
- dev-perl/Authen-SASL
- >=virtual/perl-libnet-3.110.0-r4[ssl]
- cgi? (
- dev-perl/CGI
- highlight? ( app-text/highlight )
- )
- cvs? (
- >=dev-vcs/cvsps-2.1:0
- dev-perl/DBI
- dev-perl/DBD-SQLite
- )
- mediawiki? (
- dev-perl/DateTime-Format-ISO8601
- dev-perl/HTML-Tree
- dev-perl/MediaWiki-API
- )
- subversion? (
- dev-vcs/subversion[-dso(-),perl]
- dev-perl/libwww-perl
- dev-perl/TermReadKey
- )
- )
- perforce? ( ${PYTHON_DEPS} )
- selinux? ( sec-policy/selinux-git )
-"
-
-# This is how info docs are created with Git:
-# .txt/asciidoc --(asciidoc)---------> .xml/docbook
-# .xml/docbook --(docbook2texi.pl)--> .texi
-# .texi --(makeinfo)---------> .info
-BDEPEND="
- doc? (
- app-text/asciidoc
- app-text/docbook2X
- app-text/xmlto
- sys-apps/texinfo
- )
- gnome-keyring? ( virtual/pkgconfig )
- nls? ( sys-devel/gettext )
- test? ( app-crypt/gnupg )
-"
-
-# Live ebuild builds man pages and HTML docs, additionally
-if [[ ${PV} == *9999 ]]; then
- BDEPEND="${BDEPEND}
- app-text/asciidoc"
-fi
-
-SITEFILE="50${PN}-gentoo.el"
-S="${WORKDIR}/${MY_P}"
-
-REQUIRED_USE="
- cgi? ( perl )
- cvs? ( perl )
- mediawiki? ( perl )
- mediawiki-experimental? ( mediawiki )
- perforce? ( ${PYTHON_REQUIRED_USE} )
- subversion? ( perl )
- webdav? ( curl )
-"
-
-RESTRICT="!test? ( test )"
-
-PATCHES=(
- # bug #350330 - automagic CVS when we don't want it is bad.
- "${FILESDIR}"/git-2.37.0_rc1-optional-cvs.patch
-
- # Make submodule output quiet
- "${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch
-)
-
-pkg_setup() {
- if use subversion && has_version "dev-vcs/subversion[dso]" ; then
- ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
- ewarn "with USE=dso, there may be weird crashes in git-svn. You"
- ewarn "have been warned."
- fi
-
- if use perforce ; then
- python-single-r1_pkg_setup
- fi
-}
-
-# This is needed because for some obscure reasons future calls to make don't
-# pick up these exports if we export them in src_unpack()
-exportmakeopts() {
- local extlibs myopts
-
- myopts=(
- ASCIIDOC_NO_ROFF=YesPlease
- $(usex cvs '' NO_CVS=YesPlease)
- $(usex elibc_musl NO_REGEX=YesPlease '')
- $(usex iconv '' NO_ICONV=YesPlease)
- $(usex nls '' NO_GETTEXT=YesPlease)
- $(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
- $(usex perforce '' NO_PYTHON=YesPlease)
- $(usex subversion '' NO_SVN_TESTS=YesPlease)
- $(usex tk '' NO_TCLTK=YesPlease)
- )
-
- if use blksha1 ; then
- myopts+=( BLK_SHA1=YesPlease )
- elif use ppcsha1 ; then
- myopts+=( PPC_SHA1=YesPlease )
- fi
-
- if use curl ; then
- use webdav || myopts+=( NO_EXPAT=YesPlease )
- else
- myopts+=( NO_CURL=YesPlease )
- fi
-
- # broken assumptions, because of static build system ...
- myopts+=(
- NO_FINK=YesPlease
- NO_DARWIN_PORTS=YesPlease
- INSTALL=install
- TAR=tar
- SHELL_PATH="${EPREFIX}/bin/sh"
- SANE_TOOL_PATH=
- OLD_ICONV=
- NO_EXTERNAL_GREP=
- )
-
- # can't define this to null, since the entire makefile depends on it
- sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
-
- if use pcre; then
- myopts+=( USE_LIBPCRE2=YesPlease )
- extlibs+=( -lpcre2-8 )
- fi
- if [[ ${CHOST} == *-solaris* ]]; then
- myopts+=(
- NEEDS_LIBICONV=YesPlease
- HAVE_CLOCK_MONOTONIC=1
- )
- if grep -Fq getdelim "${EROOT}"/usr/include/stdio.h ; then
- myopts+=( HAVE_GETDELIM=1 )
- fi
- fi
-
- if has_version '>=app-text/asciidoc-8.0' ; then
- myopts+=( ASCIIDOC8=YesPlease )
- fi
-
- export MY_MAKEOPTS="${myopts[@]}"
- export EXTLIBS="${extlibs[@]}"
-}
-
-src_unpack() {
- if [[ ${PV} != *9999 ]] ; then
- unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
- cd "${S}" || die
- unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
- if use doc ; then
- pushd "${S}"/Documentation &>/dev/null || die
- unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
- popd &>/dev/null || die
- fi
- else
- git-r3_src_unpack
- #cp "${FILESDIR}"/GIT-VERSION-GEN .
- fi
-
-}
-
-src_prepare() {
- # add experimental patches to improve mediawiki support
- # see patches for origin
- if use mediawiki-experimental ; then
- PATCHES+=(
- "${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
- "${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
- "${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
- )
- fi
- if ! use safe-directory ; then
- # This patch neuters the "safe directory" detection.
- # bugs #838271, #838223
- PATCHES+=(
- "${FILESDIR}"/git-2.37.2-unsafe-directory.patch
- )
- fi
-
- default
-
- if use prefix ; then
- # bug #757309
- eapply "${FILESDIR}"/git-2.37.2-darwin-prefix-gettext.patch
- fi
-
- sed -i \
- -e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
- -e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
- -e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
- -e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
- -e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
- -e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
- Makefile || die
-
- # Fix docbook2texi command
- sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
- Documentation/Makefile || die
-}
-
-git_emake() {
- # bug #320647: PYTHON_PATH
- local PYTHON_PATH=""
- use perforce && PYTHON_PATH="${PYTHON}"
- emake ${MY_MAKEOPTS} \
- prefix="${EPREFIX}"/usr \
- htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
- perllibdir="$(use perl && perl_get_raw_vendorlib)" \
- sysconfdir="${EPREFIX}"/etc \
- GIT_TEST_OPTS="--no-color" \
- OPTAR="$(tc-getAR)" \
- OPTCC="$(tc-getCC)" \
- OPTCFLAGS="${CFLAGS}" \
- OPTLDFLAGS="${LDFLAGS}" \
- PERL_PATH="${EPREFIX}/usr/bin/perl" \
- PERL_MM_OPT="" \
- PYTHON_PATH="${PYTHON_PATH}" \
- V=1 \
- "$@"
-}
-
-src_configure() {
- exportmakeopts
-}
-
-src_compile() {
- git_emake || die "emake failed"
-
- if use perl && use cgi ; then
- git_emake gitweb || die "emake gitweb (cgi) failed"
- fi
-
- if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then
- pushd contrib/credential/osxkeychain &>/dev/null || die
- git_emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" \
- || die "emake credential-osxkeychain"
- popd &>/dev/null || die
- fi
-
- pushd Documentation &>/dev/null || die
- if [[ ${PV} == *9999 ]] ; then
- git_emake man || die "emake man failed"
- if use doc ; then
- git_emake info html || die "emake info html failed"
- fi
- else
- if use doc ; then
- git_emake info || die "emake info html failed"
- fi
- fi
- popd &>/dev/null || die
-
- if use gnome-keyring ; then
- pushd contrib/credential/libsecret &>/dev/null || die
- git_emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" PKG_CONFIG="$(tc-getPKG_CONFIG)"
- popd &>/dev/null || die
- fi
-
- pushd contrib/subtree &>/dev/null || die
- git_emake git-subtree || die
- # git-subtree.1 requires the full USE=doc dependency stack
- use doc && git_emake git-subtree.html git-subtree.1
- popd &>/dev/null || die
-
- pushd contrib/diff-highlight &>/dev/null || die
- git_emake || die
- popd &>/dev/null || die
-
- if use mediawiki ; then
- pushd contrib/mw-to-git &>/dev/null || die
- git_emake || die
- popd &>/dev/null || die
-
- fi
-}
-
-src_install() {
- git_emake DESTDIR="${D}" install || die "make install failed"
-
- if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then
- dobin contrib/credential/osxkeychain/git-credential-osxkeychain
- fi
-
- # Depending on the tarball and manual rebuild of the documentation, the
- # manpages may exist in either OR both of these directories.
- find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
- find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
- dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
- use doc && dodir /usr/share/doc/${PF}/html
- local d
- for d in / /howto/ /technical/ ; do
- docinto ${d}
- dodoc Documentation${d}*.txt
- if use doc ; then
- docinto ${d}/html
- dodoc Documentation${d}*.html
- fi
- done
- docinto /
- # Upstream does not ship this pre-built :-(
- use doc && doinfo Documentation/{git,gitman}.info
-
- newbashcomp contrib/completion/git-completion.bash ${PN}
- bashcomp_alias git gitk
- # Not really a bash-completion file (bug #477920)
- # but still needed uncompressed (bug #507480)
- insinto /usr/share/${PN}
- doins contrib/completion/git-prompt.sh
-
- #dobin contrib/fast-import/git-p4 # Moved upstream
- #dodoc contrib/fast-import/git-p4.txt # Moved upstream
- newbin contrib/fast-import/import-tars.perl import-tars
- exeinto /usr/libexec/git-core/
- newexe contrib/git-resurrect.sh git-resurrect
-
- # git-subtree
- pushd contrib/subtree &>/dev/null || die
- git_emake DESTDIR="${D}" install || die "Failed to emake install for git-subtree"
- if use doc ; then
- # Do not move git subtree install-man outside USE=doc!
- git_emake DESTDIR="${D}" install-man install-html || die "Failed to emake install-html install-man for git-subtree"
- fi
- newdoc README README.git-subtree
- dodoc git-subtree.txt
- popd &>/dev/null || die
-
- if use mediawiki ; then
- pushd contrib/mw-to-git &>/dev/null || die
- git_emake DESTDIR="${D}" install
- popd &>/dev/null || die
- fi
-
- # diff-highlight
- dobin contrib/diff-highlight/diff-highlight
- newdoc contrib/diff-highlight/README README.diff-highlight
-
- # git-jump
- exeinto /usr/libexec/git-core/
- doexe contrib/git-jump/git-jump
- newdoc contrib/git-jump/README git-jump.txt
-
- # git-contacts
- exeinto /usr/libexec/git-core/
- doexe contrib/contacts/git-contacts
- dodoc contrib/contacts/git-contacts.txt
-
- if use gnome-keyring ; then
- pushd contrib/credential/libsecret &>/dev/null || die
- dobin git-credential-libsecret
- popd &>/dev/null || die
- fi
-
- dodir /usr/share/${PN}/contrib
- # The following are excluded:
- # completion - installed above
- # diff-highlight - done above
- # emacs - removed upstream
- # examples - these are stuff that is not used in Git anymore actually
- # git-jump - done above
- # gitview - installed above
- # p4import - excluded because fast-import has a better one
- # patches - stuff the Git guys made to go upstream to other places
- # persistent-https - TODO
- # mw-to-git - TODO
- # subtree - build seperately
- # svnimport - use git-svn
- # thunderbird-patch-inline - fixes thunderbird
- local contrib_objects=(
- buildsystems
- fast-import
- hg-to-git
- hooks
- remotes2config.sh
- rerere-train.sh
- stats
- workdir
- )
- local i
- for i in "${contrib_objects[@]}" ; do
- cp -rf \
- "${S}"/contrib/${i} \
- "${ED}"/usr/share/${PN}/contrib \
- || die "Failed contrib ${i}"
- done
-
- if use perl && use cgi ; then
- # We used to install in /usr/share/${PN}/gitweb
- # but upstream installs in /usr/share/gitweb
- # so we will install a symlink and use their location for compat with other
- # distros
- dosym ../gitweb /usr/share/${PN}/gitweb
-
- # INSTALL discusses configuration issues, not just installation
- docinto /
- newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb
- newdoc "${S}"/gitweb/README README.gitweb
-
- for d in "${ED}"/usr/lib{,64}/perl5/ ; do
- if [[ -d "${d}" ]] ; then
- find "${d}" -name .packlist -delete || die
- fi
- done
- else
- rm -rf "${ED}"/usr/share/gitweb
- fi
-
- if ! use subversion ; then
- rm -f "${ED}"/usr/libexec/git-core/git-svn \
- "${ED}"/usr/share/man/man1/git-svn.1*
- fi
-
- if use xinetd ; then
- insinto /etc/xinetd.d
- newins "${FILESDIR}"/git-daemon.xinetd git-daemon
- fi
-
- if ! use prefix ; then
- newinitd "${FILESDIR}"/git-daemon-r2.initd git-daemon
- newconfd "${FILESDIR}"/git-daemon.confd git-daemon
- systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" \
- "git-daemon@.service"
- systemd_dounit "${FILESDIR}/git-daemon.socket"
- fi
-
- perl_delete_localpod
-
- # Remove disabled linguas
- # we could remove sources in src_prepare, but install does not
- # handle missing locale dir well
- rm_loc() {
- if [[ -e "${ED}/usr/share/locale/${1}" ]] ; then
- rm -r "${ED}/usr/share/locale/${1}" || die
- fi
- }
- plocale_for_each_disabled_locale rm_loc
-}
-
-src_test() {
- local disabled=()
- local tests_cvs=(
- t9200-git-cvsexportcommit.sh
- t9400-git-cvsserver-server.sh
- t9401-git-cvsserver-crlf.sh
- t9402-git-cvsserver-refs.sh
- t9600-cvsimport.sh
- t9601-cvsimport-vendor-branch.sh
- t9602-cvsimport-branches-tags.sh
- t9603-cvsimport-patchsets.sh
- t9604-cvsimport-timestamps.sh
- )
- local tests_perl=(
- t3701-add-interactive.sh
- t5502-quickfetch.sh
- t5512-ls-remote.sh
- t5520-pull.sh
- t7106-reset-unborn-branch.sh
- t7501-commit.sh
- )
- # Bug #225601 - t0004 is not suitable for root perm
- # Bug #219839 - t1004 is not suitable for root perm
- # t0001-init.sh - check for init notices EPERM* fails
- local tests_nonroot=(
- t0001-init.sh
- t0004-unwritable.sh
- t0070-fundamental.sh
- t1004-read-tree-m-u-wf.sh
- t3700-add.sh
- t7300-clean.sh
- )
- # t9100 still fails with symlinks in SVN 1.7
- local test_svn=( t9100-git-svn-basic.sh )
-
- # Unzip is used only for the testcase code, not by any normal parts of Git.
- if ! has_version app-arch/unzip ; then
- einfo "Disabling tar-tree tests"
- disabled+=( t5000-tar-tree.sh )
- fi
-
- local cvs=0
- use cvs && let cvs=${cvs}+1
- if [[ ${EUID} -eq 0 ]] ; then
- if [[ ${cvs} -eq 1 ]] ; then
- ewarn "Skipping CVS tests because CVS does not work as root!"
- ewarn "You should retest with FEATURES=userpriv!"
- disabled+=( ${tests_cvs[@]} )
- fi
- einfo "Skipping other tests that require being non-root"
- disabled+=( ${tests_nonroot[@]} )
- else
- [[ ${cvs} -gt 0 ]] && \
- has_version dev-vcs/cvs && \
- let cvs=${cvs}+1
- [[ ${cvs} -gt 1 ]] && \
- has_version "dev-vcs/cvs[server]" && \
- let cvs=${cvs}+1
- if [[ ${cvs} -lt 3 ]] ; then
- einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
- disabled+=( ${tests_cvs[@]} )
- fi
- fi
-
- if ! use perl ; then
- einfo "Disabling tests that need Perl"
- disabled+=( ${tests_perl[@]} )
- fi
-
- einfo "Disabling tests that fail with SVN 1.7"
- disabled+=( ${test_svn[@]} )
-
- # Reset all previously disabled tests
- pushd t &>/dev/null || die
- local i
- for i in *.sh.DISABLED ; do
- [[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
- done
- einfo "Disabled tests:"
- for i in ${disabled[@]} ; do
- if [[ -f "${i}" ]] ; then
- mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
- fi
- done
-
- # Avoid the test system removing the results because we want them ourselves
- sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' -i Makefile || die
-
- # Clean old results first, must always run
- nonfatal git_emake clean
- popd &>/dev/null || die
-
- # Now run the tests, keep going if we hit an error, and don't terminate on
- # failure
- local rc
- einfo "Start test run"
- #MAKEOPTS=-j1
- nonfatal git_emake --keep-going test
- rc=$?
-
- # Display nice results, now print the results
- pushd t &>/dev/null || die
- nonfatal git_emake aggregate-results
-
- # And bail if there was a problem
- [[ ${rc} -eq 0 ]] || die "tests failed. Please file a bug."
-}
-
-showpkgdeps() {
- local pkg=$1
- shift
- elog " $(printf "%-17s:" ${pkg}) ${@}"
-}
-
-pkg_postinst() {
- elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
- elog "completion."
- elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
- elog "Note that the prompt bash code is now in that separate script"
- elog "These additional scripts need some dependencies:"
- echo
- showpkgdeps git-quiltimport "dev-util/quilt"
- showpkgdeps git-instaweb \
- "|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
- echo
- use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
-}
diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.38.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.38.0.ebuild
deleted file mode 100644
index f68fb68b1f..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.38.0.ebuild
+++ /dev/null
@@ -1,657 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-GENTOO_DEPEND_ON_PERL=no
-
-# bug #329479: git-remote-testgit is not multiple-version aware
-PYTHON_COMPAT=( python3_{8..10} )
-
-inherit toolchain-funcs perl-module bash-completion-r1 optfeature plocale python-single-r1 systemd
-
-PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
-
-if [[ ${PV} == *9999 ]]; then
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/git/git.git"
-
- inherit git-r3
- # Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
- # See https://git-scm.com/docs/gitworkflows#_graduation
- # In order of stability:
- # 9999-r0: maint
- # 9999-r1: master
- # 9999-r2: next
- # 9999-r3: seen
- case ${PVR} in
- 9999) EGIT_BRANCH=maint ;;
- 9999-r1) EGIT_BRANCH=master ;;
- 9999-r2) EGIT_BRANCH=next;;
- 9999-r3) EGIT_BRANCH=seen ;;
- esac
-fi
-
-MY_PV="${PV/_rc/.rc}"
-MY_P="${PN}-${MY_PV}"
-
-DOC_VER="${MY_PV}"
-
-DESCRIPTION="Stupid content tracker: distributed VCS designed for speed and efficiency"
-HOMEPAGE="https://www.git-scm.com/"
-
-if [[ ${PV} != *9999 ]]; then
- SRC_URI_SUFFIX="xz"
- SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
-
- [[ ${PV/rc} != ${PV} ]] && SRC_URI_KORG+='/testing'
-
- SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}"
- SRC_URI+=" ${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}"
- SRC_URI+=" doc? ( ${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} )"
-
- if [[ ${PV} != *_rc* ]] ; then
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
- fi
-fi
-
-S="${WORKDIR}"/${MY_P}
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="+blksha1 +curl cgi doc gnome-keyring +gpg highlight +iconv mediawiki mediawiki-experimental +nls +pcre perforce +perl +safe-directory selinux subversion tk +webdav xinetd cvs test"
-
-# Common to both DEPEND and RDEPEND
-DEPEND="
- dev-libs/openssl:=
- sys-libs/zlib
- curl? (
- net-misc/curl
- webdav? ( dev-libs/expat )
- )
- gnome-keyring? (
- app-crypt/libsecret
- dev-libs/glib:2
- )
- iconv? ( virtual/libiconv )
- pcre? ( dev-libs/libpcre2:= )
- perl? ( dev-lang/perl:=[-build(-)] )
- tk? ( dev-lang/tk:= )
-"
-RDEPEND="
- ${DEPEND}
- gpg? ( app-crypt/gnupg )
- perl? (
- dev-perl/Error
- dev-perl/MailTools
- dev-perl/Authen-SASL
- >=virtual/perl-libnet-3.110.0-r4[ssl]
- cgi? (
- dev-perl/CGI
- highlight? ( app-text/highlight )
- )
- cvs? (
- >=dev-vcs/cvsps-2.1:0
- dev-perl/DBI
- dev-perl/DBD-SQLite
- )
- mediawiki? (
- dev-perl/DateTime-Format-ISO8601
- dev-perl/HTML-Tree
- dev-perl/MediaWiki-API
- )
- subversion? (
- dev-vcs/subversion[-dso(-),perl]
- dev-perl/libwww-perl
- dev-perl/TermReadKey
- )
- )
- perforce? ( ${PYTHON_DEPS} )
- selinux? ( sec-policy/selinux-git )
-"
-
-# This is how info docs are created with Git:
-# .txt/asciidoc --(asciidoc)---------> .xml/docbook
-# .xml/docbook --(docbook2texi.pl)--> .texi
-# .texi --(makeinfo)---------> .info
-BDEPEND="
- doc? (
- app-text/asciidoc
- app-text/docbook2X
- app-text/xmlto
- sys-apps/texinfo
- )
- gnome-keyring? ( virtual/pkgconfig )
- nls? ( sys-devel/gettext )
- test? ( app-crypt/gnupg )
-"
-
-# Live ebuild builds man pages and HTML docs, additionally
-if [[ ${PV} == *9999 ]]; then
- BDEPEND+=" app-text/asciidoc"
-fi
-
-SITEFILE="50${PN}-gentoo.el"
-
-REQUIRED_USE="
- cgi? ( perl )
- cvs? ( perl )
- mediawiki? ( perl )
- mediawiki-experimental? ( mediawiki )
- perforce? ( ${PYTHON_REQUIRED_USE} )
- subversion? ( perl )
- webdav? ( curl )
-"
-
-RESTRICT="!test? ( test )"
-
-PATCHES=(
- # Avoid automagic CVS, bug #350330
- "${FILESDIR}"/git-2.37.0_rc1-optional-cvs.patch
-
- # Make submodule output quiet
- "${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch
-)
-
-pkg_setup() {
- if use subversion && has_version "dev-vcs/subversion[dso]" ; then
- ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
- ewarn "with USE=dso, there may be weird crashes in git-svn. You"
- ewarn "have been warned!"
- fi
-
- if use perforce ; then
- python-single-r1_pkg_setup
- fi
-}
-
-# This is needed because for some obscure reasons future calls to make don't
-# pick up these exports if we export them in src_unpack()
-exportmakeopts() {
- local extlibs myopts
-
- myopts=(
- ASCIIDOC_NO_ROFF=YesPlease
-
- $(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
-
- $(usev elibc_musl NO_REGEX=YesPlease)
- $(usev !cvs NO_CVS=YesPlease)
- $(usev !iconv NO_ICONV=YesPlease)
- $(usev !nls NO_GETTEXT=YesPlease)
- $(usev !perforce NO_PYTHON=YesPlease)
- $(usev !subversion NO_SVN_TESTS=YesPlease)
- $(usev !tk NO_TCLTK=YesPlease)
- )
-
- if use blksha1 ; then
- myopts+=( BLK_SHA1=YesPlease )
- fi
-
- if use curl ; then
- use webdav || myopts+=( NO_EXPAT=YesPlease )
- else
- myopts+=( NO_CURL=YesPlease )
- fi
-
- # Broken assumptions because of static build system
- myopts+=(
- NO_FINK=YesPlease
- NO_DARWIN_PORTS=YesPlease
- INSTALL=install
- TAR=tar
- SHELL_PATH="${EPREFIX}/bin/sh"
- SANE_TOOL_PATH=
- OLD_ICONV=
- NO_EXTERNAL_GREP=
- )
-
- # Can't define this to null, since the entire makefile depends on it
- sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
-
- if use pcre; then
- myopts+=( USE_LIBPCRE2=YesPlease )
- extlibs+=( -lpcre2-8 )
- fi
-
- if [[ ${CHOST} == *-solaris* ]]; then
- myopts+=(
- NEEDS_LIBICONV=YesPlease
- HAVE_CLOCK_MONOTONIC=1
- )
-
- if grep -Fq getdelim "${ESYSROOT}"/usr/include/stdio.h ; then
- myopts+=( HAVE_GETDELIM=1 )
- fi
- fi
-
- myopts+=( ASCIIDOC8=YesPlease )
-
- export MY_MAKEOPTS="${myopts[@]}"
- export EXTLIBS="${extlibs[@]}"
-}
-
-src_unpack() {
- if [[ ${PV} != *9999 ]] ; then
- unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
-
- cd "${S}" || die
- unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
-
- if use doc ; then
- pushd "${S}"/Documentation &>/dev/null || die
- unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
- popd &>/dev/null || die
- fi
- else
- git-r3_src_unpack
- #cp "${FILESDIR}"/GIT-VERSION-GEN . || die
- fi
-
-}
-
-src_prepare() {
- # Add experimental patches to improve mediawiki support,
- # see patches for origin.
- if use mediawiki-experimental ; then
- PATCHES+=(
- "${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
- "${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
- "${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
- )
- fi
-
- if ! use safe-directory ; then
- # This patch neuters the "safe directory" detection.
- # bugs #838271, #838223
- PATCHES+=(
- "${FILESDIR}"/git-2.37.2-unsafe-directory.patch
- )
- fi
-
- default
-
- if use prefix ; then
- # bug #757309
- eapply "${FILESDIR}"/git-2.37.2-darwin-prefix-gettext.patch
- fi
-
- sed -i \
- -e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
- -e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
- -e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
- -e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
- -e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
- -e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
- Makefile || die
-
- # Fix docbook2texi command
- sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
- Documentation/Makefile || die
-}
-
-git_emake() {
- # bug #320647: PYTHON_PATH
- local PYTHON_PATH=""
- use perforce && PYTHON_PATH="${PYTHON}"
-
- local mymakeargs=(
- ${MY_MAKEOPTS}
-
- prefix="${EPREFIX}"/usr
- htmldir="${EPREFIX}"/usr/share/doc/${PF}/html
- perllibdir="$(use perl && perl_get_raw_vendorlib)"
- sysconfdir="${EPREFIX}"/etc
-
- CC="$(tc-getCC)"
- CFLAGS="${CFLAGS}"
- PKG_CONFIG="$(tc-getPKG_CONFIG)"
-
- # TODO: --verbose?
- GIT_TEST_OPTS="--no-color"
-
- OPTAR="$(tc-getAR)"
- OPTCC="$(tc-getCC)"
- OPTCFLAGS="${CFLAGS}"
- OPTLDFLAGS="${LDFLAGS}"
-
- PERL_PATH="${EPREFIX}/usr/bin/perl"
- PERL_MM_OPT=""
-
- PYTHON_PATH="${PYTHON_PATH}"
-
- V=1
- "$@"
- )
-
- emake "${mymakeargs[@]}"
-}
-
-src_configure() {
- exportmakeopts
-}
-
-src_compile() {
- git_emake
-
- if use perl && use cgi ; then
- git_emake gitweb
- fi
-
- if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then
- git_emake -C contrib/credential/osxkeychain
- fi
-
- pushd Documentation &>/dev/null || die
- if [[ ${PV} == *9999 ]] ; then
- git_emake man
- if use doc ; then
- git_emake info html
- fi
- else
- if use doc ; then
- git_emake info
- fi
- fi
- popd &>/dev/null || die
-
- if use gnome-keyring ; then
- git_emake -C contrib/credential/libsecret
- fi
-
- pushd contrib/subtree &>/dev/null || die
- git_emake git-subtree
- # git-subtree.1 requires the full USE=doc dependency stack
- use doc && git_emake git-subtree.html git-subtree.1
- popd &>/dev/null || die
-
- git_emake -C contrib/diff-highlight
-
- if use mediawiki ; then
- git_emake -C contrib/mw-to-git
- fi
-}
-
-src_test() {
- local disabled=(
- # We make safe-directory optional
- t0033-safe-directory.sh
- )
-
- local tests_cvs=(
- t9200-git-cvsexportcommit.sh
- t9400-git-cvsserver-server.sh
- t9401-git-cvsserver-crlf.sh
- t9402-git-cvsserver-refs.sh
- t9600-cvsimport.sh
- t9601-cvsimport-vendor-branch.sh
- t9602-cvsimport-branches-tags.sh
- t9603-cvsimport-patchsets.sh
- t9604-cvsimport-timestamps.sh
- )
-
- local tests_perl=(
- t3701-add-interactive.sh
- t5502-quickfetch.sh
- t5512-ls-remote.sh
- t5520-pull.sh
- t7106-reset-unborn-branch.sh
- t7501-commit.sh
- )
- # Bug #225601 - t0004 is not suitable for root perm
- # Bug #219839 - t1004 is not suitable for root perm
- # t0001-init.sh - check for init notices EPERM* fails
- local tests_nonroot=(
- t0001-init.sh
- t0004-unwritable.sh
- t0070-fundamental.sh
- t1004-read-tree-m-u-wf.sh
- t3700-add.sh
- t7300-clean.sh
- )
- # t9100 still fails with symlinks in SVN 1.7
- local test_svn=( t9100-git-svn-basic.sh )
-
- # Unzip is used only for the testcase code, not by any normal parts of Git.
- if ! has_version app-arch/unzip ; then
- einfo "Disabling tar-tree tests"
- disabled+=( t5000-tar-tree.sh )
- fi
-
- local cvs=0
- use cvs && let cvs=${cvs}+1
- if [[ ${EUID} -eq 0 ]] ; then
- if [[ ${cvs} -eq 1 ]] ; then
- ewarn "Skipping CVS tests because CVS does not work as root!"
- ewarn "You should retest with FEATURES=userpriv!"
- disabled+=( ${tests_cvs[@]} )
- fi
- einfo "Skipping other tests that require being non-root"
- disabled+=( ${tests_nonroot[@]} )
- else
- if [[ ${cvs} -gt 0 ]] && has_version dev-vcs/cvs ; then
- let cvs=${cvs}+1
- fi
-
- if [[ ${cvs} -gt 1 ]] && has_version "dev-vcs/cvs[server]" ; then
- let cvs=${cvs}+1
- fi
-
- if [[ ${cvs} -lt 3 ]] ; then
- einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
- disabled+=( ${tests_cvs[@]} )
- fi
- fi
-
- if ! use perl ; then
- einfo "Disabling tests that need Perl"
- disabled+=( ${tests_perl[@]} )
- fi
-
- einfo "Disabling tests that fail with SVN 1.7"
- disabled+=( ${test_svn[@]} )
-
- # Reset all previously disabled tests
- pushd t &>/dev/null || die
- local i
- for i in *.sh.DISABLED ; do
- [[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
- done
- einfo "Disabled tests:"
- for i in ${disabled[@]} ; do
- if [[ -f "${i}" ]] ; then
- mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
- fi
- done
-
- # Avoid the test system removing the results because we want them ourselves
- sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' -i Makefile || die
-
- # Clean old results first, must always run
- nonfatal git_emake clean
- popd &>/dev/null || die
-
- # Now run the tests, keep going if we hit an error, and don't terminate on
- # failure
- local rc
- einfo "Start test run"
- #MAKEOPTS=-j1
- nonfatal git_emake --keep-going test
- rc=$?
-
- # Display nice results, now print the results
- pushd t &>/dev/null || die
- nonfatal git_emake aggregate-results
-
- # And bail if there was a problem
- [[ ${rc} -eq 0 ]] || die "Tests failed. Please file a bug!"
-}
-
-src_install() {
- git_emake DESTDIR="${D}" install
-
- if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then
- dobin contrib/credential/osxkeychain/git-credential-osxkeychain
- fi
-
- # Depending on the tarball and manual rebuild of the documentation, the
- # manpages may exist in either OR both of these directories.
- find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
- find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
- dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
- use doc && dodir /usr/share/doc/${PF}/html
- local d
- for d in / /howto/ /technical/ ; do
- docinto ${d}
- dodoc Documentation${d}*.txt
- if use doc ; then
- docinto ${d}/html
- dodoc Documentation${d}*.html
- fi
- done
- docinto /
- # Upstream does not ship this pre-built :-(
- use doc && doinfo Documentation/{git,gitman}.info
-
- newbashcomp contrib/completion/git-completion.bash ${PN}
- bashcomp_alias git gitk
- # Not really a bash-completion file (bug #477920)
- # but still needed uncompressed (bug #507480)
- insinto /usr/share/${PN}
- doins contrib/completion/git-prompt.sh
-
- #dobin contrib/fast-import/git-p4 # Moved upstream
- #dodoc contrib/fast-import/git-p4.txt # Moved upstream
- newbin contrib/fast-import/import-tars.perl import-tars
- exeinto /usr/libexec/git-core/
- newexe contrib/git-resurrect.sh git-resurrect
-
- # git-subtree
- pushd contrib/subtree &>/dev/null || die
- git_emake DESTDIR="${D}" install
- if use doc ; then
- # Do not move git subtree install-man outside USE=doc!
- git_emake DESTDIR="${D}" install-man install-html
- fi
- newdoc README README.git-subtree
- dodoc git-subtree.txt
- popd &>/dev/null || die
-
- if use mediawiki ; then
- git_emake -C contrib/mw-to-git DESTDIR="${D}" install
- fi
-
- # diff-highlight
- dobin contrib/diff-highlight/diff-highlight
- newdoc contrib/diff-highlight/README README.diff-highlight
-
- # git-jump
- exeinto /usr/libexec/git-core/
- doexe contrib/git-jump/git-jump
- newdoc contrib/git-jump/README git-jump.txt
-
- # git-contacts
- exeinto /usr/libexec/git-core/
- doexe contrib/contacts/git-contacts
- dodoc contrib/contacts/git-contacts.txt
-
- if use gnome-keyring ; then
- pushd contrib/credential/libsecret &>/dev/null || die
- dobin git-credential-libsecret
- popd &>/dev/null || die
- fi
-
- dodir /usr/share/${PN}/contrib
- # The following are excluded:
- # completion - installed above
- # diff-highlight - done above
- # emacs - removed upstream
- # examples - these are stuff that is not used in Git anymore actually
- # git-jump - done above
- # gitview - installed above
- # p4import - excluded because fast-import has a better one
- # patches - stuff the Git guys made to go upstream to other places
- # persistent-https - TODO
- # mw-to-git - TODO
- # subtree - build seperately
- # svnimport - use git-svn
- # thunderbird-patch-inline - fixes thunderbird
- local contrib_objects=(
- buildsystems
- fast-import
- hg-to-git
- hooks
- remotes2config.sh
- rerere-train.sh
- stats
- workdir
- )
- local i
- for i in "${contrib_objects[@]}" ; do
- cp -rf "${S}"/contrib/${i} "${ED}"/usr/share/${PN}/contrib || die "Failed contrib ${i}"
- done
-
- if use perl && use cgi ; then
- # We used to install in /usr/share/${PN}/gitweb
- # but upstream installs in /usr/share/gitweb
- # so we will install a symlink and use their location for compat with other
- # distros
- dosym ../gitweb /usr/share/${PN}/gitweb
-
- # INSTALL discusses configuration issues, not just installation
- docinto /
- newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb
- newdoc "${S}"/gitweb/README README.gitweb
-
- for d in "${ED}"/usr/lib{,64}/perl5/ ; do
- if [[ -d "${d}" ]] ; then
- find "${d}" -name .packlist -delete || die
- fi
- done
- else
- rm -rf "${ED}"/usr/share/gitweb
- fi
-
- if ! use subversion ; then
- rm -f "${ED}"/usr/libexec/git-core/git-svn \
- "${ED}"/usr/share/man/man1/git-svn.1*
- fi
-
- if use xinetd ; then
- insinto /etc/xinetd.d
- newins "${FILESDIR}"/git-daemon.xinetd git-daemon
- fi
-
- if ! use prefix ; then
- newinitd "${FILESDIR}"/git-daemon-r2.initd git-daemon
- newconfd "${FILESDIR}"/git-daemon.confd git-daemon
- systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service"
- systemd_dounit "${FILESDIR}/git-daemon.socket"
- fi
-
- perl_delete_localpod
-
- # Remove disabled linguas
- # we could remove sources in src_prepare, but install does not
- # handle missing locale dir well
- rm_loc() {
- if [[ -e "${ED}/usr/share/locale/${1}" ]] ; then
- rm -r "${ED}/usr/share/locale/${1}" || die
- fi
- }
- plocale_for_each_disabled_locale rm_loc
-}
-
-pkg_postinst() {
- if [[ -z ${REPLACING_VERSIONS} ]] ; then
- elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
- elog "completion."
- elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
- elog "Note that the prompt bash code is now in that separate script"
- fi
-
- optfeature_header "Some scripts require additional dependencies:"
- optfeature git-quiltimport dev-util/quilt
- optfeature git-instaweb www-servers/lighttpd www-servers/apache www-servers/nginx
-
- use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
-}
diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.39.0_rc0.ebuild b/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.39.0_rc1.ebuild
similarity index 100%
rename from sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.39.0_rc0.ebuild
rename to sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.39.0_rc1.ebuild
diff --git a/sdk_container/src/third_party/portage-stable/eclass/linux-info.eclass b/sdk_container/src/third_party/portage-stable/eclass/linux-info.eclass
index fc125b0d75..3e64cb9457 100644
--- a/sdk_container/src/third_party/portage-stable/eclass/linux-info.eclass
+++ b/sdk_container/src/third_party/portage-stable/eclass/linux-info.eclass
@@ -238,7 +238,9 @@ getfilevar() {
# Pass dot-config=0 to avoid the config check in kernels prior to 5.4.
[[ ${EAPI:-0} == [0123] ]] && nonfatal() { "$@"; }
echo -e "e:\\n\\t@echo \$(${1})\\ninclude ${basefname}" | \
- nonfatal emake -C "${basedname}" --no-print-directory M="${T}" dot-config=0 need-config= ${BUILD_FIXES} -s -f - 2>/dev/null
+ nonfatal emake -C "${basedname}" --no-print-directory M="${T}" \
+ dot-config=0 need-config= need-compiler= \
+ ${BUILD_FIXES} -s -f - 2>/dev/null
ARCH=${myARCH}
fi
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 2bed15110e..ea223984de 100644
--- a/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass
+++ b/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass
@@ -277,6 +277,9 @@ if [[ ${PN} != kgcc64 && ${PN} != gcc-* ]] ; then
tc_version_is_at_least 10 && IUSE+=" zstd" TC_FEATURES+=( zstd )
tc_version_is_at_least 11 && IUSE+=" valgrind" TC_FEATURES+=( valgrind )
tc_version_is_at_least 11 && IUSE+=" custom-cflags"
+ tc_version_is_at_least 12 && IUSE+=" ieee-long-double"
+ tc_version_is_at_least 12.2.1_p20221203 ${PV} && IUSE+=" default-znow"
+ tc_version_is_at_least 12.2.1_p20221203 ${PV} && IUSE+=" default-stack-clash-protection"
fi
if tc_version_is_at_least 10; then
@@ -289,7 +292,8 @@ fi
#---->> DEPEND <<----
-RDEPEND="sys-libs/zlib
+RDEPEND="
+ sys-libs/zlib
virtual/libiconv
nls? ( virtual/libintl )
"
@@ -320,7 +324,8 @@ BDEPEND="
test? (
>=dev-util/dejagnu-1.4.4
>=sys-devel/autogen-5.5.4
- )"
+ )
+"
DEPEND="${RDEPEND}"
if [[ ${PN} == gcc && ${PV} == *_p* ]] ; then
@@ -798,8 +803,18 @@ make_gcc_hard() {
if _tc_use_if_iuse ssp ; then
einfo "Updating gcc to use automatic SSP building ..."
fi
+ if _tc_use_if_iuse default-stack-clash-protection ; then
+ # The define DEF_GENTOO_SCP is checked in 24_all_DEF_GENTOO_SCP-fstack-clash-protection.patch
+ einfo "Updating gcc to use automatic stack clash protection ..."
+ gcc_hard_flags+=" -DDEF_GENTOO_SCP"
+ fi
+ if _tc_use_if_iuse default-znow ; then
+ # The define DEF_GENTOO_ZNOW is checked in 23_all_DEF_GENTOO_ZNOW-z-now.patch
+ einfo "Updating gcc to request symbol resolution at start (-z now) ..."
+ gcc_hard_flags+=" -DDEF_GENTOO_ZNOW"
+ fi
if _tc_use_if_iuse hardened ; then
- # Will add some hardened options as default, like:
+ # Will add some hardened options as default, e.g. for gcc-12
# * -fstack-clash-protection
# * -z now
# See gcc *_all_extra-options.patch patches.
@@ -1312,6 +1327,13 @@ toolchain_src_configure() {
# - bug #704784
# - https://gcc.gnu.org/PR93157
[[ ${CTARGET} == powerpc64-*-musl ]] && confgcc+=( --with-abi=elfv2 )
+
+ if in_iuse ieee-long-double; then
+ # musl requires 64-bit long double, not IBM double-double or IEEE quad.
+ if [[ ${CTARGET} == powerpc64le-*-gnu ]]; then
+ use ieee-long-double && confgcc+=( --with-long-double-format=ieee )
+ fi
+ fi
;;
riscv)
# Add --with-abi flags to set default ABI
diff --git a/sdk_container/src/third_party/portage-stable/net-libs/libpcap/files/libpcap-1.10.1-pcap-config-no-hardcoded-lib.patch b/sdk_container/src/third_party/portage-stable/net-libs/libpcap/files/libpcap-1.10.1-pcap-config-no-hardcoded-lib.patch
new file mode 100644
index 0000000000..2fc617dcda
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/net-libs/libpcap/files/libpcap-1.10.1-pcap-config-no-hardcoded-lib.patch
@@ -0,0 +1,100 @@
+https://github.com/the-tcpdump-group/libpcap/commit/84cb8cfdbf99a5fbc8127e3f092dc4d36ab513e9
+
+From 84cb8cfdbf99a5fbc8127e3f092dc4d36ab513e9 Mon Sep 17 00:00:00 2001
+From: Guy Harris
+Date: Mon, 2 Aug 2021 01:04:53 -0700
+Subject: [PATCH] pcap-config: don't provide -L/usr/lib for pkg-config --libs.
+
+It shouldn't be necessary, as C compilers generally look there by
+default and...
+
+...it can cause problems if the libpcap you want *isn't* in /usr/lib.
+For example, on some systems that support both 32-bit and 64-bit
+executables, this might cause the 32-bit library to be found, even on
+64-bit platforms, with hilarity ensuing afterwards.
+
+In particular, on Solaris 11, where /usr/lib has the 32-bit libraries
+and /usr/lib/{something} has the 64-bit libraries ({something} depends
+on whether it's SPARC or x86), that's what happens if you try to do a
+CMake build of tcpdump against the system libpcap:
+
+The CMake file for finding pcap converts the -lpcap provided by
+pcap-config into the absolute path of libpcap, and that's the path of
+the 32-bit library, as it looks in /usr/lib. (CMake really wants "find
+library" scripts to supply a list of libraries giving their absolute
+paths.)
+
+Thus, if you're using GCC, the tests done to find out what pcap APIs are
+available will fail, as the test programs get build 64-bit but are
+linked with the 32-bit libpcap; the link fails as you're mixing 32-bit
+and 64-bit code, and the CMake script treats that as meaning "the
+function isn't available".
+
+(Sun C apparently somehow manages either to build 32-bit code by
+default, so that linking with /usr/lib/libpcap.so succeeds, or realizes
+that linking 64-bit code with /usr/lib/{library}.so is bogus and links
+with /usr/lib/{something}/libpcap.so instead.)
+
+Debian removed the -L in pcap-config for similar reasons; to quote the
+comment at the beginning of the patch file:
+
+ Remove -L from default pcap-config --libs output, as
+ libdir is already in the default toolchain search path on
+ Debian, and we want the generated script to be arch-independent.
+
+(We don't remove it from the .pc file; we assume that 1) pkg-config and
+2) the packager of libpcap does what is necessary to make this work.)
+--- a/pcap-config.in
++++ b/pcap-config.in
+@@ -41,6 +41,13 @@ do
+ esac
+ shift
+ done
++#
++# If libdir isn't /usr/lib, add it to the link-time linker path.
++#
++if [ "$libdir" != "/usr/lib" ]
++then
++ LPATH=-L$libdir
++fi
+ if [ "$V_RPATH_OPT" != "" ]
+ then
+ #
+@@ -59,16 +66,16 @@ then
+ #
+ if [ "$show_cflags" = 1 -a "$show_libs" = 1 ]
+ then
+- echo "-I$includedir -L$libdir -lpcap $LIBS"
++ echo "-I$includedir $LPATH -lpcap $LIBS"
+ elif [ "$show_cflags" = 1 -a "$show_additional_libs" = 1 ]
+ then
+- echo "-I$includedir -L$libdir $LIBS"
++ echo "-I$includedir $LPATH $LIBS"
+ elif [ "$show_cflags" = 1 ]
+ then
+ echo "-I$includedir"
+ elif [ "$show_libs" = 1 ]
+ then
+- echo "-L$libdir -lpcap $LIBS"
++ echo "$LPATH -lpcap $LIBS"
+ elif [ "$show_additional_libs" = 1 ]
+ then
+ echo "$LIBS"
+@@ -80,7 +87,7 @@ else
+ #
+ if [ "$show_cflags" = 1 -a "$show_libs" = 1 ]
+ then
+- echo "-I$includedir -L$libdir $RPATH -l$PACKAGE_NAME"
++ echo "-I$includedir $LPATH $RPATH -l$PACKAGE_NAME"
+ elif [ "$show_cflags" = 1 -a "$show_additional_libs" = 1 ]
+ then
+ echo "-I$includedir"
+@@ -89,6 +96,6 @@ else
+ echo "-I$includedir"
+ elif [ "$show_libs" = 1 ]
+ then
+- echo "-L$libdir $RPATH -l$PACKAGE_NAME"
++ echo "$LPATH $RPATH -l$PACKAGE_NAME"
+ fi
+ fi
+
diff --git a/sdk_container/src/third_party/portage-stable/net-libs/libpcap/files/libpcap-1.9.1-pcap-config.patch b/sdk_container/src/third_party/portage-stable/net-libs/libpcap/files/libpcap-1.10.1-pcap-config.patch
similarity index 74%
rename from sdk_container/src/third_party/portage-stable/net-libs/libpcap/files/libpcap-1.9.1-pcap-config.patch
rename to sdk_container/src/third_party/portage-stable/net-libs/libpcap/files/libpcap-1.10.1-pcap-config.patch
index 937273c43f..1fa8d411ea 100644
--- a/sdk_container/src/third_party/portage-stable/net-libs/libpcap/files/libpcap-1.9.1-pcap-config.patch
+++ b/sdk_container/src/third_party/portage-stable/net-libs/libpcap/files/libpcap-1.10.1-pcap-config.patch
@@ -1,14 +1,14 @@
--- a/pcap-config.in
+++ b/pcap-config.in
-@@ -59,16 +59,16 @@
+@@ -66,16 +66,16 @@ then
#
if [ "$show_cflags" = 1 -a "$show_libs" = 1 ]
then
-- echo "-I$includedir -L$libdir -lpcap $LIBS"
+- echo "-I$includedir $LPATH -lpcap $LIBS"
+ echo "-lpcap $LIBS"
elif [ "$show_cflags" = 1 -a "$show_additional_libs" = 1 ]
then
-- echo "-I$includedir -L$libdir $LIBS"
+- echo "-I$includedir $LPATH $LIBS"
+ echo "$LIBS"
elif [ "$show_cflags" = 1 ]
then
@@ -16,16 +16,16 @@
+ echo ""
elif [ "$show_libs" = 1 ]
then
-- echo "-L$libdir -lpcap $LIBS"
+- echo "$LPATH -lpcap $LIBS"
+ echo "-lpcap $LIBS"
elif [ "$show_additional_libs" = 1 ]
then
echo "$LIBS"
-@@ -80,15 +80,15 @@
+@@ -87,15 +87,15 @@ else
#
if [ "$show_cflags" = 1 -a "$show_libs" = 1 ]
then
-- echo "-I$includedir -L$libdir $RPATH -l$PACKAGE_NAME"
+- echo "-I$includedir $LPATH $RPATH -l$PACKAGE_NAME"
+ echo " $RPATH -l$PACKAGE_NAME"
elif [ "$show_cflags" = 1 -a "$show_additional_libs" = 1 ]
then
@@ -37,7 +37,7 @@
+ echo ""
elif [ "$show_libs" = 1 ]
then
-- echo "-L$libdir $RPATH -l$PACKAGE_NAME"
+- echo "$LPATH $RPATH -l$PACKAGE_NAME"
+ echo "$RPATH -l$PACKAGE_NAME"
fi
fi
diff --git a/sdk_container/src/third_party/portage-stable/net-libs/libpcap/files/libpcap-9999-prefix-darwin.patch b/sdk_container/src/third_party/portage-stable/net-libs/libpcap/files/libpcap-9999-prefix-darwin.patch
deleted file mode 100644
index 5ac34fd464..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-libs/libpcap/files/libpcap-9999-prefix-darwin.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Prefix' Darwin systems are single arch, hijack Darwin7 case which assumes this setup
-
---- a/configure.ac
-+++ b/configure.ac
-@@ -1860,7 +1860,7 @@
- if test "$enable_universal" != "no"; then
- case "$host_os" in
-
-- darwin[[0-7]].*)
-+ darwin**)
- #
- # Pre-Tiger. Build only for 32-bit PowerPC; no
- # need for any special compiler or linker flags.
diff --git a/sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-1.10.1-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-1.10.1-r2.ebuild
similarity index 74%
rename from sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-1.10.1-r1.ebuild
rename to sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-1.10.1-r2.ebuild
index a810d8d5d9..6edb007ae1 100644
--- a/sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-1.10.1-r1.ebuild
+++ b/sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-1.10.1-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -20,12 +20,13 @@ else
SRC_URI="https://www.tcpdump.org/release/${P}.tar.gz -> ${P}-upstream.tar.gz"
SRC_URI+=" verify-sig? ( https://www.tcpdump.org/release/${P}.tar.gz.sig -> ${P}-upstream.tar.gz.sig )"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris"
fi
LICENSE="BSD"
SLOT="0"
-IUSE="bluetooth dbus netlink rdma remote static-libs usb yydebug"
+IUSE="bluetooth dbus netlink rdma remote static-libs test usb yydebug"
+RESTRICT="!test? ( test )"
RDEPEND="
bluetooth? ( net-wireless/bluez:=[${MULTILIB_USEDEP}] )
@@ -38,7 +39,7 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
dbus? ( virtual/pkgconfig )
"
@@ -47,8 +48,15 @@ if [[ ${PV} != *9999* ]] ; then
fi
PATCHES=(
- "${FILESDIR}"/${PN}-1.9.1-pcap-config.patch
"${FILESDIR}"/${PN}-1.10.0-usbmon.patch
+
+ # Drop ${P}-pcap-config-no-hardcoded-lib.patch on next release
+ "${FILESDIR}"/${P}-pcap-config-no-hardcoded-lib.patch
+
+ # We need to keep this, it's just rebased on top of the above
+ # ${P}-pcap-config-no-hardcoded-lib.patch. Drop this comment then too,
+ # but keep this patch.
+ "${FILESDIR}"/${PN}-1.10.1-pcap-config.patch
)
src_prepare() {
@@ -76,6 +84,11 @@ multilib_src_configure() {
multilib_src_compile() {
emake all shared
+ use test && emake testprogs
+}
+
+multilib_src_test() {
+ testprogs/findalldevstest || die
}
multilib_src_install_all() {
diff --git a/sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-9999.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-9999.ebuild
index 531bf51fe6..ddd15be165 100644
--- a/sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-9999.ebuild
+++ b/sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -15,10 +15,12 @@ else
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/tcpdump.asc
inherit verify-sig
- SRC_URI="https://www.tcpdump.org/release/${P}.tar.gz"
- SRC_URI+=" verify-sig? ( https://www.tcpdump.org/release/${P}.tar.gz.sig )"
+ # Note: drop -upstream on bump, this is just because we switched to the official
+ # distfiles for verify-sig
+ SRC_URI="https://www.tcpdump.org/release/${P}.tar.gz -> ${P}-upstream.tar.gz"
+ SRC_URI+=" verify-sig? ( https://www.tcpdump.org/release/${P}.tar.gz.sig -> ${P}-upstream.tar.gz.sig )"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris"
fi
LICENSE="BSD"
@@ -36,7 +38,7 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
dbus? ( virtual/pkgconfig )
"
@@ -45,9 +47,8 @@ if [[ ${PV} != *9999* ]] ; then
fi
PATCHES=(
- "${FILESDIR}"/${PN}-1.9.1-pcap-config.patch
"${FILESDIR}"/${PN}-1.10.0-usbmon.patch
- "${FILESDIR}"/${PN}-9999-prefix-darwin.patch
+ "${FILESDIR}"/${PN}-1.10.1-pcap-config.patch
)
src_prepare() {
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/ethertypes/ethertypes-0.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/ethertypes/ethertypes-0.ebuild
index 02432aa241..239376930d 100644
--- a/sdk_container/src/third_party/portage-stable/net-misc/ethertypes/ethertypes-0.ebuild
+++ b/sdk_container/src/third_party/portage-stable/net-misc/ethertypes/ethertypes-0.ebuild
@@ -10,7 +10,7 @@ SRC_URI="https://dev.gentoo.org/~floppym/dist/${P}.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
! po/LINGUAS || die
+}
+
+src_configure() {
+ local emesonargs=(
+ -DUSE_CAP=$(usex caps true false)
+ -DUSE_IDN=$(usex idn true false)
+ -DBUILD_ARPING=$(usex arping true false)
+ -DBUILD_CLOCKDIFF=$(usex clockdiff true false)
+ -DBUILD_PING=true
+ -DBUILD_TRACEPATH=$(usex tracepath true false)
+ -DNO_SETCAP_OR_SUID=true
+ -Dsystemdunitdir=$(systemd_get_systemunitdir)
+ -DUSE_GETTEXT=$(usex nls true false)
+ $(meson_use !test SKIP_TESTS)
+ )
+
+ if [[ ${PV} == *9999 ]] ; then
+ emesonargs+=(
+ -DBUILD_HTML_MANS=$(usex doc true false)
+ -DBUILD_MANS=true
+ )
+ else
+ emesonargs+=(
+ -DBUILD_HTML_MANS=false
+ -DBUILD_MANS=false
+ )
+ fi
+
+ meson_src_configure
+}
+
+src_compile() {
+ tc-export CC
+
+ meson_src_compile
+}
+
+src_test() {
+ if [[ ${EUID} != 0 ]] ; then
+ einfo "Tests require root privileges. Skipping ..."
+ return
+ fi
+
+ meson_src_test
+}
+
+src_install() {
+ meson_src_install
+
+ FILECAPS=( cap_net_raw usr/bin/ping )
+ use arping && FILECAPS+=( usr/bin/arping )
+ use clockdiff && FILECAPS+=( usr/bin/clockdiff )
+
+ dosym ping /usr/bin/ping4
+ dosym ping /usr/bin/ping6
+
+ if use tracepath ; then
+ dosym tracepath /usr/bin/tracepath4
+ dosym tracepath /usr/bin/tracepath6
+ dosym tracepath.8 /usr/share/man/man8/tracepath6.8
+ fi
+
+ if [[ ${PV} != *9999 ]] ; then
+ local -a man_pages
+ local -a html_man_pages
+
+ while IFS= read -r -u 3 -d $'\0' my_bin; do
+ my_bin=$(basename "${my_bin}")
+ [[ -z "${my_bin}" ]] && continue
+
+ if [[ -f "${WORKDIR}/${PN}-99999999-docs/doc/${my_bin}.8" ]] ; then
+ man_pages+=( ${my_bin}.8 )
+ fi
+
+ if [[ -f "${WORKDIR}/${PN}-99999999-docs/doc/${my_bin}.html" ]] ; then
+ html_man_pages+=( ${my_bin}.html )
+ fi
+ done 3< <(find "${ED}"/{bin,usr/bin,usr/sbin} -type f -perm -a+x -print0 2>/dev/null)
+
+ pushd "${WORKDIR}"/${PN}-99999999-docs/doc &>/dev/null || die
+ doman "${man_pages[@]}"
+ if use doc ; then
+ dodoc "${html_man_pages[@]}"
+ fi
+ popd &>/dev/null || die
+ else
+ if use doc ; then
+ mv "${ED}"/usr/share/${PN} "${ED}"/usr/share/doc/${PF}/html || die
+ fi
+ fi
+}
+
+pkg_preinst() {
+ local version_with_tftpd="<${CATEGORY}/${PN}-20211215"
+ if has_version "${version_with_tftpd}[traceroute6]" || has_version "${version_with_tftpd}[tftpd]" ; then
+ HAD_TFTPD_VERSION=1
+ fi
+}
+
+pkg_postinst() {
+ fcaps_pkg_postinst
+
+ if [[ ${HAD_TFTPD_VERSION} -eq 1 ]] ; then
+ ewarn "This upstream version (>= 20211215) drops two tools:"
+ ewarn "1. tftpd (alternatives: net-ftp/tftp-hpa, net-dns/dnsmasq)"
+ ewarn "2. traceroute6 (alternatives: net-analyzer/mtr, net-analyzer/traceroute)"
+ ewarn "Please install one of the listed alternatives if needed!"
+ fi
+}
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-99999999.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-99999999.ebuild
index 7f3760b7d4..a23c56b417 100644
--- a/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-99999999.ebuild
+++ b/sdk_container/src/third_party/portage-stable/net-misc/iputils/iputils-99999999.ebuild
@@ -8,26 +8,34 @@
# EGIT_COMMIT set to release tag, all USE flags enabled and
# tar ${S}/doc folder.
-EAPI="7"
+EAPI=8
PLOCALES="de fr ja pt_BR tr uk zh_CN"
inherit fcaps meson plocale systemd toolchain-funcs
-if [[ ${PV} == 99999999 ]] ; then
+if [[ ${PV} == *9999 ]] ; then
EGIT_REPO_URI="https://github.com/iputils/iputils.git"
inherit git-r3
else
- SRC_URI="https://github.com/iputils/iputils/archive/${PV}.tar.gz -> ${P}.tar.gz
- https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-manpages-${PV}.tar.xz
- https://dev.gentoo.org/~whissi/dist/iputils/${PN}-manpages-${PV}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+ SRC_URI="
+ https://github.com/iputils/iputils/archive/${PV}.tar.gz -> ${P}.tar.gz
+ https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-docs.tar.xz
+ "
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
fi
DESCRIPTION="Network monitoring tools including ping and ping6"
HOMEPAGE="https://wiki.linuxfoundation.org/networking/iputils"
-LICENSE="BSD GPL-2+ rdisc"
+# We install ping unconditionally so BSD is listed by itself
+# See LICENSE on each release, it summaries per-component
+LICENSE="
+ BSD
+ arping? ( GPL-2+ )
+ clockdiff? ( BSD )
+ tracepath? ( GPL-2+ )
+"
SLOT="0"
IUSE="+arping caps clockdiff doc idn nls test tracepath"
RESTRICT="!test? ( test )"
@@ -47,7 +55,7 @@ BDEPEND="
nls? ( sys-devel/gettext )
"
-if [[ ${PV} == 99999999 ]] ; then
+if [[ ${PV} == *9999 ]] ; then
BDEPEND+="
app-text/docbook-xml-dtd:4.2
app-text/docbook-xml-dtd:4.5
@@ -77,7 +85,7 @@ src_configure() {
$(meson_use !test SKIP_TESTS)
)
- if [[ ${PV} == 99999999 ]] ; then
+ if [[ ${PV} == *9999 ]] ; then
emesonargs+=(
-DBUILD_HTML_MANS=$(usex doc true false)
-DBUILD_MANS=true
@@ -123,28 +131,26 @@ src_install() {
dosym tracepath.8 /usr/share/man/man8/tracepath6.8
fi
- if [[ ${PV} != 99999999 ]] ; then
+ if [[ ${PV} != *9999 ]] ; then
local -a man_pages
local -a html_man_pages
- while IFS= read -r -u 3 -d $'\0' my_bin
- do
+ while IFS= read -r -u 3 -d $'\0' my_bin; do
my_bin=$(basename "${my_bin}")
[[ -z "${my_bin}" ]] && continue
- if [[ -f "${S}/doc/${my_bin}.8" ]] ; then
+ if [[ -f "${WORKDIR}/${PN}-99999999-docs/doc/${my_bin}.8" ]] ; then
man_pages+=( ${my_bin}.8 )
fi
- if [[ -f "${S}/doc/${my_bin}.html" ]] ; then
+ if [[ -f "${WORKDIR}/${PN}-99999999-docs/doc/${my_bin}.html" ]] ; then
html_man_pages+=( ${my_bin}.html )
fi
done 3< <(find "${ED}"/{bin,usr/bin,usr/sbin} -type f -perm -a+x -print0 2>/dev/null)
- pushd doc &>/dev/null || die
+ pushd "${WORKDIR}"/${PN}-99999999-docs/doc &>/dev/null || die
doman "${man_pages[@]}"
if use doc ; then
- docinto html
dodoc "${html_man_pages[@]}"
fi
popd &>/dev/null || die
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/rsync/files/rsync-3.2.4-notpedantic.patch b/sdk_container/src/third_party/portage-stable/net-misc/rsync/files/rsync-3.2.4-notpedantic.patch
new file mode 100644
index 0000000000..9d081ab52c
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/net-misc/rsync/files/rsync-3.2.4-notpedantic.patch
@@ -0,0 +1,25 @@
+diff -ruN rsync-3.2.4.orig/configure.ac rsync-3.2.4/configure.ac
+--- rsync-3.2.4.orig/configure.ac 2022-12-01 22:26:34.856659562 +0100
++++ rsync-3.2.4/configure.ac 2022-12-01 22:31:43.849290989 +0100
+@@ -1067,21 +1067,6 @@
+ with_included_popt=yes
+ fi
+
+-if test x"$GCC" = x"yes"; then
+- if test x"$with_included_popt" != x"yes"; then
+- # Turn pedantic warnings into errors to ensure an array-init overflow is an error.
+- CFLAGS="$CFLAGS -pedantic-errors"
+- else
+- # Our internal popt code cannot be compiled with pedantic warnings as errors, so try to
+- # turn off pedantic warnings (which will not lose the error for array-init overflow).
+- # Older gcc versions don't understand -Wno-pedantic, so check if --help=warnings lists
+- # -Wpedantic and use that as a flag.
+- case `$CC --help=warnings 2>/dev/null | grep Wpedantic` in
+- *-Wpedantic*) CFLAGS="$CFLAGS -pedantic-errors -Wno-pedantic" ;;
+- esac
+- fi
+-fi
+-
+ AC_MSG_CHECKING([whether to use included libpopt])
+ if test x"$with_included_popt" = x"yes"; then
+ AC_MSG_RESULT($srcdir/popt)
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/rsync/rsync-3.2.4-r3.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/rsync/rsync-3.2.4-r3.ebuild
index 41447f110e..05ce39b226 100644
--- a/sdk_container/src/third_party/portage-stable/net-misc/rsync/rsync-3.2.4-r3.ebuild
+++ b/sdk_container/src/third_party/portage-stable/net-misc/rsync/rsync-3.2.4-r3.ebuild
@@ -70,6 +70,7 @@ PATCHES=(
"${FILESDIR}"/${P}-unsigned-char-checksum.patch
# https://github.com/WayneD/rsync/issues/324
"${FILESDIR}"/${P}-strlcpy.patch
+ "${FILESDIR}"/${P}-notpedantic.patch
)
pkg_setup() {
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/make.defaults
index 2430e454f1..3cfe6ae896 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/make.defaults
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/make.defaults
@@ -21,7 +21,7 @@ LIBDIR_alpha="lib"
# Donnie Berkholz (2006-08-18)
# Defaults for video drivers
-VIDEO_CARDS="fbdev mga nv r128 radeon"
+VIDEO_CARDS="fbdev mga r128 radeon"
# Tobias Klausmann (2018-06-25)
# Enable USE=libtirpc by default, to ease dependency resolution during
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 4d6987cbac..56226c90bb 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
@@ -42,11 +42,6 @@ media-gfx/graphicsmagick jpegxl
# Untested useflag on other arches, needs keywording
media-video/ffmpeg vmaf
-# Adel Kara Slimane (2022-02-17)
-# Mask AMF keyword on non-amd64 arches
-# It is unusable, for now, in other arches
-media-video/ffmpeg amf
-
# Sam James (2022-01-29)
# app-text/ronn-ng not keyworded here, bug #801103
app-accessibility/espeak-ng man
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.force b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.force
index 6e5b80dfe5..9c619d92ff 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.force
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.force
@@ -23,6 +23,7 @@ dev-lang/rust llvm_targets_X86
app-emulation/wine-vanilla -abi_x86_64
app-emulation/wine-staging -abi_x86_64
app-emulation/wine-proton -abi_x86_64
+app-emulation/wine-gecko -abi_x86_64
virtual/wine -abi_x86_64
# Michał Górny (2017-04-08)
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 27207c6da3..20f9e7c5b6 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,10 @@
#--- END OF EXAMPLES ---
+# Michał Górny (2022-12-01)
+# Keyworded here.
+app-alternatives/awk -nawk
+
# Guillermo Joandet (2022-11-22)
# app-text/pandoc is keyworded on this architecture
net-libs/gssdp -man
@@ -46,6 +50,10 @@ media-sound/qmmp -xmp
# Need intel-hybrid-codec-driver, which only works on amd64
media-libs/libva-intel-driver -hybrid
+# Adel Kara Slimane (2022-02-17)
+# Unmask AMF keyword on amd64 only
+media-video/ffmpeg -amf
+
# James Le Cuirot (2021-10-22)
# The JIT feature only works on amd64 and x86.
app-emulation/fs-uae -jit
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 bb1c0370eb..7411beaa84 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
@@ -85,7 +85,7 @@ net-misc/chrony html
# Adam Feldman (2017-09-27)
# patchset variants are not stable
-virtual/wine proton staging
+virtual/wine staging
# Tim Harder (2017-09-11)
# Pulls in dev-ruby/asciidoctor which has too large of a ruby testing
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 59eeb185bf..fba3315db9 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.mask
@@ -1,6 +1,14 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Sam James (2022-12-02)
+# Unkeyworded dependencies
+app-alternatives/bc gh
+
+# Sam James (2022-12-02)
+# Not keyworded here
+app-alternatives/lex reflex
+
# Florian Schmaus (2022-11-23)
# avoid larger deptree, bug #882593
dev-python/bracex doc
@@ -39,11 +47,6 @@ kde-frameworks/kfilemetadata mobi
# https://www.boost.org/doc/libs/1_78_0/libs/context/doc/html/context/architectures.html
dev-libs/boost -context
-# Adel Kara Slimane (2022-01-17)
-# Mask AMF keyword on non-amd64 arches
-# It is unusable, for now, in other arches
-media-video/ffmpeg amf
-
# Sam James (2022-01-15)
# Deps not yet stable:
# app-emulation/spice
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/big-endian/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/big-endian/package.use.mask
new file mode 100644
index 0000000000..ad76e1cd1a
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/big-endian/package.use.mask
@@ -0,0 +1,7 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License, v2
+
+# Sam James (2022-12-04)
+# libpcre[jit] is broken on arm64 BE and libpcre1 is EOL now
+# bug #884285
+dev-libs/libpcre jit
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 552f82af8e..e91a2e91bf 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.mask
@@ -1,6 +1,10 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Sam James (2022-12-02)
+# Not keyworded here
+app-alternatives/lex reflex
+
# Florian Schmaus (2022-11-23)
# avoid larger deptree, bug #882593
dev-python/bracex doc
@@ -42,11 +46,6 @@ media-video/ffmpeg vmaf
# Supports 64-bit NEON
>=media-libs/libjpeg-turbo-2.1.3 -cpu_flags_arm_neon
-# Adel Kara Slimane (2022-01-11)
-# Mask AMF keyword on non-amd64 arches
-# It is unusable, for now, in other arches
-media-video/ffmpeg amf
-
# Sam James (2022-02-02)
# sys-cluster/knem is not keyworded on arm64
sys-cluster/openmpi openmpi_fabrics_knem
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 5a1455d90b..cfb2085789 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-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Georgy Yakovlev (2022-12-01)
+# Only supported on ppc64le.
+sys-devel/gcc ieee-long-double
+
+# Michał Górny (2022-12-01)
+# Not widely keyworded.
+app-alternatives/awk nawk
+
# Mike Gilbert (2022-10-16)
# Only supported on MIPS.
dev-lang/gnat-gpl fixed-point
@@ -39,6 +47,11 @@ sys-libs/libseccomp experimental-loong
# These GRUB platforms are only for MIPS.
sys-boot/grub grub_platforms_loongson grub_platforms_qemu-mips
+# Adel Kara Slimane (2022-02-17)
+# Mask AMF keyword on non-amd64 arches
+# It is unusable, for now, in other arches
+media-video/ffmpeg amf
+
# Sam James (2021-11-15)
# Only available on PPC*.
sys-apps/util-linux rtas
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/package.use.mask
index b950d68839..a7391b3a01 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/package.use.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/package.use.mask
@@ -4,6 +4,14 @@
# NOTE: When masking a USE flag due to missing keywords, please file a keyword
# request bug for the hppa arch.
+# Sam James (2022-12-02)
+# Unkeyworded dependencies
+app-alternatives/bc gh
+
+# Sam James (2022-12-02)
+# Not keyworded here
+app-alternatives/lex reflex
+
# Florian Schmaus (2022-11-23)
# avoid larger deptree, bug #882593
dev-python/bracex doc
@@ -65,11 +73,6 @@ media-video/ffmpeg vmaf
# Unkeyworded dependencies
net-mail/cyrus-imapd http
-# Adel Kara Slimane (2022-02-17)
-# Mask AMF keyword on non-amd64 arches
-# It is unusable, for now, in other arches
-media-video/ffmpeg amf
-
# Arthur Zamarin (2022-02-08)
# bash becomes corrupted and system breaks, bug #832946
app-shells/bash mem-scramble
@@ -302,10 +305,6 @@ kde-frameworks/extra-cmake-modules doc
# pulls in many dev-ruby/asciidoctor dependencies (bug #583390)
net-misc/chrony html
-# Jeroen Roovers (2015-07-03)
-# net-libs/nghttp2 fails to compile (bug #552898)
-net-libs/nghttp2 cxx
-
# Jeroen Roovers (2015-05-17)
# Mask USE=rados for net-analyzer/rrdtool since sys-cluster/ceph is not
# keyworded (bug #549516)
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/ia64/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/arch/ia64/make.defaults
index bf4569fc00..0e0ebaa641 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/ia64/make.defaults
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/ia64/make.defaults
@@ -26,6 +26,6 @@ CHOST_ia64="${CHOST}"
# Donnie Berkholz (2006-08-18)
# Defaults for video drivers
-#VIDEO_CARDS="fbdev mga nv r128 radeon"
+#VIDEO_CARDS="fbdev mga r128 radeon"
INPUT_DEVICES="void"
VIDEO_CARDS="dummy"
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/ia64/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/ia64/package.use.mask
index 8ed2298b91..b7d40c41c5 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/ia64/package.use.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/ia64/package.use.mask
@@ -1,6 +1,14 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Sam James (2022-12-02)
+# Unkeyworded dependencies
+app-alternatives/bc gh
+
+# Sam James (2022-12-02)
+# Not keyworded here
+app-alternatives/lex reflex
+
# Florian Schmaus (2022-11-23)
# avoid larger deptree, bug #882593
dev-python/bracex doc
@@ -47,11 +55,6 @@ media-video/ffmpeg vmaf
# Unkeyworded dependencies
net-mail/cyrus-imapd http
-# Adel Kara Slimane (2022-01-11)
-# Mask AMF keyword on non-amd64 arches
-# It is unusable, for now, in other arches
-media-video/ffmpeg amf
-
# Sam James (2022-01-29)
# app-text/ronn-ng not keyworded here, bug #801103
app-accessibility/espeak-ng man
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 cf1df784e7..d57436f307 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,11 +1,92 @@
# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# WANG Xuerui (2022-12-05)
+# The loong port of sys-boot/grub:2 isn't upstreamed yet.
+dev-util/ostree grub
+sys-libs/efivar test
+
+# WANG Xuerui (2022-12-05)
+# sci-libs/adolc fails to build on loong for now.
+dev-cpp/eigen test
+
+# WANG Xuerui (2022-12-05)
+# app-misc/tracker fails tests on loong.
+app-cdr/brasero tracker
+
+# WANG Xuerui (2022-12-05)
+# dev-libs/libcdio fails to build on loong for now.
+gnome-base/gvfs cdda
+media-video/ffmpeg cdio
+media-video/mpv cdda
+
+# WANG Xuerui (2022-12-05)
+# Respective dependency fails to build, pending investigation, mask for the
+# time being
+app-text/enchant voikko
+dev-cpp/libcmis man
+media-libs/opencv tesseract
+media-video/ffmpeg libilbc libtesseract
+
+# WANG Xuerui (2022-12-05)
+# sys-auth/sssd isn't keyworded here yet
+app-admin/sudo sssd
+
+# WANG Xuerui (2022-12-04)
+# neither app-text/ronn or app-text/ronn-ng can be built with
+# RUBY_TARGETS=ruby30
+app-accessibility/espeakup man
+app-accessibility/espeak-ng man
+
+# WANG Xuerui (2022-12-04)
+# dev-libs/boxfort is only supported on amd64, arm64, arm and x86 due to
+# inline asm, so we have no dev-libs/criterion
+app-admin/syslog-ng test
+
+# WANG Xuerui (2022-12-03)
+# Things requiring net-libs/gnome-online-accounts, which depends on
+# net-libs/webkit-gtk.
+gnome-base/gvfs google
+
+# WANG Xuerui (2022-12-02)
+# sys-cluster/ceph is not keyworded yet.
+net-analyzer/rrdtool rados
+
+# WANG Xuerui (2022-12-02)
+# Boost.Context has had support for loong since 1.79.0.
+dev-libs/boost -context
+
+# WANG Xuerui (2022-12-02)
+# dev-qt/qtlocation:5 fails to compile with gcc-13 for now.
+dev-python/PyQt5 location
+
+# WANG Xuerui (2022-12-01)
+# sys-libs/libhugetlbfs isn't buildable here yet due to arch-specific code.
+sys-apps/nvme-cli hugepages
+
+# WANG Xuerui (2022-12-01)
+# Mask GRUB2 platforms not applicable to loong.
+sys-boot/grub:2 grub_platforms_efi-32 grub_platforms_ieee1275 grub_platforms_pc grub_platforms_uboot grub_platforms_xen grub_platforms_xen-pvh
+
+# WANG Xuerui (2022-11-30)
+# No Haskell on loong yet (port under review), hence no virtual/pandoc and
+# friends.
+www-apps/hugo test
+
+# WANG Xuerui (2022-11-30)
+# Test phase apparently requires an ocamlopt port.
+dev-lang/ocaml test
+
+# WANG Xuerui (2022-11-29)
+# Dep media-plugins/libvisual-plugins fails to build, seems too hairy to fix.
+media-plugins/gst-plugins-meta libvisual
+
# WANG Xuerui (2022-11-27)
# Mask configurations not accepting llvm:16 and/or clang:16, either due to
# lack of testing or simply being unsupported upstream (the opaque pointers
# in particular need downstream changes).
app-office/libreoffice clang
+ (2022-11-27)
@@ -23,6 +104,7 @@ sys-devel/clang-runtime libcxx openmp
# WANG Xuerui (2022-11-18)
# net-libs/webkit-gtk is not available on loong yet.
app-text/atril epub
+gnome-extra/evolution-data-server oauth
mate-base/mate help
# WANG Xuerui (2022-10-04)
@@ -32,7 +114,9 @@ mate-base/mate help
>=sys-libs/compiler-rt-sanitizers-15 -asan
# WANG Xuerui (2022-07-08)
-# virtual/jre is not available on loong yet.
+# virtual/{jdk,jre} is not available on loong yet.
+app-office/libreoffice libreoffice_extensions_scripting-beanshell libreoffice_extensions_scripting-javascript
+media-libs/rubberband jni
www-client/chromium js-type-check
# WANG Xuerui (2022-05-13)
@@ -40,12 +124,6 @@ www-client/chromium js-type-check
# investigation.
net-libs/libssh mbedtls
-# WANG Xuerui (2022-05-13)
-# dev-lang/go is not available on loong yet.
-media-libs/libheif go test
-sys-apps/earlyoom test
-sys-libs/libcap tools
-
# WANG Xuerui (2022-04-24)
# Unmask experimental-loong on packages; we're loong.
dev-libs/libffi -experimental-loong
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/loong/use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/loong/use.mask
index e9dc3b0f16..af5ca8e979 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/loong/use.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/loong/use.mask
@@ -1,8 +1,33 @@
# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# WANG Xuerui (2022-12-05)
+# Respective dependency fails to build, pending investigation, mask for the
+# time being
+chromaprint
+mongodb
+
+# WANG Xuerui (2022-12-05)
+# Lack of testing
+vtk
+
+# WANG Xuerui (2022-12-03)
+# sys-cluster/ceph is not keyworded yet.
+ceph
+rbd
+
+# WANG Xuerui (2022-12-01)
+# app-emulation/xen has arch-specific code, hence not available for loong yet.
+xen
+
+# WANG Xuerui (2022-11-28)
+# media-sound/nas currently not buildable due to x11-misc/xorg-cf-files
+# lacking arch-specific adaptation
+nas
+
# WANG Xuerui (2022-11-18)
# net-libs/webkit-gtk is not available on loong yet.
+gnome-online-accounts
webkit
# WANG Xuerui (2022-11-01)
@@ -24,6 +49,7 @@ luajittex
lua_single_target_luajit
lua_targets_luajit
mono
+ocamlopt
opencl
valgrind
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/package.use.mask
index c9cf860069..49f32e2950 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/package.use.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/m68k/package.use.mask
@@ -9,11 +9,6 @@ sys-apps/systemd tpm xkb
# Untested useflag on other arches, needs keywording
media-video/ffmpeg vmaf
-# Adel Kara Slimane (2022-01-11)
-# Mask AMF keyword on non-amd64 arches
-# It is unusable, for now, in other arches
-media-video/ffmpeg amf
-
# James Le Cuirot (2022-01-09)
# Most usage of KMS requires GBM, which is provided by Mesa, which currently
# doesn't work on m68k.
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 b170dc1e0b..0c30ba5895 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
@@ -27,11 +27,6 @@ media-video/ffmpeg vmaf
# These GRUB platforms are only for MIPS.
sys-boot/grub -grub_platforms_loongson -grub_platforms_qemu-mips
-# Adel Kara Slimane (2022-01-17)
-# Mask AMF keyword on non-amd64 arches
-# It is unusable, for now, in other arches
-media-video/ffmpeg amf
-
# Fabian Groffen (2022-02-13)
# needs unkeyworded virtual/gsasl
mail-client/mutt gsasl
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 d79b13f82e..bbc877e0dd 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
@@ -30,11 +30,6 @@ app-text/enchant nuspell
# Untested useflag on other arches, needs keywording
media-video/ffmpeg vmaf
-# Adel Kara Slimane (2021-12-11)
-# Mask AMF keyword on non-amd64 arches
-# It is unusable, for now, in other arches
-media-video/ffmpeg amf
-
# Sam James (2021-11-15)
# librtas is available on (only) ppc*
sys-apps/util-linux -rtas
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc32/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc32/make.defaults
index 19350be099..0092e22c5c 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc32/make.defaults
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc32/make.defaults
@@ -15,7 +15,7 @@ FCFLAGS="${CFLAGS}"
# Donnie Berkholz (2006-08-18)
# Defaults for video drivers
-VIDEO_CARDS="fbdev mga nv r128 radeon"
+VIDEO_CARDS="fbdev mga r128 radeon"
# Michał Górny (2014-06-27)
# Multilib-related setup for compatibility with future multilib.
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc32/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc32/package.use.mask
index 4a5fa9330d..c554888117 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc32/package.use.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc32/package.use.mask
@@ -1,6 +1,14 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Sam James (2022-12-02)
+# Unkeyworded dependencies
+app-alternatives/bc gh
+
+# Sam James (2022-12-02)
+# Not keyworded here
+app-alternatives/lex reflex
+
# Sam James (2022-11-19)
# Fails to compile because of size, bug #829602.
sys-devel/clang extra
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/make.defaults
index ff2526a253..6f2df78adc 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/make.defaults
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/make.defaults
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# All extra USE/etc should be specified in sub-profiles.
@@ -35,7 +35,7 @@ IUSE_IMPLICIT="abi_ppc_64"
# Donnie Berkholz (2006-08-18)
# Defaults for video drivers
-VIDEO_CARDS="fbdev mga nv r128 radeon"
+VIDEO_CARDS="fbdev mga r128 radeon"
# Enable abi_ppc_64 for packages that don't have it forced.
ABI_PPC="64"
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 ef0c262fbb..f9c2fd3cd1 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.use.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.use.mask
@@ -1,6 +1,14 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Sam James (2022-12-02)
+# Unkeyworded dependencies
+app-alternatives/bc gh
+
+# Sam James (2022-12-02)
+# Not keyworded here
+app-alternatives/lex reflex
+
# Sam James (2022-10-13)
# Causes segfaults, bug #871921
sci-libs/symengine tcmalloc
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/riscv/package.accept_keywords b/sdk_container/src/third_party/portage-stable/profiles/arch/riscv/package.accept_keywords
deleted file mode 100644
index 3ebc00af05..0000000000
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/riscv/package.accept_keywords
+++ /dev/null
@@ -1,7 +0,0 @@
-# Copyright 2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# Even if someone makes Portage accept other keywords, here
-# we need specific versions / patches for riscv!
-sys-devel/gcc -amd64 -~amd64
-sys-libs/glibc -amd64 -~amd64
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/riscv/package.use.force b/sdk_container/src/third_party/portage-stable/profiles/arch/riscv/package.use.force
index 162a20ede7..6a29c97d30 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/riscv/package.use.force
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/riscv/package.use.force
@@ -1,6 +1,10 @@
# Copyright 2021-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Mike Rivnak (2022-11-30)
+# luajit is currently not supported on riscv, so use lua instead
+app-editors/neovim lua_single_target_lua5-1
+
# Georgy Yakovlev (2022-11-13)
# 1.64 segfaults, so we force 1.65 bootstrapping 1.65
~dev-lang/rust-1.65.0 system-bootstrap
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 a73e5c8b47..d4d1f89fe2 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,6 +1,26 @@
# Copyright 2019-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Sam James (2022-12-02)
+# Unkeyworded dependencies
+app-alternatives/bc gh
+
+# Sam James (2022-12-02)
+# Not keyworded here
+app-alternatives/yacc reference
+
+# Sam James (2022-12-02)
+# Not keyworded here
+app-alternatives/lex reflex
+
+# Mike Rivnak (2022-11-30)
+# luajit is currently not supported on riscv
+app-editors/neovim lua_single_target_luajit
+
+# Michał Górny (2022-11-30)
+# Mask unkeyworded providers.
+app-alternatives/bzip2 pbzip2
+
# Yixun Lan (2022-11-24)
# depend on dev-libs/libpcre2[jit] which not supported yet, bug #879511
www-servers/varnish jit
@@ -76,11 +96,6 @@ sys-block/fio rbd
# Upstream bug for criu: https://github.com/checkpoint-restore/criu/issues/1702
app-containers/crun criu
-# Adel Kara Slimane (2022-02-17)
-# Mask AMF keyword on non-amd64 arches
-# It is unusable, for now, in other arches
-media-video/ffmpeg amf
-
# Yongxinag Liang (2022-01-09)
# app-emulation/xen-tools doesn't support riscv yet
app-emulation/qemu xen
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 1f332436d8..bb80e08dba 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/s390/package.use.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/s390/package.use.mask
@@ -1,6 +1,18 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Sam James (2022-12-02)
+# Unkeyworded dependencies
+app-alternatives/bc gh
+
+# Sam James (2022-12-02)
+# Not keyworded here
+app-alternatives/lex reflex
+
+# Michał Górny (2022-11-25)
+# Unkeyworded shells.
+app-alternatives/sh lksh mksh
+
# Florian Schmaus (2022-11-23)
# avoid larger deptree, bug #882593
dev-python/bracex doc
@@ -105,11 +117,6 @@ app-portage/nattka depgraph-order
# Untested useflag on other arches, needs keywording
media-video/ffmpeg vmaf
-# Adel Kara Slimane (2021-12-11)
-# Mask AMF keyword on non-amd64 arches
-# It is unusable, for now, in other arches
-media-video/ffmpeg amf
-
# Sam James (2021-11-05)
# Avoid keywording unnecessary depenencies for now, bug #804115
dev-python/scipy pythran
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.use.mask
index 3cbc47e6be..29c11d7bea 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.use.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.use.mask
@@ -1,6 +1,14 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Sam James (2022-12-02)
+# Unkeyworded dependencies
+app-alternatives/bc gh
+
+# Sam James (2022-12-02)
+# Not keyworded here
+app-alternatives/lex reflex
+
# Sam James (2022-11-24)
# Pulls in gjs which is broken on sparc, bug #882071
app-crypt/libsecret test-rust
@@ -65,11 +73,6 @@ media-video/ffmpeg vmaf
# Unkeyworded dependencies
net-mail/cyrus-imapd http
-# Adel Kara Slimane (2022-02-17)
-# Mask AMF keyword on non-amd64 arches
-# It is unusable, for now, in other arches
-media-video/ffmpeg amf
-
# Daniel Pielmeier (2021-11-07)
# gnome-base/librsvg is not keyworded here, bug #807130
app-admin/conky lua-rsvg
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 a68e233ecf..4e51782986 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.mask
@@ -1,6 +1,14 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Sam James (2022-12-02)
+# Not keyworded here
+app-alternatives/lex reflex
+
+# Michał Górny (2022-12-01)
+# Keyworded here.
+app-alternatives/awk -nawk
+
# Michał Górny (2022-11-16)
# spirv-llvm-translator is not keyworded x86.
dev-libs/libclc spirv
@@ -59,11 +67,6 @@ media-video/ffmpeg vmaf
# dev-util/hip and its rocm dependencies not keyworded here
sci-physics/lammps hip
-# Adel Kara Slimane (2021-02-17)
-# Mask AMF keyword on non-amd64 arches
-# It is unusable, for now, in other arches
-media-video/ffmpeg amf
-
# Sam James (2022-01-20)
# Only supports cpu_flags_x86_aes in 64-bit mode
net-fs/samba cpu_flags_x86_aes
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 f423a411eb..50837e253e 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,6 +1,10 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Matt Turner (2022-12-02)
+# The patch we apply from Fedora doesn't apply.
+>x11-terms/gnome-terminal-3.46.3 vanilla
+
# Patrick McLean (2022-06-27)
# Doesn't build with boost installed on the system, some deps require boost
# so force the flag on until problem fixed upstream
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 6d258d9217..059d9ef6ee 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.mask
@@ -6,6 +6,11 @@
# This file is only for generic masks. For arch-specific masks (i.e.
# mask everywhere, unmask on arch/*) use arch/base.
+# John Helmert III (2022-11-29)
+# sys-apps/ucspi-ssl is last rited
+mail-mta/netqmail pop3
+mail-mta/notqmail pop3
+
# Joonas Niilola (2022-11-25)
# x11-wm/stumpwm-22.05_p20220818[doc] is totally broken. Bug #882935
x11-wm/stumpwm doc
diff --git a/sdk_container/src/third_party/portage-stable/profiles/base/use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/base/use.stable.mask
index 7d10497e39..96afc27ef0 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/base/use.stable.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/base/use.stable.mask
@@ -4,6 +4,10 @@
# This file requires eapi 5 or later. New entries go on top.
# Please use the same syntax as in use.mask
+# Alfredo Tupone (2022-12-4)
+# sys-devel/gcc:12 is not stable yet
+ada_target_gcc_12_2_0
+
# Patrick Lauer (2022-10-13)
# Postgres:15 is not stable yet
postgres_targets_postgres15
diff --git a/sdk_container/src/third_party/portage-stable/profiles/categories b/sdk_container/src/third_party/portage-stable/profiles/categories
index 39b33e91a9..64963f1467 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/categories
+++ b/sdk_container/src/third_party/portage-stable/profiles/categories
@@ -2,6 +2,7 @@ acct-group
acct-user
app-accessibility
app-admin
+app-alternatives
app-antivirus
app-arch
app-backup
diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/eapi
new file mode 100644
index 0000000000..7ed6ff82de
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/eapi
@@ -0,0 +1 @@
+5
diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/parent
new file mode 100644
index 0000000000..cc2d527a47
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/parent
@@ -0,0 +1,3 @@
+..
+../../../../arch/amd64
+../../../../releases/23.0
diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/eapi
new file mode 100644
index 0000000000..7ed6ff82de
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/eapi
@@ -0,0 +1 @@
+5
diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/parent
new file mode 100644
index 0000000000..598ca888c8
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/parent
@@ -0,0 +1,2 @@
+..
+../../../../../features/split-usr
diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/systemd/eapi
new file mode 100644
index 0000000000..7ed6ff82de
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/systemd/eapi
@@ -0,0 +1 @@
+5
diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/systemd/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/systemd/parent
new file mode 100644
index 0000000000..7e061533c1
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/systemd/parent
@@ -0,0 +1,2 @@
+..
+../../../../../../targets/systemd
diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/systemd/eapi
new file mode 100644
index 0000000000..7ed6ff82de
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/systemd/eapi
@@ -0,0 +1 @@
+5
diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/systemd/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/systemd/parent
new file mode 100644
index 0000000000..ced72403bd
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/systemd/parent
@@ -0,0 +1,2 @@
+..
+../../../../../targets/systemd
diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/eapi
new file mode 100644
index 0000000000..7ed6ff82de
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/eapi
@@ -0,0 +1 @@
+5
diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/package.accept_keywords b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/package.accept_keywords
new file mode 100644
index 0000000000..490d12daa4
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/package.accept_keywords
@@ -0,0 +1,6 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Georgy Yakovlev (2022-12-04)
+# only gcc-12 provides ieee-long-double, which is not stable yet.
+=sys-devel/gcc-12* ~ppc64
diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/package.mask b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/package.mask
new file mode 100644
index 0000000000..b230f17da0
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/package.mask
@@ -0,0 +1,6 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Georgy Yakovlev (2022-12-04)
+# We need gcc-12 for ieee-long-double.
+ (2022-12-04)
+# Hard requirement for this profile.
+sys-devel/gcc ieee-long-double
diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/package.use.mask
new file mode 100644
index 0000000000..5d3622b698
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/package.use.mask
@@ -0,0 +1,6 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Georgy Yakovlev (2022-12-04)
+# We need gcc-12 for ieee-long-double.
+>=sys-devel/gcc-12 -ieee-long-double
diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/parent
new file mode 100644
index 0000000000..f3229c5b98
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/parent
@@ -0,0 +1 @@
+..
diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/profile.bashrc b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/profile.bashrc
new file mode 100644
index 0000000000..ad5bf064bb
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/17.0/ieee-long-double/profile.bashrc
@@ -0,0 +1,11 @@
+if [[ "${EBUILD_PHASE}" == "setup" ]] ; then
+ if [[ ${CATEGORY}/${PN} != sys-devel/gcc ]]; then
+ if [[ $(${CC:-cc} -E -dM - < /dev/null | grep -o '__LDBL_MANT_DIG__ .*') != "__LDBL_MANT_DIG__ 113" ]]; then
+ eerror
+ eerror "${CC:-cc} should provide ieee-long-double on this profile by default"
+ eerror "reinstall sys-devel/gcc with USE=ieee-long-double and try again."
+ eerror
+ die "install >=sys-devel/gcc-12[ieee-long-double]"
+ fi
+ fi
+fi
diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/hardened/package.use.force b/sdk_container/src/third_party/portage-stable/profiles/features/hardened/package.use.force
index 28c4aed893..0cf2ecd727 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/features/hardened/package.use.force
+++ b/sdk_container/src/third_party/portage-stable/profiles/features/hardened/package.use.force
@@ -1,6 +1,10 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Andreas K. Hüttel (2022-11-29)
+# Needed for new mechanism
+>=sys-devel/gcc-12.2 default-znow default-stack-clash-protection
+
# Needed for XATTR_PAX flags
app-arch/tar xattr
sys-apps/coreutils xattr
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 151471cc60..b0f0111282 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,18 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Andrey Grozin (2022-12-01)
+# These packages depend on dev-lisp/sbcl unconditionally
+app-emacs/sly
+dev-lisp/alexandria
+dev-ros/roslisp
+x11-wm/stumpwm
+x11-wm/stumpwm-contrib
+
+# Andrey Grozin (2022-12-01)
+# The upstream supports only glibc Linux systems, bug #712626
+dev-lisp/sbcl
+
# Sam James (2022-10-17)
# Needs porting to musl
# https://github.com/rr-debugger/rr/issues/2236
@@ -97,6 +109,7 @@ app-arch/rar
app-backup/tsm
app-benchmarks/geekbench
app-crypt/rainbowcrack
+app-editors/sublime-text
app-editors/vscode
app-editors/vscodium
app-emulation/crossover-bin
diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/musl/use.mask b/sdk_container/src/third_party/portage-stable/profiles/features/musl/use.mask
index 9f14eb4801..21cdca44d1 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/features/musl/use.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/features/musl/use.mask
@@ -5,6 +5,10 @@
-elibc_musl
elibc_glibc
+# Andrey Grozin (2022-12-01)
+# dev-lisp/sbcl is masked
+sbcl
+
# Sam James (2022-10-04)
# sci-libs/opencascade is masked on musl
occ
diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/split-usr/eapi b/sdk_container/src/third_party/portage-stable/profiles/features/split-usr/eapi
new file mode 100644
index 0000000000..7ed6ff82de
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/features/split-usr/eapi
@@ -0,0 +1 @@
+5
diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/split-usr/use.force b/sdk_container/src/third_party/portage-stable/profiles/features/split-usr/use.force
new file mode 100644
index 0000000000..f638abe614
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/features/split-usr/use.force
@@ -0,0 +1,6 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Andreas K. Hüttel (2022-12-04)
+# Force split-usr.
+split-usr
diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/split-usr/use.mask b/sdk_container/src/third_party/portage-stable/profiles/features/split-usr/use.mask
new file mode 100644
index 0000000000..70a8ffe051
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/features/split-usr/use.mask
@@ -0,0 +1,6 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Andreas K. Hüttel (2022-12-04)
+# Unmask split-usr.
+-split-usr
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 7136caab88..025e4b1885 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
@@ -57,7 +57,6 @@ dev-python/trustme
dev-python/trio
dev-python/twine
dev-python/watchfiles
-dev-python/watchgod
dev-ros/roswtf
dev-util/cargo-c
dev-util/cbindgen
@@ -79,6 +78,7 @@ media-libs/libavif
>=media-libs/libopenraw-0.3.2
media-video/ogmrip
media-video/rav1e
+net-im/gajim
>=net-irc/polari-3.37
net-libs/quiche
net-misc/electrum-ltc
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 75f48aabba..4dd5915ab8 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
@@ -37,6 +37,7 @@ dev-python/pyftpdlib ssl test
dev-python/python-novaclient test
dev-python/requests test
dev-python/uvloop test
+mate-extra/caja-extensions gajim
www-apps/roundup ssl
# Michał Górny (2022-06-26)
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 189ca5ad74..44138e0192 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/package.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/package.mask
@@ -33,6 +33,127 @@
#--- END OF EXAMPLES ---
+# Robin H. Johnson (2022-12-04)
+# sys-boot/mbr-gpt was a bizzare package extremely sensitive to compiler &
+# linker changes. I don't know of any remaining consumers other than one weird
+# system I have.
+# If you're a consumer: syslinux gptmbr was the successor to this approach,
+# you'll need to replace the contents of your BIOS Boot Partition, because it's
+# not a direct 1:1 change.
+# Only upstream release in 2008. Removal in 30 days.
+sys-boot/mbr-gpt
+
+# Hans de Graaff (2022-12-03)
+# ruby27-only package with no reverse dependencies.
+# Last release in 2019. Removal in 30 days.
+dev-ruby/logue
+
+# Hans de Graaff (2022-12-04)
+# Obsolete slot without reverse dependencies. Use a newer
+# public_suffix slot instead. Masked for removal in 30 days.
+dev-ruby/public_suffix:3
+
+# Hans de Graaff (2022-12-04)
+# Obsolete slot without reverse dependencies. Use a newer
+# rspec-rails slot instead. Masked for removal in 30 days.
+dev-ruby/rspec-rails:4
+
+# Hans de Graaff (2022-12-04)
+# Obsolete slot without reverse dependencies. Use a newer
+# selenium-webdriver slot instead. Masked for removal in 30 days.
+dev-ruby/selenium-webdriver:3
+
+# Hans de Graaff (2022-12-03)
+# ruby27-only packages with no other reverse dependencies.
+# Last releases in 2013 and 2015. Removal in 30 days.
+dev-ruby/textpow
+dev-ruby/ultraviolet
+
+# Hans de Graaff (2022-12-03)
+# Obsolete slot without reverse dependencies. Use a newer vcr
+# slot instead. Masked for removal in 30 days.
+dev-ruby/vcr:3
+
+# Sam James (2022-12-03)
+# Dev channel releases are only for people who
+# are developers or want more experimental features
+# and accept a more unstable release.
+>=www-client/chromium-110
+
+# Andreas Sturmlechner (2022-12-03)
+# No purpose anymore after (2022-12-03)
+# Obsolete slot without reverse dependencies. Use a newer faraday
+# slot instead. Masked for removal in 30 days.
+dev-ruby/faraday:0
+
+# Hans de Graaff (2022-12-03)
+# Obsolete slot without reverse dependencies. Use a newer net-ssh
+# slot instead. Masked for removal in 30 days.
+dev-ruby/net-ssh:5
+
+# Hans de Graaff (2022-12-03)
+# ruby27-only packages. No recent releases. No reverse dependencies
+# anymore. Maksed for removal in 30 days.
+dev-ruby/rspec-retry
+
+# Oz Tiram (2022-12-03)
+# Mate-desktop no longer supports gtk+:2, so there is
+# no need for this package. Removal on 2023-01-03.
+x11-themes/mate-themes-meta
+
+# Hans de Graaff (2022-12-02)
+# Old cucumber slots and dependencies for already removed
+# cucumber-3. These have no value as standalone packages.
+# Removal in 14 days.
+dev-ruby/gherkin
+dev-util/cucumber-core:3.2
+dev-util/cucumber-expressions
+dev-util/cucumber-tag_expressions
+dev-util/cucumber-wire:0
+
+# Hans de Graaff (2022-12-01)
+# Old slot without dependencies on it. Blocks removal of
+# ruby27-only dev-util/cucumber-3.x. Use a newer slot instead.
+# Removal in 30 days.
+dev-util/aruba:1
+
+# Ionen Wolkens (2022-11-30)
+# Stuck on ruby27 and ruby-gtk2, upstream gone and no other distros
+# seem to package this (also barely functional using current ruby
+# and has a tendency to crash).
+# Removal: 2022-12-30.
+games-board/camato
+
+# Ulrich Müller (2022-11-30)
+# SLOTs 23 and 24 of app-editors/emacs, corresponding to GNU Emacs
+# versions 23.4 and 24.5. These versions were released in January 2012
+# and April 2015, respectively, and have a non-trivial security issue
+# with ctags. Please upgrade to >=app-editors/emacs-25 and update your
+# Emacs Lisp packages with emacs-updater.
+# Masked for removal in 30 days. Bugs #882347, #882349, #883687.
+app-editors/emacs:23
+app-editors/emacs:24
+
+# John Helmert III (2022-11-29)
+# Unmaintained and outdated in Gentoo, compatibility issues with
+# openssl-1.1. Removal in 30 days. Bug #696936.
+sys-apps/ucspi-ssl
+
+# John Helmert III (2022-11-29)
+# Authentication bypass vulnerability, unmaintained in Gentoo, source
+# package available. Use app-metrics/prometheus instead. Removal in 30
+# days. Bug #883637.
+app-metrics/prometheus-bin
+
+# Piotr Karbowski (2022-11-29)
+# Multiple stability issues, deadlocks on exit, broken API.
+# Bug #883559
+=net-p2p/qbittorrent-4.5.0
+
# John Helmert III (2022-11-27)
# Unmaintained upstream, several unresolved public vulnerabilities,
# Removal in 30 days. Bug #882773.
@@ -43,11 +164,6 @@ www-servers/boa
# Bug #883223.
~dev-libs/glib-2.74.2
-# Michał Górny (2022-11-27)
-# Unresolved LICENSE issue for 3 years now.
-# Removal on 2022-12-27. Bug #694708.
-app-admin/helm
-
# Michał Górny (2022-11-27)
# Broken with OpenSSL-3. Last upstream activity in 2021, no reply
# to the bug.
@@ -328,13 +444,6 @@ net-mail/vchkuser
(2022-11-11)
-# Had a handful of reports of unbootable systems with this new version.
-# Given it's a still-experimental new branch, mask for now in case.
-# Feel free to unmask if you've had no issues, but otherwise please
-# report to NVIDIA. https://bugs.gentoo.org/881025
-~x11-drivers/nvidia-drivers-525.53
-
# Matt Turner (2022-11-11)
# Relies on function no longer present in the Xserver since v1.20
# (released May 2018), and no user has noticed. Use xf86-video-nouveau instead.
@@ -357,109 +466,11 @@ x11-drivers/xf86-video-nv
=net-misc/asterisk-opus-20*
=net-misc/asterisk-g729-20*
-# Arthur Zamarin (2022-11-04)
-# Upstream repository is gone. Uses internally python 2 code, which
-# we patch into python 3. Only ebuild uses snapshot tarball from the
-# dead repo. Doesn't use PEP517 mode. Has issues with python 3.11.
-# No reverse dependencies in tree.
-# Removal: 2022-12-04. Bug #879613.
-dev-python/tempita
-
-# Michał Górny (2022-11-04)
-# NIH version of dev-python/watchdog that was used by dev-python/uvicorn
-# only, and was replaced by rustified dev-python/watchfiles.
-# Removal on 2022-12-04. Bug #879515.
-dev-python/watchgod
-
-# Matt Turner (2022-11-01)
-# Added by a proxied maintainer in 2018 who then never touched it again before
-# disappearing. Doesn't build with Python 3.9. Depends on gnome-base/gconf.
-# Bugs #846233, #873877
-# Removal on 2022-12-01
-sci-electronics/drahnr-oregano
-
-# Matt Turner (2022-11-01)
-# Dead slot. No reverse dependencies that are not masked for removal.
-# Removal on 2022-12-01
-x11-libs/gnome-pty-helper
-x11-libs/vte:0
-
-# Matt Turner (2022-11-01)
-# No reverse dependencies. Depends on deprecated and unmaintained packages:
-# - media-libs/clutter
-# - media-libs/clutter-gst
-# - media-libs/clutter-gtk
-# - x11-libs/gtksourceview:2.0
-# - x11-libs/gtksourceview:3.0
-# - x11-libs/gtksourceview:4
-# - x11-libs/vte:0
-# Bug #877153
-# Removal on 2022-12-01
-dev-ruby/ruby-clutter
-dev-ruby/ruby-clutter-gdk
-dev-ruby/ruby-clutter-gstreamer
-dev-ruby/ruby-clutter-gtk
-dev-ruby/ruby-gdk3
-dev-ruby/ruby-gegl
-dev-ruby/ruby-gnome2
-dev-ruby/ruby-gnumeric
-dev-ruby/ruby-goffice
-dev-ruby/ruby-gsf
-dev-ruby/ruby-gstreamer
-dev-ruby/ruby-gtk3
-dev-ruby/ruby-gtksourceview
-dev-ruby/ruby-gtksourceview3
-dev-ruby/ruby-gtksourceview4
-dev-ruby/ruby-libsecret
-dev-ruby/ruby-rsvg
-dev-ruby/ruby-vte
-dev-ruby/ruby-vte3
-dev-ruby/ruby-webkit2-gtk
-dev-ruby/ruby-wnck3
-
-# Anton Fischl (2022-10-23)
-# Version 3.1.* is not meant for production according to upstream
-=app-backup/burp-3.1*
-
-# David Seifert (2022-10-31)
-# EAPI 6, last release over 17 years ago, requires (2022-10-30)
-# Dead package, last release 10 years ago. No reverse dependencies.
-# Removal on 2022-11-30
-media-gfx/gnome-raw-thumbnailer
-
-# Matt Turner (2022-10-29)
-# Old slot with no reverse dependencies.
-# Removal on 2022-11-29
-dev-libs/libgweather:2
-
-# Arthur Zamarin (2022-10-29)
-# Last upstream commit in 2016, no tests, implements functions
-# which are implemented by pathlib Python module. No reverse
-# dependencies in gentoo tree for a long time.
-# Removal: 2022-11-28. Bug #878733.
-dev-python/pathtools
-
-# Michał Górny (2022-10-29)
-# Unmaintained in Gentoo. Last release in 2018, very little upstream
-# activity since. No revdeps left.
-# Removal on 2022-11-28. Bug #842873.
-dev-libs/cloog
-
# Sam James (2022-10-28)
# Please upgrade to >=media-libs/fontconfig-2.14.1-r1 for fixed
# cache dir to avoid sandbox violation errors, bug #878471.
=media-libs/fontconfig-2.14.1
-# Andrew Ammerlaan (2022-10-28)
-# Unmaintained upstream, no reverse dependencies, fails tests
-# Removal in 30 days
-dev-python/pweave
-
# John Helmert III (2022-10-16)
# (2022-09-29)
-# Dev channel releases are only for people who
-# are developers or want more experimental features
-# and accept a more unstable release.
->=www-client/chromium-108
-
# John Helmert III (2022-09-18)
# Unfixed root privilege escalation, bug #631552
sys-cluster/slurm
diff --git a/sdk_container/src/third_party/portage-stable/profiles/profiles.desc b/sdk_container/src/third_party/portage-stable/profiles/profiles.desc
index 654ae9ec86..6369bcb7a2 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/profiles.desc
+++ b/sdk_container/src/third_party/portage-stable/profiles/profiles.desc
@@ -259,6 +259,7 @@ ppc64 default/linux/ppc64le/17.0/systemd/merged-usr stable
ppc64 default/linux/ppc64le/17.0/developer exp
ppc64 default/linux/ppc64le/17.0/musl dev
ppc64 default/linux/ppc64le/17.0/musl/hardened exp
+ppc64 default/linux/ppc64le/17.0/ieee-long-double exp
# RISC-V Profiles
# @MAINTAINER: riscv@gentoo.org
@@ -266,29 +267,29 @@ riscv default/linux/riscv/20.0/rv64gc/lp64d stable
riscv default/linux/riscv/20.0/rv64gc/lp64d/desktop dev
riscv default/linux/riscv/20.0/rv64gc/lp64d/desktop/gnome dev
riscv default/linux/riscv/20.0/rv64gc/lp64d/desktop/gnome/systemd dev
-riscv default/linux/riscv/20.0/rv64gc/lp64d/desktop/gnome/systemd/merged-usr dev
+#riscv default/linux/riscv/20.0/rv64gc/lp64d/desktop/gnome/systemd/merged-usr dev
riscv default/linux/riscv/20.0/rv64gc/lp64d/desktop/plasma dev
riscv default/linux/riscv/20.0/rv64gc/lp64d/desktop/plasma/systemd dev
-riscv default/linux/riscv/20.0/rv64gc/lp64d/desktop/plasma/systemd/merged-usr dev
+#riscv default/linux/riscv/20.0/rv64gc/lp64d/desktop/plasma/systemd/merged-usr dev
riscv default/linux/riscv/20.0/rv64gc/lp64d/desktop/systemd dev
-riscv default/linux/riscv/20.0/rv64gc/lp64d/desktop/systemd/merged-usr dev
+#riscv default/linux/riscv/20.0/rv64gc/lp64d/desktop/systemd/merged-usr dev
riscv default/linux/riscv/20.0/rv64gc/lp64d/systemd stable
-riscv default/linux/riscv/20.0/rv64gc/lp64d/systemd/merged-usr stable
+#riscv default/linux/riscv/20.0/rv64gc/lp64d/systemd/merged-usr stable
riscv default/linux/riscv/20.0/rv64gc/lp64 stable
riscv default/linux/riscv/20.0/rv64gc/lp64/desktop dev
riscv default/linux/riscv/20.0/rv64gc/lp64/desktop/gnome dev
riscv default/linux/riscv/20.0/rv64gc/lp64/desktop/gnome/systemd dev
-riscv default/linux/riscv/20.0/rv64gc/lp64/desktop/gnome/systemd/merged-usr dev
+#riscv default/linux/riscv/20.0/rv64gc/lp64/desktop/gnome/systemd/merged-usr dev
riscv default/linux/riscv/20.0/rv64gc/lp64/desktop/plasma dev
riscv default/linux/riscv/20.0/rv64gc/lp64/desktop/plasma/systemd dev
-riscv default/linux/riscv/20.0/rv64gc/lp64/desktop/plasma/systemd/merged-usr dev
+#riscv default/linux/riscv/20.0/rv64gc/lp64/desktop/plasma/systemd/merged-usr dev
riscv default/linux/riscv/20.0/rv64gc/lp64/desktop/systemd dev
-riscv default/linux/riscv/20.0/rv64gc/lp64/desktop/systemd/merged-usr dev
+#riscv default/linux/riscv/20.0/rv64gc/lp64/desktop/systemd/merged-usr dev
riscv default/linux/riscv/20.0/rv64gc/lp64/systemd stable
-riscv default/linux/riscv/20.0/rv64gc/lp64/systemd/merged-usr stable
+#riscv default/linux/riscv/20.0/rv64gc/lp64/systemd/merged-usr stable
riscv default/linux/riscv/20.0/rv64gc/multilib exp
riscv default/linux/riscv/20.0/rv64gc/multilib/systemd exp
-riscv default/linux/riscv/20.0/rv64gc/multilib/systemd/merged-usr exp
+#riscv default/linux/riscv/20.0/rv64gc/multilib/systemd/merged-usr exp
# S390 Profiles
# @MAINTAINER: s390@gentoo.org
diff --git a/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/make.defaults
index 7cd1e30dc0..c802f3fa34 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/make.defaults
+++ b/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/make.defaults
@@ -1,6 +1,9 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# See also
+# https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+
# This just makes sense nowadays, if only for distfiles...
USE="lzma zstd"
@@ -9,3 +12,12 @@ USE="${USE} -cli"
# bug 849875
USE="${USE} -dri"
+
+# bug 818376
+LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs"
+
+# copied from merged-usr feature
+# Mike Gilbert (2022-08-31)
+# Avoid removing merged-usr symlinks.
+UNINSTALL_IGNORE="${UNINSTALL_IGNORE} /bin /lib /lib32 /lib64 /libx32 /sbin /usr/sbin"
+UNINSTALL_IGNORE="${UNINSTALL_IGNORE} /usr/lib/modules/*"
diff --git a/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/package.mask b/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/package.mask
new file mode 100644
index 0000000000..206ab70bd1
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/package.mask
@@ -0,0 +1,5 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# DT_RELR needs glibc-2.36
+=sys-devel/gcc-12.2 default-znow default-stack-clash-protection
diff --git a/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/package.use.mask
index adc292d4df..7084783a52 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/package.use.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/package.use.mask
@@ -1,2 +1,2 @@
-# Copyright 2017-2022 Gentoo Authors
+# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
diff --git a/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/package.use.stable.mask
deleted file mode 100644
index fb7bef2767..0000000000
--- a/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/package.use.stable.mask
+++ /dev/null
@@ -1,2 +0,0 @@
-# Copyright 1999-2022 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
diff --git a/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/use.force b/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/use.force
new file mode 100644
index 0000000000..b04dc784e1
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/use.force
@@ -0,0 +1,6 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Mike Gilbert (2022-08-30)
+# Un-force split-usr.
+-split-usr
diff --git a/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/use.mask b/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/use.mask
new file mode 100644
index 0000000000..4e6cb8ec4a
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/use.mask
@@ -0,0 +1,6 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Mike Gilbert (2022-08-30)
+# Mask split-usr.
+split-usr
diff --git a/sdk_container/src/third_party/portage-stable/profiles/updates/4Q-2022 b/sdk_container/src/third_party/portage-stable/profiles/updates/4Q-2022
index 5bb9711a24..fd98594f3e 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/updates/4Q-2022
+++ b/sdk_container/src/third_party/portage-stable/profiles/updates/4Q-2022
@@ -10,3 +10,5 @@ move dev-python/retworkx dev-python/rustworkx
move dev-python/libsass dev-python/libsass-python
move dev-lang/open-cobol dev-lang/gnucobol
move dev-python/miniupnpc dev-python/python-miniupnpc
+move virtual/awk app-alternatives/awk
+move virtual/yacc app-alternatives/yacc
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/bc/bc-1.07.1-r4.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/bc/bc-1.07.1-r4.ebuild
index 82f798fc4f..2ac2c73b3d 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/bc/bc-1.07.1-r4.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/bc/bc-1.07.1-r4.ebuild
@@ -23,7 +23,7 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="
sys-devel/flex
- virtual/yacc"
+ app-alternatives/yacc"
PATCHES=( "${FILESDIR}"/${PN}-1.07.1-no-ed-its-sed.patch )
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/bc/bc-1.07.1-r5.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/bc/bc-1.07.1-r5.ebuild
index 24a7526442..78eefebc16 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/bc/bc-1.07.1-r5.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/bc/bc-1.07.1-r5.ebuild
@@ -23,7 +23,7 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="
sys-devel/flex
- virtual/yacc"
+ app-alternatives/yacc"
PATCHES=( "${FILESDIR}"/${PN}-1.07.1-no-ed-its-sed.patch )
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/bc/bc-1.07.1-r6.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/bc/bc-1.07.1-r6.ebuild
new file mode 100644
index 0000000000..175d05638d
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/bc/bc-1.07.1-r6.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Handy console-based calculator utility"
+HOMEPAGE="https://www.gnu.org/software/bc/bc.html"
+SRC_URI="mirror://gnu/bc/${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="libedit readline static"
+
+RDEPEND="
+ !readline? ( libedit? ( dev-libs/libedit:= ) )
+ readline? (
+ sys-libs/readline:=
+ sys-libs/ncurses:=
+ )"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ sys-devel/flex
+ app-alternatives/yacc"
+PDEPEND="app-alternatives/bc"
+
+PATCHES=( "${FILESDIR}"/${PN}-1.07.1-no-ed-its-sed.patch )
+
+src_prepare() {
+ default
+
+ # Avoid bad build tool usage when cross-compiling. Bug #627126
+ tc-is-cross-compiler && eapply "${FILESDIR}"/${PN}-1.07.1-use-system-bc.patch
+}
+
+src_configure() {
+ local myconf=(
+ $(use_with readline)
+ --program-suffix=-reference
+ )
+
+ if use readline ; then
+ myconf+=( --without-libedit )
+ else
+ myconf+=( $(use_with libedit) )
+ fi
+
+ use static && append-ldflags -static
+
+ # The libedit code isn't compatible currently. #830101
+ use libedit && append-flags -fcommon
+
+ # AC_SYS_LARGEFILE in configure.ac would handle this, but we don't patch
+ # autotools otherwise currently. This change has been sent upstream, but
+ # who knows when they'll make another release.
+ append-lfs-flags
+
+ # configure dies with other lexes:
+ # "configure: error: readline works only with flex."
+ export LEX=flex
+
+ econf "${myconf[@]}"
+
+ # Do not regen docs -- configure produces a small fragment that includes
+ # the version info which causes all pages to regen (newer file). Bug #554774
+ touch -r doc doc/* || die
+}
+
+src_compile() {
+ emake AR="$(tc-getAR)"
+}
+
+pkg_postinst() {
+ # ensure to preserve the symlinks before app-alternatives/bc
+ # is installed
+ local x
+ for x in bc dc ; do
+ if [[ ! -h ${EROOT}/usr/bin/${x} ]] ; then
+ ln -s "${x}-reference" "${EROOT}/usr/bin/${x}" || die
+ fi
+ done
+}
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 d01a3b9782..0de4b0fbbc 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
@@ -12,6 +12,5 @@ DIST binutils-2.37_p1-patches-2.tar.xz 31956 BLAKE2B 39c48628d0e2d7f3a8cf11be391
DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c228351ccf0949a9b462b4d4615d70ab7e1a45351299140a42baf39c317b8007733c253eb547ee1dfadb612addde11621 SHA512 46c297ec2a7a5b81d1c6e3f16486a6dc2860a07520fe2dd8871d1eb5160065bbe2cc6b0415d5352bf12284133e5817a4e429e6077182d615e969bd1a8f52ed28
DIST binutils-2.38-patches-4.tar.xz 193852 BLAKE2B 5a83e20008e58464ed563a6817a367e50684c59d08c47345cc546054269c42463d1651441720f865851e4e182e917df1a095c68e64226e0351b64e975d524096 SHA512 6657e547bb02898632cc45a8f1894be098aa7472b6725b65f95393e621abb127e468b4e50310720bf03f7e8d0a68bc2c47af76fc43aaa8f32b2e4a149c0c6290
DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc5053109e06c3c4a1934944e3f0ceaa9e4a2604528a440189771f778cb5d75edd510163970eeea31afba87fa256feba SHA512 8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d
-DIST binutils-2.39-patches-4.tar.xz 62880 BLAKE2B 5cc335769d9c88417583ce059c61d0d7655f3ab9ac69647e6e2f65bd3a9dd143fe34c50bb68ab81d4226ddd0e4ef405d7102f67375a672eedc3d01b92b8ef497 SHA512 ef81350979af64cf35800b39982c84657a5c01362c01d221164a43d8f0dd80276c9f052c55d24516fad457e6671a58d467d71b5edd6c1f53fddbdb31172a21ee
DIST binutils-2.39-patches-5.tar.xz 82924 BLAKE2B 2cf75f661989f22270d6afe5f3c543814eb6a331be4493016fa2871e1f10a84a123c1c51e77a19b35e46680b9fe77390cb1532ca40d470a6041fa768fed3ccd7 SHA512 4b5811b4822b3a06f590fc7d082dc0ddf18a6058ac23887254e2ee9bd63c7f06f1636e446152115c7e0b01a6c5298a0d9df6904bd1582e66504ccde80dd1ecbd
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.32-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.32-r2.ebuild
index 40db4705c2..d19fc5bc16 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.32-r2.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.32-r2.ebuild
@@ -77,7 +77,7 @@ DEPEND="${RDEPEND}
test? ( dev-util/dejagnu )
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index 785ea17b65..2fd7c51dac 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -69,7 +69,7 @@ DEPEND="${RDEPEND}
test? ( dev-util/dejagnu )
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.34-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.34-r2.ebuild
index c615031391..f135644d03 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -70,7 +70,7 @@ BDEPEND="
test? ( dev-util/dejagnu )
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.35.2.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.35.2.ebuild
index cdb4d4b87e..88e1395e63 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -62,7 +62,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index faa27e272c..2231530b7f 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -62,7 +62,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index 6ade635ea8..712f1d46b7 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -62,7 +62,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.38-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.38-r2.ebuild
index 658541bd3d..401310d2e9 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -62,7 +62,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.39-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.39-r2.ebuild
deleted file mode 100644
index e4e43cdd95..0000000000
--- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.39-r2.ebuild
+++ /dev/null
@@ -1,492 +0,0 @@
-# Copyright 1999-2022 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 default-gold doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla"
-REQUIRED_USE="default-gold? ( gold )"
-
-# 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=4
-PATCH_DEV=dilfridge
-
-if [[ ${PV} == 9999* ]]; then
- inherit git-r3
- SLOT=${PV}
-else
- PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
- PATCH_DEV=${PATCH_DEV:-dilfridge}
- SRC_URI="mirror://gnu/binutils/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 ~ia64 ~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
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- test? (
- dev-util/dejagnu
- sys-devel/bc
- )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/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"
- EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git
- git-r3_src_unpack
- mv patches-git/9999 patch || die
-
- EGIT_REPO_URI="https://sourceware.org/git/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"
- 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."
- 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
-
- # Fix locale issues if possible, bug #122216
- if [[ -e ${FILESDIR}/binutils-configure-LANG.patch ]] ; then
- einfo "Fixing misc issues in configure files"
- for f in $(find "${S}" -name configure -exec grep -l 'autoconf version 2.13' {} +) ; do
- ebegin " Updating ${f/${S}\/}"
- patch "${f}" "${FILESDIR}"/binutils-configure-LANG.patch >& "${T}"/configure-patch.log \
- || eerror "Please file a bug about this"
- eend $?
- done
- fi
-
- # 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 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
- # enable gold (installed as ld.gold) and ld's plugin architecture
- if use gold ; then
- myconf+=( --enable-gold )
- if use default-gold; then
- myconf+=( --enable-gold=default )
- fi
- 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}
- --enable-obsolete
- --enable-shared
- --enable-threads
- # Newer versions (>=2.27) offer a configure flag now.
- --enable-relro
- # Newer versions (>=2.24) make this an explicit option, bug #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
-
- # Available from 2.39 on
- --enable-warn-execstack
- --enable-warn-rwx-segments
- # TODO: Available from 2.39+ on but let's try the warning on for a bit
- # first... (--enable-warn-execstack)
- # Could put it under USE=hardened?
- #--disable-default-execstack (or is it --enable-default-execstack=no? docs are confusing)
-
- # Things to think about
- #--enable-deterministic-archives
-
- # Works better than vapier's patch, bug #808787
- --enable-new-dtags
-
- --disable-jansson
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- # Disable modules that are in a combined binutils/gdb tree, bug #490566
- --disable-{gdb,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)
-
- # Avoid automagic dependency on (currently prefix) systems
- # systems with debuginfod library, bug #754753
- --without-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)
- )
-
- if ! is_cross ; then
- myconf+=( $(use_enable pgo pgo-build lto) )
-
- if use pgo ; then
- export BUILD_CFLAGS="${CFLAGS}"
- fi
- fi
-
- ECONF_SOURCE="${S}" econf "${myconf[@]}" || die
-
- # 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]
- emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake V=1 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
-
- # bug #637066
- filter-flags -Wall -Wreturn-type
-
- emake -k V=1 check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}" || die
-
- # see Note [tooldir hack for ldscripts]
- emake V=1 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}
-
- # 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}
-}
-
-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}
- else
- binutils-config ${choice}
- fi
- elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${PV} ]] ; then
- binutils-config ${CTARGET}-${PV}
- 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.39-r4.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.39-r4.ebuild
index 3ac03a449c..8a51b198d2 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.39-r4.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.39-r4.ebuild
@@ -63,7 +63,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
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 29f4e844ce..7897167274 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
@@ -64,7 +64,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/bison/bison-3.8.2-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/bison/bison-3.8.2-r2.ebuild
new file mode 100644
index 0000000000..ab5bfac28f
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/bison/bison-3.8.2-r2.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/bison.asc
+inherit flag-o-matic verify-sig
+
+DESCRIPTION="A general-purpose (yacc-compatible) parser generator"
+HOMEPAGE="https://www.gnu.org/software/bison/"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
+SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="examples nls static test"
+RESTRICT="!test? ( test )"
+
+# gettext _IS_ required in RDEPEND because >=bison-3.7 links against
+# libtextstyle.so!!! (see bug #740754)
+DEPEND="
+ >=sys-devel/m4-1.4.16
+ >=sys-devel/gettext-0.21
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ sys-devel/flex
+ test? ( dev-lang/perl )
+ verify-sig? ( sec-keys/openpgp-keys-bison )
+"
+PDEPEND="app-alternatives/yacc"
+
+DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO ) # ChangeLog-2012 ChangeLog-1998 PACKAGING README-alpha README-release
+
+src_prepare() {
+ # Old logic when we needed to patch configure.ac
+ # Keeping in case it's useful for future
+
+ # Record date to avoid 'config.status --recheck' & regen of 'tests/package.m4'
+ #touch -r configure.ac old.configure.ac || die
+ #touch -r configure old.configure || die
+
+ #eapply "${WORKDIR}"/patches
+ #default
+
+ # Restore date after patching
+ #touch -r old.configure.ac configure.ac || die
+ #touch -r old.configure configure || die
+
+ # The makefiles make the man page depend on the configure script
+ # which we patched above. Touch it to prevent regeneration.
+ #touch doc/bison.1 || die #548778 #538300#9
+
+ default
+
+ # Avoid regenerating the info page when the timezone is diff. #574492
+ sed -i '2iexport TZ=UTC' build-aux/mdate-sh || die
+}
+
+src_configure() {
+ use static && append-ldflags -static
+
+ local myeconfargs=(
+ $(use_enable nls)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ # These are owned by app-alternatives/yacc
+ mv "${ED}"/usr/bin/yacc{,.bison} || die
+ mv "${ED}"/usr/share/man/man1/yacc{,.bison}.1 || die
+
+ # We do not need liby.a
+ rm -r "${ED}"/usr/lib* || die
+
+ # Examples are about 200K, so let's make them optional still for now.
+ if ! use examples ; then
+ rm -r "${ED}"/usr/share/doc/${PF}/examples/ || die
+ fi
+}
+
+pkg_postinst() {
+ # ensure to preserve the symlinks before app-alternatives/yacc
+ # is installed
+ if [[ ! -h ${EROOT}/usr/bin/yacc ]]; then
+ ln -s yacc.bison "${EROOT}/usr/bin/yacc" || die
+ fi
+}
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/flex/flex-2.6.4-r5.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/flex/flex-2.6.4-r5.ebuild
new file mode 100644
index 0000000000..e064eb4e45
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/flex/flex-2.6.4-r5.ebuild
@@ -0,0 +1,100 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic libtool multilib-minimal toolchain-funcs
+
+DESCRIPTION="The Fast Lexical Analyzer"
+HOMEPAGE="https://github.com/westes/flex"
+SRC_URI="https://github.com/westes/${PN}/releases/download/v${PV}/${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-autotools-regenerate.patch.xz"
+
+LICENSE="FLEX"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="nls static test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="sys-devel/m4"
+# We want bison explicitly and not yacc in general, bug #381273
+BDEPEND="
+ ${RDEPEND}
+ nls? ( sys-devel/gettext )
+ test? ( sys-devel/bison )
+"
+PDEPEND="app-alternatives/lex"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-libobjdir.patch
+ "${FILESDIR}"/${P}-fix-build-with-glibc2.26.patch
+
+ "${WORKDIR}"/${P}-autotools-regenerate.patch
+)
+
+src_prepare() {
+ default
+
+ # Drop on next release when we can remove ${P}-autotools-regenerate.patch
+ touch configure.ac aclocal.m4 Makefile.in configure src/config.h.in || die
+
+ # Disable running in the tests/ subdir as it has a bunch of built sources
+ # that cannot be made conditional (automake limitation). bug #568842
+ if ! use test ; then
+ sed -i \
+ -e '/^SUBDIRS =/,/^$/{/tests/d}' \
+ Makefile.in || die
+ fi
+
+ # Prefix always needs this
+ elibtoolize
+}
+
+src_configure() {
+ use static && append-ldflags -static
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ # Do not install shared libs, #503522
+ ECONF_SOURCE="${S}" econf \
+ CC_FOR_BUILD="$(tc-getBUILD_CC)" \
+ --disable-shared \
+ $(use_enable nls)
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi; then
+ default
+ else
+ emake -C src -f Makefile -f - lib <<< 'lib: $(lib_LTLIBRARIES)'
+ fi
+}
+
+multilib_src_test() {
+ multilib_is_native_abi && emake check
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ default
+ else
+ emake -C src DESTDIR="${D}" install-libLTLIBRARIES install-includeHEADERS
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ dodoc ONEWS
+ find "${ED}" -name '*.la' -type f -delete || die
+ rm "${ED}"/usr/share/doc/${PF}/COPYING || die
+}
+
+pkg_postinst() {
+ # ensure to preserve the symlink before app-alternatives/lex
+ # is installed
+ if [[ ! -h ${EROOT}/usr/bin/lex ]]; then
+ ln -s flex "${EROOT}/usr/bin/lex" || die
+ fi
+}
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 f6ac329d9a..a753f8eb02 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
@@ -1,7 +1,6 @@
DIST gcc-10-20221006.tar.xz 71755692 BLAKE2B 0099821e5fcd5e1a069369a72f105607cb7f20fbef3d627a598d8c7a6439491e050533d6577b4f7953aabb52daf926ffc8eb9cecd8853833a14c90bd878e1ad9 SHA512 3fc1dceff31ec8a84babe31d88a312d9d3d30450ff0c42730b9a9fe45c0fc9509216fb95cd84df7477faebe2b9b7d8f7e269c9e76cecc05417dc6192e3b96c67
-DIST gcc-10-20221110.tar.xz 71760032 BLAKE2B 75f0f18c83021fb9ce5ed2501cefcda53463ee2256b6e594412020e8a27880f562880c5ae1e65a68b3da19e04de723fbaf8beee2fbbd5871eae5f4e05404b8de SHA512 3b836c26e4cf6896db3bd41d2140ac7b790fb9cd83a379dee832e4b38f92b56b88476bb86dbbece1bc3e2b348a912cbcaed0379f35994554a57689fb9b71f5d0
-DIST gcc-10-20221117.tar.xz 71762756 BLAKE2B d6b1d87d3b09dfe479f2fe21225d94f9f2aa310dba22b4f7f41a212e6d88378765dc2c244cf953394e5eabbd7e17f3d205b9933f7546023a875822120a2fbd83 SHA512 85ceff6524eb4f21e192a8213a75b127b911e01bfd4c9f1f7d1d6c8a6409608bccc009278152060213341b1c114f2330d54ad7b1d9bb7ed9213c1369ae434cef
DIST gcc-10-20221124.tar.xz 71781080 BLAKE2B ec7f4f140102d25a7469f7931df7b87b4b91c1c94fc263ecd9cc9aca36d120e9f5e09776efefba1099abe5282eb1cc4ec8201bcdca3a13c7b1bbdd6b34ad994d SHA512 b7af71bb2dd594643393b3e4dea4e641dcfad6e5249b6ee05617f0648ef2609b707b18f12f3985b3d13cbee6af0f799d7377c28092420b251b34e93f910e686e
+DIST gcc-10-20221201.tar.xz 72102628 BLAKE2B cfd245eb7c364b1480987d259a2c7b569d08830a3af656e6e493864ceda1eb8b0a8a67c405566a826c0c1bb044dc07a6123e6c53c5eac15882cb02a003e95214 SHA512 87da77d035688e033bb1b0c4f95df411a111d87499b18f3ecfb67d0550860243a58fdd5e4cec2d20535d2e3cc5261267fe26f11d2d03e7eb12b3f306b17eb961
DIST gcc-10.4.0-musl-patches-1.tar.xz 3808 BLAKE2B 804d1fcc451dcd03be71240dd498ec2d179869571d44012967c48dccf5a478dd8c55000a964a80fdd5584d739a777dee1c83241cffce514ef002df2572854a67 SHA512 83e4a9c0f7062baf0c606a2bcc56a818494991403d7577dea65f04bbc25bdb786a5889b80d45d80e7f4be07c1aef786802cbfcfafd1a17ec255a2d4e93a77570
DIST gcc-10.4.0-patches-5.tar.xz 17056 BLAKE2B f336d69a8ad105b8c4a84e8248a5b8a88175d3f1d67d32c6bee1780d252d86947059bd624992e6292610e86c9012f4d901a1a54df0d184dd023d404a0707700e SHA512 aa8fb42f20587f8519e7b06037da4d8f7d386b63e228b239a0445a51df4e401940fcd81482381d966622054aef3e0db06d1def5c74ac3d3dcc9c75c3b966c758
DIST gcc-10.4.0.tar.xz 75018092 BLAKE2B ec1169025d3896b70ab80a4b8ce5040763a95529fc7e120c6bc3a3eb1db5cf938ebde347c1e595a8ff7d4081e79ded6252702d7a1a09648449b7a0783188e434 SHA512 440c08ca746da450d9a1b35e8fd2305cb27e7e6987cd9d0f7d375f3b1fc9e4b0bd7acb3cd7bf795e72fcbead59cdef5b6c152862f5d35cd9fbfe6902101ce648
@@ -9,9 +8,8 @@ DIST gcc-10.5.0-musl-patches-1.tar.xz 3816 BLAKE2B 5995f934a40665d877342853fde8b
DIST gcc-10.5.0-patches-0.tar.xz 16188 BLAKE2B 3fe3163c4960ff02eb792b2d00b9b20e1c2b44ad2d2e79661ffa0a5795b1bb631bce83c506f485765a7b971e6d391ebc1803c327f0d8d06e457610f5d6074c90 SHA512 fde1fec92df535416221827d48daf7d498f675da5697bc15bb4e17ccfedf6e6705dd28f57a3c9ebc8065b49328246fa5aa1fd90bd88bc27fe2b7b3e924f0df15
DIST gcc-10.5.0-patches-1.tar.xz 17180 BLAKE2B d8ecc7cc15fa1ab420fa9eff11173a1d5544b369720e8c54fc59375e591ebd0a429b7e81a2a3df86bd2eaf19e4b8148bf2e1b0c8410de3944d4801ce412016b2 SHA512 5855aa23ee0b262c20a1b6fd2d4a947180c079dc00e0fa675043edceee0c822eec0dc752f5fcb281b70c04e50c6fcaf6c5d5160ab15d3f0c51fa030eb2d79d26
DIST gcc-11-20221007.tar.xz 75790520 BLAKE2B de52f7fc5c7f5f82d9cbaeaa13b216e149a4aac8162188c628007c17ddb40aa838d19f2ca18216e8bfe5df2d21438f10c8e87298b53cbde4359f72c9cff87589 SHA512 b785236a00647041c9ea4552e5ea82a09e23a801b029773ba77bfc03675c530369ad0b5fc279330f3d8dd4b9b40aeaa9de84a39b6397f73984b7e2fdf8f0bad2
-DIST gcc-11-20221111.tar.xz 75802080 BLAKE2B 7e49eefb17f3905b587d6de489820dd6aa6a8315b665872a5acad9a35b5431ab459bad426acafad5e0f9634b1bcd39db05726662f7577d0f4fcd49e2944df455 SHA512 bd9fad5e8ca94b5e1c3855141418c5067d27cb9bfde624c0a0c32131f837507e5c896238636d9ac4b0447eb368d80522d1dc1a2ea6f7b2f8259c729b61a4e879
-DIST gcc-11-20221118.tar.xz 75811664 BLAKE2B 97cdbbe114a46f149c89da8190ccb7c98bf8888540459ac50432dd461178d36a5f203bb89a1205fb89a5a8d80c3518b6b05b882f0c29cd1a88e3ca3a6d1a59d2 SHA512 6634ae0929c41541696684dd2809f7fd6cb3428aecb32e149b9ed26aff487c8f3ec089865ccb015281dd814f064875282cb360963bdd90b2eff0db27897602a7
DIST gcc-11-20221125.tar.xz 76248264 BLAKE2B c2fe15a14c77ce36f117d8d3bb78d38684e237db16db249134dd1e24d1455dfe7ca544fe22155b2c368dc6658b96d626af87d47478aaf94c216eb84b469e43e9 SHA512 3efbd7dc4cbf748d41369bff5bedb586a1c9397fa7fa56be7869e62bd567273b056aeec01a4191783bad737640e163489f1b368fcaac3155ae3ac8f7b33f478d
+DIST gcc-11-20221202.tar.xz 76241508 BLAKE2B 313a73cf579a1899996b35494484debbb3c5aa13cd90f54830e30e962d9df2eee059bb3afd429fb3a3e7cb6a889c8c7d03a22a64e57d8d3e046b0c8c431847e3 SHA512 6c8e4654041d84129d94a7317a125348d2d3db4f1029ad069bd271ae11e51f80adfabf970634f6faca52356891a6a87a503ba9421750d6e0a11527ec7fa7bd91
DIST gcc-11.3.0-musl-patches-1.tar.xz 3856 BLAKE2B f511f8b4c0696771d906beee9645b5d009ea4b673602baa1ca562d6f23c5b0caf2012aae93578671624617c4286e3937d79a7383d6a03bb438c5b774a06fe8e6 SHA512 cd375ff2affb213475acaabf02989b1f05d719d972970ea0304d20a816986807390893d1401826f3b497787642f35d90a244195f8e466db41e8d768366057334
DIST gcc-11.3.0-patches-7.tar.xz 15184 BLAKE2B 426f00feaa982a35d2c459e7a2c2e9d29b4b467ac3625ebd72bb31077c75bbf0c028137df03921c52ddc97a14d92c49777bd3f27b47a7b47d8a05e2d106b6bdb SHA512 bec8bf26b3e50633a5a2e0bb75ffeaba86becb704c14365ff3342e8d651ab75bb3ceec7808d88a25989b8c7182398184b95b6d1267aaef9aa828f687e4895e9d
DIST gcc-11.3.0.tar.xz 81141364 BLAKE2B 7e562d25446ca4ab9fe8cdb714866f66aba3744d78bf84f31bfb097c1a981e4c7f990cb1e6bcfec5ae6671836a4984e2b70eb8fed81dcef5e244f88da8623469 SHA512 f0be5ad705c73b84477128a69c047f57dd47002f375eb60e1e842e08cf2009a509e92152bca345823926d550b7395ae6d4de7db51d1ee371c2dc37313881fca7
@@ -19,17 +17,18 @@ DIST gcc-11.4.0-musl-patches-0.tar.xz 3844 BLAKE2B f3f1be6718e3cf08e553a1a2319a8
DIST gcc-11.4.0-patches-2.tar.xz 14224 BLAKE2B d3030c19a7bd8bd082fd39b35c3e80883ae541ab28232513ba60095fe81f5fe1fbdc54829a1556b2d278328033f6eb8a81e9ee268a6020b554388a60842b02e6 SHA512 60aa19f00fb29b7c8a68c73de274e24559dc896f551d47153ea511b202941caa950c0aff62ad28d057a8ed16f2aec2c06e681e7286d65ab3610b6948d7bb840a
DIST gcc-11.4.0-patches-3.tar.xz 15200 BLAKE2B a393df941a2a31164f477d6bc0032e28319e8f0bd87200eb453708f85aa8c0bf5d67e733ee7b75cf6d14743e18cc941cee1b77a8247f8c5683d17a98cbeb280f SHA512 6f6096d95c7c62780d1070097739882393a8df5172c3a5ae811a8d4d1c98a0cd14a34f3f7e95410c8f210aec434330ac3b8876c688faeb130d7bb8fa3333ece9
DIST gcc-12-20221008.tar.xz 79145884 BLAKE2B ff3d684d887e282c79fe95952a449ed5770d4bd74077553baf31c34dbd77177e680b19ac741c04aab26ac2c9bb2b89924f51f63e2f22b440decf2c65274a7640 SHA512 a35a6207e7f4375abca3ae57376c98b082846a88e83522c322d713e759367ceb2b3ad68488bed6f1645e47a106b0bbb2efbca6cb14b077672289acb4373e616f
-DIST gcc-12-20221112.tar.xz 79163888 BLAKE2B 996e72ea0aa592701d628b78a0b0637d4a0dad799aece4d6a5b84d6aefee983b153782cafa5a3f4580ddcb90d78bd89b27f7191fddbc6d778933642a917781d5 SHA512 3901c2c96f25884b6f329558bd044051ca6daa0bcaccd85a9bb1079a07bca08d782374b396b5c7e7d2e2da6595b9860507807d141c9cc86f504e7e288ce8da06
-DIST gcc-12-20221119.tar.xz 79163968 BLAKE2B 76eaf75958b332a21fcb185c045c994eee76caeae2abfc7d2a3656a0d0871c2ba346278e9c2c926b1d5f211798a106a983c3fe8a598d3c46384586a72369008b SHA512 9ce92bd2042f32d2a650f0e4f102202ff2f6b7592fdeeeabf0c1beb1b9b96312f9cb216b5d912e68bc8ff4c943be03a0fc200fcd00bc4fa210ee8e49e15c2a50
+DIST gcc-12-20221126.tar.xz 79631864 BLAKE2B 3bb97ef4a1a17ab8b92b431b1f792c11131085a1b523efa08c5b4f995b44bf628be371564813e5affb1f8e2320bb8a9b04532e57b2deeef26b33f517783daa5e SHA512 163e0aa39dc5c24980f84000bd6ccd4b7c24581831b7a4cdbd63e4726be5c2b1933d034ce12c65cf95e4c0ebe1175af7e32facace465bfd7c7c377401350a2df
+DIST gcc-12-20221203.tar.xz 79639180 BLAKE2B 5b237eca5934c6ea869d50396279b0bbb72c9377f71c7ad9b457d1e2422337f7ff6c9cd8021f3c9f94f62b1d31348d550ed3afe49f4231099bb889c27c2c23cb SHA512 87ebbf26544e0b4e20fc36dffcb343bc074603e409e204079f3559f4b336da98af7d1c702254a54ad243c230aca60027f80029f14d7c0ff7ee13e31ecf9b73d7
DIST gcc-12.2.0-musl-patches-1.tar.xz 3844 BLAKE2B 004432806696f7d0a32366270ac45695e858abee73a255e44dc6e0a225339e4cad40aab0d51dfe9a55d5aa4b4001f5726064bb2eea3212a0874b2d27e229abd7 SHA512 c354edcd641a9dfaf902a0ff4c44c75065d0cf1c36bbf6c3c35c2e23bff22b8f70bcf4458a5a0ef86371e9f2fafca8a54ca822e35820ff442c9458a2819c3606
DIST gcc-12.2.0-patches-1.tar.xz 12864 BLAKE2B a5ae0a85dfc1b6f0bd968f0d5262ebed14ec9cdb3249e3a4c571578c54eda0e53708ee7fe8e03e506366c7f3cf7926eced9b390d9dee948c1249298c0fabd9fb SHA512 f3d793b89a2a0385d596162fb0c653d4acdf21ae418cb792c1786a01fde0391bd0719715dbf07d53636f127168f5cd99108a1dc11cf6cea889b7d82385bcc258
DIST gcc-12.2.0-patches-2.tar.xz 13952 BLAKE2B a9e798911acaf45c3f585f69721130cfbecec016727a50ac0f4767b37a2ab9df39e0828abb07f1e429619cc102808f81af8422fef0265415c287d303d9d97fc0 SHA512 1808a05e98094577099d115ff5f3e136e3fc8f39fbe35c5183fd7775383f94439212e5e4174ab8d0ae8c0874e227ff84a958ffdfa1c99c9a8306a9842d126ef9
+DIST gcc-12.2.0-patches-3.tar.xz 13972 BLAKE2B 46d61854059c190525f26e411273623cc8a89b33fb9387fcd08545e244b244fc7c895eb630bc96ccc63a084c3010801c7b9d0bdb69ea8a70e034daf2d57ca51c SHA512 7e240992c59fade5e35357ebd69c1439dbadcbc1f850dc3b5360765cf899a67c662d4fe8b8eb8cf60186e7009b16dee92bc44424b9d55164d62c3d62fec7ccf4
DIST gcc-12.2.0.tar.xz 84645292 BLAKE2B 715574af9ad678f9dc8cfd19c866bf910c7edfd479e7e9681337feaa9b54e5d304ddb85483816b8d89754d502405823ae2eff0d1e444538763f40be8e428d8da SHA512 e9e857bd81bf7a370307d6848c81b2f5403db8c7b5207f54bce3f3faac3bde63445684092c2bc1a2427cddb6f7746496d9fbbef05fbbd77f2810b2998f1f9173
-DIST gcc-13-20221030.tar.xz 80108908 BLAKE2B 53ea6d13e5cf747d6dae515db5c07ba53580218dc0e5c4ce9dad48ce8ab968bc0fc51309169d991ad701beab3cf1bc2c15438d38f69dd642edf6d1f186e381cf SHA512 036034a1fa7883f9f9c224a3b4cf0a8e369d06882bff17c40a38a275f14928f546686b093b50e6c01664b90ee81addf24b4a513bf072a72e0f59f7f890ff1cca
DIST gcc-13-20221106.tar.xz 80001320 BLAKE2B 4a86b5aedf67725b577a69112ab241b22b3b0eed6c86e2d9ed06e5045a1de1c4bc6f2e7a281f1a034b9b227e5ef72954d17900369bed6015e064f303c89e6cf2 SHA512 bd3160d23bdebd0e423800736212e340eab0a71891d579145d85931fe8fa3c9e196a3422d70a98e17d1990759bf57b3e4eb08b25544db5e4fec8448d1a33ee20
-DIST gcc-13-20221120.tar.xz 80199576 BLAKE2B 7f7f19feabfcc57684141c540d4a95f6cff96d2f68824cdf9b1e8351058740d999a3865f5b5ad893bb34f59399980416a772e94fddbca813f12ec4339e0b9871 SHA512 5e4fce946a2c815e41e28120eb0fb8f1f6003f6c1ec9000baae2143f343bacb3aeb3b9034ccb67b18bd519ef98953305de7d643e1b25c4908de635491fae48d9
-DIST gcc-13.0.0-patches-1.tar.xz 11064 BLAKE2B 82a7ad193dac00475931840bcee82ef7a51718a74af224b03a41f8349e34c2a64a3eb29985b4e2bffde958c58782242eccaedaa54d950e8d51d8bb6f45868e0e SHA512 e04b510f529dd3187a08ae9cb9a894a3d3d30af81f13c43cc082fda7d26c44a3bf19d36ec02024b2ade8b8c193e9730246abeadee603c41b5873c5b785709921
+DIST gcc-13-20221127.tar.xz 80684196 BLAKE2B 6c5bdb5f5f7c624d60a37113c09a1a97a44839849623d860af06dcf2883f7fafde286245aac6e06938ba25a3fd05588c77f73311d246ec08a22260874fb45112 SHA512 aedf3817200ce8a08afa0bd979a660de42d86aabf6c0a9028f5f34ba7d5f5b45bc4abaf35ecd62d1f8d4fac05e8a003ab7358e8a7114b8d0d63d61c1695da4c6
+DIST gcc-13-20221204.tar.xz 80748844 BLAKE2B a5ea8a72b475991602ebff668e50f03e1c9343083e33d3f1a02499fed59cdd6214743567e79d866851ed4506cabc2ff52b6e1634eabfff9deca19d4402382d36 SHA512 b40b800d4369cb899f0a8224d15e7a78f6b182d8490de01ab1520647862263cc478f49f021172c91c2c6d39cbbc4ec92e18644cf3bab5a0df44dabbc3b7c6702
DIST gcc-13.1.0-patches-2.tar.xz 9924 BLAKE2B 568f8b9e31974f4991bd922436373320118a6fe07b7e9fe0127952894bdebc5e8684f66e645a3a5684717c687e9bb6074508972b61a3eb692c6e5f23e46359cf SHA512 9fed795ce3aa423e223864b750e50419343bbb36f53e938a691f189e954acb3a4efec4aafe466bafb3556a04c78bf68d19e3e60ffd0a2be490ea821d98e92dc9
+DIST gcc-13.1.0-patches-3.tar.xz 10984 BLAKE2B b032049090732e39c94788f4014a463e82fe186ad9ca5ca7ec1d522dfc4499bd2c229bc3bed7ed1d4e1e5f196444037acdea8b865d62c164d6daf307f949e307 SHA512 940d5f1e7f8cb48e9e6d63b5cd31dc5e4bd1669c78b3adfa6b7c30d3f85d8de4f26c1db4e3727f3789b1d439d07d3eeb9a8120f45693da6c2e6d9ca27e264941
DIST gcc-8.5.0-patches-2.tar.bz2 16921 BLAKE2B 619a47f74edf05fa01c9de59d0ff7abb027a01cf0bdec91ac41046166192f4eae561684136c4a6a5e077f64754bb5b0710905129f31b0def21d88f92e6bba7fb SHA512 b6095d4570895e2c4dd58fed5756194aea27391b813e5e2de42b2749cb318c4bea2087eb0ff92c70e7f98ae4482c49d476db57be83d7beb19fd462aa61714ab2
DIST gcc-8.5.0.tar.xz 63841008 BLAKE2B aa81a1a730fd7371360f6abed6ba78b5843fd18c58d5de5687acc320741b9e430e85df3535a1ef7a26051409be8d2f0945f503e5968480d919103123a99d4b12 SHA512 92f599680e6b7fbce88bcdda810f468777d541e5fddfbb287f7977d51093de2a5178bd0e6a08dfe37090ea10a0508a43ccd00220041abbbec33f1179bfc174d8
DIST gcc-9.5.0-patches-1.tar.xz 13772 BLAKE2B 2e2e84a28a729cd271a23716ff3fe08b7209b72254af279f04dd15dbd39482fb7d905dc9293dc326536e14bca9a53397bd7e1c4b617ed8cbe42bcf617fcce3fb SHA512 50e292e665bfae18bf71c0714074025b4f7cb87042862071815874f7c5b241acac3b8f60d85b8970b11978103c2e7616c02d789f6c3b091d7b736b65c535b743
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-10.4.1_p20221110.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-10.4.1_p20221110.ebuild
deleted file mode 100644
index bb60337891..0000000000
--- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-10.4.1_p20221110.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-TOOLCHAIN_PATCH_SUFFIX="xz"
-TOOLCHAIN_PATCH_DEV="sam"
-#TOOLCHAIN_GCC_RC=1
-PATCH_GCC_VER="10.5.0"
-PATCH_VER="0"
-MUSL_VER="1"
-MUSL_GCC_VER="10.5.0"
-
-if [[ $(ver_cut 3) == 9999 ]] ; then
- MY_PV_2=$(ver_cut 2)
- if [[ ${MY_PV_2} == 0 ]] ; then
- MY_PV_2=0
- else
- MY_PV_2=$(($(ver_cut 2) - 1))
- fi
-
- # e.g. 12.2.9999 -> 12.1.1
- TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.$(($(ver_cut 3) - 9998))
-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="https://gcc.gnu.org/pub/gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
- TOOLCHAIN_SET_S=no
- S="${WORKDIR}"/${MY_P}
-fi
-
-inherit toolchain
-# Needs to be after inherit (for now?), bug #830908
-EGIT_BRANCH=releases/gcc-$(ver_cut 1)
-
-# Don't keyword live ebuilds
-#if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
-# KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-#fi
-
-RDEPEND=""
-BDEPEND="${CATEGORY}/binutils"
-
-src_prepare() {
- local p upstreamed_patches=(
- # add them here
- )
- for p in "${upstreamed_patches[@]}"; do
- rm -v "${WORKDIR}/patch/${p}" || die
- done
-
- if has_version '>=sys-libs/glibc-2.32-r1'; then
- rm -v "${WORKDIR}/patch/23_all_disable-riscv32-ABIs.patch" || die
- fi
-
- toolchain_src_prepare
-}
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-10.4.1_p20221117.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-10.4.1_p20221201.ebuild
similarity index 100%
rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-10.4.1_p20221117.ebuild
rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-10.4.1_p20221201.ebuild
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.3.1_p20221111.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.3.1_p20221111.ebuild
deleted file mode 100644
index 4c05022129..0000000000
--- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.3.1_p20221111.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-TOOLCHAIN_PATCH_SUFFIX="xz"
-TOOLCHAIN_PATCH_DEV="sam"
-PATCH_VER="2"
-PATCH_GCC_VER="11.4.0"
-MUSL_VER="0"
-MUSL_GCC_VER="11.4.0"
-
-if [[ $(ver_cut 3) == 9999 ]] ; then
- MY_PV_2=$(ver_cut 2)
- if [[ ${MY_PV_2} == 0 ]] ; then
- MY_PV_2=0
- else
- MY_PV_2=$(($(ver_cut 2) - 1))
- fi
-
- # e.g. 12.2.9999 -> 12.1.1
- TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.$(($(ver_cut 3) - 9998))
-fi
-
-inherit toolchain
-# Needs to be after inherit (for now?), bug #830908
-EGIT_BRANCH=releases/gcc-$(ver_cut 1)
-
-# Don't keyword live ebuilds
-#if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
-# KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-#fi
-
-# 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}"
-BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]"
-
-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-11.3.1_p20221118.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.3.1_p20221202.ebuild
similarity index 86%
rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.3.1_p20221118.ebuild
rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.3.1_p20221202.ebuild
index d6ead8b3a5..f9fe9db4f2 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.3.1_p20221118.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.3.1_p20221202.ebuild
@@ -27,9 +27,9 @@ inherit toolchain
EGIT_BRANCH=releases/gcc-$(ver_cut 1)
# Don't keyword live ebuilds
-#if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
-# KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-#fi
+if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
# 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.
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.2.1_p20221119.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.2.1_p20221126.ebuild
similarity index 100%
rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.2.1_p20221119.ebuild
rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.2.1_p20221126.ebuild
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.2.1_p20221112.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.2.1_p20221203.ebuild
similarity index 86%
rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.2.1_p20221112.ebuild
rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.2.1_p20221203.ebuild
index 97d104a847..47a0ea215e 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.2.1_p20221112.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.2.1_p20221203.ebuild
@@ -4,7 +4,7 @@
EAPI=8
TOOLCHAIN_PATCH_DEV="sam"
-PATCH_VER="1"
+PATCH_VER="3"
PATCH_GCC_VER="12.2.0"
MUSL_VER="1"
MUSL_GCC_VER="12.2.0"
@@ -34,9 +34,9 @@ inherit toolchain
EGIT_BRANCH=releases/gcc-$(ver_cut 1)
# Don't keyword live ebuilds
-#if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
-# KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-#fi
+if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
# 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.
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.0.0_pre20221120.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.0.0_pre20221127.ebuild
similarity index 90%
rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.0.0_pre20221120.ebuild
rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.0.0_pre20221127.ebuild
index 9823b3d1be..9d34def24f 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.0.0_pre20221120.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.0.0_pre20221127.ebuild
@@ -3,7 +3,8 @@
EAPI=8
-TOOLCHAIN_PATCH_DEV="sam"
+TOOLCHAIN_PATCH_DEV="soap"
+PATCH_VER="3"
PATCH_GCC_VER="13.1.0"
MUSL_GCC_VER="13.1.0"
@@ -26,9 +27,10 @@ inherit toolchain
EGIT_BRANCH=master
# Don't keyword live ebuilds
-#if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
+if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
# KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-#fi
+ KEYWORDS="~loong"
+fi
# 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.
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.0.0_pre20221030.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.0.0_pre20221204.ebuild
similarity index 88%
rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.0.0_pre20221030.ebuild
rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.0.0_pre20221204.ebuild
index 641ab05e81..9d34def24f 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.0.0_pre20221030.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.0.0_pre20221204.ebuild
@@ -3,10 +3,10 @@
EAPI=8
-TOOLCHAIN_PATCH_DEV="xen0n"
-PATCH_VER="1"
-PATCH_GCC_VER="13.0.0"
-MUSL_GCC_VER="13.0.0"
+TOOLCHAIN_PATCH_DEV="soap"
+PATCH_VER="3"
+PATCH_GCC_VER="13.1.0"
+MUSL_GCC_VER="13.1.0"
if [[ $(ver_cut 3) == 9999 ]] ; then
MY_PV_2=$(ver_cut 2)
@@ -28,7 +28,7 @@ EGIT_BRANCH=master
# Don't keyword live ebuilds
if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+# KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
KEYWORDS="~loong"
fi
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/metadata.xml b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/metadata.xml
index 5aef84a213..8c2257393b 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/metadata.xml
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/metadata.xml
@@ -9,9 +9,12 @@
Build the ADA language (GNAT) frontend
Enable support for Intel Control Flow Enforcement Technology (CET)
Enable support for the D programming language
+ Build packages with stack clash protection on by default
+ Request full relocation on start from ld.so by default
Enable fixed-point arithmetic support for MIPS targets in gcc (Warning: significantly increases compile time!)
Build the GCC Go language frontend.
Add support for the framework for loop optimizations based on a polyhedral intermediate representation
+ Use accelerated 128-bit IEEE long double ABI (ppc64le only)
Enable libgccjit so other applications can embed gcc for Just-In-Time compilation.
Build SSP support into a dedicated library rather than use the code in the C library (DO NOT ENABLE THIS IF YOU DON'T KNOW WHAT IT DOES)
Build using Link Time Optimizations (LTO)
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.21.1.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.21.1.ebuild
index d4ff1e51aa..654d28fe3f 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.21.1.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.21.1.ebuild
@@ -17,7 +17,7 @@ if [[ ${PV} == *_rc* ]] ; then
else
SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
fi
# Only libasprintf is under the LGPL (and libintl is in a sep package),
# so put that license behind USE=cxx.
diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/multipath-tools/multipath-tools-0.9.3-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/multipath-tools/multipath-tools-0.9.3-r2.ebuild
new file mode 100644
index 0000000000..ff744e92c0
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-fs/multipath-tools/multipath-tools-0.9.3-r2.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info systemd toolchain-funcs udev tmpfiles
+
+DESCRIPTION="Device mapper target autoconfig"
+HOMEPAGE="http://christophe.varoqui.free.fr/"
+SRC_URI="https://github.com/opensvc/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~loong ppc ppc64 ~riscv x86"
+IUSE="systemd test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-libs/json-c:=
+ dev-libs/libaio
+ dev-libs/userspace-rcu:=
+ >=sys-fs/lvm2-2.02.45
+ >=virtual/libudev-232-r3
+ sys-libs/readline:=
+ systemd? ( sys-apps/systemd )"
+DEPEND="${RDEPEND}
+ test? ( dev-util/cmocka )"
+BDEPEND="virtual/pkgconfig"
+
+CONFIG_CHECK="~DM_MULTIPATH"
+
+src_prepare() {
+ default
+
+ sed -r -i -e '/^(CPPFLAGS|CFLAGS)\>/s,^(CPPFLAGS|CFLAGS)\>[[:space:]]+:=,\1 := $(GENTOO_\1),' \
+ "${S}"/Makefile.inc || die
+}
+
+src_compile() {
+ tc-export CC
+
+ # LIBDM_API_FLUSH involves grepping files in /usr/include,
+ # so force the test to go the way we want #411337.
+ emake \
+ prefix="${EPREFIX}/usr" \
+ plugindir="${EPREFIX}/$(get_libdir)/multipath" \
+ LIB="$(get_libdir)" \
+ LIBDM_API_FLUSH=1 \
+ PKGCONFIG="$(tc-getPKG_CONFIG)" \
+ GENTOO_CFLAGS="${CFLAGS}" \
+ GENTOO_CPPFLAGS="${CPPFLAGS}" \
+ FAKEVAR=1
+}
+
+src_install() {
+ dodir /sbin
+
+ # Please clean this up > 0.9.3: https://github.com/opensvc/multipath-tools/pull/53
+ # $(prefix) doesn't work correctly in makefile in 0.9.3.
+ emake \
+ DESTDIR="${ED}" \
+ prefix="${EPREFIX}" \
+ LIB="$(get_libdir)" \
+ RUN=run \
+ plugindir="${EPREFIX}/$(get_libdir)/multipath" \
+ unitdir="$(systemd_get_systemunitdir)" \
+ libudevdir="${EPREFIX}/$(get_udevdir)" \
+ pkgconfdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig" \
+ GENTOO_CFLAGS="${CFLAGS}" \
+ GENTOO_CPPFLAGS="${CPPFLAGS}" \
+ install
+
+ rmdir "${ED}"/usr/include
+ rmdir "${ED}"/usr/share
+ mv "${ED}"/include "${ED}"/usr/include || die
+ mv "${ED}"/share "${ED}"/usr/share || die
+ einstalldocs
+
+ newinitd "${FILESDIR}"/multipathd-r1.rc multipathd
+ newinitd "${FILESDIR}"/multipath.rc multipath
+
+ find "${ED}" -type f -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ tmpfiles_process /usr/lib/tmpfiles.d/multipath.conf
+ udev_reload
+
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ elog "If you need multipath on your system, you must"
+ elog "add 'multipath' into your boot runlevel!"
+ fi
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libcap/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/libcap/Manifest
index 7bdbf7329d..361498a897 100644
--- a/sdk_container/src/third_party/portage-stable/sys-libs/libcap/Manifest
+++ b/sdk_container/src/third_party/portage-stable/sys-libs/libcap/Manifest
@@ -1,2 +1 @@
-DIST libcap-2.65.tar.xz 179852 BLAKE2B 9417c5c22fa2fc03df08667dca802c2e190f17af3cda86021de175bd315cbef8607cff51ee2a9c0b6cee7a09c536dbdc43c01549e0540c335966f0afaf9268c3 SHA512 de34cd7fecfe9b688ee08e56c71d4f39a3a05f6414f88577faaadfcd5111a0ae1824af3e76a5b8199131a8df6e87e47fdcb3570c364999e4626f2ab8fafb8671
DIST libcap-2.66.tar.xz 181592 BLAKE2B e79bf10c6a3dbffe96dc97aad0bed67caa0b3805d9dcaff1e4a8a833396ee5c6da4f7f0d321b254e99a00073bc39021b9f3a4b350d93094d0df4d74889b3ca56 SHA512 ac005b622f6e065f30ce282a5c87240e7b9da75366ee537aa4835bc501b44bc242c10a4ba4dc070e2415fc7f635d1c3c4e45fbeeaf962cf7973dda82bf6377f0
diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libcap/libcap-2.65.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libcap/libcap-2.65.ebuild
deleted file mode 100644
index 264d6b5c9a..0000000000
--- a/sdk_container/src/third_party/portage-stable/sys-libs/libcap/libcap-2.65.ebuild
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib-minimal toolchain-funcs pam usr-ldscript
-
-if [[ ${PV} == *9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/libs/libcap/libcap.git"
-else
- SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz"
-
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
-fi
-
-DESCRIPTION="POSIX 1003.1e capabilities"
-HOMEPAGE="https://sites.google.com/site/fullycapable/"
-
-# it's available under either of the licenses
-LICENSE="|| ( GPL-2 BSD )"
-SLOT="0"
-IUSE="pam static-libs tools"
-
-# While the build system optionally uses gperf, we don't DEPEND on it because
-# the build automatically falls back when it's unavailable. #604802
-PDEPEND="pam? ( sys-libs/pam[${MULTILIB_USEDEP}] )"
-DEPEND="${PDEPEND}
- sys-kernel/linux-headers"
-BDEPEND="
- sys-apps/diffutils
- tools? ( dev-lang/go )"
-
-QA_FLAGS_IGNORED="sbin/captree" # go binaries don't use LDFLAGS
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.62-ignore-RAISE_SETFCAP-install-failures.patch
-)
-
-src_prepare() {
- default
- multilib_copy_sources
-}
-
-run_emake() {
- local args=(
- AR="$(tc-getAR)"
- CC="$(tc-getCC)"
- OBJCOPY="$(tc-getOBJCOPY)"
- RANLIB="$(tc-getRANLIB)"
- exec_prefix="${EPREFIX}"
- lib_prefix="${EPREFIX}/usr"
- lib="$(get_libdir)"
- prefix="${EPREFIX}/usr"
- PAM_CAP="$(usex pam yes no)"
- DYNAMIC=yes
- GOLANG="$(multilib_native_usex tools yes no)"
- )
- emake "${args[@]}" "$@"
-}
-
-src_configure() {
- tc-export_build_env BUILD_CC
- multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
- run_emake
-}
-
-multilib_src_test() {
- run_emake test
-}
-
-multilib_src_install() {
- # no configure, needs explicit install line #444724#c3
- run_emake DESTDIR="${D}" install
-
- gen_usr_ldscript -a cap
- gen_usr_ldscript -a psx
- if ! use static-libs ; then
- rm "${ED}"/usr/$(get_libdir)/lib{cap,psx}.a || die
- fi
-
- # install pam plugins ourselves
- rm -rf "${ED}"/usr/$(get_libdir)/security || die
-
- if use pam ; then
- dopammod pam_cap/pam_cap.so
- dopamsecurity '' pam_cap/capability.conf
- fi
-}
-
-multilib_src_install_all() {
- dodoc CHANGELOG README doc/capability.notes
-}
diff --git a/sdk_container/src/third_party/portage-stable/virtual/awk/awk-1.ebuild b/sdk_container/src/third_party/portage-stable/virtual/awk/awk-1.ebuild
deleted file mode 100644
index 1d8e9c62e9..0000000000
--- a/sdk_container/src/third_party/portage-stable/virtual/awk/awk-1.ebuild
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Virtual for awk implementation"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-RDEPEND="
- || (
- >=sys-apps/gawk-4.0.1-r1
- sys-apps/mawk
- sys-apps/nawk
- sys-apps/busybox
- )"
diff --git a/sdk_container/src/third_party/portage-stable/virtual/awk/metadata.xml b/sdk_container/src/third_party/portage-stable/virtual/awk/metadata.xml
deleted file mode 100644
index 38ea143bad..0000000000
--- a/sdk_container/src/third_party/portage-stable/virtual/awk/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
- junghans@gentoo.org
- Christoph Junghans
-
-
- base-system@gentoo.org
- Gentoo Base System
-
-
-
diff --git a/sdk_container/src/third_party/portage-stable/virtual/yacc/metadata.xml b/sdk_container/src/third_party/portage-stable/virtual/yacc/metadata.xml
deleted file mode 100644
index de9d784241..0000000000
--- a/sdk_container/src/third_party/portage-stable/virtual/yacc/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
- base-system@gentoo.org
- Gentoo Base System
-
-
-