# Makefile for games_libs/lua
# $Id: Makefile 1992 2012-09-11 05:57:06Z satofumi $

# Compile options
CC = $(CXX)
CXXFLAGS = -g -O0 -Wall -W -Werror $(INCLUDES) `sdl-config --cflags`
INCLUDES = -I/usr/include/lua5.1 -I.. -I../system -I../system/sdl -I../connection -I../gui -I../geometry -I../audio -I../common -I../running -I../range_finder -I../coordinate -I../monitoring -I../running/beego_drive -I/usr/include/lua5.1 -I../timestamp -I../math -I../input

# Target
LUA_LIB = lua.a
LUABIND_LIB = lua_luabind.a
TOLUA_LIB = # lua_tolua.a
TARGET = $(LUA_LIB) $(LUABIND_LIB) $(TOLUA_LIB)

all : $(TARGET)

clean :
	$(RM) *.o $(TARGET) allTest
	cd samples/ && $(MAKE) clean

test : allTest
	./allTest

depend :
	makedepend -Y -- $(INCLUDES) -- $(wildcard *.h *.cpp)

.PHONY : all clean depend
######################################################################
.SUFFIXES : .cpp .pkg
.pkg.cpp :
	tolua++ -n `ruby stripTolua.rb $*` -o $@ $<

$(LUA_LIB) : \
	$(LUA_LIB)(LuaHandler.o) \

$(LUABIND_LIB) : \
	$(LUABIND_LIB)(luabindInit.o) \
	$(LUABIND_LIB)(luabindCommon.o) \
	$(LUABIND_LIB)(luabindSystem.o) \
	$(LUABIND_LIB)(luabindGeometry.o) \
	$(LUABIND_LIB)(luabindGui.o) \
	$(LUABIND_LIB)(luabindNetwork.o) \
	$(LUABIND_LIB)(luabindAudio.o) \
	$(LUABIND_LIB)(luabindInput.o) \
	$(LUABIND_LIB)(luabindCoordinate.o) \
	$(LUABIND_LIB)(luabindRunning.o) \
	$(LUABIND_LIB)(luabindRangeFinder.o) \
	$(LUABIND_LIB)(luabindBeegoDrive.o) \
	$(LUABIND_LIB)(luabindUrgDistance.o) \
	$(LUABIND_LIB)(lua_runStateMachine.o) \

$(TOLUA_LIB) : \
	$(TOLUA_LIB)(toluaSystem.o) \
	$(TOLUA_LIB)(toluaGeometry.o) \
	$(TOLUA_LIB)(toluaGui.o) \

allTest.o : ../../unittest/allTest.cpp
	$(CXX) $(CXXFLAGS) `cppunit-config --cflags` $< -c -o $@

TEST_OBJS = allTest.o TestScriptedStateMachine.o $(REQUIRE_LIBS)
TEST_LDLIBS = -lluabind -llua
allTest : $(TEST_OBJS)
	$(CXX) $(CXXFLAGS) $(TEST_OBJS) -o $@ `cppunit-config --libs` $(TEST_LDLIBS)

# DO NOT DELETE

