aboutsummaryrefslogtreecommitdiffhomepage
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile19
1 files changed, 17 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index 6eb170a..36b4825 100644
--- a/Makefile
+++ b/Makefile
@@ -2,13 +2,28 @@ SRC_DIR := src
BUILD_DIR := build
TARGET ?= ducc
+OBJECTS := \
+ $(BUILD_DIR)/main.o \
+ $(BUILD_DIR)/ast.o \
+ $(BUILD_DIR)/cli.o \
+ $(BUILD_DIR)/codegen.o \
+ $(BUILD_DIR)/common.o \
+ $(BUILD_DIR)/io.o \
+ $(BUILD_DIR)/parse.o \
+ $(BUILD_DIR)/preprocess.o \
+ $(BUILD_DIR)/sys.o \
+ $(BUILD_DIR)/tokenize.o
+
.PHONY: all
all: $(BUILD_DIR) $(BUILD_DIR)/$(TARGET)
-$(BUILD_DIR)/$(TARGET): main.c
- $(CC) -MD -g -O0 -o $@ $<
+$(BUILD_DIR)/$(TARGET): $(OBJECTS)
+ $(CC) -MD -g -O0 -o $@ $^
$(BUILD_DIR):
@mkdir -p $(BUILD_DIR)
+$(BUILD_DIR)/%.o: src/%.c
+ $(CC) -c -MD -g -O0 -o $@ $<
+
-include $(BUILD_DIR)/*.d