# Makefile for puzzles under X/GTK and Unix.
#
# This file was created by `mkfiles.pl' from the `Recipe' file.
# DO NOT EDIT THIS FILE DIRECTLY; edit Recipe or mkfiles.pl instead.

# You can define this path to point at your tools if you need to
# TOOLPATH = /opt/gcc/bin
CC = $(TOOLPATH)cc
# You can manually set this to `gtk-config' or `pkg-config gtk+-1.2'
# (depending on what works on your system) if you want to enforce
# building with GTK 1.2, or you can set it to `pkg-config gtk+-2.0'
# if you want to enforce 2.0. The default is to try 2.0 and fall back
# to 1.2 if it isn't found.
GTK_CONFIG = sh -c 'pkg-config gtk+-2.0 $$0 2>/dev/null || gtk-config $$0'

CFLAGS = -O2 -Wall -Werror -g -I./ `$(GTK_CONFIG) --cflags`
XLDFLAGS = `$(GTK_CONFIG) --libs`
ULDFLAGS =#
INSTALL=install
INSTALL_PROGRAM=$(INSTALL)
INSTALL_DATA=$(INSTALL)
prefix=/usr/local
exec_prefix=$(prefix)
bindir=$(exec_prefix)/bin
gamesdir=$(exec_prefix)/games
mandir=$(prefix)/man
man1dir=$(mandir)/man1

all: blackbox bridges cube dominosa fifteen flip guess inertia lightup \
		lightupsolver loopy map mapsolver mineobfusc mines net \
		netslide nullgame pattern patternsolver pegs rect samegame \
		sixteen slant slantsolver solo solosolver tents tentssolver \
		twiddle untangle

blackbox: blackbox.o drawing.o gtk.o malloc.o midend.o misc.o printing.o \
		ps.o random.o version.o
	$(CC) $(XLDFLAGS) -o $@ blackbox.o drawing.o gtk.o malloc.o midend.o \
		misc.o printing.o ps.o random.o version.o 

bridges: bridges.o drawing.o dsf.o gtk.o malloc.o midend.o misc.o printing.o \
		ps.o random.o version.o
	$(CC) $(XLDFLAGS) -o $@ bridges.o drawing.o dsf.o gtk.o malloc.o \
		midend.o misc.o printing.o ps.o random.o version.o 

cube: cube.o drawing.o gtk.o malloc.o midend.o misc.o printing.o ps.o \
		random.o version.o
	$(CC) $(XLDFLAGS) -o $@ cube.o drawing.o gtk.o malloc.o midend.o \
		misc.o printing.o ps.o random.o version.o 

dominosa: dominosa.o drawing.o gtk.o malloc.o midend.o misc.o printing.o \
		ps.o random.o version.o
	$(CC) $(XLDFLAGS) -o $@ dominosa.o drawing.o gtk.o malloc.o midend.o \
		misc.o printing.o ps.o random.o version.o 

fifteen: drawing.o fifteen.o gtk.o malloc.o midend.o misc.o printing.o ps.o \
		random.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o fifteen.o gtk.o malloc.o midend.o \
		misc.o printing.o ps.o random.o version.o 

flip: drawing.o flip.o gtk.o malloc.o midend.o misc.o printing.o ps.o \
		random.o tree234.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o flip.o gtk.o malloc.o midend.o \
		misc.o printing.o ps.o random.o tree234.o version.o 

guess: drawing.o gtk.o guess.o malloc.o midend.o misc.o printing.o ps.o \
		random.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o gtk.o guess.o malloc.o midend.o \
		misc.o printing.o ps.o random.o version.o 

inertia: drawing.o gtk.o inertia.o malloc.o midend.o misc.o printing.o ps.o \
		random.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o gtk.o inertia.o malloc.o midend.o \
		misc.o printing.o ps.o random.o version.o 

lightup: combi.o drawing.o gtk.o lightup.o malloc.o midend.o misc.o \
		printing.o ps.o random.o version.o
	$(CC) $(XLDFLAGS) -o $@ combi.o drawing.o gtk.o lightup.o malloc.o \
		midend.o misc.o printing.o ps.o random.o version.o 

lightupsolver: combi.o lightup2.o malloc.o misc.o nullfe.o random.o
	$(CC) $(ULDFLAGS) -o $@ combi.o lightup2.o malloc.o misc.o nullfe.o \
		random.o 

