Merge commit 'origin/master' into gallium-0.2
[mesa.git] / progs / demos / Makefile
1 # progs/demos/Makefile
2
3 TOP = ../..
4 include $(TOP)/configs/current
5
6 INCDIR = $(TOP)/include
7
8 OSMESA_LIBS = -L$(TOP)/$(LIB_DIR) -lglut -lOSMesa -lGLU -lGL $(APP_LIB_DEPS)
9
10 OSMESA16_LIBS = -L$(TOP)/$(LIB_DIR) -lglut -lOSMesa16 -lGLU -lGL $(APP_LIB_DEPS)
11
12 OSMESA32_LIBS = -L$(TOP)/$(LIB_DIR) -lglut -lOSMesa32 -lGLU -lGL $(APP_LIB_DEPS)
13
14 LIB_DEP = $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLU_LIB_NAME) \
15 $(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME)
16
17 LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) \
18 $(APP_LIB_DEPS)
19
20 PROGS = \
21 arbfplight \
22 arbfslight \
23 arbocclude \
24 bounce \
25 clearspd \
26 copypix \
27 cubemap \
28 drawpix \
29 engine \
30 fbo_firecube \
31 fire \
32 fogcoord \
33 fplight \
34 fslight \
35 gamma \
36 gearbox \
37 gears \
38 geartrain \
39 glinfo \
40 gloss \
41 glslnoise \
42 gltestperf \
43 glutfx \
44 isosurf \
45 ipers \
46 lodbias \
47 morph3d \
48 multiarb \
49 paltex \
50 pointblast \
51 rain \
52 ray \
53 readpix \
54 reflect \
55 renormal \
56 shadowtex \
57 singlebuffer \
58 streaming_rect \
59 spectex \
60 spriteblast \
61 stex3d \
62 teapot \
63 terrain \
64 tessdemo \
65 texcyl \
66 texdown \
67 texenv \
68 texobj \
69 textures \
70 trispd \
71 tunnel \
72 tunnel2 \
73 vao_demo \
74 winpos
75
76
77 ##### RULES #####
78
79 .SUFFIXES:
80 .SUFFIXES: .c
81 .SUFFIXES: .cxx
82
83 # make executable from .c file:
84 .c: $(LIB_DEP) readtex.o
85 $(APP_CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) $< readtex.o $(LIBS) -o $@
86
87
88 ##### TARGETS #####
89
90 default: $(PROGS)
91
92 $(PROGS): readtex.o
93
94 readtex.c: $(TOP)/progs/util/readtex.c
95 cp $< .
96
97 readtex.h: $(TOP)/progs/util/readtex.h
98 cp $< .
99
100 readtex.o: readtex.c readtex.h
101 $(APP_CC) -c -I$(INCDIR) $(CFLAGS) readtex.c
102
103
104 showbuffer.c: $(TOP)/progs/util/showbuffer.c
105 cp $< .
106
107 showbuffer.h: $(TOP)/progs/util/showbuffer.h
108 cp $< .
109
110 showbuffer.o: showbuffer.c showbuffer.h
111 $(APP_CC) -c -I$(INCDIR) $(CFLAGS) showbuffer.c
112
113
114 trackball.c: $(TOP)/progs/util/trackball.c
115 cp $< .
116
117 trackball.h: $(TOP)/progs/util/trackball.h
118 cp $< .
119
120 trackball.o: trackball.c trackball.h
121 $(APP_CC) -c -I$(INCDIR) $(CFLAGS) trackball.c
122
123
124 extfuncs.h: $(TOP)/progs/util/extfuncs.h
125 cp $< .
126
127
128 reflect: reflect.o showbuffer.o readtex.o
129 $(APP_CC) $(CFLAGS) $(LDFLAGS) reflect.o showbuffer.o readtex.o $(LIBS) -o $@
130
131 reflect.o: reflect.c showbuffer.h
132 $(APP_CC) -c -I$(INCDIR) $(CFLAGS) reflect.c
133
134
135 shadowtex: shadowtex.o showbuffer.o
136 $(APP_CC) $(CFLAGS) $(LDFLAGS) shadowtex.o showbuffer.o $(LIBS) -o $@
137
138 shadowtex.o: shadowtex.c showbuffer.h
139 $(APP_CC) -c -I$(INCDIR) $(CFLAGS) shadowtex.c
140
141
142 gloss: gloss.o trackball.o readtex.o
143 $(APP_CC) $(CFLAGS) $(LDFLAGS) gloss.o trackball.o readtex.o $(LIBS) -o $@
144
145 gloss.o: gloss.c trackball.h
146 $(APP_CC) -c -I$(INCDIR) $(CFLAGS) gloss.c
147
148
149 engine: engine.o trackball.o readtex.o
150 $(APP_CC) $(CFLAGS) $(LDFLAGS) engine.o trackball.o readtex.o $(LIBS) -o $@
151
152 engine.o: engine.c trackball.h
153 $(APP_CC) -c -I$(INCDIR) $(CFLAGS) engine.c
154
155
156 fslight: fslight.o
157 $(APP_CC) $(CFLAGS) $(LDFLAGS) fslight.o $(LIBS) -o $@
158
159 fslight.o: fslight.c extfuncs.h
160 $(APP_CC) -c -I$(INCDIR) $(CFLAGS) fslight.c
161
162 rain: particles.o rain.o readtex.o
163 $(CXX) $(CXXFLAGS) $(LDFLAGS) $^ $(LIBS) -o $@
164
165 rain.o: rain.cxx readtex.h
166 $(CXX) -c -I$(INCDIR) $(CXXFLAGS) $<
167
168 particles.o: particles.cxx
169 $(CXX) -c -I$(INCDIR) $(CXXFLAGS) $<
170
171
172 viewdds: viewdds.c
173 $(CC) -I$(INCDIR) $(CFLAGS) $< readtex.o $(LIBS) -L. -lgltc -o $@
174
175
176 clean:
177 -rm -f $(PROGS)
178 -rm -f *.o *~
179 -rm -f readtex.[ch] showbuffer.[ch]