16 lines
530 B
Rust
16 lines
530 B
Rust
|
|
fn main() {
|
||
|
|
let arch = std::env::var("LBOS_ARCH").unwrap_or("riscv32".to_string());
|
||
|
|
println!("cargo:rerun-if-env-changed=LBOS_ARCH");
|
||
|
|
println!("cargo:rustc-cfg=feature=\"arch_{}\"", arch);
|
||
|
|
|
||
|
|
println!("cargo:rerun-if-changed=src/arch/{}/asm", arch);
|
||
|
|
|
||
|
|
// specify the linker.ld script
|
||
|
|
println!("cargo:rustc-link-arg=-Tsrc/arch/{arch}/asm/linker.ld");
|
||
|
|
|
||
|
|
// output relocation info
|
||
|
|
println!("cargo:rustc-link-arg=--emit-relocs");
|
||
|
|
|
||
|
|
// don't page align sections
|
||
|
|
println!("cargo:rustc-link-arg=-n");
|
||
|
|
}
|