diff --git a/examples/rust-gcoap/Cargo.lock b/examples/rust-gcoap/Cargo.lock index 0cf8a67238..b994dcef61 100644 Binary files a/examples/rust-gcoap/Cargo.lock and b/examples/rust-gcoap/Cargo.lock differ diff --git a/examples/rust-gcoap/Cargo.toml b/examples/rust-gcoap/Cargo.toml index c461e5e75b..99d15c69d8 100644 --- a/examples/rust-gcoap/Cargo.toml +++ b/examples/rust-gcoap/Cargo.toml @@ -19,7 +19,8 @@ codegen-units = 1 opt-level = "s" [dependencies] -riot-wrappers = { version = "^0.9.0", features = [ "set_panic_handler", "panic_handler_format", "with_coap_message", "with_coap_handler" ] } +riot-wrappers = { version = "^0.9.0", features = [ "set_panic_handler", "panic_handler_format", "with_coap_message", "with_coap_handler", "provide_critical_section_1_0" ] } +portable-atomic = { version = "1", features = [ "critical-section" ] } coap-message-demos = { git = "https://gitlab.com/chrysn/coap-message-demos/", default-features = false } coap-handler-implementations = "0.5" @@ -31,3 +32,9 @@ riot-coap-handler-demos = { git = "https://gitlab.com/etonomy/riot-module-exampl # RIOTBASE. rust_riotmodules = { path = "../../sys/rust_riotmodules/" } static_cell = "2.1.0" + +[patch.crates-io] +# from https://github.com/seanmonstar/try-lock/pull/11, necessary for those +# platforms without atomics (which also needs provide_critical_section_1_0 from +# riot-wrappers, and portable-atomic/critical-section to bridge the gap) +try-lock = { git = "https://github.com/seanmonstar/try-lock", rev = "45c39685b56a4dba1b71bdbbbe5f731c3c77dc50" }