10 LIBPNGDIR := libpng-1.2.8
14 EXE := $(RUNDIR)/lugaru-bin
23 OPT := -O3 -fno-strict-aliasing -falign-loops=16 -fno-math-errno
24 #OPT := -Os -fno-strict-aliasing
26 # always use this on the Mac, even in debug builds, since we aren't building
27 # a dylib at this point.
28 ifeq ($(strip $(macosx)),true)
29 OPT += -mdynamic-no-pic
38 -Dstricmp=strcasecmp \
46 ifeq ($(strip $(use_devil)),true)
47 DEFINES += -DUSE_DEVIL=1
48 INCLUDES += -I$(SRCDIR)/devil/include
50 DEFINES += -DZ_PREFIX=1
51 INCLUDES += -I$(ZLIBDIR) -I$(LIBPNGDIR) -I$(JPEGLIBDIR)
54 ifeq ($(strip $(use_fmod)),false)
55 DEFINES += -DUSE_OPENAL=1
59 CFLAGS := -g -c $(OPT) $(INCLUDES) $(DEFINES) -fsigned-char -pipe
62 ifeq ($(strip $(macosx)),true)
63 CFLAGS += -fpascal-strings -faltivec -fasm -force_cpusubtype_ALL -Wno-long-double -mdynamic-no-pic
64 CFLAGS += -DPLATFORM_BIGENDIAN=1 -DMACOSX=1 -DPLATFORM_MACOSX=1
65 LDFLAGS := -framework Cocoa -framework OpenGL -framework IOKit -framework CoreFoundation -framework Carbon
66 APPLDFLAGS := $(SDLDIR)/lib/libSDL-1.2.0.dylib $(SDLDIR)/lib/libSDLmain-osx.a
68 CFLAGS += -DPLATFORM_LINUX=1
69 LDFLAGS := ./libSDL-1.2.so.0
70 POSTLDFLAGS := /usr/lib/libGLU.a
72 ifeq ($(strip $(use_devil)),true)
73 LDFLAGS += ./libIL.so.1 ./libILU.so.1 ./libILUT.so.1
76 ifeq ($(strip $(use_fmod)),true)
77 LDFLAGS += ./libfmod.so
107 MacCompatibility.cpp \
113 SRCS := $(foreach f,$(SRCS),$(SRCDIR)/$(f))
140 PNGSRCS := $(foreach f,$(PNGSRCS),$(LIBPNGDIR)/$(f))
189 JPEGSRCS := $(foreach f,$(JPEGSRCS),$(JPEGLIBDIR)/$(f))
206 ZLIBSRCS := $(foreach f,$(ZLIBSRCS),$(ZLIBDIR)/$(f))
209 ifneq ($(strip $(use_devil)),true)
210 SRCS += $(PNGSRCS) $(JPEGSRCS) $(ZLIBSRCS)
213 OBJS := $(SRCS:.CC=.o)
214 OBJS := $(OBJS:.cc=.o)
215 OBJS := $(OBJS:.cpp=.o)
216 OBJS := $(OBJS:.c=.o)
217 OBJS := $(OBJS:.m=.o)
218 OBJS := $(foreach f,$(OBJS),$(BINDIR)/$(f))
225 $(BINDIR)/%.o : %.cpp
226 $(CXX) -o $@ $(CXXFLAGS) $<
229 $(CXX) -x c++ -o $@ $(CXXFLAGS) $<
232 $(CXX) -o $@ $(CXXFLAGS) $<
235 $(CC) -o $@ $(CFLAGS) $<
238 $(CC) -o $@ $(CFLAGS) $<
240 $(EXE) : $(OBJS) $(APPOBJS)
241 ifeq ($(strip $(macosx)),true)
242 ranlib $(SDLDIR)/lib/libSDLmain-osx.a
243 ranlib $(FREETYPEDIR)/lib/libfreetype-osx.a
245 $(LD) -o $@ $(APPLDFLAGS) $(LDFLAGS) $(OBJS) $(APPOBJS) $(POSTLDFLAGS)
249 rm -f $(BINDIR)/$(SRCDIR)/*.o
250 rm -f $(BINDIR)/$(SRCDIR)/logger/*.o
251 rm -f $(BINDIR)/$(LIBPNGDIR)/*.o
252 rm -f $(BINDIR)/$(JPEGLIB)/*.o
253 rm -f $(BINDIR)/$(ZLIBDIR)/*.o
256 # end of makefile ...