Kernel built from the per-module stdlib objects plus my_kernel (no source concatenation). This is what most tests boot.
()
| 27 | .join("crates/os-runtime/kernel/kernel.build"), |
| 28 | ) |
| 29 | .expect("kernel build file parse"); |
| 30 | BuildExecutor::build(&manifest) |
| 31 | .expect("kernel manifest build") |
| 32 | .linked |
| 33 | }) |
| 34 | } |
| 35 | |
| 36 | // Built the way the GUI does it, per stdlib module. Covers the separate-object |
| 37 | // link path (the "9 enable" page fault) that the single-concat path misses. |
| 38 | fn cached_kernel_multi_module() -> &'static AssembledOutput { |
| 39 | static KERNEL: OnceLock<AssembledOutput> = OnceLock::new(); |
| 40 | KERNEL.get_or_init(|| { |
| 41 | let manifest = BuildManifest::from_file( |
| 42 | std::path::Path::new(env!("CARGO_MANIFEST_DIR")) |
| 43 | .join("crates/os-runtime/kernel/kernel.build"), |
| 44 | ) |
no outgoing calls