# NIST SPARSE BLAS v. 0.9 (Sat Jul 6 14:27:21 EDT 1996)
###########################################################
#
# Makefile for NIST Sparse BLAS Library 
#
###########################################################

include ./makefile.def

all:  help

help:
	@echo "|-------------------------------------------------------------|"
	@echo "| Usage:                                                      |"
	@echo "|          make install  (make lib and C and Fortran testers) |"
	@echo "|          make installc (make lib and C testers)             |"
	@echo "|          make library  (build library archive file)         |"
	@echo "|          make testc    (make C testers and run)             |"
	@echo "|          make testf77  (make Fortran testers and run)       |"
	@echo "|          make clean    (remove .o files)                    |"
	@echo "|-------------------------------------------------------------|"

library: $(TOOLKIT_A)

$(TOOLKIT_A) : src_tkc src_tkf src_lite
	cd src_tkc; make;
	cd src_tkf; make;
	cd src_lite; make library;
	@ make done

install: library testc testf77
	@ make donet

installc: library testc
	@ make done

testc: $(TOOLKIT_A)
	cd test_c; make run_tests;

testf77: $(TOOLKIT_A)
	@ case x$(HASFORTRAN) in xt ) echo make testf77; cd test_f77; make run_tests;; esac
	@ case x$(HASFORTRAN) in xf ) echo No Fortran compiler;echo Check setting in makefile.def;; esac
#
#  (For developer's only)   
#  make re-install (regenerate source after changes to generating source code)
#

re-install:
	cd SRC_GEN; make re-install;
	make install;

done:
	@echo "|                                                               "
	@echo "| Completed installation of Sparse BLAS Toolkit in $(TOOLKIT_A) "
	@echo "|                                                               "
donet:
	@echo "|                                                               "
	@echo "| Completed installation and testing of Sparse BLAS Toolkit in $(TOOLKIT_A) "
	@echo "|                                                               "


clean:
	cd src_tkc; make clean;
	cd src_tkf; make clean;
	cd src_lite; make clean;
	cd test_c; make clean;
	cd test_f77; make clean;
