mirror of
https://github.com/DragonOS-Community/DragonOS.git
synced 2025-06-08 10:15:03 +00:00
* la64能够进入到kernel_main * ci: 添加为ubuntu编译qemu-loongarch64的脚本 * feat: la64能输出hello world * la64 安装gcc && 配置github ci * chore: 更新CI工作流和构建脚本中的Docker镜像版本至v1.10 Signed-off-by: longjin <longjin@DragonOS.org>
41 lines
981 B
Makefile
41 lines
981 B
Makefile
include ../env.mk
|
|
|
|
# 设置编译器
|
|
ifeq ($(ARCH), x86_64)
|
|
CCPREFIX=x86_64-linux-gnu-
|
|
else ifeq ($(ARCH), riscv64)
|
|
CCPREFIX=riscv64-linux-gnu-
|
|
else ifeq ($(ARCH), loongarch64)
|
|
CCPREFIX=loongarch64-unknown-linux-gnu-
|
|
else
|
|
$(error "Unsupported ARCH: $(ARCH)")
|
|
endif
|
|
|
|
export CC=$(CCPREFIX)gcc
|
|
export LD=$(CCPREFIX)ld
|
|
export AS=$(CCPREFIX)as
|
|
export NM=$(CCPREFIX)nm
|
|
export AR=$(CCPREFIX)ar
|
|
export OBJCOPY=$(CCPREFIX)objcopy
|
|
|
|
export DEBUG=DEBUG
|
|
|
|
export CFLAGS_DEFINE_ARCH="__$(ARCH)__"
|
|
|
|
export GLOBAL_CFLAGS := -fno-builtin -fno-stack-protector -D $(CFLAGS_DEFINE_ARCH) -D $(EMULATOR) -O1
|
|
|
|
ifeq ($(ARCH), x86_64)
|
|
GLOBAL_CFLAGS += -mcmodel=large -m64
|
|
else ifeq ($(ARCH), riscv64)
|
|
GLOBAL_CFLAGS += -mcmodel=medany -march=rv64gc -mabi=lp64d
|
|
else ifeq ($(ARCH), loongarch64)
|
|
GLOBAL_CFLAGS += -mcmodel=large -march=loongarch64
|
|
endif
|
|
|
|
ifeq ($(DEBUG), DEBUG)
|
|
GLOBAL_CFLAGS += -g
|
|
endif
|
|
|
|
export RUSTFLAGS := -C link-args=-znostart-stop-gc
|
|
export RUSTDOCFLAGS := -C link-args=-znostart-stop-gc
|