Sync with portage [Thu Dec 19 20:58:02 MSK 2019].

mhiretskiy 1540
root 4 years ago
parent 0797a1de0c
commit 607abb7b4f

Binary file not shown.

Binary file not shown.

@ -435,7 +435,6 @@ qemu_src_configure() {
fi
}
conf_opts+=(
--disable-bluez
$(conf_notuser accessibility brlapi)
$(conf_notuser aio linux-aio)
$(conf_notuser bzip2)

Binary file not shown.

@ -1,3 +1,4 @@
DIST Sigil-0.9.13.tar.gz 18235134 BLAKE2B 4afe0f0258a8c1056029534ec696372e40343b9a398b612ee32fe95a3d417594bcc6782a4e6447323d67e84db5193756ff7c8756e160c432678ebc59ddeab706 SHA512 cafc6b075827239b73e80d3efa02e4e77d5903fed1faf8b600f70b178fb0c248c38d43e115f249124859edc12ddd8caf199ef0b0d05f20852eb060b27e5a3578
DIST sigil-0.9.16.tar.gz 21241424 BLAKE2B 1e784768cfe98e08ac01f5a9c11ec8254f9a0211f69ee1eb479643cc83677f6fea43745bcb158ea178ac64eec87c2e0062e783af2fe7477e2e5e8faf4db24c46 SHA512 45358912527484a7c580db34733d30927938443096fbf23e969d966e140a20607a4d98e086149a5eeb620f2462efc9abd531988c1b5cd93c373e747d5e5cd20a
DIST sigil-0.9.18.tar.gz 21396185 BLAKE2B a20a1465032371f9d7e567fff03c859adf4bd2264e9d803efeb3bdeb3b097eca826daa36824370848aea50fffb2b2b74b28568f7dca926565dfd0948d7ade030 SHA512 a8f669ffb76554268aae8aa0f85c6861f80def71e429b44b20ac9b231f3f7584839a82e7b6991f57ca1f2d1f023e24d1f37897bd048379e30565e9bdd7ee188a
DIST sigil-1.0.0.tar.gz 21623303 BLAKE2B 5772316d3ffc78387f7fb9db1e88397756bf82c25513246033fe71f288d619844e9316f43b7f08b914e4f59912e42eea061079cd4b468de77087bf7a8ea46be0 SHA512 7fc440131fcdd9af60b10f703dcdaf946ac6c667cabbfc842addd68c6c9af35fc8808630a6cfee6db465e7faeec6a6b4f2c6bbe185426a0f845e47c16b02d7d1

@ -0,0 +1,83 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{5,6,7} )
PYTHON_REQ_USE="tk"
inherit cmake-utils python-single-r1 xdg-utils
DESCRIPTION="Multi-platform WYSIWYG ebook editor for ePub format"
HOMEPAGE="https://sigil-ebook.com/ https://github.com/Sigil-Ebook/Sigil"
SRC_URI="https://github.com/Sigil-Ebook/Sigil/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3+ Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="+plugins system-mathjax"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND="
${PYTHON_DEPS}
app-text/hunspell:=
dev-libs/libpcre:3=[pcre16]
$(python_gen_cond_dep \
'dev-python/css-parser[${PYTHON_MULTI_USEDEP}]
dev-python/lxml[${PYTHON_MULTI_USEDEP}]
dev-python/six[${PYTHON_MULTI_USEDEP}]')
>=dev-qt/qtconcurrent-5.12:5
>=dev-qt/qtcore-5.12:5
>=dev-qt/qtgui-5.12:5
>=dev-qt/qtprintsupport-5.12:5
>=dev-qt/qtwebengine-5.12:5[widgets]
>=dev-qt/qtwidgets-5.12:5
sys-libs/zlib[minizip]
plugins? ( $(python_gen_cond_dep \
'dev-python/chardet[${PYTHON_MULTI_USEDEP}]
dev-python/cssselect[${PYTHON_MULTI_USEDEP}]
dev-python/cssutils[${PYTHON_MULTI_USEDEP}]
dev-python/html5lib[${PYTHON_MULTI_USEDEP}]
dev-python/pillow[${PYTHON_MULTI_USEDEP}]
dev-python/regex[${PYTHON_MULTI_USEDEP}]') )
system-mathjax? ( dev-libs/mathjax )
"
DEPEND="${RDEPEND}"
BDEPEND="
dev-qt/linguist-tools:5
virtual/pkgconfig
"
S="${WORKDIR}/Sigil-${PV}"
DOCS=( ChangeLog.txt README.md )
src_configure() {
python_export PYTHON_LIBPATH PYTHON_INCLUDEDIR
local mycmakeargs=(
-DINSTALL_BUNDLED_DICTS=0
-DUSE_SYSTEM_LIBS=1
-DSYSTEM_LIBS_REQUIRED=1
-DPYTHON_EXECUTABLE="${PYTHON}"
-DPYTHON_LIBRARY="${PYTHON_LIBPATH}"
-DPYTHON_INCLUDE_DIR="${PYTHON_INCLUDEDIR}"
)
use system-mathjax && mycmakeargs+=( -DMATHJAX_DIR="${EPREFIX}"/usr/share/mathjax )
cmake-utils_src_configure
}
src_install() {
cmake-utils_src_install
python_fix_shebang "${ED}"/usr/share/sigil/
python_optimize "${ED}"/usr/share/sigil/
}
pkg_postinst() {
xdg_desktop_database_update
}
pkg_postrm() {
xdg_desktop_database_update
}

Binary file not shown.

@ -1,24 +1,15 @@
DIST Python-2.7.15.tar.xz 12642436 BLAKE2B d8783a48ea26695e8d4677397a08194c738d7e4bc8ecaddaab609ad1fd5a1ca07701f707fe38d259f6bd44a39171ef95e7530f3df4bcb4d94abc4d21d7e2d489 SHA512 27ea43eb45fc68f3d2469d5f07636e10801dee11635a430ec8ec922ed790bb426b072da94df885e4dfa1ea8b7a24f2f56dd92f9b0f51e162330f161216bd6de6
DIST Python-2.7.16.tar.xz 12752104 BLAKE2B 7d6b5b853f9974d44e04dd35ecdffaab87511e183b4b01dd4f8f4ee109c4b4ab208f045708f69717be9d3a706aa078b71438ed482c062c0b89c12730eae074ae SHA512 16e814e8dcffc707b595ca2919bd2fa3db0d15794c63d977364652c4a5b92e90e72b8c9e1cc83b5020398bd90a1b397dbdd7cb931c49f1aa4af6ef95414b43e0
DIST Python-2.7.17.tar.xz 12855568 BLAKE2B 6d09214a51d6595fe5253a279ee556d7510dcb9a0e8ad71e9cf73b4fb00c3abd3680e2429f4f87d9387d1fc16d4887f5f33fc600b24b0ca2c70f36bf34df2157 SHA512 2dc19a0b0d818c71429dae94783e58b2aac0fa31f5faa1e840cac06245a59932ecc4658d913515736601bcf70a78c9ec60367aed75f4567d1e41ff3bb104da9a
DIST Python-3.5.5.tar.xz 15351440 BLAKE2B 217cb7f51e04d57983ce053ff4276d056e17c8223b6f3d87b69f556453fe2ae3d4dc2c1a6b9c2c6aad033cea9b40cd32264d8208cc81a1ec34ff252379bf95b8 SHA512 c9056baee6a2d1fe7f14b1f310db95b78e8972766d086f8ae10954f38f8182956171580bde01ddadebe897f2545a6fbe47669ca3e4887026ac1fae5ee9197f22
DIST Python-3.5.7.tar.xz 15324736 BLAKE2B 0f1dd80584385b7f859652c85dc6b51bf71cd9f1d53fcf1716c54e8ffc3d2a36ef9969956e4429ac1ba878dad1e9acbb5f82ddb6a9923886bf3c84b3327dfecb SHA512 83f57451e1d7082bf19e4e49a0902e9257e381836d9a04154a6b276135fa49e5c96b6869eed9ec4475e06b76556c1ae89f5cca111b762eb8b2dee6f65373e0f4
DIST Python-3.5.9.tar.xz 15388876 BLAKE2B 6086ed2350b6dce3203360f24c2fddf77df65a5815d6da019809796b30c2f43440a9e349c7defd0187cfc3a50a387352dfa63594c2ec513dd6bf585e7c34ec51 SHA512 58127793adef42ed57ae4d56338268866e14c2d084f09f57f26fc6b1c9454e70cc6d3dffc638f8d56f182acc0884021a4dbb578f312dd6fc01995fa85e31377e
DIST Python-3.6.5.tar.xz 17049912 BLAKE2B f393e9563a18a46c457afcd2e174d9eacda20fe2b0ae5461e11c582fa4d27b85c01bbe7b602f45511b6b44f635c6330205b12fb3e8325ffd07e87b78a8258889 SHA512 6b26fcd296b9bd8e67861eff10d14db7507711ddba947288d16d6def53135c39326b7f969c04bb2b2993f924d9e7ad3f5c5282a3915760bc0885cf0a8ea5eb51
DIST Python-3.6.8.tar.xz 17212420 BLAKE2B e104b49a35492b622080ab81a446c0cdd1223e8ddf95c4e1b262762a027664b59f3e4deeda4ba7177115d780e48b6764a053acef640a645327df428d2e4820cd SHA512 b17867e451ebe662f50df83ed112d3656c089e7d750651ea640052b01b713b58e66aac9e082f71fd16f5b5510bc9b797f5ccd30f5399581e9aa406197f02938a
DIST Python-3.6.10.tar.xz 17212220 BLAKE2B 822e231cf2755e6477e49e9128a983185a4f1e30e9d6c221f1b5720891c0de345e8c5402af458d3627eba124e75fea4b5daa94e01b0eaddc116dc3281263ecbe SHA512 26147099e1f1a0ffc85febad26e18e991f019599a150887ea0b925e34663fad8e03b3c2a941e2770c1a63960695e173ef32709572c9361e7f2cb862ccf75b28a
DIST Python-3.6.9.tar.xz 17212164 BLAKE2B ef33dbc1ea3bbeaf92092de867279d759e3a204ca4e8bf0e5c6a1adbb17a9220d8829245fa9f067ec6497a5789a4f60b8db8c727bb2bd8126df470921d552a53 SHA512 05de9c6f44d96a52bfce10ede4312de892573edaf8bece65926d19973a3a800d65eed7a857af945f69efcfb25efa3788e7a54016b03d80b611eb51c3ea074819
DIST Python-3.7.2.tar.xz 17042320 BLAKE2B 79b06b7d38590b7ad00850a4323156bfee07c4cf8531cbc09d262c6eb38721e32b8b0591fc21017e56948dd81763e9061f118f204eda5b9cc0b84e7132b42979 SHA512 6cd2d6d8455558783b99d55985cd7b22d67b98f41a09b4fdd96f680a630a4e035220d2b903f8c59ed513aa5ffe6730fa947ddb55bb72ce36f0e945ef8af5d971
DIST Python-3.7.3.tar.xz 17108364 BLAKE2B ac86ea442519a02f0afcb0d0ec70cb288ae28df63fc9f575ee4d8e03e6e31aff9ad2ff18ff5787d922727bd1c6f1a488f94541cd9787ac932d041c93847dea34 SHA512 6d9b7c0f1764e0f655a39430a3af6f7b5e3c9b7166c042e780677a54b17ad4ca6d0d9cba262c82b1b70bba8f7c28883dad4cc0d7cc194fc7d2c1b5f4f08a763a
DIST Python-3.7.4.tar.xz 17131432 BLAKE2B e175f750f1fa610a19a40f382ae5e652de12c775cba41bf575868c0621a8e5c4060a15a5567c207b251de5304f8321191f5bc56388c253d42cf17c5654a88ebb SHA512 71f64668c259f3ed07bd4aa239dbba6cc1b6b0a84d50bbff160664845d7986f757e4d65fca327e62a2d12ba593742ca83a22f7cb6093aff8715ec916c2ba9416
DIST Python-3.7.5.tar.xz 17236432 BLAKE2B fb49a3bfd9b1944d567a45682f789ef840e63ed610e0dddb5695da7a84a0bcb50a6fa52097722f09b57d6fc15a5f89aeaa46a061125219e597897086f3dffe40 SHA512 f4f3879881f260f58dbb041fb0f2f210d4b70b02a739e41e50e6fea67d31855a7a29ce4ebef66bfde3d0edf54b946a48f78490f986da965357b835d4dbb3f414
DIST Python-3.7.6.tar.xz 17246360 BLAKE2B b83a440a1ad5b1a2210e03be0522d39f53778774ea725fa41aaaab28cccfcdf007996f1a1d3cb95f8040b71b692189e28db67ba6ec136af82158363a1aadbba6 SHA512 5be022c384728b0c6709d165486f66226d126c521b466ed24d0c4c3c5910ec786a734f4c2c916ac409213c54a492b9fb230fb721c41e3de281676a7e9d8f3171
DIST Python-3.8.0.tar.xz 17829824 BLAKE2B fcef24b7f0db3b47f899810c77af1e2a84f8b4bf4098a2b417e22dcfb7a5444160e26e5995f73d1068cc7fdbe226d09a88bb5065ac765a4484f66cd327911eef SHA512 5f9bfcb3acdf592770a9d5abd2c32c68c55a49b92f958ded069e3ef31cf2d415e67112b4f6738fab237dc29e5c622298719946d2e9471e7e78e3a6bdf2fac1d1
DIST python-gentoo-patches-2.7.15.tar.xz 16208 BLAKE2B 5739c2b3a236d48f8e33f0fe6515bfe7a8f99096f6223b402653988feac2513d37d26b6e40e5e049852f42657358170e468ca60097e0e2294e760787c12ad591 SHA512 687fd008d1d41b1e65ce5417f6f6aba84ffd42f7af44ef97c03a7806b28e6888f8df043a0c15187a8b229cc17642853e6feb25494db97f4d10f8a66f8ebcbcca
DIST python-gentoo-patches-2.7.16.tar.xz 13904 BLAKE2B 218b46f8656f4a792dcd47eabca6d59a1558276b77676544991ee75914cd76dda84c36f43e72e477b850dd4cb52374d289f20dccd244a3b52ae5debaf3363432 SHA512 83f90545231c663a34c6925352a357a2b15997ac0362578a1893304c5070b5251922585ae8bc1bafb68d306bcddd4cdba4b6406648d473bd3e980eef65fe3ecd
DIST python-gentoo-patches-2.7.17.tar.xz 13476 BLAKE2B 788688e2941d2d6d4f768168881b2c3639213a97e214557b3a93f8db44d81e2b6d70be847b7462e54e3786660ebee4ee331402081d92167d74ad149279c3f389 SHA512 1641737635d33607a77ed2ee2462854cec603be39737de3f81abb188702aaf46f039d1616f9dcd413da1f4a8040175c66a2883e496132c2e4ebe8f860b36f9f1
DIST python-gentoo-patches-3.5.4-0.tar.xz 11704 BLAKE2B 4a7d71feff18c7c8c109bed10748348484d314183c3de3ec950d5ca5ce7048bb322c470f3f5bff2d63eb7f2ed99c0fe75c621df050273d9d118681b28926061d SHA512 d395a87695f700598026038d6929ea5038abd7d494294037a4dfa02d5262203dbbaa6ae258a5a7f35ff5542f6266dcf69cc0b9c3df2a047cd2f6699a87e182ec
DIST python-gentoo-patches-3.6.4.tar.xz 12888 BLAKE2B 7cf49ae22df53e855f2e99df51686b5d4bd0da82ef4c22836e24726ea9ed561808352c0305a5659b052d38b843f1ff61b6466a7bc3673b7e5cfb4d81d22fa4bc SHA512 90a1b685f2539872ffd67f96581f70145b7afaf18af19f4a7f4a61214103d2a10bf0069c1769dac229ae011fceaf8538f041082b33c1671905246d018d184dd7
DIST python-gentoo-patches-3.6.8.tar.xz 11224 BLAKE2B 5fe38282bcf28df18e0bd37756c880ae191ea738dc92f1cf83f682cfdc52525b9c44287dc99191a73d75c90672ab501b56adf49515b35ff1fdee88c8dc07b175 SHA512 89e700663db25d6d78eee1d4bfdab686c5341a794062f3a63df3485ac0b58deb4b4885d24701f3ae138d06ca783be92e310e1100c6d633910c33732f3cb0d7df
DIST python-gentoo-patches-3.7.2.tar.xz 9776 BLAKE2B fe451c3fb44a1ace4489d1bc68db9848b4227422fe9135659594248d057a8916e2abfe8e2677ef6efc9c962dbefe3ca7cd05cbd62b325d53eef6b05928f82017 SHA512 55e932624333b78b55e8981aaa7e7bfbddb635a61f594353a77a6bd5c2b57de31a4ee9ae04e072c4e2eb0fddd1c2702b4bd6133cf0a2c94ab35808df86550156
DIST python-gentoo-patches-3.7.3-0.tar.xz 9800 BLAKE2B b3e1df06cc2c404f08d2da7ea7d44c3612c5b4f908c58d469084b4e78ee4c3024e57879b3f83027d980c9f5e065804e3e144ba734b1da357d3d073c22c14b02e SHA512 deeaf5fbd1d557d4c40c770c1bd772b835bf5ced1842b964fd8ad1aa652b706782301e8a860d6fd1909d90246a8f48a9aaf384d047fca594f96d6771c2901338
DIST python-gentoo-patches-3.7.4-1.tar.xz 10100 BLAKE2B 63e8fada89b64b59ba083745626a1e8a07bec0cf93b7b6ab405c33a0f2932cbe497a331c52895a07f10434b230c438f27c9582efecdd57f3bad15d9aa604d157 SHA512 11b0e811a9890a1235c85426061b35f9964eba64cac0536f4c9e0498b1cc66eb005f14aed34eead735b43e91c2b5babced60e3310f5329231a1706871b95b547
DIST python-gentoo-patches-3.8.0.tar.xz 9788 BLAKE2B 9ca14fa49fbbd11412451dc6ce32f643cdffdc988c6b2b312593e2b87b85d09e95ada397aaafa548cdb5cf58be09d970d020ef6f20a3575108581fb4647b7bfa SHA512 946be0babc8c67586309b48bffb5ac0a2a354b3798fa7e23c641cc836ff310ab744d75308d1324e9ed54720bf9f4d0aba1f89fb454a98bf9b9fa9484210b6ca5

@ -1,11 +0,0 @@
--- a/setup.py
+++ b/setup.py
@@ -1364,7 +1364,7 @@ class PyBuildExt(build_ext):
else:
missing.extend(['resource', 'termios'])
- nis = self._detect_nis(inc_dirs, lib_dirs)
+ nis = None
if nis is not None:
exts.append(nis)
else:

@ -1,69 +0,0 @@
# From 8d89a385b71a2e4cce0fba0cfc8d91b63485edc5 Mon Sep 17 00:00:00 2001
# From: Christian Heimes <christian@python.org>
# Date: Sat, 24 Mar 2018 18:38:14 +0100
# Subject: [PATCH] [3.6] bpo-33127: Compatibility patch for LibreSSL 2.7.0
# (GH-6210) (GH-6214)
#
# LibreSSL 2.7 introduced OpenSSL 1.1.0 API. The ssl module now detects
# LibreSSL 2.7 and only provides API shims for OpenSSL < 1.1.0 and
# LibreSSL < 2.7.
# Documentation updates and fixes for failing tests will be provided in
# another patch set.
# Signed-off-by: Christian Heimes <christian@python.org>.
# (cherry picked from commit 4ca0739c9d97ac7cd45499e0d31be68dc659d0e1)
# Co-authored-by: Christian Heimes <christian@python.org>
# Patch modified by Aaron Bauman <bman@gentoo.org> for 3.5.5
--- a/Modules/_ssl.c 2018-04-13 18:33:17.397649561 -0400
+++ b/Modules/_ssl.c 2018-04-13 18:40:22.319852014 -0400
@@ -101,6 +101,12 @@
#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
# define OPENSSL_VERSION_1_1 1
+# define PY_OPENSSL_1_1_API 1
+#endif
+
+/* LibreSSL 2.7.0 provides necessary OpenSSL 1.1.0 APIs */
+#if defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x2070000fL
+# define PY_OPENSSL_1_1_API 1
#endif
/* Openssl comes with TLSv1.1 and TLSv1.2 between 1.0.0h and 1.0.1
@@ -129,16 +135,18 @@
#define INVALID_SOCKET (-1)
#endif
-#ifdef OPENSSL_VERSION_1_1
-/* OpenSSL 1.1.0+ */
-#ifndef OPENSSL_NO_SSL2
-#define OPENSSL_NO_SSL2
-#endif
-#else /* OpenSSL < 1.1.0 */
-#if defined(WITH_THREAD)
+/* OpenSSL 1.0.2 and LibreSSL needs extra code for locking */
+#if !defined(OPENSSL_VERSION_1_1) && defined(WITH_THREAD)
#define HAVE_OPENSSL_CRYPTO_LOCK
#endif
+#if defined(OPENSSL_VERSION_1_1) && !defined(OPENSSL_NO_SSL2)
+#define OPENSSL_NO_SSL2
+#endif
+
+#ifndef PY_OPENSSL_1_1_API
+/* OpenSSL 1.1 API shims for OpenSSL < 1.1.0 and LibreSSL < 2.7.0 */
+
#define TLS_method SSLv23_method
static int X509_NAME_ENTRY_set(const X509_NAME_ENTRY *ne)
@@ -187,7 +195,7 @@
{
return store->param;
}
-#endif /* OpenSSL < 1.1.0 or LibreSSL */
+#endif /* OpenSSL < 1.1.0 or LibreSSL < 2.7.0 */
enum py_ssl_error {

@ -1,42 +0,0 @@
The hash implementation casts the input pointer to uint64_t* and directly reads
from this, which may cause unaligned accesses. Use memcpy() instead so this code
will not crash with SIGBUS on sparc.
--- a/Python/pyhash.c 2017-11-29 10:21:20.283094068 +0100
+++ b/Python/pyhash.c 2017-11-29 10:24:26.733087813 +0100
@@ -369,7 +369,7 @@
uint64_t k0 = _le64toh(_Py_HashSecret.siphash.k0);
uint64_t k1 = _le64toh(_Py_HashSecret.siphash.k1);
uint64_t b = (uint64_t)src_sz << 56;
- const uint64_t *in = (uint64_t*)src;
+ const uint8_t *in = (uint8_t*)src;
uint64_t v0 = k0 ^ 0x736f6d6570736575ULL;
uint64_t v1 = k1 ^ 0x646f72616e646f6dULL;
@@ -378,11 +378,13 @@
uint64_t t;
uint8_t *pt;
- uint8_t *m;
+ const uint8_t *m;
while (src_sz >= 8) {
- uint64_t mi = _le64toh(*in);
- in += 1;
- src_sz -= 8;
+ uint64_t mi;
+ memcpy(&mi, in, sizeof(mi));
+ mi = _le64toh(mi);
+ in += sizeof(mi);
+ src_sz -= sizeof(mi);
v3 ^= mi;
DOUBLE_ROUND(v0,v1,v2,v3);
@@ -391,7 +393,7 @@
t = 0;
pt = (uint8_t *)&t;
- m = (uint8_t *)in;
+ m = in;
switch (src_sz) {
case 7: pt[6] = m[6]; /* fall through */
case 6: pt[5] = m[5]; /* fall through */

@ -1,114 +0,0 @@
From 8d89a385b71a2e4cce0fba0cfc8d91b63485edc5 Mon Sep 17 00:00:00 2001
From: Christian Heimes <christian@python.org>
Date: Sat, 24 Mar 2018 18:38:14 +0100
Subject: [PATCH] [3.6] bpo-33127: Compatibility patch for LibreSSL 2.7.0
(GH-6210) (GH-6214)
LibreSSL 2.7 introduced OpenSSL 1.1.0 API. The ssl module now detects
LibreSSL 2.7 and only provides API shims for OpenSSL < 1.1.0 and
LibreSSL < 2.7.
Documentation updates and fixes for failing tests will be provided in
another patch set.
Signed-off-by: Christian Heimes <christian@python.org>.
(cherry picked from commit 4ca0739c9d97ac7cd45499e0d31be68dc659d0e1)
Co-authored-by: Christian Heimes <christian@python.org>
---
Lib/test/test_ssl.py | 1 +
.../2018-03-24-15-08-24.bpo-33127.olJmHv.rst | 1 +
Modules/_ssl.c | 24 ++++++++++++-------
Tools/ssl/multissltests.py | 3 ++-
4 files changed, 20 insertions(+), 9 deletions(-)
create mode 100644 Misc/NEWS.d/next/Library/2018-03-24-15-08-24.bpo-33127.olJmHv.rst
diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
index 8dd3b41450..9785a59a7e 100644
--- a/Lib/test/test_ssl.py
+++ b/Lib/test/test_ssl.py
@@ -1687,6 +1687,7 @@ class SimpleBackgroundTests(unittest.TestCase):
self.assertEqual(len(ctx.get_ca_certs()), 1)
@needs_sni
+ @unittest.skipUnless(hasattr(ssl, "PROTOCOL_TLSv1_2"), "needs TLS 1.2")
def test_context_setget(self):
# Check that the context of a connected socket can be replaced.
ctx1 = ssl.SSLContext(ssl.PROTOCOL_TLSv1_2)
diff --git a/Misc/NEWS.d/next/Library/2018-03-24-15-08-24.bpo-33127.olJmHv.rst b/Misc/NEWS.d/next/Library/2018-03-24-15-08-24.bpo-33127.olJmHv.rst
new file mode 100644
index 0000000000..635aabbde0
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2018-03-24-15-08-24.bpo-33127.olJmHv.rst
@@ -0,0 +1 @@
+The ssl module now compiles with LibreSSL 2.7.1.
diff --git a/Modules/_ssl.c b/Modules/_ssl.c
index c54e43c2b4..5e007da858 100644
--- a/Modules/_ssl.c
+++ b/Modules/_ssl.c
@@ -106,6 +106,12 @@ struct py_ssl_library_code {
#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
# define OPENSSL_VERSION_1_1 1
+# define PY_OPENSSL_1_1_API 1
+#endif
+
+/* LibreSSL 2.7.0 provides necessary OpenSSL 1.1.0 APIs */
+#if defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x2070000fL
+# define PY_OPENSSL_1_1_API 1
#endif
/* Openssl comes with TLSv1.1 and TLSv1.2 between 1.0.0h and 1.0.1
@@ -152,16 +158,18 @@ struct py_ssl_library_code {
#define INVALID_SOCKET (-1)
#endif
-#ifdef OPENSSL_VERSION_1_1
-/* OpenSSL 1.1.0+ */
-#ifndef OPENSSL_NO_SSL2
-#define OPENSSL_NO_SSL2
-#endif
-#else /* OpenSSL < 1.1.0 */
-#if defined(WITH_THREAD)
+/* OpenSSL 1.0.2 and LibreSSL needs extra code for locking */
+#if !defined(OPENSSL_VERSION_1_1) && defined(WITH_THREAD)
#define HAVE_OPENSSL_CRYPTO_LOCK
#endif
+#if defined(OPENSSL_VERSION_1_1) && !defined(OPENSSL_NO_SSL2)
+#define OPENSSL_NO_SSL2
+#endif
+
+#ifndef PY_OPENSSL_1_1_API
+/* OpenSSL 1.1 API shims for OpenSSL < 1.1.0 and LibreSSL < 2.7.0 */
+
#define TLS_method SSLv23_method
#define TLS_client_method SSLv23_client_method
#define TLS_server_method SSLv23_server_method
@@ -227,7 +235,7 @@ SSL_SESSION_get_ticket_lifetime_hint(const SSL_SESSION *s)
return s->tlsext_tick_lifetime_hint;
}
-#endif /* OpenSSL < 1.1.0 or LibreSSL */
+#endif /* OpenSSL < 1.1.0 or LibreSSL < 2.7.0 */
enum py_ssl_error {
diff --git a/Tools/ssl/multissltests.py b/Tools/ssl/multissltests.py
index ce5bbd8530..ba4529ae06 100755
--- a/Tools/ssl/multissltests.py
+++ b/Tools/ssl/multissltests.py
@@ -57,8 +57,9 @@ LIBRESSL_OLD_VERSIONS = [
]
LIBRESSL_RECENT_VERSIONS = [
- "2.5.3",
"2.5.5",
+ "2.6.4",
+ "2.7.1",
]
# store files in ../multissl
--
2.17.0

@ -1,359 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
WANT_LIBTOOL="none"
inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
MY_P="Python-${PV}"
PATCHSET_VERSION="2.7.15"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
https://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
LICENSE="PSF-2"
SLOT="2.7"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
IUSE="-berkdb bluetooth build doc elibc_uclibc examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl +threads tk +wide-unicode wininst +xml"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:0=
>=sys-libs/zlib-1.1.3:0=
virtual/libffi:=
virtual/libintl
berkdb? ( || (
sys-libs/db:5.3
sys-libs/db:5.1
sys-libs/db:4.8
sys-libs/db:4.7
sys-libs/db:4.6
sys-libs/db:4.5
sys-libs/db:4.4
sys-libs/db:4.3
sys-libs/db:4.2
) )
gdbm? ( sys-libs/gdbm:0=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:0= )
readline? ( >=sys-libs/readline-4.1:0= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)
tk? (
>=dev-lang/tcl-8.0:0=
>=dev-lang/tk-8.0:0=
dev-tcltk/blt:0=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1 )
!!<sys-apps/portage-2.1.9"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
virtual/pkgconfig
>=sys-devel/autoconf-2.65
!sys-devel/gcc[libffi(-)]"
RDEPEND+=" !build? ( app-misc/mime-types )
doc? ( dev-python/python-docs:${SLOT} )"
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
S="${WORKDIR}/${MY_P}"
pkg_setup() {
if use berkdb; then
ewarn "'bsddb' module is out-of-date and no longer maintained inside"
ewarn "dev-lang/python. 'bsddb' and 'dbhash' modules have been additionally"
ewarn "removed in Python 3. A maintained alternative of 'bsddb3' module"
ewarn "is provided by dev-python/bsddb3."
else
if has_version "=${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"; then
ewarn "You are migrating from =${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"
ewarn "to =${CATEGORY}/${PN}-${PV%%.*}*[-berkdb]."
ewarn "You might need to migrate your databases."
fi
fi
}
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -r Modules/expat || die
rm -r Modules/_ctypes/libffi* || die
rm -r Modules/zlib || die
if tc-is-cross-compiler; then
rm "${WORKDIR}/patches/0006-Regenerate-platform-specific-modules.patch" || die
fi
local PATCHES=(
"${WORKDIR}/patches"
# Fix for cross-compiling.
"${FILESDIR}/python-2.7.5-nonfatal-compileall.patch"
"${FILESDIR}/python-2.7.9-ncurses-pkg-config.patch"
"${FILESDIR}/python-2.7.10-cross-compile-warn-test.patch"
"${FILESDIR}/python-2.7.10-system-libffi.patch"
)
default
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
Lib/distutils/command/install.py \
Lib/distutils/sysconfig.py \
Lib/site.py \
Lib/sysconfig.py \
Lib/test/test_site.py \
Makefile.pre.in \
Modules/Setup.dist \
Modules/getpath.c \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
eautoreconf
}
src_configure() {
# dbm module can be linked against berkdb or gdbm.
# Defaults to gdbm when both are enabled, #204343.
local disable
use berkdb || use gdbm || disable+=" dbm"
use berkdb || disable+=" _bsddb"
# disable automagic bluetooth headers detection
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
ewarn "You have configured Python without XML support."
ewarn "This is NOT a recommended configuration as you"
ewarn "may face problems parsing any XML documents."
fi
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
if [[ "$(gcc-major-version)" -ge 4 ]]; then
append-flags -fwrapv
fi
filter-flags -malign-double
# https://bugs.gentoo.org/show_bug.cgi?id=50309
if is-flagq -O3; then
is-flagq -fstack-protector-all && replace-flags -O3 -O2
use hardened && replace-flags -O3 -O2
fi
if tc-is-cross-compiler; then
# Force some tests that try to poke fs paths.
export ac_cv_file__dev_ptc=no
export ac_cv_file__dev_ptmx=yes
fi
# Export CXX so it ends up in /usr/lib/python2.X/config/Makefile.
tc-export CXX
# The configure script fails to use pkg-config correctly.
# http://bugs.python.org/issue15506
export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
# Set LDFLAGS so we link modules with -lpython2.7 correctly.
# Needed on FreeBSD unless Python 2.7 is already installed.
# Please query BSD team before removing this!
append-ldflags "-L."
local dbmliborder
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
if use berkdb; then
dbmliborder+="${dbmliborder:+:}bdb"
fi
BUILD_DIR="${WORKDIR}/${CHOST}"
mkdir -p "${BUILD_DIR}" || die
cd "${BUILD_DIR}" || die
ECONF_SOURCE="${S}" OPT="" \
econf \
--with-fpectl \
--enable-shared \
$(use_enable ipv6) \
$(use_with threads) \
$(use wide-unicode && echo "--enable-unicode=ucs4" || echo "--enable-unicode=ucs2") \
--infodir='${prefix}/share/info' \
--mandir='${prefix}/share/man' \
--with-computed-gotos \
--with-dbmliborder="${dbmliborder}" \
--with-libc="" \
--enable-loadable-sqlite-extensions \
--with-system-expat \
--with-system-ffi \
--without-ensurepip
if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
eerror "configure has detected that the sem_open function is broken."
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
die "Broken sem_open function (bug 496328)"
fi
}
src_compile() {
# Avoid invoking pgen for cross-compiles.
touch Include/graminit.h Python/graminit.c
cd "${BUILD_DIR}" || die
emake
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
cd "${BUILD_DIR}" || die
# Skip failing tests.
local skipped_tests="distutils gdb"
for test in ${skipped_tests}; do
mv "${S}"/Lib/test/test_${test}.py "${T}"
done
# Daylight saving time problem
# https://bugs.python.org/issue22067
# https://bugs.gentoo.org/610628
local -x TZ=UTC
# Rerun failed tests in verbose mode (regrtest -w).
emake test EXTRATESTOPTS="-w" < /dev/tty
local result="$?"
for test in ${skipped_tests}; do
mv "${T}/test_${test}.py" "${S}"/Lib/test
done
elog "The following tests have been skipped:"
for test in ${skipped_tests}; do
elog "test_${test}.py"
done
elog "If you would like to run them, you may:"
elog "cd '${EPREFIX}/usr/$(get_libdir)/python${SLOT}/test'"
elog "and run the tests separately."
if [[ "${result}" -ne 0 ]]; then
die "emake test failed"
fi
}
src_install() {
local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
cd "${BUILD_DIR}" || die
emake DESTDIR="${D}" altinstall
sed -e "s/\(LDFLAGS=\).*/\1/" -i "${libdir}/config/Makefile" || die "sed failed"
# Fix collisions between different slots of Python.
mv "${ED}usr/bin/2to3" "${ED}usr/bin/2to3-${SLOT}"
mv "${ED}usr/bin/pydoc" "${ED}usr/bin/pydoc${SLOT}"
mv "${ED}usr/bin/idle" "${ED}usr/bin/idle${SLOT}"
rm -f "${ED}usr/bin/smtpd.py"
use berkdb || rm -r "${libdir}/"{bsddb,dbhash.py*,test/test_bsddb*} || die
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
use tk || rm -r "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,lib-tk} || die
use elibc_uclibc && rm -fr "${libdir}/"{bsddb/test,test}
use threads || rm -r "${libdir}/multiprocessing" || die
use wininst || rm -r "${libdir}/distutils/command/"wininst-*.exe || die
dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
if use examples; then
insinto /usr/share/doc/${PF}/examples
doins -r "${S}"/Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
emake --no-print-directory -s -f - 2>/dev/null)
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT}
newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${SLOT/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${SLOT}:" \
-i "${ED}etc/conf.d/pydoc-${SLOT}" "${ED}etc/init.d/pydoc-${SLOT}" || die "sed failed"
# for python-exec
local vars=( EPYTHON PYTHON_SITEDIR PYTHON_SCRIPTDIR )
# if not using a cross-compiler, use the fresh binary
if ! tc-is-cross-compiler; then
local -x PYTHON=./python
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
else
vars=( PYTHON "${vars[@]}" )
fi
python_export "python${SLOT}" "${vars[@]}"
echo "EPYTHON='${EPYTHON}'" > epython.py || die
python_domodule epython.py
# python-exec wrapping support
local pymajor=${SLOT%.*}
mkdir -p "${D}${PYTHON_SCRIPTDIR}" || die
# python and pythonX
ln -s "../../../bin/python${SLOT}" "${D}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
ln -s "python${pymajor}" "${D}${PYTHON_SCRIPTDIR}/python" || die
# python-config and pythonX-config
ln -s "../../../bin/python${SLOT}-config" "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" "${D}${PYTHON_SCRIPTDIR}/python-config" || die
# 2to3, pydoc, pyvenv
ln -s "../../../bin/2to3-${SLOT}" "${D}${PYTHON_SCRIPTDIR}/2to3" || die
ln -s "../../../bin/pydoc${SLOT}" "${D}${PYTHON_SCRIPTDIR}/pydoc" || die
# idle
if use tk; then
ln -s "../../../bin/idle${SLOT}" "${D}${PYTHON_SCRIPTDIR}/idle" || die
fi
}
eselect_python_update() {
if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
eselect python update
fi
if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
eselect python update --python${PV%%.*}
fi
}
pkg_postinst() {
eselect_python_update
}
pkg_postrm() {
eselect_python_update
}

@ -1,365 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
WANT_LIBTOOL="none"
inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs
MY_P="Python-${PV/_/}"
PATCHSET_VERSION="3.5.4-0"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV%_rc*}/${MY_P}.tar.xz
https://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
LICENSE="PSF-2"
SLOT="3.5/3.5m"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
IUSE="build elibc_uclibc examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test +threads tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:0=
app-arch/xz-utils:0=
>=sys-libs/zlib-1.1.3:0=
virtual/libffi:=
virtual/libintl
gdbm? ( sys-libs/gdbm:0=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:0= )
readline? ( >=sys-libs/readline-4.1:0= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)
tk? (
>=dev-lang/tcl-8.0:0=
>=dev-lang/tk-8.0:0=
dev-tcltk/blt:0=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:0= )
!!<sys-apps/sandbox-2.6-r1"
DEPEND="${RDEPEND}
test? ( app-arch/xz-utils[extra-filters(+)] )
virtual/pkgconfig
!sys-devel/gcc[libffi(-)]"
RDEPEND+=" !build? ( app-misc/mime-types )"
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
S="${WORKDIR}/${MY_P}"
PYVER=${SLOT%/*}
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -fr Modules/expat
rm -fr Modules/_ctypes/libffi*
rm -fr Modules/zlib
if tc-is-cross-compiler; then
# Invokes BUILDPYTHON, which is built for the host arch
local EPATCH_EXCLUDE="*_regenerate_platform-specific_modules.patch"
fi
EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
epatch "${FILESDIR}/${PN}-3.4.3-ncurses-pkg-config.patch"
epatch "${FILESDIR}/${PN}-3.5-distutils-OO-build.patch"
epatch "${FILESDIR}/3.6-disable-nis.patch"
epatch "${FILESDIR}/python-3.5.5-libressl-compatibility.patch"
epatch "${FILESDIR}/python-3.5.5-hash-unaligned.patch"
epatch_user
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
configure.ac \
Lib/distutils/command/install.py \
Lib/distutils/sysconfig.py \
Lib/site.py \
Lib/sysconfig.py \
Lib/test/test_site.py \
Makefile.pre.in \
Modules/getpath.c \
Modules/Setup.dist \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
eautoreconf
}
src_configure() {
local disable
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
ewarn "You have configured Python without XML support."
ewarn "This is NOT a recommended configuration as you"
ewarn "may face problems parsing any XML documents."
fi
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
if [[ "$(gcc-major-version)" -ge 4 ]]; then
append-flags -fwrapv
fi
filter-flags -malign-double
# https://bugs.gentoo.org/show_bug.cgi?id=50309
if is-flagq -O3; then
is-flagq -fstack-protector-all && replace-flags -O3 -O2
use hardened && replace-flags -O3 -O2
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
tc-export CXX
# The configure script fails to use pkg-config correctly.
# http://bugs.python.org/issue15506
export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
# Needed on FreeBSD unless Python 3.2 is already installed.
# Please query BSD team before removing this!
append-ldflags "-L."
local dbmliborder
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
BUILD_DIR="${WORKDIR}/${CHOST}"
mkdir -p "${BUILD_DIR}" || die
cd "${BUILD_DIR}" || die
local myeconfargs=(
--with-fpectl
--enable-shared
$(use_enable ipv6)
$(use_with threads)
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--without-ensurepip
--with-system-expat
--with-system-ffi
)
ECONF_SOURCE="${S}" OPT="" econf "${myeconfargs[@]}"
if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
eerror "configure has detected that the sem_open function is broken."
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
die "Broken sem_open function (bug 496328)"
fi
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
cd "${BUILD_DIR}" || die
emake CPPFLAGS= CFLAGS= LDFLAGS=
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
cd "${BUILD_DIR}" || die
# Skip failing tests.
local skipped_tests="gdb"
for test in ${skipped_tests}; do
mv "${S}"/Lib/test/test_${test}.py "${T}"
done
local -x PYTHONDONTWRITEBYTECODE=
emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
local result=$?
for test in ${skipped_tests}; do
mv "${T}/test_${test}.py" "${S}"/Lib/test
done
elog "The following tests have been skipped:"
for test in ${skipped_tests}; do
elog "test_${test}.py"
done
elog "If you would like to run them, you may:"
elog "cd '${EPREFIX}/usr/$(get_libdir)/python${PYVER}/test'"
elog "and run the tests separately."
if [[ ${result} -ne 0 ]]; then
die "emake test failed"
fi
}
src_install() {
local libdir=${ED}/usr/$(get_libdir)/python${PYVER}
cd "${BUILD_DIR}" || die
emake DESTDIR="${D}" altinstall
sed \
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
-e "s/\(PY_LDFLAGS=\).*/\1/" \
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
# Fix collisions between different slots of Python.
rm -f "${ED}usr/$(get_libdir)/libpython3.so"
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED}usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED}usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
# Create python-3.5m.pc symlink
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
fi
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E "${ED}usr/bin/${abiver}"
else
pax-mark m "${ED}usr/bin/${abiver}"
fi
use elibc_uclibc && rm -fr "${libdir}/test"
use sqlite || rm -fr "${libdir}/"{sqlite3,test/test_sqlite*}
use tk || rm -fr "${ED}usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*}
use threads || rm -fr "${libdir}/multiprocessing"
use wininst || rm -f "${libdir}/distutils/command/"wininst-*.exe
dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
if use examples; then
insinto /usr/share/doc/${PF}/examples
find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
doins -r "${S}"/Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
emake --no-print-directory -s -f - 2>/dev/null)
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED}etc/conf.d/pydoc-${PYVER}" "${ED}etc/init.d/pydoc-${PYVER}" || die "sed failed"
# for python-exec
local vars=( EPYTHON PYTHON_SITEDIR PYTHON_SCRIPTDIR )
# if not using a cross-compiler, use the fresh binary
if ! tc-is-cross-compiler; then
local -x PYTHON=./python
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
else
vars=( PYTHON "${vars[@]}" )
fi
python_export "python${PYVER}" "${vars[@]}"
echo "EPYTHON='${EPYTHON}'" > epython.py || die
python_domodule epython.py
# python-exec wrapping support
local pymajor=${PYVER%.*}
mkdir -p "${D}${PYTHON_SCRIPTDIR}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" \
"${D}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
ln -s "python${pymajor}" \
"${D}${PYTHON_SCRIPTDIR}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" \
"${D}${PYTHON_SCRIPTDIR}/python-config" || die
# 2to3, pydoc, pyvenv
ln -s "../../../bin/2to3-${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/pydoc" || die
ln -s "../../../bin/pyvenv-${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/pyvenv" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/idle" || die
fi
}
pkg_preinst() {
if has_version "<${CATEGORY}/${PN}-${PYVER}" && ! has_version ">=${CATEGORY}/${PN}-${PYVER}_alpha"; then
python_updater_warning="1"
fi
}
eselect_python_update() {
if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
eselect python update
fi
if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
eselect python update --python${PV%%.*}
fi
}
pkg_postinst() {
eselect_python_update
if [[ "${python_updater_warning}" == "1" ]]; then
ewarn "You have just upgraded from an older version of Python."
ewarn
ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
fi
}
pkg_postrm() {
eselect_python_update
}

