#############################################################################
# Makefile for building qthello
# Generated by tmake at 12:26, 2000/08/06
#     Project: QtHello
#    Template: app
#############################################################################

####### Compiler, tools and options

CC	=	gcc
CXX	=	g++
CFLAGS	=	-pipe -Wall -W -g
CXXFLAGS=	-pipe -Wall -W -g
INCPATH	=	-I$(QTDIR)/include
LINK	=	g++
LFLAGS	=	
LIBS	=	-L$(QTDIR)/lib -L/usr/X11R6/lib -lqt -lXext -lX11 -lm
MOC	=	$(QTDIR)/bin/moc

TAR	=	tar -cf
GZIP	=	gzip -9f

####### Files

HEADERS =	piece.hpp \
		matrix.hpp \
		exception.hpp \
		player.hpp \
		board.hpp \
		boardwidget.hpp \
		othello.hpp \
		brain.hpp \
		humanbrain.hpp \
		computerbrain.hpp \
		randomcomputer.hpp \
		playerinfo.hpp \
		humanconfig.hpp \
		firstbestcomputer.hpp \
		computerconfig.hpp \
		playerprofile.hpp \
		playerlist.hpp \
		weights.hpp \
		alphabetanormalcomputer.hpp \
		alphabetaevalcomputer.hpp \
		alphabetadyncomputer.hpp \
		alphabetacomputer.hpp
SOURCES =	main.cpp \
		piece.cpp \
		matrix.cpp \
		player.cpp \
		board.cpp \
		boardwidget.cpp \
		othello.cpp \
		brain.cpp \
		humanbrain.cpp \
		computerbrain.cpp \
		randomcomputer.cpp \
		playerinfo.cpp \
		humanconfig.cpp \
		firstbestcomputer.cpp \
		computerconfig.cpp \
		playerprofile.cpp \
		playerlist.cpp \
		alphabetanormalcomputer.cpp \
		alphabetaevalcomputer.cpp \
		alphabetadyncomputer.cpp \
		alphabetacomputer.cpp
OBJECTS =	obj/main.o \
		obj/piece.o \
		obj/matrix.o \
		obj/player.o \
		obj/board.o \
		obj/boardwidget.o \
		obj/othello.o \
		obj/brain.o \
		obj/humanbrain.o \
		obj/computerbrain.o \
		obj/randomcomputer.o \
		obj/playerinfo.o \
		obj/humanconfig.o \
		obj/firstbestcomputer.o \
		obj/computerconfig.o \
		obj/playerprofile.o \
		obj/playerlist.o \
		obj/alphabetanormalcomputer.o \
		obj/alphabetaevalcomputer.o \
		obj/alphabetadyncomputer.o \
		obj/alphabetacomputer.o
SRCMOC	=	moc/moc_player.cpp \
		moc/moc_board.cpp \
		moc/moc_boardwidget.cpp \
		moc/moc_othello.cpp \
		moc/moc_brain.cpp \
		moc/moc_humanbrain.cpp \
		moc/moc_computerbrain.cpp \
		moc/moc_playerinfo.cpp \
		moc/moc_computerconfig.cpp \
		moc/moc_playerprofile.cpp \
		moc/moc_playerlist.cpp
OBJMOC	=	obj/moc_player.o \
		obj/moc_board.o \
		obj/moc_boardwidget.o \
		obj/moc_othello.o \
		obj/moc_brain.o \
		obj/moc_humanbrain.o \
		obj/moc_computerbrain.o \
		obj/moc_playerinfo.o \
		obj/moc_computerconfig.o \
		obj/moc_playerprofile.o \
		obj/moc_playerlist.o
DIST	=	
TARGET	=	qthello

####### Implicit rules

.SUFFIXES: .cpp .cxx .cc .C .c

.cpp.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.cxx.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.cc.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.C.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.c.o:
	$(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<

####### Build rules

all: $(TARGET)

$(TARGET): $(OBJECTS) $(OBJMOC) 
	$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJMOC) $(LIBS)

moc: $(SRCMOC)

tmake: Makefile

Makefile: qthello.pro
	tmake qthello.pro -o Makefile

