#
SHELL		= /bin/sh

prefix		= /usr
exec_prefix	= /usr

srcdir		= .
top_builddir	= ../..

DESTDIR		=
bindir		= $(DESTDIR)/usr/bin

CFLAGS		= #-O2 -march=i386 -mcpu=i686
CPPFLAGS	=  -I$(ACE_ROOT)/ -I$(MYSQL_ROOT)/include/ -I$(srcdir) -I/usr/lib/glib/include -I/usr/include/glib-1.2 -I$(srcdir)/../../ethereal-0.10.5/wiretap #-DHAVE_CONFIG_H -I$(top_builddir) -I$(srcdir)/../.. -I. 
EXTRA_CFLAGS	= 
CC		= g++ -g -Wall -c
LDFLAGS		= 
#LIBS		= -L../.. -ldialog -lncurses  -L/lib
LIBS		= -L$(ACE_ROOT)/ 

RM		= rm -f

all: Test.o MonitorScheduler.o Hosts.o HostsTool.o HostsResult.o RawSocksTool.o RawSocksResult.o WifiTool.o WifiResult.o ToolBase.o ToolManager.o InitSystem.o ActionBase.o ActionManager.o StoreAction.o ActionTest.o ThreshAction.o TimerSource.o TriggerSource.o TestSource.o main.o main
	g++ -g -o main main.o Test.o MonitorScheduler.o Hosts.o HostsTool.o HostsResult.o RawSocksTool.o RawSocksResult.o WifiTool.o WifiResult.o ToolBase.o ToolManager.o InitSystem.o ActionBase.o ActionManager.o StoreAction.o ActionTest.o ThreshAction.o TimerSource.o TriggerSource.o TestSource.o $(ACE_ROOT)/ace/libACE.so libmysqlclient.so -lz -lm



Test.o : Test.cpp Test.hpp
	$(CC) Test.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

MonitorScheduler.o : MonitorScheduler.cpp MonitorScheduler.hpp Test.hpp
	$(CC) MonitorScheduler.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

Hosts.o : Hosts.cpp Hosts.hpp
	$(CC) Hosts.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

HostsTool.o : HostsTool.cpp HostsTool.hpp Task.hpp Test.hpp ToolBase.hpp Hosts.hpp HostsResult.hpp
	$(CC) HostsTool.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

HostsResult.o : HostsResult.cpp HostsResult.hpp Test.hpp
	$(CC) HostsResult.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

RawSocksTool.o : RawSocksTool.cpp RawSocksTool.hpp Task.hpp Test.hpp ToolBase.hpp RawSocksResult.hpp
	$(CC) RawSocksTool.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

WifiTool.o : WifiTool.cpp WifiTool.hpp WifiResult.hpp Task.hpp Test.hpp ToolBase.hpp 
	$(CC) WifiTool.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

WifiResult.o : WifiResult.cpp WifiResult.hpp ToolBase.hpp Test.hpp Task.hpp
	$(CC) WifiResult.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

ToolBase.o : ToolBase.cpp ToolBase.hpp Task.hpp Test.hpp 
	$(CC) ToolBase.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

ToolManager.o : ToolManager.cpp ToolManager.hpp Task.hpp Test.hpp ToolBase.hpp HostsTool.hpp RawSocksTool.hpp WifiTool.hpp
	$(CC) ToolManager.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

InitSystem.o : InitSystem.cpp InitSystem.hpp Task.hpp ToolManager.hpp ActionTest.hpp StoreAction.hpp ThreshAction.hpp ActionManager.hpp TimerSource.hpp TriggerSource.hpp TestSource.hpp
	$(CC) InitSystem.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

ActionBase.o : ActionBase.cpp ActionBase.hpp Task.hpp Test.hpp ActionManager.hpp
	$(CC) ActionBase.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

ActionManager.o : ActionManager.cpp ActionManager.hpp Test.hpp Task.hpp ActionBase.hpp StoreAction.hpp ThreshAction.hpp ActionManager.hpp
	$(CC) ActionManager.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

StoreAction.o : StoreAction.cpp StoreAction.hpp ActionBase.hpp HostsResult.hpp WifiResult.hpp RawSocksResult.hpp 
	$(CC) StoreAction.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

ActionTest.o : ActionTest.cpp ActionTest.hpp ActionBase.hpp HostsResult.hpp 
	$(CC) ActionTest.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

ThreshAction.o : ThreshAction.cpp ThreshAction.hpp ActionBase.hpp WifiResult.hpp ThreshAction.hpp
	$(CC) ThreshAction.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

TimerSource.o : TimerSource.cpp TimerSource.hpp Task.hpp Test.hpp MonitorScheduler.hpp
	$(CC) TimerSource.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

TriggerSource.o : TriggerSource.cpp TriggerSource.hpp Task.hpp Test.hpp
	$(CC) TriggerSource.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

TestSource.o : TestSource.cpp TestSource.hpp Task.hpp Test.hpp
	$(CC) TestSource.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

main.o : main.cpp InitSystem.hpp
	$(CC) main.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

main :
	$(CC) main.cpp $(CFLAGS) $(CPPFLAGS) $(LIBS)

clean:
	rm -f *.o setup

