Mercurial > hg > forks > bilotrip-mj12
comparison 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 |
comparison
equal
deleted
inserted
replaced
4:de12519301a2 | 5:08e2ed7d5879 |
---|---|
1 CXX=g++ | |
2 CFLAGS = -g -O3 -W -Wall | |
3 LDFLAGS = -s | |
4 AR=ar | |
5 RANLIB=ranlib | |
6 | |
7 DEMO_CFLAGS = -fpermissive | |
8 | |
9 OBJPATH=obj/ | |
10 | |
11 ### | |
12 ### Depency definitions | |
13 ### | |
14 BOOST_CFLAGS=-I/usr/include/ | |
15 BOOST_LDFLAGS=/usr/lib/libboost_thread.a /usr/lib/libboost_system.a | |
16 | |
1 BASS_CFLAGS=-Ilibbass/ | 17 BASS_CFLAGS=-Ilibbass/ |
2 BASS_LDFLAGS=-L./ -lbass | 18 BASS_LDFLAGS=-L./ -lbass |
3 | 19 |
4 ASSIMP_CFLAGS=-Iassimp--3.0.1270-source-only/include/ | 20 ASSIMP_CFLAGS=-Iassimp--3.0.1270-source-only/include/ |
5 ASSIMP_LDFLAGS=-L./ -lassimp | 21 ASSIMP_LDFLAGS=-L./ -lassimp |
6 | 22 |
7 FREETYPE_CFLAGS=`pkg-config freetype2 --cflags` | 23 FREETYPE_CFLAGS=`pkg-config freetype2 --cflags` |
8 FREETYPE_LDFLAGS=`pkg-config freetype2 --libs` | 24 FREETYPE_LDFLAGS=`pkg-config freetype2 --libs` |
9 | 25 |
10 LIBOGGPLAYER_CFLAGS=-Iliboggplayer-linux32/include/ | 26 LIBOGGPLAYER=liboggplayer-src/ |
11 LIBOGGPLAYER_LDFLAGS=-L./ -loggplayer | 27 LIBOGGPLAYER_CFLAGS=-I$(LIBOGGPLAYER)include/ |
28 LIBOGGPLAYER_LDFLAGS=`pkg-config --libs ogg vorbis theoradec` | |
29 LIBOGGPLAYER_A=$(LIBOGGPLAYER)lib/liboggplayer.a | |
12 | 30 |
13 GLEW_CFLAGS=`pkg-config glew --cflags` | 31 GLEW_CFLAGS=`pkg-config glew --cflags` |
14 GLEW_LDFLAGS=`pkg-config glew --libs` | 32 GLEW_LDFLAGS=`pkg-config glew --libs` |
15 | 33 |
16 GLUT_CFLAGS=-I/usr/include/GL/ | 34 GLUT_CFLAGS=-I/usr/include/GL/ |
17 GLUT_LDFLAGS=/usr/lib/i386-linux-gnu/libglut.a | 35 GLUT_LDFLAGS=/usr/lib/i386-linux-gnu/libglut.a |
18 | 36 |
37 | |
38 DEMO_CFLAGS += $(BASS_CFLAGS) $(ASSIMP_CFLAGS) \ | |
39 $(LIBOGGPLAYER_CFLAGS) $(FREETYPE_CFLAGS) \ | |
40 $(GLEW_CFLAGS) $(GLUT_CFLAGS) \ | |
41 $(FREETYPE_CFLAGS) | |
42 | |
43 DEMO_LDFLAGS = $(BASS_LDFLAGS) $(ASSIMP_LDFLAGS) \ | |
44 $(LIBOGGPLAYER_A) $(FREETYPE_LDFLAGS) \ | |
45 $(GLEW_LDFLAGS) $(GLUT_LDFLAGS) \ | |
46 $(FREETYPE_LDFLAGS) $(BOOST_LDFLAGS) \ | |
47 $(LIBOGGPLAYER_LDFLAGS) | |
48 | |
49 | |
50 ### | |
51 ### Source files etc | |
52 ### | |
19 TARGETS=demo.bin | 53 TARGETS=demo.bin |
20 | 54 |
21 CXX=g++ | |
22 CFLAGS = -g -O3 -W -Wall -fpermissive | |
23 LDFLAGS = -s | |
24 | 55 |
56 DEMO_OBJS=vertex-attribute.o vertex-buffer.o \ | |
57 texture-atlas.o texture-font.o mat4.o \ | |
58 shader.o vector.o midifile.o \ | |
59 midiutil.o main.o | |
60 | |
61 LIBOGGPLAYER_OBJS= \ | |
62 oggplayer.o open_close.o play.o \ | |
63 SDL_audiocvt.o util.o | |
64 | |
25 | 65 |
26 ### | 66 ### |
27 ### Main targets | 67 ### Main targets |
28 ### | 68 ### |
29 all: $(TARGETS) | 69 all: $(TARGETS) |
30 | 70 |
31 demo.bin: src/vertex-attribute.c src/vertex-buffer.c \ | 71 $(OBJPATH)%.o: $(LIBOGGPLAYER)src/%.cpp $(LIBOGGPLAYER)src/%.hpp |
32 src/texture-atlas.c src/texture-font.c src/mat4.c \ | 72 @echo " CXX $+" |
33 src/shader.c src/vector.c src/midifile.c \ | 73 $(CXX) $(CFLAGS) -c -o $@ $< $(LIBOGGPLAYER_CFLAGS) $(BOOST_CFLAGS) |
34 src/midiutil.c src/main.c | 74 |
35 $(CXX) $(CFLAGS) -o $@ $+ $(BASS_CFLAGS) $(BASS_LDFLAGS) \ | 75 $(OBJPATH)%.o: $(LIBOGGPLAYER)src/%.cpp |
36 $(ASSIMP_CFLAGS) $(ASSIMP_LDFLAGS) \ | 76 @echo " CXX $+" |
37 $(LIBOGGPLAYER_CFLAGS) $(LIBOGGPLAYER_LDFLAGS) \ | 77 $(CXX) $(CFLAGS) -c -o $@ $< $(LIBOGGPLAYER_CFLAGS) $(BOOST_CFLAGS) |
38 $(FREETYPE_CFLAGS) $(FREETYPE_LDFLAGS) \ | 78 |
39 $(GLEW_CFLAGS) $(GLEW_LDFLAGS) \ | 79 |
40 $(GLUT_CFLAGS) $(GLUT_LDFLAGS) | 80 $(OBJPATH)%.o: src/%.c src/%.h |
81 @echo " CXX $+" | |
82 $(CXX) $(CFLAGS) -c -o $@ $< $(DEMO_CFLAGS) | |
83 | |
84 $(OBJPATH)%.o: src/%.c | |
85 @echo " CXX $+" | |
86 $(CXX) $(CFLAGS) -c -o $@ $< $(DEMO_CFLAGS) | |
87 | |
88 | |
89 $(LIBOGGPLAYER_A): $(addprefix $(OBJPATH),$(LIBOGGPLAYER_OBJS)) | |
90 @echo " AR $@ $+" | |
91 @$(AR) cru $@ $+ | |
92 @echo " RANLIB $@" | |
93 @$(RANLIB) $@ | |
94 | |
95 | |
96 demo.bin: $(addprefix $(OBJPATH),$(DEMO_OBJS)) $(LIBOGGPLAYER_A) | |
97 @echo " LINK $@ $+" | |
98 @$(CXX) $(CFLAGS) $(DEMO_CFLAGS) -o $@ $+ $(DEMO_LDFLAGS) | |
41 | 99 |
42 | 100 |
43 ### | 101 ### |
44 ### Special targets | 102 ### Special targets |
45 ### | 103 ### |
46 clean: | 104 clean: |
47 $(RM) $(TARGETS) *.o | 105 $(RM) $(TARGETS) $(OBJPATH)*.o |
48 | 106 |