http://ftp.x.org/contrib/applications/xscreensaver-3.10.tar.gz
[xscreensaver] / hacks / Makefile.in
index 5f299ce5753d0e4dbedd18d035a06269ceb3004b..fb393afa5addd44f3cd42dc18975a962b287f1d4 100644 (file)
@@ -30,6 +30,7 @@ SHELL         = /bin/sh
 INSTALL                = @INSTALL@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_DATA   = @INSTALL_DATA@
+INSTALL_DIRS   = @INSTALL_DIRS@
 HACKDIR                = @HACKDIR@
 
 X_CFLAGS       = @X_CFLAGS@
@@ -37,8 +38,10 @@ X_LIBS               = @X_LIBS@
 X_PRE_LIBS     = @X_PRE_LIBS@
 X_EXTRA_LIBS   = @X_EXTRA_LIBS@
 
-HACK_PRE       = $(LIBS) $(X_LIBS) $(X_PRE_LIBS)
-HACK_POST      = -lXt -lX11 -lXext $(X_EXTRA_LIBS) -lm
+# Note: see comment in ../driver/Makefile.in for explanation of X_LIBS, etc.
+#
+HACK_PRE       = $(LIBS) $(X_LIBS)
+HACK_POST      = $(X_PRE_LIBS) -lXt -lX11 -lXext $(X_EXTRA_LIBS) -lm
 HACK_LIBS      = $(HACK_PRE)            @HACK_LIBS@ $(HACK_POST)
 XPM_LIBS       = $(HACK_PRE) @XPM_LIBS@ @HACK_LIBS@ $(HACK_POST)
 XLOCK_LIBS     = $(HACK_LIBS)
@@ -55,13 +58,15 @@ UTIL_SRCS   = $(UTILS_SRC)/alpha.c $(UTILS_SRC)/colors.c \
                  $(UTILS_SRC)/resources.c $(UTILS_SRC)/spline.c \
                  $(UTILS_SRC)/usleep.c $(UTILS_SRC)/visual.c \
                  $(UTILS_SRC)/xroger.c $(UTILS_SRC)/yarandom.c \
-                 $(UTILS_SRC)/erase.c $(UTILS_SRC)/sgivideo.c
+                 $(UTILS_SRC)/erase.c $(UTILS_SRC)/sgivideo.c \
+                 $(UTILS_SRC)/xshm.c $(UTILS_SRC)/xdbe.c
 UTIL_OBJS      = $(UTILS_BIN)/alpha.o $(UTILS_BIN)/colors.o \
                  $(UTILS_BIN)/grabscreen.o $(UTILS_BIN)/hsv.o \
                  $(UTILS_BIN)/resources.o $(UTILS_BIN)/spline.o \
                  $(UTILS_BIN)/usleep.o $(UTILS_BIN)/visual.o \
                  $(UTILS_BIN)/xroger.o $(UTILS_BIN)/yarandom.o \
-                 $(UTILS_BIN)/erase.o $(UTILS_BIN)/sgivideo.o
+                 $(UTILS_BIN)/erase.o $(UTILS_BIN)/sgivideo.o \
+                 $(UTILS_SRC)/xshm.o $(UTILS_SRC)/xdbe.o
 
 SRCS           = attraction.c blitspin.c bouboule.c braid.c bubbles.c \
                  bubbles-default.c decayscreen.c deco.c drift.c flag.c \
@@ -75,7 +80,10 @@ SRCS         = attraction.c blitspin.c bouboule.c braid.c bubbles.c \
                  rd-bomb.c coral.c mountain.c triangle.c lissie.c worm.c \
                  rotor.c ant.c xjack.c xlyap.c jigsaw.c xscreensaver-sgigl.c \
                  cynosure.c moire2.c flow.c epicycle.c interference.c \
-                 truchet.c bsod.c
+                 truchet.c bsod.c crystal.c discrete.c distort.c kumppa.c \
+                 sonar.c demon.c loop.c t3d.c penetrate.c deluxe.c compass.c \
+                 squiral.c xflame.c wander.c spotlight.c critical.c \
+                 phosphor.c xmatrix.c
 
 OBJS           = attraction.o blitspin.o bouboule.o braid.o bubbles.o \
                  bubbles-default.o decayscreen.o deco.o drift.o flag.o \
@@ -89,7 +97,10 @@ OBJS         = attraction.o blitspin.o bouboule.o braid.o bubbles.o \
                  rd-bomb.o coral.o mountain.o triangle.o lissie.o worm.o \
                  rotor.o ant.o xjack.o xlyap.o jigsaw.o xscreensaver-sgigl.o \
                  cynosure.o moire2.o flow.o epicycle.o interference.o \
-                 truchet.o bsod.o
+                 truchet.o bsod.o crystal.o discrete.o distort.o kumppa.o \
+                 sonar.o demon.o loop.o t3d.o penetrate.o deluxe.o compass.o \
+                 squiral.o xflame.o wander.o spotlight.o critical.o \
+                 phosphor.o xmatrix.o
 
 EXES           = attraction blitspin bouboule braid bubbles decayscreen deco \
                  drift flag flame forest vines galaxy grav greynetic halo \
@@ -99,7 +110,9 @@ EXES         = attraction blitspin bouboule braid bubbles decayscreen deco \
                  slip sphere spiral strange swirl xroger goop starfish munch \
                  fadeplot rd-bomb coral mountain triangle lissie worm rotor \
                  ant xjack xlyap jigsaw cynosure moire2 flow epicycle \
-                 interference truchet bsod
+                 interference truchet bsod crystal discrete distort kumppa \
+                 sonar demon loop t3d penetrate deluxe compass squiral \
+                 xflame wander spotlight critical phosphor xmatrix
 
 HACK_OBJS_1    = $(UTILS_BIN)/resources.o $(UTILS_BIN)/visual.o \
                  $(UTILS_BIN)/usleep.o $(UTILS_BIN)/yarandom.o @XMU_OBJS@
@@ -108,9 +121,11 @@ XLOCK_OBJS = screenhack-xlock.o xlockmore.o $(COLOR_OBJS) $(HACK_OBJS_1)
 COLOR_OBJS     = $(UTILS_BIN)/hsv.o $(UTILS_BIN)/colors.o
 GRAB_OBJS_1    = $(UTILS_BIN)/grabscreen.o $(SGI_VIDEO_OBJS)
 GRAB_OBJS      = $(GRAB_OBJS_1) $(COLOR_OBJS)
+XSHM_OBJS      = $(UTILS_BIN)/xshm.o
+XDBE_OBJS      = $(UTILS_BIN)/xdbe.o
 GRAB_LIBS      = $(SGI_VIDEO_LIBS)
 
