parent
0797a1de0c
commit
607abb7b4f
Binary file not shown.
Binary file not shown.
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
|
||||
}
|
@ -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
|
||||
}
|
@ -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
|
||||
}
|
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
|
||||
|
Binary file not shown.
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
|
||||
}
|
@ -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,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,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\"."
|
||||
}
|
Binary file not shown.
@ -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.
@ -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
|
||||
)"
|
@ -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
|
||||
}
|
@ -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
|
||||
}
|
@ -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
|
||||
}
|
@ -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
|
||||
}
|
@ -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"
|
||||
}
|
@ -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
|
||||
}
|
@ -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
|
||||
}
|
@ -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
|
||||
}
|
@ -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
|
@ -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.
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.
Binary file not shown.
@ -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
|
||||
}
|
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.
Binary file not shown.
Binary file not shown.
@ -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…
Reference in new issue