diff --git a/Makefile b/Makefile index c6429e5..d82f502 100644 --- a/Makefile +++ b/Makefile @@ -1,17 +1,19 @@ CC := clang CFLAGS := -Wall -Wextra SRC_DIR := src +HEADER_DIR := header BUILD_DIR := build OBJECT_FILES := $(patsubst %.c, %.o, $(wildcard $(SRC_DIR)/*.c)) +HEADER_FILES := $(wildcard $(HEADER_DIR)/*.h) OBJECT_FILES := $(patsubst $(SRC_DIR)/%, $(BUILD_DIR)/%, $(OBJECT_FILES)) MAIN_EXE_NAME := eipaasm -all eipaasm: $(OBJECT_FILES) +all build/eipaasm: $(OBJECT_FILES) $(CC) $(CFLAGS) $^ -o $(BUILD_DIR)/$(MAIN_EXE_NAME) -$(BUILD_DIR)/%.o: $(SRC_DIR)/%.c +$(BUILD_DIR)/%.o: $(SRC_DIR)/%.c $(HEADER_FILES) @mkdir -p $(BUILD_DIR) - $(CC) -c $(CFLAGS) $^ -o $@ + $(CC) -c $(CFLAGS) $(patsubst %.h,,$^) -o $@ clean: rm -r $(BUILD_DIR)