Merge pull request #1854 from flatcar/buildbot/weekly-portage-stable-package-updates-2024-04-08

Weekly portage-stable package updates 2024-04-08
This commit is contained in:
Krzesimir Nowak 2024-04-11 12:41:25 +02:00 committed by GitHub
commit 6231d0cbb0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
254 changed files with 5499 additions and 3428 deletions

View File

@ -274,7 +274,6 @@ dev-python/lazy-object-proxy
dev-python/lxml
dev-python/markupsafe
dev-python/more-itertools
dev-python/nspektr
dev-python/ordered-set
dev-python/packaging
dev-python/pathspec

View File

@ -0,0 +1,3 @@
- coreutils ([coreutils-2024-03-28](https://lists.gnu.org/archive/html/info-gnu/2024-03/msg00006.html))
- curl ([CVE-2024-2004](https://nvd.nist.gov/vuln/detail/CVE-2024-2004), [CVE-2024-2379](https://nvd.nist.gov/vuln/detail/CVE-2024-2379), [CVE-2024-2398](https://nvd.nist.gov/vuln/detail/CVE-2024-2398), [CVE-2024-2466](https://nvd.nist.gov/vuln/detail/CVE-2024-2466))
- nghttp2 ([CVE-2024-28182](https://nvd.nist.gov/vuln/detail/CVE-2024-28182))

View File

@ -0,0 +1,3 @@
- coreutils ([9.5](https://lists.gnu.org/archive/html/info-gnu/2024-03/msg00006.html))
- curl ([8.7.1](https://curl.se/changes.html#8_7_1) (includes [8.7.0](https://curl.se/changes.html#8_7_0)))
- nghttp2 ([1.61.0](https://github.com/nghttp2/nghttp2/releases/tag/v1.61.0) (includes [1.58.0](https://github.com/nghttp2/nghttp2/releases/tag/v1.58.0), [1.59.0](https://github.com/nghttp2/nghttp2/releases/tag/v1.59.0) and [1.60.0](https://github.com/nghttp2/nghttp2/releases/tag/v1.60.0)))

View File

@ -31,20 +31,18 @@ RDEPEND="
>=dev-python/six-1.12.0[${PYTHON_USEDEP}]
"
# Flatcar: The call to distutils_enable_tests used to add "test" to
# IUSE. With the call commented out, "test" is not in IUSE anymore,
# making BDEPEND with "test" invalid. Dropping tests dependencies
# then.
BDEPEND="
${RDEPEND}
test? (
dev-python/httpretty[${PYTHON_USEDEP}]
dev-python/keyring[${PYTHON_USEDEP}]
dev-python/lxml[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
dev-python/paramiko[${PYTHON_USEDEP}]
dev-python/requests[${PYTHON_USEDEP}]
dev-python/rsa[${PYTHON_USEDEP}]
dev-python/selenium[${PYTHON_USEDEP}]
)"
"
distutils_enable_tests nose
# Flatcar: There is no "nose" test runner any more. Also, we are not
# running tests anyway.
#
# distutils_enable_tests nose
src_prepare() {
# remove bundled libs.
@ -58,6 +56,8 @@ src_prepare() {
distutils-r1_src_prepare
}
python_test() {
distutils-r1_python_test tests/unit
}
# Flatcar: Not running the tests.
#
# python_test() {
# distutils-r1_python_test tests/unit
# }

View File

@ -20,14 +20,11 @@
# Needed by arm64-native SDK.
=app-crypt/efitools-1.9.2-r1 ~arm64
# Needed to fix CVE-2023-36054.
=app-crypt/mit-krb5-1.21.2 ~arm64
# Needed by arm64-native SDK.
=app-emulation/open-vmdk-1.0 *
# Needed for addressing CVE-2023-50246, CVE-2023-50268
=app-misc/jq-1.7.1 ~amd64 ~arm64
=app-misc/jq-1.7.1 ~amd64
# Required for addressing CVE-2022-3715.
=app-shells/bash-5.2_p26 ~amd64 ~arm64
@ -80,9 +77,13 @@
# Required to allow us to override the sftp subsystem in sshd config.
=net-misc/openssh-9.4_p1 ~amd64 ~arm64
# Required to address coreutils-2024-03-28
=sys-apps/coreutils-9.5 ~amd64 ~arm64
# Keep versions on both arches in sync.
=sys-apps/kexec-tools-2.0.24 ~arm64
=sys-apps/nvme-cli-2.8 ~arm64
=sys-apps/util-linux-2.39.3-r7 ~arm64
sys-apps/zram-generator ~amd64 ~arm64

View File

@ -20,6 +20,3 @@
# Python 3.12 is in portage-stable (currently testing), so avoid picking it
# up. Update this to mask later versions when we switch to 3.11.
>=dev-lang/python-3.12
# Potentially compromised versions.
>=app-arch/xz-utils-5.4.3

View File

@ -6,3 +6,7 @@ net-mail/mailbase-1.1
# Only installs openrc files
sys-fs/udev-init-scripts-35
# A dependency of dev-libs/libtracefs. It's apparently for docs, that
# we don't even include anywhere.
dev-util/source-highlight-3.1.9-r2

View File

@ -1,8 +1,3 @@
# Overwrite portage-stable mask. The regressions that this version of
# ncurses caused are in Gentoo packages that we don't have in
# Flatcar. And we need it for a security fix.
=sys-libs/ncurses-6.4_p20230527
# Overwrite portage-stable mask. We are delaying the transition to
# libxcrypt, because we need to figure out how to solve the dep loop
# that results from the migration (python -> virtual/libcrypt ->
@ -17,7 +12,3 @@
# portage-stable masked catalyst-3, and has not provided a stable way to
# update to catalyst-4 so overriding the change for now to use catalyst-3
<dev-util/catalyst-4
# Overwrite portage-stable mask. We still have one package that
# depends on dev-python/boto.
dev-python/boto

View File

@ -0,0 +1,27 @@
From 6110e9c82d8ba830c3440f36b990483ceaaea52c Mon Sep 17 00:00:00 2001
From: Ed Maste <emaste@freebsd.org>
Date: Fri, 29 Mar 2024 18:02:06 -0400
Subject: [PATCH] tar: make error reporting more robust and use correct errno
(#2101)
As discussed in #1609.
---
tar/read.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/tar/read.c b/tar/read.c
index af3d3f423..a7f14a07b 100644
--- a/tar/read.c
+++ b/tar/read.c
@@ -371,8 +371,9 @@ read_archive(struct bsdtar *bsdtar, char mode, struct archive *writer)
if (r != ARCHIVE_OK) {
if (!bsdtar->verbose)
safe_fprintf(stderr, "%s", archive_entry_pathname(entry));
- fprintf(stderr, ": %s: ", archive_error_string(a));
- fprintf(stderr, "%s", strerror(errno));
+ safe_fprintf(stderr, ": %s: %s",
+ archive_error_string(a),
+ strerror(archive_errno(a)));
if (!bsdtar->verbose)
fprintf(stderr, "\n");
bsdtar->return_value = 1;

View File

@ -16,7 +16,7 @@ SRC_URI="
LICENSE="BSD BSD-2 BSD-4 public-domain"
SLOT="0/13"
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="
acl blake2 +bzip2 +e2fsprogs expat +iconv lz4 +lzma lzo nettle
static-libs test xattr zstd
@ -76,6 +76,8 @@ PATCHES=(
# https://github.com/libarchive/libarchive/issues/2069
# (we can simply update the command since we don't support old lrzip)
"${FILESDIR}/${P}-lrzip.patch"
# https://github.com/libarchive/libarchive/pull/2101
"${FILESDIR}/${P}-safe-fprintf.patch"
)
src_prepare() {
@ -138,6 +140,13 @@ src_test() {
mkdir -p "${T}"/bin || die
# tests fail when lbzip2[symlink] is used in place of ref bunzip2
ln -s "${BROOT}/bin/bunzip2" "${T}"/bin || die
# workaround lrzip broken on 32-bit arches with >= 10 threads
# https://bugs.gentoo.org/927766
cat > "${T}"/bin/lrzip <<-EOF || die
#!/bin/sh
exec "$(type -P lrzip)" -p1 "\${@}"
EOF
chmod +x "${T}/bin/lrzip" || die
local -x PATH=${T}/bin:${PATH}
multilib-minimal_src_test
}

View File

@ -9,7 +9,7 @@ SRC_URI="https://www.lzop.org/download/${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
RDEPEND=">=dev-libs/lzo-2"
DEPEND="${RDEPEND}"

View File

@ -6,6 +6,7 @@
<name>Gentoo Base System</name>
</maintainer>
<upstream>
<remote-id type="savannah">sharutils</remote-id>
<remote-id type="cpe">cpe:/a:gnu:sharutils</remote-id>
</upstream>
</pkgmetadata>

View File

@ -50,7 +50,7 @@ SLOT="0"
IUSE="doc +extra-filters pgo nls static-libs"
if [[ ${PV} != 9999 ]] ; then
BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-lassecollin )"
BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-lassecollin-20230213 )"
fi
src_prepare() {

View File

@ -0,0 +1,140 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Remember: we cannot leverage autotools in this ebuild in order
# to avoid circular deps with autotools
EAPI=8
inherit flag-o-matic libtool multilib multilib-minimal preserve-libs toolchain-funcs
if [[ ${PV} == 9999 ]] ; then
# Per tukaani.org, git.tukaani.org is a mirror of github and
# may be behind.
EGIT_REPO_URI="
https://github.com/tukaani-project/xz
https://git.tukaani.org/xz.git
"
inherit git-r3 autotools
# bug #272880 and bug #286068
BDEPEND="sys-devel/gettext >=dev-build/libtool-2"
else
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jiatan.asc
inherit verify-sig
MY_P="${PN/-utils}-${PV/_}"
SRC_URI="
https://github.com/tukaani-project/xz/releases/download/v${PV/_}/${MY_P}.tar.gz
mirror://sourceforge/lzmautils/${MY_P}.tar.gz
https://tukaani.org/xz/${MY_P}.tar.gz
verify-sig? (
https://github.com/tukaani-project/xz/releases/download/v${PV/_}/${MY_P}.tar.gz.sig
https://tukaani.org/xz/${MY_P}.tar.gz.sig
)
"
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
S="${WORKDIR}/${MY_P}"
fi
DESCRIPTION="Utils for managing LZMA compressed files"
HOMEPAGE="https://tukaani.org/xz/"
# See top-level COPYING file as it outlines the various pieces and their licenses.
LICENSE="public-domain LGPL-2.1+ GPL-2+"
SLOT="0"
IUSE="doc +extra-filters pgo nls static-libs"
if [[ ${PV} != 9999 ]] ; then
BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-jiatan )"
fi
src_prepare() {
default
if [[ ${PV} == 9999 ]] ; then
eautopoint
eautoreconf
else
# Allow building shared libs on Solaris/x64
elibtoolize
fi
}
multilib_src_configure() {
local myconf=(
--enable-threads
$(multilib_native_use_enable doc)
$(use_enable nls)
$(use_enable static-libs static)
)
if ! multilib_is_native_abi ; then
myconf+=(
--disable-{xz,xzdec,lzmadec,lzmainfo,lzma-links,scripts}
)
fi
if ! use extra-filters ; then
myconf+=(
# LZMA1 + LZMA2 for standard .lzma & .xz files
--enable-encoders=lzma1,lzma2
--enable-decoders=lzma1,lzma2
# those are used by default, depending on preset
--enable-match-finders=hc3,hc4,bt4
# CRC64 is used by default, though some (old?) files use CRC32
--enable-checks=crc32,crc64
)
fi
if [[ ${CHOST} == *-solaris* ]] ; then
export gl_cv_posix_shell="${EPREFIX}"/bin/sh
# Undo Solaris-based defaults pointing to /usr/xpg5/bin
myconf+=( --disable-path-for-script )
fi
ECONF_SOURCE="${S}" econf "${myconf[@]}"
}
multilib_src_compile() {
# -fprofile-partial-training because upstream note the test suite isn't super comprehensive
# See https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo
local pgo_generate_flags=$(usev pgo "-fprofile-update=atomic -fprofile-dir=${T}/${ABI}-pgo -fprofile-generate=${T}/${ABI}-pgo $(test-flags-CC -fprofile-partial-training)")
local pgo_use_flags=$(usev pgo "-fprofile-use=${T}/${ABI}-pgo -fprofile-dir=${T}/${ABI}-pgo $(test-flags-CC -fprofile-partial-training)")
emake CFLAGS="${CFLAGS} ${pgo_generate_flags}"
if use pgo ; then
emake CFLAGS="${CFLAGS} ${pgo_generate_flags}" -k check
if tc-is-clang; then
llvm-profdata merge "${T}"/${ABI}-pgo --output="${T}"/${ABI}-pgo/default.profdata || die
fi
emake clean
emake CFLAGS="${CFLAGS} ${pgo_use_flags}"
fi
}
multilib_src_install_all() {
find "${ED}" -type f -name '*.la' -delete || die
if use doc ; then
rm "${ED}"/usr/share/doc/${PF}/COPYING* || die
fi
}
pkg_preinst() {
preserve_old_lib /usr/$(get_libdir)/liblzma$(get_libname 0)
}
pkg_postinst() {
preserve_old_lib_notify /usr/$(get_libdir)/liblzma$(get_libname 0)
}

View File

@ -50,7 +50,7 @@ SLOT="0"
IUSE="cpu_flags_arm_crc32 doc +extra-filters pgo nls static-libs"
if [[ ${PV} != 9999 ]] ; then
BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-lassecollin )"
BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-lassecollin-20230213 )"
fi
src_prepare() {

View File

@ -1 +1,2 @@
DIST zstd-1.5.5.tar.gz 2368543 BLAKE2B 7680e27a0adacfb809d9fc81e06d3f99bf74df30374d3b5cb2d58f667dd1b7d5c41697e608592709e17c0e32277f20a6d615edee409b5d7cdcb15da2799a2350 SHA512 99109ec0e07fa65c2101c9cb36be56b672bbd0ee69d265f924718e61f9192ae8385c8d9e4d0c318be9edfa6d849fd3d60e5f164fa120961449429ea3c5dab6b6
DIST zstd-1.5.6.tar.gz 2406875 BLAKE2B fe17cf0950f8ee2cc07bfa2b41e97f36a1832e396386cb94a55bede975dc974920578cf147b39eecbc5b53ff06fe0dc1fe781a4cab9bc9f767ea28c0e786422e SHA512 54a578f2484da0520a6e9a24f501b9540a3fe3806785d6bc9db79fc095b7c142a7c121387c7eecd460ca71446603584ef1ba4d29a33ca90873338c9ffbd04f14

View File

@ -0,0 +1,67 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit meson-multilib
DESCRIPTION="zstd fast compression library"
HOMEPAGE="https://facebook.github.io/zstd/"
SRC_URI="https://github.com/facebook/zstd/releases/download/v${PV}/${P}.tar.gz"
S="${WORKDIR}"/${P}/build/meson
LICENSE="|| ( BSD GPL-2 )"
SLOT="0/1"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="+lzma lz4 static-libs test zlib"
RESTRICT="!test? ( test )"
RDEPEND="
lzma? ( app-arch/xz-utils )
lz4? ( app-arch/lz4:= )
zlib? ( sys-libs/zlib )
"
DEPEND="${RDEPEND}"
MESON_PATCHES=(
# Workaround until Valgrind bugfix lands
"${FILESDIR}"/${PN}-1.5.4-no-find-valgrind.patch
)
PATCHES=(
)
src_prepare() {
cd "${WORKDIR}"/${P} || die
default
cd "${S}" || die
eapply "${MESON_PATCHES[@]}"
}
multilib_src_configure() {
local native_file="${T}"/meson.${CHOST}.${ABI}.ini.local
# This replaces the no-find-valgrind patch once bugfix lands in a meson
# release + we can BDEPEND on it (https://github.com/mesonbuild/meson/pull/11372)
cat >> ${native_file} <<-EOF || die
[binaries]
valgrind='valgrind-falseified'
EOF
local emesonargs=(
-Ddefault_library=$(multilib_native_usex static-libs both shared)
$(meson_native_true bin_programs)
$(meson_native_true bin_contrib)
$(meson_use test bin_tests)
$(meson_native_use_feature zlib)
$(meson_native_use_feature lzma)
$(meson_native_use_feature lz4)
--native-file "${native_file}"
)
meson_src_configure
}

View File

@ -1,4 +1 @@
DIST krb5-1.20.1.tar.gz 8661660 BLAKE2B ead16f8b1aec8bba3776628b74257c9aec891770c1fa6d5c5e66275db5f078ca59c9944cd2b017453b777ce080f8e5a322f735fab77691479cfad7b881b92830 SHA512 6f57479f13f107cd84f30de5c758eb6b9fc59171329c13e5da6073b806755f8d163eb7bd84767ea861ad6458ea0c9eeb00ee044d3bcad01ef136e9888564b6a2
DIST krb5-1.20.2.tar.gz 8662259 BLAKE2B 35f9e82390b5ba7227d0b5c40ab08f128ff27e7264d48585e2bfd08a443cb4b06415216190a3c35c6bc505f33483bcbe11430d9e40c3907f838798b2dc492416 SHA512 69e263ef74116a3332c632a2a243499bcc47b01b1e57d02fe35aa6c2ff655674b6cf2b815457145f788bceac4d466d3f55f8c20ec9ee4a6051128417e1e7e99e
DIST krb5-1.21.1.tar.gz 8623049 BLAKE2B d90a994b5d39dc88573e5cfca280565b0909b2e9aa8710a6d695e2c1faec37ea0c008d05894e8952dcf72348403f76fd8a124de8d8f34c70fad6de8866a92f0e SHA512 6f04216b0a151d6a9886bf009777bc95a7d3f9bcab30427cc8bbef3357e0130748c1d42b477be0eb2d469d9e0fb65bf5ac5ff05c22d6e1046795e161fe6afbcc
DIST krb5-1.21.2.tar.gz 8622513 BLAKE2B 2afb3ff962a343bc07182fdab0c0ffb221632ff38baab74278cfc721ae72deacc260221470de36e420584f00b780e13221d2e511d4831bca8e1270b7f3d9e824 SHA512 4e09296b412383d53872661718dbfaa90201e0d85f69db48e57a8d4bd73c95a90c7ec7b6f0f325f6bc967f8d203b256b071c0191facf080aca0e2caec5d0ac49

View File

@ -1,20 +0,0 @@
https://github.com/krb5/krb5/commit/c3958cec43b598b25484b9805224c56f25f7a755
https://bugs.gentoo.org/854561
From: Greg Hudson <ghudson@mit.edu>
Date: Tue, 29 Mar 2022 16:27:55 -0400
Subject: [PATCH] Include time.h in kdb.h
kdb.h uses time_t, and therefore must include <time.h> to ensure its
definition. Noticed when building t_sort_key_data.c on macOS.
--- a/include/kdb.h
+++ b/include/kdb.h
@@ -65,6 +65,7 @@
#ifndef KRB5_KDB5__
#define KRB5_KDB5__
+#include <time.h>
#include <krb5.h>
/* This version will be incremented when incompatible changes are made to the

View File

@ -1,31 +0,0 @@
https://github.com/krb5/krb5/commit/d864d740d019fdf2c640460f2aa2760c7fa4d5e9
From d864d740d019fdf2c640460f2aa2760c7fa4d5e9 Mon Sep 17 00:00:00 2001
From: Julien Rische <jrische@redhat.com>
Date: Thu, 17 Nov 2022 15:01:24 +0100
Subject: [PATCH] Fix aclocal.m4 syntax error for autoconf 2.72
An incorrect closure inside KRB5_AC_INET6 is innocuous with autoconf
versions up to 2.71, but will cause an error at configure time with
the forthcoming autoconf 2.72.
[ghudson@mit.edu: added more context to commit message]
ticket: 9077 (new)
tags: pullup
target_version: 1.20-next
target_version: 1.19-next
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -409,8 +409,8 @@ else
[[struct sockaddr_in6 in;
AF_INET6;
IN6_IS_ADDR_LINKLOCAL(&in.sin6_addr);]])],
- [krb5_cv_inet6=yes], [krb5_cv_inet6=no])])
-fi
+ [krb5_cv_inet6=yes], [krb5_cv_inet6=no])
+fi])
AC_MSG_RESULT($krb5_cv_inet6)
if test "$krb5_cv_inet6" = no && test "$ac_cv_func_inet_ntop" = yes; then
AC_MSG_CHECKING(for IPv6 compile-time support with -DINET6)

View File

@ -1,12 +0,0 @@
Bug #448778
--- a/build-tools/krb5-config.in 2012-12-18 02:47:04.000000000 +0000
+++ b/build-tools/krb5-config.in 2012-12-28 07:13:16.582693363 +0000
@@ -217,7 +217,7 @@
-e 's#\$(PROG_RPATH)#'$libdir'#' \
-e 's#\$(PROG_LIBPATH)#'$libdirarg'#' \
-e 's#\$(RPATH_FLAG)#'"$RPATH_FLAG"'#' \
- -e 's#\$(LDFLAGS)#'"$LDFLAGS"'#' \
+ -e 's#\$(LDFLAGS)##' \
-e 's#\$(PTHREAD_CFLAGS)#'"$PTHREAD_CFLAGS"'#' \
-e 's#\$(CFLAGS)##'`

View File

@ -1,149 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit autotools python-any-r1 systemd toolchain-funcs multilib-minimal
MY_P="${P/mit-}"
P_DIR=$(ver_cut 1-2)
DESCRIPTION="MIT Kerberos V"
HOMEPAGE="https://web.mit.edu/kerberos/www/"
SRC_URI="https://web.mit.edu/kerberos/dist/krb5/${P_DIR}/${MY_P}.tar.gz"
LICENSE="openafs-krb5-a BSD MIT OPENLDAP BSD-2 HPND BSD-4 ISC RSA CC-BY-SA-3.0 || ( BSD-2 GPL-2+ )"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="cpu_flags_x86_aes doc +keyutils lmdb nls openldap +pkinit selinux +threads test xinetd"
RESTRICT="!test? ( test )"
DEPEND="
!!app-crypt/heimdal
>=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}]
|| (
>=dev-libs/libverto-0.2.5[libev,${MULTILIB_USEDEP}]
>=dev-libs/libverto-0.2.5[libevent,${MULTILIB_USEDEP}]
)
keyutils? ( >=sys-apps/keyutils-1.5.8:=[${MULTILIB_USEDEP}] )
lmdb? ( dev-db/lmdb:= )
nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
openldap? ( >=net-nds/openldap-2.4.38-r1:=[${MULTILIB_USEDEP}] )
pkinit? ( >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}] )
xinetd? ( sys-apps/xinetd )
"
BDEPEND="
${PYTHON_DEPS}
app-alternatives/yacc
cpu_flags_x86_aes? (
amd64? ( dev-lang/yasm )
x86? ( dev-lang/yasm )
)
doc? ( virtual/latex-base )
test? ( dev-util/cmocka )
"
RDEPEND="${DEPEND}
selinux? ( sec-policy/selinux-kerberos )"
S=${WORKDIR}/${MY_P}/src
PATCHES=(
"${FILESDIR}/${PN}-1.12_warn_cflags.patch"
"${FILESDIR}/${PN}-config_LDFLAGS-r1.patch"
"${FILESDIR}/${PN}_dont_create_rundir.patch"
"${FILESDIR}/${PN}-1.18.2-krb5-config.patch"
"${FILESDIR}/${PN}-1.20-missing-time-include.patch"
"${FILESDIR}/${PN}-1.20.1-autoconf-2.72.patch"
)
MULTILIB_CHOST_TOOLS=(
/usr/bin/krb5-config
)
src_prepare() {
default
# Make sure we always use the system copies.
rm -rf util/{et,ss,verto}
sed -i 's:^[[:space:]]*util/verto$::' configure.ac || die
eautoreconf
}
multilib_src_configure() {
ECONF_SOURCE=${S} \
AR="$(tc-getAR)" \
WARN_CFLAGS="set" \
econf \
$(use_with openldap ldap) \
$(use_enable nls) \
$(use_enable pkinit) \
$(use_enable threads thread-support) \
$(use_with lmdb) \
$(use_with keyutils) \
--without-hesiod \
--enable-shared \
--with-system-et \
--with-system-ss \
--enable-dns-for-realm \
--enable-kdc-lookaside-cache \
--with-system-verto \
--disable-rpath
}
multilib_src_compile() {
emake -j1
}
multilib_src_test() {
multilib_is_native_abi && emake -j1 check
}
multilib_src_install() {
emake \
DESTDIR="${D}" \
EXAMPLEDIR="${EPREFIX}/usr/share/doc/${PF}/examples" \
install
}
multilib_src_install_all() {
# default database dir
keepdir /var/lib/krb5kdc
cd ..
dodoc README
if use doc; then
dodoc -r doc/html
docinto pdf
dodoc doc/pdf/*.pdf
fi
newinitd "${FILESDIR}"/mit-krb5kadmind.initd-r2 mit-krb5kadmind
newinitd "${FILESDIR}"/mit-krb5kdc.initd-r2 mit-krb5kdc
newinitd "${FILESDIR}"/mit-krb5kpropd.initd-r2 mit-krb5kpropd
newconfd "${FILESDIR}"/mit-krb5kadmind.confd mit-krb5kadmind
newconfd "${FILESDIR}"/mit-krb5kdc.confd mit-krb5kdc
newconfd "${FILESDIR}"/mit-krb5kpropd.confd mit-krb5kpropd
systemd_newunit "${FILESDIR}"/mit-krb5kadmind.service mit-krb5kadmind.service
systemd_newunit "${FILESDIR}"/mit-krb5kdc.service mit-krb5kdc.service
systemd_newunit "${FILESDIR}"/mit-krb5kpropd.service mit-krb5kpropd.service
systemd_newunit "${FILESDIR}"/mit-krb5kpropd_at.service "mit-krb5kpropd@.service"
systemd_newunit "${FILESDIR}"/mit-krb5kpropd.socket mit-krb5kpropd.socket
insinto /etc
newins "${ED}/usr/share/doc/${PF}/examples/krb5.conf" krb5.conf.example
insinto /var/lib/krb5kdc
newins "${ED}/usr/share/doc/${PF}/examples/kdc.conf" kdc.conf.example
if use openldap ; then
insinto /etc/openldap/schema
doins "${S}/plugins/kdb/ldap/libkdb_ldap/kerberos.schema"
fi
if use xinetd ; then
insinto /etc/xinetd.d
newins "${FILESDIR}/kpropd.xinetd" kpropd
fi
}

View File

@ -1,148 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..12} )
inherit autotools python-any-r1 systemd toolchain-funcs multilib-minimal
MY_P="${P/mit-}"
P_DIR=$(ver_cut 1-2)
DESCRIPTION="MIT Kerberos V"
HOMEPAGE="https://web.mit.edu/kerberos/www/"
SRC_URI="https://web.mit.edu/kerberos/dist/krb5/${P_DIR}/${MY_P}.tar.gz"
LICENSE="openafs-krb5-a BSD MIT OPENLDAP BSD-2 HPND BSD-4 ISC RSA CC-BY-SA-3.0 || ( BSD-2 GPL-2+ )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="cpu_flags_x86_aes doc +keyutils lmdb nls openldap +pkinit selinux +threads test xinetd"
RESTRICT="!test? ( test )"
DEPEND="
!!app-crypt/heimdal
>=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}]
|| (
>=dev-libs/libverto-0.2.5[libev,${MULTILIB_USEDEP}]
>=dev-libs/libverto-0.2.5[libevent,${MULTILIB_USEDEP}]
)
keyutils? ( >=sys-apps/keyutils-1.5.8:=[${MULTILIB_USEDEP}] )
lmdb? ( dev-db/lmdb:= )
nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
openldap? ( >=net-nds/openldap-2.4.38-r1:=[${MULTILIB_USEDEP}] )
pkinit? ( >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}] )
xinetd? ( sys-apps/xinetd )
"
BDEPEND="
${PYTHON_DEPS}
app-alternatives/yacc
cpu_flags_x86_aes? (
amd64? ( dev-lang/yasm )
x86? ( dev-lang/yasm )
)
doc? ( virtual/latex-base )
test? ( dev-util/cmocka )
"
RDEPEND="${DEPEND}
selinux? ( sec-policy/selinux-kerberos )"
S=${WORKDIR}/${MY_P}/src
PATCHES=(
"${FILESDIR}/${PN}-1.12_warn_cflags.patch"
"${FILESDIR}/${PN}-config_LDFLAGS-r1.patch"
"${FILESDIR}/${PN}_dont_create_rundir.patch"
"${FILESDIR}/${PN}-1.18.2-krb5-config.patch"
"${FILESDIR}/${PN}-1.20-missing-time-include.patch"
)
MULTILIB_CHOST_TOOLS=(
/usr/bin/krb5-config
)
src_prepare() {
default
# Make sure we always use the system copies.
rm -rf util/{et,ss,verto}
sed -i 's:^[[:space:]]*util/verto$::' configure.ac || die
eautoreconf
}
multilib_src_configure() {
ECONF_SOURCE=${S} \
AR="$(tc-getAR)" \
WARN_CFLAGS="set" \
econf \
$(use_with openldap ldap) \
$(use_enable nls) \
$(use_enable pkinit) \
$(use_enable threads thread-support) \
$(use_with lmdb) \
$(use_with keyutils) \
--without-hesiod \
--enable-shared \
--with-system-et \
--with-system-ss \
--enable-dns-for-realm \
--enable-kdc-lookaside-cache \
--with-system-verto \
--disable-rpath
}
multilib_src_compile() {
emake -j1
}
multilib_src_test() {
multilib_is_native_abi && emake -j1 check
}
multilib_src_install() {
emake \
DESTDIR="${D}" \
EXAMPLEDIR="${EPREFIX}/usr/share/doc/${PF}/examples" \
install
}
multilib_src_install_all() {
# default database dir
keepdir /var/lib/krb5kdc
cd ..
dodoc README
if use doc; then
dodoc -r doc/html
docinto pdf
dodoc doc/pdf/*.pdf
fi
newinitd "${FILESDIR}"/mit-krb5kadmind.initd-r2 mit-krb5kadmind
newinitd "${FILESDIR}"/mit-krb5kdc.initd-r2 mit-krb5kdc
newinitd "${FILESDIR}"/mit-krb5kpropd.initd-r2 mit-krb5kpropd
newconfd "${FILESDIR}"/mit-krb5kadmind.confd mit-krb5kadmind
newconfd "${FILESDIR}"/mit-krb5kdc.confd mit-krb5kdc
newconfd "${FILESDIR}"/mit-krb5kpropd.confd mit-krb5kpropd
systemd_newunit "${FILESDIR}"/mit-krb5kadmind.service mit-krb5kadmind.service
systemd_newunit "${FILESDIR}"/mit-krb5kdc.service mit-krb5kdc.service
systemd_newunit "${FILESDIR}"/mit-krb5kpropd.service mit-krb5kpropd.service
systemd_newunit "${FILESDIR}"/mit-krb5kpropd_at.service "mit-krb5kpropd@.service"
systemd_newunit "${FILESDIR}"/mit-krb5kpropd.socket mit-krb5kpropd.socket
insinto /etc
newins "${ED}/usr/share/doc/${PF}/examples/krb5.conf" krb5.conf.example
insinto /var/lib/krb5kdc
newins "${ED}/usr/share/doc/${PF}/examples/kdc.conf" kdc.conf.example
if use openldap ; then
insinto /etc/openldap/schema
doins "${S}/plugins/kdb/ldap/libkdb_ldap/kerberos.schema"
fi
if use xinetd ; then
insinto /etc/xinetd.d
newins "${FILESDIR}/kpropd.xinetd" kpropd
fi
}

View File

@ -1,146 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..12} )
inherit autotools python-any-r1 systemd toolchain-funcs multilib-minimal
MY_P="${P/mit-}"
P_DIR=$(ver_cut 1-2)
DESCRIPTION="MIT Kerberos V"
HOMEPAGE="https://web.mit.edu/kerberos/www/"
SRC_URI="https://web.mit.edu/kerberos/dist/krb5/${P_DIR}/${MY_P}.tar.gz"
LICENSE="openafs-krb5-a BSD MIT OPENLDAP BSD-2 HPND BSD-4 ISC RSA CC-BY-SA-3.0 || ( BSD-2 GPL-2+ )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="cpu_flags_x86_aes doc +keyutils lmdb nls openldap +pkinit selinux +threads test xinetd"
RESTRICT="!test? ( test )"
DEPEND="
!!app-crypt/heimdal
>=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}]
|| (
>=dev-libs/libverto-0.2.5[libev,${MULTILIB_USEDEP}]
>=dev-libs/libverto-0.2.5[libevent,${MULTILIB_USEDEP}]
)
keyutils? ( >=sys-apps/keyutils-1.5.8:=[${MULTILIB_USEDEP}] )
lmdb? ( dev-db/lmdb:= )
nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
openldap? ( >=net-nds/openldap-2.4.38-r1:=[${MULTILIB_USEDEP}] )
pkinit? ( >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}] )
xinetd? ( sys-apps/xinetd )
"
BDEPEND="
${PYTHON_DEPS}
app-alternatives/yacc
cpu_flags_x86_aes? (
amd64? ( dev-lang/yasm )
x86? ( dev-lang/yasm )
)
doc? ( virtual/latex-base )
test? ( dev-util/cmocka )
"
RDEPEND="${DEPEND}
selinux? ( sec-policy/selinux-kerberos )"
S=${WORKDIR}/${MY_P}/src
PATCHES=(
"${FILESDIR}/${PN}-1.12_warn_cflags.patch"
"${FILESDIR}/${PN}_dont_create_rundir.patch"
"${FILESDIR}/${PN}-1.18.2-krb5-config.patch"
)
MULTILIB_CHOST_TOOLS=(
/usr/bin/krb5-config
)
src_prepare() {
default
# Make sure we always use the system copies.
rm -rf util/{et,ss,verto}
sed -i 's:^[[:space:]]*util/verto$::' configure.ac || die
eautoreconf
}
multilib_src_configure() {
ECONF_SOURCE=${S} \
AR="$(tc-getAR)" \
WARN_CFLAGS="set" \
econf \
$(use_with openldap ldap) \
$(use_enable nls) \
$(use_enable pkinit) \
$(use_enable threads thread-support) \
$(use_with lmdb) \
$(use_with keyutils) \
--without-hesiod \
--enable-shared \
--with-system-et \
--with-system-ss \
--enable-dns-for-realm \
--enable-kdc-lookaside-cache \
--with-system-verto \
--disable-rpath
}
multilib_src_compile() {
emake -j1
}
multilib_src_test() {
multilib_is_native_abi && emake -j1 check
}
multilib_src_install() {
emake \
DESTDIR="${D}" \
EXAMPLEDIR="${EPREFIX}/usr/share/doc/${PF}/examples" \
install
}
multilib_src_install_all() {
# default database dir
keepdir /var/lib/krb5kdc
cd ..
dodoc README
if use doc; then
dodoc -r doc/html
docinto pdf
dodoc doc/pdf/*.pdf
fi
newinitd "${FILESDIR}"/mit-krb5kadmind.initd-r2 mit-krb5kadmind
newinitd "${FILESDIR}"/mit-krb5kdc.initd-r2 mit-krb5kdc
newinitd "${FILESDIR}"/mit-krb5kpropd.initd-r2 mit-krb5kpropd
newconfd "${FILESDIR}"/mit-krb5kadmind.confd mit-krb5kadmind
newconfd "${FILESDIR}"/mit-krb5kdc.confd mit-krb5kdc
newconfd "${FILESDIR}"/mit-krb5kpropd.confd mit-krb5kpropd
systemd_newunit "${FILESDIR}"/mit-krb5kadmind.service mit-krb5kadmind.service
systemd_newunit "${FILESDIR}"/mit-krb5kdc.service mit-krb5kdc.service
systemd_newunit "${FILESDIR}"/mit-krb5kpropd.service mit-krb5kpropd.service
systemd_newunit "${FILESDIR}"/mit-krb5kpropd_at.service "mit-krb5kpropd@.service"
systemd_newunit "${FILESDIR}"/mit-krb5kpropd.socket mit-krb5kpropd.socket
insinto /etc
newins "${ED}/usr/share/doc/${PF}/examples/krb5.conf" krb5.conf.example
insinto /var/lib/krb5kdc
newins "${ED}/usr/share/doc/${PF}/examples/kdc.conf" kdc.conf.example
if use openldap ; then
insinto /etc/openldap/schema
doins "${S}/plugins/kdb/ldap/libkdb_ldap/kerberos.schema"
fi
if use xinetd ; then
insinto /etc/xinetd.d
newins "${FILESDIR}/kpropd.xinetd" kpropd
fi
}

View File

@ -11,10 +11,11 @@ P_DIR=$(ver_cut 1-2)
DESCRIPTION="MIT Kerberos V"
HOMEPAGE="https://web.mit.edu/kerberos/www/"
SRC_URI="https://web.mit.edu/kerberos/dist/krb5/${P_DIR}/${MY_P}.tar.gz"
S=${WORKDIR}/${MY_P}/src
LICENSE="openafs-krb5-a BSD MIT OPENLDAP BSD-2 HPND BSD-4 ISC RSA CC-BY-SA-3.0 || ( BSD-2 GPL-2+ )"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="cpu_flags_x86_aes doc +keyutils lmdb nls openldap +pkinit selinux +threads test xinetd"
RESTRICT="!test? ( test )"
@ -46,8 +47,6 @@ BDEPEND="
RDEPEND="${DEPEND}
selinux? ( sec-policy/selinux-kerberos )"
S=${WORKDIR}/${MY_P}/src
PATCHES=(
"${FILESDIR}/${PN}-1.12_warn_cflags.patch"
"${FILESDIR}/${PN}_dont_create_rundir.patch"

View File

@ -14,7 +14,7 @@ S="${WORKDIR}/${PN}-${MY_P}"
LICENSE="MIT CC-BY-3.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~arm64-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha ~amd64 ~arm arm64 ~ia64 ~loong ~ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~arm64-macos ~x64-macos ~x64-solaris"
IUSE="+oniguruma static-libs test"
ONIGURUMA_MINPV='>=dev-libs/oniguruma-6.9.3' # Keep this in sync with bundled modules/oniguruma/

View File

@ -13,7 +13,7 @@ if [[ ${PV} = 9999* ]]; then
inherit git-r3
else
SRC_URI="https://gitweb.gentoo.org/proj/gentoolkit.git/snapshot/${P}.tar.bz2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
DESCRIPTION="Collection of administration scripts for Gentoo"

View File

@ -11,5 +11,6 @@
<stabilize-allarches/>
<upstream>
<remote-id type="sourceforge">docbook</remote-id>
<remote-id type="github">docbook/wiki</remote-id>
</upstream>
</pkgmetadata>

View File

@ -10,5 +10,6 @@
</use>
<upstream>
<remote-id type="sourceforge">docbook</remote-id>
<remote-id type="github">docbook/wiki</remote-id>
</upstream>
</pkgmetadata>

View File

@ -1 +1,2 @@
DIST gentoo-syntax-13.tar.bz2 20995 BLAKE2B 90196be7b1f0bbbe8398f327cebe2bbbcffbf8db2e27debc321478911d2413de51ef29d3a94e936e1d92eb4d246237d66d4fa8742fd165e4043ceb2dd80beb9a SHA512 c695dd8c80b551307381a4fb0656adc07321cf60f88e1888ce3a2080343d458a35bb4bda785e233fa4907534b35114c83b5d4b5e3f3bd02d0d6c2dd7ab7deda1
DIST gentoo-syntax-14.tar.bz2 20988 BLAKE2B 2f11628bec985ef486ad6f04b694df7a2b1e5ef34f5ddb364c7d9dea4a507d9bae4d8de6b00b33358cf651b4fc6816164f22f7760275a1fd0668b89927859cfb SHA512 63914ffb1911d83fa8991a901f9a23ccfc30f0170a6a730cb02919f4adf0ad34c70f4457e006b1c08a004448c6b9e85d97634a8ed8fdf0b4f98ef9fd804eef00

View File

@ -0,0 +1,42 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit vim-plugin
DESCRIPTION="vim plugin: Gentoo and Portage syntax highlighting"
HOMEPAGE="https://github.com/gentoo/gentoo-syntax"
SRC_URI="https://gitweb.gentoo.org/proj/gentoo-syntax.git/snapshot/${P}.tar.bz2"
LICENSE="vim"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="ignore-glep31"
VIM_PLUGIN_HELPFILES="gentoo-syntax"
VIM_PLUGIN_MESSAGES="filetype"
src_prepare() {
default
if use ignore-glep31 ; then
for f in ftplugin/*.vim ; do
ebegin "Removing UTF-8 rules from ${f} ..."
sed -i -e 's~\(setlocal fileencoding=utf-8\)~" \1~' ${f} \
|| die "waah! bad sed voodoo. need more goats."
eend $?
done
fi
}
pkg_postinst() {
vim-plugin_pkg_postinst
if [[ -z ${REPLACING_VERSIONS} ]] ; then
if use ignore-glep31 1>/dev/null ; then
ewarn "You have chosen to disable the rules which ensure GLEP 31"
ewarn "compliance. When editing ebuilds, please make sure you get"
ewarn "the character set correct."
fi
fi
}

View File

@ -98,11 +98,15 @@ src_configure() {
# to find a bash shell. if /bin/sh is bash, it uses that. this can
# cause problems for people who switch /bin/sh on the fly to other
# shells, so just force libtool to use /bin/bash all the time.
export CONFIG_SHELL="${EPREFIX}"/bin/bash
# Do not bother hardcoding the full path to sed.
# Just rely on $PATH. bug #574550
export ac_cv_path_SED="$(basename "$(type -P sed)")"
export CONFIG_SHELL="${EPREFIX}"/bin/bash
export ac_cv_path_SED="sed"
export ac_cv_path_EGREP="grep -E"
export ac_cv_path_EGREP_TRADITIONAL="grep -E"
export ac_cv_path_FGREP="grep -F"
export ac_cv_path_GREP="grep"
export ac_cv_path_lt_DD="dd"
[[ ${CHOST} == *-darwin* ]] && local myconf="--program-prefix=g"

View File

@ -96,11 +96,15 @@ src_configure() {
# to find a bash shell. if /bin/sh is bash, it uses that. this can
# cause problems for people who switch /bin/sh on the fly to other
# shells, so just force libtool to use /bin/bash all the time.
export CONFIG_SHELL="${EPREFIX}"/bin/bash
# Do not bother hardcoding the full path to sed.
# Just rely on $PATH. bug #574550
export CONFIG_SHELL="${EPREFIX}"/bin/bash
export ac_cv_path_SED="$(basename "$(type -P sed)")"
export ac_cv_path_EGREP="$(basename "$(type -P grep)") -E"
export ac_cv_path_EGREP_TRADITIONAL="$(basename "$(type -P grep)") -E"
export ac_cv_path_FGREP="$(basename "$(type -P grep)") -F"
export ac_cv_path_GREP="$(basename "$(type -P grep)")"
export ac_cv_path_lt_DD="$(basename "$(type -P dd)")"
[[ ${CHOST} == *-darwin* ]] && local myconf="--program-prefix=g"

View File

@ -1,2 +1,3 @@
DIST strace-6.6.tar.xz 2420364 BLAKE2B f1465fec58ac20ccce6a88441a34b1402e5c51f0bb4b7963f69b5ab5019a8c8722e3406c6f93c10c1eea11d17de7f9874895d6f4df24cf9ec42a18f36267687b SHA512 77ea45c72e513f6c07026cd9b2cc1a84696a5a35cdd3b06dd4a360fb9f9196958e3f6133b4a9c91e091c24066ba29e0330b6459d18a9c390caae2dba97ab399b
DIST strace-6.7.tar.xz 2434880 BLAKE2B 249c149a9140fc79be1365e4e8697b46f6558334eefac11b51c96d2d2e67bb82cb2eac3c38c2fa31f40fc5e0ad3c52967e15a034c01c12ed041d51f006a194ae SHA512 da28fd9fb987044782e6fd6f5e90e2cea2ab8e536cbd3893ef4c9b11c9b3185f073ca3d8ca0eade49e9a2af8efbda8c2b66b8988be7ebc463dc45e8f48ca1256
DIST strace-6.8.tar.xz 2457948 BLAKE2B 0897aedc6a1ed162b8967a56d54dd0bc589ce027321c1219e5fc23e6a44103576e0f363f79a03def365a05989173271eb6096a9c48b16cdf8c54033ec6bd6f2a SHA512 c477724a77112a74a5236a38b7dbaa9b6199622a1d21cc6253cac80dc4ddea78aeaf8cddf4a51ee4119e00e1adaf95f64f64e20d9775ec3edd77cd82c8f7b30e

View File

@ -0,0 +1,109 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools edo flag-o-matic toolchain-funcs
DESCRIPTION="Useful diagnostic, instructional, and debugging tool"
HOMEPAGE="https://strace.io/"
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://github.com/strace/strace.git"
inherit git-r3
else
SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
fi
LICENSE="LGPL-2.1+ test? ( GPL-2+ )"
SLOT="0"
IUSE="aio perl selinux static test unwind elfutils"
RESTRICT="!test? ( test )"
REQUIRED_USE="?? ( unwind elfutils )"
BDEPEND="virtual/pkgconfig"
LIB_DEPEND="
unwind? ( sys-libs/libunwind[static-libs(+)] )
elfutils? ( dev-libs/elfutils[static-libs(+)] )
selinux? ( sys-libs/libselinux[static-libs(+)] )
"
# strace only uses the header from libaio to decode structs
DEPEND="
static? ( ${LIB_DEPEND} )
aio? ( >=dev-libs/libaio-0.3.106 )
sys-kernel/linux-headers
"
RDEPEND="
!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
perl? ( dev-lang/perl )
"
PATCHES=(
"${FILESDIR}/${PN}-6.5-static.patch"
)
src_prepare() {
default
if [[ ! -e configure ]] ; then
# git generation
sed /autoreconf/d -i bootstrap || die
edo ./bootstrap
[[ ! -e CREDITS ]] && cp CREDITS{.in,}
fi
eautoreconf
# Stub out the -k test since it's known to be flaky. bug #545812
sed -i '1iexit 77' tests*/strace-k.test || die
}
src_configure() {
# Set up the default build settings, and then use the names strace expects.
tc-export_build_env BUILD_{CC,CPP}
local v bv
for v in CC CPP {C,CPP,LD}FLAGS ; do
bv="BUILD_${v}"
export "${v}_FOR_BUILD=${!bv}"
done
filter-lfs-flags # configure handles this sanely
export ac_cv_header_libaio_h=$(usex aio)
use elibc_musl && export ac_cv_header_stdc=no
local myeconfargs=(
--disable-gcc-Werror
# Don't require mpers support on non-multilib systems. #649560
--enable-mpers=check
$(use_enable static)
$(use_with unwind libunwind)
$(use_with elfutils libdw)
$(use_with selinux libselinux)
)
econf "${myeconfargs[@]}"
}
src_test() {
if has usersandbox ${FEATURES} ; then
# bug #643044
ewarn "Test suite is known to fail with FEATURES=usersandbox -- skipping ..."
return 0
fi
default
}
src_install() {
default
if use perl ; then
exeinto /usr/bin
doexe src/strace-graph
fi
dodoc CREDITS
}

View File

@ -1,9 +1,9 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit optfeature
inherit libtool optfeature
DESCRIPTION="A powerful light-weight programming language designed for extending applications"
HOMEPAGE="https://www.lua.org/"
@ -29,6 +29,7 @@ src_prepare() {
"${FILESDIR}"/${PN}-5.1.4-test.patch
)
default
elibtoolize
}
src_configure() {

View File

@ -1,9 +1,9 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic optfeature
inherit flag-o-matic libtool optfeature
DESCRIPTION="A powerful light-weight programming language designed for extending applications"
HOMEPAGE="https://www.lua.org/"
@ -24,6 +24,7 @@ BDEPEND="virtual/pkgconfig"
src_prepare() {
default
elibtoolize
if use elibc_musl; then
# locales on musl are non-functional (#834153)

View File

@ -1,9 +1,9 @@
# Copyright 1999-2023 Gentoo Authors
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic optfeature
inherit flag-o-matic libtool optfeature
DESCRIPTION="A powerful light-weight programming language designed for extending applications"
HOMEPAGE="https://www.lua.org/"
@ -29,6 +29,7 @@ PATCHES=(
src_prepare() {
default
elibtoolize
if use elibc_musl; then
# locales on musl are non-functional (#834153)

View File

@ -6,6 +6,8 @@ DIST Python-3.10.14.tar.xz 19600188 BLAKE2B a9e65fff590d56848f55f2d93d8a1c631bb8
DIST Python-3.10.14.tar.xz.asc 833 BLAKE2B a8ff46628d72540d0cbfbca91742e0901d7679229d873c3c92fd06d3b45a057daa5b70eb5f026db89d498cb84c10b8c477e79b012582c9fa2bf9d514637c2de7 SHA512 821046b8eb559c3ef800f26739c995e7a71469a1e765ee7d516690236e16d2637ada7b2f9535b8c0dceaacf243e7b059f6f106b4a25faae365aa2099d1ff538c
DIST Python-3.11.8.tar.xz 20041256 BLAKE2B 361253743c58facd01063922523c39fafe647a4204e04db79f36f0c3c180c2f1e95e8ea6662e85a8da06bdbd84d32bb7df9ac0febf361122df5b207ade562740 SHA512 434e727fa370def348838fd84acb69b4d309cfb03f61bf5069150164e9ca005637ac01dfbf997f445607d4e28d02c8bed0858b36589240ccadaa4c14c19f2320
DIST Python-3.11.8.tar.xz.asc 833 BLAKE2B c82907808de345b263cd1869589004a29e94f225c338a6da3035130728bda137727898743f30d64cc4b819a28cd035fa70123cc45cbf8719b66f9d3ef14452e2 SHA512 aebec01f84e96a76f6c5949004df2bb51c817bac3fc8d925ee26ded1ff2d80bec1b579dd0fc129004bc9cd81cbdcdcdf7c1f0471c3d26b70bd6dac11b97187e0
DIST Python-3.11.9.tar.xz 20175816 BLAKE2B 4e7cd2c42ee39b5ef9624ebd1798320957e948cb4f23f17fd1530814c60126dbf988846928d4d7d4b9d2174029ab8d4dbaf19e6203da237da4c3212ddebd5803 SHA512 2b0a1d936b4ef8376f9655797aece8ffdff75031ad7bfa840f330cac2aed189aecc80c163edc12ea772851d7a011f3fc1960470a73d9d4290cf3ab8ad6ed7e6a
DIST Python-3.11.9.tar.xz.asc 833 BLAKE2B fa29f632bae0bee7db946038ee3529bc3bfbe1b2e755b21394f67a3c80911ce8079aaab43a16d88e614a8bfc01fb5105ce3f61c59a5ca44470b0f59787c707b3 SHA512 b18b50e7168b2ca5376a1fa75e50e8baae2026d4f11d4cf613d758f3f17df4610fe4653fb2ac0c5c4ec0f6e630dc6490ad1ff32a2fd0ebd60f9f3bd136207ffc
DIST Python-3.12.2.tar.xz 20591308 BLAKE2B 419186d220d4ae5ca31466771158c8b56f5298b93e81a29993f36711e08b0384e002d891280ca29099ae826919ba99c2d056d468d9d3049a984d58e01d4972c0 SHA512 2ccfae7b9f95d8e15ea85d3f66eea5f6a8fdcaffc0b405095fecb33efc0df50b831c1215542910ced948b54e6de1f7242b0b8b9afc5f89079451c552430d7d9f
DIST Python-3.12.2.tar.xz.asc 963 BLAKE2B 45bfa01009f4df19d348a1fda722901cb4f0b76eb63fcf1061c2796949b5b2ef301fd0fdf818cd145e41d45e5785e0cfbfab8d98751765741715ee7d1b27f2f8 SHA512 fb477acb49864a662b1586db79e80fd8ebab85d4e5e14acd3bfb5afc3dbe8d6b9bf97eb518dfb77662e27040d400f451ed7575fe1264a6cc0d9feb06e4f2dc84
DIST Python-3.13.0a4.tar.xz 20648544 BLAKE2B 4d45bdc1d88792c0bff93b4f9023d494b5ae86cd74eef49089fb11fab951b7fd2a5b8ac5b827b50fe1d61b516ed9a50f3f0e0b112299a70128f5e29e7b1d3f0f SHA512 f0dccc822ba000e8a50853d62698975d35382b981b62091e25ad6a6e0669e4e517c880e884644b508172de38226006ec11ddc649d9271320e728c0cd6c0b4dcc
@ -24,6 +26,7 @@ DIST python-gentoo-patches-2.7.18_p16.tar.xz 35448 BLAKE2B 0139c0944f62f9cdd236f
DIST python-gentoo-patches-3.10.13_p3.tar.xz 16192 BLAKE2B f13efbaf3b41572cc9d1f3878cf2339448f513c96fd85b35d0f4a9a472cd4867d898ec46230391fc916debf5dc23ac0030b228f8ab78b2ac9e38159c75aecabb SHA512 a5eab5f3ea59b12fa6613a18b4f318981b750899d69cf382abea7705efb873be5b94024ed64fb47f19aa6f6e4f2a9ebe05c05361e7a45bd41dea5161f955448c
DIST python-gentoo-patches-3.10.14.tar.xz 15240 BLAKE2B 0bfae6d93ceb1292891450d6af3bd7f286546141f1eb4a6a39ec1a43450f62fab6f31aa7e7be25982e6354ccfa1f233a4c949f6c9dffcf2d71ef136a64d91597 SHA512 c7084bf49642192d69979fff205d7e29d9491f483219240e3a1cd5fc00985e471a1f884af789058fa490f0994829b50accf2e445d21906a96aefdec8a394da24
DIST python-gentoo-patches-3.11.8_p1.tar.xz 9604 BLAKE2B 9017104f160f24e0a1818a8b12225c596faee79d646cc73b6edc4ed1e3faca86cfa2fcea09a128224b85330a67dea65f658507e60dcd09b10af0d590a2b05082 SHA512 0f0afa57abfb4282953a1a78e5ad1cc5e17c0a205e96d9c152f9de6537da95671c1d429ac03fd6aa70a457b27a19b0892a1f9b81164468c4085172a58f5e8d9e
DIST python-gentoo-patches-3.11.9.tar.xz 8456 BLAKE2B 4e62837f17c1d056460df417b056a79ad78dbcdd3454761c7cda68ffe6faf8f4d4f04d5539e0ba94332fe19a751f7d5ff2c35ff969a6aa09a2c72d2ce5efbff1 SHA512 a288aa8d1d15e906e0f1762602a2122f9dc91bbd6b72123ac5d00ce55b3af324a4e8280b600fc0fb630e489e57ee1547d7595a4ede7a70e4b26d6686a8414997
DIST python-gentoo-patches-3.12.2_p1.tar.xz 7208 BLAKE2B 8266f2b6c64ffd509278c0d8756680e6700dcd3ed3ab6d3f0e1be2cc87cb20bc694f9e386b474fa5d115ffecdd5d4807a956a48450e109ef7f449ed6f4a8afce SHA512 5fdb93ffae471b5a9e617c12ca1646b9521867cd260efe6da6350fcf5ba24114cad1dc715f033079ab69ecab7cc62c870e14fe2d2035c2d7f29c05cc0f1297db
DIST python-gentoo-patches-3.13.0a4.tar.xz 5256 BLAKE2B e3ad093b0c4bb044fb5883b5af14d130a6d5c94d8e9094263544f458ba2a38056ae64bd94d78ec44372caf40fafdb542d06be197cd5d1742f43a4f842d2fd2e3 SHA512 d845febc89d089791bac09beb758a615c20968b97077a3483c037562b4811edfe7c2d17e815032a77676bafda6ed838dba370fdcbba37f93ea83ee9d4b092fe8
DIST python-gentoo-patches-3.13.0a5.tar.xz 5272 BLAKE2B d3251c26bf170c30cd3c935f697617e431c4d8dd9192e0ffd7a314b6780bf193b1fa1d6f4108455c993a0057b4712d336132ccc49fcd3d510003868afb3c2b5b SHA512 13dcdf5b037a7c09a9964cbe74c7caa26894bb842b53d7ff027a1675a005bd72452526b18e69b7c1579a3b786f67d4b3236c1c744b224bc7a09fa61aead01ef4

View File

@ -28,7 +28,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="
bluetooth build debug +ensurepip examples gdbm libedit
+ncurses pgo +readline +sqlite +ssl test tk valgrind

View File

@ -0,0 +1,539 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="8"
WANT_LIBTOOL="none"
inherit autotools check-reqs flag-o-matic multiprocessing pax-utils
inherit prefix python-utils-r1 toolchain-funcs verify-sig
MY_PV=${PV/_rc/rc}
MY_P="Python-${MY_PV%_p*}"
PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-${MY_PV}"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="
https://www.python.org/
https://github.com/python/cpython/
"
SRC_URI="
https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
verify-sig? (
https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc
)
"
S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="
bluetooth build debug +ensurepip examples gdbm libedit
+ncurses pgo +readline +sqlite +ssl test tk valgrind
"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="
app-arch/bzip2:=
app-arch/xz-utils:=
app-crypt/libb2
>=dev-libs/expat-2.1:=
dev-libs/libffi:=
dev-python/gentoo-common
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
ensurepip? ( dev-python/ensurepip-wheels )
gdbm? ( sys-libs/gdbm:=[berkdb] )
kernel_linux? ( sys-apps/util-linux:= )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? (
!libedit? ( >=sys-libs/readline-4.1:= )
libedit? ( dev-libs/libedit:= )
)
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? ( >=dev-libs/openssl-1.1.1:= )
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=
dev-tcltk/blt:=
dev-tcltk/tix
)
"
# bluetooth requires headers from bluez
DEPEND="
${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils )
valgrind? ( dev-debug/valgrind )
"
# autoconf-archive needed to eautoreconf
BDEPEND="
dev-build/autoconf-archive
app-alternatives/awk
virtual/pkgconfig
verify-sig? ( sec-keys/openpgp-keys-python )
"
RDEPEND+="
!build? ( app-misc/mime-types )
"
if [[ ${PV} != *_alpha* ]]; then
RDEPEND+="
dev-lang/python-exec[python_targets_python${PYVER/./_}(-)]
"
fi
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc
# large file tests involve a 2.5G file being copied (duplicated)
CHECKREQS_DISK_BUILD=5500M
QA_PKGCONFIG_VERSION=${PYVER}
# false positives -- functions specific to *BSD
QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags )
pkg_pretend() {
use test && check-reqs_pkg_pretend
}
pkg_setup() {
use test && check-reqs_pkg_setup
}
src_unpack() {
if use verify-sig; then
verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc}
fi
default
}
src_prepare() {
# Ensure that internal copies of expat and libffi are not used.
rm -r Modules/expat || die
rm -r Modules/_ctypes/libffi* || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
)
default
# https://bugs.gentoo.org/850151
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die
# force the correct number of jobs
# https://bugs.gentoo.org/737660
local jobs=$(makeopts_jobs)
sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
eautoreconf
}
build_cbuild_python() {
# Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi)
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
# propagated to sysconfig for built extensions
#
# -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway)
local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto"
local -x LDFLAGS_NODIST=${BUILD_LDFLAGS}
local -x CFLAGS= LDFLAGS=
local -x BUILD_CFLAGS="${CFLAGS_NODIST}"
local -x BUILD_LDFLAGS=${LDFLAGS_NODIST}
# We need to build our own Python on CBUILD first, and feed it in.
# bug #847910
local myeconfargs_cbuild=(
"${myeconfargs[@]}"
--prefix="${BROOT}"/usr
--libdir="${cbuild_libdir:2}"
# Avoid needing to load the right libpython.so.
--disable-shared
# As minimal as possible for the mini CBUILD Python
# we build just for cross to satisfy --with-build-python.
--without-lto
--without-readline
--disable-optimizations
)
mkdir "${WORKDIR}"/${P}-${CBUILD} || die
pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
# We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating
# libdir correctly for cross.
PYTHON_DISABLE_MODULES+=" _ctypes _crypt" \
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
# Avoid as many dependencies as possible for the cross build.
cat >> Makefile <<-EOF || die
MODULE_NIS_STATE=disabled
MODULE__DBM_STATE=disabled
MODULE__GDBM_STATE=disabled
MODULE__DBM_STATE=disabled
MODULE__SQLITE3_STATE=disabled
MODULE__HASHLIB_STATE=disabled
MODULE__SSL_STATE=disabled
MODULE__CURSES_STATE=disabled
MODULE__CURSES_PANEL_STATE=disabled
MODULE_READLINE_STATE=disabled
MODULE__TKINTER_STATE=disabled
MODULE_PYEXPAT_STATE=disabled
MODULE_ZLIB_STATE=disabled
EOF
# Unfortunately, we do have to build this immediately, and
# not in src_compile, because CHOST configure for Python
# will check the existence of the --with-build-python value
# immediately.
PYTHON_DISABLE_MODULES+=" _ctypes _crypt" emake
popd &> /dev/null || die
}
src_configure() {
# disable automagic bluetooth headers detection
if ! use bluetooth; then
local -x ac_cv_header_bluetooth_bluetooth_h=no
fi
append-flags -fwrapv
filter-flags -malign-double
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
# PKG_CONFIG needed for cross.
tc-export CXX PKG_CONFIG
local dbmliborder=
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
if use pgo; then
local profile_task_flags=(
-m test
"-j$(makeopts_jobs)"
--pgo-extended
-u-network
# We use a timeout because of how often we've had hang issues
# here. It also matches the default upstream PROFILE_TASK.
--timeout 1200
-x test_gdb
-x test_dtrace
# All of these seem to occasionally hang for PGO inconsistently
# They'll even hang here but be fine in src_test sometimes.
# bug #828535 (and related: bug #788022)
-x test_asyncio
-x test_concurrent_futures
-x test_httpservers
-x test_logging
-x test_multiprocessing_fork
-x test_socket
-x test_xmlrpc
# Hangs (actually runs indefinitely executing itself w/ many cpython builds)
# bug #900429
-x test_tools
)
if has_version "app-arch/rpm" ; then
# Avoid sandbox failure (attempts to write to /var/lib/rpm)
profile_task_flags+=(
-x test_distutils
)
fi
local -x PROFILE_TASK="${profile_task_flags[*]}"
fi
local myeconfargs=(
# glibc-2.30 removes it; since we can't cleanly force-rebuild
# Python on glibc upgrade, remove it proactively to give
# a chance for users rebuilding python before glibc
ac_cv_header_stropts_h=no
--enable-shared
--without-static-libpython
--enable-ipv6
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--without-ensurepip
--without-lto
--with-system-expat
--with-system-ffi
--with-platlibdir=lib
--with-pkg-config=yes
--with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
$(use_with debug assertions)
$(use_enable pgo optimizations)
$(use_with readline readline "$(usex libedit editline readline)")
$(use_with valgrind)
)
# disable implicit optimization/debugging flags
local -x OPT=
# https://bugs.gentoo.org/700012
if tc-is-lto; then
append-cflags $(test-flags-CC -ffat-lto-objects)
myeconfargs+=(
--with-lto
)
fi
if tc-is-cross-compiler ; then
build_cbuild_python
myeconfargs+=(
# Point the imminent CHOST build to the Python we just
# built for CBUILD.
--with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
)
fi
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
# propagated to sysconfig for built extensions
local -x CFLAGS_NODIST=${CFLAGS}
local -x LDFLAGS_NODIST=${LDFLAGS}
local -x CFLAGS= LDFLAGS=
# Fix implicit declarations on cross and prefix builds. Bug #674070.
if use ncurses; then
append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
fi
hprefixify setup.py
econf "${myeconfargs[@]}"
if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
eerror "configure has detected that the sem_open function is broken."
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
die "Broken sem_open function (bug 496328)"
fi
# force-disable modules we don't want built
local disable_modules=( NIS )
use gdbm || disable_modules+=( _GDBM _DBM )
use sqlite || disable_modules+=( _SQLITE3 )
use ssl || disable_modules+=( _HASHLIB _SSL )
use ncurses || disable_modules+=( _CURSES _CURSES_PANEL )
use readline || disable_modules+=( READLINE )
use tk || disable_modules+=( _TKINTER )
local mod
for mod in "${disable_modules[@]}"; do
echo "MODULE_${mod}_STATE=disabled"
done >> Makefile || die
# install epython.py as part of stdlib
echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
# Prevent using distutils bundled by setuptools.
# https://bugs.gentoo.org/823728
export SETUPTOOLS_USE_DISTUTILS=stdlib
export PYTHONSTRICTEXTENSIONBUILD=1
# Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
# end up writing bytecode & violating sandbox.
# bug #831897
local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
if use pgo ; then
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
addpredict "/usr/lib/python${PYVER}/site-packages"
fi
# also need to clear the flags explicitly here or they end up
# in _sysconfigdata*
emake CPPFLAGS= CFLAGS= LDFLAGS=
# Restore saved value from above.
local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE}
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax-kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
# this just happens to skip test_support.test_freeze that is broken
# without bundled expat
# TODO: get a proper skip for it upstream
local -x LOGNAME=buildbot
local test_opts=(
-u-network
-j "$(makeopts_jobs)"
# fails
-x test_concurrent_futures
-x test_gdb
)
if use sparc ; then
# bug #788022
test_opts+=(
-x test_multiprocessing_fork
-x test_multiprocessing_forkserver
)
fi
# workaround docutils breaking tests
cat > Lib/docutils.py <<-EOF || die
raise ImportError("Thou shalt not import!")
EOF
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
# workaround https://bugs.gentoo.org/775416
addwrite "/usr/lib/python${PYVER}/site-packages"
nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
local ret=${?}
rm Lib/docutils.py || die
[[ ${ret} -eq 0 ]] || die "emake test failed"
}
src_install() {
local libdir=${ED}/usr/lib/python${PYVER}
# -j1 hack for now for bug #843458
emake -j1 DESTDIR="${D}" altinstall
# Fix collisions between different slots of Python.
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED}/usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED}/usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
# Create python-3.5m.pc symlink
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
fi
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax-kernel]; then
pax-mark E "${ED}/usr/bin/${abiver}"
else
pax-mark m "${ED}/usr/bin/${abiver}"
fi
rm -r "${libdir}"/ensurepip/_bundled || die
if ! use ensurepip; then
rm -r "${libdir}"/ensurepip || die
fi
if ! use sqlite; then
rm -r "${libdir}/"sqlite3 || die
fi
if ! use tk; then
rm -r "${ED}/usr/bin/idle${PYVER}" || die
rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
fi
ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die
dodoc Misc/{ACKS,HISTORY,NEWS}
if use examples; then
docinto examples
find Tools -name __pycache__ -exec rm -fr {} + || die
dodoc -r Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(
printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' |
emake --no-print-directory -s -f - 2>/dev/null
)
newins Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
# python-exec wrapping support
local pymajor=${PYVER%.*}
local EPYTHON=python${PYVER}
local scriptdir=${D}$(python_get_scriptdir)
mkdir -p "${scriptdir}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die
ln -s "python${pymajor}" "${scriptdir}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${scriptdir}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die
# 2to3, pydoc
ln -s "../../../bin/2to3-${PYVER}" "${scriptdir}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
fi
}
pkg_postinst() {
local v
for v in ${REPLACING_VERSIONS}; do
if ver_test "${v}" -lt 3.11.0_beta4-r2; then
ewarn "Python 3.11.0b4 has changed its module ABI. The .pyc files"
ewarn "installed previously are no longer valid and will be regenerated"
ewarn "(or ignored) on the next import. This may cause sandbox failures"
ewarn "when installing some packages and checksum mismatches when removing"
ewarn "old versions. To actively prevent this, rebuild all packages"
ewarn "installing Python 3.11 modules, e.g. using:"
ewarn
ewarn " emerge -1v /usr/lib/python3.11/site-packages"
fi
done
}

View File

@ -28,7 +28,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="
bluetooth build debug +ensurepip examples gdbm +ncurses pgo
+readline +sqlite +ssl test tk valgrind

View File

@ -28,7 +28,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="
bluetooth build debug +ensurepip examples gdbm +ncurses pgo
+readline +sqlite +ssl test tk valgrind

View File

@ -0,0 +1,45 @@
https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3945
From cce3ae98a2c1966719daabff5a4ec6cf94a846f6 Mon Sep 17 00:00:00 2001
From: Philip Withnall <pwithnall@gnome.org>
Date: Mon, 26 Feb 2024 16:55:44 +0000
Subject: [PATCH] tests: Remove variable-length lookbehind tests for GRegex
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
PCRE2 10.43 has now introduced support for variable-length lookbehind,
so these tests now fail if GLib is built against PCRE2 10.43 or higher.
See
https://github.com/PCRE2Project/pcre2/blob/e8db6fa7137f4c6f66cb87e0a3c9467252ec1ef7/ChangeLog#L94.
Rather than making the tests conditional on the version of PCRE2 in use,
just remove them. They are mostly testing the PCRE2 code rather than
any code in GLib, so don’t have much value.
This should fix CI runs on msys2-mingw32, which updated to PCRE2 10.43 2
days ago.
Signed-off-by: Philip Withnall <pwithnall@gnome.org>
--- a/glib/tests/regex.c
+++ b/glib/tests/regex.c
@@ -1885,16 +1885,6 @@ test_lookbehind (void)
g_match_info_free (match);
g_regex_unref (regex);
- regex = g_regex_new ("(?<!dogs?|cats?) x", G_REGEX_OPTIMIZE, G_REGEX_MATCH_DEFAULT, &error);
- g_assert (regex == NULL);
- g_assert_error (error, G_REGEX_ERROR, G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND);
- g_clear_error (&error);
-
- regex = g_regex_new ("(?<=ab(c|de)) foo", G_REGEX_OPTIMIZE, G_REGEX_MATCH_DEFAULT, &error);
- g_assert (regex == NULL);
- g_assert_error (error, G_REGEX_ERROR, G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND);
- g_clear_error (&error);
-
regex = g_regex_new ("(?<=abc|abde)foo", G_REGEX_OPTIMIZE, G_REGEX_MATCH_DEFAULT, &error);
g_assert (regex);
g_assert_no_error (error);
--
GitLab

View File

@ -16,7 +16,7 @@ IUSE="dbus debug +elf gtk-doc +mime selinux static-libs sysprof systemtap test u
RESTRICT="!test? ( test )"
REQUIRED_USE="gtk-doc? ( test )" # Bug #777636
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
# * elfutils (via libelf) does not build on Windows. gresources are not embedded
# within ELF binaries on that platform anyway and inspecting ELF binaries from
@ -73,6 +73,7 @@ MULTILIB_CHOST_TOOLS=(
PATCHES=(
"${FILESDIR}"/${PN}-2.64.1-mark-gdbus-server-auth-test-flaky.patch
"${FILESDIR}"/${PN}-2.78.4-distutils.patch
"${FILESDIR}"/${PN}-2.78.4-libpcre2-10.43.patch
)
python_check_deps() {
@ -187,7 +188,7 @@ multilib_src_configure() {
#fi
local emesonargs=(
-Dbuildtype=$(usex debug debug plain)
$(meson_feature debug glib_debug)
-Ddefault_library=$(usex static-libs both shared)
-Druntime_dir="${EPREFIX}"/run
$(meson_feature selinux)

View File

@ -13,7 +13,7 @@ SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )"
LICENSE="LGPL-2.1+ GPL-2+ MIT"
SLOT="0/20" # subslot = soname major version
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="+asm cpu_flags_arm_neon cpu_flags_arm_aes cpu_flags_arm_sha1 cpu_flags_arm_sha2 cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 cpu_flags_ppc_vsx3 cpu_flags_x86_aes cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_padlock cpu_flags_x86_sha cpu_flags_x86_sse4_1 doc +getentropy static-libs"
# Build system only has --disable-arm-crypto-support right now

View File

@ -12,7 +12,7 @@ SRC_URI="https://github.com/${PN}/${PN}/releases/download/${P}/${P}.tar.bz2"
LICENSE="|| ( BSD GPL-2 )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="pam python static-libs"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"

View File

@ -1,2 +1,3 @@
DIST cython-3.0.10.gh.tar.gz 2771679 BLAKE2B f0813afc291bdc4940cd6770a368eca4f6d9fd728e41e9c341970512196154be900600146f98ce1e5a056eaeeda2df2a59fea2a9973c3ec275fe605bfd12e418 SHA512 97aa831cea96c1f3c51653c51fadb0aea8bdfdb076a2c898862637f52b826bcb9162d1b7aade3304c5650d0b894cb1083052f036365d79cd3d390e0486b33ac5
DIST cython-3.0.8.gh.tar.gz 2764668 BLAKE2B 03202ea480fa398d2b0893cc96185467009c783cf4451fc5d1c09ec229398bc084276680ed2b64acf63253744f827427e03674be3e5985d5a2912d9f338c786a SHA512 1070fc278401990595d177b0e6396bc1eba2ea8234a7c5bb26399b6b7284de7791ee5fa60ef74d06d0f4120b9c877bfd7703a7d701838f1634737526c614b860
DIST cython-3.0.9.gh.tar.gz 2769345 BLAKE2B 2a21b5e7060727d727902a08d7e038dacc047b724ebaa496ba5768542e28eec3c6198062ac3dd774a4321204752b373516f193f01bc6951e5f38b6029754647e SHA512 7899474882faab14716973783bbb46b981eab48192791acbbd06133efee83bfa9ace0e9a0272b0a44061a95ed94cdceaa98c4100f843220f5987791e36fa00e6

View File

@ -0,0 +1,84 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=setuptools
PYTHON_TESTED=( python3_{10..12} )
PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" pypy3 )
PYTHON_REQ_USE="threads(+)"
inherit distutils-r1 multiprocessing toolchain-funcs
MY_P=${P/_rc/rc}
DESCRIPTION="A Python to C compiler"
HOMEPAGE="
https://cython.org/
https://github.com/cython/cython/
https://pypi.org/project/Cython/
"
SRC_URI="
https://github.com/cython/cython/archive/${PV/_rc/rc}.tar.gz
-> ${MY_P}.gh.tar.gz
"
S=${WORKDIR}/${MY_P}
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="test"
RESTRICT="!test? ( test )"
BDEPEND="
${RDEPEND}
test? (
$(python_gen_cond_dep '
<dev-python/numpy-2[${PYTHON_USEDEP}]
' "${PYTHON_TESTED[@]}")
)
"
PATCHES=(
"${FILESDIR}/${PN}-0.29.22-spawn-multiprocessing.patch"
"${FILESDIR}/${PN}-0.29.23-test_exceptions-py310.patch"
"${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch"
)
distutils_enable_sphinx docs \
dev-python/jinja \
dev-python/sphinx-issues \
dev-python/sphinx-tabs
python_compile() {
# Python gets confused when it is in sys.path before build.
local -x PYTHONPATH=
distutils-r1_python_compile
}
python_test() {
if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then
einfo "Skipping tests on ${EPYTHON} (xfail)"
return
fi
# Needed to avoid confusing cache tests
unset CYTHON_FORCE_REGEN
tc-export CC
# https://github.com/cython/cython/issues/1911
local -x CFLAGS="${CFLAGS} -fno-strict-overflow"
"${PYTHON}" runtests.py \
-vv \
-j "$(makeopts_jobs)" \
--work-dir "${BUILD_DIR}"/tests \
--no-examples \
--no-code-style \
|| die "Tests fail with ${EPYTHON}"
}
python_install_all() {
local DOCS=( CHANGES.rst README.rst ToDo.txt USAGE.txt )
distutils-r1_python_install_all
}

View File

@ -33,7 +33,7 @@ python_compile_all() {
cp docutils/writers/html4css1/html4css1.css . || die
cd tools || die
"${EPYTHON}" buildhtml.py --input-encoding=utf-8 \
"${EPYTHON}" buildhtml.py --input-encoding=utf-8 --no-datestamp \
--stylesheet-path=../html4css1.css, --traceback ../docs || die
}

View File

@ -1,2 +1,2 @@
DIST hatch-hatchling-v1.21.1.gh.tar.gz 774577 BLAKE2B 31e2b50598b4fe120ecea407a37e3262876a2ec1e8cf02f272c25838e73afc37f2fef1f8fab08b2e3b83bfd828f6c558ce303b084081b83504343a8bb057c341 SHA512 91b5684737fac19758d7095b357f99031d46e9f981e093cab848ce770fd1f9440b69212f3ef2217e3700e7dd7985a97c2735bbd27b306c7b8aa7bffc5c950fb4
DIST hatch-hatchling-v1.22.4.gh.tar.gz 782805 BLAKE2B 06cf7b07cdb35223c6ffb9403a26b50ec93decb19e58199dc17ae4d924bfaf20625270d4721bc27adfcdd3a345b80409fe9487bb457644077f6a4b7d2ee082c0 SHA512 e33dec3494cd760fdf07de532367fccc63a91a67e408fe5c7ac60bf568093ea0419f6e9d5bfd49aa9c9415d79f006c4b3794b96e91aa97af4e7b87b129c4b448
DIST hatch-hatchling-v1.22.5.gh.tar.gz 782757 BLAKE2B 3431ef7c4e5f0754e51507e29d88ed0277b530d220eb75bdeab459d88172ba51de3cf2456074fa88483cc89e72726f3e147b97e995f9ccaf699b6c2699776a8c SHA512 d4e77872e34e3aba3fce286f911861b795005c37550a2ca72a83216cea67d53be891afc8861b11582c66d38748f9c8d4980548d216c0fb21b2b4e1cadc314e58

View File

@ -35,7 +35,12 @@ RDEPEND="
$(python_gen_cond_dep '
>=dev-python/tomli-1.2.2[${PYTHON_USEDEP}]
' 3.10)
dev-python/trove-classifiers[${PYTHON_USEDEP}]
"
# always depend on the newest version available, at least until upstream
# stops treating unknown classifiers as a fatal error
# https://github.com/pypa/hatch/issues/1368
RDEPEND+="
>=dev-python/trove-classifiers-2024.3.25[${PYTHON_USEDEP}]
"
BDEPEND="
${RDEPEND}

View File

@ -36,7 +36,12 @@ RDEPEND="
$(python_gen_cond_dep '
>=dev-python/tomli-1.2.2[${PYTHON_USEDEP}]
' 3.10)
dev-python/trove-classifiers[${PYTHON_USEDEP}]
"
# always depend on the newest version available, at least until upstream
# stops treating unknown classifiers as a fatal error
# https://github.com/pypa/hatch/issues/1368
RDEPEND+="
>=dev-python/trove-classifiers-2024.3.25[${PYTHON_USEDEP}]
"
BDEPEND="
${RDEPEND}

View File

@ -1 +1,2 @@
DIST inflect-7.0.0.tar.gz 70963 BLAKE2B ae896109acd33946e05902d121ecbd95e04dc33a1d6da6035148521de5baff8cff877a5c56c104bde29d56025e231e20f97e0ee50686de0ec19b567d53612314 SHA512 b2ca39d0e36cda8c8c42d208443d3b84b10d659dcd0d368273503d6e76df19c61ac3c623d526ea918ca8b347d6db8bdfb691609e480eaa33dd4f1c37e008473b
DIST inflect-7.2.0.tar.gz 71448 BLAKE2B 33d7d8cf4b4de05a035e1929fd6c70c3635290cf1387927e5fe15315c06135a6b2daf6b67f044b9ea004c2345bdeb8b2f17e5f54daa9cb18f0d3bc1935295439 SHA512 13b698637a8049987675dd419359907baba6d8a9805c3602bbc414ed8fb422bfaa32ec26bcc309508ead5cb72bed632d9142f7796c981269551f1238b88c9019

View File

@ -0,0 +1,37 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( pypy3 python3_{10..12} )
inherit distutils-r1 pypi
DESCRIPTION="Correctly inflect words and numbers"
HOMEPAGE="
https://pypi.org/project/inflect/
https://github.com/jaraco/inflect/
"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
RDEPEND="
>=dev-python/pydantic-1.9.1[${PYTHON_USEDEP}]
dev-python/typing-extensions[${PYTHON_USEDEP}]
dev-python/typeguard[${PYTHON_USEDEP}]
dev-python/more-itertools[${PYTHON_USEDEP}]
"
BDEPEND="
>=dev-python/setuptools-scm-3.4.1[${PYTHON_USEDEP}]
"
distutils_enable_tests pytest
EPYTEST_DESELECT=(
# broken upstream
# https://github.com/jaraco/inflect/issues/204
inflect/__init__.py::inflect.engine.compare
)

View File

@ -1 +1,3 @@
DIST jaraco.context-4.3.0.tar.gz 9764 BLAKE2B 2905723ec54c6ae63b2088d677cd486dcdc06dfea06bb058eeb512da508b2ae74990894cb62f3751321cb4c813b66ffe9a3084b21eb0cb4236a9515969432dfc SHA512 8882229fa1a68f2733ec4103fbeaf47625b19790f4461ab18df4c1f1a99d4d26d10d7381ab68ba5df48616a1fdb2d5e4a767496a0e40658fd011ed9cd39255de
DIST jaraco.context-5.1.0.tar.gz 11626 BLAKE2B c6ac691c6493e0aed5d606784f8418e55fb0c6c8094aa75251ffb12008fb9b4fbfe0912e6ef316d7799d2c0f55be6ba542202f6b8b2bc93afa3a79da4224d35f SHA512 b92c72947060e2219c172c43104055d026f66b119676fcfa31dff34640539d34376b61d209291fffeb558e6051fb92a2a34390fbd3a72f87ee15c5926cb387e5
DIST jaraco.context-5.3.0.tar.gz 13345 BLAKE2B d2f429335ea80a6b50ea9574adc45c25c0fc78e8ebb5edde218bcbbe7a2b27ae6b5c17453e71904240d0d873ebef36f7c7aeda4424d3fea2dd9aaf01af6fb4c5 SHA512 f63bf272c45ff5c43499621651b78841259040ac98d67c9db75fadebb1c497c1156e05f23bf7c91df3e91f1e070acb9f7dc665e7b242ba7b1ac1cf99a619494d

View File

@ -0,0 +1,47 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
EAPI=8
DISTUTILS_USE_PEP517=flit
PYPI_NO_NORMALIZE=1
PYPI_PN=${PN/-/.}
PYTHON_COMPAT=( python3_{10..12} pypy3 )
inherit distutils-r1 pypi
DESCRIPTION="Context managers by jaraco"
HOMEPAGE="
https://github.com/jaraco/jaraco.context/
https://pypi.org/project/jaraco.context/
"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
distutils_enable_tests pytest
src_configure() {
grep -q 'build-backend = "setuptools' pyproject.toml ||
die "Upstream changed build-backend, recheck"
# write a custom pyproject.toml to ease setuptools bootstrap
cat > pyproject.toml <<-EOF || die
[build-system]
requires = ["flit_core >=3.2,<4"]
build-backend = "flit_core.buildapi"
[project]
name = "jaraco.context"
version = "${PV}"
description = "Context managers by jaraco"
EOF
}
python_install() {
distutils-r1_python_install
# rename to workaround a bug in pkg_resources
# https://bugs.gentoo.org/834522
mv "${D}$(python_get_sitedir)"/jaraco{_,.}context-${PV}.dist-info || die
}

View File

@ -0,0 +1,58 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
EAPI=8
DISTUTILS_USE_PEP517=flit
PYPI_NO_NORMALIZE=1
PYPI_PN=${PN/-/.}
PYTHON_COMPAT=( python3_{10..12} pypy3 )
inherit distutils-r1 pypi
DESCRIPTION="Context managers by jaraco"
HOMEPAGE="
https://github.com/jaraco/jaraco.context/
https://pypi.org/project/jaraco.context/
"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~x86"
RDEPEND="
$(python_gen_cond_dep '
dev-python/backports-tarfile[${PYTHON_USEDEP}]
' 3.10 3.11)
"
BDEPEND="
test? (
dev-python/portend[${PYTHON_USEDEP}]
)
"
distutils_enable_tests pytest
src_configure() {
grep -q 'build-backend = "setuptools' pyproject.toml ||
die "Upstream changed build-backend, recheck"
# write a custom pyproject.toml to ease setuptools bootstrap
cat > pyproject.toml <<-EOF || die
[build-system]
requires = ["flit_core >=3.2,<4"]
build-backend = "flit_core.buildapi"
[project]
name = "jaraco.context"
version = "${PV}"
description = "Context managers by jaraco"
EOF
}
python_install() {
distutils-r1_python_install
# rename to workaround a bug in pkg_resources
# https://bugs.gentoo.org/834522
mv "${D}$(python_get_sitedir)"/jaraco{_,.}context-${PV}.dist-info || die
}

View File

@ -1,6 +1,4 @@
DIST lxml-4.9.3-patches-2.tar.xz 24288 BLAKE2B 47b7c486a1c1616c875111bd53b14d4211a1eee3f412985f4022e71b85b087abd71d36919fb025257f17de404329284898ddc639f85e8b15ade21778fa218d98 SHA512 713172b4c907db6479a0a803a842824825b212a9b645c1ca356f793658bd6c63113ea248278e7c46b512e22e3130696e9fc5127fea82a67372d920733fc160b0
DIST lxml-4.9.3.gh.tar.gz 958628 BLAKE2B ffdf3fe781a03815f7c026229d313721c93375ebafad9b4a20c5d8a380a631401e546d8701a94d8c49615fb6a71e84940d8ca0299b47a37c1c9596db36659113 SHA512 903bd4935c7708b459aee9befcf3f6e3e3aaa9adc122591ea923b6e3d8fd288f07cab3f5f0edb08e3bf9db80414324f0a1a8e5a5089f9cda82f6c50f5df59423
DIST lxml-4.9.4.gh.tar.gz 960009 BLAKE2B 7d31095dcf1f73c1026e7378e6adb19a053edc116b119ae415c3324134d3700822bf4611dc3cbf7c216d396e1404b143c8ebfdfb7e5a71b9ef6ec187898cc699 SHA512 528ef4ae057a7ee54d3193a042a6db500ada883d1d506829b6824d91ec979feb69ec79239420112eae0e08a437b2e5da8efc35feb5d04d119bfae2679e918d29
DIST lxml-5.0.0.gh.tar.gz 964278 BLAKE2B 9c3f026b03bd671545cb039632af9bf1e8b94b8f8d4a20d0e4110f2b2d63cf0a46f983d0fa8eb71867ba9ac8cd46c949714dc7486faf01ecedae858e39799031 SHA512 6562bb68ea677fd9726adff1940034e364be0626dd1c086971cf0b271ca5caf98c96a3c465b98ede76f72248a40cf190fdc4f54c04c7e9c93e6408fde63fbfd3
DIST lxml-5.0.1.gh.tar.gz 965422 BLAKE2B 4dfc17a0d3920a6785765f7bf5a35b578c8e62419ce6b5288a2899fcbf8b809a235a9b3b23abbcfa84ba5fcabb9ce7a838ff02f3f74e4ae5cb60850b951e3c23 SHA512 09ed4d9fd1396a0fbc2d7b14119545817497a85e632fde6239f6e66921926476e468a9ced227b6575519a2d1a5d03c858319386a5d739ff7aa3f68282d027b63
DIST lxml-5.1.0.gh.tar.gz 962111 BLAKE2B 31c82eb198911d82fd9f7882bf94547b2367f3b3d1183eb8e8f97297b96faa69230d27b3367160b1f732a5d0878296b2d11787c3b220416c81a920e62ebec4f2 SHA512 1fadfeac1fb8b1e4fb1f7f2acb056865eb2567300a6c728eaede380d846ac75a6e33ebebcbbc6d60f54102152afd5dddf970058c4e27af396e9fa58e83c407a7
DIST lxml-5.1.1.gh.tar.gz 963649 BLAKE2B 0cb7b4e39539ee962cd590b2b2dc644a111a094da9cbccc2ee0c29b9a758d8aca967f989693c76532252909dc44a96a3815273f04f28be2dbeb57d4daae2e6fd SHA512 bb479ca7dcce944a9a3597f67da1b12fb9f3a05592fb8342fe01bc569a86df95c32c7bf1bc0b9cfc0ddffb85adf12612fb2d8622a460357c1aaa56e033476375
DIST lxml-5.2.0.gh.tar.gz 949400 BLAKE2B 4a1640e1da27504e6a9b5e1c55fa2d51eb2e27f6400b63dae29aa42c6c9bf9a002374d0c4ec3ccd13452efd4f39f0a28dc5989fe7f1da5c80e17b2fb31a0dcae SHA512 5d4faab6430666427a7540b768a81beb5c628e7801a06156a68a03a5f75e424e61b1dfd792b8909e03e8561ffb0be64f62c86a411c110c01a021f4cbf37593f2
DIST lxml-5.2.1.gh.tar.gz 950408 BLAKE2B d0ad369f9d555a9bcdd92c71fb84063eba864c359d1ff27159c8f6de433bcce6915c9cff31aa7bd99de9aa54cb9a1d7ea7b3bb2526c755f8a38aaa21d9d30dfd SHA512 bd5ab005d617da588f87fa643245916e6963394b167f66991dce6443490692fcbf27620c2208b271bd8a1a97c79b09eedca2d1c6f02ba990a7d88d00ee43edfe

View File

@ -0,0 +1,162 @@
diff --git a/src/lxml/tests/test_http_io.py b/src/lxml/tests/test_http_io.py
index 8385e393..0b259299 100644
--- a/src/lxml/tests/test_http_io.py
+++ b/src/lxml/tests/test_http_io.py
@@ -10,3 +10,3 @@ import gzip
-from .common_imports import etree, HelperTestCase, BytesIO, _bytes
+from .common_imports import etree, HelperTestCase, BytesIO, _bytes, IS_PYPY
from .dummy_http_server import webserver, HTTPRequestCollector
@@ -14,2 +14,3 @@ from .dummy_http_server import webserver, HTTPRequestCollector
+@unittest.skipIf(IS_PYPY, "broken on pypy")
class HttpIOTestCase(HelperTestCase):
diff --git a/src/lxml/tests/test_nsclasses.py b/src/lxml/tests/test_nsclasses.py
index 750dc1ed..adbec11c 100644
--- a/src/lxml/tests/test_nsclasses.py
+++ b/src/lxml/tests/test_nsclasses.py
@@ -8,3 +8,3 @@ import unittest
-from .common_imports import etree, HelperTestCase, _bytes, make_doctest
+from .common_imports import etree, HelperTestCase, _bytes, make_doctest, IS_PYPY
@@ -45,2 +45,3 @@ class ETreeNamespaceClassesTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_ns_classes(self):
diff --git a/src/lxml/tests/test_objectify.py b/src/lxml/tests/test_objectify.py
index 1c8ff47c..326c5316 100644
--- a/src/lxml/tests/test_objectify.py
+++ b/src/lxml/tests/test_objectify.py
@@ -10,3 +10,4 @@ import unittest
from .common_imports import (
- etree, HelperTestCase, fileInTestDir, doctest, make_doctest, _bytes, _str, BytesIO
+ etree, HelperTestCase, fileInTestDir, doctest, make_doctest, _bytes, _str, BytesIO,
+ IS_PYPY
)
@@ -383,2 +384,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_setattr(self):
@@ -818,2 +820,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_build_tree(self):
@@ -847,2 +850,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_bool(self):
@@ -884,2 +888,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_str(self):
@@ -891,2 +896,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_str_intliteral(self):
@@ -898,2 +904,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_str_floatliteral(self):
@@ -905,2 +912,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_str_mul(self):
@@ -917,2 +925,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_str_add(self):
@@ -992,2 +1001,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_ustr(self):
@@ -999,2 +1009,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_ustr_intliteral(self):
@@ -1006,2 +1017,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_ustr_floatliteral(self):
@@ -1013,2 +1025,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_ustr_mul(self):
@@ -1025,2 +1038,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_ustr_add(self):
@@ -1050,2 +1064,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_int(self):
@@ -1066,2 +1081,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_float(self):
@@ -1082,2 +1098,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_float_precision(self):
@@ -1101,2 +1118,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_float_precision_consistency(self):
@@ -1187,2 +1205,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_unregistered(self):
@@ -1349,2 +1368,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_str_cmp(self):
@@ -1376,2 +1396,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_int_cmp(self):
@@ -1398,2 +1419,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_type_bool_cmp(self):
@@ -2067,2 +2089,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_registered_type_stringify(self):
@@ -2537,2 +2560,3 @@ class ObjectifyTestCase(HelperTestCase):
# type-looked-up as ObjectifiedElement (no annotations)
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_efactory_int(self):
@@ -2542,2 +2566,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_efactory_float(self):
@@ -2547,2 +2572,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_efactory_str(self):
@@ -2552,2 +2578,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_efactory_unicode(self):
@@ -2557,2 +2584,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_efactory_bool(self):
@@ -2562,2 +2590,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_efactory_none(self):
@@ -2567,2 +2596,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_efactory_value_concatenation(self):
@@ -2577,2 +2607,3 @@ class ObjectifyTestCase(HelperTestCase):
+ @unittest.skipIf(IS_PYPY, "broken on pypy")
def test_efactory_nested(self):
@@ -2745,3 +2776,4 @@ def test_suite():
suite.addTests(doctest.DocTestSuite(objectify))
- suite.addTests([make_doctest('../../../doc/objectify.txt')])
+ if not IS_PYPY:
+ suite.addTests([make_doctest('../../../doc/objectify.txt')])
return suite

View File

@ -1,118 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..12} pypy3 )
inherit distutils-r1 optfeature toolchain-funcs
DESCRIPTION="A Pythonic binding for the libxml2 and libxslt libraries"
HOMEPAGE="
https://lxml.de/
https://pypi.org/project/lxml/
https://github.com/lxml/lxml/
"
SRC_URI="
https://github.com/lxml/lxml/archive/${P}.tar.gz
-> ${P}.gh.tar.gz
https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-4.9.3-patches-2.tar.xz
"
S=${WORKDIR}/lxml-${P}
LICENSE="BSD ElementTree GPL-2 PSF-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="doc examples +threads test"
RESTRICT="!test? ( test )"
# Note: lib{xml2,xslt} are used as C libraries, not Python modules.
DEPEND="
>=dev-libs/libxml2-2.10.3
>=dev-libs/libxslt-1.1.38
"
RDEPEND="
${DEPEND}
"
BDEPEND="
virtual/pkgconfig
>=dev-python/cython-0.29.35[${PYTHON_USEDEP}]
doc? (
$(python_gen_any_dep '
dev-python/docutils[${PYTHON_USEDEP}]
dev-python/pygments[${PYTHON_USEDEP}]
dev-python/sphinx[${PYTHON_USEDEP}]
dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]
')
)
test? (
dev-python/cssselect[${PYTHON_USEDEP}]
)
"
PATCHES=(
"${WORKDIR}"/${PN}-4.9.3-patches-2
)
python_check_deps() {
use doc || return 0
python_has_version -b "dev-python/docutils[${PYTHON_USEDEP}]" &&
python_has_version -b "dev-python/pygments[${PYTHON_USEDEP}]" &&
python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" &&
python_has_version -b "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]"
}
python_prepare_all() {
# avoid replacing PYTHONPATH in tests.
sed -i -e '/sys\.path/d' test.py || die
# don't use some random SDK on Darwin
sed -i -e '/_ldflags =/s/=.*isysroot.*darwin.*None/= None/' \
setupinfo.py || die
distutils-r1_python_prepare_all
}
python_compile() {
local DISTUTILS_ARGS=(
# by default it adds -w to CFLAGS
--warnings
)
tc-export PKG_CONFIG
distutils-r1_python_compile
}
python_compile_all() {
use doc && emake html
}
python_test() {
local dir=${BUILD_DIR}/test$(python_get_sitedir)/lxml
local -x PATH=${BUILD_DIR}/test/usr/bin:${PATH}
cp -al "${BUILD_DIR}"/{install,test} || die
cp -al src/lxml/tests "${dir}/" || die
cp -al src/lxml/html/tests "${dir}/html/" || die
ln -rs "${S}"/doc "${dir}"/../../ || die
"${EPYTHON}" test.py -vv --all-levels -p || die "Test ${test} fails with ${EPYTHON}"
}
python_install_all() {
if use doc; then
local DOCS=( README.rst *.txt doc/*.txt )
local HTML_DOCS=( doc/html/. )
fi
if use examples; then
dodoc -r samples
fi
distutils-r1_python_install_all
}
pkg_postinst() {
optfeature "Support for BeautifulSoup as a parser backend" dev-python/beautifulsoup4
optfeature "Translates CSS selectors to XPath 1.0 expressions" dev-python/cssselect
}

View File

@ -23,7 +23,7 @@ S=${WORKDIR}/lxml-${P}
LICENSE="BSD ElementTree GPL-2 PSF-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="doc examples +threads test"
RESTRICT="!test? ( test )"

View File

@ -18,7 +18,6 @@ HOMEPAGE="
SRC_URI="
https://github.com/lxml/lxml/archive/${P}.tar.gz
-> ${P}.gh.tar.gz
https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-4.9.3-patches-2.tar.xz
"
S=${WORKDIR}/lxml-${P}
@ -38,7 +37,7 @@ RDEPEND="
"
BDEPEND="
virtual/pkgconfig
>=dev-python/cython-3.0.7[${PYTHON_USEDEP}]
>=dev-python/cython-3.0.9[${PYTHON_USEDEP}]
doc? (
$(python_gen_any_dep '
dev-python/docutils[${PYTHON_USEDEP}]
@ -53,7 +52,7 @@ BDEPEND="
"
PATCHES=(
"${WORKDIR}"/${PN}-4.9.3-patches-2/0001-Skip-tests-failing-on-PyPy.patch
"${FILESDIR}/${PN}-5.1.1-pypy.patch"
)
python_check_deps() {

View File

@ -18,13 +18,12 @@ HOMEPAGE="
SRC_URI="
https://github.com/lxml/lxml/archive/${P}.tar.gz
-> ${P}.gh.tar.gz
https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-4.9.3-patches-2.tar.xz
"
S=${WORKDIR}/lxml-${P}
LICENSE="BSD ElementTree GPL-2 PSF-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="doc examples +threads test"
RESTRICT="!test? ( test )"
@ -38,7 +37,7 @@ RDEPEND="
"
BDEPEND="
virtual/pkgconfig
>=dev-python/cython-0.29.35[${PYTHON_USEDEP}]
>=dev-python/cython-3.0.10[${PYTHON_USEDEP}]
doc? (
$(python_gen_any_dep '
dev-python/docutils[${PYTHON_USEDEP}]
@ -53,7 +52,7 @@ BDEPEND="
"
PATCHES=(
"${WORKDIR}"/${PN}-4.9.3-patches-2
"${FILESDIR}/${PN}-5.1.1-pypy.patch"
)
python_check_deps() {
@ -72,6 +71,9 @@ python_prepare_all() {
sed -i -e '/_ldflags =/s/=.*isysroot.*darwin.*None/= None/' \
setupinfo.py || die
# don't depend on sys-apps/which
sed -i -e 's:which:command -v:' Makefile || die
distutils-r1_python_prepare_all
}
@ -97,7 +99,15 @@ python_test() {
cp -al src/lxml/html/tests "${dir}/html/" || die
ln -rs "${S}"/doc "${dir}"/../../ || die
"${EPYTHON}" test.py -vv --all-levels -p || die "Test ${test} fails with ${EPYTHON}"
# test_feedparser_data requires lxml_html_clean
# this is the *simplest* way of skipping these without breaking
# random other tests, sigh
sed -e '/lxml\.html\.clean/d' \
-i "${dir}"/html/tests/test_feedparser_data.py || die
rm -r "${dir}"/html/tests/*-data/*.data || die
"${EPYTHON}" test.py -vv --all-levels -p ||
die "Tests fail on ${EPYTHON}"
}
python_install_all() {

View File

@ -1,4 +1,4 @@
# Copyright 1999-2023 Gentoo Authors
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -18,7 +18,6 @@ HOMEPAGE="
SRC_URI="
https://github.com/lxml/lxml/archive/${P}.tar.gz
-> ${P}.gh.tar.gz
https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-4.9.3-patches-2.tar.xz
"
S=${WORKDIR}/lxml-${P}
@ -38,7 +37,7 @@ RDEPEND="
"
BDEPEND="
virtual/pkgconfig
>=dev-python/cython-3.0.7[${PYTHON_USEDEP}]
>=dev-python/cython-3.0.10[${PYTHON_USEDEP}]
doc? (
$(python_gen_any_dep '
dev-python/docutils[${PYTHON_USEDEP}]
@ -53,7 +52,7 @@ BDEPEND="
"
PATCHES=(
"${WORKDIR}"/${PN}-4.9.3-patches-2/0001-Skip-tests-failing-on-PyPy.patch
"${FILESDIR}/${PN}-5.1.1-pypy.patch"
)
python_check_deps() {
@ -97,7 +96,15 @@ python_test() {
cp -al src/lxml/html/tests "${dir}/html/" || die
ln -rs "${S}"/doc "${dir}"/../../ || die
"${EPYTHON}" test.py -vv --all-levels -p || die "Test ${test} fails with ${EPYTHON}"
# test_feedparser_data requires lxml_html_clean
# this is the *simplest* way of skipping these without breaking
# random other tests, sigh
sed -e '/lxml\.html\.clean/d' \
-i "${dir}"/html/tests/test_feedparser_data.py || die
rm -r "${dir}"/html/tests/*-data/*.data || die
"${EPYTHON}" test.py -vv --all-levels -p ||
die "Tests fail on ${EPYTHON}"
}
python_install_all() {

View File

@ -1 +0,0 @@
DIST nspektr-0.5.0.tar.gz 8573 BLAKE2B a96aaaee5cd309272d5b0c78eaf9793baf1406e427a142595b67693d513d5badac064149587c02cdf02cdd7720fafeb2787fc98a9db79cc573e77d6158afd4d4 SHA512 b7293a6ccb34a5c4b87a9b28de170322296adf2d883e7671df05ac06453023190ed588eb8e1677b7c5383b6fc5962c079d363ebb214ebb9f8516cfd2039e6167

View File

@ -1,12 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>python@gentoo.org</email>
</maintainer>
<stabilize-allarches/>
<upstream>
<remote-id type="github">jaraco/nspektr</remote-id>
<remote-id type="pypi">nspektr</remote-id>
</upstream>
</pkgmetadata>

View File

@ -1,54 +0,0 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# please keep this ebuild at EAPI 7 -- sys-apps/portage dep
EAPI=7
DISTUTILS_USE_PEP517=flit
PYTHON_COMPAT=( pypy3 python3_{10..12} )
inherit distutils-r1 pypi
DESCRIPTION="Distribution package dependency inspector"
HOMEPAGE="
https://github.com/jaraco/nspektr/
https://pypi.org/project/nspektr/
"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
RDEPEND="
>=dev-python/jaraco-context-4.1.1-r2[${PYTHON_USEDEP}]
>=dev-python/jaraco-functools-3.5.0-r2[${PYTHON_USEDEP}]
>=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}]
>=dev-python/packaging-21.3-r2[${PYTHON_USEDEP}]
"
distutils_enable_tests pytest
src_configure() {
grep -q 'build-backend = "setuptools' pyproject.toml ||
die "Upstream changed build-backend, recheck"
# write a custom pyproject.toml to ease setuptools bootstrap
cat > pyproject.toml <<-EOF || die
[build-system]
requires = ["flit_core >=3.2,<4"]
build-backend = "flit_core.buildapi"
[project]
name = "nspektr"
version = "${PV}"
description = "package inspector"
# tests inspect itself
[project.optional-dependencies]
docs = [
"fake-nonexisting",
]
testing = [
"pytest",
]
EOF
}

View File

@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="|| ( Apache-2.0 BSD-2 )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
RDEPEND="
!<dev-python/setuptools-67

View File

@ -1,4 +1,2 @@
DIST setuptools-69.0.3.tar.gz 2219609 BLAKE2B 1a5e7896c7ea82d51b0aa4794435b9899cef871f6ae43d22ae5e08c57d87b70641f3f2abfcc29956a3de515f90b112fd61d3daf793474b4cf33f8567e3a38f4a SHA512 11df934931f4b73f7e07ea5713479593c6baa134d423556b2ae7aff0f1e5bdbdee1f5b516131adb169c838231ceb0293441fbf275ef7030dabecf74122565b6d
DIST setuptools-69.1.0.tar.gz 2219972 BLAKE2B 82ba9df6e6234bcf234f6b6659704b208912d05749bd6f34ce456bd356bc65b8ee17f534dc8baaac71b331089d8ca8798101e0c2c91f3bd24e18d406db7ff0e5 SHA512 345aa208a446561e7a038cb5021eb6948940f95dde1291c0b1aa037098fcbe782dbc3f0db4bec17f18eca51f236365ddb396bb7441e01e2d2caa2a600360b756
DIST setuptools-69.1.1.tar.gz 2219821 BLAKE2B 730ead1ef7040213fa6dcdfd3eb5324fd93e15db15b2289f3a7e056500d09268719073b7ae192e5f1c7234afa4347e76eac2cff57bce3076ab08ff1957a51631 SHA512 ddd1e94afa8869bcc521494cd66d9a23ba2b9674ff0a7f7f8609ea2bc61137d8f0b6891708eb7c7308e9ac366edfb66bd4439c73a4ba098ae743ca82b45f12ff
DIST setuptools-69.2.0.tar.gz 2222950 BLAKE2B 9f2bfee2bc6ca05c319137166d8b7a4fc8352652e7b29385e5dd8e692c2ea17e46b06c9c1ba78d8bb128682e57248e41900fa73bf4c4f323929d170d306e1d38 SHA512 e69abe573304b1c2c074144c9df663fec0d6ce617359f070ca8d57710e4beb99435d0d2124d45a7d8b24889693597e1e03875bc6ff960fa31f6250e1c253b906

View File

@ -28,7 +28,6 @@ RESTRICT="!test? ( test )"
RDEPEND="
>=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}]
>=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}]
>=dev-python/nspektr-0.3.0[${PYTHON_USEDEP}]
>=dev-python/ordered-set-4.0.2-r1[${PYTHON_USEDEP}]
>=dev-python/packaging-21.3-r2[${PYTHON_USEDEP}]
>=dev-python/platformdirs-2.6.2-r1[${PYTHON_USEDEP}]

View File

@ -1,123 +0,0 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
EAPI=8
# please bump dev-python/ensurepip-setuptools along with this package!
DISTUTILS_USE_PEP517=standalone
PYTHON_TESTED=( python3_{10..12} pypy3 )
PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
PYTHON_REQ_USE="xml(+)"
inherit distutils-r1 pypi
DESCRIPTION="Collection of extensions to Distutils"
HOMEPAGE="
https://github.com/pypa/setuptools/
https://pypi.org/project/setuptools/
"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}]
>=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}]
>=dev-python/nspektr-0.3.0[${PYTHON_USEDEP}]
>=dev-python/ordered-set-4.0.2-r1[${PYTHON_USEDEP}]
>=dev-python/packaging-21.3-r2[${PYTHON_USEDEP}]
>=dev-python/platformdirs-2.6.2-r1[${PYTHON_USEDEP}]
>=dev-python/tomli-2.0.1[${PYTHON_USEDEP}]
>=dev-python/wheel-0.37.1-r1[${PYTHON_USEDEP}]
"
BDEPEND="
${RDEPEND}
test? (
$(python_gen_cond_dep '
dev-python/build[${PYTHON_USEDEP}]
>=dev-python/ini2toml-0.9[${PYTHON_USEDEP}]
>=dev-python/filelock-3.4.0[${PYTHON_USEDEP}]
>=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}]
>=dev-python/jaraco-path-3.2.0[${PYTHON_USEDEP}]
dev-python/pip[${PYTHON_USEDEP}]
dev-python/pip-run[${PYTHON_USEDEP}]
dev-python/pytest[${PYTHON_USEDEP}]
>=dev-python/pytest-home-0.5[${PYTHON_USEDEP}]
dev-python/pytest-timeout[${PYTHON_USEDEP}]
dev-python/pytest-xdist[${PYTHON_USEDEP}]
>=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}]
>=dev-python/virtualenv-20[${PYTHON_USEDEP}]
' "${PYTHON_TESTED[@]}")
)
"
# setuptools-scm is here because installing plugins apparently breaks stuff at
# runtime, so let's pull it early. See bug #663324.
PDEPEND="
dev-python/setuptools-scm[${PYTHON_USEDEP}]
"
src_prepare() {
local PATCHES=(
# TODO: remove this when we're 100% PEP517 mode
"${FILESDIR}"/setuptools-62.4.0-py-compile.patch
)
distutils-r1_src_prepare
# remove bundled dependencies
rm -r */_vendor || die
# remove the ugly */extern hack that breaks on unvendored deps
rm -r */extern || die
find -name '*.py' -exec sed \
-e 's:from \w*[.]\+extern ::' -e 's:\w*[.]\+extern[.]::' \
-i {} + || die
}
python_test() {
if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
return
fi
local EPYTEST_DESELECT=(
# network
# TODO: see if PRE_BUILT_SETUPTOOLS_* helps
setuptools/tests/config/test_apply_pyprojecttoml.py::test_apply_pyproject_equivalent_to_setupcfg
setuptools/tests/integration/test_pip_install_sdist.py::test_install_sdist
setuptools/tests/test_build_meta.py::test_legacy_editable_install
setuptools/tests/test_distutils_adoption.py
setuptools/tests/test_editable_install.py
setuptools/tests/test_setuptools.py::test_its_own_wheel_does_not_contain_tests
setuptools/tests/test_virtualenv.py::test_clean_env_install
setuptools/tests/test_virtualenv.py::test_no_missing_dependencies
setuptools/tests/test_virtualenv.py::test_test_command_install_requirements
# TODO
setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic
setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors
setuptools/tests/test_extern.py::test_distribution_picklable
# expects bundled deps in virtualenv
setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist
setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel
# fails if python-xlib is installed
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts
# TODO, probably some random package
setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass
)
case ${EPYTHON} in
python3.12)
EPYTEST_DESELECT+=(
# TODO
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_distutils_command_dep
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_transitive_extra_dependency
)
esac
local EPYTEST_XDIST=1
epytest -o tmp_path_retention_policy=all setuptools
}

View File

@ -1,125 +0,0 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
EAPI=8
# please bump dev-python/ensurepip-setuptools along with this package!
DISTUTILS_USE_PEP517=standalone
PYTHON_TESTED=( python3_{10..12} pypy3 )
PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
PYTHON_REQ_USE="xml(+)"
inherit distutils-r1 pypi
DESCRIPTION="Collection of extensions to Distutils"
HOMEPAGE="
https://github.com/pypa/setuptools/
https://pypi.org/project/setuptools/
"
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~s390 x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}]
>=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}]
>=dev-python/nspektr-0.3.0[${PYTHON_USEDEP}]
>=dev-python/ordered-set-4.0.2-r1[${PYTHON_USEDEP}]
>=dev-python/packaging-23.2[${PYTHON_USEDEP}]
>=dev-python/platformdirs-2.6.2-r1[${PYTHON_USEDEP}]
>=dev-python/tomli-2.0.1[${PYTHON_USEDEP}]
>=dev-python/wheel-0.37.1-r1[${PYTHON_USEDEP}]
"
BDEPEND="
${RDEPEND}
test? (
$(python_gen_cond_dep '
dev-python/build[${PYTHON_USEDEP}]
>=dev-python/ini2toml-0.9[${PYTHON_USEDEP}]
>=dev-python/filelock-3.4.0[${PYTHON_USEDEP}]
>=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}]
>=dev-python/jaraco-path-3.2.0[${PYTHON_USEDEP}]
dev-python/pip[${PYTHON_USEDEP}]
dev-python/pip-run[${PYTHON_USEDEP}]
dev-python/pytest[${PYTHON_USEDEP}]
>=dev-python/pytest-home-0.5[${PYTHON_USEDEP}]
dev-python/pytest-timeout[${PYTHON_USEDEP}]
dev-python/pytest-xdist[${PYTHON_USEDEP}]
>=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}]
>=dev-python/virtualenv-20[${PYTHON_USEDEP}]
' "${PYTHON_TESTED[@]}")
)
"
# setuptools-scm is here because installing plugins apparently breaks stuff at
# runtime, so let's pull it early. See bug #663324.
PDEPEND="
dev-python/setuptools-scm[${PYTHON_USEDEP}]
"
src_prepare() {
local PATCHES=(
# TODO: remove this when we're 100% PEP517 mode
"${FILESDIR}"/setuptools-62.4.0-py-compile.patch
)
distutils-r1_src_prepare
# remove bundled dependencies
rm -r */_vendor || die
# remove the ugly */extern hack that breaks on unvendored deps
rm -r */extern || die
find -name '*.py' -exec sed \
-e 's:from \w*[.]\+extern ::' -e 's:\w*[.]\+extern[.]::' \
-i {} + || die
}
python_test() {
if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
return
fi
local EPYTEST_DESELECT=(
# network
# TODO: see if PRE_BUILT_SETUPTOOLS_* helps
setuptools/tests/config/test_apply_pyprojecttoml.py::test_apply_pyproject_equivalent_to_setupcfg
setuptools/tests/integration/test_pip_install_sdist.py::test_install_sdist
setuptools/tests/test_build_meta.py::test_legacy_editable_install
setuptools/tests/test_distutils_adoption.py
setuptools/tests/test_editable_install.py
setuptools/tests/test_setuptools.py::test_its_own_wheel_does_not_contain_tests
setuptools/tests/test_virtualenv.py::test_clean_env_install
setuptools/tests/test_virtualenv.py::test_no_missing_dependencies
setuptools/tests/test_virtualenv.py::test_test_command_install_requirements
# TODO
setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic
setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors
setuptools/tests/test_extern.py::test_distribution_picklable
# expects bundled deps in virtualenv
setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist
setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel
# fails if python-xlib is installed
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts
# TODO, probably some random package
setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass
# Internet, sigh
setuptools/tests/test_integration.py
)
case ${EPYTHON} in
python3.12)
EPYTEST_DESELECT+=(
# TODO
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_distutils_command_dep
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_transitive_extra_dependency
)
esac
local EPYTEST_XDIST=1
epytest -o tmp_path_retention_policy=all setuptools
}

View File

@ -21,14 +21,13 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~x86"
KEYWORDS="amd64 arm arm64 hppa ~ia64 ~m68k ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}]
>=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}]
>=dev-python/nspektr-0.3.0[${PYTHON_USEDEP}]
>=dev-python/ordered-set-4.0.2-r1[${PYTHON_USEDEP}]
>=dev-python/packaging-23.2[${PYTHON_USEDEP}]
>=dev-python/platformdirs-2.6.2-r1[${PYTHON_USEDEP}]

View File

@ -1 +1 @@
DIST trove-classifiers-2024.3.3.tar.gz 15982 BLAKE2B 7cfa726b25bfa1714d022e8bbdbb2b02a0c4d8395d3bd1d0abeb85706889b10bf990f18329cd588de8523a961710cf23219bdc5c8a1480f7ebbaeea4dca786ff SHA512 be034c60cbc9d3a684cea33d30e8387994e90bbb9e20e57533ed18cb3ccbd5f51a251d97dca5db09b006228bc1a919cc4543ddc83dd341d94e4b800a72cb3623
DIST trove-classifiers-2024.3.25.tar.gz 16040 BLAKE2B 001a307d041e76213f3d2d115a10467b8434afecb0dc268ed9a1943aa7961c9021b49794a593102372c41b6776f3e513db44f680dda700c9897f65ef593ec860 SHA512 3b1d0c08d9a90bfe2314b092270677397d5150f0b641dfaf6ffda7a3447b898ea2c1d2dceab0f61ddceeb6b42945aec19e7a1028bf72ac3a119454f66945db7c

View File

@ -1 +1,2 @@
DIST typing_extensions-4.10.0.tar.gz 77558 BLAKE2B eddcee7d33437d10d599a7f0e03932525945bc57be5bc62ffa27417458f0fcb96c4fdddb3749f9a6db4615dee88221338cdb2de775db8b503ba3586b9fcf6b6f SHA512 d3d840719ed0cf1435a959f84a65df93f55fb4bfdda926cd74a34a8bb6ab0407108ee8941f40b6cb570e2f7c440abffb0bc1d0f0414814047de6e9c3eeb24093
DIST typing_extensions-4.11.0.tar.gz 78744 BLAKE2B 641d4a13fcd10151a0b7059d11393c78974883710a860805dc132a148677c80a0be06dc32f66cffc4ae2dd838c607bdaa8d3f44e4e3cf55848d2a315bd74ce5a SHA512 d795fadbe9c0a24c4d3190f375d72576f5b42a14dc3a999127c1356f2ae77d4bffdc04a23b7a05331cc8b703a81f504328aaf5d6c1247ea24cbeed25dccb0a37

View File

@ -0,0 +1,26 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=flit
PYTHON_COMPAT=( python3_{10..12} pypy3 )
inherit distutils-r1 pypi
DESCRIPTION="Backported and Experimental Type Hints for Python 3.7+"
HOMEPAGE="
https://pypi.org/project/typing-extensions/
https://github.com/python/typing_extensions/
"
LICENSE="PSF-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
distutils_enable_tests unittest
python_test() {
cd src || die
eunittest
}

View File

@ -1,2 +1 @@
DIST wheel-0.42.0.tar.gz 98667 BLAKE2B 201f8246dc55c62bb700e706d7734e76689b13a3036aeeca7531f483c7f354ccc5ca7452106038425ba300e74f1041f7408f6749d03e39aca289398598833014 SHA512 4816261c0f6d8971a80665f66868ec9cb082f2189b6e31e083a0d3a6080e159f06a4152f44eda1147a2b907b5aead0f63bbac725aacb56bb8be13fc77da2b79c
DIST wheel-0.43.0.tar.gz 99109 BLAKE2B 49e77ba84fb0a9b3bd177d994b9b33f8e5fa2bb8528fe1216fd55e6d749e201ac9a76ff24c8178485bff94d0f7840d42e0aa8f940fc3fe7d91c41411fa1cd907 SHA512 b6213c05263026884c07bdc4d529252f0be013c3fc6d0558008b7130ba90d4ef11e57f155f62f5e2528ddcd78d188530b2b7c78acc15b8168f64935fe6e6393b

View File

@ -1,40 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
EAPI=8
DISTUTILS_USE_PEP517=flit
PYTHON_COMPAT=( python3_{10..12} pypy3 )
inherit distutils-r1 pypi
DESCRIPTION="A built-package format for Python"
HOMEPAGE="
https://github.com/pypa/wheel/
https://pypi.org/project/wheel/
"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
RDEPEND="
dev-python/packaging[${PYTHON_USEDEP}]
"
BDEPEND="
test? (
dev-python/setuptools[${PYTHON_USEDEP}]
)
"
distutils_enable_tests pytest
src_prepare() {
# unbundle packaging
rm -r src/wheel/vendored || die
sed -i -e 's:\.vendored\.::' src/wheel/*.py || die
sed -i -e 's:wheel\.vendored\.::' tests/*.py || die
distutils-r1_src_prepare
}

View File

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

View File

@ -15,7 +15,7 @@ HOMEPAGE="https://www.gtk.org/"
LICENSE="LGPL-2+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
RDEPEND="
${PYTHON_DEPS}

View File

@ -14,7 +14,7 @@ LICENSE="LGPL-2.1+"
SLOT="0" # /usr/bin utilities that can't be parallel installed by their nature
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
RDEPEND="${PYTHON_DEPS}"
DEPEND="${RDEPEND}"

View File

@ -1,4 +1,4 @@
# Copyright 1999-2023 Gentoo Authors
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -9,7 +9,7 @@ DESCRIPTION="Small utility to modify the dynamic linker and RPATH of ELF executa
HOMEPAGE="https://github.com/NixOS/patchelf"
SRC_URI="https://github.com/NixOS/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 x86 ~amd64-linux ~riscv-linux ~x86-linux"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 x86 ~amd64-linux ~riscv-linux ~x86-linux"
LICENSE="GPL-3"
PATCHES=(

View File

@ -1,2 +1,3 @@
DIST pkgconf-1.8.1.tar.xz 302372 BLAKE2B 591961f0b1fd185834fd8e2a672199cffc035139599817b1d56d571300d2aa800a719c9477aac4023dfade597ad3cc3b45360babe57498977568ee57077c7bbe SHA512 7a7d5204c1c9bfb6578bda56f299d1fa0300e69a133a65730b10ad77aefbf26fceb74ae77cecda326b3ed5db5736f27fcce94764b3a56d40f4bb99fecdc80bba
DIST pkgconf-2.1.1.tar.xz 311956 BLAKE2B b59e57b1118bb75bc946a1e65e037a172c2ade3a7b9da8404b3598833cd091600045de151f2db06453b23563501b2dff7fdda8967e14c0c933ac50d28ddb3cd0 SHA512 cdf0998cd87f6d5e5a6560037eb847fd9613d237858d26eec321c42f54ca40ac72b6749c48c5b32611841d701393b1217bdb6c0cba5efd2c138be10d0e8fb32d
DIST pkgconf-2.2.0.tar.xz 311920 BLAKE2B c2a89e932e7671785799f4b82beb75e92f246c152c03e88c847cedef39f2123da0544ff914d1c1512b8616f8b8cfd9f5115b33560042bcfa7ac5f78c0ceb2a27 SHA512 c4ff254c7323bdebc2595037df60e33f17fc5c222d7500a4b9d8b18c8b451ac35cd3ac90d31c920c23e9495ece2b82422de61e13286d43de3a5d1fe8211bd944

View File

@ -0,0 +1,73 @@
# Copyright 2012-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit multilib multilib-minimal
if [[ ${PV} == 9999 ]] ; then
inherit autotools git-r3
EGIT_REPO_URI="https://gitea.treehouse.systems/ariadne/pkgconf.git"
else
SRC_URI="https://distfiles.ariadne.space/${PN}/${P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
DESCRIPTION="pkg-config compatible replacement with no dependencies other than C99"
HOMEPAGE="https://gitea.treehouse.systems/ariadne/pkgconf"
LICENSE="ISC"
SLOT="0/5"
IUSE="+native-symlinks test"
RESTRICT="!test? ( test )"
BDEPEND="
test? (
dev-libs/atf
dev-util/kyua
)
"
RDEPEND="!dev-util/pkgconfig"
src_prepare() {
default
[[ ${PV} == 9999 ]] && eautoreconf
MULTILIB_CHOST_TOOLS=(
/usr/bin/pkgconf$(get_exeext)
/usr/bin/pkg-config$(get_exeext)
)
}
multilib_src_configure() {
local myeconfargs=(
--with-system-includedir="${EPREFIX}/usr/include"
--with-system-libdir="${EPREFIX}/$(get_libdir):${EPREFIX}/usr/$(get_libdir)"
)
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
}
multilib_src_test() {
unset PKG_CONFIG_LIBDIR PKG_CONFIG_PATH
default
}
multilib_src_install() {
default
dosym pkgconf$(get_exeext) /usr/bin/pkg-config$(get_exeext)
dosym pkgconf.1 /usr/share/man/man1/pkg-config.1
}
multilib_src_install_all() {
einstalldocs
if ! use native-symlinks; then
rm "${ED}"/usr/bin/{pkgconf,pkg-config}$(get_exeext) || die
fi
find "${ED}" -type f -name '*.la' -delete || die
}

View File

@ -50,7 +50,7 @@ if [[ ${PV} != *9999 ]]; then
SRC_URI+=" doc? ( ${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} )"
if [[ ${PV} != *_rc* ]] ; then
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~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

@ -124,8 +124,6 @@ esac
#
# - pbr - pbr backend
#
# - pdm - pdm.pep517 backend
#
# - pdm-backend - pdm.backend backend
#
# - poetry - poetry-core backend
@ -230,7 +228,7 @@ _distutils_set_globals() {
;;
hatchling)
bdep+='
>=dev-python/hatchling-1.17.0[${PYTHON_USEDEP}]
>=dev-python/hatchling-1.21.1[${PYTHON_USEDEP}]
'
;;
jupyter)
@ -240,7 +238,7 @@ _distutils_set_globals() {
;;
maturin)
bdep+='
>=dev-util/maturin-1.0.1[${PYTHON_USEDEP}]
>=dev-util/maturin-1.4.0[${PYTHON_USEDEP}]
'
;;
no)
@ -249,42 +247,37 @@ _distutils_set_globals() {
;;
meson-python)
bdep+='
>=dev-python/meson-python-0.13.1[${PYTHON_USEDEP}]
>=dev-python/meson-python-0.15.0[${PYTHON_USEDEP}]
'
;;
pbr)
bdep+='
>=dev-python/pbr-5.11.1[${PYTHON_USEDEP}]
'
;;
pdm)
bdep+='
>=dev-python/pdm-pep517-1.1.4[${PYTHON_USEDEP}]
>=dev-python/pbr-6.0.0[${PYTHON_USEDEP}]
'
;;
pdm-backend)
bdep+='
>=dev-python/pdm-backend-2.1.0[${PYTHON_USEDEP}]
>=dev-python/pdm-backend-2.1.8[${PYTHON_USEDEP}]
'
;;
poetry)
bdep+='
>=dev-python/poetry-core-1.6.1[${PYTHON_USEDEP}]
>=dev-python/poetry-core-1.9.0[${PYTHON_USEDEP}]
'
;;
scikit-build-core)
bdep+='
>=dev-python/scikit-build-core-0.4.6[${PYTHON_USEDEP}]
>=dev-python/scikit-build-core-0.8.2[${PYTHON_USEDEP}]
'
;;
setuptools)
bdep+='
>=dev-python/setuptools-67.8.0-r1[${PYTHON_USEDEP}]
>=dev-python/setuptools-69.0.3[${PYTHON_USEDEP}]
'
;;
sip)
bdep+='
>=dev-python/sip-6.7.9[${PYTHON_USEDEP}]
>=dev-python/sip-6.8.3[${PYTHON_USEDEP}]
'
;;
standalone)
@ -299,7 +292,7 @@ _distutils_set_globals() {
eqawarn "is enabled."
fi
else
local setuptools_dep='>=dev-python/setuptools-67.8.0-r1[${PYTHON_USEDEP}]'
local setuptools_dep='>=dev-python/setuptools-69.0.3[${PYTHON_USEDEP}]'
case ${DISTUTILS_USE_SETUPTOOLS:-bdepend} in
no|manual)
@ -508,7 +501,7 @@ distutils_enable_sphinx() {
_DISTUTILS_SPHINX_PLUGINS=( "${@}" )
local deps autodoc=1 d
deps=">=dev-python/sphinx-5.3.0[\${PYTHON_USEDEP}]"
deps=">=dev-python/sphinx-7.2.6[\${PYTHON_USEDEP}]"
for d; do
if [[ ${d} == --no-autodoc ]]; then
autodoc=
@ -532,7 +525,7 @@ distutils_enable_sphinx() {
use doc || return 0
local p
for p in ">=dev-python/sphinx-5.3.0" \
for p in ">=dev-python/sphinx-7.2.6" \
"${_DISTUTILS_SPHINX_PLUGINS[@]}"
do
python_has_version "${p}[${PYTHON_USEDEP}]" ||
@ -540,7 +533,7 @@ distutils_enable_sphinx() {
done
}
else
deps=">=dev-python/sphinx-5.3.0"
deps=">=dev-python/sphinx-7.2.6"
fi
sphinx_compile_all() {
@ -579,8 +572,6 @@ distutils_enable_sphinx() {
# with the specified test runner. Also copies the current value
# of RDEPEND to test?-BDEPEND. The test-runner argument must be one of:
#
# - nose: nosetests (dev-python/nose)
#
# - pytest: dev-python/pytest
#
# - setup.py: setup.py test (no deps included)
@ -615,29 +606,33 @@ distutils_enable_tests() {
[[ ${#} -eq 1 ]] || die "${FUNCNAME} takes exactly one argument: test-runner"
local test_deps=${RDEPEND}
local test_pkgs
case ${1} in
nose)
test_pkgs='>=dev-python/nose-1.3.7_p20221026[${PYTHON_USEDEP}]'
;;
pytest)
test_pkgs='>=dev-python/pytest-7.3.1[${PYTHON_USEDEP}]'
local test_pkgs='>=dev-python/pytest-7.4.4[${PYTHON_USEDEP}]'
if [[ -n ${EPYTEST_TIMEOUT} ]]; then
test_pkgs+=' dev-python/pytest-timeout[${PYTHON_USEDEP}]'
fi
if [[ ${EPYTEST_XDIST} ]]; then
test_pkgs+=' dev-python/pytest-xdist[${PYTHON_USEDEP}]'
fi
if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then
test_deps+=" ${test_pkgs//'${PYTHON_USEDEP}'/${PYTHON_USEDEP}}"
else
test_deps+=" $(python_gen_cond_dep "
${test_pkgs}
")"
fi
;;
setup.py)
;;
unittest)
# unittest-or-fail is needed in py<3.12
test_deps+="
$(python_gen_cond_dep '
local test_pkgs="$(python_gen_cond_dep '
dev-python/unittest-or-fail[${PYTHON_USEDEP}]
' 3.10 3.11)
"
' 3.10 3.11
)"
[[ -n ${test_pkgs} ]] && test_deps+=" ${test_pkgs}"
;;
*)
die "${FUNCNAME}: unsupported argument: ${1}"
@ -646,15 +641,6 @@ distutils_enable_tests() {
_DISTUTILS_TEST_RUNNER=${1}
python_test() { distutils-r1_python_test; }
if [[ -n ${test_pkgs} ]]; then
if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then
test_deps+=" ${test_pkgs//'${PYTHON_USEDEP}'/${PYTHON_USEDEP}}"
else
test_deps+=" $(python_gen_cond_dep "
${test_pkgs}
")"
fi
fi
if [[ -n ${test_deps} ]]; then
IUSE+=" test"
RESTRICT+=" !test? ( test )"
@ -1002,12 +988,6 @@ _distutils-r1_print_package_versions() {
dev-python/wheel
)
;;
pdm)
packages+=(
dev-python/pdm-pep517
dev-python/setuptools
)
;;
pdm-backend)
packages+=(
dev-python/pdm-backend
@ -1214,12 +1194,9 @@ _distutils-r1_backend_to_key() {
pbr.build)
echo pbr
;;
pdm.backend)
pdm.backend|pdm.pep517.api)
echo pdm-backend
;;
pdm.pep517.api)
echo pdm
;;
poetry.core.masonry.api|poetry.masonry.api)
echo poetry
;;
@ -1280,6 +1257,9 @@ _distutils-r1_get_backend() {
flit.buildapi)
new_backend=flit_core.buildapi
;;
pdm.pep517.api)
new_backend=pdm.backend
;;
poetry.masonry.api)
new_backend=poetry.core.masonry.api
;;
@ -1334,14 +1314,23 @@ distutils_wheel_install() {
printf '%s\n' "${cmd[*]}"
"${cmd[@]}" || die "Wheel install failed"
# remove installed licenses
# remove installed licenses and other junk
find "${root}$(python_get_sitedir)" -depth \
\( -path '*.dist-info/COPYING*' \
-o -path '*.dist-info/LICENSE*' \
\( -ipath '*.dist-info/AUTHORS*' \
-o -ipath '*.dist-info/CHANGELOG*' \
-o -ipath '*.dist-info/CODE_OF_CONDUCT*' \
-o -ipath '*.dist-info/COPYING*' \
-o -ipath '*.dist-info/*LICEN[CS]E*' \
-o -ipath '*.dist-info/NOTICE*' \
-o -ipath '*.dist-info/*Apache*' \
-o -ipath '*.dist-info/*GPL*' \
-o -ipath '*.dist-info/*MIT*' \
-o -path '*.dist-info/RECORD' \
-o -path '*.dist-info/license_files/*' \
-o -path '*.dist-info/license_files' \
-o -path '*.dist-info/licenses/*' \
-o -path '*.dist-info/licenses' \
-o -path '*.dist-info/zip-safe' \
\) -delete || die
}
@ -1607,9 +1596,6 @@ distutils-r1_python_test() {
fi
case ${_DISTUTILS_TEST_RUNNER} in
nose)
"${EPYTHON}" -m nose -v "${@}"
;;
pytest)
epytest
;;

View File

@ -1,4 +1,4 @@
# Copyright 1999-2023 Gentoo Authors
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: elisp-common.eclass
@ -687,7 +687,7 @@ elisp-make-site-file() {
# directory.
elisp-site-regen() {
local sitelisp=${ROOT%/}${EPREFIX}${SITELISP}
local sitelisp=${EROOT}${SITELISP}
local sf i ret=0 null="" page=$'\f'
local -a sflist
@ -699,9 +699,6 @@ elisp-site-regen() {
[[ -d ${sitelisp} ]] \
|| die "elisp-site-regen: Directory ${sitelisp} does not exist"
[[ -d ${T} ]] \
|| die "elisp-site-regen: Temporary directory ${T} does not exist"
ebegin "Regenerating site-gentoo.el for GNU Emacs (${EBUILD_PHASE})"
for sf in "${sitelisp}"/site-gentoo.d/[0-9][0-9]*.el; do

View File

@ -1015,69 +1015,27 @@ test-compile() {
}
# @FUNCTION: append-atomic-flags
# @USAGE: [bytes]
# @DESCRIPTION:
# Attempts to detect if appending -latomic is required to use
# a specific-sized atomic intrinsic, and if so, appends it. If the bytesize
# is not specified, then check the four most common byte sizes (1, 2, 4, 8).
# >=16-byte atomics are not included in this default set and must be explicitly
# passed if required. This may require you to add a macro definition like
# -Duint128_t=__uint128_t to your CFLAGS.
# Attempts to detect if appending -latomic works, and does so.
append-atomic-flags() {
# this implementation is as described in bug #820101
local code
# Make sure that the flag is actually valid. If it isn't, then maybe the
# library both doesn't exist and is redundant, or maybe the toolchain is
# broken, but let the build succeed or fail on its own.
test-flags-CCLD "-latomic" &>/dev/null || return
# first, ensure we can compile a trivial program
# this is because we can't distinguish if test-compile
# fails because -latomic is actually needed or if we have a
# broken toolchain (like due to bad FLAGS)
read -r -d '' code <<- EOF
int main(void)
{
return 0;
}
EOF
# if toolchain is broken, just return silently. it's better to
# let other pieces of the build fail later down the line than to
# make people think that something to do with atomic support is the
# cause of their problems.
test-compile "c+ld" "${code}" || return
local bytesizes
[[ "${#}" == "0" ]] && bytesizes=( "1" "2" "4" "8" ) || bytesizes="${@}"
for bytesize in ${bytesizes[@]}
do
# this sample program is informed by the great testing from the buildroot project:
# https://github.com/buildroot/buildroot/commit/6856e417da4f3aa77e2a814db2a89429af072f7d
read -r -d '' code <<- EOF
#include <stdint.h>
int main(void)
{
uint$((${bytesize} * 8))_t a = 0;
__atomic_add_fetch(&a, 3, __ATOMIC_RELAXED);
__atomic_compare_exchange_n(&a, &a, 2, 1, __ATOMIC_RELAXED, __ATOMIC_RELAXED);
return 0;
}
EOF
# do nothing if test program links fine
test-compile "c+ld" "${code}" && continue
# ensure that the toolchain supports -latomic
test-flags-CCLD "-latomic" &>/dev/null || die "-latomic is required but not supported by $(tc-getCC)"
append-libs "-latomic"
# verify that this did indeed fix the problem
test-compile "c+ld" "${code}" || \
die "libatomic does not include an implementation of ${bytesize}-byte atomics for this toolchain"
# if any of the required bytesizes require -latomic, no need to continue
# checking the others
return
done
# We unconditionally append this flag. In the case that it's needed, the
# flag is, well, needed. In the case that it's not needed, it causes no
# harm, because we ensure that this specific library is definitely
# certainly linked with as-needed.
#
# Really, this should be implemented directly in the compiler, including
# the use of push/pop for as-needed. It's exactly what the gcc spec file
# does for e.g. -lgcc_s, but gcc is concerned about doing so due to build
# system internals and as a result all users have to deal with this mess
# instead.
#
# See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81358
append-libs "-Wl,--push-state,--as-needed,-latomic,--pop-state"
}
fi

View File

@ -1,4 +1,4 @@
# Copyright 1999-2023 Gentoo Authors
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: git-r3.eclass
@ -429,6 +429,7 @@ _git-r3_set_submodules() {
l=${l#submodule.}
local subname=${l%%.url=*}
local is_manually_specified=
# filter out on EGIT_SUBMODULES
if declare -p EGIT_SUBMODULES &>/dev/null; then
@ -449,13 +450,14 @@ _git-r3_set_submodules() {
continue
else
einfo "Using submodule ${parent_path}${subname}"
is_manually_specified=1
fi
fi
# skip modules that have 'update = none', bug #487262.
local upd=$(echo "${data}" | git config -f /dev/fd/0 \
submodule."${subname}".update)
[[ ${upd} == none ]] && continue
[[ ${upd} == none && ! ${is_manually_specified} ]] && continue
# https://github.com/git/git/blob/master/refs.c#L31
# we are more restrictive than git itself but that should not
@ -813,13 +815,17 @@ git-r3_fetch() {
if [[ ${EGIT_LFS} ]]; then
# Fetch the LFS files from the current ref (if any)
local lfs_fetch_command=( git lfs fetch "${r}" )
local lfs_fetch_command=( git lfs fetch "${r}" "${remote_ref}" )
case "${EGIT_LFS_CLONE_TYPE}" in
shallow)
if [[ -d ${GIT_DIR}/lfs/objects ]] && ! rmdir "${GIT_DIR}"/lfs/objects 2> /dev/null; then
# Only prune if the lfs directory is not empty.
# The prune command can take a very long time to resolve even if there are no lfs objects.
lfs_fetch_command+=(
--prune
)
fi
;;
single)
;;

View File

@ -425,7 +425,7 @@ meson_src_configure() {
export -n {C,CPP,CXX,F,OBJC,OBJCXX,LD}FLAGS PKG_CONFIG_{LIBDIR,PATH}
echo meson setup "${MESONARGS[@]}" >&2
meson setup "${MESONARGS[@]}"
) || die
) || die -n
}
# @FUNCTION: meson_src_compile
@ -435,8 +435,9 @@ meson_src_configure() {
meson_src_compile() {
debug-print-function ${FUNCNAME} "$@"
pushd "${BUILD_DIR}" > /dev/null || die
local mesoncompileargs=(
-C "${BUILD_DIR}"
--jobs "$(get_makeopts_jobs 0)"
--load-average "$(get_makeopts_loadavg 0)"
)
@ -450,7 +451,9 @@ meson_src_compile() {
set -- meson compile "${mesoncompileargs[@]}"
echo "$@" >&2
"$@" || die "compile failed"
"$@" || die -n "compile failed"
popd > /dev/null || die
}
# @FUNCTION: meson_src_test
@ -460,16 +463,19 @@ meson_src_compile() {
meson_src_test() {
debug-print-function ${FUNCNAME} "$@"
pushd "${BUILD_DIR}" > /dev/null || die
local mesontestargs=(
--print-errorlogs
-C "${BUILD_DIR}"
--num-processes "$(makeopts_jobs "${MAKEOPTS}")"
"$@"
)
set -- meson test "${mesontestargs[@]}"
echo "$@" >&2
"$@" || die "tests failed"
"$@" || die -n "tests failed"
popd > /dev/null || die
}
# @FUNCTION: meson_install
@ -479,8 +485,9 @@ meson_src_test() {
meson_install() {
debug-print-function ${FUNCNAME} "$@"
pushd "${BUILD_DIR}" > /dev/null || die
local mesoninstallargs=(
-C "${BUILD_DIR}"
--destdir "${D}"
--no-rebuild
"$@"
@ -488,7 +495,9 @@ meson_install() {
set -- meson install "${mesoninstallargs[@]}"
echo "$@" >&2
"$@" || die "install failed"
"$@" || die -n "install failed"
popd > /dev/null || die
}
# @FUNCTION: meson_src_install

View File

@ -1349,6 +1349,9 @@ epytest() {
# override filterwarnings=error, we do not really want -Werror
# for end users, as it tends to fail on new warnings from deps
-Wdefault
# however, do error out if the package failed to load
# an appropriate async plugin
-Werror::pytest.PytestUnhandledCoroutineWarning
# override color output
"--color=${color}"
# count is more precise when we're dealing with a large number

View File

@ -1,3 +1,2 @@
DIST ipset-7.19.tar.bz2 686712 BLAKE2B 04290b94be471aedd732601e1dc147a066933606152beb76ba1a21283aa2e3f8b891fd9575db73f2af67b446fb77a0ca6b2432ae606440ac9e9bf80e41d1f640 SHA512 0f4252e6d967b0f130a2c7a0307b17c6b7d48336e86b2f838ea176f5faaa0c9bbbf273060906b43d91e9b38a9f33c18918e33d02292839a6bc321181d5d7f84e
DIST ipset-7.20.tar.bz2 687123 BLAKE2B 24f44c887ba90379015d15d58351aedb80cc1d53638d0f4a868b1b6debec18e4c5336b626946bc7b3eb56c1b80d83ab236f287598f71e27bf44b9873dbb7eddf SHA512 d0b87ab889987a3febeaf3d73099a262aca86160878258b3bd1be064e52b55baa90601804b30ad3bbb363066c9fc1bbdfe8bc100414f801729215a892e186fc6
DIST ipset-7.21.tar.bz2 687746 BLAKE2B bb887a6e74f11df8e24e13c767d21761fe547e90dbfe9fbd5b9adf3a6280a6e0eceeabd0d238178a2f76dd6492b04f4ccde222b5b41807b21bb441f2fb94cc48 SHA512 175c6516c2091c57738a0324678d8d016e4d7f18fa03cb0dcc502391cac4caf4db1e757f61ad2fe312c1dbe431ec9cfabbc8e15a64a94ebd2fa903155b27c88f

View File

@ -1,114 +0,0 @@
# Copyright 1999-2024 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}
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-r5 ${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

@ -1,11 +1,11 @@
# Copyright 1999-2023 Gentoo Authors
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit autotools bash-completion-r1 linux-info pam python-single-r1
inherit autotools bash-completion-r1 flag-o-matic linux-info pam python-single-r1
DESCRIPTION="Tools for Managing Linux CIFS Client Filesystems"
HOMEPAGE="https://wiki.samba.org/index.php/LinuxCIFS_utils https://git.samba.org/cifs-utils.git/?p=cifs-utils.git"
@ -77,6 +77,9 @@ src_prepare() {
}
src_configure() {
# bug #927809
filter-flags -fno-semantic-interposition
local myeconfargs=(
--enable-man
--enable-smbinfo

View File

@ -1,11 +1,11 @@
# Copyright 1999-2023 Gentoo Authors
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit autotools bash-completion-r1 linux-info pam python-single-r1
inherit autotools bash-completion-r1 flag-o-matic linux-info pam python-single-r1
DESCRIPTION="Tools for Managing Linux CIFS Client Filesystems"
HOMEPAGE="https://wiki.samba.org/index.php/LinuxCIFS_utils https://git.samba.org/cifs-utils.git/?p=cifs-utils.git"
@ -78,6 +78,9 @@ src_prepare() {
}
src_configure() {
# bug #927809
filter-flags -fno-semantic-interposition
local myeconfargs=(
--enable-man
--enable-smbinfo

View File

@ -1,11 +1,11 @@
# Copyright 1999-2023 Gentoo Authors
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit autotools bash-completion-r1 linux-info pam python-single-r1
inherit autotools bash-completion-r1 flag-o-matic linux-info pam python-single-r1
DESCRIPTION="Tools for Managing Linux CIFS Client Filesystems"
HOMEPAGE="https://wiki.samba.org/index.php/LinuxCIFS_utils https://git.samba.org/cifs-utils.git/?p=cifs-utils.git"
@ -77,6 +77,9 @@ src_prepare() {
}
src_configure() {
# bug #927809
filter-flags -fno-semantic-interposition
local myeconfargs=(
--enable-man
--enable-smbinfo

View File

@ -2,3 +2,4 @@ DIST nghttp2-1.57.0.tar.xz 1543568 BLAKE2B 6fad0f922477f896db14319433569b99cf599
DIST nghttp2-1.58.0.tar.xz 1546332 BLAKE2B db51bf6a0307f1465f4fcda7555b3a720800ee09aa8d26533fb6726f9b56a137435f5ea745f8fa5f927c8638e2a8fd371b04825e23c6a802070cebcfb654d256 SHA512 97b70727c633be1168df6a5b48617dde113b1d1e34176ec8bf22f4449041af2f73b2ada438d14336c9712271ec6bfc7525f000c8ca6a7a9f8d06db01b876dd1c
DIST nghttp2-1.59.0.tar.xz 1546956 BLAKE2B 0a1471c3686fcf8a896183e71e7a1c000e9397fc1831054dc87ab8860ff5d8ce2ec5ede0ba916edc7fcf94f3361b2f91e623303cbb1f6c08310f5bfbfe6cebfe SHA512 0725f302957520893ac454997adc6d6e71dc9b520c62390477fe8c5dd5c64d02415023266814cfec859bf562159e4a42eeb7d7312c5871739a3d57ed7430820b
DIST nghttp2-1.60.0.tar.xz 1587004 BLAKE2B 8f2ab1aead261823fd2b15e54f0404c118a13f269c0f1c5d2cdc3f344e35338bcf64acfe58bed8ffbcda3843935c7168650dfc8bef17c1cdfacb684261bb2727 SHA512 5e6365d9118596d41848930de70f4a918d72463920184df60a7e1678c3a6c9cf1416236888e7e34395c87f41bba00a114994ba5a6e73f6a389769abf1b5cc842
DIST nghttp2-1.61.0.tar.xz 1645808 BLAKE2B e78fb94cc9234260447f0d3610e58e22f9eadc2dd8b79eec3c1bb10d5c03ad3a87f83d54e560e5bbdef5d60086c00b465caabca145485ecd636aa35a2cda616f SHA512 01e930d7caf464699505f92b76e2bc8192d168612dc564d2546812c42afea2fb81d552d70e8a5fed35e2bf5deadbec8eda095af94a2484bca41542988afce52a

View File

@ -0,0 +1,61 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake-multilib
DESCRIPTION="HTTP/2 C Library"
HOMEPAGE="https://nghttp2.org/"
SRC_URI="https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz"
LICENSE="MIT"
SLOT="0/1.14" # 1.<SONAME>
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="debug hpack-tools jemalloc static-libs systemd test utils xml"
REQUIRED_USE="test? ( static-libs )"
RESTRICT="!test? ( test )"
SSL_DEPEND="
>=dev-libs/openssl-1.0.2:0=[-bindist(-),${MULTILIB_USEDEP}]
"
RDEPEND="
hpack-tools? ( >=dev-libs/jansson-2.5:= )
jemalloc? ( dev-libs/jemalloc:=[${MULTILIB_USEDEP}] )
utils? (
${SSL_DEPEND}
>=dev-libs/libev-4.15[${MULTILIB_USEDEP}]
>=sys-libs/zlib-1.2.3[${MULTILIB_USEDEP}]
net-dns/c-ares:=[${MULTILIB_USEDEP}]
)
systemd? ( >=sys-apps/systemd-209 )
xml? ( >=dev-libs/libxml2-2.7.7:2[${MULTILIB_USEDEP}] )"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
multilib_src_configure() {
#TODO: enable HTTP3
#requires quictls/openssl, libngtcp2, libngtcp2_crypto_quictls, libnghttp3
local mycmakeargs=(
-DENABLE_EXAMPLES=OFF
-DENABLE_FAILMALLOC=OFF
-DENABLE_HTTP3=OFF
-DENABLE_WERROR=OFF
-DENABLE_THREADS=ON
-DENABLE_DEBUG=$(usex debug)
-DENABLE_HPACK_TOOLS=$(multilib_native_usex hpack-tools)
$(cmake_use_find_package hpack-tools Jansson)
-DWITH_JEMALLOC=$(multilib_native_usex jemalloc)
-DBUILD_STATIC_LIBS=$(usex static-libs)
-DBUILD_TESTING=$(usex test)
$(cmake_use_find_package systemd Systemd)
-DENABLE_APP=$(multilib_native_usex utils)
-DWITH_LIBXML2=$(multilib_native_usex xml)
)
cmake_src_configure
}
multilib_src_test() {
eninja check
}

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