CXX = g++
CXXFLAGS = -Wall -O3 -ffast-math -mmmx -msse2 -mfpmath=sse
AR = ar
RM = del
CVDIR = c:/program files/opencv
CVINCS = -I "$(CVDIR)/cxcore/include" -I "$(CVDIR)/cvaux/include" -I "$(CVDIR)/ml/include" -I "$(CVDIR)/cv/include" -I "$(CVDIR)/otherlibs/highgui"
INCS = -I ./include
LIBS = -L "$(CVDIR)/lib" -L ./lib
STATICLIBS = -lml -lcv -lcxcore -lhighgui -lxml2 -labr

.PHONY: all clean

%.o: %.cpp %.h
	$(CXX) $(CXXFLAGS) $(INCS) -c $< -o $@
    
all: bin/demo.exe
    
lib/libabr.a: src/imagetools.o src/pyramid.o src/classifier.o src/simplexml.o src/features.o
	$(AR) -r $@ $^
    
bin/demo.exe: lib/libabr.a
	$(CXX) src/demo.cpp -o $@ $(CXXFLAGS) $^ $(INCS) $(CVINCS) $(LIBS) $(STATICLIBS)

clean:
	$(RM) src\*.o lib\libabr.a bin\demo.exe
