kernel: implement initcalls and a testing system

This commit is contained in:
2023-02-26 10:05:39 +00:00
parent bc1bc9fec5
commit d41ea0cd52
16 changed files with 314 additions and 40 deletions

View File

@@ -19,7 +19,7 @@ include arch/$(SOCKS_ARCH)/config.mk
# Platform-independent kernel source files
####################################
KERNEL_SRC_DIRS := init kernel vm ds util obj
KERNEL_SRC_DIRS := init kernel vm ds util obj test
KERNEL_C_FILES := $(foreach dir,$(KERNEL_SRC_DIRS),$(wildcard $(dir)/*.c))
KERNEL_OBJ := $(addprefix $(BUILD_DIR)/,$(KERNEL_C_FILES:.c=.o))
@@ -34,10 +34,10 @@ LIBC_OBJ := $(addprefix $(BUILD_DIR)/,$(LIBC_C_FILES:.c=.o))
BUILD_ID := $(shell tools/generate_build_id.py --arch $(SOCKS_ARCH))
CFLAGS := $(CFLAGS) -DBUILD_ID=\"$(BUILD_ID)\" -g -Wall -Werror -pedantic \
-Iinclude -Iarch/$(SOCKS_ARCH)/include -Ilibc/include -Os
-Iinclude -Iarch/$(SOCKS_ARCH)/include -Ilibc/include
ASMFLAGS := $(ASMFLAGS) -DBUILD_ID=\"$(BUILD_ID)\"
LDFLAGS := $(LDFLAGS) -g -Os
LDFLAGS := $(LDFLAGS) -g
ALL_KERNEL_OBJECT_FILES := $(KERNEL_OBJ) $(ARCH_OBJ) $(LIBC_OBJ)
ALL_KERNEL_DEPS := $(ALL_KERNEL_OBJECT_FILES:.o=.d)