[gentoo-commits] repo/gentoo:master commit in: dev-lang/python/files/, dev-lang/python/

2020-07-04 Thread Michał Górny
commit: c67770b203c690e98b0571795c962d6744f69578
Author: Michał Górny  gentoo  org>
AuthorDate: Sat Jul  4 07:31:34 2020 +
Commit: Michał Górny  gentoo  org>
CommitDate: Sat Jul  4 08:48:05 2020 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c67770b2

dev-lang/python: Remove old

Signed-off-by: Michał Górny  gentoo.org>

 dev-lang/python/Manifest   |   9 -
 dev-lang/python/files/test-__all__-numpy.patch |  13 -
 .../files/test.support.unlink-ignore-EACCES.patch  |  28 --
 ...est.support.unlink-ignore-PermissionError.patch |  28 --
 dev-lang/python/python-2.7.17-r2.ebuild| 369 -
 dev-lang/python/python-3.6.10-r1.ebuild| 360 
 dev-lang/python/python-3.7.7-r1.ebuild | 346 ---
 dev-lang/python/python-3.8.2-r1.ebuild | 351 
 dev-lang/python/python-3.9.0_alpha6.ebuild | 327 --
 dev-lang/python/python-3.9.0_beta1.ebuild  | 323 --
 dev-lang/python/python-3.9.0_beta2.ebuild  | 323 --
 11 files changed, 2477 deletions(-)

diff --git a/dev-lang/python/Manifest b/dev-lang/python/Manifest
index 5d1ad15fbaf..a45e3926ce8 100644
--- a/dev-lang/python/Manifest
+++ b/dev-lang/python/Manifest
@@ -1,24 +1,15 @@
-DIST Python-2.7.17.tar.xz 12855568 BLAKE2B 
6d09214a51d6595fe5253a279ee556d7510dcb9a0e8ad71e9cf73b4fb00c3abd3680e2429f4f87d9387d1fc16d4887f5f33fc600b24b0ca2c70f36bf34df2157
 SHA512 
2dc19a0b0d818c71429dae94783e58b2aac0fa31f5faa1e840cac06245a59932ecc4658d913515736601bcf70a78c9ec60367aed75f4567d1e41ff3bb104da9a
 DIST Python-2.7.18.tar.xz 12854736 BLAKE2B 
060a621c91dd8e3d321aec99d44c17aa67381998256a1a002d316b38288349884d5960de35c49352d03129ed0bae599e641ec2225898158ebce50a7a2fd74d2c
 SHA512 
a7bb62b51f48ff0b6df0b18f5b0312a523e3110f49c3237936bfe56ed0e26838c0274ff5401bda6fc21bf24337477ccac49e8026c5d651e4b4cafb5eb5086f6c
 DIST Python-3.6.10.tar.xz 17212220 BLAKE2B 
822e231cf2755e6477e49e9128a983185a4f1e30e9d6c221f1b5720891c0de345e8c5402af458d3627eba124e75fea4b5daa94e01b0eaddc116dc3281263ecbe
 SHA512 
26147099e1f1a0ffc85febad26e18e991f019599a150887ea0b925e34663fad8e03b3c2a941e2770c1a63960695e173ef32709572c9361e7f2cb862ccf75b28a
 DIST Python-3.7.7.tar.xz 1726 BLAKE2B 
5f16c9559249470a9e6c0aa686965e7d78ce0f7364b5d03fc9590613c7a5456f92835340e49bf9becbec18b18d1e5a6fc318b6e30f2349da3246a918cf8b05ff
 SHA512 
ddc838a7b0c442c2e465616f20231f2b703ed6b69ed2dc17858aac8760814fdf7cff43d350d359300e47b6bb1f0bd38c31126b855e423a3a65ed06a8fa16d136
 DIST Python-3.7.8.tar.xz 17399552 BLAKE2B 
4bf6c47b1132b6d31a79232002c4d38e2cd123ac05d52b21d6bfba5a4e19ec9130b8df8698d5ce6627e4297c4cf756643f036e694e36364c235306c72ef34bf8
 SHA512 
d2ba299e3cf8ed0f8fed9317f42bcd8d9af7e0e6175939b4be1be289c1658418bed17899e2608d762ffb15575021956cf6bf2054d7863c04b3bd7642f5b8c7ea
 DIST Python-3.8.2.tar.xz 17869888 BLAKE2B 
f42b35bea5e65f1f0a3fa6f1fd3d749fba3fa46d958608a314c1a98d0e3ca890e856da4d40ee489fe546fc02ce0fc9fa2daaaba96a8928d92ae7eb3d2dda3fe4
 SHA512 
ca37ad0e7c5845f5f228566aa8ff654a8f428c7d4a5aaabff29baebb0ca3219b31ba8bb2607f89e37cf3fc564f023b8407e53a4f2c47bd99122c1cc222613e37
 DIST Python-3.8.3.tar.xz 17912964 BLAKE2B 
9c415823f70bad97936e0472fc53a1b7650cbf0082da714266095dec74e0cd4a48c9477ad03fbb75fdc2cd8e41ef3aa5839e38fc69751720f5cb5c7fc77cce17
 SHA512 
3103bd8d944f3905eee3a2b52fd1f5c7dee380f9c5a99ad35a401fcba5a9117c3860ecec5cb47a92712c6549442fd2fa553a15c5657241dd09f5d00b9ed4f0f4
-DIST Python-3.9.0a6.tar.xz 18202376 BLAKE2B 
32f04613a3b11341759eb98fd4b16edcb890a9ce19a4d5031aecdccd985a5462248fcd0e7bf478e2f23490ad85b36c760c14398f2b238e26038a476831f004d2
 SHA512 
edb71840347ab2b5e18b3a2b831a3d9a26e1af52de9b1c6c088ce2d20f8e96a22c87fc3677b62e49c91a00d8b531028bdc739f00fe220dbdeb343daf17829be4
-DIST Python-3.9.0b1.tar.xz 18443584 BLAKE2B 
156f128fccb045f7d367f3f7c4c8ba3dc5b0e232c551bc24ed3a8be8b2199a66cde3671d6b1c4b75286618ed7af81ae60bf7db4a05c6de7c799a5f5c48b2f2ac
 SHA512 
ed82ed2ef58940129d940b613c6495517741ebf3d6834b1e2498b294f1c4485d1cb180455d345937fe5a1da529a9df6278a17e7fe6aa5a4c6151745119b866bb
-DIST Python-3.9.0b2.tar.xz 18489152 BLAKE2B 
e72afe6bd3a338d313a226f9c4055973cb7fb5de5581df48cb48e62bd0762edc712c94eee01465eaf522b5926a0546383bba797f7a7d2dbe09ea01ada843b7f4
 SHA512 
adf444c2884eab3df3682a0af4f852c375868b6a9718c9fb87fe7419ec46371b1cbd499abae3f04f72d42b864b7ad86f7ae9890658b8ee75987f4cc675d97ab9
 DIST Python-3.9.0b3.tar.xz 18518204 BLAKE2B 
fa1707f0d55a83e739e9ad51979f8aff9720588a8a77b7ce8beb9ecf599955677758dec1551a0549b010f86c1f8fbc5915cef34d63097534d1c512c92fad5bd1
 SHA512 
c06a6b874fbce93ec37402034158a7bab44cab775d6da467eaddc1eb402663415f9d788e657a204f17dffe5fa6f379379f9215b5198ec5071565486b6f0e4a2a
 DIST Python-3.9.0b4.tar.xz 18602256 BLAKE2B 
9f260f2b3c6380745c343d2883db430dda1b76b120050df16e53c1021e5a746c7e4a6aa8e83c746c3705c6872e83369a649c48ffdaef972a7049c44f7bc3030b
 SHA512 

[gentoo-commits] repo/gentoo:master commit in: dev-lang/python/files/, dev-lang/python/

2019-12-19 Thread Michał Górny
commit: 7fff5d2e3783ee64a006c97ef20b119c19a2bb65
Author: Michał Górny  gentoo  org>
AuthorDate: Thu Dec 19 08:58:55 2019 +
Commit: Michał Górny  gentoo  org>
CommitDate: Thu Dec 19 08:58:55 2019 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7fff5d2e

dev-lang/python: Remove redundant versions

