#
# Matrix Market Matrix File I/O
#
include ../bncmake.inc

all: libbncmm ex_mm_read ex_mm_write ex_mm_read_ex ex_mm_write_ex ex_readmatrix

.c.o: ../bnc.h ./bncsparse.h bncmm.h mmio.h
	$(CC) -c $(INCLUDES) $<

libbncmm: mmio.o readmatrix.o writematrix.o
	$(AR) libbncmm.a mmio.o
	$(AR) libbncmm.a readmatrix.o
	$(AR) libbncmm.a writematrix.o

ex_mm_read: example_read.o mmio.o
	$(CC) -o ex_mm_read $(INCLUDES) example_read.o libbncmm.a $(LIBS)

ex_mm_read_ex: example_read_ex.o mmio.o
	$(CC) -o ex_mm_read_ex $(INCLUDES) example_read_ex.o libbncmm.a $(LIBS)

ex_mm_write: example_write.o mmio.o
	$(CC) -o ex_mm_write $(INCLUDES) example_write.o libbncmm.a $(LIBS)

ex_mm_write_ex: example_write_ex.o mmio.o
	$(CC) -o ex_mm_write_ex $(INCLUDES) example_write_ex.o libbncmm.a $(LIBS)

ex_readmatrix: example_readmatrix.o mmio.o
	$(CC) -o ex_readmatrix $(INCLUDES) example_readmatrix.o libbncmm.a $(LIBSPARSE) $(LIBS)

clean:
	-rm *.o
	-rm *.a
	-rm ex_mm_read
	-rm ex_mm_write
	-rm ex_mm_read_ex
	-rm ex_mm_write_ex
	-rm ex_readmatrix
