# hacks/glx/Makefile.in --- xscreensaver, Copyright (c) 1999-2005
#  by Jamie Zawinski.
# the `../../configure' script generates `hacks/glx/Makefile' from this file.


.SUFFIXES:
.SUFFIXES: .c .o

srcdir		= .

top_srcdir	= ../..
top_builddir	= ..

install_prefix	=
prefix		= /usr/local
exec_prefix	= ${prefix}
bindir		= ${exec_prefix}/bin
datarootdir     = ${prefix}/share
ddatadir		= ${datarootdir}
mandir		= ${datarootdir}/man
libexecdir	= ${exec_prefix}/libexec
mansuffix	= 6
manNdir		= $(mandir)/man$(mansuffix)

HACKDIR		= /usr/lib/xscreensaver
HACK_CONF_DIR	= /usr/share/xscreensaver/config

CC		= gcc -pedantic -Wall -Wstrict-prototypes -Wnested-externs -Wmissing-prototypes -std=c89 -U__STRICT_ANSI__
CFLAGS		= -g -O2
LDFLAGS		=  -L${exec_prefix}/lib
DEFS		= -DSTANDALONE -DUSE_GL -DHAVE_CONFIG_H
LIBS		= -lm -lXt -lXext -lX11 

DEPEND		= makedepend
DEPEND_FLAGS	= 
DEPEND_DEFINES	= 
AWK     = gawk

SHELL		= /bin/sh
INSTALL		= /usr/bin/install -c
INSTALL_PROGRAM = ${INSTALL}
INSTALL_DATA	= ${INSTALL} -m 644
INSTALL_DIRS	= ${INSTALL} -d

X_CFLAGS	= 
X_LIBS		= 
X_PRE_LIBS	=  -lSM -lICE
X_EXTRA_LIBS	= 
XMU_LIBS	= -lXmu

# 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 $(XMU_LIBS) -lXext $(X_EXTRA_LIBS) -lm
HACK_POST2	= -lGL -lGLU  -lpthread  $(HACK_POST)
HACK_LIBS	= $(HACK_PRE)                       $(HACK_POST2)
#XPM_LIBS	= $(HACK_PRE)            @XPM_LIBS@ $(HACK_POST2)
XPM_LIBS	= $(HACK_PRE)           $(HACK_POST2)
#GLE_LIBS	= $(HACK_PRE) @GLE_LIBS@ @XPM_LIBS@ $(HACK_POST2)
MINIXPM		= $(UTILS_BIN)/minixpm.o

HACK_SRC	= $(srcdir)/..
HACK_BIN	= ..
UTILS_SRC	= $(HACK_SRC)/../utils
UTILS_BIN	= $(HACK_BIN)/../utils

# see corresponding line with comment in ../Makefile.in 
#INCLUDES	= -I. -I$(srcdir) -I$(UTILS_SRC) -I$(HACK_SRC) -I../.. -I/usr/lib/gcc/x86_64-linux-gnu/4.4/include 
INCLUDES	= -I. -I$(srcdir) -I$(UTILS_SRC) -I$(HACK_SRC) -I../..  \
                   


UTIL_SRCS	= $(UTILS_SRC)/colors.c $(UTILS_SRC)/hsv.c \
		  $(UTILS_SRC)/resources.c $(UTILS_SRC)/usleep.c \
		  $(UTILS_SRC)/visual.c $(UTILS_SRC)/visual-gl.c \
		  $(UTILS_SRC)/yarandom.c $(UTILS_SRC)/xshm.c $(UTILS_SRC)/erase.c

UTIL_OBJS	= $(UTILS_SRC)/colors.o $(UTILS_SRC)/hsv.o \
		  $(UTILS_SRC)/resources.o $(UTILS_SRC)/usleep.o \
		  $(UTILS_SRC)/visual.o $(UTILS_SRC)/visual-gl.o \
		   $(UTILS_SRC)/yarandom.o $(UTILS_SRC)/xshm.o $(UTILS_SRC)/erase.o

SRCS		=  xlock-gl-utils.c fps.c xpm-ximage.c xbmread.c flyer.c \ 		  			berlinuhr.c bclockhousing.c bclocklamps.c soma.c \ 					bevelcube.c skylark.c crater4.c ejecta.c craters.c \
	clovermap.c psychedelic.c