@ -44,8 +44,7 @@ RDEPEND="app-arch/bzip2:0=
dev-tcltk/blt:0=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:0= )
!!<sys-apps/sandbox-2.6-r1"
xml? ( >=dev-libs/expat-2.1:0= )"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )

@ -44,8 +44,7 @@ RDEPEND="app-arch/bzip2:0=
dev-tcltk/blt:0=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:0= )
!!<sys-apps/sandbox-2.6-r1"
xml? ( >=dev-libs/expat-2.1:0= )"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )

@ -1,21 +1,23 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
EAPI="7"
WANT_LIBTOOL="none"
inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
MY_P="Python-${PV}"
PYVER=$(ver_cut 1-2)
PATCHSET_VERSION="3.6.8"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
https://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="3.6/3.6m"
SLOT="${PYVER}/${PYVER}m"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test +threads tk wininst +xml"
RESTRICT="!test? ( test )"
@ -25,27 +27,26 @@ RESTRICT="!test? ( test )"
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:0=
app-arch/xz-utils:0=
>=sys-libs/zlib-1.1.3:0=
RDEPEND="app-arch/bzip2:=
app-arch/xz-utils:=
>=sys-libs/zlib-1.1.3:=
virtual/libffi:=
virtual/libintl
gdbm? ( sys-libs/gdbm:0=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:0= )
readline? ( >=sys-libs/readline-4.1:0= )
gdbm? ( sys-libs/gdbm:=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
tk? (
>=dev-lang/tcl-8.0:0=
>=dev-lang/tk-8.0:0=
dev-tcltk/blt:0=
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=
dev-tcltk/blt:=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:0= )
!!<sys-apps/sandbox-2.6-r1"
xml? ( >=dev-libs/expat-2.1:= )"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
@ -55,14 +56,11 @@ DEPEND="${RDEPEND}
RDEPEND+=" !build? ( app-misc/mime-types )"
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
S="${WORKDIR}/${MY_P}"
PYVER=${SLOT%/*}
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -fr Modules/expat
rm -fr Modules/_ctypes/libffi*
rm -fr Modules/zlib
rm -fr Modules/expat || die
rm -fr Modules/_ctypes/libffi* || die
rm -fr Modules/zlib || die
local PATCHES=(
"${WORKDIR}/patches"
@ -89,13 +87,13 @@ src_configure() {
local disable
# disable automagic bluetooth headers detection
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
@ -218,19 +216,22 @@ src_install() {
emake DESTDIR="${D}" altinstall
# Remove static library
rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
sed \
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
-e "s/\(PY_LDFLAGS=\).*/\1/" \
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
# Fix collisions between different slots of Python.
rm -f "${ED}usr/$(get_libdir)/libpython3.so"
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED}usr/include"; echo python*)
local abiver=$(cd "${ED}/usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED}usr/bin/python${PYVER}" || die
rm "${ED}/usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
@ -241,23 +242,23 @@ src_install() {
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E "${ED}usr/bin/${abiver}"
pax-mark E "${ED}/usr/bin/${abiver}"
else
pax-mark m "${ED}usr/bin/${abiver}"
pax-mark m "${ED}/usr/bin/${abiver}"
fi
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
use tk || rm -r "${ED}usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
use threads || rm -r "${libdir}/multiprocessing" || die
use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
dodoc Misc/{ACKS,HISTORY,NEWS}
if use examples; then
insinto /usr/share/doc/${PF}/examples
find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
doins -r "${S}"/Tools
docinto examples
find Tools -name __pycache__ -exec rm -fr {} + || die
dodoc -r Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
@ -269,7 +270,8 @@ src_install() {
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED}etc/conf.d/pydoc-${PYVER}" "${ED}etc/init.d/pydoc-${PYVER}" || die "sed failed"
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
# for python-exec
local vars=( EPYTHON PYTHON_SITEDIR PYTHON_SCRIPTDIR )
@ -292,8 +294,7 @@ src_install() {
# python and pythonX
ln -s "../../../bin/${abiver}" \
"${D}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
ln -s "python${pymajor}" \
"${D}${PYTHON_SCRIPTDIR}/python" || die
ln -s "python${pymajor}" "${D}${PYTHON_SCRIPTDIR}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
@ -325,11 +326,14 @@ pkg_preinst() {
}
eselect_python_update() {
if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
if [[ -z "$(eselect python show)" || \
! -f "${EROOT}/usr/bin/$(eselect python show)" ]]; then
eselect python update
fi
if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
if [[ -z "$(eselect python show --python${PV%%.*})" || \
! -f "${EROOT}/usr/bin/$(eselect python show --python${PV%%.*})" ]]
then
eselect python update --python${PV%%.*}
fi
}

@ -1,346 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
WANT_LIBTOOL="none"
inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
MY_P="Python-${PV}"
PATCHSET_VERSION="3.6.4"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
https://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
LICENSE="PSF-2"
SLOT="3.6/3.6m"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
IUSE="build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test +threads tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:0=
app-arch/xz-utils:0=
>=sys-libs/zlib-1.1.3:0=
virtual/libffi:=
virtual/libintl
gdbm? ( sys-libs/gdbm:0=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:0= )
readline? ( >=sys-libs/readline-4.1:0= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)
tk? (
>=dev-lang/tcl-8.0:0=
>=dev-lang/tk-8.0:0=
dev-tcltk/blt:0=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:0= )
!!<sys-apps/sandbox-2.6-r1"
DEPEND="${RDEPEND}
test? ( app-arch/xz-utils[extra-filters(+)] )
virtual/pkgconfig
!sys-devel/gcc[libffi(-)]"
RDEPEND+=" !build? ( app-misc/mime-types )"
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
S="${WORKDIR}/${MY_P}"
PYVER=${SLOT%/*}
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -fr Modules/expat
rm -fr Modules/_ctypes/libffi*
rm -fr Modules/zlib
local PATCHES=(
"${WORKDIR}/patches"
"${FILESDIR}/${PN}-3.5-distutils-OO-build.patch"
"${FILESDIR}/3.6.5-disable-nis.patch"
"${FILESDIR}/python-3.6.5-libressl-compatibility.patch"
"${FILESDIR}/python-3.6.5-hash-unaligned.patch"
)
default
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
Lib/distutils/command/install.py \
Lib/distutils/sysconfig.py \
Lib/site.py \
Lib/sysconfig.py \
Lib/test/test_site.py \
Makefile.pre.in \
Modules/Setup.dist \
Modules/getpath.c \
configure.ac \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
eautoreconf
}
src_configure() {
local disable
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
ewarn "You have configured Python without XML support."
ewarn "This is NOT a recommended configuration as you"
ewarn "may face problems parsing any XML documents."
fi
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
if [[ "$(gcc-major-version)" -ge 4 ]]; then
append-flags -fwrapv
fi
filter-flags -malign-double
# https://bugs.gentoo.org/show_bug.cgi?id=50309
if is-flagq -O3; then
is-flagq -fstack-protector-all && replace-flags -O3 -O2
use hardened && replace-flags -O3 -O2
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
tc-export CXX
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
# Needed on FreeBSD unless Python 3.2 is already installed.
# Please query BSD team before removing this!
append-ldflags "-L."
local dbmliborder
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
local myeconfargs=(
--with-fpectl
--enable-shared
$(use_enable ipv6)
$(use_with threads)
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--without-ensurepip
--with-system-expat
--with-system-ffi
)
OPT="" econf "${myeconfargs[@]}"
if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
eerror "configure has detected that the sem_open function is broken."
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
die "Broken sem_open function (bug 496328)"
fi
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
emake CPPFLAGS= CFLAGS= LDFLAGS=
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
# Skip failing tests.
local skipped_tests="gdb"
for test in ${skipped_tests}; do
mv "${S}"/Lib/test/test_${test}.py "${T}"
done
local -x PYTHONDONTWRITEBYTECODE=
emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
local result=$?
for test in ${skipped_tests}; do
mv "${T}/test_${test}.py" "${S}"/Lib/test
done
elog "The following tests have been skipped:"
for test in ${skipped_tests}; do
elog "test_${test}.py"
done
elog "If you would like to run them, you may:"
elog "cd '${EPREFIX}/usr/$(get_libdir)/python${PYVER}/test'"
elog "and run the tests separately."
if [[ ${result} -ne 0 ]]; then
die "emake test failed"
fi
}
src_install() {
local libdir=${ED}/usr/$(get_libdir)/python${PYVER}
emake DESTDIR="${D}" altinstall
sed \
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
-e "s/\(PY_LDFLAGS=\).*/\1/" \
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
# Fix collisions between different slots of Python.
rm -f "${ED}usr/$(get_libdir)/libpython3.so"
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED}usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED}usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
# Create python-3.5m.pc symlink
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
fi
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E "${ED}usr/bin/${abiver}"
else
pax-mark m "${ED}usr/bin/${abiver}"
fi
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
use tk || rm -r "${ED}usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
use threads || rm -r "${libdir}/multiprocessing" || die
use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
if use examples; then
insinto /usr/share/doc/${PF}/examples
find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
doins -r "${S}"/Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
emake --no-print-directory -s -f - 2>/dev/null)
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED}etc/conf.d/pydoc-${PYVER}" "${ED}etc/init.d/pydoc-${PYVER}" || die "sed failed"
# for python-exec
local vars=( EPYTHON PYTHON_SITEDIR PYTHON_SCRIPTDIR )
# if not using a cross-compiler, use the fresh binary
if ! tc-is-cross-compiler; then
local -x PYTHON=./python
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
else
vars=( PYTHON "${vars[@]}" )
fi
python_export "python${PYVER}" "${vars[@]}"
echo "EPYTHON='${EPYTHON}'" > epython.py || die
python_domodule epython.py
# python-exec wrapping support
local pymajor=${PYVER%.*}
mkdir -p "${D}${PYTHON_SCRIPTDIR}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" \
"${D}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
ln -s "python${pymajor}" \
"${D}${PYTHON_SCRIPTDIR}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" \
"${D}${PYTHON_SCRIPTDIR}/python-config" || die
# 2to3, pydoc, pyvenv
ln -s "../../../bin/2to3-${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/pydoc" || die
ln -s "../../../bin/pyvenv-${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/pyvenv" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/idle" || die
fi
}
pkg_preinst() {
if has_version "<${CATEGORY}/${PN}-${PYVER}" && ! has_version ">=${CATEGORY}/${PN}-${PYVER}_alpha"; then
python_updater_warning="1"
fi
}
eselect_python_update() {
if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
eselect python update
fi
if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
eselect python update --python${PV%%.*}
fi
}
pkg_postinst() {
eselect_python_update
if [[ "${python_updater_warning}" == "1" ]]; then
ewarn "You have just upgraded from an older version of Python."
ewarn
ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
fi
}
pkg_postrm() {
eselect_python_update
}

