Merge pull request #3271 from flatcar/buildbot/weekly-portage-stable-package-updates-2025-09-15

Weekly portage-stable package updates 2025-09-15
This commit is contained in:
Krzesimir Nowak 2025-09-17 16:35:48 +02:00 committed by GitHub
commit 4987cd34a2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
159 changed files with 4349 additions and 2613 deletions

View File

@ -0,0 +1,3 @@
- libpcre2 ([CVE-2025-58050](https://www.cve.org/CVERecord?id=CVE-2025-58050))
- libxslt ([CVE-2025-7424](https://www.cve.org/CVERecord?id=CVE-2025-7424), [CVE-2025-7425](https://www.cve.org/CVERecord?id=CVE-2025-7425))
- net-tools ([CVE-2025-46836](https://www.cve.org/CVERecord?id=CVE-2025-46836))

View File

@ -0,0 +1,12 @@
- SDK: azure-core ([1.16.1](https://github.com/Azure/azure-sdk-for-cpp/releases/tag/azure-core_1.16.1))
- SDK: azure-identity ([1.13.1](https://github.com/Azure/azure-sdk-for-cpp/releases/tag/azure-identity_1.13.1))
- base, dev: coreutils ([9.7](https://lists.gnu.org/archive/html/info-gnu/2025-04/msg00006.html) (includes [9.6](https://savannah.gnu.org/news/?id=10715)))
- base, dev: libffi ([3.5.2](https://github.com/libffi/libffi/releases/tag/v3.5.2))
- base, dev: libnftnl ([1.3.0](https://lwn.net/Articles/1032725/))
- base, dev: libxml2 ([2.13.9](https://gitlab.gnome.org/GNOME/libxml2/-/releases/v2.13.9))
- base, dev: ncurses ([6.5_p20250802](https://invisible-island.net/ncurses/NEWS.html#t20250802))
- base, dev: nftables ([1.1.4](https://www.netfilter.org/projects/nftables/files/changes-nftables-1.1.4.txt))
- dev, sysext-incus: squashfs-tools ([4.7.2](https://github.com/plougher/squashfs-tools/releases/tag/4.7.2) (includes [4.7.1](https://github.com/plougher/squashfs-tools/releases/tag/4.7.1)))
- sysext-podman: gpgme ([2.0.0](https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gpgme.git;a=blob_plain;f=NEWS;h=cd0e093bf83fe47b6773fb478fced07d8409fbe0;hb=e17ba578861905857da0a514b4fc9b88a57f7346))
- sysext-python: charset-normalizer ([3.4.3](https://github.com/jawah/charset_normalizer/releases/tag/3.4.3))
- sysext-python: pip ([25.2](https://raw.githubusercontent.com/pypa/pip/refs/tags/25.2/NEWS.rst))

View File

@ -0,0 +1,99 @@
From 345d6826d0eae6f0a962456b8ed6f6a1bad0877d Mon Sep 17 00:00:00 2001
From: David Kilzer <ddkilzer@apple.com>
Date: Sat, 24 May 2025 15:06:42 -0700
Subject: [PATCH] libxslt: Type confusion in xmlNode.psvi between stylesheet
and source nodes
* libxslt/functions.c:
(xsltDocumentFunctionLoadDocument):
- Implement fix suggested by Ivan Fratric. This copies the xmlDoc,
calls xsltCleanupSourceDoc() to remove pvsi fields, then adds the
xmlDoc to tctxt->docList.
- Add error handling for functions that may return NULL.
* libxslt/transform.c:
- Remove static keyword so this can be called from
xsltDocumentFunctionLoadDocument().
* libxslt/transformInternals.h: Add.
(xsltCleanupSourceDoc): Add declaration.
Fixes #139.
---
libxslt/functions.c | 16 +++++++++++++++-
libxslt/transform.c | 3 ++-
libxslt/transformInternals.h | 9 +++++++++
3 files changed, 26 insertions(+), 2 deletions(-)
create mode 100644 libxslt/transformInternals.h
diff --git a/libxslt/functions.c b/libxslt/functions.c
index 72a58dc4..11ec039f 100644
--- a/libxslt/functions.c
+++ b/libxslt/functions.c
@@ -34,6 +34,7 @@
#include "numbersInternals.h"
#include "keys.h"
#include "documents.h"
+#include "transformInternals.h"
#ifdef WITH_XSLT_DEBUG
#define WITH_XSLT_DEBUG_FUNCTION
@@ -125,7 +126,20 @@ xsltDocumentFunctionLoadDocument(xmlXPathParserContextPtr ctxt,
/*
* This selects the stylesheet's doc itself.
*/
- doc = tctxt->style->doc;
+ doc = xmlCopyDoc(tctxt->style->doc, 1);
+ if (doc == NULL) {
+ xsltTransformError(tctxt, NULL, NULL,
+ "document() : failed to copy style doc\n");
+ goto out_fragment;
+ }
+ xsltCleanupSourceDoc(doc); /* Remove psvi fields. */
+ idoc = xsltNewDocument(tctxt, doc);
+ if (idoc == NULL) {
+ xsltTransformError(tctxt, NULL, NULL,
+ "document() : failed to create xsltDocument\n");
+ xmlFreeDoc(doc);
+ goto out_fragment;
+ }
} else {
goto out_fragment;
}
diff --git a/libxslt/transform.c b/libxslt/transform.c
index 54ef821b..38c2dce6 100644
--- a/libxslt/transform.c
+++ b/libxslt/transform.c
@@ -43,6 +43,7 @@
#include "xsltlocale.h"
#include "pattern.h"
#include "transform.h"
+#include "transformInternals.h"
#include "variables.h"
#include "numbersInternals.h"
#include "namespaces.h"
@@ -5757,7 +5758,7 @@ xsltCountKeys(xsltTransformContextPtr ctxt)
*
* Resets source node flags and ids stored in 'psvi' member.
*/
-static void
+void
xsltCleanupSourceDoc(xmlDocPtr doc) {
xmlNodePtr cur = (xmlNodePtr) doc;
void **psviPtr;
diff --git a/libxslt/transformInternals.h b/libxslt/transformInternals.h
new file mode 100644
index 00000000..d0f42823
--- /dev/null
+++ b/libxslt/transformInternals.h
@@ -0,0 +1,9 @@
+/*
+ * Summary: set of internal interfaces for the XSLT engine transformation part.
+ *
+ * Copy: See Copyright for the status of this software.
+ *
+ * Author: David Kilzer <ddkilzer@apple.com>
+ */
+
+void xsltCleanupSourceDoc(xmlDocPtr doc);
--
2.39.5 (Apple Git-154)

View File

@ -0,0 +1,2 @@
The libxslt project in unmaintained, so we will need to carry the
patch indefinitely.

View File

@ -0,0 +1,87 @@
From 7a8f42fb20013a1493d8cae1c43436f85e656f2d Mon Sep 17 00:00:00 2001
From: Zephkeks <zephyrofficialdiscord@gmail.com>
Date: Tue, 13 May 2025 11:04:17 +0200
Subject: [PATCH] CVE-2025-46836: interface.c: Stack-based Buffer Overflow in
get_name()
Coordinated as GHSA-pfwf-h6m3-63wf
---
lib/interface.c | 63 ++++++++++++++++++++++++++++++-------------------
1 file changed, 39 insertions(+), 24 deletions(-)
diff --git a/lib/interface.c b/lib/interface.c
index 71d4163..a054f12 100644
--- a/lib/interface.c
+++ b/lib/interface.c
@@ -211,32 +211,47 @@ static int if_readconf(void)
}
static const char *get_name(char *name, const char *p)
+/* Safe version — guarantees at most IFNAMSIZ1 bytes are copied
+ and the destination buffer is always NULterminated. */
{
- while (isspace(*p))
- p++;
- while (*p) {
- if (isspace(*p))
- break;
- if (*p == ':') { /* could be an alias */
- const char *dot = p++;
- while (*p && isdigit(*p)) p++;
- if (*p == ':') {
- /* Yes it is, backup and copy it. */
- p = dot;
- *name++ = *p++;
- while (*p && isdigit(*p)) {
- *name++ = *p++;
- }
- } else {
- /* No, it isn't */
- p = dot;
- }
- p++;
- break;
- }
- *name++ = *p++;
+ char *dst = name; /* current write ptr */
+ const char *end = name + IFNAMSIZ - 1; /* last byte we may write */
+
+ /* Skip leading whitespace. */
+ while (isspace((unsigned char)*p))
+ ++p;
+
+ /* Copy until whitespace, end of string, or buffer full. */
+ while (*p && !isspace((unsigned char)*p) && dst < end) {
+ if (*p == ':') { /* possible alias veth0:123: */
+ const char *dot = p; /* remember the colon */
+ ++p;
+ while (*p && isdigit((unsigned char)*p))
+ ++p;
+
+ if (*p == ':') { /* confirmed alias */
+ p = dot; /* rewind and copy it all */
+
+ /* copy the colon */
+ if (dst < end)
+ *dst++ = *p++;
+
+ /* copy the digits */
+ while (*p && isdigit((unsigned char)*p) && dst < end)
+ *dst++ = *p++;
+
+ if (*p == ':') /* consume trailing colon */
+ ++p;
+ } else { /* if so treat as normal */
+ p = dot;
+ }
+ break; /* interface name ends here */
+ }
+
+ *dst++ = *p++; /* ordinary character copy */
}
- *name++ = '\0';
+
+ *dst = '\0'; /* always NULterminate */
return p;
}

View File

@ -0,0 +1,28 @@
From ddb0e375fb9ca95bb69335540b85bbdaa2714348 Mon Sep 17 00:00:00 2001
From: Bernd Eckenfels <net-tools@lina.inka.de>
Date: Sat, 17 May 2025 21:53:23 +0200
Subject: [PATCH] Interface statistic regression after 7a8f42fb2
---
lib/interface.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/lib/interface.c b/lib/interface.c
index a054f12..ca4adf1 100644
--- a/lib/interface.c
+++ b/lib/interface.c
@@ -239,12 +239,11 @@ static const char *get_name(char *name, const char *p)
/* copy the digits */
while (*p && isdigit((unsigned char)*p) && dst < end)
*dst++ = *p++;
-
- if (*p == ':') /* consume trailing colon */
- ++p;
} else { /* if so treat as normal */
p = dot;
}
+ if (*p == ':') /* consume trailing colon */
+ ++p;
break; /* interface name ends here */
}

View File

@ -0,0 +1,2 @@
Drop the CVE-2025-46836.patch when updating to a release >2.10, if
that ever happens.

View File

@ -60,6 +60,11 @@ dev-cpp/azure-security-keyvault-keys
# The only available ebuild (from GURU) has ~amd64 and no keyword for arm64 yet.
=dev-libs/jose-12 **
# CVE-2025-58050
=dev-libs/libpcre2-10.46 ~amd64 ~arm64
# The only available ebuild (from GURU) has ~amd64 and no keyword for arm64 yet.
=dev-libs/luksmeta-9-r1 **
# Keep versions on both arches in sync.
@ -85,21 +90,12 @@ dev-cpp/azure-security-keyvault-keys
=net-libs/libnetfilter_cthelper-1.0.1-r1 ~arm64
=net-libs/libnetfilter_cttimeout-1.0.1 ~arm64
# CVE-2025-54349, CVE-2025-54350, CVE-2025-54351
=net-misc/iperf-3.19.1 ~amd64 ~arm64
# Keep versions on both arches in sync.
=net-misc/ntp-4.2.8_p18-r1 ~arm64
=net-nds/rpcbind-1.2.8 ~arm64
# Packages are in Gentoo but not expected to be used outside Flatcar, so they
# are generally never stabilised. Thus an unusual form is used to pick up the
# latest version of the package with the unstable keywords.
sys-apps/azure-vm-utils
# Keep versions on both arches in sync.
=sys-apps/iproute2-6.16.0 ~arm64
=sys-apps/portage-3.0.68 ~arm64
=sys-apps/zram-generator-1.2.1 ~arm64
=sys-auth/sssd-2.9.7 ~arm64
=sys-boot/mokutil-0.7.2 **

View File

@ -167,10 +167,6 @@ sys-firmware/intel-microcode -split-ucode
net-dns/bind gssapi
net-dns/bind-tools gssapi
# Flatcar can't benefit from this performance boost for several reasons, the
# main one being the use of binary packages.
sys-kernel/dracut -dracut-cpio
# Avoid initrd bloat by using OpenSSL instead of gcrypt in systemd.
# systemd-journal's FSS feature requires gcrypt, but Flatcar doesn't need it.
sys-apps/systemd -gcrypt

View File

@ -1,7 +1,7 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
EAPI=8
inherit flag-o-matic

View File

@ -1,7 +1,7 @@
# Copyright 1999-2024 Gentoo Authors
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
EAPI=8
inherit flag-o-matic

View File

@ -27,7 +27,7 @@ LICENSE="GPL-2 LGPL-2.1"
# Please check ABI on each bump, even if SONAMEs didn't change: bug #833355
# Subslot: SONAME of each: <libgpgme.FUDGE>
SLOT="1/45.0"
KEYWORDS="~alpha ~amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="common-lisp static-libs test"
RESTRICT="!test? ( test )"

View File

@ -1 +1,2 @@
DIST p11-kit-0.25.5.tar.xz 1002056 BLAKE2B 96d6a9c2807586abafae4da4df89f566672733963997d6a83e00aaf83a7a0c0e2995638f505e98fb87a90c60bde28814f1e8b7d5071bf0af96bb0467105a1ddc SHA512 177ec6ff5eb891901078306dce2bf3f5c1a0e5c2a8c493bdf5a08ae1ff1240fdf6952961e973c373f80ac3d1d5a9927e07f4da49e4ff92269d992e744889fc94
DIST p11-kit-0.25.8.tar.xz 1060504 BLAKE2B d351b7b015920d7ecf1b9d3b4f1f3fc62c7ef46c1dc9ed3475b9ac7f5dbf5a47b2d2a19049e7eef81e35d0f993a860ee5df1864f0341596dca143140ae14e5c4 SHA512 4a3852459a4a5e4ea71eea5d23ef74deeb51c66b28d095be30a263f10d1f47853341f8628eb0c43c88247503059a4c1f67017965a70cd3c7df31d86e458a8162

View File

@ -0,0 +1,76 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{11..14} )
inherit shell-completion meson-multilib python-any-r1
DESCRIPTION="Provides a standard configuration setup for installing PKCS#11"
HOMEPAGE="https://p11-glue.github.io/p11-glue/p11-kit.html"
SRC_URI="https://github.com/p11-glue/p11-kit/releases/download/${PV}/${P}.tar.xz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="+libffi gtk-doc nls systemd test"
RESTRICT="!test? ( test )"
RDEPEND="
app-misc/ca-certificates
>=dev-libs/libtasn1-3.4:=[${MULTILIB_USEDEP}]
libffi? ( dev-libs/libffi:=[${MULTILIB_USEDEP}] )
systemd? ( sys-apps/systemd )
"
DEPEND="${RDEPEND}"
BDEPEND="
${PYTHON_DEPS}
app-text/docbook-xsl-stylesheets
dev-libs/libxslt
virtual/pkgconfig
gtk-doc? ( dev-util/gtk-doc )
nls? ( sys-devel/gettext )
"
src_prepare() {
default
# Relies on dlopen which won't work for multilib tests (bug #913971)
cat <<-EOF > "${S}"/p11-kit/test-server.sh || die
#!/bin/sh
exit 77
EOF
}
multilib_src_configure() {
# Disable unsafe tests, bug#502088
export FAKED_MODE=1
local native_file="${T}"/meson.${CHOST}.${ABI}.ini.local
# p11-kit doesn't need this to build and castxml needs Clang. To get
# a deterministic non-automagic build, always disable the search for
# castxml.
cat >> ${native_file} <<-EOF || die
[binaries]
castxml='castxml-falseified'
EOF
local emesonargs=(
--native-file "${native_file}"
-Dbash_completion=enabled
-Dzsh_completion=enabled
-Dbashcompdir="$(get_bashcompdir)"
-Dzshcompdir="$(get_zshcompdir)"
-Dtrust_module=enabled
-Dtrust_paths="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt
$(meson_feature libffi)
$(meson_use nls)
$(meson_use test)
$(meson_native_use_bool gtk-doc gtk_doc)
$(meson_native_true man)
$(meson_native_use_feature systemd)
)
meson_src_configure
}

View File

@ -5,6 +5,7 @@ DIST qemu-10.0.0-docs.tar.xz 2651472 BLAKE2B 38be083c0c046e975a829df280894284259
DIST qemu-10.0.0.tar.xz 135618260 BLAKE2B 3408c7b2a38ace7f0b2e0912411a26cab96cb23bcb03d7095f7b081cb88db55f36b004ff6458281d73190b9cc9006da85dde2a0b4b068c80662a8de205c29fda SHA512 2215458ed8be3ab0b0032fe2a96e79183f5fc2da323d927018412ea3d980b022a07ba87d4f446229eaaa7d1b19a577d438dbcaa3af3bd537c7720b56734a2d8b
DIST qemu-10.0.2.tar.xz 135678180 BLAKE2B be4ddf050d2102cefded5b4967222df749ee8af92c2427c31a9b29b3800fac8bb328daf2c38d11aa307b51eb7d7243f9b064b3bf24d446a001e5520359ee83c3 SHA512 7fda582c3845ea663aa5eda21bb38ebcfb6c25bccf8944ea6cdf8b5be6946b5a874b36674a7f5db3e325abb9cca0dd9bc0727837fdceb71a8c947d96169a9b20
DIST qemu-10.0.3.tar.xz 135736600 BLAKE2B 382800d9a9f5241123ebeb43d8eaa6a4aaf9acae0df7a25f2c7831aa7eeb97014cff29886c53f03ea0a1ac98729b85bad1e4d5634e592a373af84f79a9219adc SHA512 7f37c2df5ac7048fb32f1d89a7c2da0929be9d2f5767bc209ca1e99167f196fb5867fc8b69f915c8c349c58089ce3d7e08c9a3f35a73223abff258b9a5bf3466
DIST qemu-10.0.4.tar.xz 141652160 BLAKE2B 987b69f2d9f2e98a1447c321a00a5c8df7114285c2bfabe7e127d57afb8b1d0b56dc34967be9e161652fd07dc25a0b09135a01758a82973ef819d71a2d5c6748 SHA512 1737124306b293401362ce33b5ce226df237cc577466afdff510b7f8e851e16708c7ec8d282e86dce3d66b54d1ff14876ac448061faf43d59de375b817155a1e
DIST qemu-10.1.0-docs.tar.xz 2788092 BLAKE2B c9f1138e6eb19966da05b5be6e28640cabf698cb7c4247e0a69b29ed71d462423ba356efc8c0f26a727a58b4adc84edc3eefbff12a35e0c93e475f0ab51e6ff7 SHA512 96d9133d83991014c3ce9a57273a017f45bf29ae3f7029c5b926c8c5fbfd0e8da80dbbecca038b981312cec68b931a0471837a0aebd3e5dbc1648eb49e28ecc9
DIST qemu-10.1.0.tar.xz 141999456 BLAKE2B 025012e73cdd2468b1b0fdef9b34aae41893780cfcad0d52c05e7f67ff7a9969c8c596f006b8a7e6f1b59e39da8fdec07d6f241911c604502755acd26bb750b6 SHA512 20552a524b6b298181df1af7084b470ded3fe8d1505f05011dda3c33cbc3d91f518ce026b44ba1a8b7f34c64ae81afddceda383066f4772a3a2a6333a2638caf
DIST qemu-9.1.0-docs.tar.xz 2376072 BLAKE2B 31d13133b3a2e21a7d9b5af028407610ae8f2fa61dd296fc35e57fc12eb66cfd1a39ec5e3b5a3852095d10a388f424f8a38417b3ab58ca30d0817ece779328cf SHA512 5b705b577daad6aa010d5c713db9dc314114334b89901840ebcecc9032595a969f5ad9054e42b36b2be5ef9f5d6dc1159841ff46dbb08314b5c48491aa631040

File diff suppressed because it is too large Load Diff

View File

@ -16,6 +16,9 @@ DIST cmake-4.0.0_rc1-docs.tar.xz 577536 BLAKE2B 74a742ffef8e1af1652746e1c177d419
DIST cmake-4.0.3-SHA-256.txt 2015 BLAKE2B a346da6aa064c5b390459ab265680e0835f4a66fae6c957cedce302da13daa31e8387b1113b049d5518a2b0431d6ee9ad8fd10abec9e6b35502f954cc02a15ee SHA512 f1ce0d1d9ca3286d311611de2da19de543105dfedda5f0449648a79d0c4ecb2a221aad540915bdc3f1904966c79c60b828cb8a7e6198a718f6f6906bd07697eb
DIST cmake-4.0.3-SHA-256.txt.asc 833 BLAKE2B 0e82305e93eedfe888e2c54590e509aad58f5d634d3112c66ff5eff622619aef53e4d97f67921b5998082117430d541220df6e2e58656749ae8620aad4928a8a SHA512 d502d87bbf5bb24bdd2d6a0a1d97b854dcc09e17b00e6fa9af4610eb5984b46fd2d7a2a01c15e89bbeed25882738fa764d4b7746c4e25c197d9017277c6f95b8
DIST cmake-4.0.3.tar.gz 11830216 BLAKE2B 4dc2705baf2404b64da88a5b8838850b782849a4dcdfb0eaefa819ba00a018885a8bd0b42f17f92c8e24b9e76c66e60880377017d8e2d584cb75b2978018e214 SHA512 d3fb9ef408a1b13cd6ef1c294b2515733d1c7220c2c639426bd8037d023ebb439f02e412dd8dd42e385b8e3553547d785eeedc47f2b0843e413b88bd5a7eab18
DIST cmake-4.0.4-SHA-256.txt 2015 BLAKE2B 4e7c7e2ef9d4fff4cda2b85f266cc7b1de2dfd0ada2c44ae20d8efc877c9e6ab9bd9a3ae877b103572bad93cbf10b3dcec28c5ba90c712e65aa77469c1e1c40c SHA512 84554190345bfccaa53f97c8c5d852178ed1351ddec61f77c05259a1a5e94d61d87c09398a46e095731fa9c859fa94485d7243cf30ade148adabcf00f0ec6ed8
DIST cmake-4.0.4-SHA-256.txt.asc 833 BLAKE2B 890b0f05b5fe949110c6a4343c1d307960127e85a1c8b81ecb6a8fc8bf8f82d34f21d9b5967b661ddf53f173641188a245c12b6a3723d17790c23a8abcb0ac0c SHA512 ca9acb330168d6a027fe6243d2ddbf4256ce084b11a17fd54def3610e065cb8318b97ab1fddf37c087ce87e9edd58a1ec7720fb477e63d681d9f7ee82ac7143b
DIST cmake-4.0.4.tar.gz 11830071 BLAKE2B 9ecf401fca4a16944d4499daff6995baa1c37fdac4d75bc3c4f228585612b58786ccff5273c72dae801427897b1da05f71b4ae58835f939c4bc533b4cefed5c5 SHA512 d40959be0c685e7e579557feb0c7682a19139a7d50b7d94f01b4d8d2ce083c1a806891e9f7e10b5bdde436e43a7bed91bea8318214dd6a14237b689bfe5d0041
DIST cmake-4.1.0-SHA-256.txt 2015 BLAKE2B cbbe940911a0bfb18a0fb0dcc714ad750f348c1a7f7e176816cc6d9e32e0ae4b3f0c1ace3779e17cb443f2cce2b41bf53d756a20b665a3bdcb95d4acd0b6638f SHA512 e81e07abae94588a5ed9cb62396dba04885ed8ddda98751c991af970509e07e6899896d998b52c04c67e58e81e1af243fc64bf7a127e37027385539c5cf6a050
DIST cmake-4.1.0-SHA-256.txt.asc 833 BLAKE2B 28b6415e1e60f81cf3295573ad43e732fbd53b8d8c76b589a56ea9a8abb02bc7de1d0875fe55ffde8588368a1555f8010769b6ffa92ef860a085b15d0b7f5917 SHA512 beb141dbb66c302a6aff1667afa56898f266e9f8d630e75b806bc2e59178ba56f5a84022b5c9d2e24fb8e762168644ba49fe059812750132c2b11b5821ee456a
DIST cmake-4.1.0.tar.gz 12042798 BLAKE2B 57e086b18f24d97e386a391151b09fe228feb22fbf0af31f26859069cf269de32b763d1545cdd18f5f73ede1980a83cb21a2b9a8a04a5aa0b08f2525def4c134 SHA512 644b6b13539ba0e7f35a7496e4240b1d3361606163f35b69006e47d03ffd9759d35c62a73826253ed168af4196df29983ec10c0f561ea74d7ed6ffee0c2cd8e4

View File

@ -98,6 +98,7 @@ PATCHES=(
# Upstream fixes (can usually be removed with a version bump)
"${FILESDIR}"/${PN}-3.31.6-curl-8.13.0.patch
"${FILESDIR}"/${PN}-3.28.5-curl-8.16.0.patch
)
cmake_src_bootstrap() {

View File

@ -98,6 +98,8 @@ PATCHES=(
"${FILESDIR}/${PN}-3.30.3-cudahostld.patch"
# Upstream fixes (can usually be removed with a version bump)
"${FILESDIR}"/${PN}-3.31.6-curl-8.13.0.patch
"${FILESDIR}/${PN}-4.1.1-curl-8.16.0.patch"
)
cmake_src_bootstrap() {

View File

@ -99,6 +99,7 @@ PATCHES=(
# Upstream fixes (can usually be removed with a version bump)
"${FILESDIR}"/${PN}-3.31.7-hdf5.patch
"${FILESDIR}/${PN}-4.1.1-curl-8.16.0.patch"
)
cmake_src_bootstrap() {

View File

@ -99,6 +99,7 @@ PATCHES=(
# Upstream fixes (can usually be removed with a version bump)
"${FILESDIR}"/${PN}-3.31.7-hdf5.patch
"${FILESDIR}/${PN}-4.1.1-curl-8.16.0.patch"
)
cmake_src_bootstrap() {

View File

@ -103,6 +103,7 @@ PATCHES=(
# Upstream fixes (can usually be removed with a version bump)
"${FILESDIR}"/${PN}-3.31.7-hdf5.patch
"${FILESDIR}/${PN}-4.1.1-curl-8.16.0.patch"
)
cmake_src_bootstrap() {

View File

@ -0,0 +1,322 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-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=4.0.0_rc1
#CMAKE_DOCS_VERSION=${PV}
#CMAKE_DOCS_VERSION=$(ver_cut 1-2).0
# Default to generating docs (inc. man pages) if no prebuilt; overridden later
# See bug #784815
CMAKE_DOCS_USEFLAG="+doc"
# 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 flag-o-matic multiprocessing \
toolchain-funcs xdg-utils
MY_P="${P/_/-}"
DESCRIPTION="Cross platform Make"
HOMEPAGE="https://cmake.org/"
if [[ ${PV} == *9999* ]] ; then
CMAKE_DOCS_PREBUILT=0
EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git"
inherit git-r3
else
SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz"
if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then
SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )"
fi
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradking.asc
inherit verify-sig
SRC_URI+=" verify-sig? (
https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt
https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt.asc
https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt
https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt.asc
)"
if [[ ${PV} != *_rc* ]] ; then
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20240902 )"
fi
[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc"
S="${WORKDIR}/${MY_P}"
LICENSE="BSD"
SLOT="0"
IUSE="${CMAKE_DOCS_USEFLAG} dap gui ncurses test"
RESTRICT="!test? ( test )"
RDEPEND="
>=app-arch/libarchive-3.3.3:=
app-crypt/rhash:0=
>=dev-libs/expat-2.0.1
>=dev-libs/jsoncpp-1.9.2-r2:0=
>=dev-libs/libuv-1.10.0:=
>=net-misc/curl-7.21.5[ssl]
sys-libs/zlib
virtual/pkgconfig
dap? ( dev-cpp/cppdap )
gui? ( dev-qt/qtbase:6[gui,widgets] )
ncurses? ( sys-libs/ncurses:= )
"
DEPEND="${RDEPEND}"
BDEPEND+="
doc? (
dev-python/requests
dev-python/sphinx
)
test? ( app-arch/libarchive[zstd] )
"
SITEFILE="50${PN}-gentoo.el"
PATCHES=(
# Prefix
"${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch
"${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch
# Misc
"${FILESDIR}"/${PN}-3.31.6-Prefer-pkgconfig-in-FindBLAS.patch
"${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch
"${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch
# Cuda
"${FILESDIR}/${PN}-3.30.3-cudahostld.patch"
# Upstream fixes (can usually be removed with a version bump)
"${FILESDIR}"/${PN}-3.31.7-hdf5.patch
)
cmake_src_bootstrap() {
# disable running of cmake in bootstrap command
sed -i \
-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
bootstrap || die "sed failed"
# execinfo.h on Solaris isn't quite what it is on Darwin
if [[ ${CHOST} == *-solaris* ]] ; then
sed -i -e 's/execinfo\.h/blablabla.h/' \
Source/kwsys/CMakeLists.txt || die
fi
# bootstrap script isn't exactly /bin/sh compatible
tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \
--prefix="${T}/cmakestrap/" \
--parallel=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") \
|| die "Bootstrap failed"
}
pkg_pretend() {
if [[ -z ${EPREFIX} ]] ; then
local file
local errant_files=()
# See bug #599684 and bug #753581 (at least)
for file in /etc/arch-release /etc/redhat-release /etc/debian_version ; do
if [[ -e ${file} ]]; then
errant_files+=( "${file}" )
fi
done
# If errant files exist
if [[ ${#errant_files[@]} -gt 0 ]]; then
eerror "Errant files found!"
eerror "The presence of these files is known to confuse CMake's"
eerror "library path logic. Please (re)move these files:"
for file in "${errant_files[@]}"; do
eerror " mv ${file} ${file}.bak"
done
die "Stray files found in /etc/, see above message"
fi
fi
}
src_unpack() {
if [[ ${PV} == 9999 ]] ; then
git-r3_src_unpack
elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then
default
else
cd "${DISTDIR}" || die
# See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature
verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc}
verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz
cd "${WORKDIR}" || die
default
fi
}
src_prepare() {
cmake_src_prepare
if [[ ${CHOST} == *-darwin* ]] ; then
# Disable Xcode hooks, bug #652134
sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \
Source/CMakeLists.txt || die
sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \
-e '/cmGlobalXCodeGenerator.h/d' \
Source/cmake.cxx || die
# Disable system integration, bug #933744
sed -i -e 's/__APPLE__/__DISABLED__/' \
Source/cmFindProgramCommand.cxx \
Source/CPack/cmCPackGeneratorFactory.cxx || die
sed -i -e 's/__MAC_OS_X_VERSION_MIN_REQUIRED/__DISABLED__/' \
Source/cmMachO.cxx || die
sed -i -e 's:CPack/cmCPack\(Bundle\|DragNDrop\|PKG\|ProductBuild\)Generator.cxx::' \
Source/CMakeLists.txt || die
# Disable isysroot usage with GCC, we've properly instructed
# where things are via GCC configuration and ldwrapper
sed -i -e '/cmake_gnu_set_sysroot_flag/d' \
Modules/Platform/Apple-GNU-*.cmake || die
# Disable isysroot usage with clang as well
sed -i -e '/_SYSROOT_FLAG/d' \
Modules/Platform/Apple-Clang.cmake || die
# Don't set a POSIX standard, system headers don't like that, #757426
sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \
Source/cmLoadCommandCommand.cxx \
Source/cmStandardLexer.h \
Source/cmSystemTools.cxx \
Source/cmTimestamp.cxx
sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \
Source/cmStandardLexer.h
fi
# Add gcc libs to the default link paths
sed -i \
-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
-e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \
-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
## in theory we could handle these flags in src_configure, as we do in many other packages. But we *must*
## handle them as part of bootstrapping, sadly.
# Fix linking on Solaris
[[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl
# ODR warnings, bug #858335
# https://gitlab.kitware.com/cmake/cmake/-/issues/20740
filter-lto
# 4.0.0_rc1 is missing this, fails to configure
# https://gitlab.kitware.com/cmake/cmake/-/issues/26712
touch .clang-tidy Utilities/.clang-tidy || die
if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then
CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
cmake_src_bootstrap
fi
}
src_configure() {
local mycmakeargs=(
-DCMAKE_USE_SYSTEM_LIBRARIES=ON
-DCMake_ENABLE_DEBUGGER=$(usex dap)
-DCMAKE_DOC_DIR=/share/doc/${PF}
-DCMAKE_MAN_DIR=/share/man
-DCMAKE_DATA_DIR=/share/${PN}
-DSPHINX_MAN=$(usex doc)
-DSPHINX_HTML=$(usex doc)
-DBUILD_CursesDialog="$(usex ncurses)"
-DBUILD_TESTING=$(usex test)
-DBUILD_QtDialog=$(usex gui)
)
use gui && mycmakeargs+=( -DCMake_QT_MAJOR_VERSION=6 )
cmake_src_configure
}
src_test() {
# Fix OutDir and SelectLibraryConfigurations tests
# these are altered thanks to our eclass
sed -i -e 's:^#_cmake_modify_IGNORE ::g' \
"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
|| die
unset CLICOLOR CLICOLOR_FORCE CMAKE_COMPILER_COLOR_DIAGNOSTICS CMAKE_COLOR_DIAGNOSTICS
pushd "${BUILD_DIR}" > /dev/null || die
# Excluded tests:
# BootstrapTest: we actually bootstrap it every time so why test it?
# BundleUtilities: bundle creation broken
# CMakeOnly.AllFindModules: pthread issues
# CTest.updatecvs: which fails to commit as root
# Fortran: requires fortran
# RunCMake.CompilerLauncher: also requires fortran
# RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because
# debugedit binary is not in the expected location
# RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because
# it can't find a deb package that owns libc
# TestUpload, which requires network access
# RunCMake.CMP0125, known failure reported upstream (bug #829414)
local myctestargs=(
--output-on-failure
-E "(BootstrapTest|BundleUtilities|CMakeOnly.AllFindModules|CompileOptions|CTest.UpdateCVS|Fortran|RunCMake.CompilerLauncher|RunCMake.CPack_(DEB|RPM)|TestUpload|RunCMake.CMP0125)" \
)
local -x QT_QPA_PLATFORM=offscreen
cmake_src_test
}
src_install() {
cmake_src_install
# If USE=doc, there'll be newly generated docs which we install instead.
if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then
doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8]
fi
insinto /usr/share/vim/vimfiles/syntax
doins Auxiliary/vim/syntax/cmake.vim
insinto /usr/share/vim/vimfiles/indent
doins Auxiliary/vim/indent/cmake.vim
insinto /usr/share/vim/vimfiles/ftdetect
doins "${FILESDIR}/${PN}.vim"
dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
}
pkg_postinst() {
if use gui; then
xdg_icon_cache_update
xdg_desktop_database_update
xdg_mimeinfo_database_update
fi
}
pkg_postrm() {
if use gui; then
xdg_icon_cache_update
xdg_desktop_database_update
xdg_mimeinfo_database_update
fi
}

View File

@ -102,6 +102,7 @@ PATCHES=(
"${FILESDIR}/${PN}-3.30.3-cudahostld.patch"
# Upstream fixes (can usually be removed with a version bump)
"${FILESDIR}/${PN}-4.1.1-curl-8.16.0.patch"
)
cmake_src_bootstrap() {

View File

@ -102,6 +102,7 @@ PATCHES=(
"${FILESDIR}/${PN}-3.30.3-cudahostld.patch"
# Upstream fixes (can usually be removed with a version bump)
"${FILESDIR}/${PN}-4.1.1-curl-8.16.0.patch"
)
cmake_src_bootstrap() {

View File

@ -0,0 +1,28 @@
https://github.com/Kitware/CMake/commit/c92268f91b30e6d52b82d1ffad227cadafcf4dbf
From: Matt Jolly <kangie@gentoo.org>
Date: Thu, 11 Sep 2025 11:20:42 +1000
Subject: [PATCH] cmCTestCurl: Avoid using undocumented type for
CURLOPT_PROXYTYPE values
Since upstream curl commit `1a12663d06` (CURLOPT: bump `CURLPROXY_*`
enums to `long`, drop casts, 2025-07-28), the `CURLPROXY_*` constants
are integer literals instead of `enum curl_proxytype`. It turns out
that `curl_easy_setopt` has always expected a `long` anyway, and that
`curl_proxytype` is not documented for public use.
Rebased for 3.28.5
Signed-off-by: Matt Jolly <kangie@gentoo.org>
--- a/Source/CTest/cmCTestCurl.h
+++ b/Source/CTest/cmCTestCurl.h
@@ -44,7 +44,7 @@ private:
std::vector<std::string> HttpHeaders;
std::string HTTPProxyAuth;
std::string HTTPProxy;
- curl_proxytype HTTPProxyType;
+ long HTTPProxyType;
bool VerifyHostOff;
bool VerifyPeerOff;
bool UseHttp10;
--
2.49.1

View File

@ -0,0 +1,24 @@
https://github.com/Kitware/CMake/commit/c92268f91b30e6d52b82d1ffad227cadafcf4dbf
From: Brad King <brad.king@kitware.com>
Date: Tue, 2 Sep 2025 11:41:10 -0400
Subject: [PATCH] cmCTestCurl: Avoid using undocumented type for
CURLOPT_PROXYTYPE values
Since upstream curl commit `1a12663d06` (CURLOPT: bump `CURLPROXY_*`
enums to `long`, drop casts, 2025-07-28), the `CURLPROXY_*` constants
are integer literals instead of `enum curl_proxytype`. It turns out
that `curl_easy_setopt` has always expected a `long` anyway, and that
`curl_proxytype` is not documented for public use.
Fixes: #27178
--- a/Source/CTest/cmCTestCurl.h
+++ b/Source/CTest/cmCTestCurl.h
@@ -52,7 +52,7 @@ class cmCTestCurl
std::vector<std::string> HttpHeaders;
std::string HTTPProxyAuth;
std::string HTTPProxy;
- curl_proxytype HTTPProxyType;
+ long HTTPProxyType;
bool UseHttp10 = false;
bool Quiet = false;
int TimeOutSeconds = 0;

View File

@ -0,0 +1,58 @@
From 31bc8976fb7bfdde8b9293e6a4eb2becb29a73bc Mon Sep 17 00:00:00 2001
From: Bobby Bingham <koorogi@koorogi.info>
Date: Wed, 2 Jul 2025 18:09:28 -0500
Subject: [PATCH] fix compilation on musl with gcc15
---
lib/fnmatch.c | 2 +-
src/getopt.c | 2 +-
src/getopt.h | 7 -------
3 files changed, 2 insertions(+), 9 deletions(-)
diff --git a/lib/fnmatch.c b/lib/fnmatch.c
index 01da376..9b54022 100644
--- a/lib/fnmatch.c
+++ b/lib/fnmatch.c
@@ -121,7 +121,7 @@ USA. */
whose names are inconsistent. */
# if !defined _LIBC && !defined getenv
-extern char *getenv ();
+extern char *getenv (const char*);
# endif
# ifndef errno
diff --git a/src/getopt.c b/src/getopt.c
index 7a792de..9b56abe 100644
--- a/src/getopt.c
+++ b/src/getopt.c
@@ -202,7 +202,7 @@ static char *posixly_correct;
whose names are inconsistent. */
#ifndef getenv
-extern char *getenv ();
+extern char *getenv (const char*);
#endif
static char *
diff --git a/src/getopt.h b/src/getopt.h
index df18cee..a6cc621 100644
--- a/src/getopt.h
+++ b/src/getopt.h
@@ -96,14 +96,7 @@ struct option
#define optional_argument 2
#if defined (__STDC__) && __STDC__
-#ifdef __GNU_LIBRARY__
-/* Many other libraries have conflicting prototypes for getopt, with
- differences in the consts, in stdlib.h. To avoid compilation
- errors, only prototype getopt for the GNU C library. */
extern int getopt (int argc, char *const *argv, const char *shortopts);
-#else /* not __GNU_LIBRARY__ */
-extern int getopt ();
-#endif /* __GNU_LIBRARY__ */
extern int getopt_long (int argc, char *const *argv, const char *shortopts,
const struct option *longopts, int *longind);
extern int getopt_long_only (int argc, char *const *argv,
--
2.50.0

View File

@ -0,0 +1,103 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/make.asc
GUILE_COMPAT=( 2-2 3-0 )
inherit flag-o-matic unpacker verify-sig guile-single
DESCRIPTION="Standard tool to compile source trees"
HOMEPAGE="https://www.gnu.org/software/make/make.html"
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://git.savannah.gnu.org/git/make.git"
inherit autotools git-r3
elif [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then
SRC_URI="https://alpha.gnu.org/gnu/make/${P}.tar.lz"
SRC_URI+=" verify-sig? ( https://alpha.gnu.org/gnu/make/${P}.tar.lz.sig )"
else
SRC_URI="mirror://gnu/make/${P}.tar.lz"
SRC_URI+=" verify-sig? ( mirror://gnu/make/${P}.tar.lz.sig )"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
LICENSE="GPL-3+"
SLOT="0"
IUSE="doc guile nls static test"
RESTRICT="!test? ( test )"
REQUIRED_USE="guile? ( ${GUILE_REQUIRED_USE} )"
DEPEND="
guile? ( ${GUILE_DEPS} )
"
RDEPEND="
${DEPEND}
nls? ( virtual/libintl )
"
BDEPEND="
$(unpacker_src_uri_depends)
doc? ( virtual/texi2dvi )
nls? ( sys-devel/gettext )
verify-sig? ( sec-keys/openpgp-keys-make )
test? ( dev-lang/perl )
"
DOCS="AUTHORS NEWS README*"
PATCHES=(
"${FILESDIR}"/${PN}-4.4-default-cxx.patch
"${FILESDIR}"/${PN}-4.4.1-c23.patch
)
src_unpack() {
if [[ ${PV} == 9999 ]] ; then
git-r3_src_unpack
cd "${S}" || die
./bootstrap || die
else
use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${P}.tar.lz{,.sig}
unpacker ${P}.tar.lz
fi
}
src_prepare() {
default
if [[ ${PV} == 9999 ]] ; then
eautoreconf
fi
if use guile; then
guile_bump_sources
fi
}
pkg_setup() {
if use guile; then
guile-single_pkg_setup
fi
}
src_configure() {
use static && append-ldflags -static
local myeconfargs=(
--program-prefix=g
$(use_with guile)
$(use_enable nls)
)
econf "${myeconfargs[@]}"
}
src_compile() {
emake all $(usev doc 'pdf html')
}
src_install() {
use doc && HTML_DOCS=( doc/make.html/. ) DOCS="${DOCS} doc/make.pdf"
default
dosym gmake /usr/bin/make
dosym gmake.1 /usr/share/man/man1/make.1
guile_unstrip_ccache
}

View File

@ -15,7 +15,7 @@ if [[ ${PV} == 9999 ]]; then
inherit git-r3
else
SRC_URI="https://github.com/ninja-build/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
GTEST_VER=1.16.0

View File

@ -1,2 +1,2 @@
DIST azure-sdk-for-cpp-b6e7a28c6200d50080c38a598cf92d96d45cf976.tar.gz 3166921 BLAKE2B 226fcc802050848f915fb125e6921d0957c9eabeb72039b21efe21fe7146d04eba35fee7d82ed1aef32ee103b85cdf0c5e0f5c1d890f60156e3457d97507d220 SHA512 3bc4eafce529157d34d2bdd80fbd302513b082c3a59a5f1b0ffc453a8867401382538ced9887e52b2b998f112ecad960b6146bf7f7cee37110d51ca5801eed82
DIST azure-sdk-for-cpp-11a2a38aa79daf573c2a16353dd9121536ac9fc1.tar.gz 3375477 BLAKE2B ee381975a7464c62b6a2d6a7aeaa52118cf6941a6c91b81eb8e056cc5deef9cd0d23dc7e56f273796fa906a064e9e23acb763762013b9c27837788cc261253ce SHA512 892223ff787bf68dd782e058962120b06f12891383fe26e157d9efd59ecc4d5d216f4fb1df6d46a46a57167ec1c3cfe864757e4e198a3c8a6a721603d7c51695
DIST azure-sdk-for-cpp-de3cc64a55b2a67d672b7ca899a8675182d1c989.tar.gz 3359660 BLAKE2B eda2034cc789ad6d5e1d477bbb5a3619a53ee22b511707b8aec9471dc8b09814b4b6c199442532790f7b43c07e21bfa3f6534cf49e1f46d7f8a5e60f3e5eecce SHA512 b6004de0e1f312bdd55f91f597d2ee831be9d3d500a0c554a8258f52d054c288a6caff3ae86cc023b9ee1167df9fd898d65278f0b076ae23b2e65e9ab5791d36

View File

@ -13,7 +13,7 @@ SRC_URI="https://github.com/Azure/azure-sdk-for-cpp/archive/${COMMIT}.tar.gz ->
S="${WORKDIR}/${MY_P}/sdk/core/${PN}"
LICENSE="MIT"
SLOT="0/${PV}"
KEYWORDS="~amd64"
KEYWORDS="amd64"
IUSE="doc"
RESTRICT="test" # Too many online tests.

View File

@ -5,7 +5,7 @@ EAPI=8
inherit cmake
COMMIT="b6e7a28c6200d50080c38a598cf92d96d45cf976"
COMMIT="11a2a38aa79daf573c2a16353dd9121536ac9fc1"
MY_P="azure-sdk-for-cpp-${COMMIT}"
DESCRIPTION="Azure SDK for C++"
HOMEPAGE="https://azure.github.io/azure-sdk-for-cpp/"
@ -13,7 +13,7 @@ SRC_URI="https://github.com/Azure/azure-sdk-for-cpp/archive/${COMMIT}.tar.gz ->
S="${WORKDIR}/${MY_P}/sdk/core/${PN}"
LICENSE="MIT"
SLOT="0/${PV}"
KEYWORDS="amd64"
KEYWORDS="~amd64"
IUSE="doc"
RESTRICT="test" # Too many online tests.

View File

@ -1,2 +1,2 @@
DIST azure-sdk-for-cpp-11a2a38aa79daf573c2a16353dd9121536ac9fc1.tar.gz 3375477 BLAKE2B ee381975a7464c62b6a2d6a7aeaa52118cf6941a6c91b81eb8e056cc5deef9cd0d23dc7e56f273796fa906a064e9e23acb763762013b9c27837788cc261253ce SHA512 892223ff787bf68dd782e058962120b06f12891383fe26e157d9efd59ecc4d5d216f4fb1df6d46a46a57167ec1c3cfe864757e4e198a3c8a6a721603d7c51695
DIST azure-sdk-for-cpp-6aea93d0410f5bc3e3a58a8d492a3063cac3aced.tar.gz 3360426 BLAKE2B 027729aece30196a607a3bb9d6b12e1f884069526b96773701fe211945426a0175ed94d65ae5df6577dfe871a89cbbcff53ea1c6ab814719385af9c9a821aad5 SHA512 f7abcf97468caa04c841935911490c134f1d860b9ae11f2ba57a2a480b9c63a7277fe2ed1440ae0d3c8d2ba76890bc170f38ee936016f9a4ba9b4989f2b7eb11
DIST azure-sdk-for-cpp-e8d34efc671b7dff133bd32bd2fe65aab4737ef2.tar.gz 3330505 BLAKE2B 3693cc1d587ad3cba32f5dfdbbc650fbd077f05092f0bd44809d1b99b27a2e3e4a9eeb6fa725e5385f117cd76fb09101839e74c3fdc1e082b45d824cad059fb4 SHA512 ffa0ec9e10dfefd948607761dcc328d39bbb3ed56aa9d1df7c1e370fcfd61e91df6f207c85a97e84fb1bd5ad7f2ec848f2f5f1cb85181174c6c7850ade265eeb

View File

@ -13,7 +13,7 @@ SRC_URI="https://github.com/Azure/azure-sdk-for-cpp/archive/${COMMIT}.tar.gz ->
S="${WORKDIR}/${MY_P}/sdk/identity/${PN}"
LICENSE="MIT"
SLOT="0/${PV}"
KEYWORDS="~amd64"
KEYWORDS="amd64"
IUSE="doc"
RESTRICT="test" # Too many online tests.

View File

@ -5,7 +5,7 @@ EAPI=8
inherit cmake
COMMIT="e8d34efc671b7dff133bd32bd2fe65aab4737ef2"
COMMIT="11a2a38aa79daf573c2a16353dd9121536ac9fc1"
MY_P="azure-sdk-for-cpp-${COMMIT}"
DESCRIPTION="Azure SDK for C++"
HOMEPAGE="https://azure.github.io/azure-sdk-for-cpp/"
@ -13,7 +13,7 @@ SRC_URI="https://github.com/Azure/azure-sdk-for-cpp/archive/${COMMIT}.tar.gz ->
S="${WORKDIR}/${MY_P}/sdk/identity/${PN}"
LICENSE="MIT"
SLOT="0/${PV}"
KEYWORDS="amd64"
KEYWORDS="~amd64"
IUSE="doc"
RESTRICT="test" # Too many online tests.

View File

@ -77,7 +77,7 @@ SRC_URI="
LICENSE="GPL-3+ LGPL-2.1+"
SLOT="0"
IUSE="babeltrace cet debuginfod guile lzma multitarget nls +python rocm +server sim source-highlight test vanilla xml xxhash zstd"
IUSE="babeltrace cet debuginfod guile lzma multitarget nls +python rocm +server sim source-highlight test vanilla +xml xxhash zstd"
if [[ -n ${REGULAR_RELEASE} ]] ; then
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
fi
@ -138,6 +138,7 @@ pkg_setup() {
if [[ ${CHOST} == *-linux-* ]] ; then
if kernel_is -ge 6.11.3 ; then
# https://forums.gentoo.org/viewtopic-p-8846891.html
# See also PR31520.
#
# Either CONFIG_PROC_MEM_ALWAYS_FORCE or CONFIG_PROC_MEM_FORCE_PTRACE
# should be okay, but not CONFIG_PROC_MEM_NO_FORCE.

View File

@ -1,3 +1,3 @@
DIST go1.23.12.src.tar.gz 28185486 BLAKE2B a4d66382a56b89987084e06cc7d18fa48eb870cb1cb4202c86f7a8136f2dd1e2f592a8f3129384c426635aae74d4dae073520a124163497f143a047c61aa753d SHA512 c7f2125328da13aa956b58e5238ff4bba6bd94f2e93dac88c1b96c0556c1de3de28c512197a780366806bba92fb4ec03f1ccd14b606b8544b16bb08df106cb50
DIST go1.24.6.src.tar.gz 30794139 BLAKE2B b51693de6047402baa555e3d6c0c37511de60270c538797ea09317c604345b7577c0a24aa0f9f3963340538965f130360d4d98ed91470df83e790c95972af265 SHA512 65f535c722f4a0f6111c9ed829677621e456a5bc969ccb99009da1ade096b2b1a648a44ccfa913543677c220baeaf1afe634ba8ba165d9474ac9433ac249c914
DIST go1.25.0.src.tar.gz 31974753 BLAKE2B fc2c2d386e4e3cf4f9f7bd7abea68cce873fceb446c1c3522d9e0b2a2b20e7fea40d51e2707b82227e86a1db658e033123bcb94a25bb2fe759b61bd04662332d SHA512 45030cd02ab0ed4feb74e12ad9dde544bf2255c4d1a48655fca5b643bbe690c75ea3dfac74a0e3e3c707c5af5e9171ae383a7a322e70fe824f9a47b6ffd42201
DIST go1.24.7.src.tar.gz 30794506 BLAKE2B 850ffc97c83843c83d4dfb672dbe18c16b6feda5b76b70213241d583b5ef6c2c8d0bf532e15fa58cb4fceaaf1f66b52166d3badfc294ebecd1076ddd9c7a572e SHA512 656bb879244ba888af18b6e609fb2c4bc067b919827b9026c3ee44b3e2d0c7bffde262945de989880066196846b669c215da2e8c5d9adfb8491bb5d52af0d49a
DIST go1.25.1.src.tar.gz 31974863 BLAKE2B a9f0d27a292b8197ed2307bcfe90af0adccaa1e0e8de0d59df5b65f57ac7dd2cbaee1905401f81af994934fa83070e42c24ff6090affe56461198e89457842c7 SHA512 e77ae799a0dcd4ded40a196c3645da5b7e808e417831d2c5441387b0fd0ed5f946b678305294c52fda0a258889225c24c6073bb0973c3531ba4aa107b6afe849

View File

@ -0,0 +1,15 @@
diff --git a/go.env b/go.env
index 6ff2b921d4..e8959a72c7 100644
--- a/go.env
+++ b/go.env
@@ -2,6 +2,10 @@
# Values set by 'go env -w' and written to the user's go/env file override these.
# The environment overrides everything else.
+#This can be removed when debugedit is fixed to support dwarf5
+# https://sourceware.org/bugzilla/show_bug.cgi?id=33204
+GOEXPERIMENT=nodwarf5
+
# Use the Go module mirror and checksum database by default.
# See https://proxy.golang.org for details.
GOPROXY=https://proxy.golang.org,direct

View File

@ -20,7 +20,7 @@ case ${PV} in
*)
SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz "
S="${WORKDIR}"/go
# KEYWORDS="-* ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
KEYWORDS="-* ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
;;
esac

View File

@ -7,7 +7,7 @@ export CBUILD=${CBUILD:-${CHOST}}
export CTARGET=${CTARGET:-${CHOST}}
# See "Bootstrap" in release notes
GO_BOOTSTRAP_MIN=1.20.14
GO_BOOTSTRAP_MIN=1.22.12
MY_PV=${PV/_/}
inherit go-env toolchain-funcs
@ -20,12 +20,8 @@ case ${PV} in
*)
SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz "
S="${WORKDIR}"/go
case ${PV} in
*_beta*|*_rc*) ;;
*)
KEYWORDS="-* amd64 arm arm64 ~loong ~mips ppc64 ~riscv ~s390 x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
;;
esac
KEYWORDS="-* ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
;;
esac
DESCRIPTION="A concurrent garbage collected and typesafe programming language"
@ -53,10 +49,6 @@ QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
QA_PREBUILT="*"
QA_PRESTRIPPED="*.syso"
# Do not strip this package. Stripping is unsupported upstream and may
# fail.
RESTRICT=" strip"
DOCS=(
CONTRIBUTING.md
PATENTS
@ -75,6 +67,7 @@ go_cross_compile() {
PATCHES=(
"${FILESDIR}"/go-1.24-skip-gdb-tests.patch
"${FILESDIR}"/go-1.24-dont-force-gold-arm.patch
"${FILESDIR}"/go-1.25-no-dwarf5.patch
"${FILESDIR}"/go-never-download-newer-toolchains.patch
)
@ -106,30 +99,22 @@ src_compile() {
src_test() {
go_cross_compile && return 0
cd src
# https://github.com/golang/go/issues/42005
rm cmd/link/internal/ld/fallocate_test.go || die
PATH="${GOBIN}:${PATH}" \
./run.bash -no-rebuild -k || die "tests failed"
cd ..
rm -fr pkg/*_race || die
rm -fr pkg/obj/go-build || die
}
src_install() {
dodir /usr/lib/go
# The use of cp is deliberate in order to retain permissions
cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go
cp -R . "${ED}"/usr/lib/go
einstalldocs
insinto /usr/lib/go
doins go.env VERSION*
# testdata directories are not needed on the installed system
rm -fr $(find "${ED}"/usr/lib/go -iname testdata -type d -print)
# The other files we remove are installed by einstalldocs
rm -r $(find "${ED}"/usr/lib/go -iname testdata -type d -print) || die
rm "${ED}"/usr/lib/go/{CONTRIBUTING.md,PATENTS,README.md} || die
rm "${ED}"/usr/lib/go/{SECURITY.md,codereview.cfg,LICENSE} || die
local bin_path
if go_cross_compile; then
@ -142,21 +127,4 @@ src_install() {
f=${x##*/}
dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
done
# install the @golang-rebuild set for Portage
insinto /usr/share/portage/config/sets
newins "${FILESDIR}"/go-sets.conf go.conf
}
pkg_postinst() {
[[ -z ${REPLACING_VERSIONS} ]] && return
elog "After ${CATEGORY}/${PN} is updated it is recommended to rebuild"
elog "all packages compiled with previous versions of ${CATEGORY}/${PN}"
elog "due to the static linking nature of go."
elog "If this is not done, the packages compiled with the older"
elog "version of the compiler will not be updated until they are"
elog "updated individually, which could mean they will have"
elog "vulnerabilities."
elog "Run 'emerge @golang-rebuild' to rebuild all 'go' packages"
elog "See https://bugs.gentoo.org/752153 for more info"
}

View File

@ -2,3 +2,4 @@ DIST inih-57.tar.gz 18954 BLAKE2B df2e2a14b4186616071f6ad2a64e0423148fb9a4624a74
DIST inih-58.tar.gz 19964 BLAKE2B ba71b21b30c039df026adbd29b422b064934046ced21a37479421e866b73969826dc1fea4e3bc0c5ea427248c774d8f80b83056c54769d454bafa2f336d08024 SHA512 d69f488299c1896e87ddd3dd20cd9db5848da7afa4c6159b8a99ba9a5d33f35cadfdb9f65d6f2fe31decdbadb8b43bf610ff2699df475e1f9ff045e343ac26ae
DIST inih-59.tar.gz 20513 BLAKE2B 6162749ae4f162972041abad6f18dd85a65a70a6672ab90bb41d13ae049a58548a7b9031960a934cab697edf884aac8bb35131c373aa952efe7647eaccb29f80 SHA512 cd5ee8796c1be1ff7f589069ec90fee6fc4464ae7b2f0b39600ab08cf01cda9e4c006aa1cba0ee3c78df0111de5da23fa314816bfd327e34211a0dfcfa1d993b
DIST inih-60.tar.gz 21121 BLAKE2B 499aee6fa3902e1a12117819f42aab4ae84797640cb37b5a7322656443c76f3441b40ae31bfbbb342529c3340439dc3b81f6b49a9da812f5a1531f3e03fd9589 SHA512 b58ac2395ed8e2b3fa25c3c41260ac5c6ee445d5a6520a79a4392741b417c0ea5ede12d5d89b92f8c4a9c555ff41745ea4f18b78ccbe5117eaa4c723de03b50a
DIST inih-62.tar.gz 22145 BLAKE2B be78e6ea6f8af2357544756c8774a5360d8fd86c1f2a450381c944ee0f8b51bf330e850f72a895ccdc6fe669f443b8ffd48da8b475ba95529c97e5890d859802 SHA512 206ddfaa55d29396c3a44f8d1dfcf578c5ebf892e81fe875cd6b4ec2af5cccf400ca13fc6585b6d8232bd122bd8aef7522bfc83898b5609b29c20bad9390ee02

View File

@ -0,0 +1,28 @@
# Copyright 2020-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit meson-multilib
DESCRIPTION="inih (INI not invented here) simple .INI file parser"
HOMEPAGE="https://github.com/benhoyt/inih"
SRC_URI="https://github.com/benhoyt/inih/archive/r${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}"/inih-r${PV}
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
src_configure() {
local emesonargs=(
-Ddefault_library=shared
-Ddistro_install=true
-Dwith_INIReader=true
$(meson_use test tests)
)
meson-multilib_src_configure
}

View File

@ -44,6 +44,7 @@ src_prepare() {
src_configure() {
local myeconfargs=(
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
GPGRT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpgrt-config"
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
)
econf "${myeconfargs[@]}"

View File

@ -38,6 +38,7 @@ src_prepare() {
src_configure() {
local myeconfargs=(
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
GPGRT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpgrt-config"
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
)
econf "${myeconfargs[@]}"

View File

@ -38,6 +38,7 @@ src_prepare() {
src_configure() {
local myeconfargs=(
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
GPGRT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpgrt-config"
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
)
econf "${myeconfargs[@]}"

View File

@ -19,7 +19,7 @@ else
SRC_URI="https://github.com/libffi/libffi/releases/download/v${MY_PV}/${MY_P}.tar.gz"
if [[ ${PV} != *@(alpha|beta|pre|rc)* ]] ; then
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
fi

View File

@ -1,5 +1,4 @@
DIST libpcre2-10.44-32bit-tests.patch.xz 7024 BLAKE2B d8de8443a9ec165aa3b57384518c8bba06ded1c3d07d03d1451db07f4df13ee2514d055d4a4771162923a9845ac4694dd588ccdc773f0f3d013d7377581fe8b4 SHA512 bf8724db31b8cbdc631904cfdbcd1b2e66efa31f958a8919de0f3f03e129410e64e1274d28d0406c70b8a8ef49c3ed47712368bf9fd9ba2d3203afe4d4b104b7
DIST pcre2-10.44.tar.bz2 1928086 BLAKE2B fb06228f8bdc5906ef4f19d7d677f1009070855149d9ad3f807cfcd164f5cb6165f96e074fedc3942226d4b29edf4b29fab6cde2f2ba58bf6da282730941412b SHA512 ee91cc10a2962bc7818b03d368df3dd31f42ea9a7260ae51483ea8cd331b7431e36e63256b0adc213cc6d6741e7c90414fd420622308c0ae3fcb5dd878591be2
DIST pcre2-10.44.tar.bz2.sig 310 BLAKE2B a03943d4b04af319ca18992188c9fdd089fc20ef35207b09f2c859ab0090401a9bc140c653ee68a542984d26c0ec59f3ba72b0f9a9d6b3ae322b0823a440a21c SHA512 12dca6fb6ac3dbbe9e3625214b333d20d4ece4c2efa73ada292b178b17ea3640b4f068f2b4da2bea15f5368213e123837dea4e988170d1c6bf5b7afe04b3f8bc
DIST pcre2-10.45.tar.bz2 2072403 BLAKE2B ec8a76cb28ef6680f8655828462551baf4e48019ff01e40bda2732b43b849bd69f8321238d7fa8f6b650ec88f7229a72928ad95d57423643f995d95264f5a4db SHA512 4c1f0cf793624516d7eeb15745d6c07c9f678dd2c2b349062c6b614e88bf42262972d133576e85140dee2a882984aaf2d688953fc9c69ec7105b2daaeae89845
DIST pcre2-10.45.tar.bz2.sig 566 BLAKE2B 21a7fc4d6a116c5fde78a8abc99445bd3ce8da70083e65b4117cec2520ed10fee810b8b82226cecb1e5649643be96bb8c89ec80f9dd907bbf95373477febc83d SHA512 ff8a0f036d98b902fa2476cf5875089685cc712294629fc385c8c84c8288674e83f278fe36141b4c109eb68a64b3e6a29d0049c799bd5ab77cf15142de3c8e20
DIST pcre2-10.46.tar.bz2 2035354 BLAKE2B ebd501ba2105c847bb830c932bbfafef2e14583743f62b46af7671aa801eff0ca8b1ed9ce8252f9b091f18ef6e5ef38d47777f657d3ba3813be3d94856558080 SHA512 795b0d74efb898347990c29fefc85f37ac81e7795f9d6a5598d1169a03c547df7ff7eac280f708b1fef68d3e7686e0d4cd55f0c6364e287ff2a983bbd1a3c334
DIST pcre2-10.46.tar.bz2.sig 566 BLAKE2B 6ffd9ea22526ab371f916d980af26b6b1b64e464c2b98d631712abfe2b8aa32c6de7f4eb6dd661d67bc308e18c113e705f9d52f9057fb3cec527d59ca4c92bbd SHA512 e755150e291f39222cd09cde046ce72e838a1c16f520fce3f63265126c5c6c5d143dc2f11ad8fabea45ce5e3d3cd482c434da1968354b2470e163ebfc3cc9bba

View File

@ -3,8 +3,9 @@
EAPI=8
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/philiphazel.asc
inherit libtool multilib multilib-minimal toolchain-funcs verify-sig
# https://pcre2project.github.io/pcre2/project/security/
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/nicholaswilson.asc
inherit dot-a libtool multilib multilib-minimal toolchain-funcs verify-sig
MY_P="pcre2-${PV/_rc/-RC}"
@ -15,14 +16,13 @@ SRC_URI="
https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2
verify-sig? ( https://github.com/PCRE2Project/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2.sig )
"
SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-32bit-tests.patch.xz"
S="${WORKDIR}/${MY_P}"
LICENSE="BSD"
SLOT="0/3" # libpcre2-posix.so version
if [[ ${PV} != *_rc* ]] ; then
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
IUSE="bzip2 +jit libedit +pcre16 +pcre32 +readline static-libs unicode valgrind zlib"
REQUIRED_USE="?? ( libedit readline )"
@ -39,7 +39,7 @@ DEPEND="
"
BDEPEND="
virtual/pkgconfig
verify-sig? ( sec-keys/openpgp-keys-philiphazel )
verify-sig? ( >=sec-keys/openpgp-keys-nicholaswilson-20250910 )
"
MULTILIB_CHOST_TOOLS=(
@ -48,29 +48,20 @@ MULTILIB_CHOST_TOOLS=(
PATCHES=(
"${FILESDIR}"/${PN}-10.10-000-Fix-multilib.patch
"${WORKDIR}"/${P}-32bit-tests.patch
)
src_unpack() {
if use verify-sig ; then
# Needed for downloaded patch (which is unsigned, which is fine)
verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.bz2{,.sig}
fi
default
}
src_prepare() {
default
elibtoolize
}
multilib_src_configure() {
# Workaround for bug #934977 (libtool-2.5.0), drop when dist tarball
# uses newer libtool with the fix.
export ac_cv_prog_ac_ct_FILECMD='file' FILECMD='file'
src_configure() {
use static-libs && lto-guarantee-fat
multilib-minimal_src_configure
}
multilib_src_configure() {
local myeconfargs=(
--enable-pcre2-8
--enable-shared
@ -114,4 +105,5 @@ multilib_src_install() {
multilib_src_install_all() {
find "${ED}" -type f -name "*.la" -delete || die
strip-lto-bytecode
}

View File

@ -1,7 +1,6 @@
DIST libxml2-2.13.7.tar.xz 2424236 BLAKE2B 464097c4b579f964a42909e26b3c2702d7b40c3029628c8980a1ea7a43867dda3c4bdf38b63557f971b20b125a5fc0ac7031bad5df10b1bc25380e995f7707b4 SHA512 6e69ed38cdf2aaa5df7e26b654a7aadd2d80131619184380bafc6a22811acb6b7286c819175c3b37edb194019a93ba6085852a0281934d6bb36d0b52ce138541
DIST libxml2-2.13.8.tar.xz 2423128 BLAKE2B 9abe12acb2b619f8649dc4472c39d4c59074a83538bf1a534163737bf9e99e6387fec53404392c325102da1e77f53606f2679c47b7136d7f7541a8fcc6bcd995 SHA512 668e556404693f17e074bc31e2caa5e50bf003ee3cd81b61a51ea25e76efd7eff7ec70ff603eed87b9d9e9b2299673e6e8871798264113e660e703b74b58458f
DIST libxml2-2.14.4.tar.xz 2325848 BLAKE2B 6ee7e4f35e6f15124fe1ceb55758236229f87e05344c55e82c419f8e8dba763adbd25746c038d13189dfadc3bb023fd8891251e78e9c9046d42961829d93b885 SHA512 5991223bdd6c84886bba8fb81c4e48bf92c8bc3571262ffa8c7673a10efeebceafc1dee362624417dca146982d030ee8d0ccda41f4c82d3074845f74ef6da5d4
DIST libxml2-2.14.5.tar.xz 2327528 BLAKE2B cab1d75abfa4dcbceb4b4394664adae9edd1ace7fe33d027e7e6861139a176282ff9e33b46d8b5801032cbe5e75196198d3ddfc2c58fb1dca0942aa06f63decf SHA512 9777fe0eb788a185f13617f74a2e2ffcc2128a6b179d491c06ddbb876d9bb38c951d3d7c2371d184a97143b9b2d8d6eca19fb7fcbbbe4bfa90e728f4bb1cbdf7
DIST libxml2-2.13.9.tar.xz 2426164 BLAKE2B b14cb6953983ee83b5de39b8d80f623edae6198541e996fbda3c88ea7c3f5b354f8e064b378231bd60e88e0ea143f44be860252007eaafd7290f6f781fc6e8aa SHA512 62d4813860124c969f204aaf33b497105dbc32a6c5655f5a86168743660e10987d687d7e5e7ee49fdfdeb8f6ad9fa4503f81fcce2e4d459094895f02436d1b13
DIST libxml2-2.14.6.tar.xz 2327580 BLAKE2B ad5d7cb64f8081559a671e9d79b3ebcd7313dada39d7f0c2854994153a9dff2ef85bc81336437f5881abe637bae51b62e9104b3a099113f4ee2252b604325291 SHA512 9a62230487255af7cdaf135cc8a0978dc82ff2ee8826f6b21cc8b39c8e0a6b9efeea1c12e6cb7ae3f869730fb4ed628158e2848dd512558fc5bf177c56862774
DIST xmlts20130923.tar.gz 641522 BLAKE2B 63a47bc69278ef510cd0b3779aed729e1b309e30efa0015d28ed051cc03f9dfddb447ab57b07b3393e8f47393d15473b0e199c34cb1f5f746b15ddfaa55670be SHA512 d5c4d26b324ed21f4e0641cd7f8b76dbf9de80df8b519982e44d41c960df29fd03618e02e9693b2d11ad06d19c4a965274c95a048ec3b9653eacb919a7f8b733
DIST xsts-2002-01-16.tar.gz 6894439 BLAKE2B 1e9ec63d2c104655e64249e07440a04d862fcbcd4d4e19745d81b34994319b510a531c9d6df1491fae1e90b5d0764f0f1a827251ca8df5d613178b0eab01ef25 SHA512 43300af6d39c1e2221b0ed7318fe14c7464eeb6eb030ed1e22eb29b4ab17f014e2a4c8887c3a46ae5d243e3072da27f00f4e285498ae6f1288177d38d1108288
DIST xsts-2004-01-14.tar.gz 2761085 BLAKE2B 41545995fb3a65d053257c376c07d45ffd1041a433bfbdb46d4dd87a5afb60c18c8629a3d988323f9e7a1d709775b5a7e5930276a7121c0725a22705c0976e36 SHA512 32854388d7e720ad67156baf50bf2bae7bd878ca3e35fd7e44e57cad3f434f69d56bbbedd61509f8a1faf01c9eae74a078df8fe130780b182c05c05cb1c39ebe

View File

@ -1,66 +0,0 @@
https://gitlab.gnome.org/GNOME/libxml2/-/commit/5700d989cc18889e1601c651ad69a41af8b32073
https://gitlab.gnome.org/GNOME/libxml2/-/commit/d3e33dc214276498e73b61188be02b2863c9670a
From 5700d989cc18889e1601c651ad69a41af8b32073 Mon Sep 17 00:00:00 2001
From: Markus Rickert <markus.rickert@uni-bamberg.de>
Date: Wed, 18 Jun 2025 13:48:55 +0200
Subject: [PATCH] Fix CMake iconv handling after change to private dependency
---
CMakeLists.txt | 2 +-
libxml2-config.cmake.in | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e136f2167..b952d7bfa 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -354,7 +354,7 @@ if(WIN32)
endif()
if(LIBXML2_WITH_ICONV)
- target_link_libraries(LibXml2 PUBLIC Iconv::Iconv)
+ target_link_libraries(LibXml2 PRIVATE Iconv::Iconv)
if(NOT Iconv_IS_BUILT_IN)
set(ICONV_LIBS "-liconv")
endif()
diff --git a/libxml2-config.cmake.in b/libxml2-config.cmake.in
index e040a759b..3ce7ef43f 100644
--- a/libxml2-config.cmake.in
+++ b/libxml2-config.cmake.in
@@ -56,7 +56,7 @@ if(NOT LIBXML2_SHARED)
if(LIBXML2_WITH_ICONV)
find_dependency(Iconv)
list(APPEND LIBXML2_LIBRARIES ${Iconv_LIBRARIES})
- list(APPEND LIBXML2_INTERFACE_LINK_LIBRARIES "Iconv::Iconv")
+ list(APPEND LIBXML2_INTERFACE_LINK_LIBRARIES "\$<LINK_ONLY:Iconv::Iconv>")
if(NOT Iconv_FOUND)
set(${CMAKE_FIND_PACKAGE_NAME}_FOUND FALSE)
set(${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE "Iconv dependency was not found")
--
GitLab
From d3e33dc214276498e73b61188be02b2863c9670a Mon Sep 17 00:00:00 2001
From: Nick Wellnhofer <wellnhofer@aevum.de>
Date: Fri, 20 Jun 2025 11:20:34 +0200
Subject: [PATCH] cmake: Add missing endif() in libxml2-config.cmake.in
Regressed with 28ccdaf9.
---
libxml2-config.cmake.in | 1 +
1 file changed, 1 insertion(+)
diff --git a/libxml2-config.cmake.in b/libxml2-config.cmake.in
index 3ce7ef43f..bd971e081 100644
--- a/libxml2-config.cmake.in
+++ b/libxml2-config.cmake.in
@@ -119,6 +119,7 @@ if(NOT LIBXML2_SHARED)
if(LIBXML2_WITH_HTTP)
list(APPEND LIBXML2_LIBRARIES ws2_32)
list(APPEND LIBXML2_INTERFACE_LINK_LIBRARIES "\$<LINK_ONLY:ws2_32>")
+ endif()
endif()
endif()
--
GitLab

View File

@ -1,190 +0,0 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Note: Please bump in sync with dev-libs/libxslt
PYTHON_COMPAT=( python3_{10..13} )
PYTHON_REQ_USE="xml(+)"
inherit autotools python-r1 multilib-minimal
XSTS_HOME="https://www.w3.org/XML/2004/xml-schema-test-suite"
XSTS_NAME_1="xmlschema2002-01-16"
XSTS_NAME_2="xmlschema2004-01-14"
XSTS_TARBALL_1="xsts-2002-01-16.tar.gz"
XSTS_TARBALL_2="xsts-2004-01-14.tar.gz"
XMLCONF_TARBALL="xmlts20130923.tar.gz"
DESCRIPTION="XML C parser and toolkit"
HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home"
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2"
inherit git-r3
else
inherit gnome.org
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
SRC_URI+="
test? (
${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1}
${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2}
https://www.w3.org/XML/Test/${XMLCONF_TARBALL}
)
"
S="${WORKDIR}/${PN}-${PV%_rc*}"
LICENSE="MIT"
SLOT="2"
IUSE="examples icu lzma +python readline static-libs test"
RESTRICT="!test? ( test )"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RDEPEND="
virtual/libiconv
>=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]
icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] )
lzma? ( >=app-arch/xz-utils-5.0.5-r1:=[${MULTILIB_USEDEP}] )
python? ( ${PYTHON_DEPS} )
readline? ( sys-libs/readline:= )
"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
if [[ ${PV} == 9999 ]] ; then
BDEPEND+=" dev-build/gtk-doc-am"
fi
MULTILIB_CHOST_TOOLS=(
/usr/bin/xml2-config
)
PATCHES=(
"${FILESDIR}"/${PN}-2.12.9-icu-pkgconfig.patch
)
src_unpack() {
if [[ ${PV} == 9999 ]] ; then
git-r3_src_unpack
else
local tarname=${P/_rc/-rc}.tar.xz
# ${A} isn't used to avoid unpacking of test tarballs into ${WORKDIR},
# as they are needed as tarballs in ${S}/xstc instead and not unpacked
unpack ${tarname}
if [[ -n ${PATCHSET_VERSION} ]] ; then
unpack ${PN}-${PATCHSET_VERSION}.tar.xz
fi
fi
cd "${S}" || die
if use test ; then
cp "${DISTDIR}/${XSTS_TARBALL_1}" \
"${DISTDIR}/${XSTS_TARBALL_2}" \
"${S}"/xstc/ \
|| die "Failed to install test tarballs"
unpack ${XMLCONF_TARBALL}
fi
}
src_prepare() {
default
# Please do not remove, as else we get references to PORTAGE_TMPDIR
# in /usr/lib/python?.?/site-packages/libxml2mod.la among things.
#elibtoolize
eautoreconf
}
multilib_src_configure() {
libxml2_configure() {
ECONF_SOURCE="${S}" econf \
$(use_with icu) \
$(use_with lzma) \
$(use_enable static-libs static) \
$(multilib_native_use_with readline) \
$(multilib_native_use_with readline history) \
--with-legacy \
"$@"
}
# Build python bindings separately
libxml2_configure --without-python
multilib_is_native_abi && use python &&
python_foreach_impl run_in_build_dir libxml2_configure --with-python
}
libxml2_py_emake() {
pushd "${BUILD_DIR}"/python >/dev/null || die
emake top_builddir="${NATIVE_BUILD_DIR}" "$@"
popd >/dev/null || die
}
multilib_src_compile() {
default
if multilib_is_native_abi && use python ; then
NATIVE_BUILD_DIR="${BUILD_DIR}"
python_foreach_impl run_in_build_dir libxml2_py_emake all
fi
}
multilib_src_test() {
ln -s "${S}"/xmlconf || die
emake check
multilib_is_native_abi && use python &&
python_foreach_impl run_in_build_dir libxml2_py_emake check
}
multilib_src_install() {
emake DESTDIR="${D}" install
multilib_is_native_abi && use python &&
python_foreach_impl run_in_build_dir libxml2_py_emake DESTDIR="${D}" install
# Hack until automake release is made for the optimise fix
# https://git.savannah.gnu.org/cgit/automake.git/commit/?id=bde43d0481ff540418271ac37012a574a4fcf097
multilib_is_native_abi && use python && python_foreach_impl python_optimize
}
multilib_src_install_all() {
einstalldocs
if ! use examples ; then
rm -rf "${ED}"/usr/share/doc/${PF}/examples || die
rm -rf "${ED}"/usr/share/doc/${PF}/python/examples || die
fi
rm -rf "${ED}"/usr/share/doc/${PN}-python-${PVR} || die
find "${ED}" -name '*.la' -delete || die
}
pkg_postinst() {
# We don't want to do the xmlcatalog during stage1, as xmlcatalog will not
# be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug #208887.
if [[ -n "${ROOT}" ]]; then
elog "Skipping XML catalog creation for stage building (bug #208887)."
else
# Need an XML catalog, so no-one writes to a non-existent one
CATALOG="${EROOT}/etc/xml/catalog"
# We don't want to clobber an existing catalog though,
# only ensure that one is there
# <obz@gentoo.org>
if [[ ! -e "${CATALOG}" ]]; then
[[ -d "${EROOT}/etc/xml" ]] || mkdir -p "${EROOT}/etc/xml"
"${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}"
einfo "Created XML catalog in ${CATALOG}"
fi
fi
}

View File

@ -1,191 +0,0 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Note: Please bump in sync with dev-libs/libxslt
PYTHON_COMPAT=( python3_{11..14} )
PYTHON_REQ_USE="xml(+)"
inherit autotools python-r1 multilib-minimal
XSTS_HOME="https://www.w3.org/XML/2004/xml-schema-test-suite"
XSTS_NAME_1="xmlschema2002-01-16"
XSTS_NAME_2="xmlschema2004-01-14"
XSTS_TARBALL_1="xsts-2002-01-16.tar.gz"
XSTS_TARBALL_2="xsts-2004-01-14.tar.gz"
XMLCONF_TARBALL="xmlts20130923.tar.gz"
DESCRIPTION="XML C parser and toolkit"
HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home"
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2"
inherit git-r3
else
inherit gnome.org
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
SRC_URI+="
test? (
${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1}
${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2}
https://www.w3.org/XML/Test/${XMLCONF_TARBALL}
)
"
S="${WORKDIR}/${PN}-${PV%_rc*}"
LICENSE="MIT"
SLOT="2"
IUSE="examples icu lzma +python readline static-libs test"
RESTRICT="!test? ( test )"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RDEPEND="
virtual/libiconv
>=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]
icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] )
lzma? ( >=app-arch/xz-utils-5.0.5-r1:=[${MULTILIB_USEDEP}] )
python? ( ${PYTHON_DEPS} )
readline? ( sys-libs/readline:= )
"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
if [[ ${PV} == 9999 ]] ; then
BDEPEND+=" dev-build/gtk-doc-am"
fi
MULTILIB_CHOST_TOOLS=(
/usr/bin/xml2-config
)
PATCHES=(
"${FILESDIR}"/${PN}-2.12.9-icu-pkgconfig.patch
"${FILESDIR}"/${PN}-2.13.8-CVE-2025-6021.patch
)
src_unpack() {
if [[ ${PV} == 9999 ]] ; then
git-r3_src_unpack
else
local tarname=${P/_rc/-rc}.tar.xz
# ${A} isn't used to avoid unpacking of test tarballs into ${WORKDIR},
# as they are needed as tarballs in ${S}/xstc instead and not unpacked
unpack ${tarname}
if [[ -n ${PATCHSET_VERSION} ]] ; then
unpack ${PN}-${PATCHSET_VERSION}.tar.xz
fi
fi
cd "${S}" || die
if use test ; then
cp "${DISTDIR}/${XSTS_TARBALL_1}" \
"${DISTDIR}/${XSTS_TARBALL_2}" \
"${S}"/xstc/ \
|| die "Failed to install test tarballs"
unpack ${XMLCONF_TARBALL}
fi
}
src_prepare() {
default
# Please do not remove, as else we get references to PORTAGE_TMPDIR
# in /usr/lib/python?.?/site-packages/libxml2mod.la among things.
#elibtoolize
eautoreconf
}
multilib_src_configure() {
libxml2_configure() {
ECONF_SOURCE="${S}" econf \
$(use_with icu) \
$(use_with lzma) \
$(use_enable static-libs static) \
$(multilib_native_use_with readline) \
$(multilib_native_use_with readline history) \
--with-legacy \
"$@"
}
# Build python bindings separately
libxml2_configure --without-python
multilib_is_native_abi && use python &&
python_foreach_impl run_in_build_dir libxml2_configure --with-python
}
libxml2_py_emake() {
pushd "${BUILD_DIR}"/python >/dev/null || die
emake top_builddir="${NATIVE_BUILD_DIR}" "$@"
popd >/dev/null || die
}
multilib_src_compile() {
default
if multilib_is_native_abi && use python ; then
NATIVE_BUILD_DIR="${BUILD_DIR}"
python_foreach_impl run_in_build_dir libxml2_py_emake all
fi
}
multilib_src_test() {
ln -s "${S}"/xmlconf || die
emake check
multilib_is_native_abi && use python &&
python_foreach_impl run_in_build_dir libxml2_py_emake check
}
multilib_src_install() {
emake DESTDIR="${D}" install
multilib_is_native_abi && use python &&
python_foreach_impl run_in_build_dir libxml2_py_emake DESTDIR="${D}" install
# Hack until automake release is made for the optimise fix
# https://git.savannah.gnu.org/cgit/automake.git/commit/?id=bde43d0481ff540418271ac37012a574a4fcf097
multilib_is_native_abi && use python && python_foreach_impl python_optimize
}
multilib_src_install_all() {
einstalldocs
if ! use examples ; then
rm -rf "${ED}"/usr/share/doc/${PF}/examples || die
rm -rf "${ED}"/usr/share/doc/${PF}/python/examples || die
fi
rm -rf "${ED}"/usr/share/doc/${PN}-python-${PVR} || die
find "${ED}" -name '*.la' -delete || die
}
pkg_postinst() {
# We don't want to do the xmlcatalog during stage1, as xmlcatalog will not
# be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug #208887.
if [[ -n "${ROOT}" ]]; then
elog "Skipping XML catalog creation for stage building (bug #208887)."
else
# Need an XML catalog, so no-one writes to a non-existent one
CATALOG="${EROOT}/etc/xml/catalog"
# We don't want to clobber an existing catalog though,
# only ensure that one is there
# <obz@gentoo.org>
if [[ ! -e "${CATALOG}" ]]; then
[[ -d "${EROOT}/etc/xml" ]] || mkdir -p "${EROOT}/etc/xml"
"${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}"
einfo "Created XML catalog in ${CATALOG}"
fi
fi
}

View File

@ -1,184 +0,0 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Note: Please bump in sync with dev-libs/libxslt
PYTHON_COMPAT=( python3_{11..14} )
PYTHON_REQ_USE="xml(+)"
inherit python-r1 meson-multilib
XSTS_HOME="https://www.w3.org/XML/2004/xml-schema-test-suite"
XSTS_NAME_1="xmlschema2002-01-16"
XSTS_NAME_2="xmlschema2004-01-14"
XSTS_TARBALL_1="xsts-2002-01-16.tar.gz"
XSTS_TARBALL_2="xsts-2004-01-14.tar.gz"
XMLCONF_TARBALL="xmlts20130923.tar.gz"
DESCRIPTION="XML C parser and toolkit"
HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home"
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2"
inherit git-r3
else
inherit gnome.org
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
SRC_URI+="
test? (
${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1}
${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2}
https://www.w3.org/XML/Test/${XMLCONF_TARBALL}
)
"
S="${WORKDIR}/${PN}-${PV%_rc*}"
LICENSE="MIT"
# see so_version = v_maj + v_min_compat for subslot
SLOT="2/16"
IUSE="icu +python readline static-libs test"
RESTRICT="!test? ( test )"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RDEPEND="
virtual/libiconv
>=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]
icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] )
python? ( ${PYTHON_DEPS} )
readline? ( sys-libs/readline:= )
"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
MULTILIB_CHOST_TOOLS=(
/usr/bin/xml2-config
)
PATCHES=(
"${FILESDIR}"/libxml2-2.14.2-no-git.patch
"${FILESDIR}"/libxml2-2.14.4-cmake.patch
)
src_unpack() {
if [[ ${PV} == 9999 ]] ; then
git-r3_src_unpack
else
local tarname=${P/_rc/-rc}.tar.xz
# ${A} isn't used to avoid unpacking of test tarballs into ${WORKDIR},
# as they are needed as tarballs in ${S}/xstc instead and not unpacked
unpack ${tarname}
if [[ -n ${PATCHSET_VERSION} ]] ; then
unpack ${PN}-${PATCHSET_VERSION}.tar.xz
fi
fi
cd "${S}" || die
if use test ; then
cp "${DISTDIR}/${XSTS_TARBALL_1}" \
"${DISTDIR}/${XSTS_TARBALL_2}" \
"${S}"/xstc/ \
|| die "Failed to install test tarballs"
unpack ${XMLCONF_TARBALL}
fi
}
src_prepare() {
default
sed -e "/^dir_doc/ s/meson.project_name()$/\'${PF}\'/" -i meson.build || die
}
python_configure() {
local emesonargs=(
$(meson_feature icu)
$(meson_native_use_feature readline)
$(meson_native_use_feature readline history)
-Dpython=enabled
)
mkdir "${BUILD_DIR}" || die
pushd "${BUILD_DIR}" >/dev/null || die
meson_src_configure
popd >/dev/null || die
}
multilib_src_configure() {
local emesonargs=(
-Ddefault_library=$(multilib_native_usex static-libs both shared)
$(meson_feature icu)
$(meson_native_use_feature readline)
$(meson_native_use_feature readline history)
-Dpython=disabled
# There has been a clean break with a soname bump.
# It's time to deal with the breakage.
# bug #935452
-Dlegacy=disabled
)
meson_src_configure
if multilib_is_native_abi && use python ; then
python_foreach_impl python_configure
fi
}
python_compile() {
pushd "${BUILD_DIR}" >/dev/null || die
meson_src_compile
popd >/dev/null || die
}
multilib_src_compile() {
meson_src_compile
if multilib_is_native_abi && use python ; then
python_foreach_impl python_compile
fi
}
multilib_src_test() {
meson_src_test
if multilib_is_native_abi && use python ; then
python_foreach_impl meson_src_test
fi
}
python_install() {
pushd "${BUILD_DIR}" >/dev/null || die
meson_src_install
python_optimize
popd >/dev/null || die
}
multilib_src_install() {
if multilib_is_native_abi && use python ; then
python_foreach_impl python_install
fi
meson_src_install
}
pkg_postinst() {
# We don't want to do the xmlcatalog during stage1, as xmlcatalog will not
# be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug #208887.
if [[ -n "${ROOT}" ]]; then
elog "Skipping XML catalog creation for stage building (bug #208887)."
else
# Need an XML catalog, so no-one writes to a non-existent one
CATALOG="${EROOT}/etc/xml/catalog"
# We don't want to clobber an existing catalog though,
# only ensure that one is there
# <obz@gentoo.org>
if [[ ! -e "${CATALOG}" ]]; then
[[ -d "${EROOT}/etc/xml" ]] || mkdir -p "${EROOT}/etc/xml"
"${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}"
einfo "Created XML catalog in ${CATALOG}"
fi
fi
}

View File

@ -1,183 +0,0 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Note: Please bump in sync with dev-libs/libxslt
PYTHON_COMPAT=( python3_{11..14} )
PYTHON_REQ_USE="xml(+)"
inherit python-r1 meson-multilib
XSTS_HOME="https://www.w3.org/XML/2004/xml-schema-test-suite"
XSTS_NAME_1="xmlschema2002-01-16"
XSTS_NAME_2="xmlschema2004-01-14"
XSTS_TARBALL_1="xsts-2002-01-16.tar.gz"
XSTS_TARBALL_2="xsts-2004-01-14.tar.gz"
XMLCONF_TARBALL="xmlts20130923.tar.gz"
DESCRIPTION="XML C parser and toolkit"
HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home"
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2"
inherit git-r3
else
inherit gnome.org
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
SRC_URI+="
test? (
${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1}
${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2}
https://www.w3.org/XML/Test/${XMLCONF_TARBALL}
)
"
S="${WORKDIR}/${PN}-${PV%_rc*}"
LICENSE="MIT"
# see so_version = v_maj + v_min_compat for subslot
SLOT="2/16"
IUSE="icu +python readline static-libs test"
RESTRICT="!test? ( test )"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RDEPEND="
virtual/libiconv
>=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]
icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] )
python? ( ${PYTHON_DEPS} )
readline? ( sys-libs/readline:= )
"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
MULTILIB_CHOST_TOOLS=(
/usr/bin/xml2-config
)
PATCHES=(
"${FILESDIR}"/libxml2-2.14.2-no-git.patch
)
src_unpack() {
if [[ ${PV} == 9999 ]] ; then
git-r3_src_unpack
else
local tarname=${P/_rc/-rc}.tar.xz
# ${A} isn't used to avoid unpacking of test tarballs into ${WORKDIR},
# as they are needed as tarballs in ${S}/xstc instead and not unpacked
unpack ${tarname}
if [[ -n ${PATCHSET_VERSION} ]] ; then
unpack ${PN}-${PATCHSET_VERSION}.tar.xz
fi
fi
cd "${S}" || die
if use test ; then
cp "${DISTDIR}/${XSTS_TARBALL_1}" \
"${DISTDIR}/${XSTS_TARBALL_2}" \
"${S}"/xstc/ \
|| die "Failed to install test tarballs"
unpack ${XMLCONF_TARBALL}
fi
}
src_prepare() {
default
sed -e "/^dir_doc/ s/meson.project_name()$/\'${PF}\'/" -i meson.build || die
}
python_configure() {
local emesonargs=(
$(meson_feature icu)
$(meson_native_use_feature readline)
$(meson_native_use_feature readline history)
-Dpython=enabled
)
mkdir "${BUILD_DIR}" || die
pushd "${BUILD_DIR}" >/dev/null || die
meson_src_configure
popd >/dev/null || die
}
multilib_src_configure() {
local emesonargs=(
-Ddefault_library=$(multilib_native_usex static-libs both shared)
$(meson_feature icu)
$(meson_native_use_feature readline)
$(meson_native_use_feature readline history)
-Dpython=disabled
# There has been a clean break with a soname bump.
# It's time to deal with the breakage.
# bug #935452
-Dlegacy=disabled
)
meson_src_configure
if multilib_is_native_abi && use python ; then
python_foreach_impl python_configure
fi
}
python_compile() {
pushd "${BUILD_DIR}" >/dev/null || die
meson_src_compile
popd >/dev/null || die
}
multilib_src_compile() {
meson_src_compile
if multilib_is_native_abi && use python ; then
python_foreach_impl python_compile
fi
}
multilib_src_test() {
meson_src_test
if multilib_is_native_abi && use python ; then
python_foreach_impl meson_src_test
fi
}
python_install() {
pushd "${BUILD_DIR}" >/dev/null || die
meson_src_install
python_optimize
popd >/dev/null || die
}
multilib_src_install() {
if multilib_is_native_abi && use python ; then
python_foreach_impl python_install
fi
meson_src_install
}
pkg_postinst() {
# We don't want to do the xmlcatalog during stage1, as xmlcatalog will not
# be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug #208887.
if [[ -n "${ROOT}" ]]; then
elog "Skipping XML catalog creation for stage building (bug #208887)."
else
# Need an XML catalog, so no-one writes to a non-existent one
CATALOG="${EROOT}/etc/xml/catalog"
# We don't want to clobber an existing catalog though,
# only ensure that one is there
# <obz@gentoo.org>
if [[ ! -e "${CATALOG}" ]]; then
[[ -d "${EROOT}/etc/xml" ]] || mkdir -p "${EROOT}/etc/xml"
"${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}"
einfo "Created XML catalog in ${CATALOG}"
fi
fi
}

View File

@ -1,2 +1,2 @@
DIST cffi-1.17.1.tar.gz 516621 BLAKE2B 902844a14c0765ada6adf5054a9462a195b49b2ea4d7441deeff97dd6d9209accd29257697002ee1bad7e143ebf983a2d98077b17e08b060dd1ee75dc682e3d8 SHA512 907129891d56351ca5cb885aae62334ad432321826d6eddfaa32195b4c7b7689a80333e6d14d0aab479a646aba148b9852c0815b80344dfffa4f183a5e74372c
DIST cffi-2.0.0b1.tar.gz 521625 BLAKE2B a62b15652e02ed62ce33cc92f6bfd4454a81a6a7c3fb84cc048fbf8cc39325af09c19f5c2a2f1e6c80063e9fc8ae6537d1b917a01f15e8e56c2bb847bd79bfac SHA512 974f724a4c819f0a32da38a7209c6f54e63810817794bab286e8721bab6c59ce50c2c0992c828af54088ff8f1dec40480ffe37155d979cadc26c79cdc6b78f54
DIST cffi-2.0.0.tar.gz 523588 BLAKE2B 2038eb1eeb89b1015ea40202cc5dc0da62989288a41cccf75baeea86051a085e28798e75ce0a74316c2f5bd94e83e0b89d3df6b97ee0f4f61dac301e239bb3e9 SHA512 a8bf705e626f6b5858cc20e9044a23fd653d155e2a2d4cb59f1eed00ef13ebd92d5a2f07738c66b361cb24d863786d4379dcd9c176250b546fbd45758e51d4f4

View File

@ -20,6 +20,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0/${PV}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
# Needs recent libffi for HPPA fixes
DEPEND="
@ -41,6 +42,7 @@ BDEPEND="
distutils_enable_sphinx doc/source
EPYTEST_PLUGINS=()
# xdist fails to collect the tests
distutils_enable_tests pytest
PATCHES=(

View File

@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos"
BDEPEND="
dev-python/setuptools[${PYTHON_USEDEP}]

View File

@ -1,2 +1,3 @@
DIST docutils-0.21.2.tar.gz 2204444 BLAKE2B 727c2f97fc5835a0ffa62e38ea85af366cd89ad1eaec0b8af8b1f3b12e6cddfddb65161ba34f9109952d37ba2cf8985f3c3b6905ebb2ac1c9a984cce3fb4d170 SHA512 7fafa331f5687448e80d299c20cdccc4b49819fa471b5f586bf0ab18c694ba43a70f58e7c76b0a70a16267585548389214e11a4998ad7fdc19a27f0f7644539c
DIST docutils-0.22.1rc1.tar.gz 2288693 BLAKE2B a65ec18afab62a37f254f904b6812ffdd8b67c774ebd7d39c4f661f79150ac8b1dc9077d020ced548d0dd15fdde8458771db4e1576f09b99dd7f001a1988426e SHA512 6cf2d4ce54fd3db87f09ff7a278aeefa4a47c85a7f919c4d8590e42b4583aab0a81405cf047d95238b8bae2b6e0cacad3a5397009c0b3fdb10fe8984080e911f
DIST docutils-0.22.tar.gz 2277984 BLAKE2B 8ad9fc3d064e39bb618f5bac7ef6b69a77e7e811ff2f7c4c1b34f4f8bc1ba793f995e653d20ba536d24af5905f68b8e3f636a0f28f1c9eef46bb6f755d988bc2 SHA512 09082eb3bdd5f9b3e977d356740efee47725a50fbaca7bf35c7fddff06003c2b2177a38d160a9956f9e96261f881c0d870c0aa9fef84f90d0cac079ccc73669d

View File

@ -0,0 +1,61 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=flit
PYTHON_COMPAT=( python3_{11..14} pypy3_11 )
inherit distutils-r1 pypi
DESCRIPTION="Python Documentation Utilities (reference reStructuredText impl.)"
HOMEPAGE="
https://docutils.sourceforge.io/
https://pypi.org/project/docutils/
"
# GPL-3+ only for emacs/rst.el
LICENSE="BSD BSD-2 GPL-3+ PSF-2.4 public-domain"
SLOT="0"
RDEPEND="
dev-python/pillow[${PYTHON_USEDEP}]
dev-python/pygments[${PYTHON_USEDEP}]
"
BDEPEND="
${RDEPEND}
"
python_compile_all() {
# Generate html docs from reStructured text sources.
# Place html4css1.css in base directory to ensure that the generated reference to it is correct.
cp docutils/writers/html4css1/html4css1.css . || die
cd tools || die
"${EPYTHON}" buildhtml.py --input-encoding=utf-8 --no-datestamp \
--stylesheet-path=../html4css1.css, --traceback ../docs || die
}
src_test() {
cd test || die
distutils-r1_src_test
}
python_test() {
"${EPYTHON}" alltests.py -v || die "Testing failed with ${EPYTHON}"
}
python_install() {
distutils-r1_python_install
# Install tools.
python_doscript tools/buildhtml.py
}
python_install_all() {
local DOCS=( *.rst )
local HTML_DOCS=( docs tools docutils/writers/html4css1/html4css1.css )
distutils-r1_python_install_all
}

View File

@ -24,7 +24,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="test test-rust"
RESTRICT="!test? ( test )"

View File

@ -24,7 +24,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
IUSE="test test-rust"
RESTRICT="!test? ( test )"

View File

@ -1 +1,2 @@
DIST pycparser-2.22.tar.gz 172736 BLAKE2B a080df68cf114c355949b2911a80e89ed02a64b8d1d03e3c5807222249e5dfd2491f691962885dbadcdaf323b55a05c5597319ac082dcf6c67a9ac952be9a7e2 SHA512 c9a81c78d87162f71281a32a076b279f4f7f2e17253fe14c89c6db5f9b3554a6563ff700c385549a8b51ef8832f99f7bb4ac07f22754c7c475dd91feeb0cf87f
DIST pycparser-2.23.tar.gz 173734 BLAKE2B f9a11de129f6b5495df9a25778cfc73c1ed236f522b2c8ca2676fac14b78f35e2928547ea654adff4ea28a2dfa8a51d3a5b2085ab9f40e0d7b9ed5ec4568eb2b SHA512 317f02bf58482b9d80b7395fe6fe5f756230915473b65b219755ccf0f4f1d3b227f508925fcf81fe28bcd6c113cf93e0075bf16a9a499cb306e1627222b1b1a7

View File

@ -0,0 +1,69 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{11..14} python3_{13,14}t pypy3_11 )
inherit distutils-r1 pypi
DESCRIPTION="C parser and AST generator written in Python"
HOMEPAGE="
https://github.com/eliben/pycparser/
https://pypi.org/project/pycparser/
"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
RDEPEND="
dev-python/ply:=[${PYTHON_USEDEP}]
"
BDEPEND="
${RDEPEND}
"
distutils_enable_tests unittest
python_prepare_all() {
# remove the original files to guarantee their regen
rm pycparser/{c_ast,lextab,yacctab}.py || die
# kill sys.path manipulations to force the tests to use built files
sed -i -e '/sys\.path/d' tests/*.py || die
# Ensure we can find tests in our directory
sed -i -e 's/from tests.test_util/from test_util/g' tests/test_*.py || die
# unbundle ply
rm -r pycparser/ply || die
sed -i -e 's:\(from \)[.]\(ply\b\):\1\2:' pycparser/*.py || die
sed -i -e "s:'pycparser.ply'::" setup.py || die
ln -s "${S}"/examples tests/examples || die
rm tests/test_examples.py || die
distutils-r1_python_prepare_all
}
python_test() {
# Skip tests if cpp is not in PATH
type -P cpp >/dev/null || return 0
# change workdir to avoid '.' import
cd tests || die
# Ensure that 'cpp' is called with the right arguments
# Tests don't seem to always pass the include they intend to use.
mkdir -p "${T}"/bin || die
cat > "${T}"/bin/cpp <<-EOF || die
#!${BROOT}/bin/bash
exec ${BROOT}/usr/bin/cpp -I${S}/utils/fake_libc_include/ \$@
EOF
chmod +x "${T}"/bin/cpp || die
PATH="${T}/bin:${PATH}" eunittest
}

View File

@ -1,3 +1,7 @@
DIST trove_classifiers-2025.5.9.12.tar.gz 16940 BLAKE2B f6143f341d280eca611269c1a04b7f795d8f8733e97518d81d5872b8e1e13f745f7428737993a5c50285de24f56f899737d05fe073c683ddd69765b6081a6ebe SHA512 ee858f52c08b867fe4845ebb19f9b431308d216b5313e2bc030d63340860205d40125ef6cee218f734ccd49e5ae36011c8e3415f03d0ace182cb518ed5f2318d
DIST trove_classifiers-2025.8.26.11.tar.gz 16960 BLAKE2B 890b9ab53dd1addc1bc1d3f73d68e6ff64eaa02f2583a8ef566f8c66c89ea6dbc8a628949cb1bd7ce605f1bd54f8de487787b21ab539b337f6011c97b80944c2 SHA512 36bab8810ecd3be1783adfaf5bcb65aacdd117417e929fcfe73f2a798f71fe34722dc9b2d8dcb6d9e78b8690f83f952f4b780031b063e683c8aa71dac1d6240c
DIST trove_classifiers-2025.8.6.13.tar.gz 16932 BLAKE2B f4567cd2362897fe6cacea6c7a554bd1501d5ac176b7cc83d55a53a53599f8996efaa7c0d57f6911ed0a66f441d24127391bfab0f87ff81ea0d0ac4e5c46905e SHA512 14c9c4b082f4f92d02b84103e5fbb205ea8a716635e1db77c549776c6ce5caa46d4891bd79702f80323e0b140f65d2c9e0779cc168717c938fd471c046ae3102
DIST trove_classifiers-2025.9.11.17.tar.gz 16975 BLAKE2B a00df0a1dbb15b6f7cd5455def2eb3ae9f593d1c3cdf84a8b49ac66352833bcd1f1f539fadf899fd25cf9dac9194d2883db87d7559128408d4c6662bca45dc3f SHA512 652514278a81cf81e62b5062a665f719c2a861f33416aa29e6446a88e57ab5fd68888569556bbc1d97d0a1c713b122a02107358b0b5f51f7e6772e37a9306abf
DIST trove_classifiers-2025.9.11.17.tar.gz.provenance 9341 BLAKE2B d50ae31eae2b9197d2a965de684229f01ab15bffdaef1a9dd826d2189ad3ad2e18eec50a4c4beb943e185f3172e39cbccab65483893935949934a80818a1b32c SHA512 ebfad1a94a1bf2f7fa34ae7409c7b375cb5d727d693c0da0c60f06bac7fa2dc665ef80c9516f232ce0afe6863c4cd825019a9a10c5b2d32c171b480e18cfd265
DIST trove_classifiers-2025.9.8.13.tar.gz 16955 BLAKE2B 5f966174da19b6299c6d6585f1e6ecb418c968215fc8e6d2fe9d6ac1cc030d2b0c8b51db2fe743858a4bff74ba7a2749ce236e628c3bff64022689a162a59b50 SHA512 af132fee4c1374054c5f02341f6428818a5568402e1f6bf40b74d4db00fd988e530007a57b9868f68634a47e99d9354a5c0f8f40d2db5005373fa4c32f7202ec
DIST trove_classifiers-2025.9.8.13.tar.gz.provenance 9341 BLAKE2B 415076c8df78f0a836d5288bdce567908089b3f2e55de468be8ccb07daa9ef9e72c626d07e5557c8a2800cabc43835ee342ec9f565249e8229eb2493822e0b32 SHA512 214c3d8f56f50ba75968943c2a0f198adef7fe5abfad4285821084128b79debeaf129d8a84a7f041fc072c3b735b341d3a6f380600400a0638509a163405c93c
DIST trove_classifiers-2025.9.9.12.tar.gz 16970 BLAKE2B c767eb6c7936342325a4928b699d80fe8f9f3e451b2e501fd67f374342dbfde9a24bd96194cb3fd611605df6c0bc20226bcb8fdbdbce9b0a677a36a6f7773a78 SHA512 5b201b1532aa467fbfd871bb28d34bb53698c1837379989f6764a297057ff7ce62095326fd2abbeb7fb539d71f169d0f13976fb78cd0f4a2eca9b268a2799534
DIST trove_classifiers-2025.9.9.12.tar.gz.provenance 9310 BLAKE2B 1e8d503ba165999dd1618ab87ae5886b3124f854b2ef40ffdec62824690308307010771bd17b179c2078053735257d60b99deb930f3fbda778af5d30c23dde85 SHA512 269106f6280b648a612210d47605aaf339ccd63916c334c99d1c4e5e7ddab5499db60d4aca781e5995503674ff59580c7d59a5818482d4ad70708be470182f80

View File

@ -4,6 +4,7 @@
EAPI=8
DISTUTILS_USE_PEP517=flit
PYPI_VERIFY_REPO=https://github.com/pypa/trove-classifiers
PYTHON_COMPAT=( pypy3_11 python3_{11..14} python3_{13,14}t )
inherit distutils-r1 pypi

View File

@ -4,6 +4,7 @@
EAPI=8
DISTUTILS_USE_PEP517=flit
PYPI_VERIFY_REPO=https://github.com/pypa/trove-classifiers
PYTHON_COMPAT=( pypy3_11 python3_{11..14} python3_{13,14}t )
inherit distutils-r1 pypi
@ -16,8 +17,9 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
EPYTEST_PLUGINS=()
distutils_enable_tests pytest
src_configure() {

View File

@ -0,0 +1,47 @@
# Copyright 2022-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=flit
PYPI_VERIFY_REPO=https://github.com/pypa/trove-classifiers
PYTHON_COMPAT=( pypy3_11 python3_{11..14} python3_{13,14}t )
inherit distutils-r1 pypi
DESCRIPTION="Canonical source for classifiers on PyPI (pypi.org)"
HOMEPAGE="
https://github.com/pypa/trove-classifiers/
https://pypi.org/project/trove-classifiers/
"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
EPYTEST_PLUGINS=()
distutils_enable_tests pytest
src_configure() {
grep -q 'build-backend = "setuptools' pyproject.toml ||
die "Upstream changed build-backend, recheck"
# write a custom pyproject.toml to ease hatchling bootstrap
cat > pyproject.toml <<-EOF || die
[build-system]
requires = ["flit_core >=3.2,<4"]
build-backend = "flit_core.buildapi"
[project]
name = "trove-classifiers"
version = "${PV}"
description = "Canonical source for classifiers on PyPI (pypi.org)."
[project.scripts]
trove-classifiers = "trove_classifiers.__main__:cli"
EOF
}
python_test() {
epytest
"${EPYTHON}" -m tests.lib || die
}

View File

@ -1,4 +1,2 @@
DIST linux-6.14.tar.xz 149408504 BLAKE2B 11835719804b406fe281ea1c276a84dc0cbaa808552ddcca9233d3eaeb1c001d0455c7205379b02de8e8db758c1bae6fe7ceb6697e63e3cf9ae7187dc7a9715e SHA512 71dcaa3772d8d9797c3ae30cae9c582b11a7047a3bbcb8dfd479a4dffb40ff0da74cf3d45175f50cc9992e338bcadd46c9c570f54054ca3bde6661768d3d22eb
DIST linux-6.15.tar.xz 151168812 BLAKE2B 465596c6dc053ff3a3966302a906d3edb4f7ee1ef82f8c20b96360196d3414f5b1deeafa67b8340fcdecd3617280ba9b756d7073ad15c707865e256397b4af53 SHA512 d03788ffa8d8ae1b84ef1286bb44a08fc01432e509dfec6cccae5c5a5a47201d378aec2bcd21e6f0bbd1e625b26f47780c06ee9c1cef3775358f98b160923f30
DIST linux-6.16.tar.xz 152620004 BLAKE2B 87bc4da7e89cc8265aebffea7ec6c09f711be24fee87cb1c03a264c03fd5a538d66aa806640835aa5103926e612cdfbc52d7c861d7f7065f1a8bb11d893b0921 SHA512 55a00f89ad6db6db2e26ff5dc5cfc96bbf6654e5bd5d17d2a3b944a47640367e54139716d230923187bebc6cb7756edc9511a620fb8abc6f32c50a658a734784
DIST patch-6.16.4.xz 541776 BLAKE2B f343d8d03d5b09e06fbf906df7ac6175726c5cef8f2b9db2f31f509785d5d6e2a4d6b5573e8f6cce818e08e6a21da19320e2af3b43207fbd549a738ac2455f33 SHA512 b71b17fdc8f25e4e4e05b364c31a66502a3e00e6e3d66808f9726098f1f2e315e3666aa69c6f164a6cf8f1c2c4359fcd620b0dd624a98d007da4bd34310b03f1

View File

@ -3,9 +3,9 @@
EAPI=8
LLVM_COMPAT=( {18..20} )
LLVM_COMPAT=( {18..21} )
PYTHON_COMPAT=( python3_{10..14} python3_{13,14}t)
inherit bash-completion-r1 estack flag-o-matic linux-info llvm-r1 toolchain-funcs python-r1
inherit bash-completion-r1 estack flag-o-matic linux-info llvm-r1 toolchain-funcs python-single-r1
DESCRIPTION="Userland tools for Linux Performance Counters"
HOMEPAGE="https://perfwiki.github.io/main/"
@ -35,7 +35,7 @@ S="${S_K}/tools/perf"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
IUSE="abi_mips_o32 abi_mips_n32 abi_mips_n64 babeltrace capstone big-endian bpf caps crypt debug +doc gtk java libpfm +libtraceevent +libtracefs lzma numa perl +python +slang systemtap tcmalloc unwind"
IUSE="abi_mips_o32 abi_mips_n32 abi_mips_n64 babeltrace capstone big-endian bpf caps crypt debug gtk java libpfm +libtraceevent +libtracefs lzma numa perl +python +slang systemtap tcmalloc unwind"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
@ -46,17 +46,17 @@ BDEPEND="
${LINUX_PATCH+dev-util/patchutils}
${PYTHON_DEPS}
>=app-arch/tar-1.34-r2
dev-python/setuptools[${PYTHON_USEDEP}]
$(python_gen_cond_dep '
dev-python/setuptools[${PYTHON_USEDEP}]
')
app-alternatives/yacc
app-alternatives/lex
sys-apps/which
virtual/pkgconfig
doc? (
app-text/asciidoc
app-text/sgml-common
app-text/xmlto
sys-process/time
)
app-text/asciidoc
app-text/sgml-common
app-text/xmlto
sys-process/time
"
RDEPEND="
@ -103,14 +103,6 @@ QA_FLAGS_IGNORED=(
'usr/libexec/perf-core/dlfilters/.*' # plugins
)
pkg_pretend() {
if ! use doc ; then
ewarn "Without the doc USE flag you won't get any documentation nor man pages."
ewarn "And without man pages, you won't get any --help output for perf and its"
ewarn "sub-tools."
fi
}
pkg_setup() {
local CONFIG_CHECK="
~!SCHED_OMIT_FRAME_POINTER
@ -309,7 +301,7 @@ src_compile() {
filter-lto
perf_make -f Makefile.perf
use doc && perf_make -C Documentation man
perf_make -C Documentation man
}
src_test() {
@ -317,14 +309,10 @@ src_test() {
}
src_install() {
_install_python_ext() {
perf_make -f Makefile.perf install-python_ext DESTDIR="${D}"
}
perf_make -f Makefile.perf install DESTDIR="${D}"
if use python; then
python_foreach_impl _install_python_ext
perf_make -f Makefile.perf install-python_ext DESTDIR="${D}"
fi
if use gtk; then
@ -343,7 +331,5 @@ src_install() {
# perf needs this decompressed to print out tips for users
docompress -x /usr/share/doc/${PF}/tips.txt
if use doc ; then
doman Documentation/*.1
fi
doman Documentation/*.1
}

View File

@ -1,349 +0,0 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
LLVM_COMPAT=( {18..20} )
PYTHON_COMPAT=( python3_{10..14} python3_{13,14}t)
inherit bash-completion-r1 estack flag-o-matic linux-info llvm-r1 toolchain-funcs python-r1
DESCRIPTION="Userland tools for Linux Performance Counters"
HOMEPAGE="https://perfwiki.github.io/main/"
LINUX_V="${PV:0:1}.x"
if [[ ${PV} == *_rc* ]] ; then
LINUX_VER=$(ver_cut 1-2).$(($(ver_cut 3)-1))
PATCH_VERSION=$(ver_cut 1-3)
LINUX_PATCH=patch-${PV//_/-}.xz
SRC_URI="https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/testing/${LINUX_PATCH}
https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/testing/v${PATCH_VERSION}/${LINUX_PATCH}"
elif [[ ${PV} == *.*.* ]] ; then
# stable-release series
LINUX_VER=$(ver_cut 1-2)
LINUX_PATCH=patch-${PV}.xz
SRC_URI="https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/${LINUX_PATCH}"
else
LINUX_VER=${PV}
fi
LINUX_SOURCES="linux-${LINUX_VER}.tar.xz"
SRC_URI+=" https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/${LINUX_SOURCES}"
S_K="${WORKDIR}/linux-${LINUX_VER}"
S="${S_K}/tools/perf"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
IUSE="abi_mips_o32 abi_mips_n32 abi_mips_n64 babeltrace capstone big-endian bpf caps crypt debug +doc gtk java libpfm +libtraceevent +libtracefs lzma numa perl +python +slang systemtap tcmalloc unwind"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
"
# setuptools (and Python) are always needed even if not building Python bindings
BDEPEND="
${LINUX_PATCH+dev-util/patchutils}
${PYTHON_DEPS}
>=app-arch/tar-1.34-r2
dev-python/setuptools[${PYTHON_USEDEP}]
app-alternatives/yacc
app-alternatives/lex
sys-apps/which
virtual/pkgconfig
doc? (
app-text/asciidoc
app-text/sgml-common
app-text/xmlto
sys-process/time
)
"
RDEPEND="
babeltrace? ( dev-util/babeltrace:0/1 )
bpf? (
dev-libs/libbpf
dev-util/bpftool
dev-util/pahole
$(llvm_gen_dep '
llvm-core/clang:${LLVM_SLOT}=
llvm-core/llvm:${LLVM_SLOT}=
')
)
caps? ( sys-libs/libcap )
capstone? ( dev-libs/capstone )
crypt? ( dev-libs/openssl:= )
gtk? ( x11-libs/gtk+:2 )
java? ( virtual/jre:* )
libpfm? ( dev-libs/libpfm:= )
libtraceevent? ( dev-libs/libtraceevent )
libtracefs? ( dev-libs/libtracefs )
lzma? ( app-arch/xz-utils )
numa? ( sys-process/numactl )
perl? ( dev-lang/perl:= )
python? ( ${PYTHON_DEPS} )
slang? ( sys-libs/slang )
systemtap? ( dev-debug/systemtap )
tcmalloc? ( dev-util/google-perftools )
unwind? ( sys-libs/libunwind:= )
app-arch/zstd:=
dev-libs/elfutils
sys-libs/binutils-libs:=
sys-libs/zlib
virtual/libcrypt
"
DEPEND="${RDEPEND}
>=sys-kernel/linux-headers-5.10
java? ( virtual/jdk )
"
QA_FLAGS_IGNORED=(
'usr/bin/perf-read-vdso32' # not linked with anything except for libc
'usr/libexec/perf-core/dlfilters/.*' # plugins
)
pkg_pretend() {
if ! use doc ; then
ewarn "Without the doc USE flag you won't get any documentation nor man pages."
ewarn "And without man pages, you won't get any --help output for perf and its"
ewarn "sub-tools."
fi
}
pkg_setup() {
local CONFIG_CHECK="
~!SCHED_OMIT_FRAME_POINTER
~DEBUG_INFO
~FRAME_POINTER
~FTRACE
~FTRACE_SYSCALLS
~FUNCTION_TRACER
~KALLSYMS
~KALLSYMS_ALL
~KPROBES
~KPROBE_EVENTS
~PERF_EVENTS
~STACKTRACE
~TRACEPOINTS
~UPROBES
~UPROBE_EVENTS
"
use bpf && llvm-r1_pkg_setup
# We enable python unconditionally as libbpf always generates
# API headers using python script
python_setup
if use bpf ; then
CONFIG_CHECK+="~BPF ~BPF_EVENTS ~BPF_SYSCALL ~DEBUG_INFO_BTF ~HAVE_EBPF_JIT ~UNWINDER_FRAME_POINTER"
fi
linux-info_pkg_setup
}
# src_unpack and src_prepare are copied to dev-util/bpftool since
# it's building from the same tarball, please keep it in sync with bpftool
src_unpack() {
local paths=(
'arch/*/include/*' 'arch/*/lib/*' 'arch/*/tools/*' 'include/*'
'kernel/bpf/*' 'lib/*' 'scripts/*' 'tools/arch/*' 'tools/bpf/*'
'tools/build/*' 'tools/include/*' 'tools/lib/*' 'tools/perf/*'
'tools/scripts/*'
)
# We expect the tar implementation to support the -j option (both
# GNU tar and libarchive's tar support that).
echo ">>> Unpacking ${LINUX_SOURCES} (${paths[*]}) to ${PWD}"
gtar --wildcards -xpf "${DISTDIR}"/${LINUX_SOURCES} \
"${paths[@]/#/linux-${LINUX_VER}/}" || die
if [[ -n ${LINUX_PATCH} ]] ; then
eshopts_push -o noglob
ebegin "Filtering partial source patch"
xzcat "${DISTDIR}"/${LINUX_PATCH} | filterdiff -p1 ${paths[@]/#/-i} > ${P}.patch
assert -n "Unpacking to ${P} from ${DISTDIR}/${LINUX_PATCH} failed"
eend $? || die "filterdiff failed"
test -s ${P}.patch || die "patch is empty?!"
eshopts_pop
fi
local a
for a in ${A}; do
[[ ${a} == ${LINUX_SOURCES} ]] && continue
[[ ${a} == ${LINUX_PATCH} ]] && continue
unpack ${a}
done
}
src_prepare() {
default
if [[ -n ${LINUX_PATCH} ]] ; then
pushd "${S_K}" >/dev/null || die
eapply "${WORKDIR}"/${P}.patch
popd || die
fi
pushd "${S_K}" >/dev/null || die
# Gentoo patches go here
popd || die
# Drop some upstream too-developer-oriented flags and fix the
# Makefile in general
sed -i \
-e "s@\$(sysconfdir_SQ)/bash_completion.d@$(get_bashcompdir)@" \
"${S}"/Makefile.perf || die
# A few places still use -Werror w/out $(WERROR) protection.
sed -i -e 's@-Werror@@' \
"${S}"/Makefile.perf "${S_K}"/tools/lib/bpf/Makefile \
"${S_K}"/tools/lib/perf/Makefile || die
# Avoid the call to make kernelversion
sed -i -e '/PERF-VERSION-GEN/d' Makefile.perf || die
echo "#define PERF_VERSION \"${PV}\"" > PERF-VERSION-FILE
# The code likes to compile local assembly files which lack ELF markings.
find -name '*.S' -exec sed -i '$a.section .note.GNU-stack,"",%progbits' {} +
}
puse() { usex $1 "" 1; }
perf_make() {
# The arch parsing is a bit funky. The perf tools package is integrated
# into the kernel, so it wants an ARCH that looks like the kernel arch,
# but it also wants to know about the split value -- i386/x86_64 vs just
# x86. We can get that by telling the func to use an older linux version.
# It's kind of a hack, but not that bad ...
# LIBDIR sets a search path of perf-gtk.so. Bug 515954
local arch=$(tc-arch-kernel)
local java_dir
use java && java_dir="${EPREFIX}/etc/java-config-2/current-system-vm"
# sync this with the whitelist in tools/perf/Makefile.config
local disable_libdw
if ! use amd64 && ! use x86 && \
! use arm && \
! use arm64 && \
! use ppc && ! use ppc64 \
! use s390 && \
! use riscv && \
! use loong
then
disable_libdw=1
fi
# perf directly invokes LD for linking without going through CC, on mips
# it is required to specify the emulation. port of below buildroot patch
# https://patchwork.ozlabs.org/project/buildroot/patch/20170217105905.32151-1-Vincent.Riera@imgtec.com/
local linker="$(tc-getLD)"
if use mips
then
if use big-endian
then
use abi_mips_n64 && linker+=" -m elf64btsmip"
use abi_mips_n32 && linker+=" -m elf32btsmipn32"
use abi_mips_o32 && linker+=" -m elf32btsmip"
else
use abi_mips_n64 && linker+=" -m elf64ltsmip"
use abi_mips_n32 && linker+=" -m elf32ltsmipn32"
use abi_mips_o32 && linker+=" -m elf32ltsmip"
fi
fi
# FIXME: NO_CORESIGHT
local emakeargs=(
V=1 VF=1
HOSTCC="$(tc-getBUILD_CC)" HOSTLD="$(tc-getBUILD_LD)"
CC="$(tc-getCC)" CXX="$(tc-getCXX)" AR="$(tc-getAR)" LD="${linker}" NM="$(tc-getNM)"
CLANG="${CHOST}-clang"
PKG_CONFIG="$(tc-getPKG_CONFIG)"
prefix="${EPREFIX}/usr" bindir_relative="bin"
tipdir="share/doc/${PF}"
EXTRA_CFLAGS="${CFLAGS}"
EXTRA_LDFLAGS="${LDFLAGS}"
ARCH="${arch}"
BUILD_BPF_SKEL=$(usex bpf 1 "") \
BUILD_NONDISTRO=1
JDIR="${java_dir}"
CORESIGHT=
GTK2=$(usex gtk 1 "")
feature-gtk2-infobar=$(usex gtk 1 "")
NO_AUXTRACE=
NO_BACKTRACE=
NO_CAPSTONE=$(puse capstone)
NO_DEMANGLE=
NO_JVMTI=$(puse java)
NO_LIBAUDIT=1
NO_LIBBABELTRACE=$(puse babeltrace)
NO_LIBBIONIC=1
NO_LIBBPF=$(puse bpf)
NO_LIBCAP=$(puse caps)
NO_LIBCRYPTO=$(puse crypt)
NO_LIBDW_DWARF_UNWIND="${disable_libdw}"
NO_LIBELF=
NO_LIBLLVM=$(puse bpf)
NO_LIBNUMA=$(puse numa)
NO_LIBPERL=$(puse perl)
NO_LIBPFM4=$(puse libpfm)
NO_LIBPYTHON=$(puse python)
NO_LIBTRACEEVENT=$(puse libtraceevent)
NO_LIBUNWIND=$(puse unwind)
NO_SDT=$(puse systemtap)
NO_SHELLCHECK=1
NO_SLANG=$(puse slang)
NO_LZMA=$(puse lzma)
NO_ZLIB=
TCMALLOC=$(usex tcmalloc 1 "")
WERROR=0
DEBUG=$(usex debug 1 "")
LIBDIR="/usr/libexec/perf-core"
libdir="${EPREFIX}/usr/$(get_libdir)"
plugindir="${EPREFIX}/usr/$(get_libdir)/perf/plugins"
"$@"
)
NO_JEVENTS=$(puse python) emake "${emakeargs[@]}"
}
src_compile() {
filter-lto
perf_make -f Makefile.perf
use doc && perf_make -C Documentation man
}
src_test() {
:
}
src_install() {
_install_python_ext() {
perf_make -f Makefile.perf install-python_ext DESTDIR="${D}"
}
perf_make -f Makefile.perf install DESTDIR="${D}"
if use python; then
python_foreach_impl _install_python_ext
fi
if use gtk; then
local libdir
libdir="$(get_libdir)"
# on some arches it ends up in lib even on 64bit, ppc64 for instance.
[[ -f "${ED}"/usr/lib/libperf-gtk.so ]] && libdir="lib"
mv "${ED}"/usr/${libdir}/libperf-gtk.so \
"${ED}"/usr/libexec/perf-core || die
fi
dodoc CREDITS
dodoc *txt Documentation/*.txt
# perf needs this decompressed to print out tips for users
docompress -x /usr/share/doc/${PF}/tips.txt
if use doc ; then
doman Documentation/*.1
fi
}

View File

@ -1,4 +1,4 @@
# Copyright 2019-2024 Gentoo Authors
# Copyright 2019-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: acct-group.eclass
@ -78,7 +78,7 @@ ACCT_GROUP_NAME=${PN}
# << Boilerplate ebuild variables >>
: "${DESCRIPTION:="System group: ${ACCT_GROUP_NAME}"}"
: "${SLOT:=0}"
: "${KEYWORDS:=~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris}"
: "${KEYWORDS:=~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris}"
S=${WORKDIR}

View File

@ -144,7 +144,7 @@ ACCT_USER_NAME=${PN}
# << Boilerplate ebuild variables >>
: "${DESCRIPTION:="System user: ${ACCT_USER_NAME}"}"
: "${SLOT:=0}"
: "${KEYWORDS:=~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris}"
: "${KEYWORDS:=~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris}"
S=${WORKDIR}

View File

@ -43,7 +43,7 @@ case ${EAPI} in
# than the oldest in-tree in future.
if [[ -z ${CARGO_BOOTSTRAP} ]]; then
if ver_test "${RUST_MIN_VER}" -lt "${_CARGO_ECLASS_RUST_MIN_VER}"; then
die "RUST_MIN_VERSION must be at least ${_CARGO_ECLASS_RUST_MIN_VER}"
die "RUST_MIN_VER must be at least ${_CARGO_ECLASS_RUST_MIN_VER}"
fi
fi
else

View File

@ -1,2 +1 @@
DIST ipset-7.23.tar.bz2 695655 BLAKE2B a596630d12a8bcc1383475627e5e62b7be4c17570ae9d3650b9dbcac0ec46324e1ac7c0e7e11f674fb5354871538f6f15e57476ac752b1ac1415023d837904e6 SHA512 5a43c790abf157a55db5a9a22cb5f28a225f5c7969beda81566a2259aa82c9d852979eb805b11b4347f47c6a0c2cc4de6f14e4733bee5b562844422a45fb9dab
DIST ipset-7.24.tar.bz2 695548 BLAKE2B 52e05313353e7b5fe969d5f113794238356bf900b4e7ac4693c05164ecde0826d0e911dcae67bb4103f49b587f94f561d14dcfebb78c5c231013fda7d36a81da SHA512 18ccb49bd38083f0556b11e1d17f43791c52a2b094c9a500b6f770796b17e8e70c3860a628eac2252eb672b1fc9de734d3a0e0823d61dd9be7b4188adc6dd214

View File

@ -1,116 +0,0 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MODULES_OPTIONAL_IUSE=modules
inherit autotools bash-completion-r1 linux-mod-r1 systemd
DESCRIPTION="IPset tool for iptables, successor to ippool"
HOMEPAGE="https://ipset.netfilter.org/ https://git.netfilter.org/ipset/"
SRC_URI="https://ipset.netfilter.org/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv x86"
RDEPEND="
net-firewall/iptables
net-libs/libmnl:=
"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
DOCS=( ChangeLog INSTALL README UPGRADE )
# configurable from outside, e.g. /etc/portage/make.conf
IP_NF_SET_MAX=${IP_NF_SET_MAX:-256}
PATCHES=( "${FILESDIR}/${PN}-bash-completion.patch")
src_prepare() {
default
eautoreconf
}
pkg_setup() {
get_version
CONFIG_CHECK="NETFILTER"
ERROR_NETFILTER="ipset requires NETFILTER support in your kernel."
CONFIG_CHECK+=" NETFILTER_NETLINK"
ERROR_NETFILTER_NETLINK="ipset requires NETFILTER_NETLINK support in your kernel."
# It does still build without NET_NS, but it may be needed in future.
#CONFIG_CHECK="${CONFIG_CHECK} NET_NS"
#ERROR_NET_NS="ipset requires NET_NS (network namespace) support in your kernel."
CONFIG_CHECK+=" !PAX_CONSTIFY_PLUGIN"
ERROR_PAX_CONSTIFY_PLUGIN="ipset contains constified variables (#614896)"
build_modules=0
if use modules; then
if linux_config_src_exists && linux_chkconfig_builtin "MODULES" ; then
if linux_chkconfig_present "IP_NF_SET" || \
linux_chkconfig_present "IP_SET"; then #274577
eerror "There is IP{,_NF}_SET or NETFILTER_XT_SET support in your kernel."
eerror "Please either build ipset with modules USE flag disabled"
eerror "or rebuild kernel without IP_SET support and make sure"
eerror "there is NO kernel ip_set* modules in /lib/modules/<your_kernel>/... ."
die "USE=modules and in-kernel ipset support detected."
else
einfo "Modular kernel detected. Gonna build kernel modules..."
build_modules=1
fi
else
eerror "Nonmodular kernel detected, but USE=modules. Either build"
eerror "modular kernel (without IP_SET) or disable USE=modules"
die "Nonmodular kernel detected, will not build kernel modules"
fi
fi
[[ ${build_modules} -eq 1 ]] && linux-mod-r1_pkg_setup
}
src_configure() {
export bashcompdir="$(get_bashcompdir)"
econf \
--enable-bashcompl \
$(use_with modules kmod) \
--with-maxsets=${IP_NF_SET_MAX} \
--with-ksource="${KV_DIR}" \
--with-kbuild="${KV_OUT_DIR}"
}
src_compile() {
einfo "Building userspace"
local modlist=( xt_set=kernel/net/netfilter/ipset/:"${S}":kernel/net/netfilter/:
em_ipset=kernel/net/sched:"${S}":kernel/net/sched/:modules )
for i in ip_set{,_bitmap_{ip{,mac},port},_hash_{ip{,mac,mark,port{,ip,net}},mac,net{,port{,net},iface,net}},_list_set}; do
modlist+=( ${i}=kernel/net/netfilter/ipset/:"${S}":kernel/net/netfilter/ipset )
done
emake
if [[ ${build_modules} -eq 1 ]]; then
einfo "Building kernel modules"
linux-mod-r1_src_compile
fi
}
src_install() {
einfo "Installing userspace"
default
find "${ED}" -name '*.la' -delete || die
newinitd "${FILESDIR}"/ipset.initd-r7 ${PN}
newconfd "${FILESDIR}"/ipset.confd-r1 ${PN}
systemd_newunit "${FILESDIR}"/ipset.systemd-r1 ${PN}.service
keepdir /var/lib/ipset
if [[ ${build_modules} -eq 1 ]]; then
einfo "Installing kernel modules"
linux-mod-r1_src_install
fi
}

View File

@ -22,7 +22,7 @@ else
https://netfilter.org/projects/nftables/files/${P}.tar.xz
verify-sig? ( https://netfilter.org/projects/nftables/files/${P}.tar.xz.sig )
"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
KEYWORDS="amd64 arm arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~sparc x86"
BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-netfilter-20240415 )"
fi

View File

@ -300,6 +300,8 @@ multilib_src_configure() {
myconf+=( --with-shared-modules=DEFAULT,!vfs_snapper )
fi
append-ldflags $(test-flags-CCLD -Wl,--undefined-version) # bug 914898
append-cppflags "-I${ESYSROOT}/usr/include/et"
waf-utils_src_configure ${myconf[@]}

View File

@ -304,6 +304,8 @@ multilib_src_configure() {
myconf+=( --with-shared-modules=DEFAULT,!vfs_snapper )
fi
append-ldflags $(test-flags-CCLD -Wl,--undefined-version) # bug 914898
append-cppflags "-I${ESYSROOT}/usr/include/et"
waf-utils_src_configure ${myconf[@]}

View File

@ -304,6 +304,8 @@ multilib_src_configure() {
myconf+=( --with-shared-modules=DEFAULT,!vfs_snapper )
fi
append-ldflags $(test-flags-CCLD -Wl,--undefined-version) # bug 914898
append-cppflags "-I${ESYSROOT}/usr/include/et"
waf-utils_src_configure ${myconf[@]}

View File

@ -18,7 +18,7 @@ else
https://netfilter.org/projects/${PN}/files/${P}.tar.xz
verify-sig? ( https://netfilter.org/projects/${PN}/files/${P}.tar.xz.sig )
"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
BDEPEND+="verify-sig? ( >=sec-keys/openpgp-keys-netfilter-20240415 )"
fi

View File

@ -6,7 +6,5 @@ DIST curl-8.14.1.tar.xz 2817248 BLAKE2B 4ce2277d143084823855b714e86047a94d4c52a6
DIST curl-8.14.1.tar.xz.asc 488 BLAKE2B f664f526dbffa0a1af2b28f51982445f7d9064b3c3b3e6dd04322003db22da2acde5d493c80204b36a9219d42959543c5a0aee47f2365eb713490ff2fc5f475f SHA512 663b1652bb27338310d1475a8b0422f04e68fca74be11a4b7120de948af4fc0c2b08b75ce5372d657aa89504a27b36b937b5091cb2d932297a7490d5e390d99f
DIST curl-8.15.0.tar.xz 2773156 BLAKE2B ae809be87f34d079413129c27e618a6d15c2bf9087fd7e679cefe9b6d8645f0dd092e8c3e1f62b7bd0dffdd0b77e0bc5ac031ffce4e50060ec20b280618c8e68 SHA512 d27e316d70973906ac4b8d2c280f7e99b7528966aa1220c13a38ed45fca2ed6bbde54b8a9d7bed9e283171b92edb621f7b95162ef7d392e6383b0ee469de3191
DIST curl-8.15.0.tar.xz.asc 488 BLAKE2B 4b0bab065a1d2d5b7e5d49989bd4953344d844cafd3036b4cb2ed2dec82e59031832f05c06dc6a801e4668d92c936df74aeff7a5f2c15ff614da4b1673a67501 SHA512 b6aef1c6a1f32c60401494df565a748fa96c1d5098138772c22f6208bafeb8e61402f3077cbc274ea2c05f35ff376d8f736c58554520f8d20fded36d876499a5
DIST curl-8.16.0-rc2.tar.xz 2782952 BLAKE2B 2d8d28532cb424d63b6a3d9c69d35d19ab3f534f440ffebdb39458b4e2d771ac0804b83d482512a9325202b9447498d6003de6377a304213c2f35e4a17a5c365 SHA512 7cc4f56a05634c651cf7224d3844359498d127f259e531aadefe86f6df3a7fc5f6644c296407d38867ddb716fe3e4951d377592f6d977c196ad1a733374e608f
DIST curl-8.16.0-rc2.tar.xz.asc 488 BLAKE2B 9d3488e369b8e437359e25785cfb3addbb1cfb81ef74dd8c16f3466ca643efc4f3ccc7864de20fb70c65024406882770d221c5f7ee90da16f07fe13825a71549 SHA512 c180343f1037cf51eb32c61035a4da7e728c2ee7f8d4ca1d464545b9b4044b30963e6b1ce424951a151ff901d7c7f4d56e7a54dacc581fc2c5c3b54349c155eb
DIST curl-8.16.0-rc3.tar.xz 2785600 BLAKE2B 393381819337fca038ccc12a4fae3290a28a56322b803f7a72ef541b39235b03a7916d52df94c64c725c4b1e98928f0d1874fad999d7984dbce19bfc0055bc47 SHA512 119e00ac9c150ac1d61ce5eeb522168b8a1c68d6576077400222170e0bd9b25dbe53182166a194058e58831a8768c1b7d9145fd5051c4e13bcd12841eb3a7284
DIST curl-8.16.0-rc3.tar.xz.asc 488 BLAKE2B 8057c9dc6171799fbbb4399291415fd452c0efbf09ea8594eeb572be9f097fd4f0d9db4389b1438daad5a4765c7b8ee59d6ae2bc90d23f46aaf92180b3418029 SHA512 50e484772ac1e8390222ce21702c6995c96b4da99d1e0f2e233b7226b48b5ce3a290d6050963e1e2c519b9a29d2ded7134d3bd4e765a946a8abbae3c67e31d32
DIST curl-8.16.0.tar.xz 2788632 BLAKE2B 573d56779481abf0b7d20225bba4f068cb726f23f69ce10076438e32cc6c16d1229c211aee05fc5e3e9cb9d78bbfdc5da0d8b73e730c0865879000eb90accf6a SHA512 8262c3dc113cfd5744ef1b82dbccaa69448a9395ad5c094c22df5cf537a047a927d3332db2cb3be12a31a68a60d8d0fa8485b916e975eda36a4ebd860da4f621
DIST curl-8.16.0.tar.xz.asc 488 BLAKE2B d213bd447c668118b49b7356dc99e710de927b93f81325802bae5e286b61481da6ed30f23c7f4f3cfb0f01222db88602ff4e510f4a1401e98511eb0c72ac6abb SHA512 591568e997c0d955a00152ce5bdfb4586d84b42f5c1e15df503514fb4eb4bf289a98b1ebdad23913119c67c27d51a6e6f4065ee6f7657b971c3a581c928a0d82

View File

@ -1,439 +0,0 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Maintainers should subscribe to the 'curl-distros' ML for backports etc
# https://daniel.haxx.se/blog/2024/03/25/curl-distro-report/
# https://lists.haxx.se/listinfo/curl-distros
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/danielstenberg.asc
inherit autotools multilib-minimal multiprocessing prefix toolchain-funcs verify-sig
DESCRIPTION="A Client that groks URLs"
HOMEPAGE="https://curl.se/"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/curl/curl.git"
else
if [[ ${P} == *rc* ]]; then
CURL_URI="https://curl.se/rc/"
S="${WORKDIR}/${P//_/-}"
else
CURL_URI="https://curl.se/download/"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
SRC_URI="
${CURL_URI}${P//_/-}.tar.xz
verify-sig? ( ${CURL_URI}${P//_/-}.tar.xz.asc )
"
fi
LICENSE="BSD curl ISC test? ( BSD-4 )"
SLOT="0"
IUSE="+adns +alt-svc brotli debug ech +ftp gnutls gopher +hsts +http2 +http3 +httpsrr idn +imap kerberos ldap"
IUSE+=" mbedtls +openssl +pop3 +psl +quic rtmp rustls samba sasl-scram +smtp ssh ssl static-libs test"
IUSE+=" telnet +tftp +websockets zstd"
# These select the default tls implementation / which quic impl to use
IUSE+=" +curl_quic_openssl curl_quic_ngtcp2 curl_ssl_gnutls curl_ssl_mbedtls +curl_ssl_openssl curl_ssl_rustls"
RESTRICT="!test? ( test )"
# HTTPS RR is technically usable with the threaded resolver, but it still uses c-ares to
# ask for the HTTPS RR record type; if DoH is in use the HTTPS record will be requested
# in addition to A and AAAA records.
# To simplify dependency management in the ebuild we'll require c-ares for HTTPS RR (for now?).
# HTTPS RR in cURL is a dependency for:
# - ECH (requires patched openssl or gnutls currently, enabled with rustls)
# - Fetching the ALPN list which should provide a better HTTP/3 experience.
# Only one default ssl / quic provider can be enabled
# The default provider needs its USE satisfied
# HTTP/3 and MultiSSL are mutually exclusive; it's not clear if MultiSSL offers any benefit at all in the modern day.
# https://github.com/curl/curl/commit/65ece771f4602107d9cdd339dff4b420280a2c2e
REQUIRED_USE="
ech? ( rustls )
httpsrr? ( adns )
quic? (
^^ (
curl_quic_openssl
curl_quic_ngtcp2
)
http3
ssl
)
ssl? (
^^ (
curl_ssl_gnutls
curl_ssl_mbedtls
curl_ssl_openssl
curl_ssl_rustls
)
)
curl_quic_openssl? (
curl_ssl_openssl
!gnutls
!mbedtls
!rustls
)
curl_quic_ngtcp2? (
curl_ssl_gnutls
!mbedtls
!openssl
!rustls
)
curl_ssl_gnutls? ( gnutls )
curl_ssl_mbedtls? ( mbedtls )
curl_ssl_openssl? ( openssl )
curl_ssl_rustls? ( rustls )
http3? ( alt-svc httpsrr quic )
"
# cURL's docs and CI/CD are great resources for confirming supported versions
# particulary for fast-moving targets like HTTP/2 and TCP/2 e.g.:
# - https://github.com/curl/curl/blob/master/docs/INTERNALS.md (core dependencies + minimum versions)
# - https://github.com/curl/curl/blob/master/docs/HTTP3.md (example of a feature that moves quickly)
# - https://github.com/curl/curl/blob/master/.github/workflows/http3-linux.yml (CI/CD for TCP/2)
# However 'supported' vs 'works' are two entirely different things; be sane but
# don't be afraid to require a later version.
# ngtcp2 = https://bugs.gentoo.org/912029 - can only build with one tls backend at a time.
RDEPEND="
>=sys-libs/zlib-1.2.5[${MULTILIB_USEDEP}]
adns? ( >=net-dns/c-ares-1.16.0:=[${MULTILIB_USEDEP}] )
brotli? ( app-arch/brotli:=[${MULTILIB_USEDEP}] )
http2? ( >=net-libs/nghttp2-1.15.0:=[${MULTILIB_USEDEP}] )
http3? ( >=net-libs/nghttp3-1.1.0[${MULTILIB_USEDEP}] )
idn? ( >=net-dns/libidn2-2.0.0:=[static-libs?,${MULTILIB_USEDEP}] )
kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
ldap? ( >=net-nds/openldap-2.0.0:=[static-libs?,${MULTILIB_USEDEP}] )
psl? ( net-libs/libpsl[${MULTILIB_USEDEP}] )
quic? (
curl_quic_openssl? ( >=dev-libs/openssl-3.3.0:=[quic,${MULTILIB_USEDEP}] )
curl_quic_ngtcp2? ( >=net-libs/ngtcp2-1.2.0[gnutls,ssl,-openssl,${MULTILIB_USEDEP}] )
)
rtmp? ( media-video/rtmpdump[${MULTILIB_USEDEP}] )
ssh? ( >=net-libs/libssh2-1.2.8[${MULTILIB_USEDEP}] )
sasl-scram? ( >=net-misc/gsasl-2.2.0[static-libs?,${MULTILIB_USEDEP}] )
ssl? (
gnutls? (
app-misc/ca-certificates
>=net-libs/gnutls-3.1.10:=[static-libs?,${MULTILIB_USEDEP}]
dev-libs/nettle:=[${MULTILIB_USEDEP}]
)
mbedtls? (
app-misc/ca-certificates
net-libs/mbedtls:0=[${MULTILIB_USEDEP}]
)
openssl? (
>=dev-libs/openssl-1.0.2:=[static-libs?,${MULTILIB_USEDEP}]
)
rustls? (
>=net-libs/rustls-ffi-0.15.0:=[${MULTILIB_USEDEP}]
)
)
zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
"
DEPEND="${RDEPEND}"
BDEPEND="
dev-lang/perl
virtual/pkgconfig
test? (
sys-apps/diffutils
http2? ( >=net-libs/nghttp2-1.15.0:=[utils,${MULTILIB_USEDEP}] )
http3? ( net-libs/nghttp2:=[utils,${MULTILIB_USEDEP}] )
)
verify-sig? ( sec-keys/openpgp-keys-danielstenberg )
"
DOCS=( README docs/{FEATURES.md,INTERNALS.md,FAQ,BUGS.md,CONTRIBUTE.md} )
MULTILIB_WRAPPED_HEADERS=(
/usr/include/curl/curlbuild.h
)
MULTILIB_CHOST_TOOLS=(
/usr/bin/curl-config
)
QA_CONFIG_IMPL_DECL_SKIP=(
__builtin_available
closesocket
CloseSocket
getpass_r
ioctlsocket
IoctlSocket
mach_absolute_time
setmode
_fseeki64
# custom AC_LINK_IFELSE code fails to link even without -Werror
OSSL_QUIC_client_method
)
PATCHES=(
"${FILESDIR}/${PN}-prefix-5.patch"
"${FILESDIR}/${PN}-respect-cflags-3.patch"
)
src_prepare() {
default
eprefixify curl-config.in
eautoreconf
}
# Generates TLS-related configure options based on USE flags.
# Outputs options suitable for appending to a configure options array.
_get_curl_tls_configure_opts() {
local tls_opts=()
local backend flag_name
for backend in gnutls mbedtls openssl rustls; do
if [[ "$backend" == "openssl" ]]; then
flag_name="ssl"
tls_opts+=( "--with-ca-path=${EPREFIX}/etc/ssl/certs")
else
flag_name="$backend"
fi
if use "$backend"; then
tls_opts+=( "--with-${flag_name}" )
else
# If a single backend is enabled, 'ssl' is required, openssl is the default / fallback
if ! [[ "$backend" == "openssl" ]]; then
tls_opts+=( "--without-${flag_name}" )
fi
fi
done
if use curl_ssl_gnutls; then
multilib_is_native_abi && einfo "Default TLS backend: gnutls"
tls_opts+=( "--with-default-ssl-backend=gnutls" )
elif use curl_ssl_mbedtls; then
multilib_is_native_abi && einfo "Default TLS backend: mbedtls"
tls_opts+=( "--with-default-ssl-backend=mbedtls" )
elif use curl_ssl_openssl; then
multilib_is_native_abi && einfo "Default TLS backend: openssl"
tls_opts+=( "--with-default-ssl-backend=openssl" )
elif use curl_ssl_rustls; then
multilib_is_native_abi && einfo "Default TLS backend: rustls"
tls_opts+=( "--with-default-ssl-backend=rustls" )
else
eerror "We can't be here because of REQUIRED_USE."
die "Please file a bug, hit impossible condition w/ USE=ssl handling."
fi
# Explicitly Disable unimplemented backends
tls_opts+=(
--without-amissl
--without-wolfssl
)
printf "%s\n" "${tls_opts[@]}"
}
multilib_src_configure() {
# We make use of the fact that later flags override earlier ones
# So start with all ssl providers off until proven otherwise
# TODO: in the future, we may want to add wolfssl (https://www.wolfssl.com/)
local myconf=()
myconf+=( --without-ca-fallback --with-ca-bundle="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt )
if use ssl; then
local -a tls_backend_opts
readarray -t tls_backend_opts < <(_get_curl_tls_configure_opts)
myconf+=("${tls_backend_opts[@]}")
if use quic; then
myconf+=(
$(use_with curl_quic_ngtcp2 ngtcp2)
$(use_with curl_quic_openssl openssl-quic)
)
else
# Without a REQUIRED_USE to ensure that QUIC was requested when at least one default backend is
# enabled we need ensure that we don't try to build QUIC support
myconf+=( --without-ngtcp2 --without-openssl-quic )
fi
else
myconf+=( --without-ssl )
einfo "SSL disabled"
fi
# These configuration options are organised alphabetically by category/type
# Protocols
# `grep SUPPORT_PROTOCOLS=\" configure.ac | awk '{ print substr($2, 1, length($2)-1)}' | sort`
# Assume that anything omitted (that is not new!) is enabled by default with no deps
myconf+=(
--enable-file
$(use_enable ftp)
$(use_enable gopher)
--enable-http
$(use_enable imap) # Automatic IMAPS if TLS is enabled
$(use_enable ldap ldaps)
$(use_enable ldap)
$(use_enable pop3)
$(use_enable samba smb)
$(use_with ssh libssh2) # enables scp/sftp
$(use_with rtmp librtmp)
--enable-rtsp
$(use_enable smtp)
$(use_enable telnet)
$(use_enable tftp)
$(use_enable websockets)
)
# Keep various 'HTTP-flavoured' options together
myconf+=(
$(use_enable alt-svc)
$(use_enable hsts)
$(use_enable httpsrr)
$(use_with http2 nghttp2)
$(use_with http3 nghttp3)
)
# --enable/disable options
# `grep -- --enable configure | grep Check | awk '{ print $4 }' | sort`
myconf+=(
$(use_enable adns ares)
--enable-aws
--enable-basic-auth
--enable-bearer-auth
--enable-cookies
--enable-dateparse
--enable-dict
--enable-digest-auth
--enable-dnsshuffle
--enable-doh
$(use_enable ech)
--enable-http-auth
--enable-ipv6
--enable-kerberos-auth
--enable-largefile
--enable-manual
--enable-mime
--enable-negotiate-auth
--enable-netrc
--enable-ntlm
--enable-progress-meter
--enable-proxy
--enable-rt
--enable-socketpair
--disable-sspi
$(use_enable static-libs static)
--enable-symbol-hiding
--enable-tls-srp
--disable-versioned-symbols
)
# --with/without options
# `grep -- --with configure | grep Check | awk '{ print $4 }' | sort`
myconf+=(
$(use_with brotli)
--with-fish-functions-dir="${EPREFIX}"/usr/share/fish/vendor_completions.d
$(use_with idn libidn2)
$(use_with kerberos gssapi "${EPREFIX}"/usr)
$(use_with sasl-scram libgsasl)
$(use_with psl libpsl)
--without-quiche
--without-schannel
--without-winidn
--with-zlib
--with-zsh-functions-dir="${EPREFIX}"/usr/share/zsh/site-functions
$(use_with zstd)
)
# Test deps (disabled)
myconf+=(
--without-test-caddy
--without-test-httpd
--without-test-nghttpx
)
if use debug; then
myconf+=(
--enable-debug
)
fi
if use test && multilib_is_native_abi && ( use http2 || use http3 ); then
myconf+=(
--with-test-nghttpx="${BROOT}/usr/bin/nghttpx"
)
fi
# Since 8.12.0 adns/c-ares and the threaded resolver are mutually exclusive
# This is in support of some work to enable `httpsrr` to use adns and the rest
# of curl to use the threaded resolver; for us `httpsrr` is conditional on adns.
if use adns; then
myconf+=(
--disable-threaded-resolver
)
else
myconf+=(
--enable-threaded-resolver
)
fi
ECONF_SOURCE="${S}" econf "${myconf[@]}"
if ! multilib_is_native_abi; then
# Avoid building the client (we just want libcurl for multilib)
sed -i -e '/SUBDIRS/s:src::' Makefile || die
sed -i -e '/SUBDIRS/s:scripts::' Makefile || die
fi
}
multilib_src_compile() {
default
if multilib_is_native_abi; then
# Shell completions
! tc-is-cross-compiler && emake -C scripts
fi
}
# There is also a pytest harness that tests for bugs in some very specific
# situations; we can rely on upstream for this rather than adding additional test deps.
multilib_src_test() {
# See https://github.com/curl/curl/blob/master/tests/runtests.pl#L5721
# -n: no valgrind (unreliable in sandbox and doesn't work correctly on all arches)
# -v: verbose
# -a: keep going on failure (so we see everything that breaks, not just 1st test)
# -k: keep test files after completion
# -am: automake style TAP output
# -p: print logs if test fails
# Note: if needed, we can skip specific tests. See e.g. Fedora's packaging
# or just read https://github.com/curl/curl/tree/master/tests#run.
# Note: we don't run the testsuite for cross-compilation.
# Upstream recommend 7*nproc as a starting point for parallel tests, but
# this ends up breaking when nproc is huge (like -j80).
# The network sandbox causes tests 241 and 1083 to fail; these are typically skipped
# as most gentoo users don't have an 'ip6-localhost'
multilib_is_native_abi && emake test TFLAGS="-n -v -a -k -am -p -j$((2*$(makeopts_jobs))) !241 !1083"
}
multilib_src_install() {
emake DESTDIR="${D}" install
if multilib_is_native_abi; then
# Shell completions
! tc-is-cross-compiler && emake -C scripts DESTDIR="${D}" install
fi
}
multilib_src_install_all() {
einstalldocs
find "${ED}" -type f -name '*.la' -delete || die
rm -rf "${ED}"/etc/ || die
}
pkg_postinst() {
if use debug; then
ewarn "USE=debug has been selected, enabling debug codepaths and making cURL extra verbose."
ewarn "Use this _only_ for testing. Debug builds should _not_ be used in anger."
ewarn "hic sunt dracones; you have been warned."
fi
}

View File

@ -11,7 +11,7 @@ SRC_URI="https://github.com/esnet/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.t
LICENSE="BSD"
SLOT="3"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
IUSE="sctp"
DEPEND="

View File

@ -13,7 +13,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="HPND BSD ISC"
SLOT="0"
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux"
IUSE="caps debug openntpd parse-clocks readline samba selinux snmp ssl +threads vim-syntax zeroconf"
DEPEND="

View File

@ -13,7 +13,7 @@ if [[ ${PV} == "9999" ]] ; then
inherit autotools git-r3
else
SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.bz2"
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
fi
# GPL-2 for init script (bug #426104)

View File

@ -17,6 +17,10 @@
#--- END OF EXAMPLES ---
# Michał Górny <mgorny@gentoo.org> (2025-09-12)
# These BLAS/LAPACK providers are keyworded here.
sci-libs/flexiblas -blis -mkl -openblas
# Christopher Byrne <salah.coronya@gmail.com> (2025-09-01)
# net-emulation/libvirt is only keyworded on amd64 at this time
sys-block/nbdkit -libguestfs

View File

@ -1,6 +1,10 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Michał Górny <mgorny@gentoo.org> (2025-09-12)
# These BLAS/LAPACK providers are keyworded here.
sci-libs/flexiblas -openblas
# Sam James <sam@gentoo.org> (2025-08-29)
# net-misc/passt not yet keyworded here
app-emulation/qemu passt

View File

@ -1,6 +1,10 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Michał Górny <mgorny@gentoo.org> (2025-09-12)
# These BLAS/LAPACK providers are keyworded here.
sci-libs/flexiblas -blis -openblas
# Andreas Sturmlechner <asturm@gentoo.org> (2025-08-16)
# dev-games/ogre is not keyworded here
>=dev-games/mygui-3.4.1 ogre

View File

@ -1,6 +1,10 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Michał Górny <mgorny@gentoo.org> (2025-09-12)
# Other BLAS/LAPACK providers are not keyworded everywhere.
sci-libs/flexiblas blis mkl openblas
# Christopher Byrne <salah.coronya@gmail.com> (2025-09-01)
# net-emulation/libvirt is only keyworded on amd64 at this time
sys-block/nbdkit libguestfs

View File

@ -1,6 +1,10 @@
# Copyright 2022-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Michał Górny <mgorny@gentoo.org> (2025-09-12)
# These BLAS/LAPACK providers are keyworded here.
sci-libs/flexiblas -openblas
# Eli Schwartz <eschwartz@gentoo.org> (2025-09-05)
# dev-python/sphinx-tabs is not keyworded.
dev-python/anyio doc

View File

@ -1,6 +1,10 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Michał Górny <mgorny@gentoo.org> (2025-09-12)
# These BLAS/LAPACK providers are keyworded here.
sci-libs/flexiblas -blis
# Sam James <sam@gentoo.org> (2025-08-29)
# net-misc/passt not yet keyworded here
app-emulation/qemu passt

View File

@ -1,6 +1,10 @@
# Copyright 2019-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Michał Górny <mgorny@gentoo.org> (2025-09-12)
# These BLAS/LAPACK providers are keyworded here.
sci-libs/flexiblas -openblas
# Alfred Wingate <parona@protonmail.com> (2025-07-31)
# mongodb not keyworded here
sci-libs/gdal mongodb
@ -232,12 +236,6 @@ app-admin/syslog-ng test
# dev-db/mongodb does not support riscv, fails src_configure
dev-libs/mongo-c-driver test
# Alex Fan <alexfanqi@yahoo.com> (2021-07-20)
# hdf5-1.10 always fails tests with these 2 use flags enabled, otherwise
# passes all tests on at least some systems. No longer needed for 1.12,
# though.
<sci-libs/hdf5-1.12.1 fortran debug
# Alex Fan <alexfanqi@yahoo.com> (2021-08-12)
# Marek Szuba <marecki@gentoo.org> (2021-07-14)
# LuaJIT does not support riscv

View File

@ -575,11 +575,6 @@ dev-lang/spidermonkey jit
# No ffmpeg keywords on sparc
media-sound/dir2ogg aac wma
# Sergei Trofimovich <slyfox@gentoo.org> (2018-08-30)
# dev-games/openscenegraph is a heavy unkeyworded dependency.
# Skip keywording it for now.
app-office/scribus osg
# Sergei Trofimovich <slyfox@gentoo.org> (2018-05-08)
# Mask USE=games to avoid unkeyworded games-util/qstat.
net-analyzer/monitoring-plugins game

View File

@ -1,6 +1,10 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Michał Górny <mgorny@gentoo.org> (2025-09-12)
# These BLAS/LAPACK providers are keyworded here.
sci-libs/flexiblas -blis -openblas
# Sam James <sam@gentoo.org> (2025-08-29)
# net-misc/passt not yet keyworded here
app-emulation/qemu passt

View File

@ -1,6 +1,10 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Vincent de Phily <moltonel@gmail.com (2025-09-01)
# Another package requiring Rust
app-portage/emlop
# Michał Górny <mgorny@gentoo.org> (2024-05-08)
# Pure Python packages using dev-python/uv-build, and therefore
# requiring Rust to install, and their dependencies.

View File

@ -36,6 +36,29 @@
#--- END OF EXAMPLES ---
# Conrad Kostecki <conikost@gentoo.org> (2025-09-14)
# Replaced by >=media-libs/libv4l-1.30.1[utils], as merged by upstream.
# Bugs #953534 and #962841.
# Removal on 2025-09-29.
sys-apps/edid-decode
# Rick Farina <zerochaos@gentoo.org> (2025-09-11)
# Dead upstream, fails to compile on modern gcc. Bug #919250
# Removal on 2025-10-12
net-wireless/mdk
# Andreas Sturmlechner <asturm@gentoo.org> (2025-09-09)
# Packaged version is very outdated, was already broken by libxml2-2.12,
# now once more by libxml2-2.14. Bugs #739362, #829005, #923828, #955798.
# Removal on 2025-10-09.
games-rpg/manaplus
# Andreas Sturmlechner <asturm@gentoo.org> (2025-09-09)
# Broken by dev-libs/libxml2-2.14.2, abandoned by upstream, almost no one
# else is packaging this. Bugs #955705, 955817. Removal on 2025-10-09.
net-news/rsstool
x11-misc/xcave
# Michał Górny <mgorny@gentoo.org> (2025-09-06)
# Abandoned. Incompatible with py3.14. Last release in 2020.
# No revdeps left.
@ -268,13 +291,6 @@ sci-electronics/NanoVNA-QT
# Bugs #932756, #952103. Removal on 2025-09-16.
app-crypt/yubikey-manager-qt
# Andreas Sturmlechner <asturm@gentoo.org> (2025-08-10)
# Outdated version packaged in Gentoo, pending version bump request for
# over a year, depends on Qt5 but worse, Qt5Script, no signs of upstream
# porting away from it, many unattended build error bugs.
# Bugs #922311, #926229. Removal on 2025-09-14.
media-gfx/opentoonz
# Hans de Graaff <graaff@gentoo.org> (2025-08-08)
# ruby-openid fails tests and is archived upstream. Last release 6 years
# ago. rack-openid is the only reverse dependency.
@ -379,11 +395,6 @@ dev-db/mysql:8.4
# Pleas upgrade to 5.1, 5.2 LTS, or downgrade to 4.2 LTS.
=dev-python/django-5.0*
# Alfred Wingate <parona@protonmail.com> (2025-05-05)
# Masked for testing
>=dev-libs/libxml2-2.14
dev-libs/libxml2-compat
# Michał Górny <mgorny@gentoo.org> (2025-05-04)
# New wave of breakage from random removals.
# Bugs #955398, #955396, #955411.
@ -416,12 +427,6 @@ dev-libs/libxml2-compat
>=xfce-base/xfce4-settings-4.21
>=xfce-base/xfconf-4.21
# Sam James <sam@gentoo.org> (2025-03-07)
# May cause emerge to hang (bug #950707). Tests hang on one machine
# and another strange report upstream: https://github.com/pkgconf/pkgconf/issues/383.
# Mask out of caution for now.
=dev-util/pkgconf-2.4.1
# John Helmert III <ajak@gentoo.org> (2025-03-02)
# Doesn't seem to cleanly load, see:
# https://github.com/lkrg-org/lkrg/issues/364
@ -743,12 +748,6 @@ media-plugins/kodi-game-libretro-dosbox
# upstream.
>=app-text/jabref-bin-4.0
# Michał Górny <mgorny@gentoo.org> (2017-05-22)
# for Maciej S. Szmigiero <mail@maciej.szmigiero.name>
# Any version above 5.100.138 breaks b43 driver in various ways.
# Also, b43 wiki page says to use 5.100.138. Bug #541080.
>=sys-firmware/b43-firmware-6.30.163.46
# Andreas K. Hüttel <dilfridge@gentoo.org> (2017-05-21)
# (and others, updated later)
# These old versions of toolchain packages (binutils, gcc, glibc) are no

Some files were not shown because too many files have changed in this diff Show More