Sync with portage [Fri Mar 18 22:10:33 MSK 2022].

akrasnyh
root 2 years ago
parent b8c4135d13
commit 6f0d9af42b

Binary file not shown.

Binary file not shown.

@ -12,7 +12,7 @@ LICENSE="LGPL-2.1+"
SLOT="2"
IUSE="X gtk-doc +introspection"
REQUIRED_USE="gtk-doc? ( X )"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
RDEPEND="
>=sys-apps/dbus-1.5[${MULTILIB_USEDEP}]

Binary file not shown.

@ -1,3 +1,2 @@
DIST httpd-2.4.51.tar.bz2 7653609 BLAKE2B a0743327f0411f5cb8b7d0426bf78db0f370e3d587f3a4c4bb7de0e4499effa3f44f5998e19e9ca3ed7b6fc9a8c0867cbe62134b5af7e6ed6c3bc29770b797df SHA512 9fb07c4b176f5c0485a143e2b1bb1085345ca9120b959974f68c37a8911a57894d2cb488b1b42fdf3102860b99e890204f5e9fa7ae3828b481119c563812cc66
DIST httpd-2.4.52.tar.bz2 7439184 BLAKE2B caa3f96226eeaf2f7ab625a73e820e7c6c5661a80983fa1cd2f4ab5366fcad03e1f47ad02ab060662ceb941fc777b1fb8a269ec5f0d9c6f7a3d93756e995d713 SHA512 97c021c576022a9d32f4a390f62e07b5f550973aef2f299fd52defce1a9fa5d27bd4a676e7bf214373ba46063d34aecce42de62fdd93678a4e925cfcbb2afdf6
DIST httpd-2.4.53.tar.bz2 7431942 BLAKE2B 44acd51a2c18ae66878d64922947f2f24f0ddf8a5fa70718f788572032e18dafd06888fed3cf559e63e2a9e69d9b0a8dcc79e11fc9d8f216b5b073f769494727 SHA512 07ef59594251a30a864cc9cc9a58ab788c2d006cef85b728f29533243927c63cb063e0867f2a306f37324c3adb9cf7dcb2402f3516b05c2c6f32469d475dd756

@ -1,101 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit toolchain-funcs
DESCRIPTION="Useful Apache tools - htdigest, htpasswd, ab, htdbm"
HOMEPAGE="https://httpd.apache.org/"
SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc64-solaris ~x64-solaris"
IUSE="ssl"
RESTRICT="test"
RDEPEND=">=dev-libs/apr-1.5.0:1=
dev-libs/apr-util:1=
dev-libs/expat
dev-libs/libpcre
virtual/libcrypt:=
kernel_linux? ( sys-apps/util-linux )
ssl? ( dev-libs/openssl:0= )"
DEPEND="${RDEPEND}
sys-devel/libtool"
BDEPEND="virtual/pkgconfig"
S="${WORKDIR}/httpd-${PV}"
PATCHES=(
"${FILESDIR}/${PN}-2.4.7-Makefile.patch" #459446
)
src_prepare() {
default
# This package really should upgrade to using pcre's .pc file.
cat <<-\EOF >"${T}"/pcre-config
#!/bin/bash
flags=()
for flag; do
if [[ ${flag} == "--version" ]]; then
flags+=( --modversion )
else
flags+=( "${flag}" )
fi
done
exec ${PKG_CONFIG} libpcre "${flags[@]}"
EOF
chmod a+x "${T}"/pcre-config || die
}
src_configure() {
# Brain dead check.
tc-is-cross-compiler && export ap_cv_void_ptr_lt_long="no"
tc-export PKG_CONFIG
local myeconfargs=(
--libexecdir="${EPREFIX}"/usr/$(get_libdir)/apache2/modules
--sbindir="${EPREFIX}"/usr/sbin
--with-z="${EPREFIX}"/usr
--with-apr="${SYSROOT}${EPREFIX}"/usr
--with-apr-util="${SYSROOT}${EPREFIX}"/usr
--with-pcre="${T}"/pcre-config
$(use_enable ssl)
$(usex ssl '--with-ssl="${EPREFIX}"/usr' '')
)
# econf overwrites the stuff from config.layout.
ac_cv_path_PKGCONFIG="${PKG_CONFIG}" \
econf "${myeconfargs[@]}"
sed -i \
-e '/^LTFLAGS/s:--silent::' \
build/rules.mk build/config_vars.mk || die
}
src_compile() {
emake -C support
}
src_install() {
emake -C support DESTDIR="${D}" install
dodoc CHANGES
doman docs/man/{dbmmanage,htdigest,htpasswd,htdbm,ab,logresolve}.1 \
docs/man/{htcacheclean,rotatelogs}.8
# Providing compatiblity symlinks for #177697 (which we'll stop to install
# at some point).
pushd "${ED}"/usr/sbin >/dev/null || die
local i
for i in *; do
dosym ${i} /usr/sbin/${i}2
done
popd >/dev/null || die
# Provide a symlink for ab-ssl
if use ssl ; then
dosym ab /usr/bin/ab-ssl
dosym ab /usr/bin/ab2-ssl
fi
}

@ -1,103 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit toolchain-funcs
DESCRIPTION="Useful Apache tools - htdigest, htpasswd, ab, htdbm"
HOMEPAGE="https://httpd.apache.org/"
SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc64-solaris ~x64-solaris"
IUSE="ssl"
RESTRICT="test"
RDEPEND=">=dev-libs/apr-1.5.0:1=
dev-libs/apr-util:1=
dev-libs/expat
dev-libs/libpcre
virtual/libcrypt:=
kernel_linux? ( sys-apps/util-linux )
ssl? ( dev-libs/openssl:0= )"
DEPEND="${RDEPEND}
sys-devel/libtool"
BDEPEND="virtual/pkgconfig"
S="${WORKDIR}/httpd-${PV}"
PATCHES=(
"${FILESDIR}/${PN}-2.4.7-Makefile.patch" #459446
)
src_prepare() {
default
# This package really should upgrade to using pcre's .pc file.
cat <<-\EOF >"${T}"/pcre-config
#!/bin/bash
flags=()
for flag; do
if [[ ${flag} == "--version" ]]; then
flags+=( --modversion )
else
flags+=( "${flag}" )
fi
done
exec ${PKG_CONFIG} libpcre "${flags[@]}"
EOF
chmod a+x "${T}"/pcre-config || die
}
src_configure() {
# Brain dead check.
tc-is-cross-compiler && export ap_cv_void_ptr_lt_long="no"
tc-export PKG_CONFIG
local myeconfargs=(
--libexecdir="${EPREFIX}"/usr/$(get_libdir)/apache2/modules
--sbindir="${EPREFIX}"/usr/sbin
--with-perl="${EPREFIX}"/usr/bin/perl
--with-expat="${EPREFIX}"/usr
--with-z="${EPREFIX}"/usr
--with-apr="${SYSROOT}${EPREFIX}"/usr
--with-apr-util="${SYSROOT}${EPREFIX}"/usr
--with-pcre="${T}"/pcre-config
$(use_enable ssl)
$(usex ssl '--with-ssl="${EPREFIX}"/usr' '')
)
# econf overwrites the stuff from config.layout.
ac_cv_path_PKGCONFIG="${PKG_CONFIG}" \
econf "${myeconfargs[@]}"
sed -i \
-e '/^LTFLAGS/s:--silent::' \
build/rules.mk build/config_vars.mk || die
}
src_compile() {
emake -C support
}
src_install() {
emake -C support DESTDIR="${D}" install
dodoc CHANGES
doman docs/man/{dbmmanage,htdigest,htpasswd,htdbm,ab,logresolve}.1 \
docs/man/{htcacheclean,rotatelogs}.8
# Providing compatiblity symlinks for #177697 (which we'll stop to install
# at some point).
pushd "${ED}"/usr/sbin >/dev/null || die
local i
for i in *; do
dosym ${i} /usr/sbin/${i}2
done
popd >/dev/null || die
# Provide a symlink for ab-ssl
if use ssl ; then
dosym ab /usr/bin/ab-ssl
dosym ab /usr/bin/ab2-ssl
fi
}

@ -10,7 +10,7 @@ SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc64-solaris ~x64-solaris"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc64-solaris ~x64-solaris"
IUSE="ssl"
RESTRICT="test"

@ -4,3 +4,4 @@ DIST awscli-1.22.71.tar.gz 2177492 BLAKE2B 2634de77b67aedf1684370b18da614d8092da
DIST awscli-1.22.73.tar.gz 2178216 BLAKE2B 14cd910f0218c015c3f349f57f268b818737d12cede273d6d306eff5be7e68690df19bc1e3eaaf4d7069d233f171a12edd9144febf5f877c49189f0aa6786441 SHA512 a708eafb38891ef1119c9ebe690ef6a1ad8f21605621ddf63820f2a54bf5612d62179922b59150de67dca4d266c55198fdd69db04a234b8051c0b5e5c8fd6cc7
DIST awscli-1.22.74.tar.gz 2178286 BLAKE2B bab52f3a46033c0f6b36419a612ef01ed79ac8f361bdb90ad2e07aede8b6244e0d0cca20dd4eae6b664f24ae9564e4ad548fc1eb55526242d2cbdd1771ba329c SHA512 1027658bb97e214047a90079384cad5b9f045e0a70f734fef24d1ed4b09a930a985f516ed2dc3965cb78941d702008a9cdaf3e420d992c77b4175eeda85577bd
DIST awscli-1.22.75.tar.gz 2179099 BLAKE2B 697c02e6981213cd6694d1d4f988148488ba4be91559b5686b6820543d38e9a5864242a254ac1151bca147557a970ad8cf8bc07c3ed6100305b1ec65f918edd7 SHA512 783e3f057896c929d2324d1af0bc3907a23bffbb7856b201ba1b03a6ca00e0aeae2c7e04468bf0494f91d054d35423255130332b366bba0ac60513da1e4d35fb
DIST awscli-1.22.76.tar.gz 2179831 BLAKE2B 4c1bf344a7e21dbe3e96cade9aa5f2efcabe969ebd7804a05b6ba361a2dc11c9f07786198923fefed419b425dc7e4d469a9683474a30495f399e39e9cee8f15c SHA512 bf4971e1d92294901f273891d6e2d2ae2c142842df3fe09391d5f12672f2504ddcc3b467db82439dba434f2e50c4a529c5141366b34ec9722e9ad9705ace5f09

@ -0,0 +1,66 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{8..10} )
inherit bash-completion-r1 distutils-r1 multiprocessing
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"
# awscli 1.22.55 → botocore 1.24.0
# so botocore is x.(y+2).(z-55)
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(( $(ver_cut 3-) - 55))"
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}]
"
BDEPEND="
test? (
dev-python/pytest-xdist[${PYTHON_USEDEP}]
)
"
distutils_enable_tests 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
# strip overzealous upper bounds on requirements
sed -i -e 's:,<[0-9.]*::' -e 's:==:>=:' setup.py || die
distutils-r1_src_prepare
}
python_test() {
# integration tests require AWS credentials and Internet access
epytest tests/{functional,unit} \
-n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")"
}
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,2 +1,3 @@
DIST backintime-1.2.1.tar.gz 713853 BLAKE2B 0f05d6cdc04a41ec9737badb8693c1270bb1333b2986fce925625ba2d7be05de0630ff5f59a7b5854a38ba382d6992df1ffc4e1cb584cae0e2618b877db4f06b SHA512 91dbc76a7db81469c5a538be03196c8e307d13307486d8e1c6cad10ce0af399de495f0292fecffc2853ed78804b5899750f06f274b4701efe3af6a708ea1024e
DIST backintime-1.3.1.tar.gz 714401 BLAKE2B 5b6a294d5a22ee3928725caf1a9895b665bfcddd6b779355cd7f7e58b5a201c3d2158ef4b30fb73eb4525c1a54cacf878397874f28b06798b7bfd973df467a39 SHA512 faac8552748da75db62cf7fa7eea686fd8b262016d1072f432fff54a6c0c72929650582870b4c56efbaa4ef5984acaece9e1d76eb72abcce91c6fc92d34d52ad
DIST backintime-1.3.2.tar.gz 714459 BLAKE2B cc53bd5391155705016248511e30cdfa7bc25f0a7cb170dfeeffda397e8be1b22f8e335063289d8c192f94c469430655064899ac8059f22f3b7582e3af87d373 SHA512 19f756d03cc7533e02bb5172ae3f8c167206bf5e8d60c0f3af1f647e01297a4eeb7889bbb5b58e46636bc31392ee436249b276ddbfa41697a0538c542fa26cb8

@ -0,0 +1,78 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{8..10} )
inherit python-single-r1 xdg
DESCRIPTION="Backup system inspired by TimeVault and FlyBack"
HOMEPAGE="https://backintime.readthedocs.io/en/latest/ https://github.com/bit-team/backintime/"
SRC_URI="https://github.com/bit-team/${PN}/releases/download/v${PV}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="examples qt5"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
DEPEND="${PYTHON_DEPS}
$(python_gen_cond_dep '
dev-python/dbus-python[${PYTHON_USEDEP}]
dev-python/keyring[${PYTHON_USEDEP}]
')"
RDEPEND="${DEPEND}
net-misc/openssh
net-misc/rsync[xattr,acl]
qt5? ( dev-python/PyQt5[gui,widgets] )"
BDEPEND="sys-devel/gettext"
PATCHES=( "${FILESDIR}/${PN}-1.2.1-no-compress-docs-examples.patch" )
src_configure() {
pushd common > /dev/null || die
# Not autotools
./configure --python3 --no-fuse-group || die
popd > /dev/null || die
if use qt5 ; then
pushd qt > /dev/null || die
./configure --python3 || die
popd > /dev/null || die
fi
}
src_compile() {
pushd common > /dev/null || die
emake
popd > /dev/null || die
if use qt5 ; then
pushd qt > /dev/null || die
emake
popd > /dev/null || die
fi
}
src_install() {
pushd common > /dev/null || die
emake DESTDIR="${D}" install
popd > /dev/null || die
if use qt5 ; then
pushd qt > /dev/null || die
emake DESTDIR="${D}" install
popd > /dev/null || die
fi
einstalldocs
if use examples ; then
docinto examples
dodoc common/{config-example-local,config-example-ssh}
fi
python_optimize "${D}"
}

Binary file not shown.

@ -41,8 +41,11 @@ src_test() {
pkg_postinst() {
has_version =app-containers/docker-compose-1* || return
elog
elog "docker-compose 2.x is a sub command of docker"
elog "Use 'docker compose' from the command line instead of"
elog "'docker-compose'"
ewarn
ewarn "docker-compose 2.x is a sub command of docker"
ewarn "Use 'docker compose' from the command line instead of"
ewarn "'docker-compose'"
ewarn "If you need to keep 1.x around, please run the following"
ewarn "command before your next --depclean"
ewarn "# emerge --noreplace docker-compose:0"
}

Binary file not shown.

@ -16,7 +16,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="bzip2 doc ldap nls readline selinux +smartcard ssl tofu tools usb user-socket wks-server"
# Existence of executables is checked during configuration.

@ -1,2 +1 @@
DIST rhash-1.3.6-src.tar.gz 328097 BLAKE2B c74993d183f0f2e479f0bd5831a9f653b9bd17bbed4d1ba896f6e33db98b7141175cd3c688dc41dfd8ec4b98acb51255ae5b795435cbc9dfb5ab77573cb25543 SHA512 54f7f238ed1fdc01c29cc1338fa86be90b69beff0df8f20d24ce9cb3c48c7f4668b84a3fe0d4d8b04b54bc8145485d493435edf3219de3a637af0f9c007c85c6
DIST rhash-1.4.2-src.tar.gz 416853 BLAKE2B 06322825116cb00aa4987b01610d967eb57c94aa29b43348ec2c31f053fd471a900fcee776714263213e9a79eaf389b2e79d7b34a5afd3e98d68198193b5cbe7 SHA512 41df57e8b3f32c93d8e6f2ac668b32aaa23eb2eaf90a83f109e61e511404a5036ea88bcf2854e19c1ade0f61960e0d9edf01f3d82e1c645fed36579e9d7a6a25

@ -1,23 +0,0 @@
From 35a830d1968465e4ecb079273f032b754bac6c66 Mon Sep 17 00:00:00 2001
From: James Le Cuirot <chewi@gentoo.org>
Date: Sun, 25 Mar 2018 17:40:49 +0100
Subject: [PATCH] configure: Add target OS clause for Darwin
These triplets can also have a version number suffix, for example,
x86_64-apple-darwin16.
---
configure | 1 +
1 file changed, 1 insertion(+)
diff --git a/configure b/configure
index 5b6b710..2d8ac42 100755
--- a/configure
+++ b/configure
@@ -410,6 +410,7 @@ else
amigaos) TARGET_OS=AmigaOS ;;
mingw32*) TARGET_OS=MINGW32 ;;
wine) TARGET_OS=Wine ;;
+ darwin*) TARGET_OS=Darwin ;;
esac
}
TARGET_OS="UNKNOWN"

@ -1,23 +0,0 @@
From 14db7f9ee87e05450853ba0e1d8e83cc34aef3e4 Mon Sep 17 00:00:00 2001
From: James Le Cuirot <chewi@aura-online.co.uk>
Date: Sat, 24 Mar 2018 13:51:56 +0000
Subject: [PATCH] configure: Match FreeBSD triplets with versions
Triplets such as x86_64-unknown-freebsd11.1 are common.
---
configure | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure b/configure
index 8ebb929..5b6b710 100755
--- a/configure
+++ b/configure
@@ -398,7 +398,7 @@ else
part=$(echo $BUILD_TARGET | cut -d '-' -f $component)
case "$(echo $part | tr '[A-Z]' '[a-z]')" in
linux) TARGET_OS=Linux ;;
- freebsd) TARGET_OS=FreeBSD ;;
+ freebsd*) TARGET_OS=FreeBSD ;;
gnu/kfreebsd) TARGET_OS=FreeBSD ;;
netbsd) TARGET_OS=NetBSD ;;
bsd/os) TARGET_OS=BSD/OS ;;

