INC_FLAG = -IIndex -IDomain -IMathFunction
GCCFLAG = -c -Wall -Wno-deprecated -g3 
CC = g++-3.4

OBJS_01 = MultiIdx.o SimplexPoint.o SimploidPoint.o  MatrixIdx.o AffineTransformation.o TensorPoint.o  HyperIdx.o

all: conversionV2

clean:
	rm -rf *.o exec
	
conversionV2: conversionV2.o Bernstein.o
	$(CC) -g -o exec conversionV2.o $(OBJS_01) Bernstein.o
	
conversionV2.o:
	$(CC) $(GCCFLAG) conversionV2.cpp
	
MultiIdx.o:
	$(CC) $(GCCFLAG) Index/MultiIdx.cpp $(INC)

SimplexPoint.o: MultiIdx.o
	$(CC) $(GCCFLAG) Domain/SimplexPoint.cpp $(INC) 

SimploidPoint.o: SimplexPoint.o
	$(CC) $(GCCFLAG) Domain/SimploidPoint.cpp $(INC)

MatrixIdx.o: MultiIdx.o
	$(CC) $(GCCFLAG) Index/MatrixIdx.cpp $(INC) 

HyperIdx.o: MultiIdx.o
	$(CC) $(GCCFLAG) Index/HyperIdx.cpp $(INC)

AffineTransformation.o: SimplexPoint.o MatrixIdx.o
	$(CC) $(GCCFLAG) Domain/AffineTransformation.cpp $(INC)
	
TensorPoint.o:	SimplexPoint.o SimploidPoint.o
	$(CC) $(GCCFLAG) Domain/TensorPoint.cpp  $(INC)
	
Bernstein.o: $(OBJS_01)
	$(CC) $(GCCFLAG) MathFunction/Bernstein.cpp $(INC)
	
