Soft-float library that intends to be a straightforward reference implementation of IEEE 754.
Add to your Cargo.toml
:
[dependencies.simple-soft-float]
version = "0.2"
Install Rust using rustup.rs.
Create CPython 3.6 to 3.8 virtualenv.
Install Python bindings build tool:
pip install maturin
Get source:
git clone https://salsa.debian.org/Kazan-team/simple-soft-float.git
cd simple-soft-float
Change source dir to use specific version of Rust nightly:
(must be in simple-soft-float
dir):
rustup override set nightly-2020-01-23
Build and Test (like setup.py develop
):
cargo test --features python # runs tests from Rust
# build and install to python
maturin develop --cargo-extra-args="--features python-extension"
python -m unittest # runs smoke tests from Python
Build Rust docs:
cargo doc --features python # ignore warning about rand_core name collision
open docs in default browser:
xdg-open target/doc/simple_soft_float/struct.DynamicFloat.html
Build Python docs:
pip install pdoc3
pdoc3 simple_soft_float --html -o target/python-docs
xdg-open target/python-docs/simple_soft_float.html