dist:
	$(TAR) QtHello.tar QtHello.pro $(SOURCES) $(HEADERS) $(DIST)
	$(GZIP) QtHello.tar

clean:
	-rm -f $(OBJECTS) $(OBJMOC) $(SRCMOC) $(TARGET)
	-rm -f *~ core

####### Compile

obj/main.o: main.cpp \
		othello.hpp \
		boardwidget.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		playerinfo.hpp \
		player.hpp \
		brain.hpp \
		playerprofile.hpp \
		playerlist.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/main.o main.cpp

obj/piece.o: piece.cpp \
		piece.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/piece.o piece.cpp

obj/matrix.o: matrix.cpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/matrix.o matrix.cpp

obj/player.o: player.cpp \
		player.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		brain.hpp \
		playerprofile.hpp \
		playerlist.hpp \
		othello.hpp \
		boardwidget.hpp \
		playerinfo.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/player.o player.cpp

obj/board.o: board.cpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		player.hpp \
		brain.hpp \
		playerprofile.hpp \
		playerlist.hpp \
		othello.hpp \
		boardwidget.hpp \
		playerinfo.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/board.o board.cpp

obj/boardwidget.o: boardwidget.cpp \
		boardwidget.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/boardwidget.o boardwidget.cpp

obj/othello.o: othello.cpp \
		othello.hpp \
		boardwidget.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		playerinfo.hpp \
		player.hpp \
		brain.hpp \
		playerprofile.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/othello.o othello.cpp

obj/brain.o: brain.cpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		playerprofile.hpp \
		player.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/brain.o brain.cpp

obj/humanbrain.o: humanbrain.cpp \
		humanbrain.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		humanconfig.hpp \
		playerprofile.hpp \
		player.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/humanbrain.o humanbrain.cpp

obj/computerbrain.o: computerbrain.cpp \
		computerbrain.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		player.hpp \
		playerprofile.hpp \
		computerconfig.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/computerbrain.o computerbrain.cpp

obj/randomcomputer.o: randomcomputer.cpp \
		randomcomputer.hpp \
		computerbrain.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/randomcomputer.o randomcomputer.cpp

obj/playerinfo.o: playerinfo.cpp \
		playerinfo.hpp \
		player.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		brain.hpp \
		playerprofile.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/playerinfo.o playerinfo.cpp

obj/humanconfig.o: humanconfig.cpp \
		humanconfig.hpp \
		humanbrain.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		playerprofile.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/humanconfig.o humanconfig.cpp

obj/firstbestcomputer.o: firstbestcomputer.cpp \
		firstbestcomputer.hpp \
		computerbrain.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		player.hpp \
		playerprofile.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/firstbestcomputer.o firstbestcomputer.cpp

obj/computerconfig.o: computerconfig.cpp \
		computerconfig.hpp \
		playerprofile.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		computerbrain.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/computerconfig.o computerconfig.cpp

obj/playerprofile.o: playerprofile.cpp \
		playerprofile.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		playerlist.hpp \
		othello.hpp \
		boardwidget.hpp \
		playerinfo.hpp \
		player.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/playerprofile.o playerprofile.cpp

obj/playerlist.o: playerlist.cpp \
		playerlist.hpp \
		playerprofile.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		othello.hpp \
		boardwidget.hpp \
		playerinfo.hpp \
		player.hpp \
		humanconfig.hpp \
		humanbrain.hpp \
		randomcomputer.hpp \
		computerbrain.hpp \
		firstbestcomputer.hpp \
		alphabetacomputer.hpp \
		weights.hpp \
		alphabetanormalcomputer.hpp \
		alphabetaevalcomputer.hpp \
		alphabetadyncomputer.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/playerlist.o playerlist.cpp

obj/alphabetanormalcomputer.o: alphabetanormalcomputer.cpp \
		alphabetanormalcomputer.hpp \
		computerbrain.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		weights.hpp \
		player.hpp \
		playerprofile.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/alphabetanormalcomputer.o alphabetanormalcomputer.cpp

obj/alphabetaevalcomputer.o: alphabetaevalcomputer.cpp \
		alphabetaevalcomputer.hpp \
		computerbrain.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		weights.hpp \
		player.hpp \
		playerprofile.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/alphabetaevalcomputer.o alphabetaevalcomputer.cpp

