hostile-takeover/server/Makefile.test
2014-07-06 17:47:28 -07:00

74 lines
1.7 KiB
Makefile

CC=g++-4.2
LD=$(CC)
CPP_INCS=-I..
OUTDIR=
LDFLAGS=-lpthread
BINARY=test
# Choose socketserver type
ifeq ($(shell uname -s),Darwin)
SOCKETSERVER=selectserver
endif
ifeq ($(shell uname -s),Linux)
SOCKETSERVER=epollserver
endif
# Debug is default
ifdef REL
CPP_FLAGS=-Wno-write-strings
OUTDIR=release
OPTFLAGS=-O2
else
CPP_FLAGS=-DDEBUG -g -Wno-write-strings
OUTDIR=debug
OPTFLAGS=-O0
endif
ifdef DEV_BUILD
CPP_FLAGS=-DDEV_BUILD $(CPP_FLAGS)
endif
CPPFLAGS=$(OPTFLAGS) $(CPP_FLAGS) $(CPP_INCS) -fsigned-char
MAINFILES=test
BASEFILES=deletetracker socket socketaddress socketserver $(SOCKETSERVER) \
bytebuffer eventer md5c messagequeue messagehandler tick format base64 thread
YAJLFILESCPP=jsonbuilder jsontypes
YAJLFILESC=yajl yajl_buf yajl_encode yajl_lex yajl_parser yajl_gen
MPSHAREDFILES=messages netmessage misc xpump ini packfile decompress \
packmanager indexloader xmsglog
INCFILES=rip
ALLFILES=$(INCFILES) $(MAINFILES) $(BASEFILES) $(MPSHAREDFILES) $(YAJLFILESC) \
$(YAJLFILESCPP)
all: $(OUTDIR)/$(BINARY)
clean:
rm -f $(OUTDIR)/*
$(OUTDIR)/$(BINARY): $(ALLFILES:%=$(OUTDIR)/%.o)
$(LD) $(LDFLAGS) -o $@ $^
$(MAINFILES:%=$(OUTDIR)/%.o): $(MAINFILES:%=%.cpp)
$(CC) $(CPPFLAGS) -c $(<D)/$(*F).cpp -o $@
$(BASEFILES:%=$(OUTDIR)/%.o): $(BASEFILES:%=../base/%.cpp)
$(CC) $(CPPFLAGS) -c $(<D)/$(*F).cpp -o $@
$(MPSHAREDFILES:%=$(OUTDIR)/%.o): $(MPSHAREDFILES:%=../mpshared/%.cpp)
$(CC) $(CPPFLAGS) -c $(<D)/$(*F).cpp -o $@
$(INCFILES:%=$(OUTDIR)/%.o): $(INCFILES:%=../inc/%.cpp)
$(CC) $(CPPFLAGS) -c $(<D)/$(*F).cpp -o $@
$(YAJLFILESCPP:%=$(OUTDIR)/%.o): $(YAJLFILESCPP:%=../yajl/wrapper/%.cpp)
$(CC) $(CPPFLAGS) -c $(<D)/$(*F).cpp -o $@
$(YAJLFILESC:%=$(OUTDIR)/%.o): $(YAJLFILESC:%=../yajl/src/%.c)
$(CC) $(CPPFLAGS) -c $(<D)/$(*F).c -o $@