1 Star 0 Fork 12

Breeze/bl-rom-rt

forked from RustSBI/bl-rom-rt
关闭
 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
build.rs 2.19 KB
一键复制 编辑 原始数据 按行查看 历史
crk 提交于 2023-04-25 15:54 . lib: 编译生成镜像头
use std::{env, path::PathBuf};
fn main() {
let out = PathBuf::from(env::var_os("OUT_DIR").unwrap());
let ld = &out.join("linker.ld");
#[cfg(feature = "bl808-m0")]
std::fs::write(ld, LINKER_SCRIPT).unwrap();
#[cfg(feature = "bl808-d0")]
std::fs::write(ld, LINKER_SCRIPT).unwrap();
println!("cargo:rustc-link-arg=-T{}", ld.display());
println!("cargo:rustc-link-search={}", out.display());
}
#[cfg(feature = "bl808-m0")]
const LINKER_SCRIPT: &[u8] = b"
OUTPUT_ARCH(riscv)
ENTRY(_start)
MEMORY {
FLASH : ORIGIN = 0x58000000, LENGTH = 32M
WRAM : ORIGIN = 0x62030000, LENGTH = 160K
}
SECTIONS {
.head : ALIGN(4) {
KEEP(*(.head .head.*))
} > FLASH
.text : ALIGN(4) {
stext = .;
*(.text .text.*)
etext = .;
} > FLASH
.rodata : ALIGN(4) {
srodata = .;
*(.rodata .rodata.*)
*(.srodata .srodata.*)
. = ALIGN(4);
erodata = .;
} > WRAM
.data : ALIGN(4) {
sdata = .;
*(.data .data.*)
*(.sdata .sdata.*)
. = ALIGN(4);
edata = .;
} > WRAM
sidata = LOADADDR(.data);
.bss (NOLOAD) : ALIGN(4) {
*(.bss.uninit)
sbss = .;
*(.bss .bss.*)
*(.sbss .sbss.*)
ebss = .;
} > WRAM
/DISCARD/ : {
*(.eh_frame)
}
}";
#[cfg(feature = "bl808-d0")]
const LINKER_SCRIPT: &[u8] = b"
OUTPUT_ARCH(riscv)
ENTRY(_start)
MEMORY {
FLASH : ORIGIN = 0x58000000, LENGTH = 32M
DRAM : ORIGIN = 0x3EF80000, LENGTH = 512K
}
SECTIONS {
.head : ALIGN(8) {
KEEP(*(.head .head.*))
} > FLASH
.text : ALIGN(8) {
*(.text .text.*)
} > FLASH
.rodata : ALIGN(8) {
srodata = .;
*(.rodata .rodata.*)
*(.srodata .srodata.*)
. = ALIGN(8);
erodata = .;
} > DRAM
.data : ALIGN(8) {
sdata = .;
*(.data .data.*)
*(.sdata .sdata.*)
. = ALIGN(8);
edata = .;
} > DRAM
sidata = LOADADDR(.data);
.bss (NOLOAD) : ALIGN(8) {
*(.bss.uninit)
sbss = .;
*(.bss .bss.*)
*(.sbss .sbss.*)
ebss = .;
} > DRAM
/DISCARD/ : {
*(.eh_frame)
}
}";
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Rust
1
https://gitee.com/WangWangDui652/bl-rom-rt.git
git@gitee.com:WangWangDui652/bl-rom-rt.git
WangWangDui652
bl-rom-rt
bl-rom-rt
main

搜索帮助

23e8dbc6 1850385 7e0993f3 1850385