OBJS		= xlock-gl-utils.o fps.o xpm-ximage.o xbmread.o flyer.o \
		   berlinuhr.o bclockhousing.o bclocklamps.o soma.o \
		   bevelcube.o skylark.o crater4.o ejecta.o craters.o \
		  clovermap.o psychedelic.o


GL_EXES		=  flyer berlinuhr soma skylark craters psychedelic
#GLE_EXES	= extrusion
#GL_UTIL_EXES	= xscreensaver-gl-helper
HACK_EXES	= $(GL_EXES) # @GLE_EXES@
#XSHM_OBJS	= $(UTILS_BIN)/xshm.o
#GRAB_OBJS	= $(UTILS_BIN)/grabclient.o grab-ximage.o $(XSHM_OBJS)
#EXES		= $(GL_UTIL_EXES) $(HACK_EXES)
EXES		= $(HACK_EXES)

HACK_OBJS	= $(HACK_BIN)/screenhack.o \
          xlockmore-gl.o xlock-gl-utils.o fps.o \
		  $(UTILS_BIN)/resources.o $(UTILS_BIN)/visual.o \
		  $(UTILS_BIN)/visual-gl.o $(UTILS_BIN)/usleep.o \
		  $(UTILS_BIN)/yarandom.o $(UTILS_BIN)/hsv.o \
		  $(UTILS_BIN)/colors.o xbmread.o $(UTILS_BIN)/erase.o


HDRS		=  xpm-ximage.h xbmread.h bclockconnector.h bclockhousing.h \ 					bclocklamps.h bclocklightbank.h bevelcube.h flipguide.h \ 					somafigures.h boomerangs.h crater4.h ejecta.h  \
			 clovermap.h

GL_MEN		= flyer.man berlinuhr.man soma.man skylark.man craters.man \
                                   psychedelic.man
MEN		= $(GL_MEN)
EXTRAS		= README Makefile.in

TARFILES	= $(SRCS) $(HDRS) $(MEN) $(EXTRAS)


default: all
all: $(EXES)

install:   install-program    install-xml   install-man
uninstall: uninstall-program  uninstall-xml uninstall-man