@ -1,54 +0,0 @@
From c1776248a0b34a690e99ab9a7a814c34f78088ec Mon Sep 17 00:00:00 2001
From: Lars Wendler <polynomial-c@gentoo.org>
Date: Mon, 19 Mar 2018 10:47:13 +0100
Subject: [PATCH] "echo -n" cannot be expected to work with every POSIX shell
See "man 1p echo" section APPLICATION USAGE. This patch replaces "echo -n"
with "printf '%s'".
---
configure | 15 ++-------------
1 file changed, 2 insertions(+), 13 deletions(-)
diff --git a/configure b/configure
index f480f7b..2a7d485 100755
--- a/configure
+++ b/configure
@@ -22,17 +22,6 @@ INSTALL_LIB_STATIC=auto
INSTALL_LIB_SHARED=auto
INSTALL_PKGCONFIGDIR="$PKG_INSTALLDIR"
-case $(echo -n) in
- -n) # SysV style
- ECHO_N=
- ECHO_C='\c'
- ;;
- *) # BSD style
- ECHO_N='-n '
- ECHO_C=
- ;;
-esac
-
# display error message and exit
die () {
echo
@@ -235,7 +224,7 @@ trap remove_tmpdir EXIT
str_concat()
{
- echo ${ECHO_N} $@ ${ECHO_C}
+ printf '%s ' $@
}
yn_nonempty()
@@ -246,7 +235,7 @@ yn_nonempty()
# Use this before starting a check
start_check() {
echo "============ Checking for $1 ============" >> "$TMPLOG"
- echo ${ECHO_N} "Checking for $1 ... ${ECHO_C}"
+ printf '%s' "Checking for $1 ... "
res_comment=""
}
--
2.16.2

@ -1,26 +0,0 @@
From 4558d6753611ab1bf21765017e5b451aee8409f6 Mon Sep 17 00:00:00 2001
From: James Le Cuirot <chewi@gentoo.org>
Date: Sun, 18 Mar 2018 14:23:28 +0000
Subject: [PATCH] configure: Don't quote $CC when calling it
It might have additional arguments.
---
configure | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure b/configure
index f480f7b..8ebb929 100755
--- a/configure
+++ b/configure
@@ -480,7 +480,7 @@ if test "$(basename $CC)" = "icc" || test "$(basename $CC)" = "ecc"; then
else
CC_TMP="$CC"
for CC in "$CC_TMP" gcc cc ; do
- if "$CC" -v >/dev/null 2>&1; then
+ if $CC -v >/dev/null 2>&1; then
cc_name_tmp=$($CC -v 2>&1 | tail -n 1 | cut -d ' ' -f 1)
if test "$cc_name_tmp" = "gcc"; then
cc_name=$cc_name_tmp
--
2.16.1

@ -1,77 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit toolchain-funcs multilib-minimal
DESCRIPTION="Console utility and library for computing and verifying file hash sums"
HOMEPAGE="http://rhash.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}-src.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris ~x86-solaris"
IUSE="debug nls ssl static-libs"
RDEPEND="
ssl? (
dev-libs/openssl:0=[${MULTILIB_USEDEP}]
)"
DEPEND="${RDEPEND}
nls? ( sys-devel/gettext )"
S="${WORKDIR}/RHash-${PV}"
PATCHES=(
"${FILESDIR}"/unquote-cc.patch
"${FILESDIR}"/${P}-no_echon.patch
"${FILESDIR}"/{freebsd,darwin}-triplet.patch
)
src_prepare() {
default
multilib_copy_sources
}
multilib_src_configure() {
set -- \
./configure \
--target="${CHOST}" \
--cc="$(tc-getCC)" \
--ar="$(tc-getAR)" \
--extra-cflags="${CFLAGS}" \
--extra-ldflags="${LDFLAGS}" \
--prefix="${EPREFIX}"/usr \
--libdir="${EPREFIX}"/usr/$(get_libdir) \
--sysconfdir="${EPREFIX}"/etc \
--disable-openssl-runtime \
--disable-static \
--enable-lib-shared \
$(use_enable debug) \
$(use_enable nls gettext) \
$(use_enable ssl openssl) \
$(use_enable static-libs lib-static)
echo "${@}"
"${@}" || die "configure failed"
}
# We would add compile-gmo to the build targets but install-gmo always
# recompiles unconditionally. :(
multilib_src_install() {
# -j1 needed due to race condition.
emake DESTDIR="${D}" -j1 \
install{,-pkg-config} \
$(use nls && echo install-gmo) \
$(use kernel_Winnt || echo install-lib-so-link)
emake DESTDIR="${D}" -j1 \
-C lib${PN} install-headers
}
multilib_src_test() {
emake test
}

Binary file not shown.

@ -1,4 +1,4 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -12,7 +12,7 @@ S="${WORKDIR}"/abs
LICENSE="public-domain"
SLOT="0"
KEYWORDS="~alpha amd64 hppa ~mips ppc ~riscv sparc x86"
KEYWORDS="~alpha amd64 ~arm64 hppa ~mips ppc ~riscv sparc x86"
IUSE="pdf"
src_unpack() {

@ -1,4 +1,4 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -12,7 +12,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="FDL-1.1+"
SLOT="0"
KEYWORDS="amd64 ppc ~riscv x86"
KEYWORDS="amd64 ~arm64 ppc ~riscv x86"
HTML_DOCS=( "." )

Binary file not shown.

@ -11,7 +11,7 @@ SRC_URI="https://github.com/hboetes/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="public-domain"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ppc ~ppc64 ~riscv ~sparc ~x86"
IUSE="livecd"
RDEPEND="

@ -12,7 +12,7 @@ SRC_URI="mirror://gnu/zile/${P}.tar.gz"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ppc ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris"
RDEPEND="dev-libs/glib:2
dev-libs/libgee:0.8=

Binary file not shown.

@ -11,7 +11,7 @@ SRC_URI="https://github.com/davep/${PN}.el/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
KEYWORDS="amd64 ppc ppc64 x86"
S="${WORKDIR}/${PN}.el-${PV}"
SITEFILE="50${PN}-gentoo.el"

@ -13,7 +13,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86"
KEYWORDS="amd64 ppc x86"
ELISP_REMOVE="install-package.el lpath.el"
SITEFILE="50${PN}-gentoo.el"

@ -11,7 +11,7 @@ SRC_URI="http://howm.sourceforge.jp/a/${P}.tar.gz"
LICENSE="GPL-1+ GPL-2+"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos"
SITEFILE="50${PN}-gentoo.el"

@ -13,7 +13,7 @@ SRC_URI="https://github.com/hniksic/${MY_PN}/archive/release/${PV}.tar.gz -> ${P
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86"
KEYWORDS="amd64 ppc x86"
S="${WORKDIR}/${MY_PN}-release-${PV}"
SITEFILE="50${PN}-gentoo.el"

@ -13,7 +13,7 @@ SRC_URI="https://github.com/immerrr/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
RESTRICT="test" # tests require cask which isn't packaged yet
SITEFILE="50${PN}-gentoo.el"

@ -11,7 +11,7 @@ SRC_URI="https://github.com/purcell/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2+ Texinfo-manual"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos"
BDEPEND="sys-apps/texinfo"

@ -13,7 +13,7 @@ S="${WORKDIR}/${P}/lisp"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
KEYWORDS="amd64 ppc ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
SITEFILE="50${PN}-gentoo.el"
DOCS="../README*.md ../AUTHORS.md ../CHANGELOG.md ../CONTRIBUTING.md"

@ -11,6 +11,6 @@ SRC_URI="http://synthcode.com/emacs/${P}.el.gz"
LICENSE="public-domain"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="~alpha amd64 ppc ppc64 x86 ~amd64-linux ~x86-linux"
SITEFILE="60${PN}-gentoo.el"

@ -14,7 +14,7 @@ SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.el.xz"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~ppc ~x86"
KEYWORDS="~alpha amd64 ppc x86"
SITEFILE="50${PN}-gentoo-6.1.el"

@ -13,7 +13,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
KEYWORDS="amd64 ppc ppc64 x86"
SITEFILE="50${PN}-gentoo.el"
DOCS="README.md"

Binary file not shown.

@ -478,6 +478,7 @@ DIST honnef.co%2Fgo%2Ftools%2F@v%2Fv0.0.1-2020.1.3.mod 300 BLAKE2B 3aa707c72ce7e
DIST honnef.co%2Fgo%2Ftools%2F@v%2Fv0.0.1-2020.1.4.mod 300 BLAKE2B 3aa707c72ce7e402cc1765fed30253eb87e9e87aecc8096130e973623f53ded2a7572ca3d464e4db9de524cd651b3aa8fbc9fa0ef6bdc4eb9670b4d8652f4dfc SHA512 d814675e448688f6a506397bedb262fb2583c913ec1f8ca9ffc11206bdcd7e1f4ee3c561aee366eb2cdaede8c522a6f58f116236f3033bc7e91ec139bdd140f9
DIST redis_exporter-1.35.1.tar.gz 185831 BLAKE2B 7d296d6dcaa3c61be76e3eed602fdfe7fd8b68fab0bf39fc8412c2e377aa01a230d7f44a3f09ed29c9308e3794da7db8780604feef218964fbc4445fc6b1bd03 SHA512 7c0ac25d0fed6b760593bf9fd08eb259d46d0690606da587d553bcd4c168ada3c87fe63d5082468a2c1ebfc20531a2de39219e3f201402d5b06f4238d7525b69
DIST redis_exporter-1.36.0.tar.gz 185852 BLAKE2B 0caac6541d990e170d9251de154df24b6476c94e2ceefc14979bd1d500825859210b5aacd1426355d6c05522960a951b3a1b88dc363f611c1feed6b3ab5e567d SHA512 e1ef0f27e79edb8ad0ea67ce4349ffa86d274b6af751eabc66c145010359e36218f9d68b084075f45410f37cbdc653d50fc5cba374f27d8518e2e687ad421e4c
DIST redis_exporter-1.37.0.tar.gz 186024 BLAKE2B 8d0e5791fe07d24b740ea8aa250f835d1a4e84d231e59bf64914062a277ec73e8b3e6a3337f769854fa01faaf68f40878b08a813498e6d282295f90d67fb3eb1 SHA512 80992066e510e329bed0a7ba216020a3107bee2446546b3505ffb012b9919eced2f8863d0a82d5d99945bc223cc9dd2ae4efc1d82a4b486257d5f20bf62fd5c6
DIST rsc.io%2Fbinaryregexp%2F@v%2Fv0.2.0.mod 36 BLAKE2B 61110bed2b9e99e0250cf6e8b842257202c89b3462edf9368b73cab29f9dbd4dcc66c3e290a1d6329b7d62321eecc52082a8c4c0797eac743a29a8a00910a93f SHA512 db50ff677b0bdccbc1a1ad3df7c5cc76f2fcccf3ab99d08d1c2868440eb9b893fe89452f4286f7d42f2f16abf0f4acda67fe86e174dcfa730a743aafcc166774
DIST rsc.io%2Fquote%2Fv3%2F@v%2Fv3.1.0.mod 55 BLAKE2B f1f0ba35f0ffd200ed37c06b2025c1fd436e3fd857bd525b9295c0cbcade7e1f037e3f566124a7ef428384d50525426f0d40468c967e39bac6057174710e2566 SHA512 e6357ddd7d09692c60e59e6cb80469ade8284052cdd3ea520ec4dbcb42c1cabe045c599e43cce94bec022bd82e87a554ecac42f8c917cf2ff44daff9c1a147d5
DIST rsc.io%2Fsampler%2F@v%2Fv1.3.0.mod 88 BLAKE2B c2ac3c9619e396db470c9951dfc11cdacccd56ae09b3b353015ee7e5fbb023df288dbf48d81b44c309241d1ea89a2e0ee42ee1d17e536fcfa531aaee0e651ab7 SHA512 2137507eb25fbae419605e0cd6bca4cfa584110eebc276cd759a4dcb6f97e52928e5b2d9b276e76bcabcec3bbfc2c42f97fa29f54695d27fb00f9423e1638863

@ -0,0 +1,539 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit go-module systemd
EGIT_COMMIT=a1c28b775760f2f00fce07a24db7fd4e83c26b9f
DESCRIPTION="Prometheus Exporter for Redis Metrics. Supports Redis 2.x, 3.x and 4.x"
HOMEPAGE="https://github.com/oliver006/redis_exporter"
EGO_SUM=(
"cloud.google.com/go v0.26.0/go.mod"
"cloud.google.com/go v0.34.0/go.mod"
"cloud.google.com/go v0.38.0/go.mod"
"cloud.google.com/go v0.44.1/go.mod"
"cloud.google.com/go v0.44.2/go.mod"
"cloud.google.com/go v0.45.1/go.mod"
"cloud.google.com/go v0.46.3/go.mod"
"cloud.google.com/go v0.50.0/go.mod"
"cloud.google.com/go v0.52.0/go.mod"
"cloud.google.com/go v0.53.0/go.mod"
"cloud.google.com/go v0.54.0/go.mod"
"cloud.google.com/go v0.56.0/go.mod"
"cloud.google.com/go v0.57.0/go.mod"
"cloud.google.com/go v0.62.0/go.mod"
"cloud.google.com/go v0.65.0/go.mod"
"cloud.google.com/go/bigquery v1.0.1/go.mod"
"cloud.google.com/go/bigquery v1.3.0/go.mod"
"cloud.google.com/go/bigquery v1.4.0/go.mod"
"cloud.google.com/go/bigquery v1.5.0/go.mod"
"cloud.google.com/go/bigquery v1.7.0/go.mod"
"cloud.google.com/go/bigquery v1.8.0/go.mod"
"cloud.google.com/go/datastore v1.0.0/go.mod"
"cloud.google.com/go/datastore v1.1.0/go.mod"
"cloud.google.com/go/pubsub v1.0.1/go.mod"
"cloud.google.com/go/pubsub v1.1.0/go.mod"
"cloud.google.com/go/pubsub v1.2.0/go.mod"
"cloud.google.com/go/pubsub v1.3.1/go.mod"
"cloud.google.com/go/storage v1.0.0/go.mod"
"cloud.google.com/go/storage v1.5.0/go.mod"
"cloud.google.com/go/storage v1.6.0/go.mod"
"cloud.google.com/go/storage v1.8.0/go.mod"
"cloud.google.com/go/storage v1.10.0/go.mod"
"dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod"
"github.com/BurntSushi/toml v0.3.1/go.mod"
"github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod"
"github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod"
"github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod"
"github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod"
"github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod"
"github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod"
"github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod"
"github.com/beorn7/perks v1.0.0/go.mod"
"github.com/beorn7/perks v1.0.1"
"github.com/beorn7/perks v1.0.1/go.mod"
"github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod"
"github.com/cespare/xxhash/v2 v2.1.1/go.mod"
"github.com/cespare/xxhash/v2 v2.1.2"
"github.com/cespare/xxhash/v2 v2.1.2/go.mod"
"github.com/chzyer/logex v1.1.10/go.mod"
"github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod"
"github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod"
"github.com/client9/misspell v0.3.4/go.mod"
"github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod"
"github.com/davecgh/go-spew v1.1.0/go.mod"
"github.com/davecgh/go-spew v1.1.1"
"github.com/davecgh/go-spew v1.1.1/go.mod"
"github.com/envoyproxy/go-control-plane v0.9.0/go.mod"
"github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod"
"github.com/envoyproxy/go-control-plane v0.9.4/go.mod"
"github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod"
"github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod"
"github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod"
"github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod"
"github.com/go-kit/kit v0.8.0/go.mod"
"github.com/go-kit/kit v0.9.0/go.mod"
"github.com/go-kit/log v0.1.0/go.mod"
"github.com/go-logfmt/logfmt v0.3.0/go.mod"
"github.com/go-logfmt/logfmt v0.4.0/go.mod"
"github.com/go-logfmt/logfmt v0.5.0/go.mod"
"github.com/go-stack/stack v1.8.0/go.mod"
"github.com/gogo/protobuf v1.1.1/go.mod"
"github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod"
"github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod"
"github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod"
"github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod"
"github.com/golang/mock v1.1.1/go.mod"
"github.com/golang/mock v1.2.0/go.mod"
"github.com/golang/mock v1.3.1/go.mod"
"github.com/golang/mock v1.4.0/go.mod"
"github.com/golang/mock v1.4.1/go.mod"
"github.com/golang/mock v1.4.3/go.mod"
"github.com/golang/mock v1.4.4/go.mod"
"github.com/golang/protobuf v1.2.0/go.mod"
"github.com/golang/protobuf v1.3.1/go.mod"
"github.com/golang/protobuf v1.3.2/go.mod"
"github.com/golang/protobuf v1.3.3/go.mod"
"github.com/golang/protobuf v1.3.4/go.mod"
"github.com/golang/protobuf v1.3.5/go.mod"
"github.com/golang/protobuf v1.4.0-rc.1/go.mod"
"github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod"
"github.com/golang/protobuf v1.4.0-rc.2/go.mod"
"github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod"
"github.com/golang/protobuf v1.4.0/go.mod"
"github.com/golang/protobuf v1.4.1/go.mod"
"github.com/golang/protobuf v1.4.2/go.mod"
"github.com/golang/protobuf v1.4.3/go.mod"
"github.com/golang/protobuf v1.5.0/go.mod"
"github.com/golang/protobuf v1.5.2"
"github.com/golang/protobuf v1.5.2/go.mod"
"github.com/gomodule/redigo v1.8.5/go.mod"
"github.com/gomodule/redigo v1.8.8"
"github.com/gomodule/redigo v1.8.8/go.mod"
"github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod"
"github.com/google/btree v1.0.0/go.mod"
"github.com/google/go-cmp v0.2.0/go.mod"
"github.com/google/go-cmp v0.3.0/go.mod"
"github.com/google/go-cmp v0.3.1/go.mod"
"github.com/google/go-cmp v0.4.0/go.mod"
"github.com/google/go-cmp v0.4.1/go.mod"
"github.com/google/go-cmp v0.5.0/go.mod"
"github.com/google/go-cmp v0.5.1/go.mod"
"github.com/google/go-cmp v0.5.4/go.mod"
"github.com/google/go-cmp v0.5.5"
"github.com/google/go-cmp v0.5.5/go.mod"
"github.com/google/gofuzz v1.0.0/go.mod"
"github.com/google/martian v2.1.0+incompatible/go.mod"
"github.com/google/martian/v3 v3.0.0/go.mod"
"github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod"
"github.com/google/pprof v0.0.0-20190515194954-54271f7e092f/go.mod"
"github.com/google/pprof v0.0.0-20191218002539-d4f498aebedc/go.mod"
"github.com/google/pprof v0.0.0-20200212024743-f11f1df84d12/go.mod"
"github.com/google/pprof v0.0.0-20200229191704-1ebb73c60ed3/go.mod"
"github.com/google/pprof v0.0.0-20200430221834-fc25d7d30c6d/go.mod"
"github.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod"
"github.com/google/renameio v0.1.0/go.mod"
"github.com/googleapis/gax-go/v2 v2.0.4/go.mod"
"github.com/googleapis/gax-go/v2 v2.0.5/go.mod"
"github.com/hashicorp/golang-lru v0.5.0/go.mod"
"github.com/hashicorp/golang-lru v0.5.1/go.mod"
"github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod"
"github.com/jpillora/backoff v1.0.0/go.mod"
"github.com/json-iterator/go v1.1.6/go.mod"
"github.com/json-iterator/go v1.1.10/go.mod"
"github.com/json-iterator/go v1.1.11/go.mod"
"github.com/json-iterator/go v1.1.12/go.mod"
"github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod"
"github.com/jstemmer/go-junit-report v0.9.1/go.mod"
"github.com/julienschmidt/httprouter v1.2.0/go.mod"
"github.com/julienschmidt/httprouter v1.3.0/go.mod"
"github.com/kisielk/gotool v1.0.0/go.mod"
"github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod"
"github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod"
"github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod"
"github.com/kr/pretty v0.1.0"
"github.com/kr/pretty v0.1.0/go.mod"
"github.com/kr/pty v1.1.1/go.mod"
"github.com/kr/text v0.1.0"
"github.com/kr/text v0.1.0/go.mod"
"github.com/matttproud/golang_protobuf_extensions v1.0.1"
"github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod"
"github.com/mna/redisc v1.3.2"
"github.com/mna/redisc v1.3.2/go.mod"
"github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod"
"github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod"
"github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod"
"github.com/modern-go/reflect2 v1.0.1/go.mod"
"github.com/modern-go/reflect2 v1.0.2/go.mod"
"github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod"
"github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod"
"github.com/pkg/errors v0.8.0/go.mod"
"github.com/pkg/errors v0.8.1/go.mod"
"github.com/pkg/errors v0.9.1/go.mod"
"github.com/pmezard/go-difflib v1.0.0"
"github.com/pmezard/go-difflib v1.0.0/go.mod"
"github.com/prometheus/client_golang v0.9.1/go.mod"
"github.com/prometheus/client_golang v1.0.0/go.mod"
"github.com/prometheus/client_golang v1.7.1/go.mod"
"github.com/prometheus/client_golang v1.11.0/go.mod"
"github.com/prometheus/client_golang v1.12.1"
"github.com/prometheus/client_golang v1.12.1/go.mod"
"github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod"
"github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod"
"github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod"
"github.com/prometheus/client_model v0.2.0"
"github.com/prometheus/client_model v0.2.0/go.mod"
"github.com/prometheus/common v0.4.1/go.mod"
"github.com/prometheus/common v0.10.0/go.mod"
"github.com/prometheus/common v0.26.0/go.mod"
"github.com/prometheus/common v0.32.1"
"github.com/prometheus/common v0.32.1/go.mod"
"github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod"
"github.com/prometheus/procfs v0.0.2/go.mod"
"github.com/prometheus/procfs v0.1.3/go.mod"
"github.com/prometheus/procfs v0.6.0/go.mod"
"github.com/prometheus/procfs v0.7.3"
"github.com/prometheus/procfs v0.7.3/go.mod"
"github.com/rogpeppe/go-internal v1.3.0/go.mod"
"github.com/sirupsen/logrus v1.2.0/go.mod"
"github.com/sirupsen/logrus v1.4.2/go.mod"
"github.com/sirupsen/logrus v1.6.0/go.mod"
"github.com/sirupsen/logrus v1.8.1"
"github.com/sirupsen/logrus v1.8.1/go.mod"
"github.com/stretchr/objx v0.1.0/go.mod"
"github.com/stretchr/objx v0.1.1/go.mod"
"github.com/stretchr/testify v1.2.2/go.mod"
"github.com/stretchr/testify v1.3.0/go.mod"
"github.com/stretchr/testify v1.4.0/go.mod"
"github.com/stretchr/testify v1.5.1/go.mod"
"github.com/stretchr/testify v1.7.0"
"github.com/stretchr/testify v1.7.0/go.mod"
"github.com/yuin/goldmark v1.1.25/go.mod"
"github.com/yuin/goldmark v1.1.27/go.mod"
"github.com/yuin/goldmark v1.1.32/go.mod"
"go.opencensus.io v0.21.0/go.mod"
"go.opencensus.io v0.22.0/go.mod"
"go.opencensus.io v0.22.2/go.mod"
"go.opencensus.io v0.22.3/go.mod"
"go.opencensus.io v0.22.4/go.mod"
"golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod"
"golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod"
"golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod"
"golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod"
"golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod"
"golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod"
"golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod"
"golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod"
"golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod"
"golang.org/x/exp v0.0.0-20190829153037-c13cbed26979/go.mod"
"golang.org/x/exp v0.0.0-20191030013958-a1ab85dbe136/go.mod"
"golang.org/x/exp v0.0.0-20191129062945-2f5052295587/go.mod"
"golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod"
"golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod"
"golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod"
"golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod"
"golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod"
"golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod"
"golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod"
"golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod"
"golang.org/x/lint v0.0.0-20190301231843-5614ed5bae6f/go.mod"
"golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod"
"golang.org/x/lint v0.0.0-20190409202823-959b441ac422/go.mod"
"golang.org/x/lint v0.0.0-20190909230951-414d861bb4ac/go.mod"
"golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod"
"golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f/go.mod"
"golang.org/x/lint v0.0.0-20200130185559-910be7a94367/go.mod"
"golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod"
"golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod"
"golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod"
"golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod"
"golang.org/x/mod v0.1.0/go.mod"
"golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod"
"golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/go.mod"
"golang.org/x/mod v0.2.0/go.mod"
"golang.org/x/mod v0.3.0/go.mod"
"golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod"
"golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod"
"golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod"
"golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod"
"golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod"
"golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod"
"golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod"
"golang.org/x/net v0.0.0-20190501004415-9ce7a6920f09/go.mod"
"golang.org/x/net v0.0.0-20190503192946-f4e77d36d62c/go.mod"
"golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod"
"golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod"
"golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod"
"golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod"
"golang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod"
"golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod"
"golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod"
"golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod"
"golang.org/x/net v0.0.0-20200222125558-5a598a2470a0/go.mod"
"golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod"
"golang.org/x/net v0.0.0-20200301022130-244492dfa37a/go.mod"
"golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod"
"golang.org/x/net v0.0.0-20200501053045-e0ff5e5a1de5/go.mod"
"golang.org/x/net v0.0.0-20200506145744-7e3656a0809f/go.mod"
"golang.org/x/net v0.0.0-20200513185701-a91f0712d120/go.mod"
"golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/go.mod"
"golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod"
"golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod"
"golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod"
"golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod"
"golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod"
"golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod"
"golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod"
"golang.org/x/oauth2 v0.0.0-20191202225959-858c2ad4c8b6/go.mod"
"golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod"
"golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod"
"golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod"
"golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod"
"golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod"
"golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod"
"golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod"
"golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod"
"golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod"
"golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod"
"golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod"
"golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod"
"golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod"
"golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod"
"golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod"
"golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod"
"golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod"
"golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod"
"golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod"
"golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod"
"golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod"
"golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod"
"golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod"
"golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod"
"golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod"
"golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod"
"golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod"
"golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod"
"golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod"
"golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod"
"golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod"
"golang.org/x/sys v0.0.0-20200212091648-12a6c2dcc1e4/go.mod"
"golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod"
"golang.org/x/sys v0.0.0-20200302150141-5c8b2ff67527/go.mod"
"golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod"
"golang.org/x/sys v0.0.0-20200331124033-c3d80250170d/go.mod"
"golang.org/x/sys v0.0.0-20200501052902-10377860bb8e/go.mod"
"golang.org/x/sys v0.0.0-20200511232937-7e40ca221e25/go.mod"
"golang.org/x/sys v0.0.0-20200515095857-1151b9dac4a9/go.mod"
"golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod"
"golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod"
"golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod"
"golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod"
"golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod"
"golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod"
"golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod"
"golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod"
"golang.org/x/sys v0.0.0-20220114195835-da31bd327af9"
"golang.org/x/sys v0.0.0-20220114195835-da31bd327af9/go.mod"
"golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod"
"golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod"
"golang.org/x/text v0.3.0/go.mod"
"golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod"
"golang.org/x/text v0.3.2/go.mod"
"golang.org/x/text v0.3.3/go.mod"
"golang.org/x/text v0.3.6/go.mod"
"golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod"
"golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod"
"golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod"
"golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod"
"golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod"
"golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod"
"golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod"
"golang.org/x/tools v0.0.0-20190312151545-0bb0c0a6e846/go.mod"
"golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod"
"golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod"
"golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod"
"golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod"
"golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod"
"golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod"
"golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod"
"golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod"
"golang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod"
"golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod"
"golang.org/x/tools v0.0.0-20191113191852-77e3bb0ad9e7/go.mod"
"golang.org/x/tools v0.0.0-20191115202509-3a792d9c32b2/go.mod"
"golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod"
"golang.org/x/tools v0.0.0-20191125144606-a911d9008d1f/go.mod"
"golang.org/x/tools v0.0.0-20191130070609-6e064ea0cf2d/go.mod"
"golang.org/x/tools v0.0.0-20191216173652-a0e659d51361/go.mod"
"golang.org/x/tools v0.0.0-20191227053925-7b8e75db28f4/go.mod"
"golang.org/x/tools v0.0.0-20200117161641-43d50277825c/go.mod"
"golang.org/x/tools v0.0.0-20200122220014-bf1340f18c4a/go.mod"
"golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod"
"golang.org/x/tools v0.0.0-20200204074204-1cc6d1ef6c74/go.mod"
"golang.org/x/tools v0.0.0-20200207183749-b753a1ba74fa/go.mod"
"golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod"
"golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod"
"golang.org/x/tools v0.0.0-20200227222343-706bc42d1f0d/go.mod"
"golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod"
"golang.org/x/tools v0.0.0-20200312045724-11d5b4c81c7d/go.mod"
"golang.org/x/tools v0.0.0-20200331025713-a30bf2db82d4/go.mod"
"golang.org/x/tools v0.0.0-20200501065659-ab2804fb9c9d/go.mod"
"golang.org/x/tools v0.0.0-20200512131952-2bc93b1c0c88/go.mod"
"golang.org/x/tools v0.0.0-20200515010526-7d3b6ebf133d/go.mod"
"golang.org/x/tools v0.0.0-20200618134242-20370b0cb4b2/go.mod"
"golang.org/x/tools v0.0.0-20200729194436-6467de6f59a7/go.mod"
"golang.org/x/tools v0.0.0-20200804011535-6c149bb5ef0d/go.mod"
"golang.org/x/tools v0.0.0-20200825202427-b303f430e36d/go.mod"
"golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod"
"golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod"
"golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod"
"golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1"
"golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod"
"google.golang.org/api v0.4.0/go.mod"
"google.golang.org/api v0.7.0/go.mod"
"google.golang.org/api v0.8.0/go.mod"
"google.golang.org/api v0.9.0/go.mod"
"google.golang.org/api v0.13.0/go.mod"
"google.golang.org/api v0.14.0/go.mod"
"google.golang.org/api v0.15.0/go.mod"
"google.golang.org/api v0.17.0/go.mod"
"google.golang.org/api v0.18.0/go.mod"
"google.golang.org/api v0.19.0/go.mod"
"google.golang.org/api v0.20.0/go.mod"
"google.golang.org/api v0.22.0/go.mod"
"google.golang.org/api v0.24.0/go.mod"
"google.golang.org/api v0.28.0/go.mod"
"google.golang.org/api v0.29.0/go.mod"
"google.golang.org/api v0.30.0/go.mod"
"google.golang.org/appengine v1.1.0/go.mod"
"google.golang.org/appengine v1.4.0/go.mod"
"google.golang.org/appengine v1.5.0/go.mod"
"google.golang.org/appengine v1.6.1/go.mod"
"google.golang.org/appengine v1.6.5/go.mod"
"google.golang.org/appengine v1.6.6/go.mod"
"google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod"
"google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod"
"google.golang.org/genproto v0.0.0-20190418145605-e7d98fc518a7/go.mod"
"google.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod"
"google.golang.org/genproto v0.0.0-20190502173448-54afdca5d873/go.mod"
"google.golang.org/genproto v0.0.0-20190801165951-fa694d86fc64/go.mod"
"google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod"
"google.golang.org/genproto v0.0.0-20190911173649-1774047e7e51/go.mod"
"google.golang.org/genproto v0.0.0-20191108220845-16a3f7862a1a/go.mod"
"google.golang.org/genproto v0.0.0-20191115194625-c23dd37a84c9/go.mod"
"google.golang.org/genproto v0.0.0-20191216164720-4f79533eabd1/go.mod"
"google.golang.org/genproto v0.0.0-20191230161307-f3c370f40bfb/go.mod"
"google.golang.org/genproto v0.0.0-20200115191322-ca5a22157cba/go.mod"
"google.golang.org/genproto v0.0.0-20200122232147-0452cf42e150/go.mod"
"google.golang.org/genproto v0.0.0-20200204135345-fa8e72b47b90/go.mod"
"google.golang.org/genproto v0.0.0-20200212174721-66ed5ce911ce/go.mod"
"google.golang.org/genproto v0.0.0-20200224152610-e50cd9704f63/go.mod"
"google.golang.org/genproto v0.0.0-20200228133532-8c2c7df3a383/go.mod"
"google.golang.org/genproto v0.0.0-20200305110556-506484158171/go.mod"
"google.golang.org/genproto v0.0.0-20200312145019-da6875a35672/go.mod"
"google.golang.org/genproto v0.0.0-20200331122359-1ee6d9798940/go.mod"
"google.golang.org/genproto v0.0.0-20200430143042-b979b6f78d84/go.mod"
"google.golang.org/genproto v0.0.0-20200511104702-f5ebc3bea380/go.mod"
"google.golang.org/genproto v0.0.0-20200515170657-fc4c6c6a6587/go.mod"
"google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod"
"google.golang.org/genproto v0.0.0-20200618031413-b414f8b61790/go.mod"
"google.golang.org/genproto v0.0.0-20200729003335-053ba62fc06f/go.mod"
"google.golang.org/genproto v0.0.0-20200804131852-c06518451d9c/go.mod"
"google.golang.org/genproto v0.0.0-20200825200019-8632dd797987/go.mod"
"google.golang.org/grpc v1.19.0/go.mod"
"google.golang.org/grpc v1.20.1/go.mod"
"google.golang.org/grpc v1.21.1/go.mod"
"google.golang.org/grpc v1.23.0/go.mod"
"google.golang.org/grpc v1.25.1/go.mod"
"google.golang.org/grpc v1.26.0/go.mod"
"google.golang.org/grpc v1.27.0/go.mod"
"google.golang.org/grpc v1.27.1/go.mod"
"google.golang.org/grpc v1.28.0/go.mod"
"google.golang.org/grpc v1.29.1/go.mod"
"google.golang.org/grpc v1.30.0/go.mod"
"google.golang.org/grpc v1.31.0/go.mod"
"google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod"
"google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod"
"google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod"
"google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod"
"google.golang.org/protobuf v1.21.0/go.mod"
"google.golang.org/protobuf v1.22.0/go.mod"
"google.golang.org/protobuf v1.23.0/go.mod"
"google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod"
"google.golang.org/protobuf v1.24.0/go.mod"
"google.golang.org/protobuf v1.25.0/go.mod"
"google.golang.org/protobuf v1.26.0-rc.1/go.mod"
"google.golang.org/protobuf v1.26.0"
"google.golang.org/protobuf v1.26.0/go.mod"
"gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod"
"gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod"
"gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod"
"gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15"
"gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod"
"gopkg.in/errgo.v2 v2.1.0/go.mod"
"gopkg.in/yaml.v2 v2.2.1/go.mod"
"gopkg.in/yaml.v2 v2.2.2/go.mod"
"gopkg.in/yaml.v2 v2.2.4/go.mod"
"gopkg.in/yaml.v2 v2.2.5/go.mod"
"gopkg.in/yaml.v2 v2.3.0/go.mod"
"gopkg.in/yaml.v2 v2.4.0/go.mod"
"gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c"
"gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod"
"honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod"
"honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod"
"honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod"
"honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod"
"honnef.co/go/tools v0.0.1-2019.2.3/go.mod"
"honnef.co/go/tools v0.0.1-2020.1.3/go.mod"
"honnef.co/go/tools v0.0.1-2020.1.4/go.mod"
"rsc.io/binaryregexp v0.2.0/go.mod"
"rsc.io/quote/v3 v3.1.0/go.mod"
"rsc.io/sampler v1.3.0/go.mod"
)
go-module_set_globals
SRC_URI="https://github.com/oliver006/redis_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz
${EGO_SUM_SRC_URI}"
LICENSE="MIT Apache-2.0 BSD"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
RDEPEND="
acct-user/redis_exporter
acct-group/redis_exporter"
DEPEND="${RDEPEND}"
RESTRICT+=" test"
src_prepare() {
default
sed -e "s|\(^[[:space:]]*VERSION[[:space:]]*=[[:space:]]*\).*|\1\"${PV}\"|" \
-e "s|\(^[[:space:]]*BUILD_DATE[[:space:]]*=[[:space:]]*\).*|\1\"$(LC_ALL=C date -u)\"|" \
-e "s|\(^[[:space:]]*COMMIT_SHA1[[:space:]]*=[[:space:]]*\).*|\1\"${EGIT_COMMIT}\"|" \
-i main.go || die
}
src_compile() {
export GOBIN="${S}/bin"
go install \
-ldflags="-X main.BuildVersion=${PV} -X main.BuildCommitSha=${EGIT_COMMIT} -X main.BuildDate=$(date +%F-%T)" \
./... || die
}
src_test() {
go test -work ./... || die
}
src_install() {
dobin "${GOBIN}/redis_exporter"
dodoc README.md
local dir
for dir in /var/{lib,log}/${PN}; do
keepdir "${dir}"
fowners ${PN}:${PN} "${dir}"
done
newinitd "${FILESDIR}"/${PN}.initd ${PN}
newconfd "${FILESDIR}"/${PN}.confd ${PN}
insinto /etc/logrotate.d
newins "${FILESDIR}/${PN}.logrotated" "${PN}"
systemd_dounit "${FILESDIR}/${PN}.service"
}

Binary file not shown.

@ -17,7 +17,7 @@ BASE_SRC_URI_STABLE="https://download.documentfoundation.org/${PN/-l10n/}/stable
LICENSE="|| ( LGPL-3 MPL-1.1 )"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux"
#KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux"
IUSE="offlinehelp"
#

@ -13,7 +13,7 @@ SRC_URI="mirror://sourceforge/project/${PN}/${PN}-devel/${PV}/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ~ppc ~ppc64 ~x86"
KEYWORDS="amd64 ppc ~ppc64 ~x86"
IUSE="+boost debug examples graphicsmagick hunspell +minimal osg +pdf scripts +templates tk"
REQUIRED_USE="${PYTHON_REQUIRED_USE}

Binary file not shown.

@ -1,2 +1,3 @@
DIST nattka-0.2.19.tar.gz 93800 BLAKE2B 65efff2454cdb24f3b71dc5713adbf3bda3976ed958622f7adec14e3708a53531aac6801e838fd21346ce02974fa79bcb82c3f4d2a6555095fa8d81db9ad2992 SHA512 7508a78fa774a9229caa573426839ec84210e9a2d38b7ca9cd47d857b9922b946e9e31fadf946f001565ce6dc65103bca8af58935d7eb2fcf32da423345ce61a
DIST nattka-0.3.1.tar.gz 95368 BLAKE2B cefe8236694ceffe9adf3c5af9c8c3521613fbc09b6e27804ee855a376f940baa5e7bf3d6d5d62371d37cea090748ec7053963dd675e88b9cedb48d595425ff4 SHA512 14b04b2f6fff41cc9705afe5cfc522a3009b14afa4ff5759c1913387afd04c97231fe2ad5661cef43c5ebfe764012cec251fd78463bbca924fbf33068a31aaee
DIST nattka-0.3.tar.gz 93914 BLAKE2B c38ec336ed202e508e1cb4bfcae0586b94a6fd55df97d5be514caddf0113b9588496492ebc68dbda45c4a3034451368d32a3f53f5ebc8f3136515614ac70ecab SHA512 390b276ab11e5de056e165f95574b5a97edbcad3adf876e20bb6ef8accf94629428c4fc60bbea4eaf883d5e0a9f6e7ea00aff74989d31bdd59c418041d9164dc

@ -0,0 +1,38 @@
# Copyright 2020-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=flit
PYTHON_COMPAT=( python3_{8..10} )
inherit distutils-r1
DESCRIPTION="A New Arch Tester Toolkit -- open-source stable-bot replacement"
HOMEPAGE="https://github.com/mgorny/nattka/"
SRC_URI="https://github.com/mgorny/nattka/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
IUSE="depgraph-order"
RDEPEND="
dev-python/lxml[${PYTHON_USEDEP}]
dev-python/requests[${PYTHON_USEDEP}]
dev-util/pkgcheck[${PYTHON_USEDEP}]
dev-vcs/git
sys-apps/pkgcore[${PYTHON_USEDEP}]
depgraph-order? (
dev-python/networkx[${PYTHON_USEDEP}]
)
"
BDEPEND="
>=dev-python/flit_core-3.7.1[${PYTHON_USEDEP}]
test? (
dev-python/vcrpy[${PYTHON_USEDEP}]
)
"
distutils_enable_sphinx doc --no-autodoc
distutils_enable_tests pytest

Binary file not shown.

@ -18,7 +18,7 @@ if [[ ${PV} == "9999" ]]; then
EGIT_REPO_URI="https://github.com/${PN}-shell/${PN}-shell.git"
else
SRC_URI="https://github.com/${PN}-shell/${PN}-shell/releases/download/${MY_PV}/${MY_P}.tar.xz"
KEYWORDS="~alpha ~amd64 arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-solaris"
KEYWORDS="~alpha ~amd64 arm ~arm64 hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-solaris"
fi
LICENSE="GPL-2"

Binary file not shown.

@ -1,7 +1,4 @@
DIST calibre-5.16.0-SIP-v4.patch.xz 6768 BLAKE2B b939233266c7cab0fa71ccdeb748bbcffbf16248081ccf0ab313420fe3898954da71e0796b3d6c44e93c636113221f95fa6affc6be97bf41f4086a909b2849f9 SHA512 eb19e6bb328f60eb4af2c38d54c3d2a09989d41d71d27de10ab5ae443af902c3c12fc70042d4735dd785573cb63bb7d7a10ae5f7ed72afc1e1a9c6aacaf64aec
DIST calibre-5.16.1.tar.xz 36757204 BLAKE2B 71114eed723180142f5428a680d8c5ceabcd007acbc6a70a9298e45a9f21fc793f0ef86bf60b36c96bbd15e9e3f8d8638d179872fb6ff1f9b9f5e31a93e65ba1 SHA512 41cf29cc32c7af08215baf80609f8f099d44f2b82d34181451cbf3ed1648e07d64712dba9ff0ddec5bad3d342c7d8bde40bb822f6bd5fb93a4b29d25cf188aae
DIST calibre-5.33.2.tar.xz 37081104 BLAKE2B 7ef40e39d47b10378918dcdefbec5925d9a43f47c345ccb6fd8811b99a2c417923467724f3ba92152b0951e473af7dd20dcb779e1fc6ad7970ac527fc06fe09c SHA512 5886730000005f4e36373ef6d0b3da4e4f06941886f05d1703420720c16aa913dcfca9358c33e4fcec764f0e4bd24e0223ff35421b41f1cc3f818d6d53896d64
DIST calibre-5.35.0.tar.xz 37801424 BLAKE2B fcef3dfc3fa09d3a6324b3b9a860a3f0eb4cfe1311df84aea39beed9c0f42e620bfe3ec1a33c89e0e701b955fe44cf9b15f1e4b0f24529847c9b28d2eb7b2fa2 SHA512 b99a5c86a48d29bcc6f6188f9e4a20fe8ac1c4115147a964596e2bc3635d20c2556ae0be90c7deac95d4ef430b6ce6c7b712510358f71a22817c9360203b1f11
DIST calibre-5.36.0.tar.xz 38199520 BLAKE2B 2b1a8cb2df6a8b62796c709fdf15a7ab108c3dde4a25bbf33b3b3ef08101fc56927dc7dfbfdccf29b697d4d321c253d2a8b182d41b7fa1b993f095297f427720 SHA512 0a6fbd68870cbe0e992ef4275b8c0270801647e5afd8db8a6705dc551097ecdcf05d641ac652415e578e979d8009d1281dd123b8dc95ad118e00d9331d50f882
DIST calibre-5.37.0.tar.xz 38369808 BLAKE2B ac2e782b55c58f3b530d750e9cfbb003d694fec58d41dc1310c15aa2707f17a2061a550ed767359c42f634b4597b00cdceb43f098cc830ddff12e3610a70ba52 SHA512 cadff4f2ae8717fecf9d3e55098b42ebf5e1e3c69250bd151919c4fbdd1fdc1d0d8857f8da8475d84938b3e5e3b65d755de7c55e6086c42da7ad4f3811d4e9bb
DIST calibre-5.38.0.tar.xz 38365980 BLAKE2B 1c6939e69abde52426d32ab56a91f9b31f687f1d20792c5b360bf5563d72384db395b29e63d8becc1e196f54522a8643588109891943eb1fa525a5395873bb3e SHA512 2744e9d0d3f6daa578360ffb8334adbc49b4dc41100fbe0820b73e4a5a1e24c70c1e75bf1f03b9590f2a64d6c0c7710b26884356567f51200d5c00fe23ed5772
DIST calibre-5.39.0.tar.xz 38372008 BLAKE2B e56513c918d7ac3e7f1b28e98dc82c29170577991714185791b0723daa4adbd404a6fac6584c7d2ad7ceafc19ab6aee519ab0c2d5f0bcc66f4de6236d7096b68 SHA512 ea6c739339603abea890a06f43c16522746352bde3abaebd6f2fa64771ec63800a62bd7f0cd47d1c7fb865a6cd73f9ff7522d71d7f4f593247f8eeb93a9263f6

@ -1,315 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{8..9} )
PYTHON_REQ_USE="ipv6(+),sqlite,ssl"
inherit toolchain-funcs python-single-r1 xdg-utils
DESCRIPTION="Ebook management application"
HOMEPAGE="https://calibre-ebook.com/"
SRC_URI="https://download.calibre-ebook.com/${PV}/${P}.tar.xz"
LICENSE="
GPL-3+
GPL-3
GPL-2+
GPL-2
GPL-1+
LGPL-3+
LGPL-2.1+
LGPL-2.1
BSD
MIT
Old-MIT
Apache-2.0
public-domain
|| ( Artistic GPL-1+ )
CC-BY-3.0
OFL-1.1
PSF-2
"
KEYWORDS="~amd64 ~arm ~x86"
SLOT="0"
IUSE="ios +udisks"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
COMMON_DEPEND="${PYTHON_DEPS}
>=app-text/hunspell-1.7:=
>=app-text/podofo-0.9.6_pre20171027:=
>=app-text/poppler-0.26.5[qt5]
dev-libs/glib:2=
dev-libs/hyphen:=
>=dev-libs/icu-57.1:=
dev-libs/libinput:=
>=dev-libs/dbus-glib-0.106
dev-libs/snowball-stemmer:=
>=sys-apps/dbus-1.10.8
$(python_gen_cond_dep '
app-accessibility/speech-dispatcher[python,${PYTHON_USEDEP}]
>=dev-python/apsw-3.25.2_p1[${PYTHON_USEDEP}]
dev-python/beautifulsoup4[${PYTHON_USEDEP}]
dev-python/cchardet[${PYTHON_USEDEP}]
>=dev-python/chardet-3.0.3[${PYTHON_USEDEP}]
>=dev-python/cssselect-0.7.1[${PYTHON_USEDEP}]
>=dev-python/css-parser-1.0.4[${PYTHON_USEDEP}]
>=dev-python/dbus-python-1.2.4[${PYTHON_USEDEP}]
dev-python/dnspython[${PYTHON_USEDEP}]
>=dev-python/feedparser-5.2.1[${PYTHON_USEDEP}]
>=dev-python/html2text-2019.8.11[${PYTHON_USEDEP}]
>=dev-python/html5-parser-0.4.9[${PYTHON_USEDEP}]
dev-python/jeepney[${PYTHON_USEDEP}]
>=dev-python/lxml-3.8.0[${PYTHON_USEDEP}]
>=dev-python/markdown-3.0.1[${PYTHON_USEDEP}]
>=dev-python/mechanize-0.3.5[${PYTHON_USEDEP}]
>=dev-python/msgpack-0.6.2[${PYTHON_USEDEP}]
>=dev-python/netifaces-0.10.5[${PYTHON_USEDEP}]
>=dev-python/pillow-3.2.0[${PYTHON_USEDEP}]
>=dev-python/psutil-4.3.0[${PYTHON_USEDEP}]
>=dev-python/pychm-0.8.6[${PYTHON_USEDEP}]
dev-python/pycryptodome[${PYTHON_USEDEP}]
>=dev-python/pygments-2.3.1[${PYTHON_USEDEP}]
>=dev-python/python-dateutil-2.5.3[${PYTHON_USEDEP}]
>=dev-python/PyQt5-5.15.5_pre2107091435[gui,svg,widgets,network,printsupport,${PYTHON_USEDEP}]
>=dev-python/PyQt-builder-1.10.3[${PYTHON_USEDEP}]
>=dev-python/PyQtWebEngine-5.15.5_pre2108100905[${PYTHON_USEDEP}]
dev-python/regex[${PYTHON_USEDEP}]
dev-python/zeroconf[${PYTHON_USEDEP}]
')
dev-qt/qtcore:5=
dev-qt/qtdbus:5=
dev-qt/qtgui:5=[jpeg]
>=dev-qt/qtwebengine-5.12
dev-qt/qtwidgets:5=
dev-util/desktop-file-utils
dev-util/gtk-update-icon-cache
media-fonts/liberation-fonts
media-libs/fontconfig:=
>=media-libs/freetype-2:=
>=media-libs/libmtp-1.1.11:=
>=media-libs/libwmf-0.2.8
>=media-gfx/optipng-0.7.6
>=sys-libs/zlib-1.2.11:=
virtual/libusb:1=
x11-libs/libxkbcommon:=
x11-libs/libX11:=
x11-libs/libXext:=
x11-libs/libXrender:=
x11-misc/shared-mime-info
>=x11-misc/xdg-utils-1.0.2-r2
ios? (
>=app-pda/usbmuxd-1.0.8
>=app-pda/libimobiledevice-1.2.0
)
udisks? ( virtual/libudev )"
RDEPEND="${COMMON_DEPEND}
udisks? ( sys-fs/udisks:2 )"
DEPEND="${COMMON_DEPEND}"
BDEPEND="$(python_gen_cond_dep '
>=dev-python/setuptools-23.1.0[${PYTHON_USEDEP}]
>=dev-python/sip-5[${PYTHON_USEDEP}]
')
>=virtual/podofo-build-0.9.6_pre20171027
virtual/pkgconfig"
PATCHES=(
# Don't prompt the user for updates - they've installed via
# an ebuild.
"${FILESDIR}/${PN}-2.9.0-no_updates_dialog.patch"
# Skip calling a binary (JxrDecApp) from libjxr which is used for tests
# We don't (yet?) package libjxr and it seems to be dead upstream
# (last commit in 2017)
"${FILESDIR}/${PN}-5.31.0-jxr-test.patch"
# TODO:
# test_qt tries to load a bunch of images using Qt and it currently fails
# due to some presumably missing dependencies. This is important and
# we need to look into it, but at time of writing, none of the tests
# are even bring run, so I'd like to return to this later.
# We don't want to skip test_qt entirely, so just skip this particular
# assert for now.
"${FILESDIR}/${PN}-5.31.0-qt-image-test.patch"
)
pkg_pretend() {
if [[ ${MERGE_TYPE} != binary ]] && tc-is-gcc && [[ $(gcc-major-version) -lt 6 ]]; then
eerror "Calibre cannot be built with this version of gcc."
eerror "You need at least gcc-6.0"
die "Your C compiler is too old for this package."
fi
}
src_prepare() {
default
# Warning:
#
# While it might be rather tempting to add yet another sed here,
# please don't. There have been several bugs in Gentoo's packaging
# of calibre from seds-which-become-stale. Please consider
# creating a patch instead, but in any case, run the test suite
# and ensure it passes.
#
# If in doubt about a problem, checking Fedora or Arch Linux's packaging
# is recommended, as Arch Linux's PKGBUILD is maintained by a Calibre
# contributor. Or just ask them.
# Fix outdated version constant.
#sed -e "s#\\(^numeric_version =\\).*#\\1 (${PV//./, })#" \
# -i src/calibre/constants.py || \
# die "sed failed to patch constants.py"
# Avoid sandbox violation in /usr/share/gnome/apps when linux.py
# calls xdg-* (bug #258938).
sed -e "s|'xdg-desktop-menu', 'install'|\\0, '--mode', 'user'|" \
-e "s|check_call(\\['xdg-desktop-menu', 'forceupdate'\\])|#\\0|" \
-e "s|\\(CurrentDir(tdir)\\), \\\\\$|\\1:|" \
-e "s|, PreserveMIMEDefaults():|:|" \
-e "s|'xdg-icon-resource', 'install'|\\0, '--mode', 'user'|" \
-e "s|cmd\[2\]|cmd[4]|" \
-e "s|cc(\\['xdg-desktop-menu', 'forceupdate'\\])|#\\0|" \
-e "s|'xdg-mime', 'install'|\\0, '--mode', 'user'|" \
-i src/calibre/linux.py || die "sed failed to patch linux.py"
# Disable unnecessary privilege dropping for bug #287067.
sed -e "s:if os.geteuid() == 0:if False and os.geteuid() == 0:" \
-i setup/install.py || die "sed failed to patch install.py"
sed -e "/^ os.chdir(os.path.join(src_dir, 'build'))$/a\
\\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ self.check_call(['sed', \
'-e', 's|^CFLAGS .*|\\\\\\\\0 ${CFLAGS}|', \
'-e', 's|^CXXFLAGS .*|\\\\\\\\0 ${CXXFLAGS}|', \
'-e', 's|^LFLAGS .*|\\\\\\\\0 ${LDFLAGS}|', \
'-i', os.path.join(os.path.basename(src_dir), 'Makefile')])" \
-e "s|open(self.j(bdir, '.qmake.conf'), 'wb').close()|open(self.j(bdir, '.qmake.conf'), 'wb').write(b'QMAKE_LFLAGS += ${LDFLAGS}')|" \
-i setup/build.py || die "sed failed to patch build.py"
}
src_compile() {
# TODO: get qmake called by setup.py to respect CC and CXX too
tc-export CC CXX
# bug 821871
local MY_LIBDIR="${ESYSROOT}/usr/$(get_libdir)"
export FT_LIB_DIR="${MY_LIBDIR}" HUNSPELL_LIB_DIR="${MY_LIBDIR}" PODOFO_LIB_DIR="${MY_LIBDIR}"
PATH="${T}/bin:${PATH}" ${EPYTHON} setup.py build || die
}
src_test() {
# Skipped tests:
# - 7z (unpackaged Python dependency: py7zr)
# - test_unrar (unpackaged Python dependency: unrardll)
#
# Note that we currently have a hack to skip one part of test_qt!
# See PATCHES for more.
CALIBRE_PY3_PORT=1 ${PYTHON} setup.py test \
--exclude-test-name 7z \
--exclude-test-name test_searching \
--exclude-test-name test_unrar || die
}
src_install() {
# calibre works with python 3, so remove the python 2 constraint
export CALIBRE_PY3_PORT=1
# Bypass kbuildsycoca and update-mime-database in order to
# avoid sandbox violations if xdg-mime tries to call them.
mkdir "${T}/bin" || die
cat - > "${T}/bin/kbuildsycoca" <<-EOF
#!${BASH}
echo $0 : $@
exit 0
EOF
cp "${T}"/bin/{kbuildsycoca,update-mime-database} || die
chmod +x "${T}"/bin/{kbuildsycoca,update-mime-database} || die
export QMAKE="${EPREFIX}/usr/$(get_libdir)/qt5/bin/qmake"
# Unset DISPLAY in order to prevent xdg-mime from triggering a sandbox
# violation with kbuildsycoca as in bug #287067, comment #13.
export -n DISPLAY
# Bug #352625 - Some LANGUAGE values can trigger the following ValueError:
# File "/usr/lib/python2.6/locale.py", line 486, in getdefaultlocale
# return _parse_localename(localename)
# File "/usr/lib/python2.6/locale.py", line 418, in _parse_localename
# raise ValueError, 'unknown locale: %s' % localename
#ValueError: unknown locale: 46
export -n LANG LANGUAGE ${!LC_*}
export LC_ALL=C.utf8 #709682
# Bug #295672 - Avoid sandbox violation in ~/.config by forcing
# variables to point to our fake temporary $HOME.
export HOME="${T}/fake_homedir"
export XDG_CONFIG_HOME="${HOME}/.config"
export XDG_DATA_HOME="${HOME}/.local/share"
export CALIBRE_CONFIG_DIRECTORY="${XDG_CONFIG_HOME}/calibre"
mkdir -p "${XDG_DATA_HOME}" "${CALIBRE_CONFIG_DIRECTORY}" || die
tc-export CC CXX
# Bug #334243 - respect LDFLAGS when building extensions
export OVERRIDE_CFLAGS="$CFLAGS" OVERRIDE_LDFLAGS="$LDFLAGS"
local libdir=$(get_libdir)
[[ -n $libdir ]] || die "get_libdir returned an empty string"
addpredict /dev/dri #665310
PATH=${T}/bin:${PATH} PYTHONPATH=${S}/src${PYTHONPATH:+:}${PYTHONPATH} \
"${PYTHON}" setup.py install \
--root="${D}" \
--prefix="${EPREFIX}/usr" \
--libdir="${EPREFIX}/usr/${libdir}" \
--staging-root="${ED}/usr" \
--staging-libdir="${ED}/usr/${libdir}" || die
find "${ED}"/usr/share -type d -empty -delete
cd "${ED}"/usr/share/calibre/fonts/liberation || die
local x
for x in * ; do
[[ -f ${EPREFIX}/usr/share/fonts/liberation-fonts/${x} ]] || continue
ln -sf "../../../fonts/liberation-fonts/${x}" "${x}" || die
done
einfo "Converting python shebangs"
python_fix_shebang --force "${ED}"
einfo "Compiling python modules"
python_optimize "${ED}"/usr/$(get_libdir)/calibre "${D}/$(python_get_sitedir)"
newinitd "${FILESDIR}"/calibre-server-3.init calibre-server
newconfd "${FILESDIR}"/calibre-server-3.conf calibre-server
}
pkg_preinst() {
# Indentify stray directories from upstream's "Binary install"
# method (see bug 622728).
CALIBRE_LIB_DIR=/usr/$(get_libdir)/calibre
CALIBRE_LIB_CONTENT=$(for x in "${ED}${CALIBRE_LIB_DIR}"/*; do
printf -- "${x##*/} "; done) || die "Failed to list ${ED}${CALIBRE_LIB_DIR}"
}
pkg_postinst() {
[[ -n ${CALIBRE_LIB_DIR} ]] || die "CALIBRE_LIB_DIR is unset"
local x
for x in "${EROOT}${CALIBRE_LIB_DIR}"/*; do
if [[ " ${CALIBRE_LIB_CONTENT} " != *" ${x##*/} "* ]]; then
elog "Purging '${x}'"
rm -rf "${x}"
fi
done
xdg_desktop_database_update
xdg_mimeinfo_database_update
xdg_icon_cache_update
}
pkg_postrm() {
xdg_desktop_database_update
xdg_mimeinfo_database_update
xdg_icon_cache_update
}

@ -1,315 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{8..9} )
PYTHON_REQ_USE="ipv6(+),sqlite,ssl"
inherit toolchain-funcs python-single-r1 xdg-utils
DESCRIPTION="Ebook management application"
HOMEPAGE="https://calibre-ebook.com/"
SRC_URI="https://download.calibre-ebook.com/${PV}/${P}.tar.xz"
LICENSE="
GPL-3+
GPL-3
GPL-2+
GPL-2
GPL-1+
LGPL-3+
LGPL-2.1+
LGPL-2.1
BSD
MIT
Old-MIT
Apache-2.0
public-domain
|| ( Artistic GPL-1+ )
CC-BY-3.0
OFL-1.1
PSF-2
"
KEYWORDS="~amd64 ~arm ~x86"
SLOT="0"
IUSE="ios +udisks"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
COMMON_DEPEND="${PYTHON_DEPS}
>=app-text/hunspell-1.7:=
>=app-text/podofo-0.9.6_pre20171027:=
>=app-text/poppler-0.26.5[qt5]
dev-libs/glib:2=
dev-libs/hyphen:=
>=dev-libs/icu-57.1:=
dev-libs/libinput:=
>=dev-libs/dbus-glib-0.106
dev-libs/snowball-stemmer:=
>=sys-apps/dbus-1.10.8
$(python_gen_cond_dep '
app-accessibility/speech-dispatcher[python,${PYTHON_USEDEP}]
>=dev-python/apsw-3.25.2_p1[${PYTHON_USEDEP}]
dev-python/beautifulsoup4[${PYTHON_USEDEP}]
dev-python/cchardet[${PYTHON_USEDEP}]
>=dev-python/chardet-3.0.3[${PYTHON_USEDEP}]
>=dev-python/cssselect-0.7.1[${PYTHON_USEDEP}]
>=dev-python/css-parser-1.0.4[${PYTHON_USEDEP}]
>=dev-python/dbus-python-1.2.4[${PYTHON_USEDEP}]
dev-python/dnspython[${PYTHON_USEDEP}]
>=dev-python/feedparser-5.2.1[${PYTHON_USEDEP}]
>=dev-python/html2text-2019.8.11[${PYTHON_USEDEP}]
>=dev-python/html5-parser-0.4.9[${PYTHON_USEDEP}]
dev-python/jeepney[${PYTHON_USEDEP}]
>=dev-python/lxml-3.8.0[${PYTHON_USEDEP}]
>=dev-python/markdown-3.0.1[${PYTHON_USEDEP}]
>=dev-python/mechanize-0.3.5[${PYTHON_USEDEP}]
>=dev-python/msgpack-0.6.2[${PYTHON_USEDEP}]
>=dev-python/netifaces-0.10.5[${PYTHON_USEDEP}]
>=dev-python/pillow-3.2.0[${PYTHON_USEDEP}]
>=dev-python/psutil-4.3.0[${PYTHON_USEDEP}]
>=dev-python/pychm-0.8.6[${PYTHON_USEDEP}]
dev-python/pycryptodome[${PYTHON_USEDEP}]
>=dev-python/pygments-2.3.1[${PYTHON_USEDEP}]
>=dev-python/python-dateutil-2.5.3[${PYTHON_USEDEP}]
>=dev-python/PyQt5-5.15.5_pre2107091435[gui,svg,widgets,network,printsupport,${PYTHON_USEDEP}]
>=dev-python/PyQt-builder-1.10.3[${PYTHON_USEDEP}]
>=dev-python/PyQtWebEngine-5.15.5_pre2108100905[${PYTHON_USEDEP}]
dev-python/regex[${PYTHON_USEDEP}]
dev-python/zeroconf[${PYTHON_USEDEP}]
')
dev-qt/qtcore:5=
dev-qt/qtdbus:5=
dev-qt/qtgui:5=[jpeg]
>=dev-qt/qtwebengine-5.12
dev-qt/qtwidgets:5=
dev-util/desktop-file-utils
dev-util/gtk-update-icon-cache
media-fonts/liberation-fonts
media-libs/fontconfig:=
>=media-libs/freetype-2:=
>=media-libs/libmtp-1.1.11:=
>=media-libs/libwmf-0.2.8
>=media-gfx/optipng-0.7.6
>=sys-libs/zlib-1.2.11:=
virtual/libusb:1=
x11-libs/libxkbcommon:=
x11-libs/libX11:=
x11-libs/libXext:=
x11-libs/libXrender:=
x11-misc/shared-mime-info
>=x11-misc/xdg-utils-1.0.2-r2
ios? (
>=app-pda/usbmuxd-1.0.8
>=app-pda/libimobiledevice-1.2.0
)
udisks? ( virtual/libudev )"
RDEPEND="${COMMON_DEPEND}
udisks? ( sys-fs/udisks:2 )"
DEPEND="${COMMON_DEPEND}"
BDEPEND="$(python_gen_cond_dep '
>=dev-python/setuptools-23.1.0[${PYTHON_USEDEP}]
>=dev-python/sip-5[${PYTHON_USEDEP}]
')
>=virtual/podofo-build-0.9.6_pre20171027
virtual/pkgconfig"
PATCHES=(
# Don't prompt the user for updates - they've installed via
# an ebuild.
"${FILESDIR}/${PN}-2.9.0-no_updates_dialog.patch"
# Skip calling a binary (JxrDecApp) from libjxr which is used for tests
# We don't (yet?) package libjxr and it seems to be dead upstream
# (last commit in 2017)
"${FILESDIR}/${PN}-5.35.0-jxr-test.patch"
# TODO:
# test_qt tries to load a bunch of images using Qt and it currently fails
# due to some presumably missing dependencies. This is important and
# we need to look into it, but at time of writing, none of the tests
# are even bring run, so I'd like to return to this later.
# We don't want to skip test_qt entirely, so just skip this particular
# assert for now.
"${FILESDIR}/${PN}-5.31.0-qt-image-test.patch"
)
pkg_pretend() {
if [[ ${MERGE_TYPE} != binary ]] && tc-is-gcc && [[ $(gcc-major-version) -lt 6 ]]; then
eerror "Calibre cannot be built with this version of gcc."
eerror "You need at least gcc-6.0"
die "Your C compiler is too old for this package."
fi
}
src_prepare() {
default
# Warning:
#
# While it might be rather tempting to add yet another sed here,
# please don't. There have been several bugs in Gentoo's packaging
# of calibre from seds-which-become-stale. Please consider
# creating a patch instead, but in any case, run the test suite
# and ensure it passes.
#
# If in doubt about a problem, checking Fedora or Arch Linux's packaging
# is recommended, as Arch Linux's PKGBUILD is maintained by a Calibre
# contributor. Or just ask them.
# Fix outdated version constant.
#sed -e "s#\\(^numeric_version =\\).*#\\1 (${PV//./, })#" \
# -i src/calibre/constants.py || \
# die "sed failed to patch constants.py"
# Avoid sandbox violation in /usr/share/gnome/apps when linux.py
# calls xdg-* (bug #258938).
sed -e "s|'xdg-desktop-menu', 'install'|\\0, '--mode', 'user'|" \
-e "s|check_call(\\['xdg-desktop-menu', 'forceupdate'\\])|#\\0|" \
-e "s|\\(CurrentDir(tdir)\\), \\\\\$|\\1:|" \
-e "s|, PreserveMIMEDefaults():|:|" \
-e "s|'xdg-icon-resource', 'install'|\\0, '--mode', 'user'|" \
-e "s|cmd\[2\]|cmd[4]|" \
-e "s|cc(\\['xdg-desktop-menu', 'forceupdate'\\])|#\\0|" \
-e "s|'xdg-mime', 'install'|\\0, '--mode', 'user'|" \
-i src/calibre/linux.py || die "sed failed to patch linux.py"
# Disable unnecessary privilege dropping for bug #287067.
sed -e "s:if os.geteuid() == 0:if False and os.geteuid() == 0:" \
-i setup/install.py || die "sed failed to patch install.py"
sed -e "/^ os.chdir(os.path.join(src_dir, 'build'))$/a\
\\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ self.check_call(['sed', \
'-e', 's|^CFLAGS .*|\\\\\\\\0 ${CFLAGS}|', \
'-e', 's|^CXXFLAGS .*|\\\\\\\\0 ${CXXFLAGS}|', \
'-e', 's|^LFLAGS .*|\\\\\\\\0 ${LDFLAGS}|', \
'-i', os.path.join(os.path.basename(src_dir), 'Makefile')])" \
-e "s|open(self.j(bdir, '.qmake.conf'), 'wb').close()|open(self.j(bdir, '.qmake.conf'), 'wb').write(b'QMAKE_LFLAGS += ${LDFLAGS}')|" \
-i setup/build.py || die "sed failed to patch build.py"
}
src_compile() {
# TODO: get qmake called by setup.py to respect CC and CXX too
tc-export CC CXX
# bug 821871
local MY_LIBDIR="${ESYSROOT}/usr/$(get_libdir)"
export FT_LIB_DIR="${MY_LIBDIR}" HUNSPELL_LIB_DIR="${MY_LIBDIR}" PODOFO_LIB_DIR="${MY_LIBDIR}"
PATH="${T}/bin:${PATH}" ${EPYTHON} setup.py build || die
}
src_test() {
# Skipped tests:
# - 7z (unpackaged Python dependency: py7zr)
# - test_unrar (unpackaged Python dependency: unrardll)
#
# Note that we currently have a hack to skip one part of test_qt!
# See PATCHES for more.
CALIBRE_PY3_PORT=1 ${PYTHON} setup.py test \
--exclude-test-name 7z \
--exclude-test-name test_searching \
--exclude-test-name test_unrar || die
}
src_install() {
# calibre works with python 3, so remove the python 2 constraint
export CALIBRE_PY3_PORT=1
# Bypass kbuildsycoca and update-mime-database in order to
# avoid sandbox violations if xdg-mime tries to call them.
mkdir "${T}/bin" || die
cat - > "${T}/bin/kbuildsycoca" <<-EOF
#!${BASH}
echo $0 : $@
exit 0
EOF
cp "${T}"/bin/{kbuildsycoca,update-mime-database} || die
chmod +x "${T}"/bin/{kbuildsycoca,update-mime-database} || die
export QMAKE="${EPREFIX}/usr/$(get_libdir)/qt5/bin/qmake"
# Unset DISPLAY in order to prevent xdg-mime from triggering a sandbox
# violation with kbuildsycoca as in bug #287067, comment #13.
export -n DISPLAY
# Bug #352625 - Some LANGUAGE values can trigger the following ValueError:
# File "/usr/lib/python2.6/locale.py", line 486, in getdefaultlocale
# return _parse_localename(localename)
# File "/usr/lib/python2.6/locale.py", line 418, in _parse_localename
# raise ValueError, 'unknown locale: %s' % localename
#ValueError: unknown locale: 46
export -n LANG LANGUAGE ${!LC_*}
export LC_ALL=C.utf8 #709682
# Bug #295672 - Avoid sandbox violation in ~/.config by forcing
# variables to point to our fake temporary $HOME.
export HOME="${T}/fake_homedir"
export XDG_CONFIG_HOME="${HOME}/.config"
export XDG_DATA_HOME="${HOME}/.local/share"
export CALIBRE_CONFIG_DIRECTORY="${XDG_CONFIG_HOME}/calibre"
mkdir -p "${XDG_DATA_HOME}" "${CALIBRE_CONFIG_DIRECTORY}" || die
tc-export CC CXX
# Bug #334243 - respect LDFLAGS when building extensions
export OVERRIDE_CFLAGS="$CFLAGS" OVERRIDE_LDFLAGS="$LDFLAGS"
local libdir=$(get_libdir)
[[ -n $libdir ]] || die "get_libdir returned an empty string"
addpredict /dev/dri #665310
PATH=${T}/bin:${PATH} PYTHONPATH=${S}/src${PYTHONPATH:+:}${PYTHONPATH} \
"${PYTHON}" setup.py install \
--root="${D}" \
--prefix="${EPREFIX}/usr" \
--libdir="${EPREFIX}/usr/${libdir}" \
--staging-root="${ED}/usr" \
--staging-libdir="${ED}/usr/${libdir}" || die
find "${ED}"/usr/share -type d -empty -delete
cd "${ED}"/usr/share/calibre/fonts/liberation || die
local x
for x in * ; do
[[ -f ${EPREFIX}/usr/share/fonts/liberation-fonts/${x} ]] || continue
ln -sf "../../../fonts/liberation-fonts/${x}" "${x}" || die
done
einfo "Converting python shebangs"
python_fix_shebang --force "${ED}"
einfo "Compiling python modules"
python_optimize "${ED}"/usr/$(get_libdir)/calibre "${D}/$(python_get_sitedir)"
newinitd "${FILESDIR}"/calibre-server-3.init calibre-server
newconfd "${FILESDIR}"/calibre-server-3.conf calibre-server
}
pkg_preinst() {
# Indentify stray directories from upstream's "Binary install"
# method (see bug 622728).
CALIBRE_LIB_DIR=/usr/$(get_libdir)/calibre
CALIBRE_LIB_CONTENT=$(for x in "${ED}${CALIBRE_LIB_DIR}"/*; do
printf -- "${x##*/} "; done) || die "Failed to list ${ED}${CALIBRE_LIB_DIR}"
}
pkg_postinst() {
[[ -n ${CALIBRE_LIB_DIR} ]] || die "CALIBRE_LIB_DIR is unset"
local x
for x in "${EROOT}${CALIBRE_LIB_DIR}"/*; do
if [[ " ${CALIBRE_LIB_CONTENT} " != *" ${x##*/} "* ]]; then
elog "Purging '${x}'"
rm -rf "${x}"
fi
done
xdg_desktop_database_update
xdg_mimeinfo_database_update
xdg_icon_cache_update
}
pkg_postrm() {
xdg_desktop_database_update
xdg_mimeinfo_database_update
xdg_icon_cache_update
}

