From 54b03f5073f6caa07115c764ee5688bb1cd62468 Mon Sep 17 00:00:00 2001 From: Tom Smeding Date: Sat, 13 Jul 2024 18:15:24 +0200 Subject: Multi-call binary --- Makefile | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index dfa689e..e760b65 100644 --- a/Makefile +++ b/Makefile @@ -2,19 +2,22 @@ CC := gcc CFLAGS := -Wall -Wextra -std=c11 -O2 LDFLAGS := -BINDIR := bin +OBJDIR := obj +TARGET := drukkedoos -SOURCES := $(wildcard src/*.c) -HEADERS := $(wildcard src/*.h) -TARGETS := $(patsubst src/%.c,$(BINDIR)/%,$(SOURCES)) +SOURCES := $(shell find src -type f -name '*.c') +HEADERS := $(shell find src -type f -name '*.h') +OBJECTS := $(patsubst src/%.c,obj/%.o,$(SOURCES)) .PHONY: all clean -all: $(TARGETS) +all: $(TARGET) clean: - find $(BINDIR) -maxdepth 1 -type f -delete + rm -rf $(OBJDIR) $(TARGET) -$(TARGETS): bin/%: src/%.c $(HEADERS) - @mkdir -p $(dir $@) - $(CC) $(CFLAGS) -o $@ $< +$(TARGET): main.c $(OBJECTS) + $(CC) -o $@ $^ $(LDFLAGS) + +$(OBJECTS): obj/%.o: src/%.c $(HEADERS) + $(CC) $(CFLAGS) -c -o $@ $< -- cgit v1.2.3-70-g09d2