192 lines
7.1 KiB
Makefile
192 lines
7.1 KiB
Makefile
#
|
|
# Top Level Makefile for LAPACK
|
|
#
|
|
|
|
TOPSRCDIR = .
|
|
include $(TOPSRCDIR)/make.inc
|
|
|
|
.PHONY: all
|
|
all: lapack_install lib blas_testing lapack_testing
|
|
|
|
.PHONY: lib
|
|
lib: lapacklib tmglib
|
|
#lib: blaslib variants lapacklib tmglib
|
|
|
|
.PHONY: blaslib
|
|
blaslib:
|
|
$(MAKE) -C BLAS
|
|
|
|
.PHONY: cblaslib
|
|
cblaslib:
|
|
$(MAKE) -C CBLAS
|
|
|
|
.PHONY: lapacklib
|
|
lapacklib:
|
|
$(MAKE) -C SRC
|
|
|
|
.PHONY: lapackelib
|
|
lapackelib:
|
|
$(MAKE) -C LAPACKE
|
|
|
|
.PHONY: blaspplib
|
|
blaspplib:
|
|
@echo "Thank you for your interest in BLAS++, a newly developed C++ API for BLAS library"
|
|
@echo "The objective of BLAS++ is to provide a convenient, performance oriented API for development in the C++ language, that, for the most part, preserves established conventions, while, at the same time, takes advantages of modern C++ features, such as: namespaces, templates, exceptions, etc."
|
|
@echo "We are still working on integrating BLAS++ in our library. For the moment, you can download directly blas++ from https://bitbucket.org/icl/blaspp"
|
|
@echo "For support BLAS++ related question, please email: slate-user@icl.utk.edu"
|
|
|
|
.PHONY: lapackpplib
|
|
lapackpplib:
|
|
@echo "Thank you for your interest in LAPACK++, a newly developed C++ API for LAPACK library"
|
|
@echo "The objective of LAPACK++ is to provide a convenient, performance oriented API for development in the C++ language, that, for the most part, preserves established conventions, while, at the same time, takes advantages of modern C++ features, such as: namespaces, templates, exceptions, etc."
|
|
@echo "We are still working on integrating LAPACK++ in our library. For the moment, you can download directly lapack++ from https://bitbucket.org/icl/lapackpp"
|
|
@echo "For support LAPACK++ related question, please email: slate-user@icl.utk.edu"
|
|
|
|
.PHONY: tmglib
|
|
tmglib:
|
|
$(MAKE) -C TESTING/MATGEN
|
|
|
|
.PHONY: variants
|
|
variants:
|
|
$(MAKE) -C SRC/VARIANTS
|
|
|
|
.PHONY: lapack_install
|
|
lapack_install:
|
|
$(MAKE) -C INSTALL run
|
|
|
|
.PHONY: blas_testing
|
|
blas_testing: blaslib
|
|
$(MAKE) -C BLAS blas_testing
|
|
|
|
.PHONY: cblas_testing
|
|
cblas_testing: cblaslib blaslib
|
|
$(MAKE) -C CBLAS cblas_testing
|
|
|
|
.PHONY: lapack_testing
|
|
lapack_testing: tmglib lapacklib blaslib
|
|
$(MAKE) -C TESTING/LIN cleanexe
|
|
$(MAKE) -C TESTING
|
|
./lapack_testing.py
|
|
|
|
.PHONY: variants_testing
|
|
variants_testing: tmglib variants lapacklib blaslib
|
|
$(MAKE) -C TESTING/LIN cleanexe
|
|
$(MAKE) -C TESTING/LIN VARLIB='../../SRC/VARIANTS/cholrl.a'
|
|
$(MAKE) -C TESTING stest.out && mv TESTING/stest.out TESTING/stest_cholrl.out
|
|
$(MAKE) -C TESTING dtest.out && mv TESTING/dtest.out TESTING/dtest_cholrl.out
|
|
$(MAKE) -C TESTING ctest.out && mv TESTING/ctest.out TESTING/ctest_cholrl.out
|
|
$(MAKE) -C TESTING ztest.out && mv TESTING/ztest.out TESTING/ztest_cholrl.out
|
|
$(MAKE) -C TESTING/LIN cleanexe
|
|
$(MAKE) -C TESTING/LIN VARLIB='../../SRC/VARIANTS/choltop.a'
|
|
$(MAKE) -C TESTING stest.out && mv TESTING/stest.out TESTING/stest_choltop.out
|
|
$(MAKE) -C TESTING dtest.out && mv TESTING/dtest.out TESTING/dtest_choltop.out
|
|
$(MAKE) -C TESTING ctest.out && mv TESTING/ctest.out TESTING/ctest_choltop.out
|
|
$(MAKE) -C TESTING ztest.out && mv TESTING/ztest.out TESTING/ztest_choltop.out
|
|
$(MAKE) -C TESTING/LIN cleanexe
|
|
$(MAKE) -C TESTING/LIN VARLIB='../../SRC/VARIANTS/lucr.a'
|
|
$(MAKE) -C TESTING stest.out && mv TESTING/stest.out TESTING/stest_lucr.out
|
|
$(MAKE) -C TESTING dtest.out && mv TESTING/dtest.out TESTING/dtest_lucr.out
|
|
$(MAKE) -C TESTING ctest.out && mv TESTING/ctest.out TESTING/ctest_lucr.out
|
|
$(MAKE) -C TESTING ztest.out && mv TESTING/ztest.out TESTING/ztest_lucr.out
|
|
$(MAKE) -C TESTING/LIN cleanexe
|
|
$(MAKE) -C TESTING/LIN VARLIB='../../SRC/VARIANTS/lull.a'
|
|
$(MAKE) -C TESTING stest.out && mv TESTING/stest.out TESTING/stest_lull.out
|
|
$(MAKE) -C TESTING dtest.out && mv TESTING/dtest.out TESTING/dtest_lull.out
|
|
$(MAKE) -C TESTING ctest.out && mv TESTING/ctest.out TESTING/ctest_lull.out
|
|
$(MAKE) -C TESTING ztest.out && mv TESTING/ztest.out TESTING/ztest_lull.out
|
|
$(MAKE) -C TESTING/LIN cleanexe
|
|
$(MAKE) -C TESTING/LIN VARLIB='../../SRC/VARIANTS/lurec.a'
|
|
$(MAKE) -C TESTING stest.out && mv TESTING/stest.out TESTING/stest_lurec.out
|
|
$(MAKE) -C TESTING dtest.out && mv TESTING/dtest.out TESTING/dtest_lurec.out
|
|
$(MAKE) -C TESTING ctest.out && mv TESTING/ctest.out TESTING/ctest_lurec.out
|
|
$(MAKE) -C TESTING ztest.out && mv TESTING/ztest.out TESTING/ztest_lurec.out
|
|
$(MAKE) -C TESTING/LIN cleanexe
|
|
$(MAKE) -C TESTING/LIN VARLIB='../../SRC/VARIANTS/qrll.a'
|
|
$(MAKE) -C TESTING stest.out && mv TESTING/stest.out TESTING/stest_qrll.out
|
|
$(MAKE) -C TESTING dtest.out && mv TESTING/dtest.out TESTING/dtest_qrll.out
|
|
$(MAKE) -C TESTING ctest.out && mv TESTING/ctest.out TESTING/ctest_qrll.out
|
|
$(MAKE) -C TESTING ztest.out && mv TESTING/ztest.out TESTING/ztest_qrll.out
|
|
|
|
.PHONY: cblas_example
|
|
cblas_example: cblaslib blaslib
|
|
$(MAKE) -C CBLAS cblas_example
|
|
|
|
.PHONY: lapacke_example
|
|
lapacke_example: lapackelib lapacklib blaslib
|
|
$(MAKE) -C LAPACKE lapacke_example
|
|
|
|
# doxygen 1.9.7 converts --- to — but than has a bug that
|
|
# encodes that as — on some pages. Use perl to fix it.
|
|
.PHONY: html
|
|
html:
|
|
@echo "LAPACK HTML page generation with Doxygen"
|
|
(cat DOCS/Doxyfile; \
|
|
echo "OUTPUT_DIRECTORY=$(DOCSDIR)") | doxygen -
|
|
grep '&mdash' -r $(DOCSDIR)/explore-html -l | xargs perl -pi -e 's/—/—/g'
|
|
@echo "=================="
|
|
@echo "LAPACK HTML pages generated in $(DOCSDIR)/explore-html"
|
|
@echo "Usage: open $(DOCSDIR)/explore-html/index.html"
|
|
@echo "Online version available at http://www.netlib.org/lapack/explore-html/"
|
|
@echo "=================="
|
|
|
|
# Use same Doxyfile for man, and override the few options that change.
|
|
.PHONY: man
|
|
man:
|
|
@echo "LAPACK man page generation with Doxygen"
|
|
(cat DOCS/Doxyfile; \
|
|
echo "OUTPUT_DIRECTORY = $(DOCSDIR)"; \
|
|
echo "GENERATE_HTML = NO"; \
|
|
echo "GENERATE_MAN = YES"; \
|
|
echo "CALL_GRAPH = NO"; \
|
|
echo "CALLER_GRAPH = NO"; \
|
|
echo "INLINE_SOURCES = NO") | doxygen -
|
|
@echo "=================="
|
|
@echo "LAPACK man pages generated in DOCS/man"
|
|
@echo "Set your MANPATH env variable accordingly"
|
|
@echo "Usage: man dgetrf"
|
|
@echo "=================="
|
|
|
|
.PHONY: clean cleanobj cleanlib cleanexe cleantest
|
|
clean:
|
|
$(MAKE) -C INSTALL clean
|
|
$(MAKE) -C BLAS clean
|
|
$(MAKE) -C CBLAS clean
|
|
$(MAKE) -C SRC clean
|
|
$(MAKE) -C SRC/VARIANTS clean
|
|
$(MAKE) -C TESTING clean
|
|
$(MAKE) -C TESTING/MATGEN clean
|
|
$(MAKE) -C TESTING/LIN clean
|
|
$(MAKE) -C TESTING/EIG clean
|
|
$(MAKE) -C LAPACKE clean
|
|
rm -f *.a
|
|
cleanobj:
|
|
$(MAKE) -C INSTALL cleanobj
|
|
$(MAKE) -C BLAS cleanobj
|
|
$(MAKE) -C CBLAS cleanobj
|
|
$(MAKE) -C SRC cleanobj
|
|
$(MAKE) -C SRC/VARIANTS cleanobj
|
|
$(MAKE) -C TESTING/MATGEN cleanobj
|
|
$(MAKE) -C TESTING/LIN cleanobj
|
|
$(MAKE) -C TESTING/EIG cleanobj
|
|
$(MAKE) -C LAPACKE cleanobj
|
|
cleanlib:
|
|
$(MAKE) -C BLAS cleanlib
|
|
$(MAKE) -C CBLAS cleanlib
|
|
$(MAKE) -C SRC cleanlib
|
|
$(MAKE) -C SRC/VARIANTS cleanlib
|
|
$(MAKE) -C TESTING/MATGEN cleanlib
|
|
$(MAKE) -C LAPACKE cleanlib
|
|
rm -f *.a
|
|
cleanexe:
|
|
$(MAKE) -C INSTALL cleanexe
|
|
$(MAKE) -C BLAS cleanexe
|
|
$(MAKE) -C CBLAS cleanexe
|
|
$(MAKE) -C TESTING/LIN cleanexe
|
|
$(MAKE) -C TESTING/EIG cleanexe
|
|
$(MAKE) -C LAPACKE cleanexe
|
|
cleantest:
|
|
$(MAKE) -C INSTALL cleantest
|
|
$(MAKE) -C BLAS cleantest
|
|
$(MAKE) -C CBLAS cleantest
|
|
$(MAKE) -C TESTING cleantest
|