1 Star 0 Fork 34

siauhoo/rust_shyper

forked from openEuler/rust_shyper 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
Makefile 1.89 KB
一键复制 编辑 原始数据 按行查看 历史
# Path
# please make a rootfs image by yourself
DISK = vm0.img
# Compile
ARCH ?= aarch64
PROFILE ?= release
BOARD ?= tx2
# features, seperate with comma `,`
FEATURES =
# Toolchain
TOOLCHAIN=aarch64-none-elf
QEMU = qemu-system-aarch64
GDB = ${TOOLCHAIN}-gdb
OBJDUMP = ${TOOLCHAIN}-objdump
OBJCOPY = ${TOOLCHAIN}-objcopy
IMAGE=rust_shyper
TARGET_DIR=target/${ARCH}/${PROFILE}
# Cargo flags.
CARGO_FLAGS ?= -Z build-std=core,alloc --target ${ARCH}.json --no-default-features --features ${BOARD},${FEATURES}
ifeq (${PROFILE}, release)
CARGO_FLAGS := ${CARGO_FLAGS} --release
endif
.PHONY: build qemu tx2 pi4 tx2_update tx2_ramdisk gdb clean
build:
cargo build ${CARGO_FLAGS}
${OBJDUMP} --demangle -d ${TARGET_DIR}/${IMAGE} > ${TARGET_DIR}/t.txt
qemu:
$(MAKE) build BOARD=qemu
${OBJCOPY} ${TARGET_DIR}/${IMAGE} -O binary ${TARGET_DIR}/${IMAGE}.bin
tx2:
$(MAKE) build BOARD=tx2
# bash upload_release
tx2_ramdisk:
$(MAKE) build BOARD=tx2 FEATURES=ramdisk
# bash upload_release
tx2_update:
$(MAKE) build BOARD=tx2 FEATURES=update
# bash upload_update
pi4:
$(MAKE) build BOARD=pi4
# bash pi4_upload_release
QEMU_COMMON_OPTIONS = -machine virt,virtualization=on,gic-version=2\
-m 8g -cpu cortex-a57 -smp 4 -display none -global virtio-mmio.force-legacy=false\
-kernel ${TARGET_DIR}/${IMAGE}.bin
QEMU_SERIAL_OPTIONS = -serial mon:stdio #\
-serial telnet:localhost:12345,server
QEMU_NETWORK_OPTIONS = -netdev user,id=n0,hostfwd=tcp::5555-:22 -device virtio-net-device,bus=virtio-mmio-bus.24,netdev=n0
QEMU_DISK_OPTIONS = -drive file=${DISK},if=none,format=raw,id=x0 -device virtio-blk-device,drive=x0,bus=virtio-mmio-bus.25
run: qemu
${QEMU} ${QEMU_COMMON_OPTIONS} ${QEMU_SERIAL_OPTIONS} ${QEMU_NETWORK_OPTIONS} ${QEMU_DISK_OPTIONS} \
debug: qemu
${QEMU} ${QEMU_COMMON_OPTIONS} ${QEMU_SERIAL_OPTIONS} ${QEMU_NETWORK_OPTIONS} ${QEMU_DISK_OPTIONS} \
-s -S
gdb:
${GDB} -x gdb/aarch64.gdb
clean:
cargo clean
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/siauhoo/rust_shyper.git
git@gitee.com:siauhoo/rust_shyper.git
siauhoo
rust_shyper
rust_shyper
master

搜索帮助