[package] name = "background_hang_monitor" version.workspace = true authors.workspace = true license.workspace = true edition.workspace = true publish.workspace = true rust-version.workspace = true [lib] name = "background_hang_monitor" path = "lib.rs" test = false doctest = false [dependencies] background_hang_monitor_api = { workspace = true } backtrace = { workspace = true } base = { workspace = true } crossbeam-channel = { workspace = true } ipc-channel = { workspace = true } libc = { workspace = true } log = { workspace = true } rustc-demangle = { version = "0.1", optional = true } serde_json = { workspace = true } [target.'cfg(target_os = "macos")'.dependencies] mach2 = { version = "0.4", optional = true } [target.'cfg(all(target_os = "linux", not(any(target_arch = "arm", target_arch = "aarch64", target_env = "ohos", target_env = "musl"))))'.dependencies] nix = { workspace = true, features = ["signal"], optional = true } [target.'cfg(target_os = "android")'.dependencies] nix = { workspace = true, features = ["signal"], optional = true } [features] sampler = ["mach2", "nix", "rustc-demangle"]