blob: 73d9bd273de171e4c774facb2102f1217ce0a005 [file] [log] [blame]
cfg_if::cfg_if! {
if #[cfg(any(
all(target_os = "windows", not(target_vendor = "win7")),
target_os = "linux",
target_os = "android",
target_os = "freebsd",
target_os = "openbsd",
target_os = "dragonfly",
all(target_family = "wasm", target_feature = "atomics"),
target_os = "hermit",
))] {
mod futex;
pub use futex::Mutex;
} else if #[cfg(target_os = "fuchsia")] {
mod fuchsia;
pub use fuchsia::Mutex;
} else if #[cfg(any(
target_family = "unix",
target_os = "teeos",
))] {
mod pthread;
pub use pthread::{Mutex, raw};
} else if #[cfg(all(target_os = "windows", target_vendor = "win7"))] {
mod windows7;
pub use windows7::{Mutex, raw};
} else if #[cfg(all(target_vendor = "fortanix", target_env = "sgx"))] {
mod sgx;
pub use sgx::Mutex;
} else if #[cfg(target_os = "solid_asp3")] {
mod itron;
pub use itron::Mutex;
} else if #[cfg(target_os = "xous")] {
mod xous;
pub use xous::Mutex;
} else {
mod no_threads;
pub use no_threads::Mutex;
}
}