-HDRS           = bubbles.h screenhack.h xlockmore.h xlockmoreI.h
+HDRS           = bubbles.h screenhack.h xlockmore.h xlockmoreI.h automata.h
 MEN            = attraction.man blitspin.man bouboule.man braid.man \
                  bubbles.man decayscreen.man deco.man drift.man flag.man \
                  flame.man forest.man vines.man galaxy.man grav.man \
@@ -121,7 +136,8 @@ MEN         = attraction.man blitspin.man bouboule.man braid.man \
                  rocks.man rorschach.man sierpinski.man slidescreen.man \
                  slip.man sphere.man spiral.man strange.man swirl.man \
                  xroger.man goop.man starfish.man munch.man rd-bomb.man \
-                 xjack.man xlyap.man jigsaw.man epicycle.man
+                 xjack.man xlyap.man jigsaw.man epicycle.man bsod.man \
+                 sonar.man t3d.man squiral.man spotlight.man critical.man
 STAR           = *
 EXTRAS         = README Makefile.in xlock_23.h .gdbinit \
                  vidwhacker \
@@ -147,17 +163,17 @@ uninstall: uninstall-program uninstall-man
 install-strip:
        $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' install
 
-install-program:
-       @if [ ! -d $(HACKDIR) ]; then mkdir $(HACKDIR) ; fi ;           \
-       for program in $(EXES); do                                      \
+install-program: $(EXES)
+       @exes="$(EXES)" ;                                               \
+       if [ ! -d $(HACKDIR) ]; then $(INSTALL_DIRS) $(HACKDIR) ; fi ;  \
+       for program in $$exes; do                                       \
          echo $(INSTALL_PROGRAM) $$program $(HACKDIR)/$$program ;      \
          $(INSTALL_PROGRAM) $$program $(HACKDIR)/$$program ;           \
        done
 
-install-man:
-       @if [ ! -d $(mandir) ]; then mkdir $(mandir) ; fi ;             \
-       if [ ! -d $(man1dir) ]; then mkdir $(man1dir) ; fi ;            \
-       men="$(MEN)" ;                                                  \
+install-man: $(MEN)
+       @men="$(MEN)" ;                                                 \
+       if [ ! -d $(man1dir) ]; then $(INSTALL_DIRS) $(man1dir) ; fi ;  \
        for man in $$men; do                                            \
          instname=`echo $$man | sed 's/\.man$$/\.$(mansuffix)/'` ;     \
          echo $(INSTALL_DATA) $(srcdir)/$$man $(man1dir)/$$instname ;  \
@@ -182,7 +198,7 @@ clean:
        -rm -f *.o a.out core $(EXES)
 
 distclean: clean
-       -rm -f Makefile *~ "#"*
+       -rm -f Makefile TAGS *~ "#"*
 
 # Adds all current dependencies to Makefile
 depend:
@@ -289,6 +305,8 @@ $(UTILS_BIN)/xmu.o:         $(UTILS_SRC)/xmu.c
 $(UTILS_BIN)/xroger.o:         $(UTILS_SRC)/xroger.c
 $(UTILS_BIN)/yarandom.o:       $(UTILS_SRC)/yarandom.c
 $(UTILS_BIN)/erase.o:          $(UTILS_SRC)/erase.c
+$(UTILS_BIN)/xshm.o:           $(UTILS_SRC)/xshm.c
+$(UTILS_BIN)/xdbe.o:           $(UTILS_SRC)/xdbe.c
 
 $(UTIL_OBJS):
        cd $(UTILS_BIN) ; \
@@ -313,6 +331,8 @@ XROG                = $(UTILS_BIN)/xroger.o $(SPL)
 GRAB           = $(GRAB_OBJS)
 ERASE          = $(UTILS_BIN)/erase.o
 COL            = $(COLOR_OBJS)
+SHM            = $(XSHM_OBJS)
+DBE            = $(XDBE_OBJS)
 
 CC_HACK                = $(CC) $(LDFLAGS)
 
@@ -327,116 +347,158 @@ xscreensaver-sgigl: xscreensaver-sgigl.c
 # is pretty much useless in the face of more than one dependency, as far
 # as I can tell.
 #
-attraction:             $(HACK_OBJS) attraction.o $(COL) $(SPL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) attraction.o $(COL) $(SPL) $(HACK_LIBS)
+attraction:    attraction.o    $(HACK_OBJS) $(COL) $(SPL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SPL) $(HACK_LIBS)
+
+blitspin:      blitspin.o      $(HACK_OBJS) $(GRAB)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(XPM_LIBS) $(GRAB_LIBS)
+
+bubbles:       bubbles.o       $(HACK_OBJS) bubbles-default.o 
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) bubbles-default.o $(XPM_LIBS)
+
+decayscreen:   decayscreen.o   $(HACK_OBJS) $(GRAB)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(HACK_LIBS) $(GRAB_LIBS)
+
+deco:          deco.o          $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
+
+flame:         flame.o         $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
+
+greynetic:     greynetic.o     $(HACK_OBJS)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
+
+halo:          halo.o          $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
+
+helix:         helix.o         $(HACK_OBJS) $(HSV) $(ERASE)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HSV) $(ERASE) $(HACK_LIBS)
+
+hypercube:     hypercube.o     $(HACK_OBJS)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
+
+imsmap:                imsmap.o        $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
+
+kaleidescope:  kaleidescope.o  $(HACK_OBJS)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
 
-blitspin:               $(HACK_OBJS) blitspin.o $(GRAB)
-       $(CC_HACK) -o $@ $(HACK_OBJS) blitspin.o $(GRAB) $(XPM_LIBS) $(GRAB_LIBS)
+lmorph:                lmorph.o        $(HACK_OBJS)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
 
-bubbles:                $(HACK_OBJS) bubbles.o bubbles-default.o 
-       $(CC_HACK) -o $@ $(HACK_OBJS) bubbles.o bubbles-default.o $(XPM_LIBS)
+maze:          maze.o          $(HACK_OBJS) $(ERASE) $(XROG)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(ERASE) $(XROG) $(HACK_LIBS)
 
-decayscreen:            $(HACK_OBJS) decayscreen.o $(GRAB)
-       $(CC_HACK) -o $@ $(HACK_OBJS) decayscreen.o $(GRAB) $(HACK_LIBS) $(GRAB_LIBS)
+moire:         moire.o         $(HACK_OBJS) $(COL) $(SHM)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SHM) $(HACK_LIBS)
 
-deco:                   $(HACK_OBJS) deco.o $(COL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) deco.o $(COL) $(HACK_LIBS)
+moire2:                moire2.o        $(HACK_OBJS) $(COL) $(DBE)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(DBE) $(HACK_LIBS)
 
