2022-04-25 19:16:07 +00:00
|
|
|
|
|
|
|
SOURCES_S := boot.s
|
|
|
|
OBJECTS_S := $(patsubst %.s, $(BUILD_DIR)/kernel/%.o, $(SOURCES_S))
|
|
|
|
|
|
|
|
SOURCES_C := kernel.c
|
|
|
|
HEADERS_C := multiboot.h psf.h
|
|
|
|
OBJECTS_C := $(patsubst %.c, $(BUILD_DIR)/kernel/%.o, $(SOURCES_C))
|
|
|
|
|
|
|
|
LINKER_LD := linker.ld
|
|
|
|
|
|
|
|
.PHONY: all
|
|
|
|
all: $(BUILD_DIR)/kernel.bin
|
|
|
|
|
|
|
|
$(BUILD_DIR)/kernel.bin: $(OBJECTS_S) $(OBJECTS_C) $(LINKER_LD)
|
2022-04-25 19:58:45 +00:00
|
|
|
@$(CROSS_CC) \
|
2022-04-25 19:16:07 +00:00
|
|
|
-T $(LINKER_LD) \
|
|
|
|
$(LDFLAGS) \
|
|
|
|
$(OBJECTS_C) \
|
|
|
|
$(OBJECTS_S) \
|
|
|
|
$(EXTRA_OBJS) \
|
|
|
|
-o $@
|
|
|
|
|
|
|
|
$(BUILD_DIR)/kernel/%.o: %.c $(SOURCES_C)
|
|
|
|
@mkdir -p $(dir $@)
|
|
|
|
@$(CROSS_CC) -c $< -o $@ $(CFLAGS)
|
|
|
|
|
|
|
|
$(BUILD_DIR)/kernel/%.o: %.s $(SOURCES_S)
|
|
|
|
@mkdir -p $(dir $@)
|
|
|
|
@$(CROSS_AS) $< -o $@
|