CC = gcc CFLAGS = -Wall -Wextra -Iinclude -std=c11 LDFLAGS = -lncurses -lmenu SRC = $(wildcard src/*.c) OBJ = $(patsubst src/%.c, build/%.o, $(SRC)) TARGET = build/shooter all: $(TARGET) build: mkdir -p build build/%.o: src/%.c | build $(CC) $(CFLAGS) -c $< -o $@ $(TARGET): $(OBJ) | build $(CC) $(OBJ) -o $@ $(LDFLAGS) clean: rm -rf build run: all ./$(TARGET) .PHONY: all clean run