summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Moffett <ian@osmora.org>2025-10-05 18:51:17 -0400
committerIan Moffett <ian@osmora.org>2025-10-05 18:51:17 -0400
commitb7ed37d5af4bdf78f2fbed4af896e9956bc85168 (patch)
tree303c5022859187bb5e75863d5a82e14377a43d8c
parent72f7a04345e8f75041179960dfde3089b53c7344 (diff)
build: Use toolchain for user programs
Signed-off-by: Ian Moffett <ian@osmora.org>
-rw-r--r--src/Makefile5
-rw-r--r--src/cmd/Makefile4
-rw-r--r--src/lib/libc/Makefile2
3 files changed, 6 insertions, 5 deletions
diff --git a/src/Makefile b/src/Makefile
index 5b6f727..aa642f8 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -10,6 +10,7 @@ ISO = lunos.iso
# Build tools
BINUTILS_DIR := $(shell pwd)/cc/toolchain/build-binutils
+USER_CC = $(shell pwd)/cc/gcc/bin/x86_64-pc-ethos-gcc
CC := clang
LD := ld
AS := as
@@ -28,12 +29,12 @@ sys:
.PHONY: user
user:
- cd cmd/; make CC=$(CC) AS=$(AS) LD=$(LD) TARGET=$(TARGET) \
+ cd cmd/; make CC=$(USER_CC) AS=$(AS) LD=$(LD) TARGET=$(TARGET) \
SYSROOT=$(SYSROOT)
.PHONY: lib
lib:
- cd lib/; make CC=$(CC) AS=$(AS) LD=$(LD) TARGET=$(TARGET) \
+ cd lib/; make CC=$(USER_CC) AS=$(AS) LD=$(LD) TARGET=$(TARGET) \
SYSROOT=$(SYSROOT)
root:
diff --git a/src/cmd/Makefile b/src/cmd/Makefile
index 86575a2..6caf79b 100644
--- a/src/cmd/Makefile
+++ b/src/cmd/Makefile
@@ -6,8 +6,8 @@ LD =
.PHONY: all
all:
- cd init/; LDSCRIPT=$(LDSCRIPT) CC=$(CC) AS=$(AS) LD=$(LD) SYSROOT=$(SYSROOT) \
- LIBC_DIR=$(shell pwd)/../$(LIBC_DIR) make
+ cd init/; make LDSCRIPT=$(LDSCRIPT) CC=$(CC) AS=$(AS) LD=$(LD) SYSROOT=$(SYSROOT) \
+ LIBC_DIR=$(shell pwd)/../$(LIBC_DIR)
.PHONY: clean
clean:
diff --git a/src/lib/libc/Makefile b/src/lib/libc/Makefile
index f2e171a..c69c470 100644
--- a/src/lib/libc/Makefile
+++ b/src/lib/libc/Makefile
@@ -8,7 +8,7 @@ all: build sys $(OBJ) target
ar rcs $(LIBC_OUT) $(OBJ)
%.o: %.c
- $(CC) -Iinclude/ -I$(TARGET)/include/ -c $< -o $@
+ $(CC) -ffreestanding -nostdlib -Iinclude/ -I$(TARGET)/include/ -c $< -o $@
.PHONY: target
target: