lapack_src/
lib.rs

1//! [LAPACK] source of choice.
2//!
3//! ## [Architecture]
4//!
5//! ## Configuration
6//!
7//! The following implementations are available:
8//!
9//! * `accelerate`, which is the one in the [Accelerate] framework (macOS only),
10//! * `intel-mkl`, which is the one in [Intel MKL],
11//! * `netlib`, which is the reference one by [Netlib],
12//! * `openblas`, which is the one in [OpenBLAS], and
13//! * `r`, which is the one in [R].
14//!
15//! An implementation can be chosen as follows:
16//!
17//! ```toml
18//! [dependencies]
19//! lapack-src = { version = "0.13", features = ["accelerate"] }
20//! lapack-src = { version = "0.13", features = ["intel-mkl-dynamic-parallel"] }
21//! lapack-src = { version = "0.13", features = ["intel-mkl-dynamic-sequential"] }
22//! lapack-src = { version = "0.13", features = ["intel-mkl-static-parallel"] }
23//! lapack-src = { version = "0.13", features = ["intel-mkl-static-sequential"] }
24//! lapack-src = { version = "0.13", features = ["netlib"] }
25//! lapack-src = { version = "0.13", features = ["openblas"] }
26//! lapack-src = { version = "0.13", features = ["r"] }
27//! ```
28//!
29//! [architecture]: https://blas-lapack-rs.github.io/architecture
30//! [lapack]: https://en.wikipedia.org/wiki/LAPACK
31//!
32//! [accelerate]: https://developer.apple.com/reference/accelerate
33//! [intel mkl]: https://software.intel.com/en-us/mkl
34//! [netlib]: https://www.netlib.org/
35//! [openblas]: https://www.openblas.net/
36//! [r]: https://cran.r-project.org/
37
38#![no_std]
39
40#[cfg(feature = "accelerate")]
41extern crate accelerate_src as raw;
42
43#[cfg(any(
44    feature = "intel-mkl-dynamic-parallel",
45    feature = "intel-mkl-dynamic-sequential",
46    feature = "intel-mkl-static-parallel",
47    feature = "intel-mkl-static-sequential",
48))]
49extern crate intel_mkl_src as raw;
50
51#[cfg(feature = "netlib")]
52extern crate netlib_src as raw;
53
54#[cfg(feature = "openblas")]
55extern crate openblas_src as raw;
56
57#[cfg(feature = "r")]
58extern crate r_src as raw;