# Makefile for libs/monitor/system
# Satofumi KAMIMURA
# $Id: Makefile 1053 2009-06-20 22:52:51Z satofumi $

# Compile options
CC = g++
CXXFLAGS = -g -O0 -Wall -W -Werror $(INCLUDES)
INCLUDES = -I../../system -I..
LDFLAGS =
LDLIBS =


# Target
MONITOR_SYSTEM_LIB = monitor_system.a
TARGET = $(MONITOR_SYSTEM_LIB)

all : $(TARGET)

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

test : allTest
	./allTest

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

.PHONY : all clean depend test
######################################################################
$(MONITOR_SYSTEM_LIB) : \
	$(MONITOR_SYSTEM_LIB)(MonitorModeManager.o) \
	$(MONITOR_SYSTEM_LIB)(findFiles.o) \
	$(MONITOR_SYSTEM_LIB)(StopWatch.o) \
	$(MONITOR_SYSTEM_LIB)(ticks.o) \
	$(MONITOR_SYSTEM_LIB)(delay.o) \
	$(MONITOR_SYSTEM_LIB)(log_printf.o) \

REQUIRE_LIBS = $(MONITOR_SYSTEM_LIB) ../../common/common.a ../../system/sdl/system_sdl.a ../../system/system.a
$(REQUIRE_LIBS) :
	cd $(@D)/ && $(MAKE) $(@F)

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

TEST_OBJS = allTest.o TestMonitorModeManager.o $(REQUIRE_LIBS)
TEST_LDLIBS = `sdl-config --libs`
allTest : $(TEST_OBJS)
	$(CXX) $(CXXFLAGS) $(TEST_OBJS) -o $@ `cppunit-config --libs` $(TEST_LDLIBS)

# DO NOT DELETE

Lock.o: ConditionVariable.h
MonitorModeManager.o: MonitorModeManager.h
StopWatch.o: ../../system/StopWatch.h
TestMonitorModeManager.o: TestMonitorModeManager.h MonitorModeManager.h
delay.o: ../../system/delay.h system_delay.h MonitorModeManager.h
findFiles.o: ../../system/findFiles.h ../../system/DetectOS.h
log_printf.o: ../../system/log_printf.h
ticks.o: ../../system/ticks.h system_ticks.h MonitorModeManager.h
