Mercurial > hg > forks > bilotrip-mj12
view Makefile @ 11:470774c3b381
Make a target for collecting the necessary libraries under lib/
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Mon, 05 Aug 2013 15:02:50 +0300 |
parents | 08e2ed7d5879 |
children | 2184f64b5b33 |
line wrap: on
line source
CXX=g++ CFLAGS = -g -O3 -W -Wall LDFLAGS = -s AR=ar RANLIB=ranlib DEMO_CFLAGS = -fpermissive OBJPATH=obj/ ADD_LIBS=\ /usr/lib/i386-linux-gnu/libfreetype.so \ assimp--3.0.1270-source-only/lib/libassimp.so \ libbass/libbass.so \ /usr/lib/i386-linux-gnu/libGLEW.so \ /usr/lib/i386-linux-gnu/libvorbis.so \ /usr/lib/i386-linux-gnu/libtheoradec.so \ /usr/lib/i386-linux-gnu/libogg.so \ /usr/lib/i386-linux-gnu/libstdc++.so.6 ### ### Depency library 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 build: demo.bin $(ADD_LIBS) cp -d -p $(addsuffix *,$(ADD_LIBS)) lib/