CC=		gcc -Wall
CFLAGS=		-g
#TOOLKIT=	gdk-pixbuf-config
TOOLKIT=	pkg-config gtk+-2.0
ALL_CFLAGS=	$(CFLAGS) `$(TOOLKIT) --cflags`
LIBS=		`$(TOOLKIT) --libs`

TARGET=		mindless
OBJS=		mindless.o deck.o zone.o playarea.o cardbase.o newgame.o \
		game.o kplayer.o opponent.o dialogs.o prefs.o fgetline.o \
		cardart.o proto-appr.o encrypt.o http_fetcher.o random.o \
		viewcard.o expansions.o sealed.o images.o

ICONS=		ICONS/lifeset.svg ICONS/ping.svg ICONS/hand.svg \
		ICONS/deck.svg ICONS/graveyard.svg ICONS/removed.svg \
		ICONS/coin.svg ICONS/die.svg \
		ICONS/phaseuntap.svg ICONS/phaseupkeep.svg \
		ICONS/phasedraw.svg ICONS/phasemain.svg \
		ICONS/phasecombat.svg ICONS/phasecleanup.svg

all:		$(TARGET)

$(TARGET):	$(OBJS)
		$(CC) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)

.c.o:
		$(CC) $(ALL_CFLAGS) -c $<

clean:
		rm -f $(TARGET) *.o *~ _images.c

_images.c:	$(ICONS)
		gdk-pixbuf-csource --raw --build-list \
		lifeset_image ICONS/lifeset.svg \
		ping_image ICONS/ping.svg \
		hand_image ICONS/hand.svg \
		deck_image ICONS/deck.svg \
		graveyard_image ICONS/graveyard.svg \
		removed_image ICONS/removed.svg \
		coin_image ICONS/coin.svg \
		die_image ICONS/die.svg \
		phaseuntap_image ICONS/phaseuntap.svg \
		phaseupkeep_image ICONS/phaseupkeep.svg \
		phasedraw_image ICONS/phasedraw.svg \
		phasemain_image ICONS/phasemain.svg \
		phasecombat_image ICONS/phasecombat.svg \
		phasecleanup_image ICONS/phasecleanup.svg \
		> $@

mindless.o:	mindless.c game.h playarea.h zone.h opponent.h dialogs.h \
		deck.h random.h version.h images.h
deck.o:		deck.c deck.h cardbase.h
zone.o:		zone.c deck.h zone.h game.h playarea.h opponent.h random.h \
		dialogs.h
playarea.o:	playarea.c playarea.h game.h cardbase.h deck.h opponent.h \
		dialogs.h zone.h prefs.h cardart.h
cardbase.o:	cardbase.c cardbase.h cardart.h
newgame.o:	newgame.c deck.h zone.h playarea.h cardbase.h game.h \
		opponent.h prefs.h dialogs.h sealed.h
game.o:		game.c game.h cardbase.h zone.h deck.h playarea.h opponent.h \
		prefs.h cardart.h expansions.h dialogs.h
kplayer.o:	kplayer.c kplayer.h game.h zone.h deck.h dialogs.h
opponent.o:	opponent.c game.h playarea.h opponent.h
dialogs.o:	dialogs.c game.h dialogs.h opponent.h zone.h deck.h \
		cardbase.h playarea.h cardart.h prefs.h viewcard.h
cardart.o:	cardart.c prefs.h cardbase.h cardart.h http_fetcher.h
proto-appr.o:	proto-appr.c game.h playarea.h opponent.h deck.h cardbase.h \
		zone.h dialogs.h encrypt.h
encrypt.o:	encrypt.c encrypt.h
http_fetcher.o:	http_fetcher.c http_fetcher.h
random.o:	random.c random.h
viewcard.o:	viewcard.c cardbase.h cardart.h viewcard.h
expansions.o:	expansions.c cardbase.h expansions.h
sealed.o:	sealed.c game.h deck.h dialogs.h cardbase.h expansions.h \
		sealed.h random.h newgame.h
images.o:	images.c _images.c images.h
