新增基于 Python 的构建脚本 `cbuild.py`,支持包管理、依赖解析和模块化编译。 同时添加 `.gitignore` 忽略 `build` 目录,并在 `justfile` 中更新构建命令。 移除了原有的 `lib/Makefile` 和主目录下的相关 make 规则,统一使用新构建系统。
30 lines
587 B
Makefile
30 lines
587 B
Makefile
# VM := ../../rv32-vm
|
|
# CC := ../../ccompiler
|
|
# STD_CC := gcc
|
|
|
|
# TESTS := $(wildcard *.c)
|
|
|
|
# # 定义所有测试目标
|
|
# TEST_TARGETS := $(patsubst %.c, %_test, $(TESTS))
|
|
|
|
# all: $(TEST_TARGETS)
|
|
|
|
# %_test: %.c
|
|
# @$(STD_CC) -g -o $@ $<
|
|
# @$(CC) $< flat.bin
|
|
# @./$@ ; ret_gcc=$$?
|
|
# @$(VM) flat.bin ; ret_vm=$$?
|
|
# @echo "Testing $@"
|
|
# @if [ $$ret_gcc -eq $$ret_vm ]; then \
|
|
# echo "$@ passed"; \
|
|
# else \
|
|
# echo "$@ failed: GCC returned $$ret_gcc, VM returned $$ret_vm"; \
|
|
# exit 1; \
|
|
# fi
|
|
|
|
# clean:
|
|
# rm -f $(TEST_TARGETS) flat.bin
|
|
|
|
# .PHONY: all clean
|
|
all:
|
|
python test.py
|