blob: d85d8b5a496b0aaae0064c37739122d1e3525a9e [file] [log] [blame]
[package]
name = "resourced"
version = "0.1.0"
authors = ["The ChromiumOS Authors"]
edition = "2021"
# Build the GRPC APIs only when feature vm_grpc is enabled.
build = "src/vm_grpc/proto/build.rs"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[profile.release]
panic = 'abort'
[workspace]
members = ["schedqos"]
[features]
# Feature chromeos is turned on when building with ebuild.
chromeos = ["featured", "metrics_rs"]
# Feature vm_grpc is commented as it's not used and doesn't compile.
# vm_grpc = ["grpcio", "futures", "futures-channel", "futures-executor", "futures-util"]
[dependencies]
anyhow = "1.0"
async-trait = "0.1.36"
cfg-if = "1.0.0"
dbus = { version = "0.9.7", features = ["stdfd"] }
dbus-crossroads = "0.5.0"
dbus-tokio = "0.7.5"
glob = "0.3"
libc = "0.2"
libchromeos = { path = "../libchromeos-rs/" } # provided by ebuild
log = "0.4"
metrics_rs = { version="0.1.0", optional = true }
once_cell = "1.7"
regex = "1.5"
schedqos = { path = "./schedqos" }
tempfile = "3.0.2"
tokio = { version = "1.29.1", features = ["io-util", "macros", "net", "rt", "sync", "time"] }
system_api = { path = "../system_api" } # provided by ebuild
protobuf = "3.2"
featured = { version = "0.1.0", optional = true }
procfs = "0.15"
[dev-dependencies]
tempfile = "3"
[dev-dependencies.tokio]
features = ["test-util"]
[target.'cfg(target_arch = "x86_64")'.dependencies]
grpcio = { version = "0.9.1", optional = true}
futures = { version = "0.3.13", default-features = false, optional = true }
futures-channel = { version = "0.3.14", optional = true}
futures-executor = { version = "0.3.14", optional = true}
futures-util = { version = "0.3", features = ["sink"] , default-features = false, optional = true }
[patch.crates-io] # ignored by ebuild
featured = { path = "../../../src/platform2/featured/rust-client" } # ignored by ebuild
grpcio-sys = { path = "../../../chroot/usr/lib/cros_rust_registry/registry/grpcio-sys-0.9.1+1.38.0/" } # ignored by ebuild
metrics_rs = { path = "../metrics/rust-client/" } # ignored by ebuild
[[example]]
name = "test_client_v2"
path = "./src/vm_grpc/test_client/client_v2.rs"
required-features = ["vm_grpc"]
[build-dependencies]
protoc-grpcio = "2.0.0"
protoc-rust = "2.27.1"
anyhow = "1.0"
[[bin]]
name = "chromeos-pgmem"