#  Copyright (C) 2004-2005 Tommi Tervonen, Petteri Klemola, Pasi Orovuo,
#                          Marko Mattila
#
# This file is part of Kajaani Kombat.
#
#  Kajaani Kombat is free software; you can redistribute it and/or modify
#  it under the terms of the GNU General Public License as published by
#  the Free Software Foundation; either version 2 of the License, or
#  (at your option) any later version.
#  
#  Kajaani Kombat is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU General Public License for more details.
#  
#  You should have received a copy of the GNU General Public License
#  along with Kajaani Kombat; if not, write to the Free Software
#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

## DEBIAN RELEASE
ifeq ($(sys), DEBIAN)
	MEDIA=-D MEDIA_PATH=\"/usr/share/games/kajaanikombat/\"
	DEBUG= -O $(MEDIA)
endif
## WIN RELEASE
ifeq ($(sys), WIN)
	MEDIA=-D MEDIA_PATH=\".\\\"
	DEBUG= -O $(MEDIA)
endif
## UNIX RELEASE
ifeq ($(sys), UNIX )
	MEDIA=-D MEDIA_PATH=\"./\"
	DEBUG= -O $(MEDIA)
endif
## UNIX DEBUG
ifeq ($(sys), DEBUG)
	MEDIA=-D MEDIA_PATH=\"./\"
	DEBUG= -g -DDEBUG $(MEDIA)
endif
## UNIX RELEASE (default option)
ifeq ($(sys), )
	MEDIA=-D MEDIA_PATH=\"./\"
	DEBUG= -O $(MEDIA)
endif


INS=/usr/bin/install

client_libs = `sdl-config --libs` -lSDL_net -lSDL_image -lSDL_ttf -lSDL_mixer
server_libs = `sdl-config --libs` -lSDL_net -lcurses

client_objs = game_obj.o terrain.o msg.o rotozoom.o gfx.o game_client.o main.o coord.o block.o \
	particle_efects.o animation.o gfx_functions.o gui.o gui_screens.o game_server.o audio.o\
	game_statistic.o mosaic.o interpolation.o connects.o player.o client_net.o config.o

server_objs = game_obj.o terrain.o msg.o game_server.o server_main.o coord.o block.o connects.o player.o config.o

CXXFLAGS=`sdl-config --cflags` -Wall $(DEBUG)

all: client

config.o: config.h config.cpp
player.o: player.h player.cpp connects.h
audio.o: audio.h audio.cpp globals.h
block.o: block.cpp block.h coord.h
coord.o: coord.cpp coord.h globals.h
game_obj.o: game_obj.cpp game_obj.h coord.h globals.h
server_main.o: game_server.h server_main.cpp globals.h config.h
terrain.o: terrain.h terrain.cpp game_obj.h coord.h block.h globals.h
msg.o: terrain.h msg.cpp msg.h globals.h coord.h
game_server.o: game_server.h monitor_queue.h msg.h player.h terrain.h game_server.cpp coord.h globals.h connects.h
rotozoom.o: rotozoom.h rotozoom.cpp terrain.h lookup.h coord.h globals.h interpolation.h
gfx.o: gfx.h terrain.h gfx.cpp particle_efects.h animation.h globals.h coord.h rotozoom.h game_obj.h gfx_functions.h player.h game_statistic.h
game_client.o: game_client.h terrain.h msg.h game_obj.h gfx.h game_client.cpp particle_efects.h animation.h game_client.cpp globals.h gfx_functions.h gui.h audio.h mosaic.h connects.h player.h game_statistic.h client_net.h
main.o: game_client.h main.cpp globals.h gui_screens.h gfx.h
particle_efects.o: particle_efects.h particle_efects.cpp coord.h game_obj.h msg.h globals.h
animation.o: animation.h animation.cpp particle_efects.h globals.h gfx_functions.h rotozoom.h
gui.o: gui.h gui.cpp globals.h coord.h gfx_functions.h game_obj.h gfx.h particle_efects.h audio.h rotozoom.h lookup.h
gui_screens.o: gui_screens.cpp gui_screens.h gui.h globals.h coord.h gfx_functions.h game_client.h game_server.h gfx.h particle_efects.h gfx_functions.h audio.h monitor_queue.h
gfx_functions.o: gfx_functions.h gfx_functions.cpp coord.h globals.h
game_statistic.o: game_statistic.h game_statistic.cpp
mosaic.o: mosaic.h mosaic.cpp
interpolation.o: interpolation.h interpolation.cpp gfx_functions.h
connects.o: connects.h connects.cpp msg.h globals.h
client_net.o: client_net.h client_net.cpp globals.h monitor_queue.h msg.h

client: $(client_objs)
	$(CXX) $(client_objs) -o kajaani-kombat $(client_libs)
server: $(server_objs)
	$(CXX) $(server_objs) -o kajaani-kombat-server $(server_libs)

.PHONY: all clean client server install

clean: 
	-rm -f $(client_objs) $(server_objs) *~ kajaani-kombat kajaani-kombat-server

install: client
	$(INS) -o root -g root -m 0755 -s kajaani-kombat debian/tmp/usr/games/kajaani-kombat
	$(INS) -o root -g root -m 0644 *.png debian/tmp/usr/share/games/kajaanikombat/
	$(INS) -o root -g root -m 0644 *.ttf debian/tmp/usr/share/games/kajaanikombat/
	$(INS) -o root -g root -m 0644 *.ogg debian/tmp/usr/share/games/kajaanikombat/
	$(INS) -o root -g root -m 0644 kajaani-kombat.6 debian/tmp/usr/share/man/man6/