obj/alphabetadyncomputer.o: alphabetadyncomputer.cpp \
		alphabetadyncomputer.hpp \
		computerbrain.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		player.hpp \
		playerprofile.hpp \
		weights.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/alphabetadyncomputer.o alphabetadyncomputer.cpp

obj/alphabetacomputer.o: alphabetacomputer.cpp \
		alphabetacomputer.hpp \
		computerbrain.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		weights.hpp \
		player.hpp \
		playerprofile.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/alphabetacomputer.o alphabetacomputer.cpp

obj/moc_player.o: moc/moc_player.cpp \
		player.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		brain.hpp \
		playerprofile.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_player.o moc/moc_player.cpp

obj/moc_board.o: moc/moc_board.cpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_board.o moc/moc_board.cpp

obj/moc_boardwidget.o: moc/moc_boardwidget.cpp \
		boardwidget.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_boardwidget.o moc/moc_boardwidget.cpp

obj/moc_othello.o: moc/moc_othello.cpp \
		othello.hpp \
		boardwidget.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		playerinfo.hpp \
		player.hpp \
		brain.hpp \
		playerprofile.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_othello.o moc/moc_othello.cpp

obj/moc_brain.o: moc/moc_brain.cpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_brain.o moc/moc_brain.cpp

obj/moc_humanbrain.o: moc/moc_humanbrain.cpp \
		humanbrain.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_humanbrain.o moc/moc_humanbrain.cpp

obj/moc_computerbrain.o: moc/moc_computerbrain.cpp \
		computerbrain.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_computerbrain.o moc/moc_computerbrain.cpp

obj/moc_playerinfo.o: moc/moc_playerinfo.cpp \
		playerinfo.hpp \
		player.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		brain.hpp \
		playerprofile.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_playerinfo.o moc/moc_playerinfo.cpp

obj/moc_computerconfig.o: moc/moc_computerconfig.cpp \
		computerconfig.hpp \
		playerprofile.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		computerbrain.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_computerconfig.o moc/moc_computerconfig.cpp

obj/moc_playerprofile.o: moc/moc_playerprofile.cpp \
		playerprofile.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		playerprofile.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_playerprofile.o moc/moc_playerprofile.cpp

obj/moc_playerlist.o: moc/moc_playerlist.cpp \
		playerlist.hpp \
		playerprofile.hpp \
		brain.hpp \
		board.hpp \
		matrix.hpp \
		piece.hpp \
		exception.hpp \
		othello.hpp \
		boardwidget.hpp \
		playerinfo.hpp \
		player.hpp
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_playerlist.o moc/moc_playerlist.cpp

moc/moc_player.cpp: player.hpp
	$(MOC) player.hpp -o moc/moc_player.cpp

moc/moc_board.cpp: board.hpp
	$(MOC) board.hpp -o moc/moc_board.cpp

moc/moc_boardwidget.cpp: boardwidget.hpp
	$(MOC) boardwidget.hpp -o moc/moc_boardwidget.cpp

moc/moc_othello.cpp: othello.hpp
	$(MOC) othello.hpp -o moc/moc_othello.cpp

moc/moc_brain.cpp: brain.hpp
	$(MOC) brain.hpp -o moc/moc_brain.cpp

moc/moc_humanbrain.cpp: humanbrain.hpp
	$(MOC) humanbrain.hpp -o moc/moc_humanbrain.cpp

moc/moc_computerbrain.cpp: computerbrain.hpp
	$(MOC) computerbrain.hpp -o moc/moc_computerbrain.cpp

moc/moc_playerinfo.cpp: playerinfo.hpp
	$(MOC) playerinfo.hpp -o moc/moc_playerinfo.cpp

moc/moc_computerconfig.cpp: computerconfig.hpp
	$(MOC) computerconfig.hpp -o moc/moc_computerconfig.cpp

moc/moc_playerprofile.cpp: playerprofile.hpp
	$(MOC) playerprofile.hpp -o moc/moc_playerprofile.cpp

moc/moc_playerlist.cpp: playerlist.hpp
	$(MOC) playerlist.hpp -o moc/moc_playerlist.cpp

