CC = g++
CFLAGS = -Wall
EXE = DarkRP2D
LIB_PATH = lib/
INC_PATH = include/
LIBS = -lmingw32 -lSDL2main -lSDL2 -lbox2d -lentityx

SRCDIR = src
BUILDDIR = build
SRC = $(shell C:\\MinGW\\msys\\1.0\\bin\\find $(SRCDIR) -name *.cpp)
OBJ = $(patsubst %.cpp, %.o, $(SRC))
OBJ := $(subst $(SRCDIR), $(BUILDDIR), $(OBJ))

.PHONY: all clean build run debug

all: build $(EXE) copyDLLs

run: all
	$(BUILDDIR)/$(EXE)

$(EXE): $(OBJ)
	$(CC) $(CFLAGS) -o $(BUILDDIR)/$@ $(OBJ) -L$(LIB_PATH) $(LIBS) -static-libgcc -static-libstdc++

$(OBJ): $(SRC)
	$(CC) $(CFLAGS) -c $< -o $@ -I$(INC_PATH)

build:
		C:\\MinGW\\msys\\1.0\\bin\\mkdir -p $(BUILDDIR)

copyDLLs:
		C:\\MinGW\\msys\\1.0\\bin\\cp dlls/* build/

clean:
		rm -rf $(BUILDDIR)

debug:
		@echo $(OBJ)