Signed-off-by: Michał Górny  gentoo.org>

 dev-lang/python/Manifest   |  11 -
 dev-lang/python/files/3.6.5-disable-nis.patch  |  11 -
 .../python-3.5.5-libressl-compatibility.patch  |  69 
 .../python/files/python-3.6.5-hash-unaligned.patch |  42 ---
 .../python-3.6.5-libressl-compatibility.patch  | 114 ---
 dev-lang/python/python-2.7.15.ebuild   | 359 
 dev-lang/python/python-3.5.5.ebuild| 365 -
 dev-lang/python/python-3.6.5.ebuild| 346 ---
 dev-lang/python/python-3.6.8.ebuild| 349 
 dev-lang/python/python-3.7.2.ebuild| 325 --
 dev-lang/python/python-3.7.3.ebuild| 328 --
 dev-lang/python/python-3.7.4-r1.ebuild | 328 --
 dev-lang/python/python-3.7.5.ebuild| 328 --
 13 files changed, 2975 deletions(-)

diff --git a/dev-lang/python/Manifest b/dev-lang/python/Manifest
index 59b0c99ab17..a1b38e1daea 100644
--- a/dev-lang/python/Manifest
+++ b/dev-lang/python/Manifest
@@ -1,24 +1,13 @@
-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.9.tar.xz 17212164 BLAKE2B 
ef33dbc1ea3bbeaf92092de867279d759e3a204ca4e8bf0e5c6a1adbb17a9220d8829245fa9f067ec6497a5789a4f60b8db8c727bb2bd8126df470921d552a53
 SHA512 
05de9c6f44d96a52bfce10ede4312de892573edaf8bece65926d19973a3a800d65eed7a857af945f69efcfb25efa3788e7a54016b03d80b611eb51c3ea074819
-DIST Python-3.7.2.tar.xz 17042320 BLAKE2B 
79b06b7d38590b7ad00850a4323156bfee07c4cf8531cbc09d262c6eb38721e32b8b0591fc21017e56948dd81763e9061f118f204eda5b9cc0b84e7132b42979
 SHA512 
6cd2d6d848783b99d55985cd7b22d67b98f41a09b4fdd96f680a630a4e035220d2b903f8c59ed513aa5ffe6730fa947ddb55bb72ce36f0e945ef8af5d971
-DIST Python-3.7.3.tar.xz 17108364 BLAKE2B 
ac86ea442519a02f0afcb0d0ec70cb288ae28df63fc9f575ee4d8e03e6e31aff9ad2ff18ff5787d922727bd1c6f1a488f94541cd9787ac932d041c93847dea34
 SHA512 
6d9b7c0f1764e0f655a39430a3af6f7b5e3c9b7166c042e780677a54b17ad4ca6d0d9cba262c82b1b70bba8f7c28883dad4cc0d7cc194fc7d2c1b5f4f08a763a
-DIST Python-3.7.4.tar.xz 17131432 

[gentoo-commits] repo/gentoo:master commit in: dev-lang/python/files/, dev-lang/python/

2018-04-19 Thread Mike Gilbert
commit: 0d123a4bd5046559e97746f6598c7f6030dccdda
Author: Mike Gilbert  gentoo  org>
AuthorDate: Thu Apr 19 19:43:52 2018 +
Commit: Mike Gilbert  gentoo  org>
CommitDate: Thu Apr 19 19:44:13 2018 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0d123a4b

dev-lang/python: fix unaligned memory access

Thanks to Rolf Eike Beer for the patches.

Closes: https://bugs.gentoo.org/636400
Package-Manager: Portage-2.3.24, Repoman-2.3.6_p81

 .../python/files/python-3.5.5-hash-unaligned.patch | 43 ++
 .../python/files/python-3.6.5-hash-unaligned.patch | 42 +
 dev-lang/python/python-3.4.8.ebuild|  1 +
 dev-lang/python/python-3.5.5.ebuild|  1 +
 dev-lang/python/python-3.6.5.ebuild|  1 +
 5 files changed, 88 insertions(+)

