Cargo Features
[dependencies]
syd = { version = "3.48.4", default-features = false, features = ["asm", "log", "sh", "oci", "uring", "utils", "prof"] }
- default = asm, log, sh, utils
-
These default features are set whenever
sydis added withoutsomewhere in the dependency tree.default-features = false - asm default = iced-x86, raki, yaxpeax-arch, yaxpeax-arm
-
Build syd-asm(1) the instruction decoder.
Affects
syd::asm…Required by the syd-asm binary
- log default = ringbuf
-
Enable the virtual syslog(2) interface.
You need this to read access violations using dmesg(1) inside Syd.Affects
log::log_init,log::log_init_simple,log::log,syslog::current_loglevel… - sh default = linefeed
-
Enable syd-sh(1), simple confined shell based on wordexp(3).
Uses linefeed to provide readline-like interface.Required by the syd-sh binary
- oci = clap, libcgroups, libcontainer, liboci-cli, oci-spec, procfs, tabwriter, tracing, tracing-subscriber
-
Build OCI runtime helper "syd-oci"
Affects
util::SYD_OCI…Required by the syd-oci binary
- uring = io-uring
-
Enables io-uring based integration tests.
This is not used by the main Syd binary. - utils default
-
Build helper utilities.
No reason to disable this unless you want fast build cycles.Required by syd-cat, syd-emacs, syd-fd, syd-fork, syd-fs, syd-ldd, syd-ls, syd-mem, syd-net, syd-path, syd-poc, syd-read, syd-rnd, syd-run, syd-sha, syd-stat, syd-sys, syd-tck, syd-tty and syd-utc binaries
- prof = gperftools, tcmalloc
-
Enable profiling.
Requires gperftools installed.Affects
config::PROF_SYSCALLS…
Features from optional dependencies
In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.
harness = false
- procfs oci?
-
Enables procfs
procfs is for syd-oci only.
Core syd code uses procfs-core only. - ringbuf log
- io-uring uring?
-
Enables io-uring =0.6
=0.7 breaks 32-bit compilation: https://builds.sr.ht/~alip/job/1401070
- iced-x86 asm
-
Enables iced-x86
instruction decoders (thx wikky!)
- raki asm
- yaxpeax-arch asm
- yaxpeax-arm asm
- linefeed sh
-
Enables linefeed
syd-sh deps.
- gperftools prof?
-
Enables gperftools
profiling deps.
- tcmalloc prof?
- clap oci?
-
Enables clap
syd-oci deps.
- libcgroups oci?
- libcontainer oci?
- liboci-cli oci?
- oci-spec oci?
- tabwriter oci?
- tracing oci?
- tracing-subscriber oci?