# Makefile for connection
# Martin Johne 2007
#
# targets:
#  -all: the standart target compiles connection
#
#  -run: start connection
#  -depend: create dependencies for the object files
#  -clean: delete build files

PROGRAM  = ../../bin/connection

# define the path and all source filenames here
# connection sources
SOURCESPATH  := ../../src/
SOURCESTEMP  := AICompetitionWindow.cpp consoleCommands.cpp LargeInteger.cpp\
LookUpTable.cpp Muele.cpp NeuralNetwork.cpp NeuralNetworkWindow.cpp\
PreferencesWindow.cpp Symmetry.cpp TestWin.cpp
OBJECTS      := $(OBJECTS) $(SOURCESTEMP)
SOURCES      := $(SOURCES) $(addprefix $(SOURCESPATH), $(SOURCESTEMP))
VPATH        := $(VPATH) $(SOURCESPATH)
# console sources
SOURCESPATH  := ../../src/IrrConsole/
SOURCESTEMP  := console.cpp defaultCmds.cpp utils.cpp
OBJECTS      := $(OBJECTS) $(SOURCESTEMP)
SOURCES      := $(SOURCES) $(addprefix $(SOURCESPATH), $(SOURCESTEMP))
VPATH        := $(VPATH) $(SOURCESPATH)

# change all .cpp filenames to .o filenames
OBJECTS := $(OBJECTS:.cpp=.o)

CC       = gcc
CFLAGS   =

CXX      = g++
CXXFLAGS = -I"../../3rd/Irrlicht/include" -I"/usr/X11R6/include"

LDFLAGS  = -L"/usr/X11R6/lib" -L"../../3rd/Irrlicht/lib/Linux" -lIrrlicht -lGL -lGLU -lXxf86vm -lXext -lX11 -O3

RM       = rm -f

# windows specific
ifeq ($(OS), Windows_NT)
	RM          := del
	PROGRAM     := $(PROGRAM).exe # := means simple expand
endif

# $@ is the name of the file to be made
# $< the name of the related file that caused the action.

all: $(PROGRAM)

# standart action for creating an objekt
.cpp.o:
	$(CXX) $(CXXFLAGS) -c $<

$(PROGRAM): ../../3rd/Irrlicht/lib/Linux/libIrrlicht.a $(OBJECTS)
	-@echo ---building connection---
	$(CXX) -o $(PROGRAM) $(OBJECTS) $(LDFLAGS) 

../../3rd/Irrlicht/lib/Linux/libIrrlicht.a:
	-@echo --building Irrlicht library--
	make -C ../../3rd/Irrlicht/source/Irrlicht

run: $(PROGRAM)
	$(PROGRAM)

# create the dependencies for the objekt files
depend:
#	makedepend -Y -- $(CXXFLAGS) -- $(SOURCES)  # this will generate dependencies for all include directories
	makedepend -Y $(SOURCES)

# delete build files
clean:
	$(RM) $(OBJECTS) $(PROGRAM) tags

# automatically generated dpendency list for the object files
# DO NOT DELETE

