build: rebuild objects that depend on modified headers

This commit is contained in:
2023-02-01 13:58:15 +00:00
parent 2147837e9e
commit bfe3c1cc80
2 changed files with 10 additions and 4 deletions

View File

@@ -10,6 +10,7 @@ DIR_LIST := memblock vm base queue btree util
INCLUDE_DIRS := $(foreach dir,$(DIR_LIST),-I$(dir)/include)
SRC := $(foreach dir,$(DIR_LIST),$(wildcard $(dir)/*.c))
OBJ := $(addprefix $(BUILD_DIR)/,$(SRC:.c=.o))
DEPS := $(OBJ:.o=.d)
CFLAGS := $(INCLUDE_DIRS) -g
@@ -22,12 +23,14 @@ $(BUILD_DIR)/$(EXEC_NAME): $(OBJ)
@mkdir -p $(@D)
@printf " \033[1;36mHOSTLD\033[0m \033[1mbuild/sandbox/\033[35m$(EXEC_NAME)\n"
@$(CC) $^ -o $@ $(CFLAGS) $(LDFLAGS)
@$(CC) $(OBJ) -o $@ $(CFLAGS) $(LDFLAGS)
-include $(DEPS)
$(BUILD_DIR)/%.o: %.c
@printf " \033[1;32mHOSTCC\033[0m \033[35msandbox\033[0m/$<\n"
@mkdir -p $(@D)
@$(CC) $< -o $@ -c $(CFLAGS)
@$(CC) $< -o $@ -c $(CFLAGS) -MMD
.PHONY: all