VPATH = ./:emit:weapons/bombs

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

OBJF =	build/app.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/name_list.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/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/gun_res.o \
		build/weapons/guns/machinegun.o

all: Mastzi

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

clean:
	@echo "Cleaning project"
	rm -r ./build
	rm ../mastzi

dep:
	makedepend *.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

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