summaryrefslogtreecommitdiff
path: root/src/sys
diff options
context:
space:
mode:
authorIan Moffett <ian@osmora.org>2025-09-28 19:58:03 -0400
committerIan Moffett <ian@osmora.org>2025-09-28 19:59:06 -0400
commit3447909caaca06c65cb17f9d16e4471478f67376 (patch)
treef6fc0acca9191e877f7ecad7288981440596c719 /src/sys
parente1a6b42fa552f541a69498157fcdf79686243428 (diff)
build: Use clang during early state
Use clang during early state until we configure our own cross compiler for L5 Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'src/sys')
-rw-r--r--src/sys/arch/amd64/Makefile6
-rw-r--r--src/sys/conf/sys.mk3
-rw-r--r--src/sys/os/Makefile5
3 files changed, 7 insertions, 7 deletions
diff --git a/src/sys/arch/amd64/Makefile b/src/sys/arch/amd64/Makefile
index 5f3722a..0113b47 100644
--- a/src/sys/arch/amd64/Makefile
+++ b/src/sys/arch/amd64/Makefile
@@ -5,7 +5,8 @@ override PROMPT := printf "%s\t\t%s\n"
CONF := $(shell cat conf/GENERIC | $(TOOLS)/kconf/kconf)
TARGET_BIN = ../../l5
TARGET_INC = -I../../target/header/
-CFLAGS = -I../../include/ -I../../include/lib/ $(TARGET_INC) $(MI_CFLAGS) $(MD_CFLAGS) $(CONF)
+CFLAGS = -I../../include/ -I../../include/lib/ $(TARGET_INC) $(MI_CFLAGS) $(MD_CFLAGS) $(CONF) \
+ -target x86_64-elf
CFILES = $(shell find . -name "*.c")
ASMFILES = $(shell find . -name "*.S")
@@ -14,11 +15,10 @@ ASMOBJECTS = $(ASMFILES:.S=.S.o)
DEPS = $(CFILES:.c=.d)
ASMDEPS = $(ASMFILES:.S=.S.d)
OBJECTS = $(CFILES:%.c=%.o)
-LD_FLAGS = -Tconf/sys.ld -L../../target --whole-archive -l:libkern.a --no-whole-archive
+LD_FLAGS = -Tconf/sys.ld
.PHONY: all
all: $(OBJECTS) $(ASMOBJECTS)
- $(LD) $(OBJECTS) $(ASMOBJECTS) -o $(TARGET_BIN) $(LD_FLAGS)
-include $(DEPS)
%.o: %.c
diff --git a/src/sys/conf/sys.mk b/src/sys/conf/sys.mk
index d6f51a9..4893549 100644
--- a/src/sys/conf/sys.mk
+++ b/src/sys/conf/sys.mk
@@ -12,4 +12,5 @@ override MI_CFLAGS = -fexceptions --std=gnu11 -ffreestanding -fno-stack-protecto
-Werror=incompatible-pointer-types -Werror=int-to-pointer-cast \
-Werror=return-type -mno-red-zone -mcmodel=kernel \
-D_KERNEL -Wno-pointer-sign -MMD -nostdinc \
- -Wno-format-pedantic -Wno-attributes -D_KERNEL $(MD_CFLAGS)
+ -Wno-format-pedantic -Wno-attributes -D_KERNEL $(MD_CFLAGS) -O0 \
+ -Wno-switch -Wno-c23-extensions
diff --git a/src/sys/os/Makefile b/src/sys/os/Makefile
index da481ec..0cd7817 100644
--- a/src/sys/os/Makefile
+++ b/src/sys/os/Makefile
@@ -4,8 +4,8 @@ include ../conf/sys.mk
override PROMPT := printf "%s\t\t%s\n"
CONF := $(shell cat ../conf/GENERIC | $(TOOLS)/kconf/kconf)
-TARGET_LIB = ../target/libkern.a
-CFLAGS = -I../include/ -I../include/lib/ -I../target/header/ $(MI_CFLAGS) -O0 $(CONF)
+CFLAGS = -I../include/ -I../include/lib/ -I../target/header/ $(MI_CFLAGS) -O0 $(CONF) \
+ -target x86_64-elf
CFILES = $(shell find . -name "*.c")
CFILES += $(shell find ../vm -name "*.c")
CFILES += $(shell find ../lib -name "*.c")
@@ -20,7 +20,6 @@ OBJECTS = $(CFILES:%.c=%.o)
.PHONY: all
all: $(OBJECTS)
$(PROMPT) " MI.AR " $<
- ar rcs $(TARGET_LIB) $(OBJECTS)
-include $(DEPS)
%.o: %.c