#boot #link #macro

macro no-std link-boot

macros for link mod to boot section

1 unstable release

Uses new Rust 2024

new 0.1.0 Mar 29, 2025

#36 in #boot

MIT license

4KB

Link Boot

This is a macros crate to link mod to .text.boot or .data.boot section.

Example

#[link_boot::link_boot]
mod boot {
    pub fn fooo() {
        println!("foo");
    }

    pub static BAR: i32 = 1;

    struct Cat {}
}

expand to:

mod boot {
    #[unsafe(link_section = ".text.boot")]
    pub fn fooo() {
        {
            std::io::_print(std::format_args_nl!("foo"));
        };
    }
    #[unsafe(link_section = ".data.boot")]
    pub static BAR: i32 = 1;
    struct Cat {}
}

Dependencies

~195–620KB
~15K SLoC