CC = gcc
CFLAGS = -std=c11
RM = rm
SOURCES = $(wildcard src/*.c)
OBJECTS = $(patsubst %.c,%.c.o,$(notdir $(SOURCES)))
EXE = othello
%.c.o: src/%.c
$(CC) -c -o $@ $< $(CFLAGS) $(DEVFLAGS)
main: CFLAGS += -O3
main: compilation
dev: CFLAGS += -Wall -Wextra -Wshadow -Wcast-align -Wstrict-prototypes -fanalyzer -fsanitize=undefined -pedantic -g
dev: compilation
compilation: $(OBJECTS)
$(CC) -o $(EXE) $(OBJECTS)
all:
main
clean:
$(RM) $(OBJECTS) $(EXE)