-flame:                  $(HACK_OBJS) flame.o $(COL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) flame.o $(COL) $(HACK_LIBS)
+noseguy:       noseguy.o       $(HACK_OBJS)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(XPM_LIBS)
 
-greynetic:              $(HACK_OBJS) greynetic.o
-       $(CC_HACK) -o $@ $(HACK_OBJS) greynetic.o $(HACK_LIBS)
+pedal:         pedal.o         $(HACK_OBJS) $(HSV)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HSV) $(HACK_LIBS)
 
-halo:                   $(HACK_OBJS) halo.o $(COL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) halo.o $(COL) $(HACK_LIBS)
+pyro:          pyro.o          $(HACK_OBJS) $(HSV)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HSV) $(HACK_LIBS)
 
-helix:                  $(HACK_OBJS) helix.o $(HSV) $(ERASE)
-       $(CC_HACK) -o $@ $(HACK_OBJS) helix.o $(HSV) $(ERASE) $(HACK_LIBS)
+qix:           qix.o           $(HACK_OBJS) $(ALP)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(ALP) $(HACK_LIBS)
 
-hypercube:              $(HACK_OBJS) hypercube.o
-       $(CC_HACK) -o $@ $(HACK_OBJS) hypercube.o $(HACK_LIBS)
+rocks:         rocks.o         $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
 
-imsmap:                         $(HACK_OBJS) imsmap.o $(COL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) imsmap.o $(COL) $(HACK_LIBS)
+rorschach:     rorschach.o     $(HACK_OBJS) $(HSV) $(ERASE)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HSV) $(ERASE) $(HACK_LIBS)
 
-kaleidescope:           $(HACK_OBJS) kaleidescope.o
-       $(CC_HACK) -o $@ $(HACK_OBJS) kaleidescope.o $(HACK_LIBS)
+slidescreen:   slidescreen.o   $(HACK_OBJS) $(GRAB)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(HACK_LIBS) $(GRAB_LIBS)
 
-lmorph:                         $(HACK_OBJS) lmorph.o
-       $(CC_HACK) -o $@ $(HACK_OBJS) lmorph.o $(HACK_LIBS)
+xroger:                xroger-hack.o   $(HACK_OBJS) $(HSV) $(XROG)
+       $(CC_HACK) -o $@ xroger-hack.o  $(HACK_OBJS) $(HSV) $(XROG) $(HACK_LIBS)
 
-maze:                   $(HACK_OBJS) maze.o $(ERASE) $(XROG)
-       $(CC_HACK) -o $@ $(HACK_OBJS) maze.o $(ERASE) $(XROG) $(HACK_LIBS)
+goop:          goop.o          $(HACK_OBJS) $(ALP) $(SPL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(ALP) $(SPL) $(HACK_LIBS)
 
-moire:                  $(HACK_OBJS) moire.o $(COL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) moire.o $(COL) $(HACK_LIBS)
+starfish:      starfish.o      $(HACK_OBJS) $(COL) $(SPL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SPL) $(HACK_LIBS)
 
-moire2:                         $(HACK_OBJS) moire2.o $(COL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) moire2.o $(COL) $(HACK_LIBS)
+munch:         munch.o         $(HACK_OBJS) $(COL) $(SPL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SPL) $(HACK_LIBS)
 
-noseguy:                $(HACK_OBJS) noseguy.o
-       $(CC_HACK) -o $@ $(HACK_OBJS) noseguy.o $(XPM_LIBS)
+rd-bomb:       rd-bomb.o       $(HACK_OBJS) $(COL) $(SHM)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SHM) $(HACK_LIBS)
 
-pedal:                  $(HACK_OBJS) pedal.o $(HSV)
-       $(CC_HACK) -o $@ $(HACK_OBJS) pedal.o $(HSV) $(HACK_LIBS)
+coral:         coral.o         $(HACK_OBJS) $(COL) $(ERASE)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(ERASE) $(HACK_LIBS)
 
-pyro:                   $(HACK_OBJS) pyro.o $(HSV)
-       $(CC_HACK) -o $@ $(HACK_OBJS) pyro.o $(HSV) $(HACK_LIBS)
+xjack:         xjack.o         $(HACK_OBJS)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
 
-qix:                    $(HACK_OBJS) qix.o $(ALP)
-       $(CC_HACK) -o $@ $(HACK_OBJS) qix.o $(ALP) $(HACK_LIBS)
+xlyap:         xlyap.o         $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
 
-rocks:                  $(HACK_OBJS) rocks.o $(COL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) rocks.o $(COL) $(HACK_LIBS)
+jigsaw:                jigsaw.o        $(HACK_OBJS) $(GRAB)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(HACK_LIBS) $(GRAB_LIBS)
 
-rorschach:              $(HACK_OBJS) rorschach.o $(HSV) $(ERASE)
-       $(CC_HACK) -o $@ $(HACK_OBJS) rorschach.o $(HSV) $(ERASE) $(HACK_LIBS)
+cynosure:      cynosure.o      $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
 
-slidescreen:            $(HACK_OBJS) slidescreen.o $(GRAB)
-       $(CC_HACK) -o $@ $(HACK_OBJS) slidescreen.o $(GRAB) $(HACK_LIBS) $(GRAB_LIBS)
+epicycle:      epicycle.o      $(HACK_OBJS) $(COL) $(ERASE)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(ERASE) $(HACK_LIBS)
 
-xroger:                         $(HACK_OBJS) xroger-hack.o $(HSV) $(XROG)
-       $(CC_HACK) -o $@ $(HACK_OBJS) xroger-hack.o $(HSV) $(XROG) $(HACK_LIBS)
+interference:  interference.o  $(HACK_OBJS) $(COL) $(SHM) $(DBE)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SHM) $(DBE) $(HACK_LIBS)
 
-goop:                   $(HACK_OBJS) goop.o $(ALP) $(SPL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) goop.o $(ALP) $(SPL) $(HACK_LIBS)
+truchet:        truchet.o      $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
 
-starfish:               $(HACK_OBJS) starfish.o $(COL) $(SPL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) starfish.o $(COL) $(SPL) $(HACK_LIBS)
+bsod:          bsod.o          $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS) $(XPM_LIBS)
 
-munch:                  $(HACK_OBJS) munch.o $(COL) $(SPL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) munch.o $(COL) $(SPL) $(HACK_LIBS)
+distort:       distort.o       $(HACK_OBJS) $(GRAB) $(SHM)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(SHM) $(HACK_LIBS) $(GRAB_LIBS)
 
