Skip to content

programmerjake/simple-soft-float

Repository files navigation

Soft-float library that intends to be a straightforward reference implementation of IEEE 754.

Installation for use from Rust

Add to your Cargo.toml:

[dependencies.simple-soft-float]
version = "0.2"

Installation for use from Python

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

About

soft-float library that intends to be a straightforward reference implementation of IEEE 754; mirror of https://salsa.debian.org/Kazan-team/simple-soft-float

Resources

License

Stars

Watchers

Forks

Packages

No packages published