diff options
author | Tim Orling <ticotimo@gmail.com> | 2021-08-23 16:11:48 -0700 |
---|---|---|
committer | Tim Orling <timothy.t.orling@intel.com> | 2021-11-01 15:23:05 +0000 |
commit | 2ff0041029d22c316e45085bd131ae9c726a6030 (patch) | |
tree | fa5f3a5368c109170c3931d94adca7c45afcd8cb /meta-python/recipes-devtools/python/python3-cryptography_35.0.0.bb | |
parent | 0329049c145a7ca87778cf139bf88f18c8f79172 (diff) | |
download | meta-openembedded-contrib-2ff0041029d22c316e45085bd131ae9c726a6030.tar.gz |
python3-cryptography: upgrade 3.3.2 -> 35.0.0
Add PSF-2.0 license and explicitly add checksums for the LICENSE files that
are packaged.
RDEPENDS on python3-hypothesis (in oe-core) for ptest so we can drop the
patch for skipping.
DEPENDS on python3-setuptools-rust-native
RDEPENDS on python3-pytest-subtests for ptest
Need to inherit cargo, otherwise build_rust will fail to detect Rust
compiler. Also, so that RUST_TARGET_PATH is exported, otherwise
build_rust will fail because 'rustc --print cfg' doesn't know where
the target specifications are.
Copy pyproject.toml for ptest as it defines the pytest.marker(s) needed
Cleanup and alphabetize the RDEPENDS
Inherit python3-dir for the -dbg files for hazmat.
Export PYO3_CROSS, PYO3_CROSS_LIB_DIR, PYO3_CROSS_INCLUDE_DIR and CARGO_BUILD_TARGET
to inform setuptools-rust we are cross-compiling.
Export RUSTFLAGS so cargo can find 'std' and 'core' for target
Need to call cargo_common_do_configure to setup cargo_home/config so
that the linker properly finds e.g. crti.o and crtbeginS.o
However, bitbake vendoring does not appear to work with setuptools-rust,
as it errors out immediately because it cannot find package pyo3:
CARGO_DISABLE_BITBAKE_VENDORING = "1"
FIXME: on qemux86-musl, do_install tries to rebuild
Signed-off-by: Tim Orling <ticotimo@gmail.com>
Diffstat (limited to 'meta-python/recipes-devtools/python/python3-cryptography_35.0.0.bb')
-rw-r--r-- | meta-python/recipes-devtools/python/python3-cryptography_35.0.0.bb | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/meta-python/recipes-devtools/python/python3-cryptography_35.0.0.bb b/meta-python/recipes-devtools/python/python3-cryptography_35.0.0.bb new file mode 100644 index 0000000000..f57aa0bb79 --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-cryptography_35.0.0.bb @@ -0,0 +1,83 @@ +SUMMARY = "Provides cryptographic recipes and primitives to python developers" +HOMEPAGE = "https://cryptography.io/" +SECTION = "devel/python" +LICENSE = "( Apache-2.0 | BSD-3-Clause ) & PSF-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=bf405a8056a6647e7d077b0e7bc36aba \ + file://LICENSE.APACHE;md5=4e168cce331e5c827d4c2b68a6200e1b \ + file://LICENSE.BSD;md5=5ae30ba4123bc4f2fa49aa0b0dce887b \ + file://LICENSE.PSF;md5=43c37d21e1dbad10cddcd150ba2c0595 \ +" + +LDSHARED += "-pthread" + +SRC_URI[sha256sum] = "9933f28f70d0517686bd7de36166dda42094eac49415459d9bdf5e7df3e0086d" + +SRC_URI += " \ + file://run-ptest \ +" + +inherit cargo pypi python3-dir setuptools3 + +export PYO3_CROSS="1" +export PYO3_CROSS_PYTHON_VERSION="${PYTHON_BASEVERSION}" +export PYO3_CROSS_LIB_DIR="${STAGING_LIBDIR}" +export PYO3_CROSS_INCLUDE_DIR="${STAGING_INCDIR}" +export CARGO_BUILD_TARGET="${HOST_SYS}" +export RUSTFLAGS +export PYO3_PYTHON="${PYTHON}" +#export _PYTHON_SYSCONFIGDATA_NAME="_sysconfigdata__linux_${HOST_SYS}" + +DEPENDS += " \ + ${PYTHON_PN}-asn1crypto-native \ + ${PYTHON_PN}-cffi-native \ + ${PYTHON_PN}-setuptools-rust-native \ + ${PYTHON_PN}-six-native \ +" + +# bitbake vendoring does not work with setuptools-rust +CARGO_DISABLE_BITBAKE_VENDORING = "1" + +do_configure() { + cargo_common_do_configure + distutils3_do_configure +} + +RDEPENDS:${PN} += " \ + ${PYTHON_PN}-asn1crypto \ + ${PYTHON_PN}-cffi \ + ${PYTHON_PN}-idna \ + ${PYTHON_PN}-setuptools \ + ${PYTHON_PN}-six \ +" + +RDEPENDS:${PN}:append:class-target = " \ + ${PYTHON_PN}-numbers \ + ${PYTHON_PN}-threading \ +" + +RDEPENDS:${PN}-ptest += " \ + ${PYTHON_PN}-bcrypt \ + ${PYTHON_PN}-cryptography-vectors \ + ${PYTHON_PN}-hypothesis \ + ${PYTHON_PN}-iso8601 \ + ${PYTHON_PN}-pretend \ + ${PYTHON_PN}-pytest \ + ${PYTHON_PN}-pytest-subtests \ + ${PYTHON_PN}-pytz \ +" + +inherit ptest + +do_install_ptest() { + install -d ${D}${PTEST_PATH}/tests + cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/ + install -d ${D}${PTEST_PATH}/tests/hazmat + cp -rf ${S}/tests/hazmat/* ${D}${PTEST_PATH}/tests/hazmat/ + cp -r ${S}/pyproject.toml ${D}${PTEST_PATH}/ +} + +FILES:${PN}-dbg += " \ + ${PYTHON_SITEPACKAGES_DIR}/${SRCNAME}/hazmat/bindings/.debug \ +" + +BBCLASSEXTEND = "native nativesdk" |