-rd-bomb:                $(HACK_OBJS) rd-bomb.o $(COL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) rd-bomb.o $(COL) $(HACK_LIBS)
+kumppa:                kumppa.o        $(HACK_OBJS) $(DBE)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(DBE) $(HACK_LIBS)
 
-coral: $(HACK_OBJS) coral.o $(COL) $(ERASE)
-       $(CC_HACK) -o $@ $(HACK_OBJS) coral.o $(COL) $(ERASE) $(HACK_LIBS)
+sonar:         sonar.o         $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
 
-xjack: $(HACK_OBJS) xjack.o
-       $(CC_HACK) -o $@ $(HACK_OBJS) xjack.o $(HACK_LIBS)
+t3d:           t3d.o           $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
 
-xlyap: $(HACK_OBJS) xlyap.o $(COL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) xlyap.o $(COL) $(HACK_LIBS)
+penetrate:     penetrate.o     $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
 
-jigsaw: $(HACK_OBJS) jigsaw.o $(GRAB)
-       $(CC_HACK) -o $@ $(HACK_OBJS) jigsaw.o $(GRAB) $(HACK_LIBS) $(GRAB_LIBS)
+deluxe:                deluxe.o        $(HACK_OBJS) $(COL) $(DBE)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(DBE) $(HACK_LIBS)
 
-cynosure: $(HACK_OBJS) cynosure.o $(COL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) cynosure.o $(COL) $(HACK_LIBS)
+compass:       compass.o       $(HACK_OBJS) $(DBE)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(DBE) $(HACK_LIBS)
 
-epicycle: $(HACK_OBJS) epicycle.o $(COL) $(ERASE)
-       $(CC_HACK) -o $@ $(HACK_OBJS) epicycle.o $(COL) $(ERASE) $(HACK_LIBS)
+squiral:       squiral.o       $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
 
-interference: $(HACK_OBJS) interference.o $(COL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) interference.o $(COL) $(HACK_LIBS)
+xflame:                xflame.o        $(HACK_OBJS) $(SHM)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(SHM) $(HACK_LIBS) $(XPM_LIBS)
 
-truchet: $(HACK_OBJS) truchet.o $(COL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) truchet.o $(COL) $(HACK_LIBS)
+wander:                wander.o        $(HACK_OBJS) $(COL) $(ERASE)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(ERASE) $(HACK_LIBS)
 
-bsod: $(HACK_OBJS) bsod.o $(COL)
-       $(CC_HACK) -o $@ $(HACK_OBJS) bsod.o $(COL) $(HACK_LIBS) $(XPM_LIBS)
+spotlight:     spotlight.o     $(HACK_OBJS) $(GRAB)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(HACK_LIBS) $(GRAB_LIBS)
+
+critical:      critical.o      $(HACK_OBJS) $(COL) $(ERASE)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(ERASE) $(HACK_LIBS)
+
+phosphor:      phosphor.o      $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
+
+xmatrix:       xmatrix.o       $(HACK_OBJS)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS) $(XPM_LIBS)
 
 
 # The rules for those hacks which follow the `xlockmore' API.
@@ -505,8 +567,8 @@ spiral:             spiral.o        $(XLOCK_OBJS)
 strange:       strange.o       $(XLOCK_OBJS)
        $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
 
-swirl:         swirl.o         $(XLOCK_OBJS)
-       $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
+swirl:         swirl.o         $(XLOCK_OBJS) $(SHM)
+       $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(SHM) $(HACK_LIBS)
 
 fadeplot:      fadeplot.o      $(XLOCK_OBJS)
        $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
@@ -526,13 +588,26 @@ rotor:            rotor.o         $(XLOCK_OBJS)
 ant:           ant.o           $(XLOCK_OBJS) $(ERASE)
        $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(ERASE) $(HACK_LIBS)
 
+demon:         demon.o         $(XLOCK_OBJS)
+       $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
+
+loop:          loop.o          $(XLOCK_OBJS)
+       $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
+
 flow:          flow.o          $(XLOCK_OBJS)
        $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
 
+discrete:      discrete.o              $(XLOCK_OBJS) $(ERASE)
+       $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(ERASE) $(HACK_LIBS)
+
+crystal:       crystal.o               $(XLOCK_OBJS)
+       $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
+
 
 ##############################################################################
 #
 # DO NOT DELETE: updated by make distdepend
+# $(srcdir)/DO $(srcdir)/NOT $(srcdir)/DELETE: $(srcdir)/updated $(srcdir)/by $(srcdir)/make $(srcdir)/distdepend
 
 attraction.o: $(srcdir)/screenhack.h
 attraction.o: ../config.h
@@ -565,6 +640,7 @@ bouboule.o: $(UTILS_SRC)/hsv.h
 bouboule.o: $(UTILS_SRC)/colors.h
 bouboule.o: $(UTILS_SRC)/grabscreen.h
 bouboule.o: $(UTILS_SRC)/visual.h
+bouboule.o: $(UTILS_SRC)/xshm.h
 braid.o: $(srcdir)/xlockmore.h
 braid.o: ../config.h
 braid.o: $(srcdir)/xlockmoreI.h
@@ -576,6 +652,7 @@ braid.o: $(UTILS_SRC)/hsv.h
 braid.o: $(UTILS_SRC)/colors.h
 braid.o: $(UTILS_SRC)/grabscreen.h
 braid.o: $(UTILS_SRC)/visual.h
+braid.o: $(UTILS_SRC)/xshm.h
 braid.o: $(UTILS_SRC)/erase.h
 bubbles.o: $(srcdir)/screenhack.h
 bubbles.o: ../config.h
@@ -663,6 +740,7 @@ drift.o: $(UTILS_SRC)/hsv.h
 drift.o: $(UTILS_SRC)/colors.h
 drift.o: $(UTILS_SRC)/grabscreen.h
 drift.o: $(UTILS_SRC)/visual.h
+drift.o: $(UTILS_SRC)/xshm.h
 drift.o: $(UTILS_SRC)/erase.h
 flag.o: $(srcdir)/xlockmore.h
 flag.o: ../config.h
@@ -675,6 +753,7 @@ flag.o: $(UTILS_SRC)/hsv.h
 flag.o: $(UTILS_SRC)/colors.h
 flag.o: $(UTILS_SRC)/grabscreen.h
 flag.o: $(UTILS_SRC)/visual.h
+flag.o: $(UTILS_SRC)/xshm.h
 flag.o: $(srcdir)/images/bob.xbm
 flame.o: $(srcdir)/screenhack.h
 flame.o: ../config.h
