diff --git a/Cargo.toml b/Cargo.toml index c71210140b..f293d48653 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,5 +1,6 @@ [workspace] resolver = "3" +members = [".", "rmm"] [package] name = "kernel" @@ -130,4 +131,18 @@ debug = "full" # same type, so `?` conversions in scheme-utils / daemon # compile cleanly. [patch.crates-io] +# Phase J: override libredox 0.1.17 to use the local +# fork at ../libredox/ (which itself uses the local syscall +# fork). This breaks the libredox::error::Error <-> +# syscall::Error type-identity barrier that previously +# caused E0277 errors in scheme-utils and daemon. libredox = { path = "../libredox" } +# Phase J: the kernel's redox_syscall dep is a git URL +# (not crates.io), so [patch.crates-io] doesn't apply. +# Use a [patch.""] section to match the dep source. +# The local fork at ../syscall adds the EnterS2Idle / +# ExitS2Idle AcpiVerb variants — the kernel's direct use +# of AcpiVerb in src/scheme/acpi.rs's kcall handler +# needs the fork to see these variants. +[patch."https://gitlab.redox-os.org/redox-os/syscall.git"] +redox_syscall = { path = "../syscall" }