You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

Makefile 6.7 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. #
  2. # Top Level Makefile for LAPACK
  3. # Version 3.4.1
  4. # April 2012
  5. #
  6. TOPSRCDIR = .
  7. include $(TOPSRCDIR)/make.inc
  8. .PHONY: all
  9. all: lapack_install lib blas_testing lapack_testing
  10. .PHONY: lib
  11. lib: lapacklib tmglib
  12. #lib: blaslib variants lapacklib tmglib
  13. .PHONY: blaslib
  14. blaslib:
  15. $(MAKE) -C BLAS
  16. .PHONY: cblaslib
  17. cblaslib:
  18. $(MAKE) -C CBLAS
  19. .PHONY: lapacklib
  20. lapacklib:
  21. $(MAKE) -C SRC
  22. .PHONY: lapackelib
  23. lapackelib:
  24. $(MAKE) -C LAPACKE
  25. .PHONY: blaspplib
  26. blaspplib:
  27. @echo "Thank you for your interest in BLAS++, a newly developed C++ API for BLAS library"
  28. @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."
  29. @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"
  30. @echo "For support BLAS++ related question, please email: slate-user@icl.utk.edu"
  31. .PHONY: lapackpplib
  32. lapackpplib:
  33. @echo "Thank you for your interest in LAPACK++, a newly developed C++ API for LAPACK library"
  34. @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."
  35. @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"
  36. @echo "For support LAPACK++ related question, please email: slate-user@icl.utk.edu"
  37. .PHONY: tmglib
  38. tmglib:
  39. $(MAKE) -C TESTING/MATGEN
  40. .PHONY: variants
  41. variants:
  42. $(MAKE) -C SRC/VARIANTS
  43. .PHONY: lapack_install
  44. lapack_install:
  45. $(MAKE) -C INSTALL run
  46. .PHONY: blas_testing
  47. blas_testing: blaslib
  48. $(MAKE) -C BLAS blas_testing
  49. .PHONY: cblas_testing
  50. cblas_testing: cblaslib blaslib
  51. $(MAKE) -C CBLAS cblas_testing
  52. .PHONY: lapack_testing
  53. lapack_testing: tmglib lapacklib blaslib
  54. $(MAKE) -C TESTING/LIN cleanexe
  55. $(MAKE) -C TESTING
  56. ./lapack_testing.py
  57. .PHONY: variants_testing
  58. variants_testing: tmglib variants lapacklib blaslib
  59. $(MAKE) -C TESTING/LIN cleanexe
  60. $(MAKE) -C TESTING/LIN VARLIB='../../SRC/VARIANTS/cholrl.a'
  61. $(MAKE) -C TESTING stest.out && mv TESTING/stest.out TESTING/stest_cholrl.out
  62. $(MAKE) -C TESTING dtest.out && mv TESTING/dtest.out TESTING/dtest_cholrl.out
  63. $(MAKE) -C TESTING ctest.out && mv TESTING/ctest.out TESTING/ctest_cholrl.out
  64. $(MAKE) -C TESTING ztest.out && mv TESTING/ztest.out TESTING/ztest_cholrl.out
  65. $(MAKE) -C TESTING/LIN cleanexe
  66. $(MAKE) -C TESTING/LIN VARLIB='../../SRC/VARIANTS/choltop.a'
  67. $(MAKE) -C TESTING stest.out && mv TESTING/stest.out TESTING/stest_choltop.out
  68. $(MAKE) -C TESTING dtest.out && mv TESTING/dtest.out TESTING/dtest_choltop.out
  69. $(MAKE) -C TESTING ctest.out && mv TESTING/ctest.out TESTING/ctest_choltop.out
  70. $(MAKE) -C TESTING ztest.out && mv TESTING/ztest.out TESTING/ztest_choltop.out
  71. $(MAKE) -C TESTING/LIN cleanexe
  72. $(MAKE) -C TESTING/LIN VARLIB='../../SRC/VARIANTS/lucr.a'
  73. $(MAKE) -C TESTING stest.out && mv TESTING/stest.out TESTING/stest_lucr.out
  74. $(MAKE) -C TESTING dtest.out && mv TESTING/dtest.out TESTING/dtest_lucr.out
  75. $(MAKE) -C TESTING ctest.out && mv TESTING/ctest.out TESTING/ctest_lucr.out
  76. $(MAKE) -C TESTING ztest.out && mv TESTING/ztest.out TESTING/ztest_lucr.out
  77. $(MAKE) -C TESTING/LIN cleanexe
  78. $(MAKE) -C TESTING/LIN VARLIB='../../SRC/VARIANTS/lull.a'
  79. $(MAKE) -C TESTING stest.out && mv TESTING/stest.out TESTING/stest_lull.out
  80. $(MAKE) -C TESTING dtest.out && mv TESTING/dtest.out TESTING/dtest_lull.out
  81. $(MAKE) -C TESTING ctest.out && mv TESTING/ctest.out TESTING/ctest_lull.out
  82. $(MAKE) -C TESTING ztest.out && mv TESTING/ztest.out TESTING/ztest_lull.out
  83. $(MAKE) -C TESTING/LIN cleanexe
  84. $(MAKE) -C TESTING/LIN VARLIB='../../SRC/VARIANTS/lurec.a'
  85. $(MAKE) -C TESTING stest.out && mv TESTING/stest.out TESTING/stest_lurec.out
  86. $(MAKE) -C TESTING dtest.out && mv TESTING/dtest.out TESTING/dtest_lurec.out
  87. $(MAKE) -C TESTING ctest.out && mv TESTING/ctest.out TESTING/ctest_lurec.out
  88. $(MAKE) -C TESTING ztest.out && mv TESTING/ztest.out TESTING/ztest_lurec.out
  89. $(MAKE) -C TESTING/LIN cleanexe
  90. $(MAKE) -C TESTING/LIN VARLIB='../../SRC/VARIANTS/qrll.a'
  91. $(MAKE) -C TESTING stest.out && mv TESTING/stest.out TESTING/stest_qrll.out
  92. $(MAKE) -C TESTING dtest.out && mv TESTING/dtest.out TESTING/dtest_qrll.out
  93. $(MAKE) -C TESTING ctest.out && mv TESTING/ctest.out TESTING/ctest_qrll.out
  94. $(MAKE) -C TESTING ztest.out && mv TESTING/ztest.out TESTING/ztest_qrll.out
  95. .PHONY: cblas_example
  96. cblas_example: cblaslib blaslib
  97. $(MAKE) -C CBLAS cblas_example
  98. .PHONY: lapacke_example
  99. lapacke_example: lapackelib lapacklib blaslib
  100. $(MAKE) -C LAPACKE lapacke_example
  101. .PHONY: html
  102. html:
  103. @echo "LAPACK HTML PAGES GENERATION with Doxygen"
  104. doxygen DOCS/Doxyfile
  105. @echo "=================="
  106. @echo "LAPACK HTML PAGES GENERATED in DOCS/explore-html"
  107. @echo "Usage: open DOCS/explore-html/index.html"
  108. @echo "Online version available at http://www.netlib.org/lapack/explore-html/"
  109. @echo "=================="
  110. .PHONY: man
  111. man:
  112. @echo "LAPACK MAN PAGES GENERATION with Doxygen"
  113. doxygen DOCS/Doxyfile_man
  114. @echo "=================="
  115. @echo "LAPACK MAN PAGES GENERATED in DOCS/MAN"
  116. @echo "Set your MANPATH env variable accordingly"
  117. @echo "Usage: man dgetrf.f"
  118. @echo "=================="
  119. .PHONY: clean cleanobj cleanlib cleanexe cleantest
  120. clean:
  121. $(MAKE) -C INSTALL clean
  122. $(MAKE) -C BLAS clean
  123. $(MAKE) -C CBLAS clean
  124. $(MAKE) -C SRC clean
  125. $(MAKE) -C SRC/VARIANTS clean
  126. $(MAKE) -C TESTING clean
  127. $(MAKE) -C TESTING/MATGEN clean
  128. $(MAKE) -C TESTING/LIN clean
  129. $(MAKE) -C TESTING/EIG clean
  130. $(MAKE) -C LAPACKE clean
  131. rm -f *.a
  132. cleanobj:
  133. $(MAKE) -C INSTALL cleanobj
  134. $(MAKE) -C BLAS cleanobj
  135. $(MAKE) -C CBLAS cleanobj
  136. $(MAKE) -C SRC cleanobj
  137. $(MAKE) -C SRC/VARIANTS cleanobj
  138. $(MAKE) -C TESTING/MATGEN cleanobj
  139. $(MAKE) -C TESTING/LIN cleanobj
  140. $(MAKE) -C TESTING/EIG cleanobj
  141. $(MAKE) -C LAPACKE cleanobj
  142. cleanlib:
  143. $(MAKE) -C BLAS cleanlib
  144. $(MAKE) -C CBLAS cleanlib
  145. $(MAKE) -C SRC cleanlib
  146. $(MAKE) -C SRC/VARIANTS cleanlib
  147. $(MAKE) -C TESTING/MATGEN cleanlib
  148. $(MAKE) -C LAPACKE cleanlib
  149. rm -f *.a
  150. cleanexe:
  151. $(MAKE) -C INSTALL cleanexe
  152. $(MAKE) -C BLAS cleanexe
  153. $(MAKE) -C CBLAS cleanexe
  154. $(MAKE) -C TESTING/LIN cleanexe
  155. $(MAKE) -C TESTING/EIG cleanexe
  156. $(MAKE) -C LAPACKE cleanexe
  157. cleantest:
  158. $(MAKE) -C INSTALL cleantest
  159. $(MAKE) -C BLAS cleantest
  160. $(MAKE) -C CBLAS cleantest
  161. $(MAKE) -C TESTING cleantest