@ -1,316 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{8..9} )
PYTHON_REQ_USE="ipv6(+),sqlite,ssl"
inherit toolchain-funcs python-single-r1 xdg-utils
DESCRIPTION="Ebook management application"
HOMEPAGE="https://calibre-ebook.com/"
SRC_URI="https://download.calibre-ebook.com/${PV}/${P}.tar.xz"
LICENSE="
GPL-3+
GPL-3
GPL-2+
GPL-2
GPL-1+
LGPL-3+
LGPL-2.1+
LGPL-2.1
BSD
MIT
Old-MIT
Apache-2.0
public-domain
|| ( Artistic GPL-1+ )
CC-BY-3.0
OFL-1.1
PSF-2
"
KEYWORDS="~amd64 ~arm ~x86"
SLOT="0"
IUSE="ios +udisks"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
COMMON_DEPEND="${PYTHON_DEPS}
>=app-text/hunspell-1.7:=
>=app-text/podofo-0.9.6_pre20171027:=
>=app-text/poppler-0.26.5[qt5]
dev-libs/glib:2=
dev-libs/hyphen:=
>=dev-libs/icu-57.1:=
dev-libs/libinput:=
>=dev-libs/dbus-glib-0.106
dev-libs/snowball-stemmer:=
>=sys-apps/dbus-1.10.8
$(python_gen_cond_dep '
app-accessibility/speech-dispatcher[python,${PYTHON_USEDEP}]
>=dev-python/apsw-3.25.2_p1[${PYTHON_USEDEP}]
dev-python/beautifulsoup4[${PYTHON_USEDEP}]
dev-python/cchardet[${PYTHON_USEDEP}]
>=dev-python/chardet-3.0.3[${PYTHON_USEDEP}]
>=dev-python/cssselect-0.7.1[${PYTHON_USEDEP}]
>=dev-python/css-parser-1.0.4[${PYTHON_USEDEP}]
>=dev-python/dbus-python-1.2.4[${PYTHON_USEDEP}]
dev-python/dnspython[${PYTHON_USEDEP}]
>=dev-python/feedparser-5.2.1[${PYTHON_USEDEP}]
>=dev-python/html2text-2019.8.11[${PYTHON_USEDEP}]
>=dev-python/html5-parser-0.4.9[${PYTHON_USEDEP}]
dev-python/jeepney[${PYTHON_USEDEP}]
>=dev-python/lxml-3.8.0[${PYTHON_USEDEP}]
>=dev-python/markdown-3.0.1[${PYTHON_USEDEP}]
>=dev-python/mechanize-0.3.5[${PYTHON_USEDEP}]
>=dev-python/msgpack-0.6.2[${PYTHON_USEDEP}]
>=dev-python/netifaces-0.10.5[${PYTHON_USEDEP}]
>=dev-python/pillow-3.2.0[${PYTHON_USEDEP}]
>=dev-python/psutil-4.3.0[${PYTHON_USEDEP}]
>=dev-python/pychm-0.8.6[${PYTHON_USEDEP}]
dev-python/pycryptodome[${PYTHON_USEDEP}]
>=dev-python/pygments-2.3.1[${PYTHON_USEDEP}]
>=dev-python/python-dateutil-2.5.3[${PYTHON_USEDEP}]
>=dev-python/PyQt5-5.15.5_pre2107091435[gui,svg,widgets,network,printsupport,${PYTHON_USEDEP}]
>=dev-python/PyQt-builder-1.10.3[${PYTHON_USEDEP}]
>=dev-python/PyQtWebEngine-5.15.5_pre2108100905[${PYTHON_USEDEP}]
dev-python/regex[${PYTHON_USEDEP}]
dev-python/zeroconf[${PYTHON_USEDEP}]
')
dev-qt/qtcore:5=
dev-qt/qtdbus:5=
dev-qt/qtgui:5=[jpeg]
>=dev-qt/qtwebengine-5.12
dev-qt/qtwidgets:5=
dev-util/desktop-file-utils
dev-util/gtk-update-icon-cache
media-fonts/liberation-fonts
media-libs/fontconfig:=
>=media-libs/freetype-2:=
>=media-libs/libmtp-1.1.11:=
>=media-libs/libwmf-0.2.8
>=media-gfx/optipng-0.7.6
>=sys-libs/zlib-1.2.11:=
virtual/libusb:1=
x11-libs/libxkbcommon:=
x11-libs/libX11:=
x11-libs/libXext:=
x11-libs/libXrender:=
x11-misc/shared-mime-info
>=x11-misc/xdg-utils-1.0.2-r2
ios? (
>=app-pda/usbmuxd-1.0.8
>=app-pda/libimobiledevice-1.2.0
)
udisks? ( virtual/libudev )"
RDEPEND="${COMMON_DEPEND}
udisks? ( sys-fs/udisks:2 )"
DEPEND="${COMMON_DEPEND}"
BDEPEND="$(python_gen_cond_dep '
>=dev-python/setuptools-23.1.0[${PYTHON_USEDEP}]
>=dev-python/sip-5[${PYTHON_USEDEP}]
')
>=virtual/podofo-build-0.9.6_pre20171027
virtual/pkgconfig"
PATCHES=(
# Don't prompt the user for updates - they've installed via
# an ebuild.
"${FILESDIR}/${PN}-2.9.0-no_updates_dialog.patch"
# Skip calling a binary (JxrDecApp) from libjxr which is used for tests
# We don't (yet?) package libjxr and it seems to be dead upstream
# (last commit in 2017)
"${FILESDIR}/${PN}-5.35.0-jxr-test.patch"
# TODO:
# test_qt tries to load a bunch of images using Qt and it currently fails
# due to some presumably missing dependencies. This is important and
# we need to look into it, but at time of writing, none of the tests
# are even bring run, so I'd like to return to this later.
# We don't want to skip test_qt entirely, so just skip this particular
# assert for now.
"${FILESDIR}/${PN}-5.31.0-qt-image-test.patch"
)
pkg_pretend() {
if [[ ${MERGE_TYPE} != binary ]] && tc-is-gcc && [[ $(gcc-major-version) -lt 6 ]]; then
eerror "Calibre cannot be built with this version of gcc."
eerror "You need at least gcc-6.0"
die "Your C compiler is too old for this package."
fi
}
src_prepare() {
default
# Warning:
#
# While it might be rather tempting to add yet another sed here,
# please don't. There have been several bugs in Gentoo's packaging
# of calibre from seds-which-become-stale. Please consider
# creating a patch instead, but in any case, run the test suite
# and ensure it passes.
#
# If in doubt about a problem, checking Fedora or Arch Linux's packaging
# is recommended, as Arch Linux's PKGBUILD is maintained by a Calibre
# contributor. Or just ask them.
# Fix outdated version constant.
#sed -e "s#\\(^numeric_version =\\).*#\\1 (${PV//./, })#" \
# -i src/calibre/constants.py || \
# die "sed failed to patch constants.py"
# Avoid sandbox violation in /usr/share/gnome/apps when linux.py
# calls xdg-* (bug #258938).
sed -e "s|'xdg-desktop-menu', 'install'|\\0, '--mode', 'user'|" \
-e "s|check_call(\\['xdg-desktop-menu', 'forceupdate'\\])|#\\0|" \
-e "s|\\(CurrentDir(tdir)\\), \\\\\$|\\1:|" \
-e "s|, PreserveMIMEDefaults():|:|" \
-e "s|'xdg-icon-resource', 'install'|\\0, '--mode', 'user'|" \
-e "s|cmd\[2\]|cmd[4]|" \
-e "s|cc(\\['xdg-desktop-menu', 'forceupdate'\\])|#\\0|" \
-e "s|'xdg-mime', 'install'|\\0, '--mode', 'user'|" \
-i src/calibre/linux.py || die "sed failed to patch linux.py"
# Disable unnecessary privilege dropping for bug #287067.
sed -e "s:if os.geteuid() == 0:if False and os.geteuid() == 0:" \
-i setup/install.py || die "sed failed to patch install.py"
sed -e "/^ os.chdir(os.path.join(src_dir, 'build'))$/a\
\\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ self.check_call(['sed', \
'-e', 's|^CFLAGS .*|\\\\\\\\0 ${CFLAGS}|', \
'-e', 's|^CXXFLAGS .*|\\\\\\\\0 ${CXXFLAGS}|', \
'-e', 's|^LFLAGS .*|\\\\\\\\0 ${LDFLAGS}|', \
'-i', os.path.join(os.path.basename(src_dir), 'Makefile')])" \
-e "s|open(self.j(bdir, '.qmake.conf'), 'wb').close()|open(self.j(bdir, '.qmake.conf'), 'wb').write(b'QMAKE_LFLAGS += ${LDFLAGS}')|" \
-i setup/build.py || die "sed failed to patch build.py"
}
src_compile() {
# TODO: get qmake called by setup.py to respect CC and CXX too
tc-export CC CXX
# bug 821871
local MY_LIBDIR="${ESYSROOT}/usr/$(get_libdir)"
export FT_LIB_DIR="${MY_LIBDIR}" HUNSPELL_LIB_DIR="${MY_LIBDIR}" PODOFO_LIB_DIR="${MY_LIBDIR}"
PATH="${T}/bin:${PATH}" ${EPYTHON} setup.py build || die
}
src_test() {
# Skipped tests:
# - 7z (unpackaged Python dependency: py7zr)
# - test_unrar (unpackaged Python dependency: unrardll)
#
# Note that we currently have a hack to skip one part of test_qt!
# See PATCHES for more.
CALIBRE_PY3_PORT=1 ${PYTHON} setup.py test \
--exclude-test-name 7z \
--exclude-test-name test_mem_leaks \
--exclude-test-name test_searching \
--exclude-test-name test_unrar || die
}
src_install() {
# calibre works with python 3, so remove the python 2 constraint
export CALIBRE_PY3_PORT=1
# Bypass kbuildsycoca and update-mime-database in order to
# avoid sandbox violations if xdg-mime tries to call them.
mkdir "${T}/bin" || die
cat - > "${T}/bin/kbuildsycoca" <<-EOF
#!${BASH}
echo $0 : $@
exit 0
EOF
cp "${T}"/bin/{kbuildsycoca,update-mime-database} || die
chmod +x "${T}"/bin/{kbuildsycoca,update-mime-database} || die
export QMAKE="${EPREFIX}/usr/$(get_libdir)/qt5/bin/qmake"
# Unset DISPLAY in order to prevent xdg-mime from triggering a sandbox
# violation with kbuildsycoca as in bug #287067, comment #13.
export -n DISPLAY
# Bug #352625 - Some LANGUAGE values can trigger the following ValueError:
# File "/usr/lib/python2.6/locale.py", line 486, in getdefaultlocale
# return _parse_localename(localename)
# File "/usr/lib/python2.6/locale.py", line 418, in _parse_localename
# raise ValueError, 'unknown locale: %s' % localename
#ValueError: unknown locale: 46
export -n LANG LANGUAGE ${!LC_*}
export LC_ALL=C.utf8 #709682
# Bug #295672 - Avoid sandbox violation in ~/.config by forcing
# variables to point to our fake temporary $HOME.
export HOME="${T}/fake_homedir"
export XDG_CONFIG_HOME="${HOME}/.config"
export XDG_DATA_HOME="${HOME}/.local/share"
export CALIBRE_CONFIG_DIRECTORY="${XDG_CONFIG_HOME}/calibre"
mkdir -p "${XDG_DATA_HOME}" "${CALIBRE_CONFIG_DIRECTORY}" || die
tc-export CC CXX
# Bug #334243 - respect LDFLAGS when building extensions
export OVERRIDE_CFLAGS="$CFLAGS" OVERRIDE_LDFLAGS="$LDFLAGS"
local libdir=$(get_libdir)
[[ -n $libdir ]] || die "get_libdir returned an empty string"
addpredict /dev/dri #665310
PATH=${T}/bin:${PATH} PYTHONPATH=${S}/src${PYTHONPATH:+:}${PYTHONPATH} \
"${PYTHON}" setup.py install \
--root="${D}" \
--prefix="${EPREFIX}/usr" \
--libdir="${EPREFIX}/usr/${libdir}" \
--staging-root="${ED}/usr" \
--staging-libdir="${ED}/usr/${libdir}" || die
find "${ED}"/usr/share -type d -empty -delete
cd "${ED}"/usr/share/calibre/fonts/liberation || die
local x
for x in * ; do
[[ -f ${EPREFIX}/usr/share/fonts/liberation-fonts/${x} ]] || continue
ln -sf "../../../fonts/liberation-fonts/${x}" "${x}" || die
done
einfo "Converting python shebangs"
python_fix_shebang --force "${ED}"
einfo "Compiling python modules"
python_optimize "${ED}"/usr/$(get_libdir)/calibre "${D}/$(python_get_sitedir)"
newinitd "${FILESDIR}"/calibre-server-3.init calibre-server
newconfd "${FILESDIR}"/calibre-server-3.conf calibre-server
}
pkg_preinst() {
# Indentify stray directories from upstream's "Binary install"
# method (see bug 622728).
CALIBRE_LIB_DIR=/usr/$(get_libdir)/calibre
CALIBRE_LIB_CONTENT=$(for x in "${ED}${CALIBRE_LIB_DIR}"/*; do
printf -- "${x##*/} "; done) || die "Failed to list ${ED}${CALIBRE_LIB_DIR}"
}
pkg_postinst() {
[[ -n ${CALIBRE_LIB_DIR} ]] || die "CALIBRE_LIB_DIR is unset"
local x
for x in "${EROOT}${CALIBRE_LIB_DIR}"/*; do
if [[ " ${CALIBRE_LIB_CONTENT} " != *" ${x##*/} "* ]]; then
elog "Purging '${x}'"
rm -rf "${x}"
fi
done
xdg_desktop_database_update
xdg_mimeinfo_database_update
xdg_icon_cache_update
}
pkg_postrm() {
xdg_desktop_database_update
xdg_mimeinfo_database_update
xdg_icon_cache_update
}

