#Fiat Homo by Traction #WIN32, LINUX, OS_X PLATFORM = $(shell uname) ifeq ($(PLATFORM),Linux) PLATFORM = LINUX endif ifeq ($(PLATFORM),Darwin) PLATFORM = OS_X endif ifeq ($(PLATFORM),) PLATFORM = WIN32 endif FULLSCREEN = TRUE WINDOW_WIDTH = 1024 WINDOW_HEIGHT = 768 #compiler we're using CC = gcc CXX = g++ #sourcefiles in use OBJ = data.o beziercurve.o font.o hermitecurve.o main.o matikka.o matrix.o primitives.o sound.o spline.o stuff.o sync.o texture.o vector.o win32.o alku.o amino.o atomi.o bigbang.o dna.o evoluutio.o galaksi.o ihminen.o kukka.o life.o meduusa.o meri.o molekyyli.o ranta.o solut.o TARGET = fiathomo LDFLAGS = -lm CFLAGS = -O2 -DWINDOW_WIDTH=$(WINDOW_WIDTH) -DWINDOW_HEIGHT=$(WINDOW_HEIGHT) ifeq ($(FULLSCREEN),TRUE) CFLAGS += -DFULLSCREEN endif #linux Makefile setup ifeq ($(PLATFORM), LINUX) LDFLAGS += -I/usr/X11R6/include/GL/ -L/usr/lib/ -L/usr/X11R6/lib/ -L../lib/linux/ -I./ -lGL -lGLU `sdl-config --libs` ./libfmodex.so.4.00.37 CFLAGS += `sdl-config --cflags` endif #windows Makefile setup ifeq ($(PLATFORM), WIN32) TARGET = fiathomo.exe CFLAGS += -Dmain=SDL_main LDFLAGS += -L"lib" -lmingw32 -liberty -lglu32 -lopengl32 -lgdi32 -lSDLmain -lSDL -mwindows libfmodex.a endif #OS X Makefile setup ifeq ($(PLATFORM),OS_X) ENDIAN = $(shell uname -m) ifeq ($(PLATFORM),Power Macintosh) CFLAGS += -DBIGENDIAN endif CFLAGS += -DOS_X `sdl-config --cflags` -I/System/Library/Frameworks/AGL.framework/Headers LDFLAGS = `sdl-config --static-libs` ./libfmodex.dylib CXX = g++-3.3 CC = gcc-3.3 endif .PHONY: all all-before all-after clean clean-custom all: all-before $(TARGET) all-after #define some system utilities RM = rm -f CP = cp -R MKDIR = mkdir clean: $(RM) $(OBJ) $(TARGET) %.o: %.c $(HEADERS) $(CC) $(CFLAGS) -c $< %.o: %.cpp $(HEADERS) $(CXX) $(CFLAGS) -c $< %.o: ./Effects/%.cpp $(HEADERS) $(CXX) $(CFLAGS) -c $< $(TARGET): $(OBJ) $(CXX) -o $@ $(OBJ) $(LDFLAGS)