@@ -696,6 +775,7 @@ forest.o: $(UTILS_SRC)/hsv.h
 forest.o: $(UTILS_SRC)/colors.h
 forest.o: $(UTILS_SRC)/grabscreen.h
 forest.o: $(UTILS_SRC)/visual.h
+forest.o: $(UTILS_SRC)/xshm.h
 forest.o: $(UTILS_SRC)/erase.h
 vines.o: $(srcdir)/xlockmore.h
 vines.o: ../config.h
@@ -708,6 +788,7 @@ vines.o: $(UTILS_SRC)/hsv.h
 vines.o: $(UTILS_SRC)/colors.h
 vines.o: $(UTILS_SRC)/grabscreen.h
 vines.o: $(UTILS_SRC)/visual.h
+vines.o: $(UTILS_SRC)/xshm.h
 vines.o: $(UTILS_SRC)/erase.h
 galaxy.o: $(srcdir)/xlockmore.h
 galaxy.o: ../config.h
@@ -720,6 +801,7 @@ galaxy.o: $(UTILS_SRC)/hsv.h
 galaxy.o: $(UTILS_SRC)/colors.h
 galaxy.o: $(UTILS_SRC)/grabscreen.h
 galaxy.o: $(UTILS_SRC)/visual.h
+galaxy.o: $(UTILS_SRC)/xshm.h
 grav.o: $(srcdir)/xlockmore.h
 grav.o: ../config.h
 grav.o: $(srcdir)/xlockmoreI.h
@@ -731,6 +813,7 @@ grav.o: $(UTILS_SRC)/hsv.h
 grav.o: $(UTILS_SRC)/colors.h
 grav.o: $(UTILS_SRC)/grabscreen.h
 grav.o: $(UTILS_SRC)/visual.h
+grav.o: $(UTILS_SRC)/xshm.h
 greynetic.o: $(srcdir)/screenhack.h
 greynetic.o: ../config.h
 greynetic.o: $(UTILS_SRC)/yarandom.h
@@ -770,6 +853,7 @@ hopalong.o: $(UTILS_SRC)/hsv.h
 hopalong.o: $(UTILS_SRC)/colors.h
 hopalong.o: $(UTILS_SRC)/grabscreen.h
 hopalong.o: $(UTILS_SRC)/visual.h
+hopalong.o: $(UTILS_SRC)/xshm.h
 hopalong.o: $(UTILS_SRC)/erase.h
 hypercube.o: $(srcdir)/screenhack.h
 hypercube.o: ../config.h
@@ -791,6 +875,7 @@ ifs.o: $(UTILS_SRC)/hsv.h
 ifs.o: $(UTILS_SRC)/colors.h
 ifs.o: $(UTILS_SRC)/grabscreen.h
 ifs.o: $(UTILS_SRC)/visual.h
+ifs.o: $(UTILS_SRC)/xshm.h
 imsmap.o: $(srcdir)/screenhack.h
 imsmap.o: ../config.h
 imsmap.o: $(UTILS_SRC)/yarandom.h
@@ -811,6 +896,7 @@ julia.o: $(UTILS_SRC)/hsv.h
 julia.o: $(UTILS_SRC)/colors.h
 julia.o: $(UTILS_SRC)/grabscreen.h
 julia.o: $(UTILS_SRC)/visual.h
+julia.o: $(UTILS_SRC)/xshm.h
 kaleidescope.o: $(UTILS_SRC)/spline.h
 kaleidescope.o: $(srcdir)/screenhack.h
 kaleidescope.o: ../config.h
@@ -832,6 +918,7 @@ laser.o: $(UTILS_SRC)/hsv.h
 laser.o: $(UTILS_SRC)/colors.h
 laser.o: $(UTILS_SRC)/grabscreen.h
 laser.o: $(UTILS_SRC)/visual.h
+laser.o: $(UTILS_SRC)/xshm.h
 lightning.o: $(srcdir)/xlockmore.h
 lightning.o: ../config.h
 lightning.o: $(srcdir)/xlockmoreI.h
@@ -843,6 +930,7 @@ lightning.o: $(UTILS_SRC)/hsv.h
 lightning.o: $(UTILS_SRC)/colors.h
 lightning.o: $(UTILS_SRC)/grabscreen.h
 lightning.o: $(UTILS_SRC)/visual.h
+lightning.o: $(UTILS_SRC)/xshm.h
 lisa.o: $(srcdir)/xlockmore.h
 lisa.o: ../config.h
 lisa.o: $(srcdir)/xlockmoreI.h
@@ -854,6 +942,7 @@ lisa.o: $(UTILS_SRC)/hsv.h
 lisa.o: $(UTILS_SRC)/colors.h
 lisa.o: $(UTILS_SRC)/grabscreen.h
 lisa.o: $(UTILS_SRC)/visual.h
+lisa.o: $(UTILS_SRC)/xshm.h
 lmorph.o: $(srcdir)/screenhack.h
 lmorph.o: ../config.h
 lmorph.o: $(UTILS_SRC)/yarandom.h
@@ -882,6 +971,7 @@ moire.o: $(UTILS_SRC)/hsv.h
 moire.o: $(UTILS_SRC)/colors.h
 moire.o: $(UTILS_SRC)/grabscreen.h
 moire.o: $(UTILS_SRC)/visual.h
+moire.o: $(UTILS_SRC)/xshm.h
 noseguy.o: $(srcdir)/screenhack.h
 noseguy.o: ../config.h
 noseguy.o: $(UTILS_SRC)/yarandom.h
@@ -919,6 +1009,7 @@ penrose.o: $(UTILS_SRC)/hsv.h
 penrose.o: $(UTILS_SRC)/colors.h
 penrose.o: $(UTILS_SRC)/grabscreen.h
 penrose.o: $(UTILS_SRC)/visual.h
+penrose.o: $(UTILS_SRC)/xshm.h
 pyro.o: $(srcdir)/screenhack.h
 pyro.o: ../config.h
 pyro.o: $(UTILS_SRC)/yarandom.h
@@ -980,6 +1071,7 @@ sierpinski.o: $(UTILS_SRC)/hsv.h
 sierpinski.o: $(UTILS_SRC)/colors.h
 sierpinski.o: $(UTILS_SRC)/grabscreen.h
 sierpinski.o: $(UTILS_SRC)/visual.h
+sierpinski.o: $(UTILS_SRC)/xshm.h
 slidescreen.o: $(srcdir)/screenhack.h
 slidescreen.o: ../config.h
 slidescreen.o: $(UTILS_SRC)/yarandom.h
@@ -1000,6 +1092,7 @@ slip.o: $(UTILS_SRC)/hsv.h
 slip.o: $(UTILS_SRC)/colors.h
 slip.o: $(UTILS_SRC)/grabscreen.h
 slip.o: $(UTILS_SRC)/visual.h
