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 5.8 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. include ../../make.inc
  2. #######################################################################
  3. # This is the makefile to create a library for the BLAS.
  4. # The files are grouped as follows:
  5. #
  6. # SBLAS1 -- Single precision real BLAS routines
  7. # CBLAS1 -- Single precision complex BLAS routines
  8. # DBLAS1 -- Double precision real BLAS routines
  9. # ZBLAS1 -- Double precision complex BLAS routines
  10. #
  11. # CB1AUX -- Real BLAS routines called by complex routines
  12. # ZB1AUX -- D.P. real BLAS routines called by d.p. complex
  13. # routines
  14. #
  15. # ALLBLAS -- Auxiliary routines for Level 2 and 3 BLAS
  16. #
  17. # SBLAS2 -- Single precision real BLAS2 routines
  18. # CBLAS2 -- Single precision complex BLAS2 routines
  19. # DBLAS2 -- Double precision real BLAS2 routines
  20. # ZBLAS2 -- Double precision complex BLAS2 routines
  21. #
  22. # SBLAS3 -- Single precision real BLAS3 routines
  23. # CBLAS3 -- Single precision complex BLAS3 routines
  24. # DBLAS3 -- Double precision real BLAS3 routines
  25. # ZBLAS3 -- Double precision complex BLAS3 routines
  26. #
  27. # The library can be set up to include routines for any combination
  28. # of the four precisions. To create or add to the library, enter make
  29. # followed by one or more of the precisions desired. Some examples:
  30. # make single
  31. # make single complex
  32. # make single double complex complex16
  33. # Note that these commands are not safe for parallel builds.
  34. #
  35. # Alternatively, the commands
  36. # make all
  37. # or
  38. # make
  39. # without any arguments creates a library of all four precisions.
  40. # The name of the library is held in BLASLIB, which is set in the
  41. # top-level make.inc
  42. #
  43. # To remove the object files after the library is created, enter
  44. # make clean
  45. # To force the source files to be recompiled, enter, for example,
  46. # make single FRC=FRC
  47. #
  48. #---------------------------------------------------------------------
  49. #
  50. # Edward Anderson, University of Tennessee
  51. # March 26, 1990
  52. # Susan Ostrouchov, Last updated September 30, 1994
  53. # ejr, May 2006.
  54. #
  55. #######################################################################
  56. all: $(BLASLIB)
  57. #---------------------------------------------------------
  58. # Comment out the next 6 definitions if you already have
  59. # the Level 1 BLAS.
  60. #---------------------------------------------------------
  61. SBLAS1 = isamax.o sasum.o saxpy.o scopy.o sdot.o snrm2.o \
  62. srot.o srotg.o sscal.o sswap.o sdsdot.o srotmg.o srotm.o
  63. $(SBLAS1): $(FRC)
  64. CBLAS1 = scabs1.o scasum.o scnrm2.o icamax.o caxpy.o ccopy.o \
  65. cdotc.o cdotu.o csscal.o crotg.o cscal.o cswap.o csrot.o
  66. $(CBLAS1): $(FRC)
  67. DBLAS1 = idamax.o dasum.o daxpy.o dcopy.o ddot.o dnrm2.o \
  68. drot.o drotg.o dscal.o dsdot.o dswap.o drotmg.o drotm.o
  69. $(DBLAS1): $(FRC)
  70. ZBLAS1 = dcabs1.o dzasum.o dznrm2.o izamax.o zaxpy.o zcopy.o \
  71. zdotc.o zdotu.o zdscal.o zrotg.o zscal.o zswap.o zdrot.o
  72. $(ZBLAS1): $(FRC)
  73. CB1AUX = isamax.o sasum.o saxpy.o scopy.o snrm2.o sscal.o
  74. $(CB1AUX): $(FRC)
  75. ZB1AUX = idamax.o dasum.o daxpy.o dcopy.o dnrm2.o dscal.o
  76. $(ZB1AUX): $(FRC)
  77. #---------------------------------------------------------------------
  78. # The following line defines auxiliary routines needed by both the
  79. # Level 2 and Level 3 BLAS. Comment it out only if you already have
  80. # both the Level 2 and 3 BLAS.
  81. #---------------------------------------------------------------------
  82. ALLBLAS = lsame.o xerbla.o xerbla_array.o
  83. $(ALLBLAS) : $(FRC)
  84. #---------------------------------------------------------
  85. # Comment out the next 4 definitions if you already have
  86. # the Level 2 BLAS.
  87. #---------------------------------------------------------
  88. SBLAS2 = sgemv.o sgbmv.o ssymv.o ssbmv.o sspmv.o \
  89. strmv.o stbmv.o stpmv.o strsv.o stbsv.o stpsv.o \
  90. sger.o ssyr.o sspr.o ssyr2.o sspr2.o
  91. $(SBLAS2): $(FRC)
  92. CBLAS2 = cgemv.o cgbmv.o chemv.o chbmv.o chpmv.o \
  93. ctrmv.o ctbmv.o ctpmv.o ctrsv.o ctbsv.o ctpsv.o \
  94. cgerc.o cgeru.o cher.o chpr.o cher2.o chpr2.o
  95. $(CBLAS2): $(FRC)
  96. DBLAS2 = dgemv.o dgbmv.o dsymv.o dsbmv.o dspmv.o \
  97. dtrmv.o dtbmv.o dtpmv.o dtrsv.o dtbsv.o dtpsv.o \
  98. dger.o dsyr.o dspr.o dsyr2.o dspr2.o
  99. $(DBLAS2): $(FRC)
  100. ZBLAS2 = zgemv.o zgbmv.o zhemv.o zhbmv.o zhpmv.o \
  101. ztrmv.o ztbmv.o ztpmv.o ztrsv.o ztbsv.o ztpsv.o \
  102. zgerc.o zgeru.o zher.o zhpr.o zher2.o zhpr2.o
  103. $(ZBLAS2): $(FRC)
  104. #---------------------------------------------------------
  105. # Comment out the next 4 definitions if you already have
  106. # the Level 3 BLAS.
  107. #---------------------------------------------------------
  108. SBLAS3 = sgemm.o ssymm.o ssyrk.o ssyr2k.o strmm.o strsm.o
  109. $(SBLAS3): $(FRC)
  110. CBLAS3 = cgemm.o csymm.o csyrk.o csyr2k.o ctrmm.o ctrsm.o \
  111. chemm.o cherk.o cher2k.o
  112. $(CBLAS3): $(FRC)
  113. DBLAS3 = dgemm.o dsymm.o dsyrk.o dsyr2k.o dtrmm.o dtrsm.o
  114. $(DBLAS3): $(FRC)
  115. ZBLAS3 = zgemm.o zsymm.o zsyrk.o zsyr2k.o ztrmm.o ztrsm.o \
  116. zhemm.o zherk.o zher2k.o
  117. $(ZBLAS3): $(FRC)
  118. ALLOBJ=$(SBLAS1) $(SBLAS2) $(SBLAS3) $(DBLAS1) $(DBLAS2) $(DBLAS3) \
  119. $(CBLAS1) $(CBLAS2) $(CBLAS3) $(ZBLAS1) \
  120. $(ZBLAS2) $(ZBLAS3) $(ALLBLAS)
  121. $(BLASLIB): $(ALLOBJ)
  122. $(ARCH) $(ARCHFLAGS) $@ $(ALLOBJ)
  123. $(RANLIB) $@
  124. single: $(SBLAS1) $(ALLBLAS) $(SBLAS2) $(SBLAS3)
  125. $(ARCH) $(ARCHFLAGS) $(BLASLIB) $(SBLAS1) $(ALLBLAS) \
  126. $(SBLAS2) $(SBLAS3)
  127. $(RANLIB) $(BLASLIB)
  128. double: $(DBLAS1) $(ALLBLAS) $(DBLAS2) $(DBLAS3)
  129. $(ARCH) $(ARCHFLAGS) $(BLASLIB) $(DBLAS1) $(ALLBLAS) \
  130. $(DBLAS2) $(DBLAS3)
  131. $(RANLIB) $(BLASLIB)
  132. complex: $(CBLAS1) $(CB1AUX) $(ALLBLAS) $(CBLAS2) $(CBLAS3)
  133. $(ARCH) $(ARCHFLAGS) $(BLASLIB) $(CBLAS1) $(CB1AUX) \
  134. $(ALLBLAS) $(CBLAS2) $(CBLAS3)
  135. $(RANLIB) $(BLASLIB)
  136. complex16: $(ZBLAS1) $(ZB1AUX) $(ALLBLAS) $(ZBLAS2) $(ZBLAS3)
  137. $(ARCH) $(ARCHFLAGS) $(BLASLIB) $(ZBLAS1) $(ZB1AUX) \
  138. $(ALLBLAS) $(ZBLAS2) $(ZBLAS3)
  139. $(RANLIB) $(BLASLIB)
  140. FRC:
  141. @FRC=$(FRC)
  142. clean:
  143. rm -f *.o
  144. .f.o:
  145. $(FORTRAN) $(OPTS) -c $< -o $@