libxc 0.1.1

libxc wrapper for Rust
Documentation
[package]
name = "libxc"
description = "libxc wrapper for Rust"
readme = "readme.md"

rust-version.workspace = true
version.workspace = true
edition.workspace = true
repository.workspace = true
keywords.workspace = true
categories.workspace = true
license.workspace = true

[dependencies]
libxc-ffi = { workspace = true }
duplicate = { version = "2.0" }
enumflags2 = { version = "0.7" }
libc = { version = "0.2" }
indexmap = { version = "2.14" }
lazy_static = { version = "1.5" }
strum = { version = "0.28" }
# cudarc: no hardcoded CUDA version feature — auto-detect from `nvcc` (or
# `CUDARC_CUDA_VERSION` env var). If neither is available, `fallback-latest`
# picks the newest supported version so the build doesn't fail on machines
# without a CUDA toolkit installed at compile time.
cudarc = { version = "0.19", optional = true, default-features = false, features = [
    "driver", "std", "runtime",
    "cuda-version-from-build-system", "fallback-latest",
    "fallback-dynamic-loading",
] }

[dev-dependencies]
toml = { version = "1.1" }
rayon = { version = "1.12" }
cached = { version = "0.59" }

[features]
default = ["api-v7_0", "dynamic_loading"]

# Dynamic library loading support
dynamic_loading = ["libxc-ffi/dynamic_loading"]

# GPU support
cuda = ["dep:cudarc"]

# API versions of original libxc (cumulative)
api-v6_2 = ["libxc-ffi/api-v6_2"]
api-v7_0 = ["libxc-ffi/api-v7_0", "api-v6_2"]
api-v7_1 = ["libxc-ffi/api-v7_1", "api-v7_0"]

[package.metadata.docs.rs]
features = ["api-v7_1", "dynamic_loading", "cuda"]