loopy: drawing.o dsf.o gtk.o loopy.o malloc.o midend.o misc.o printing.o \
		ps.o random.o tree234.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o gtk.o loopy.o malloc.o \
		midend.o misc.o printing.o ps.o random.o tree234.o version.o \
		

map: drawing.o dsf.o gtk.o malloc.o map.o midend.o misc.o printing.o ps.o \
		random.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o gtk.o malloc.o map.o \
		midend.o misc.o printing.o ps.o random.o version.o 

mapsolver: dsf.o malloc.o map2.o misc.o nullfe.o random.o
	$(CC) $(ULDFLAGS) -o $@ dsf.o malloc.o map2.o misc.o nullfe.o \
		random.o -lm

mineobfusc: malloc.o mines2.o misc.o nullfe.o random.o tree234.o
	$(CC) $(ULDFLAGS) -o $@ malloc.o mines2.o misc.o nullfe.o random.o \
		tree234.o 

mines: drawing.o gtk.o malloc.o midend.o mines.o misc.o printing.o ps.o \
		random.o tree234.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o gtk.o malloc.o midend.o mines.o \
		misc.o printing.o ps.o random.o tree234.o version.o 

net: drawing.o dsf.o gtk.o malloc.o midend.o misc.o net.o printing.o ps.o \
		random.o tree234.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o gtk.o malloc.o midend.o \
		misc.o net.o printing.o ps.o random.o tree234.o version.o 

netslide: drawing.o gtk.o malloc.o midend.o misc.o netslide.o printing.o \
		ps.o random.o tree234.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o gtk.o malloc.o midend.o misc.o \
		netslide.o printing.o ps.o random.o tree234.o version.o 

nullgame: drawing.o gtk.o malloc.o midend.o misc.o nullgame.o printing.o \
		ps.o random.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o gtk.o malloc.o midend.o misc.o \
		nullgame.o printing.o ps.o random.o version.o 

pattern: drawing.o gtk.o malloc.o midend.o misc.o pattern.o printing.o ps.o \
		random.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o gtk.o malloc.o midend.o misc.o \
		pattern.o printing.o ps.o random.o version.o 

patternsolver: malloc.o misc.o nullfe.o pattern2.o random.o
	$(CC) $(ULDFLAGS) -o $@ malloc.o misc.o nullfe.o pattern2.o random.o \
		

pegs: drawing.o gtk.o malloc.o midend.o misc.o pegs.o printing.o ps.o \
		random.o tree234.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o gtk.o malloc.o midend.o misc.o \
		pegs.o printing.o ps.o random.o tree234.o version.o 

rect: drawing.o gtk.o malloc.o midend.o misc.o printing.o ps.o random.o \
		rect.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o gtk.o malloc.o midend.o misc.o \
		printing.o ps.o random.o rect.o version.o 

samegame: drawing.o gtk.o malloc.o midend.o misc.o printing.o ps.o random.o \
		samegame.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o gtk.o malloc.o midend.o misc.o \
		printing.o ps.o random.o samegame.o version.o 

sixteen: drawing.o gtk.o malloc.o midend.o misc.o printing.o ps.o random.o \
		sixteen.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o gtk.o malloc.o midend.o misc.o \
		printing.o ps.o random.o sixteen.o version.o 

slant: drawing.o dsf.o gtk.o malloc.o midend.o misc.o printing.o ps.o \
		random.o slant.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o gtk.o malloc.o midend.o \
		misc.o printing.o ps.o random.o slant.o version.o 

slantsolver: dsf.o malloc.o misc.o nullfe.o random.o slant2.o
	$(CC) $(ULDFLAGS) -o $@ dsf.o malloc.o misc.o nullfe.o random.o \
		slant2.o 

solo: drawing.o gtk.o malloc.o midend.o misc.o printing.o ps.o random.o \
		solo.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o gtk.o malloc.o midend.o misc.o \
		printing.o ps.o random.o solo.o version.o 

solosolver: malloc.o misc.o nullfe.o random.o solo2.o
	$(CC) $(ULDFLAGS) -o $@ malloc.o misc.o nullfe.o random.o solo2.o 