@ -44,8 +44,7 @@ RDEPEND="app-arch/bzip2:0=
dev-tcltk/blt:0=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:0= )
!!<sys-apps/sandbox-2.6-r1"
xml? ( >=dev-libs/expat-2.1:0= )"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )

@ -1,325 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
WANT_LIBTOOL="none"
inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
MY_P="Python-${PV}"
PATCHSET_VERSION="3.7.2"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
https://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
LICENSE="PSF-2"
SLOT="3.7/3.7m"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:0=
app-arch/xz-utils:0=
sys-apps/util-linux:0=
>=sys-libs/zlib-1.1.3:0=
virtual/libffi:=
virtual/libintl
gdbm? ( sys-libs/gdbm:0=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:0= )
readline? ( >=sys-libs/readline-4.1:0= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)
tk? (
>=dev-lang/tcl-8.0:0=
>=dev-lang/tk-8.0:0=
dev-tcltk/blt:0=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:0= )
!!<sys-apps/sandbox-2.6-r1"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )
virtual/pkgconfig
!sys-devel/gcc[libffi(-)]"
RDEPEND+=" !build? ( app-misc/mime-types )"
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
S="${WORKDIR}/${MY_P}"
PYVER=${SLOT%/*}
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -fr Modules/expat
rm -fr Modules/_ctypes/libffi*
rm -fr Modules/zlib
local PATCHES=(
"${WORKDIR}/patches"
)
default
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
eautoreconf
}
src_configure() {
local disable
# disable automagic bluetooth headers detection
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
ewarn "You have configured Python without XML support."
ewarn "This is NOT a recommended configuration as you"
ewarn "may face problems parsing any XML documents."
fi
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
if [[ "$(gcc-major-version)" -ge 4 ]]; then
append-flags -fwrapv
fi
filter-flags -malign-double
# https://bugs.gentoo.org/show_bug.cgi?id=50309
if is-flagq -O3; then
is-flagq -fstack-protector-all && replace-flags -O3 -O2
use hardened && replace-flags -O3 -O2
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
tc-export CXX
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
# Needed on FreeBSD unless Python 3.2 is already installed.
# Please query BSD team before removing this!
append-ldflags "-L."
local dbmliborder
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
local myeconfargs=(
--enable-shared
$(use_enable ipv6)
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--without-ensurepip
--with-system-expat
--with-system-ffi
)
OPT="" econf "${myeconfargs[@]}"
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
emake CPPFLAGS= CFLAGS= LDFLAGS=
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
# Skip failing tests.
local skipped_tests="gdb"
for test in ${skipped_tests}; do
mv "${S}"/Lib/test/test_${test}.py "${T}"
done
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
local result=$?
for test in ${skipped_tests}; do
mv "${T}/test_${test}.py" "${S}"/Lib/test
done
elog "The following tests have been skipped:"
for test in ${skipped_tests}; do
elog "test_${test}.py"
done
elog "If you would like to run them, you may:"
elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
elog "and run the tests separately."
if [[ ${result} -ne 0 ]]; then
die "emake test failed"
fi
}
src_install() {
local libdir=${ED%/}/usr/lib/python${PYVER}
emake DESTDIR="${D}" altinstall
sed \
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
-e "s/\(PY_LDFLAGS=\).*/\1/" \
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
# Fix collisions between different slots of Python.
rm -f "${ED%/}/usr/$(get_libdir)/libpython3.so"
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED%/}/usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED%/}/usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
# Create python-3.5m.pc symlink
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
fi
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E "${ED%/}/usr/bin/${abiver}"
else
pax-mark m "${ED%/}/usr/bin/${abiver}"
fi
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
use tk || rm -r "${ED%/}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
if use examples; then
insinto /usr/share/doc/${PF}/examples
find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
doins -r "${S}"/Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
emake --no-print-directory -s -f - 2>/dev/null)
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED%/}/etc/conf.d/pydoc-${PYVER}" "${ED%/}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
# for python-exec
local vars=( EPYTHON PYTHON_SITEDIR PYTHON_SCRIPTDIR )
# if not using a cross-compiler, use the fresh binary
if ! tc-is-cross-compiler; then
local -x PYTHON=./python
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
else
vars=( PYTHON "${vars[@]}" )
fi
python_export "python${PYVER}" "${vars[@]}"
echo "EPYTHON='${EPYTHON}'" > epython.py || die
python_domodule epython.py
# python-exec wrapping support
local pymajor=${PYVER%.*}
mkdir -p "${D%/}${PYTHON_SCRIPTDIR}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" "${D%/}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
ln -s "python${pymajor}" "${D%/}${PYTHON_SCRIPTDIR}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${D%/}${PYTHON_SCRIPTDIR}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${D%/}${PYTHON_SCRIPTDIR}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" "${D%/}${PYTHON_SCRIPTDIR}/python-config" || die
# 2to3, pydoc, pyvenv
ln -s "../../../bin/2to3-${PYVER}" "${D%/}${PYTHON_SCRIPTDIR}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" "${D%/}${PYTHON_SCRIPTDIR}/pydoc" || die
ln -s "../../../bin/pyvenv-${PYVER}" "${D%/}${PYTHON_SCRIPTDIR}/pyvenv" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" "${D%/}${PYTHON_SCRIPTDIR}/idle" || die
fi
}
pkg_preinst() {
if has_version "<${CATEGORY}/${PN}-${PYVER}" && ! has_version ">=${CATEGORY}/${PN}-${PYVER}_alpha"; then
python_updater_warning="1"
fi
}
eselect_python_update() {
if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
eselect python update
fi
if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
eselect python update --python${PV%%.*}
fi
}
pkg_postinst() {
eselect_python_update
if [[ "${python_updater_warning}" == "1" ]]; then
ewarn "You have just upgraded from an older version of Python."
ewarn
ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
fi
}
pkg_postrm() {
eselect_python_update
}