install-strip:
	$(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' install

# the hacks, in $HACKDIR
install-program:: $(EXES)
	@exes="$(HACK_EXES)" ;						\
	 idir="$(install_prefix)$(HACKDIR)" ;				\
	 if [ "$$exes" != "" ]; then					\
	   if [ ! -d $$idir ]; then					\
	     $(INSTALL_DIRS) $$idir ;					\
	   fi ;								\
	   for program in $$exes; do					\
	     echo $(INSTALL_PROGRAM) $$program $$idir/$$program ;	\
		  $(INSTALL_PROGRAM) $$program $$idir/$$program ;	\
	   done ;							\
	 fi


# When installing man pages, we install "foo.man" as "foo.N" and update
# the .TH line in the installed file with one like
#
#     .TH XScreenSaver N "V.VV (DD-MMM-YYYY)" "X Version 11"
#
# where N is the manual section suffix.
#
install-man: $(MEN)
	@men="$(MEN)" ;							\
	U=$(UTILS_SRC)/version.h ;					\
	V=`sed -n 's/.*xtrascreenhacks \([0-9]\.[^)]*)\).*/\1/p' < $$U` ;		\
	T=/tmp/xs$$$$.$(mansuffix) ;					\
	TH=".TH XtraScreenHacks $(mansuffix) \"$$V\" \"X Version 11\"" ;	\
	echo "installing man pages: $$TH" ;				\
									\
	if [ ! -d $(install_prefix)$(manNdir) ]; then			\
	  $(INSTALL_DIRS) $(install_prefix)$(manNdir) ;			\
	 fi ;								\
									\
	for man in $$men; do						\
	  instname=`echo $$man | sed 's/\.man$$/\.$(mansuffix)/'` ;	\
	  manbase=`echo $$man | sed 's/\.man$$//'` ;    \
#	  TH=".TH $$manbase $(mansuffix) \"$$V\" \"X Version 11\" \"XScreenSaver manual\"" ;   \
#	  TH=".TH $$manbase $(mansuffix) \"$$V\" \"X Version 11\" \"XtraScreenHacks manual\"" ;   \
	  sed -e "s/^\.TH.*/$$TH/"					\
	      -e 's@(MANSUFFIX)@($(mansuffix))@g'			\
	    < $(srcdir)/$$man > $$T ;					\
	  echo $(INSTALL_DATA) $(srcdir)/$$man				\
	   $(install_prefix)$(manNdir)/$$instname ;			\
	  $(INSTALL_DATA) $$T						\
	    $(install_prefix)$(manNdir)/$$instname ;			\
	done ;								\
	rm -f $$T

install-xml:
	@dest=$(install_prefix)$(HACK_CONF_DIR) ;			\
	 if [ ! -d $$dest ]; then					\
	   $(INSTALL_DIRS) $$dest ;					\
	 fi ;								\
	 src=$(srcdir)/../config ;					\
	 for file in $(EXES) $(SCRIPTS) ; do				\
	   if [ -f $$src/$$file.xml ]; then				\
	     echo $(INSTALL_DATA) $$src/$$file.xml $$dest/$$file.xml ;	\
	          $(INSTALL_DATA) $$src/$$file.xml $$dest/$$file.xml ;	\
	   fi ;								\
	done

# the hacks, in $HACKDIR
uninstall-program::
	@exes="$(HACK_EXES)" ;						\
	 idir="$(install_prefix)$(HACKDIR)" ;				\
	 for program in $$exes; do					\
	   echo rm -f $$idir/$$program ;				\
		rm -f $$idir/$$program ;				\
	 done


uninstall-man:
	@men="$(MEN)" ;							\
	for man in $$men; do						\
	  instname=`echo $$man | sed 's/\.man$$/\.$(mansuffix)/'` ;	\
	  echo rm -f $(install_prefix)$(manNdir)/$$instname* ;		\
	       rm -f $(install_prefix)$(manNdir)/$$instname* ;		\
	done

uninstall-xml:
	@dest=$(install_prefix)$(HACK_CONF_DIR) ;			\
	 for file in $(EXES) $(SCRIPTS) ; do				\
	     echo rm -f $$dest/$$file.xml ;				\
	          rm -f $$dest/$$file.xml ;				\
	done

clean:
	-rm -f *.o a.out core $(EXES)

distclean: clean
	-rm -f Makefile *.gch TAGS *~ "#"*

# Adds all current dependencies to Makefile
depend:
	$(DEPEND) -s '# DO NOT DELETE: updated by make depend'		    \
	$(DEPEND_FLAGS) --						    \
	$(INCLUDES) $(DEFS) $(DEPEND_DEFINES) $(CFLAGS) $(X_CFLAGS) --	    \
	$(SRCS)

# Adds some dependencies to Makefile.in -- not totally accurate, but pretty
# close.  This excludes dependencies on files in /usr/include, etc.  It tries
# to include only dependencies on files which are themselves a part of this
# package.
distdepend::
	@echo updating dependencies in `pwd`/Makefile.in... ;		    \
	$(DEPEND) -w 0 -f - 						    \
	-s '# DO NOT DELETE: updated by make distdepend' $(DEPEND_FLAGS) -- \
	$(INCLUDES) $(DEFS) $(DEPEND_DEFINES) $(CFLAGS) $(X_CFLAGS) --	    \
	$(SRCS) 2>/dev/null |						    \
	sort -d |							    \
	(								    \
	  $(AWK) '/^# .*Makefile.in ---/,/^# DO .*distdepend/' < Makefile.in ; \
	  sed -e '/^#.*/d'						    \
	      -e 's@ \./@ @g;s@ /[^ ]*@@g;/^.*:$$/d'			    \
	      -e 's@\.\./\.\./utils@$$(UTILS_SRC)@g'			    \
	      -e 's@\.\./glx/@@g'					    \
	      -e 's@ \.\./@ $$(HACK_SRC)/@g'				    \
	      -e 's@ \([^$$]\)@ $$(srcdir)/\1@g'			    \
	      -e 's@ $$(srcdir)/\(.*config.h\)@ \1@g'			    \
	      -e 's@ $$(HACK_SRC)/\(.*config.h\)@ ../\1@g' ;		    \
	  echo ''							    \
	) > /tmp/distdepend.$$$$ &&					    \
	mv Makefile.in Makefile.in.bak &&				    \
	mv /tmp/distdepend.$$$$ Makefile.in


TAGS: tags
tags:
	find $(srcdir) -name '*.[chly]' -print | xargs etags -a

echo_tarfiles:
	@echo $(TARFILES)

check_men:
	@badmen="" ;							\
	 for exe in $(EXES); do						\
	   if ! [ -f $(srcdir)/$$exe.man ]; then			\
	     badmen="$$badmen $$exe" ;					\
	   fi ;								\
	 done ;								\
	 if [ -n "$$badmen" ]; then					\
	   echo "" ;							\
	   echo "Warning: The following programs have no manuals:" ;	\
	   echo "" ;							\
	   for m in $$badmen ; do					\
	     echo "    $$m" ;						\
	   done ;							\
	 fi

check_xml:
	@badxml="" ;							\
	 for exe in $(EXES); do						\
	   if ! [ -f $(srcdir)/../config/$$exe.xml -o			\
		  "$$exe" = xscreensaver-gl-helper ]; then		\
	     badxml="$$badxml $$exe" ;					\
	   fi ;								\
	 done ;								\
	 if [ -n "$$badxml" ]; then					\
	   echo "" ;							\
	   echo "Warning: The following programs have no configurators:" ; \
	   echo "" ;							\
	   for m in $$badxml ; do					\
	     echo "    $$m" ;						\
	   done ;							\
	   echo "" ;							\
	 fi

distdepend:: check_men check_xml




# Rules for noticing when the objects from the utils directory are out of
# date with respect to their sources, and going and building them according
# to the rules in their own Makefile...
#
$(UTILS_BIN)/colors.o:		$(UTILS_SRC)/colors.c
$(UTILS_BIN)/grabclient.o:	$(UTILS_SRC)/grabclient.c
$(UTILS_BIN)/hsv.o:		$(UTILS_SRC)/hsv.c
$(UTILS_BIN)/resources.o:	$(UTILS_SRC)/resources.c
$(UTILS_BIN)/usleep.o:		$(UTILS_SRC)/usleep.c
$(UTILS_BIN)/visual.o:		$(UTILS_SRC)/visual.c
$(UTILS_BIN)/visual-gl.o:	$(UTILS_SRC)/visual-gl.c
$(UTILS_BIN)/yarandom.o:	$(UTILS_SRC)/yarandom.c
$(UTILS_BIN)/xshm.o:		$(UTILS_SRC)/xshm.c

$(UTIL_OBJS):
	cd $(UTILS_BIN) ; \
	$(MAKE) $(@F) CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)"