+slip.o: $(UTILS_SRC)/xshm.h
 sphere.o: $(srcdir)/xlockmore.h
 sphere.o: ../config.h
 sphere.o: $(srcdir)/xlockmoreI.h
@@ -1011,6 +1104,7 @@ sphere.o: $(UTILS_SRC)/hsv.h
 sphere.o: $(UTILS_SRC)/colors.h
 sphere.o: $(UTILS_SRC)/grabscreen.h
 sphere.o: $(UTILS_SRC)/visual.h
+sphere.o: $(UTILS_SRC)/xshm.h
 spiral.o: $(srcdir)/xlockmore.h
 spiral.o: ../config.h
 spiral.o: $(srcdir)/xlockmoreI.h
@@ -1022,6 +1116,7 @@ spiral.o: $(UTILS_SRC)/hsv.h
 spiral.o: $(UTILS_SRC)/colors.h
 spiral.o: $(UTILS_SRC)/grabscreen.h
 spiral.o: $(UTILS_SRC)/visual.h
+spiral.o: $(UTILS_SRC)/xshm.h
 strange.o: $(srcdir)/xlockmore.h
 strange.o: ../config.h
 strange.o: $(srcdir)/xlockmoreI.h
@@ -1033,6 +1128,7 @@ strange.o: $(UTILS_SRC)/hsv.h
 strange.o: $(UTILS_SRC)/colors.h
 strange.o: $(UTILS_SRC)/grabscreen.h
 strange.o: $(UTILS_SRC)/visual.h
+strange.o: $(UTILS_SRC)/xshm.h
 swirl.o: $(srcdir)/xlockmore.h
 swirl.o: ../config.h
 swirl.o: $(srcdir)/xlockmoreI.h
@@ -1044,6 +1140,7 @@ swirl.o: $(UTILS_SRC)/hsv.h
 swirl.o: $(UTILS_SRC)/colors.h
 swirl.o: $(UTILS_SRC)/grabscreen.h
 swirl.o: $(UTILS_SRC)/visual.h
+swirl.o: $(UTILS_SRC)/xshm.h
 xlockmore.o: $(srcdir)/screenhack.h
 xlockmore.o: ../config.h
 xlockmore.o: $(UTILS_SRC)/yarandom.h
@@ -1054,6 +1151,7 @@ xlockmore.o: $(UTILS_SRC)/colors.h
 xlockmore.o: $(UTILS_SRC)/grabscreen.h
 xlockmore.o: $(UTILS_SRC)/visual.h
 xlockmore.o: $(srcdir)/xlockmoreI.h
+xlockmore.o: $(UTILS_SRC)/xshm.h
 xroger-hack.o: $(srcdir)/screenhack.h
 xroger-hack.o: ../config.h
 xroger-hack.o: $(UTILS_SRC)/yarandom.h
@@ -1104,6 +1202,7 @@ fadeplot.o: $(UTILS_SRC)/hsv.h
 fadeplot.o: $(UTILS_SRC)/colors.h
 fadeplot.o: $(UTILS_SRC)/grabscreen.h
 fadeplot.o: $(UTILS_SRC)/visual.h
+fadeplot.o: $(UTILS_SRC)/xshm.h
 rd-bomb.o: $(srcdir)/screenhack.h
 rd-bomb.o: ../config.h
 rd-bomb.o: $(UTILS_SRC)/yarandom.h
@@ -1113,6 +1212,7 @@ rd-bomb.o: $(UTILS_SRC)/hsv.h
 rd-bomb.o: $(UTILS_SRC)/colors.h
 rd-bomb.o: $(UTILS_SRC)/grabscreen.h
 rd-bomb.o: $(UTILS_SRC)/visual.h
+rd-bomb.o: $(UTILS_SRC)/xshm.h
 coral.o: $(srcdir)/screenhack.h
 coral.o: ../config.h
 coral.o: $(UTILS_SRC)/yarandom.h
@@ -1134,6 +1234,7 @@ mountain.o: $(UTILS_SRC)/hsv.h
 mountain.o: $(UTILS_SRC)/colors.h
 mountain.o: $(UTILS_SRC)/grabscreen.h
 mountain.o: $(UTILS_SRC)/visual.h
+mountain.o: $(UTILS_SRC)/xshm.h
 triangle.o: $(srcdir)/xlockmore.h
 triangle.o: ../config.h
 triangle.o: $(srcdir)/xlockmoreI.h
@@ -1145,6 +1246,7 @@ triangle.o: $(UTILS_SRC)/hsv.h
 triangle.o: $(UTILS_SRC)/colors.h
 triangle.o: $(UTILS_SRC)/grabscreen.h
 triangle.o: $(UTILS_SRC)/visual.h
+triangle.o: $(UTILS_SRC)/xshm.h
 lissie.o: $(srcdir)/xlockmore.h
 lissie.o: ../config.h
 lissie.o: $(srcdir)/xlockmoreI.h
@@ -1156,6 +1258,7 @@ lissie.o: $(UTILS_SRC)/hsv.h
 lissie.o: $(UTILS_SRC)/colors.h
 lissie.o: $(UTILS_SRC)/grabscreen.h
 lissie.o: $(UTILS_SRC)/visual.h
+lissie.o: $(UTILS_SRC)/xshm.h
 worm.o: $(srcdir)/xlockmore.h
 worm.o: ../config.h
 worm.o: $(srcdir)/xlockmoreI.h
@@ -1167,6 +1270,7 @@ worm.o: $(UTILS_SRC)/hsv.h
 worm.o: $(UTILS_SRC)/colors.h
 worm.o: $(UTILS_SRC)/grabscreen.h
 worm.o: $(UTILS_SRC)/visual.h
+worm.o: $(UTILS_SRC)/xshm.h
 rotor.o: $(srcdir)/xlockmore.h
 rotor.o: ../config.h
 rotor.o: $(srcdir)/xlockmoreI.h
@@ -1178,6 +1282,7 @@ rotor.o: $(UTILS_SRC)/hsv.h
 rotor.o: $(UTILS_SRC)/colors.h
 rotor.o: $(UTILS_SRC)/grabscreen.h
 rotor.o: $(UTILS_SRC)/visual.h
+rotor.o: $(UTILS_SRC)/xshm.h
 ant.o: $(srcdir)/xlockmore.h
 ant.o: ../config.h
 ant.o: $(srcdir)/xlockmoreI.h
@@ -1189,7 +1294,9 @@ ant.o: $(UTILS_SRC)/hsv.h
 ant.o: $(UTILS_SRC)/colors.h
 ant.o: $(UTILS_SRC)/grabscreen.h
 ant.o: $(UTILS_SRC)/visual.h