Binary file not shown.

@ -0,0 +1,69 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
ADA_COMPAT=( gnat_202{0..1} )
inherit ada multiprocessing
MYP=gprbuild-${PV}-${PV}0519-19A34-src
ID=23a77a37247ff811609e23a0a271f445c299fc8f
ADAMIRROR=https://community.download.adacore.com/v1
DESCRIPTION="Ada library to handle GPRbuild project files"
HOMEPAGE="http://libre.adacore.com/"
SRC_URI="${ADAMIRROR}/${ID}?filename=${MYP}.tar.gz -> ${MYP}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="+shared static-libs static-pic"
RDEPEND="dev-ada/xmlada[shared?,static-libs?,static-pic?,${ADA_USEDEP}]
!net-libs/grpc"
DEPEND="${RDEPEND}
dev-ada/gprbuild[${ADA_USEDEP}]"
REQUIRED_USE="${ADA_REQUIRED_USE}
|| ( shared static-libs static-pic )"
S="${WORKDIR}"/${MYP}
PATCHES=( "${FILESDIR}"/${PN}-2020-gentoo.patch )
src_prepare() {
default
sed -i -e '/Library_Name/s|gpr|gnatgpr|' gpr/gpr.gpr || die
}
src_configure() {
emake setup
}
src_compile() {
build () {
gprbuild -p -m -j$(makeopts_jobs) -XBUILD=production -v \
-XLIBRARY_TYPE=$1 -XXMLADA_BUILD=$1 \
gpr/gpr.gpr -cargs:C ${CFLAGS} -cargs:Ada ${ADAFLAGS} || die
}
if use shared; then
build relocatable
fi
if use static-libs; then
build static
fi
if use static-pic; then
build static-pic
fi
}
src_install() {
if use static-libs; then
emake prefix="${D}"/usr libgpr.install.static
fi
for kind in shared static-pic; do
if use ${kind}; then
emake prefix="${D}"/usr libgpr.install.${kind}
fi
done
rm -r "${D}"/usr/share/gpr/manifests || die
einstalldocs
}