@ -1,328 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
WANT_LIBTOOL="none"
inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
MY_P="Python-${PV}"
PATCHSET_VERSION="3.7.3-0"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
https://dev.gentoo.org/~mgorny/dist/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
LICENSE="PSF-2"
SLOT="3.7/3.7m"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:0=
app-arch/xz-utils:0=
sys-apps/util-linux:0=
>=sys-libs/zlib-1.1.3:0=
virtual/libffi:=
virtual/libintl
gdbm? ( sys-libs/gdbm:0=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:0= )
readline? ( >=sys-libs/readline-4.1:0= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)
tk? (
>=dev-lang/tcl-8.0:0=
>=dev-lang/tk-8.0:0=
dev-tcltk/blt:0=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:0= )
!!<sys-apps/sandbox-2.6-r1"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )
virtual/pkgconfig
!sys-devel/gcc[libffi(-)]"
RDEPEND+=" !build? ( app-misc/mime-types )"
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
S="${WORKDIR}/${MY_P}"
PYVER=${SLOT%/*}
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -fr Modules/expat
rm -fr Modules/_ctypes/libffi*
rm -fr Modules/zlib
local PATCHES=(
"${WORKDIR}/patches"
)
default
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
eautoreconf
}
src_configure() {
local disable
# disable automagic bluetooth headers detection
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
ewarn "You have configured Python without XML support."
ewarn "This is NOT a recommended configuration as you"
ewarn "may face problems parsing any XML documents."
fi
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
if [[ "$(gcc-major-version)" -ge 4 ]]; then
append-flags -fwrapv
fi
filter-flags -malign-double
# https://bugs.gentoo.org/show_bug.cgi?id=50309
if is-flagq -O3; then
is-flagq -fstack-protector-all && replace-flags -O3 -O2
use hardened && replace-flags -O3 -O2
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
tc-export CXX
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
# Needed on FreeBSD unless Python 3.2 is already installed.
# Please query BSD team before removing this!
append-ldflags "-L."
# Fix implicit declarations on cross and prefix builds. Bug #674070.
use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
local dbmliborder
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
local myeconfargs=(
--enable-shared
$(use_enable ipv6)
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--without-ensurepip
--with-system-expat
--with-system-ffi
)
OPT="" econf "${myeconfargs[@]}"
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
emake CPPFLAGS= CFLAGS= LDFLAGS=
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
# Skip failing tests.
local skipped_tests="gdb"
for test in ${skipped_tests}; do
mv "${S}"/Lib/test/test_${test}.py "${T}"
done
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
local result=$?
for test in ${skipped_tests}; do
mv "${T}/test_${test}.py" "${S}"/Lib/test
done
elog "The following tests have been skipped:"
for test in ${skipped_tests}; do
elog "test_${test}.py"
done
elog "If you would like to run them, you may:"
elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
elog "and run the tests separately."
if [[ ${result} -ne 0 ]]; then
die "emake test failed"
fi
}
src_install() {
local libdir=${ED%/}/usr/lib/python${PYVER}
emake DESTDIR="${D}" altinstall
sed \
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
-e "s/\(PY_LDFLAGS=\).*/\1/" \
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
# Fix collisions between different slots of Python.
rm -f "${ED%/}/usr/$(get_libdir)/libpython3.so"
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED%/}/usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED%/}/usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
# Create python-3.5m.pc symlink
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
fi
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E "${ED%/}/usr/bin/${abiver}"
else
pax-mark m "${ED%/}/usr/bin/${abiver}"
fi
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
use tk || rm -r "${ED%/}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
if use examples; then
insinto /usr/share/doc/${PF}/examples
find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
doins -r "${S}"/Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
emake --no-print-directory -s -f - 2>/dev/null)
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED%/}/etc/conf.d/pydoc-${PYVER}" "${ED%/}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
# for python-exec
local vars=( EPYTHON PYTHON_SITEDIR PYTHON_SCRIPTDIR )
# if not using a cross-compiler, use the fresh binary
if ! tc-is-cross-compiler; then
local -x PYTHON=./python
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
else
vars=( PYTHON "${vars[@]}" )
fi
python_export "python${PYVER}" "${vars[@]}"
echo "EPYTHON='${EPYTHON}'" > epython.py || die
python_domodule epython.py
# python-exec wrapping support
local pymajor=${PYVER%.*}
mkdir -p "${D%/}${PYTHON_SCRIPTDIR}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" "${D%/}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
ln -s "python${pymajor}" "${D%/}${PYTHON_SCRIPTDIR}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${D%/}${PYTHON_SCRIPTDIR}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${D%/}${PYTHON_SCRIPTDIR}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" "${D%/}${PYTHON_SCRIPTDIR}/python-config" || die
# 2to3, pydoc, pyvenv
ln -s "../../../bin/2to3-${PYVER}" "${D%/}${PYTHON_SCRIPTDIR}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" "${D%/}${PYTHON_SCRIPTDIR}/pydoc" || die
ln -s "../../../bin/pyvenv-${PYVER}" "${D%/}${PYTHON_SCRIPTDIR}/pyvenv" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" "${D%/}${PYTHON_SCRIPTDIR}/idle" || die
fi
}
pkg_preinst() {
if has_version "<${CATEGORY}/${PN}-${PYVER}" && ! has_version ">=${CATEGORY}/${PN}-${PYVER}_alpha"; then
python_updater_warning="1"
fi
}
eselect_python_update() {
if [[ -z "$(eselect python show)" || ! -f "${EROOT%/}/usr/bin/$(eselect python show)" ]]; then
eselect python update
fi
if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT%/}/usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
eselect python update --python${PV%%.*}
fi
}
pkg_postinst() {
eselect_python_update
if [[ "${python_updater_warning}" == "1" ]]; then
ewarn "You have just upgraded from an older version of Python."
ewarn
ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
fi
}
pkg_postrm() {
eselect_python_update
}

@ -1,328 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
WANT_LIBTOOL="none"
inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
MY_P="Python-${PV}"
PATCHSET_VERSION="3.7.4-1"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
https://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
LICENSE="PSF-2"
SLOT="3.7/3.7m"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:0=
app-arch/xz-utils:0=
sys-apps/util-linux:0=
>=sys-libs/zlib-1.1.3:0=
virtual/libffi:=
virtual/libintl
gdbm? ( sys-libs/gdbm:0=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:0= )
readline? ( >=sys-libs/readline-4.1:0= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)
tk? (
>=dev-lang/tcl-8.0:0=
>=dev-lang/tk-8.0:0=
dev-tcltk/blt:0=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:0= )
!!<sys-apps/sandbox-2.6-r1"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )
virtual/pkgconfig
!sys-devel/gcc[libffi(-)]"
RDEPEND+=" !build? ( app-misc/mime-types )"
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
S="${WORKDIR}/${MY_P}"
PYVER=${SLOT%/*}
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -fr Modules/expat
rm -fr Modules/_ctypes/libffi*
rm -fr Modules/zlib
local PATCHES=(
"${WORKDIR}/patches"
)
default
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
eautoreconf
}
src_configure() {
local disable
# disable automagic bluetooth headers detection
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
ewarn "You have configured Python without XML support."
ewarn "This is NOT a recommended configuration as you"
ewarn "may face problems parsing any XML documents."
fi
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
if [[ "$(gcc-major-version)" -ge 4 ]]; then
append-flags -fwrapv
fi
filter-flags -malign-double
# https://bugs.gentoo.org/show_bug.cgi?id=50309
if is-flagq -O3; then
is-flagq -fstack-protector-all && replace-flags -O3 -O2
use hardened && replace-flags -O3 -O2
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
tc-export CXX
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
# Needed on FreeBSD unless Python 3.2 is already installed.
# Please query BSD team before removing this!
append-ldflags "-L."
# Fix implicit declarations on cross and prefix builds. Bug #674070.
use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
local dbmliborder
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
local myeconfargs=(
--enable-shared
$(use_enable ipv6)
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--without-ensurepip
--with-system-expat
--with-system-ffi
)
OPT="" econf "${myeconfargs[@]}"
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
emake CPPFLAGS= CFLAGS= LDFLAGS=
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
# Skip failing tests.
local skipped_tests="gdb"
for test in ${skipped_tests}; do
mv "${S}"/Lib/test/test_${test}.py "${T}"
done
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
local result=$?
for test in ${skipped_tests}; do
mv "${T}/test_${test}.py" "${S}"/Lib/test
done
elog "The following tests have been skipped:"
for test in ${skipped_tests}; do
elog "test_${test}.py"
done
elog "If you would like to run them, you may:"
elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
elog "and run the tests separately."
if [[ ${result} -ne 0 ]]; then
die "emake test failed"
fi
}
src_install() {
local libdir=${ED%/}/usr/lib/python${PYVER}
emake DESTDIR="${D}" altinstall
sed \
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
-e "s/\(PY_LDFLAGS=\).*/\1/" \
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
# Fix collisions between different slots of Python.
rm -f "${ED%/}/usr/$(get_libdir)/libpython3.so"
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED%/}/usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED%/}/usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
# Create python-3.5m.pc symlink
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
fi
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E "${ED%/}/usr/bin/${abiver}"
else
pax-mark m "${ED%/}/usr/bin/${abiver}"
fi
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
use tk || rm -r "${ED%/}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
if use examples; then
insinto /usr/share/doc/${PF}/examples
find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
doins -r "${S}"/Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
emake --no-print-directory -s -f - 2>/dev/null)
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED%/}/etc/conf.d/pydoc-${PYVER}" "${ED%/}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
# for python-exec
local vars=( EPYTHON PYTHON_SITEDIR PYTHON_SCRIPTDIR )
# if not using a cross-compiler, use the fresh binary
if ! tc-is-cross-compiler; then
local -x PYTHON=./python
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
else
vars=( PYTHON "${vars[@]}" )
fi
python_export "python${PYVER}" "${vars[@]}"
echo "EPYTHON='${EPYTHON}'" > epython.py || die
python_domodule epython.py
# python-exec wrapping support
local pymajor=${PYVER%.*}
mkdir -p "${D%/}${PYTHON_SCRIPTDIR}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" "${D%/}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
ln -s "python${pymajor}" "${D%/}${PYTHON_SCRIPTDIR}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${D%/}${PYTHON_SCRIPTDIR}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${D%/}${PYTHON_SCRIPTDIR}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" "${D%/}${PYTHON_SCRIPTDIR}/python-config" || die
# 2to3, pydoc, pyvenv
ln -s "../../../bin/2to3-${PYVER}" "${D%/}${PYTHON_SCRIPTDIR}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" "${D%/}${PYTHON_SCRIPTDIR}/pydoc" || die
ln -s "../../../bin/pyvenv-${PYVER}" "${D%/}${PYTHON_SCRIPTDIR}/pyvenv" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" "${D%/}${PYTHON_SCRIPTDIR}/idle" || die
fi
}
pkg_preinst() {
if has_version "<${CATEGORY}/${PN}-${PYVER}" && ! has_version ">=${CATEGORY}/${PN}-${PYVER}_alpha"; then
python_updater_warning="1"
fi
}
eselect_python_update() {
if [[ -z "$(eselect python show)" || ! -f "${EROOT%/}/usr/bin/$(eselect python show)" ]]; then
eselect python update
fi
if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT%/}/usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
eselect python update --python${PV%%.*}
fi
}
pkg_postinst() {
eselect_python_update
if [[ "${python_updater_warning}" == "1" ]]; then
ewarn "You have just upgraded from an older version of Python."
ewarn
ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
fi
}
pkg_postrm() {
eselect_python_update
}

@ -45,8 +45,7 @@ RDEPEND="app-arch/bzip2:0=
dev-tcltk/blt:0=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:0= )
!!<sys-apps/sandbox-2.6-r1"
xml? ( >=dev-libs/expat-2.1:0= )"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )

