Makefile now recompiles stuff too if only headers changed
This commit is contained in:
parent
b1fd802e89
commit
3ad00c45dc
1 changed files with 5 additions and 3 deletions
8
Makefile
8
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)
|
||||
|
|
Loading…
Reference in a new issue