#
# Copyright (c) 2026, Chloe M.
# Provided under the BSD-3 clause
#
# Description:  OS core build script
# Author:		Chloe M.
#

.SILENT:
include ../../mk/stos.mk

CFILES = $(shell ls)
CFILES += $(shell find ../init -name "*.c")
CFILES += $(shell find ../xt -name "*.c")
CFILES += $(shell find ../lib -name "*.c")
CFILES += $(shell find ../drivers -name "*.c")
CFILES += $(shell find ../mm -name "*.c")
CFILES += $(shell find ../ex -name "*.c")
CFILES += $(shell find ../ob -name "*.c")
CFILES += $(shell find bpal -name "*.c")
CFILES += $(shell find synch -name "*.c")
DFILES = $(CFILES:.c=.d)
OFILES = $(CFILES:.c=.o)

CFLAGS =			\
	$(SYS_CFLAGS)	\
	-MMD			\
	-D_KERNEL		\
	-MMD			\
	-DPRINTF_DISABLE_SUPPORT_PTRDIFF_T \
	-DPRINTF_DISABLE_SUPPORT_FLOAT	   \
	-I../xt/flanterm/src			   \
	-I../head						   \
	-I../target						   \
	-I$(ST_PROJECT_ROOT)/paw/spkg/head \
	-I$(ST_PROJECT_ROOT)/sdk/head	   \
	-D_BOOT_PROTO="\"$(ST_BOOT_PROTOCOL)\""

.PHONY: all
all: $(OFILES)

%.o: %.c
	$(PROMPT) "CC" $<
	$(SYS_CC) -c $(CFLAGS) $< -o $@
