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 $(