$(HACK_BIN)/xlockmore.o: $(HACK_SRC)/xlockmore.c
	cd $(HACK_BIN)  ; $(MAKE) $(@F) CC="$(CC)" CFLAGS="$(CFLAGS)"



# How we build object files in this directory.
.c.o:
	$(CC) -c $(INCLUDES) $(DEFS) $(CFLAGS) $(X_CFLAGS) $<


# How to build the "xscreensaver-gl-helper" program, that lets the daemon
# know which visual is the right one for GL programs.
#
#HELPER_OBJS = xscreensaver-gl-helper.o $(UTILS_BIN)/visual-gl.o \
#	      $(UTILS_BIN)/visual.o $(UTILS_BIN)/resources.o
#xscreensaver-gl-helper: $(HELPER_OBJS)
#	$(CC) $(LDFLAGS) -o $@ $(HELPER_OBJS) $(LIBS) $(X_LIBS) $(HACK_POST2)


# These hacks use a slightly-differently-compiled variant of xlockmore.c.
# This is how to make the the other .o file from it.
#
XLM_CFLAGS=-DUSE_GL $(INCLUDES) $(DEFS) $(CFLAGS) $(X_CFLAGS)
xlockmore-gl.o: $(HACK_SRC)/xlockmore.c
	$(CC) -o $@ -c $(XLM_CFLAGS) $(HACK_SRC)/xlockmore.c

CC_HACK		= $(CC) $(LDFLAGS)

#blocktube:	blocktube.o	xpm-ximage.o $(HACK_OBJS)
#	$(CC_HACK) -o $@ $@.o	xpm-ximage.o $(HACK_OBJS) $(XPM_LIBS)


