Files
DarkRP2D/Makefile
2017-10-23 18:52:24 +02:00

40 lines
943 B
Makefile

CC = g++
CFLAGS = -Wall
EXE = DarkRP2D
LIB_PATH = lib/
INC_PATH = include/
LIBS = -lmingw32 -lSDL2main -lSDL2 -lbox2d -lentityx
SRCDIR = src
BUILDDIR = build
SRCDIRS := $(shell C:\\MinGW\\msys\\1.0\\bin\\find src/**/* -name '*.cpp' -exec dirname {} \; | sort | uniq)
BUILDLIST := $(patsubst $(SRCDIR)/%,$(BUILDDIR)/%,$(SRCDIRS))
SRC = $(shell C:\\MinGW\\msys\\1.0\\bin\\find $(SRCDIR) -type f -name *.cpp)
OBJ := $(patsubst $(SRCDIR)/%,$(BUILDDIR)/%,$(SRC:.cpp=.o))
.PHONY: all clean build run debug
all: build $(EXE) copyDLLs
run: all
$(BUILDDIR)/$(EXE)
$(EXE): $(OBJ)
$(CC) $(CFLAGS) -o $(BUILDDIR)/$@ $^ -L$(LIB_PATH) $(LIBS) -static-libgcc -static-libstdc++
$(BUILDDIR)/%.o: $(SRCDIR)/%.cpp
@mkdir -p $(BUILDLIST)
$(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 $(BUILDLIST)