1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
#!/usr/bin/env bash
set -eou pipefail
rm -rf .cargo
rm -f ${CARGO_TARGET_DIR}/wheels/*.whl
export UNSAFE_PYO3_BUILD_FREE_THREADED=1
export UNSAFE_PYO3_SKIP_VERSION_CHECK=1
export CC="${CC:-clang}"
export LD="${LD:-lld}"
export TARGET="${TARGET:-x86_64-unknown-linux-gnu}"
export CARGO_TARGET_DIR="${CARGO_TARGET_DIR:-target}"
export ORJSON_FEATURES="${ORJSON_FEATURES:-yyjson}"
export CFLAGS="-Os -fstrict-aliasing"
export RUSTFLAGS="-C panic=unwind -C linker=${CC} -C link-arg=-fuse-ld=${LD}"
maturin build --profile=dev --target=${TARGET} --features="${ORJSON_FEATURES}" --interpreter "${PYTHON}"
uv pip install ${CARGO_TARGET_DIR}/wheels/*.whl
pytest -v test
mkdir .cargo
cp ci/config.toml .cargo
|