summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick McLean <patrick.mclean@sony.com>2019-11-26 21:31:01 -0800
committerPatrick McLean <chutzpah@gentoo.org>2019-11-26 21:32:21 -0800
commit953aee9c307b4cead26995a66292248de5b97e92 (patch)
tree015de75e858f2da81e3d12a1636a2a363c4d95ea /dev-python/pycryptodome
parentdev-python/ecdsa-0.14.1-r1: revbump, add missing deps, add py38 (diff)
downloadgentoo-953aee9c307b4cead26995a66292248de5b97e92.tar.gz
gentoo-953aee9c307b4cead26995a66292248de5b97e92.tar.bz2
gentoo-953aee9c307b4cead26995a66292248de5b97e92.zip
dev-python/pycryptodome-3.9.4: Bump, add py38, fix tests
Copyright: Sony Interactive Entertainment Inc. Package-Manager: Portage-2.3.79, Repoman-2.3.18 Signed-off-by: Patrick McLean <chutzpah@gentoo.org>
Diffstat (limited to 'dev-python/pycryptodome')
-rw-r--r--dev-python/pycryptodome/Manifest1
-rw-r--r--dev-python/pycryptodome/files/pycryptodome-3.9.4-parallel-make.patch22
-rw-r--r--dev-python/pycryptodome/files/pycryptodome-3.9.4-tests.patch48
-rw-r--r--dev-python/pycryptodome/pycryptodome-3.9.4.ebuild46
4 files changed, 117 insertions, 0 deletions
diff --git a/dev-python/pycryptodome/Manifest b/dev-python/pycryptodome/Manifest
index 31aadd3a9fb6..31352feff6b8 100644
--- a/dev-python/pycryptodome/Manifest
+++ b/dev-python/pycryptodome/Manifest
@@ -3,3 +3,4 @@ DIST pycryptodome-3.4.7.tar.gz 6483140 BLAKE2B 02368e2af0a12686cf2e635cca8e2c279
DIST pycryptodome-3.6.6.tar.gz 7137656 BLAKE2B 72a3dffa22ca4a90a6515ce0bb6939d4c11aab31793ca330523feb08f6529cbfdf3dee01b1caa4577caed1818c0227961e7f25d855b2dcfb09757beb3e0790b4 SHA512 ce03d9940c23ce59e19bcd795c300dbddeddd49756a4bfcc6933da66dfb8b7bedb8d6eaa2b01727c53e72c8e84dfcab2961d1580a188afa9c9451bd2099bdc61
DIST pycryptodome-3.7.3.tar.gz 9285823 BLAKE2B 6f215a3bb0337f5b7469d92bd2d5b5a19ab4e2c6a8f119411c3a5bcdcf93307752d99113866268b5066cceda6470bd0fbe81b1b2f9e30b5e5e569c77ede087f3 SHA512 b5e09c08cd252cad4d76249be84ce29e16a9bba4f2c5e81594c24d9a39df0f3fc67822698497eb9daa4cb6a43311c5d5a2543f187a5d5f801288596c2941f08f
DIST pycryptodome-3.8.2.tar.gz 12441359 BLAKE2B 857b77ce23bafe8a296d6fc2402914491818b51142d2a08aa882a0d4e15899bc2b18a6b69ffa904cad406fb3ce8bf029404ea178532cd4580ce118ec03311cd2 SHA512 361909d479b3478b72f2723f2c94cafd4e9d50c2d4156535d217f0566c534dc27435f64e9ba0cdb8215c2c3d3800ad1e0befde95d9999eed481f33f9ed2ba318
+DIST pycryptodome-3.9.4.tar.gz 11575825 BLAKE2B c153fe71179d633a5722480c4c42cc133100f524a8ba9d3cd9380b7e172564c276b70b97ef36437fa3a149c418903802f410c9d1807d5d72345dffb0aa568223 SHA512 d99e4e431d77856ce3ae33526984cadf2fa6aa82b1f692a2ad0ae893f6a1e9538e6d71d281578e6bd733a816664d1683364c64441196cbc6ee1278f9d6eac62c
diff --git a/dev-python/pycryptodome/files/pycryptodome-3.9.4-parallel-make.patch b/dev-python/pycryptodome/files/pycryptodome-3.9.4-parallel-make.patch
new file mode 100644
index 000000000000..331333533f10
--- /dev/null
+++ b/dev-python/pycryptodome/files/pycryptodome-3.9.4-parallel-make.patch
@@ -0,0 +1,22 @@
+diff --git a/setup.py b/setup.py
+index 1d70caad..c72f64ff 100644
+--- a/setup.py
++++ b/setup.py
+@@ -364,7 +364,7 @@ ext_modules = [
+ Extension("Crypto.Cipher._raw_eksblowfish",
+ include_dirs=['src/'],
+ define_macros=[('EKS',None),],
+- sources=["src/blowfish.c"]),
++ sources=["src/blowfish_eks.c"]),
+ Extension("Crypto.Cipher._raw_cast",
+ include_dirs=['src/'],
+ sources=["src/CAST.c"]),
+@@ -427,7 +427,7 @@ ext_modules = [
+ # Math
+ Extension("Crypto.Math._modexp",
+ include_dirs=['src/'],
+- sources=['src/modexp.c', 'src/siphash.c', 'src/modexp_utils.c', 'src/mont.c'],
++ sources=['src/modexp.c', 'src/siphash.c', 'src/modexp_utils.c', 'src/mont_math.c'],
+ ),
+ ]
+
diff --git a/dev-python/pycryptodome/files/pycryptodome-3.9.4-tests.patch b/dev-python/pycryptodome/files/pycryptodome-3.9.4-tests.patch
new file mode 100644
index 000000000000..2cfcaec127de
--- /dev/null
+++ b/dev-python/pycryptodome/files/pycryptodome-3.9.4-tests.patch
@@ -0,0 +1,48 @@
+diff --git a/lib/Crypto/SelfTest/Cipher/test_ChaCha20_Poly1305.py b/lib/Crypto/SelfTest/Cipher/test_ChaCha20_Poly1305.py
+index a2109891..44d2e532 100644
+--- a/lib/Crypto/SelfTest/Cipher/test_ChaCha20_Poly1305.py
++++ b/lib/Crypto/SelfTest/Cipher/test_ChaCha20_Poly1305.py
+@@ -626,6 +626,7 @@ class TestVectorsWycheproof(unittest.TestCase):
+ def __init__(self, wycheproof_warnings):
+ unittest.TestCase.__init__(self)
+ self._wycheproof_warnings = wycheproof_warnings
++ self._id = "None"
+
+ def setUp(self):
+ comps = "Crypto.SelfTest.Cipher.test_vectors.wycheproof".split(".")
+diff --git a/lib/Crypto/SelfTest/Cipher/test_EAX.py b/lib/Crypto/SelfTest/Cipher/test_EAX.py
+index cdd0e85a..546186d1 100644
+--- a/lib/Crypto/SelfTest/Cipher/test_EAX.py
++++ b/lib/Crypto/SelfTest/Cipher/test_EAX.py
+@@ -656,6 +656,7 @@ class TestVectorsWycheproof(unittest.TestCase):
+ def __init__(self, wycheproof_warnings):
+ unittest.TestCase.__init__(self)
+ self._wycheproof_warnings = wycheproof_warnings
++ self._id = "None"
+
+ def setUp(self):
+ comps = "Crypto.SelfTest.Cipher.test_vectors.wycheproof".split(".")
+diff --git a/lib/Crypto/SelfTest/Cipher/test_GCM.py b/lib/Crypto/SelfTest/Cipher/test_GCM.py
+index e3a7a3da..71ea0d18 100644
+--- a/lib/Crypto/SelfTest/Cipher/test_GCM.py
++++ b/lib/Crypto/SelfTest/Cipher/test_GCM.py
+@@ -828,6 +828,7 @@ class TestVectorsWycheproof(unittest.TestCase):
+ unittest.TestCase.__init__(self)
+ self._wycheproof_warnings = wycheproof_warnings
+ self._extra_params = extra_params
++ self._id = "None"
+
+ def setUp(self):
+ comps = "Crypto.SelfTest.Cipher.test_vectors.wycheproof".split(".")
+diff --git a/lib/Crypto/SelfTest/Cipher/test_SIV.py b/lib/Crypto/SelfTest/Cipher/test_SIV.py
+index 38341e14..ab588adc 100644
+--- a/lib/Crypto/SelfTest/Cipher/test_SIV.py
++++ b/lib/Crypto/SelfTest/Cipher/test_SIV.py
+@@ -456,6 +456,7 @@ class TestVectorsWycheproof(unittest.TestCase):
+
+ def __init__(self):
+ unittest.TestCase.__init__(self)
++ self._id = "None"
+
+ def setUp(self):
+ comps = "Crypto.SelfTest.Cipher.test_vectors.wycheproof".split(".")
diff --git a/dev-python/pycryptodome/pycryptodome-3.9.4.ebuild b/dev-python/pycryptodome/pycryptodome-3.9.4.ebuild
new file mode 100644
index 000000000000..00d860e0cd6f
--- /dev/null
+++ b/dev-python/pycryptodome/pycryptodome-3.9.4.ebuild
@@ -0,0 +1,46 @@
+# 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(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="A self-contained cryptographic library for Python"
+HOMEPAGE="https://www.pycryptodome.org https://github.com/Legrandin/pycryptodome https://pypi.org/project/pycryptodome/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD-2 Unlicense"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND="dev-libs/gmp:0
+ virtual/python-cffi[${PYTHON_USEDEP}]
+ !dev-python/pycrypto"
+BDEPEND="${RDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]"
+
+PATCHES=(
+ "${FILESDIR}/pycryptodome-3.9.4-parallel-make.patch"
+ # https://github.com/Legrandin/pycryptodome/pull/351
+ "${FILESDIR}/pycryptodome-3.9.4-tests.patch"
+)
+
+python_prepare_all() {
+ # parallel make fixes
+ # Multiple targets were compiling the same file, setuptools doesn't
+ # understand this and you get race conditions where a file gets
+ # overwritten while it's linking. This makes the files look like separate
+ # files so this race won't happen
+ ln src/blowfish.c src/blowfish_eks.c || die
+ ln src/mont.c src/mont_math.c || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ esetup.py test -vv
+}