TARGET:=game
CC:=g++
INCLUDE:=-Isrc/
CCFLAGS:=$(INCLUDE) -g -std=c++23 -Wall -Wpedantic -Wextra -Wconversion
LDFLAGS:=-lraylib

.PHONY: clean cleanall redo

$(TARGET): obj/main.o obj/scenegame.o
	$(CC) -o $@ $^ $(LDFLAGS)

obj/main.o: src/main.cpp | obj
	$(CC) -c -o $@ $^ $(CCFLAGS)

obj/scenegame.o: src/scenegame.cpp | obj
	$(CC) -c -o $@ $^ $(CCFLAGS)	

obj:
	mkdir $@

clean:
	rm -rf ./obj

cleanall: clean
	rm -f ./$(TARGET)

redo: clean $(TARGET)