tents: drawing.o gtk.o malloc.o maxflow.o midend.o misc.o printing.o ps.o \
		random.o tents.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o gtk.o malloc.o maxflow.o midend.o \
		misc.o printing.o ps.o random.o tents.o version.o 

tentssolver: malloc.o maxflow.o misc.o nullfe.o random.o tents2.o
	$(CC) $(ULDFLAGS) -o $@ malloc.o maxflow.o misc.o nullfe.o random.o \
		tents2.o 

twiddle: drawing.o gtk.o malloc.o midend.o misc.o printing.o ps.o random.o \
		twiddle.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o gtk.o malloc.o midend.o misc.o \
		printing.o ps.o random.o twiddle.o version.o 

untangle: drawing.o gtk.o malloc.o midend.o misc.o printing.o ps.o random.o \
		tree234.o untangle.o version.o
	$(CC) $(XLDFLAGS) -o $@ drawing.o gtk.o malloc.o midend.o misc.o \
		printing.o ps.o random.o tree234.o untangle.o version.o 

blackbox.o: ./blackbox.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
bridges.o: ./bridges.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
combi.o: ./combi.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
cube.o: ./cube.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
dominosa.o: ./dominosa.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
drawing.o: ./drawing.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
dsf.o: ./dsf.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
fifteen.o: ./fifteen.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
flip.o: ./flip.c ./puzzles.h ./tree234.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
gtk.o: ./gtk.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
guess.o: ./guess.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
inertia.o: ./inertia.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
lightup.o: ./lightup.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
lightup2.o: ./lightup.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
list.o: ./list.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
loopy.o: ./loopy.c ./puzzles.h ./tree234.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
malloc.o: ./malloc.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
map.o: ./map.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
map2.o: ./map.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
maxflow.o: ./maxflow.c ./maxflow.h ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
midend.o: ./midend.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
mines.o: ./mines.c ./tree234.h ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
mines2.o: ./mines.c ./tree234.h ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_OBFUSCATOR -c $< -o $@
misc.o: ./misc.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
net.o: ./net.c ./puzzles.h ./tree234.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
netslide.o: ./netslide.c ./puzzles.h ./tree234.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
nullfe.o: ./nullfe.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
nullgame.o: ./nullgame.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
osx.o: ./osx.m ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
pattern.o: ./pattern.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
pattern2.o: ./pattern.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
pegs.o: ./pegs.c ./puzzles.h ./tree234.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
printing.o: ./printing.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
ps.o: ./ps.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
random.o: ./random.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
rect.o: ./rect.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
samegame.o: ./samegame.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
sixteen.o: ./sixteen.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
slant.o: ./slant.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
slant2.o: ./slant.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
solo.o: ./solo.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
solo2.o: ./solo.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
tents.o: ./tents.c ./puzzles.h ./maxflow.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
tents2.o: ./tents.c ./puzzles.h ./maxflow.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
tree234.o: ./tree234.c ./tree234.h ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
twiddle.o: ./twiddle.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
untangle.o: ./untangle.c ./puzzles.h ./tree234.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
windows.o: ./windows.c ./puzzles.h
	$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@

version.o: FORCE;
FORCE:
	if test -z "$(VER)" && test -f manifest && md5sum -c manifest; then \
		$(CC) $(COMPAT) $(XFLAGS) $(CFLAGS) `cat version.def` -c version.c; \
	elif test -z "$(VER)" && test -d .svn && svnversion . >&/dev/null; then \
		$(CC) $(COMPAT) $(XFLAGS) $(CFLAGS) "-DREVISION=`svnversion .`" -c version.c; \
	else \
		$(CC) $(COMPAT) $(XFLAGS) $(CFLAGS) $(VER) -c version.c; \
	fi
install:
	for i in cube net netslide fifteen sixteen twiddle \
	         pattern rect solo mines samegame flip guess \
		 pegs dominosa untangle blackbox slant lightup \
		 map loopy inertia tents bridges; do \
		$(INSTALL_PROGRAM) -m 755 $$i $(DESTDIR)$(gamesdir)/$$i \
		|| exit 1; \
	done

clean:
	rm -f *.o blackbox bridges cube dominosa fifteen flip guess inertia lightup lightupsolver loopy map mapsolver mineobfusc mines net netslide nullgame pattern patternsolver pegs rect samegame sixteen slant slantsolver solo solosolver tents tentssolver twiddle untangle
