31a72583b192458e72a4aa15697a68db46cea214
[xscreensaver] / hacks / Makefile.in
1 # hacks/Makefile.in --- xscreensaver, Copyright (c) 1997-1999 Jamie Zawinski.
2 # the `../configure' script generates `hacks/Makefile' from this file.
3
4 @SET_MAKE@
5 .SUFFIXES:
6 .SUFFIXES: .c .o
7
8 srcdir          = @srcdir@
9 VPATH           = @srcdir@
10
11 install_prefix  =
12 prefix          = @prefix@
13 exec_prefix     = @exec_prefix@
14 bindir          = @bindir@
15 mandir          = @mandir@
16 # maybe this should be 6 (games)?
17 mansuffix       = 1
18 manNdir         = $(mandir)/man$(mansuffix)
19
20 CC              = @CC@
21 CFLAGS          = @CFLAGS@
22 LDFLAGS         = @LDFLAGS@
23 DEFS            = -DSTANDALONE @DEFS@
24 LIBS            = @LIBS@
25 PERL            = @PERL@
26
27 DEPEND          = @DEPEND@
28 DEPEND_FLAGS    = @DEPEND_FLAGS@
29 DEPEND_DEFINES  = @DEPEND_DEFINES@
30
31 SHELL           = /bin/sh
32 INSTALL         = @INSTALL@
33 SUID_FLAGS      = -o root -m 4755
34 INSTALL_PROGRAM = @INSTALL_PROGRAM@
35 INSTALL_SCRIPT  = @INSTALL_SCRIPT@
36 INSTALL_SETUID  = @INSTALL_SETUID@
37 INSTALL_DATA    = @INSTALL_DATA@
38 INSTALL_DIRS    = @INSTALL_DIRS@
39 GNOME_DATADIR   = @GNOME_DATADIR@
40 HACKDIR         = @HACKDIR@
41 HACK_CONF_DIR   = @HACK_CONF_DIR@
42
43 X_CFLAGS        = @X_CFLAGS@
44 X_LIBS          = @X_LIBS@
45 X_PRE_LIBS      = @X_PRE_LIBS@
46 X_EXTRA_LIBS    = @X_EXTRA_LIBS@
47 XMU_LIBS        = @XMU_LIBS@
48
49 # Note: see comment in ../driver/Makefile.in for explanation of X_LIBS, etc.
50 #
51 HACK_PRE        = $(LIBS) $(X_LIBS)
52 HACK_POST     = $(X_PRE_LIBS) -lXt -lX11 $(XMU_LIBS) -lXext $(X_EXTRA_LIBS) -lm
53 HACK_LIBS       = $(HACK_PRE)            @HACK_LIBS@ $(HACK_POST)
54 XPM_LIBS        = $(HACK_PRE) @XPM_LIBS@ @HACK_LIBS@ $(HACK_POST)
55 JPEG_LIBS       = @JPEG_LIBS@
56 XLOCK_LIBS      = $(HACK_LIBS)
57
58 UTILS_SRC       = $(srcdir)/../utils
59 UTILS_BIN       = ../utils
60
61 INCLUDES        = -I. -I$(srcdir) -I$(UTILS_SRC) -I.. @INCLUDES@
62
63 UTIL_SRCS       = $(UTILS_SRC)/alpha.c $(UTILS_SRC)/colors.c \
64                   $(UTILS_SRC)/grabscreen.c $(UTILS_SRC)/grabclient.c \
65                   $(UTILS_SRC)/hsv.c $(UTILS_SRC)/resources.c \
66                   $(UTILS_SRC)/spline.c $(UTILS_SRC)/usleep.c \
67                   $(UTILS_SRC)/visual.c $(UTILS_SRC)/logo.c \
68                   $(UTILS_SRC)/yarandom.c $(UTILS_SRC)/erase.c \
69                   $(UTILS_SRC)/xshm.c $(UTILS_SRC)/xdbe.c
70 UTIL_OBJS       = $(UTILS_BIN)/alpha.o $(UTILS_BIN)/colors.o \
71                   $(UTILS_BIN)/grabscreen.o $(UTILS_BIN)/grabclient.o \
72                   $(UTILS_BIN)/hsv.o $(UTILS_BIN)/resources.o \
73                   $(UTILS_BIN)/spline.o $(UTILS_BIN)/usleep.o \
74                   $(UTILS_BIN)/visual.o $(UTILS_BIN)/logo.o \
75                   $(UTILS_BIN)/yarandom.o $(UTILS_BIN)/erase.o \
76                   $(UTILS_SRC)/xshm.o $(UTILS_SRC)/xdbe.o
77
78 SRCS            = attraction.c blitspin.c bouboule.c braid.c bubbles.c \
79                   bubbles-default.c decayscreen.c deco.c drift.c flag.c \
80                   flame.c forest.c vines.c galaxy.c grav.c greynetic.c \
81                   halo.c helix.c hopalong.c hypercube.c ifs.c imsmap.c \
82                   julia.c kaleidescope.c laser.c lightning.c lisa.c lmorph.c \
83                   maze.c moire.c noseguy.c pedal.c penrose.c pyro.c qix.c \
84                   rocks.c rorschach.c screenhack.c sierpinski.c slidescreen.c \
85                   slip.c sphere.c spiral.c strange.c swirl.c xlockmore.c \
86                   goop.c starfish.c munch.c fadeplot.c \
87                   rd-bomb.c coral.c mountain.c triangle.c lissie.c worm.c \
88                   rotor.c ant.c xjack.c xlyap.c jigsaw.c xscreensaver-sgigl.c \
89                   cynosure.c moire2.c flow.c epicycle.c interference.c \
90                   truchet.c bsod.c crystal.c discrete.c distort.c kumppa.c \
91                   sonar.c demon.c loop.c t3d.c penetrate.c deluxe.c compass.c \
92                   squiral.c xflame.c wander.c spotlight.c critical.c \
93                   phosphor.c xmatrix.c petri.c shadebobs.c xsublim.c ccurve.c \
94                   blaster.c bumps.c ripples.c xteevee.c xspirograph.c \
95                   nerverot.c xrayswarm.c hyperball.c zoom.c whirlwindwarp.c \
96                   rotzoomer.c whirlygig.c speedmine.c vermiculate.c \
97                   xpm-pixmap.c webcollage-helper.c twang.c apollonian.c \
98                   euler2d.c juggle.c polyominoes.c thornbird.c fluidballs.c \
99                   anemone.c halftone.c
100 SCRIPTS         = vidwhacker webcollage
101
102 OBJS            = attraction.o blitspin.o bouboule.o braid.o bubbles.o \
103                   bubbles-default.o decayscreen.o deco.o drift.o flag.o \
104                   flame.o forest.o vines.o galaxy.o grav.o greynetic.o \
105                   halo.o helix.o hopalong.o hypercube.o ifs.o imsmap.o \
106                   julia.o kaleidescope.o laser.o lightning.o lisa.o lmorph.o \
107                   maze.o moire.o noseguy.o pedal.o penrose.o pyro.o qix.o \
108                   rocks.o rorschach.o screenhack.o sierpinski.o slidescreen.o \
109                   slip.o sphere.o spiral.o strange.o swirl.o xlockmore.o \
110                   goop.o starfish.o munch.o fadeplot.o \
111                   rd-bomb.o coral.o mountain.o triangle.o lissie.o worm.o \
112                   rotor.o ant.o xjack.o xlyap.o jigsaw.o xscreensaver-sgigl.o \
113                   cynosure.o moire2.o flow.o epicycle.o interference.o \
114                   truchet.o bsod.o crystal.o discrete.o distort.o kumppa.o \
115                   sonar.o demon.o loop.o t3d.o penetrate.o deluxe.o compass.o \
116                   squiral.o xflame.o wander.o spotlight.o critical.o \
117                   phosphor.o xmatrix.o petri.o shadebobs.o xsublim.o ccurve.o \
118                   blaster.o bumps.o ripples.o xteevee.o xspirograph.o \
119                   nerverot.o xrayswarm.o hyperball.o zoom.o whirlwindwarp.o \
120                   rotzoomer.o whirlygig.o speedmine.o vermiculate.o \
121                   xpm-pixmap.o webcollage-helper.o twang.o apollonian.o \
122                   euler2d.o juggle.o polyominoes.o thornbird.o fluidballs.o \
123                   anemone.o halftone.o
124
125 NEXES           = attraction blitspin bouboule braid bubbles decayscreen deco \
126                   drift flag flame forest vines galaxy grav greynetic halo \
127                   helix hopalong hypercube ifs imsmap julia kaleidescope \
128                   laser lightning lisa lmorph maze moire noseguy pedal \
129                   penrose pyro qix rocks rorschach sierpinski slidescreen \
130                   slip sphere spiral strange swirl goop starfish munch \
131                   fadeplot rd-bomb coral mountain triangle lissie worm rotor \
132                   ant xjack xlyap jigsaw cynosure moire2 flow epicycle \
133                   interference truchet bsod crystal discrete distort kumppa \
134                   demon loop t3d penetrate deluxe compass squiral xflame \
135                   wander spotlight critical phosphor xmatrix petri shadebobs \
136                   xsublim ccurve blaster bumps ripples xteevee xspirograph \
137                   nerverot xrayswarm hyperball zoom whirlwindwarp rotzoomer \
138                   whirlygig speedmine vermiculate twang apollonian euler2d \
139                   juggle polyominoes thornbird  fluidballs anemone halftone \
140                   @JPEG_EXES@
141 SEXES           = sonar
142 JPEG_EXES       = webcollage-helper
143 EXES            = $(NEXES) $(SEXES)
144
145 HACK_OBJS_1     = $(UTILS_BIN)/resources.o $(UTILS_BIN)/visual.o \
146                   $(UTILS_BIN)/usleep.o $(UTILS_BIN)/yarandom.o @XMU_OBJS@
147 HACK_OBJS       = screenhack.o $(HACK_OBJS_1)
148 XLOCK_OBJS      = screenhack-xlock.o xlockmore.o $(COLOR_OBJS) $(HACK_OBJS_1)
149 COLOR_OBJS      = $(UTILS_BIN)/hsv.o $(UTILS_BIN)/colors.o
150 GRAB_OBJS       = $(UTILS_BIN)/grabclient.o
151 XSHM_OBJS       = $(UTILS_BIN)/xshm.o
152 XDBE_OBJS       = $(UTILS_BIN)/xdbe.o
153
154 HDRS            = bubbles.h screenhack.h xlockmore.h xlockmoreI.h automata.h \
155                   bumps.h xpm-pixmap.h
156 MEN             = anemone.man ant.man apollonian.man attraction.man \
157                   blaster.man blitspin.man bouboule.man braid.man bsod.man \
158                   bubbles.man bumps.man ccurve.man compass.man coral.man \
159                   critical.man crystal.man cynosure.man decayscreen.man \
160                   deco.man deluxe.man demon.man discrete.man distort.man \
161                   drift.man epicycle.man euler2d.man fadeplot.man flag.man \
162                   flame.man flow.man fluidballs.man forest.man galaxy.man \
163                   goop.man grav.man greynetic.man halo.man helix.man \
164                   hopalong.man hyperball.man hypercube.man ifs.man imsmap.man \
165                   interference.man jigsaw.man juggle.man julia.man \
166                   kaleidescope.man kumppa.man laser.man lightning.man \
167                   lisa.man lissie.man lmorph.man loop.man maze.man moire.man \
168                   moire2.man mountain.man munch.man nerverot.man noseguy.man \
169                   pedal.man penetrate.man penrose.man petri.man phosphor.man \
170                   polyominoes.man pyro.man qix.man rd-bomb.man ripples.man \
171                   rocks.man rorschach.man rotor.man rotzoomer.man \
172                   shadebobs.man sierpinski.man slidescreen.man slip.man \
173                   sonar.man speedmine.man sphere.man spiral.man \
174                   spotlight.man squiral.man starfish.man strange.man \
175                   swirl.man t3d.man thornbird.man triangle.man truchet.man \
176                   twang.man vermiculate.man vidwhacker.man vines.man \
177                   wander.man webcollage.man whirlwindwarp.man whirlygig.man \
178                   worm.man xflame.man xjack.man xlyap.man xmatrix.man \
179                   xrayswarm.man xspirograph.man xsublim.man xteevee.man \
180                   zoom.man halftone.man
181 STAR            = *
182 EXTRAS          = README Makefile.in xlock_23.h xml2man.pl .gdbinit \
183                   config/README \
184                   config/$(STAR).xml \
185                   images/$(STAR).xbm \
186                   images/$(STAR).xpm \
187                   images/bubbles/$(STAR).pov \
188                   images/bubbles/$(STAR).xpm \
189                   images/noseguy/$(STAR).xbm \
190                   images/noseguy/$(STAR).xpm \
191                   images/jigsaw/$(STAR).xbm  \
192                   images/molecules/$(STAR).pdb
193
194 VMSFILES        = compile_axp.com compile_decc.com link_axp.com link_decc.com \
195                   vms_axp.opt vms_axp_12.opt vms_decc.opt vms_decc_12.opt
196
197 TARFILES        = $(SRCS) $(HDRS) $(SCRIPTS) $(MEN) $(EXTRAS) $(VMSFILES)
198
199
200 default: all
201 all: $(EXES)
202
203 install:   install-program   install-scripts install-xml install-man
204 uninstall: uninstall-program uninstall-xml uninstall-man
205
206 install-strip:
207         $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' \
208                 install
209
210 # the hacks, in $HACKDIR
211 install-program:: $(EXES)
212         @if [ ! -d $(install_prefix)$(HACKDIR) ]; then                  \
213           $(INSTALL_DIRS) $(install_prefix)$(HACKDIR) ;                 \
214          fi ;                                                           \
215         for program in $(NEXES); do                                     \
216           echo $(INSTALL_PROGRAM) $$program                             \
217             $(install_prefix)$(HACKDIR)/$$program ;                     \
218           $(INSTALL_PROGRAM) $$program                                  \
219             $(install_prefix)$(HACKDIR)/$$program ;                     \
220         done ;                                                          \
221         if [ @SETUID_HACKS@ = yes ]; then                               \
222           sinst="$(INSTALL_SETUID)" ;                                   \
223         else                                                            \
224           sinst="$(INSTALL_PROGRAM)" ;                                  \
225         fi ;                                                            \
226         for program in $(SEXES); do                                     \
227           instargs="$$program $(install_prefix)$(HACKDIR)/$$program" ;  \
228           echo $$sinst $$instargs ;                                     \
229           if   $$sinst $$instargs ; then                                \
230               true ;                                                    \
231           elif [ @SETUID_HACKS@ = yes ]; then                           \
232             echo $(INSTALL_PROGRAM) $$instargs ;                        \
233             if   $(INSTALL_PROGRAM) $$instargs ; then                   \
234               echo "" ;                                                 \
235               echo "WARNING: unable to install $$program setuid:"       \
236                    "installed non-setuid instead." ;                    \
237               echo "" ;                                                 \
238             else                                                        \
239               exit 1 ;                                                  \
240             fi ;                                                        \
241           else                                                          \
242             exit 1 ;                                                    \
243           fi ;                                                          \
244         done
245
246 install-scripts: $(SCRIPTS) munge-scripts
247         @for program in $(SCRIPTS); do                                  \
248           if [ -r $$program ] ; then                                    \
249             p=$$program ;                                               \
250           else                                                          \
251             p=$(srcdir)/$$program ;                                     \
252           fi ;                                                          \
253           echo $(INSTALL_SCRIPT) $$p                                    \
254             $(install_prefix)$(HACKDIR)/$$program ;                     \
255           $(INSTALL_SCRIPT) $$p                                         \
256             $(install_prefix)$(HACKDIR)/$$program ;                     \
257         done
258
259 munge-scripts: $(SCRIPTS)
260         @tmp=/tmp/mf.$$$$ ;                                             \
261         perl="${PERL}" ;                                                \
262         rm -f $$tmp ;                                                   \
263         for program in $(SCRIPTS); do                                   \
264           echo "adjusting location of perl in $$program..." ;           \
265           sed "s@^\(#!\)\(/[^ ]*/perl[^ ]*\)\(.*\)\$$@\1$$perl\3@"      \
266               < $(srcdir)/$$program > $$tmp ;                           \
267           if cmp -s $(srcdir)/$$program $$tmp ; then                    \
268             true ;                                                      \
269           else                                                          \
270             cat $$tmp > ./$$program ;                                   \
271           fi ;                                                          \
272         done ;                                                          \
273         rm -f $$tmp
274
275 install-man: $(MEN)
276         @men="$(MEN)" ;                                                 \
277         if [ ! -d $(install_prefix)$(manNdir) ]; then                   \
278           $(INSTALL_DIRS) $(install_prefix)$(manNdir) ;                 \
279          fi ;                                                           \
280         for man in $$men; do                                            \
281           instname=`echo $$man | sed 's/\.man$$/\.$(mansuffix)/'` ;     \
282           echo $(INSTALL_DATA) $(srcdir)/$$man                          \
283            $(install_prefix)$(manNdir)/$$instname ;                     \
284           $(INSTALL_DATA) $(srcdir)/$$man                               \
285             $(install_prefix)$(manNdir)/$$instname ;                    \
286         done
287
288 install-xml:
289         @if [ ! -d $(install_prefix)$(HACK_CONF_DIR) ]; then            \
290           $(INSTALL_DIRS) $(install_prefix)$(HACK_CONF_DIR) ;           \
291          fi ;                                                           \
292          files=`cd $(srcdir)/config/ ; echo README $(STAR).xml` ;       \
293          for file in $$files ; do                                       \
294            echo $(INSTALL_DATA) $(srcdir)/config/$$file                 \
295             $(install_prefix)$(HACK_CONF_DIR)/$$file ;                  \
296           $(INSTALL_DATA) $(srcdir)/config/$$file                       \
297             $(install_prefix)$(HACK_CONF_DIR)/$$file ;                  \
298         done
299
300 uninstall-program:
301         @for program in $(EXES) $(SCRIPTS); do                          \
302           echo rm -f $(install_prefix)$(HACKDIR)/$$program ;            \
303           rm -f $(install_prefix)$(HACKDIR)/$$program ;                 \
304         done
305
306 uninstall-man:
307         @men="$(MEN)" ;                                                 \
308         for man in $$men; do                                            \
309           instname=`echo $$man | sed 's/\.man$$/\.$(mansuffix)/'` ;     \
310           echo rm -f $(install_prefix)$(manNdir)/$$instname ;           \
311           rm -f $(install_prefix)$(manNdir)/$$instname ;                \
312         done
313
314 uninstall-xml:
315         @cd $(srcdir)/config/ ;                                         \
316          for file in README $(STAR).xml ; do                            \
317           echo rm -f $(install_prefix)$(HACK_CONF_DIR)/$$file ;         \
318           rm -f $(install_prefix)$(HACK_CONF_DIR)/$$file ;              \
319         done
320
321 clean:
322         -rm -f *.o a.out core $(EXES)
323
324 distclean: clean
325         -rm -f Makefile TAGS *~ "#"*
326
327 # Adds all current dependencies to Makefile
328 depend:
329         $(DEPEND) -s '# DO NOT DELETE: updated by make depend'              \
330         $(DEPEND_FLAGS) --                                                  \
331         $(INCLUDES) $(DEFS) $(DEPEND_DEFINES) $(CFLAGS) $(X_CFLAGS) --      \
332         $(SRCS)
333
334 # Adds some dependencies to Makefile.in -- not totally accurate, but pretty
335 # close.  This excludes dependencies on files in /usr/include, etc.  It tries
336 # to include only dependencies on files which are themselves a part of this
337 # package.
338 distdepend::
339         @echo updating dependencies in `pwd`/Makefile.in... ;               \
340         $(DEPEND) -w 0 -f -                                                 \
341         -s '# DO NOT DELETE: updated by make distdepend' $(DEPEND_FLAGS) -- \
342         $(INCLUDES) $(DEFS) $(DEPEND_DEFINES) $(CFLAGS) $(X_CFLAGS) --      \
343         $(SRCS) 2>/dev/null |                                               \
344         sort -d |                                                           \
345         (                                                                   \
346           awk '/^# .*Makefile.in ---/,/^# DO .*distdepend/' < Makefile.in ; \
347           sed -e '/^#.*/d'                                                  \
348               -e 's@ \./@ @g;s@ /[^ ]*@@g;/^.*:$$/d'                        \
349               -e 's@\.\./utils@$$(UTILS_SRC)@g'                             \
350               -e 's@ \([^$$]\)@ $$(srcdir)/\1@g'                            \
351               -e 's@ $$(srcdir)/\(.*config.h\)@ \1@g' ;                     \
352           echo ''                                                           \
353         ) > /tmp/distdepend.$$$$ &&                                         \
354         mv Makefile.in Makefile.in.bak &&                                   \
355         mv /tmp/distdepend.$$$$ Makefile.in
356
357 TAGS: tags
358 tags:
359         find $(srcdir) -name '*.[chly]' -print | xargs etags -a
360
361 echo_tarfiles:
362         @echo $(TARFILES)
363
364 check_men:
365         @badmen="" ;                                                    \
366          for exe in $(EXES) $(SCRIPTS); do                              \
367            if ! [ -f $(srcdir)/$$exe.man                                \
368                   -o "$$exe" = webcollage-helper ]; then                \
369              badmen="$$badmen $$exe" ;                                  \
370            fi ;                                                         \
371          done ;                                                         \
372          if [ -n "$$badmen" ]; then                                     \
373            echo "" ;                                                    \
374            echo "Warning: The following programs have no manuals:" ;    \
375            echo "" ;                                                    \
376            for m in $$badmen ; do                                       \
377              echo "    $$m" ;                                           \
378            done ;                                                       \
379          fi
380
381 check_xml:
382         @badxml="" ;                                                    \
383          for exe in $(EXES) $(SCRIPTS); do                              \
384            if ! [ -f $(srcdir)/config/$$exe.xml                         \
385                   -o "$$exe" = webcollage-helper                        \
386                   -o "$$exe" = xsublim ]; then                          \
387              badxml="$$badxml $$exe" ;                                  \
388            fi ;                                                         \
389          done ;                                                         \
390          if [ -n "$$badxml" ]; then                                     \
391            echo "" ;                                                    \
392            echo "Warning: The following programs have no configurators:" ; \
393            echo "" ;                                                    \
394            for m in $$badxml ; do                                       \
395              echo "    $$m" ;                                           \
396            done ;                                                       \
397            echo "" ;                                                    \
398          fi
399
400
401
402
403 # Rules for generating the VMS makefiles on Unix, so that it doesn't have to
404 # be done by hand...
405 #
406 VMS_AXP_COMPILE_1=$$ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE
407 VMS_AXP_COMPILE_2=)/INCL=([],[-],[-.UTILS])
408
409 compile_axp.com: Makefile.in
410         @echo generating $@ from $<...  ;                                   \
411         ( for c in $(SRCS) ; do                                             \
412            c=`echo $$c | tr a-z A-Z` ;                                      \
413            echo "$(VMS_AXP_COMPILE_1)$(VMS_AXP_COMPILE_2) $$c" ;            \
414          done ;                                                             \
415          foo="$(VMS_AXP_COMPILE_1),XLOCKMORE$(VMS_AXP_COMPILE_2)" ;         \
416          echo $${foo}/OBJ=SCREENHACK-XLOCK.OBJ SCREENHACK.C ;               \
417         ) | sort -d > $@
418
419 compile_decc.com: compile_axp.com
420         @echo generating $@ from $<...  ;                                   \
421         sed 's/axp/decc/g' < $< > $@
422
423 #### TODO: generating link_axp.com is kinda tricky...
424
425 link_decc.com: link_axp.com
426         @echo generating $@ from $<...  ;                                   \
427         sed 's/axp/decc/g' < $< > $@
428
429 $(srcdir)/../setup.com: Makefile.in
430         @echo generating $@ from $<...  ;                                   \
431         ( echo '$$! Xscreensaver - definition of various DCL symbols' ;     \
432           echo '$$ set NOON' ;                                              \
433           echo '$$ set def [.HACKS]' ;                                      \
434           echo '$$ mydisk = f$$trnlmn("SYS$$DISK")' ;                       \
435           echo '$$ mydir  = mydisk+f$$directory()' ;                        \
436           ( for c in $(EXES) ; do                                           \
437              c2="$${c}          " ;                                         \
438              c2=`echo "$${c2}" | sed 's/^\(........*\)  $$/\1/'` ;          \
439              echo '$$' "$${c2}:== $$'mydir'$${c}" ;                         \
440              done ;                                                         \
441           ) | sort -d ;                                                     \
442           echo '$$ set def [-.DRIVER]' ;                                    \
443           echo '$$ mydir  = mydisk+f$$directory()' ;                        \
444           echo "$$ xscreensaver :== $$'mydir'xscreensaver" ;                \
445           echo "$$ xscreen*command :== $$'mydir'xscreensaver-command" ;     \
446           echo '$$ set def [-]' ;                                           \
447           echo '$$ exit' ;                                                  \
448           ) > $@
449
450 distdepend:: compile_axp.com compile_decc.com
451 distdepend:: link_axp.com link_decc.com
452 distdepend:: $(srcdir)/../setup.com
453 distdepend:: check_men check_xml
454
455
456 # Rules for noticing when the objects from the utils directory are out of
457 # date with respect to their sources, and going and building them according
458 # to the rules in their own Makefile...
459 #
460 $(UTILS_BIN)/alpha.o:           $(UTILS_SRC)/alpha.c
461 $(UTILS_BIN)/colors.o:          $(UTILS_SRC)/colors.c
462 $(UTILS_BIN)/grabclient.o:      $(UTILS_SRC)/grabclient.c
463 $(UTILS_BIN)/hsv.o:             $(UTILS_SRC)/hsv.c
464 $(UTILS_BIN)/resources.o:       $(UTILS_SRC)/resources.c
465 $(UTILS_BIN)/spline.o:          $(UTILS_SRC)/spline.c
466 $(UTILS_BIN)/usleep.o:          $(UTILS_SRC)/usleep.c
467 $(UTILS_BIN)/visual.o:          $(UTILS_SRC)/visual.c
468 $(UTILS_BIN)/xmu.o:             $(UTILS_SRC)/xmu.c
469 $(UTILS_BIN)/logo.o:            $(UTILS_SRC)/logo.c
470 $(UTILS_BIN)/yarandom.o:        $(UTILS_SRC)/yarandom.c
471 $(UTILS_BIN)/erase.o:           $(UTILS_SRC)/erase.c
472 $(UTILS_BIN)/xshm.o:            $(UTILS_SRC)/xshm.c
473 $(UTILS_BIN)/xdbe.o:            $(UTILS_SRC)/xdbe.c
474
475 $(UTIL_OBJS):
476         cd $(UTILS_BIN) ; \
477         $(MAKE) $(@F) CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)"
478
479 # How we build object files in this directory.
480 .c.o:
481         $(CC) -c $(INCLUDES) $(DEFS) $(CFLAGS) $(X_CFLAGS) $<
482
483 # Some hacks use a slightly-differently-compiled variant of this file.
484 # This is how to make the the other .o file from it.
485 #
486 screenhack-xlock.o: screenhack.c
487         $(CC) -o $@ -c $(INCLUDES) $(DEFS) $(CFLAGS) $(X_CFLAGS) \
488         -DXLOCKMORE $(srcdir)/screenhack.c
489
490 # Some abbreviations to keep the lines short...
491 XPM             = xpm-pixmap.o
492 ALP             = $(UTILS_BIN)/alpha.o
493 HSV             = $(UTILS_BIN)/hsv.o
494 SPL             = $(UTILS_BIN)/spline.o
495 LOGO            = $(UTILS_BIN)/logo.o
496 GRAB            = $(GRAB_OBJS)
497 ERASE           = $(UTILS_BIN)/erase.o
498 COL             = $(COLOR_OBJS)
499 SHM             = $(XSHM_OBJS)
500 DBE             = $(XDBE_OBJS)
501 BARS            = $(UTILS_BIN)/colorbars.o $(LOGO)
502
503 CC_HACK         = $(CC) $(LDFLAGS)
504
505 xscreensaver-sgigl: xscreensaver-sgigl.c
506         $(CC) $(LDFLAGS) -o $@ $< -I$(UTILS_SRC) $(HACK_PRE) \
507                 $(XMU_LIBS) -lX11 -lXext $(X_EXTRA_LIBS) -lm
508
509
510 # The rules for those hacks which follow the `screenhack.c' API.
511 # If make wasn't such an utter abomination, these could all be combined
512 # into one rule, but we don't live in such a perfect world.  The $< rule
513 # is pretty much useless in the face of more than one dependency, as far
514 # as I can tell.
515 #
516 attraction:     attraction.o    $(HACK_OBJS) $(COL) $(SPL)
517         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SPL) $(HACK_LIBS)
518
519 blitspin:       blitspin.o      $(HACK_OBJS) $(GRAB) $(XPM)
520         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(XPM) $(XPM_LIBS)
521
522 bubbles:        bubbles.o       $(HACK_OBJS) bubbles-default.o $(XPM)
523         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) bubbles-default.o $(XPM) $(XPM_LIBS)
524
525 decayscreen:    decayscreen.o   $(HACK_OBJS) $(GRAB)
526         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(HACK_LIBS)
527
528 deco:           deco.o          $(HACK_OBJS) $(COL)
529         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
530
531 flame:          flame.o         $(HACK_OBJS) $(COL)
532         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
533
534 greynetic:      greynetic.o     $(HACK_OBJS)
535         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
536
537 halo:           halo.o          $(HACK_OBJS) $(COL)
538         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
539
540 helix:          helix.o         $(HACK_OBJS) $(HSV) $(ERASE)
541         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HSV) $(ERASE) $(HACK_LIBS)
542
543 hypercube:      hypercube.o     $(HACK_OBJS)
544         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
545
546 imsmap:         imsmap.o        $(HACK_OBJS) $(COL)
547         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
548
549 kaleidescope:   kaleidescope.o  $(HACK_OBJS)
550         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
551
552 lmorph:         lmorph.o        $(HACK_OBJS)
553         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
554
555 maze:           maze.o          $(HACK_OBJS) $(ERASE) $(LOGO)
556         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(ERASE) $(LOGO) $(HACK_LIBS)
557
558 moire:          moire.o         $(HACK_OBJS) $(COL) $(SHM)
559         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SHM) $(HACK_LIBS)
560
561 moire2:         moire2.o        $(HACK_OBJS) $(COL) $(DBE)
562         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(DBE) $(HACK_LIBS)
563
564 noseguy:        noseguy.o       $(HACK_OBJS) $(XPM)
565         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(XPM) $(XPM_LIBS)
566
567 pedal:          pedal.o         $(HACK_OBJS) $(HSV)
568         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HSV) $(HACK_LIBS)
569
570 pyro:           pyro.o          $(HACK_OBJS) $(HSV)
571         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HSV) $(HACK_LIBS)
572
573 qix:            qix.o           $(HACK_OBJS) $(HSV) $(ALP)
574         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HSV) $(ALP) $(HACK_LIBS)
575
576 rocks:          rocks.o         $(HACK_OBJS) $(COL)
577         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
578
579 rorschach:      rorschach.o     $(HACK_OBJS) $(HSV) $(ERASE)
580         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HSV) $(ERASE) $(HACK_LIBS)
581
582 slidescreen:    slidescreen.o   $(HACK_OBJS) $(GRAB)
583         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(HACK_LIBS)
584
585 goop:           goop.o          $(HACK_OBJS) $(HSV) $(ALP) $(SPL)
586         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HSV) $(ALP) $(SPL) $(HACK_LIBS)
587
588 starfish:       starfish.o      $(HACK_OBJS) $(COL) $(SPL)
589         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SPL) $(HACK_LIBS)
590
591 munch:          munch.o         $(HACK_OBJS) $(COL) $(SPL)
592         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SPL) $(HACK_LIBS)
593
594 rd-bomb:        rd-bomb.o       $(HACK_OBJS) $(COL) $(SHM)
595         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SHM) $(HACK_LIBS)
596
597 coral:          coral.o         $(HACK_OBJS) $(COL) $(ERASE)
598         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(ERASE) $(HACK_LIBS)
599
600 xjack:          xjack.o         $(HACK_OBJS)
601         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
602
603 xlyap:          xlyap.o         $(HACK_OBJS) $(COL)
604         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
605
606 jigsaw:         jigsaw.o        $(HACK_OBJS) $(GRAB)
607         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(HACK_LIBS)
608
609 cynosure:       cynosure.o      $(HACK_OBJS) $(COL)
610         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
611
612 epicycle:       epicycle.o      $(HACK_OBJS) $(COL) $(ERASE)
613         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(ERASE) $(HACK_LIBS)
614
615 interference:  interference.o   $(HACK_OBJS) $(COL) $(SHM) $(DBE)
616         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SHM) $(DBE) $(HACK_LIBS)
617
618 truchet:         truchet.o      $(HACK_OBJS) $(COL)
619         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
620
621 bsod:           bsod.o          $(HACK_OBJS) $(GRAB) $(XPM)
622         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(XPM) $(XPM_LIBS)
623
624 distort:        distort.o       $(HACK_OBJS) $(GRAB) $(SHM)
625         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(SHM) $(HACK_LIBS)
626
627 kumppa:         kumppa.o        $(HACK_OBJS) $(DBE)
628         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(DBE) $(HACK_LIBS)
629
630 sonar:          sonar.o         $(HACK_OBJS) $(COL)
631         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
632
633 t3d:            t3d.o           $(HACK_OBJS) $(COL)
634         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
635
636 penetrate:      penetrate.o     $(HACK_OBJS) $(COL)
637         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
638
639 deluxe:         deluxe.o        $(HACK_OBJS) $(ALP) $(COL) $(DBE)
640         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(ALP) $(COL) $(DBE) $(HACK_LIBS)
641
642 compass:        compass.o       $(HACK_OBJS) $(DBE)
643         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(DBE) $(HACK_LIBS)
644
645 squiral:        squiral.o       $(HACK_OBJS) $(COL)
646         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
647
648 xflame:         xflame.o        $(HACK_OBJS) $(SHM) $(XPM)
649         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(SHM) $(XPM) $(XPM_LIBS)
650
651 wander:         wander.o        $(HACK_OBJS) $(COL) $(ERASE)
652         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(ERASE) $(HACK_LIBS)
653
654 spotlight:      spotlight.o     $(HACK_OBJS) $(GRAB)
655         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(HACK_LIBS)
656
657 critical:       critical.o      $(HACK_OBJS) $(COL) $(ERASE)
658         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(ERASE) $(HACK_LIBS)
659
660 phosphor:       phosphor.o      $(HACK_OBJS) $(COL)
661         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
662
663 xmatrix:        xmatrix.o       $(HACK_OBJS) $(XPM)
664         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(XPM) $(XPM_LIBS)
665
666 petri:          petri.o         $(HACK_OBJS) $(COL) $(SPL)
667         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SPL) $(HACK_LIBS)
668
669 shadebobs:      shadebobs.o     $(HACK_OBJS) $(COL) $(SPL)
670         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SPL) $(HACK_LIBS)
671
672 ccurve:         ccurve.o        $(HACK_OBJS) $(COL) $(SPL)
673         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(ERASE) $(HACK_LIBS)
674
675 blaster:        blaster.o       $(HACK_OBJS)
676         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
677
678 bumps:          bumps.o         $(HACK_OBJS) $(GRAB) $(SHM)
679         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(SHM) $(HACK_LIBS)
680
681 ripples:        ripples.o       $(HACK_OBJS) $(SHM) $(COL) $(GRAB)
682         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(SHM) $(COL) $(GRAB) $(HACK_LIBS)
683
684 xteevee:        xteevee.o       $(BARS) $(HACK_OBJS) $(GRAB)
685         $(CC_HACK) -o $@ $@.o   $(BARS) $(HACK_OBJS) $(GRAB) $(HACK_LIBS)
686
687 xspirograph:    xspirograph.o   $(HACK_OBJS) $(COL) $(ERASE)
688         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(ERASE) $(HACK_LIBS)
689
690 nerverot:       nerverot.o      $(HACK_OBJS) $(COL)
691         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
692
693 xrayswarm:      xrayswarm.o     $(HACK_OBJS) 
694         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
695
696 hyperball:      hyperball.o     $(HACK_OBJS)
697         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
698
699 zoom:   zoom.o  $(HACK_OBJS) $(GRAB)
700         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(HACK_LIBS)
701
702 whirlwindwarp:  whirlwindwarp.o $(HACK_OBJS) $(COL)
703         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
704
705 rotzoomer:      rotzoomer.o     $(HACK_OBJS) $(GRAB) $(SHM)
706         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(SHM) $(HACK_LIBS)
707
708 whirlygig:      whirlygig.o     $(HACK_OBJS) $(COL)
709         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
710
711 speedmine:      speedmine.o     $(HACK_OBJS) $(COL)
712         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
713
714 vermiculate:    vermiculate.o   $(HACK_OBJS) $(COL)
715         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
716
717 twang:          twang.o         $(HACK_OBJS) $(GRAB) $(SHM)
718         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(SHM) $(HACK_LIBS)
719
720 fluidballs:     fluidballs.o    $(HACK_OBJS)
721         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
722
723 anemone:        anemone.o       $(HACK_OBJS) $(DBE)
724         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(DBE) $(HACK_LIBS)
725
726 halftone:       halftone.o      $(HACK_OBJS) $(COL)
727         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
728
729
730 # The rules for those hacks which follow the `xlockmore' API.
731 #
732
733 bouboule:       bouboule.o      $(XLOCK_OBJS)
734         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
735
736 braid:          braid.o         $(XLOCK_OBJS) $(ERASE)
737         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(ERASE) $(HACK_LIBS)
738
739 drift:          drift.o         $(XLOCK_OBJS) $(ERASE)
740         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(ERASE) $(HACK_LIBS)
741
742 flag:           flag.o          $(XLOCK_OBJS) $(XPM)
743         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(XPM) $(XPM_LIBS)
744
745 forest:         forest.o        $(XLOCK_OBJS) $(ERASE)
746         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(ERASE) $(HACK_LIBS)
747
748 vines:          vines.o         $(XLOCK_OBJS) $(ERASE)
749         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(ERASE) $(HACK_LIBS)
750
751 galaxy:         galaxy.o        $(XLOCK_OBJS)
752         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
753
754 grav:           grav.o          $(XLOCK_OBJS)
755         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
756
757 hopalong:       hopalong.o      $(XLOCK_OBJS) $(ERASE)
758         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(ERASE) $(HACK_LIBS)
759
760 ifs:            ifs.o           $(XLOCK_OBJS)
761         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
762
763 julia:          julia.o         $(XLOCK_OBJS)
764         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
765
766 laser:          laser.o         $(XLOCK_OBJS)
767         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
768
769 lightning:      lightning.o     $(XLOCK_OBJS)
770         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
771
772 lisa:           lisa.o          $(XLOCK_OBJS)
773         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
774
775 lissie:         lissie.o        $(XLOCK_OBJS)
776         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
777
778 penrose:        penrose.o       $(XLOCK_OBJS)
779         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
780
781 sierpinski:     sierpinski.o    $(XLOCK_OBJS)
782         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
783
784 slip:           slip.o          $(XLOCK_OBJS) $(GRAB)
785         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(GRAB) $(HACK_LIBS)
786
787 sphere:         sphere.o        $(XLOCK_OBJS)
788         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
789
790 spiral:         spiral.o        $(XLOCK_OBJS)
791         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
792
793 strange:        strange.o       $(XLOCK_OBJS)
794         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
795
796 swirl:          swirl.o         $(XLOCK_OBJS) $(SHM)
797         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(SHM) $(HACK_LIBS)
798
799 fadeplot:       fadeplot.o      $(XLOCK_OBJS)
800         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
801
802 mountain:       mountain.o      $(XLOCK_OBJS)
803         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
804
805 triangle:       triangle.o      $(XLOCK_OBJS)
806         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
807
808 worm:           worm.o          $(XLOCK_OBJS)
809         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
810
811 rotor:          rotor.o         $(XLOCK_OBJS)
812         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
813
814 ant:            ant.o           $(XLOCK_OBJS) $(ERASE)
815         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(ERASE) $(HACK_LIBS)
816
817 demon:          demon.o         $(XLOCK_OBJS)
818         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
819
820 loop:           loop.o          $(XLOCK_OBJS)
821         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
822
823 flow:           flow.o          $(XLOCK_OBJS)
824         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
825
826 discrete:       discrete.o      $(XLOCK_OBJS) $(ERASE)
827         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(ERASE) $(HACK_LIBS)
828
829 crystal:        crystal.o       $(XLOCK_OBJS)
830         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
831
832 apollonian:     apollonian.o    $(XLOCK_OBJS) $(ERASE)
833         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(ERASE) $(HACK_LIBS)
834
835 euler2d:        euler2d.o       $(XLOCK_OBJS)
836         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
837
838 juggle:         juggle.o        $(XLOCK_OBJS)
839         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
840
841 polyominoes:    polyominoes.o   $(XLOCK_OBJS) $(ERASE)
842         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(ERASE) $(HACK_LIBS)
843
844 thornbird:      thornbird.o     $(XLOCK_OBJS)
845         $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
846
847
848 # These are not like the others.
849 #
850 xsublim:        xsublim.o       $(HACK_OBJS_1)
851         $(CC_HACK) -o $@ $@.o   $(HACK_OBJS_1) $(HACK_LIBS)
852
853 webcollage-helper: webcollage-helper.o
854         $(CC_HACK) -o $@ $@.o   $(XPM_LIBS) $(JPEG_LIBS)
855
856
857 ##############################################################################
858 #
859 # DO NOT DELETE: updated by make distdepend
860
861 anemone.o: ../config.h
862 anemone.o: $(srcdir)/screenhack.h
863 ant.o: $(srcdir)/automata.h
864 ant.o: ../config.h
865 ant.o: $(srcdir)/screenhack.h
866 ant.o: $(srcdir)/xlockmoreI.h
867 ant.o: $(srcdir)/xlockmore.h
868 apollonian.o: ../config.h
869 apollonian.o: $(srcdir)/screenhack.h
870 apollonian.o: $(srcdir)/xlockmoreI.h
871 apollonian.o: $(srcdir)/xlockmore.h
872 attraction.o: ../config.h
873 attraction.o: $(srcdir)/screenhack.h
874 blaster.o: ../config.h
875 blaster.o: $(srcdir)/screenhack.h
876 blitspin.o: ../config.h
877 blitspin.o: $(srcdir)/images/som.xbm
878 blitspin.o: $(srcdir)/screenhack.h
879 blitspin.o: $(srcdir)/xpm-pixmap.h
880 bouboule.o: ../config.h
881 bouboule.o: $(srcdir)/screenhack.h
882 bouboule.o: $(srcdir)/xlockmoreI.h
883 bouboule.o: $(srcdir)/xlockmore.h
884 braid.o: ../config.h
885 braid.o: $(srcdir)/screenhack.h
886 braid.o: $(srcdir)/xlockmoreI.h
887 braid.o: $(srcdir)/xlockmore.h
888 bsod.o: ../config.h
889 bsod.o: $(srcdir)/images/amiga.xpm
890 bsod.o: $(srcdir)/images/atari.xbm
891 bsod.o: $(srcdir)/images/hmac.xpm
892 bsod.o: $(srcdir)/images/macbomb.xbm
893 bsod.o: $(srcdir)/images/mac.xbm
894 bsod.o: $(srcdir)/screenhack.h
895 bsod.o: $(srcdir)/xpm-pixmap.h
896 bubbles-default.o: $(srcdir)/bubbles.h
897 bubbles-default.o: ../config.h
898 bubbles-default.o: $(srcdir)/images/bubbles/blood10.xpm
899 bubbles-default.o: $(srcdir)/images/bubbles/blood11.xpm
900 bubbles-default.o: $(srcdir)/images/bubbles/blood1.xpm
901 bubbles-default.o: $(srcdir)/images/bubbles/blood2.xpm
902 bubbles-default.o: $(srcdir)/images/bubbles/blood3.xpm
903 bubbles-default.o: $(srcdir)/images/bubbles/blood4.xpm
904 bubbles-default.o: $(srcdir)/images/bubbles/blood5.xpm
905 bubbles-default.o: $(srcdir)/images/bubbles/blood6.xpm
906 bubbles-default.o: $(srcdir)/images/bubbles/blood7.xpm
907 bubbles-default.o: $(srcdir)/images/bubbles/blood8.xpm
908 bubbles-default.o: $(srcdir)/images/bubbles/blood9.xpm
909 bubbles-default.o: $(srcdir)/images/bubbles/blue10.xpm
910 bubbles-default.o: $(srcdir)/images/bubbles/blue11.xpm
911 bubbles-default.o: $(srcdir)/images/bubbles/blue1.xpm
912 bubbles-default.o: $(srcdir)/images/bubbles/blue2.xpm
913 bubbles-default.o: $(srcdir)/images/bubbles/blue3.xpm
914 bubbles-default.o: $(srcdir)/images/bubbles/blue4.xpm
915 bubbles-default.o: $(srcdir)/images/bubbles/blue5.xpm
916 bubbles-default.o: $(srcdir)/images/bubbles/blue6.xpm
917 bubbles-default.o: $(srcdir)/images/bubbles/blue7.xpm
918 bubbles-default.o: $(srcdir)/images/bubbles/blue8.xpm
919 bubbles-default.o: $(srcdir)/images/bubbles/blue9.xpm
920 bubbles-default.o: $(srcdir)/images/bubbles/glass10.xpm
921 bubbles-default.o: $(srcdir)/images/bubbles/glass11.xpm
922 bubbles-default.o: $(srcdir)/images/bubbles/glass1.xpm
923 bubbles-default.o: $(srcdir)/images/bubbles/glass2.xpm
924 bubbles-default.o: $(srcdir)/images/bubbles/glass3.xpm
925 bubbles-default.o: $(srcdir)/images/bubbles/glass4.xpm
926 bubbles-default.o: $(srcdir)/images/bubbles/glass5.xpm
927 bubbles-default.o: $(srcdir)/images/bubbles/glass6.xpm
928 bubbles-default.o: $(srcdir)/images/bubbles/glass7.xpm
929 bubbles-default.o: $(srcdir)/images/bubbles/glass8.xpm
930 bubbles-default.o: $(srcdir)/images/bubbles/glass9.xpm
931 bubbles-default.o: $(srcdir)/images/bubbles/jade10.xpm
932 bubbles-default.o: $(srcdir)/images/bubbles/jade11.xpm
933 bubbles-default.o: $(srcdir)/images/bubbles/jade1.xpm
934 bubbles-default.o: $(srcdir)/images/bubbles/jade2.xpm
935 bubbles-default.o: $(srcdir)/images/bubbles/jade3.xpm
936 bubbles-default.o: $(srcdir)/images/bubbles/jade4.xpm
937 bubbles-default.o: $(srcdir)/images/bubbles/jade5.xpm
938 bubbles-default.o: $(srcdir)/images/bubbles/jade6.xpm
939 bubbles-default.o: $(srcdir)/images/bubbles/jade7.xpm
940 bubbles-default.o: $(srcdir)/images/bubbles/jade8.xpm
941 bubbles-default.o: $(srcdir)/images/bubbles/jade9.xpm
942 bubbles.o: $(srcdir)/bubbles.h
943 bubbles.o: ../config.h
944 bubbles.o: $(srcdir)/screenhack.h
945 bubbles.o: $(srcdir)/xpm-pixmap.h
946 bumps.o: $(srcdir)/bumps.h
947 bumps.o: ../config.h
948 bumps.o: $(srcdir)/screenhack.h
949 ccurve.o: ../config.h
950 ccurve.o: $(srcdir)/screenhack.h
951 compass.o: ../config.h
952 compass.o: $(srcdir)/screenhack.h
953 coral.o: ../config.h
954 coral.o: $(srcdir)/screenhack.h
955 critical.o: ../config.h
956 critical.o: $(srcdir)/screenhack.h
957 crystal.o: ../config.h
958 crystal.o: $(srcdir)/screenhack.h
959 crystal.o: $(srcdir)/xlockmoreI.h
960 crystal.o: $(srcdir)/xlockmore.h
961 cynosure.o: ../config.h
962 cynosure.o: $(srcdir)/screenhack.h
963 decayscreen.o: ../config.h
964 decayscreen.o: $(srcdir)/screenhack.h
965 deco.o: ../config.h
966 deco.o: $(srcdir)/screenhack.h
967 deluxe.o: ../config.h
968 deluxe.o: $(srcdir)/screenhack.h
969 demon.o: $(srcdir)/automata.h
970 demon.o: ../config.h
971 demon.o: $(srcdir)/screenhack.h
972 demon.o: $(srcdir)/xlockmoreI.h
973 demon.o: $(srcdir)/xlockmore.h
974 discrete.o: ../config.h
975 discrete.o: $(srcdir)/screenhack.h
976 discrete.o: $(srcdir)/xlockmoreI.h
977 discrete.o: $(srcdir)/xlockmore.h
978 distort.o: ../config.h
979 distort.o: $(srcdir)/screenhack.h
980 drift.o: ../config.h
981 drift.o: $(srcdir)/screenhack.h
982 drift.o: $(srcdir)/xlockmoreI.h
983 drift.o: $(srcdir)/xlockmore.h
984 epicycle.o: ../config.h
985 epicycle.o: $(srcdir)/screenhack.h
986 euler2d.o: ../config.h
987 euler2d.o: $(srcdir)/screenhack.h
988 euler2d.o: $(srcdir)/xlockmoreI.h
989 euler2d.o: $(srcdir)/xlockmore.h
990 fadeplot.o: ../config.h
991 fadeplot.o: $(srcdir)/screenhack.h
992 fadeplot.o: $(srcdir)/xlockmoreI.h
993 fadeplot.o: $(srcdir)/xlockmore.h
994 flag.o: ../config.h
995 flag.o: $(srcdir)/images/bob.xbm
996 flag.o: $(srcdir)/screenhack.h
997 flag.o: $(srcdir)/xlockmoreI.h
998 flag.o: $(srcdir)/xlockmore.h
999 flag.o: $(srcdir)/xpm-pixmap.h
1000 flame.o: ../config.h
1001 flame.o: $(srcdir)/screenhack.h
1002 flow.o: ../config.h
1003 flow.o: $(srcdir)/screenhack.h
1004 flow.o: $(srcdir)/xlockmoreI.h
1005 flow.o: $(srcdir)/xlockmore.h
1006 fluidballs.o: ../config.h
1007 fluidballs.o: $(srcdir)/screenhack.h
1008 forest.o: ../config.h
1009 forest.o: $(srcdir)/screenhack.h
1010 forest.o: $(srcdir)/xlockmoreI.h
1011 forest.o: $(srcdir)/xlockmore.h
1012 galaxy.o: ../config.h
1013 galaxy.o: $(srcdir)/screenhack.h
1014 galaxy.o: $(srcdir)/xlockmoreI.h
1015 galaxy.o: $(srcdir)/xlockmore.h
1016 goop.o: ../config.h
1017 goop.o: $(srcdir)/screenhack.h
1018 grav.o: ../config.h
1019 grav.o: $(srcdir)/screenhack.h
1020 grav.o: $(srcdir)/xlockmoreI.h
1021 grav.o: $(srcdir)/xlockmore.h
1022 greynetic.o: ../config.h
1023 greynetic.o: $(srcdir)/screenhack.h
1024 halftone.o: ../config.h
1025 halftone.o: $(srcdir)/screenhack.h
1026 halo.o: ../config.h
1027 halo.o: $(srcdir)/screenhack.h
1028 helix.o: ../config.h
1029 helix.o: $(srcdir)/screenhack.h
1030 hopalong.o: ../config.h
1031 hopalong.o: $(srcdir)/screenhack.h
1032 hopalong.o: $(srcdir)/xlockmoreI.h
1033 hopalong.o: $(srcdir)/xlockmore.h
1034 hyperball.o: ../config.h
1035 hyperball.o: $(srcdir)/screenhack.h
1036 hypercube.o: ../config.h
1037 hypercube.o: $(srcdir)/screenhack.h
1038 ifs.o: ../config.h
1039 ifs.o: $(srcdir)/screenhack.h
1040 ifs.o: $(srcdir)/xlockmoreI.h
1041 ifs.o: $(srcdir)/xlockmore.h
1042 imsmap.o: ../config.h
1043 imsmap.o: $(srcdir)/screenhack.h
1044 interference.o: ../config.h
1045 interference.o: $(srcdir)/screenhack.h
1046 jigsaw.o: ../config.h
1047 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_e_f.xbm
1048 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_e_h.xbm
1049 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_f.xbm
1050 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_h.xbm
1051 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_ne_f.xbm
1052 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_ne_h.xbm
1053 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_n_f.xbm
1054 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_n_h.xbm
1055 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_nw_f.xbm
1056 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_nw_h.xbm
1057 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_se_f.xbm
1058 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_se_h.xbm
1059 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_s_f.xbm
1060 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_s_h.xbm
1061 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_sw_f.xbm
1062 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_sw_h.xbm
1063 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_w_f.xbm
1064 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_a_w_h.xbm
1065 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_e_f.xbm
1066 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_e_h.xbm
1067 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_f.xbm
1068 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_h.xbm
1069 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_ne_f.xbm
1070 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_ne_h.xbm
1071 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_n_f.xbm
1072 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_n_h.xbm
1073 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_nw_f.xbm
1074 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_nw_h.xbm
1075 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_se_f.xbm
1076 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_se_h.xbm
1077 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_s_f.xbm
1078 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_s_h.xbm
1079 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_sw_f.xbm
1080 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_sw_h.xbm
1081 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_w_f.xbm
1082 jigsaw.o: $(srcdir)/images/jigsaw/jigsaw_b_w_h.xbm
1083 jigsaw.o: $(srcdir)/screenhack.h
1084 juggle.o: ../config.h
1085 juggle.o: $(srcdir)/screenhack.h
1086 juggle.o: $(srcdir)/xlockmoreI.h
1087 juggle.o: $(srcdir)/xlockmore.h
1088 julia.o: ../config.h
1089 julia.o: $(srcdir)/screenhack.h
1090 julia.o: $(srcdir)/xlockmoreI.h
1091 julia.o: $(srcdir)/xlockmore.h
1092 kaleidescope.o: ../config.h
1093 kaleidescope.o: $(srcdir)/screenhack.h
1094 kumppa.o: ../config.h
1095 kumppa.o: $(srcdir)/screenhack.h
1096 laser.o: ../config.h
1097 laser.o: $(srcdir)/screenhack.h
1098 laser.o: $(srcdir)/xlockmoreI.h
1099 laser.o: $(srcdir)/xlockmore.h
1100 lightning.o: ../config.h
1101 lightning.o: $(srcdir)/screenhack.h
1102 lightning.o: $(srcdir)/xlockmoreI.h
1103 lightning.o: $(srcdir)/xlockmore.h
1104 lisa.o: ../config.h
1105 lisa.o: $(srcdir)/screenhack.h
1106 lisa.o: $(srcdir)/xlockmoreI.h
1107 lisa.o: $(srcdir)/xlockmore.h
1108 lissie.o: ../config.h
1109 lissie.o: $(srcdir)/screenhack.h
1110 lissie.o: $(srcdir)/xlockmoreI.h
1111 lissie.o: $(srcdir)/xlockmore.h
1112 lmorph.o: ../config.h
1113 lmorph.o: $(srcdir)/screenhack.h
1114 loop.o: $(srcdir)/automata.h
1115 loop.o: ../config.h
1116 loop.o: $(srcdir)/screenhack.h
1117 loop.o: $(srcdir)/xlockmoreI.h
1118 loop.o: $(srcdir)/xlockmore.h
1119 maze.o: ../config.h
1120 maze.o: $(srcdir)/screenhack.h
1121 moire2.o: ../config.h
1122 moire2.o: $(srcdir)/screenhack.h
1123 moire.o: ../config.h
1124 moire.o: $(srcdir)/screenhack.h
1125 mountain.o: ../config.h
1126 mountain.o: $(srcdir)/screenhack.h
1127 mountain.o: $(srcdir)/xlockmoreI.h
1128 mountain.o: $(srcdir)/xlockmore.h
1129 munch.o: ../config.h
1130 munch.o: $(srcdir)/screenhack.h
1131 nerverot.o: ../config.h
1132 nerverot.o: $(srcdir)/screenhack.h
1133 noseguy.o: ../config.h
1134 noseguy.o: $(srcdir)/images/noseguy/nose-f1.xpm
1135 noseguy.o: $(srcdir)/images/noseguy/nose-f2.xpm
1136 noseguy.o: $(srcdir)/images/noseguy/nose-f3.xpm
1137 noseguy.o: $(srcdir)/images/noseguy/nose-f4.xpm
1138 noseguy.o: $(srcdir)/images/noseguy/nose-l1.xpm
1139 noseguy.o: $(srcdir)/images/noseguy/nose-l2.xpm
1140 noseguy.o: $(srcdir)/images/noseguy/nose-r1.xpm
1141 noseguy.o: $(srcdir)/images/noseguy/nose-r2.xpm
1142 noseguy.o: $(srcdir)/screenhack.h
1143 noseguy.o: $(srcdir)/xpm-pixmap.h
1144 pedal.o: ../config.h
1145 pedal.o: $(srcdir)/screenhack.h
1146 penetrate.o: ../config.h
1147 penetrate.o: $(srcdir)/screenhack.h
1148 penrose.o: ../config.h
1149 penrose.o: $(srcdir)/screenhack.h
1150 penrose.o: $(srcdir)/xlockmoreI.h
1151 penrose.o: $(srcdir)/xlockmore.h
1152 petri.o: ../config.h
1153 petri.o: $(srcdir)/screenhack.h
1154 phosphor.o: ../config.h
1155 phosphor.o: $(srcdir)/screenhack.h
1156 polyominoes.o: ../config.h
1157 polyominoes.o: $(srcdir)/screenhack.h
1158 polyominoes.o: $(srcdir)/xlockmoreI.h
1159 polyominoes.o: $(srcdir)/xlockmore.h
1160 pyro.o: ../config.h
1161 pyro.o: $(srcdir)/screenhack.h
1162 qix.o: ../config.h
1163 qix.o: $(srcdir)/screenhack.h
1164 rd-bomb.o: ../config.h
1165 rd-bomb.o: $(srcdir)/screenhack.h
1166 ripples.o: ../config.h
1167 ripples.o: $(srcdir)/screenhack.h
1168 rocks.o: ../config.h
1169 rocks.o: $(srcdir)/screenhack.h
1170 rorschach.o: ../config.h
1171 rorschach.o: $(srcdir)/screenhack.h
1172 rotor.o: ../config.h
1173 rotor.o: $(srcdir)/screenhack.h
1174 rotor.o: $(srcdir)/xlockmoreI.h
1175 rotor.o: $(srcdir)/xlockmore.h
1176 rotzoomer.o: ../config.h
1177 rotzoomer.o: $(srcdir)/screenhack.h
1178 screenhack.o: ../config.h
1179 screenhack.o: $(srcdir)/screenhack.h
1180 shadebobs.o: ../config.h
1181 shadebobs.o: $(srcdir)/screenhack.h
1182 sierpinski.o: ../config.h
1183 sierpinski.o: $(srcdir)/screenhack.h
1184 sierpinski.o: $(srcdir)/xlockmoreI.h
1185 sierpinski.o: $(srcdir)/xlockmore.h
1186 slidescreen.o: ../config.h
1187 slidescreen.o: $(srcdir)/screenhack.h
1188 slip.o: ../config.h
1189 slip.o: $(srcdir)/screenhack.h
1190 slip.o: $(srcdir)/xlockmoreI.h
1191 slip.o: $(srcdir)/xlockmore.h
1192 sonar.o: ../config.h
1193 sonar.o: $(srcdir)/screenhack.h
1194 speedmine.o: ../config.h
1195 speedmine.o: $(srcdir)/screenhack.h
1196 sphere.o: ../config.h
1197 sphere.o: $(srcdir)/screenhack.h
1198 sphere.o: $(srcdir)/xlockmoreI.h
1199 sphere.o: $(srcdir)/xlockmore.h
1200 spiral.o: ../config.h
1201 spiral.o: $(srcdir)/screenhack.h
1202 spiral.o: $(srcdir)/xlockmoreI.h
1203 spiral.o: $(srcdir)/xlockmore.h
1204 spotlight.o: ../config.h
1205 spotlight.o: $(srcdir)/screenhack.h
1206 squiral.o: ../config.h
1207 squiral.o: $(srcdir)/screenhack.h
1208 starfish.o: ../config.h
1209 starfish.o: $(srcdir)/screenhack.h
1210 strange.o: ../config.h
1211 strange.o: $(srcdir)/screenhack.h
1212 strange.o: $(srcdir)/xlockmoreI.h
1213 strange.o: $(srcdir)/xlockmore.h
1214 swirl.o: ../config.h
1215 swirl.o: $(srcdir)/screenhack.h
1216 swirl.o: $(srcdir)/xlockmoreI.h
1217 swirl.o: $(srcdir)/xlockmore.h
1218 t3d.o: ../config.h
1219 t3d.o: $(srcdir)/screenhack.h
1220 thornbird.o: ../config.h
1221 thornbird.o: $(srcdir)/screenhack.h
1222 thornbird.o: $(srcdir)/xlockmoreI.h
1223 thornbird.o: $(srcdir)/xlockmore.h
1224 triangle.o: ../config.h
1225 triangle.o: $(srcdir)/screenhack.h
1226 triangle.o: $(srcdir)/xlockmoreI.h
1227 triangle.o: $(srcdir)/xlockmore.h
1228 truchet.o: ../config.h
1229 truchet.o: $(srcdir)/screenhack.h
1230 twang.o: ../config.h
1231 twang.o: $(srcdir)/screenhack.h
1232 vermiculate.o: ../config.h
1233 vermiculate.o: $(srcdir)/screenhack.h
1234 vines.o: ../config.h
1235 vines.o: $(srcdir)/screenhack.h
1236 vines.o: $(srcdir)/xlockmoreI.h
1237 vines.o: $(srcdir)/xlockmore.h
1238 wander.o: ../config.h
1239 wander.o: $(srcdir)/screenhack.h
1240 webcollage-helper.o: ../config.h
1241 whirlwindwarp.o: ../config.h
1242 whirlwindwarp.o: $(srcdir)/screenhack.h
1243 whirlygig.o: ../config.h
1244 whirlygig.o: $(srcdir)/screenhack.h
1245 worm.o: ../config.h
1246 worm.o: $(srcdir)/screenhack.h
1247 worm.o: $(srcdir)/xlockmoreI.h
1248 worm.o: $(srcdir)/xlockmore.h
1249 xflame.o: ../config.h
1250 xflame.o: $(srcdir)/images/bob.xbm
1251 xflame.o: $(srcdir)/screenhack.h
1252 xflame.o: $(srcdir)/xpm-pixmap.h
1253 xjack.o: ../config.h
1254 xjack.o: $(srcdir)/screenhack.h
1255 xlockmore.o: ../config.h
1256 xlockmore.o: $(srcdir)/screenhack.h
1257 xlockmore.o: $(srcdir)/xlockmoreI.h
1258 xlyap.o: ../config.h
1259 xlyap.o: $(srcdir)/screenhack.h
1260 xmatrix.o: ../config.h
1261 xmatrix.o: $(srcdir)/images/matrix0b.xbm
1262 xmatrix.o: $(srcdir)/images/matrix0b.xpm
1263 xmatrix.o: $(srcdir)/images/matrix0.xbm
1264 xmatrix.o: $(srcdir)/images/matrix0.xpm
1265 xmatrix.o: $(srcdir)/images/matrix1b.xbm
1266 xmatrix.o: $(srcdir)/images/matrix1b.xpm
1267 xmatrix.o: $(srcdir)/images/matrix1.xbm
1268 xmatrix.o: $(srcdir)/images/matrix1.xpm
1269 xmatrix.o: $(srcdir)/images/matrix2b.xbm
1270 xmatrix.o: $(srcdir)/images/matrix2b.xpm
1271 xmatrix.o: $(srcdir)/images/matrix2.xbm
1272 xmatrix.o: $(srcdir)/images/matrix2.xpm
1273 xmatrix.o: $(srcdir)/screenhack.h
1274 xmatrix.o: $(srcdir)/xpm-pixmap.h
1275 xpm-pixmap.o: ../config.h
1276 xrayswarm.o: ../config.h
1277 xrayswarm.o: $(srcdir)/screenhack.h
1278 xspirograph.o: ../config.h
1279 xspirograph.o: $(srcdir)/screenhack.h
1280 xteevee.o: ../config.h
1281 xteevee.o: $(srcdir)/screenhack.h
1282 zoom.o: ../config.h
1283 zoom.o: $(srcdir)/screenhack.h
1284