[package] name = "rust-gcoap" version = "0.1.0" authors = ["Christian Amsüss "] edition = "2018" resolver = "2" [lib] crate-type = ["staticlib"] [profile.release] # Setting the panic mode has little effect on the built code (as Rust on RIOT # supports no unwinding), but setting it allows builds on native without using # the nightly-only lang_items feature. panic = "abort" # This is a typical set of options that helps Rust binaries stay small lto = true 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", "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" riot-coap-handler-demos = { git = "https://gitlab.com/etonomy/riot-module-examples/", features = [ "vfs", "saul", "nib", "ping" ] } # While currently this exmple does not use any RIOT modules implemented in # Rust, that may change; it is best practice for any RIOT application that has # its own top-level Rust crate to include rust_riotmodules from inside # 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" }