diff --git a/packages/python/security/pycrypto/patches/pycrypto-2.6-setuptools.patch b/packages/python/security/pycrypto/patches/pycrypto-2.6-setuptools.patch
deleted file mode 100644
index 14af65ffce..0000000000
--- a/packages/python/security/pycrypto/patches/pycrypto-2.6-setuptools.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur pycrypto-2.6/setup.py pycrypto-2.6.patch/setup.py
---- pycrypto-2.6/setup.py 2012-05-24 14:55:30.000000000 +0200
-+++ pycrypto-2.6.patch/setup.py 2012-06-03 03:58:00.599383392 +0200
-@@ -38,7 +38,7 @@
-
- from distutils import core
- from distutils.ccompiler import new_compiler
--from distutils.core import Extension, Command
-+from setuptools import Extension, Command
- from distutils.command.build import build
- from distutils.command.build_ext import build_ext
- import os, sys, re
diff --git a/packages/python/security/pycrypto/package.mk b/packages/python/security/pycryptodome/package.mk
similarity index 51%
rename from packages/python/security/pycrypto/package.mk
rename to packages/python/security/pycryptodome/package.mk
index d2cd78bbf3..46367f499f 100644
--- a/packages/python/security/pycrypto/package.mk
+++ b/packages/python/security/pycryptodome/package.mk
@@ -1,45 +1,40 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
+# This file is part of LibreELEC - http://www.libreelec.tv
+# Copyright (C) 2017 Team LibreELEC
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
-PKG_NAME="pycrypto"
-PKG_VERSION="2.6.1"
+PKG_NAME="pycryptodome"
+PKG_VERSION="3.4.5"
PKG_ARCH="any"
-PKG_LICENSE="LGPL"
-PKG_SITE="https://www.dlitz.net/software/pycrypto/"
-PKG_URL="http://pypi.python.org/packages/source/p/$PKG_NAME/$PKG_NAME-$PKG_VERSION.tar.gz"
+PKG_LICENSE="BSD"
+PKG_SITE="https://pypi.python.org/pypi/pycryptodome"
+PKG_URL="https://files.pythonhosted.org/packages/source/p/$PKG_NAME/$PKG_NAME-$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain Python distutilscross:host"
PKG_SECTION="python/security"
-PKG_SHORTDESC="PyCrypto - The Python Cryptography Toolkit"
-PKG_LONGDESC="The Python Cryptography Toolkit describes a package containing various cryptographic modules for the Python programming language"
+PKG_SHORTDESC="Cryptographic library for Python"
+PKG_LONGDESC="PyCryptodome is a self-contained Python package of low-level cryptographic primitives."
PKG_IS_ADDON="no"
PKG_AUTORECONF="no"
-PKG_CONFIGURE_OPTS_TARGET="ac_cv_func_realloc_0_nonnull=yes \
- ac_cv_func_malloc_0_nonnull=yes \
- --without-gmp --without-mpir"
-
pre_configure_target() {
cd $PKG_BUILD
rm -rf .$TARGET_NAME
export PYTHONXCPREFIX="$SYSROOT_PREFIX/usr"
-# export LDFLAGS="$LDFLAGS -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib"
export LDSHARED="$CC -shared"
}
@@ -49,6 +44,13 @@ make_target() {
makeinstall_target() {
python setup.py install --root=$INSTALL --prefix=/usr
+
+ # Remove SelfTest bloat
+ find $INSTALL -type d -name SelfTest -exec rm -fr "{}" \; 2>/dev/null || true
+ find $INSTALL -name SOURCES.txt -exec sed -i "/\/SelfTest\//d;" "{}" \;
+
+ # Create Cryptodome as an alternative namespace to Crypto (Kodi addons may use either)
+ ln -sf /usr/lib/python2.7/site-packages/Crypto $INSTALL/usr/lib/python2.7/site-packages/Cryptodome
}
post_makeinstall_target() {
diff --git a/packages/virtual/mediacenter/package.mk b/packages/virtual/mediacenter/package.mk
index a686afce07..2089f4eb0c 100644
--- a/packages/virtual/mediacenter/package.mk
+++ b/packages/virtual/mediacenter/package.mk
@@ -40,7 +40,7 @@ if [ "$MEDIACENTER" = "kodi" ]; then
# some python stuff needed for various addons
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET Pillow \
simplejson \
- pycrypto"
+ pycryptodome"
# other packages
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET LibreELEC-settings \
xmlstarlet \