[package]
authors = ["Ash Vardanian <1983160+ashvardanian@users.noreply.github.com>"] 
categories = [
  "mathematics",
  "hardware-support",
  "no-std",
  "wasm",
  "external-ffi-bindings",
] 
description = "Portable mixed-precision math, linear-algebra, & retrieval library with 2000+ SIMD kernels for x86, Arm, RISC-V, LoongArch, Power, & WebAssembly"
documentation = "https://docs.rs/numkong" 
edition = "2021" 
homepage = "https://ashvardanian.com/posts/numkong-faster-scipy" 
include = ["rust/*.rs", "c/*.c", "c/*.h", "include/**/*.h", "probes/*.c", "build.rs"]
keywords = ["simd", "search", "linear-algebra", "vector"] 
license = "Apache-2.0" 
links = "numkong"
name = "numkong"
readme = "rust/README.md"
repository = "https://github.com/ashvardanian/NumKong" 
rust-version = "1.64" # Introduced Core C FFI in stable Rust
version = "7.6.0" 

[lib]
name = "numkong"
path = "rust/numkong.rs"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[build-dependencies]
cc = "1.2.36"

[profile.bench]
codegen-units = 1 # May increase compilation time but optimizes further
lto = true # Enables Link Time Optimization for further optimizations
opt-level = 3 # Corresponds to -O3
rpath = false # On some systems, setting this to false can help with optimizations

[features]
default = []
parallel = ["dep:fork_union", "std"]
std = []
wasm-runtime = []

[dependencies]
fork_union = {version = "2.3", optional = true}

[dev-dependencies]
half = {version = "2.6.0"}
rand = {version = "0.10.0"}
wasmtime = {version = "43.0"}
wasmtime-wasi = {version = "43.0"}
