parent
d6aeb3a940
commit
540d55f74e
Binary file not shown.
Binary file not shown.
@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>conikost@gentoo.org</email>
|
||||
<name>Conrad Kostecki</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
@ -0,0 +1,10 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit acct-group
|
||||
|
||||
DESCRIPTION="A group for net-im/prosody"
|
||||
|
||||
ACCT_GROUP_ID="115"
|
Binary file not shown.
@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>conikost@gentoo.org</email>
|
||||
<name>Conrad Kostecki</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
@ -0,0 +1,13 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit acct-user
|
||||
|
||||
DESCRIPTION="A user for net-im/prosody"
|
||||
|
||||
ACCT_USER_GROUPS=( "prosody" )
|
||||
ACCT_USER_ID="115"
|
||||
|
||||
acct-user_add_deps
|
Binary file not shown.
@ -0,0 +1,56 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
inherit bash-completion-r1 distutils-r1
|
||||
|
||||
DESCRIPTION="Universal Command Line Environment for AWS"
|
||||
HOMEPAGE="https://pypi.org/project/awscli/"
|
||||
#SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
|
||||
SRC_URI="https://github.com/aws/aws-cli/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/aws-cli-${PV}"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~x86"
|
||||
|
||||
# botocore is x.(y+1).z
|
||||
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 1)).$(ver_cut 3-)"
|
||||
RDEPEND="
|
||||
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
|
||||
dev-python/colorama[${PYTHON_USEDEP}]
|
||||
dev-python/docutils[${PYTHON_USEDEP}]
|
||||
dev-python/rsa[${PYTHON_USEDEP}]
|
||||
>=dev-python/s3transfer-0.4.0[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
"
|
||||
|
||||
distutils_enable_tests --install pytest
|
||||
|
||||
src_prepare() {
|
||||
# do not rely on bundled deps in botocore (sic!)
|
||||
find -name '*.py' -exec sed -i \
|
||||
-e 's:from botocore[.]vendored import:import:' \
|
||||
-e 's:from botocore[.]vendored[.]:from :' \
|
||||
{} + || die
|
||||
distutils-r1_src_prepare
|
||||
}
|
||||
|
||||
python_test() {
|
||||
distutils_install_for_testing
|
||||
# integration tests require AWS credentials and Internet access
|
||||
epytest tests/{functional,unit}
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
newbashcomp bin/aws_bash_completer aws
|
||||
|
||||
insinto /usr/share/zsh/site-functions
|
||||
newins bin/aws_zsh_completer.sh _aws
|
||||
|
||||
distutils-r1_python_install_all
|
||||
|
||||
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
|
||||
}
|
Binary file not shown.
@ -1,4 +1,3 @@
|
||||
DIST clamav-0.103.3.tar.gz 13389239 BLAKE2B 1846cceed39fbd48fcf973d05a57901cf6f9ccdbb4d7eae501e712d84ab4d0a662e4477696aa6a1446116db85a89603428d7092a55e18f7acb805016d3cd5431 SHA512 c2ee24a6f63735c064140aa5baa347d51e8240b2f7eced3480d05435202aedd481fa7057fd40ecbc2e93a62fe8b0cefb574d8accdf9acede643ffbe0d396686f
|
||||
DIST clamav-0.103.4.tar.gz 16425023 BLAKE2B beca05941ce462bd98473a5ac72b36e63afeef5dea3e591fd8c9426c2077e550139b198ea7d0d12ac2be311d18c0170b94255c07df3e9a0defd3646ba4879bc7 SHA512 422a8cb98d355be098b0a0c575e4f08cf964e992d10ee02e7600eb9db6dfa943efbd988489f268e81e4d2ef29cfe582b236688ea209d6d2e46467f3c08eb475e
|
||||
DIST clamav-0.104.0.tar.gz 11896747 BLAKE2B c3ca32c1277052301a8bff94fec66a2df8f589bc9a673a00d0f45aaf9d8fd23e8bb87dde787d4188a6318d6677c3364e377ccec16d8e44667430713ce7e2a78d SHA512 7a052e6310ef92068acc384d10a64eed6d54d2d408d203dab92defbb1a276e8a193a2096a8028c8982323ba0be83d25602f026aeffa056878ce36aa325c0046c
|
||||
DIST clamav-0.104.1.tar.gz 11953064 BLAKE2B 9ec419349674cd50ca6fed1167eb6bad8eebc5a4d949041da628ebc32426b826769a292c901c2c255cfa3516e398e4ca60f6338ef3780a93e6246561fe695c5d SHA512 2cd4f73de73a2bbc002e1aa85326ea30cce0073fc1a2d5d7d220465217a84eb97fac759010ae0af54d2f0ed725112a51a65a486491fa52388cd7652d7b5cfa5a
|
||||
|
@ -1,240 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit autotools flag-o-matic systemd tmpfiles
|
||||
|
||||
DESCRIPTION="Clam Anti-Virus Scanner"
|
||||
HOMEPAGE="https://www.clamav.net/"
|
||||
SRC_URI="https://www.clamav.net/downloads/production/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
|
||||
IUSE="bzip2 doc clamonacc clamdtop clamsubmit iconv ipv6 libclamav-only milter metadata-analysis-api selinux systemd test uclibc xml"
|
||||
|
||||
REQUIRED_USE="libclamav-only? ( !clamonacc !clamdtop !clamsubmit !milter !metadata-analysis-api )"
|
||||
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# Require acct-{user,group}/clamav at build time so that we can set
|
||||
# the permissions on /var/lib/clamav in src_install rather than in
|
||||
# pkg_postinst; calling "chown" on the live filesystem scares me.
|
||||
CDEPEND="acct-group/clamav
|
||||
acct-user/clamav
|
||||
dev-libs/libltdl
|
||||
dev-libs/libmspack
|
||||
|| ( dev-libs/libpcre2 >dev-libs/libpcre-6 )
|
||||
dev-libs/tomsfastmath
|
||||
>=sys-libs/zlib-1.2.2:=
|
||||
bzip2? ( app-arch/bzip2 )
|
||||
clamdtop? ( sys-libs/ncurses:0 )
|
||||
clamsubmit? ( net-misc/curl dev-libs/json-c:= )
|
||||
elibc_musl? ( sys-libs/fts-standalone )
|
||||
iconv? ( virtual/libiconv )
|
||||
!libclamav-only? ( net-misc/curl )
|
||||
dev-libs/openssl:0=
|
||||
milter? ( || ( mail-filter/libmilter mail-mta/sendmail ) )
|
||||
xml? ( dev-libs/libxml2 )"
|
||||
|
||||
# We need at least autoconf-2.69-r5 because that's the first (patched)
|
||||
# version of it in Gentoo that supports ./configure --runstatedir.
|
||||
BDEPEND=">=sys-devel/autoconf-2.69-r5
|
||||
virtual/pkgconfig"
|
||||
|
||||
DEPEND="${CDEPEND}
|
||||
metadata-analysis-api? ( dev-libs/json-c:* )
|
||||
test? ( dev-libs/check )"
|
||||
RDEPEND="${CDEPEND}
|
||||
selinux? ( sec-policy/selinux-clamav )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-0.102.1-libxml2_pkgconfig.patch" #661328
|
||||
"${FILESDIR}/${PN}-0.102.2-fix-curl-detection.patch" #709616
|
||||
"${FILESDIR}/${PN}-0.103.0-system-tomsfastmath.patch" # 649394
|
||||
"${FILESDIR}/${PN}-0.103.1-upstream-openrc.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Be extra sure that we're using the system copy of tomsfastmath
|
||||
einfo "removing bundled copy of dev-libs/tomsfastmath"
|
||||
rm -r libclamav/tomsfastmath || \
|
||||
die "failed to remove bundled tomsfastmath"
|
||||
|
||||
AT_NO_RECURSIVE="yes" eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use elibc_musl && append-ldflags -lfts
|
||||
use ppc64 && append-flags -mminimal-toc
|
||||
use uclibc && export ac_cv_type_error_t=yes
|
||||
|
||||
# according to configure help it should be
|
||||
# $(use_enable xml)
|
||||
# but that does not work
|
||||
# do not add this, since --disable-xml seems to override
|
||||
# --without-xml
|
||||
JSONUSE="--without-libjson"
|
||||
|
||||
if use clamsubmit || use metadata-analysis-api; then
|
||||
# either of those 2 requires libjson.
|
||||
# clamsubmit will be built as soon as libjson and curl are found
|
||||
# but we only install the binary if requested
|
||||
JSONUSE="--with-libjson=${EPREFIX}/usr"
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
$(use_enable bzip2)
|
||||
$(use_enable clamonacc)
|
||||
$(use_enable clamdtop)
|
||||
$(use_enable ipv6)
|
||||
$(use_enable milter)
|
||||
$(use_enable test check)
|
||||
$(use_with xml)
|
||||
$(use_with iconv)
|
||||
${JSONUSE}
|
||||
$(use_enable libclamav-only)
|
||||
$(use_with !libclamav-only libcurl)
|
||||
--with-system-libmspack
|
||||
--cache-file="${S}"/config.cache
|
||||
--disable-experimental
|
||||
--disable-static
|
||||
--disable-zlib-vcheck
|
||||
--enable-id-check
|
||||
--with-dbdir="${EPREFIX}"/var/lib/clamav
|
||||
# Don't call --with-zlib=/usr (see bug #699296)
|
||||
--with-zlib
|
||||
--disable-llvm
|
||||
--enable-openrc
|
||||
--runstatedir=/run
|
||||
)
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
rm -rf "${ED}"/var/lib/clamav || die
|
||||
|
||||
if ! use libclamav-only ; then
|
||||
if use systemd; then
|
||||
# The tmpfiles entry is behind USE=systemd because the
|
||||
# upstream OpenRC service files should (and do) ensure that
|
||||
# the directories they need exist and have the correct
|
||||
# permissions without the help of opentmpfiles. There are
|
||||
# years-old root exploits in opentmpfiles, the design is
|
||||
# fundamentally flawed, and the maintainer is not up to
|
||||
# the task of fixing it.
|
||||
dotmpfiles "${FILESDIR}/tmpfiles.d/clamav.conf"
|
||||
systemd_newunit "${FILESDIR}/clamd_at.service" "clamd@.service"
|
||||
systemd_dounit "${FILESDIR}/clamd.service"
|
||||
systemd_newunit "${FILESDIR}/freshclamd.service-r1" \
|
||||
"freshclamd.service"
|
||||
fi
|
||||
|
||||
insinto /etc/logrotate.d
|
||||
newins "${FILESDIR}/clamd.logrotate" clamd
|
||||
newins "${FILESDIR}/freshclam.logrotate" freshclam
|
||||
use milter && \
|
||||
newins "${FILESDIR}/clamav-milter.logrotate-r1" clamav-milter
|
||||
|
||||
# Modify /etc/{clamd,freshclam}.conf to be usable out of the box
|
||||
sed -i -e "s:^\(Example\):\# \1:" \
|
||||
-e "s/^#\(PidFile .*\)/\1/" \
|
||||
-e "s/^#\(LocalSocket .*\)/\1/" \
|
||||
-e "s/^#\(User .*\)/\1/" \
|
||||
-e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
|
||||
-e "s:^\#\(LogTime\).*:\1 yes:" \
|
||||
-e "s/^#\(DatabaseDirectory .*\)/\1/" \
|
||||
"${ED}"/etc/clamd.conf.sample || die
|
||||
|
||||
sed -i -e "s:^\(Example\):\# \1:" \
|
||||
-e "s/^#\(PidFile .*\)/\1/" \
|
||||
-e "s/^#\(DatabaseOwner .*\)/\1/" \
|
||||
-e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
|
||||
-e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamd.conf:" \
|
||||
-e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
|
||||
-e "s/^#\(DatabaseDirectory .*\)/\1/" \
|
||||
"${ED}"/etc/freshclam.conf.sample || die
|
||||
|
||||
if use milter ; then
|
||||
# Note: only keep the "unix" ClamdSocket and MilterSocket!
|
||||
sed -i -e "s:^\(Example\):\# \1:" \
|
||||
-e "s/^#\(PidFile .*\)/\1/" \
|
||||
-e "s/^#\(ClamdSocket unix:.*\)/\1/" \
|
||||
-e "s/^#\(User .*\)/\1/" \
|
||||
-e "s/^#\(MilterSocket unix:.*\)/\1/" \
|
||||
-e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
|
||||
"${ED}"/etc/clamav-milter.conf.sample || die
|
||||
|
||||
cat >> "${ED}"/etc/conf.d/clamd <<-EOF
|
||||
MILTER_NICELEVEL=19
|
||||
START_MILTER=no
|
||||
EOF
|
||||
|
||||
systemd_newunit "${FILESDIR}/clamav-milter.service-r1" clamav-milter.service
|
||||
fi
|
||||
|
||||
local i
|
||||
for i in clamd freshclam clamav-milter
|
||||
do
|
||||
if [[ -f "${ED}"/etc/"${i}".conf.sample ]]; then
|
||||
mv "${ED}"/etc/"${i}".conf{.sample,} || die
|
||||
fi
|
||||
done
|
||||
|
||||
# These both need to be writable by the clamav user.
|
||||
# TODO: use syslog by default; that's what it's for.
|
||||
diropts -o clamav -g clamav
|
||||
keepdir /var/lib/clamav
|
||||
keepdir /var/log/clamav
|
||||
fi
|
||||
|
||||
if use doc ; then
|
||||
local HTML_DOCS=( docs/html/. )
|
||||
einstalldocs
|
||||
|
||||
if ! use libclamav-only ; then
|
||||
doman docs/man/*.[1-8]
|
||||
fi
|
||||
fi
|
||||
|
||||
find "${ED}" -name '*.la' -delete || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if use libclamav-only ; then
|
||||
ewarn "Test target not available when USE=libclamav-only is set, skipping tests ..."
|
||||
return 0
|
||||
fi
|
||||
|
||||
emake quick-check
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if ! use libclamav-only ; then
|
||||
if use systemd ; then
|
||||
tmpfiles_process clamav.conf
|
||||
fi
|
||||
fi
|
||||
|
||||
if use milter ; then
|
||||
elog "For simple instructions how to setup the clamav-milter read the"
|
||||
elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}"
|
||||
fi
|
||||
|
||||
local databases=( "${EROOT}"/var/lib/clamav/main.c[lv]d )
|
||||
if [[ ! -f "${databases}" ]] ; then
|
||||
ewarn "You must run freshclam manually to populate the virus database"
|
||||
ewarn "before starting clamav for the first time."
|
||||
fi
|
||||
|
||||
ewarn "This version of ClamAV provides separate OpenRC services"
|
||||
ewarn "for clamd, freshclam, clamav-milter, and clamonacc. The"
|
||||
ewarn "clamd service now starts only the clamd daemon itself. You"
|
||||
ewarn "should add freshclam (and perhaps clamav-milter) to any"
|
||||
ewarn "runlevels that previously contained clamd."
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,67 +0,0 @@
|
||||
From 3b4800ed5b24cea7af00aa868964e3d46e81364e Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Pipping <sebastian@pipping.org>
|
||||
Date: Thu, 3 Sep 2020 19:59:36 +0200
|
||||
Subject: [PATCH] setup.py: Drop generic upper version boundaries
|
||||
|
||||
---
|
||||
setup.py | 34 +++++++++++++++++-----------------
|
||||
1 file changed, 17 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/setup.py b/setup.py
|
||||
index e0d4340..648a736 100644
|
||||
--- a/setup.py
|
||||
+++ b/setup.py
|
||||
@@ -25,33 +25,33 @@ def find_version(*file_paths):
|
||||
|
||||
|
||||
install_requires = [
|
||||
- 'cached-property >= 1.2.0, < 2',
|
||||
- 'docopt >= 0.6.1, < 1',
|
||||
- 'PyYAML >= 3.10, < 6',
|
||||
- 'requests >= 2.20.0, < 3',
|
||||
- 'texttable >= 0.9.0, < 2',
|
||||
- 'websocket-client >= 0.32.0, < 1',
|
||||
- 'distro >= 1.5.0, < 2',
|
||||
- 'docker[ssh] >= 4.3.1, < 5',
|
||||
- 'dockerpty >= 0.4.1, < 1',
|
||||
- 'jsonschema >= 2.5.1, < 4',
|
||||
- 'python-dotenv >= 0.13.0, < 1',
|
||||
+ 'cached-property >= 1.2.0',
|
||||
+ 'docopt >= 0.6.1',
|
||||
+ 'PyYAML >= 3.10',
|
||||
+ 'requests >= 2.20.0',
|
||||
+ 'texttable >= 0.9.0',
|
||||
+ 'websocket-client >= 0.32.0',
|
||||
+ 'distro >= 1.5.0',
|
||||
+ 'docker[ssh] >= 4.3.1',
|
||||
+ 'dockerpty >= 0.4.1',
|
||||
+ 'jsonschema >= 2.5.1',
|
||||
+ 'python-dotenv >= 0.13.0',
|
||||
]
|
||||
|
||||
|
||||
tests_require = [
|
||||
- 'ddt >= 1.2.2, < 2',
|
||||
- 'pytest < 6',
|
||||
+ 'ddt >= 1.2.2',
|
||||
+ 'pytest',
|
||||
]
|
||||
|
||||
|
||||
if sys.version_info[:2] < (3, 4):
|
||||
- tests_require.append('mock >= 1.0.1, < 4')
|
||||
+ tests_require.append('mock >= 1.0.1')
|
||||
|
||||
extras_require = {
|
||||
- ':python_version < "3.5"': ['backports.ssl_match_hostname >= 3.5, < 4'],
|
||||
- ':sys_platform == "win32"': ['colorama >= 0.4, < 1'],
|
||||
- 'socks': ['PySocks >= 1.5.6, != 1.5.7, < 2'],
|
||||
+ ':python_version < "3.5"': ['backports.ssl_match_hostname >= 3.5'],
|
||||
+ ':sys_platform == "win32"': ['colorama >= 0.4'],
|
||||
+ 'socks': ['PySocks >= 1.5.6, != 1.5.7'],
|
||||
'tests': tests_require,
|
||||
}
|
||||
|
||||
--
|
||||
2.27.0
|
||||
|
@ -1,67 +0,0 @@
|
||||
From 7a5520d0b478e9bb20c9c3ff2614a8afd392b020 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Pipping <sebastian@pipping.org>
|
||||
Date: Mon, 4 Jan 2021 17:36:44 +0100
|
||||
Subject: [PATCH] setup.py: Drop generic upper version boundaries
|
||||
|
||||
---
|
||||
setup.py | 34 +++++++++++++++++-----------------
|
||||
1 file changed, 17 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/setup.py b/setup.py
|
||||
index 57e1313..94a3337 100644
|
||||
--- a/setup.py
|
||||
+++ b/setup.py
|
||||
@@ -25,33 +25,33 @@ def find_version(*file_paths):
|
||||
|
||||
|
||||
install_requires = [
|
||||
- 'cached-property >= 1.2.0, < 2',
|
||||
- 'docopt >= 0.6.1, < 1',
|
||||
- 'PyYAML >= 3.10, < 6',
|
||||
- 'requests >= 2.20.0, < 3',
|
||||
- 'texttable >= 0.9.0, < 2',
|
||||
- 'websocket-client >= 0.32.0, < 1',
|
||||
- 'distro >= 1.5.0, < 2',
|
||||
- 'docker[ssh] >= 4.4.3, < 5',
|
||||
- 'dockerpty >= 0.4.1, < 1',
|
||||
- 'jsonschema >= 2.5.1, < 4',
|
||||
- 'python-dotenv >= 0.13.0, < 1',
|
||||
+ 'cached-property >= 1.2.0',
|
||||
+ 'docopt >= 0.6.1',
|
||||
+ 'PyYAML >= 3.10',
|
||||
+ 'requests >= 2.20.0',
|
||||
+ 'texttable >= 0.9.0',
|
||||
+ 'websocket-client >= 0.32.0',
|
||||
+ 'distro >= 1.5.0',
|
||||
+ 'docker[ssh] >= 4.4.3',
|
||||
+ 'dockerpty >= 0.4.1',
|
||||
+ 'jsonschema >= 2.5.1',
|
||||
+ 'python-dotenv >= 0.13.0',
|
||||
]
|
||||
|
||||
|
||||
tests_require = [
|
||||
- 'ddt >= 1.2.2, < 2',
|
||||
- 'pytest < 6',
|
||||
+ 'ddt >= 1.2.2',
|
||||
+ 'pytest',
|
||||
]
|
||||
|
||||
|
||||
if sys.version_info[:2] < (3, 4):
|
||||
- tests_require.append('mock >= 1.0.1, < 4')
|
||||
+ tests_require.append('mock >= 1.0.1')
|
||||
|
||||
extras_require = {
|
||||
- ':python_version < "3.5"': ['backports.ssl_match_hostname >= 3.5, < 4'],
|
||||
- ':sys_platform == "win32"': ['colorama >= 0.4, < 1'],
|
||||
- 'socks': ['PySocks >= 1.5.6, != 1.5.7, < 2'],
|
||||
+ ':python_version < "3.5"': ['backports.ssl_match_hostname >= 3.5'],
|
||||
+ ':sys_platform == "win32"': ['colorama >= 0.4'],
|
||||
+ 'socks': ['PySocks >= 1.5.6, != 1.5.7'],
|
||||
'tests': tests_require,
|
||||
}
|
||||
|
||||
--
|
||||
2.30.0.rc2
|
||||
|
@ -1,67 +0,0 @@
|
||||
From 7a5520d0b478e9bb20c9c3ff2614a8afd392b020 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Pipping <sebastian@pipping.org>
|
||||
Date: Mon, 4 Jan 2021 17:36:44 +0100
|
||||
Subject: [PATCH] setup.py: Drop generic upper version boundaries
|
||||
|
||||
---
|
||||
setup.py | 34 +++++++++++++++++-----------------
|
||||
1 file changed, 17 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/setup.py b/setup.py
|
||||
index 57e1313..94a3337 100644
|
||||
--- a/setup.py
|
||||
+++ b/setup.py
|
||||
@@ -25,33 +25,33 @@ def find_version(*file_paths):
|
||||
|
||||
|
||||
install_requires = [
|
||||
- 'cached-property >= 1.2.0, < 2',
|
||||
- 'docopt >= 0.6.1, < 1',
|
||||
- 'PyYAML >= 3.10, < 6',
|
||||
- 'requests >= 2.20.0, < 3',
|
||||
- 'texttable >= 0.9.0, < 2',
|
||||
- 'websocket-client >= 0.32.0, < 1',
|
||||
- 'distro >= 1.5.0, < 2',
|
||||
- 'docker[ssh] >= 4.4.4, < 5',
|
||||
- 'dockerpty >= 0.4.1, < 1',
|
||||
- 'jsonschema >= 2.5.1, < 4',
|
||||
- 'python-dotenv >= 0.13.0, < 1',
|
||||
+ 'cached-property >= 1.2.0',
|
||||
+ 'docopt >= 0.6.1',
|
||||
+ 'PyYAML >= 3.10',
|
||||
+ 'requests >= 2.20.0',
|
||||
+ 'texttable >= 0.9.0',
|
||||
+ 'websocket-client >= 0.32.0',
|
||||
+ 'distro >= 1.5.0',
|
||||
+ 'docker[ssh] >= 4.4.4',
|
||||
+ 'dockerpty >= 0.4.1',
|
||||
+ 'jsonschema >= 2.5.1',
|
||||
+ 'python-dotenv >= 0.13.0',
|
||||
]
|
||||
|
||||
|
||||
tests_require = [
|
||||
- 'ddt >= 1.2.2, < 2',
|
||||
- 'pytest < 6',
|
||||
+ 'ddt >= 1.2.2',
|
||||
+ 'pytest',
|
||||
]
|
||||
|
||||
|
||||
if sys.version_info[:2] < (3, 4):
|
||||
- tests_require.append('mock >= 1.0.1, < 4')
|
||||
+ tests_require.append('mock >= 1.0.1')
|
||||
|
||||
extras_require = {
|
||||
- ':python_version < "3.5"': ['backports.ssl_match_hostname >= 3.5, < 4'],
|
||||
- ':sys_platform == "win32"': ['colorama >= 0.4, < 1'],
|
||||
- 'socks': ['PySocks >= 1.5.6, != 1.5.7, < 2'],
|
||||
+ ':python_version < "3.5"': ['backports.ssl_match_hostname >= 3.5'],
|
||||
+ ':sys_platform == "win32"': ['colorama >= 0.4'],
|
||||
+ 'socks': ['PySocks >= 1.5.6, != 1.5.7'],
|
||||
'tests': tests_require,
|
||||
}
|
||||
|
||||
--
|
||||
2.30.0.rc2
|
||||
|
@ -1,2 +1,2 @@
|
||||
DIST fs-uae-launcher-3.0.5.tar.gz 9633819 BLAKE2B 8ce627302244bbd7d174f28c0dad345699942429c1109a7408c88412f6bb0e3e5d765e6c51abf2b95837a83261023b4f9c58d65892e58043889be8dc5e4cb759 SHA512 1a6700c56a14edce86ffbefee7494117af067da8b1dbc22937a36641ccb90927a3bbb011d15a891388bf08378aa623e00a2d45dbc49e822a5a569e110843add5
|
||||
DIST fs-uae-launcher-3.1.26.tar.gz 9656516 BLAKE2B 1b8d12ef91631dedf412976e81529ac7138b7f688ad6ae1ad55bfd3625590ee00aab89d229d2aa64eec577d291a6e634362c557428534c355fdb39e878f40253 SHA512 0e4e542bebfe2d8f862005c016fe70319dd6c5e1e413be9b0ce0421bb95253ba6eb92337989cc86210094b9b02a6ad86da4725f1a65d50673703fa6c6cb58f37
|
||||
DIST fs-uae-launcher-3.1.43.tar.xz 7785544 BLAKE2B 504d97dbc2bff7bc6abe065854e51b1ce51d40aec582586473629a77626c750510b4f885d3679a734d2dc7c889e9b18f41c27ea924ea7134641de2df16a0b404 SHA512 df19c4a3897b089daaee869226dfe2adfa990e0f8e30772e482e27a21c64f7d9d3369e8d6b0c72ac6119e207e9978f2052a7d681fe4f40b99e5ec48161e2a0fe
|
||||
|
@ -1,2 +1,2 @@
|
||||
DIST fs-uae-3.1.35.tar.gz 4817547 BLAKE2B 5f75a1e262ba8d642401a03ac5b2494be37b8bab8f014a48208cc6e0b2e33373a7ce6146065f41404d8fcbd60fe71582319abe51521336c2d7c04668c3adacd9 SHA512 96bec936f867fc42eb9f61058887c027da0bab1c8df196ab62a714b1f28c92aafe6c4a61d441e5c7b5d8aee28c90d68812d0f6049c610e2ef9eebdd7e3edf013
|
||||
DIST fs-uae-3.1.47.tar.xz 3564072 BLAKE2B e65a4cac601f9785ad44aeb427ad5dfbefd5412e8b12a06aafabe0e25b9ef1ba9387304eb613685632f5fab98f29494901866057e37c8e45f5aa6085d5e477f3 SHA512 a8ec3321d10ab98945149289311062f918f143082e1e1d0b3429d783c4ce965c9f6115e3b23add6983f12aa30067f03e3250941056a1dbd1317a3a12b6e1a68e
|
||||
DIST fs-uae-3.1.48.tar.xz 3562468 BLAKE2B 99bcf1a7b4def97802ee1ce243aef7687d38c9e343e9c730f929e632916f3f36d6089ad289efda445c904f8fda1b75592f255fa77ee2b2687b0d32a95c996857 SHA512 05e56043f03225fd1ae71d1deade8807a8ae443068087914167fded8cc4a26cf8bb4209b5af3c609d41d001c42033ded7560e9ec642cb2ecfee99025c1f54c2f
|
||||
|
@ -1,20 +0,0 @@
|
||||
[Unit]
|
||||
Description=LXD - main daemon
|
||||
After=network-online.target lxcfs.service lxd.socket
|
||||
Requires=network-online.target lxcfs.service lxd.socket
|
||||
Documentation=man:lxd(1)
|
||||
|
||||
[Service]
|
||||
EnvironmentFile=-/etc/environment
|
||||
ExecStart=/usr/sbin/lxd --group lxd --logfile=/var/log/lxd/lxd.log
|
||||
ExecStartPost=/usr/sbin/lxd waitready --timeout=600
|
||||
KillMode=process
|
||||
TimeoutStartSec=600s
|
||||
TimeoutStopSec=30s
|
||||
Restart=on-failure
|
||||
LimitNOFILE=1048576
|
||||
LimitNPROC=infinity
|
||||
TasksMax=infinity
|
||||
|
||||
[Install]
|
||||
Also=lxd-containers.service lxd.socket
|
@ -1,21 +0,0 @@
|
||||
[Unit]
|
||||
Description=LXD - main daemon
|
||||
After=network-online.target lxcfs.service lxd.socket
|
||||
Requires=network-online.target lxcfs.service lxd.socket
|
||||
Documentation=man:lxd(1)
|
||||
|
||||
[Service]
|
||||
EnvironmentFile=-/etc/environment
|
||||
ExecStartPre=/usr/libexec/lxc/lxc-apparmor-load
|
||||
ExecStart=/usr/sbin/lxd --group lxd --logfile=/var/log/lxd/lxd.log
|
||||
ExecStartPost=/usr/sbin/lxd waitready --timeout=600
|
||||
KillMode=process
|
||||
TimeoutStartSec=600s
|
||||
TimeoutStopSec=30s
|
||||
Restart=on-failure
|
||||
LimitNOFILE=1048576
|
||||
LimitNPROC=infinity
|
||||
TasksMax=infinity
|
||||
|
||||
[Install]
|
||||
Also=lxd-containers.service lxd.socket
|
@ -1,3 +1,2 @@
|
||||
DIST snapd-2.52.1.tar.xz 4142764 BLAKE2B aaeebe91ef5d009deae37258cfcdbdcb415d5a2d5f954d01f277d6c4911449c80c49c486f6af71d4a2abc6a1d73f49f54d506dcb178adc33e1d685f1dc3c6b01 SHA512 ae829ff898708843e56688e2c1bd189c765cced11146a504ae8badd1acb1559536e13cec101e57ac4ffed2a3d1fa51323b87785b93290db7a1eec2e1579d1c6c
|
||||
DIST snapd-2.52.tar.xz 4146496 BLAKE2B 49b952503c60b589fe7ddea9ded135139243da34b35b39d9e309df6854109fb3a99f52ca324737fa7f5773221d453f7093047dcdcb1114d0389e20ba24c3d2c3 SHA512 56d3a2c5048d2ffde5b34f63e6a99dc74a7c6e4637f36250f674a68863c4b997cf940689529eca9d3bf58b0148cc18a0b4033d93aa06375a5f12c552d40472da
|
||||
DIST snapd-2.53.1.tar.xz 4713180 BLAKE2B 8c46c7257eeb7794d082833448ea30dbeee5ebec3b36dcec1e3d6c9e8b00121319829ceaf354c055a0edd9032f3d74b66823be0f640860b931c461e607b89485 SHA512 167c84fdf5df151c9d06774677649c365a6fd1fbbc68900c060c775fffaa51bf7bfee5a62900035fae3bd5ad1d637bb381fe15e8277a93acc6409028b36ef780
|
||||
DIST snapd-2.53.2.tar.xz 4714868 BLAKE2B 8ce0358a31c095e90c17b01a0229b665655949f91b4094b6b426f6df07794c1633497ee9edbb9d175aa920e7ac3b39316631a985b1e57f6cb15ef2fa56fd3321 SHA512 414f819b1590e6324c3f5141ccfa60141fd42f0e0160ad78d1937ad57bc2313de54af9b7718d956a9db9981954fcbe75e80556c6544bff99ac6da9db5142c014
|
||||
|
@ -1,180 +0,0 @@
|
||||
# Copyright 2020-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
EGO_PN="github.com/snapcore/${PN}"
|
||||
inherit autotools bash-completion-r1 golang-vcs-snapshot linux-info readme.gentoo-r1 systemd xdg-utils
|
||||
|
||||
DESCRIPTION="Service and tools for management of snap packages"
|
||||
HOMEPAGE="http://snapcraft.io/"
|
||||
|
||||
MY_S="${S}/src/github.com/snapcore/${PN}"
|
||||
|
||||
SRC_URI="https://github.com/snapcore/${PN}/releases/download/${PV}/${PN}_${PV}.vendor.tar.xz -> ${P}.tar.xz"
|
||||
MY_PV=${PV}
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
LICENSE="GPL-3 Apache-2.0 BSD BSD-2 LGPL-3-with-linking-exception MIT"
|
||||
SLOT="0"
|
||||
IUSE="apparmor +cgroup-hybrid +forced-devmode gtk kde systemd"
|
||||
REQUIRED_USE="!forced-devmode? ( apparmor cgroup-hybrid ) systemd"
|
||||
|
||||
CONFIG_CHECK="~CGROUPS
|
||||
~CGROUP_DEVICE
|
||||
~CGROUP_FREEZER
|
||||
~NAMESPACES
|
||||
~SQUASHFS
|
||||
~SQUASHFS_ZLIB
|
||||
~SQUASHFS_LZO
|
||||
~SQUASHFS_XZ
|
||||
~BLK_DEV_LOOP
|
||||
~SECCOMP
|
||||
~SECCOMP_FILTER"
|
||||
|
||||
RDEPEND="
|
||||
sys-libs/libseccomp:=
|
||||
apparmor? (
|
||||
sec-policy/apparmor-profiles
|
||||
sys-apps/apparmor:=
|
||||
)
|
||||
dev-libs/glib
|
||||
virtual/libudev
|
||||
systemd? ( sys-apps/systemd[cgroup-hybrid(+)?] )
|
||||
sys-libs/libcap:=
|
||||
sys-fs/squashfs-tools[lzma]"
|
||||
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
BDEPEND="
|
||||
>=dev-lang/go-1.9
|
||||
dev-python/docutils
|
||||
sys-devel/gettext
|
||||
sys-fs/xfsprogs"
|
||||
|
||||
PDEPEND="sys-auth/polkit[gtk?,kde?]"
|
||||
|
||||
README_GENTOO_SUFFIX=""
|
||||
|
||||
pkg_setup() {
|
||||
if use apparmor; then
|
||||
CONFIG_CHECK+=" ~SECURITY_APPARMOR"
|
||||
fi
|
||||
linux-info_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
# Update apparmor profile to allow libtinfow.so*
|
||||
sed -i 's/libtinfo/libtinfo{,w}/' \
|
||||
"${MY_S}/cmd/snap-confine/snap-confine.apparmor.in" || die
|
||||
|
||||
if ! use forced-devmode; then
|
||||
sed -e 's#return \(!apparmorFull || cgroupv2\)#//\1\n\tif !apparmorFull || cgroupv2 {\n\t\tpanic("USE=forced-devmode is disabled")\n\t}\n\treturn false#' \
|
||||
-i "${MY_S}/sandbox/forcedevmode.go" || die
|
||||
grep -q 'panic("USE=forced-devmode is disabled")' "${MY_S}/sandbox/forcedevmode.go" || die "failed to disable forced-devmode"
|
||||
fi
|
||||
|
||||
sed -i 's:command -v git >/dev/null:false:' -i "${MY_S}/mkversion.sh" || die
|
||||
|
||||
pushd "${MY_S}" >/dev/null || die
|
||||
./mkversion.sh "${PV}"
|
||||
popd >/dev/null || die
|
||||
pushd "${MY_S}/cmd" >/dev/null || die
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
SNAPD_MAKEARGS=(
|
||||
"BINDIR=${EPREFIX}/usr/bin"
|
||||
"DBUSSERVICESDIR=${EPREFIX}/usr/share/dbus-1/services"
|
||||
"LIBEXECDIR=${EPREFIX}/usr/lib"
|
||||
"SNAP_MOUNT_DIR=${EPREFIX}/var/lib/snapd/snap"
|
||||
"SYSTEMDSYSTEMUNITDIR=$(systemd_get_systemunitdir)"
|
||||
)
|
||||
export CGO_ENABLED="1"
|
||||
export CGO_CFLAGS="${CFLAGS}"
|
||||
export CGO_CPPFLAGS="${CPPFLAGS}"
|
||||
export CGO_CXXFLAGS="${CXXFLAGS}"
|
||||
|
||||
pushd "${MY_S}/cmd" >/dev/null || die
|
||||
econf --libdir="${EPREFIX}/usr/lib" \
|
||||
--libexecdir="${EPREFIX}/usr/lib/snapd" \
|
||||
$(use_enable apparmor) \
|
||||
--enable-nvidia-biarch \
|
||||
--with-snap-mount-dir="${EPREFIX}/var/lib/snapd/snap"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
export -n GOCACHE XDG_CACHE_HOME
|
||||
export GO111MODULE=off GOBIN="${S}/bin" GOPATH="${S}"
|
||||
|
||||
local file
|
||||
for file in "${MY_S}/po/"*.po; do
|
||||
msgfmt "${file}" -o "${file%.po}.mo" || die
|
||||
done
|
||||
|
||||
emake -C "${MY_S}/data" "${SNAPD_MAKEARGS[@]}"
|
||||
|
||||
local -a flags=(-buildmode=pie -ldflags "-s -linkmode external -extldflags '${LDFLAGS}'" -trimpath)
|
||||
local -a staticflags=(-buildmode=pie -ldflags "-s -linkmode external -extldflags '${LDFLAGS} -static'" -trimpath)
|
||||
|
||||
local cmd
|
||||
for cmd in snap snapd snap-bootstrap snap-failure snap-preseed snap-recovery-chooser snap-repair snap-seccomp; do
|
||||
go build -o "${GOBIN}/${cmd}" "${flags[@]}" \
|
||||
-v -x "github.com/snapcore/${PN}/cmd/${cmd}"
|
||||
[[ -e "${GOBIN}/${cmd}" ]] || die "failed to build ${cmd}"
|
||||
done
|
||||
for cmd in snapctl snap-exec snap-update-ns; do
|
||||
go build -o "${GOBIN}/${cmd}" "${staticflags[@]}" \
|
||||
-v -x "github.com/snapcore/${PN}/cmd/${cmd}"
|
||||
[[ -e "${GOBIN}/${cmd}" ]] || die "failed to build ${cmd}"
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake -C "${MY_S}/data" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}"
|
||||
emake -C "${MY_S}/cmd" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}"
|
||||
|
||||
if use apparmor; then
|
||||
mv "${ED}/etc/apparmor.d/usr.lib.snapd.snap-confine"{,.real} || die
|
||||
keepdir /var/lib/snapd/apparmor/profiles
|
||||
fi
|
||||
keepdir /var/lib/snapd/{apparmor/snap-confine,cache,cookie,snap,void}
|
||||
fperms 700 /var/lib/snapd/{cache,cookie}
|
||||
|
||||
dobin "${GOBIN}/"{snap,snapctl}
|
||||
ln "${ED}/usr/bin/snapctl" "${ED}/usr/lib/snapd/snapctl" || die
|
||||
|
||||
exeinto /usr/lib/snapd
|
||||
doexe "${GOBIN}/"{snapd,snap-bootstrap,snap-failure,snap-exec,snap-preseed,snap-recovery-chooser,snap-repair,snap-seccomp,snap-update-ns} \
|
||||
"${MY_S}/"{cmd/snap-confine/snap-device-helper,cmd/snap-discard-ns/snap-discard-ns,cmd/snap-gdb-shim/snap-gdb-shim,cmd/snap-mgmt/snap-mgmt} \
|
||||
"${MY_S}/data/completion/bash/"{complete.sh,etelpmoc.sh,}
|
||||
|
||||
dobashcomp "${MY_S}/data/completion/bash/snap"
|
||||
|
||||
insinto /usr/share/zsh/site-functions
|
||||
doins "${MY_S}/data/completion/zsh/_snap"
|
||||
|
||||
insinto "/usr/share/polkit-1/actions"
|
||||
doins "${MY_S}/data/polkit/io.snapcraft.snapd.policy"
|
||||
|
||||
dodoc "${MY_S}/packaging/ubuntu-16.04/changelog"
|
||||
domo "${MY_S}/po/"*.mo
|
||||
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
readme.gentoo_print_elog
|
||||
xdg_desktop_database_update
|
||||
|
||||
if use apparmor && [[ -z ${ROOT} && -e /sys/kernel/security/apparmor/profiles &&
|
||||
$(wc -l < /sys/kernel/security/apparmor/profiles) -gt 0 ]]; then
|
||||
apparmor_parser -r "${EPREFIX}/etc/apparmor.d/usr.lib.snapd.snap-confine.real"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_desktop_database_update
|
||||
}
|
Binary file not shown.
@ -1,4 +1,4 @@
|
||||
DIST scrcpy-1.18.tar.gz 299497 BLAKE2B aaecb14ea5accf12b23e3b4d07069640e3778d6050dd28c7962ca458645f5e8215b7b7376b809086a3edf98fca1375d935eae429219c1fa5df91088360e46347 SHA512 9cd3841c65cd1f20f277e336b69eec475ea75f403b6761b91639bf6fe876c29d763f056ee2b226f6eabe312b3bdabcad9e72c0384a11fa9f5091ff9587292a6f
|
||||
DIST scrcpy-1.19.tar.gz 314821 BLAKE2B 526d494efbc90ee23a1adc62e8658e0b7c0d10dc51f7a2ffdb85246afb7b8bae3dce9821cc969f57a52706bfa1829eba6e9505739a3f3c89f26226571085edae SHA512 be6b5a662aa7f0e5f75d9e66298ac0905e296d84cfbf8ff7e34ed20fdbbe14ebd7c759bc5a7bcde1e0a86c990d0f2c2fc5b0155d6dd011371e5ca48bf35d4a03
|
||||
DIST scrcpy-server-v1.18 37330 BLAKE2B 02c5e58d72825abbc7d5a6e0f0e87f7effb016cc8baf77f975d6519200aee00401a67ea0e284e4f2188623dfd1c0800cc0dbfad25df0b51b3bc9aa5bacc3a7f2 SHA512 fffd06bbd1cae78af2112f0bd59c8da1c0f838206e3141d255a395ee633f52499eb85b5398a8b4d121241dd3e46088c790476061c3da2a12a319791096045454
|
||||
DIST scrcpy-1.20.tar.gz 343592 BLAKE2B a91a6e360ed708ef9a3da626f6d373739f69115cfc07f37043a8586b92518f1896a49c639403f5e66062ed2e6d21c79fe4b7865784ed4ee1c86508e743b0a27c SHA512 55950e596840676b86239e604784a4eaf759ec2942120e2b8213c781149c049e6cd9bf40392f2dc23679a9fae74d47e2ebae58491b55b6ac6f9b23f83de64fc9
|
||||
DIST scrcpy-server-v1.19 37330 BLAKE2B 63296a4cab39b55106d0ae9f1df1b7cfa1993f2fdcf937d0fb0fc6b6afd181a1a068f53b6e75b8e80f3e05e7125fb76d57cacd366cfe76113bbb10527dc8a82b SHA512 8befe774fc7caa02c408af57f30b7eaf0009f542d8998363c8fb55c229ff53b2049ed7259404f6262cac4afd5a7077006b1d136fa1b319c8195d0c3ee9ba2dbe
|
||||
DIST scrcpy-server-v1.20 37139 BLAKE2B d8779c916545c336bc147b5d5f9fd958275eb178e50f00fd68c6504d3cdfd5e7e1fabd8c0f1a27986b786540e396f465bb38602343bc4a0bb1d254181635f799 SHA512 39c8cd7a2879272902c97dc5ec7fba57f8b4b021f44d5f12ab9ee3153056484b0ebe056b7ce55dd9eb7b14a14f2c71604b7eeb6e895ee83d295578b9e096f69f
|
||||
|
Binary file not shown.
@ -1,2 +1,3 @@
|
||||
DIST gnatcoll-core-2020-20200429-19B7C-src.tar.gz 1396475 BLAKE2B 329e7f799ad62dfc6f71ca78a736bfc8c768a576f817d03b0d73e25b6e97ae0de0ad5a055bb800f7b83d7449ef8fe703c2779f73fc13a09bbcc1d3d8cc880fd1 SHA512 320878335f2ea1ce91a7770cc181e9cc228c80b1f7a3926a4e27c3822eb8f58726c62a014e2fa4c3f8699851ea87424be26d619ab4931b2e969e3a2e96e58b73
|
||||
DIST gnatcoll-core-2021-20210518-19ADF-src.tar.gz 1460647 BLAKE2B 42954ed9dfc41914f34973fcfe950b4415af455d8319e802a213994107c7d7a45a6a42b2d260f165fe5ec6589873a7a2c75665b68b97431b13d7694f48273b8c SHA512 6a58920a057dee656df9f64f610f9f1398bc3cbc4ed74a740e8693f2b45da83628c3ce8f76f624bdb101d348603a24bccb47aa770ade1ffbf24da806f4d1de20
|
||||
DIST gnatcoll-core-22.0.0.tar.gz 722642 BLAKE2B e9bc6b322866b086f080096457936f66925cb954533acc04265b1e4c7081fe65d420fbc841b9ad5f4932eb43848803c1bf78a37a6fc47c1ac9d30bbb8eb2e0c9 SHA512 ce3aaa90b339a57eedc070e6451ea8782a87d07ece09823c57179a5e44762349458564bf8d007427a7aba795bc05d744056e3defd6b44698bcc0a8af0c5285e9
|
||||
|
@ -0,0 +1,74 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
ADA_COMPAT=( gnat_202{0..1} )
|
||||
inherit ada multiprocessing
|
||||
|
||||
DESCRIPTION="GNAT Component Collection Core packages"
|
||||
HOMEPAGE="http://libre.adacore.com"
|
||||
SRC_URI="https://github.com/AdaCore/${PN}/archive/refs/tags/v${PV}.tar.gz
|
||||
-> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="+shared static-libs static-pic"
|
||||
|
||||
RDEPEND="
|
||||
|| (
|
||||
>=dev-ada/libgpr-2021[${ADA_USEDEP},shared?,static-libs?,static-pic?]
|
||||
~dev-ada/libgpr-22.0.0[${ADA_USEDEP},shared?,static-libs?,static-pic?]
|
||||
)
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-ada/gprbuild[${ADA_USEDEP}]"
|
||||
|
||||
REQUIRED_USE="${ADA_REQUIRED_USE}"
|
||||
|
||||
PATCHES=( "${FILESDIR}"/${PN}-2018-gentoo.patch )
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed -i \
|
||||
-e "s:@GNATLS@:${GNATLS}:g" \
|
||||
src/gnatcoll-projects.ads \
|
||||
|| die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
emake setup
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
build () {
|
||||
gprbuild -p -m -j$(makeopts_jobs) \
|
||||
-XBUILD=PROD -v -XGNATCOLL_VERSION=${PV} \
|
||||
-XLIBRARY_TYPE=$1 -XXMLADA_BUILD=$* -XGPR_BUILD=$1 \
|
||||
gnatcoll.gpr -cargs:C ${CFLAGS} -cargs:Ada ${ADAFLAGS} || die
|
||||
}
|
||||
if use shared; then
|
||||
build relocatable
|
||||
fi
|
||||
if use static-pic; then
|
||||
build static-pic
|
||||
fi
|
||||
if use static-libs; then
|
||||
build static
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local GNATCOLL_VERSION=${PV}
|
||||
if use shared; then
|
||||
emake GNATCOLL_VERSION=${PV} prefix="${D}"/usr install-relocatable
|
||||
fi
|
||||
if use static-pic; then
|
||||
emake GNATCOLL_VERSION=${PV} prefix="${D}"/usr install-static-pic
|
||||
fi
|
||||
if use static-libs; then
|
||||
emake GNATCOLL_VERSION=${PV} prefix="${D}"/usr install-static
|
||||
fi
|
||||
rm -r "${D}"/usr/share/gpr/manifests || die
|
||||
einstalldocs
|
||||
}
|
Binary file not shown.
@ -0,0 +1,92 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index e734714..b79ff3a 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -474,7 +474,7 @@ set_target_properties(connector PROPERTIES
|
||||
|
||||
|
||||
install(TARGETS connector
|
||||
- CONFIGURATIONS Release RelWithDebInfo
|
||||
+ CONFIGURATIONS Release RelWithDebInfo Gentoo
|
||||
ARCHIVE DESTINATION "${INSTALL_LIB_DIR_STATIC}" COMPONENT XDevAPIDev
|
||||
RUNTIME DESTINATION "${INSTALL_LIB_DIR}" COMPONENT XDevAPIDll
|
||||
LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT XDevAPIDll
|
||||
diff --git a/cdk/cmake/DepFindProtobuf.cmake b/cdk/cmake/DepFindProtobuf.cmake
|
||||
index 414716c..165af4b 100644
|
||||
--- a/cdk/cmake/DepFindProtobuf.cmake
|
||||
+++ b/cdk/cmake/DepFindProtobuf.cmake
|
||||
@@ -52,21 +52,7 @@ if(TARGET ext::protobuf)
|
||||
return()
|
||||
endif()
|
||||
|
||||
-message(STATUS "Setting up Protobuf.")
|
||||
-
|
||||
-# Setup extrnal project that builds protobuf from bundled sources
|
||||
-
|
||||
-add_ext(protobuf)
|
||||
-
|
||||
-# import targets from the external project
|
||||
-# Note: The pb_ targets are created by protobuf/exports.cmake
|
||||
-
|
||||
-add_ext_targets(protobuf
|
||||
- pb-lite pb_libprotobuf-lite
|
||||
- pb-full pb_libprotobuf
|
||||
- protoc pb_protoc
|
||||
-)
|
||||
-
|
||||
+find_package(Protobuf REQUIRED)
|
||||
|
||||
# Standard PROTOBUF_GENERATE_CPP modified to our usage
|
||||
|
||||
@@ -95,7 +81,7 @@ function(mysqlx_protobuf_generate_cpp SRCS HDRS)
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/protobuf/${FIL_WE}.pb.h"
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
-E make_directory "${CMAKE_CURRENT_BINARY_DIR}/protobuf"
|
||||
- COMMAND ext::protoc
|
||||
+ COMMAND ${Protobuf_PROTOC_EXECUTABLE}
|
||||
ARGS --cpp_out "${CMAKE_CURRENT_BINARY_DIR}/protobuf"
|
||||
-I ${ABS_PATH} ${ABS_FIL}
|
||||
#--proto_path=${PROTOBUF_INCLUDE_DIR}
|
||||
diff --git a/cdk/core/CMakeLists.txt b/cdk/core/CMakeLists.txt
|
||||
index 10cae33..3907c9b 100644
|
||||
--- a/cdk/core/CMakeLists.txt
|
||||
+++ b/cdk/core/CMakeLists.txt
|
||||
@@ -45,7 +45,7 @@ add_library(cdk STATIC ${cdk_sources} ${HEADERS})
|
||||
|
||||
target_link_libraries(cdk
|
||||
PUBLIC cdk_mysqlx cdk_parser
|
||||
- PRIVATE ext::pb-lite # required by codecc.cc
|
||||
+ PRIVATE protobuf # required by codecc.cc
|
||||
)
|
||||
|
||||
add_coverage(cdk)
|
||||
diff --git a/cdk/protocol/mysqlx/CMakeLists.txt b/cdk/protocol/mysqlx/CMakeLists.txt
|
||||
index a399401..b04ffa3 100644
|
||||
--- a/cdk/protocol/mysqlx/CMakeLists.txt
|
||||
+++ b/cdk/protocol/mysqlx/CMakeLists.txt
|
||||
@@ -129,11 +129,7 @@ target_include_directories(cdk_proto_mysqlx PRIVATE
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
)
|
||||
|
||||
-if(use_full_protobuf)
|
||||
- target_link_libraries(cdk_proto_mysqlx PRIVATE ext::pb-full)
|
||||
-else()
|
||||
- target_link_libraries(cdk_proto_mysqlx PRIVATE ext::pb-lite)
|
||||
-endif()
|
||||
+target_link_libraries(cdk_proto_mysqlx PRIVATE protobuf)
|
||||
|
||||
target_link_libraries(cdk_proto_mysqlx
|
||||
PRIVATE cdk_foundation ext::zlib ext::lz4 ext::zstd
|
||||
diff --git a/jdbc/CMakeLists.txt b/jdbc/CMakeLists.txt
|
||||
index f4355ed..f24510b 100644
|
||||
--- a/jdbc/CMakeLists.txt
|
||||
+++ b/jdbc/CMakeLists.txt
|
||||
@@ -299,7 +299,7 @@ endif()
|
||||
|
||||
|
||||
install(TARGETS connector-jdbc
|
||||
- CONFIGURATIONS Release RelWithDebInfo
|
||||
+ CONFIGURATIONS Release RelWithDebInfo Gentoo
|
||||
ARCHIVE DESTINATION "${INSTALL_LIB_DIR_STATIC}" COMPONENT JDBCDev
|
||||
RUNTIME DESTINATION "${INSTALL_LIB_DIR}" COMPONENT JDBCDll
|
||||
LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT JDBCDll
|
@ -0,0 +1,44 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
CMAKE_MAKEFILE_GENERATOR=emake
|
||||
inherit cmake
|
||||
|
||||
DESCRIPTION="MySQL database connector for C++ (mimics JDBC 4.0 API)"
|
||||
HOMEPAGE="https://dev.mysql.com/downloads/connector/cpp/"
|
||||
URI_DIR="Connector-C++"
|
||||
SRC_URI="https://dev.mysql.com/get/Downloads/${URI_DIR}/${P}-src.tar.gz"
|
||||
|
||||
LICENSE="Artistic GPL-2"
|
||||
SLOT="0"
|
||||
# -ppc, -sparc for bug #711940
|
||||
KEYWORDS="~amd64 ~arm ~arm64 -ppc ~ppc64 -sparc ~x86"
|
||||
IUSE="+legacy"
|
||||
|
||||
RDEPEND="
|
||||
dev-libs/protobuf:=
|
||||
legacy? (
|
||||
dev-libs/boost:=
|
||||
>=dev-db/mysql-connector-c-8.0.27:=
|
||||
)
|
||||
dev-libs/openssl:0=
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
S="${WORKDIR}/${P}-src"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-8.0.27-fix-build.patch
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DWITH_SSL=system
|
||||
-DWITH_JDBC=$(usex legacy ON OFF)
|
||||
$(usex legacy '-DMYSQLCLIENT_STATIC_BINDING=0' '')
|
||||
$(usex legacy '-DMYSQLCLIENT_STATIC_LINKING=0' '')
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,397 +0,0 @@
|
||||
From c600ec7bcf2696882ffe961e7b158c67aa2e7277 Mon Sep 17 00:00:00 2001
|
||||
From: Jakub Zelenka <bukka@php.net>
|
||||
Date: Sat, 2 Oct 2021 22:53:41 +0100
|
||||
Subject: [PATCH] Fix bug #81026 (PHP-FPM oob R/W in root process leading to
|
||||
priv escalatio)
|
||||
|
||||
The main change is to store scoreboard procs directly to the variable sized
|
||||
array rather than indirectly through the pointer.
|
||||
---
|
||||
sapi/fpm/fpm/fpm_children.c | 14 ++---
|
||||
sapi/fpm/fpm/fpm_request.c | 4 +-
|
||||
sapi/fpm/fpm/fpm_scoreboard.c | 106 ++++++++++++++++++++-------------
|
||||
sapi/fpm/fpm/fpm_scoreboard.h | 11 ++--
|
||||
sapi/fpm/fpm/fpm_status.c | 4 +-
|
||||
sapi/fpm/fpm/fpm_worker_pool.c | 2 +-
|
||||
6 files changed, 81 insertions(+), 60 deletions(-)
|
||||
|
||||
diff --git a/sapi/fpm/fpm/fpm_children.c b/sapi/fpm/fpm/fpm_children.c
|
||||
index fd121372f3..912f77c11a 100644
|
||||
--- a/sapi/fpm/fpm/fpm_children.c
|
||||
+++ b/sapi/fpm/fpm/fpm_children.c
|
||||
@@ -246,7 +246,7 @@ void fpm_children_bury() /* {{{ */
|
||||
|
||||
fpm_child_unlink(child);
|
||||
|
||||
- fpm_scoreboard_proc_free(wp->scoreboard, child->scoreboard_i);
|
||||
+ fpm_scoreboard_proc_free(child);
|
||||
|
||||
fpm_clock_get(&tv1);
|
||||
|
||||
@@ -256,9 +256,9 @@ void fpm_children_bury() /* {{{ */
|
||||
if (!fpm_pctl_can_spawn_children()) {
|
||||
severity = ZLOG_DEBUG;
|
||||
}
|
||||
- zlog(severity, "[pool %s] child %d exited %s after %ld.%06d seconds from start", child->wp->config->name, (int) pid, buf, tv2.tv_sec, (int) tv2.tv_usec);
|
||||
+ zlog(severity, "[pool %s] child %d exited %s after %ld.%06d seconds from start", wp->config->name, (int) pid, buf, tv2.tv_sec, (int) tv2.tv_usec);
|
||||
} else {
|
||||
- zlog(ZLOG_DEBUG, "[pool %s] child %d has been killed by the process management after %ld.%06d seconds from start", child->wp->config->name, (int) pid, tv2.tv_sec, (int) tv2.tv_usec);
|
||||
+ zlog(ZLOG_DEBUG, "[pool %s] child %d has been killed by the process management after %ld.%06d seconds from start", wp->config->name, (int) pid, tv2.tv_sec, (int) tv2.tv_usec);
|
||||
}
|
||||
|
||||
fpm_child_close(child, 1 /* in event_loop */);
|
||||
@@ -324,7 +324,7 @@ static struct fpm_child_s *fpm_resources_prepare(struct fpm_worker_pool_s *wp) /
|
||||
return 0;
|
||||
}
|
||||
|
||||
- if (0 > fpm_scoreboard_proc_alloc(wp->scoreboard, &c->scoreboard_i)) {
|
||||
+ if (0 > fpm_scoreboard_proc_alloc(c)) {
|
||||
fpm_stdio_discard_pipes(c);
|
||||
fpm_child_free(c);
|
||||
return 0;
|
||||
@@ -336,7 +336,7 @@ static struct fpm_child_s *fpm_resources_prepare(struct fpm_worker_pool_s *wp) /
|
||||
|
||||
static void fpm_resources_discard(struct fpm_child_s *child) /* {{{ */
|
||||
{
|
||||
- fpm_scoreboard_proc_free(child->wp->scoreboard, child->scoreboard_i);
|
||||
+ fpm_scoreboard_proc_free(child);
|
||||
fpm_stdio_discard_pipes(child);
|
||||
fpm_child_free(child);
|
||||
}
|
||||
@@ -349,10 +349,10 @@ static void fpm_child_resources_use(struct fpm_child_s *child) /* {{{ */
|
||||
if (wp == child->wp) {
|
||||
continue;
|
||||
}
|
||||
- fpm_scoreboard_free(wp->scoreboard);
|
||||
+ fpm_scoreboard_free(wp);
|
||||
}
|
||||
|
||||
- fpm_scoreboard_child_use(child->wp->scoreboard, child->scoreboard_i, getpid());
|
||||
+ fpm_scoreboard_child_use(child, getpid());
|
||||
fpm_stdio_child_use_pipes(child);
|
||||
fpm_child_free(child);
|
||||
}
|
||||
diff --git a/sapi/fpm/fpm/fpm_request.c b/sapi/fpm/fpm/fpm_request.c
|
||||
index c80aa14462..0a6f6a7cfb 100644
|
||||
--- a/sapi/fpm/fpm/fpm_request.c
|
||||
+++ b/sapi/fpm/fpm/fpm_request.c
|
||||
@@ -285,7 +285,7 @@ int fpm_request_is_idle(struct fpm_child_s *child) /* {{{ */
|
||||
struct fpm_scoreboard_proc_s *proc;
|
||||
|
||||
/* no need in atomicity here */
|
||||
- proc = fpm_scoreboard_proc_get(child->wp->scoreboard, child->scoreboard_i);
|
||||
+ proc = fpm_scoreboard_proc_get_from_child(child);
|
||||
if (!proc) {
|
||||
return 0;
|
||||
}
|
||||
@@ -300,7 +300,7 @@ int fpm_request_last_activity(struct fpm_child_s *child, struct timeval *tv) /*
|
||||
|
||||
if (!tv) return -1;
|
||||
|
||||
- proc = fpm_scoreboard_proc_get(child->wp->scoreboard, child->scoreboard_i);
|
||||
+ proc = fpm_scoreboard_proc_get_from_child(child);
|
||||
if (!proc) {
|
||||
return -1;
|
||||
}
|
||||
diff --git a/sapi/fpm/fpm/fpm_scoreboard.c b/sapi/fpm/fpm/fpm_scoreboard.c
|
||||
index 328f999f0c..7e9da4d684 100644
|
||||
--- a/sapi/fpm/fpm/fpm_scoreboard.c
|
||||
+++ b/sapi/fpm/fpm/fpm_scoreboard.c
|
||||
@@ -6,6 +6,7 @@
|
||||
#include <time.h>
|
||||
|
||||
#include "fpm_config.h"
|
||||
+#include "fpm_children.h"
|
||||
#include "fpm_scoreboard.h"
|
||||
#include "fpm_shm.h"
|
||||
#include "fpm_sockets.h"
|
||||
@@ -23,7 +24,6 @@ static float fpm_scoreboard_tick;
|
||||
int fpm_scoreboard_init_main() /* {{{ */
|
||||
{
|
||||
struct fpm_worker_pool_s *wp;
|
||||
- unsigned int i;
|
||||
|
||||
#ifdef HAVE_TIMES
|
||||
#if (defined(HAVE_SYSCONF) && defined(_SC_CLK_TCK))
|
||||
@@ -40,7 +40,7 @@ int fpm_scoreboard_init_main() /* {{{ */
|
||||
|
||||
|
||||
for (wp = fpm_worker_all_pools; wp; wp = wp->next) {
|
||||
- size_t scoreboard_size, scoreboard_nprocs_size;
|
||||
+ size_t scoreboard_procs_size;
|
||||
void *shm_mem;
|
||||
|
||||
if (wp->config->pm_max_children < 1) {
|
||||
@@ -53,22 +53,15 @@ int fpm_scoreboard_init_main() /* {{{ */
|
||||
return -1;
|
||||
}
|
||||
|
||||
- scoreboard_size = sizeof(struct fpm_scoreboard_s) + (wp->config->pm_max_children) * sizeof(struct fpm_scoreboard_proc_s *);
|
||||
- scoreboard_nprocs_size = sizeof(struct fpm_scoreboard_proc_s) * wp->config->pm_max_children;
|
||||
- shm_mem = fpm_shm_alloc(scoreboard_size + scoreboard_nprocs_size);
|
||||
+ scoreboard_procs_size = sizeof(struct fpm_scoreboard_proc_s) * wp->config->pm_max_children;
|
||||
+ shm_mem = fpm_shm_alloc(sizeof(struct fpm_scoreboard_s) + scoreboard_procs_size);
|
||||
|
||||
if (!shm_mem) {
|
||||
return -1;
|
||||
}
|
||||
- wp->scoreboard = shm_mem;
|
||||
+ wp->scoreboard = shm_mem;
|
||||
+ wp->scoreboard->pm = wp->config->pm;
|
||||
wp->scoreboard->nprocs = wp->config->pm_max_children;
|
||||
- shm_mem += scoreboard_size;
|
||||
-
|
||||
- for (i = 0; i < wp->scoreboard->nprocs; i++, shm_mem += sizeof(struct fpm_scoreboard_proc_s)) {
|
||||
- wp->scoreboard->procs[i] = shm_mem;
|
||||
- }
|
||||
-
|
||||
- wp->scoreboard->pm = wp->config->pm;
|
||||
wp->scoreboard->start_epoch = time(NULL);
|
||||
strlcpy(wp->scoreboard->pool, wp->config->name, sizeof(wp->scoreboard->pool));
|
||||
}
|
||||
@@ -162,28 +155,48 @@ struct fpm_scoreboard_s *fpm_scoreboard_get() /* {{{*/
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
-struct fpm_scoreboard_proc_s *fpm_scoreboard_proc_get(struct fpm_scoreboard_s *scoreboard, int child_index) /* {{{*/
|
||||
+static inline struct fpm_scoreboard_proc_s *fpm_scoreboard_proc_get_ex(
|
||||
+ struct fpm_scoreboard_s *scoreboard, int child_index, unsigned int nprocs) /* {{{*/
|
||||
{
|
||||
if (!scoreboard) {
|
||||
- scoreboard = fpm_scoreboard;
|
||||
+ return NULL;
|
||||
}
|
||||
|
||||
- if (!scoreboard) {
|
||||
+ if (child_index < 0 || (unsigned int)child_index >= nprocs) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
+ return &scoreboard->procs[child_index];
|
||||
+}
|
||||
+/* }}} */
|
||||
+
|
||||
+struct fpm_scoreboard_proc_s *fpm_scoreboard_proc_get(
|
||||
+ struct fpm_scoreboard_s *scoreboard, int child_index) /* {{{*/
|
||||
+{
|
||||
+ if (!scoreboard) {
|
||||
+ scoreboard = fpm_scoreboard;
|
||||
+ }
|
||||
+
|
||||
if (child_index < 0) {
|
||||
child_index = fpm_scoreboard_i;
|
||||
}
|
||||
|
||||
- if (child_index < 0 || (unsigned int)child_index >= scoreboard->nprocs) {
|
||||
- return NULL;
|
||||
- }
|
||||
+ return fpm_scoreboard_proc_get_ex(scoreboard, child_index, scoreboard->nprocs);
|
||||
+}
|
||||
+/* }}} */
|
||||
|
||||
- return scoreboard->procs[child_index];
|
||||
+struct fpm_scoreboard_proc_s *fpm_scoreboard_proc_get_from_child(struct fpm_child_s *child) /* {{{*/
|
||||
+{
|
||||
+ struct fpm_worker_pool_s *wp = child->wp;
|
||||
+ unsigned int nprocs = wp->config->pm_max_children;
|
||||
+ struct fpm_scoreboard_s *scoreboard = wp->scoreboard;
|
||||
+ int child_index = child->scoreboard_i;
|
||||
+
|
||||
+ return fpm_scoreboard_proc_get_ex(scoreboard, child_index, nprocs);
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
+
|
||||
struct fpm_scoreboard_s *fpm_scoreboard_acquire(struct fpm_scoreboard_s *scoreboard, int nohang) /* {{{ */
|
||||
{
|
||||
struct fpm_scoreboard_s *s;
|
||||
@@ -234,28 +247,28 @@ void fpm_scoreboard_proc_release(struct fpm_scoreboard_proc_s *proc) /* {{{ */
|
||||
proc->lock = 0;
|
||||
}
|
||||
|
||||
-void fpm_scoreboard_free(struct fpm_scoreboard_s *scoreboard) /* {{{ */
|
||||
+void fpm_scoreboard_free(struct fpm_worker_pool_s *wp) /* {{{ */
|
||||
{
|
||||
- size_t scoreboard_size, scoreboard_nprocs_size;
|
||||
+ size_t scoreboard_procs_size;
|
||||
+ struct fpm_scoreboard_s *scoreboard = wp->scoreboard;
|
||||
|
||||
if (!scoreboard) {
|
||||
zlog(ZLOG_ERROR, "**scoreboard is NULL");
|
||||
return;
|
||||
}
|
||||
|
||||
- scoreboard_size = sizeof(struct fpm_scoreboard_s) + (scoreboard->nprocs) * sizeof(struct fpm_scoreboard_proc_s *);
|
||||
- scoreboard_nprocs_size = sizeof(struct fpm_scoreboard_proc_s) * scoreboard->nprocs;
|
||||
+ scoreboard_procs_size = sizeof(struct fpm_scoreboard_proc_s) * wp->config->pm_max_children;
|
||||
|
||||
- fpm_shm_free(scoreboard, scoreboard_size + scoreboard_nprocs_size);
|
||||
+ fpm_shm_free(scoreboard, sizeof(struct fpm_scoreboard_s) + scoreboard_procs_size);
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
-void fpm_scoreboard_child_use(struct fpm_scoreboard_s *scoreboard, int child_index, pid_t pid) /* {{{ */
|
||||
+void fpm_scoreboard_child_use(struct fpm_child_s *child, pid_t pid) /* {{{ */
|
||||
{
|
||||
struct fpm_scoreboard_proc_s *proc;
|
||||
- fpm_scoreboard = scoreboard;
|
||||
- fpm_scoreboard_i = child_index;
|
||||
- proc = fpm_scoreboard_proc_get(scoreboard, child_index);
|
||||
+ fpm_scoreboard = child->wp->scoreboard;
|
||||
+ fpm_scoreboard_i = child->scoreboard_i;
|
||||
+ proc = fpm_scoreboard_proc_get_from_child(child);
|
||||
if (!proc) {
|
||||
return;
|
||||
}
|
||||
@@ -264,18 +277,22 @@ void fpm_scoreboard_child_use(struct fpm_scoreboard_s *scoreboard, int child_ind
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
-void fpm_scoreboard_proc_free(struct fpm_scoreboard_s *scoreboard, int child_index) /* {{{ */
|
||||
+void fpm_scoreboard_proc_free(struct fpm_child_s *child) /* {{{ */
|
||||
{
|
||||
+ struct fpm_worker_pool_s *wp = child->wp;
|
||||
+ struct fpm_scoreboard_s *scoreboard = wp->scoreboard;
|
||||
+ int child_index = child->scoreboard_i;
|
||||
+
|
||||
if (!scoreboard) {
|
||||
return;
|
||||
}
|
||||
|
||||
- if (child_index < 0 || (unsigned int)child_index >= scoreboard->nprocs) {
|
||||
+ if (child_index < 0 || child_index >= wp->config->pm_max_children) {
|
||||
return;
|
||||
}
|
||||
|
||||
- if (scoreboard->procs[child_index] && scoreboard->procs[child_index]->used > 0) {
|
||||
- memset(scoreboard->procs[child_index], 0, sizeof(struct fpm_scoreboard_proc_s));
|
||||
+ if (scoreboard->procs[child_index].used > 0) {
|
||||
+ memset(&scoreboard->procs[child_index], 0, sizeof(struct fpm_scoreboard_proc_s));
|
||||
}
|
||||
|
||||
/* set this slot as free to avoid search on next alloc */
|
||||
@@ -283,41 +300,44 @@ void fpm_scoreboard_proc_free(struct fpm_scoreboard_s *scoreboard, int child_ind
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
-int fpm_scoreboard_proc_alloc(struct fpm_scoreboard_s *scoreboard, int *child_index) /* {{{ */
|
||||
+int fpm_scoreboard_proc_alloc(struct fpm_child_s *child) /* {{{ */
|
||||
{
|
||||
int i = -1;
|
||||
+ struct fpm_worker_pool_s *wp = child->wp;
|
||||
+ struct fpm_scoreboard_s *scoreboard = wp->scoreboard;
|
||||
+ int nprocs = wp->config->pm_max_children;
|
||||
|
||||
- if (!scoreboard || !child_index) {
|
||||
+ if (!scoreboard) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
/* first try the slot which is supposed to be free */
|
||||
- if (scoreboard->free_proc >= 0 && (unsigned int)scoreboard->free_proc < scoreboard->nprocs) {
|
||||
- if (scoreboard->procs[scoreboard->free_proc] && !scoreboard->procs[scoreboard->free_proc]->used) {
|
||||
+ if (scoreboard->free_proc >= 0 && scoreboard->free_proc < nprocs) {
|
||||
+ if (!scoreboard->procs[scoreboard->free_proc].used) {
|
||||
i = scoreboard->free_proc;
|
||||
}
|
||||
}
|
||||
|
||||
if (i < 0) { /* the supposed free slot is not, let's search for a free slot */
|
||||
zlog(ZLOG_DEBUG, "[pool %s] the proc->free_slot was not free. Let's search", scoreboard->pool);
|
||||
- for (i = 0; i < (int)scoreboard->nprocs; i++) {
|
||||
- if (scoreboard->procs[i] && !scoreboard->procs[i]->used) { /* found */
|
||||
+ for (i = 0; i < nprocs; i++) {
|
||||
+ if (!scoreboard->procs[i].used) { /* found */
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* no free slot */
|
||||
- if (i < 0 || i >= (int)scoreboard->nprocs) {
|
||||
+ if (i < 0 || i >= nprocs) {
|
||||
zlog(ZLOG_ERROR, "[pool %s] no free scoreboard slot", scoreboard->pool);
|
||||
return -1;
|
||||
}
|
||||
|
||||
- scoreboard->procs[i]->used = 1;
|
||||
- *child_index = i;
|
||||
+ scoreboard->procs[i].used = 1;
|
||||
+ child->scoreboard_i = i;
|
||||
|
||||
/* supposed next slot is free */
|
||||
- if (i + 1 >= (int)scoreboard->nprocs) {
|
||||
+ if (i + 1 >= nprocs) {
|
||||
scoreboard->free_proc = 0;
|
||||
} else {
|
||||
scoreboard->free_proc = i + 1;
|
||||
diff --git a/sapi/fpm/fpm/fpm_scoreboard.h b/sapi/fpm/fpm/fpm_scoreboard.h
|
||||
index 1fecde1d0f..9d5981e1c7 100644
|
||||
--- a/sapi/fpm/fpm/fpm_scoreboard.h
|
||||
+++ b/sapi/fpm/fpm/fpm_scoreboard.h
|
||||
@@ -63,7 +63,7 @@ struct fpm_scoreboard_s {
|
||||
unsigned int nprocs;
|
||||
int free_proc;
|
||||
unsigned long int slow_rq;
|
||||
- struct fpm_scoreboard_proc_s *procs[];
|
||||
+ struct fpm_scoreboard_proc_s procs[];
|
||||
};
|
||||
|
||||
int fpm_scoreboard_init_main();
|
||||
@@ -72,18 +72,19 @@ int fpm_scoreboard_init_child(struct fpm_worker_pool_s *wp);
|
||||
void fpm_scoreboard_update(int idle, int active, int lq, int lq_len, int requests, int max_children_reached, int slow_rq, int action, struct fpm_scoreboard_s *scoreboard);
|
||||
struct fpm_scoreboard_s *fpm_scoreboard_get();
|
||||
struct fpm_scoreboard_proc_s *fpm_scoreboard_proc_get(struct fpm_scoreboard_s *scoreboard, int child_index);
|
||||
+struct fpm_scoreboard_proc_s *fpm_scoreboard_proc_get_from_child(struct fpm_child_s *child);
|
||||
|
||||
struct fpm_scoreboard_s *fpm_scoreboard_acquire(struct fpm_scoreboard_s *scoreboard, int nohang);
|
||||
void fpm_scoreboard_release(struct fpm_scoreboard_s *scoreboard);
|
||||
struct fpm_scoreboard_proc_s *fpm_scoreboard_proc_acquire(struct fpm_scoreboard_s *scoreboard, int child_index, int nohang);
|
||||
void fpm_scoreboard_proc_release(struct fpm_scoreboard_proc_s *proc);
|
||||
|
||||
-void fpm_scoreboard_free(struct fpm_scoreboard_s *scoreboard);
|
||||
+void fpm_scoreboard_free(struct fpm_worker_pool_s *wp);
|
||||
|
||||
-void fpm_scoreboard_child_use(struct fpm_scoreboard_s *scoreboard, int child_index, pid_t pid);
|
||||
+void fpm_scoreboard_child_use(struct fpm_child_s *child, pid_t pid);
|
||||
|
||||
-void fpm_scoreboard_proc_free(struct fpm_scoreboard_s *scoreboard, int child_index);
|
||||
-int fpm_scoreboard_proc_alloc(struct fpm_scoreboard_s *scoreboard, int *child_index);
|
||||
+void fpm_scoreboard_proc_free(struct fpm_child_s *child);
|
||||
+int fpm_scoreboard_proc_alloc(struct fpm_child_s *child);
|
||||
|
||||
#ifdef HAVE_TIMES
|
||||
float fpm_scoreboard_get_tick();
|
||||
diff --git a/sapi/fpm/fpm/fpm_status.c b/sapi/fpm/fpm/fpm_status.c
|
||||
index 36d2240635..de8db9d61a 100644
|
||||
--- a/sapi/fpm/fpm/fpm_status.c
|
||||
+++ b/sapi/fpm/fpm/fpm_status.c
|
||||
@@ -498,10 +498,10 @@ int fpm_status_handle_request(void) /* {{{ */
|
||||
|
||||
first = 1;
|
||||
for (i=0; i<scoreboard_p->nprocs; i++) {
|
||||
- if (!scoreboard_p->procs[i] || !scoreboard_p->procs[i]->used) {
|
||||
+ if (!scoreboard_p->procs[i].used) {
|
||||
continue;
|
||||
}
|
||||
- proc = *scoreboard_p->procs[i];
|
||||
+ proc = scoreboard_p->procs[i];
|
||||
|
||||
if (first) {
|
||||
first = 0;
|
||||
diff --git a/sapi/fpm/fpm/fpm_worker_pool.c b/sapi/fpm/fpm/fpm_worker_pool.c
|
||||
index d04528f4e0..65a9b226b1 100644
|
||||
--- a/sapi/fpm/fpm/fpm_worker_pool.c
|
||||
+++ b/sapi/fpm/fpm/fpm_worker_pool.c
|
||||
@@ -54,7 +54,7 @@ static void fpm_worker_pool_cleanup(int which, void *arg) /* {{{ */
|
||||
fpm_worker_pool_config_free(wp->config);
|
||||
fpm_children_free(wp->children);
|
||||
if ((which & FPM_CLEANUP_CHILD) == 0 && fpm_globals.parent_pid == getpid()) {
|
||||
- fpm_scoreboard_free(wp->scoreboard);
|
||||
+ fpm_scoreboard_free(wp);
|
||||
}
|
||||
fpm_worker_pool_free(wp);
|
||||
}
|
||||
--
|
||||
2.25.1
|
||||
|
@ -0,0 +1,348 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
WANT_LIBTOOL="none"
|
||||
|
||||
inherit autotools check-reqs flag-o-matic multiprocessing pax-utils \
|
||||
python-utils-r1 toolchain-funcs verify-sig
|
||||
|
||||
MY_PV=${PV/_rc/rc}
|
||||
MY_P="Python-${MY_PV%_p*}"
|
||||
PYVER=$(ver_cut 1-2)
|
||||
PATCHSET="python-gentoo-patches-${MY_PV}"
|
||||
|
||||
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
|
||||
HOMEPAGE="https://www.python.org/"
|
||||
SRC_URI="https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz
|
||||
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
|
||||
verify-sig? (
|
||||
https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz.asc
|
||||
)"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="PSF-2"
|
||||
SLOT="${PYVER}"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
IUSE="bluetooth build examples gdbm hardened +ncurses +readline +sqlite +ssl test tk wininst +xml"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# Do not add a dependency on dev-lang/python to this ebuild.
|
||||
# If you need to apply a patch which requires python for bootstrapping, please
|
||||
# run the bootstrap code on your dev box and include the results in the
|
||||
# patchset. See bug 447752.
|
||||
|
||||
RDEPEND="app-arch/bzip2:=
|
||||
app-arch/xz-utils:=
|
||||
dev-libs/libffi:=
|
||||
sys-apps/util-linux:=
|
||||
>=sys-libs/zlib-1.1.3:=
|
||||
virtual/libcrypt:=
|
||||
virtual/libintl
|
||||
gdbm? ( sys-libs/gdbm:=[berkdb] )
|
||||
ncurses? ( >=sys-libs/ncurses-5.2:= )
|
||||
readline? ( >=sys-libs/readline-4.1:= )
|
||||
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
|
||||
ssl? ( >=dev-libs/openssl-1.1.1:= )
|
||||
tk? (
|
||||
>=dev-lang/tcl-8.0:=
|
||||
>=dev-lang/tk-8.0:=
|
||||
dev-tcltk/blt:=
|
||||
dev-tcltk/tix
|
||||
)
|
||||
xml? ( >=dev-libs/expat-2.1:= )"
|
||||
# bluetooth requires headers from bluez
|
||||
DEPEND="${RDEPEND}
|
||||
bluetooth? ( net-wireless/bluez )
|
||||
test? ( app-arch/xz-utils[extra-filters(+)] )"
|
||||
BDEPEND="
|
||||
virtual/awk
|
||||
virtual/pkgconfig
|
||||
sys-devel/autoconf-archive
|
||||
verify-sig? ( app-crypt/openpgp-keys-python )
|
||||
!sys-devel/gcc[libffi(-)]"
|
||||
RDEPEND+=" !build? ( app-misc/mime-types )"
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/python.org.asc
|
||||
|
||||
# large file tests involve a 2.5G file being copied (duplicated)
|
||||
CHECKREQS_DISK_BUILD=5500M
|
||||
|
||||
pkg_pretend() {
|
||||
use test && check-reqs_pkg_pretend
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
use test && check-reqs_pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if use verify-sig; then
|
||||
verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc}
|
||||
fi
|
||||
default
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Ensure that internal copies of expat, libffi and zlib are not used.
|
||||
rm -fr Modules/expat || die
|
||||
rm -fr Modules/_ctypes/libffi* || die
|
||||
rm -fr Modules/zlib || die
|
||||
|
||||
local PATCHES=(
|
||||
"${WORKDIR}/${PATCHSET}"
|
||||
)
|
||||
|
||||
default
|
||||
|
||||
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
|
||||
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
|
||||
|
||||
# force correct number of jobs
|
||||
# https://bugs.gentoo.org/737660
|
||||
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
|
||||
sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
|
||||
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local disable
|
||||
# disable automagic bluetooth headers detection
|
||||
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
|
||||
use gdbm || disable+=" gdbm"
|
||||
use ncurses || disable+=" _curses _curses_panel"
|
||||
use readline || disable+=" readline"
|
||||
use sqlite || disable+=" _sqlite3"
|
||||
use ssl || export PYTHON_DISABLE_SSL="1"
|
||||
use tk || disable+=" _tkinter"
|
||||
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
|
||||
export PYTHON_DISABLE_MODULES="${disable}"
|
||||
|
||||
if ! use xml; then
|
||||
ewarn "You have configured Python without XML support."
|
||||
ewarn "This is NOT a recommended configuration as you"
|
||||
ewarn "may face problems parsing any XML documents."
|
||||
fi
|
||||
|
||||
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
|
||||
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
|
||||
fi
|
||||
|
||||
if [[ "$(gcc-major-version)" -ge 4 ]]; then
|
||||
append-flags -fwrapv
|
||||
fi
|
||||
|
||||
filter-flags -malign-double
|
||||
|
||||
# https://bugs.gentoo.org/show_bug.cgi?id=50309
|
||||
if is-flagq -O3; then
|
||||
is-flagq -fstack-protector-all && replace-flags -O3 -O2
|
||||
use hardened && replace-flags -O3 -O2
|
||||
fi
|
||||
|
||||
# https://bugs.gentoo.org/700012
|
||||
if is-flagq -flto || is-flagq '-flto=*'; then
|
||||
append-cflags $(test-flags-CC -ffat-lto-objects)
|
||||
fi
|
||||
|
||||
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
|
||||
tc-export CXX
|
||||
|
||||
# Fix implicit declarations on cross and prefix builds. Bug #674070.
|
||||
use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
|
||||
|
||||
local dbmliborder
|
||||
if use gdbm; then
|
||||
dbmliborder+="${dbmliborder:+:}gdbm"
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
# glibc-2.30 removes it; since we can't cleanly force-rebuild
|
||||
# Python on glibc upgrade, remove it proactively to give
|
||||
# a chance for users rebuilding python before glibc
|
||||
ac_cv_header_stropts_h=no
|
||||
|
||||
--enable-shared
|
||||
--enable-ipv6
|
||||
--infodir='${prefix}/share/info'
|
||||
--mandir='${prefix}/share/man'
|
||||
--with-computed-gotos
|
||||
--with-dbmliborder="${dbmliborder}"
|
||||
--with-libc=
|
||||
--enable-loadable-sqlite-extensions
|
||||
--without-ensurepip
|
||||
--with-system-expat
|
||||
--with-system-ffi
|
||||
)
|
||||
|
||||
OPT="" econf "${myeconfargs[@]}"
|
||||
|
||||
if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
|
||||
eerror "configure has detected that the sem_open function is broken."
|
||||
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
|
||||
die "Broken sem_open function (bug 496328)"
|
||||
fi
|
||||
}
|
||||
|
||||
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
|
||||
|
||||
emake CPPFLAGS= CFLAGS= LDFLAGS=
|
||||
|
||||
# Work around bug 329499. See also bug 413751 and 457194.
|
||||
if has_version dev-libs/libffi[pax-kernel]; then
|
||||
pax-mark E python
|
||||
else
|
||||
pax-mark m python
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Tests will not work when cross compiling.
|
||||
if tc-is-cross-compiler; then
|
||||
elog "Disabling tests due to crosscompiling."
|
||||
return
|
||||
fi
|
||||
|
||||
# Skip failing tests.
|
||||
local skipped_tests="gdb"
|
||||
|
||||
for test in ${skipped_tests}; do
|
||||
mv "${S}"/Lib/test/test_${test}.py "${T}"
|
||||
done
|
||||
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
|
||||
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
|
||||
|
||||
emake test EXTRATESTOPTS="-u-network -j${jobs}" \
|
||||
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
|
||||
local result=$?
|
||||
|
||||
for test in ${skipped_tests}; do
|
||||
mv "${T}/test_${test}.py" "${S}"/Lib/test
|
||||
done
|
||||
|
||||
elog "The following tests have been skipped:"
|
||||
for test in ${skipped_tests}; do
|
||||
elog "test_${test}.py"
|
||||
done
|
||||
|
||||
elog "If you would like to run them, you may:"
|
||||
elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
|
||||
elog "and run the tests separately."
|
||||
|
||||
if [[ ${result} -ne 0 ]]; then
|
||||
die "emake test failed"
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local libdir=${ED}/usr/lib/python${PYVER}
|
||||
|
||||
emake DESTDIR="${D}" altinstall
|
||||
|
||||
# Remove static library
|
||||
rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
|
||||
|
||||
sed \
|
||||
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
|
||||
-e "s/\(PY_LDFLAGS=\).*/\1/" \
|
||||
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
|
||||
|
||||
# Fix collisions between different slots of Python.
|
||||
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
|
||||
|
||||
# Cheap hack to get version with ABIFLAGS
|
||||
local abiver=$(cd "${ED}/usr/include"; echo python*)
|
||||
if [[ ${abiver} != python${PYVER} ]]; then
|
||||
# Replace python3.X with a symlink to python3.Xm
|
||||
rm "${ED}/usr/bin/python${PYVER}" || die
|
||||
dosym "${abiver}" "/usr/bin/python${PYVER}"
|
||||
# Create python3.X-config symlink
|
||||
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
|
||||
# Create python-3.5m.pc symlink
|
||||
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
|
||||
fi
|
||||
|
||||
# python seems to get rebuilt in src_install (bug 569908)
|
||||
# Work around it for now.
|
||||
if has_version dev-libs/libffi[pax-kernel]; then
|
||||
pax-mark E "${ED}/usr/bin/${abiver}"
|
||||
else
|
||||
pax-mark m "${ED}/usr/bin/${abiver}"
|
||||
fi
|
||||
|
||||
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
|
||||
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
|
||||
|
||||
dodoc Misc/{ACKS,HISTORY,NEWS}
|
||||
|
||||
if use examples; then
|
||||
docinto examples
|
||||
find Tools -name __pycache__ -exec rm -fr {} + || die
|
||||
dodoc -r Tools
|
||||
fi
|
||||
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
|
||||
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
|
||||
emake --no-print-directory -s -f - 2>/dev/null)
|
||||
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
|
||||
|
||||
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
|
||||
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
|
||||
sed \
|
||||
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
|
||||
-e "s:@PYDOC@:pydoc${PYVER}:" \
|
||||
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
|
||||
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
|
||||
|
||||
local -x EPYTHON=python${PYVER}
|
||||
# if not using a cross-compiler, use the fresh binary
|
||||
if ! tc-is-cross-compiler; then
|
||||
local -x PYTHON=./python
|
||||
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
|
||||
else
|
||||
local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
|
||||
fi
|
||||
|
||||
echo "EPYTHON='${EPYTHON}'" > epython.py || die
|
||||
python_domodule epython.py
|
||||
|
||||
# python-exec wrapping support
|
||||
local pymajor=${PYVER%.*}
|
||||
local scriptdir=${D}$(python_get_scriptdir)
|
||||
mkdir -p "${scriptdir}" || die
|
||||
# python and pythonX
|
||||
ln -s "../../../bin/${abiver}" \
|
||||
"${scriptdir}/python${pymajor}" || die
|
||||
ln -s "python${pymajor}" "${scriptdir}/python" || die
|
||||
# python-config and pythonX-config
|
||||
# note: we need to create a wrapper rather than symlinking it due
|
||||
# to some random dirname(argv[0]) magic performed by python-config
|
||||
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
|
||||
#!/bin/sh
|
||||
exec "${abiver}-config" "\${@}"
|
||||
EOF
|
||||
chmod +x "${scriptdir}/python${pymajor}-config" || die
|
||||
ln -s "python${pymajor}-config" \
|
||||
"${scriptdir}/python-config" || die
|
||||
# 2to3, pydoc
|
||||
ln -s "../../../bin/2to3-${PYVER}" \
|
||||
"${scriptdir}/2to3" || die
|
||||
ln -s "../../../bin/pydoc${PYVER}" \
|
||||
"${scriptdir}/pydoc" || die
|
||||
# idle
|
||||
if use tk; then
|
||||
ln -s "../../../bin/idle${PYVER}" \
|
||||
"${scriptdir}/idle" || die
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -1,2 +1,4 @@
|
||||
DIST cudnn-10.2-linux-x64-v8.2.4.15.tgz 1010215841 BLAKE2B 582d06f70e537a28527a5d9a39c7a7d9debf832c972c6a318d70b961aa5402f108234f920512acdcc6a56aa715c2aedd9d6c08ff9469bed05698a6a0431b7b29 SHA512 bc83bb02e53b111486ff5a028f3d4866e47c75c2c0cc3271f6d8c647ca3aad8234c635f4bb24ed4305c67017a64b841be981334c3b08d2ec4f3442180c2dd9f4
|
||||
DIST cudnn-10.2-linux-x64-v8.3.0.98.tgz 742140405 BLAKE2B 648849c041e2e7d87a8d804a35d9e0fa1d9a454977aaec4545386ee0c8b57c502b98583a357a70b7096905f82c2a8dadc252f8b363a7975d572167f4f7f2f121 SHA512 e0c6967663bdaf0e7539b550f1aa84aaf35efe6192fc524d78f6a1bc980a79b05eeb0693e9548f4d3433864f88137ce2ff1489d7dd0e8cf883000d6c7b9a62bb
|
||||
DIST cudnn-11.4-linux-x64-v8.2.4.15.tgz 1876975307 BLAKE2B 50ad2f1de631c3e6e476b25283fd7f80382e7c311694512cf0c6e8b52c9d50513dc6179c8e99907200d98e510a77adfa42caf6cf76892977c70347e102f6fe00 SHA512 3a9438952be0396f68703dc5ccb77b38445589e4f2c2ce3fb628533d0a78e425958f7825558086873f93ee8dcdcb31329e2362f6427aec5ec797e78e280f470b
|
||||
DIST cudnn-11.5-linux-x64-v8.3.0.98.tgz 1477554466 BLAKE2B cd8b7bdca8ef08af971d56b43b80f0fe721f76cb744bfef43a9369f81a2533b00651f2c89e9084026991a1cc1c6db13b55914d966b723edbfc104c3e7626a087 SHA512 46af7d47b40a2c0ee8d5b893514755f803b5a0c7426b8d88b258e71ae6312cb553cba7dd68f63e2060849c70713330d52f93f56121f663213c16030d39b2fc1d
|
||||
|
@ -0,0 +1,35 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="NVIDIA Accelerated Deep Learning on GPU library"
|
||||
HOMEPAGE="https://developer.nvidia.com/cuDNN"
|
||||
SRC_URI="
|
||||
cuda10-2? ( cudnn-10.2-linux-x64-v${PV}.tgz )
|
||||
cuda11-5? ( cudnn-11.5-linux-x64-v${PV}.tgz )"
|
||||
S="${WORKDIR}"
|
||||
|
||||
LICENSE="NVIDIA-cuDNN"
|
||||
SLOT="0/8"
|
||||
KEYWORDS="~amd64 ~amd64-linux"
|
||||
IUSE="cuda10-2 +cuda11-5"
|
||||
REQUIRED_USE="^^ ( cuda10-2 cuda11-5 )"
|
||||
RESTRICT="fetch"
|
||||
|
||||
RDEPEND="
|
||||
cuda10-2? ( =dev-util/nvidia-cuda-toolkit-10.2* )
|
||||
cuda11-5? ( =dev-util/nvidia-cuda-toolkit-11.5* )"
|
||||
|
||||
QA_PREBUILT="*"
|
||||
|
||||
src_install() {
|
||||
insinto /opt/cuda
|
||||
doins cuda/NVIDIA_SLA_cuDNN_Support.txt
|
||||
|
||||
insinto /opt/cuda/targets/x86_64-linux
|
||||
doins -r cuda/include
|
||||
|
||||
insinto /opt/cuda/targets/x86_64-linux/lib
|
||||
doins -r cuda/lib64/.
|
||||
}
|
@ -0,0 +1 @@
|
||||
DIST libphonenumber-8.12.37.tar.gz 11005274 BLAKE2B 2bcffe898ca7aa667a35e9a7340a54f880cdb9f290e807e9ff7f6ee778df83dd80023703595781a97355a43a8096bdc957a7f79336b5bf9d892ada26e35ae025 SHA512 420ea841679c1ff420289b3fea0bb6d86d4d1e99525fce00cc90025c8ade99e56e2dcbb7fca64190437ff0a889cdc7373f182e7699db20a072c32e984b8dff33
|
@ -0,0 +1,54 @@
|
||||
Upstream: no, I probably should, although this patch isn't nice, but
|
||||
neither is their cmake code
|
||||
|
||||
From a0c72f32b3c318f66975400af81b9b44d8a8d9c7 Mon Sep 17 00:00:00 2001
|
||||
From: Heiko Becker <heirecka@exherbo.org>
|
||||
Date: Wed, 27 Mar 2019 21:07:22 +0100
|
||||
Subject: [PATCH] Fix build with BUILD_STATIC_LIB=ON
|
||||
|
||||
---
|
||||
CMakeLists.txt | 14 +++++++++++---
|
||||
1 file changed, 11 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 38ce1f50..dd9399be 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -441,7 +441,9 @@ if (${BUILD_GEOCODER} STREQUAL "ON")
|
||||
list (APPEND GEOCODER_DEPS ${COMMON_DEPS})
|
||||
# Note that the subset of base/ on which the geocoder relies is implemented
|
||||
# on top of Boost header-only libraries (e.g. scoped_ptr.hpp).
|
||||
- target_link_libraries (geocoding ${LIBRARY_DEPS})
|
||||
+ if (${BUILD_STATIC_LIB} STREQUAL "ON")
|
||||
+ target_link_libraries (geocoding ${LIBRARY_DEPS})
|
||||
+ endif()
|
||||
target_link_libraries (geocoding-shared ${LIBRARY_DEPS})
|
||||
endif ()
|
||||
|
||||
@@ -599,7 +601,9 @@ if (BUILD_SHARED_LIB)
|
||||
endif ()
|
||||
|
||||
if (${BUILD_GEOCODER} STREQUAL "ON")
|
||||
- install (TARGETS geocoding LIBRARY DESTINATION ${LIBDIR} ARCHIVE DESTINATION ${LIBDIR})
|
||||
+ if (${BUILD_STATIC_LIB} STREQUAL "ON")
|
||||
+ install (TARGETS geocoding LIBRARY DESTINATION ${LIBDIR} ARCHIVE DESTINATION ${LIBDIR})
|
||||
+ endif()
|
||||
install (TARGETS geocoding-shared LIBRARY DESTINATION ${LIBDIR} ARCHIVE
|
||||
DESTINATION ${LIBDIR})
|
||||
endif ()
|
||||
@@ -611,7 +615,11 @@ if (${BUILD_GEOCODER} STREQUAL "ON")
|
||||
geocoding_test_program
|
||||
"test/phonenumbers/geocoding/geocoding_test_program.cc"
|
||||
)
|
||||
- target_link_libraries (geocoding_test_program geocoding phonenumber)
|
||||
+ if (${BUILD_STATIC_LIB} STREQUAL "ON")
|
||||
+ target_link_libraries (geocoding_test_program geocoding phonenumber)
|
||||
+ else ()
|
||||
+ target_link_libraries (geocoding_test_program geocoding-shared phonenumber-shared)
|
||||
+ endif ()
|
||||
endif ()
|
||||
|
||||
# Build an RPM
|
||||
--
|
||||
2.21.0
|
||||
|
@ -0,0 +1,66 @@
|
||||
From b3b0e96e0f62148ee80075fb9d35fe15f4e32612 Mon Sep 17 00:00:00 2001
|
||||
From: Andreas Sturmlechner <asturm@gentoo.org>
|
||||
Date: Mon, 15 Nov 2021 19:13:37 +0100
|
||||
Subject: [PATCH] Add BUILD_TESTING option
|
||||
|
||||
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
||||
---
|
||||
cpp/CMakeLists.txt | 9 ++++++++-
|
||||
1 file changed, 8 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 44db6834..a97da698 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -90,6 +90,7 @@ option ("USE_STD_MAP" "Force the use of std::map" "OFF")
|
||||
option ("BUILD_STATIC_LIB" "Build static libraries" "ON")
|
||||
option ("USE_STDMUTEX" "Use C++ 2011 std::mutex for multi-threading" "OFF")
|
||||
option ("USE_POSIX_THREAD" "Use Posix api for multi-threading" "OFF")
|
||||
+option ("BUILD_TESTING" "Build unit tests (gtest sources are needed)" "ON")
|
||||
|
||||
if (${USE_ALTERNATE_FORMATS} STREQUAL "ON")
|
||||
add_definitions ("-DI18N_PHONENUMBERS_USE_ALTERNATE_FORMATS")
|
||||
@@ -121,7 +122,9 @@ if (${USE_BOOST} STREQUAL "OFF" AND ${USE_STDMUTEX} STREQUAL "OFF")
|
||||
find_package (Threads)
|
||||
endif()
|
||||
|
||||
-find_or_build_gtest ()
|
||||
+if (BUILD_TESTING)
|
||||
+ find_or_build_gtest ()
|
||||
+endif()
|
||||
|
||||
if (${USE_RE2} STREQUAL "ON")
|
||||
find_required_library (RE2 re2/re2.h re2 "Google RE2")
|
||||
@@ -492,11 +495,13 @@ if (${BUILD_GEOCODER} STREQUAL "ON")
|
||||
endif ()
|
||||
|
||||
# Build a specific library for testing purposes.
|
||||
+if (BUILD_TESTING)
|
||||
add_library (phonenumber_testing STATIC ${TESTING_LIBRARY_SOURCES})
|
||||
if (${BUILD_GEOCODER} STREQUAL "ON")
|
||||
add_dependencies (phonenumber_testing generate_geocoding_data)
|
||||
endif ()
|
||||
target_link_libraries (phonenumber_testing ${LIBRARY_DEPS})
|
||||
+endif()
|
||||
|
||||
if (${BUILD_GEOCODER} STREQUAL "ON")
|
||||
# Test geocoding data cpp files generation.
|
||||
@@ -551,6 +556,7 @@ if (${USE_ICU_REGEXP} STREQUAL "ON")
|
||||
endif ()
|
||||
|
||||
# Build the testing binary.
|
||||
+if (BUILD_TESTING)
|
||||
include_directories ("test")
|
||||
add_executable (libphonenumber_test ${TEST_SOURCES})
|
||||
set (TEST_LIBS phonenumber_testing ${GTEST_LIB})
|
||||
@@ -575,6 +581,7 @@ else ()
|
||||
DEPENDS libphonenumber_test
|
||||
)
|
||||
endif ()
|
||||
+endif ()
|
||||
|
||||
# Install rules.
|
||||
install (FILES
|
||||
--
|
||||
2.33.1
|
||||
|
@ -0,0 +1,48 @@
|
||||
# Copyright 2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
CMAKE_MAKEFILE_GENERATOR="emake" # broken w/ ninja
|
||||
inherit cmake
|
||||
|
||||
DESCRIPTION="Library for parsing, formatting, and validating international phone numbers"
|
||||
HOMEPAGE="https://github.com/google/libphonenumber"
|
||||
SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${P}/cpp"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="test"
|
||||
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
DEPEND="
|
||||
dev-libs/icu:=
|
||||
dev-libs/protobuf:=
|
||||
dev-libs/boost:=
|
||||
"
|
||||
RDEPEND="${DEPEND}"
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
test? ( dev-cpp/gtest )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
# it is either this, or disable BUILD_GEOCODER
|
||||
# https://github.com/google/libphonenumber/pull/2556
|
||||
"${FILESDIR}"/${P}-cmake.patch
|
||||
# see also https://github.com/google/libphonenumber/pull/2459
|
||||
# using a stripped-down patch w/ BUILD_TESTING
|
||||
"${FILESDIR}"/${P}-testing.patch
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DBUILD_STATIC_LIB=OFF
|
||||
-DBUILD_TESTING=OFF
|
||||
-DREGENERATE_METADATA=OFF # avoid JRE dependency
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>kde@gentoo.org</email>
|
||||
<name>Gentoo KDE Project</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<bugs-to>https://issuetracker.google.com/issues?q=componentid:192347</bugs-to>
|
||||
<remote-id type="github">google/libphonenumber</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
@ -0,0 +1,15 @@
|
||||
https://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commitdiff;h=cca32830b57e91f837c01d15b8732f23ff97fc36
|
||||
|
||||
Author: Bruno Haible <bruno@clisp.org>
|
||||
|
||||
--- a/tests/glthread/thread.h
|
||||
+++ b/tests/glthread/thread.h
|
||||
@@ -133,8 +133,6 @@ extern int glthread_in_use (void);
|
||||
call to foo(...) in the same function. To avoid this, we test the
|
||||
address of a function in libpthread that we don't use. */
|
||||
|
||||
-# pragma weak pthread_create
|
||||
-
|
||||
# ifndef pthread_sigmask /* Do not declare rpl_pthread_sigmask weak. */
|
||||
# pragma weak pthread_sigmask
|
||||
# endif
|
Binary file not shown.
@ -1,11 +0,0 @@
|
||||
diff -Naur Mail-DMARC-1.20150908/Build.PL Mail-DMARC-1.20150908b/Build.PL
|
||||
--- Mail-DMARC-1.20150908/Build.PL 2015-09-08 23:20:48.000000000 +0000
|
||||
+++ Mail-DMARC-1.20150908b/Build.PL 2016-03-16 23:28:27.121254239 +0000
|
||||
@@ -95,7 +95,6 @@
|
||||
"bin/dmarc_send_reports",
|
||||
"bin/dmarc_update_public_suffix_list",
|
||||
"bin/dmarc_view_reports",
|
||||
- "bin/install_deps.pl"
|
||||
],
|
||||
"share_dir" => {
|
||||
"dist" => "share"
|
@ -1,89 +0,0 @@
|
||||
diff -Naur Mail-IMAPClient-3.38/Makefile.PL Mail-IMAPClient-3.38/Makefile.PL
|
||||
--- Mail-IMAPClient-3.38/Makefile.PL
|
||||
+++ Mail-IMAPClient-3.38/Makefile.PL
|
||||
@@ -4,39 +4,6 @@
|
||||
|
||||
use 5.008_001;
|
||||
|
||||
-my @missing;
|
||||
-my %optional = (
|
||||
- "Authen::NTLM" => { for => "Authmechanism 'NTLM'" },
|
||||
- "Authen::SASL" => { for => "Authmechanism 'DIGEST-MD5'" },
|
||||
- "Compress::Zlib" => { for => "COMPRESS DEFLATE support" },
|
||||
- "Digest::HMAC_MD5" => { for => "Authmechanism 'CRAM-MD5'" },
|
||||
- "Digest::MD5" => { for => "Authmechanism 'DIGEST-MD5'" },
|
||||
- "IO::Socket::SSL" => { for => "SSL enabled connections (Ssl => 1)" },
|
||||
- "Test::Pod" => { for => "Pod tests", ver => "1.00" },
|
||||
-);
|
||||
-
|
||||
-foreach my $mod ( sort keys %optional ) {
|
||||
- my $for = $optional{$mod}->{"for"} || "";
|
||||
- my $ver = $optional{$mod}->{"ver"} || "";
|
||||
- eval "use $mod $ver ();";
|
||||
- push @missing, $mod . ( $for ? " for $for" : "" ) if $@;
|
||||
-}
|
||||
-
|
||||
-# similar message to one used in DBI:
|
||||
-if (@missing) {
|
||||
- print( "The following optional modules were not found:",
|
||||
- map( "\n\t" . $_, @missing ), "\n" );
|
||||
-
|
||||
- print <<'MSG';
|
||||
-Optional modules are available from any CPAN mirror, reference:
|
||||
- http://search.cpan.org/
|
||||
- http://www.perl.com/CPAN/modules/by-module
|
||||
- http://www.perl.org/CPAN/modules/by-module
|
||||
-
|
||||
-MSG
|
||||
- sleep 3;
|
||||
-}
|
||||
-
|
||||
# HACK: die on broken Parse::RecDescent 1.966002 through 1.967009
|
||||
# - rt.cpan.org#74593: Recent changes break Module::ExtractUse and ...
|
||||
# - rt.cpan.org#74733: Fails with Parse::RecDescent >= 1.966_002
|
||||
@@ -94,45 +61,4 @@
|
||||
clean => { FILES => 'test.txt' },
|
||||
);
|
||||
|
||||
-set_test_data();
|
||||
-
|
||||
exit 0;
|
||||
-
|
||||
-###
|
||||
-### HELPERS
|
||||
-###
|
||||
-
|
||||
-sub set_test_data {
|
||||
- unless ( -f "lib/Mail/IMAPClient.pm" ) {
|
||||
- warn("ERROR: not in installation directory\n");
|
||||
- return;
|
||||
- }
|
||||
-
|
||||
- if ( -s "./test.txt" ) {
|
||||
- print("The file test.txt will be used for extended tests.\n");
|
||||
- return;
|
||||
- }
|
||||
-
|
||||
- print <<EOF;
|
||||
-
|
||||
-(OPTIONAL) For extended tests during 'make test', create a file
|
||||
-'test.txt' in the top level directory of this distribution (the same
|
||||
-directory as the Makefile.PL, etc.). This file must contain an IMAP
|
||||
-server name or IP (server=...), a user account (user=...), and a
|
||||
-password (passed=...). A port (port=....) and an authentication
|
||||
-mechanism to be used (authmechanism=...) can also be specified.
|
||||
-
|
||||
-Example:
|
||||
-
|
||||
---- BEGIN: test.txt ---
|
||||
-server=localhost
|
||||
-user=mytestuser
|
||||
-passed=mypassword
|
||||
-port=143
|
||||
---- END: test.txt ---
|
||||
-
|
||||
-NOTE: When testing is completed, be sure to remove test.txt (either by
|
||||
-hand or by 'make clean').
|
||||
-
|
||||
-EOF
|
||||
-}
|
Binary file not shown.
@ -0,0 +1,29 @@
|
||||
# Copyright 2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="A Python package that generates fake data for you"
|
||||
HOMEPAGE="https://github.com/joke2k/faker"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/python-dateutil-2.4.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/text-unidecode-1.3[${PYTHON_USEDEP}]
|
||||
!dev-ruby/faker"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/freezegun[${PYTHON_USEDEP}]
|
||||
dev-python/pillow[${PYTHON_USEDEP},tiff]
|
||||
dev-python/random2[${PYTHON_USEDEP}]
|
||||
dev-python/validators[${PYTHON_USEDEP}]
|
||||
)"
|
||||
|
||||
distutils_enable_tests pytest
|
@ -1 +1,2 @@
|
||||
DIST Faker-9.8.1.tar.gz 1198229 BLAKE2B 8877a9da582fcd81b8b374c344343c9ba4a21d1cd0160694300030b2ace4b7b517fb8a62c1f0ffeacf3a950703b882ff5b484d54fdabc5b9c8b49658c45d421f SHA512 a93d625311358100c7a1dfe33dfda64b5890dd25e8d6e3dd095329ab2156c76abf3f00fe6b2c335316bbe3f42322adda2bcae3a9a312ddf4778d8143796667a0
|
||||
DIST Faker-9.8.2.tar.gz 1198270 BLAKE2B 1a7ea02b43afe0ff494ee39dac4259e9eb67fa3230b9b5744a96b4913ac471ed3ccf29f91b2db02124dfefc232a9fae05ce7ddc6e9fd0cbf27bd94468a7702b6 SHA512 37a35a02ea81a871e77378ceecdd65a63c97dd82ba9aec04c2a8f7a827e5bdb264a6ed0927c534a67bf4b06886dcb2a98a188798fe7c860135deb8d6aa6e36e3
|
||||
|
Binary file not shown.
@ -1,5 +1 @@
|
||||
DIST aesara-rel-2.2.2.tar.gz 8174668 BLAKE2B c95347e8b74f6600c3570177f86b7ebd7511899ed0ceb24a2d79a03a44ee498a8062b92fb79867f59b609f66315704ee92e28e12a5ab600d54d0d35ef799b66b SHA512 d5f62e42c36100b2fd25eba492590eb306b1394aa01bf2e90d43e84ac67701e5b756be6bc08d0e6b82fb1f37689dbbba1d7ef67c8525555a700a634d742056bb
|
||||
DIST aesara-rel-2.2.3.tar.gz 8179701 BLAKE2B 53ef58d6f0ab33e7efe3d0eaa2b55153a2ab29c958b48f52f814fecf7f5fa65424465470cde0ebb8d2ef1ced6968fd01217d9f7bd61acc8843cde1a9c0a94cbe SHA512 21414230c0be2c31e08fd371ee69c3bb7098b2134a5aec006abeca00a333e025fcbfd10ebdcbf54d243e1bc8c45f301a2c3443531ba5eaf0fe3a1ac5645ae4f5
|
||||
DIST aesara-rel-2.2.4.tar.gz 8180599 BLAKE2B 2b5e6ce0b0cbf0405d312f5b7c842057f05378c240c4dd36818c1b9d1b57667494c2472537e039ab16fac702a30a692bba5c8d5fc8801eb0c7e492d7f8e059b3 SHA512 3e0fe0cfa37f3b597ab94778dca60368aedbf9df79b4bb79812a190d77743addd1ddf5f234bf62c2dd744054204f03b84b358d0c58c27c28829b8fbe919bd151
|
||||
DIST aesara-rel-2.2.5.tar.gz 8180714 BLAKE2B 8c94d26df9244c95a58dcf0c7f8d733841f25aad63046b12264e8081bbb5a7debad82f48dc9b3119c87d8d4709f9016205aeff025235fce2dc381832c9f5a312 SHA512 9b28163277b358ebb5bc4d77d7fb9f0e47c4aad3eb92de4702148990fb7cd367c67e42d161465129695869a6c23f31251705c6a24ebd36f048259d70c32f9a65
|
||||
DIST aesara-rel-2.2.6.tar.gz 8180674 BLAKE2B 6d2c237a748aeee524e4182c47b17a9f7e7325d94410f8c9d7e3dea1d22306dbaa32be1b6f3c471baffad30527451772c08eaaed4494bcceba1759e9f7e9c837 SHA512 360f280fb997b33fbcef08a278816e51b26e8ba4f6d9b0681984394f293d342b498d4633d5efc1b92d64b056b4cd63b918ea7dd46d00aa78519e00919586f842
|
||||
|
@ -1,70 +0,0 @@
|
||||
# Copyright 2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
inherit distutils-r1 multiprocessing optfeature
|
||||
|
||||
MY_P=aesara-rel-${PV}
|
||||
DESCRIPTION="Library for operating on mathematical expressions with multi-dimensional arrays"
|
||||
HOMEPAGE="https://github.com/aesara-devs/aesara"
|
||||
SRC_URI="https://github.com/aesara-devs/aesara/archive/rel-${PV}.tar.gz -> ${MY_P}.tar.gz"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm ~arm64 x86"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/filelock[${PYTHON_USEDEP}]
|
||||
>=dev-python/numpy-1.17.0[${PYTHON_USEDEP}]
|
||||
dev-python/six[${PYTHON_USEDEP}]
|
||||
dev-python/scipy[${PYTHON_USEDEP}]"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
||||
)"
|
||||
|
||||
distutils_enable_sphinx doc 'dev-python/sphinx_rtd_theme'
|
||||
distutils_enable_tests pytest
|
||||
|
||||
python_prepare_all() {
|
||||
sed -i -e "s/tests.\*/tests\*/" setup.py || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local exclude=(
|
||||
# speed tests are unreliable
|
||||
tests/scan/test_basic.py::test_speed
|
||||
tests/scan/test_basic.py::test_speed_rnn
|
||||
tests/scan/test_basic.py::test_speed_batchrnn
|
||||
tests/link/test_vm.py::test_speed
|
||||
tests/link/test_vm.py::test_speed_lazy
|
||||
tests/tensor/test_gc.py::test_merge_opt_runtime
|
||||
|
||||
# rounding problem?
|
||||
# https://github.com/aesara-devs/aesara/issues/477
|
||||
tests/tensor/test_math_scipy.py::TestGammaUBroadcast::test_good
|
||||
tests/tensor/test_math_scipy.py::TestGammaUInplaceBroadcast::test_good
|
||||
)
|
||||
|
||||
distutils_install_for_testing
|
||||
# we do not package numba
|
||||
epytest ${exclude[@]/#/--deselect } \
|
||||
--ignore tests/link/test_numba.py \
|
||||
-n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")"
|
||||
}
|
||||
|
||||
# https://dev.gentoo.org/~mgorny/python-guide/concept.html#packaging-pkgutil-style-namespaces-in-gentoo
|
||||
python_install() {
|
||||
rm "${BUILD_DIR}"/lib/bin/__init__.py || die
|
||||
distutils-r1_python_install
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
optfeature "GPU code generation/execution on NVIDIA gpus" dev-util/nvidia-cuda-toolkit dev-util/nvidia-cuda-sdk
|
||||
optfeature "GPU/CPU code generation on CUDA and OpenCL devices" dev-libs/libgpuarray dev-python/pycuda
|
||||
}
|
@ -1,70 +0,0 @@
|
||||
# Copyright 2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
inherit distutils-r1 multiprocessing optfeature
|
||||
|
||||
MY_P=aesara-rel-${PV}
|
||||
DESCRIPTION="Library for operating on mathematical expressions with multi-dimensional arrays"
|
||||
HOMEPAGE="https://github.com/aesara-devs/aesara"
|
||||
SRC_URI="https://github.com/aesara-devs/aesara/archive/rel-${PV}.tar.gz -> ${MY_P}.tar.gz"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/filelock[${PYTHON_USEDEP}]
|
||||
>=dev-python/numpy-1.17.0[${PYTHON_USEDEP}]
|
||||
dev-python/six[${PYTHON_USEDEP}]
|
||||
dev-python/scipy[${PYTHON_USEDEP}]"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
||||
)"
|
||||
|
||||
distutils_enable_sphinx doc 'dev-python/sphinx_rtd_theme'
|
||||
distutils_enable_tests pytest
|
||||
|
||||
python_prepare_all() {
|
||||
sed -i -e "s/tests.\*/tests\*/" setup.py || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local exclude=(
|
||||
# speed tests are unreliable
|
||||
tests/scan/test_basic.py::test_speed
|
||||
tests/scan/test_basic.py::test_speed_rnn
|
||||
tests/scan/test_basic.py::test_speed_batchrnn
|
||||
tests/link/test_vm.py::test_speed
|
||||
tests/link/test_vm.py::test_speed_lazy
|
||||
tests/tensor/test_gc.py::test_merge_opt_runtime
|
||||
|
||||
# rounding problem?
|
||||
# https://github.com/aesara-devs/aesara/issues/477
|
||||
tests/tensor/test_math_scipy.py::TestGammaUBroadcast::test_good
|
||||
tests/tensor/test_math_scipy.py::TestGammaUInplaceBroadcast::test_good
|
||||
)
|
||||
|
||||
distutils_install_for_testing
|
||||
# we do not package numba
|
||||
epytest ${exclude[@]/#/--deselect } \
|
||||
--ignore tests/link/test_numba.py \
|
||||
-n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")"
|
||||
}
|
||||
|
||||
# https://dev.gentoo.org/~mgorny/python-guide/concept.html#packaging-pkgutil-style-namespaces-in-gentoo
|
||||
python_install() {
|
||||
rm "${BUILD_DIR}"/lib/bin/__init__.py || die
|
||||
distutils-r1_python_install
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
optfeature "GPU code generation/execution on NVIDIA gpus" dev-util/nvidia-cuda-toolkit dev-util/nvidia-cuda-sdk
|
||||
optfeature "GPU/CPU code generation on CUDA and OpenCL devices" dev-libs/libgpuarray dev-python/pycuda
|
||||
}
|
@ -1,70 +0,0 @@
|
||||
# Copyright 2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
inherit distutils-r1 multiprocessing optfeature
|
||||
|
||||
MY_P=aesara-rel-${PV}
|
||||
DESCRIPTION="Library for operating on mathematical expressions with multi-dimensional arrays"
|
||||
HOMEPAGE="https://github.com/aesara-devs/aesara"
|
||||
SRC_URI="https://github.com/aesara-devs/aesara/archive/rel-${PV}.tar.gz -> ${MY_P}.tar.gz"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/filelock[${PYTHON_USEDEP}]
|
||||
>=dev-python/numpy-1.17.0[${PYTHON_USEDEP}]
|
||||
dev-python/six[${PYTHON_USEDEP}]
|
||||
dev-python/scipy[${PYTHON_USEDEP}]"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
||||
)"
|
||||
|
||||
distutils_enable_sphinx doc 'dev-python/sphinx_rtd_theme'
|
||||
distutils_enable_tests pytest
|
||||
|
||||
python_prepare_all() {
|
||||
sed -i -e "s/tests.\*/tests\*/" setup.py || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local exclude=(
|
||||
# speed tests are unreliable
|
||||
tests/scan/test_basic.py::test_speed
|
||||
tests/scan/test_basic.py::test_speed_rnn
|
||||
tests/scan/test_basic.py::test_speed_batchrnn
|
||||
tests/link/test_vm.py::test_speed
|
||||
tests/link/test_vm.py::test_speed_lazy
|
||||
tests/tensor/test_gc.py::test_merge_opt_runtime
|
||||
|
||||
# rounding problem?
|
||||
# https://github.com/aesara-devs/aesara/issues/477
|
||||
tests/tensor/test_math_scipy.py::TestGammaUBroadcast::test_good
|
||||
tests/tensor/test_math_scipy.py::TestGammaUInplaceBroadcast::test_good
|
||||
)
|
||||
|
||||
distutils_install_for_testing
|
||||
# we do not package numba
|
||||
epytest ${exclude[@]/#/--deselect } \
|
||||
--ignore tests/link/test_numba.py \
|
||||
-n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")"
|
||||
}
|
||||
|
||||
# https://dev.gentoo.org/~mgorny/python-guide/concept.html#packaging-pkgutil-style-namespaces-in-gentoo
|
||||
python_install() {
|
||||
rm "${BUILD_DIR}"/lib/bin/__init__.py || die
|
||||
distutils-r1_python_install
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
optfeature "GPU code generation/execution on NVIDIA gpus" dev-util/nvidia-cuda-toolkit dev-util/nvidia-cuda-sdk
|
||||
optfeature "GPU/CPU code generation on CUDA and OpenCL devices" dev-libs/libgpuarray dev-python/pycuda
|
||||
}
|
@ -1,70 +0,0 @@
|
||||
# Copyright 2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
inherit distutils-r1 multiprocessing optfeature
|
||||
|
||||
MY_P=aesara-rel-${PV}
|
||||
DESCRIPTION="Library for operating on mathematical expressions with multi-dimensional arrays"
|
||||
HOMEPAGE="https://github.com/aesara-devs/aesara"
|
||||
SRC_URI="https://github.com/aesara-devs/aesara/archive/rel-${PV}.tar.gz -> ${MY_P}.tar.gz"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/filelock[${PYTHON_USEDEP}]
|
||||
>=dev-python/numpy-1.17.0[${PYTHON_USEDEP}]
|
||||
dev-python/six[${PYTHON_USEDEP}]
|
||||
dev-python/scipy[${PYTHON_USEDEP}]"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
||||
)"
|
||||
|
||||
distutils_enable_sphinx doc 'dev-python/sphinx_rtd_theme'
|
||||
distutils_enable_tests pytest
|
||||
|
||||
python_prepare_all() {
|
||||
sed -i -e "s/tests.\*/tests\*/" setup.py || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local exclude=(
|
||||
# speed tests are unreliable
|
||||
tests/scan/test_basic.py::test_speed
|
||||
tests/scan/test_basic.py::test_speed_rnn
|
||||
tests/scan/test_basic.py::test_speed_batchrnn
|
||||
tests/link/test_vm.py::test_speed
|
||||
tests/link/test_vm.py::test_speed_lazy
|
||||
tests/tensor/test_gc.py::test_merge_opt_runtime
|
||||
|
||||
# rounding problem?
|
||||
# https://github.com/aesara-devs/aesara/issues/477
|
||||
tests/tensor/test_math_scipy.py::TestGammaUBroadcast::test_good
|
||||
tests/tensor/test_math_scipy.py::TestGammaUInplaceBroadcast::test_good
|
||||
)
|
||||
|
||||
distutils_install_for_testing
|
||||
# we do not package numba
|
||||
epytest ${exclude[@]/#/--deselect } \
|
||||
--ignore tests/link/test_numba.py \
|
||||
-n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")"
|
||||
}
|
||||
|
||||
# https://dev.gentoo.org/~mgorny/python-guide/concept.html#packaging-pkgutil-style-namespaces-in-gentoo
|
||||
python_install() {
|
||||
rm "${BUILD_DIR}"/lib/bin/__init__.py || die
|
||||
distutils-r1_python_install
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
optfeature "GPU code generation/execution on NVIDIA gpus" dev-util/nvidia-cuda-toolkit dev-util/nvidia-cuda-sdk
|
||||
optfeature "GPU/CPU code generation on CUDA and OpenCL devices" dev-libs/libgpuarray dev-python/pycuda
|
||||
}
|
@ -0,0 +1,59 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="The AWS SDK for Python"
|
||||
HOMEPAGE="https://github.com/boto/boto3"
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
|
||||
if [[ "${PV}" == "9999" ]]; then
|
||||
EGIT_REPO_URI="https://github.com/boto/boto3"
|
||||
inherit git-r3
|
||||
BOTOCORE_PV=${PV}
|
||||
else
|
||||
SRC_URI="https://github.com/boto/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
|
||||
|
||||
# botocore is x.(y+3).z
|
||||
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 3)).$(ver_cut 3-)"
|
||||
fi
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
|
||||
>=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/s3transfer-0.3.0[${PYTHON_USEDEP}]
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/mock[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
distutils_enable_sphinx docs/source \
|
||||
'dev-python/guzzle_sphinx_theme'
|
||||
distutils_enable_tests pytest
|
||||
|
||||
python_prepare_all() {
|
||||
# don't lock versions to narrow ranges
|
||||
sed -e '/botocore/ d' \
|
||||
-e '/jmespath/ d' \
|
||||
-e '/s3transfer/ d' \
|
||||
-i setup.py || die
|
||||
|
||||
# do not rely on bundled deps in botocore (sic!)
|
||||
find -name '*.py' -exec sed -i \
|
||||
-e 's:from botocore[.]vendored import:import:' \
|
||||
-e 's:from botocore[.]vendored[.]:from :' \
|
||||
{} + || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_test() {
|
||||
epytest tests/{functional,unit}
|
||||
}
|
@ -0,0 +1,64 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Low-level, data-driven core of boto 3"
|
||||
HOMEPAGE="https://github.com/boto/botocore"
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
|
||||
if [[ "${PV}" == "9999" ]]; then
|
||||
EGIT_REPO_URI="https://github.com/boto/botocore"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
|
||||
fi
|
||||
|
||||
RDEPEND="
|
||||
dev-python/six[${PYTHON_USEDEP}]
|
||||
dev-python/jmespath[${PYTHON_USEDEP}]
|
||||
dev-python/python-dateutil[${PYTHON_USEDEP}]
|
||||
>=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/jsonschema[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/1.8.6-tests-pass-all-env-vars-to-cmd-runner.patch"
|
||||
)
|
||||
|
||||
distutils_enable_sphinx docs/source \
|
||||
'dev-python/guzzle_sphinx_theme'
|
||||
distutils_enable_tests pytest
|
||||
|
||||
src_prepare() {
|
||||
# unpin deps
|
||||
sed -i -e "s:>=.*':':" setup.py || die
|
||||
|
||||
# unbundle deps
|
||||
rm -r botocore/vendored || die
|
||||
find -name '*.py' -exec sed -i \
|
||||
-e 's:from botocore[.]vendored import:import:' \
|
||||
-e 's:from botocore[.]vendored[.]:from :' \
|
||||
{} + || die
|
||||
|
||||
distutils-r1_src_prepare
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local EPYTEST_DESELECT=(
|
||||
# rely on bundled six
|
||||
tests/functional/test_six_imports.py::test_no_bare_six_imports
|
||||
tests/functional/test_six_threading.py::test_six_thread_safety
|
||||
)
|
||||
|
||||
epytest tests/{functional,unit}
|
||||
}
|
@ -1,33 +0,0 @@
|
||||
From 6a899a9174c8008ba5fb576238ea4d7c970453c3 Mon Sep 17 00:00:00 2001
|
||||
From: Simon McVittie <smcv@collabora.com>
|
||||
Date: Tue, 14 Jan 2020 15:29:43 +0000
|
||||
Subject: [PATCH] service: Adjust to deprecation of collections.Sequence
|
||||
|
||||
Since Python 3.3 the recommended location is collections.abc.Sequence,
|
||||
and the collections.Sequence alias will be removed in 3.9.
|
||||
|
||||
Signed-off-by: Simon McVittie <smcv@collabora.com>
|
||||
---
|
||||
dbus/service.py | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dbus/service.py b/dbus/service.py
|
||||
index fd57054..0c8695a 100644
|
||||
--- a/dbus/service.py
|
||||
+++ b/dbus/service.py
|
||||
@@ -32,7 +32,11 @@ import sys
|
||||
import logging
|
||||
import threading
|
||||
import traceback
|
||||
-from collections import Sequence
|
||||
+try:
|
||||
+ from collections.abc import Sequence
|
||||
+except ImportError:
|
||||
+ # Python 2 (and 3.x < 3.3, but we don't support those)
|
||||
+ from collections import Sequence
|
||||
|
||||
import _dbus_bindings
|
||||
from dbus import (
|
||||
--
|
||||
2.26.2
|
||||
|
@ -1 +1,2 @@
|
||||
DIST django-allauth-0.45.0.tar.gz 581007 BLAKE2B a0f586818e4d17ece5ed009481b71c0213bf265f45d391664d411268d53124c1d5df226ca40d98722691ace5f5ed50026b0a9db3bd34070ff855059bf3e237d6 SHA512 16b166a5f97e62fef3c801af17b6b7569bd27e597cec394032a2644397afc30512f52f0ff77af8036e414086cd207dc9f5d310dbc744627b55938243ba18e50f
|
||||
DIST django-allauth-0.46.0.tar.gz 643238 BLAKE2B 91534f596e3fa2e6fa5e395bded16a793ccbec994a3099eef22980920013280f58b2204d226975c2fe7a7e2066b665789881a9bcc6d2342f70a9eb0b83c32f6c SHA512 8e89d6d6a10566e40f71845885c30c36994aef3ff9054731a7582484d12ff4c7df7903617777698e42838337ae436c41a59a318acc1d2fc0561883683f79df46
|
||||
|
@ -0,0 +1,44 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Django 3rd party (social) account authentication"
|
||||
HOMEPAGE="
|
||||
https://www.intenct.nl/projects/django-allauth/
|
||||
https://github.com/pennersr/django-allauth/"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# cryptography via pyjwt[crypto]
|
||||
RDEPEND="
|
||||
dev-python/cryptography[${PYTHON_USEDEP}]
|
||||
dev-python/django[${PYTHON_USEDEP}]
|
||||
dev-python/pyjwt[${PYTHON_USEDEP}]
|
||||
dev-python/python3-openid[${PYTHON_USEDEP}]
|
||||
dev-python/requests-oauthlib[${PYTHON_USEDEP}]
|
||||
dev-python/requests[${PYTHON_USEDEP}]"
|
||||
BDEPEND="
|
||||
test? ( ${RDEPEND} )"
|
||||
|
||||
DOCS=( README.rst AUTHORS ChangeLog.rst )
|
||||
|
||||
src_test() {
|
||||
# cern provider tests require Internet
|
||||
rm allauth/socialaccount/providers/cern/tests.py || die
|
||||
distutils-r1_src_test
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local -x DJANGO_SETTINGS_MODULE=test_settings
|
||||
local -x PYTHONPATH=.
|
||||
django-admin test -v 2 || die "Tests failed with ${EPYTHON}"
|
||||
}
|
@ -1,78 +0,0 @@
|
||||
From 812793c07d3202d3f5bc39091aec2e7071d000c8 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Pipping <sebastian@pipping.org>
|
||||
Date: Sun, 1 Jan 2012 19:30:57 +0100
|
||||
Subject: [PATCH] Use shipped sgmllib for Python 3.x
|
||||
|
||||
---
|
||||
feedparser/feedparser.py | 19 +++----------------
|
||||
setup.py | 2 +-
|
||||
2 files changed, 4 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/feedparser/feedparser.py b/feedparser/feedparser.py
|
||||
index 8275c29..9a8a053 100644
|
||||
--- a/feedparser/feedparser.py
|
||||
+++ b/feedparser/feedparser.py
|
||||
@@ -204,17 +204,9 @@ else:
|
||||
try:
|
||||
import sgmllib
|
||||
except ImportError:
|
||||
- # This is probably Python 3, which doesn't include sgmllib anymore
|
||||
- _SGML_AVAILABLE = 0
|
||||
+ import _feedparser_sgmllib as sgmllib
|
||||
|
||||
- # Mock sgmllib enough to allow subclassing later on
|
||||
- class sgmllib(object):
|
||||
- class SGMLParser(object):
|
||||
- def goahead(self, i):
|
||||
- pass
|
||||
- def parse_starttag(self, i):
|
||||
- pass
|
||||
-else:
|
||||
+if True:
|
||||
_SGML_AVAILABLE = 1
|
||||
|
||||
# sgmllib defines a number of module-level regular expressions that are
|
||||
@@ -2520,9 +2512,6 @@ class _RelativeURIResolver(_BaseHTMLProcessor):
|
||||
_BaseHTMLProcessor.unknown_starttag(self, tag, attrs)
|
||||
|
||||
def _resolveRelativeURIs(htmlSource, baseURI, encoding, _type):
|
||||
- if not _SGML_AVAILABLE:
|
||||
- return htmlSource
|
||||
-
|
||||
p = _RelativeURIResolver(baseURI, encoding, _type)
|
||||
p.feed(htmlSource)
|
||||
return p.output()
|
||||
@@ -2803,8 +2792,6 @@ class _HTMLSanitizer(_BaseHTMLProcessor):
|
||||
|
||||
|
||||
def _sanitizeHTML(htmlSource, encoding, _type):
|
||||
- if not _SGML_AVAILABLE:
|
||||
- return htmlSource
|
||||
p = _HTMLSanitizer(encoding, _type)
|
||||
htmlSource = htmlSource.replace('<![CDATA[', '<![CDATA[')
|
||||
p.feed(htmlSource)
|
||||
@@ -3890,7 +3877,7 @@ def parse(url_file_stream_or_string, etag=None, modified=None, agent=None, refer
|
||||
result['bozo'] = 1
|
||||
result['bozo_exception'] = feedparser.exc or e
|
||||
use_strict_parser = 0
|
||||
- if not use_strict_parser and _SGML_AVAILABLE:
|
||||
+ if not use_strict_parser:
|
||||
feedparser = _LooseFeedParser(baseuri, baselang, 'utf-8', entities)
|
||||
feedparser.feed(data.decode('utf-8', 'replace'))
|
||||
result['feed'] = feedparser.feeddata
|
||||
diff --git a/setup.py b/setup.py
|
||||
index a4a60fe..8c15451 100644
|
||||
--- a/setup.py
|
||||
+++ b/setup.py
|
||||
@@ -16,7 +16,7 @@ setup(
|
||||
download_url = 'https://pypi.python.org/pypi/feedparser',
|
||||
platforms = ['POSIX', 'Windows'],
|
||||
package_dir = {'': 'feedparser'},
|
||||
- py_modules = ['feedparser'],
|
||||
+ py_modules = ['feedparser', '_feedparser_sgmllib'],
|
||||
keywords = ['atom', 'cdf', 'feed', 'parser', 'rdf', 'rss'],
|
||||
classifiers = [
|
||||
'Development Status :: 5 - Production/Stable',
|
||||
--
|
||||
1.7.8.1
|
||||
|
@ -1,3 +1,4 @@
|
||||
DIST graphviz-0.17.zip 193647 BLAKE2B f2f5ad728157d60c48964d2cfdc76559310af6099a9eae16279b0f9e8a41c08d02d5f255be62222c1f0808750a26e67822b5fbb930f7ada5c6a614c3607494cd SHA512 02f5ef21f9e3bf3b609f43fe0d9cb51632ea43c878055746af62fda4dd55883f6ad58f69faecb6aba552100cc835901309c8c2ec833cd74c617619fce2d49600
|
||||
DIST graphviz-0.18.1.zip 204937 BLAKE2B 4fa847aeb9683fc8244a01f8bd240fea29130cbaefbaa60c8fac3a735fda1d400afea01a4b79a4a5dc1cbb0d9759b613c877953d580d73c6329aa4f52fff5f8f SHA512 88b0771988643ac870a53a31afb5c947a42fb54c930cbf759dde10a4405f85798e0bea96189019e1fc958db2679b936e42a478116719ce41f618c6b7e3334aa2
|
||||
DIST graphviz-0.18.2.zip 205555 BLAKE2B d245dcd33a7779f00bb9e740968175d4fbe12d3182682b548f447e2c4ce4423683c3fd2727aa693a5e9c264cfdeed603af9a7bc9839f8d91f5fc091045473146 SHA512 f18defc99411b0b12a8326589da603197d345f458d4b0d602e63205f8542fdf4bec636750ac0fc5551126dff4cd76ce04fc089c0985831a1efec3271a7f22230
|
||||
DIST graphviz-0.18.zip 199876 BLAKE2B 355478a4341fb5a286b7419a6799c809f7489f80911e21d94be8d63c957ed9952d5f72b1aac6258fb8b3146424c61de64085fd02c0da14b8b4c6fd447568fb92 SHA512 56eb4252076ddb4fd3ad691199e67d58dab766828d9c80403df60cda80cd58cbb04f96edbacef674300f4f63eace0144322c73501737342c797fb7b9a203a722
|
||||
|
@ -0,0 +1,33 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Simple Python interface for Graphviz"
|
||||
HOMEPAGE="https://graphviz.readthedocs.io/"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.zip"
|
||||
|
||||
LICENSE="MIT"
|
||||
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
|
||||
SLOT="0"
|
||||
|
||||
RDEPEND="media-gfx/graphviz"
|
||||
BDEPEND="
|
||||
app-arch/unzip
|
||||
test? (
|
||||
>=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pytest-mock-1.8[${PYTHON_USEDEP}]
|
||||
media-gfx/graphviz[gts,pdf]
|
||||
)
|
||||
"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
src_prepare() {
|
||||
sed -e 's:--cov --cov-report=term --cov-report=html::' \
|
||||
-i setup.cfg || die
|
||||
distutils-r1_src_prepare
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue