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

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. #
  2. # The Makefile compiles c wrappers and testers for CBLAS.
  3. #
  4. TOPSRCDIR = ../..
  5. include $(TOPSRCDIR)/make.inc
  6. .SUFFIXES: .c .o
  7. .c.o:
  8. $(CC) $(CFLAGS) -I../include -c -o $@ $<
  9. # Archive files necessary to compile
  10. LIB = $(CBLASLIB) $(BLASLIB)
  11. # Object files for single precision real
  12. stestl1o = c_sblas1.o
  13. stestl2o = c_sblas2.o c_s2chke.o auxiliary.o c_xerbla.o
  14. stestl3o = c_sblas3.o c_s3chke.o auxiliary.o c_xerbla.o
  15. # Object files for double precision real
  16. dtestl1o = c_dblas1.o
  17. dtestl2o = c_dblas2.o c_d2chke.o auxiliary.o c_xerbla.o
  18. dtestl3o = c_dblas3.o c_d3chke.o auxiliary.o c_xerbla.o
  19. # Object files for single precision complex
  20. ctestl1o = c_cblas1.o
  21. ctestl2o = c_cblas2.o c_c2chke.o auxiliary.o c_xerbla.o
  22. ctestl3o = c_cblas3.o c_c3chke.o auxiliary.o c_xerbla.o
  23. # Object files for double precision complex
  24. ztestl1o = c_zblas1.o
  25. ztestl2o = c_zblas2.o c_z2chke.o auxiliary.o c_xerbla.o
  26. ztestl3o = c_zblas3.o c_z3chke.o auxiliary.o c_xerbla.o
  27. .PHONY: all all1 all2 all3
  28. all: all1 all2 all3
  29. all1: xscblat1 xdcblat1 xccblat1 xzcblat1
  30. all2: xscblat2 xdcblat2 xccblat2 xzcblat2
  31. all3: xscblat3 xdcblat3 xccblat3 xzcblat3
  32. #
  33. # Compile each precision
  34. #
  35. # Single real
  36. xscblat1: c_sblat1.o $(stestl1o) $(LIB)
  37. $(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
  38. xscblat2: c_sblat2.o $(stestl2o) $(LIB)
  39. $(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
  40. xscblat3: c_sblat3.o $(stestl3o) $(LIB)
  41. $(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
  42. # Double real
  43. xdcblat1: c_dblat1.o $(dtestl1o) $(LIB)
  44. $(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
  45. xdcblat2: c_dblat2.o $(dtestl2o) $(LIB)
  46. $(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
  47. xdcblat3: c_dblat3.o $(dtestl3o) $(LIB)
  48. $(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
  49. # Single complex
  50. xccblat1: c_cblat1.o $(ctestl1o) $(LIB)
  51. $(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
  52. xccblat2: c_cblat2.o $(ctestl2o) $(LIB)
  53. $(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
  54. xccblat3: c_cblat3.o $(ctestl3o) $(LIB)
  55. $(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
  56. # Double complex
  57. xzcblat1: c_zblat1.o $(ztestl1o) $(LIB)
  58. $(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
  59. xzcblat2: c_zblat2.o $(ztestl2o) $(LIB)
  60. $(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
  61. xzcblat3: c_zblat3.o $(ztestl3o) $(LIB)
  62. $(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
  63. # RUN TESTS
  64. .PHONY: run
  65. run: all
  66. @echo "--> TESTING CBLAS 1 - SINGLE PRECISION REAL <--"
  67. @./xscblat1 > stest1.out
  68. @echo "--> TESTING CBLAS 1 - DOUBLE PRECISION REAL <--"
  69. @./xdcblat1 > dtest1.out
  70. @echo "--> TESTING CBLAS 1 - SINGLE PRECISION COMPLEX <--"
  71. @./xccblat1 > ctest1.out
  72. @echo "--> TESTING CBLAS 1 - DOUBLE PRECISION COMPLEX <--"
  73. @./xzcblat1 > ztest1.out
  74. @echo "--> TESTING CBLAS 2 - SINGLE PRECISION REAL <--"
  75. @./xscblat2 < sin2 > stest2.out
  76. @echo "--> TESTING CBLAS 2 - DOUBLE PRECISION REAL <--"
  77. @./xdcblat2 < din2 > dtest2.out
  78. @echo "--> TESTING CBLAS 2 - SINGLE PRECISION COMPLEX <--"
  79. @./xccblat2 < cin2 > ctest2.out
  80. @echo "--> TESTING CBLAS 2 - DOUBLE PRECISION COMPLEX <--"
  81. @./xzcblat2 < zin2 > ztest2.out
  82. @echo "--> TESTING CBLAS 3 - SINGLE PRECISION REAL <--"
  83. @./xscblat3 < sin3 > stest3.out
  84. @echo "--> TESTING CBLAS 3 - DOUBLE PRECISION REAL <--"
  85. @./xdcblat3 < din3 > dtest3.out
  86. @echo "--> TESTING CBLAS 3 - SINGLE PRECISION COMPLEX <--"
  87. @./xccblat3 < cin3 > ctest3.out
  88. @echo "--> TESTING CBLAS 3 - DOUBLE PRECISION COMPLEX <--"
  89. @./xzcblat3 < zin3 > ztest3.out
  90. .PHONY: clean cleanobj cleanexe cleantest
  91. clean: cleanobj cleanexe cleantest
  92. cleanobj:
  93. rm -f *.o
  94. cleanexe:
  95. rm -f x*
  96. cleantest:
  97. rm -f *.out core