@ -1,4 +1,4 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -29,6 +29,11 @@ S="${WORKDIR}"/${MYP}
PATCHES=( "${FILESDIR}"/${PN}-2020-gentoo.patch )
src_prepare() {
default
sed -i -e '/Library_Name/s|gpr|gnatgpr|' gpr/gpr.gpr || die
}
src_configure() {
emake setup
}

Binary file not shown.

@ -1,2 +1,3 @@
DIST folly-2022.02.28.00.tar.gz 3600258 BLAKE2B 5943b0e4b6178c8293714f673ed289daed26b1dad22dcb52dc80475f385961cf0a690accc44139f245f2df5cf10c0bdb5638c8bed52cb97fefd3ad6d8dc147b8 SHA512 91ee21e463ffc6eee3b0e5e0244721a9612337b9afe92645556a154f521aec1070f4f381962247bb9bf11592efb5b8bb01f70d1a66acd3444967538062dfe826
DIST folly-2022.03.07.00.tar.gz 3604306 BLAKE2B fe255678d6f827c82ada3e136742d07bd62dfb81c1250ca6bae9a4f3e1f015904032da8de1488342da1326fa520b448c63a59ef7e0139ecb0844a1ae19c1dfed SHA512 e63eff137711ca71b5a78469e4feff1b4e7b65465413eefb91b7c0cb26b94e1d581a305a9df9937ce05bcd8af3dc465adb816ad95538689811d8ab5b5b9f269f
DIST folly-2022.03.14.00.tar.gz 3605018 BLAKE2B 11a58e3c23c1e1299c16821e552d500f8215d2fb2fbdee3699b8487e1073196dfc322461e7670d3968c703d84b0b526d2479bcb74005b763f195ce48f04a419d SHA512 0b3710862360788eb55dc40703e3862f57819acf217287f13ce125b56692c4e5b1de12289f02520ecca9007fa872a69e8936df0ec9260adf974a88286489a9b1

@ -0,0 +1,61 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake toolchain-funcs
DESCRIPTION="An open-source C++ library developed and used at Facebook"
HOMEPAGE="https://github.com/facebook/folly"
SRC_URI="https://github.com/facebook/folly/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE="llvm-libunwind test"
RESTRICT="!test? ( test )"
RDEPEND="app-arch/bzip2
app-arch/lz4:=
app-arch/snappy:=
app-arch/xz-utils
app-arch/zstd:=
dev-cpp/gflags:=
dev-cpp/glog[gflags]
dev-libs/boost:=[context,threads(+)]
dev-libs/double-conversion:=
dev-libs/libaio
dev-libs/libevent:=
dev-libs/libfmt:=
dev-libs/libsodium:=
dev-libs/openssl:=
sys-libs/liburing:=
sys-libs/zlib
llvm-libunwind? ( sys-libs/llvm-libunwind:= )
!llvm-libunwind? ( sys-libs/libunwind:= )"
# libiberty is linked statically
DEPEND="${RDEPEND}
sys-libs/binutils-libs"
BDEPEND="test? ( sys-devel/clang )"
pkg_setup() {
if use test && [[ ${BUILD_TYPE} != "binary" ]] && ! tc-is-clang ; then
ewarn "Forcing build with Clang due to GCC bug (because tests are enabled)"
ewarn "(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104008)"
export CC=${CHOST}-clang
export CXX=${CHOST}-clang++
fi
}
src_configure() {
# TODO: liburing could in theory be optional but fails to link
local mycmakeargs=(
-DLIB_INSTALL_DIR="$(get_libdir)"
-DBUILD_TESTS=$(usex test)
)
cmake_src_configure
}

Binary file not shown.

@ -0,0 +1,38 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
POSTGRES_COMPAT=( 9.6 {10..14} )
inherit postgres-multi
DESCRIPTION="Unit testing for PostgreSQL"
HOMEPAGE="https://pgtap.org/"
SRC_URI="https://api.pgxn.org/dist/${PN}/${PV}/${P}.zip"
LICENSE="POSTGRESQL"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
DEPEND="${POSTGRES_DEP}
app-arch/unzip
dev-perl/TAP-Parser-SourceHandler-pgTAP
"
RDEPEND="${DEPEND}"
# Tests requires a running database that match up with the current
# testing slot. Won't run from ${ED}, want's to install too early.
RESTRICT="test"
src_configure() {
:
}
src_install() {
default
rm -r ${ED}/usr/share/doc/postgresql* || die "Failed to remove improper doc locations"
dodoc doc/pgtap.mmd
}

Binary file not shown.

