[workspace] default-members = [ "services/log-server", "services/graphics-server", "services/ticktimer-server", "services/xous-names", "services/keyboard", "services/com", "services/trng", "services/gam", "services/status", "imports/com_rs-ref", "services/ime-plugin-api", "services/ime-frontend", "services/ime-plugin-shell", "services/content-plugin-api", "services/shellchat", "services/llio", "services/susres", "services/codec", "services/engine-sha512", "services/engine-25519", "services/aes", "services/spinor", "services/root-keys", "services/jtag", "services/pddb", "services/net", "services/dns", "services/modals", "services/usb-device-xous", ] members = [ "xous-ipc", "xous-rs", "tools", "services/aes-test", "services/graphics-server", "services/log-server", "services/ticktimer-server", "services/com", "services/xous-names", "services/keyboard", "services/kernel-test", "services/trng", "services/gam", "services/status", "services/ime-frontend", "services/ime-plugin-shell", "services/ime-plugin-tts", "services/shellchat", "svd2repl", "svd2utra", "xtask", "imports/com_rs-ref", "imports/getrandom", "services/ime-plugin-api", "services/content-plugin-api", "services/llio", "services/codec", "services/engine-sha512", "services/engine-25519", "services/aes", "services/spinor", "services/root-keys", "services/jtag", "tools/wycheproof-import", "services/pddb", "services/net", "services/dns", "services/modals", "apps/ball", "apps/hello", "apps/repl", "apps/vault", "apps/vault/tools/vaultbackup-rs", "services/libstd-test", "services/ffi-test", "services/tts", "services/test-spawn", "services/test-spawn/spawn", "services/usb-test", "services/usb-device-xous", "tools/perflib", "kernel", "loader", ] resolver = "2" # These packages have custom RUSTFLAGS, so if they # were included in the workspace they would cause # packages to be rebuilt every time they were touched. # Keep them out of the main workspace. exclude = [ "utralib", # Exclude UTRA, since it is machine-generated. "locales", # exclude because it is machine-generated "xtask", # exclude the API crates, as they are domiciled here but referenced via crates.io "api/log-server" ] [profile.release] codegen-units = 1 # 1 better optimizations debug = false strip = true lto = "fat" incremental = true #panic = "abort" # Remove panic output, which can reduce file size #opt-level = 1 # z,s: Optimize for size instead of performance; 1 for easier debugging # Activate these patches to use local versions of xous kernel core files instead of crates.io sourced versions. # Activating these also reduces your dependency on crates.io for critical source APIs, if that's part of your # threat model; but for now we're favoring sources from crates.io to facility third party adoption of Xous. # [patch.crates-io] # xous = {path = "xous-rs"} # xous-ipc = {path = "xous-ipc"} # prefer hardware-accelerated versions of services [patch.crates-io.sha2] path = "services/engine-sha512" [patch.crates-io.aes] path = "services/aes" [patch.crates-io.xous-names] path = "services/xous-names" [patch.crates-io.curve25519-dalek] git="https://github.com/betrusted-io/curve25519-dalek.git" branch="main" #path = "../curve25519-dalek" # when doing local dev work # feature overrides are specified at the crate level [patch."https://github.com/betrusted-io/xous-engine-25519.git"] engine-25519 = {path = "services/engine-25519"} [patch.crates-io.usb-device] git="https://github.com/betrusted-io/usb-device.git" branch="main" #path = "../usb-device" # for local dev #[patch.crates-io.usbd-human-interface-device] #path = "../usbd-human-interface-device" [patch.crates-io.getrandom] path = "imports/getrandom" [patch.crates-io.ring] # path = "../ring-xous" # for local dev only git="https://github.com/betrusted-io/ring-xous" rev="36e419d05ce1d6957a3cc25092f2d68feba8e9a3" # use the commitref because we're still updating the branch #branch="0.16.20-cleanup"