An error occurred while loading the file. Please try again.
-
陶四能 authored
- /bootloader/SBI/sbi-k210 - /bootloader/SBI/sbi-qemu - /bootloader/SBI/rustsbi-k210/build.rs - /bootloader/SBI/rustsbi-k210/Cargo.toml - /bootloader/SBI/rustsbi-k210/justfile - /bootloader/SBI/rustsbi-k210/kendryte-k210.dtsi - /bootloader/SBI/rustsbi-k210/link-k210.ld - /bootloader/SBI/rustsbi-k210/README.md - /bootloader/SBI/rustsbi-k210/rust-toolchain - /bootloader/SBI/rustsbi-k210/.cargo/config.toml - /bootloader/SBI/rustsbi-k210/src/console.rs - /bootloader/SBI/rustsbi-k210/src/main.back.rs - /bootloader/SBI/rustsbi-k210/src/main.rs - /bootloader/SBI/rustsbi-k210/src/serial.rs - /bootloader/SBI/rustsbi-qemu/build.rs - /bootloader/SBI/rustsbi-qemu/Cargo.toml - /bootloader/SBI/rustsbi-qemu/justfile - /bootloader/SBI/rustsbi-qemu/link-qemu.ld - /bootloader/SBI/rustsbi-qemu/README.md - /bootloader/SBI/rustsbi-qemu/rust-toolchain - /bootloader/SBI/rustsbi-qemu/.cargo/config.toml - /bootloader/SBI/rustsbi-qemu/src/hal.rs - /bootloader/SBI/rustsbi-qemu/src/main.rs - /bootloader/SBI/rustsbi-qemu/src/hal/clint.rs - /bootloader/SBI/rustsbi-qemu/src/hal/ns16550a.rs - /debug/kendryte_openocd/openocd - /debug/openocd_cfg/ft2232c.cfg - /debug/openocd_cfg/k210.cfg - /debug/openocd_cfg/openocd_ftdi.cfg - /doc/report_2020_12_26.md - /doc/rustsbi.md - /doc/xv6-k210-report-车春池.md - /doc/内核原理-内存管理.md - /doc/内核原理-系统调用.md - /doc/内核原理-进程管理.md - /doc/构建调试-SD卡驱动.md - /doc/构建调试-SD卡驱动v2.md - /doc/构建调试-外部中断.md - /doc/构建调试-外部中断v2.md - /doc/构建调试-开机启动.md - /doc/构建调试-文件系统.md - /doc/构建调试-时钟中断.md - /doc/构建调试-系统调用.md - /doc/构建调试-进程管理.md - /doc/用户使用-内存管理.md - /doc/用户使用-文件系统.md - /doc/用户使用-系统调用.md - /img/sdcard.png - /img/s_extern_interrupt.png - /img/xv6-k210_on_k210.gif - /img/xv6-k210_on_qemu.gif - /img/xv6-k210_run.gif - /img/boot.jpg - /img/mem_map.jpg - /img/proc.jpg - /img/run-k210.png - /img/sd_spi_cmd13_response.png - /img/sd_spi_cmd_format.png - /img/sd_spi_init.png - /img/sd_spi_ocr.png - /img/sd_spi_read_single_block.png - /img/sd_spi_write_single_block.png - /img/syscall_test.png - /img/timer_interrupt.png - /img/xv6_k210_run_proc.png - /kernel/bio.c - /kernel/console.c - /kernel/disk.c - /kernel/dmac.c - /kernel/entry_k210.S - /kernel/entry_qemu.S - /kernel/exec.c - /kernel/fat32.c - /kernel/file.c - /kernel/fpioa.c - /kernel/gpiohs.c - /kernel/intr.c - /kernel/kalloc.c - /kernel/kernelvec.S - /kernel/logo.c - /kernel/main.c - /kernel/pipe.c - /kernel/plic.c - /kernel/printf.c - /kernel/proc.c - /kernel/sdcard.c - /kernel/sleeplock.c - /kernel/spi.c - /kernel/spinlock.c - /kernel/string.c - /kernel/swtch.S - /kernel/syscall.c - /kernel/sysctl.c - /kernel/sysfile.c - /kernel/sysproc.c - /kernel/timer.c - /kernel/trampoline.S - /kernel/trap.c - /kernel/uart.c - /kernel/utils.c - /kernel/virtio_disk.c - /kernel/vm.c - /kernel/xv6-riscv-license - /kernel/include/buf.h - /kernel/include/console.h - /kernel/include/defs.h - /kernel/include/disk.h - /kernel/include/dmac.h - /kernel/include/elf.h - /kernel/include/fat32.h - /kernel/include/fcntl.h - /kernel/include/file.h - /kernel/include/fpioa.h - /kernel/include/gpiohs.h - /kernel/include/intr.h - /kernel/include/kalloc.h - /kernel/include/memlayout.h - /kernel/include/param.h - /kernel/include/pipe.h - /kernel/include/plic.h - /kernel/include/printf.h - /kernel/include/proc.h - /kernel/include/riscv.h - /kernel/include/sbi.h - /kernel/include/sdcard.h - /kernel/include/sleeplock.h - /kernel/include/spi.h - /kernel/include/spinlock.h - /kernel/include/stat.h - /kernel/include/string.h - /kernel/include/syscall.h - /kernel/include/sysctl.h - /kernel/include/sysinfo.h - /kernel/include/sysnum.h - /kernel/include/timer.h - /kernel/include/trap.h - /kernel/include/types.h - /kernel/include/utils.h - /kernel/include/virtio.h - /kernel/include/vm.h - /linker/k210.ld - /linker/qemu.ld - /tools/flash-list.json - /tools/kflash.py - /xv6-user/cat.c - /xv6-user/echo.c - /xv6-user/find.c - /xv6-user/forktest.c - /xv6-user/grep.c - /xv6-user/grind.c - /xv6-user/init.c - /xv6-user/initcode.S - /xv6-user/kill.c - /xv6-user/ln.c - /xv6-user/ls.c - /xv6-user/mkdir.c - /xv6-user/mv.c - /xv6-user/printf.c - /xv6-user/rm.c - /xv6-user/sh.c - /xv6-user/sleep.c - /xv6-user/strace.c - /xv6-user/stressfs.c - /xv6-user/test.c - /xv6-user/ulib.c - /xv6-user/umalloc.c - /xv6-user/user.h - /xv6-user/usertests.c - /xv6-user/usys.pl - /xv6-user/wc.c - /xv6-user/xargs.c - /xv6-user/xargstest.sh - /xv6-user/xv6-riscv-license - /xv6-user/zombie.c - /.gitignore - /LICENSE - /Makefile - /README - /README.md - /README_cn.md
0ef2d355
// Ref: https://github.com/luojia65/rustsbi/blob/master/platform/k210/build.rs
use std::env;
use std::fs;
use std::io::Write;
use std::path::PathBuf;
fn main() {
let out_dir = PathBuf::from(env::var("OUT_DIR").unwrap());
// Put the linker script somewhere the linker can find it
fs::File::create(out_dir.join("link-k210.ld"))
.unwrap()
.write_all(include_bytes!("link-k210.ld"))
.unwrap();
println!("cargo:rustc-link-search={}", out_dir.display());
println!("cargo:rerun-if-changed=build.rs");
println!("cargo:rerun-if-changed=link-k210.ld");
}