@ -12,6 +12,7 @@ DESCRIPTION="\"Go please\" is the official Go language server"
HOMEPAGE="https://github.com/golang/tools/blob/master/gopls/README.md"
SLOT="0"
LICENSE="BSD"
BDEPEND=">=dev-lang/go-1.18"
EGO_SUM=(
"github.com/BurntSushi/toml v0.3.1/go.mod"

Binary file not shown.

@ -1,10 +1,5 @@
DIST antlr-2.7.7.tar.gz 1816180 BLAKE2B 3a9a51070f8651befeb4d22be344b544e119db34a78522828c2ffc3c481c14b9c7784f0a9997a61f6faedde5b6d1fe12214cfd84fb274f7065f3ffe6a44abf1c SHA512 faa72d2ddcba434ef1233e70c1549e63eba67c00793966322e821cf7f015cccb804448cb92d8fbef0429f59928fad65ec954f8ffbda0acbb8e983de0806d349d
DIST antlr-3.2.jar 1928009 BLAKE2B 9c56b0142abdb7d0caabebbae12618a665f91001e2f472519549a65b8601b81fcca485898c7420087a7b631351eb26e4b98589d7284960efcc3c65155919fd2a SHA512 25a61404c4b41e48eeaed49d41122f9400092248a10eb776d75ce3513295870eca1acc4b06c74925284a27cc64ca0506e34de39fb91996f09727cc5cc72dd9a6
DIST antlr-3.2.tar.gz 837320 BLAKE2B 3addcfed45e67a7f8f3841a890be418626d93229dc326fe4670c6b145a457203a26f01723695573692c65bb6c376349a8d8cd852b339b1f6da7b71a52e14bb4f SHA512 8984221cd89253c033a4596dd56cd51b297393a53b4682f5ab401172745d343371bf0d45417fa286ce972add1b4e474f1f3091fa1345158dbfc040702d61607c
DIST antlr-3.5.2-complete.jar 2456317 BLAKE2B d9afa08ad98dbff16d30425b97a0ddac7402055916e6a7dd290c3b9a2b26a4751c02f405d8d13c186333430c370c94bd73419b14c8e46df2971f68536cc484a0 SHA512 560f208e38759b5e626de56816e1fce9c191c526c04ca782513859d468ac444d1e8e62c03870a68f8f9d8daee0f45fca465150e2bbfc71b46e46b952519044b1
DIST antlr-3.5.2.tar.gz 6927126 BLAKE2B 1907229549434dfea6ef1fa915137a2f733bd61f0a40aacb131689df619d1c92e125453ec3d1febc5d92da1841ffbde060af196cff1ca8fb6f4684600375e161 SHA512 e2a0520093fb2a77dcd9d44f26a9fdd612dceaffb398c53b2b8cd29f4630830647ede29e8dd55b434cb2c165b0fd1d77968ec6e6de0798f14d9cdfd9e6fccd99
DIST antlr-4.5.1-complete.jar 1478820 BLAKE2B 7f6ab8d1bad6b75ede4930fe594a3302bd2bdeac8426d65d0a16610a8da4dd3bda23db68b7feafc90449bda5032115ad0f0dbe7c376c4095cb4ccac3e7a70e84 SHA512 1109087c44706694d75a7f88f6ce96e8653467d5721505db747e7e70a4f40a24469b1fb3ffcb327819bba1548b0025412e46a11a41e329b0ecf847cb1094238c
DIST antlr-4.5.1.tar.gz 6158475 BLAKE2B 17cf84a60393c786d8b8addd93b87998178cea55f2a6bcc4ca244655a6d2aacc15226111b00fc0a8a6424f8a7c6eb3bfa49172e3b2149714a5c0c6ad69943cd9 SHA512 949306b0ee87a0c002664ee7ac0f32c43385c501b4e28f181417559ce09b07cc12a8441c3bb81f8a72feba3d4ccc693a3c03bcccad7fc81223cddb19e10468a9
DIST antlr-4.5.3-complete.jar 1485121 BLAKE2B 84d41b17bd30dfad7a79e9759802c76d986299cc592c7b2c859225ed00989bb2709b14635ee40c8ecfe79e2441ecb697b2d17b7e6e789a7549868b93a3876f77 SHA512 53dcadf3007c9bdbeb391ea72fb9bab7c086fa0b9d1d93b83050b2ebb726c2f52743b5ba944c68f6da513d915ab5e8721676d74d823c32484928ccad2a28f1e4
DIST antlr-4.5.3.tar.gz 6760401 BLAKE2B d436b4a964c527e230912a0ba23146af199478570cf5491eadeb5025e814642658cc71d71e6a09b5df3cc18e9b8991abf930cab70677d117a112e0922e046e07 SHA512 d0e61baebb338e5e4e8eaf87aa6ef52a568ec51bc86bc07acf8f82be0c173ea4f0f85978dfd034c2642505888c0849663f6b6fb030c4c19e0571f29277fb54f7
DIST antlr-4.9.3.tar.gz 4640242 BLAKE2B fb58f5e533051cb2c439c32f0462c1d463c99df862ba7e1a37a1c61378ab36a9edb9525c2a342de5b517da6f02d8291de5976c550932314f3464aad1a778afb9 SHA512 61452404c9639b5a0908cda16605f17c0fed0c9adfc3278c7408f9971420e9d1fe8f9e974e0826c2e3e780fdd83324094c0246cd5b28fa63f5686b094ea08127

@ -1,91 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit java-pkg-2 java-pkg-simple
DESCRIPTION="A parser generator for many languages"
HOMEPAGE="https://www.antlr3.org/"
SRC_URI="https://github.com/${PN}/${PN}3/archive/${PV}.tar.gz -> ${P}.tar.gz
https://www.antlr3.org/download/${P}-complete.jar" # Prebuilt version needed.
LICENSE="BSD"
SLOT="3.5"
KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="doc test"
RESTRICT="!test? ( test )"
CDEPEND="dev-java/stringtemplate:4"
RDEPEND="${CDEPEND}
>=virtual/jre-1.8"
DEPEND="${CDEPEND}
>=virtual/jdk-1.8
test? ( dev-java/junit:4 )"
S="${WORKDIR}/${PN}3-${PV}"
JAVA_GENTOO_CLASSPATH_EXTRA="${S}/${PN}-runtime.jar"
JAVA_GENTOO_CLASSPATH="stringtemplate-4"
PATCHES=(
"${FILESDIR}/${PV}-test-fixes.patch"
)
src_unpack() {
unpack ${P}.tar.gz
}
src_prepare() {
default
java-pkg_clean
# This requires StringTemplate v3 and is only needed for
# output=template. Nothing in the tree currently needs that and the
# dependency situation is already hairy enough as it is.
rm -v runtime/Java/src/main/java/org/antlr/runtime/tree/DOTTreeGenerator.java || die
# Some tests have to be removed as a result.
rm -v tool/src/test/java/org/antlr/test/Test{RewriteTemplates,Templates}.java || die
# Some tests fail under Java 8 in ways that probably aren't limited
# to the tests. This is bad but upstream is never going to update
# 3.5. At the time of writing, we only use it to build 4 anyway.
if java-pkg_is-vm-version-ge 1.8; then
rm -v tool/src/test/java/org/antlr/test/Test{DFAConversion,SemanticPredicates,TopologicalSort}.java || die
fi
}
src_compile() {
cd "${S}/runtime/Java/src/main" || die
JAVA_JAR_FILENAME="${S}/${PN}-runtime.jar" JAVA_PKG_IUSE="doc" java-pkg-simple_src_compile
cd "${S}/tool/src/main" || die
java -jar "${DISTDIR}/${P}-complete.jar" $(find antlr3 -name "*.g") || die
JAVA_JAR_FILENAME="${S}/${PN}-tool.jar" java-pkg-simple_src_compile
java-pkg_addres "${S}/${PN}-tool.jar" resources
}
src_install() {
java-pkg_dojar ${PN}-{runtime,tool}.jar
java-pkg_dolauncher ${PN}${SLOT} --main org.antlr.Tool
use doc && java-pkg_dojavadoc runtime/Java/src/main/target/api
}
src_test() {
cd tool/src/test/java || die
local CP=".:${S}/${PN}-runtime.jar:${S}/${PN}-tool.jar:$(java-pkg_getjars junit-4,${JAVA_GENTOO_CLASSPATH})"
local TESTS=$(find * -name "Test*.java")
TESTS="${TESTS//.java}"
TESTS="${TESTS//\//.}"
ejavac -classpath "${CP}" $(find -name "*.java")
# ejunit automatically adds all registered subdependencies to the
# classpath, which is annoying in this case because of the cyclic
# dependency on stringtemplate. It will blow up when trying to find
# antlr-3.5 on the system before it is installed. The easiest but
# somewhat ugly way to avoid this is to unset JAVA_PKG_DEPEND_FILE.
JAVA_PKG_DEPEND_FILE= ejunit4 -classpath "${CP}" ${TESTS}
}

@ -1,91 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
JAVA_PKG_IUSE="source"
inherit java-pkg-2 java-pkg-simple
DESCRIPTION="A parser generator for many languages"
HOMEPAGE="https://www.antlr.org/"
SRC_URI="https://github.com/${PN}/${PN}4/archive/${PV}.tar.gz -> ${P}.tar.gz
https://www.antlr.org/download/${P}-complete.jar" # Prebuilt version needed.
LICENSE="BSD"
SLOT="4"
KEYWORDS="amd64 ~arm ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="doc test"
RESTRICT="!test? ( test )"
CDEPEND="dev-java/antlr:3.5
dev-java/stringtemplate:4
dev-java/treelayout:0"
RDEPEND="${CDEPEND}
>=virtual/jre-1.6"
DEPEND="${CDEPEND}
>=virtual/jdk-1.6
test? (
dev-java/hamcrest-core:1.3
dev-java/junit:4
)"
S="${WORKDIR}/${PN}4-${PV}"
JAVA_GENTOO_CLASSPATH="stringtemplate-4,treelayout"
src_unpack() {
unpack ${P}.tar.gz
}
java_prepare() {
java-pkg_clean
}
src_configure() {
# TODO: Make java-config accept a jar@package query.
JAVA_GENTOO_CLASSPATH_EXTRA="${S}/${PN}-runtime.jar:$(java-pkg_getjar antlr-3.5 antlr-runtime.jar)"
}
src_compile() {
cd "${S}/runtime/Java/src"
local G PKG
for G in $(find * -name "*.g4"); do
PKG="${G%/*}"
PKG="${PKG//\//.}"
java -jar "${DISTDIR}/${P}-complete.jar" -package "${PKG}" "${G}" || die
done
JAVA_JAR_FILENAME="${S}/${PN}-runtime.jar" JAVA_PKG_IUSE="doc" java-pkg-simple_src_compile
cd "${S}/tool/src"
antlr3.5 $(find -name "*.g") || die
JAVA_JAR_FILENAME="${S}/${PN}-tool.jar" java-pkg-simple_src_compile
java-pkg_addres "${S}/${PN}-tool.jar" ../resources
}
src_install() {
java-pkg_dojar ${PN}-{runtime,tool}.jar
java-pkg_dolauncher ${PN}${SLOT} --main org.antlr.v4.Tool
use doc && java-pkg_dojavadoc runtime/Java/src/target/api
use source && java-pkg_dosrc runtime/Java/src/org tool/src/org
}
junit_suite() {
cd "${S}/$1-testsuite/test" || die
local CP=".:${S}/runtime-testsuite/test:${S}/${PN}-tool.jar:$(java-pkg_getjars hamcrest-core-1.3,junit-4,${JAVA_GENTOO_CLASSPATH}):${JAVA_GENTOO_CLASSPATH_EXTRA}"
local TESTS=$(find ${2:-*} -name "Test*.java")
TESTS="${TESTS//.java}"
TESTS="${TESTS//\//.}"
ejavac -classpath "${CP}" $(find ${2:-*} -name "*.java")
ejunit4 -classpath "${CP}" ${TESTS}
}
src_test() {
# Only run Java runtime tests as we haven't built other languages.
junit_suite runtime org/antlr/v4/test/runtime/java
junit_suite tool
}

@ -1,94 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
JAVA_PKG_IUSE="source"
MAVEN_ID="org.antlr:antlr4:4.5.3"
inherit java-pkg-2 java-pkg-simple
DESCRIPTION="A parser generator for many languages"
HOMEPAGE="https://www.antlr.org/"
SRC_URI="https://github.com/${PN}/${PN}4/archive/${PV}.tar.gz -> ${P}.tar.gz
https://www.antlr.org/download/${P}-complete.jar" # Prebuilt version needed.
LICENSE="BSD"
SLOT="4"
KEYWORDS="amd64 ~arm ~arm64 ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="doc test"
RESTRICT="!test? ( test )"
CDEPEND="dev-java/antlr:3.5
dev-java/stringtemplate:4
dev-java/treelayout:0"
RDEPEND="${CDEPEND}
>=virtual/jre-1.8:*"
DEPEND="${CDEPEND}
>=virtual/jdk-1.8:*
test? (
dev-java/hamcrest-core:1.3
dev-java/junit:4
)"
S="${WORKDIR}/${PN}4-${PV}"
JAVA_GENTOO_CLASSPATH="stringtemplate-4,treelayout"
src_unpack() {
unpack ${P}.tar.gz
}
src_prepare() {
default
java-pkg_clean
}
src_configure() {
# TODO: Make java-config accept a jar@package query.
JAVA_GENTOO_CLASSPATH_EXTRA="${S}/${PN}-runtime.jar:$(java-pkg_getjar antlr-3.5 antlr-runtime.jar)"
}
src_compile() {
cd "${S}/runtime/Java/src"
local G PKG
for G in $(find * -name "*.g4"); do
PKG="${G%/*}"
PKG="${PKG//\//.}"
java -jar "${DISTDIR}/${P}-complete.jar" -package "${PKG}" "${G}" || die
done
JAVA_JAR_FILENAME="${S}/${PN}-runtime.jar" JAVA_PKG_IUSE="doc" java-pkg-simple_src_compile
cd "${S}/tool/src"
antlr3.5 $(find -name "*.g") || die
JAVA_JAR_FILENAME="${S}/${PN}-tool.jar" java-pkg-simple_src_compile
java-pkg_addres "${S}/${PN}-tool.jar" ../resources
}
src_install() {
java-pkg_dojar ${PN}-{runtime,tool}.jar
java-pkg_dolauncher ${PN}${SLOT} --main org.antlr.v4.Tool
use doc && java-pkg_dojavadoc runtime/Java/src/target/api
use source && java-pkg_dosrc runtime/Java/src/org tool/src/org
}
junit_suite() {
cd "${S}/$1-testsuite/test" || die
local CP=".:${S}/runtime-testsuite/test:${S}/${PN}-tool.jar:$(java-pkg_getjars hamcrest-core-1.3,junit-4,${JAVA_GENTOO_CLASSPATH}):${JAVA_GENTOO_CLASSPATH_EXTRA}"
local TESTS=$(find ${2:-*} -name "Test*.java")
TESTS="${TESTS//.java}"
TESTS="${TESTS//\//.}"
ejavac -classpath "${CP}" $(find ${2:-*} -name "*.java")
ejunit4 -classpath "${CP}" ${TESTS}
}
src_test() {
# Only run Java runtime tests as we haven't built other languages.
junit_suite runtime org/antlr/v4/test/runtime/java
junit_suite tool
}

@ -1,36 +0,0 @@
diff -Naur antlr3-3.5.2.orig/tool/src/test/java/org/antlr/test/TestAttributes.java antlr3-3.5.2/tool/src/test/java/org/antlr/test/TestAttributes.java
--- antlr3-3.5.2.orig/tool/src/test/java/org/antlr/test/TestAttributes.java 2014-03-25 11:47:54.000000000 +0000
+++ antlr3-3.5.2/tool/src/test/java/org/antlr/test/TestAttributes.java 2015-10-02 22:42:56.921263410 +0100
@@ -2131,7 +2132,7 @@
assertEquals(expecting, found);
}
- @Test public void testRuleLabelOnTwoDifferentRulesTemplate() throws Exception {
+ @org.junit.Ignore @Test public void testRuleLabelOnTwoDifferentRulesTemplate() throws Exception {
String grammar =
"grammar T;\n"+
"options {output=template;}\n"+
diff -Naur antlr3-3.5.2.orig/tool/src/test/java/org/antlr/test/TestSyntacticPredicateEvaluation.java antlr3-3.5.2/tool/src/test/java/org/antlr/test/TestSyntacticPredicateEvaluation.java
--- antlr3-3.5.2.orig/tool/src/test/java/org/antlr/test/TestSyntacticPredicateEvaluation.java 2014-03-25 11:47:54.000000000 +0000
+++ antlr3-3.5.2/tool/src/test/java/org/antlr/test/TestSyntacticPredicateEvaluation.java 2015-10-02 22:43:07.303105023 +0100
@@ -339,7 +340,7 @@
assertEquals("b:alt 2 a:alt 1\n", found);
}
- @Test public void testSynPredWithOutputTemplate() throws Exception {
+ @org.junit.Ignore @Test public void testSynPredWithOutputTemplate() throws Exception {
// really just seeing if it will compile
String grammar =
"grammar T;\n" +
diff -Naur antlr3-3.5.2.orig/tool/src/test/java/org/antlr/test/TestTreeParsing.java antlr3-3.5.2/tool/src/test/java/org/antlr/test/TestTreeParsing.java
--- antlr3-3.5.2.orig/tool/src/test/java/org/antlr/test/TestTreeParsing.java 2014-03-25 11:47:54.000000000 +0000
+++ antlr3-3.5.2/tool/src/test/java/org/antlr/test/TestTreeParsing.java 2015-10-02 22:41:32.235554776 +0100
@@ -141,7 +142,7 @@
assertEquals("alt 1\n", found);
}
- @Test public void testTemplateOutput() throws Exception {
+ @org.junit.Ignore @Test public void testTemplateOutput() throws Exception {
String grammar =
"grammar T;\n" +
"options {output=AST;}\n" +

@ -15,7 +15,7 @@ SRC_URI="https://github.com/qos-ch/cal10n/archive/v_${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~ppc64 ~x86"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
DEPEND=">=virtual/jdk-1.8:*"
RDEPEND=">=virtual/jre-1.8:*"

@ -1,27 +0,0 @@
--- build.xml.orig 2009-02-15 21:06:33.000000000 +0100
+++ build.xml 2009-02-15 21:07:25.000000000 +0100
@@ -117,6 +117,7 @@
<pathelement location="${jaxp.jaxp.jar}"/>
<pathelement location="${jaxp.parser.jar}"/>
<pathelement location="${commons-beanutils.jar}"/>
+ <pathelement location="${commons-collections.jar}" />
<pathelement location="${commons-logging.jar}"/>
<pathelement location="${junit.jar}"/>
</path>
@@ -140,6 +141,7 @@
<pathelement location="${junit.jar}"/>
<pathelement location="${jaxp.jaxp.jar}"/>
<pathelement location="${jaxp.parser.jar}"/>
+ <pathelement location="${commons-collections.jar}" />
<pathelement location="${commons-beanutils.jar}"/>
<pathelement location="${commons-logging.jar}"/>
</path>
@@ -256,7 +258,7 @@
</javadoc>
</target>
- <target name="jar" depends="compile, test"
+ <target name="jar" depends="compile"
description="Create commons-digester.jar">
<mkdir dir="${dist.home}"/>
<jar jarfile="${dist.home}/commons-${component.name}.jar"

@ -1,45 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
JAVA_PKG_IUSE="doc source"
inherit java-pkg-2 java-pkg-simple
MY_P="gnu.regexp-${PV}"
DESCRIPTION="GNU regular expression package for Java"
HOMEPAGE="https://savannah.gnu.org/projects/gnu-regexp"
SRC_URI="mirror://gentoo/${P}.tar.gz"
LICENSE="LGPL-2.1"
SLOT="1"
KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
IUSE=""
CDEPEND="dev-java/java-getopt:1"
RDEPEND="
${CDEPEND}
>=virtual/jre-1.6"
DEPEND="
${CDEPEND}
>=virtual/jdk-1.6
source? ( app-arch/zip )"
S="${WORKDIR}/${MY_P}"
JAVA_SRC_DIR="src"
JAVA_GENTOO_CLASSPATH="java-getopt-1"
java_prepare() {
java-pkg_clean
}
src_compile() {
java-pkg-simple_src_compile
java-pkg_addres "${PN}.jar" src -name "*.properties"
}

@ -0,0 +1,42 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Build written by Andrew John Hughes (gnu_andrew@member.fsf.org)
EAPI=8
inherit java-pkg-2
DESCRIPTION="Plugins for javax.sound"
HOMEPAGE="https://icedtea.classpath.org"
SRC_URI="https://icedtea.classpath.org/download/source/${P}.tar.xz"
LICENSE="GPL-2-with-linking-exception"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
IUSE="+doc"
COMMON_DEP="
virtual/jdk:1.8
>=media-sound/pulseaudio-0.9.11"
RDEPEND="${COMMON_DEP}"
DEPEND="${COMMON_DEP}"
BDEPEND="app-arch/zip"
pkg_setup() {
JAVA_PKG_WANT_SOURCE="1.8"
JAVA_PKG_WANT_TARGET="1.8"
java-pkg-2_pkg_setup
}
src_configure() {
econf --with-jdk-home="${JAVA_HOME}" \
$(use_enable doc docs) \
--htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
}
src_compile() {
default
}

@ -1,50 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
JAVA_PKG_IUSE="doc source"
inherit java-pkg-2 java-pkg-simple
DESCRIPTION="Partial port of the C++ Standard Template Library"
HOMEPAGE="http://vigna.dsi.unimi.it/jal"
SRC_URI="https://dev.gentoo.org/~monsieurp/packages/${P}.tar.gz"
LICENSE="HPND"
SLOT="0"
KEYWORDS="amd64 x86"
CDEPEND="dev-java/ant-core:0"
RDEPEND="
${CDEPEND}
>=virtual/jre-1.6"
DEPEND="
${CDEPEND}
>=virtual/jdk-1.6"
S="${WORKDIR}/${P}"
JAVA_GENTOO_CLASSPATH="ant-core"
JAVA_SRC_DIR="src/jal"
src_prepare() {
default
# Generate sources.
./instantiate -n byte bytes || die
./instantiate -n short shorts || die
./instantiate -n char chars || die
./instantiate -n int ints || die
./instantiate -n long longs || die
./instantiate -n float floats || die
./instantiate -n double doubles || die
./instantiate Object objects || die
./instantiate String strings || die
mkdir -p src/jal || die
mv bytes shorts chars ints longs floats doubles objects strings src/jal || die
}

@ -13,7 +13,7 @@ SRC_URI="https://dev.gentoo.org/~monsieurp/packages/${P}.tar.gz"
LICENSE="HPND"
SLOT="0"
KEYWORDS="amd64 ~x86"
KEYWORDS="amd64 x86"
CP_DEPEND="dev-java/ant-core:0"

@ -1,2 +1 @@
DIST picocli-4.6.2-sources.tar.gz 13488726 BLAKE2B dbec032bd0f40a45172e7c72884c32c9f769a9df0bdacc1904f3d45f4b02d1a3cc7c541a2ae4ca8a6754d67b5351412e4d91f2dc6fbbb3fc37bc4e2776ccdd68 SHA512 83ae37666a3c703b186cdb920095ad46de46de9a092841c352ec7db33877fa102afbd24227a1f73cad8be8a75b800f5c1487a8720d7080bdc8aa20dd8acafbe4
DIST picocli-4.6.3-sources.tar.gz 56087383 BLAKE2B ce9aaada241358fd570332696b1ac529a9a1e300911aaf2e1f927a94a44a3e38cae96df3d99a7a7e287fb48d429097624004b4ddd792ba564cc9c67ec975d9e0 SHA512 34b8388c6cf268799f06d465aa06e8d5c39c2673806cdfa1b346dac4aaf32ae5b033ae975333b7401bb79c77c4e34b9b932f8699344d6cc00f35a00c1b7bc504

@ -1,44 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Skeleton command:
# java-ebuilder --generate-ebuild --workdir . --pom pom.xml --download-uri https://github.com/remkop/picocli/archive/refs/tags/v4.6.2.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild picocli-4.6.2.ebuild
EAPI=7
JAVA_PKG_IUSE="doc source test"
MAVEN_ID="info.picocli:picocli:4.6.2"
JAVA_TESTING_FRAMEWORKS="junit-4"
inherit java-pkg-2 java-pkg-simple
DESCRIPTION="Java command line parser with both an annotations API and a programmatic API"
HOMEPAGE="http://picocli.info"
SRC_URI="https://github.com/remkop/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}-sources.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 ~arm64 ppc64 x86"
# package org.junit.contrib.java.lang.system does not exist
# the project is here: https://github.com/stefanbirkner/system-rules
RESTRICT="test"
DEPEND="
>=virtual/jdk-1.8:*
"
RDEPEND="
>=virtual/jre-1.8:*
"
DOCS=( LICENSE README.md RELEASE-NOTES.md )
S="${WORKDIR}/${P}"
JAVA_SRC_DIR="src/main/java"
JAVA_TEST_GENTOO_CLASSPATH="junit-4"
JAVA_TEST_SRC_DIR="src/test/java"
JAVA_TEST_RESOURCE_DIRS=(
"src/test/resources"
)

@ -17,7 +17,7 @@ HOMEPAGE="https://picocli.info"
SRC_URI="https://github.com/remkop/${PN}/archive/v${PV}.tar.gz -> ${P}-sources.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
KEYWORDS="amd64 ~arm64 ppc64 x86"
# package org.junit.contrib.java.lang.system does not exist
# the project is here: https://github.com/stefanbirkner/system-rules

@ -14,7 +14,7 @@ HOMEPAGE="https://github.com/mozilla/rhino"
SRC_URI="https://github.com/mozilla/rhino/archive/Rhino${PV//./_}_Release.tar.gz -> ${P}.tar.gz"
LICENSE="MPL-1.1 GPL-2"
KEYWORDS="~amd64 ~x86"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
SLOT="1.6"
# There are too many test failures:

@ -18,7 +18,7 @@ SRC_URI="https://github.com/qos-ch/slf4j/archive/v_${PV}.tar.gz -> slf4j-${PV}.t
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~ppc64 ~x86"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
# Common dependencies
# POM: pom.xml

@ -23,27 +23,21 @@ KEYWORDS="amd64 ~arm arm64 ppc64 x86"
# packaged. Some extra steps are required before running the tests:
# 1. Download hadoop-common 2.7.x from https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-common
# 2. Set EANT_GENTOO_CLASSPATH_EXTRA to the path to hadoop-common-2.7.*.jar
# 3. arm, arm64 and ppc64 only: Install test dependencies that are unkeyworded
# 4. Set ALLOW_TEST="all"
# 3. Set ALLOW_TEST="all"
RESTRICT="test"
CDEPEND="dev-java/osgi-core-api:0
app-arch/snappy
dev-libs/bitshuffle"
# Some test dependencies are unsatisfied on arm, arm64, and ppc64
DEPEND=">=virtual/jdk-1.8:*
${CDEPEND}
test? (
dev-java/ant-junit4:0
dev-java/commons-io:1
!arm? (
dev-java/commons-lang:2.1
)
!arm? ( !arm64? ( !ppc64? (
dev-java/plexus-classworlds:0
dev-java/xerial-core:0
) ) )
dev-java/commons-lang:2.1
dev-java/plexus-classworlds:0
dev-java/xerial-core:0
)"
RDEPEND=">=virtual/jre-1.8:*

@ -1,5 +1,3 @@
DIST ST4-4.3.1-sources.jar 198002 BLAKE2B d1bd78dac71800e342291920ba78ab39c9a43b1f3866e2afcb0e1d61d439592663a625efe2a5a215c6032469e7ebeeebb31267e1681536ca0cc524cc58781a3d SHA512 bd06940b629ab0378afd6342b6f5beef002023387843cefd866ebe6ae8e94996edc3f21a0c70ed3570d3fcb7194bf354d0e42d4eff32522b3c01c51369867be0
DIST antlr-3.5.2-complete.jar 2456317 BLAKE2B d9afa08ad98dbff16d30425b97a0ddac7402055916e6a7dd290c3b9a2b26a4751c02f405d8d13c186333430c370c94bd73419b14c8e46df2971f68536cc484a0 SHA512 560f208e38759b5e626de56816e1fce9c191c526c04ca782513859d468ac444d1e8e62c03870a68f8f9d8daee0f45fca465150e2bbfc71b46e46b952519044b1
DIST stringtemplate-3.2.1.tar.gz 107877 BLAKE2B e099aaef047de12706ca4c771f28742dc48ec14a577b2384b32850e304b29284436b3c850846136cbd37481ff48cfb2fd5935d2de3aafa5c817ae24f62579435 SHA512 76203182302d42a0f79de7e8a22f44c59ddc5604761034e420b6973894e0ca1e6154cbcb322ec6f9a064ee89cc5f6478b775a716692c80c7f0c77566aa8a0e25
DIST stringtemplate-4.0.8.tar.gz 147305 BLAKE2B 0c09326f4eecfc86db8588a9b8db801bac8d8e128f8ef004a3691813d1dfcbd1e397acd5cad47e4c9d44d7ee8c17b8f6b66386fb897e4137df43dc46f46dc3f3 SHA512 21e4936356a6d374bf92645f09351a495a5900a408ead8dce1903ed81d7fc70eb4b44b206b587b05ed87edb2d4792c1cf72907a9cb527e18373ba2e5f31b5724
DIST stringtemplate-4.3.1.tar.gz 432541 BLAKE2B c5b4124524e36a7104908dabf9ed258d2397095d8dc86eef401d0da1ac245629e88a1b2d0e35417ed7735ad6b8495fd2cc82970601a16ee856f5456fdc24b48f SHA512 afe62ca1cbc7572d05859c6fdaa1eb3221045da582bce5d88c328acae39128c904396f8ba1e10643a2757123297ba1924e046841cc8a667fbc724bdeca95680c

@ -1,73 +0,0 @@
--- a/test/org/stringtemplate/v4/test/TestGroups.java 2014-03-25 11:55:55.000000000 +0000
+++ b/test/org/stringtemplate/v4/test/TestGroups.java 2015-09-13 11:01:07.999800299 +0100
@@ -29,6 +29,7 @@
import org.junit.Assert;
import org.junit.Test;
+import org.junit.Ignore;
import org.stringtemplate.v4.ST;
import org.stringtemplate.v4.STErrorListener;
import org.stringtemplate.v4.STGroup;
@@ -527,6 +528,7 @@
assertEquals(expected, result);
}
+ @Ignore
@Test public void testUnknownNamedArg() throws Exception {
String dir = getRandomDir();
String groupFile =
--- a/test/org/stringtemplate/v4/test/TestGroupSyntaxErrors.java 2014-03-25 11:55:55.000000000 +0000
+++ b/test/org/stringtemplate/v4/test/TestGroupSyntaxErrors.java 2015-09-13 11:01:05.011850826 +0100
@@ -28,6 +28,7 @@
package org.stringtemplate.v4.test;
import org.junit.Test;
+import org.junit.Ignore;
import org.stringtemplate.v4.STErrorListener;
import org.stringtemplate.v4.STGroup;
import org.stringtemplate.v4.STGroupFile;
@@ -36,6 +37,7 @@
import static org.junit.Assert.assertEquals;
public class TestGroupSyntaxErrors extends BaseTest {
+ @Ignore
@Test public void testMissingImportString() throws Exception {
String templates =
"import\n" +
--- a/test/org/stringtemplate/v4/test/TestRenderers.java
+++ b/test/org/stringtemplate/v4/test/TestRenderers.java
@@ -59,7 +59,7 @@ public class TestRenderers extends BaseTest {
group.registerRenderer(GregorianCalendar.class, new DateRenderer());
ST st = group.getInstanceOf("dateThing");
st.add("created", new GregorianCalendar(2005, 07-1, 05));
- String expecting = "datetime: 7/5/05 12:00 AM";
+ String expecting = "datetime: 7/5/05, 12:00 AM";
String result = st.render();
assertEquals(expecting, result);
}
@@ -85,7 +85,7 @@ public class TestRenderers extends BaseTest {
group.registerRenderer(GregorianCalendar.class, new DateRenderer());
ST st = group.getInstanceOf("dateThing");
st.add("created", new GregorianCalendar(2005, 07-1, 05));
- String expecting = " datetime: 7/5/05 12:00 AM ";
+ String expecting = " datetime: 7/5/05, 12:00 AM ";
String result = st.render();
assertEquals(expecting, result);
}
@@ -102,7 +102,7 @@ public class TestRenderers extends BaseTest {
// set Timezone to "PDT"
TimeZone.setDefault(TimeZone.getTimeZone("America/Los_Angeles"));
st.add("created", new GregorianCalendar(2005, 07-1, 05));
- String expecting = " datetime: Tuesday, July 5, 2005 12:00:00 AM PDT ";
+ String expecting = " datetime: Tuesday, July 5, 2005 at 12:00:00 AM Pacific Daylight Time ";
String result = st.render();
assertEquals(expecting, result);
} finally {
@@ -358,6 +358,6 @@ public class TestRenderers extends BaseTest {
cal.set(2012, Calendar.JUNE, 12);
st.add("date", cal);
- assertEquals("12 de Junho de 2012", st.render(new Locale("pt")));
+ assertEquals("12 de junho de 2012", st.render(new Locale("pt")));
}
}

@ -1,72 +0,0 @@
From 3ea94a870b6e139399abbf932da1dfa2f9bd37e3 Mon Sep 17 00:00:00 2001
From: parrt <parrt@cs.usfca.edu>
Date: Thu, 8 Nov 2018 11:40:24 -0800
Subject: [PATCH] make tests work with java 10 and 6, 7, 8
---
.../stringtemplate/v4/test/TestRenderers.java | 24 +++++++++++++++----
1 file changed, 20 insertions(+), 4 deletions(-)
diff --git a/test/org/stringtemplate/v4/test/TestRenderers.java b/test/org/stringtemplate/v4/test/TestRenderers.java
index bc5406f7..7b7536e0 100644
--- a/test/org/stringtemplate/v4/test/TestRenderers.java
+++ b/test/org/stringtemplate/v4/test/TestRenderers.java
@@ -48,6 +48,8 @@
public class TestRenderers extends BaseTest {
+ String javaVersion = System.getProperty("java.version");
+
// Make sure to use the US Locale during the tests
private Locale origLocale;
@@ -73,6 +75,9 @@ public void tearDown() {
ST st = group.getInstanceOf("dateThing");
st.add("created", new GregorianCalendar(2005, 7 - 1, 5));
String expecting = "datetime: 7/5/05, 12:00 AM";
+ if ( javaVersion.startsWith("1.6") || javaVersion.startsWith("1.7") || javaVersion.startsWith("1.8") ) {
+ expecting = "datetime: 7/5/05 12:00 AM";
+ }
String result = st.render();
assertEquals(expecting, result);
}
@@ -99,7 +104,10 @@ public void tearDown() {
ST st = group.getInstanceOf("dateThing");
st.add("created", new GregorianCalendar(2005, 7 - 1, 5));
String expecting = " datetime: 7/5/05, 12:00 AM ";
- String result = st.render();
+ if ( javaVersion.startsWith("1.6") || javaVersion.startsWith("1.7") || javaVersion.startsWith("1.8") ) {
+ expecting = " datetime: 7/5/05 12:00 AM ";
+ }
+ String result = st.render();
assertEquals(expecting, result);
}
@@ -116,9 +124,13 @@ public void tearDown() {
TimeZone.setDefault(TimeZone.getTimeZone("America/Los_Angeles"));
st.add("created", new GregorianCalendar(2005, 7 - 1, 5));
String expecting = " datetime: Tuesday, July 5, 2005 at 12:00:00 AM Pacific Daylight Time ";
- String result = st.render();
+ if ( javaVersion.startsWith("1.6") || javaVersion.startsWith("1.7") || javaVersion.startsWith("1.8") ) {
+ expecting = " datetime: Tuesday, July 5, 2005 12:00:00 AM PDT ";
+ }
+ String result = st.render();
assertEquals(expecting, result);
- } finally {
+ }
+ finally {
// Restore original Timezone
TimeZone.setDefault(origTimeZone);
}
@@ -371,6 +383,10 @@ public void tearDown() {
cal.set(2012, Calendar.JUNE, 12);
st.add("date", cal);
- assertEquals("12 de junho de 2012", st.render(new Locale("pt")));
+ String expected = "12 de junho de 2012";
+ if ( javaVersion.startsWith("1.6") || javaVersion.startsWith("1.7") || javaVersion.startsWith("1.8") ) {
+ expected = "12 de Junho de 2012";
+ }
+ assertEquals(expected, st.render(new Locale("pt")));
}
}

@ -1,75 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
ANTLR3="3.5.2"
JAVA_PKG_IUSE="doc source test"
JAVA_TESTING_FRAMEWORKS="junit-4"
inherit java-pkg-2 java-pkg-simple
DESCRIPTION="A Java template engine"
HOMEPAGE="https://www.stringtemplate.org/"
SRC_URI="https://github.com/antlr/${PN}4/archive/${PV}.tar.gz -> ${P}.tar.gz
https://www.antlr3.org/download/antlr-${ANTLR3}-complete.jar"
LICENSE="BSD"
SLOT="4"
KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
RESTRICT="!test? ( test )"
DEPEND=">=virtual/jdk-1.8:*"
RDEPEND=">=virtual/jre-1.8:*"
# StringTemplate has a cyclic dependency on ANTLR 3. The runtime classes
# are needed at build time and runtime and the tool is also needed at
# build time. To break out of this, we use a prebuilt copy of ANTLR 3 at
# build time and manually register a dependency on the package, which
# will be present at runtime thanks to this PDEPEND. No prebuilt
# software is actually installed onto the system.
PDEPEND=">=dev-java/antlr-${ANTLR3}:3.5"
S="${WORKDIR}/${PN}4-${PV}"
JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/antlr-${ANTLR3}-complete.jar"
JAVA_SRC_DIR="src"
PATCHES=(
# These tests are broken but are probably fixed in current master.
"${FILESDIR}/4.0.8-r1-test-fixes.patch"
"${FILESDIR}/${P}-fix-tests.patch"
)
src_unpack() {
unpack ${P}.tar.gz
}
src_prepare() {
default
# Some of these tests requires a graphical display.
rm -v test/org/stringtemplate/v4/test/TestEarlyEvaluation.java || die
}
src_compile() {
java -jar "${JAVA_GENTOO_CLASSPATH_EXTRA}" -lib ${JAVA_SRC_DIR}/org/stringtemplate/v4/compiler $(find ${JAVA_SRC_DIR} -name "*.g") || die
java-pkg-simple_src_compile
}
src_test() {
cd test || die
local CP=".:${S}/${PN}.jar:$(java-pkg_getjars junit-4):${JAVA_GENTOO_CLASSPATH_EXTRA}"
local TESTS=$(find * -name "Test*.java")
TESTS="${TESTS//.java}"
TESTS="${TESTS//\//.}"
ejavac -classpath "${CP}" $(find -name "*.java")
ejunit4 -classpath "${CP}" ${TESTS}
}
src_install() {
java-pkg-simple_src_install
java-pkg_register-dependency antlr-3.5 antlr-runtime.jar
dodoc {CHANGES,contributors,README}.txt
}

@ -7,6 +7,7 @@ DIST apache-tomcat-6.0.53-src.tar.gz 3522914 BLAKE2B 054b097c16861abaa8bdbeba713
DIST apache-tomcat-7.0.109-src.tar.gz 5314401 BLAKE2B 56583caea6879bf8ca5cc02a886de3d7af413032f88d367653e709dc1c8f590e78620c788317bbff4b6e65dd3e242cc26863164ac8e7c87334a22636f3ed0703 SHA512 ecf9c0bee0e3e1aa24f299fe633705c5a2f6aa264d9e4968cfc96aa5d0a425c2b0ff07765a8b6c67221766733bdfaed6e6c6377a8d0870d889e7063ce90a46ce
DIST apache-tomcat-8.5.75-src.tar.gz 5961981 BLAKE2B a8d3c0ef390ce6b12b09cedb71cd9c102e3a37265f7ef6db9797eb7eaf04429f75bdedf6a7dbaa7ade0b57a12cbb461498c37d9c7e234bb9dc98e3d095b66b8a SHA512 c1c2609db623eb94a5e177c0f7ccabf8753a34151961ddc0fdea47704aca86123ef63f746b7ca76e818185cae19121823f7700f9bd47ba27625b3c801ddc8bad
DIST apache-tomcat-8.5.76-src.tar.gz 5961741 BLAKE2B 4c661c2f753edac48c28fdec3caa06c487e1546feb91f2d69003a4d9f71fb023eb2314520bb156f3087656d655acdfdbdff3f68cd3f81d0d9dfbb2c9577898ee SHA512 b1c1b8c870c77e46969fe64acc71194d37605e5ccda87d105186d8070ec2dd0b7b9c64cf2f9b276db140fd3927832405123018f6fe8f46c0ebda50af6404d8b9
DIST apache-tomcat-8.5.77-src.tar.gz 5963037 BLAKE2B 63192409b148cf0691e6ad22180e4f79d8603e89633598ee3f1dcfdd7d55b88530ecb1aa7c585920e086a7582dea78fcbcd1498ed2552e0f8d17127658769f66 SHA512 a0d2f77540b5370e09d03d04340e0c7f539eb5761b84ea3c8ef924e2a3e7f9528b3ed83a0c8e413bc9335cee6052135788e48e30d95f231ba3ade7f0b53ec157
DIST apache-tomcat-9.0.58-src.tar.gz 6142037 BLAKE2B 0515273882468958f5bc2ef95e3085c22975e0ec9f8153a20773266a43710645c2262da8cb10736f0f0b255716fa05a12252194e1f32851704364ef89a62e5e9 SHA512 b2b572dcad2efadf3e5e5a6ae6e108f5699af23b7751ca3c9c00e6ba896f5179745108fa602d8bd87a9611fd8bebe8817fad53c38fc75b0063835b953c67d74a
DIST apache-tomcat-9.0.59-src.tar.gz 6142359 BLAKE2B 26dee501a374e54280237dbe392924ac89e3e4b331a11b30c2e0923ac38fa16bb52c02dfc8a9f3597fb0ee169ae2835ac254eab745d1e2ab1e64cfed6395d0c3 SHA512 cea0125ca9b90b247ed114fa7b2e9c63da38b1ef97b3a373a43ed0d775764178534a4014b254219c8c5a26575eaf0ddc25ebc1e276b2ad5086ef3406627f1c80
DIST apache-tomcat-9.0.60-src.tar.gz 6143845 BLAKE2B af7061854659de06afa6a7cf6380c4be4375e18bec896049bf468ddb9139794170271454af4712ade5099b8d46ed7c8d642e9c5f37ea168f0e31394a5128beeb SHA512 e5cb12fb134ff0a59e01a30fbcabc350ddbef6959494176848c2858c3c68444bc520153e00fdcdecb0eefbe7f69876c2965fedbffeeb0aeda7931dc1c11b0de5

@ -0,0 +1,99 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
JAVA_PKG_IUSE="source"
inherit java-pkg-2 java-pkg-simple
MY_A="apache-${P}-src"
MY_P="${MY_A/-servlet-api/}"
DESCRIPTION="Tomcat's Servlet API 3.1/JSP API 2.3/EL API 3.0 implementation"
HOMEPAGE="https://tomcat.apache.org/"
SRC_URI="mirror://apache/tomcat/tomcat-8/v${PV}/src/${MY_P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="3.1"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
IUSE=""
DEPEND=">=virtual/jdk-1.8:*"
RDEPEND=">=virtual/jre-1.8:*"
S="${WORKDIR}/${MY_P}/"
JAVA_TEST_SRC_DIR="src/test"
SERVLET_API_JAR="servlet-api.jar"
SERVLET_API_SRC="src/main/servlet-api"
SERVLET_API_RESOURCES="src/resources/servlet-api"
EL_API_JAR="el-api.jar"
EL_API_SRC="src/main/el-api"
EL_API_RESOURCES="src/resources/el-api"
JSP_API_JAR="jsp-api.jar"
JSP_API_SRC="src/main/jsp-api"
JSP_API_RESOURCES="src/resources/jsp-api"
src_prepare() {
default
# The sources and also resources are mixed together so we first give it a structure to make it easier to compila and package
mkdir -p ${SERVLET_API_SRC} ${SERVLET_API_RESOURCES} \
${EL_API_SRC} ${EL_API_RESOURCES} \
${JSP_API_SRC}/javax/servlet ${JSP_API_RESOURCES} \
${JAVA_TEST_SRC_DIR} || die "Failed to create source directory"
pushd java || die "Failed to cd to java dir"
cp --parents -R javax/servlet "${S}/${SERVLET_API_SRC}/" || die "Failed to copy servlet-api sources"
mv "${S}/${SERVLET_API_SRC}/javax/servlet/jsp" "${S}/${JSP_API_SRC}/javax/servlet" || die "Failed to copy jsp-api sources"
cp --parents -R javax/el "${S}/${EL_API_SRC}/" || die "Failed to copy el-api sources"
popd
for file in $(find src -type f | grep -vE "\.java$"); do
target_dir=$(dirname $file | sed "s%src/main/%src/resources/%g")
mkdir -p ${target_dir} || die "Failed to create resource directory"
mv $file ${target_dir} || die "Failed to move resource file"
done
mv test/javax ${JAVA_TEST_SRC_DIR} || die "Failed to copy test sources"
java-pkg-2_src_prepare
}
src_compile() {
JAVA_SRC_DIR="${SERVLET_API_SRC}"
JAVA_RESOURCE_DIRS="${SERVLET_API_RESOURCES}"
JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
java-pkg-simple_src_compile
rm -fr target || die "Failed to remove compiled files"
JAVA_SRC_DIR="${EL_API_SRC}"
JAVA_RESOURCE_DIRS="${EL_API_RESOURCES}"
JAVA_JAR_FILENAME="${EL_API_JAR}"
java-pkg-simple_src_compile
rm -fr target || die "Failed to remove compiled files"
JAVA_SRC_DIR="${JSP_API_SRC}"
JAVA_RESOURCE_DIRS="${JSP_API_RESOURCES}"
JAVA_JAR_FILENAME="${JSP_API_JAR}"
JAVA_GENTOO_CLASSPATH_EXTRA="servlet-api.jar:el-api.jar"
java-pkg-simple_src_compile
}
src_install() {
JAVA_SRC_DIR="${SERVLET_API_SRC}"
JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
java-pkg-simple_src_install
JAVA_SRC_DIR="${EL_API_SRC}"
JAVA_JAR_FILENAME="${EL_API_JAR}"
java-pkg-simple_src_install
JAVA_SRC_DIR="${JSP_API_SRC}"
JAVA_JAR_FILENAME="${JSP_API_JAR}"
java-pkg-simple_src_install
}

Binary file not shown.

@ -21,7 +21,7 @@ case ${PV} in
case ${PV} in
*_beta*|*_rc*) ;;
*)
KEYWORDS="-* amd64 arm ~arm64 ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
KEYWORDS="-* amd64 arm arm64 ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
;;
esac
esac

@ -0,0 +1,43 @@
This patch comes from:
https://github.com/archlinux/svntogit-community/blob/packages/julia/trunk/julia-libgit-1.4.patch
diff --git a/stdlib/LibGit2/src/consts.jl b/stdlib/LibGit2/src/consts.jl
index 2bc9edaf89..55887ebe2a 100644
--- a/stdlib/LibGit2/src/consts.jl
+++ b/stdlib/LibGit2/src/consts.jl
@@ -247,6 +247,11 @@ const RESET_HARD = Cint(3) # MIXED plus changes in working tree discarded
REBASE_OPERATION_FIXUP = Cint(4),
REBASE_OPERATION_EXEC = Cint(5))
+# git_remote_redirect_t
+const GIT_REMOTE_REDIRECT_NONE = Cint(0)
+const GIT_REMOTE_REDIRECT_INITIAL = Cint(1)
+const GIT_REMOTE_REDIRECT_ALL = Cint(2)
+
# fetch_prune
const FETCH_PRUNE_UNSPECIFIED = Cint(0)
const FETCH_PRUNE = Cint(1)
diff --git a/stdlib/LibGit2/src/types.jl b/stdlib/LibGit2/src/types.jl
index 9ffcaa3646..98d938df65 100644
--- a/stdlib/LibGit2/src/types.jl
+++ b/stdlib/LibGit2/src/types.jl
@@ -343,6 +343,9 @@ The fields represent:
@static if LibGit2.VERSION >= v"0.25.0"
proxy_opts::ProxyOptions = ProxyOptions()
end
+ @static if LibGit2.VERSION >= v"1.4.0"
+ follow_redirects::Cint = Consts.GIT_REMOTE_REDIRECT_INITIAL
+ end
@static if LibGit2.VERSION >= v"0.24.0"
custom_headers::StrArrayStruct = StrArrayStruct()
end
@@ -674,6 +677,9 @@ The fields represent:
@static if LibGit2.VERSION >= v"0.25.0"
proxy_opts::ProxyOptions = ProxyOptions()
end
+ @static if LibGit2.VERSION >= v"1.4.0"
+ follow_redirects::Cint = Consts.GIT_REMOTE_REDIRECT_INITIAL
+ end
@static if LibGit2.VERSION >= v"0.24.0"
custom_headers::StrArrayStruct = StrArrayStruct()
end

@ -38,7 +38,7 @@ RDEPEND+="
dev-libs/libutf8proc:0=[-cjk]
dev-util/patchelf
>=net-libs/mbedtls-2.2
net-misc/curl[http2,ssh]
<net-misc/curl-7.81.0[http2,ssh]
sci-libs/amd:0=
sci-libs/arpack:0=
sci-libs/camd:0=
@ -69,6 +69,7 @@ PATCHES=(
"${FILESDIR}/${PN}"-1.6.5-llvm_13_compat_part_3.patch
"${FILESDIR}/${PN}"-1.6.5-llvm_13_compat_part_4.patch
"${FILESDIR}/${PN}"-1.6.5-libgit-1.2.patch
"${FILESDIR}/${PN}"-1.6.5-libgit-1.4.patch
"${FILESDIR}/${PN}"-1.6.5-make-install-no-build.patch
"${FILESDIR}/${PN}"-1.6.5-hardcoded-libs.patch
"${FILESDIR}/${PN}"-1.6.5-do_not_set_rpath.patch

@ -39,7 +39,7 @@ RDEPEND+="
>=dev-libs/libutf8proc-2.6.1:0=[-cjk]
>=dev-util/patchelf-0.13
>=net-libs/mbedtls-2.2
net-misc/curl[http2,ssh]
<net-misc/curl-7.81.0[http2,ssh]
sci-libs/amd:0=
sci-libs/arpack:0=
sci-libs/camd:0=
@ -68,6 +68,7 @@ PATCHES=(
"${DISTDIR}/${PN}"-1.7.1-llvm_13_compat_part_4.patch
"${DISTDIR}/${PN}"-1.7.1-llvm_13_compat_part_5.patch
"${FILESDIR}/${PN}"-1.6.5-libgit-1.2.patch
"${FILESDIR}/${PN}"-1.6.5-libgit-1.4.patch
"${FILESDIR}/${PN}"-1.6.5-make-install-no-build.patch
"${FILESDIR}/${PN}"-1.7.1-hardcoded-libs.patch
"${FILESDIR}/${PN}"-1.7.1-do_not_set_rpath.patch

@ -397,7 +397,7 @@ src_prepare() {
# "https://bugs.debian.org/869122" "https://bugs.gentoo.org/634162"
if use prefix ; then
add_patch "${FILESDIR}/${P}"-fallback-getcwd-pwd.patch "0102-5.34.0-fallback-get-cwd-pwd.patch"\
add_patch "${FILESDIR}/${PN}"-5.34.0-fallback-getcwd-pwd.patch "0102-5.34.0-fallback-get-cwd-pwd.patch"\
"Fix installation during Prefix bootstrap (finding 'pwd' from coreutils)"\
"https://bugs.gentoo.org/818172"
fi

@ -2,4 +2,6 @@ DIST php-7.3.32.tar.xz 12142436 BLAKE2B 375092f7fade8b93d2fbf409552cda42a6852672
DIST php-7.3.33.tar.xz 12143820 BLAKE2B 77b5ada50169b308b42dbf2c69b5aebd6e9ab9663be8de5bd26391e42015d856631f12b0268b98889f2c3058564a6c71ad298b725b8afff920e277aa3e787422 SHA512 b05edb3e87775c0b2d7bd5990e47751279076e6ef2356f59dc917f4a1447d95894f596cd8de711f03278650ff74ff9f2687ed96cec69d2d669a6af563a455e25
DIST php-7.4.28.tar.xz 10418352 BLAKE2B 27673b5a891723a4c20a19fa22708f733b8ff12e16e5bbd727ed841845bcb8802ea98e8c2a4936b184704cde96f8725a2c338470ba573e8d3a0732a3f449e7e5 SHA512 e7fa281a3be9ec46b7fa69619fd417fc04200dc64fd153f9670184d84b0aa3d5f3698536cf18476a96d8a42ba40b856ff57ab18e8e8a485dd9b95467d1952fa8
DIST php-8.0.16.tar.xz 10864076 BLAKE2B e5820ecd40632e458a0ada1d1886cd054520ab7f1492766fd8d5c3561977359abddd886b47f7d7255bcc80d00c96afeceb5cbd515eb779ed4ac15db9e01f1fe3 SHA512 68952638f2965752be26dc0a49f938eb4f251f2d5a7b309a2983c4f9bc064738c9da2e8015ec9b2ecc0dc06e014ace3c0348222166b898a4a38c31ab8b0fd139
DIST php-8.0.17.tar.xz 10771016 BLAKE2B ed2b9fb4f8c2210e112d27e43acff2a71c57802c5fd72429ffc716f6b7666d00a24d35166e5e85d20d7f67e00d5cdae89eaf5d30238a0758b42964e27422507b SHA512 9e1e44860be8f5ddf0c264f791e2c8936ca3abd02c18c432ff340057e94f0fbc5f40f1ee8f4feee60416eb4ce712f43764d3757f2e667dc78150d2d86d3c02e3
DIST php-8.1.3.tar.xz 11751576 BLAKE2B e55f5d3742d233f6b028c6ca97181ea4fb55331204bbea2f58f2e440a6f5c520343addb5bc05ed0c407d6cf9f1bda3754c2039195154b90bb903ddc7a13ca49a SHA512 230f70c4f23ac69b52063b91de5ea866e30a84b5ac8d0021e35baebf210fe432fb6c46264a9a2808bf0f0d2003f4c3db974c2c480718a5607c5e4d52379e9d9d
DIST php-8.1.4.tar.xz 11700448 BLAKE2B 472f053bd9544403f6cffacb15b35af16e4165f984f4a651d0c2983e3e84ea8301123796f3fd2ba4c20d97cf6fa0fe02326c63d37d8eb1dabd756a2f858944de SHA512 63eb05c20ebeee9377f7b72aa5ae6ff4c5f04b8612b9f192f4a849a4f2db74691343e2279b9dfc7c79d0b42a7dc17ab4ed11ed66c018c96224cf1663eaab728b

@ -0,0 +1,758 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
WANT_AUTOMAKE="none"
inherit flag-o-matic systemd autotools
MY_PV=${PV/_rc/rc}
DESCRIPTION="The PHP language runtime engine"
HOMEPAGE="https://www.php.net/"
SRC_URI="https://www.php.net/distributions/${P}.tar.xz"
LICENSE="PHP-3.01
BSD
Zend-2.0
bcmath? ( LGPL-2.1+ )
fpm? ( BSD-2 )
gd? ( gd )
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
S="${WORKDIR}/${PN}-${MY_PV}"
# We can build the following SAPIs in the given order
SAPIS="embed cli cgi fpm apache2 phpdbg"
# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
IUSE="${IUSE}
${SAPIS/cli/+cli}
threads"
IUSE="${IUSE} acl apparmor argon2 bcmath berkdb bzip2 calendar cdb cjk
coverage +ctype curl debug
enchant exif ffi +fileinfo +filter firebird
+flatfile ftp gd gdbm gmp +iconv imap inifile
intl iodbc ipv6 +jit kerberos ldap ldap-sasl libedit lmdb
mhash mssql mysql mysqli nls
oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
readline selinux +session session-mm sharedmem
+simplexml snmp soap sockets sodium spell sqlite ssl
sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode webp
+xml xmlreader xmlwriter xpm xslt zip zlib"
# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
# The Oracle instant client provides its own incompatible ldap library.
REQUIRED_USE="
|| ( cli cgi fpm apache2 embed phpdbg )
cli? ( ^^ ( readline libedit ) )
!cli? ( ?? ( readline libedit ) )
truetype? ( gd zlib )
webp? ( gd zlib )
cjk? ( gd zlib )
exif? ( gd zlib )
xpm? ( gd zlib )
gd? ( zlib )
simplexml? ( xml )
soap? ( xml )
xmlreader? ( xml )
xmlwriter? ( xml )
xslt? ( xml )
ldap-sasl? ( ldap )
oci8-instant-client? ( !ldap )
qdbm? ( !gdbm )
session-mm? ( session !threads )
mysql? ( || ( mysqli pdo ) )
firebird? ( pdo )
mssql? ( pdo )
"
RESTRICT="!test? ( test )"
# The supported (that is, autodetected) versions of BDB are listed in
# the ./configure script. Other versions *work*, but we need to stick to
# the ones that can be detected to avoid a repeat of bug #564824.
COMMON_DEPEND="
>=app-eselect/eselect-php-0.9.7[apache2?,fpm?]
>=dev-libs/libpcre2-10.30[jit?,unicode]
fpm? ( acl? ( sys-apps/acl ) apparmor? ( sys-libs/libapparmor ) )
apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
argon2? ( app-crypt/argon2:= )
berkdb? ( || ( sys-libs/db:5.3 sys-libs/db:4.8 ) )
bzip2? ( app-arch/bzip2:0= )
cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
coverage? ( dev-util/lcov )
curl? ( >=net-misc/curl-7.29.0 )
enchant? ( app-text/enchant:2 )
ffi? ( >=dev-libs/libffi-3.0.11:= )
firebird? ( dev-db/firebird )
gd? ( >=virtual/jpeg-0-r3:0 media-libs/libpng:0= )
gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
gmp? ( dev-libs/gmp:0= )
iconv? ( virtual/libiconv )
imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] )
intl? ( dev-libs/icu:= )
kerberos? ( virtual/krb5 )
ldap? ( >=net-nds/openldap-1.2.11 )
ldap-sasl? ( dev-libs/cyrus-sasl )
libedit? ( dev-libs/libedit )
lmdb? ( dev-db/lmdb:= )
mssql? ( dev-db/freetds[mssql] )
nls? ( sys-devel/gettext )
oci8-instant-client? ( dev-db/oracle-instantclient[sdk] )
odbc? ( iodbc? ( dev-db/libiodbc ) !iodbc? ( >=dev-db/unixODBC-1.8.13 ) )
postgres? ( >=dev-db/postgresql-9.1:* )
qdbm? ( dev-db/qdbm )
readline? ( sys-libs/readline:0= )
session-mm? ( dev-libs/mm )
snmp? ( >=net-analyzer/net-snmp-5.2 )
sodium? ( dev-libs/libsodium:=[-minimal] )
spell? ( >=app-text/aspell-0.50 )
sqlite? ( >=dev-db/sqlite-3.7.6.3 )
ssl? ( >=dev-libs/openssl-1.0.1:0= )
tidy? ( app-text/htmltidy )
tokyocabinet? ( dev-db/tokyocabinet )
truetype? ( =media-libs/freetype-2* )
unicode? ( dev-libs/oniguruma:= )
webp? ( media-libs/libwebp:0= )
xml? ( >=dev-libs/libxml2-2.9.0 )
xpm? ( x11-libs/libXpm )
xslt? ( dev-libs/libxslt )
zip? ( >=dev-libs/libzip-1.2.0:= )
zlib? ( >=sys-libs/zlib-1.2.0.4:0= )
"
RDEPEND="${COMMON_DEPEND}
virtual/mta
fpm? (
selinux? ( sec-policy/selinux-phpfpm )
systemd? ( sys-apps/systemd ) )"
# Bison isn't actually needed when building from a release tarball
# However, the configure script will warn if it's absent or if you
# have an incompatible version installed. See bug 593278.
DEPEND="${COMMON_DEPEND}
app-arch/xz-utils
>=sys-devel/bison-3.0.1"
BDEPEND="virtual/pkgconfig"
PHP_MV="$(ver_cut 1)"
PATCHES=(
"${FILESDIR}/php-iodbc-header-location.patch"
"${FILESDIR}/php80-firebird-warnings.patch"
)
php_install_ini() {
local phpsapi="${1}"
# work out where we are installing the ini file
php_set_ini_dir "${phpsapi}"
# Always install the production INI file, bug 611214.
local phpinisrc="php.ini-production-${phpsapi}"
cp php.ini-production "${phpinisrc}" || die
# default to /tmp for save_path, bug #282768
sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
# Set the extension dir
sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \
-i "${phpinisrc}" || die
# Set the include path to point to where we want to find PEAR packages
sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
insinto "${PHP_INI_DIR#${EPREFIX}}"
newins "${phpinisrc}" php.ini
elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
elog
dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
if use opcache; then
elog "Adding opcache to $PHP_EXT_INI_DIR"
echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
"${D}/${PHP_EXT_INI_DIR}"/opcache.ini
dosym "../ext/opcache.ini" \
"${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
fi
# SAPI-specific handling
if [[ "${sapi}" == "fpm" ]] ; then
einfo "Installing FPM config files php-fpm.conf and www.conf"
insinto "${PHP_INI_DIR#${EPREFIX}}"
doins sapi/fpm/php-fpm.conf
insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d"
doins sapi/fpm/www.conf
fi
dodoc php.ini-{development,production}
}
php_set_ini_dir() {
PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
}
src_prepare() {
default
# In php-7.x, the FPM pool configuration files have been split off
# of the main config. By default the pool config files go in
# e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
# include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
# we'll install the pool configuration file "www.conf" there.
php_set_ini_dir fpm
sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
sapi/fpm/php-fpm.conf.in \
|| die 'failed to move the include directory in php-fpm.conf'
# Emulate buildconf to support cross-compilation
rm -fr aclocal.m4 autom4te.cache config.cache \
configure main/php_config.h.in || die
eautoconf --force
eautoheader
# Remove false positive test failures
# stream_isatty fails due to portage redirects
# curl tests here fail for network sandbox issues
# session tests here fail because we set the session directory to $T
rm tests/output/stream_isatty_err.phpt \
tests/output/stream_isatty_out-err.phpt \
tests/output/stream_isatty_out.phpt \
ext/curl/tests/bug76675.phpt \
ext/curl/tests/bug77535.phpt \
ext/curl/tests/curl_error_basic.phpt \
ext/session/tests/bug74514.phpt \
ext/session/tests/bug74936.phpt || die
}
src_configure() {
addpredict /usr/share/snmp/mibs/.index #nowarn
addpredict /var/lib/net-snmp/mib_indexes #nowarn
PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
# The php-fpm config file wants localstatedir to be ${EPREFIX}/var
# and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
local our_conf=(
--prefix="${PHP_DESTDIR}"
--mandir="${PHP_DESTDIR}/man"
--infodir="${PHP_DESTDIR}/info"
--libdir="${PHP_DESTDIR}/lib"
--with-libdir="$(get_libdir)"
--localstatedir="${EPREFIX}/var"
--without-pear
$(use_enable threads zts)
)
our_conf+=(
$(use_with apparmor fpm-apparmor)
$(use_with argon2 password-argon2 "${EPREFIX}/usr")
$(use_enable bcmath)
$(use_with bzip2 bz2 "${EPREFIX}/usr")
$(use_enable calendar)
$(use_enable coverage gcov)
$(use_enable ctype)
$(use_with curl)
$(use_enable xml dom)
$(use_with enchant)
$(use_enable exif)
$(use_with ffi)
$(use_enable fileinfo)
$(use_enable filter)
$(use_enable ftp)
$(use_with nls gettext "${EPREFIX}/usr")
$(use_with gmp gmp "${EPREFIX}/usr")
$(use_with mhash mhash "${EPREFIX}/usr")
$(use_with iconv iconv \
$(use elibc_glibc || use elibc_musl || echo "${EPREFIX}/usr"))
$(use_enable intl)
$(use_enable ipv6)
$(use_with kerberos)
$(use_with xml libxml)
$(use_enable unicode mbstring)
$(use_with ssl openssl)
$(use_enable pcntl)
$(use_enable phar)
$(use_enable pdo)
$(use_enable opcache)
$(use_with postgres pgsql "${EPREFIX}/usr")
$(use_enable posix)
$(use_with spell pspell "${EPREFIX}/usr")
$(use_enable simplexml)
$(use_enable sharedmem shmop)
$(use_with snmp snmp "${EPREFIX}/usr")
$(use_enable soap)
$(use_enable sockets)
$(use_with sodium)
$(use_with sqlite sqlite3)
$(use_enable sysvipc sysvmsg)
$(use_enable sysvipc sysvsem)
$(use_enable sysvipc sysvshm)
$(use_with tidy tidy "${EPREFIX}/usr")
$(use_enable tokenizer)
$(use_enable xml)
$(use_enable xmlreader)
$(use_enable xmlwriter)
$(use_with xslt xsl)
$(use_with zip)
$(use_with zlib zlib "${EPREFIX}/usr")
$(use_enable debug)
)
# DBA support
if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
|| use qdbm || use lmdb || use tokyocabinet ; then
our_conf+=( "--enable-dba" )
fi
# DBA drivers support
our_conf+=(
$(use_with cdb)
$(use_with berkdb db4 "${EPREFIX}/usr")
$(use_enable flatfile)
$(use_with gdbm gdbm "${EPREFIX}/usr")
$(use_enable inifile)
$(use_with qdbm qdbm "${EPREFIX}/usr")
$(use_with tokyocabinet tcadb "${EPREFIX}/usr")
$(use_with lmdb lmdb "${EPREFIX}/usr")
)
# Support for the GD graphics library
our_conf+=(
$(use_with truetype freetype)
$(use_enable cjk gd-jis-conv)
$(use_with gd jpeg)
$(use_with xpm)
$(use_with webp)
)
# enable gd last, so configure can pick up the previous settings
our_conf+=( $(use_enable gd) )
# IMAP support
if use imap ; then
our_conf+=(
$(use_with imap imap "${EPREFIX}/usr")
$(use_with ssl imap-ssl "${EPREFIX}/usr")
)
fi
# LDAP support
if use ldap ; then
our_conf+=(
$(use_with ldap ldap "${EPREFIX}/usr")
$(use_with ldap-sasl)
)
fi
# MySQL support
local mysqllib="mysqlnd"
local mysqlilib="mysqlnd"
our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") )
local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
if use mysql || use mysqli ; then
our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
fi
# ODBC support
if use odbc && use iodbc ; then
our_conf+=(
--without-unixODBC
--with-iodbc
$(use_with pdo pdo-odbc "iODBC,${EPREFIX}/usr")
)
elif use odbc ; then
our_conf+=(
--with-unixODBC="${EPREFIX}/usr"
--without-iodbc
$(use_with pdo pdo-odbc "unixODBC,${EPREFIX}/usr")
)
else
our_conf+=(
--without-unixODBC
--without-iodbc
--without-pdo-odbc
)
fi
# Oracle support
our_conf+=( $(use_with oci8-instant-client oci8) )
# PDO support
if use pdo ; then
our_conf+=(
$(use_with mssql pdo-dblib "${EPREFIX}/usr")
$(use_with mysql pdo-mysql "${mysqllib}")
$(use_with postgres pdo-pgsql)
$(use_with sqlite pdo-sqlite)
$(use_with firebird pdo-firebird "${EPREFIX}/usr")
$(use_with oci8-instant-client pdo-oci)
)
fi
# readline/libedit support
our_conf+=(
$(use_with readline readline "${EPREFIX}/usr")
$(use_with libedit)
)
# Session support
if use session ; then
our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
else
our_conf+=( $(use_enable session) )
fi
# Use pic for shared modules such as apache2's mod_php
our_conf+=( --with-pic )
# we use the system copy of pcre
# --with-external-pcre affects ext/pcre
our_conf+=(
--with-external-pcre
$(use_with jit pcre-jit)
)
# Catch CFLAGS problems
# Fixes bug #14067.
# Changed order to run it in reverse for bug #32022 and #12021.
replace-cpu-flags "k6*" "i586"
# Cache the ./configure test results between SAPIs.
our_conf+=( --cache-file="${T}/config.cache" )
# Support user-passed configuration parameters
our_conf+=( ${EXTRA_ECONF:-} )
# Support the Apache2 extras, they must be set globally for all
# SAPIs to work correctly, especially for external PHP extensions
local one_sapi
local sapi
mkdir -p "${WORKDIR}/sapis-build" || die
for one_sapi in $SAPIS ; do
use "${one_sapi}" || continue
php_set_ini_dir "${one_sapi}"
# The BUILD_DIR variable is used to determine where to output
# the files that autotools creates. This was all originally
# based on the autotools-utils eclass.
BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
cp -a "${S}" "${BUILD_DIR}" || die
cd "${BUILD_DIR}" || die
local sapi_conf=(
--with-config-file-path="${PHP_INI_DIR}"
--with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
)
for sapi in $SAPIS ; do
case "$sapi" in
cli|cgi|embed|fpm|phpdbg)
if [[ "${one_sapi}" == "${sapi}" ]] ; then
sapi_conf+=( "--enable-${sapi}" )
if [[ "fpm" == "${sapi}" ]] ; then
sapi_conf+=(
$(use_with acl fpm-acl)
$(use_with systemd fpm-systemd)
)
fi
else
sapi_conf+=( "--disable-${sapi}" )
fi
;;
apache2)
if [[ "${one_sapi}" == "${sapi}" ]] ; then
sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
else
sapi_conf+=( --without-apxs2 )
fi
;;
esac
done
# Construct the $myeconfargs array by concatenating $our_conf
# (the common args) and $sapi_conf (the SAPI-specific args).
local myeconfargs=( "${our_conf[@]}" )
myeconfargs+=( "${sapi_conf[@]}" )
pushd "${BUILD_DIR}" > /dev/null || die
econf "${myeconfargs[@]}"
popd > /dev/null || die
done
}
src_compile() {
# snmp seems to run during src_compile, too (bug #324739)
addpredict /usr/share/snmp/mibs/.index #nowarn
addpredict /var/lib/net-snmp/mib_indexes #nowarn
local sapi
for sapi in ${SAPIS} ; do
if use "${sapi}"; then
cd "${WORKDIR}/sapis-build/$sapi" || \
die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
emake
fi
done
}
src_install() {
# see bug #324739 for what happens when we don't have that
addpredict /usr/share/snmp/mibs/.index #nowarn
# grab the first SAPI that got built and install common files from there
local first_sapi="", sapi=""
for sapi in $SAPIS ; do
if use $sapi ; then
first_sapi=$sapi
break
fi
done
# Makefile forgets to create this before trying to write to it...
dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
# Install php environment (without any sapis)
cd "${WORKDIR}/sapis-build/$first_sapi" || die
emake INSTALL_ROOT="${D}" \
install-build install-headers install-programs
local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
# Create the directory where we'll put version-specific php scripts
keepdir "/usr/share/php${PHP_MV}"
local file=""
local sapi_list=""
for sapi in ${SAPIS}; do
if use "${sapi}" ; then
einfo "Installing SAPI: ${sapi}"
cd "${WORKDIR}/sapis-build/${sapi}" || die
if [[ "${sapi}" == "apache2" ]] ; then
# We're specifically not using emake install-sapi as libtool
# may cause unnecessary relink failures (see bug #351266)
insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
newins ".libs/libphp$(get_libname)" \
"libphp${PHP_MV}$(get_libname)"
keepdir "/usr/$(get_libdir)/apache2/modules"
else
# needed each time, php_install_ini would reset it
local dest="${PHP_DESTDIR#${EPREFIX}}"
into "${dest}"
case "$sapi" in
cli)
source="sapi/cli/php"
# Install the "phar" archive utility.
if use phar ; then
emake INSTALL_ROOT="${D}" install-pharcmd
dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}"
fi
;;
cgi)
source="sapi/cgi/php-cgi"
;;
fpm)
source="sapi/fpm/php-fpm"
;;
embed)
source="libs/libphp$(get_libname)"
;;
phpdbg)
source="sapi/phpdbg/phpdbg"
;;
*)
die "unhandled sapi in src_install"
;;
esac
if [[ "${source}" == *"$(get_libname)" ]]; then
dolib.so "${source}"
else
dobin "${source}"
local name="$(basename ${source})"
dosym "..${dest#/usr}/bin/${name}" "/usr/bin/${name}${SLOT}"
fi
fi
php_install_ini "${sapi}"
# construct correct SAPI string for php-config
# thanks to ferringb for the bash voodoo
if [[ "${sapi}" == "apache2" ]]; then
sapi_list="${sapi_list:+${sapi_list} }apache2handler"
else
sapi_list="${sapi_list:+${sapi_list} }${sapi}"
fi
fi
done
# Installing opcache module
if use opcache ; then
into "${PHP_DESTDIR#${EPREFIX}}"
dolib.so "modules/opcache$(get_libname)"
fi
# Install env.d files
newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
# set php-config variable correctly (bug #278439)
sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
"${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
if use fpm ; then
if use systemd; then
systemd_newunit "${FILESDIR}/php-fpm_at.service" \
"php-fpm@${SLOT}.service"
else
systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
"php-fpm@${SLOT}.service"
fi
fi
}
src_test() {
echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
if [[ ! -x "${PHP_BIN}" ]] ; then
ewarn "Test phase requires USE=cli, skipping"
return
else
export TEST_PHP_EXECUTABLE="${PHP_BIN}"
fi
if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
fi
if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
fi
SKIP_ONLINE_TESTS=1 REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
"session.save_path=${T}" \
"${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
"session.save_path=${T}"
for name in ${EXPECTED_TEST_FAILURES}; do
mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
done
local failed="$(find -name '*.out')"
if [[ ${failed} != "" ]] ; then
ewarn "The following test cases failed unexpectedly:"
for name in ${failed}; do
ewarn " ${name/.out/}"
done
else
einfo "No unexpected test failures, all fine"
fi
if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
local passed=""
for name in ${EXPECTED_TEST_FAILURES}; do
[[ -f "${name}.diff" ]] && continue
passed="${passed} ${name}"
done
if [[ ${passed} != "" ]] ; then
einfo "The following test cases passed unexpectedly:"
for name in ${passed}; do
ewarn " ${passed}"
done
else
einfo "None of the known-to-fail tests passed, all fine"
fi
fi
}
pkg_postinst() {
# Output some general info to the user
if use apache2 ; then
elog
elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
elog "your apache2 command. OpenRC users can append that string to"
elog "APACHE2_OPTS in /etc/conf.d/apache2."
elog
elog "The apache module configuration file 70_mod_php.conf is"
elog "provided (and maintained) by eselect-php."
elog
fi
# Create the symlinks for php
local m
for m in ${SAPIS}; do
[[ ${m} == 'embed' ]] && continue;
if use $m ; then
local ci=$(eselect php show $m)
if [[ -z $ci ]]; then
eselect php set $m php${SLOT} || die
einfo "Switched ${m} to use php:${SLOT}"
einfo
elif [[ $ci != "php${SLOT}" ]] ; then
elog "To switch $m to use php:${SLOT}, run"
elog " eselect php set $m php${SLOT}"
elog
fi
fi
done
# Remove dead symlinks for SAPIs that were just disabled. For
# example, if the user has the cgi SAPI enabled, then he has an
# eselect-php symlink for it. If he later reinstalls PHP with
# USE="-cgi", that symlink will break. This call to eselect is
# supposed to remove that dead link per bug 572436.
eselect php cleanup || die
if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
elog "To build extensions for this version of PHP, you will need to"
elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
elog
fi
# Warn about the removal of PHP_INI_VERSION if the user has it set.
if [[ -n "${PHP_INI_VERSION}" ]]; then
ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
ewarn 'remove it from your configuration at your convenience. See'
ewarn
ewarn ' https://bugs.gentoo.org/611214'
ewarn
ewarn 'for more information.'
fi
elog "For details on how version slotting works, please see"
elog "the wiki:"
elog
elog " https://wiki.gentoo.org/wiki/PHP"
elog
}
pkg_postrm() {
# This serves two purposes. First, if we have just removed the last
# installed version of PHP, then this will remove any dead symlinks
# belonging to eselect-php. Second, if a user upgrades slots from
# (say) 5.6 to 7.0 and depcleans the old slot, then this will update
# his existing symlinks to point to the new 7.0 installation. The
# latter is bug 432962.
#
# Note: the eselect-php package may not be installed at this point,
# so we can't die() if this command fails.
eselect php cleanup
}

