xref: /OK3568_Linux_fs/yocto/poky/meta/recipes-devtools/python/python3-cryptography_36.0.2.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
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