1SUMMARY = "Provides cryptographic recipes and primitives to python developers" 2HOMEPAGE = "https://cryptography.io/" 3SECTION = "devel/python" 4LICENSE = "( Apache-2.0 | BSD-3-Clause ) & PSF-2.0" 5LIC_FILES_CHKSUM = "file://LICENSE;md5=bf405a8056a6647e7d077b0e7bc36aba \ 6 file://LICENSE.APACHE;md5=4e168cce331e5c827d4c2b68a6200e1b \ 7 file://LICENSE.BSD;md5=5ae30ba4123bc4f2fa49aa0b0dce887b \ 8 file://LICENSE.PSF;md5=43c37d21e1dbad10cddcd150ba2c0595 \ 9 " 10LDSHARED += "-pthread" 11 12SRC_URI[sha256sum] = "70f8f4f7bb2ac9f340655cbac89d68c527af5bb4387522a8413e841e3e6628c9" 13 14SRC_URI += " \ 15 file://run-ptest \ 16 file://check-memfree.py \ 17 file://0001-Cargo.toml-specify-pem-version.patch \ 18 file://0002-Cargo.toml-edition-2018-2021.patch \ 19 file://fix-leak-metric.patch \ 20" 21 22inherit pypi python_setuptools3_rust 23 24DEPENDS += " \ 25 ${PYTHON_PN}-asn1crypto-native \ 26 ${PYTHON_PN}-cffi-native \ 27 ${PYTHON_PN}-setuptools-rust-native \ 28 ${PYTHON_PN}-six-native \ 29" 30 31SRC_URI += " \ 32 crate://crates.io/Inflector/0.11.4 \ 33 crate://crates.io/aliasable/0.1.3 \ 34 crate://crates.io/asn1/0.8.7 \ 35 crate://crates.io/asn1_derive/0.8.7 \ 36 crate://crates.io/autocfg/1.0.1 \ 37 crate://crates.io/base64/0.13.0 \ 38 crate://crates.io/bitflags/1.3.2 \ 39 crate://crates.io/cfg-if/1.0.0 \ 40 crate://crates.io/chrono/0.4.19 \ 41 crate://crates.io/indoc-impl/0.3.6 \ 42 crate://crates.io/indoc/0.3.6 \ 43 crate://crates.io/instant/0.1.12 \ 44 crate://crates.io/lazy_static/1.4.0 \ 45 crate://crates.io/libc/0.2.120 \ 46 crate://crates.io/lock_api/0.4.5 \ 47 crate://crates.io/num-integer/0.1.44 \ 48 crate://crates.io/num-traits/0.2.14 \ 49 crate://crates.io/once_cell/1.9.0 \ 50 crate://crates.io/ouroboros/0.13.0 \ 51 crate://crates.io/ouroboros_macro/0.13.0 \ 52 crate://crates.io/parking_lot/0.11.2 \ 53 crate://crates.io/parking_lot_core/0.8.5 \ 54 crate://crates.io/paste-impl/0.1.18 \ 55 crate://crates.io/paste/0.1.18 \ 56 crate://crates.io/pem/1.0.2 \ 57 crate://crates.io/proc-macro-error-attr/1.0.4 \ 58 crate://crates.io/proc-macro-error/1.0.4 \ 59 crate://crates.io/proc-macro-hack/0.5.19 \ 60 crate://crates.io/proc-macro2/1.0.36 \ 61 crate://crates.io/pyo3-build-config/0.15.1 \ 62 crate://crates.io/pyo3-macros-backend/0.15.1 \ 63 crate://crates.io/pyo3-macros/0.15.1 \ 64 crate://crates.io/pyo3/0.15.1 \ 65 crate://crates.io/quote/1.0.14 \ 66 crate://crates.io/redox_syscall/0.2.10 \ 67 crate://crates.io/scopeguard/1.1.0 \ 68 crate://crates.io/smallvec/1.7.0 \ 69 crate://crates.io/stable_deref_trait/1.2.0 \ 70 crate://crates.io/syn/1.0.85 \ 71 crate://crates.io/unicode-xid/0.2.2 \ 72 crate://crates.io/unindent/0.1.7 \ 73 crate://crates.io/version_check/0.9.4 \ 74 crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \ 75 crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \ 76 crate://crates.io/winapi/0.3.9 \ 77" 78 79RDEPENDS:${PN} += " \ 80 ${PYTHON_PN}-asn1crypto \ 81 ${PYTHON_PN}-cffi \ 82 ${PYTHON_PN}-idna \ 83 ${PYTHON_PN}-setuptools \ 84 ${PYTHON_PN}-six \ 85" 86 87RDEPENDS:${PN}:append:class-target = " \ 88 ${PYTHON_PN}-numbers \ 89 ${PYTHON_PN}-threading \ 90" 91 92RDEPENDS:${PN}-ptest += " \ 93 ${PYTHON_PN}-bcrypt \ 94 ${PYTHON_PN}-cryptography-vectors (= ${PV}) \ 95 ${PYTHON_PN}-hypothesis \ 96 ${PYTHON_PN}-iso8601 \ 97 ${PYTHON_PN}-pretend \ 98 ${PYTHON_PN}-psutil \ 99 ${PYTHON_PN}-pytest \ 100 ${PYTHON_PN}-pytest-subtests \ 101 ${PYTHON_PN}-pytz \ 102 ${PYTHON_PN}-tomli \ 103" 104 105inherit ptest 106 107do_install_ptest() { 108 install -D ${WORKDIR}/check-memfree.py ${D}${PTEST_PATH}/ 109 install -d ${D}${PTEST_PATH}/tests 110 cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/ 111 install -d ${D}${PTEST_PATH}/tests/hazmat 112 cp -rf ${S}/tests/hazmat/* ${D}${PTEST_PATH}/tests/hazmat/ 113 cp -r ${S}/pyproject.toml ${D}${PTEST_PATH}/ 114} 115 116FILES:${PN}-ptest += " \ 117 ${PTEST_PATH}/check-memfree.py \ 118" 119FILES:${PN}-dbg += " \ 120 ${PYTHON_SITEPACKAGES_DIR}/${SRCNAME}/hazmat/bindings/.debug \ 121" 122 123BBCLASSEXTEND = "native nativesdk" 124