mirror of
https://github.com/rust-lang/rust.git
synced 2025-11-25 21:27:01 +00:00
Pick up the latest version of iai-callgrind, which includes some output improvements. Changelog: https://github.com/iai-callgrind/iai-callgrind/releases
75 lines
2.3 KiB
TOML
75 lines
2.3 KiB
TOML
[package]
|
|
name = "libm-test"
|
|
version = "0.1.0"
|
|
edition = "2024"
|
|
publish = false
|
|
license = "MIT OR Apache-2.0"
|
|
|
|
[features]
|
|
default = ["build-mpfr", "unstable-float"]
|
|
|
|
# Propagated from libm because this affects which functions we test.
|
|
unstable-float = ["libm/unstable-float", "rug?/nightly-float"]
|
|
|
|
# Generate tests which are random inputs and the outputs are calculated with
|
|
# musl libc.
|
|
build-mpfr = ["dep:rug", "dep:gmp-mpfr-sys"]
|
|
|
|
# Build our own musl for testing and benchmarks
|
|
build-musl = ["dep:musl-math-sys"]
|
|
|
|
# Enable report generation without bringing in more dependencies by default
|
|
benchmarking-reports = ["criterion/plotters", "criterion/html_reports"]
|
|
|
|
# Enable icount benchmarks (requires iai-callgrind and valgrind)
|
|
icount = ["dep:iai-callgrind"]
|
|
|
|
# Run with a reduced set of benchmarks, such as for CI
|
|
short-benchmarks = []
|
|
|
|
[dependencies]
|
|
anyhow = "1.0.98"
|
|
# This is not directly used but is required so we can enable `gmp-mpfr-sys/force-cross`.
|
|
gmp-mpfr-sys = { version = "1.6.5", optional = true, default-features = false }
|
|
iai-callgrind = { version = "0.15.2", optional = true }
|
|
indicatif = { version = "0.18.0", default-features = false }
|
|
libm = { path = "../libm", features = ["unstable-public-internals"] }
|
|
libm-macros = { path = "../crates/libm-macros" }
|
|
musl-math-sys = { path = "../crates/musl-math-sys", optional = true }
|
|
paste = "1.0.15"
|
|
rand = "0.9.1"
|
|
rand_chacha = "0.9.0"
|
|
rayon = "1.10.0"
|
|
rug = { version = "1.27.0", optional = true, default-features = false, features = ["float", "integer", "std"] }
|
|
|
|
[target.'cfg(target_family = "wasm")'.dependencies]
|
|
getrandom = { version = "0.3.3", features = ["wasm_js"] }
|
|
|
|
[build-dependencies]
|
|
rand = { version = "0.9.1", optional = true }
|
|
|
|
[dev-dependencies]
|
|
criterion = { version = "0.6.0", default-features = false, features = ["cargo_bench_support"] }
|
|
libtest-mimic = "0.8.1"
|
|
|
|
[[bench]]
|
|
name = "icount"
|
|
harness = false
|
|
required-features = ["icount"]
|
|
|
|
[[bench]]
|
|
name = "random"
|
|
harness = false
|
|
|
|
[[test]]
|
|
# No harness so that we can skip tests at runtime based on env. Prefixed with
|
|
# `z` so these tests get run last.
|
|
name = "z_extensive"
|
|
harness = false
|
|
|
|
[lints.rust]
|
|
# Values from the chared config.rs used by `libm` but not the test crate
|
|
unexpected_cfgs = { level = "warn", check-cfg = [
|
|
'cfg(feature, values("arch", "force-soft-floats", "unstable-intrinsics"))',
|
|
] }
|