1APP = LGEOTables 2CC = g++ 3RM = rm -f 4RMDIR = rm -rf 5MAKEDEPEND = gcc -MM 6 7LIBDIRS = 8LIBS = -ltinyxml 9STATIC = 10ARCH32 = 11 12CFLAGS = -o $(OBJDIR)/$*.o -Wall -D_GNU_SOURCE -O3 -D_NO_BOOST 13 14CSRCS = $(wildcard *.c) 15CCSRCS = $(wildcard *.cpp) 16 17ifeq ($(shell uname -s), Darwin) 18CFLAGS += -arch i386 -arch ppc 19endif 20 21INCLUDE = -I.. -I../include 22OBJDIR = .obj$(POSTFIX) 23VPATH = $(OBJDIR) 24 25SRCS = $(CSRCS) $(CCSRCS) 26COBJS = $(CSRCS:.c=.o) 27CCOBJS = $(CCSRCS:.cpp=.o) 28OBJS = $(COBJS) $(CCOBJS) 29 30.SUFFIXES: 31 32.SUFFIXES: .cpp .o .c 33 34.cpp.o: 35 $(CC) $(CFLAGS) $(INCLUDE) $(CFLAGSLOC) -c $< 36 37.c.o: 38 $(CC) $(CFLAGS) $(INCLUDE) $(CFLAGSLOC) -c $< 39 40all: $(OBJDIR) $(APP) 41 42$(OBJDIR): 43 if [ ! -d $(OBJDIR) ]; then \ 44 mkdir $(OBJDIR); \ 45 fi 46 47depend: 48 $(RM) .depend 49 $(MAKEDEPEND) $(INCLUDE) $(SRCS) > .depend 50 51$(APP): $(OBJS) 52 cd $(OBJDIR); $(CC) $(STATIC) $(ARCH32) -o ../$(APP) $(OBJS) $(LIBDIRS) $(LIBS) 53 54clean: 55 if [ -d $(OBJDIR) ] ; then \ 56 cd $(OBJDIR); \ 57 $(RM) $(OBJS); \ 58 fi 59 $(RMDIR) $(OBJDIR) 60 $(RM) $(APP) 61