Dependency file generation - rebuild if a header file is updated
This commit is contained in:
parent
dda15ea889
commit
de73851481
@ -6,6 +6,7 @@ CC := x86_64-elf-gcc
|
||||
|
||||
SRC := $(wildcard **/*.[cS])
|
||||
OBJ := $(patsubst %, %.o, $(basename $(SRC)))
|
||||
DEP := $(OBJ:.o=.d)
|
||||
|
||||
CFLAGS ?= -Wall -Wextra
|
||||
CFLAGS += -ffreestanding
|
||||
@ -17,6 +18,13 @@ kernel: LDFLAGS += -n -nostdlib -T Link.ld
|
||||
kernel: $(OBJ)
|
||||
$(LINK.c) $^ -o $@
|
||||
|
||||
DEPFLAGS = -MT $@ -MMD -MP -MF $*.d
|
||||
%.o: %.c $.d
|
||||
$(COMPILE.c) $(DEPFLAGS) -o $@ $<
|
||||
%.o: %.S %.d
|
||||
$(COMPILE.S) $(DEPFLAGS) -o $@ $<
|
||||
%.d: ;
|
||||
|
||||
|
||||
# Copy kernel to sysroot
|
||||
/opt/sysroot/kernel: kernel
|
||||
@ -26,6 +34,8 @@ kernel: $(OBJ)
|
||||
install: /opt/sysroot/kernel
|
||||
|
||||
clean:
|
||||
rm -rf $(OBJ) kernel
|
||||
rm -rf $(OBJ) $(DEP) kernel
|
||||
|
||||
.PHONY: install
|
||||
|
||||
include $(DEP)
|
||||
|
Loading…
x
Reference in New Issue
Block a user