VPATH = ./:emit:weapons/bombs:weapons/guns/

libs = -lclanApp -lclanCore -lclanDisplay -lclanPNG -lclanJPEG
cppflags = 

OBJF =	../build/app.o \
		../build/console.o \
		../build/convert.o \
		../build/fonts.o \
		../build/forces.o \
		../build/game.o \
		../build/game_config.o \
		../build/gfx.o \
		../build/m_math.o \
		../build/menu.o \
		../build/player.o \
		../build/rope.o \
		../build/world.o \
		../build/emit_config.o \
		../build/emitter.o \
		../build/emitter_controller.o \
		../build/particle.o \
		../build/weapons.o \
		../build/weapons/reload_info.o \
		../build/weapons/reloader.o \
		../build/weapons/weapon_dummy.o \
		../build/weapons/weapon_generic.o \
		../build/weapons/bombs/bomb_res.o \
		../build/weapons/bombs/dynamite.o \
		../build/weapons/guns/cannon.o \
		../build/weapons/guns/gun_res.o \
		../build/weapons/guns/machinegun.o \
		../build/weapons/guns/shotgun.o

all: Mastzi

Mastzi:  $(OBJF)
	@echo "Building executable 'mastzi'..."
	@g++ $(libs) -o ../mastzi $(OBJF)

clean:
	@echo "Cleaning project"
	@find ../build -name '*.o' -exec rm "{}" \;
	@find ../build/weapons -name '*.o' -exec rm "{}" \;
	@find ../build/weapons/bombs -name '*.o' -exec rm "{}" \;
	@find ../build/weapons/guns -name '*.o' -exec rm "{}" \;
	@if [ -f ../mastzi ]; then rm -f ../mastzi; fi

dep:
	makedepend -p ../build/ *.cpp weapons/*/*.cpp

../build/%.o : %.cpp
	@echo "Compiling $<"
	-@if [ ! -d ../build ]; then mkdir ../build; fi
	-@if [ ! -d ../build/weapons ]; then mkdir ../build/weapons; fi
	-@if [ ! -d ../build/weapons/bombs ]; then mkdir ../build/weapons/bombs; fi
	-@if [ ! -d ../build/weapons/guns ]; then mkdir ../build/weapons/guns; fi
	@$(CXX) -c $(CPPFLAGS) $(CXXFLAGS) -O3 -Wall $< -o $@

# DO NOT DELETE

../build/app.o: app.h menu.h fonts.h gfx.h world.h game_config.h weapons.h
../build/app.o: weapons/weapon_generic.h weapons/bombs/bomb_res.h
../build/app.o: weapons/guns/gun_res.h
../build/console.o: console.h fonts.h
../build/convert.o: convert.h
../build/fonts.o: fonts.h
../build/forces.o: m_math.h world.h player.h rope.h weapons/reloader.h
../build/forces.o: weapons/reload_info.h emit/emitter_controller.h forces.h
../build/game.o: world.h player.h rope.h weapons/reloader.h
../build/game.o: weapons/reload_info.h emit/emitter_controller.h
../build/game.o: game_config.h weapons.h weapons/weapon_generic.h game.h
../build/game.o: m_math.h console.h
../build/game_config.o: game_config.h
../build/gfx.o: gfx.h
../build/m_math.o: m_math.h
../build/menu.o: menu.h game.h player.h rope.h weapons/reloader.h
../build/menu.o: weapons/reload_info.h emit/emitter_controller.h
../build/menu.o: weapons/weapon_generic.h fonts.h
../build/player.o: game.h player.h rope.h weapons/reloader.h
../build/player.o: weapons/reload_info.h emit/emitter_controller.h
../build/player.o: weapons/weapon_generic.h m_math.h gfx.h game_config.h
../build/player.o: world.h weapons.h forces.h console.h fonts.h
../build/player.o: weapons/weapon_enums.h
../build/rope.o: m_math.h gfx.h game_config.h world.h rope.h
../build/weapons.o: weapons/all.h weapons/bombs/all.h
../build/weapons.o: weapons/bombs/dynamite.h weapons/weapon_generic.h
../build/weapons.o: weapons/guns/all.h weapons/guns/cannon.h
../build/weapons.o: weapons/guns/machinegun.h weapons/guns/shotgun.h
../build/weapons.o: weapons/weapon_dummy.h weapons/weapon_generic.h
../build/weapons.o: weapons/weapon_enums.h weapons.h weapons/weapon_generic.h
../build/world.o: game_config.h convert.h world.h fonts.h
../build/weapons/bombs/bomb_res.o: weapons/bombs/bomb_res.h
../build/weapons/bombs/dynamite.o: game.h player.h rope.h weapons/reloader.h
../build/weapons/bombs/dynamite.o: weapons/reload_info.h
../build/weapons/bombs/dynamite.o: emit/emitter_controller.h
../build/weapons/bombs/dynamite.o: weapons/weapon_generic.h world.h
../build/weapons/bombs/dynamite.o: game_config.h forces.h weapons.h
../build/weapons/bombs/dynamite.o: weapons/reload_info.h weapons/reloader.h
../build/weapons/bombs/dynamite.o: weapons/weapon_enums.h
../build/weapons/bombs/dynamite.o: weapons/weapon_generic.h
../build/weapons/bombs/dynamite.o: weapons/bombs/bomb_res.h
../build/weapons/bombs/dynamite.o: weapons/bombs/dynamite.h
../build/weapons/guns/cannon.o: world.h game_config.h weapons.h
../build/weapons/guns/cannon.o: weapons/weapon_generic.h game.h player.h
../build/weapons/guns/cannon.o: rope.h weapons/reloader.h
../build/weapons/guns/cannon.o: weapons/reload_info.h
../build/weapons/guns/cannon.o: emit/emitter_controller.h forces.h
../build/weapons/guns/cannon.o: weapons/weapon_generic.h
../build/weapons/guns/cannon.o: weapons/weapon_enums.h weapons/guns/gun_res.h
../build/weapons/guns/cannon.o: weapons/guns/cannon.h
../build/weapons/guns/gun_res.o: weapons/guns/gun_res.h
../build/weapons/guns/machinegun.o: world.h game_config.h weapons.h
../build/weapons/guns/machinegun.o: weapons/weapon_generic.h game.h player.h
../build/weapons/guns/machinegun.o: rope.h weapons/reloader.h
../build/weapons/guns/machinegun.o: weapons/reload_info.h
../build/weapons/guns/machinegun.o: emit/emitter_controller.h forces.h
../build/weapons/guns/machinegun.o: weapons/weapon_generic.h
../build/weapons/guns/machinegun.o: weapons/weapon_enums.h
../build/weapons/guns/machinegun.o: weapons/guns/gun_res.h
../build/weapons/guns/machinegun.o: weapons/guns/machinegun.h
../build/weapons/guns/shotgun.o: world.h game_config.h weapons.h
../build/weapons/guns/shotgun.o: weapons/weapon_generic.h game.h player.h
../build/weapons/guns/shotgun.o: rope.h weapons/reloader.h
../build/weapons/guns/shotgun.o: weapons/reload_info.h
../build/weapons/guns/shotgun.o: emit/emitter_controller.h forces.h
../build/weapons/guns/shotgun.o: weapons/weapon_generic.h
../build/weapons/guns/shotgun.o: weapons/weapon_enums.h
../build/weapons/guns/shotgun.o: weapons/guns/gun_res.h
../build/weapons/guns/shotgun.o: weapons/guns/shotgun.h
