http://svn.poeml.de/viewvc/ppc/src-unpacked/xscreensaver/xscreensaver-4.12.tar.bz2...
[xscreensaver] / hacks / glx / Makefile.in
1 # hacks/glx/Makefile.in --- xscreensaver, Copyright (c) 1999, 2000
2 #  by Jamie Zawinski.
3 # the `../../configure' script generates `hacks/glx/Makefile' from this file.
4
5 @SET_MAKE@
6 .SUFFIXES:
7 .SUFFIXES: .c .o
8
9 srcdir          = @srcdir@
10 VPATH           = @srcdir@
11
12 install_prefix  =
13 prefix          = @prefix@
14 exec_prefix     = @exec_prefix@
15 bindir          = @bindir@
16 mandir          = @mandir@
17 # maybe this should be 6 (games)?
18 mansuffix       = 1
19 manNdir         = $(mandir)/man$(mansuffix)
20
21 # maybe this should be 6 (games)?
22 mansuffix       = 1
23
24 CC              = @CC@
25 CFLAGS          = @CFLAGS@
26 LDFLAGS         = @LDFLAGS@
27 DEFS            = -DSTANDALONE -DUSE_GL @DEFS@
28 LIBS            = @LIBS@
29
30 DEPEND          = @DEPEND@
31 DEPEND_FLAGS    = @DEPEND_FLAGS@
32 DEPEND_DEFINES  = @DEPEND_DEFINES@
33
34 SHELL           = /bin/sh
35 INSTALL         = @INSTALL@
36 INSTALL_PROGRAM = @INSTALL_PROGRAM@
37 INSTALL_DATA    = @INSTALL_DATA@
38 INSTALL_DIRS    = @INSTALL_DIRS@
39 HACKDIR         = @HACKDIR@
40
41 X_CFLAGS        = @X_CFLAGS@
42 X_LIBS          = @X_LIBS@
43 X_PRE_LIBS      = @X_PRE_LIBS@
44 X_EXTRA_LIBS    = @X_EXTRA_LIBS@
45 XMU_LIBS        = @XMU_LIBS@
46
47 # Note: see comment in ../../driver/Makefile.in for explanation of X_LIBS, etc.
48 #
49 HACK_PRE        = $(LIBS) $(X_LIBS)
50 HACK_POST     = $(X_PRE_LIBS) -lXt -lX11 $(XMU_LIBS) -lXext $(X_EXTRA_LIBS) -lm
51 HACK_POST2      = @GL_LIBS@ @HACK_LIBS@ $(HACK_POST)
52 HACK_LIBS       = $(HACK_PRE)                       $(HACK_POST2)
53 XPM_LIBS        = $(HACK_PRE)            @XPM_LIBS@ $(HACK_POST2)
54 GLE_LIBS        = $(HACK_PRE) @GLE_LIBS@ @XPM_LIBS@ $(HACK_POST2)
55
56 HACK_SRC        = $(srcdir)/..
57 HACK_BIN        = ..
58 UTILS_SRC       = $(HACK_SRC)/../utils
59 UTILS_BIN       = $(HACK_BIN)/../utils
60
61 INCLUDES        = -I. -I$(srcdir) -I$(UTILS_SRC) -I$(HACK_SRC) -I../.. @INCLUDES@
62
63 UTIL_SRCS       = $(UTILS_SRC)/colors.c $(UTILS_SRC)/hsv.c \
64                   $(UTILS_SRC)/resources.c $(UTILS_SRC)/usleep.c \
65                   $(UTILS_SRC)/visual.c $(UTILS_SRC)/visual-gl.c \
66                   $(UTILS_SRC)/yarandom.c
67 UTIL_OBJS       = $(UTILS_SRC)/colors.o $(UTILS_SRC)/hsv.o \
68                   $(UTILS_SRC)/resources.o $(UTILS_SRC)/usleep.o \
69                   $(UTILS_SRC)/visual.o $(UTILS_SRC)/visual-gl.o \
70                    $(UTILS_SRC)/yarandom.o
71
72 SRCS            = xscreensaver-gl-helper.c \
73                   atlantis.c b_draw.c b_lockglue.c b_sphere.c bubble3d.c \
74                   buildlwo.c cage.c dolphin.c gears.c lament.c moebius.c \
75                   morph3d.c pipeobjs.c pipes.c rubik.c s1_1.c s1_2.c s1_3.c \
76                   s1_4.c s1_5.c s1_6.c s1_b.c shark.c sproingies.c \
77                   sproingiewrap.c stairs.c superquadrics.c swim.c whale.c \
78                   xlock-gl.c fps.c xpm-ximage.c glplanet.c pulsar.c \
79                   extrusion.c extrusion-helix2.c extrusion-helix3.c \
80                   extrusion-helix4.c extrusion-joinoffset.c extrusion-screw.c \
81                   extrusion-taper.c extrusion-twistoid.c sierpinski3d.c \
82                   gflux.c stonerview.c stonerview-move.c stonerview-osc.c \
83                   stonerview-view.c starwars.c glut_stroke.c glut_swidth.c \
84                   gltext.c molecule.c dangerball.c sphere.c tube.c circuit.c \
85                   menger.c engine.c flipscreen3d.c font-ximage.c \
86                   grab-ximage.c glsnake.c boxed.c glforestfire.c sballs.c \
87                   cubenetic.c spheremonics.c marching.c lavalite.c rotator.c \
88                   trackball.c gltrackball.c queens.c endgame.c chessmodels.c \
89                   glblur.c gllist.c flurry.c flurry-smoke.c flurry-spark.c \
90                   flurry-star.c flurry-texture.c atunnel.c tunnel_draw.c \
91                   flyingtoasters.c toaster.c toaster_base.c toaster_handle.c \
92                   toaster_handle2.c toaster_jet.c toaster_knob.c \
93                   toaster_slots.c toaster_wing.c toast.c toast2.c \
94                   bouncingcow.c cow_face.c cow_hide.c cow_hoofs.c cow_horns.c \
95                   cow_tail.c cow_udder.c glslideshow.c jigglypuff.c klein.c \
96                   hypertorus.c glmatrix.c cubestorm.c glknots.c blocktube.c \
97                   flipflop.c antspotlight.c polytopes.c
98
99 OBJS            = xscreensaver-gl-helper.o \
100                   atlantis.o b_draw.o b_lockglue.o b_sphere.o bubble3d.o \
101                   buildlwo.o cage.o dolphin.o gears.o lament.o moebius.o \
102                   morph3d.o pipeobjs.o pipes.o rubik.o s1_1.o s1_2.o s1_3.o \
103                   s1_4.o s1_5.o s1_6.o s1_b.o shark.o sproingies.o \
104                   sproingiewrap.o stairs.o superquadrics.o swim.o whale.o \
105                   xlock-gl.o fps.o xpm-ximage.o glplanet.o pulsar.o \
106                   extrusion.o extrusion-helix2.o extrusion-helix3.o \
107                   extrusion-helix4.o extrusion-joinoffset.o extrusion-screw.o \
108                   extrusion-taper.o extrusion-twistoid.o sierpinski3d.o \
109                   gflux.o stonerview.o stonerview-move.o stonerview-osc.o \
110                   stonerview-view.o starwars.o glut_stroke.o glut_swidth.o \
111                   gltext.o molecule.o dangerball.o sphere.o tube.o circuit.o \
112                   menger.o engine.o flipscreen3d.o font-ximage.o \
113                   grab-ximage.o glsnake.o boxed.o glforestfire.o sballs.o \
114                   cubenetic.o spheremonics.o marching.o lavalite.o rotator.o \
115                   trackball.o gltrackball.o queens.o endgame.o chessmodels.o \
116                   glblur.o gllist.o flurry.o flurry-smoke.o flurry-spark.o \
117                   flurry-star.o flurry-texture.o atunnel.o tunnel_draw.o \
118                   flyingtoasters.o toaster.o toaster_base.o toaster_handle.o \
119                   toaster_handle2.o toaster_jet.o toaster_knob.o \
120                   toaster_slots.o toaster_wing.o toast.o toast2.o \
121                   bouncingcow.o cow_face.o cow_hide.o cow_hoofs.o cow_horns.o \
122                   cow_tail.o cow_udder.o glslideshow.o jigglypuff.o klein.o \
123                   hypertorus.o glmatrix.o cubestorm.o glknots.o blocktube.o \
124                   flipflop.o antspotlight.o polytopes.o
125
126 GL_EXES         = cage gears moebius pipes sproingies stairs superquadrics \
127                   morph3d rubik atlantis lament bubble3d glplanet pulsar \
128                   sierpinski3d gflux stonerview starwars gltext molecule \
129                   dangerball circuit menger engine flipscreen3d glsnake boxed \
130                   glforestfire sballs cubenetic spheremonics lavalite queens \
131                   endgame glblur flurry atunnel flyingtoasters bouncingcow \
132                   glslideshow jigglypuff klein hypertorus glmatrix cubestorm \
133                   glknots blocktube flipflop antspotlight polytopes
134 GLE_EXES        = extrusion
135 GL_UTIL_EXES    = xscreensaver-gl-helper
136 HACK_EXES       = @GL_EXES@ @GLE_EXES@
137 GRAB_OBJS       = $(UTILS_BIN)/grabclient.o grab-ximage.o
138 EXES            = @GL_UTIL_EXES@ $(HACK_EXES)
139
140 HACK_OBJS       = screenhack-gl.o xlock-gl.o fps.o $(HACK_BIN)/xlockmore.o \
141                   $(UTILS_BIN)/resources.o $(UTILS_BIN)/visual.o \
142                   $(UTILS_BIN)/visual-gl.o $(UTILS_BIN)/usleep.o \
143                   $(UTILS_BIN)/yarandom.o $(UTILS_BIN)/hsv.o \
144                   $(UTILS_BIN)/colors.o
145
146 HDRS            = atlantis.h bubble3d.h buildlwo.h e_textures.h xpm-ximage.h \
147                   grab-ximage.h font-ximage.h tube.h sphere.h boxed.h \
148                   stonerview-move.h stonerview-osc.h glutstroke.h \
149                   glut_roman.h marching.h rotator.h trackball.h gltrackball.h \
150                   chessmodels.h chessgames.h gllist.h flurry.h tunnel_draw.h \
151                   ants.h
152 GL_MEN          = atlantis.man boxed.man bubble3d.man cage.man circuit.man \
153                   cubenetic.man dangerball.man engine.man extrusion.man \
154                   flipscreen3d.man gears.man gflux.man glforestfire.man \
155                   glplanet.man glsnake.man gltext.man lament.man lavalite.man \
156                   menger.man moebius.man molecule.man morph3d.man pipes.man \
157                   pulsar.man queens.man rubik.man sballs.man sierpinski3d.man \
158                   spheremonics.man sproingies.man stairs.man starwars.man \
159                   stonerview.man superquadrics.man xscreensaver-gl-helper.man \
160                   endgame.man flurry.man glblur.man atunnel.man \
161                   flyingtoasters.man bouncingcow.man glslideshow.man \
162                   jigglypuff.man klein.man hypertorus.man glmatrix.man \
163                   cubestorm.man glknots.man blocktube.man flipflop.man \
164                   antspotlight.man polytopes.man
165 MEN             = @GL_MEN@
166 EXTRAS          = README Makefile.in dxf2gl.pl
167
168 TARFILES        = $(SRCS) $(HDRS) $(MEN) $(EXTRAS)
169
170
171 default: all
172 all: $(EXES)
173
174 install:   install-program   install-man
175 uninstall: uninstall-program uninstall-man
176
177 install-strip:
178         $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' install
179
180 # the hacks, in $HACKDIR
181 install-program:: $(EXES)
182         @exes="$(HACK_EXES)" ;                                          \
183          idir="$(install_prefix)$(HACKDIR)" ;                           \
184          if [ "$$exes" != "" ]; then                                    \
185            if [ ! -d $$idir ]; then                                     \
186              $(INSTALL_DIRS) $$idir ;                                   \
187            fi ;                                                         \
188            for program in $$exes; do                                    \
189              echo $(INSTALL_PROGRAM) $$program $$idir/$$program ;       \
190                   $(INSTALL_PROGRAM) $$program $$idir/$$program ;       \
191            done ;                                                       \
192          fi
193
194 # the xscreensaver-gl-helper program, in $bindir
195 install-program:: $(EXES)
196         @exes="@GL_UTIL_EXES@" ;                                        \
197          idir="$(install_prefix)$(bindir)" ;                            \
198          if [ "$$exes" != "" ]; then                                    \
199            if [ ! -d $$idir ]; then                                     \
200              $(INSTALL_DIRS) $$idir ;                                   \
201            fi ;                                                         \
202            for program in $$exes; do                                    \
203              echo $(INSTALL_PROGRAM) $$program $$idir/$$program ;       \
204                   $(INSTALL_PROGRAM) $$program $$idir/$$program ;       \
205            done ;                                                       \
206          fi
207
208 install-man: $(MEN)
209         @men="$(MEN)" ;                                                 \
210          idir="$(install_prefix)$(manNdir)" ;                           \
211          if [ ! -d $$idir ]; then                                       \
212           $(INSTALL_DIRS) $$idir ;                                      \
213          fi ;                                                           \
214          for man in $$men; do                                           \
215            instname=`echo $$man | sed 's/\.man$$/\.$(mansuffix)/'` ;    \
216            echo $(INSTALL_DATA) $(srcdir)/$$man $$idir/$$instname ;     \
217                 $(INSTALL_DATA) $(srcdir)/$$man $$idir/$$instname ;     \
218          done
219
220 # the hacks, in $HACKDIR
221 uninstall-program::
222         @exes="$(HACK_EXES)" ;                                          \
223          idir="$(install_prefix)$(HACKDIR)" ;                           \
224          for program in $$exes; do                                      \
225            echo rm -f $$idir/$$program ;                                \
226                 rm -f $$idir/$$program ;                                \
227          done
228
229 # the xscreensaver-gl-helper program, in $bindir
230 uninstall-program::
231         @exes="$(GL_UTIL_EXES)" ;                                       \
232          idir="$(install_prefix)$(bindir)" ;                            \
233          for program in $$exes; do                                      \
234            echo rm -f $$idir/$$program ;                                \
235                 rm -f $$idir/$$program ;                                \
236         done
237
238 uninstall-man:
239         @men="$(MEN)" ;                                                 \
240          idir="$(install_prefix)$(manNdir)" ;                           \
241          for man in $$men; do                                           \
242            instname=`echo $$man | sed 's/\.man$$/\.$(mansuffix)/'` ;    \
243            echo rm -f $$idir/$$instname ;                               \
244                 rm -f $$idir/$$instname ;                               \
245         done
246
247 clean:
248         -rm -f *.o a.out core $(EXES) molecules.h
249
250 distclean: clean
251         -rm -f Makefile TAGS *~ "#"*
252
253 # Adds all current dependencies to Makefile
254 depend:
255         $(DEPEND) -s '# DO NOT DELETE: updated by make depend'              \
256         $(DEPEND_FLAGS) --                                                  \
257         $(INCLUDES) $(DEFS) $(DEPEND_DEFINES) $(CFLAGS) $(X_CFLAGS) --      \
258         $(SRCS)
259
260 # Adds some dependencies to Makefile.in -- not totally accurate, but pretty
261 # close.  This excludes dependencies on files in /usr/include, etc.  It tries
262 # to include only dependencies on files which are themselves a part of this
263 # package.
264 distdepend:: molecules.h
265         @echo updating dependencies in `pwd`/Makefile.in... ;               \
266         $(DEPEND) -w 0 -f -                                                 \
267         -s '# DO NOT DELETE: updated by make distdepend' $(DEPEND_FLAGS) -- \
268         $(INCLUDES) $(DEFS) $(DEPEND_DEFINES) $(CFLAGS) $(X_CFLAGS) --      \
269         $(SRCS) 2>/dev/null |                                               \
270         sort -d |                                                           \
271         (                                                                   \
272           awk '/^# .*Makefile.in ---/,/^# DO .*distdepend/' < Makefile.in ; \
273           sed -e '/^#.*/d'                                                  \
274               -e 's@ \./@ @g;s@ /[^ ]*@@g;/^.*:$$/d'                        \
275               -e 's@\.\./\.\./utils@$$(UTILS_SRC)@g'                        \
276               -e 's@\.\./glx/@@g'                                           \
277               -e 's@ \.\./@ $$(HACK_SRC)/@g'                                \
278               -e 's@ \([^$$]\)@ $$(srcdir)/\1@g'                            \
279               -e 's@ $$(srcdir)/\(.*config.h\)@ \1@g'                       \
280               -e 's@ $$(HACK_SRC)/\(.*config.h\)@ ../\1@g'                  \
281               -e 's@ $$(srcdir)/\(.*molecules.h\)@ \1@g' ;                  \
282           echo ''                                                           \
283         ) > /tmp/distdepend.$$$$ &&                                         \
284         mv Makefile.in Makefile.in.bak &&                                   \
285         mv /tmp/distdepend.$$$$ Makefile.in
286
287
288 TAGS: tags
289 tags:
290         find $(srcdir) -name '*.[chly]' -print | xargs etags -a
291
292 echo_tarfiles:
293         @echo $(TARFILES)
294
295 check_men:
296         @badmen="" ;                                                    \
297          for exe in $(EXES); do                                         \
298            if ! [ -f $(srcdir)/$$exe.man ]; then                        \
299              badmen="$$badmen $$exe" ;                                  \
300            fi ;                                                         \
301          done ;                                                         \
302          if [ -n "$$badmen" ]; then                                     \
303            echo "" ;                                                    \
304            echo "Warning: The following programs have no manuals:" ;    \
305            echo "" ;                                                    \
306            for m in $$badmen ; do                                       \
307              echo "    $$m" ;                                           \
308            done ;                                                       \
309          fi
310
311 check_xml:
312         @badxml="" ;                                                    \
313          for exe in $(EXES); do                                         \
314            if ! [ -f $(srcdir)/../config/$$exe.xml -o                   \
315                   "$$exe" = xscreensaver-gl-helper ]; then              \
316              badxml="$$badxml $$exe" ;                                  \
317            fi ;                                                         \
318          done ;                                                         \
319          if [ -n "$$badxml" ]; then                                     \
320            echo "" ;                                                    \
321            echo "Warning: The following programs have no configurators:" ; \
322            echo "" ;                                                    \
323            for m in $$badxml ; do                                       \
324              echo "    $$m" ;                                           \
325            done ;                                                       \
326            echo "" ;                                                    \
327          fi
328
329 distdepend:: check_men check_xml
330
331
332
333
334 # Rules for noticing when the objects from the utils directory are out of
335 # date with respect to their sources, and going and building them according
336 # to the rules in their own Makefile...
337 #
338 $(UTILS_BIN)/colors.o:          $(UTILS_SRC)/colors.c
339 $(UTILS_BIN)/hsv.o:             $(UTILS_SRC)/hsv.c
340 $(UTILS_BIN)/resources.o:       $(UTILS_SRC)/resources.c
341 $(UTILS_BIN)/usleep.o:          $(UTILS_SRC)/usleep.c
342 $(UTILS_BIN)/visual.o:          $(UTILS_SRC)/visual.c
343 $(UTILS_BIN)/visual-gl.o:       $(UTILS_SRC)/visual-gl.c
344 $(UTILS_BIN)/yarandom.o:        $(UTILS_SRC)/yarandom.c
345
346 $(UTIL_OBJS):
347         cd $(UTILS_BIN) ; \
348         $(MAKE) $(@F) CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)"
349
350 $(HACK_BIN)/xlockmore.o: $(HACK_SRC)/xlockmore.c
351         cd $(HACK_BIN)  ; $(MAKE) $(@F) CC="$(CC)" CFLAGS="$(CFLAGS)"
352
353
354 # How we build object files in this directory.
355 .c.o:
356         $(CC) -c $(INCLUDES) $(DEFS) $(CFLAGS) $(X_CFLAGS) $<
357
358
359 # How to build the "xscreensaver-gl-helper" program, that lets the daemon
360 # know which visual is the right one for GL programs.
361 #
362 HELPER_OBJS = xscreensaver-gl-helper.o $(UTILS_BIN)/visual-gl.o \
363               $(UTILS_BIN)/visual.o $(UTILS_BIN)/resources.o
364 xscreensaver-gl-helper: $(HELPER_OBJS)
365         $(CC) $(LDFLAGS) -o $@ $(HELPER_OBJS) $(LIBS) $(X_LIBS) $(HACK_POST2)
366
367
368 # These hacks use a slightly-differently-compiled variant of screenhack.c.
369 # This is how to make the the other .o file from it.
370 #
371 screenhack-gl.o: $(HACK_SRC)/screenhack.c
372         $(CC) -o $@ -c $(INCLUDES) $(DEFS) $(CFLAGS) $(X_CFLAGS) \
373           -DXLOCKMORE  -DUSE_GL $(HACK_SRC)/screenhack.c
374
375 CC_HACK         = $(CC) $(LDFLAGS)
376
377 TRACK_OBJS=rotator.o trackball.o gltrackball.o
378
379 ATLANTIS_OBJS = $(HACK_OBJS) dolphin.o shark.o swim.o whale.o xpm-ximage.o
380 atlantis:       atlantis.o      $(ATLANTIS_OBJS)
381         $(CC_HACK) -o $@ $@.o   $(ATLANTIS_OBJS) $(HACK_LIBS) $(XPM_LIBS)
382
383 ATUNNEL_OBJS = $(HACK_OBJS) tunnel_draw.o xpm-ximage.o
384 atunnel:        atunnel.o $(ATUNNEL_OBJS)
385         $(CC_HACK) -o $@ $@.o   $(ATUNNEL_OBJS) $(HACK_LIBS) $(XPM_LIBS)
386
387 cage:           cage.o          $(HACK_OBJS)
388         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
389
390 FLURRY_OBJS_1 = flurry-smoke.o flurry-spark.o flurry-star.o flurry-texture.o
391 FLURRY_OBJS = $(FLURRY_OBJS_1) $(HACK_OBJS)
392
393 flurry:         flurry.o $(FLURRY_OBJS)
394         $(CC_HACK) -o $@ $@.o   $(FLURRY_OBJS) $(HACK_LIBS) -lm
395
396 gears:          gears.o         $(HACK_OBJS) $(TRACK_OBJS)
397         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(TRACK_OBJS) $(HACK_LIBS)
398
399 moebius:        moebius.o       $(TRACK_OBJS) $(HACK_OBJS)
400         $(CC_HACK) -o $@ $@.o   $(TRACK_OBJS) $(HACK_OBJS) $(HACK_LIBS)
401
402 pipes:          pipes.o         $(HACK_OBJS) pipeobjs.o buildlwo.o
403         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) pipeobjs.o buildlwo.o \
404           $(HACK_LIBS)
405
406 superquadrics:  superquadrics.o $(HACK_OBJS)
407         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
408
409 morph3d:        morph3d.o       $(HACK_OBJS)
410         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
411
412 rubik:          rubik.o $(HACK_OBJS)
413         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
414
415 stairs:         stairs.o        $(HACK_OBJS)
416         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
417
418 SPROINGIES = sproingiewrap.o gllist.o \
419              s1_1.o s1_2.o s1_3.o s1_4.o s1_5.o s1_6.o s1_b.o
420 sproingies: sproingies.o $(HACK_OBJS) $(SPROINGIES)
421         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(SPROINGIES) $(HACK_LIBS)
422
423 lament:         lament.o        $(TRACK_OBJS) xpm-ximage.o $(HACK_OBJS)
424         $(CC_HACK) -o $@ $@.o   $(TRACK_OBJS) xpm-ximage.o $(HACK_OBJS) $(XPM_LIBS)
425
426 B3D = b_sphere.o b_draw.o b_lockglue.o
427 bubble3d:       bubble3d.o      $(HACK_OBJS) $(B3D)
428         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(B3D) $(HACK_LIBS)
429
430 PLANETHACKS=sphere.o xpm-ximage.o $(TRACK_OBJS)
431 glplanet:       glplanet.o      $(PLANETHACKS) $(HACK_OBJS)
432         $(CC_HACK) -o $@ $@.o   $(PLANETHACKS) $(HACK_OBJS) $(XPM_LIBS)
433
434 pulsar:         pulsar.o        $(HACK_OBJS) xpm-ximage.o
435         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) xpm-ximage.o $(HACK_LIBS) $(XPM_LIBS)
436
437 EXTRUSION_OBJS=extrusion.o extrusion-helix2.o extrusion-helix3.o    \
438         extrusion-helix4.o extrusion-joinoffset.o extrusion-screw.o \
439         extrusion-taper.o extrusion-twistoid.o xpm-ximage.o $(TRACK_OBJS)
440 extrusion:      $(EXTRUSION_OBJS) $(HACK_OBJS)
441         $(CC_HACK) -o $@ $(EXTRUSION_OBJS) $(HACK_OBJS) $(XPM_LIBS) $(GLE_LIBS)
442
443 sierpinski3d:   sierpinski3d.o  $(HACK_OBJS) $(TRACK_OBJS)
444         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(TRACK_OBJS) $(HACK_LIBS)
445
446 gflux:          gflux.o         $(HACK_OBJS) $(TRACK_OBJS) $(GRAB_OBJS)
447         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(TRACK_OBJS) $(GRAB_OBJS) $(HACK_LIBS)
448
449 SW_OBJS=starwars.o glut_stroke.o glut_swidth.o
450 starwars:       $(SW_OBJS) $(HACK_OBJS)
451         $(CC_HACK) -o $@ $(SW_OBJS) $(HACK_OBJS) $(HACK_LIBS)
452
453 GLT_OBJS=gltext.o glut_stroke.o glut_swidth.o tube.o $(TRACK_OBJS)
454 gltext: $(GLT_OBJS) $(HACK_OBJS)
455         $(CC_HACK) -o $@ $(GLT_OBJS) $(HACK_OBJS) $(HACK_LIBS)
456
457 DB_OBJS=sphere.o tube.o $(TRACK_OBJS)
458 dangerball:     dangerball.o    $(DB_OBJS) $(HACK_OBJS)
459         $(CC_HACK) -o $@ $@.o   $(DB_OBJS) $(HACK_OBJS) $(HACK_LIBS)
460
461 circuit:        circuit.o       $(HACK_OBJS) font-ximage.o
462         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) font-ximage.o $(HACK_LIBS)
463
464 menger:         menger.o        $(HACK_OBJS) $(TRACK_OBJS)
465         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(TRACK_OBJS) $(HACK_LIBS)
466
467 engine:         engine.o        $(HACK_OBJS) $(TRACK_OBJS)
468         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(TRACK_OBJS) $(HACK_LIBS)
469
470 flipscreen3d:   flipscreen3d.o  $(HACK_OBJS) $(GRAB_OBJS) $(TRACK_OBJS)
471         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB_OBJS) $(TRACK_OBJS) $(HACK_LIBS)
472
473 glsnake:        glsnake.o       $(HACK_OBJS)
474         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
475
476 boxed:          boxed.o         $(HACK_OBJS)
477         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
478
479 glforestfire:   glforestfire.o  $(HACK_OBJS) xpm-ximage.o
480         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) xpm-ximage.o $(XPM_LIBS)
481
482 sballs:         sballs.o        $(HACK_OBJS) xpm-ximage.o
483         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) xpm-ximage.o $(XPM_LIBS)
484
485 cubenetic:      cubenetic.o     $(HACK_OBJS) $(TRACK_OBJS)
486         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(TRACK_OBJS) $(HACK_LIBS)
487
488 spheremonics:   spheremonics.o  $(HACK_OBJS) $(TRACK_OBJS)
489         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(TRACK_OBJS) $(HACK_LIBS)
490
491 LLOBJS=marching.o xpm-ximage.o $(TRACK_OBJS) $(HACK_OBJS)
492 lavalite:       lavalite.o      $(LLOBJS)
493         $(CC_HACK) -o $@ $@.o   $(LLOBJS)  $(XPM_LIBS)
494
495 queens:         queens.o        $(TRACK_OBJS) $(HACK_OBJS)
496         $(CC_HACK) -o $@ $@.o   $(TRACK_OBJS) $(HACK_OBJS) $(HACK_LIBS)
497
498 CHESSOBJS=chessmodels.o $(TRACK_OBJS) $(HACK_OBJS)
499 endgame:        endgame.o       $(CHESSOBJS)
500         $(CC_HACK) -o $@ $@.o   $(CHESSOBJS) $(HACK_LIBS)
501
502 glblur: glblur.o                $(HACK_OBJS) $(TRACK_OBJS)
503         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(TRACK_OBJS) $(HACK_LIBS)
504
505 TOASTOBJS1=\
506   toaster.o toaster_base.o toaster_handle.o toaster_handle2.o \
507   toaster_jet.o toaster_knob.o toaster_slots.o toaster_wing.o \
508   toast.o toast2.o
509 TOASTOBJS=flyingtoasters.o gllist.o $(TOASTOBJS1) xpm-ximage.o
510 flyingtoasters: $(TOASTOBJS)          $(TRACK_OBJS) $(HACK_OBJS)
511         $(CC_HACK) -o $@ $(TOASTOBJS) $(TRACK_OBJS) $(HACK_OBJS) $(XPM_LIBS)
512
513 COWOBJS1=\
514   cow_face.o cow_hide.o cow_hoofs.o cow_horns.o cow_tail.o cow_udder.o
515 COWOBJS=bouncingcow.o gllist.o $(COWOBJS1) xpm-ximage.o
516 bouncingcow:    $(COWOBJS)          $(TRACK_OBJS) $(HACK_OBJS)
517         $(CC_HACK) -o $@ $(COWOBJS) $(TRACK_OBJS) $(HACK_OBJS) $(XPM_LIBS)
518
519 glslideshow:    glslideshow.o   $(HACK_OBJS) $(GRAB_OBJS)
520         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB_OBJS) $(HACK_LIBS)
521
522 jigglypuff:     jigglypuff.o    xpm-ximage.o $(HACK_OBJS) $(TRACK_OBJS)
523         $(CC_HACK) -o $@ $@.o   xpm-ximage.o $(HACK_OBJS) $(TRACK_OBJS) $(XPM_LIBS)
524
525 klein:          klein.o         $(HACK_OBJS) $(TRACK_OBJS)
526         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(TRACK_OBJS) $(HACK_LIBS)
527
528 hypertorus:     hypertorus.o    $(HACK_OBJS)
529         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
530
531 glmatrix:       glmatrix.o      $(HACK_OBJS) xpm-ximage.o
532         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) xpm-ximage.o $(XPM_LIBS)
533
534 cubestorm:      cubestorm.o     $(TRACK_OBJS) $(HACK_OBJS)
535         $(CC_HACK) -o $@ $@.o   $(TRACK_OBJS) $(HACK_OBJS) $(HACK_LIBS)
536
537 glknots:        glknots.o       tube.o $(TRACK_OBJS) $(HACK_OBJS)
538         $(CC_HACK) -o $@ $@.o   tube.o $(TRACK_OBJS) $(HACK_OBJS) $(HACK_LIBS)
539
540 blocktube:      blocktube.o     $(HACK_OBJS) xpm-ximage.o
541         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) xpm-ximage.o $(HACK_LIBS) $(XPM_LIBS)
542
543 flipflop:       flipflop.o      $(TRACK_OBJS) $(HACK_OBJS)
544         $(CC_HACK) -o $@ $@.o   $(TRACK_OBJS) $(HACK_OBJS) $(HACK_LIBS)
545
546 antspotlight:   antspotlight.o  $(TRACK_OBJS) $(GRAB_OBJS) $(HACK_OBJS)
547         $(CC_HACK) -o $@ $@.o   $(TRACK_OBJS) $(GRAB_OBJS) $(HACK_OBJS) $(HACK_LIBS)
548
549 polytopes:      polytopes.o     $(HACK_OBJS)
550         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
551
552 # This one works differently (it's not xlock-like.)
553 #
554 STONER_OBJS=stonerview.o stonerview-move.o stonerview-osc.o stonerview-view.o \
555             $(UTILS_BIN)/yarandom.o
556 stonerview:     $(STONER_OBJS)
557         $(CC_HACK) -o $@ $(STONER_OBJS) $(HACK_LIBS)
558
559 molecules.h:
560         @tmp=molecules.h.$$$$ ;                                         \
561         rm -f $$tmp ;                                                   \
562         echo "building molecules.h from $(HACK_SRC)/images/molecules/*.pdb" ; \
563         for f in $(HACK_SRC)/images/molecules/*.pdb ; do                \
564           $(SHELL) $(UTILS_SRC)/ad2c "$$f" |                            \
565             sed 's/",$$/\\n"/' >> $$tmp ;                               \
566           echo ',' >> $$tmp ;                                           \
567         done ;                                                          \
568         mv $$tmp molecules.h
569
570 MOLECULEOBJS=sphere.o tube.o $(TRACK_OBJS)
571 molecule:       molecule.o      $(MOLECULEOBJS) $(HACK_OBJS)
572         $(CC_HACK) -o $@ $@.o   $(MOLECULEOBJS) $(HACK_OBJS) $(HACK_LIBS)
573
574 dnalogo:        dnalogo.o       tube.o $(HACK_OBJS)
575         $(CC_HACK) -o $@ $@.o   tube.o $(HACK_OBJS) $(HACK_LIBS)
576
577 ##############################################################################
578 #
579 # DO NOT DELETE: updated by make distdepend
580
581 antspotlight.o: $(srcdir)/ants.h
582 antspotlight.o: ../../config.h
583 antspotlight.o: $(srcdir)/gltrackball.h
584 antspotlight.o: $(srcdir)/grab-ximage.h
585 antspotlight.o: $(srcdir)/rotator.h
586 atlantis.o: $(srcdir)/atlantis.h
587 atlantis.o: ../../config.h
588 atlantis.o: $(HACK_SRC)/images/sea-texture.xpm
589 atlantis.o: $(srcdir)/xpm-ximage.h
590 atunnel.o: ../../config.h
591 atunnel.o: $(HACK_SRC)/images/tunnel0.xpm
592 atunnel.o: $(HACK_SRC)/images/tunnel1.xpm
593 atunnel.o: $(HACK_SRC)/images/tunnel2.xpm
594 atunnel.o: $(srcdir)/tunnel_draw.h
595 atunnel.o: $(srcdir)/xpm-ximage.h
596 b_draw.o: $(srcdir)/bubble3d.h
597 b_draw.o: ../../config.h
598 b_lockglue.o: $(srcdir)/bubble3d.h
599 b_lockglue.o: ../../config.h
600 blocktube.o: ../../config.h
601 blocktube.o: $(HACK_SRC)/images/blocktube.xpm
602 blocktube.o: $(srcdir)/xpm-ximage.h
603 bouncingcow.o: ../../config.h
604 bouncingcow.o: $(srcdir)/gllist.h
605 bouncingcow.o: $(srcdir)/gltrackball.h
606 bouncingcow.o: $(srcdir)/rotator.h
607 bouncingcow.o: $(srcdir)/xpm-ximage.h
608 boxed.o: $(srcdir)/boxed.h
609 boxed.o: ../../config.h
610 b_sphere.o: $(srcdir)/bubble3d.h
611 b_sphere.o: ../../config.h
612 bubble3d.o: $(srcdir)/bubble3d.h
613 bubble3d.o: ../../config.h
614 buildlwo.o: $(srcdir)/buildlwo.h
615 cage.o: ../../config.h
616 cage.o: $(srcdir)/e_textures.h
617 chessmodels.o: $(srcdir)/chessmodels.h
618 circuit.o: ../../config.h
619 circuit.o: $(srcdir)/font-ximage.h
620 cow_face.o: $(srcdir)/gllist.h
621 cow_hide.o: $(srcdir)/gllist.h
622 cow_hoofs.o: $(srcdir)/gllist.h
623 cow_horns.o: $(srcdir)/gllist.h
624 cow_tail.o: $(srcdir)/gllist.h
625 cow_udder.o: $(srcdir)/gllist.h
626 cubenetic.o: ../../config.h
627 cubenetic.o: $(srcdir)/gltrackball.h
628 cubenetic.o: $(srcdir)/rotator.h
629 cubestorm.o: ../../config.h
630 cubestorm.o: $(srcdir)/gltrackball.h
631 cubestorm.o: $(srcdir)/rotator.h
632 dangerball.o: ../../config.h
633 dangerball.o: $(srcdir)/gltrackball.h
634 dangerball.o: $(srcdir)/rotator.h
635 dangerball.o: $(srcdir)/sphere.h
636 dangerball.o: $(srcdir)/tube.h
637 dolphin.o: $(srcdir)/atlantis.h
638 endgame.o: $(srcdir)/chessgames.h
639 endgame.o: $(srcdir)/chessmodels.h
640 endgame.o: ../../config.h
641 endgame.o: $(srcdir)/gltrackball.h
642 engine.o: ../../config.h
643 engine.o: $(srcdir)/gltrackball.h
644 engine.o: $(srcdir)/rotator.h
645 extrusion-helix2.o: ../../config.h
646 extrusion-helix3.o: ../../config.h
647 extrusion-helix4.o: ../../config.h
648 extrusion-joinoffset.o: ../../config.h
649 extrusion.o: ../../config.h
650 extrusion.o: $(srcdir)/rotator.h
651 extrusion.o: $(srcdir)/xpm-ximage.h
652 extrusion-screw.o: ../../config.h
653 extrusion-taper.o: ../../config.h
654 extrusion-twistoid.o: ../../config.h
655 flipflop.o: ../../config.h
656 flipflop.o: $(srcdir)/gltrackball.h
657 flipscreen3d.o: ../../config.h
658 flipscreen3d.o: $(srcdir)/gltrackball.h
659 flipscreen3d.o: $(srcdir)/grab-ximage.h
660 flurry.o: ../../config.h
661 flurry.o: $(srcdir)/flurry.h
662 flurry.o: $(srcdir)/gltrackball.h
663 flurry.o: $(srcdir)/rotator.h
664 flurry-smoke.o: ../../config.h
665 flurry-smoke.o: $(srcdir)/flurry.h
666 flurry-smoke.o: $(srcdir)/gltrackball.h
667 flurry-smoke.o: $(srcdir)/rotator.h
668 flurry-spark.o: ../../config.h
669 flurry-spark.o: $(srcdir)/flurry.h
670 flurry-spark.o: $(srcdir)/gltrackball.h
671 flurry-spark.o: $(srcdir)/rotator.h
672 flurry-star.o: ../../config.h
673 flurry-star.o: $(srcdir)/flurry.h
674 flurry-star.o: $(srcdir)/gltrackball.h
675 flurry-star.o: $(srcdir)/rotator.h
676 flurry-texture.o: ../../config.h
677 flurry-texture.o: $(srcdir)/flurry.h
678 flurry-texture.o: $(srcdir)/gltrackball.h
679 flurry-texture.o: $(srcdir)/rotator.h
680 flyingtoasters.o: ../../config.h
681 flyingtoasters.o: $(srcdir)/gllist.h
682 flyingtoasters.o: $(srcdir)/gltrackball.h
683 flyingtoasters.o: $(HACK_SRC)/images/chromesphere.xpm
684 flyingtoasters.o: $(HACK_SRC)/images/toast.xpm
685 flyingtoasters.o: $(srcdir)/xpm-ximage.h
686 font-ximage.o: ../../config.h
687 fps.o: ../../config.h
688 gears.o: ../../config.h
689 gears.o: $(srcdir)/gltrackball.h
690 gears.o: $(srcdir)/rotator.h
691 gflux.o: ../../config.h
692 gflux.o: $(srcdir)/gltrackball.h
693 gflux.o: $(srcdir)/grab-ximage.h
694 glblur.o: ../../config.h
695 glblur.o: $(srcdir)/gltrackball.h
696 glblur.o: $(srcdir)/rotator.h
697 glforestfire.o: ../../config.h
698 glforestfire.o: $(HACK_SRC)/images/ground.xpm
699 glforestfire.o: $(HACK_SRC)/images/tree.xpm
700 glforestfire.o: $(srcdir)/xpm-ximage.h
701 glknots.o: ../../config.h
702 glknots.o: $(srcdir)/gltrackball.h
703 glknots.o: $(srcdir)/rotator.h
704 glknots.o: $(srcdir)/tube.h
705 gllist.o: $(srcdir)/gllist.h
706 glmatrix.o: ../../config.h
707 glmatrix.o: $(srcdir)/gllist.h
708 glmatrix.o: $(HACK_SRC)/images/matrix3.xpm
709 glmatrix.o: $(srcdir)/xpm-ximage.h
710 glplanet.o: ../../config.h
711 glplanet.o: $(srcdir)/gltrackball.h
712 glplanet.o: $(HACK_SRC)/images/earth.xpm
713 glplanet.o: $(srcdir)/rotator.h
714 glplanet.o: $(srcdir)/sphere.h
715 glplanet.o: $(srcdir)/xpm-ximage.h
716 glslideshow.o: ../../config.h
717 glslideshow.o: $(srcdir)/grab-ximage.h
718 glsnake.o: ../../config.h
719 gltext.o: ../../config.h
720 gltext.o: $(srcdir)/gltrackball.h
721 gltext.o: $(srcdir)/glut_roman.h
722 gltext.o: $(srcdir)/glutstroke.h
723 gltext.o: $(srcdir)/rotator.h
724 gltext.o: $(srcdir)/tube.h
725 gltrackball.o: ../../config.h
726 gltrackball.o: $(srcdir)/gltrackball.h
727 gltrackball.o: $(srcdir)/trackball.h
728 glut_stroke.o: ../../config.h
729 glut_stroke.o: $(srcdir)/glutstroke.h
730 glut_swidth.o: ../../config.h
731 glut_swidth.o: $(srcdir)/glutstroke.h
732 grab-ximage.o: ../../config.h
733 hypertorus.o: ../../config.h
734 jigglypuff.o: ../../config.h
735 jigglypuff.o: $(srcdir)/gltrackball.h
736 jigglypuff.o: $(HACK_SRC)/images/jigglymap.xpm
737 jigglypuff.o: $(srcdir)/xpm-ximage.h
738 klein.o: ../../config.h
739 klein.o: $(srcdir)/gltrackball.h
740 klein.o: $(srcdir)/rotator.h
741 lament.o: ../../config.h
742 lament.o: $(srcdir)/gltrackball.h
743 lament.o: $(HACK_SRC)/images/lament.xpm
744 lament.o: $(srcdir)/rotator.h
745 lament.o: $(srcdir)/xpm-ximage.h
746 lavalite.o: ../../config.h
747 lavalite.o: $(srcdir)/gltrackball.h
748 lavalite.o: $(srcdir)/marching.h
749 lavalite.o: $(srcdir)/rotator.h
750 lavalite.o: $(srcdir)/xpm-ximage.h
751 marching.o: ../../config.h
752 marching.o: $(srcdir)/marching.h
753 menger.o: ../../config.h
754 menger.o: $(srcdir)/gltrackball.h
755 menger.o: $(srcdir)/rotator.h
756 moebius.o: ../../config.h
757 moebius.o: $(srcdir)/e_textures.h
758 moebius.o: $(srcdir)/gltrackball.h
759 moebius.o: $(srcdir)/rotator.h
760 molecule.o: ../../config.h
761 molecule.o: $(srcdir)/gltrackball.h
762 molecule.o: molecules.h
763 molecule.o: $(srcdir)/rotator.h
764 molecule.o: $(srcdir)/sphere.h
765 molecule.o: $(srcdir)/tube.h
766 morph3d.o: ../../config.h
767 pipeobjs.o: $(srcdir)/buildlwo.h
768 pipes.o: $(srcdir)/buildlwo.h
769 pipes.o: ../../config.h
770 polytopes.o: ../../config.h
771 pulsar.o: ../../config.h
772 pulsar.o: $(srcdir)/xpm-ximage.h
773 queens.o: ../../config.h
774 queens.o: $(srcdir)/gltrackball.h
775 rotator.o: ../../config.h
776 rotator.o: $(srcdir)/rotator.h
777 rubik.o: ../../config.h
778 s1_1.o: $(srcdir)/gllist.h
779 s1_2.o: $(srcdir)/gllist.h
780 s1_3.o: $(srcdir)/gllist.h
781 s1_4.o: $(srcdir)/gllist.h
782 s1_5.o: $(srcdir)/gllist.h
783 s1_6.o: $(srcdir)/gllist.h
784 s1_b.o: $(srcdir)/gllist.h
785 sballs.o: ../../config.h
786 sballs.o: $(HACK_SRC)/images/sball-bg.xpm
787 sballs.o: $(HACK_SRC)/images/sball.xpm
788 sballs.o: $(srcdir)/xpm-ximage.h
789 shark.o: $(srcdir)/atlantis.h
790 sierpinski3d.o: ../../config.h
791 sierpinski3d.o: $(srcdir)/gltrackball.h
792 sierpinski3d.o: $(srcdir)/rotator.h
793 spheremonics.o: ../../config.h
794 spheremonics.o: $(srcdir)/gltrackball.h
795 spheremonics.o: $(srcdir)/rotator.h
796 sphere.o: ../../config.h
797 sproingies.o: ../../config.h
798 sproingies.o: $(srcdir)/gllist.h
799 sproingiewrap.o: ../../config.h
800 stairs.o: ../../config.h
801 stairs.o: $(srcdir)/e_textures.h
802 starwars.o: ../../config.h
803 starwars.o: $(srcdir)/glut_roman.h
804 starwars.o: $(srcdir)/glutstroke.h
805 stonerview-move.o: ../../config.h
806 stonerview-move.o: $(srcdir)/stonerview-move.h
807 stonerview-move.o: $(srcdir)/stonerview-osc.h
808 stonerview.o: ../../config.h
809 stonerview.o: $(srcdir)/stonerview-move.h
810 stonerview-osc.o: ../../config.h
811 stonerview-osc.o: $(srcdir)/stonerview-osc.h
812 stonerview-view.o: ../../config.h
813 stonerview-view.o: $(srcdir)/stonerview-move.h
814 stonerview-view.o: $(srcdir)/stonerview-osc.h
815 superquadrics.o: ../../config.h
816 swim.o: $(srcdir)/atlantis.h
817 swim.o: ../../config.h
818 toast2.o: $(srcdir)/gllist.h
819 toaster_base.o: $(srcdir)/gllist.h
820 toaster_handle2.o: $(srcdir)/gllist.h
821 toaster_handle.o: $(srcdir)/gllist.h
822 toaster_jet.o: $(srcdir)/gllist.h
823 toaster_knob.o: $(srcdir)/gllist.h
824 toaster.o: $(srcdir)/gllist.h
825 toaster_slots.o: $(srcdir)/gllist.h
826 toaster_wing.o: $(srcdir)/gllist.h
827 toast.o: $(srcdir)/gllist.h
828 trackball.o: ../../config.h
829 trackball.o: $(srcdir)/trackball.h
830 tube.o: ../../config.h
831 tube.o: $(srcdir)/tube.h
832 tunnel_draw.o: ../../config.h
833 tunnel_draw.o: $(srcdir)/tunnel_draw.h
834 whale.o: $(srcdir)/atlantis.h
835 xlock-gl.o: ../../config.h
836 xpm-ximage.o: ../../config.h
837 xscreensaver-gl-helper.o: ../../config.h
838