123456789101112131415161718192021222324252627282930313233343536 |
- #
- # Copyright OpenEmbedded Contributors
- #
- # SPDX-License-Identifier: MIT
- #
- #
- # This class helps make sure that Python extensions built with PyO3
- # and setuptools_rust properly set up the environment for cross compilation
- #
- inherit cargo python3-dir siteinfo
- export PYO3_CROSS = "1"
- export PYO3_CROSS_PYTHON_VERSION = "${PYTHON_BASEVERSION}"
- export PYO3_CROSS_LIB_DIR = "${STAGING_LIBDIR}"
- export CARGO_BUILD_TARGET = "${RUST_HOST_SYS}"
- export RUSTFLAGS
- export PYO3_PYTHON = "${PYTHON}"
- export PYO3_CONFIG_FILE = "${WORKDIR}/pyo3.config"
- python_pyo3_do_configure () {
- cat > ${WORKDIR}/pyo3.config << EOF
- implementation=CPython
- version=${PYTHON_BASEVERSION}
- shared=true
- abi3=false
- lib_name=${PYTHON_DIR}
- lib_dir=${STAGING_LIBDIR}
- pointer_width=${SITEINFO_BITS}
- build_flags=WITH_THREAD
- suppress_build_script_link_lines=false
- EOF
- }
- EXPORT_FUNCTIONS do_configure
|