+ant.o: $(UTILS_SRC)/xshm.h
 ant.o: $(UTILS_SRC)/erase.h
+ant.o: $(srcdir)/automata.h
 xjack.o: $(srcdir)/screenhack.h
 xjack.o: ../config.h
 xjack.o: $(UTILS_SRC)/yarandom.h
@@ -1273,6 +1380,7 @@ moire2.o: $(UTILS_SRC)/hsv.h
 moire2.o: $(UTILS_SRC)/colors.h
 moire2.o: $(UTILS_SRC)/grabscreen.h
 moire2.o: $(UTILS_SRC)/visual.h
+moire2.o: $(UTILS_SRC)/xdbe.h
 flow.o: $(srcdir)/xlockmore.h
 flow.o: ../config.h
 flow.o: $(srcdir)/xlockmoreI.h
@@ -1284,6 +1392,7 @@ flow.o: $(UTILS_SRC)/hsv.h
 flow.o: $(UTILS_SRC)/colors.h
 flow.o: $(UTILS_SRC)/grabscreen.h
 flow.o: $(UTILS_SRC)/visual.h
+flow.o: $(UTILS_SRC)/xshm.h
 flow.o: $(UTILS_SRC)/erase.h
 epicycle.o: $(srcdir)/screenhack.h
 epicycle.o: ../config.h
@@ -1304,6 +1413,7 @@ interference.o: $(UTILS_SRC)/hsv.h
 interference.o: $(UTILS_SRC)/colors.h
 interference.o: $(UTILS_SRC)/grabscreen.h
 interference.o: $(UTILS_SRC)/visual.h
+interference.o: $(UTILS_SRC)/xdbe.h
 truchet.o: $(srcdir)/screenhack.h
 truchet.o: ../config.h
 truchet.o: $(UTILS_SRC)/yarandom.h
@@ -1323,5 +1433,193 @@ bsod.o: $(UTILS_SRC)/colors.h
 bsod.o: $(UTILS_SRC)/grabscreen.h
 bsod.o: $(UTILS_SRC)/visual.h
 bsod.o: $(srcdir)/images/amiga.xpm
+bsod.o: $(srcdir)/images/atari.xbm
 bsod.o: $(srcdir)/images/mac.xbm