flyer:	flyer.o	 $(HACK_OBJS)
	$(CC_HACK) -o $@ $@.o  $(HACK_OBJS)  $(XPM_LIBS)


berlinuhr: berlinuhr.o bclockhousing.o bclocklamps.o $(HACK_OBJS)
	$(CC_HACK) -o $@ $@.o bclockhousing.o bclocklamps.o $(HACK_OBJS) $(XPM_LIBS)

soma: soma.o bevelcube.o $(HACK_OBJS)
	$(CC_HACK) -o $@ $@.o bevelcube.o $(HACK_OBJS) $(XPM_LIBS)

skylark: skylark.o $(HACK_OBJS)
	$(CC_HACK) -o $@ $@.o  $(HACK_OBJS)  $(XPM_LIBS)

craters: craters.o crater4.o ejecta.o $(HACK_OBJS)
	$(CC_HACK) -o $@ $@.o crater4.o ejecta.o $(HACK_OBJS) $(XPM_LIBS)

psychedelic: psychedelic.o  clovermap.o  $(HACK_OBJS)
	$(CC_HACK) -o $@ $@.o clovermap.o  $(HACK_OBJS) $(XPM_LIBS)





##############################################################################
#
# DO NOT DELETE: updated by make distdepend

bclockhousing.o: $(srcdir)/bclockconnector.h
bclockhousing.o: $(srcdir)/bclockhousing.h
bclockhousing.o: $(srcdir)/bclocklightbank.h
bclocklamps.o: $(srcdir)/bclocklamps.h
berlinuhr.o: $(srcdir)/bclockhousing.h
berlinuhr.o: $(srcdir)/bclocklamps.h
berlinuhr.o: ../../config.h
berlinuhr.o: $(HACK_SRC)/screenhackI.h
berlinuhr.o: $(UTILS_SRC)/colors.h
berlinuhr.o: $(UTILS_SRC)/grabscreen.h
berlinuhr.o: $(UTILS_SRC)/hsv.h
berlinuhr.o: $(UTILS_SRC)/resources.h
berlinuhr.o: $(UTILS_SRC)/usleep.h
berlinuhr.o: $(UTILS_SRC)/visual.h
berlinuhr.o: $(UTILS_SRC)/xshm.h
berlinuhr.o: $(UTILS_SRC)/yarandom.h
berlinuhr.o: $(HACK_SRC)/xlockmore.h
berlinuhr.o: $(HACK_SRC)/xlockmoreI.h
bevelcube.o: $(srcdir)/bevelcube.h
clovermap.o: $(srcdir)/clovermap.h
crater4.o: $(srcdir)/crater4.h
craters.o: ../../config.h
craters.o: $(srcdir)/crater4.h
craters.o: $(srcdir)/ejecta.h
craters.o: $(HACK_SRC)/screenhackI.h
craters.o: $(UTILS_SRC)/colors.h
craters.o: $(UTILS_SRC)/erase.h
craters.o: $(UTILS_SRC)/grabscreen.h
craters.o: $(UTILS_SRC)/hsv.h
craters.o: $(UTILS_SRC)/resources.h
craters.o: $(UTILS_SRC)/usleep.h
craters.o: $(UTILS_SRC)/visual.h
craters.o: $(UTILS_SRC)/xshm.h
craters.o: $(UTILS_SRC)/yarandom.h
craters.o: $(HACK_SRC)/xlockmore.h
craters.o: $(HACK_SRC)/xlockmoreI.h
ejecta.o: $(srcdir)/ejecta.h
ejecta.o: $(UTILS_SRC)/yarandom.h
flyer.o: ../../config.h
flyer.o: $(HACK_SRC)/images/xlogo64
flyer.o: $(HACK_SRC)/screenhackI.h
flyer.o: $(UTILS_SRC)/colors.h
flyer.o: $(UTILS_SRC)/grabscreen.h
flyer.o: $(UTILS_SRC)/hsv.h
flyer.o: $(UTILS_SRC)/resources.h
flyer.o: $(UTILS_SRC)/usleep.h
flyer.o: $(UTILS_SRC)/visual.h
flyer.o: $(UTILS_SRC)/xshm.h
flyer.o: $(UTILS_SRC)/yarandom.h
flyer.o: $(srcdir)/xbmread.h
flyer.o: $(HACK_SRC)/xlockmore.h
flyer.o: $(HACK_SRC)/xlockmoreI.h
fps.o: ../../config.h
fps.o: $(HACK_SRC)/screenhackI.h
fps.o: $(UTILS_SRC)/colors.h
fps.o: $(UTILS_SRC)/grabscreen.h
fps.o: $(UTILS_SRC)/hsv.h
fps.o: $(UTILS_SRC)/resources.h
fps.o: $(UTILS_SRC)/usleep.h
fps.o: $(UTILS_SRC)/visual.h
fps.o: $(UTILS_SRC)/xshm.h
fps.o: $(UTILS_SRC)/yarandom.h
fps.o: $(HACK_SRC)/xlockmoreI.h
psychedelic.o: $(srcdir)/clovermap.h
psychedelic.o: ../../config.h
psychedelic.o: $(HACK_SRC)/screenhackI.h
psychedelic.o: $(UTILS_SRC)/colors.h
psychedelic.o: $(UTILS_SRC)/grabscreen.h
psychedelic.o: $(UTILS_SRC)/hsv.h
psychedelic.o: $(UTILS_SRC)/resources.h
psychedelic.o: $(UTILS_SRC)/usleep.h
psychedelic.o: $(UTILS_SRC)/visual.h
psychedelic.o: $(UTILS_SRC)/xshm.h
psychedelic.o: $(UTILS_SRC)/yarandom.h
psychedelic.o: $(HACK_SRC)/xlockmore.h
psychedelic.o: $(HACK_SRC)/xlockmoreI.h
skylark.o: $(srcdir)/boomerangs.h
skylark.o: ../../config.h
skylark.o: $(HACK_SRC)/screenhackI.h
skylark.o: $(UTILS_SRC)/colors.h
skylark.o: $(UTILS_SRC)/grabscreen.h
skylark.o: $(UTILS_SRC)/hsv.h
skylark.o: $(UTILS_SRC)/resources.h
skylark.o: $(UTILS_SRC)/usleep.h
skylark.o: $(UTILS_SRC)/visual.h
skylark.o: $(UTILS_SRC)/xshm.h
skylark.o: $(UTILS_SRC)/yarandom.h
skylark.o: $(HACK_SRC)/xlockmore.h
skylark.o: $(HACK_SRC)/xlockmoreI.h
soma.o: $(srcdir)/bevelcube.h
soma.o: ../../config.h
soma.o: $(srcdir)/flipguide.h
soma.o: $(HACK_SRC)/screenhackI.h
soma.o: $(srcdir)/somafigures.h
soma.o: $(UTILS_SRC)/colors.h
soma.o: $(UTILS_SRC)/grabscreen.h
soma.o: $(UTILS_SRC)/hsv.h
soma.o: $(UTILS_SRC)/resources.h
soma.o: $(UTILS_SRC)/usleep.h
soma.o: $(UTILS_SRC)/visual.h
soma.o: $(UTILS_SRC)/xshm.h
soma.o: $(UTILS_SRC)/yarandom.h
soma.o: $(HACK_SRC)/xlockmore.h
soma.o: $(HACK_SRC)/xlockmoreI.h
xbmread.o: $(srcdir)/xbmread.h
xlock-gl-utils.o: ../../config.h
xlock-gl-utils.o: $(HACK_SRC)/screenhackI.h
xlock-gl-utils.o: $(UTILS_SRC)/colors.h
xlock-gl-utils.o: $(UTILS_SRC)/grabscreen.h
xlock-gl-utils.o: $(UTILS_SRC)/hsv.h
xlock-gl-utils.o: $(UTILS_SRC)/resources.h
xlock-gl-utils.o: $(UTILS_SRC)/usleep.h
xlock-gl-utils.o: $(UTILS_SRC)/visual.h
xlock-gl-utils.o: $(UTILS_SRC)/xshm.h
xlock-gl-utils.o: $(UTILS_SRC)/yarandom.h
xlock-gl-utils.o: $(HACK_SRC)/xlockmoreI.h
xpm-ximage.o: ../../config.h
xpm-ximage.o: $(UTILS_SRC)/minixpm.h
xpm-ximage.o: $(srcdir)/xpm-ximage.h

