CC = gcc CFLAGS = -Wall -Wextra -std=c89 SRC_DIR = src OBJ_DIR = obj SRC = $(wildcard $(SRC_DIR)/*.c) OBJ = $(SRC:$(SRC_DIR)/%.c=$(OBJ_DIR)/%.o) EXEC = taquin all: $(EXEC) $(EXEC): $(OBJ) $(CC) $(CFLAGS) -o $@ $^ $(OBJ_DIR)/%.o: $(SRC_DIR)/%.c mkdir -p $(OBJ_DIR) $(CC) $(CFLAGS) -c $< -o $@ run: $(EXEC) ./$(EXEC) clean: rm -rf $(OBJ_DIR) *.o $(EXEC)