Browse Source

Merge pull request #1900 from jefferyto/python-crypto

python-crypto: import pycrypto from old packages feed
lilik-openwrt-22.03
Steven Barth 9 years ago
parent
commit
e12737ff76
3 changed files with 78 additions and 0 deletions
  1. +54
    -0
      lang/python-crypto/Makefile
  2. +11
    -0
      lang/python-crypto/patches/001-no-host-paths.patch
  3. +13
    -0
      lang/python-crypto/patches/002-fix-endianness-detect.patch

+ 54
- 0
lang/python-crypto/Makefile View File

@ -0,0 +1,54 @@
#
# Copyright (C) 2009-2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=pycrypto
PKG_VERSION:=2.6.1
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/
PKG_MD5SUM:=55a61a054aa66812daf5161a0d5d7eda
PKG_LICENSE:=Public Domain
PKG_LICENSE_FILES:=COPYRIGHT
PKG_MAINTAINER:=Jeffery To <jeffery.to@gmail.com>
include $(INCLUDE_DIR)/package.mk
$(call include_mk, python-package.mk)
define Package/python-crypto
SECTION:=lang-python
CATEGORY:=Languages
SUBMENU:=Python
TITLE:=python-crypto
URL:=http://www.pycrypto.org/
DEPENDS:=+python +libgmp
endef
define Package/python-crypto/description
A collection of both secure hash functions (such as MD5 and SHA),
and various encryption algorithms (AES, DES, IDEA, RSA, ElGamal, etc.).
endef
define Build/Compile
$(call Build/Compile/PyMod,,\
install --prefix=/usr --root=$(PKG_INSTALL_DIR),\
CONFIG_BIG_ENDIAN="$(CONFIG_BIG_ENDIAN)" \
)
endef
define Package/python-crypto/install
$(INSTALL_DIR) $(1)$(PYTHON_PKG_DIR)/
$(CP) \
$(PKG_INSTALL_DIR)$(PYTHON_PKG_DIR)/* \
$(1)$(PYTHON_PKG_DIR)/
endef
$(eval $(call PyPackage,python-crypto))
$(eval $(call BuildPackage,python-crypto))

+ 11
- 0
lang/python-crypto/patches/001-no-host-paths.patch View File

@ -0,0 +1,11 @@
--- a/setup.py
+++ b/setup.py
@@ -370,7 +370,7 @@ kw = {'name':"pycrypto",
'ext_modules': plat_ext + [
# _fastmath (uses GNU mp library)
Extension("Crypto.PublicKey._fastmath",
- include_dirs=['src/','/usr/include/'],
+ include_dirs=['src/'],
libraries=['gmp'],
sources=["src/_fastmath.c"]),

+ 13
- 0
lang/python-crypto/patches/002-fix-endianness-detect.patch View File

@ -0,0 +1,13 @@
--- a/setup.py
+++ b/setup.py
@@ -100,6 +100,10 @@
w(kwd.get("end", "\n"))
def endianness_macro():
+ if os.environ["CONFIG_BIG_ENDIAN"] == "y":
+ return ('PCT_BIG_ENDIAN', 1)
+ else:
+ return ('PCT_LITTLE_ENDIAN', 1)
s = struct.pack("@I", 0x33221100)
if s == "\x00\x11\x22\x33".encode(): # little endian
return ('PCT_LITTLE_ENDIAN', 1)

Loading…
Cancel
Save