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.tail 21 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617
  1. SBLASOBJS_P = $(SBLASOBJS:.$(SUFFIX)=.$(PSUFFIX))
  2. DBLASOBJS_P = $(DBLASOBJS:.$(SUFFIX)=.$(PSUFFIX))
  3. QBLASOBJS_P = $(QBLASOBJS:.$(SUFFIX)=.$(PSUFFIX))
  4. CBLASOBJS_P = $(CBLASOBJS:.$(SUFFIX)=.$(PSUFFIX))
  5. ZBLASOBJS_P = $(ZBLASOBJS:.$(SUFFIX)=.$(PSUFFIX))
  6. XBLASOBJS_P = $(XBLASOBJS:.$(SUFFIX)=.$(PSUFFIX))
  7. COMMONOBJS_P = $(COMMONOBJS:.$(SUFFIX)=.$(PSUFFIX))
  8. HPLOBJS_P = $(HPLOBJS:.$(SUFFIX)=.$(PSUFFIX))
  9. BLASOBJS = $(SBLASOBJS) $(DBLASOBJS) $(CBLASOBJS) $(ZBLASOBJS)
  10. BLASOBJS_P = $(SBLASOBJS_P) $(DBLASOBJS_P) $(CBLASOBJS_P) $(ZBLASOBJS_P)
  11. ifdef EXPRECISION
  12. BLASOBJS += $(QBLASOBJS) $(XBLASOBJS)
  13. BLASOBJS_P += $(QBLASOBJS_P) $(XBLASOBJS_P)
  14. endif
  15. ifdef QUAD_PRECISION
  16. BLASOBJS += $(QBLASOBJS) $(XBLASOBJS)
  17. BLASOBJS_P += $(QBLASOBJS_P) $(XBLASOBJS_P)
  18. endif
  19. $(SBLASOBJS) $(SBLASOBJS_P) : CFLAGS += -UDOUBLE -UCOMPLEX
  20. $(DBLASOBJS) $(DBLASOBJS_P) : CFLAGS += -DDOUBLE -UCOMPLEX
  21. $(QBLASOBJS) $(QBLASOBJS_P) : CFLAGS += -DXDOUBLE -UCOMPLEX
  22. $(CBLASOBJS) $(CBLASOBJS_P) : CFLAGS += -UDOUBLE -DCOMPLEX
  23. $(ZBLASOBJS) $(ZBLASOBJS_P) : CFLAGS += -DDOUBLE -DCOMPLEX
  24. $(XBLASOBJS) $(XBLASOBJS_P) : CFLAGS += -DXDOUBLE -DCOMPLEX
  25. $(SBLASOBJS_P) : CFLAGS += -DPROFILE $(COMMON_PROF)
  26. $(DBLASOBJS_P) : CFLAGS += -DPROFILE $(COMMON_PROF)
  27. $(QBLASOBJS_P) : CFLAGS += -DPROFILE $(COMMON_PROF)
  28. $(CBLASOBJS_P) : CFLAGS += -DPROFILE $(COMMON_PROF)
  29. $(ZBLASOBJS_P) : CFLAGS += -DPROFILE $(COMMON_PROF)
  30. $(XBLASOBJS_P) : CFLAGS += -DPROFILE $(COMMON_PROF)
  31. libs :: $(BLASOBJS) $(COMMONOBJS)
  32. $(AR) $(ARFLAGS) -ru $(TOPDIR)/$(LIBNAME) $^
  33. prof :: $(BLASOBJS_P) $(COMMONOBJS_P)
  34. $(AR) $(ARFLAGS) -ru $(TOPDIR)/$(LIBNAME_P) $^
  35. hpl :: $(HPLOBJS) $(COMMONOBJS)
  36. $(AR) $(ARFLAGS) -ru $(TOPDIR)/$(LIBNAME) $^
  37. hpl_p :: $(HPLOBJS_P) $(COMMONOBJS_P)
  38. $(AR) $(ARFLAGS) -ru $(TOPDIR)/$(LIBNAME_P) $^
  39. kernel :: $(BLASOBJS)
  40. $(AR) $(ARFLAGS) -ru $(TOPDIR)/$(LIBNAME) $^
  41. commonlibs :: $(COMMONOBJS)
  42. $(AR) $(ARFLAGS) -ru $(TOPDIR)/$(LIBNAME) $^
  43. commonprof :: $(COMMONOBJS_P)
  44. $(AR) $(ARFLAGS) -ru $(TOPDIR)/$(LIBNAME_P) $^
  45. quick :
  46. $(MAKE) -C $(TOPDIR) libs
  47. bms.$(SUFFIX):bm.c $(TOPDIR)/../bench/bmcommon.h
  48. $(CC) $(CFLAGS) -UDOUBLE -UCOMPLEX -c $< -o $(@F)
  49. bmd.$(SUFFIX):bm.c $(TOPDIR)/../bench/bmcommon.h
  50. $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -c $< -o $(@F)
  51. bmd-k.$(SUFFIX):bm-k.c $(TOPDIR)/../bench/bmcommon.h
  52. $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -c $< -o $(@F)
  53. ifdef QUAD_PRECISION
  54. bmq.$(SUFFIX):bmq.c $(TOPDIR)/../bench/bmcommon.h
  55. $(CC) $(CFLAGS) -DXDOUBLE -UCOMPLEX -c $< -o $(@F)
  56. bmx.$(SUFFIX):bmx.c $(TOPDIR)/../bench/bmcommon.h
  57. $(CC) $(CFLAGS) -DXDOUBLE -DCOMPLEX -c $< -o $(@F)
  58. else
  59. bmq.$(SUFFIX):bm.c $(TOPDIR)/../bench/bmcommon.h
  60. $(CC) $(CFLAGS) -DXDOUBLE -UCOMPLEX -c $< -o $(@F)
  61. bmx.$(SUFFIX):bmz.c $(TOPDIR)/../bench/bmcommon.h
  62. $(CC) $(CFLAGS) -DXDOUBLE -DCOMPLEX -c $< -o $(@F)
  63. endif
  64. bmc.$(SUFFIX):bmz.c $(TOPDIR)/../bench/bmcommon.h
  65. $(CC) $(CFLAGS) -UDOUBLE -DCOMPLEX -c $< -o $(@F)
  66. bmz.$(SUFFIX):bmz.c $(TOPDIR)/../bench/bmcommon.h
  67. $(CC) $(CFLAGS) -DDOUBLE -DCOMPLEX -c $< -o $(@F)
  68. bmd_nn.$(SUFFIX):bm_special.c $(TOPDIR)/../bench/bmcommon.h
  69. $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -DNN -c $< -o $(@F)
  70. bmd_nt.$(SUFFIX):bm_special.c $(TOPDIR)/../bench/bmcommon.h
  71. $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -DNT -c $< -o $(@F)
  72. bmd_tn.$(SUFFIX):bm_special.c $(TOPDIR)/../bench/bmcommon.h
  73. $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -DTN -c $< -o $(@F)
  74. bmd_tt.$(SUFFIX):bm_special.c $(TOPDIR)/../bench/bmcommon.h
  75. $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -DTT -c $< -o $(@F)
  76. bm-phy.$(SUFFIX):bm-phy.c $(TOPDIR)/../bench/bmcommon.h
  77. $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -c $< -o $(@F)
  78. bms.$(PSUFFIX):bm.c $(TOPDIR)/../bench/bmcommon.h
  79. $(CC) $(PFLAGS) -UDOUBLE -UCOMPLEX -c $< -o $(@F)
  80. bmd.$(PSUFFIX):bm.c $(TOPDIR)/../bench/bmcommon.h
  81. $(CC) $(PFLAGS) -DDOUBLE -UCOMPLEX -c $< -o $(@F)
  82. ifdef QUAD_PRECISION
  83. bmq.$(PSUFFIX):bmq.c $(TOPDIR)/../bench/bmcommon.h
  84. $(CC) $(PFLAGS) -DXDOUBLE -UCOMPLEX -c $< -o $(@F)
  85. bmx.$(PSUFFIX):bmx.c $(TOPDIR)/../bench/bmcommon.h
  86. $(CC) $(PFLAGS) -DXDOUBLE -DCOMPLEX -c $< -o $(@F)
  87. else
  88. bmq.$(PSUFFIX):bm.c $(TOPDIR)/../bench/bmcommon.h
  89. $(CC) $(PFLAGS) -DXDOUBLE -UCOMPLEX -c $< -o $(@F)
  90. bmx.$(PSUFFIX):bmz.c $(TOPDIR)/../bench/bmcommon.h
  91. $(CC) $(PFLAGS) -DXDOUBLE -DCOMPLEX -c $< -o $(@F)
  92. endif
  93. bmc.$(PSUFFIX):bmz.c $(TOPDIR)/../bench/bmcommon.h
  94. $(CC) $(PFLAGS) -UDOUBLE -DCOMPLEX -c $< -o $(@F)
  95. bmz.$(PSUFFIX):bmz.c $(TOPDIR)/../bench/bmcommon.h
  96. $(CC) $(PFLAGS) -DDOUBLE -DCOMPLEX -c $< -o $(@F)
  97. bms : bms.$(SUFFIX) $(SBLASOBJS) $(COMMONOBJS) $(SOBJS) $(OBJS) $(LIBS)
  98. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  99. bmd : bmd.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
  100. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB) -lm
  101. bmd-k : bmd-k.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
  102. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB) -lm
  103. bmq : bmq.$(SUFFIX) $(QBLASOBJS) $(COMMONOBJS) $(QOBJS) $(OBJS) $(LIBS)
  104. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  105. bmc : bmc.$(SUFFIX) $(CBLASOBJS) $(COMMONOBJS) $(COBJS) $(OBJS) $(LIBS)
  106. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB) $(FEXTRALIB)
  107. bmz : bmz.$(SUFFIX) $(ZBLASOBJS) $(COMMONOBJS) $(ZOBJS) $(OBJS) $(LIBS)
  108. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  109. bmx : bmx.$(SUFFIX) $(XBLASOBJS) $(COMMONOBJS) $(XOBJS) $(OBJS) $(LIBS)
  110. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  111. bmd_nn : bmd_nn.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
  112. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  113. bmd_nt : bmd_nt.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
  114. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  115. bmd_tn : bmd_tn.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
  116. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  117. bmd_tt : bmd_tt.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
  118. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  119. bm-phy:bm-phy.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
  120. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  121. bmcc : bmcc.$(SUFFIX) $(CBLASOBJS) $(COMMONOBJS) $(COBJS) $(OBJS) $(LIBS)
  122. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  123. bmzc : bmzc.$(SUFFIX) $(ZBLASOBJS) $(COMMONOBJS) $(ZOBJS) $(OBJS) $(LIBS)
  124. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  125. bms.prof : bms.$(PSUFFIX) $(SBLASOBJS_P) $(COMMONOBJS_P) $(SOBJS) $(OBJS) $(LIBS_P)
  126. $(CC) -o $(@F) $(PFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  127. bmd.prof : bmd.$(PSUFFIX) $(DBLASOBJS_P) $(COMMONOBJS_P) $(DOBJS) $(OBJS) $(LIBS_P)
  128. $(CC) -o $(@F) $(PFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  129. bmq.prof : bmq.$(PSUFFIX) $(QBLASOBJS_P) $(COMMONOBJS_P) $(QOBJS) $(OBJS) $(LIBS_P)
  130. $(CC) -o $(@F) $(PFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  131. bmc.prof : bmc.$(PSUFFIX) $(CBLASOBJS_P) $(COMMONOBJS) $(COBJS) $(OBJS) $(LIBS_P)
  132. $(CC) -o $(@F) $(PFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  133. bmz.prof : bmz.$(PSUFFIX) $(ZBLASOBJS_P) $(COMMONOBJS) $(ZOBJS) $(OBJS) $(LIBS_P)
  134. $(CC) -o $(@F) $(PFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  135. bmx.prof : bmz.$(PSUFFIX) $(XBLASOBJS_P) $(COMMONOBJS) $(XOBJS) $(OBJS) $(LIBS_P)
  136. $(CC) -o $(@F) $(PFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  137. bms.cxml : bms.$(SUFFIX) $(SOBJS) $(OBJS)
  138. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBCXML)
  139. bmd.cxml : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
  140. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBCXML)
  141. bmc.cxml : bmc.$(SUFFIX) $(COBJS) $(OBJS)
  142. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBCXML)
  143. bmz.cxml : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
  144. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBCXML)
  145. bms.scsl : bms.$(SUFFIX) $(SOBJS) $(OBJS)
  146. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSCSL)
  147. bmd.scsl : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
  148. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSCSL)
  149. bmc.scsl : bmc.$(SUFFIX) $(COBJS) $(OBJS)
  150. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSCSL)
  151. bmz.scsl : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
  152. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSCSL)
  153. bms.acml : bms.$(SUFFIX) $(SOBJS) $(OBJS)
  154. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBACML)
  155. bmd.acml : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
  156. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBACML)
  157. bmc.acml : bmc.$(SUFFIX) $(COBJS) $(OBJS)
  158. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBACML)
  159. bmz.acml : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
  160. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBACML)
  161. bms.sun : bms.$(SUFFIX) $(SOBJS) $(OBJS)
  162. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF) $(EXTRALIB) $(CEXTRALIB)
  163. bmd.sun : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
  164. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF) $(EXTRALIB) $(CEXTRALIB)
  165. bmc.sun : bmc.$(SUFFIX) $(COBJS) $(OBJS)
  166. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF) $(EXTRALIB) $(CEXTRALIB)
  167. bmz.sun : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
  168. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF) $(EXTRALIB) $(CEXTRALIB)
  169. bms.atlas : bms.$(SUFFIX) $(SOBJS) $(OBJS)
  170. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
  171. bmd.atlas : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
  172. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
  173. bmc.atlas : bmc.$(SUFFIX) $(COBJS) $(OBJS)
  174. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
  175. bmz.atlas : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
  176. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
  177. bms.essl : bms.$(SUFFIX) $(SOBJS) $(OBJS)
  178. $(CC) $(FCOMMON_OPT) -o $(@F) $^ $(LIBESSL)
  179. bmd.essl : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
  180. $(CC) $(CCOMMON_OPT) -o $(@F) $^ $(LIBESSL)
  181. bmc.essl : bmc.$(SUFFIX) $(COBJS) $(OBJS)
  182. $(F77) $(CCOMMON_OPT) -o $(@F) $^ $(LIBESSL)
  183. bmz.essl : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
  184. $(CC) $(CCOMMON_OPT) -o $(@F) $^ $(LIBESSL)
  185. bms.flame : bms.$(SUFFIX) $(SOBJS) $(OBJS)
  186. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME)
  187. bmd.flame : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
  188. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME)
  189. bmc.flame : bmc.$(SUFFIX) $(COBJS) $(OBJS)
  190. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME)
  191. bmz.flame : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
  192. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME)
  193. bms.flame.prof : bms.$(SUFFIX) $(SOBJS) $(OBJS_P)
  194. $(F77) -o $(@F) $(PFLAGS) $^ $(LIBFLAME)
  195. bmd.flame.prof : bmd.$(SUFFIX) $(DOBJS) $(OBJS_P)
  196. $(F77) -o $(@F) $(PFLAGS) $^ $(LIBFLAME)
  197. bmc.flame.prof : bmc.$(SUFFIX) $(COBJS) $(OBJS_P)
  198. $(F77) -o $(@F) $(PFLAGS) $^ $(LIBFLAME)
  199. bmz.flame.prof : bmz.$(SUFFIX) $(ZOBJS) $(OBJS_P)
  200. $(F77) -o $(@F) $(PFLAGS) $^ $(LIBFLAME)
  201. bms.mkl : bms.$(SUFFIX) $(SOBJS) $(OBJS)
  202. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
  203. bmd.mkl : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
  204. $(CC) -static -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
  205. bmc.mkl : bmc.$(SUFFIX) $(COBJS) $(OBJS)
  206. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
  207. bmz.mkl : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
  208. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
  209. bmq.mkl : bmq.$(SUFFIX) $(QOBJS) $(OBJS)
  210. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
  211. bms.mkl.prof : bms.$(PSUFFIX) $(SOBJS) $(OBJS)
  212. $(CC) -o $(@F) $(PFLAGS) $^ $(LIBMKL)
  213. bmd.mkl.prof : bmd.$(PSUFFIX) $(DOBJS) $(OBJS)
  214. $(CC) -o $(@F) $(PFLAGS) $^ $(LIBMKL)
  215. bmc.mkl.prof : bmc.$(PSUFFIX) $(COBJS) $(OBJS)
  216. $(CC) -o $(@F) $(PFLAGS) $^ $(LIBMKL)
  217. bmz.mkl.prof : bmz.$(PSUFFIX) $(ZOBJS) $(OBJS)
  218. $(CC) -o $(@F) $(PFLAGS) $^ $(LIBMKL)
  219. bms.mlib : bms.$(SUFFIX) $(SOBJS) $(OBJS)
  220. $(F77) -o $(@F) $(CFLAGS) $^ $(LIBMLIB)
  221. bmd.mlib : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
  222. $(F77) -o $(@F) $(CFLAGS) $^ $(LIBMLIB)
  223. bmc.mlib : bmc.$(SUFFIX) $(COBJS) $(OBJS)
  224. $(F77) -o $(@F) $(CFLAGS) $^ $(LIBMLIB)
  225. bmz.mlib : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
  226. $(F77) -o $(@F) $(CFLAGS) $^ $(LIBMLIB)
  227. bms.veclib : bms.$(SUFFIX) $(SOBJS)
  228. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBVECLIB)
  229. bmd.veclib : bmd.$(SUFFIX) $(DOBJS)
  230. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBVECLIB)
  231. bmc.veclib : bmc.$(SUFFIX) $(COBJS)
  232. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBVECLIB)
  233. bmz.veclib : bmz.$(SUFFIX) $(ZOBJS)
  234. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBVECLIB)
  235. bms.fuji : bms.$(SUFFIX) $(SOBJS)
  236. ifndef SMP
  237. fcc -KV9FMADD -SSL2 -o $(@F) $^
  238. else
  239. fcc -KV9FMADD -SSL2BLAMP -o $(@F) $^
  240. endif
  241. bmd.fuji : bmd.$(SUFFIX) $(DOBJS)
  242. ifndef SMP
  243. fcc -KV9FMADD -SSL2 -o $(@F) $^
  244. else
  245. fcc -KV9FMADD -SSL2BLAMP -o $(@F) $^
  246. endif
  247. bmc.fuji : bmc.$(SUFFIX) $(COBJS)
  248. ifndef SMP
  249. fcc -KV9FMADD -SSL2 -o $(@F) $^
  250. else
  251. fcc -KV9FMADD -SSL2BLAMP -o $(@F) $^
  252. endif
  253. bmz.fuji : bmz.$(SUFFIX) $(ZOBJS)
  254. ifndef SMP
  255. fcc -KV9FMADD -SSL2 -o $(@F) $^
  256. else
  257. fcc -KV9FMADD -SSL2BLAMP -o $(@F) $^
  258. endif
  259. bench: bench.$(SUFFIX) $(BLASOBJS) $(COMMONOBJS) $(OBJS) $(LIBS)
  260. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  261. bench.$(SUFFIX): bench.c
  262. $(CC) -c -o $(@F) $(CFLAGS) $^
  263. bench_old: bench_old.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(OBJS) $(LIBS)
  264. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  265. kbench: kbench.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(OBJS) $(LIBS)
  266. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  267. prebench: prebench.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(OBJS) $(LIBS)
  268. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  269. kbench_rank_k: kbench_rank_k.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(OBJS) $(LIBS)
  270. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  271. smallbench: smallbench.$(SUFFIX) $(BLASOBJS) $(COMMONOBJS) $(OBJS) $(LIBS)
  272. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  273. smallbench.mkl: smallbench.$(SUFFIX)
  274. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
  275. bench.sun: bench.$(SUFFIX) $(OBJS)
  276. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF) $(EXTRALIB) $(CEXTRALIB)
  277. bench.cxml: bench.$(SUFFIX) $(OBJS)
  278. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBCXML)
  279. bench.atlas: bench.$(SUFFIX) $(OBJS)
  280. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
  281. bench.essl: bench.$(SUFFIX) $(OBJS)
  282. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBESSL) ../../level1/others/libmisc.$(LIBSUFFIX)
  283. bench.scsl: bench.$(SUFFIX) $(OBJS)
  284. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSCSL) $(EXTRALIB) $(CEXTRALIB)
  285. bench.acml: bench.$(SUFFIX) $(OBJS)
  286. $(CC) -static -o $(@F) $(CFLAGS) $^ $(LIBACML) $(EXTRALIB) $(CEXTRALIB)
  287. bench.flame: bench.$(SUFFIX) $(OBJS)
  288. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME) $(EXTRALIB) $(CEXTRALIB)
  289. kbench.mkl: kbench.$(SUFFIX) $(OBJS)
  290. $(CC) -static -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
  291. bench.mkl: bench.$(SUFFIX) $(OBJS)
  292. $(CC) -static -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
  293. bench_old.mkl: bench_old.$(SUFFIX) $(OBJS)
  294. $(CC) -static -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
  295. bench.mlib: bench.$(SUFFIX) $(OBJS)
  296. $(F77) -o $(@F) $(CFLAGS) $^ $(LIBMLIB)
  297. bench.veclib: bench.$(SUFFIX) $(OBJS)
  298. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBVECLIB)
  299. params : params.$(SUFFIX) $(SBLASOBJS) $(COMMONOBJS) $(SOBJS) $(OBJS) $(LIBS)
  300. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  301. paramd : paramd.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
  302. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  303. paramq : paramq.$(SUFFIX) $(QBLASOBJS) $(COMMONOBJS) $(QOBJS) $(OBJS) $(LIBS)
  304. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  305. paramc : paramc.$(SUFFIX) $(CBLASOBJS) $(COMMONOBJS) $(COBJS) $(OBJS) $(LIBS)
  306. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  307. paramz : paramz.$(SUFFIX) $(ZBLASOBJS) $(COMMONOBJS) $(ZOBJS) $(OBJS) $(LIBS)
  308. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  309. paramx : paramx.$(SUFFIX) $(XBLASOBJS) $(COMMONOBJS) $(XOBJS) $(OBJS) $(LIBS)
  310. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  311. params-ex : params-ex.$(SUFFIX) $(SBLASOBJS) $(COMMONOBJS) $(SOBJS) $(OBJS) $(LIBS)
  312. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  313. paramd-ex : paramd-ex.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
  314. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  315. paramq-ex : paramq-ex.$(SUFFIX) $(QBLASOBJS) $(COMMONOBJS) $(QOBJS) $(OBJS) $(LIBS)
  316. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  317. paramc-ex : paramc-ex.$(SUFFIX) $(CBLASOBJS) $(COMMONOBJS) $(COBJS) $(OBJS) $(LIBS)
  318. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  319. paramz-ex : paramz-ex.$(SUFFIX) $(ZBLASOBJS) $(COMMONOBJS) $(ZOBJS) $(OBJS) $(LIBS)
  320. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  321. paramx-ex : paramx-ex.$(SUFFIX) $(XBLASOBJS) $(COMMONOBJS) $(XOBJS) $(OBJS) $(LIBS)
  322. $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
  323. params.atlas : params.$(SUFFIX) $(OBJS) $(SOBJS)
  324. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
  325. paramd.atlas : paramd.$(SUFFIX) $(OBJS) $(DOBJS)
  326. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
  327. paramc.atlas : paramc.$(SUFFIX) $(OBJS) $(COBJS)
  328. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
  329. paramz.atlas : paramz.$(SUFFIX) $(OBJS) $(ZOBJS)
  330. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
  331. params.sun : params.$(SUFFIX) $(OBJS) $(SOBJS)
  332. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF)
  333. paramd.sun : paramd.$(SUFFIX) $(OBJS) $(DOBJS)
  334. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF)
  335. paramc.sun : paramc.$(SUFFIX) $(OBJS) $(COBJS)
  336. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF)
  337. paramz.sun : paramz.$(SUFFIX) $(OBJS) $(ZOBJS)
  338. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF)
  339. params.essl : params.$(SUFFIX) $(OBJS) $(SOBJS)
  340. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBESSL)
  341. paramd.essl : paramd.$(SUFFIX) $(OBJS) $(DOBJS)
  342. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBESSL)
  343. paramc.essl : paramc.$(SUFFIX) $(OBJS) $(COBJS)
  344. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBESSL)
  345. paramz.essl : paramz.$(SUFFIX) $(OBJS) $(ZOBJS)
  346. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBESSL)
  347. params.mkl : params.$(SUFFIX) $(OBJS) $(SOBJS)
  348. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL)
  349. paramd.mkl : paramd.$(SUFFIX) $(OBJS) $(DOBJS)
  350. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL)
  351. paramc.mkl : paramc.$(SUFFIX) $(OBJS) $(COBJS)
  352. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL)
  353. paramz.mkl : paramz.$(SUFFIX) $(OBJS) $(ZOBJS)
  354. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL)
  355. params.acml : params.$(SUFFIX) $(OBJS) $(SOBJS)
  356. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBACML)
  357. paramd.acml : paramd.$(SUFFIX) $(OBJS) $(DOBJS)
  358. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBACML)
  359. paramc.acml : paramc.$(SUFFIX) $(OBJS) $(COBJS)
  360. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBACML)
  361. paramz.acml : paramz.$(SUFFIX) $(OBJS) $(ZOBJS)
  362. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBACML)
  363. params.flame : params.$(SUFFIX) $(OBJS) $(SOBJS)
  364. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME) $(EXTRALIB) $(CEXTRALIB)
  365. paramd.flame : paramd.$(SUFFIX) $(OBJS) $(DOBJS)
  366. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME) $(EXTRALIB) $(CEXTRALIB)
  367. paramc.flame : paramc.$(SUFFIX) $(OBJS) $(COBJS)
  368. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME) $(EXTRALIB) $(CEXTRALIB)
  369. paramz.flame : paramz.$(SUFFIX) $(OBJS) $(ZOBJS)
  370. $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME) $(EXTRALIB) $(CEXTRALIB)
  371. params.$(SUFFIX):param.c $(TOPDIR)/../bench/bmcommon.h
  372. $(CC) $(CFLAGS) -UDOUBLE -UCOMPLEX -c $< -o $(@F)
  373. paramd.$(SUFFIX):param.c $(TOPDIR)/../bench/bmcommon.h
  374. $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -c $< -o $(@F)
  375. paramq.$(SUFFIX):param.c $(TOPDIR)/../bench/bmcommon.h
  376. $(CC) $(CFLAGS) -DXDOUBLE -UCOMPLEX -c $< -o $(@F)
  377. paramc.$(SUFFIX):paramz.c $(TOPDIR)/../bench/bmcommon.h
  378. $(CC) $(CFLAGS) -UDOUBLE -DCOMPLEX -c $< -o $(@F)
  379. paramz.$(SUFFIX):paramz.c $(TOPDIR)/../bench/bmcommon.h
  380. $(CC) $(CFLAGS) -DDOUBLE -DCOMPLEX -c $< -o $(@F)
  381. paramx.$(SUFFIX):paramz.c $(TOPDIR)/../bench/bmcommon.h
  382. $(CC) $(CFLAGS) -DXDOUBLE -DCOMPLEX -c $< -o $(@F)
  383. params-ex.$(SUFFIX):param-ex.c $(TOPDIR)/../bench/bmcommon.h
  384. $(CC) $(CFLAGS) -UDOUBLE -UCOMPLEX -c $< -o $(@F)
  385. paramd-ex.$(SUFFIX):param-ex.c $(TOPDIR)/../bench/bmcommon.h
  386. $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -c $< -o $(@F)
  387. paramq-ex.$(SUFFIX):param-ex.c $(TOPDIR)/../bench/bmcommon.h
  388. $(CC) $(CFLAGS) -DXDOUBLE -UCOMPLEX -c $< -o $(@F)
  389. paramc-ex.$(SUFFIX):paramz-ex.c $(TOPDIR)/../bench/bmcommon.h
  390. $(CC) $(CFLAGS) -UDOUBLE -DCOMPLEX -c $< -o $(@F)
  391. paramz-ex.$(SUFFIX):paramz-ex.c $(TOPDIR)/../bench/bmcommon.h
  392. $(CC) $(CFLAGS) -DDOUBLE -DCOMPLEX -c $< -o $(@F)
  393. paramx-ex.$(SUFFIX):paramz-ex.c $(TOPDIR)/../bench/bmcommon.h
  394. $(CC) $(CFLAGS) -DXDOUBLE -DCOMPLEX -c $< -o $(@F)
  395. gen_insn_flash.c :
  396. echo '#include <stdio.h>' > gen_insn_flash.c
  397. echo '#include <stdlib.h>' >> gen_insn_flash.c
  398. echo '#define ICACHE_SIZE ( 256 << 10)' >> gen_insn_flash.c
  399. echo 'int main(void){' >> gen_insn_flash.c
  400. echo 'int i;' >> gen_insn_flash.c
  401. echo '#ifdef __alpha' >> gen_insn_flash.c
  402. echo 'printf(".set noat;.set noreorder;\n");' >> gen_insn_flash.c
  403. echo 'printf(".arch ev6;.text;.align 5\n");' >> gen_insn_flash.c
  404. echo 'printf(".globl insn_flash\n");' >> gen_insn_flash.c
  405. echo 'printf(".ent insn_flash\n");' >> gen_insn_flash.c
  406. echo 'printf("insn_flash:\n");' >> gen_insn_flash.c
  407. echo 'for (i = 0; i < ICACHE_SIZE / 4; i++)' >> gen_insn_flash.c
  408. echo 'printf("br 1f\n 1:\n");' >> gen_insn_flash.c
  409. echo 'printf(".align 5;ret;.end insn_flash\n");'>> gen_insn_flash.c
  410. echo '#else' >> gen_insn_flash.c
  411. echo 'printf(".text;.align 32\n");' >> gen_insn_flash.c
  412. echo 'printf(".globl insn_flash\n");' >> gen_insn_flash.c
  413. echo 'printf("insn_flash:\n");' >> gen_insn_flash.c
  414. echo 'for (i = 0; i < ICACHE_SIZE / 2; i++)' >> gen_insn_flash.c
  415. echo 'printf("jmp 1f\n 1:\n");' >> gen_insn_flash.c
  416. echo 'printf(".align 32;ret\n");' >> gen_insn_flash.c
  417. echo '#endif' >> gen_insn_flash.c
  418. echo 'return 0;' >> gen_insn_flash.c
  419. echo '}' >> gen_insn_flash.c
  420. insn_flash.$(SUFFIX) : gen_insn_flash
  421. ./gen_insn_flash > temp.s
  422. $(AS) -o $(@F) temp.s
  423. rm -f temp.s
  424. dummy :
  425. clean ::
  426. @if test -d $(ARCH); then \
  427. (cd $(ARCH) && $(MAKE) clean) \
  428. fi
  429. @rm -rf *.a *.s *.o *.po *.obj *.i *.so core core.* gmon.out *.cso \
  430. *.csx *.is *~ *.exe *.flame *.pdb *.dwf \
  431. gen_insn_flash.c gen_insn_flash *.stackdump *.dll *.exp *.lib \
  432. *.pc *.pcl *.def *.i *.prof linktest.c \
  433. bms bmd bmc bmz bmq bmx \
  434. params paramd paramc paramz paramq paramx \
  435. params-ex paramd-ex paramc-ex paramz-ex paramq-ex paramx-ex \
  436. bench tpp kbench kbench2 \
  437. *.mkl *.sun *.acml *.cxml *.essl *.atlas *.scsl *.mlib *.veclib *.fuji

OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.