@ -0,0 +1,759 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="8"
WANT_AUTOMAKE="none"
inherit flag-o-matic systemd autotools
MY_PV=${PV/_rc/RC}
DESCRIPTION="The PHP language runtime engine"
HOMEPAGE="https://www.php.net/"
SRC_URI="https://www.php.net/distributions/${P}.tar.xz"
LICENSE="PHP-3.01
BSD
Zend-2.0
bcmath? ( LGPL-2.1+ )
fpm? ( BSD-2 )
gd? ( gd )
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
S="${WORKDIR}/${PN}-${MY_PV}"
# We can build the following SAPIs in the given order
SAPIS="embed cli cgi fpm apache2 phpdbg"
# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
IUSE="${IUSE}
${SAPIS/cli/+cli}
threads"
IUSE="${IUSE} acl apparmor argon2 bcmath berkdb bzip2 calendar cdb cjk
coverage +ctype curl debug
enchant exif ffi +fileinfo +filter firebird
+flatfile ftp gd gdbm gmp +iconv imap inifile
intl iodbc ipv6 +jit kerberos ldap ldap-sasl libedit lmdb
mhash mssql mysql mysqli nls
oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
readline selinux +session session-mm sharedmem
+simplexml snmp soap sockets sodium spell sqlite ssl
sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode webp
+xml xmlreader xmlwriter xpm xslt zip zlib"
# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
# The Oracle instant client provides its own incompatible ldap library.
REQUIRED_USE="
|| ( cli cgi fpm apache2 embed phpdbg )
cli? ( ^^ ( readline libedit ) )
!cli? ( ?? ( readline libedit ) )
truetype? ( gd zlib )
webp? ( gd zlib )
cjk? ( gd zlib )
exif? ( gd zlib )
xpm? ( gd zlib )
gd? ( zlib )
simplexml? ( xml )
soap? ( xml )
xmlreader? ( xml )
xmlwriter? ( xml )
xslt? ( xml )
ldap-sasl? ( ldap )
oci8-instant-client? ( !ldap )
qdbm? ( !gdbm )
session-mm? ( session !threads )
mysql? ( || ( mysqli pdo ) )
firebird? ( pdo )
mssql? ( pdo )
"
RESTRICT="!test? ( test )"
# The supported (that is, autodetected) versions of BDB are listed in
# the ./configure script. Other versions *work*, but we need to stick to
# the ones that can be detected to avoid a repeat of bug #564824.
COMMON_DEPEND="
>=app-eselect/eselect-php-0.9.7[apache2?,fpm?]
>=dev-libs/libpcre2-10.30[jit?,unicode]
fpm? ( acl? ( sys-apps/acl ) apparmor? ( sys-libs/libapparmor ) )
apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
argon2? ( app-crypt/argon2:= )
berkdb? ( || ( sys-libs/db:5.3 sys-libs/db:4.8 ) )
bzip2? ( app-arch/bzip2:0= )
cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
coverage? ( dev-util/lcov )
curl? ( >=net-misc/curl-7.29.0 )
enchant? ( app-text/enchant:2 )
ffi? ( >=dev-libs/libffi-3.0.11:= )
firebird? ( dev-db/firebird )
gd? ( >=virtual/jpeg-0-r3:0 media-libs/libpng:0= )
gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
gmp? ( dev-libs/gmp:0= )
iconv? ( virtual/libiconv )
imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] )
intl? ( dev-libs/icu:= )
kerberos? ( virtual/krb5 )
ldap? ( >=net-nds/openldap-1.2.11 )
ldap-sasl? ( dev-libs/cyrus-sasl )
libedit? ( dev-libs/libedit )
lmdb? ( dev-db/lmdb:= )
mssql? ( dev-db/freetds[mssql] )
nls? ( sys-devel/gettext )
oci8-instant-client? ( dev-db/oracle-instantclient[sdk] )
odbc? ( iodbc? ( dev-db/libiodbc ) !iodbc? ( >=dev-db/unixODBC-1.8.13 ) )
postgres? ( >=dev-db/postgresql-9.1:* )
qdbm? ( dev-db/qdbm )
readline? ( sys-libs/readline:0= )
session-mm? ( dev-libs/mm )
snmp? ( >=net-analyzer/net-snmp-5.2 )
sodium? ( dev-libs/libsodium:=[-minimal] )
spell? ( >=app-text/aspell-0.50 )
sqlite? ( >=dev-db/sqlite-3.7.6.3 )
ssl? ( >=dev-libs/openssl-1.0.2:0= )
tidy? ( app-text/htmltidy )
tokyocabinet? ( dev-db/tokyocabinet )
truetype? ( =media-libs/freetype-2* )
unicode? ( dev-libs/oniguruma:= )
webp? ( media-libs/libwebp:0= )
xml? ( >=dev-libs/libxml2-2.9.0 )
xpm? ( x11-libs/libXpm )
xslt? ( dev-libs/libxslt )
zip? ( >=dev-libs/libzip-1.2.0:= )
zlib? ( >=sys-libs/zlib-1.2.0.4:0= )
"
IDEPEND=">=app-eselect/eselect-php-0.9.7[apache2?,fpm?]"
RDEPEND="${COMMON_DEPEND}
virtual/mta
fpm? (
selinux? ( sec-policy/selinux-phpfpm )
systemd? ( sys-apps/systemd ) )"
# Bison isn't actually needed when building from a release tarball
# However, the configure script will warn if it's absent or if you
# have an incompatible version installed. See bug 593278.
DEPEND="${COMMON_DEPEND}
app-arch/xz-utils
>=sys-devel/bison-3.0.1"
BDEPEND="virtual/pkgconfig"
PHP_MV="$(ver_cut 1)"
PATCHES=(
"${FILESDIR}/php-iodbc-header-location.patch"
)
php_install_ini() {
local phpsapi="${1}"
# work out where we are installing the ini file
php_set_ini_dir "${phpsapi}"
# Always install the production INI file, bug 611214.
local phpinisrc="php.ini-production-${phpsapi}"
cp php.ini-production "${phpinisrc}" || die
# default to /tmp for save_path, bug #282768
sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
# Set the extension dir
sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \
-i "${phpinisrc}" || die
# Set the include path to point to where we want to find PEAR packages
sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
insinto "${PHP_INI_DIR#${EPREFIX}}"
newins "${phpinisrc}" php.ini
elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
elog
dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
if use opcache; then
elog "Adding opcache to $PHP_EXT_INI_DIR"
echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
"${D}/${PHP_EXT_INI_DIR}"/opcache.ini
dosym "../ext/opcache.ini" \
"${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
fi
# SAPI-specific handling
if [[ "${sapi}" == "fpm" ]] ; then
einfo "Installing FPM config files php-fpm.conf and www.conf"
insinto "${PHP_INI_DIR#${EPREFIX}}"
doins sapi/fpm/php-fpm.conf
insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d"
doins sapi/fpm/www.conf
fi
dodoc php.ini-{development,production}
}
php_set_ini_dir() {
PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
}
src_prepare() {
default
# In php-7.x, the FPM pool configuration files have been split off
# of the main config. By default the pool config files go in
# e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
# include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
# we'll install the pool configuration file "www.conf" there.
php_set_ini_dir fpm
sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
sapi/fpm/php-fpm.conf.in \
|| die 'failed to move the include directory in php-fpm.conf'
# Emulate buildconf to support cross-compilation
rm -fr aclocal.m4 autom4te.cache config.cache \
configure main/php_config.h.in || die
eautoconf --force
eautoheader
# Remove false positive test failures
# stream_isatty fails due to portage redirects
# curl tests here fail for network sandbox issues
# session tests here fail because we set the session directory to $T
rm tests/output/stream_isatty_err.phpt \
tests/output/stream_isatty_out-err.phpt \
tests/output/stream_isatty_out.phpt \
ext/curl/tests/bug76675.phpt \
ext/curl/tests/bug77535.phpt \
ext/curl/tests/curl_error_basic.phpt \
ext/session/tests/bug74514.phpt \
ext/session/tests/bug74936.phpt || die
}
src_configure() {
addpredict /usr/share/snmp/mibs/.index #nowarn
addpredict /var/lib/net-snmp/mib_indexes #nowarn
PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
# The php-fpm config file wants localstatedir to be ${EPREFIX}/var
# and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
local our_conf=(
--prefix="${PHP_DESTDIR}"
--mandir="${PHP_DESTDIR}/man"
--infodir="${PHP_DESTDIR}/info"
--libdir="${PHP_DESTDIR}/lib"
--with-libdir="$(get_libdir)"
--localstatedir="${EPREFIX}/var"
--without-pear
$(use_enable threads zts)
)
our_conf+=(
$(use_with apparmor fpm-apparmor)
$(use_with argon2 password-argon2 "${EPREFIX}/usr")
$(use_enable bcmath)
$(use_with bzip2 bz2 "${EPREFIX}/usr")
$(use_enable calendar)
$(use_enable coverage gcov)
$(use_enable ctype)
$(use_with curl)
$(use_enable xml dom)
$(use_with enchant)
$(use_enable exif)
$(use_with ffi)
$(use_enable fileinfo)
$(use_enable filter)
$(use_enable ftp)
$(use_with nls gettext "${EPREFIX}/usr")
$(use_with gmp gmp "${EPREFIX}/usr")
$(use_with mhash mhash "${EPREFIX}/usr")
$(use_with iconv iconv \
$(use elibc_glibc || use elibc_musl || echo "${EPREFIX}/usr"))
$(use_enable intl)
$(use_enable ipv6)
$(use_with kerberos)
$(use_with xml libxml)
$(use_enable unicode mbstring)
$(use_with ssl openssl)
$(use_enable pcntl)
$(use_enable phar)
$(use_enable pdo)
$(use_enable opcache)
$(use_with postgres pgsql "${EPREFIX}/usr")
$(use_enable posix)
$(use_with spell pspell "${EPREFIX}/usr")
$(use_enable simplexml)
$(use_enable sharedmem shmop)
$(use_with snmp snmp "${EPREFIX}/usr")
$(use_enable soap)
$(use_enable sockets)
$(use_with sodium)
$(use_with sqlite sqlite3)
$(use_enable sysvipc sysvmsg)
$(use_enable sysvipc sysvsem)
$(use_enable sysvipc sysvshm)
$(use_with tidy tidy "${EPREFIX}/usr")
$(use_enable tokenizer)
$(use_enable xml)
$(use_enable xmlreader)
$(use_enable xmlwriter)
$(use_with xslt xsl)
$(use_with zip)
$(use_with zlib zlib "${EPREFIX}/usr")
$(use_enable debug)
)
# DBA support
if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
|| use qdbm || use lmdb || use tokyocabinet ; then
our_conf+=( "--enable-dba" )
fi
# DBA drivers support
our_conf+=(
$(use_with cdb)
$(use_with berkdb db4 "${EPREFIX}/usr")
$(use_enable flatfile)
$(use_with gdbm gdbm "${EPREFIX}/usr")
$(use_enable inifile)
$(use_with qdbm qdbm "${EPREFIX}/usr")
$(use_with tokyocabinet tcadb "${EPREFIX}/usr")
$(use_with lmdb lmdb "${EPREFIX}/usr")
)
# Support for the GD graphics library
our_conf+=(
$(use_with truetype freetype)
$(use_enable cjk gd-jis-conv)
$(use_with gd jpeg)
$(use_with xpm)
$(use_with webp)
)
# enable gd last, so configure can pick up the previous settings
our_conf+=( $(use_enable gd) )
# IMAP support
if use imap ; then
our_conf+=(
$(use_with imap imap "${EPREFIX}/usr")
$(use_with ssl imap-ssl "${EPREFIX}/usr")
)
fi
# LDAP support
if use ldap ; then
our_conf+=(
$(use_with ldap ldap "${EPREFIX}/usr")
$(use_with ldap-sasl)
)
fi
# MySQL support
local mysqllib="mysqlnd"
local mysqlilib="mysqlnd"
our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") )
local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
if use mysql || use mysqli ; then
our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
fi
# ODBC support
if use odbc && use iodbc ; then
our_conf+=(
--without-unixODBC
--with-iodbc
$(use_with pdo pdo-odbc "iODBC,${EPREFIX}/usr")
)
elif use odbc ; then
our_conf+=(
--with-unixODBC="${EPREFIX}/usr"
--without-iodbc
$(use_with pdo pdo-odbc "unixODBC,${EPREFIX}/usr")
)
else
our_conf+=(
--without-unixODBC
--without-iodbc
--without-pdo-odbc
)
fi
# Oracle support
our_conf+=( $(use_with oci8-instant-client oci8) )
# PDO support
if use pdo ; then
our_conf+=(
$(use_with mssql pdo-dblib "${EPREFIX}/usr")
$(use_with mysql pdo-mysql "${mysqllib}")
$(use_with postgres pdo-pgsql)
$(use_with sqlite pdo-sqlite)
$(use_with firebird pdo-firebird "${EPREFIX}/usr")
$(use_with oci8-instant-client pdo-oci)
)
fi
# readline/libedit support
our_conf+=(
$(use_with readline readline "${EPREFIX}/usr")
$(use_with libedit)
)
# Session support
if use session ; then
our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
else
our_conf+=( $(use_enable session) )
fi
# Use pic for shared modules such as apache2's mod_php
our_conf+=( --with-pic )
# we use the system copy of pcre
# --with-external-pcre affects ext/pcre
our_conf+=(
--with-external-pcre
$(use_with jit pcre-jit)
)
# Catch CFLAGS problems
# Fixes bug #14067.
# Changed order to run it in reverse for bug #32022 and #12021.
replace-cpu-flags "k6*" "i586"
# Cache the ./configure test results between SAPIs.
our_conf+=( --cache-file="${T}/config.cache" )
# Support user-passed configuration parameters
our_conf+=( ${EXTRA_ECONF:-} )
# Support the Apache2 extras, they must be set globally for all
# SAPIs to work correctly, especially for external PHP extensions
local one_sapi
local sapi
mkdir -p "${WORKDIR}/sapis-build" || die
for one_sapi in $SAPIS ; do
use "${one_sapi}" || continue
php_set_ini_dir "${one_sapi}"
# The BUILD_DIR variable is used to determine where to output
# the files that autotools creates. This was all originally
# based on the autotools-utils eclass.
BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
cp -a "${S}" "${BUILD_DIR}" || die
cd "${BUILD_DIR}" || die
local sapi_conf=(
--with-config-file-path="${PHP_INI_DIR}"
--with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
)
for sapi in $SAPIS ; do
case "$sapi" in
cli|cgi|embed|fpm|phpdbg)
if [[ "${one_sapi}" == "${sapi}" ]] ; then
sapi_conf+=( "--enable-${sapi}" )
if [[ "fpm" == "${sapi}" ]] ; then
sapi_conf+=(
$(use_with acl fpm-acl)
$(use_with systemd fpm-systemd)
)
fi
else
sapi_conf+=( "--disable-${sapi}" )
fi
;;
apache2)
if [[ "${one_sapi}" == "${sapi}" ]] ; then
sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
else
sapi_conf+=( --without-apxs2 )
fi
;;
esac
done
# Construct the $myeconfargs array by concatenating $our_conf
# (the common args) and $sapi_conf (the SAPI-specific args).
local myeconfargs=( "${our_conf[@]}" )
myeconfargs+=( "${sapi_conf[@]}" )
pushd "${BUILD_DIR}" > /dev/null || die
econf "${myeconfargs[@]}"
popd > /dev/null || die
done
}
src_compile() {
# snmp seems to run during src_compile, too (bug #324739)
addpredict /usr/share/snmp/mibs/.index #nowarn
addpredict /var/lib/net-snmp/mib_indexes #nowarn
local sapi
for sapi in ${SAPIS} ; do
if use "${sapi}"; then
cd "${WORKDIR}/sapis-build/$sapi" || \
die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
emake
fi
done
}
src_install() {
# see bug #324739 for what happens when we don't have that
addpredict /usr/share/snmp/mibs/.index #nowarn
# grab the first SAPI that got built and install common files from there
local first_sapi="", sapi=""
for sapi in $SAPIS ; do
if use $sapi ; then
first_sapi=$sapi
break
fi
done
# Makefile forgets to create this before trying to write to it...
dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
# Install php environment (without any sapis)
cd "${WORKDIR}/sapis-build/$first_sapi" || die
emake INSTALL_ROOT="${D}" \
install-build install-headers install-programs
local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
# Create the directory where we'll put version-specific php scripts
keepdir "/usr/share/php${PHP_MV}"
local file=""
local sapi_list=""
for sapi in ${SAPIS}; do
if use "${sapi}" ; then
einfo "Installing SAPI: ${sapi}"
cd "${WORKDIR}/sapis-build/${sapi}" || die
if [[ "${sapi}" == "apache2" ]] ; then
# We're specifically not using emake install-sapi as libtool
# may cause unnecessary relink failures (see bug #351266)
insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
newins ".libs/libphp$(get_libname)" \
"libphp${PHP_MV}$(get_libname)"
keepdir "/usr/$(get_libdir)/apache2/modules"
else
# needed each time, php_install_ini would reset it
local dest="${PHP_DESTDIR#${EPREFIX}}"
into "${dest}"
case "$sapi" in
cli)
source="sapi/cli/php"
# Install the "phar" archive utility.
if use phar ; then
emake INSTALL_ROOT="${D}" install-pharcmd
dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}"
fi
;;
cgi)
source="sapi/cgi/php-cgi"
;;
fpm)
source="sapi/fpm/php-fpm"
;;
embed)
source="libs/libphp$(get_libname)"
;;
phpdbg)
source="sapi/phpdbg/phpdbg"
;;
*)
die "unhandled sapi in src_install"
;;
esac
if [[ "${source}" == *"$(get_libname)" ]]; then
dolib.so "${source}"
else
dobin "${source}"
local name="$(basename ${source})"
dosym "..${dest#/usr}/bin/${name}" "/usr/bin/${name}${SLOT}"
fi
fi
php_install_ini "${sapi}"
# construct correct SAPI string for php-config
# thanks to ferringb for the bash voodoo
if [[ "${sapi}" == "apache2" ]]; then
sapi_list="${sapi_list:+${sapi_list} }apache2handler"
else
sapi_list="${sapi_list:+${sapi_list} }${sapi}"
fi
fi
done
# Installing opcache module
if use opcache ; then
into "${PHP_DESTDIR#${EPREFIX}}"
dolib.so "modules/opcache$(get_libname)"
fi
# Install env.d files
newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
# set php-config variable correctly (bug #278439)
sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
"${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
if use fpm ; then
if use systemd; then
systemd_newunit "${FILESDIR}/php-fpm_at.service" \
"php-fpm@${SLOT}.service"
else
systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
"php-fpm@${SLOT}.service"
fi
fi
}
src_test() {
echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
if [[ ! -x "${PHP_BIN}" ]] ; then
ewarn "Test phase requires USE=cli, skipping"
return
else
export TEST_PHP_EXECUTABLE="${PHP_BIN}"
fi
if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
fi
if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
fi
SKIP_ONLINE_TESTS=1 REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
"session.save_path=${T}" \
"${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
"session.save_path=${T}"
for name in ${EXPECTED_TEST_FAILURES}; do
mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
done
local failed="$(find -name '*.out')"
if [[ ${failed} != "" ]] ; then
ewarn "The following test cases failed unexpectedly:"
for name in ${failed}; do
ewarn " ${name/.out/}"
done
else
einfo "No unexpected test failures, all fine"
fi
if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
local passed=""
for name in ${EXPECTED_TEST_FAILURES}; do
[[ -f "${name}.diff" ]] && continue
passed="${passed} ${name}"
done
if [[ ${passed} != "" ]] ; then
einfo "The following test cases passed unexpectedly:"
for name in ${passed}; do
ewarn " ${passed}"
done
else
einfo "None of the known-to-fail tests passed, all fine"
fi
fi
}
pkg_postinst() {
# Output some general info to the user
if use apache2 ; then
elog
elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
elog "your apache2 command. OpenRC users can append that string to"
elog "APACHE2_OPTS in /etc/conf.d/apache2."
elog
elog "The apache module configuration file 70_mod_php.conf is"
elog "provided (and maintained) by eselect-php."
elog
fi
# Create the symlinks for php
local m
for m in ${SAPIS}; do
[[ ${m} == 'embed' ]] && continue;
if use $m ; then
local ci=$(eselect php show $m)
if [[ -z $ci ]]; then
eselect php set $m php${SLOT} || die
einfo "Switched ${m} to use php:${SLOT}"
einfo
elif [[ $ci != "php${SLOT}" ]] ; then
elog "To switch $m to use php:${SLOT}, run"
elog " eselect php set $m php${SLOT}"
elog
fi
fi
done
# Remove dead symlinks for SAPIs that were just disabled. For
# example, if the user has the cgi SAPI enabled, then he has an
# eselect-php symlink for it. If he later reinstalls PHP with
# USE="-cgi", that symlink will break. This call to eselect is
# supposed to remove that dead link per bug 572436.
eselect php cleanup || die
if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
elog "To build extensions for this version of PHP, you will need to"
elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
elog
fi
# Warn about the removal of PHP_INI_VERSION if the user has it set.
if [[ -n "${PHP_INI_VERSION}" ]]; then
ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
ewarn 'remove it from your configuration at your convenience. See'
ewarn
ewarn ' https://bugs.gentoo.org/611214'
ewarn
ewarn 'for more information.'
fi
elog "For details on how version slotting works, please see"
elog "the wiki:"
elog
elog " https://wiki.gentoo.org/wiki/PHP"
elog
}
pkg_postrm() {
# This serves two purposes. First, if we have just removed the last
# installed version of PHP, then this will remove any dead symlinks
# belonging to eselect-php. Second, if a user upgrades slots from
# (say) 5.6 to 7.0 and depcleans the old slot, then this will update
# his existing symlinks to point to the new 7.0 installation. The
# latter is bug 432962.
#
# Note: the eselect-php package may not be installed at this point,
# so we can't die() if this command fails.
eselect php cleanup
}

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

Loading…
Cancel
Save