mirror of
https://github.com/DragonOS-Community/DragonOS.git
synced 2025-06-08 14:16:47 +00:00
* refacotr: remove all c files Use Rust to implement the symbol table generator. Delete unused header files and c files Adjust the makefile in the debug directory Signed-off-by: Godones <chenlinfeng25@outlook.com> * fix: remove extern "C" rs_* functions move gen_kallsyms.rs to build-scripts Signed-off-by: Godones <chenlinfeng25@outlook.com>
43 lines
1.1 KiB
Makefile
43 lines
1.1 KiB
Makefile
# 导入环境变量
|
|
include ./env.mk
|
|
|
|
# export ARCH ?= x86_64
|
|
# 如果是x86_64, 则使用x86_64-unknown-none.json作为target
|
|
ifeq ($(ARCH), x86_64)
|
|
export TARGET_JSON=arch/x86_64/x86_64-unknown-none.json
|
|
else ifeq ($(ARCH), riscv64)
|
|
export TARGET_JSON=arch/riscv64/riscv64gc-unknown-none-elf.json
|
|
endif
|
|
|
|
export CARGO_ZBUILD=-Z build-std=core,alloc,compiler_builtins -Z build-std-features=compiler-builtins-mem
|
|
|
|
.PHONY: ECHO
|
|
ECHO:
|
|
@echo "$@"
|
|
|
|
all:
|
|
$(MAKE) -C ../build-scripts all
|
|
$(MAKE) -C src all ARCH=$(ARCH) || (sh -c "echo 内核编译失败" && exit 1)
|
|
|
|
|
|
clean:
|
|
$(MAKE) -C src clean ARCH=$(ARCH)
|
|
|
|
.PHONY: fmt
|
|
fmt:
|
|
RUSTFLAGS="$(RUSTFLAGS)" cargo fmt --all $(FMT_CHECK)
|
|
ifeq ($(ARCH), x86_64)
|
|
RUSTFLAGS="$(RUSTFLAGS)" cargo +nightly-2024-11-05 clippy --all-features --target x86_64-unknown-none
|
|
endif
|
|
|
|
|
|
.PHONY: check
|
|
check: ECHO
|
|
$(MAKE) -C src check ARCH=$(ARCH)
|
|
|
|
test:
|
|
# 测试内核库
|
|
RUSTFLAGS="$(RUSTFLAGS)" cargo +nightly-2024-11-05 test --workspace --exclude dragonos_kernel rbpf
|
|
|
|
test-rbpf:
|
|
cd crates/rbpf && RUSTFLAGS="$(RUSTFLAGS)" cargo +nightly-2024-11-05 test --features=std,user,cranelift
|