CC = gcc
FLAGS = -Wall -Wextra -Wpedantic -g
LFLAGS = -lSDL2 -lSDL2_image -lm -lncurses

all: bin/mamaker

test: bin/mamaker
	bin/mamaker

bin/mamaker: obj/main.o obj/base.o obj/edit.o obj/assembly.o obj/display.o
	mkdir -p bin
	$(CC) $(FLAGS) $^ $(LFLAGS) -o $@

obj/%.o: src/%.c
	@mkdir -p obj
	$(CC) -o $@ -c $(FLAGS) $<

obj/main.o: src/main.c
obj/base.o: src/base.c
obj/assembly.o: src/assembly.c
obj/edit.o: src/edit.c
obj/display.o: src/display.c

.PHONY: clean mrproper

clean:
	rm -rf obj/

mrproper: clean
	rm -rf bin/