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