Mercurial > hg > forks > bilotrip-mj12
view Makefile @ 5:08e2ed7d5879
Improve build process.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Mon, 05 Aug 2013 14:07:43 +0300 |
parents | 785057719d9b |
children | 470774c3b381 |
line wrap: on
line source
CXX=g++ CFLAGS = -g -O3 -W -Wall LDFLAGS = -s AR=ar RANLIB=ranlib DEMO_CFLAGS = -fpermissive OBJPATH=obj/ ### ### Depency definitions ### BOOST_CFLAGS=-I/usr/include/ BOOST_LDFLAGS=/usr/lib/libboost_thread.a /usr/lib/libboost_system.a BASS_CFLAGS=-Ilibbass/ BASS_LDFLAGS=-L./ -lbass ASSIMP_CFLAGS=-Iassimp--3.0.1270-source-only/include/ ASSIMP_LDFLAGS=-L./ -lassimp FREETYPE_CFLAGS=`pkg-config freetype2 --cflags` FREETYPE_LDFLAGS=`pkg-config freetype2 --libs` LIBOGGPLAYER=liboggplayer-src/ LIBOGGPLAYER_CFLAGS=-I$(LIBOGGPLAYER)include/ LIBOGGPLAYER_LDFLAGS=`pkg-config --libs ogg vorbis theoradec` LIBOGGPLAYER_A=$(LIBOGGPLAYER)lib/liboggplayer.a GLEW_CFLAGS=`pkg-config glew --cflags` GLEW_LDFLAGS=`pkg-config glew --libs` GLUT_CFLAGS=-I/usr/include/GL/ GLUT_LDFLAGS=/usr/lib/i386-linux-gnu/libglut.a DEMO_CFLAGS += $(BASS_CFLAGS) $(ASSIMP_CFLAGS) \ $(LIBOGGPLAYER_CFLAGS) $(FREETYPE_CFLAGS) \ $(GLEW_CFLAGS) $(GLUT_CFLAGS) \ $(FREETYPE_CFLAGS) DEMO_LDFLAGS = $(BASS_LDFLAGS) $(ASSIMP_LDFLAGS) \ $(LIBOGGPLAYER_A) $(FREETYPE_LDFLAGS) \ $(GLEW_LDFLAGS) $(GLUT_LDFLAGS) \ $(FREETYPE_LDFLAGS) $(BOOST_LDFLAGS) \ $(LIBOGGPLAYER_LDFLAGS) ### ### Source files etc ### TARGETS=demo.bin DEMO_OBJS=vertex-attribute.o vertex-buffer.o \ texture-atlas.o texture-font.o mat4.o \ shader.o vector.o midifile.o \ midiutil.o main.o LIBOGGPLAYER_OBJS= \ oggplayer.o open_close.o play.o \ SDL_audiocvt.o util.o ### ### Main targets ### all: $(TARGETS) $(OBJPATH)%.o: $(LIBOGGPLAYER)src/%.cpp $(LIBOGGPLAYER)src/%.hpp @echo " CXX $+" $(CXX) $(CFLAGS) -c -o $@ $< $(LIBOGGPLAYER_CFLAGS) $(BOOST_CFLAGS) $(OBJPATH)%.o: $(LIBOGGPLAYER)src/%.cpp @echo " CXX $+" $(CXX) $(CFLAGS) -c -o $@ $< $(LIBOGGPLAYER_CFLAGS) $(BOOST_CFLAGS) $(OBJPATH)%.o: src/%.c src/%.h @echo " CXX $+" $(CXX) $(CFLAGS) -c -o $@ $< $(DEMO_CFLAGS) $(OBJPATH)%.o: src/%.c @echo " CXX $+" $(CXX) $(CFLAGS) -c -o $@ $< $(DEMO_CFLAGS) $(LIBOGGPLAYER_A): $(addprefix $(OBJPATH),$(LIBOGGPLAYER_OBJS)) @echo " AR $@ $+" @$(AR) cru $@ $+ @echo " RANLIB $@" @$(RANLIB) $@ demo.bin: $(addprefix $(OBJPATH),$(DEMO_OBJS)) $(LIBOGGPLAYER_A) @echo " LINK $@ $+" @$(CXX) $(CFLAGS) $(DEMO_CFLAGS) -o $@ $+ $(DEMO_LDFLAGS) ### ### Special targets ### clean: $(RM) $(TARGETS) $(OBJPATH)*.o