[package]
edition = "2021"
rust-version = "1.74"
name = "mpi-rs"
version = "0.1.0"
authors = [
"Eugene Hauptmann",
"The mpi-rs contributors",
]
build = false
exclude = [
"/.github",
"/.git",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A pure-Rust implementation of the Message Passing Interface (MPI), API-compatible with rsmpi. No C library required."
homepage = "https://github.com/eugenehp/mpi-rs"
documentation = "https://docs.rs/mpi-rs"
readme = "README.md"
keywords = [
"mpi",
"parallel",
"hpc",
"message-passing",
"distributed",
]
categories = [
"concurrency",
"science",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/eugenehp/mpi-rs"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
default = []
derive = ["dep:mpi-derive"]
shm = ["dep:libc"]
[lib]
name = "mpi"
path = "src/lib.rs"
[[bin]]
name = "mpiexec"
path = "src/bin/mpiexec.rs"
[[bin]]
name = "mpirun"
path = "src/bin/mpirun.rs"
[[example]]
name = "abort"
path = "examples/abort.rs"
[[example]]
name = "bigmsg"
path = "examples/bigmsg.rs"
[[example]]
name = "cluster"
path = "examples/cluster.rs"
[[example]]
name = "derive"
path = "examples/derive.rs"
required-features = ["derive"]
[[example]]
name = "hello"
path = "examples/hello.rs"
[[example]]
name = "parallel_io"
path = "examples/parallel_io.rs"
[[example]]
name = "pingpong"
path = "examples/pingpong.rs"
[[example]]
name = "reduce"
path = "examples/reduce.rs"
[[example]]
name = "ring"
path = "examples/ring.rs"
[[example]]
name = "rma"
path = "examples/rma.rs"
[[example]]
name = "selftest"
path = "examples/selftest.rs"
[[example]]
name = "spawn"
path = "examples/spawn.rs"
[[example]]
name = "thread_multiple"
path = "examples/thread_multiple.rs"
[[example]]
name = "topo_inter"
path = "examples/topo_inter.rs"
[[test]]
name = "integration"
path = "tests/integration.rs"
[dependencies.libc]
version = "0.2"
optional = true
[dependencies.mpi-derive]
version = "0.1.0"
optional = true
[dev-dependencies]
[profile.release]
opt-level = 3