Files
uutil-linux/Cargo.toml
2025-09-17 05:11:34 +00:00

163 lines
5.4 KiB
TOML

# util-linux (uutils)
# * see the repository LICENSE, README, and CONTRIBUTING files for more information
# spell-checker:ignore (libs) bigdecimal datetime fundu gethostid kqueue libselinux mangen memmap uuhelp
[package]
name = "util-linux"
version = "0.0.1"
authors = ["uutils developers"]
license = "MIT"
description = "util-linux ~ GNU util-linux (updated); implemented as universal (cross-platform) utils, written in Rust"
default-run = "util-linux"
homepage = "https://github.com/uutils/util-linux"
repository = "https://github.com/uutils/util-linux"
readme = "README.md"
keywords = ["util-linux", "uutils", "cross-platform", "cli", "utility"]
categories = ["command-line-utilities"]
rust-version = "1.70.0"
edition = "2021"
build = "build.rs"
[features]
default = ["feat_common_core"]
uudoc = []
feat_common_core = [
"blockdev",
"chcpu",
"ctrlaltdel",
"dmesg",
"fsfreeze",
"last",
"lscpu",
"lsipc",
"lslocks",
"lsmem",
"mcookie",
"mesg",
"mountpoint",
"nologin",
"renice",
"rev",
"setsid",
"uuidgen",
]
[workspace.dependencies]
clap = { version = "4.4", features = ["wrap_help", "cargo"] }
clap_complete = "4.4"
clap_mangen = "0.2"
dns-lookup = "3.0.0"
errno = "0.3"
libc = "0.2.171"
libmount-sys = "0.1.1"
linux-raw-sys = { version = "0.10.0", features = ["ioctl"] }
md-5 = "0.10.6"
nix = { version = "0.30", default-features = false }
parse_datetime = "0.11.0"
phf = "0.13.0"
phf_codegen = "0.13.0"
rand = { version = "0.9.0", features = ["small_rng"] }
rangemap = "1.5.1"
regex = "1.10.2"
serde = { version = "1.0", features = ["derive"] }
serde_json = { version = "1.0.122", features = ["preserve_order"] }
smartcols-sys = "0.1"
syscall-numbers = "4.0.2"
sysinfo = "0.37"
tempfile = "3.9.0"
textwrap = { version = "0.16.0", features = ["terminal_size"] }
thiserror = "2.0"
uucore = "0.1.0"
uuid = { version = "1.16.0", features = ["rng-rand"] }
uutests = "0.2.0"
windows = { version = "0.61.1" }
xattr = "1.3.1"
[dependencies]
clap = { workspace = true }
clap_complete = { workspace = true }
clap_mangen = { workspace = true }
dns-lookup = { workspace = true }
parse_datetime = {workspace = true}
phf = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
textwrap = { workspace = true }
uucore = { workspace = true }
#
blockdev = { optional = true, version = "0.0.1", package = "uu_blockdev", path = "src/uu/blockdev" }
chcpu = { optional = true, version = "0.0.1", package = "uu_chcpu", path = "src/uu/chcpu" }
ctrlaltdel = { optional = true, version = "0.0.1", package = "uu_ctrlaltdel", path = "src/uu/ctrlaltdel" }
dmesg = { optional = true, version = "0.0.1", package = "uu_dmesg", path = "src/uu/dmesg" }
fsfreeze = { optional = true, version = "0.0.1", package = "uu_fsfreeze", path = "src/uu/fsfreeze" }
last = { optional = true, version = "0.0.1", package = "uu_last", path = "src/uu/last" }
lscpu = { optional = true, version = "0.0.1", package = "uu_lscpu", path = "src/uu/lscpu" }
lsipc = { optional = true, version = "0.0.1", package = "uu_lsipc", path = "src/uu/lsipc" }
lslocks = { optional = true, version = "0.0.1", package = "uu_lslocks", path = "src/uu/lslocks" }
lsmem = { optional = true, version = "0.0.1", package = "uu_lsmem", path = "src/uu/lsmem" }
mcookie = { optional = true, version = "0.0.1", package = "uu_mcookie", path = "src/uu/mcookie" }
mesg = { optional = true, version = "0.0.1", package = "uu_mesg", path = "src/uu/mesg" }
mountpoint = { optional = true, version = "0.0.1", package = "uu_mountpoint", path = "src/uu/mountpoint" }
nologin = { optional = true, version = "0.0.1", package = "uu_nologin", path = "src/uu/nologin" }
renice = { optional = true, version = "0.0.1", package = "uu_renice", path = "src/uu/renice" }
rev = { optional = true, version = "0.0.1", package = "uu_rev", path = "src/uu/rev" }
setsid = { optional = true, version = "0.0.1", package = "uu_setsid", path ="src/uu/setsid" }
uuidgen = { optional = true, version = "0.0.1", package = "uu_uuidgen", path ="src/uu/uuidgen" }
[dev-dependencies]
ctor = "0.4.1"
# dmesg test require fixed-boot-time feature turned on.
dmesg = { version = "0.0.1", package = "uu_dmesg", path = "src/uu/dmesg", features = ["fixed-boot-time"] }
libc = { workspace = true }
pretty_assertions = "1"
rand = { workspace = true }
regex = { workspace = true }
tempfile = { workspace = true }
uutests = { workspace = true }
uucore = { workspace = true, features = ["entries", "process", "signals"] }
uuid = { workspace = true }
[target.'cfg(unix)'.dev-dependencies]
nix = { workspace = true, features = ["term"] }
xattr = { workspace = true }
[target.'cfg(any(target_os = "linux", target_os = "android"))'.dev-dependencies]
rlimit = "0.10.1"
[build-dependencies]
phf_codegen = { workspace = true }
[[bin]]
name = "util-linux"
path = "src/bin/util-linux.rs"
[[bin]]
name = "uudoc"
path = "src/bin/uudoc.rs"
required-features = ["uudoc"]
# The default release profile. It contains all optimizations, without
# sacrificing debug info. With this profile (like in the standard
# release profile), the debug info and the stack traces will still be available.
[profile.release]
lto = true
# A release-like profile that is tuned to be fast, even when being fast
# compromises on binary size. This includes aborting on panic.
[profile.release-fast]
inherits = "release"
panic = "abort"
# A release-like profile that is as small as possible.
[profile.release-small]
inherits = "release"
opt-level = "z"
panic = "abort"
strip = true