@ -7,15 +7,17 @@ WANT_LIBTOOL="none"
inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
MY_P="Python-${PV}"
PYVER=$(ver_cut 1-2)
PATCHSET_VERSION="3.7.4-1"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
https://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="3.7/3.7m"
SLOT="${PYVER}/${PYVER}m"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
@ -25,28 +27,27 @@ RESTRICT="!test? ( test )"
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:0=
app-arch/xz-utils:0=
sys-apps/util-linux:0=
>=sys-libs/zlib-1.1.3:0=
RDEPEND="app-arch/bzip2:=
app-arch/xz-utils:=
sys-apps/util-linux:=
>=sys-libs/zlib-1.1.3:=
virtual/libffi:=
virtual/libintl
gdbm? ( sys-libs/gdbm:0=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:0= )
readline? ( >=sys-libs/readline-4.1:0= )
gdbm? ( sys-libs/gdbm:=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
tk? (
>=dev-lang/tcl-8.0:0=
>=dev-lang/tk-8.0:0=
dev-tcltk/blt:0=
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=
dev-tcltk/blt:=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:0= )
!!<sys-apps/sandbox-2.6-r1"
xml? ( >=dev-libs/expat-2.1:= )"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
@ -56,16 +57,14 @@ DEPEND="${RDEPEND}
RDEPEND+=" !build? ( app-misc/mime-types )"
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
S="${WORKDIR}/${MY_P}"
PYVER=${SLOT%/*}
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -fr Modules/expat
rm -fr Modules/_ctypes/libffi*
rm -fr Modules/zlib
rm -fr Modules/expat || die
rm -fr Modules/_ctypes/libffi* || die
rm -fr Modules/zlib || die
local PATCHES=(
"${FILESDIR}/python-3.7.5-hashlib.patch"
"${WORKDIR}/patches"
)
@ -81,13 +80,13 @@ src_configure() {
local disable
# disable automagic bluetooth headers detection
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
@ -201,7 +200,7 @@ src_test() {
}
src_install() {
local libdir=${ED%/}/usr/lib/python${PYVER}
local libdir=${ED}/usr/lib/python${PYVER}
emake DESTDIR="${D}" altinstall
@ -211,13 +210,13 @@ src_install() {
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
# Fix collisions between different slots of Python.
rm -f "${ED%/}/usr/$(get_libdir)/libpython3.so"
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED%/}/usr/include"; echo python*)
local abiver=$(cd "${ED}/usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED%/}/usr/bin/python${PYVER}" || die
rm "${ED}/usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
@ -228,22 +227,22 @@ src_install() {
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E "${ED%/}/usr/bin/${abiver}"
pax-mark E "${ED}/usr/bin/${abiver}"
else
pax-mark m "${ED%/}/usr/bin/${abiver}"
pax-mark m "${ED}/usr/bin/${abiver}"
fi
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
use tk || rm -r "${ED%/}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
dodoc Misc/{ACKS,HISTORY,NEWS}
if use examples; then
insinto /usr/share/doc/${PF}/examples
find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
doins -r "${S}"/Tools
docinto examples
find Tools -name __pycache__ -exec rm -fr {} + || die
dodoc -r Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
@ -255,7 +254,8 @@ src_install() {
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED%/}/etc/conf.d/pydoc-${PYVER}" "${ED%/}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
# for python-exec
local vars=( EPYTHON PYTHON_SITEDIR PYTHON_SCRIPTDIR )
@ -274,26 +274,32 @@ src_install() {
# python-exec wrapping support
local pymajor=${PYVER%.*}
mkdir -p "${D%/}${PYTHON_SCRIPTDIR}" || die
mkdir -p "${D}${PYTHON_SCRIPTDIR}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" "${D%/}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
ln -s "python${pymajor}" "${D%/}${PYTHON_SCRIPTDIR}/python" || die
ln -s "../../../bin/${abiver}" \
"${D}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
ln -s "python${pymajor}" "${D}${PYTHON_SCRIPTDIR}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${D%/}${PYTHON_SCRIPTDIR}/python${pymajor}-config" <<-EOF || die
cat > "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${D%/}${PYTHON_SCRIPTDIR}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" "${D%/}${PYTHON_SCRIPTDIR}/python-config" || die
chmod +x "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" \
"${D}${PYTHON_SCRIPTDIR}/python-config" || die
# 2to3, pydoc, pyvenv
ln -s "../../../bin/2to3-${PYVER}" "${D%/}${PYTHON_SCRIPTDIR}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" "${D%/}${PYTHON_SCRIPTDIR}/pydoc" || die
ln -s "../../../bin/pyvenv-${PYVER}" "${D%/}${PYTHON_SCRIPTDIR}/pyvenv" || die
ln -s "../../../bin/2to3-${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/pydoc" || die
ln -s "../../../bin/pyvenv-${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/pyvenv" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" "${D%/}${PYTHON_SCRIPTDIR}/idle" || die
ln -s "../../../bin/idle${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/idle" || die
fi
}
@ -304,11 +310,14 @@ pkg_preinst() {
}
eselect_python_update() {
if [[ -z "$(eselect python show)" || ! -f "${EROOT%/}/usr/bin/$(eselect python show)" ]]; then
if [[ -z "$(eselect python show)" || \
! -f "${EROOT}/usr/bin/$(eselect python show)" ]]; then
eselect python update
fi
if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT%/}/usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
if [[ -z "$(eselect python show --python${PV%%.*})" || \
! -f "${EROOT}/usr/bin/$(eselect python show --python${PV%%.*})" ]]
then
eselect python update --python${PV%%.*}
fi
}

@ -47,8 +47,7 @@ RDEPEND="app-arch/bzip2:=
dev-tcltk/blt:=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:= )
!!<sys-apps/sandbox-2.6-r1"
xml? ( >=dev-libs/expat-2.1:= )"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
@ -280,7 +279,8 @@ src_install() {
local pymajor=${PYVER%.*}
mkdir -p "${D}${PYTHON_SCRIPTDIR}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" "${D}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
ln -s "../../../bin/${abiver}" \
"${D}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
ln -s "python${pymajor}" "${D}${PYTHON_SCRIPTDIR}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
@ -290,13 +290,17 @@ src_install() {
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" "${D}${PYTHON_SCRIPTDIR}/python-config" || die
ln -s "python${pymajor}-config" \
"${D}${PYTHON_SCRIPTDIR}/python-config" || die
# 2to3, pydoc
ln -s "../../../bin/2to3-${PYVER}" "${D}${PYTHON_SCRIPTDIR}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" "${D}${PYTHON_SCRIPTDIR}/pydoc" || die
ln -s "../../../bin/2to3-${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/pydoc" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" "${D}${PYTHON_SCRIPTDIR}/idle" || die
ln -s "../../../bin/idle${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/idle" || die
fi
}
@ -307,11 +311,14 @@ pkg_preinst() {
}
eselect_python_update() {
if [[ -z "$(eselect python show)" || ! -f "${EROOT}/usr/bin/$(eselect python show)" ]]; then
if [[ -z "$(eselect python show)" || \
! -f "${EROOT}/usr/bin/$(eselect python show)" ]]; then
eselect python update
fi
if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}/usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
if [[ -z "$(eselect python show --python${PV%%.*})" || \
! -f "${EROOT}/usr/bin/$(eselect python show --python${PV%%.*})" ]]
then
eselect python update --python${PV%%.*}
fi
}

Binary file not shown.

@ -1,2 +1,2 @@
DIST hsa-ext-rocr-dev_1.1.9-112-g3d9d98f_amd64.deb 1120410 BLAKE2B 653480e4209f7f6a0d8dfe0f8a8948ef44d2aa2a415f33ce9c4ca8ec8dc3b3e0dd78dac9a3d80bb45f5202df49dc2aa5b329e285968853e0bcaf6673f76d714e SHA512 28fb2ecedb2094782376efcab2a5292cb4f3e58dbdd8ba8b520dfca7d230d30326939dc3964f6e1be841e41829bef44b96573ffdbcad187f02adb11ac70401fd
DIST hsa-ext-rocr-dev_1.1.9-122-ge5c4efb_amd64.deb 1120322 BLAKE2B 40c60058c2b6d6debf80503c36f6b0ddc72747c7327e411121f99fa2e507e5e9414cb91c80be0acf283bff23a6a029b3ef199577846b694b2e2e11696cc7d225 SHA512 60dad492cc66f249d48fb057b2ecec1719525a871d38f39a403a55de98e8cdea5f00f672fa3ea697490c287ba7e5c3be035f1f2861a7fc97d9b949f575e51ad7
DIST hsa-ext-rocr-dev_1.1.9-139-g0d1ca36_amd64.deb 1166210 BLAKE2B 3edcc938ec92277a163886df4e83f93f6a38b1ec4e95e719265f7a595d291fe4beef68aeca3fb09f8f56a0abf041a987d57e2469310da8cd16f2352b2af5077c SHA512 dbf7991b404cc371575e5d8c40f438bbead8bfef5c73dfd3b7295d64f800892c1f220a6eff8cc67d99ca4bec819bf1b69e37f85873ec372dca9bdd42542fa320

@ -9,7 +9,7 @@ MY_PV=$(ver_rs 3 '-')
DESCRIPTION="Proprietary image-support library for Radeon Open Compute"
HOMEPAGE="https://github.com/RadeonOpenCompute/ROCm#closed-source-components"
SRC_URI="http://repo.radeon.com/rocm/apt/debian/pool/main/h/${PN}-dev/${PN}-dev_${MY_PV}-g3d9d98f_amd64.deb"
SRC_URI="http://repo.radeon.com/rocm/apt/debian/pool/main/h/${PN}-dev/${PN}-dev_${MY_PV}-g0d1ca36_amd64.deb"
LICENSE="AMD-GPU-PRO-EULA"
SLOT="0"

Binary file not shown.

@ -13,7 +13,8 @@ KEYWORDS="amd64 x86"
IUSE=""
DEPEND="dev-ml/findlib
dev-ml/ocamlbuild"
dev-ml/ocamlbuild
dev-lang/ocaml[ocamlopt]"
RDEPEND="${DEPEND}"
BDEPEND=""

Binary file not shown.

@ -1,28 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit php-pear-r2
DESCRIPTION="Generating CHAP packets"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha amd64 arm hppa ia64 ppc ppc64 ~s390 ~sh sparc x86"
IUSE="test"
RESTRICT="!test? ( test )"
# Crypt_CHAP_MSv1 needs mcrypt which is gone in 7.2+
RDEPEND="dev-lang/php:*[crypt,hash]"
DEPEND="test? ( ${RDEPEND} dev-php/PEAR-PEAR )"
PATCHES=( "${FILESDIR}/CHAP-1.5.0-constructor.patch" )
src_install() {
php-pear-r2_src_install
insinto /usr/share/php/Crypt
doins CHAP.php
}
src_test() {
pear run-tests tests/Crypt_CHAP.phpt || die
}

@ -9,7 +9,7 @@ DESCRIPTION="Generating CHAP packets"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
KEYWORDS="amd64"
IUSE="test"
RESTRICT="!test? ( test )"
# Crypt_CHAP_MSv1 needs mcrypt which is gone in 7.2+

@ -1,4 +1,4 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -7,7 +7,7 @@ inherit php-pear-r2
DESCRIPTION="Class for managing SAMBA style password files"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha amd64 hppa ia64 ppc ppc64 sparc x86"
KEYWORDS="amd64"
IUSE=""
RDEPEND=">=dev-lang/php-5.3:*
>=dev-php/PEAR-Crypt_CHAP-1.0.0"

@ -1,2 +1 @@
DIST PHP_CodeCoverage-1.2.13.tgz 158772 BLAKE2B 7f9703cf724dece9535fce4e5dbc7a354302227b38daabf9f8c4417a43980f369807dfbcd65fde79215a14531971d0bf6cf096a6b01c2c6b99a5bc326c5d5b66 SHA512 6a3426c945ad6abf35be3068cf0f7e17215179a382e93b7be3a5e436611b327c9b7bc715f7acc900231856678f578c1f614648d2679baca9b6960dfafd897dc6
DIST PHP_CodeCoverage-4.0.7.tar.gz 349906 BLAKE2B 2ba665efa2d20a5eb66c66375a095425057e883697dd1d3ba7214e56de29c96451516adb2843589e64732c994aac7289afa0e34a74d56ef9bc36f36e635eb944 SHA512 8418efa2585d05b3004ab50e7ba77513429d649f71fdb2479412424a0f40a698a962e1d87852db08fec8f92e569a9a5767dad66d5d64e072637dde33182e71e9

@ -1,24 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PHP_PEAR_DOMAIN="pear.phpunit.de"
PHP_PEAR_CHANNEL="${FILESDIR}/channel.xml"
inherit php-pear-r2
DESCRIPTION="Collection, processing, and rendering for PHP code coverage"
HOMEPAGE="http://pear.phpunit.de"
SRC_URI="http://${PHP_PEAR_URI}/get/${PEAR_P}.tgz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="amd64 hppa x86"
IUSE=""
DEPEND=">=dev-php/pear-1.9.4"
RDEPEND="${DEPEND}
>=dev-php/File_Iterator-1.3.0
>=dev-php/PHP_TokenStream-1.1.3
>=dev-php/Text_Template-1.1.1"

@ -1,4 +1,4 @@
# Copyright 1999-2018 Gentoo Authors
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -11,7 +11,7 @@ SRC_URI="https://github.com/sebastianbergmann/${MY_PN}/archive/${PV}.tar.gz -> $
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
KEYWORDS="~alpha amd64 arm ~hppa ia64 ppc ppc64 ~s390 ~sh sparc x86"
IUSE=""
S="${WORKDIR}/${MY_PN}-${PV}"
@ -30,9 +30,7 @@ RDEPEND="dev-php/fedora-autoloader
dev-php/sebastian-code-unit-reverse-lookup
<dev-php/sebastian-code-unit-reverse-lookup-2.0
|| (
dev-lang/php:5.6[xml,xmlwriter]
dev-lang/php:7.0[xml,xmlwriter]
dev-lang/php:7.1[xml,xmlwriter]
dev-lang/php:7.2[xml(-),xmlwriter(-)]
)"
src_install() {

@ -1,47 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
MY_PN="php-code-coverage"
DESCRIPTION="Collection, processing, and rendering for PHP code coverage"
HOMEPAGE="http://phpunit.de"
SRC_URI="https://github.com/sebastianbergmann/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha amd64 arm hppa ia64 ppc ppc64 ~s390 ~sh sparc x86"
IUSE=""
S="${WORKDIR}/${MY_PN}-${PV}"
RDEPEND="dev-php/fedora-autoloader
>=dev-php/File_Iterator-1.3
!>=dev-php/File_Iterator-2.0
>=dev-php/Text_Template-1.2
!>=dev-php/Text_Template-2.0
>=dev-php/PHP_TokenStream-1.4
!>=dev-php/PHP_TokenStream-3.0
>=dev-php/sebastian-environment-1.3.2
!>=dev-php/sebastian-environment-3.0
>=dev-php/sebastian-version-1.0
!>=dev-php/sebastian-version-3.0
dev-php/sebastian-code-unit-reverse-lookup
!>=dev-php/sebastian-code-unit-reverse-lookup-2.0
|| (
dev-lang/php:5.6[xml,xmlwriter]
dev-lang/php:7.0[xml,xmlwriter]
dev-lang/php:7.1[xml,xmlwriter]
)"
src_install() {
insinto /usr/share/php/PHP/CodeCoverage
doins -r src/*
doins "${FILESDIR}/autoload.php"
}
pkg_postinst() {
ewarn "This library now loads via /usr/share/php/PHP/CodeCoverage/autoload.php"
ewarn "Please update any scripts to require the autoloader"
}

@ -1,16 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<channel version="1.0" xmlns="http://pear.php.net/channel-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://pear.php.net/channel-1.0 http://pear.php.net/dtd/channel-1.0.xsd">
<name>pear.phpunit.de</name>
<summary>PHPUnit PEAR Channel</summary>
<suggestedalias>phpunit</suggestedalias>
<servers>
<primary>
<rest>
<baseurl type="REST1.0">http://pear.phpunit.de/rest/</baseurl>
<baseurl type="REST1.1">http://pear.phpunit.de/rest/</baseurl>
<baseurl type="REST1.2">http://pear.phpunit.de/rest/</baseurl>
<baseurl type="REST1.3">http://pear.phpunit.de/rest/</baseurl>
</rest>
</primary>
</servers>
</channel>

@ -1,2 +1 @@
DIST PHP_TokenStream-1.1.3.tgz 9860 BLAKE2B 7160e80b5dc73cabd6cae388add7285fb99891d4e33a7b1224bd3ee9769b88c4e7c4927f96caa91bad2bbad86826f6a73665f716ea3d79b9f89eaa02a5187bf9 SHA512 2751acabc340f05c59bb46f8fb9e47ff25a5f8a6503f1525ed4977d96f2044ad0f9714b40f573d0b845aaf47424a89c3d9e7cfdada67c58d650bb98ee7b47772
DIST PHP_TokenStream-1.4.11.tar.gz 13388 BLAKE2B 20ef9907ce660e2958ffd50f588ead563efa04c9fc4adda4a823830000f73ee7a4c988adc79d14e549c4f02836b7128aa42b01b26996a090595d34a191282b67 SHA512 4e8d8d1eb16169d46b64a43d91f3066d49fe8e3f184d90c5c7cf4234ebfe4eac271a811744b201f05dc86976b3c5b8ad4ae9f2532165a3849980663f1ac5852e

@ -1,24 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PHP_PEAR_PKG_NAME="PHP_TokenStream"
PHP_PEAR_DOMAIN="pear.phpunit.de"
PHP_PEAR_CHANNEL="${FILESDIR}/channel.xml"
inherit php-pear-r2
DESCRIPTION="Wrapper around PHP's tokenizer extension"
HOMEPAGE="http://pear.phpunit.de"
SRC_URI="http://pear.phpunit.de/get/PHP_TokenStream-1.1.3.tgz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="amd64 hppa x86"
IUSE=""
DEPEND="dev-lang/php:*[tokenizer]
>=dev-php/pear-1.9.4"
RDEPEND="${DEPEND}"
DOCS=( README.markdown ChangeLog.markdown )

@ -1,7 +1,7 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=7
MY_PN="php-token-stream"
@ -18,9 +18,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
RDEPEND="dev-php/fedora-autoloader
|| (
dev-lang/php:5.6[tokenizer]
dev-lang/php:7.0[tokenizer]
dev-lang/php:7.1[tokenizer]
dev-lang/php:7.2[tokenizer(-)]
)"
src_install() {

@ -1,16 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<channel version="1.0" xmlns="http://pear.php.net/channel-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://pear.php.net/channel-1.0 http://pear.php.net/dtd/channel-1.0.xsd">
<name>pear.phpunit.de</name>
<summary>PHPUnit PEAR Channel</summary>
<suggestedalias>phpunit</suggestedalias>
<servers>
<primary>
<rest>
<baseurl type="REST1.0">http://pear.phpunit.de/rest/</baseurl>
<baseurl type="REST1.1">http://pear.phpunit.de/rest/</baseurl>
<baseurl type="REST1.2">http://pear.phpunit.de/rest/</baseurl>
<baseurl type="REST1.3">http://pear.phpunit.de/rest/</baseurl>
</rest>
</primary>
</servers>
</channel>

@ -1 +1,2 @@
DIST memcache-3.0.8.tgz 70523 BLAKE2B 829c842ac2764327037c5ef620cd4759e16d56e22195c035eeed2722d8a499119489d3304ad5223cf1c89a8e3ab6f6830d67742958ec2a37e302bf8ea265dfb1 SHA512 916c6b21ab7c1021128626c0df35ef0b83cb76b6115fe7c45b003ca4f78ad9484bf3c998bc7ebdee19f84349ff1e56759f74e75aee5bc70b1de9a03c45a99bc3
DIST memcache-4.0.5.1.tgz 75057 BLAKE2B 2a1b6ce557f9cce3fd7039db8017fc8e7aa0c7b35c2746af2b426aceac0330b56f0a9d3798325b72b07c1af560baa805e1e4db16c803f46bf26a8e4a39d16b77 SHA512 809351b086e5a96bca091e3f7bdbf845d4d549c47c84eaee0f87aed5421bbf8421a503db18593f8616e4c520c46c90c0c945895de685fd046eae64921acfdf10

@ -0,0 +1,46 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
PHP_EXT_NAME="memcache"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
PHP_EXT_NEEDED_USE="session(-)?"
DOCS=( README example.php )
HTML_DOCS=( memcache.php )
USE_PHP="php7-2 php7-3 php7-4"
inherit php-ext-pecl-r3
KEYWORDS="~amd64 ~hppa ~ppc64 ~x86"
DESCRIPTION="PHP extension for using memcached"
LICENSE="PHP-3"
SLOT="7"
IUSE="+session"
DEPEND="sys-libs/zlib"
RDEPEND="${DEPEND}"
# The test suite requires memcached to be running.
RESTRICT='test'
src_configure() {
local PHP_EXT_ECONF_ARGS=( --enable-memcache --with-zlib-dir="${EPREFIX}/usr" $(use_enable session memcache-session) )
php-ext-source-r3_src_configure
}
src_install() {
php-ext-pecl-r3_src_install
php-ext-source-r3_addtoinifiles "memcache.allow_failover" "true"
php-ext-source-r3_addtoinifiles "memcache.max_failover_attempts" "20"
php-ext-source-r3_addtoinifiles "memcache.chunk_size" "32768"
php-ext-source-r3_addtoinifiles "memcache.default_port" "11211"
php-ext-source-r3_addtoinifiles "memcache.hash_strategy" "consistent"
php-ext-source-r3_addtoinifiles "memcache.hash_function" "crc32"
php-ext-source-r3_addtoinifiles "memcache.redundancy" "1"
php-ext-source-r3_addtoinifiles "memcache.session_redundancy" "2"
php-ext-source-r3_addtoinifiles "memcache.protocol" "ascii"
}

@ -1,55 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DESCRIPTION="A PHP Unit Testing framework"
HOMEPAGE="http://phpunit.de"
SRC_URI="https://github.com/sebastianbergmann/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha amd64 arm hppa ia64 ppc ppc64 ~s390 ~sh sparc x86"
IUSE=""
RDEPEND="dev-php/fedora-autoloader
>=dev-php/File_Iterator-1.4.0
!>=dev-php/File_Iterator-2.0
>=dev-php/Text_Template-1.2.0
!>=dev-php/Text_Template-2.0
>=dev-php/PHP_CodeCoverage-4.0.4
!>=dev-php/PHP_CodeCoverage-5.0
>=dev-php/PHP_Timer-1.0.6
!>=dev-php/PHP_Timer-2.0
<dev-php/myclabs-deepcopy-2.0
<dev-php/phpspec-prophecy-2.0
<dev-php/phpunit-mock-objects-4.0
<dev-php/sebastian-comparator-2.0
<dev-php/sebastian-diff-2.0
<dev-php/sebastian-environment-3.0
<dev-php/sebastian-exporter-3.0
<dev-php/sebastian-global-state-2.0
<dev-php/sebastian-object-enumerator-3.0
<dev-php/sebastian-resource-operations-2.0
<dev-php/sebastian-version-3.0
<dev-php/symfony-yaml-4.0
|| (
dev-lang/php:5.6[cli,json,unicode,xml]
dev-lang/php:7.0[cli,json,unicode,xml]
dev-lang/php:7.1[cli,json,unicode,xml]
)"
src_install() {
insinto /usr/share/php/PHPUnit
doins -r src/*
insinto /usr/share/php/PHPUnit/vendor
doins "${FILESDIR}/autoload.php"
exeinto /usr/share/php/PHPUnit
doexe phpunit
dosym ../share/php/PHPUnit/phpunit /usr/bin/phpunit
}
pkg_postinst() {
elog "${PN} can optionally use json, pdo-sqlite and pdo-mysql features."
elog "If you want those, emerge dev-lang/php with USE=\"json pdo sqlite mysql\"."
}

@ -1,7 +1,7 @@
# Copyright 1999-2018 Gentoo Authors
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=7
DESCRIPTION="A PHP Unit Testing framework"
HOMEPAGE="http://phpunit.de"
@ -9,7 +9,7 @@ SRC_URI="https://github.com/sebastianbergmann/${PN}/archive/${PV}.tar.gz -> ${P}
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
KEYWORDS="~alpha amd64 arm hppa ia64 ppc ppc64 ~s390 ~sh sparc x86"
IUSE=""
RDEPEND="dev-php/fedora-autoloader
@ -34,9 +34,7 @@ RDEPEND="dev-php/fedora-autoloader
<dev-php/sebastian-version-3.0
<dev-php/symfony-yaml-4.0
|| (
dev-lang/php:5.6[cli,json,unicode,xml]
dev-lang/php:7.0[cli,json,unicode,xml]
dev-lang/php:7.1[cli,json,unicode,xml]
dev-lang/php:7.2[cli(-),json(-),unicode(-),xml(-)]
)"
src_install() {

Binary file not shown.

@ -3,3 +3,4 @@ DIST hypothesis-python-4.47.5.tar.gz 6805022 BLAKE2B 737a558c794f3ac428bef4b3885
DIST hypothesis-python-4.50.8.tar.gz 6814518 BLAKE2B f2c39cae3708fe88d1854cda97633ba420c32fda38093bb852ef45929762cade0f7f0d1ef696ff96f7ebe7460e8bf53f63de9c959bbbd9e8ec162196d307aac0 SHA512 8c77439fd029e2380afbc059d2edf977414997ba81ecdfde14dfe9dbe9515a92e701751d13879c6b879271f817e01926c2dc66945ae76eb141818da1775bc545
DIST hypothesis-python-4.55.1.tar.gz 9002112 BLAKE2B 16c0c0def078abf2847ce55617c1bfdc93dc085128764fff09724df148b41fd4669ddbee7d9c34f47249283e37b32585fc758e3c6d4cb2035049c3dbf382e568 SHA512 d079bcfce6a37ebf245288d9c615fd0328daa90d81d3dd51a38d351fef4a9da5a79c6abcb63a4f39a71240ae82c5af122f6b01c482225e81889e8474068d6c1a
DIST hypothesis-python-4.55.2.tar.gz 9002965 BLAKE2B 16d46687e787673f1b033037064cbc47edfe517ae6464f8ab5924336240ab87ab24d27b547f41c3888e4609ff4100347485dcc3ba414dc37dad6b170deae0ae4 SHA512 056821a6f03cd564cfe87a0190fb4a4e1b08068e8f5637241859023b44a7600c9ca8508aa9e38464b880c2018753e5010ec9f047959603885175e3c308c3c2bb
DIST hypothesis-python-4.55.4.tar.gz 9004357 BLAKE2B 93fe51581f044cf5f416d9b74b82ce2f9b42e7391beae8f67debdf50494e662f07bf109274d4e29fcf3a1c1c944597cde2a4ff9e7ca65a48f1244c3205f365af SHA512 91d7d2cda32fd40d5368fdd1e60b990b8307573782d822113b6817a5c0b670610693a2f2b013f828913549946fa3dc15f45303bf7d3226bdc1e4527bc18981fb

@ -0,0 +1,59 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python2_7 python3_{5,6,7,8} pypy{,3} )
PYTHON_REQ_USE="threads(+),sqlite"
inherit distutils-r1 eutils
DESCRIPTION="A library for property based testing"
HOMEPAGE="https://github.com/HypothesisWorks/hypothesis https://pypi.org/project/hypothesis/"
SRC_URI="https://github.com/HypothesisWorks/${PN}/archive/${PN}-python-${PV}.tar.gz"
LICENSE="MPL-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-python/attrs-19.2.0[${PYTHON_USEDEP}]
$(python_gen_cond_dep 'dev-python/enum34[${PYTHON_USEDEP}]' 'python2*' pypy)
>=dev-python/sortedcontainers-2.1.0[${PYTHON_USEDEP}]
"
BDEPEND="
dev-python/setuptools[${PYTHON_USEDEP}]
test? (
${RDEPEND}
dev-python/mock[${PYTHON_USEDEP}]
dev-python/pexpect[${PYTHON_USEDEP}]
>=dev-python/pytest-4.3[${PYTHON_USEDEP}]
!!<dev-python/typing-3.7.4.1
)
"
S="${WORKDIR}/${PN}-${PN}-python-${PV}/${PN}-python"
src_prepare() {
# avoid pytest-xdist dep for one test
sed -i -e 's:test_prints_statistics_given_option_under_xdist:_&:' \
tests/pytest/test_statistics.py || die
distutils-r1_src_prepare
}
python_test() {
local pyver=$(python_is_python3 && echo 3 || echo 2)
pytest -vv tests/cover tests/pytest tests/py${pyver} ||
die "Tests fail with ${EPYTHON}"
}
pkg_postinst() {
optfeature "datetime support" dev-python/pytz
optfeature "dateutil support" dev-python/python-dateutil
optfeature "numpy support" dev-python/numpy
optfeature "django support" dev-python/django dev-python/pytz
optfeature "pandas support" dev-python/pandas
optfeature "pytest support" dev-python/pytest
}

@ -1,2 +1,3 @@
DIST PyICU-2.3.1.tar.gz 214761 BLAKE2B 6571f1c10b6fa15b0b6fde76c16b2e1a1fa99af83db615aa7f7a172844183ca2a818747749b38e36162ff297c3e99311cd3328333880374c1c151955fe983f78 SHA512 edb60320ffe649f257d4d691ad9cc8287a7611de6a970d33a25a6e12a14c1faa591023d99d0b10619b0860bba70d1b67af2eff5cf146381afcaa872f0af1be29
DIST PyICU-2.3.tar.gz 214710 BLAKE2B ef676cce089962d16a88193e7aa2ffec739086e5bbef201c8779a372a5876bbb1e63e5e92a7c89c879b91f063e90d4fdb16a1967dff5f2ef658cde95f9fdca6c SHA512 2bdbc7fb7c83e58c9d0d53dadf8fef92d8dec02e9eefebc75bac43c19f008ef2a3219d41b62c426c41a055bb4530b2f7ef567162660d6021b8d2bf9e99090f94
DIST PyICU-2.4.2.tar.gz 219356 BLAKE2B dc6ad1e8944e43560314e9dbfcd37e58b52b50874656f7ca66497a317b03bb9bf988515417660be87bb2e73e0484e5870cd3db2c5eab47fda1223e7514935fb0 SHA512 3cd1f632c2551dce3d721c54190a19c2a46e2554ef54915c9e07b133fa4a499b1a8c49f406abe9777721903799eb23a2d55d3b1aadd758870f8bd591f143a05b

@ -0,0 +1,17 @@
--- a/test/test_LocaleMatcher.py
+++ b/test/test_LocaleMatcher.py
@@ -21,11 +21,13 @@
# DEALINGS IN THE SOFTWARE.
# ====================================================================
-import sys, os, six
+import sys, os, six, pytest
from unittest import TestCase, main
from icu import *
+@pytest.mark.skipif(ICU_VERSION < '65.0',
+ reason='ICU too old for LocaleMatcher support')
class TestLocaleMatcher(TestCase):
def testSetSupportedLocales(self):

@ -0,0 +1,37 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7} )
inherit distutils-r1
MY_PN="PyICU"
MY_P="${MY_PN}-${PV}"
DESCRIPTION="Python bindings for dev-libs/icu"
HOMEPAGE="https://github.com/ovalhub/pyicu"
SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"
RDEPEND="${PYTHON_DEPS}
dev-libs/icu:="
DEPEND="${RDEPEND}"
BDEPEND="test? (
${RDEPEND}
dev-python/six
)"
PATCHES=(
"${FILESDIR}"/${PN}-2.4.2-testLocaleMatcher_pytest_old_icu.patch
)
S="${WORKDIR}/${MY_P}"
DOCS=(CHANGES CREDITS README.md)
distutils_enable_tests pytest

Binary file not shown.

@ -1,4 +1,5 @@
DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
DIST rails-5.2.4.1.tgz 8823310 BLAKE2B 33d863a66c0f5e0554c2beaf5fac235cfa3a5ba0c514aa30f53d9d036656d3710f7c486f3cd23e3b2986ee8621a11782a7a630f74131cce4c99a4ff7539e6b58 SHA512 5b59cd0ede76cedf1fdb50090c434c24fdcd30a2cf6ec4abc5437e62bb2aae410607e812d4e14acdd27b81a51365232f6e768156556ca67ae94b9e10d2eb7655
DIST rails-5.2.4.tgz 8822605 BLAKE2B 541332dab5acd358ba3c3ad660b25cec77050b44fba00f46bb3a6e0846ebede36cf4dc7d13f9269ba14ce4174bb81a342f0407672dc6f9372b7cc0ddd0eb66bd SHA512 bee783a0c8e24441f0fbe011392774684fa1390df837c6f85a17975ae72b8c60bea90998f36742c413eecffe125b6a606b0d920855231f910e8073fe28d44a13
DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
DIST rails-6.0.1.tgz 18551750 BLAKE2B 03349639ae114b82573e5e4063600b07b24274a0f5a81021bf347c650214e0f59fbb1676b9ad580de5a2d6e4dc85cc2702511c32d11a088ef663f26d8d55041e SHA512 ad6667a958663a8d260896c6b7fd589b657383f0d4f217c9bc0e993d6eac67c32fa41d54a9edf9b1f4e01ae78826f49a862b0069d59b3c1de2b950522b3ecf10

@ -0,0 +1,45 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby23 ruby24 ruby25 ruby26"
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_DOCDIR=""
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
RUBY_FAKEGEM_EXTRAINSTALL="app"
RUBY_FAKEGEM_BINWRAP=""
inherit ruby-fakegem eapi7-ver
DESCRIPTION="Integrated WebSockets for Rails"
HOMEPAGE="https://github.com/rails/rails"
SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
IUSE=""
RUBY_S="rails-${PV}/${PN}"
# Tests require many new dependencies, skipping for now
RESTRICT="test"
ruby_add_rdepend "
~dev-ruby/actionpack-${PV}:*
dev-ruby/nio4r:2
>=dev-ruby/websocket-driver-0.6.1:0
"
ruby_add_bdepend "
test? (
>=dev-ruby/railties-4.2.0
dev-ruby/test-unit:2
>=dev-ruby/mocha-0.14.0:0.14
)"

@ -1,5 +1,6 @@
DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
DIST rails-5.2.4.1.tgz 8823310 BLAKE2B 33d863a66c0f5e0554c2beaf5fac235cfa3a5ba0c514aa30f53d9d036656d3710f7c486f3cd23e3b2986ee8621a11782a7a630f74131cce4c99a4ff7539e6b58 SHA512 5b59cd0ede76cedf1fdb50090c434c24fdcd30a2cf6ec4abc5437e62bb2aae410607e812d4e14acdd27b81a51365232f6e768156556ca67ae94b9e10d2eb7655
DIST rails-5.2.4.tgz 8822605 BLAKE2B 541332dab5acd358ba3c3ad660b25cec77050b44fba00f46bb3a6e0846ebede36cf4dc7d13f9269ba14ce4174bb81a342f0407672dc6f9372b7cc0ddd0eb66bd SHA512 bee783a0c8e24441f0fbe011392774684fa1390df837c6f85a17975ae72b8c60bea90998f36742c413eecffe125b6a606b0d920855231f910e8073fe28d44a13
DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
DIST rails-6.0.1.tgz 18551750 BLAKE2B 03349639ae114b82573e5e4063600b07b24274a0f5a81021bf347c650214e0f59fbb1676b9ad580de5a2d6e4dc85cc2702511c32d11a088ef663f26d8d55041e SHA512 ad6667a958663a8d260896c6b7fd589b657383f0d4f217c9bc0e993d6eac67c32fa41d54a9edf9b1f4e01ae78826f49a862b0069d59b3c1de2b950522b3ecf10

@ -0,0 +1,50 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby23 ruby24 ruby25 ruby26"
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec"
RUBY_FAKEGEM_BINWRAP=""
inherit ruby-fakegem eapi7-ver
DESCRIPTION="Framework for designing email-service layers"
HOMEPAGE="https://github.com/rails/rails"
SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
IUSE=""
RUBY_S="rails-${PV}/${PN}"
ruby_add_rdepend "
~dev-ruby/actionpack-${PV}
~dev-ruby/actionview-${PV}
~dev-ruby/activejob-${PV}
>=dev-ruby/mail-2.5.4:* =dev-ruby/mail-2*:*
dev-ruby/rails-dom-testing:2"
ruby_add_bdepend "test? (
dev-ruby/mocha
)"
all_ruby_prepare() {
# Set test environment to our hand.
rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
sed -e '/\/load_paths/d' \
-e '1igem "railties", "~> 5.2.0"' \
-e '1igem "actionpack", "~> 5.2.0"' \
-e '1igem "activejob", "~> 5.2.0"' \
-i test/abstract_unit.rb || die "Unable to remove load paths"
# Avoid a test failing only on attachment ordering, since this is a
# security release.
sed -i -e '/adding inline attachments while rendering mail works/askip "gentoo: fails on ordering"' test/base_test.rb || die
}

@ -1,5 +1,6 @@
DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
DIST rails-5.2.4.1.tgz 8823310 BLAKE2B 33d863a66c0f5e0554c2beaf5fac235cfa3a5ba0c514aa30f53d9d036656d3710f7c486f3cd23e3b2986ee8621a11782a7a630f74131cce4c99a4ff7539e6b58 SHA512 5b59cd0ede76cedf1fdb50090c434c24fdcd30a2cf6ec4abc5437e62bb2aae410607e812d4e14acdd27b81a51365232f6e768156556ca67ae94b9e10d2eb7655
DIST rails-5.2.4.tgz 8822605 BLAKE2B 541332dab5acd358ba3c3ad660b25cec77050b44fba00f46bb3a6e0846ebede36cf4dc7d13f9269ba14ce4174bb81a342f0407672dc6f9372b7cc0ddd0eb66bd SHA512 bee783a0c8e24441f0fbe011392774684fa1390df837c6f85a17975ae72b8c60bea90998f36742c413eecffe125b6a606b0d920855231f910e8073fe28d44a13
DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
DIST rails-6.0.1.tgz 18551750 BLAKE2B 03349639ae114b82573e5e4063600b07b24274a0f5a81021bf347c650214e0f59fbb1676b9ad580de5a2d6e4dc85cc2702511c32d11a088ef663f26d8d55041e SHA512 ad6667a958663a8d260896c6b7fd589b657383f0d4f217c9bc0e993d6eac67c32fa41d54a9edf9b1f4e01ae78826f49a862b0069d59b3c1de2b950522b3ecf10

@ -0,0 +1,60 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby24 ruby25 ruby26"
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_DOCDIR="doc"
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec"
RUBY_FAKEGEM_BINWRAP=""
inherit ruby-fakegem eapi7-ver
DESCRIPTION="Eases web-request routing, handling, and response"
HOMEPAGE="https://github.com/rails/rails"
SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
IUSE=""
RUBY_S="rails-${PV}/${PN}"
ruby_add_rdepend "
~dev-ruby/activesupport-${PV}
~dev-ruby/actionview-${PV}
>=dev-ruby/rack-2.0.8:2.0
>=dev-ruby/rack-test-0.6.3:*
>=dev-ruby/rails-html-sanitizer-1.0.2:1
dev-ruby/rails-dom-testing:2
"
ruby_add_bdepend "
test? (
dev-ruby/mocha:0.14
dev-ruby/bundler
>=dev-ruby/capybara-2.15
~dev-ruby/activemodel-${PV}
>=dev-ruby/rack-cache-1.2:1.2
www-servers/puma
)"
all_ruby_prepare() {
# Remove items from the common Gemfile that we don't need for this
# test run. This also requires handling some gemspecs.
sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\)/ s:^:#:" \
-e '/:job/,/end/ s:^:#:' \
-e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
rm ../Gemfile.lock || die
sed -e '1i gem "activemodel", "~> 5.2.0"' \
-e '1i gem "actionview", "~> 5.2.0"' \
-e '1i gem "railties", "~> 5.2.0"' \
-i test/abstract_unit.rb || die
}

@ -1,5 +1,6 @@
DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
DIST rails-5.2.4.1.tgz 8823310 BLAKE2B 33d863a66c0f5e0554c2beaf5fac235cfa3a5ba0c514aa30f53d9d036656d3710f7c486f3cd23e3b2986ee8621a11782a7a630f74131cce4c99a4ff7539e6b58 SHA512 5b59cd0ede76cedf1fdb50090c434c24fdcd30a2cf6ec4abc5437e62bb2aae410607e812d4e14acdd27b81a51365232f6e768156556ca67ae94b9e10d2eb7655
DIST rails-5.2.4.tgz 8822605 BLAKE2B 541332dab5acd358ba3c3ad660b25cec77050b44fba00f46bb3a6e0846ebede36cf4dc7d13f9269ba14ce4174bb81a342f0407672dc6f9372b7cc0ddd0eb66bd SHA512 bee783a0c8e24441f0fbe011392774684fa1390df837c6f85a17975ae72b8c60bea90998f36742c413eecffe125b6a606b0d920855231f910e8073fe28d44a13
DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
DIST rails-6.0.1.tgz 18551750 BLAKE2B 03349639ae114b82573e5e4063600b07b24274a0f5a81021bf347c650214e0f59fbb1676b9ad580de5a2d6e4dc85cc2702511c32d11a088ef663f26d8d55041e SHA512 ad6667a958663a8d260896c6b7fd589b657383f0d4f217c9bc0e993d6eac67c32fa41d54a9edf9b1f4e01ae78826f49a862b0069d59b3c1de2b950522b3ecf10

@ -0,0 +1,61 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby24 ruby25 ruby26"
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_DOCDIR="doc"
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
RUBY_FAKEGEM_BINWRAP=""
inherit ruby-fakegem eapi7-ver
DESCRIPTION="Simple, battle-tested conventions and helpers for building web pages"
HOMEPAGE="https://github.com/rails/rails/"
SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
IUSE=""
RUBY_S="rails-${PV}/${PN}"
ruby_add_rdepend "
~dev-ruby/activesupport-${PV}
>=dev-ruby/builder-3.1:* =dev-ruby/builder-3*:*
>=dev-ruby/erubi-1.4:0
>=dev-ruby/rails-html-sanitizer-1.0.3:1
dev-ruby/rails-dom-testing:2
"
ruby_add_bdepend "
test? (
dev-ruby/mocha
~dev-ruby/actionpack-${PV}
~dev-ruby/activemodel-${PV}
)"
all_ruby_prepare() {
# Remove items from the common Gemfile that we don't need for this
# test run. This also requires handling some gemspecs.
sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|rack-cache\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|mime-types\|minitest\|sprockets\|stackprof\)/ s:^:#:" \
-e '/:job/,/end/ s:^:#:' \
-e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
rm ../Gemfile.lock || die
# Avoid tests failing due to missing logger setup in activerecord,
# most likely related to test environment setup.
rm -f test/activerecord/render_partial_with_record_identification_test.rb || die
sed -e '1igem "actionpack", "~> 5.2.0"' \
-e '1igem "activemodel", "~> 5.2.0"' \
-e '1igem "activerecord", "~> 5.2.0"' \
-e '1igem "railties", "~> 5.2.0"' \
-i test/abstract_unit.rb || die
}

@ -1,5 +1,6 @@
DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
DIST rails-5.2.4.1.tgz 8823310 BLAKE2B 33d863a66c0f5e0554c2beaf5fac235cfa3a5ba0c514aa30f53d9d036656d3710f7c486f3cd23e3b2986ee8621a11782a7a630f74131cce4c99a4ff7539e6b58 SHA512 5b59cd0ede76cedf1fdb50090c434c24fdcd30a2cf6ec4abc5437e62bb2aae410607e812d4e14acdd27b81a51365232f6e768156556ca67ae94b9e10d2eb7655
DIST rails-5.2.4.tgz 8822605 BLAKE2B 541332dab5acd358ba3c3ad660b25cec77050b44fba00f46bb3a6e0846ebede36cf4dc7d13f9269ba14ce4174bb81a342f0407672dc6f9372b7cc0ddd0eb66bd SHA512 bee783a0c8e24441f0fbe011392774684fa1390df837c6f85a17975ae72b8c60bea90998f36742c413eecffe125b6a606b0d920855231f910e8073fe28d44a13
DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
DIST rails-6.0.1.tgz 18551750 BLAKE2B 03349639ae114b82573e5e4063600b07b24274a0f5a81021bf347c650214e0f59fbb1676b9ad580de5a2d6e4dc85cc2702511c32d11a088ef663f26d8d55041e SHA512 ad6667a958663a8d260896c6b7fd589b657383f0d4f217c9bc0e993d6eac67c32fa41d54a9edf9b1f4e01ae78826f49a862b0069d59b3c1de2b950522b3ecf10

@ -0,0 +1,46 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby23 ruby24 ruby25 ruby26"
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_DOCDIR=""
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
RUBY_FAKEGEM_BINWRAP=""
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
inherit ruby-fakegem eapi7-ver
DESCRIPTION="Job framework with pluggable queues"
HOMEPAGE="https://github.com/rails/rails"
SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
IUSE=""
RUBY_S="rails-${PV}/${PN}"
ruby_add_rdepend "
~dev-ruby/activesupport-${PV}
>=dev-ruby/globalid-0.3.6
"
ruby_add_bdepend "
test? (
dev-ruby/mocha
)"
all_ruby_prepare() {
# Set test environment to our hand.
sed -i -e '/load_paths/d' test/helper.rb || die "Unable to remove load paths"
# Remove all currently unpackaged queues.
sed -i -e 's/que queue_classic resque sidekiq sneakers sucker_punch backburner//' \
-e 's/delayed_job//' Rakefile || die
}

@ -1,5 +1,6 @@
DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
DIST rails-5.2.4.1.tgz 8823310 BLAKE2B 33d863a66c0f5e0554c2beaf5fac235cfa3a5ba0c514aa30f53d9d036656d3710f7c486f3cd23e3b2986ee8621a11782a7a630f74131cce4c99a4ff7539e6b58 SHA512 5b59cd0ede76cedf1fdb50090c434c24fdcd30a2cf6ec4abc5437e62bb2aae410607e812d4e14acdd27b81a51365232f6e768156556ca67ae94b9e10d2eb7655
DIST rails-5.2.4.tgz 8822605 BLAKE2B 541332dab5acd358ba3c3ad660b25cec77050b44fba00f46bb3a6e0846ebede36cf4dc7d13f9269ba14ce4174bb81a342f0407672dc6f9372b7cc0ddd0eb66bd SHA512 bee783a0c8e24441f0fbe011392774684fa1390df837c6f85a17975ae72b8c60bea90998f36742c413eecffe125b6a606b0d920855231f910e8073fe28d44a13
DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
DIST rails-6.0.1.tgz 18551750 BLAKE2B 03349639ae114b82573e5e4063600b07b24274a0f5a81021bf347c650214e0f59fbb1676b9ad580de5a2d6e4dc85cc2702511c32d11a088ef663f26d8d55041e SHA512 ad6667a958663a8d260896c6b7fd589b657383f0d4f217c9bc0e993d6eac67c32fa41d54a9edf9b1f4e01ae78826f49a862b0069d59b3c1de2b950522b3ecf10

@ -0,0 +1,44 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby23 ruby24 ruby25 ruby26"
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_DOCDIR=""
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
RUBY_FAKEGEM_GEMSPEC="activemodel.gemspec"
RUBY_FAKEGEM_BINWRAP=""
inherit ruby-fakegem eapi7-ver
DESCRIPTION="Toolkit for building modeling frameworks like Active Record and Active Resource"
HOMEPAGE="https://github.com/rails/rails"
SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
IUSE=""
RUBY_S="rails-${PV}/${PN}"
ruby_add_rdepend "
~dev-ruby/activesupport-${PV}:*
"
ruby_add_bdepend "
test? (
~dev-ruby/railties-${PV}
dev-ruby/test-unit:2
dev-ruby/mocha
>=dev-ruby/bcrypt-ruby-3.1.7
)"
all_ruby_prepare() {
# Set test environment to our hand.
sed -i -e '/load_paths/d' test/cases/helper.rb || die "Unable to remove load paths"
}

@ -1,5 +1,6 @@
DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
DIST rails-5.2.4.1.tgz 8823310 BLAKE2B 33d863a66c0f5e0554c2beaf5fac235cfa3a5ba0c514aa30f53d9d036656d3710f7c486f3cd23e3b2986ee8621a11782a7a630f74131cce4c99a4ff7539e6b58 SHA512 5b59cd0ede76cedf1fdb50090c434c24fdcd30a2cf6ec4abc5437e62bb2aae410607e812d4e14acdd27b81a51365232f6e768156556ca67ae94b9e10d2eb7655
DIST rails-5.2.4.tgz 8822605 BLAKE2B 541332dab5acd358ba3c3ad660b25cec77050b44fba00f46bb3a6e0846ebede36cf4dc7d13f9269ba14ce4174bb81a342f0407672dc6f9372b7cc0ddd0eb66bd SHA512 bee783a0c8e24441f0fbe011392774684fa1390df837c6f85a17975ae72b8c60bea90998f36742c413eecffe125b6a606b0d920855231f910e8073fe28d44a13
DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
DIST rails-6.0.1.tgz 18551750 BLAKE2B 03349639ae114b82573e5e4063600b07b24274a0f5a81021bf347c650214e0f59fbb1676b9ad580de5a2d6e4dc85cc2702511c32d11a088ef663f26d8d55041e SHA512 ad6667a958663a8d260896c6b7fd589b657383f0d4f217c9bc0e993d6eac67c32fa41d54a9edf9b1f4e01ae78826f49a862b0069d59b3c1de2b950522b3ecf10

@ -0,0 +1,89 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby24 ruby25 ruby26"
# this is not null so that the dependencies will actually be filled
RUBY_FAKEGEM_TASK_TEST="test"
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
RUBY_FAKEGEM_GEMSPEC="activerecord.gemspec"
RUBY_FAKEGEM_BINWRAP=""
inherit ruby-fakegem eapi7-ver
DESCRIPTION="Implements the ActiveRecord pattern (Fowler, PoEAA) for ORM"
HOMEPAGE="https://github.com/rails/rails/"
SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
IUSE="mysql postgres sqlite"
RUBY_S="rails-${PV}/${PN}"
ruby_add_rdepend "~dev-ruby/activesupport-${PV}
~dev-ruby/activemodel-${PV}
dev-ruby/arel:9.0
sqlite? ( >=dev-ruby/sqlite3-1.3.6 )
mysql? ( || ( dev-ruby/mysql2:0.5 dev-ruby/mysql2:0.4 ) )
postgres? ( >=dev-ruby/pg-0.18.0:* )"
ruby_add_bdepend "
test? (
dev-ruby/bundler
~dev-ruby/actionpack-${PV}
~dev-ruby/actionmailer-${PV}
>=dev-ruby/sqlite3-1.3.6
dev-ruby/mocha
dev-ruby/minitest:5
)"
DEPEND+=" test? ( >=dev-db/sqlite-3.12.1 )"
all_ruby_prepare() {
# Remove items from the common Gemfile that we don't need for this
# test run. This also requires handling some gemspecs.
rm ../Gemfile.lock || die
sed -i -e "/\(uglifier\|system_timer\|sdoc\|w3c_validators\|pg\|jquery-rails\|execjs\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|minitest\|sprockets\|stackprof\)/ s:^:#:" \
-e '/:job/,/end/ s:^:#:' \
-e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
sed -i -e '/rack-ssl/d' -e 's/~> 3.4/>= 3.4/' ../railties/railties.gemspec || die
sed -e '/bcrypt/ s/3.0.0/3.0/' \
-i ../Gemfile || die
# Add back json in the Gemfile because we dropped some dependencies
# earlier that implicitly required it.
sed -i -e '$agem "json"' \
../Gemfile || die
sed -e '3i gem "activesupport", "~> 5.2.0"' \
-e '3i gem "activerecord", "~> 5.2.0"' \
-e '3i gem "activemodel", "~> 5.2.0"' \
-i test/cases/helper.rb || die
# Avoid test depending on mysql adapter which we don't support for
# this Rails version to simplify our dependencies.
rm test/cases/connection_specification/resolver_test.rb || die
# Avoid single test using mysql dependencies.
rm test/cases/invalid_connection_test.rb || die
# Avoid failing test that makes bad assumptions on database state.
sed -i -e '/test_do_not_call_callbacks_for_delete_all/,/^ end/ s:^:#:' \
test/cases/associations/has_many_associations_test.rb
# Avoid test failing to bind limit length in favor of security release
sed -i -e '/test_too_many_binds/askip "Fails on Gentoo"' test/cases/bind_parameter_test.rb || die
}
each_ruby_test() {
if use sqlite; then
MT_NO_PLUGINS=true ${RUBY} -S rake test_sqlite3 || die "sqlite3 tests failed"
fi
}

@ -1,4 +1,5 @@
DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
DIST rails-5.2.4.1.tgz 8823310 BLAKE2B 33d863a66c0f5e0554c2beaf5fac235cfa3a5ba0c514aa30f53d9d036656d3710f7c486f3cd23e3b2986ee8621a11782a7a630f74131cce4c99a4ff7539e6b58 SHA512 5b59cd0ede76cedf1fdb50090c434c24fdcd30a2cf6ec4abc5437e62bb2aae410607e812d4e14acdd27b81a51365232f6e768156556ca67ae94b9e10d2eb7655
DIST rails-5.2.4.tgz 8822605 BLAKE2B 541332dab5acd358ba3c3ad660b25cec77050b44fba00f46bb3a6e0846ebede36cf4dc7d13f9269ba14ce4174bb81a342f0407672dc6f9372b7cc0ddd0eb66bd SHA512 bee783a0c8e24441f0fbe011392774684fa1390df837c6f85a17975ae72b8c60bea90998f36742c413eecffe125b6a606b0d920855231f910e8073fe28d44a13
DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
DIST rails-6.0.1.tgz 18551750 BLAKE2B 03349639ae114b82573e5e4063600b07b24274a0f5a81021bf347c650214e0f59fbb1676b9ad580de5a2d6e4dc85cc2702511c32d11a088ef663f26d8d55041e SHA512 ad6667a958663a8d260896c6b7fd589b657383f0d4f217c9bc0e993d6eac67c32fa41d54a9edf9b1f4e01ae78826f49a862b0069d59b3c1de2b950522b3ecf10

@ -0,0 +1,58 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby23 ruby24 ruby25 ruby26"
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_DOCDIR=""
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
RUBY_FAKEGEM_GEMSPEC="activestorage.gemspec"
RUBY_FAKEGEM_EXTRAINSTALL="app config db"
RUBY_FAKEGEM_BINWRAP=""
inherit ruby-fakegem eapi7-ver
DESCRIPTION="Attach cloud and local files in Rails applications"
HOMEPAGE="https://github.com/rails/rails"
SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
IUSE=""
RUBY_S="rails-${PV}/${PN}"
DEPEND+=" test? ( app-text/mupdf ) "
ruby_add_rdepend "
~dev-ruby/actionpack-${PV}:*
~dev-ruby/activerecord-${PV}:*
>=dev-ruby/marcel-0.3.1 =dev-ruby/marcel-0.3*
"
ruby_add_bdepend "
test? (
~dev-ruby/railties-${PV}
dev-ruby/test-unit:2
dev-ruby/mini_magick
dev-ruby/mocha
dev-ruby/rake
dev-ruby/sqlite3
)"
all_ruby_prepare() {
# Remove items from the common Gemfile that we don't need for this
# test run. This also requires handling some gemspecs.
sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|aws-sdk-s3\|google-cloud-storage\|azure-storage\|blade\|bootsnap\|hiredis\|qunit-selenium\|chromedriver-helper\|redis\|rb-inotify\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|sass-rails\|rubocop\|capybara\|rack-cache\|json\|dalli\|listen\|connection_pool\|puma\|mysql2\)/ s:^:#:" \
-e '/dalli/ s/2.7.7/2.7.9/' \
-e '/:job/,/end/ s:^:#:' \
-e '/:test/,/^end/ s:^:#:' \
-e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
rm ../Gemfile.lock || die
}

@ -1,5 +1,6 @@
DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
DIST rails-5.2.4.1.tgz 8823310 BLAKE2B 33d863a66c0f5e0554c2beaf5fac235cfa3a5ba0c514aa30f53d9d036656d3710f7c486f3cd23e3b2986ee8621a11782a7a630f74131cce4c99a4ff7539e6b58 SHA512 5b59cd0ede76cedf1fdb50090c434c24fdcd30a2cf6ec4abc5437e62bb2aae410607e812d4e14acdd27b81a51365232f6e768156556ca67ae94b9e10d2eb7655
DIST rails-5.2.4.tgz 8822605 BLAKE2B 541332dab5acd358ba3c3ad660b25cec77050b44fba00f46bb3a6e0846ebede36cf4dc7d13f9269ba14ce4174bb81a342f0407672dc6f9372b7cc0ddd0eb66bd SHA512 bee783a0c8e24441f0fbe011392774684fa1390df837c6f85a17975ae72b8c60bea90998f36742c413eecffe125b6a606b0d920855231f910e8073fe28d44a13
DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
DIST rails-6.0.1.tgz 18551750 BLAKE2B 03349639ae114b82573e5e4063600b07b24274a0f5a81021bf347c650214e0f59fbb1676b9ad580de5a2d6e4dc85cc2702511c32d11a088ef663f26d8d55041e SHA512 ad6667a958663a8d260896c6b7fd589b657383f0d4f217c9bc0e993d6eac67c32fa41d54a9edf9b1f4e01ae78826f49a862b0069d59b3c1de2b950522b3ecf10

@ -0,0 +1,71 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby23 ruby24 ruby25 ruby26"
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
RUBY_FAKEGEM_GEMSPEC="activesupport.gemspec"
RUBY_FAKEGEM_BINWRAP=""
inherit ruby-fakegem eapi7-ver
DESCRIPTION="Utility Classes and Extension to the Standard Library"
HOMEPAGE="https://github.com/rails/rails"
SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE=""
RUBY_S="rails-${PV}/${PN}"
ruby_add_rdepend "
>=dev-ruby/concurrent-ruby-1.0.2:1
dev-ruby/i18n:1
>=dev-ruby/tzinfo-1.1:1
>=dev-ruby/minitest-5.1:5"
# memcache-client, nokogiri, and builder are not strictly
# needed, but there are tests using this code.
ruby_add_bdepend "test? (
>=dev-ruby/dalli-2.2.1
>=dev-ruby/nokogiri-1.4.5
>=dev-ruby/builder-3.1.0
>=dev-ruby/listen-3.0.5:3
dev-ruby/rack
dev-ruby/mocha
)"
all_ruby_prepare() {
# Set the secure permissions that tests expect.
chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
# Remove items from the common Gemfile that we don't need for this
# test run. This also requires handling some gemspecs.
sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|minitest\|sprockets\|stackprof\|rack-cache\|redis\|sqlite\)/ s:^:#:" \
-e '/:job/,/end/ s:^:#:' \
-e '/group :doc/,/^end/ s:^:#:' \
-e 's/gemspec/gemspec path: "activesupport"/' \
-e '5igem "builder"; gem "rack"' ../Gemfile || die
rm ../Gemfile.lock || die
# Avoid test that depends on timezone
sed -i -e '/test_implicit_coercion/,/^ end/ s:^:#:' test/core_ext/duration_test.rb || die
# Avoid tests that seem to trigger race conditions.
rm -f test/evented_file_update_checker_test.rb || die
# Avoid test that generates filename that is too long
sed -i -e '/test_filename_max_size/askip "gentoo"' test/cache/stores/file_store_test.rb || die
# Avoid tests requiring a live redis running
rm -f test/cache/stores/redis_cache_store_test.rb || die
sed -i -e '/cache_stores:redis/ s:^:#:' Rakefile || die
}

@ -1,5 +1,6 @@
DIST rails-4.2.11.1.gem 1476096 BLAKE2B 18fbaea1b955e586bf84db43dd24998e18175895385b7d360f0b87b8ff283313b360180adba73f1172ce7a3633813e8e59b3dfa18111f439afd54f3ed576440f SHA512 55cd57fdd9d8f1efa0f8c7e7c1dbcadc1a7c2bdcb6230a1c88cea5c4bb567916d1c511749a08162e509c6fe15d4f57634bcedd4e2a32fe6ed5a726a229a6ecab
DIST rails-5.2.3.gem 6656 BLAKE2B 74798f554234d7eab2498912a3c263d83a1bc6c2e0744025cddd44804bf34247de77fc9c8e6a6e17b0cc0db47c60e4fea5581284b1d31a7dbcee0c0990665057 SHA512 18387ec05fa1ab29c361518ec9c8fa0b55a65ed1da6391bed291ef82048b3e81230e1cae4b7f805ed7c56cc336d1bea8feec5aaa703eea4bc6c18912e75f78de
DIST rails-5.2.4.1.gem 6656 BLAKE2B eb8d710ada1a1bd50e3e6133eccf3235731e5d37a2d819b66a6e6f4db6e118df5ea8c75f2874034872176e4adf2a5d970a8bf2642e83e7b0c02baf1663efc074 SHA512 2feb818f1b64916c3a04b27e5d8c783aa33d0033feb2f34a53ec3279d596d2e1230a414a016713dbe840a1c1d9c442b78a2f399c71c1df5b0ec9ceadbfb5a55c
DIST rails-5.2.4.gem 6656 BLAKE2B 69cfa6176b46ee7d314fb1c249e2d311673daf52b06aca6765ada64b8caf2063b2fe9c2a0ba0b865992326dfee0ec22e0b3a847d6707a4d5c816b94029b67837 SHA512 57d07a7e47873ae7e532234a33e2522ac730574ed0a88b04fb5854fdd9f3ab8c56371b53eb6c9468186b35a2d15a1921d208fd07150825275dba5b9a8a003d87
DIST rails-6.0.0.gem 6656 BLAKE2B d381c7f2c019d66f5000b7c84ef9e1a14b184ee67d9bb6a473bcc72e533d8384986870920ab813421f4540d86893d6c5cd9561800c8f0c08e372e9ea93523e18 SHA512 c1bc177139efbbf3244f450335226cfbad2391b75b641d4b3062b4285632062e4b4b521829e3a12f8a5b4ee871daf27fc7a075159f901b74b5a187d06d7531dc
DIST rails-6.0.1.gem 6656 BLAKE2B 621633cf3b7dacf66109935db9a14d709ed22736baeaac74a2403f0fd3a7c6628b060af20437613fb96319bafe5fd7eb2e9978098d9183b0e5868050593f3599 SHA512 5b8a4f90aa536bb40534905853d5fd84fd6aadb2b4124c72e2c524641eacbcbefab77797172b918f0a1f2e0d31889af925c15b279ea3cd2f7fa10c183b99f8ad

@ -0,0 +1,45 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby23 ruby24 ruby25 ruby26"
RUBY_FAKEGEM_BINWRAP=""
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_TASK_TEST=""
RUBY_FAKEGEM_EXTRADOC="README.md"
inherit ruby-fakegem eapi7-ver
DESCRIPTION="ruby on rails is a web-application and persistance framework"
HOMEPAGE="https://rubyonrails.org"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
IUSE="+asset-pipeline"
ruby_add_rdepend "
~dev-ruby/actioncable-${PV}
~dev-ruby/actionmailer-${PV}
~dev-ruby/actionpack-${PV}
~dev-ruby/actionview-${PV}
~dev-ruby/activejob-${PV}
~dev-ruby/activemodel-${PV}
~dev-ruby/activerecord-${PV}
~dev-ruby/activestorage-${PV}
~dev-ruby/activesupport-${PV}
~dev-ruby/railties-${PV}
>=dev-ruby/bundler-1.3 =dev-ruby/bundler-1*
>=dev-ruby/sprockets-rails-2.0.0:*
asset-pipeline? (
dev-ruby/jquery-rails:*
>=dev-ruby/sass-rails-5.0:5.0
>=dev-ruby/uglifier-1.3.0:*
>=dev-ruby/coffee-rails-4.1.0:*
)"
# also: turbolinks, >=jbuilder-1.2:1

@ -1,5 +1,6 @@
DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
DIST rails-5.2.4.1.tgz 8823310 BLAKE2B 33d863a66c0f5e0554c2beaf5fac235cfa3a5ba0c514aa30f53d9d036656d3710f7c486f3cd23e3b2986ee8621a11782a7a630f74131cce4c99a4ff7539e6b58 SHA512 5b59cd0ede76cedf1fdb50090c434c24fdcd30a2cf6ec4abc5437e62bb2aae410607e812d4e14acdd27b81a51365232f6e768156556ca67ae94b9e10d2eb7655
DIST rails-5.2.4.tgz 8822605 BLAKE2B 541332dab5acd358ba3c3ad660b25cec77050b44fba00f46bb3a6e0846ebede36cf4dc7d13f9269ba14ce4174bb81a342f0407672dc6f9372b7cc0ddd0eb66bd SHA512 bee783a0c8e24441f0fbe011392774684fa1390df837c6f85a17975ae72b8c60bea90998f36742c413eecffe125b6a606b0d920855231f910e8073fe28d44a13
DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
DIST rails-6.0.1.tgz 18551750 BLAKE2B 03349639ae114b82573e5e4063600b07b24274a0f5a81021bf347c650214e0f59fbb1676b9ad580de5a2d6e4dc85cc2702511c32d11a088ef663f26d8d55041e SHA512 ad6667a958663a8d260896c6b7fd589b657383f0d4f217c9bc0e993d6eac67c32fa41d54a9edf9b1f4e01ae78826f49a862b0069d59b3c1de2b950522b3ecf10

@ -0,0 +1,71 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby23 ruby24 ruby25 ruby26"
RUBY_FAKEGEM_TASK_TEST="test:regular"
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
RUBY_FAKEGEM_GEMSPEC="railties.gemspec"
RUBY_FAKEGEM_BINDIR="exe"
RUBY_FAKEGEM_BINWRAP=""
inherit ruby-fakegem eapi7-ver
DESCRIPTION="Tools for creating, working with, and running Rails applications"
HOMEPAGE="https://github.com/rails/rails"
SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
IUSE=""
RUBY_S="rails-${PV}/${PN}"
# The test suite has many failures, most likely due to a mismatch in
# exact dependencies or environment specifics. Needs further
# investigation.
RESTRICT="test"
RDEPEND+=">=app-eselect/eselect-rails-0.24"
ruby_add_rdepend "
~dev-ruby/activesupport-${PV}
~dev-ruby/actionpack-${PV}
>=dev-ruby/thor-0.18.1
>=dev-ruby/rake-0.8.7
dev-ruby/method_source
"
ruby_add_bdepend "
test? (
~dev-ruby/actionview-${PV}
dev-ruby/mocha:0.14
)"
all_ruby_prepare() {
rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
sed -i -e '/load_paths/d' test/abstract_unit.rb || die "Unable to remove load paths"
sed -i -e '1igem "minitest", "~>4.0"' test/abstract_unit.rb || die
}
all_ruby_install() {
all_fakegem_install
ruby_fakegem_binwrapper rails rails-${PV}
}
pkg_postinst() {
elog "To select between slots of rails, use:"
elog "\teselect rails"
eselect rails update
}
pkg_postrm() {
eselect rails update
}

Binary file not shown.

@ -50,6 +50,7 @@ DEPEND="!dev-util/${PN}:14
!dev-util/${PN}:15"
RDEPEND="${DEPEND}
>=virtual/jdk-1.7:*"
RESTRICT="splitdebug"
S="${WORKDIR}/${MY_PN}-IC-${PV_STRING}"
QA_PREBUILT="opt/${PN}-${MY_PV}/*"

Binary file not shown.

@ -1,2 +1,3 @@
DIST SuperTux-v0.5.1-Source.tar.gz 90564367 BLAKE2B ba6549c135655d59ebbbed1431baf30cce1e0fb1bcdaee3dd050732992a02bb4dbd25b5399c83d3a7145f8afd20b3e8f4471007d424d2bc40c906d6121678123 SHA512 1a841cec9b71ff482aa271ec94f0563052ed33c65b26958c15c818f897f184356605a115abb70bdb8302f8cdb6e6107cf336790c3929cbc7e3dc78d31b4e2c8a
DIST SuperTux-v0.6.0-Source.tar.gz 131203604 BLAKE2B 196e2ec328469b8fd373abeca6755207dbfdb8d21ba294f8150abd889f0ea8636ab3132cee94c976b8b768a6965eafe7467f09333ecf59a294405e73a5211c59 SHA512 7e313f1af1131e83ec658fee12803542d59075fa94a0a79a9182382335dc1b10a9f75092562555acf875dd03b15b336b40772fb8cdd81a82fa5802deb51b610b
DIST SuperTux-v0.6.1-Source.tar.gz 163293143 BLAKE2B 193aeffe2f6d4e4437339c812200428581912caa6593d6b2c20245c6ac1fc6793afcdc44ee22b25b8b737fec4296f0a4665034567c83b667a4108388f59e327d SHA512 38a1da2a0546aa7fb98ece307b35a7e03a154b018d4b732592d3a718fd6c8ba827f3f8d99f0df777b7f438c0294c1838185ea7e60cc08f8cdb6f9a46b440e860

@ -0,0 +1,59 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
: ${CMAKE_MAKEFILE_GENERATOR:=emake}
inherit cmake-utils flag-o-matic
MY_P="SuperTux-v${PV}-Source"
DESCRIPTION="A game similar to Super Mario Bros."
HOMEPAGE="https://supertux.org/"
SRC_URI="https://github.com/SuperTux/${PN}/releases/download/v${PV}/${MY_P}.tar.gz"
LICENSE="GPL-2+ GPL-3+ ZLIB MIT CC-BY-SA-2.0 CC-BY-SA-3.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="debug"
RDEPEND=">=dev-games/physfs-3.0
dev-libs/boost:=
media-libs/glew:=
virtual/opengl
media-libs/libvorbis
media-libs/openal
>=media-libs/libsdl2-2.0.1[joystick,video]
>=media-libs/sdl2-image-2.0.0[png,jpeg]
>=net-misc/curl-7.21.7"
DEPEND="${RDEPEND}
virtual/pkgconfig"
S="${WORKDIR}/${MY_P}"
PATCHES=(
"${FILESDIR}"/${PN}-0.5.0-tinygettext.patch
"${FILESDIR}"/${PN}-0.6.0-{license,icon,obstack}.patch
)
src_prepare() {
cmake-utils_src_prepare
# This is not a developer release so switch the logo to the non-dev one.
sed -e 's@logo_dev@logo@' \
-i data/images/objects/logo/logo.sprite || die
}
src_configure() {
append-cxxflags -std=c++11
local mycmakeargs=(
-DWERROR=OFF
-DINSTALL_SUBDIR_BIN=bin
-DINSTALL_SUBDIR_DOC=share/doc/${PF}
-DINSTALL_SUBDIR_SHARE=share/${PN}2
-DENABLE_SQDBG="$(usex debug)"
-DUSE_SYSTEM_PHYSFS=ON
)
cmake-utils_src_configure
}

Binary file not shown.

@ -0,0 +1,43 @@
From c0ae03d14b0e58f2d3a23680b7b63c9fe46bdce6 Mon Sep 17 00:00:00 2001
From: Alexander Trufanov <trufanovan@gmail.com>
Date: Thu, 21 Nov 2019 14:25:02 +0300
Subject: Fix HTTP proxy settings
Summary:
After SlaveBase::config() was replaced with SlaveBase::mapConfig()
the reading of "ProxyUrls" value had beed broken as QVariant with
type QByteArray can't be directly converted to QStringList.
It should be converted to QString and splitted.
Reviewers: #frameworks, meven
Reviewed By: meven
Subscribers: meven, kde-frameworks-devel
Tags: #frameworks
BUG: 414346
FIXED-IN: 5.65
Differential Revision: https://phabricator.kde.org/D25432
---
src/ioslaves/http/http.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/ioslaves/http/http.cpp b/src/ioslaves/http/http.cpp
index 2b9ca9a..aca847b 100644
--- a/src/ioslaves/http/http.cpp
+++ b/src/ioslaves/http/http.cpp
@@ -2161,7 +2161,7 @@ bool HTTPProtocol::httpOpenConnection()
// Get proxy information...
if (m_request.proxyUrls.isEmpty()) {
- m_request.proxyUrls = mapConfig().value(QStringLiteral("ProxyUrls"), QStringList()).toStringList();
+ m_request.proxyUrls = mapConfig().value(QStringLiteral("ProxyUrls"), QString()).toString().split(QLatin1Char(','));
qCDebug(KIO_HTTP) << "Proxy URLs:" << m_request.proxyUrls;
}
--
cgit v1.1

@ -0,0 +1,85 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
ECM_DESIGNERPLUGIN="true"
ECM_TEST="forceoptional"
PVCUT=$(ver_cut 1-2)
QTMIN=5.12.3
VIRTUALX_REQUIRED="test"
inherit ecm kde.org
DESCRIPTION="Framework providing transparent file and data management"
LICENSE="LGPL-2+"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
IUSE="acl +handbook kerberos +kwallet X"
RDEPEND="
>=kde-frameworks/kauth-${PVCUT}:5
>=kde-frameworks/karchive-${PVCUT}:5
>=kde-frameworks/kbookmarks-${PVCUT}:5
>=kde-frameworks/kcodecs-${PVCUT}:5
>=kde-frameworks/kcompletion-${PVCUT}:5
>=kde-frameworks/kconfig-${PVCUT}:5
>=kde-frameworks/kconfigwidgets-${PVCUT}:5
>=kde-frameworks/kcoreaddons-${PVCUT}:5
>=kde-frameworks/kcrash-${PVCUT}:5
>=kde-frameworks/kdbusaddons-${PVCUT}:5
>=kde-frameworks/ki18n-${PVCUT}:5
>=kde-frameworks/kiconthemes-${PVCUT}:5
>=kde-frameworks/kitemviews-${PVCUT}:5
>=kde-frameworks/kjobwidgets-${PVCUT}:5
>=kde-frameworks/knotifications-${PVCUT}:5
>=kde-frameworks/kservice-${PVCUT}:5
>=kde-frameworks/ktextwidgets-${PVCUT}:5
>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
>=kde-frameworks/kwindowsystem-${PVCUT}:5
>=kde-frameworks/kxmlgui-${PVCUT}:5
>=kde-frameworks/solid-${PVCUT}:5
>=dev-qt/qtdbus-${QTMIN}:5
>=dev-qt/qtdeclarative-${QTMIN}:5
>=dev-qt/qtgui-${QTMIN}:5
>=dev-qt/qtnetwork-${QTMIN}:5[ssl]
>=dev-qt/qtwidgets-${QTMIN}:5
>=dev-qt/qtxml-${QTMIN}:5
dev-libs/libxml2
dev-libs/libxslt
acl? (
sys-apps/attr
virtual/acl
)
handbook? ( >=kde-frameworks/kdoctools-${PVCUT}:5 )
kerberos? ( virtual/krb5 )
kwallet? ( >=kde-frameworks/kwallet-${PVCUT}:5 )
X? ( >=dev-qt/qtx11extras-${QTMIN}:5 )
"
DEPEND="${RDEPEND}
>=dev-qt/qtconcurrent-${QTMIN}:5
test? ( sys-libs/zlib )
X? (
x11-base/xorg-proto
x11-libs/libX11
x11-libs/libXrender
)
"
PDEPEND="
>=kde-frameworks/kded-${PVCUT}:5
"
# tests hang
RESTRICT+=" test"
PATCHES=( "${FILESDIR}/${P}-fix-http-proxy-settings.patch" )
src_configure() {
local mycmakeargs=(
$(cmake-utils_use_find_package acl ACL)
$(cmake-utils_use_find_package handbook KF5DocTools)
$(cmake-utils_use_find_package kerberos GSSAPI)
$(cmake-utils_use_find_package kwallet KF5Wallet)
$(cmake-utils_use_find_package X X11)
)
ecm_src_configure
}

Binary file not shown.

@ -1,4 +1,4 @@
# Copyright 1999-2015 Gentoo Foundation
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@ -12,7 +12,7 @@ SRC_URI="http://kokkinizita.linuxaudio.org/linuxaudio/downloads/${MY_P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86"
KEYWORDS="amd64 ~ppc ~x86"
IUSE=""
DEPEND="media-libs/ladspa-sdk"

Binary file not shown.

@ -11,7 +11,7 @@ SRC_URI="http://kokkinizita.linuxaudio.org/linuxaudio/downloads/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 ~x86"
IUSE=""
BDEPEND="

@ -11,7 +11,7 @@ SRC_URI="http://kokkinizita.linuxaudio.org/linuxaudio/downloads/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86"
KEYWORDS="amd64 ~ppc ~x86"
IUSE=""
CDEPEND="

@ -1 +1,2 @@
DIST mpd-0.21.16.tar.xz 673732 BLAKE2B ed43ae9d5d40fcac0d035c24161c4db3a1b6df2b05f6a006a47beb7f7ba8ec198cbd20e34c9fcaf4e9832dbf13c57a77a9e5864d7f16de2bdd1c414d41ce391c SHA512 bb7587acd03d675ae3127ab4e196d549170551ac643e5134baa2bccaf8d7c9bba6c9a9edec9bcb61a2ec3a6ce26f4d77190323ef0329033d0cd8c1f8964be05c
DIST mpd-0.21.17.tar.xz 675000 BLAKE2B 708ad03104529294b92e88aa0c29560b64301417a478b93dfaa922bc257920dad7cc687e3cc06c72c7c07a91237571c55fc0e3b05746e38a804df64cc69e3e5d SHA512 71a53ec7262d7292a7227878f3d6187563727a0fabb8716bd6df70d4b96990e2d0da0ea5e59a84530cdb1b5e3046f08118c6409cc67c731c191095bd66f256ec

@ -0,0 +1,298 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic linux-info meson systemd xdg-utils
DESCRIPTION="The Music Player Daemon (mpd)"
HOMEPAGE="https://www.musicpd.org https://github.com/MusicPlayerDaemon/MPD"
SRC_URI="https://www.musicpd.org/download/${PN}/${PV%.*}/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~sh ~x86 ~x64-macos"
IUSE="adplug +alsa ao audiofile bzip2 cdio chromaprint +cue +curl +dbus debug
+eventfd expat faad +ffmpeg +fifo flac fluidsynth gme +icu +id3tag +inotify
+ipv6 jack lame libav libmpdclient libsamplerate libsoxr +mad mikmod mms
modplug mpg123 musepack +network nfs openal opus oss pipe pulseaudio qobuz
recorder samba selinux sid signalfd sndfile soundcloud sqlite systemd
test tidal twolame udisks unicode vorbis wavpack webdav wildmidi upnp
zeroconf zip zlib"
OUTPUT_PLUGINS="alsa ao fifo jack network openal oss pipe pulseaudio recorder"
DECODER_PLUGINS="adplug audiofile faad ffmpeg flac fluidsynth mad mikmod
modplug mpg123 musepack flac sid vorbis wavpack wildmidi"
ENCODER_PLUGINS="audiofile flac lame twolame vorbis"
REQUIRED_USE="
|| ( ${OUTPUT_PLUGINS} )
|| ( ${DECODER_PLUGINS} )
network? ( || ( ${ENCODER_PLUGINS} ) )
recorder? ( || ( ${ENCODER_PLUGINS} ) )
upnp? ( expat )
webdav? ( curl expat )
"
RESTRICT="!test? ( test )"
RDEPEND="
acct-user/mpd
adplug? ( media-libs/adplug:= )
alsa? (
media-libs/alsa-lib
media-sound/alsa-utils
)
ao? ( media-libs/libao[alsa?,pulseaudio?] )
audiofile? ( media-libs/audiofile:= )
cdio? (
dev-libs/libcdio:=
dev-libs/libcdio-paranoia
)
chromaprint? ( media-libs/chromaprint )
curl? ( net-misc/curl )
dbus? ( sys-apps/dbus )
expat? ( dev-libs/expat )
faad? ( media-libs/faad2 )
ffmpeg? (
libav? ( media-video/libav:0= )
!libav? ( media-video/ffmpeg:0= )
)
flac? ( media-libs/flac )
fluidsynth? ( media-sound/fluidsynth )
gme? ( >=media-libs/game-music-emu-0.6.0_pre20120802 )
icu? ( dev-libs/icu:= )
id3tag? ( media-libs/libid3tag )
jack? ( virtual/jack )
lame? ( network? ( media-sound/lame ) )
libmpdclient? ( media-libs/libmpdclient )
libsamplerate? ( media-libs/libsamplerate )
libsoxr? ( media-libs/soxr )
mad? ( media-libs/libmad )
mikmod? ( media-libs/libmikmod )
mms? ( media-libs/libmms )
modplug? ( media-libs/libmodplug )
mpg123? ( media-sound/mpg123 )
musepack? ( media-sound/musepack-tools )
network? ( media-libs/libshout )
nfs? ( net-fs/libnfs )
openal? ( media-libs/openal )
opus? ( media-libs/opus )
pulseaudio? ( media-sound/pulseaudio )
qobuz? ( dev-libs/libgcrypt:0 )
samba? ( net-fs/samba )
selinux? ( sec-policy/selinux-mpd )
sid? ( || (
media-libs/libsidplay:2
media-libs/libsidplayfp
) )
sndfile? ( media-libs/libsndfile )
soundcloud? ( >=dev-libs/yajl-2:= )
sqlite? ( dev-db/sqlite:3 )
systemd? ( sys-apps/systemd )
tidal? ( dev-libs/yajl
net-misc/curl )
twolame? ( media-sound/twolame )
udisks? ( sys-fs/udisks:2 )
upnp? ( net-libs/libupnp:0 )
vorbis? ( media-libs/libvorbis )
wavpack? ( media-sound/wavpack )
wildmidi? ( media-sound/wildmidi )
zeroconf? ( net-dns/avahi[dbus] )
zip? ( dev-libs/zziplib )
zlib? ( sys-libs/zlib:= )"
DEPEND="${RDEPEND}
>=dev-libs/boost-1.58:=
test? ( dev-cpp/gtest )"
BDEPEND=">=dev-util/meson-0.49.2
virtual/pkgconfig"
PATCHES=(
"${FILESDIR}"/${PN}-0.18.conf.patch
)
pkg_setup() {
if use eventfd; then
CONFIG_CHECK+=" ~EVENTFD"
ERROR_EVENTFD="${P} requires eventfd in-kernel support."
fi
if use signalfd; then
CONFIG_CHECK+=" ~SIGNALFD"
ERROR_SIGNALFD="${P} requires signalfd in-kernel support."
fi
if use inotify; then
CONFIG_CHECK+=" ~INOTIFY_USER"
ERROR_INOTIFY_USER="${P} requires inotify in-kernel support."
fi
if use eventfd || use signalfd || use inotify; then
linux-info_pkg_setup
fi
elog "If you will be starting mpd via /etc/init.d/mpd, please make
sure that MPD's pid_file is _set_."
}
src_prepare() {
cp -f doc/mpdconf.example doc/mpdconf.dist || die "cp failed"
default
}
src_configure() {
local emesonargs=(
-Dbzip2=$(usex bzip2 enabled disabled)
-Dcdio_paranoia=$(usex cdio enabled disabled)
-Dchromaprint=$(usex chromaprint enabled disabled)
-Dcue=$(usex cue true false)
-Dcurl=$(usex curl enabled disabled)
-Ddbus=$(usex dbus enabled disabled)
-Ddebug=$(usex debug true false)
-Deventfd=$(usex eventfd true false)
-Dexpat=$(usex expat enabled disabled)
-Dicu=$(usex icu enabled disabled)
-Did3tag=$(usex id3tag enabled disabled)
-Dinotify=$(usex inotify true false)
-Dipv6=$(usex ipv6 enabled disabled)
-Diso9660=$(usex cdio enabled disabled)
-Dlibmpdclient=$(usex libmpdclient enabled disabled)
-Dlibsamplerate=$(usex libsamplerate enabled disabled)
-Dmms=$(usex mms enabled disabled)
-Dnfs=$(usex nfs enabled disabled)
-Dsignalfd=$(usex signalfd true false)
-Dsmbclient=$(usex samba enabled disabled)
-Dsoxr=$(usex libsoxr enabled disabled)
-Dsqlite=$(usex sqlite enabled disabled)
-Dsystemd=$(usex systemd enabled disabled)
-Dtest=$(usex test true false)
-Dudisks=$(usex udisks enabled disabled)
-Dupnp=$(usex upnp enabled disabled)
-Dwebdav=$(usex webdav enabled disabled)
-Dzeroconf=$(usex zeroconf avahi disabled)
-Dzlib=$(usex zlib enabled disabled)
-Dzzip=$(usex zip enabled disabled)
)
emesonargs+=(
-Dalsa=$(usex alsa enabled disabled)
-Dao=$(usex ao enabled disabled)
-Dfifo=$(usex fifo true false)
-Djack=$(usex jack enabled disabled)
-Dopenal=$(usex openal enabled disabled)
-Doss=$(usex oss enabled disabled)
-Dpipe=$(usex pipe true false)
-Dpulse=$(usex pulseaudio enabled disabled)
-Drecorder=$(usex recorder true false)
)
if use samba || use upnp; then
emesonargs+=( -Dneighbor=true )
fi
append-lfs-flags
append-ldflags "-L/usr/$(get_libdir)/sidplay/builders"
if use network; then
emesonargs+=(
-Dshine=disabled
-Dshout=enabled
-Dvorbisenc=$(usex vorbis enabled disabled)
-Dhttpd=true
-Dlame=$(usex lame enabled disabled)
-Dtwolame=$(usex twolame enabled disabled)
-Dwave_encoder=$(usex audiofile true false)
)
fi
emesonargs+=(
-Dadplug=$(usex adplug enabled disabled)
-Daudiofile=$(usex audiofile enabled disabled)
-Dfaad=$(usex faad enabled disabled)
-Dffmpeg=$(usex ffmpeg enabled disabled)
-Dflac=$(usex flac enabled disabled)
-Dfluidsynth=$(usex fluidsynth enabled disabled)
-Dgme=$(usex gme enabled disabled)
-Dmad=$(usex mad enabled disabled)
-Dmikmod=$(usex mikmod enabled disabled)
-Dmodplug=$(usex modplug enabled disabled)
-Dmpcdec=$(usex musepack enabled disabled)
-Dmpg123=$(usex mpg123 enabled disabled)
-Dopus=$(usex opus enabled disabled)
-Dsidplay=$(usex sid enabled disabled)
-Dsndfile=$(usex sndfile enabled disabled)
-Dvorbis=$(usex vorbis enabled disabled)
-Dwavpack=$(usex wavpack enabled disabled)
-Dwildmidi=$(usex wildmidi enabled disabled)
)
emesonargs+=(
-Dqobuz=$(usex qobuz enabled disabled)
-Dsoundcloud=$(usex soundcloud enabled disabled)
-Dtidal=$(usex tidal enabled disabled)
)
emesonargs+=(
--libdir="/usr/$(get_libdir)"
-Ddocumentation=false
-Dsndio=disabled #not yet in the tree
-Dsolaris_output=disabled
-Ddatabase=true
-Ddsd=true
-Dtcp=true
-Dsystemd_system_unit_dir="$(systemd_get_systemunitdir)"
-Dsystemd_user_unit_dir="$(systemd_get_userunitdir)"
)
if use icu; then
emesonargs+=( -Diconv=enabled )
else
emesonargs+=( -Diconv=disabled )
fi
meson_src_configure
}
src_install() {
meson_src_install
insinto /etc
newins doc/mpdconf.dist mpd.conf
insinto /etc/logrotate.d
newins "${FILESDIR}"/${PN}-0.21.1.logrotate ${PN}
newinitd "${FILESDIR}"/${PN}-0.21.4.init ${PN}
if use unicode; then
sed -i -e 's:^#filesystem_charset.*$:filesystem_charset "UTF-8":' \
"${ED}"/etc/mpd.conf || die "sed failed"
fi
doman doc/mpd.1
doman doc/mpd.conf.5
keepdir /var/lib/mpd
keepdir /var/lib/mpd/music
keepdir /var/lib/mpd/playlists
}
pkg_postinst() {
xdg_icon_cache_update
}
pkg_postrm() {
xdg_icon_cache_update
}

@ -47,7 +47,7 @@ RDEPEND="
media-libs/libfishsound
media-libs/liboggz
)
opus? ( media-libs/opus )
opus? ( media-libs/opusfile )
osc? ( media-libs/liblo )
portaudio? ( >=media-libs/portaudio-19 )
pulseaudio? ( media-sound/pulseaudio )

Binary file not shown.

@ -1 +1 @@
Thu, 19 Dec 2019 05:08:46 +0000
Thu, 19 Dec 2019 17:08:45 +0000

@ -1 +1 @@
Thu, 19 Dec 2019 05:08:46 +0000
Thu, 19 Dec 2019 17:08:45 +0000

Binary file not shown.

@ -12,4 +12,4 @@ REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_5 python_targe
RESTRICT=!test? ( test )
SLOT=0
_eclasses_=eutils fcb2aa98e1948b835b5ae66ca52868c5 fcaps 9445d60c1eb084a91c38ef4c070b2f16 git-r3 7d6c351ee8b1feb12ed8c8b0adae088b l10n 97f2753e3f1f3753d53d856c7c0bbb0b linux-info 953c3b1c472dcadbf62098a9301327f2 multibuild 40fe59465edacd730c644ec2bc197809 multilib 1d91b03d42ab6308b5f4f6b598ed110e pax-utils a41d1fd1c111289ffa04490de6ee79d7 python-r1 c037bf23d7eff50e222b067cd54e5f27 python-utils-r1 f7aef159261e9835066ddf8d3a0e3487 readme.gentoo-r1 22ae82e140bdd95d17a34fd5fd733190 toolchain-funcs 512eb3367f507ebaa1d1d43ab7d66e6c udev 452708c3f55cf6e918b045adb949a9e6 xdg-utils ff2ff954e6b17929574eee4efc5152ba
_md5_=37e473124766d5522c7ffb0130c3bd6f
_md5_=7638c4b57f5676bc192145f182ec2d65

@ -0,0 +1,15 @@
BDEPEND=dev-qt/linguist-tools:5 virtual/pkgconfig dev-util/ninja >=dev-util/cmake-3.9.6
DEFINED_PHASES=compile configure install postinst postrm prepare setup test
DEPEND=python_single_target_python3_5? ( dev-lang/python:3.5[tk] >=dev-lang/python-exec-2:=[python_targets_python3_5] ) python_single_target_python3_6? ( dev-lang/python:3.6[tk] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[tk] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) app-text/hunspell:= dev-libs/libpcre:3=[pcre16] python_single_target_python3_5? ( dev-python/css-parser[python_targets_python3_5(-)] dev-python/lxml[python_targets_python3_5(-)] dev-python/six[python_targets_python3_5(-)] ) python_single_target_python3_6? ( dev-python/css-parser[python_targets_python3_6(-)] dev-python/lxml[python_targets_python3_6(-)] dev-python/six[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/css-parser[python_targets_python3_7(-)] dev-python/lxml[python_targets_python3_7(-)] dev-python/six[python_targets_python3_7(-)] ) >=dev-qt/qtconcurrent-5.12:5 >=dev-qt/qtcore-5.12:5 >=dev-qt/qtgui-5.12:5 >=dev-qt/qtprintsupport-5.12:5 >=dev-qt/qtwebengine-5.12:5[widgets] >=dev-qt/qtwidgets-5.12:5 sys-libs/zlib[minizip] plugins? ( python_single_target_python3_5? ( dev-python/chardet[python_targets_python3_5(-)] dev-python/cssselect[python_targets_python3_5(-)] dev-python/cssutils[python_targets_python3_5(-)] dev-python/html5lib[python_targets_python3_5(-)] dev-python/pillow[python_targets_python3_5(-)] dev-python/regex[python_targets_python3_5(-)] ) python_single_target_python3_6? ( dev-python/chardet[python_targets_python3_6(-)] dev-python/cssselect[python_targets_python3_6(-)] dev-python/cssutils[python_targets_python3_6(-)] dev-python/html5lib[python_targets_python3_6(-)] dev-python/pillow[python_targets_python3_6(-)] dev-python/regex[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/chardet[python_targets_python3_7(-)] dev-python/cssselect[python_targets_python3_7(-)] dev-python/cssutils[python_targets_python3_7(-)] dev-python/html5lib[python_targets_python3_7(-)] dev-python/pillow[python_targets_python3_7(-)] dev-python/regex[python_targets_python3_7(-)] ) ) system-mathjax? ( dev-libs/mathjax )
DESCRIPTION=Multi-platform WYSIWYG ebook editor for ePub format
EAPI=7
HOMEPAGE=https://sigil-ebook.com/ https://github.com/Sigil-Ebook/Sigil
IUSE=+plugins system-mathjax python_targets_python3_5 python_targets_python3_6 python_targets_python3_7 python_single_target_python3_5 python_single_target_python3_6 python_single_target_python3_7
KEYWORDS=~amd64 ~x86
LICENSE=GPL-3+ Apache-2.0
RDEPEND=python_single_target_python3_5? ( dev-lang/python:3.5[tk] >=dev-lang/python-exec-2:=[python_targets_python3_5] ) python_single_target_python3_6? ( dev-lang/python:3.6[tk] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[tk] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) app-text/hunspell:= dev-libs/libpcre:3=[pcre16] python_single_target_python3_5? ( dev-python/css-parser[python_targets_python3_5(-)] dev-python/lxml[python_targets_python3_5(-)] dev-python/six[python_targets_python3_5(-)] ) python_single_target_python3_6? ( dev-python/css-parser[python_targets_python3_6(-)] dev-python/lxml[python_targets_python3_6(-)] dev-python/six[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/css-parser[python_targets_python3_7(-)] dev-python/lxml[python_targets_python3_7(-)] dev-python/six[python_targets_python3_7(-)] ) >=dev-qt/qtconcurrent-5.12:5 >=dev-qt/qtcore-5.12:5 >=dev-qt/qtgui-5.12:5 >=dev-qt/qtprintsupport-5.12:5 >=dev-qt/qtwebengine-5.12:5[widgets] >=dev-qt/qtwidgets-5.12:5 sys-libs/zlib[minizip] plugins? ( python_single_target_python3_5? ( dev-python/chardet[python_targets_python3_5(-)] dev-python/cssselect[python_targets_python3_5(-)] dev-python/cssutils[python_targets_python3_5(-)] dev-python/html5lib[python_targets_python3_5(-)] dev-python/pillow[python_targets_python3_5(-)] dev-python/regex[python_targets_python3_5(-)] ) python_single_target_python3_6? ( dev-python/chardet[python_targets_python3_6(-)] dev-python/cssselect[python_targets_python3_6(-)] dev-python/cssutils[python_targets_python3_6(-)] dev-python/html5lib[python_targets_python3_6(-)] dev-python/pillow[python_targets_python3_6(-)] dev-python/regex[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/chardet[python_targets_python3_7(-)] dev-python/cssselect[python_targets_python3_7(-)] dev-python/cssutils[python_targets_python3_7(-)] dev-python/html5lib[python_targets_python3_7(-)] dev-python/pillow[python_targets_python3_7(-)] dev-python/regex[python_targets_python3_7(-)] ) ) system-mathjax? ( dev-libs/mathjax )
REQUIRED_USE=^^ ( python_single_target_python3_5 python_single_target_python3_6 python_single_target_python3_7 ) python_single_target_python3_5? ( python_targets_python3_5 ) python_single_target_python3_6? ( python_targets_python3_6 ) python_single_target_python3_7? ( python_targets_python3_7 )
SLOT=0
SRC_URI=https://github.com/Sigil-Ebook/Sigil/archive/1.0.0.tar.gz -> sigil-1.0.0.tar.gz
_eclasses_=cmake-utils be72eac95bd029ad1d81d5d656c3c83b eutils fcb2aa98e1948b835b5ae66ca52868c5 flag-o-matic 8a43b9830f1e64a7a5fc0a276afa0275 multilib 1d91b03d42ab6308b5f4f6b598ed110e multiprocessing cac3169468f893670dac3e7cb940e045 ninja-utils 132cbb376048d079b5a012f5467c4e7f python-single-r1 721d0faeb54c0c332aa593d384993b4c python-utils-r1 f7aef159261e9835066ddf8d3a0e3487 toolchain-funcs 512eb3367f507ebaa1d1d43ab7d66e6c xdg-utils ff2ff954e6b17929574eee4efc5152ba
_md5_=c2eef212334ce1c935c1359f14fcd128

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

Loading…
Cancel
Save