+crystal.o: $(srcdir)/xlockmore.h
+crystal.o: ../config.h
+crystal.o: $(srcdir)/xlockmoreI.h
+crystal.o: $(srcdir)/screenhack.h
+crystal.o: $(UTILS_SRC)/yarandom.h
+crystal.o: $(UTILS_SRC)/usleep.h
+crystal.o: $(UTILS_SRC)/resources.h
+crystal.o: $(UTILS_SRC)/hsv.h
+crystal.o: $(UTILS_SRC)/colors.h
+crystal.o: $(UTILS_SRC)/grabscreen.h
+crystal.o: $(UTILS_SRC)/visual.h
+crystal.o: $(UTILS_SRC)/xshm.h
+discrete.o: $(srcdir)/xlockmore.h
+discrete.o: ../config.h
+discrete.o: $(srcdir)/xlockmoreI.h
+discrete.o: $(srcdir)/screenhack.h
+discrete.o: $(UTILS_SRC)/yarandom.h
+discrete.o: $(UTILS_SRC)/usleep.h
+discrete.o: $(UTILS_SRC)/resources.h
+discrete.o: $(UTILS_SRC)/hsv.h
+discrete.o: $(UTILS_SRC)/colors.h
+discrete.o: $(UTILS_SRC)/grabscreen.h
+discrete.o: $(UTILS_SRC)/visual.h
+discrete.o: $(UTILS_SRC)/xshm.h
+discrete.o: $(UTILS_SRC)/erase.h
+distort.o: $(srcdir)/screenhack.h
+distort.o: ../config.h
+distort.o: $(UTILS_SRC)/yarandom.h
+distort.o: $(UTILS_SRC)/usleep.h
+distort.o: $(UTILS_SRC)/resources.h
+distort.o: $(UTILS_SRC)/hsv.h
+distort.o: $(UTILS_SRC)/colors.h
+distort.o: $(UTILS_SRC)/grabscreen.h
+distort.o: $(UTILS_SRC)/visual.h
+distort.o: $(UTILS_SRC)/xshm.h
+kumppa.o: $(srcdir)/screenhack.h
+kumppa.o: ../config.h
+kumppa.o: $(UTILS_SRC)/yarandom.h
+kumppa.o: $(UTILS_SRC)/usleep.h
+kumppa.o: $(UTILS_SRC)/resources.h
+kumppa.o: $(UTILS_SRC)/hsv.h
+kumppa.o: $(UTILS_SRC)/colors.h
+kumppa.o: $(UTILS_SRC)/grabscreen.h
+kumppa.o: $(UTILS_SRC)/visual.h
+kumppa.o: $(UTILS_SRC)/xdbe.h
+sonar.o: $(srcdir)/screenhack.h
+sonar.o: ../config.h
+sonar.o: $(UTILS_SRC)/yarandom.h
+sonar.o: $(UTILS_SRC)/usleep.h
+sonar.o: $(UTILS_SRC)/resources.h
+sonar.o: $(UTILS_SRC)/hsv.h
+sonar.o: $(UTILS_SRC)/colors.h
+sonar.o: $(UTILS_SRC)/grabscreen.h
+sonar.o: $(UTILS_SRC)/visual.h
+demon.o: $(srcdir)/xlockmore.h
+demon.o: ../config.h
+demon.o: $(srcdir)/xlockmoreI.h
+demon.o: $(srcdir)/screenhack.h
+demon.o: $(UTILS_SRC)/yarandom.h
+demon.o: $(UTILS_SRC)/usleep.h
+demon.o: $(UTILS_SRC)/resources.h
+demon.o: $(UTILS_SRC)/hsv.h
+demon.o: $(UTILS_SRC)/colors.h
+demon.o: $(UTILS_SRC)/grabscreen.h
+demon.o: $(UTILS_SRC)/visual.h
+demon.o: $(UTILS_SRC)/xshm.h
+demon.o: $(srcdir)/automata.h
+loop.o: $(srcdir)/xlockmore.h
+loop.o: ../config.h
+loop.o: $(srcdir)/xlockmoreI.h
+loop.o: $(srcdir)/screenhack.h
+loop.o: $(UTILS_SRC)/yarandom.h
+loop.o: $(UTILS_SRC)/usleep.h
+loop.o: $(UTILS_SRC)/resources.h
+loop.o: $(UTILS_SRC)/hsv.h
+loop.o: $(UTILS_SRC)/colors.h
+loop.o: $(UTILS_SRC)/grabscreen.h
+loop.o: $(UTILS_SRC)/visual.h
+loop.o: $(UTILS_SRC)/xshm.h
+loop.o: $(srcdir)/automata.h
+t3d.o: $(srcdir)/screenhack.h
+t3d.o: ../config.h
+t3d.o: $(UTILS_SRC)/yarandom.h
+t3d.o: $(UTILS_SRC)/usleep.h
+t3d.o: $(UTILS_SRC)/resources.h
+t3d.o: $(UTILS_SRC)/hsv.h
+t3d.o: $(UTILS_SRC)/colors.h
+t3d.o: $(UTILS_SRC)/grabscreen.h
+t3d.o: $(UTILS_SRC)/visual.h
+penetrate.o: $(srcdir)/screenhack.h
+penetrate.o: ../config.h
+penetrate.o: $(UTILS_SRC)/yarandom.h
+penetrate.o: $(UTILS_SRC)/usleep.h
+penetrate.o: $(UTILS_SRC)/resources.h
+penetrate.o: $(UTILS_SRC)/hsv.h
+penetrate.o: $(UTILS_SRC)/colors.h
+penetrate.o: $(UTILS_SRC)/grabscreen.h
+penetrate.o: $(UTILS_SRC)/visual.h
+deluxe.o: $(srcdir)/screenhack.h
+deluxe.o: ../config.h
+deluxe.o: $(UTILS_SRC)/yarandom.h
+deluxe.o: $(UTILS_SRC)/usleep.h
+deluxe.o: $(UTILS_SRC)/resources.h
+deluxe.o: $(UTILS_SRC)/hsv.h
+deluxe.o: $(UTILS_SRC)/colors.h
+deluxe.o: $(UTILS_SRC)/grabscreen.h
+deluxe.o: $(UTILS_SRC)/visual.h
+deluxe.o: $(UTILS_SRC)/xdbe.h
+compass.o: $(srcdir)/screenhack.h
+compass.o: ../config.h
+compass.o: $(UTILS_SRC)/yarandom.h
+compass.o: $(UTILS_SRC)/usleep.h
+compass.o: $(UTILS_SRC)/resources.h
+compass.o: $(UTILS_SRC)/hsv.h
+compass.o: $(UTILS_SRC)/colors.h
+compass.o: $(UTILS_SRC)/grabscreen.h
+compass.o: $(UTILS_SRC)/visual.h
+compass.o: $(UTILS_SRC)/xdbe.h
+squiral.o: $(srcdir)/screenhack.h
+squiral.o: ../config.h
+squiral.o: $(UTILS_SRC)/yarandom.h
+squiral.o: $(UTILS_SRC)/usleep.h
+squiral.o: $(UTILS_SRC)/resources.h
+squiral.o: $(UTILS_SRC)/hsv.h
+squiral.o: $(UTILS_SRC)/colors.h
+squiral.o: $(UTILS_SRC)/grabscreen.h
+squiral.o: $(UTILS_SRC)/visual.h
+squiral.o: $(UTILS_SRC)/erase.h
+xflame.o: $(srcdir)/screenhack.h
+xflame.o: ../config.h
+xflame.o: $(UTILS_SRC)/yarandom.h
+xflame.o: $(UTILS_SRC)/usleep.h
+xflame.o: $(UTILS_SRC)/resources.h
+xflame.o: $(UTILS_SRC)/hsv.h
+xflame.o: $(UTILS_SRC)/colors.h
+xflame.o: $(UTILS_SRC)/grabscreen.h
+xflame.o: $(UTILS_SRC)/visual.h
+xflame.o: $(UTILS_SRC)/xshm.h
+wander.o: $(srcdir)/screenhack.h
+wander.o: ../config.h
+wander.o: $(UTILS_SRC)/yarandom.h
+wander.o: $(UTILS_SRC)/usleep.h
+wander.o: $(UTILS_SRC)/resources.h
+wander.o: $(UTILS_SRC)/hsv.h
+wander.o: $(UTILS_SRC)/colors.h
+wander.o: $(UTILS_SRC)/grabscreen.h
+wander.o: $(UTILS_SRC)/visual.h
+wander.o: $(UTILS_SRC)/erase.h
+spotlight.o: $(srcdir)/screenhack.h
+spotlight.o: ../config.h
+spotlight.o: $(UTILS_SRC)/yarandom.h
+spotlight.o: $(UTILS_SRC)/usleep.h
+spotlight.o: $(UTILS_SRC)/resources.h
+spotlight.o: $(UTILS_SRC)/hsv.h
+spotlight.o: $(UTILS_SRC)/colors.h
+spotlight.o: $(UTILS_SRC)/grabscreen.h
+spotlight.o: $(UTILS_SRC)/visual.h
+critical.o: $(srcdir)/screenhack.h
+critical.o: ../config.h
+critical.o: $(UTILS_SRC)/yarandom.h
+critical.o: $(UTILS_SRC)/usleep.h
+critical.o: $(UTILS_SRC)/resources.h
+critical.o: $(UTILS_SRC)/hsv.h
+critical.o: $(UTILS_SRC)/colors.h
+critical.o: $(UTILS_SRC)/grabscreen.h
+critical.o: $(UTILS_SRC)/visual.h
+critical.o: $(UTILS_SRC)/erase.h
+phosphor.o: $(srcdir)/screenhack.h
+phosphor.o: ../config.h
+phosphor.o: $(UTILS_SRC)/yarandom.h
+phosphor.o: $(UTILS_SRC)/usleep.h
+phosphor.o: $(UTILS_SRC)/resources.h
+phosphor.o: $(UTILS_SRC)/hsv.h
+phosphor.o: $(UTILS_SRC)/colors.h
+phosphor.o: $(UTILS_SRC)/grabscreen.h
+phosphor.o: $(UTILS_SRC)/visual.h
+xmatrix.o: $(srcdir)/screenhack.h
+xmatrix.o: ../config.h
+xmatrix.o: $(UTILS_SRC)/yarandom.h
+xmatrix.o: $(UTILS_SRC)/usleep.h
+xmatrix.o: $(UTILS_SRC)/resources.h
+xmatrix.o: $(UTILS_SRC)/hsv.h
+xmatrix.o: $(UTILS_SRC)/colors.h
+xmatrix.o: $(UTILS_SRC)/grabscreen.h
+xmatrix.o: $(UTILS_SRC)/visual.h
+xmatrix.o: $(srcdir)/images/matrix.xpm
+xmatrix.o: $(srcdir)/images/matrix.xbm