aboutsummaryrefslogtreecommitdiffhomepage
path: root/Makefile
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2025-08-31 00:28:00 +0900
committernsfisis <nsfisis@gmail.com>2025-08-31 12:04:19 +0900
commitda65f1e21a24f0a173ee5ae08f00db91cba5ffda (patch)
tree3ec802f40d7cd0bd9e162ea5b3e50b76f319a884 /Makefile
parenta5ee9d944edf665c814bbfeded2849f2bb980ed8 (diff)
downloadducc-da65f1e21a24f0a173ee5ae08f00db91cba5ffda.tar.gz
ducc-da65f1e21a24f0a173ee5ae08f00db91cba5ffda.tar.zst
ducc-da65f1e21a24f0a173ee5ae08f00db91cba5ffda.zip
feat: support -MMD flag
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile14
1 files changed, 8 insertions, 6 deletions
diff --git a/Makefile b/Makefile
index b49ce89..9505295 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,7 @@
SRC_DIR := src
-BUILD_DIR := build
TARGET ?= ducc
+BUILD_ROOT_DIR := build
+BUILD_DIR := $(BUILD_ROOT_DIR)/.$(TARGET)
OBJECTS := \
$(BUILD_DIR)/main.o \
@@ -8,6 +9,7 @@ OBJECTS := \
$(BUILD_DIR)/cli.o \
$(BUILD_DIR)/codegen.o \
$(BUILD_DIR)/common.o \
+ $(BUILD_DIR)/fs.o \
$(BUILD_DIR)/io.o \
$(BUILD_DIR)/json.o \
$(BUILD_DIR)/parse.o \
@@ -17,15 +19,15 @@ OBJECTS := \
$(BUILD_DIR)/tokenize.o
.PHONY: all
-all: $(BUILD_DIR) $(BUILD_DIR)/$(TARGET)
-
-$(BUILD_DIR)/$(TARGET): $(OBJECTS)
- $(CC) -MD -g -O0 -o $@ $^
+all: $(BUILD_DIR) $(BUILD_ROOT_DIR)/$(TARGET)
$(BUILD_DIR):
@mkdir -p $(BUILD_DIR)
+$(BUILD_ROOT_DIR)/$(TARGET): $(OBJECTS)
+ $(CC) -MMD -g -O0 -o $@ $^
+
$(BUILD_DIR)/%.o: src/%.c
- $(CC) -c -MD -g -O0 -o $@ $<
+ $(CC) -c -MMD -g -O0 -o $@ $<
-include $(BUILD_DIR)/*.d