LuaHandler.o: LuaHandler.h ../system/fileExist.h ../system/log_printf.h
TestScriptedStateMachine.o: TestScriptedStateMachine.h ScriptedStateMachine.h
lua_runStateMachine.o: lua_runStateMachine.h ScriptedStateMachine.h
lua_runStateMachine.o: LuaHandler.h luabindInit.h ../system/delay.h
luabindAudio.o: luabindAudio.h LuaHandler.h ../audio/Audio.h
luabindAudio.o: ../audio/BackMusic.h ../audio/SoundEffect.h
luabindBeegoDrive.o: luabindBeegoDrive.h ../monitoring/mBeegoDrive.h
luabindBeegoDrive.o: ../coordinate/Coordinate.h ../geometry/Position.h
luabindBeegoDrive.o: ../geometry/Angle.h ../running/Running.h
luabindBeegoDrive.o: ../geometry/Point.h ../running/WheelDirect.h
luabindBeegoDrive.o: ../timestamp/Timestamp.h
luabindCommon.o: luabindCommon.h ../common/Color.h
luabindCoordinate.o: luabindCoordinate.h ../coordinate/Coordinate.h
luabindCoordinate.o: ../geometry/Position.h ../geometry/Angle.h
luabindGeometry.o: luabindGeometry.h ../geometry/Point.h
luabindGeometry.o: ../geometry/Point3d.h ../geometry/Rect.h
luabindGeometry.o: ../geometry/Position.h ../geometry/Angle.h
luabindGui.o: luabindGui.h LuaHandler.h ../gui/Screen.h ../geometry/Rect.h
luabindGui.o: ../gui/TextInput.h ../gui/Event.h ../geometry/Point.h
luabindGui.o: ../gui/EventUtils.h ../gui/LayerManager.h
luabindGui.o: ../gui/LayerInterface.h ../gui/Layer.h ../gui/Font.h
luabindGui.o: ../common/Color.h ../gui/TextSurface.h ../gui/Surface.h
luabindGui.o: ../gui/TextFadeSurface.h ../gui/TextRubiFadeSurface.h
luabindGui.o: ../gui/ColorSurface.h ../gui/FillSurface.h
luabindGui.o: ../gui/ImageSurface.h ../gui/CanvasSurface.h
luabindGui.o: ../gui/MultiSurface.h ../gui/Label.h ../gui/Component.h
luabindGui.o: ../gui/Button.h ../gui/Menu.h ../gui/ChatMessage.h
luabindGui.o: ../gui/CallbackEvent.h ../gui/AlignUtils.h
luabindInit.o: luabindInit.h LuaHandler.h ../system/log_printf.h
luabindInput.o: luabindInput.h ../input/convertToRoman.h
luabindInput.o: ../input/convertToJp.h ../input/Utf8.h ../input/utf8_string.h
luabindNetwork.o: luabindNetwork.h ../connection/TcpipSocket.h
luabindNetwork.o: ../connection/Connection.h ../connection/ConnectionUtils.h
luabindRangeFinder.o: luabindRangeFinder.h ../monitoring/mUrgDevice.h
luabindRangeFinder.o: ../range_finder/UrgDevice.h ../coordinate/Coordinate.h
luabindRangeFinder.o: ../geometry/Position.h ../geometry/Angle.h
luabindRangeFinder.o: ../range_finder/RangeFinder.h ../math/MathUtils.h
luabindRangeFinder.o: ../system/DetectOS.h ../timestamp/Timestamp.h
luabindRangeFinder.o: ../monitoring/mUrgDistance.h
luabindRangeFinder.o: ../range_finder/UrgDistance.h
luabindRunning.o: luabindRunning.h ../running/BeegoDrive.h
luabindRunning.o: ../coordinate/Coordinate.h ../geometry/Position.h
luabindRunning.o: ../geometry/Angle.h ../running/Running.h
luabindRunning.o: ../geometry/Point.h ../timestamp/Timestamp.h
luabindRunning.o: ../running/WheelDirect.h
luabindSystem.o: luabindSystem.h ../system/delay.h ../system/ticks.h
luabindSystem.o: ../system/CycleTimer.h ../system/StopWatch.h
luabindUrgDistance.o: luabindUrgDistance.h ../monitoring/mUrgDistance.h
luabindUrgDistance.o: ../range_finder/UrgDistance.h
luabindUrgDistance.o: ../range_finder/UrgDevice.h ../coordinate/Coordinate.h
luabindUrgDistance.o: ../geometry/Position.h ../geometry/Angle.h
luabindUrgDistance.o: ../range_finder/RangeFinder.h ../math/MathUtils.h
luabindUrgDistance.o: ../system/DetectOS.h ../timestamp/Timestamp.h