../../src/AICompetitionWindow.o: ../../src/AICompetitionWindow.h
../../src/AICompetitionWindow.o: ../../src/Muele.h
../../src/AICompetitionWindow.o: ../../src/IrrConsole/console.h
../../src/AICompetitionWindow.o: ../../src/IrrConsole/includes.h
../../src/AICompetitionWindow.o: ../../src/IrrConsole/utils.h
../../src/AICompetitionWindow.o: ../../src/Symmetry.h
../../src/AICompetitionWindow.o: ../../src/LargeInteger.h ../../src/TestWin.h
../../src/AICompetitionWindow.o: ../../src/LookUpTable.h
../../src/AICompetitionWindow.o: ../../src/NeuralNetwork.h
../../src/consoleCommands.o: ../../src/consoleCommands.h
../../src/consoleCommands.o: ../../src/IrrConsole/console.h
../../src/consoleCommands.o: ../../src/IrrConsole/includes.h
../../src/consoleCommands.o: ../../src/IrrConsole/utils.h ../../src/Muele.h
../../src/consoleCommands.o: ../../src/Symmetry.h ../../src/LargeInteger.h
../../src/consoleCommands.o: ../../src/TestWin.h
../../src/LargeInteger.o: ../../src/LargeInteger.h
../../src/LookUpTable.o: ../../src/LookUpTable.h ../../src/Symmetry.h
../../src/LookUpTable.o: ../../src/LargeInteger.h ../../src/TestWin.h
../../src/LookUpTable.o: ../../src/Muele.h ../../src/IrrConsole/console.h
../../src/LookUpTable.o: ../../src/IrrConsole/includes.h
../../src/LookUpTable.o: ../../src/IrrConsole/utils.h
../../src/Muele.o: ../../src/consoleCommands.h ../../src/IrrConsole/console.h
../../src/Muele.o: ../../src/IrrConsole/includes.h
../../src/Muele.o: ../../src/IrrConsole/utils.h ../../src/Muele.h
../../src/Muele.o: ../../src/Symmetry.h ../../src/LargeInteger.h
../../src/Muele.o: ../../src/TestWin.h ../../src/PreferencesWindow.h
../../src/Muele.o: ../../src/LookUpTable.h ../../src/AICompetitionWindow.h
../../src/Muele.o: ../../src/NeuralNetwork.h ../../src/NeuralNetworkWindow.h
../../src/NeuralNetwork.o: ../../src/NeuralNetwork.h ../../src/LookUpTable.h
../../src/NeuralNetwork.o: ../../src/Symmetry.h ../../src/LargeInteger.h
../../src/NeuralNetwork.o: ../../src/Muele.h ../../src/IrrConsole/console.h
../../src/NeuralNetwork.o: ../../src/IrrConsole/includes.h
../../src/NeuralNetwork.o: ../../src/IrrConsole/utils.h ../../src/TestWin.h
../../src/NeuralNetwork.o: ../../src/NeuralNetworkWindow.h
../../src/NeuralNetwork.o: ../../src/PreferencesWindow.h
../../src/NeuralNetworkWindow.o: ../../src/NeuralNetworkWindow.h
../../src/NeuralNetworkWindow.o: ../../src/Muele.h
../../src/NeuralNetworkWindow.o: ../../src/IrrConsole/console.h
../../src/NeuralNetworkWindow.o: ../../src/IrrConsole/includes.h
../../src/NeuralNetworkWindow.o: ../../src/IrrConsole/utils.h
../../src/NeuralNetworkWindow.o: ../../src/Symmetry.h
../../src/NeuralNetworkWindow.o: ../../src/LargeInteger.h
../../src/NeuralNetworkWindow.o: ../../src/NeuralNetwork.h
../../src/NeuralNetworkWindow.o: ../../src/LookUpTable.h ../../src/TestWin.h
../../src/PreferencesWindow.o: ../../src/PreferencesWindow.h
../../src/PreferencesWindow.o: ../../src/Muele.h
../../src/PreferencesWindow.o: ../../src/IrrConsole/console.h
../../src/PreferencesWindow.o: ../../src/IrrConsole/includes.h
../../src/PreferencesWindow.o: ../../src/IrrConsole/utils.h
../../src/PreferencesWindow.o: ../../src/Symmetry.h ../../src/LargeInteger.h
../../src/PreferencesWindow.o: ../../src/AICompetitionWindow.h
../../src/PreferencesWindow.o: ../../src/NeuralNetwork.h
../../src/PreferencesWindow.o: ../../src/LookUpTable.h ../../src/TestWin.h
../../src/PreferencesWindow.o: ../../src/NeuralNetworkWindow.h
../../src/Symmetry.o: ../../src/Symmetry.h ../../src/LargeInteger.h
../../src/Symmetry.o: ../../src/Muele.h ../../src/IrrConsole/console.h
../../src/Symmetry.o: ../../src/IrrConsole/includes.h
../../src/Symmetry.o: ../../src/IrrConsole/utils.h
../../src/TestWin.o: ../../src/TestWin.h ../../src/Muele.h
../../src/TestWin.o: ../../src/IrrConsole/console.h
../../src/TestWin.o: ../../src/IrrConsole/includes.h
../../src/TestWin.o: ../../src/IrrConsole/utils.h ../../src/Symmetry.h
../../src/TestWin.o: ../../src/LargeInteger.h
../../src/IrrConsole/console.o: ../../src/IrrConsole/console.h
../../src/IrrConsole/console.o: ../../src/IrrConsole/includes.h
../../src/IrrConsole/console.o: ../../src/IrrConsole/utils.h
../../src/IrrConsole/console.o: ../../src/IrrConsole/defaultCmds.h
../../src/IrrConsole/defaultCmds.o: ../../src/IrrConsole/defaultCmds.h
../../src/IrrConsole/defaultCmds.o: ../../src/IrrConsole/includes.h
../../src/IrrConsole/defaultCmds.o: ../../src/IrrConsole/utils.h
../../src/IrrConsole/defaultCmds.o: ../../src/IrrConsole/console.h
../../src/IrrConsole/utils.o: ../../src/IrrConsole/utils.h
../../src/IrrConsole/utils.o: ../../src/IrrConsole/includes.h
