 
CC = cc
CC = gcc
 
CFLAGS = -Wall -g
CFLAGS = -O
CFLAGS = -Wall -O4

PURIFY = /usr/local/purify-3.2/purify
PURIFY =
 
.SUFFIXES : .o .c .a
 
.c.a : ;
 
#-----------------------------------------------------------------------

LIBS = \
       ../src/Graph.a \
       ../../DInpMtx/src/DInpMtx.a \
       ../../IVL/src/IVL.a \
       ../../IV/src/IV.a \
       ../../DV/src/DV.a \
       ../../Utilities/src/Utilities.a \
       ../../Drand/src/Drand.a \
       -lm

DRIVERS = checkComponents \
          compressGraph \
          expandGraph \
          mkGridGraph \
          testIO \
          testIsSymmetric \
          testSchurComplement \
          testWirebasket\
          writeMetisFile
 
libs :
	cd ../src ; make Graph.a
	cd ../../DInpMtx/src ; make DInpMtx.a
	cd ../../IVL/src ; make IVL.a
	cd ../../IV/src ; make IV.a
	cd ../../DV/src ; make DV.a
	cd ../../Utilities/src ; make Utilities.a
	cd ../../Drand/src ; make Drand.a

all : ${DRIVERS}

clean :
	rm -f *.a *.o ${DRIVERS}

checkComponents : checkComponents.o libs
	${PURIFY} ${CC} $@.o -o $@ ${LIBS} -lm

compressGraph : compressGraph.o libs
	${PURIFY} ${CC} $@.o -o $@ ${LIBS} -lm

expandGraph : expandGraph.o libs
	${PURIFY} ${CC} $@.o -o $@ ${LIBS} -lm

mkGridGraph : mkGridGraph.o libs
	${PURIFY} ${CC} $@.o -o $@ ${LIBS} -lm

testIO : testIO.o libs
	${PURIFY} ${CC} $@.o -o $@ ${LIBS} -lm

testIsSymmetric : testIsSymmetric.o libs
	${PURIFY} ${CC} $@.o -o $@ ${LIBS} -lm

testSchurComplement : testSchurComplement.o libs
	${PURIFY} ${CC} $@.o -o $@ ${LIBS} -lm

testWirebasket : testWirebasket.o libs
	${PURIFY} ${CC} $@.o -o $@ ${LIBS} -lm

writeMetisFile : writeMetisFile.o libs
	${PURIFY} ${CC} $@.o -o $@ ${LIBS} -lm
