blob: 2c2625d3150603668268f7348f9c928d3c960d93 [file] [log] [blame]
Patrick Williamsd849ec72016-08-17 14:59:38 -05001HOMEPAGE = "http://chandlerproject.org/bin/view/Projects/MeTooCrypto"
2SUMMARY = "A Python crypto and SSL toolkit"
3DESCRIPTION = "\
4 M2Crypto is the most complete Python wrapper for OpenSSL featuring RSA, \
5 DSA, DH, EC, HMACs, message digests, symmetric ciphers (including \
6 AES); SSL functionality to implement clients and servers; HTTPS \
7 extensions to Python's httplib, urllib, and xmlrpclib; unforgeable \
8 HMAC'ing AuthCookies for web session management; FTP/TLS client and \
9 server; S/MIME; ZServerSSL: A HTTPS server for Zope and ZSmime: An \
10 S/MIME messenger for Zope. M2Crypto can also be used to provide SSL \
11 for Twisted. \
12 "
13LICENSE = "BSD"
14LIC_FILES_CHKSUM = "file://PKG-INFO;md5=0ccca7097c1d29fa42e75e9c15c6ff2e"
15
Mark Asselstine5fc98032017-11-14 12:55:06 -050016PYPI_PACKAGE = "M2Crypto"
17
18SRC_URI += " \
Patrick Williamsd849ec72016-08-17 14:59:38 -050019 file://m2crypto-Fix-build-with-SWIG-3.0.5.patch \
20"
21
22SRC_URI[md5sum] = "573f21aaac7d5c9549798e72ffcefedd"
23SRC_URI[sha256sum] = "6071bfc817d94723e9b458a010d565365104f84aa73f7fe11919871f7562ff72"
24
Mark Asselstine5fc98032017-11-14 12:55:06 -050025inherit setuptools pypi
Patrick Williamsd849ec72016-08-17 14:59:38 -050026
27DEPENDS += "openssl swig-native"
28
29DISTUTILS_BUILD_ARGS += "build_ext -I${STAGING_INCDIR}"
30
Mark Asselstine5fc98032017-11-14 12:55:06 -050031inherit setuptools pypi
Patrick Williamsd849ec72016-08-17 14:59:38 -050032
33SWIG_FEATURES_x86-64 = "-D__x86_64__"
34SWIG_FEATURES ?= ""
35export SWIG_FEATURES
36
37# Get around a problem with swig, but only if the
38# multilib header file exists.
39#
40do_compile_prepend() {
41 sed -i -e 's/self.add_multiarch_paths.*$/# &/;' ${S}/setup.py
42 sed -i -e 's/opensslIncludeDir = .*$/opensslIncludeDir = os.getenv("STAGING_INCDIR")/;' ${S}/setup.py
43 sed -i -e 's/opensslLibraryDir = .*$/opensslLibraryDir = os.getenv("STAGING_LIBDIR")/;' ${S}/setup.py
44
45 if [ "${SITEINFO_BITS}" = "64" ];then
46 bit="64"
47 else
48 bit="32"
49 fi
50
51 if [ -e ${STAGING_INCDIR}/openssl/opensslconf-${bit}.h ]; then
52 for i in SWIG/_ec.i SWIG/_evp.i; do
53 sed -i -e "s/opensslconf.*\./opensslconf-${bit}\./" "$i"
54 done
55 elif [ -e ${STAGING_INCDIR}/openssl/opensslconf-n${bit}.h ] ;then
56 for i in SWIG/_ec.i SWIG/_evp.i; do
57 sed -i -e "s/opensslconf.*\./opensslconf-n${bit}\./" "$i"
58 done
59 fi
60}
61