# Foundry OS: the Rust userland, as one Cargo workspace. # # Every program is a `no_std` binary for the built-in `x86_64-unknown-none` # target (no operating-system standard library), linked as a static ET_EXEC # at Rustbelt's user base 0x80_0040_0000 (see link.ld). The shared runtime # (syscall wrappers, println!, heap, _start) is the library crate rbrt/ # (imported as `ulib`); see rbrt/README.md. Since M1b it is a real crate, # no longer a file every program includes with `#[path = ...] mod ulib;`. [workspace] resolver = "3" members = ["rbrt", "rbsh", "coreutils-rs", "net", "sys", "init"] [workspace.package] version = "0.1.0" edition = "2024" license = "MIT OR Apache-2.0" publish = false # The same code-generation settings the kernel's build.rs passes to rustc: # -C panic=abort -C opt-level=2 -C debuginfo=0 -C strip=debuginfo. [profile.release] panic = "abort" opt-level = 2 debug = 0 strip = "debuginfo" [profile.dev] panic = "abort"