diff options
Diffstat (limited to '')
-rw-r--r-- | makefile.mk | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/makefile.mk b/makefile.mk new file mode 100644 index 0000000..afcfda7 --- /dev/null +++ b/makefile.mk @@ -0,0 +1,32 @@ + +# needed cflags +CFLAGS += -std=c2x + +# add include directory +CFLAGS += -isystem ../include +INCLUDE += ../include + +# add lib directory +SRC += ../lib + +H_SRC = $(shell find $(SRC) $(INCLUDE) -type f -name "*.h") +C_SRC = $(shell find $(SRC) -type f -name "*.c") +C_OBJ = $(patsubst %.c,$(BIN)/%.o,$(C_SRC)) + +.PHONY: clean build run + +build: $(BIN)/$(OUT) + +clean: + rm -fr $(BIN) + +run: build + $(BIN)/$(OUT) + +$(C_OBJ): $(BIN)/%.o : %.c + @mkdir -p $(@D) + $(CC) -c $(CFLAGS) -o $@ $< + +$(BIN)/$(OUT): $(C_OBJ) $(H_SRC) + @mkdir -p $(@D) + $(LD) $(LDFLAGS) -o $(BIN)/$(OUT) $(C_OBJ) |