Working i386 paging and liballoc
This commit is contained in:
45
build/make.config
Normal file
45
build/make.config
Normal file
@@ -0,0 +1,45 @@
|
||||
cc := clang
|
||||
make := make
|
||||
objcopy := llvm-objcopy
|
||||
|
||||
platform ?= i386_pc
|
||||
build ?= release
|
||||
|
||||
ifeq ($(platform),i386_pc)
|
||||
clang_res_dir := $(shell $(cc) -print-resource-dir)
|
||||
|
||||
kernel_cflags := --target=i386-none-elf \
|
||||
-nostdinc \
|
||||
-nostdlib \
|
||||
-ffreestanding \
|
||||
-fno-builtin \
|
||||
-std=c11 \
|
||||
-pedantic \
|
||||
-Wall \
|
||||
-Wextra
|
||||
|
||||
ifeq ($(build),debug)
|
||||
kernel_cflags += -O0 -g
|
||||
endif
|
||||
|
||||
ifeq ($(build),release)
|
||||
kernel_cflags += -Oz
|
||||
endif
|
||||
|
||||
kernel_ldflags := -mcpu=i386 \
|
||||
--target=i386-none-elf \
|
||||
-nostdlib \
|
||||
-ffreestanding \
|
||||
-fno-builtin \
|
||||
-fuse-ld=lld \
|
||||
-flto \
|
||||
-static \
|
||||
-Wl,--build-id=none \
|
||||
$(clang_res_dir)/lib/*/libclang_rt.builtins-i386.a
|
||||
|
||||
ifeq ($(build),debug)
|
||||
kernel_ldflags += -g
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
Reference in New Issue
Block a user