# Makefile for libs/common
# Satofumi KAMIMURA
# $Id$

# Compile options
CC = g++
CXXFLAGS = -g -O0 -Wall -Werror ${INCLUDES}
INCLUDES = -I. -I../system -I../geometry
LDFLAGS =
LDLIBS =


# Target
COMMON_LIB = common.a
TARGET = ${COMMON_LIB}

all : ${TARGET}

clean :
	${RM} *.o ${TARGET} allTest

test : allTest
	./allTest

depend :
	makedepend -Y -- ${INCLUDES} -- ${wildcard *.h *.cpp}

.PHONY : all clean depend test
######################################################################
${COMMON_LIB} : \
	${COMMON_LIB}(FindFiles.o) \
	${COMMON_LIB}(split.o) \


REQUIRE_LIBS = ${COMMON_LIB} ../geometry/geometry.a
${REQUIRE_LIBS} :
	cd ${@D}/ && ${MAKE} ${@F}

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

TEST_OBJS = allTest.o TestRingBuffer.o TestMovingAverage.o TestSplit.o TestMovingMedian.o TestLeastSquare.o ${REQUIRE_LIBS}
allTest : ${TEST_OBJS}
	${CXX} ${CXXFLAGS} ${TEST_OBJS} -o $@ `cppunit-config --libs` ${TEST_LDLIBS}

# DO NOT DELETE

LeastSquare.o: ../geometry/AngleTypes.h ../system/MathUtils.h
LeastSquare.o: ../system/DetectOS.h
FindFiles.o: FindFiles.h ../system/DetectOS.h
TestLeastSquare.o: TestLeastSquare.h LeastSquare.h ../geometry/AngleTypes.h
TestLeastSquare.o: ../system/MathUtils.h ../system/DetectOS.h
TestMovingAverage.o: TestMovingAverage.h MovingAverage.h
TestMovingMedian.o: TestMovingMedian.h MovingMedian.h
TestRingBuffer.o: TestRingBuffer.h RingBuffer.h
TestSplit.o: TestSplit.h split.h
split.o: split.h