diff --git a/dev-lang/python/files/python-3.5.5-hash-unaligned.patch 
b/dev-lang/python/files/python-3.5.5-hash-unaligned.patch
new file mode 100644
index 000..c418f40b7da
--- /dev/null
+++ b/dev-lang/python/files/python-3.5.5-hash-unaligned.patch
@@ -0,0 +1,43 @@
+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
+@@ -372,7 +372,7 @@ siphash24(const void *src, Py_ssize_t sr
+ PY_UINT64_T k0 = _le64toh(_Py_HashSecret.siphash.k0);
+ PY_UINT64_T k1 = _le64toh(_Py_HashSecret.siphash.k1);
+ PY_UINT64_T b = (PY_UINT64_T)src_sz << 56;
+-const PY_UINT64_T *in = (PY_UINT64_T*)src;
++const PY_UINT8_T *in = (PY_UINT8_T*)src;
+ 
+ PY_UINT64_T v0 = k0 ^ 0x736f6d6570736575ULL;
+ PY_UINT64_T v1 = k1 ^ 0x646f72616e646f6dULL;
+@@ -381,12 +381,14 @@ siphash24(const void *src, Py_ssize_t sr
+ 
+ PY_UINT64_T t;
+ PY_UINT8_T *pt;
+-PY_UINT8_T *m;
++const PY_UINT8_T *m;
+ 
+ while (src_sz >= 8) {
+-PY_UINT64_T mi = _le64toh(*in);
+-in += 1;
+-src_sz -= 8;
++PY_UINT64_T mi;
++memcpy(, in, sizeof(mi));
++mi = _le64toh(mi);
++in += sizeof(mi);
++src_sz -= sizeof(mi);
+ v3 ^= mi;
+ DOUBLE_ROUND(v0,v1,v2,v3);
+ v0 ^= mi;
+@@ -394,7 +396,7 @@ siphash24(const void *src, Py_ssize_t sr
+ 
+ t = 0;
+ pt = (PY_UINT8_T *)
+-m = (PY_UINT8_T *)in;
++m = in;
+ switch (src_sz) {
+ case 7: pt[6] = m[6];
+ case 6: pt[5] = m[5];

diff --git a/dev-lang/python/files/python-3.6.5-hash-unaligned.patch 
b/dev-lang/python/files/python-3.6.5-hash-unaligned.patch
new file mode 100644
index 000..d096887cbfb
--- /dev/null
+++ b/dev-lang/python/files/python-3.6.5-hash-unaligned.patch
@@ -0,0 +1,42 @@
+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(, 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 *)
+-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 */

diff --git a/dev-lang/python/python-3.4.8.ebuild 
b/dev-lang/python/python-3.4.8.ebuild
index ad0ac881c61..4472bc6f61a 100644
--- a/dev-lang/python/python-3.4.8.ebuild
+++ b/dev-lang/python/python-3.4.8.ebuild
@@ -74,6 +74,7 @@ src_prepare() {
epatch "${FILESDIR}/${PN}-3.4.5-cross.patch"
epatch "${FILESDIR}/3.4-getentropy-linux.patch"
epatch "${FILESDIR}/3.6-disable-nis.patch"
+   epatch "${FILESDIR}/python-3.5.5-hash-unaligned.patch"
 
epatch_user
 

diff --git a/dev-lang/python/python-3.5.5.ebuild 
b/dev-lang/python/python-3.5.5.ebuild
index 972c02836e7..212e0bb7abc 100644
--- a/dev-lang/python/python-3.5.5.ebuild
+++ b/dev-lang/python/python-3.5.5.ebuild
@@ -75,6 +75,7 @@ src_prepare() {
epatch 

[gentoo-commits] repo/gentoo:master commit in: dev-lang/python/files/, dev-lang/python/

2018-04-16 Thread Aaron Bauman
commit: 0eb22623c413f8b9bc416fb68ad8a5d0c636fbd8
Author: Aaron Bauman  gentoo  org>
AuthorDate: Fri Apr 13 22:17:42 2018 +
Commit: Aaron Bauman  gentoo  org>
CommitDate: Mon Apr 16 16:13:59 2018 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0eb22623

dev-lang/python: compatibility patch for libressl

This patch fixes building with >=dev-libs/libressl-2.7. Additionally,
the slot and subslot modifier have been updated to ensure rebuilds are
properly triggered.

Package-Manager: Portage-2.3.28, Repoman-2.3.9
Closes: https://github.com/gentoo/gentoo/pull/7977

 .../python-3.6.5-libressl-compatibility.patch  | 114 +
 dev-lang/python/python-3.6.5.ebuild|   3 +-
 2 files changed, 116 insertions(+), 1 deletion(-)

diff --git a/dev-lang/python/files/python-3.6.5-libressl-compatibility.patch 
b/dev-lang/python/files/python-3.6.5-libressl-compatibility.patch
new file mode 100644
index 000..2f9e6a2bef2
--- /dev/null
+++ b/dev-lang/python/files/python-3.6.5-libressl-compatibility.patch
@@ -0,0 +1,114 @@
+From 8d89a385b71a2e4cce0fba0cfc8d91b63485edc5 Mon Sep 17 00:00:00 2001
+From: Christian Heimes 
+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 .
+(cherry picked from commit 4ca0739c9d97ac7cd45499e0d31be68dc659d0e1)
+
+Co-authored-by: Christian Heimes 
+---
+ 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 00..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 >= 0x1010L) && 
!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 >= 0x207fL
++#  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",
++ 

[gentoo-commits] repo/gentoo:master commit in: dev-lang/python/files/, dev-lang/python/

2018-04-16 Thread Aaron Bauman
commit: 9f295e6e7bc5fc6065d735e562ad51996260588f
Author: Aaron Bauman  gentoo  org>
AuthorDate: Fri Apr 13 22:44:30 2018 +
Commit: Aaron Bauman  gentoo  org>
CommitDate: Mon Apr 16 16:14:08 2018 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9f295e6e

dev-lang/python: compatibility patch for libressl

This patch fixes building with >=dev-libs/libressl-2.7. Additionally,
the slot and subslot modifier have been updated to ensure rebuilds are
properly triggered.

Bug: https://bugs.gentoo.org/651162
Package-Manager: Portage-2.3.28, Repoman-2.3.9
Closes: https://github.com/gentoo/gentoo/pull/7978

 .../python-3.5.5-libressl-compatibility.patch  | 69 ++
 dev-lang/python/python-3.5.5.ebuild|  3 +-
 2 files changed, 71 insertions(+), 1 deletion(-)

diff --git a/dev-lang/python/files/python-3.5.5-libressl-compatibility.patch 
b/dev-lang/python/files/python-3.5.5-libressl-compatibility.patch
new file mode 100644
index 000..67d57d0c138
--- /dev/null
+++ b/dev-lang/python/files/python-3.5.5-libressl-compatibility.patch
@@ -0,0 +1,69 @@
+# From 8d89a385b71a2e4cce0fba0cfc8d91b63485edc5 Mon Sep 17 00:00:00 2001
+# From: Christian Heimes 
+# 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 .
+# (cherry picked from commit 4ca0739c9d97ac7cd45499e0d31be68dc659d0e1)
+
+# Co-authored-by: Christian Heimes 
+# Patch modified by Aaron Bauman  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 >= 0x1010L) && 
!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 >= 0x207fL
++#  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 {

diff --git a/dev-lang/python/python-3.5.5.ebuild 
b/dev-lang/python/python-3.5.5.ebuild
index 51ef212e0f8..64ccaa26cb3 100644
--- a/dev-lang/python/python-3.5.5.ebuild
+++ b/dev-lang/python/python-3.5.5.ebuild
@@ -38,7 +38,7 @@ RDEPEND="app-arch/bzip2:0=
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:0= )
-   libressl? ( dev-libs/libressl:= )
+   libressl? ( dev-libs/libressl:0= )
)
tk? (
>=dev-lang/tcl-8.0:0=
@@ -74,6 +74,7 @@ src_prepare() {
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_user
 



[gentoo-commits] repo/gentoo:master commit in: dev-lang/python/files/, dev-lang/python/

2017-11-11 Thread Mike Gilbert
commit: 56760ce3a29757b6cf00b585a9a1d480fdaf312f
Author: Mike Gilbert  gentoo  org>
AuthorDate: Sat Nov 11 16:07:33 2017 +
Commit: Mike Gilbert  gentoo  org>
CommitDate: Sat Nov 11 16:07:46 2017 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=56760ce3

dev-lang/python: disable the nis module

This fails to build with glibc-2.26.

Bug: https://bugs.gentoo.org/631488
Package-Manager: Portage-2.3.13_p1, Repoman-2.3.3_p81

 dev-lang/python/files/2.7-disable-nis.patch |  21 ++
 dev-lang/python/files/3.6-disable-nis.patch |  21 ++
 dev-lang/python/python-2.7.14-r1.ebuild | 366 
 dev-lang/python/python-3.4.6-r1.ebuild  | 358 +++
 dev-lang/python/python-3.5.4-r1.ebuild  | 363 +++
 dev-lang/python/python-3.6.3-r1.ebuild  | 343 ++
 6 files changed, 1472 insertions(+)

diff --git a/dev-lang/python/files/2.7-disable-nis.patch 
b/dev-lang/python/files/2.7-disable-nis.patch
new file mode 100644
index 000..5a6cb3e403f
--- /dev/null
+++ b/dev-lang/python/files/2.7-disable-nis.patch
@@ -0,0 +1,21 @@
+--- a/setup.py
 b/setup.py
+@@ -1346,17 +1346,7 @@ class PyBuildExt(build_ext):
+ else:
+ missing.append('resource')
+ 
+-# Sun yellow pages. Some systems have the functions in libc.
+-if (host_platform not in ['cygwin', 'atheos', 'qnx6'] and
+-find_file('rpcsvc/yp_prot.h', inc_dirs, []) is not None):
+-if (self.compiler.find_library_file(lib_dirs, 'nsl')):
+-libs = ['nsl']
+-else:
+-libs = []
+-exts.append( Extension('nis', ['nismodule.c'],
+-   libraries = libs) )
+-else:
+-missing.append('nis')
++missing.append('nis')
+ else:
+ missing.extend(['nis', 'resource', 'termios'])
+ 

diff --git a/dev-lang/python/files/3.6-disable-nis.patch 
b/dev-lang/python/files/3.6-disable-nis.patch
new file mode 100644
index 000..4e81847b507
--- /dev/null
+++ b/dev-lang/python/files/3.6-disable-nis.patch
@@ -0,0 +1,21 @@
+--- a/setup.py
 b/setup.py
+@@ -1332,17 +1332,7 @@ class PyBuildExt(build_ext):
+ # Jeremy Hylton's rlimit interface
+ exts.append( Extension('resource', ['resource.c']) )
+ 
+-# Sun yellow pages. Some systems have the functions in libc.
+-if (host_platform not in ['cygwin', 'qnx6'] and
+-find_file('rpcsvc/yp_prot.h', inc_dirs, []) is not None):
+-if (self.compiler.find_library_file(lib_dirs, 'nsl')):
+-libs = ['nsl']
+-else:
+-libs = []
+-exts.append( Extension('nis', ['nismodule.c'],
+-   libraries = libs) )
+-else:
+-missing.append('nis')
++missing.append('nis')
+ else:
+ missing.extend(['nis', 'resource', 'termios'])
+ 

diff --git a/dev-lang/python/python-2.7.14-r1.ebuild 
b/dev-lang/python/python-2.7.14-r1.ebuild
new file mode 100644
index 000..25ce47e2271
--- /dev/null
+++ b/dev-lang/python/python-2.7.14-r1.ebuild
@@ -0,0 +1,366 @@
+# Copyright 1999-2017 Gentoo Foundation
+# 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 multiprocessing
+
+MY_P="Python-${PV}"
+PATCHSET_VERSION="2.7.14-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/~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 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+IUSE="-berkdb 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.2
+   sys-libs/db:5.1
+   sys-libs/db:5.0
+   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
+   ) )
+  

[gentoo-commits] repo/gentoo:master commit in: dev-lang/python/files/, dev-lang/python/

2017-11-01 Thread Mike Gilbert
commit: a67db7a3cb4295fa103b5d2879931f560f0a81bd
Author: Mike Gilbert  gentoo  org>
AuthorDate: Wed Nov  1 16:02:54 2017 +
Commit: Mike Gilbert  gentoo  org>
CommitDate: Wed Nov  1 16:03:13 2017 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a67db7a3

dev-lang/python: 3.4: disable getentropy() on linux

Closes: https://bugs.gentoo.org/635534
Package-Manager: Portage-2.3.13, Repoman-2.3.3_p80

 dev-lang/python/files/3.4-getentropy-linux.patch | 40 
 dev-lang/python/python-3.4.5.ebuild  |  1 +
 dev-lang/python/python-3.4.6.ebuild  |  1 +
 3 files changed, 42 insertions(+)

diff --git a/dev-lang/python/files/3.4-getentropy-linux.patch 
b/dev-lang/python/files/3.4-getentropy-linux.patch
new file mode 100644
index 000..9f12389bb25
--- /dev/null
+++ b/dev-lang/python/files/3.4-getentropy-linux.patch
@@ -0,0 +1,40 @@
+From 5635d44079e1bbd9c495951ede8d078e7b8d67d5 Mon Sep 17 00:00:00 2001
+From: Victor Stinner 
+Date: Mon, 9 Jan 2017 11:10:41 +0100
+Subject: [PATCH] Don't use getentropy() on Linux
+
+Issue #29188: Support glibc 2.24 on Linux: don't use getentropy() function but
+read from /dev/urandom to get random bytes, for example in os.urandom().  On
+Linux, getentropy() is implemented which getrandom() is blocking mode, whereas
+os.urandom() should not block.
+---
+ Python/random.c | 13 ++---
+ 1 file changed, 10 insertions(+), 3 deletions(-)
+
+diff --git a/Python/random.c b/Python/random.c
+index af3d0bd0d5..dc6400d3b8 100644
+--- a/Python/random.c
 b/Python/random.c
+@@ -67,9 +67,16 @@ win32_urandom(unsigned char *buffer, Py_ssize_t size, int 
raise)
+ return 0;
+ }
+ 
+-/* Issue #25003: Don' use getentropy() on Solaris (available since
+- * Solaris 11.3), it is blocking whereas os.urandom() should not block. */
+-#elif defined(HAVE_GETENTROPY) && !defined(sun)
++/* Issue #25003: Don't use getentropy() on Solaris (available since
++   Solaris 11.3), it is blocking whereas os.urandom() should not block.
++
++   Issue #29188: Don't use getentropy() on Linux since the glibc 2.24
++   implements it with the getrandom() syscall which can fail with ENOSYS,
++   and this error is not supported in py_getentropy() and getrandom() is 
called
++   with flags=0 which blocks until system urandom is initialized, which is not
++   the desired behaviour to seed the Python hash secret nor for os.urandom():
++   see the PEP 524 which was only implemented in Python 3.6. */
++#elif defined(HAVE_GETENTROPY) && !defined(sun) && !defined(linux)
+ #define PY_GETENTROPY 1
+ 
+ /* Fill buffer with size pseudo-random bytes generated by getentropy().
+-- 
+2.15.0.rc2
+

diff --git a/dev-lang/python/python-3.4.5.ebuild 
b/dev-lang/python/python-3.4.5.ebuild
index 20fadf8ea6f..29991dd53ae 100644
--- a/dev-lang/python/python-3.4.5.ebuild
+++ b/dev-lang/python/python-3.4.5.ebuild
@@ -72,6 +72,7 @@ src_prepare() {
EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
epatch "${FILESDIR}/${PN}-3.4.3-ncurses-pkg-config.patch"
epatch "${FILESDIR}/${PN}-3.4.5-cross.patch"
+   epatch "${FILESDIR}/3.4-getentropy-linux.patch"
 
epatch_user
 

diff --git a/dev-lang/python/python-3.4.6.ebuild 
b/dev-lang/python/python-3.4.6.ebuild
index 80dffce2af5..4e06debaade 100644
--- a/dev-lang/python/python-3.4.6.ebuild
+++ b/dev-lang/python/python-3.4.6.ebuild
@@ -72,6 +72,7 @@ src_prepare() {
EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
epatch "${FILESDIR}/${PN}-3.4.3-ncurses-pkg-config.patch"
epatch "${FILESDIR}/${PN}-3.4.5-cross.patch"
+   epatch "${FILESDIR}/3.4-getentropy-linux.patch"
 
epatch_user
 



[gentoo-commits] repo/gentoo:master commit in: dev-lang/python/files/, dev-lang/python/

2017-04-29 Thread Mike Gilbert
commit: 8833b6036e93d62259f75ab97b74f28d4314c071
Author: Mike Gilbert  gentoo  org>
AuthorDate: Sun Apr 30 00:17:52 2017 +
Commit: Mike Gilbert  gentoo  org>
CommitDate: Sun Apr 30 00:18:55 2017 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8833b603

dev-lang/python: backport test fix

Bug: https://bugs.gentoo.org/617028
Package-Manager: Portage-2.3.5_p31, Repoman-2.3.2_p61

 dev-lang/python/files/3.6.1-test_socket-AEAD.patch | 75 ++
 dev-lang/python/python-3.6.1-r1.ebuild |  1 +
 2 files changed, 76 insertions(+)

diff --git a/dev-lang/python/files/3.6.1-test_socket-AEAD.patch 
b/dev-lang/python/files/3.6.1-test_socket-AEAD.patch
new file mode 100644
index 000..426e3371441
--- /dev/null
+++ b/dev-lang/python/files/3.6.1-test_socket-AEAD.patch
@@ -0,0 +1,75 @@
+From 4ac01f0ff3e3c9c02f5cc8c55f2fbe4639808f5e Mon Sep 17 00:00:00 2001
+From: Mariatta 
+Date: Thu, 16 Mar 2017 20:58:42 -0700
+Subject: [PATCH] update test_socket AEAD test for kernel 4.9 and up (GH-133)
+ (GH-548)
+
+(cherry picked from commit 9764c151c51480a7ca6042b1ccd69be2620ff360)
+---
+ Lib/test/test_socket.py | 15 +++
+ 1 file changed, 7 insertions(+), 8 deletions(-)
+
+diff --git a/Lib/test/test_socket.py b/Lib/test/test_socket.py
+index 5315d475df..1508f20c9f 100644
+--- a/Lib/test/test_socket.py
 b/Lib/test/test_socket.py
+@@ -5479,7 +5479,7 @@ class LinuxKernelCryptoAPI(unittest.TestCase):
+ self.assertEqual(len(dec), msglen * multiplier)
+ self.assertEqual(dec, msg * multiplier)
+ 
+-@support.requires_linux_version(4, 3)  # see test_aes_cbc
++@support.requires_linux_version(4, 9)  # see issue29324
+ def test_aead_aes_gcm(self):
+ key = bytes.fromhex('c939cc13397c1d37de6ae0e1cb7c423c')
+ iv = bytes.fromhex('b3d8cc017cbb89b39e0f67e2')
+@@ -5502,8 +5502,7 @@ class LinuxKernelCryptoAPI(unittest.TestCase):
+ op.sendmsg_afalg(op=socket.ALG_OP_ENCRYPT, iv=iv,
+  assoclen=assoclen, flags=socket.MSG_MORE)
+ op.sendall(assoc, socket.MSG_MORE)
+-op.sendall(plain, socket.MSG_MORE)
+-op.sendall(b'\x00' * taglen)
++op.sendall(plain)
+ res = op.recv(assoclen + len(plain) + taglen)
+ self.assertEqual(expected_ct, res[assoclen:-taglen])
+ self.assertEqual(expected_tag, res[-taglen:])
+@@ -5511,7 +5510,7 @@ class LinuxKernelCryptoAPI(unittest.TestCase):
+ # now with msg
+ op, _ = algo.accept()
+ with op:
+-msg = assoc + plain + b'\x00' * taglen
++msg = assoc + plain
+ op.sendmsg_afalg([msg], op=socket.ALG_OP_ENCRYPT, iv=iv,
+  assoclen=assoclen)
+ res = op.recv(assoclen + len(plain) + taglen)
+@@ -5522,7 +5521,7 @@ class LinuxKernelCryptoAPI(unittest.TestCase):
+ pack_uint32 = struct.Struct('I').pack
+ op, _ = algo.accept()
+ with op:
+-msg = assoc + plain + b'\x00' * taglen
++msg = assoc + plain
+ op.sendmsg(
+ [msg],
+ ([socket.SOL_ALG, socket.ALG_SET_OP, 
pack_uint32(socket.ALG_OP_ENCRYPT)],
+@@ -5530,7 +5529,7 @@ class LinuxKernelCryptoAPI(unittest.TestCase):
+  [socket.SOL_ALG, socket.ALG_SET_AEAD_ASSOCLEN, 
pack_uint32(assoclen)],
+ )
+ )
+-res = op.recv(len(msg))
++res = op.recv(len(msg) + taglen)
+ self.assertEqual(expected_ct, res[assoclen:-taglen])
+ self.assertEqual(expected_tag, res[-taglen:])
+ 
+@@ -5540,8 +5539,8 @@ class LinuxKernelCryptoAPI(unittest.TestCase):
+ msg = assoc + expected_ct + expected_tag
+ op.sendmsg_afalg([msg], op=socket.ALG_OP_DECRYPT, iv=iv,
+  assoclen=assoclen)
+-res = op.recv(len(msg))
+-self.assertEqual(plain, res[assoclen:-taglen])
++res = op.recv(len(msg) - taglen)
++self.assertEqual(plain, res[assoclen:])
+ 
+ @support.requires_linux_version(4, 3)  # see test_aes_cbc
+ def test_drbg_pr_sha256(self):
+-- 
+2.12.2
+

diff --git a/dev-lang/python/python-3.6.1-r1.ebuild 
b/dev-lang/python/python-3.6.1-r1.ebuild
index 979354ebcf7..eef0e26c7dc 100644
--- a/dev-lang/python/python-3.6.1-r1.ebuild
+++ b/dev-lang/python/python-3.6.1-r1.ebuild
@@ -64,6 +64,7 @@ src_prepare() {
 
EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
epatch "${FILESDIR}/${PN}-3.5-distutils-OO-build.patch"
+   epatch "${FILESDIR}/3.6.1-test_socket-AEAD.patch"
 
epatch_user
 



[gentoo-commits] repo/gentoo:master commit in: dev-lang/python/files/, dev-lang/python/

2016-09-10 Thread Mike Gilbert
commit: 115041505b9b6b2c5902e385bf0726e8e3d47575
Author: Gerhard Bräunlich  gmx  net>
AuthorDate: Mon Sep  5 13:23:33 2016 +
Commit: Mike Gilbert  gentoo  org>
CommitDate: Sat Sep 10 14:01:29 2016 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=11504150

dev-lang/python: Fix cross-compilation support for 3.4.5

Gentoo-bug: https://bugs.gentoo.org/show_bug.cgi?id=590530
Package-Manager: portage-2.2.28
Closes: https://github.com/gentoo/gentoo/pull/2247

 dev-lang/python/files/python-3.4.5-cross.patch | 11 +++
 dev-lang/python/python-3.4.5.ebuild|  1 +
 2 files changed, 12 insertions(+)

diff --git a/dev-lang/python/files/python-3.4.5-cross.patch 
b/dev-lang/python/files/python-3.4.5-cross.patch
new file mode 100644
index ..7a016ff
--- /dev/null
+++ b/dev-lang/python/files/python-3.4.5-cross.patch
@@ -0,0 +1,11 @@
+--- a/Lib/distutils/command/build_ext.py
 b/Lib/distutils/command/build_ext.py
+@@ -729,7 +729,7 @@
+ if sysconfig.get_config_var('Py_ENABLE_SHARED'):
+ pythonlib = 'python{}.{}{}'.format(
+ sys.hexversion >> 24, (sys.hexversion >> 16) & 0xff,
+-sys.abiflags)
++sysconfig.get_config_var('ABIFLAGS'))
+ return ext.libraries + [pythonlib]
+ else:
+ return ext.libraries

diff --git a/dev-lang/python/python-3.4.5.ebuild 
b/dev-lang/python/python-3.4.5.ebuild
index b26c787..11359e7 100644
--- a/dev-lang/python/python-3.4.5.ebuild
+++ b/dev-lang/python/python-3.4.5.ebuild
@@ -72,6 +72,7 @@ src_prepare() {
 
EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
epatch "${FILESDIR}/${PN}-3.4.3-ncurses-pkg-config.patch"
+   epatch "${FILESDIR}/${PN}-3.4.5-cross.patch"
 
epatch_user
 



[gentoo-commits] repo/gentoo:master commit in: dev-lang/python/files/, dev-lang/python/

2016-05-11 Thread Mike Gilbert
commit: 3f74e0196b4719fb8f10118c80de15fa823797a6
Author: Mike Gilbert  gentoo  org>
AuthorDate: Thu May 12 00:58:45 2016 +
Commit: Mike Gilbert  gentoo  org>
CommitDate: Thu May 12 00:58:45 2016 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3f74e019

dev-lang/python: fix cross-compiles for 3.5.1

Bug: https://bugs.gentoo.org/581304

Package-Manager: portage-2.2.28_p106

 dev-lang/python/files/3.5.1-cross-compile.patch | 75 +
 dev-lang/python/python-3.5.1-r2.ebuild  |  7 +--
 2 files changed, 76 insertions(+), 6 deletions(-)

diff --git a/dev-lang/python/files/3.5.1-cross-compile.patch 
b/dev-lang/python/files/3.5.1-cross-compile.patch
new file mode 100644
index 000..25a518b
--- /dev/null
+++ b/dev-lang/python/files/3.5.1-cross-compile.patch
@@ -0,0 +1,75 @@
+# HG changeset patch
+# User Martin Panter 
+# Date 1461373124 0
+# Node ID 66e40df31faca467937c7b9d5d2e825471f97822
+# Parent  a246047734b3496a7dc4ebaf1f0232dadf22eab6
+Issue #22359: Disable running cross-compiled _freeze_importlib and pgen
+
+Patch by Xavier de Gaye.
+
+diff --git a/Makefile.pre.in b/Makefile.pre.in
+--- a/Makefile.pre.in
 b/Makefile.pre.in
+@@ -221,6 +221,7 @@ LIBOBJS=   @LIBOBJS@
+ PYTHON=   python$(EXE)
+ BUILDPYTHON=  python$(BUILDEXE)
+ 
++cross_compiling=@cross_compiling@
+ PYTHON_FOR_BUILD=@PYTHON_FOR_BUILD@
+ _PYTHON_HOST_PLATFORM=@_PYTHON_HOST_PLATFORM@
+ BUILD_GNU_TYPE=   @build@
+@@ -718,12 +719,16 @@ Programs/_freeze_importlib: Programs/_fr
+   $(LINKCC) $(PY_LDFLAGS) -o $@ Programs/_freeze_importlib.o 
$(LIBRARY_OBJS_OMIT_FROZEN) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
+ 
+ Python/importlib_external.h: $(srcdir)/Lib/importlib/_bootstrap_external.py 
Programs/_freeze_importlib
+-  ./Programs/_freeze_importlib \
+-  $(srcdir)/Lib/importlib/_bootstrap_external.py 
Python/importlib_external.h
++  if test "$(cross_compiling)" != "yes"; then \
++  ./Programs/_freeze_importlib \
++  $(srcdir)/Lib/importlib/_bootstrap_external.py 
Python/importlib_external.h; \
++  fi
+ 
+ Python/importlib.h: $(srcdir)/Lib/importlib/_bootstrap.py 
Programs/_freeze_importlib
+-  ./Programs/_freeze_importlib \
+-  $(srcdir)/Lib/importlib/_bootstrap.py Python/importlib.h
++  if test "$(cross_compiling)" != "yes"; then \
++  ./Programs/_freeze_importlib \
++  $(srcdir)/Lib/importlib/_bootstrap.py Python/importlib.h; \
++  fi
+ 
+ 
+ 
+@@ -784,10 +789,18 @@ Python/sysmodule.o: $(srcdir)/Python/sys
+ $(IO_OBJS): $(IO_H)
+ 
+ $(GRAMMAR_H): $(GRAMMAR_INPUT) $(PGEN)
+-  @$(MKDIR_P) Include
+-  $(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C)
++  @$(MKDIR_P) Include
++  if test "$(cross_compiling)" != "yes"; then \
++  $(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C); \
++  else \
++  cp $(srcdir)/Include/graminit.h $(GRAMMAR_H); \
++  fi
+ $(GRAMMAR_C): $(GRAMMAR_H)
+-  touch $(GRAMMAR_C)
++  if test "$(cross_compiling)" != "yes"; then \
++  touch $(GRAMMAR_C); \
++  else \
++  cp $(srcdir)/Python/graminit.c $(GRAMMAR_C); \
++  fi
+ 
+ $(PGEN): $(PGENOBJS)
+   $(CC) $(OPT) $(PY_LDFLAGS) $(PGENOBJS) $(LIBS) -o $(PGEN)
+diff --git a/configure.ac b/configure.ac
+--- a/configure.ac
 b/configure.ac
+@@ -49,6 +49,7 @@ fi
+ AC_CONFIG_SRCDIR([Include/object.h])
+ AC_CONFIG_HEADER(pyconfig.h)
+ 
++AC_SUBST(cross_compiling)
+ AC_CANONICAL_HOST
+ AC_SUBST(build)
+ AC_SUBST(host)
+

diff --git a/dev-lang/python/python-3.5.1-r2.ebuild 
b/dev-lang/python/python-3.5.1-r2.ebuild
index 0f2fa79..480c6ad 100644
--- a/dev-lang/python/python-3.5.1-r2.ebuild
+++ b/dev-lang/python/python-3.5.1-r2.ebuild
@@ -71,7 +71,7 @@ src_prepare() {
 
EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
epatch "${FILESDIR}/${PN}-3.4.3-ncurses-pkg-config.patch"
-   epatch "${FILESDIR}/3.5-secondary-targets.patch"
+   epatch "${FILESDIR}/3.5.1-cross-compile.patch"
 
epatch_user
 
@@ -87,8 +87,6 @@ src_prepare() {
Modules/Setup.dist \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
 
-   #sed -i -e 's/\$(GRAMMAR_H): \$(GRAMMAR_INPUT) \$(PGEN)/$(GRAMMAR_H): 
\$(GRAMMAR_INPUT)/' Makefile.pre.in || die
-
eautoreconf
 }
 
@@ -174,9 +172,6 @@ src_configure() {
 }
 
 src_compile() {
-   # Avoid regenerating these for cross-compiles
-   touch Include/graminit.h Python/graminit.c Python/importlib.h 
Python/importlib_external.h || die
-
cd "${BUILD_DIR}" || die
 
emake CPPFLAGS= CFLAGS= LDFLAGS=



[gentoo-commits] repo/gentoo:master commit in: dev-lang/python/files/, dev-lang/python/

2015-11-19 Thread Mike Frysinger
commit: bc2ac53cf53217339edc0b1f1f2009453d2b043b
Author: Mike Frysinger  gentoo  org>
AuthorDate: Thu Nov 19 19:31:33 2015 +
Commit: Mike Frysinger  gentoo  org>
CommitDate: Thu Nov 19 19:40:49 2015 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bc2ac53c

dev-lang/python: fix system libffi handling

 .../python/files/python-2.7.10-system-libffi.patch | 36 ++
 dev-lang/python/python-2.7.10-r3.ebuild|  1 +
 dev-lang/python/python-2.7.10-r4.ebuild|  1 +
 3 files changed, 38 insertions(+)

diff --git a/dev-lang/python/files/python-2.7.10-system-libffi.patch 
b/dev-lang/python/files/python-2.7.10-system-libffi.patch
new file mode 100644
index 000..0b49b79
--- /dev/null
+++ b/dev-lang/python/files/python-2.7.10-system-libffi.patch
@@ -0,0 +1,36 @@
+make sure we respect the system libffi setting in our build config.
+the compiler probing is fragile and can break in some situations.
+
+--- a/setup.py
 b/setup.py
+@@ -2069,7 +2069,7 @@ class PyBuildExt(build_ext):
+ return True
+ 
+ def detect_ctypes(self, inc_dirs, lib_dirs):
+-self.use_system_libffi = False
++self.use_system_libffi = ('--with-system-ffi' in 
sysconfig.get_config_var("CONFIG_ARGS"))
+ include_dirs = []
+ extra_compile_args = []
+ extra_link_args = []
+@@ -2113,7 +2113,7 @@ class PyBuildExt(build_ext):
+  sources=['_ctypes/_ctypes_test.c'])
+ self.extensions.extend([ext, ext_test])
+ 
+-if not '--with-system-ffi' in sysconfig.get_config_var("CONFIG_ARGS"):
++if not self.use_system_libffi:
+ return
+ 
+ if host_platform == 'darwin':
+@@ -2141,10 +2141,10 @@ class PyBuildExt(build_ext):
+ ffi_lib = lib_name
+ break
+ 
+-if ffi_inc and ffi_lib:
++if ffi_inc:
+ ext.include_dirs.extend(ffi_inc)
++if ffi_lib:
+ ext.libraries.append(ffi_lib)
+-self.use_system_libffi = True
+ 
+ 
+ class PyBuildInstall(install):

diff --git a/dev-lang/python/python-2.7.10-r3.ebuild 
b/dev-lang/python/python-2.7.10-r3.ebuild
index 0a4bd58..f0723cc 100644
--- a/dev-lang/python/python-2.7.10-r3.ebuild
+++ b/dev-lang/python/python-2.7.10-r3.ebuild
@@ -101,6 +101,7 @@ src_prepare() {
epatch "${FILESDIR}/python-2.7.5-nonfatal-compileall.patch"
epatch "${FILESDIR}/python-2.7.9-ncurses-pkg-config.patch"
epatch "${FILESDIR}/python-2.7.10-cross-compile-warn-test.patch"
+   epatch "${FILESDIR}/python-2.7.10-system-libffi.patch"
 
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
Lib/distutils/command/install.py \

diff --git a/dev-lang/python/python-2.7.10-r4.ebuild 
b/dev-lang/python/python-2.7.10-r4.ebuild
index 2158a54..f947f61 100644
--- a/dev-lang/python/python-2.7.10-r4.ebuild
+++ b/dev-lang/python/python-2.7.10-r4.ebuild
@@ -102,6 +102,7 @@ src_prepare() {
epatch "${FILESDIR}/python-2.7.5-nonfatal-compileall.patch"
epatch "${FILESDIR}/python-2.7.9-ncurses-pkg-config.patch"
epatch "${FILESDIR}/python-2.7.10-cross-compile-warn-test.patch"
+   epatch "${FILESDIR}/python-2.7.10-system-libffi.patch"
 
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
Lib/distutils/command/install.py \



[gentoo-commits] repo/gentoo:master commit in: dev-lang/python/files/, dev-lang/python/

2015-10-13 Thread Mike Frysinger
commit: d3f5509e59f54cf3f9b27886aa508ba3e2c6e0b0
Author: Mike Frysinger  gentoo  org>
AuthorDate: Wed Oct 14 04:48:13 2015 +
Commit: Mike Frysinger  gentoo  org>
CommitDate: Wed Oct 14 04:48:42 2015 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d3f5509e

dev-lang/python: fix cross-compiling checks w/-Wformat

 .../python-2.7.10-cross-compile-warn-test.patch| 24 ++
 dev-lang/python/python-2.7.10-r2.ebuild|  1 +
 2 files changed, 25 insertions(+)

diff --git a/dev-lang/python/files/python-2.7.10-cross-compile-warn-test.patch 
b/dev-lang/python/files/python-2.7.10-cross-compile-warn-test.patch
new file mode 100644
index 000..38433de
--- /dev/null
+++ b/dev-lang/python/files/python-2.7.10-cross-compile-warn-test.patch
@@ -0,0 +1,24 @@
+https://bugs.python.org/issue25397
+
+improve the cross-compile tests to be more focused
+
+--- a/configure.ac
 b/configure.ac
+@@ -1339,7 +1339,7 @@ if test "$GCC" = "yes"
+ then
+   AC_MSG_CHECKING(whether gcc supports ParseTuple __format__)
+   save_CFLAGS=$CFLAGS
+-  CFLAGS="$CFLAGS -Werror -Wformat"
++  CFLAGS="$CFLAGS -Werror=format"
+   AC_COMPILE_IFELSE([
+ AC_LANG_PROGRAM([[void f(char*,...)__attribute((format(PyArg_ParseTuple, 
1, 2)));]], [[]])
+   ],[
+@@ -4458,7 +4458,7 @@ then
+   [ac_cv_have_long_long_format="cross -- assuming no"
+if test x$GCC = xyes; then
+ save_CFLAGS=$CFLAGS
+-CFLAGS="$CFLAGS -Werror -Wformat"
++CFLAGS="$CFLAGS -Werror=format"
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+ #include 
+ #include 

diff --git a/dev-lang/python/python-2.7.10-r2.ebuild 
b/dev-lang/python/python-2.7.10-r2.ebuild
index a516f70..1b5a219 100644
--- a/dev-lang/python/python-2.7.10-r2.ebuild
+++ b/dev-lang/python/python-2.7.10-r2.ebuild
@@ -100,6 +100,7 @@ src_prepare() {
# Fix for cross-compiling.
epatch "${FILESDIR}/python-2.7.5-nonfatal-compileall.patch"
epatch "${FILESDIR}/python-2.7.9-ncurses-pkg-config.patch"
+   epatch "${FILESDIR}/python-2.7.10-cross-compile-warn-test.patch"
 
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
Lib/distutils/command/install.py \



[gentoo-commits] repo/gentoo:master commit in: dev-lang/python/files/, dev-lang/python/

2015-09-20 Thread Julian Ospald
commit: 9c9eff93fe71c5b446df8367d69c407d62811b05
Author: Julian Ospald  gentoo  org>
AuthorDate: Sun Sep 20 12:30:24 2015 +
Commit: Julian Ospald  gentoo  org>
CommitDate: Sun Sep 20 12:46:56 2015 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9c9eff93

dev-lang/python: add libressl support

This only affects ~arch or unkeyworded ebuilds.

 dev-lang/python/files/python-3.3-libressl.patch | 197 ++
 dev-lang/python/python-2.7.10-r2.ebuild | 348 
 dev-lang/python/python-3.3.5-r2.ebuild  | 330 ++
 dev-lang/python/python-3.4.3-r2.ebuild  | 309 +
 dev-lang/python/python-3.5.0-r1.ebuild  | 316 +
 5 files changed, 1500 insertions(+)

diff --git a/dev-lang/python/files/python-3.3-libressl.patch 
b/dev-lang/python/files/python-3.3-libressl.patch
new file mode 100644
index 000..38119c5
--- /dev/null
+++ b/dev-lang/python/files/python-3.3-libressl.patch
@@ -0,0 +1,197 @@
+From eed8d3b553e00e04c1f97c87ea02723630fb15a4 Mon Sep 17 00:00:00 2001
+From: hasufell 
+Date: Sun, 20 Sep 2015 14:25:43 +0200
+Subject: [PATCH] Backport upstream libressl patches to python-3.3
+
+https://hg.python.org/cpython/raw-rev/7f82f50fdad0
+https://hg.python.org/cpython/raw-rev/4dac45f88d45
+---
+ Lib/ssl.py   |  7 ++-
+ Lib/test/test_ssl.py | 21 +
+ Modules/_ssl.c   |  4 
+ configure| 42 ++
+ configure.ac |  3 +++
+ pyconfig.h.in|  3 +++
+ 6 files changed, 71 insertions(+), 9 deletions(-)
+
+diff --git a/Lib/ssl.py b/Lib/ssl.py
+index cd8d6b4..445ae87 100644
+--- a/Lib/ssl.py
 b/Lib/ssl.py
+@@ -78,7 +78,12 @@ try:
+ from _ssl import OP_SINGLE_ECDH_USE
+ except ImportError:
+ pass
+-from _ssl import RAND_status, RAND_egd, RAND_add, RAND_bytes, 
RAND_pseudo_bytes
++from _ssl import RAND_status, RAND_add, RAND_bytes, RAND_pseudo_bytes
++try:
++from _ssl import RAND_egd
++except ImportError:
++# LibreSSL does not provide RAND_egd
++pass
+ from _ssl import (
+ SSL_ERROR_ZERO_RETURN,
+ SSL_ERROR_WANT_READ,
+diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
+index 9fc6027..879f791 100644
+--- a/Lib/test/test_ssl.py
 b/Lib/test/test_ssl.py
+@@ -130,8 +130,9 @@ class BasicSocketTests(unittest.TestCase):
+ self.assertRaises(ValueError, ssl.RAND_bytes, -5)
+ self.assertRaises(ValueError, ssl.RAND_pseudo_bytes, -5)
+ 
+-self.assertRaises(TypeError, ssl.RAND_egd, 1)
+-self.assertRaises(TypeError, ssl.RAND_egd, 'foo', 1)
++if hasattr(ssl, 'RAND_egd'):
++self.assertRaises(TypeError, ssl.RAND_egd, 1)
++self.assertRaises(TypeError, ssl.RAND_egd, 'foo', 1)
+ ssl.RAND_add("this is a random string", 75.0)
+ 
+ @unittest.skipUnless(os.name == 'posix', 'requires posix')
+@@ -250,11 +251,11 @@ class BasicSocketTests(unittest.TestCase):
+ # Some sanity checks follow
+ # >= 0.9
+ self.assertGreaterEqual(n, 0x90)
+-# < 2.0
+-self.assertLess(n, 0x2000)
++# < 3.0
++self.assertLess(n, 0x3000)
+ major, minor, fix, patch, status = t
+ self.assertGreaterEqual(major, 0)
+-self.assertLess(major, 2)
++self.assertLess(major, 3)
+ self.assertGreaterEqual(minor, 0)
+ self.assertLess(minor, 256)
+ self.assertGreaterEqual(fix, 0)
+@@ -263,9 +264,13 @@ class BasicSocketTests(unittest.TestCase):
+ self.assertLessEqual(patch, 26)
+ self.assertGreaterEqual(status, 0)
+ self.assertLessEqual(status, 15)
+-# Version string as returned by OpenSSL, the format might change
+-self.assertTrue(s.startswith("OpenSSL {:d}.{:d}.{:d}".format(major, 
minor, fix)),
+-(s, t))
++# Version string as returned by {Open,Libre}SSL, the format might 
change
++if "LibreSSL" in s:
++self.assertTrue(s.startswith("LibreSSL {:d}.{:d}".format(major, 
minor)),
++(s, t))
++else:
++self.assertTrue(s.startswith("OpenSSL 
{:d}.{:d}.{:d}".format(major, minor, fix)),
++(s, t))
+ 
+ @support.cpython_only
+ def test_refcycle(self):
+diff --git a/Modules/_ssl.c b/Modules/_ssl.c
+index 499e8ba..cb151ba 100644
+--- a/Modules/_ssl.c
 b/Modules/_ssl.c
+@@ -2559,6 +2559,7 @@ Returns 1 if the OpenSSL PRNG has been seeded with 
enough data and 0 if not.\n\
+ It is necessary to seed the PRNG with RAND_add() on some platforms before\n\
+ using the ssl() function.");
+ 
++#ifdef HAVE_RAND_EGD
+ static PyObject *
+ PySSL_RAND_egd(PyObject *self, PyObject *args)
+ {
+@@ -2586,6 +2587,7 @@ PyDoc_STRVAR(PySSL_RAND_egd_doc,
+ Queries the entropy gather daemon (EGD) on the socket named by 'path'.\n\
+ Returns number of bytes 

[gentoo-commits] repo/gentoo:master commit in: dev-lang/python/files/, dev-lang/python/

2015-09-19 Thread Mike Gilbert
commit: c0d97a27e1a8ab3e695624d222c46bc80a6de618
Author: Mike Gilbert  gentoo  org>
AuthorDate: Sun Sep 20 02:07:40 2015 +
Commit: Mike Gilbert  gentoo  org>
CommitDate: Sun Sep 20 02:07:53 2015 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c0d97a27

dev-lang/python: Fix cross-compiling for 3.5

Package-Manager: portage-2.2.20_p169_p6532

 dev-lang/python/files/3.5-secondary-targets.patch | 19 +++
 dev-lang/python/python-3.5.0.ebuild   |  4 
 2 files changed, 23 insertions(+)

diff --git a/dev-lang/python/files/3.5-secondary-targets.patch 
b/dev-lang/python/files/3.5-secondary-targets.patch
new file mode 100644
index 000..eb3b0c7
--- /dev/null
+++ b/dev-lang/python/files/3.5-secondary-targets.patch
@@ -0,0 +1,19 @@
+Mark all targets as "secondary"
+
+This allows make to avoid rebuilding unnecessary intermediate files, which
+is useful when cross-compiling.
+
+See Parser/pgen and Programs/_freeze_importlib in Makefile.pre.in.
+
+diff --git a/Makefile.pre.in b/Makefile.pre.in
+--- a/Makefile.pre.in
 b/Makefile.pre.in
+@@ -1672,6 +1672,8 @@
+ .PHONY: smelly funny patchcheck touch altmaninstall commoninstall
+ .PHONY: gdbhooks
+ 
++.SECONDARY:
++
+ # IF YOU PUT ANYTHING HERE IT WILL GO AWAY
+ # Local Variables:
+ # mode: makefile

diff --git a/dev-lang/python/python-3.5.0.ebuild 
b/dev-lang/python/python-3.5.0.ebuild
index ca56f88..1dcd769 100644
--- a/dev-lang/python/python-3.5.0.ebuild
+++ b/dev-lang/python/python-3.5.0.ebuild
@@ -66,6 +66,7 @@ src_prepare() {
 
EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
epatch "${FILESDIR}/${PN}-3.4.3-ncurses-pkg-config.patch"
+   epatch "${FILESDIR}/3.5-secondary-targets.patch"
 
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
configure.ac \
@@ -171,6 +172,9 @@ src_configure() {
 }
 
 src_compile() {
+   # Avoid regenerating these for cross-compiles
+   touch Include/graminit.h Python/graminit.c Python/importlib.h 
Python/importlib_external.h || die
+
cd "${BUILD_DIR}" || die
 
emake CPPFLAGS= CFLAGS= LDFLAGS=



[gentoo-commits] repo/gentoo:master commit in: dev-lang/python/files/, dev-lang/python/

2015-08-09 Thread Michał Górny
commit: 0a51358f4b1f72103ffe84d7e2db1de922bbac9f
Author: Michał Górny mgorny AT gentoo DOT org
AuthorDate: Sun Aug  9 09:07:44 2015 +
Commit: Michał Górny mgorny AT gentoo DOT org
CommitDate: Sun Aug  9 09:07:44 2015 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0a51358f

dev-lang/python: Move 2.6 to ::python

Package-Manager: portage-2.2.20

 dev-lang/python/Manifest |   2 -
 dev-lang/python/files/python-2.5-tcl86.patch |  11 -
 dev-lang/python/python-2.6.9.ebuild  | 371 ---
 3 files changed, 384 deletions(-)

diff --git a/dev-lang/python/Manifest b/dev-lang/python/Manifest
index 8b86bf1..0b61411 100644
--- a/dev-lang/python/Manifest
+++ b/dev-lang/python/Manifest
@@ -1,4 +1,3 @@
-DIST Python-2.6.9.tgz 13285074 SHA256 
7277b1285d8a82f374ef6ebaac85b003266f7939b3f2a24a3af52f9523ac94db SHA512 
7ff28f41f7dc12e1504a781060520440bbf74b96c5df269ca5218f5910eae63898b94fdd398f549217912689814bc5275bb3b5ec4cc892f20bb468fc1b041c0c
 WHIRLPOOL 
909f612286314ea004eef328a58d7b0aecffc1a524f6b28ef0f299413055c1f7ec4e2d21a44d1beeaa8e11aabd68510cf9c5840cb5394176cbc8f2e5c147
 DIST Python-2.7.10.tar.xz 12250696 SHA256 
1cd3730781b91caf0fa1c4d472dc29274186480161a150294c42ce9b5c5effc0 SHA512 
67615a6defbcda062f15a09f9dd3b9441afd01a8cc3255e5bc45b925378a0ddc38d468b7701176f6cc153ec52a4f21671b433780d9bde343aa9b9c1b2ae29feb
 WHIRLPOOL 
3a9dcfc55b107dc55ad0ae93fb24a11eab7d4d9b4cfbe6b6830a090b6e5f71bb2ac91526b89c6f3e4f2610fa1a2cc4e82b58a83c599aa71f94894c74181b504b
 DIST Python-2.7.9.tar.xz 12164712 SHA256 
90d27e14ea7e03570026850e2e50ba71ad20b7eb31035aada1cf3def8f8d4916 SHA512 
6939182463272a6bb9da0e327bfb9efc574a87820f2ae39eaf02d9fae053dbe0004330e916e6828becfef94cbe294acb0a88a600f8930b99b94fcfc4efc44ff4
 WHIRLPOOL 
993313811eddef1820e6f3ee0e02848c73bdfce65b85ab0e360603e726c31e1cc9dc6c128e3fe086cafc94164d2d628ff5d859e13b90648da6352c35ddeedcd4
 DIST Python-3.3.5.tar.xz 12116308 SHA256 
abe99b484434503d8b23be0f243ec27139e743a4798cd71c1dce3cf40e63b6e5 SHA512 
562ebd85291f29ff18d37f05682763fc45aa9d070688006f4ef5c89392a48022357c3ca9ee1d795e9e863bdef413e6bab77b8d65581d374a76dbe7cacec65550
 WHIRLPOOL 
f4b6010d32b28b7bb038cbb7c5f98d325cc4253fd1be9a0a1089ed6fd7dd414c5169931d21ef819137d5c1084517a650828f260cf2a1d8ce871bc67aeef3fff8
@@ -6,7 +5,6 @@ DIST Python-3.4.0.tar.xz 14084912 SHA256 
f13686c0a2d45e7146759e9d5d1cbd8097a0606
 DIST Python-3.4.1.tar.xz 14125788 SHA256 
c595a163104399041fcbe1c5c04db4c1da94f917b82ce89e8944c8edff7aedc4 SHA512 
09b6390c07334974f189fb1c90bc2310898aef76661b1cecaa2b4d50001fa3df0fa0c63d3471a5a0dc7f9e08dd559d38d3bc45a6c05a816d8b2ed6b2a20e5fa9
 WHIRLPOOL 
c8f879bb5d42a759b0804aa58d90330d9be6f4c29652ec40f07ca7da31510eadbd6b4eceb2b213af9a1af031c8321fc25faccae77763a31814eb0569831b8bfd
 DIST Python-3.4.2.tar.xz 14223804 SHA256 
1c6d9682d145c056537e477bbfa060ce727f9edd38df1827e0f970dcf04b2def SHA512 
12de5309cfaf91f5292efd660b5abe31581b902fdcc302317b597ffa74c9f5ec14ec1dd55994bcccd50d40473ae344ae19bf917ccfb8ab4906c8777d6ea95b17
 WHIRLPOOL 
358a2ca605676a7b6decf7cc9edfcf5edd6e15eb7b08e48fbf5f78422d3470a1233830867e3986a6bd564e105726298d3664ad04b90a233f90a46d6b81d8d60f
 DIST Python-3.4.3.tar.xz 14421964 SHA256 
b5b3963533768d5fc325a4d7a6bd6f666726002d696f1d399ec06b043ea996b8 SHA512 
55b2d7c07da8ad3a3971b4687da2e45809c6f1474732e93b0432f121f287d0b63ad8a9bf381987ea70f47a03d9474c3e55b7d86d14800bf7ef29b3324d8d35b9
 WHIRLPOOL 
f851dedc6a1ea35adec83d60784a5fbcd9dfcf6aa8858bb5ada114fa2ff55add1fbf323ab94ec039ecdedb26d59e8f2e6e171cd9fc1ed41ad9cfa434a555cff3
-DIST python-gentoo-patches-2.6.9-0.tar.xz 17532 SHA256 
6ff9448c3a8412f9624363ec6f321b4e7f098aff350a82fde74f82adfbb0cae3 SHA512 
e6d134200df8320fe137f0a282b7564aba02b10eab2d4585fa82de5b4740223ddeac7a5ea922a40cea8496a1a706b6787310eae45978a3e69342bb80a7670a39
 WHIRLPOOL 
09b38d10f9415f41205dec2c9e9df5f0687e23f791d31ce1127d96bd489c9fc7825912096b37329d62e66d8c99778ad1ffcbdbd4a2b77b5305f75ea7c28fe15d
 DIST python-gentoo-patches-2.7.10-0.tar.xz 12892 SHA256 
c9a838bd62ae50cc385da23a837acfd05f2b74e4f086c9c76eb4d3aa5366ef6d SHA512 
5f100944635e360691dc0a2b340a906646c4ae9ee558246ddffc56e8b15d389f25f1fbdc1db4cc08e7d29560d04d66b058b3904902899d58ecae8c408ebdf056
 WHIRLPOOL 
f69e9a518bb7ee50c1b262a21e70e1e2443f859ee6d2f4fa84421120dbd054a06ce8dd6cfea8512cbc64bce806322b879c25c561d5eb05e1ba6cc15035b373a9
 DIST python-gentoo-patches-2.7.9-0.tar.xz 14020 SHA256 
d1ae164ab14e265ff63d6a724e0c2b5519bdb790fe8b7796c2124a30cecc8ef8 SHA512 
83aa867ce562ff3acf970a4b3ecf7132f34aca1ecf286b90575a20e6e044600b98ff1d7f1a7ee613d4429a6a71cfe8beaff144b64b6beb456ea8691ca00937b0
 WHIRLPOOL 
5b4f7bd2dcec3a45e12fe5baf1c196faf2b754376a6bccb555dd12a1af28a202d51a0d956e4450ff2f334df13b296ee27b36aa967cb179925c386cd58389050b
 DIST python-gentoo-patches-2.7.9-1.tar.xz 12872 SHA256 
9d912c55db56b5bfe054a6164614969fc9605f48f2ffec8770941f798a16470a SHA512