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.

system.cmake 13 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536
  1. ##
  2. ## Author: Hank Anderson <hank@statease.com>
  3. ## Description: Ported from OpenBLAS/Makefile.system
  4. ##
  5. set(NETLIB_LAPACK_DIR "${PROJECT_SOURCE_DIR}/lapack-netlib")
  6. # TODO: Makefile.system detects Darwin (mac) and switches to clang here -hpa
  7. # http://stackoverflow.com/questions/714100/os-detecting-makefile
  8. # TODO: Makefile.system sets HOSTCC = $(CC) here if not already set -hpa
  9. # TARGET_CORE will override TARGET which is used in DYNAMIC_ARCH=1.
  10. if (DEFINED TARGET_CORE)
  11. set(TARGET ${TARGET_CORE})
  12. endif ()
  13. # Force fallbacks for 32bit
  14. if (DEFINED BINARY AND DEFINED TARGET AND BINARY EQUAL 32)
  15. message(STATUS "Compiling a ${BINARY}-bit binary.")
  16. set(NO_AVX 1)
  17. if (${TARGET} STREQUAL "HASWELL" OR ${TARGET} STREQUAL "SANDYBRIDGE")
  18. set(TARGET "NEHALEM")
  19. endif ()
  20. if (${TARGET} STREQUAL "BULLDOZER" OR ${TARGET} STREQUAL "PILEDRIVER" OR ${TARGET} STREQUAL "ZEN")
  21. set(TARGET "BARCELONA")
  22. endif ()
  23. endif ()
  24. if (DEFINED TARGET)
  25. message(STATUS "Targetting the ${TARGET} architecture.")
  26. set(GETARCH_FLAGS "-DFORCE_${TARGET}")
  27. endif ()
  28. if (INTERFACE64)
  29. message(STATUS "Using 64-bit integers.")
  30. set(GETARCH_FLAGS "${GETARCH_FLAGS} -DUSE64BITINT")
  31. endif ()
  32. if (NOT DEFINED GEMM_MULTITHREAD_THRESHOLD)
  33. set(GEMM_MULTITHREAD_THRESHOLD 4)
  34. endif ()
  35. message(STATUS "GEMM multithread threshold set to ${GEMM_MULTITHREAD_THRESHOLD}.")
  36. set(GETARCH_FLAGS "${GETARCH_FLAGS} -DGEMM_MULTITHREAD_THRESHOLD=${GEMM_MULTITHREAD_THRESHOLD}")
  37. if (NO_AVX)
  38. message(STATUS "Disabling Advanced Vector Extensions (AVX).")
  39. set(GETARCH_FLAGS "${GETARCH_FLAGS} -DNO_AVX")
  40. endif ()
  41. if (NO_AVX2)
  42. message(STATUS "Disabling Advanced Vector Extensions 2 (AVX2).")
  43. set(GETARCH_FLAGS "${GETARCH_FLAGS} -DNO_AVX2")
  44. endif ()
  45. if (CMAKE_BUILD_TYPE STREQUAL "Debug")
  46. set(GETARCH_FLAGS "${GETARCH_FLAGS} -g")
  47. endif ()
  48. if (NOT DEFINED NO_PARALLEL_MAKE)
  49. set(NO_PARALLEL_MAKE 0)
  50. endif ()
  51. set(GETARCH_FLAGS "${GETARCH_FLAGS} -DNO_PARALLEL_MAKE=${NO_PARALLEL_MAKE}")
  52. if (CMAKE_CXX_COMPILER STREQUAL loongcc)
  53. set(GETARCH_FLAGS "${GETARCH_FLAGS} -static")
  54. endif ()
  55. #if don't use Fortran, it will only compile CBLAS.
  56. if (ONLY_CBLAS)
  57. set(NO_LAPACK 1)
  58. else ()
  59. set(ONLY_CBLAS 0)
  60. endif ()
  61. include("${PROJECT_SOURCE_DIR}/cmake/prebuild.cmake")
  62. # N.B. this is NUM_THREAD in Makefile.system which is probably a bug -hpa
  63. if (NOT DEFINED NUM_THREADS)
  64. set(NUM_THREADS ${NUM_CORES})
  65. endif ()
  66. if (${NUM_THREADS} EQUAL 1)
  67. set(USE_THREAD 0)
  68. elseif(NOT DEFINED USE_THREAD)
  69. set(USE_THREAD 1)
  70. endif ()
  71. if (USE_THREAD)
  72. message(STATUS "SMP enabled.")
  73. endif ()
  74. if (NOT DEFINED NEED_PIC)
  75. set(NEED_PIC 1)
  76. endif ()
  77. # TODO: I think CMake should be handling all this stuff -hpa
  78. unset(ARFLAGS)
  79. set(CPP "${COMPILER} -E")
  80. set(AR "${CROSS_SUFFIX}ar")
  81. set(AS "${CROSS_SUFFIX}as")
  82. set(LD "${CROSS_SUFFIX}ld")
  83. set(RANLIB "${CROSS_SUFFIX}ranlib")
  84. set(NM "${CROSS_SUFFIX}nm")
  85. set(DLLWRAP "${CROSS_SUFFIX}dllwrap")
  86. set(OBJCOPY "${CROSS_SUFFIX}objcopy")
  87. set(OBJCONV "${CROSS_SUFFIX}objconv")
  88. # OS dependent settings
  89. include("${PROJECT_SOURCE_DIR}/cmake/os.cmake")
  90. # Architecture dependent settings
  91. include("${PROJECT_SOURCE_DIR}/cmake/arch.cmake")
  92. # C Compiler dependent settings
  93. include("${PROJECT_SOURCE_DIR}/cmake/cc.cmake")
  94. if (NOT NOFORTRAN)
  95. # Fortran Compiler dependent settings
  96. include("${PROJECT_SOURCE_DIR}/cmake/fc.cmake")
  97. endif ()
  98. if (BINARY64)
  99. if (INTERFACE64)
  100. # CCOMMON_OPT += -DUSE64BITINT
  101. endif ()
  102. endif ()
  103. if (NEED_PIC)
  104. if (${CMAKE_C_COMPILER} STREQUAL "IBM")
  105. set(CCOMMON_OPT "${CCOMMON_OPT} -qpic=large")
  106. else ()
  107. set(CCOMMON_OPT "${CCOMMON_OPT} -fPIC")
  108. endif ()
  109. if (${F_COMPILER} STREQUAL "SUN")
  110. set(FCOMMON_OPT "${FCOMMON_OPT} -pic")
  111. else ()
  112. set(FCOMMON_OPT "${FCOMMON_OPT} -fPIC")
  113. endif ()
  114. endif ()
  115. if (DYNAMIC_ARCH)
  116. set(CCOMMON_OPT "${CCOMMON_OPT} -DDYNAMIC_ARCH")
  117. endif ()
  118. if (NO_LAPACK)
  119. set(CCOMMON_OPT "${CCOMMON_OPT} -DNO_LAPACK")
  120. #Disable LAPACK C interface
  121. set(NO_LAPACKE 1)
  122. endif ()
  123. if (NO_LAPACKE)
  124. set(CCOMMON_OPT "${CCOMMON_OPT} -DNO_LAPACKE")
  125. endif ()
  126. if (NO_AVX)
  127. set(CCOMMON_OPT "${CCOMMON_OPT} -DNO_AVX")
  128. endif ()
  129. if (${ARCH} STREQUAL "x86")
  130. set(CCOMMON_OPT "${CCOMMON_OPT} -DNO_AVX")
  131. endif ()
  132. if (NO_AVX2)
  133. set(CCOMMON_OPT "${CCOMMON_OPT} -DNO_AVX2")
  134. endif ()
  135. if (USE_THREAD)
  136. set(CCOMMON_OPT "${CCOMMON_OPT} -DSMP_SERVER")
  137. if (${ARCH} STREQUAL "mips64")
  138. if (NOT ${CORE} STREQUAL "LOONGSON3B")
  139. set(USE_SIMPLE_THREADED_LEVEL3 1)
  140. endif ()
  141. endif ()
  142. if (USE_OPENMP)
  143. # USE_SIMPLE_THREADED_LEVEL3 = 1
  144. # NO_AFFINITY = 1
  145. set(CCOMMON_OPT "${CCOMMON_OPT} -DUSE_OPENMP")
  146. endif ()
  147. if (BIGNUMA)
  148. set(CCOMMON_OPT "${CCOMMON_OPT} -DBIGNUMA")
  149. endif ()
  150. endif ()
  151. if (NO_WARMUP)
  152. set(CCOMMON_OPT "${CCOMMON_OPT} -DNO_WARMUP")
  153. endif ()
  154. if (CONSISTENT_FPCSR)
  155. set(CCOMMON_OPT "${CCOMMON_OPT} -DCONSISTENT_FPCSR")
  156. endif ()
  157. # Only for development
  158. # set(CCOMMON_OPT "${CCOMMON_OPT} -DPARAMTEST")
  159. # set(CCOMMON_OPT "${CCOMMON_OPT} -DPREFETCHTEST")
  160. # set(CCOMMON_OPT "${CCOMMON_OPT} -DNO_SWITCHING")
  161. # set(USE_PAPI 1)
  162. if (USE_PAPI)
  163. set(CCOMMON_OPT "${CCOMMON_OPT} -DUSE_PAPI")
  164. set(EXTRALIB "${EXTRALIB} -lpapi -lperfctr")
  165. endif ()
  166. if (DYNAMIC_THREADS)
  167. set(CCOMMON_OPT "${CCOMMON_OPT} -DDYNAMIC_THREADS")
  168. endif ()
  169. set(CCOMMON_OPT "${CCOMMON_OPT} -DMAX_CPU_NUMBER=${NUM_THREADS}")
  170. if (USE_SIMPLE_THREADED_LEVEL3)
  171. set(CCOMMON_OPT "${CCOMMON_OPT} -DUSE_SIMPLE_THREADED_LEVEL3")
  172. endif ()
  173. if (DEFINED LIBNAMESUFFIX)
  174. set(LIBPREFIX "libopenblas_${LIBNAMESUFFIX}")
  175. else ()
  176. set(LIBPREFIX "libopenblas")
  177. endif ()
  178. if (NOT DEFINED SYMBOLPREFIX)
  179. set(SYMBOLPREFIX "")
  180. endif ()
  181. if (NOT DEFINED SYMBOLSUFFIX)
  182. set(SYMBOLSUFFIX "")
  183. endif ()
  184. set(KERNELDIR "${PROJECT_SOURCE_DIR}/kernel/${ARCH}")
  185. # TODO: nead to convert these Makefiles
  186. # include ${PROJECT_SOURCE_DIR}/cmake/${ARCH}.cmake
  187. if (${CORE} STREQUAL "PPC440")
  188. set(CCOMMON_OPT "${CCOMMON_OPT} -DALLOC_QALLOC")
  189. endif ()
  190. if (${CORE} STREQUAL "PPC440FP2")
  191. set(STATIC_ALLOCATION 1)
  192. endif ()
  193. if (NOT ${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
  194. set(NO_AFFINITY 1)
  195. endif ()
  196. if (NOT ${ARCH} STREQUAL "x86_64" AND NOT ${ARCH} STREQUAL "x86" AND NOT ${CORE} STREQUAL "LOONGSON3B")
  197. set(NO_AFFINITY 1)
  198. endif ()
  199. if (NO_AFFINITY)
  200. set(CCOMMON_OPT "${CCOMMON_OPT} -DNO_AFFINITY")
  201. endif ()
  202. if (FUNCTION_PROFILE)
  203. set(CCOMMON_OPT "${CCOMMON_OPT} -DFUNCTION_PROFILE")
  204. endif ()
  205. if (HUGETLB_ALLOCATION)
  206. set(CCOMMON_OPT "${CCOMMON_OPT} -DALLOC_HUGETLB")
  207. endif ()
  208. if (DEFINED HUGETLBFILE_ALLOCATION)
  209. set(CCOMMON_OPT "${CCOMMON_OPT} -DALLOC_HUGETLBFILE -DHUGETLB_FILE_NAME=${HUGETLBFILE_ALLOCATION})")
  210. endif ()
  211. if (STATIC_ALLOCATION)
  212. set(CCOMMON_OPT "${CCOMMON_OPT} -DALLOC_STATIC")
  213. endif ()
  214. if (DEVICEDRIVER_ALLOCATION)
  215. set(CCOMMON_OPT "${CCOMMON_OPT} -DALLOC_DEVICEDRIVER -DDEVICEDRIVER_NAME=\"/dev/mapper\"")
  216. endif ()
  217. if (MIXED_MEMORY_ALLOCATION)
  218. set(CCOMMON_OPT "${CCOMMON_OPT} -DMIXED_MEMORY_ALLOCATION")
  219. endif ()
  220. if (${CMAKE_SYSTEM_NAME} STREQUAL "SunOS")
  221. set(TAR gtar)
  222. set(PATCH gpatch)
  223. set(GREP ggrep)
  224. else ()
  225. set(TAR tar)
  226. set(PATCH patch)
  227. set(GREP grep)
  228. endif ()
  229. if (NOT DEFINED MD5SUM)
  230. set(MD5SUM md5sum)
  231. endif ()
  232. set(AWK awk)
  233. set(SED sed)
  234. set(REVISION "-r${OpenBLAS_VERSION}")
  235. set(MAJOR_VERSION ${OpenBLAS_MAJOR_VERSION})
  236. if (CMAKE_BUILD_TYPE STREQUAL "Debug")
  237. set(COMMON_OPT "${COMMON_OPT} -g")
  238. endif ()
  239. if (NOT DEFINED COMMON_OPT)
  240. set(COMMON_OPT "-O2")
  241. endif ()
  242. #For x86 32-bit
  243. if (DEFINED BINARY AND BINARY EQUAL 32)
  244. if (NOT MSVC)
  245. set(COMMON_OPT "${COMMON_OPT} -m32")
  246. endif()
  247. endif()
  248. set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${COMMON_OPT} ${CCOMMON_OPT}")
  249. if(NOT MSVC)
  250. set(CMAKE_ASM_FLAGS "${CMAKE_ASM_FLAGS} ${COMMON_OPT} ${CCOMMON_OPT}")
  251. endif()
  252. # TODO: not sure what PFLAGS is -hpa
  253. set(PFLAGS "${PFLAGS} ${COMMON_OPT} ${CCOMMON_OPT} -I${TOPDIR} -DPROFILE ${COMMON_PROF}")
  254. set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} ${COMMON_OPT} ${FCOMMON_OPT}")
  255. # TODO: not sure what FPFLAGS is -hpa
  256. set(FPFLAGS "${FPFLAGS} ${COMMON_OPT} ${FCOMMON_OPT} ${COMMON_PROF}")
  257. #For LAPACK Fortran codes.
  258. set(LAPACK_FFLAGS "${LAPACK_FFLAGS} ${CMAKE_Fortran_FLAGS}")
  259. set(LAPACK_FPFLAGS "${LAPACK_FPFLAGS} ${FPFLAGS}")
  260. #Disable -fopenmp for LAPACK Fortran codes on Windows.
  261. if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
  262. set(FILTER_FLAGS "-fopenmp;-mp;-openmp;-xopenmp=parralel")
  263. foreach (FILTER_FLAG ${FILTER_FLAGS})
  264. string(REPLACE ${FILTER_FLAG} "" LAPACK_FFLAGS ${LAPACK_FFLAGS})
  265. string(REPLACE ${FILTER_FLAG} "" LAPACK_FPFLAGS ${LAPACK_FPFLAGS})
  266. endforeach ()
  267. endif ()
  268. if ("${F_COMPILER}" STREQUAL "GFORTRAN")
  269. # lapack-netlib is rife with uninitialized warnings -hpa
  270. set(LAPACK_FFLAGS "${LAPACK_FFLAGS} -Wno-maybe-uninitialized")
  271. endif ()
  272. set(LAPACK_CFLAGS "${CMAKE_C_CFLAGS} -DHAVE_LAPACK_CONFIG_H")
  273. if (INTERFACE64)
  274. set(LAPACK_CFLAGS "${LAPACK_CFLAGS} -DLAPACK_ILP64")
  275. endif ()
  276. if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
  277. set(LAPACK_CFLAGS "${LAPACK_CFLAGS} -DOPENBLAS_OS_WINDOWS")
  278. endif ()
  279. if (${CMAKE_C_COMPILER} STREQUAL "LSB" OR ${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
  280. set(LAPACK_CFLAGS "${LAPACK_CFLAGS} -DLAPACK_COMPLEX_STRUCTURE")
  281. endif ()
  282. if (NOT DEFINED SUFFIX)
  283. set(SUFFIX o)
  284. endif ()
  285. if (NOT DEFINED PSUFFIX)
  286. set(PSUFFIX po)
  287. endif ()
  288. if (NOT DEFINED LIBSUFFIX)
  289. set(LIBSUFFIX a)
  290. endif ()
  291. if (DYNAMIC_ARCH)
  292. if (USE_THREAD)
  293. set(LIBNAME "${LIBPREFIX}p${REVISION}.${LIBSUFFIX}")
  294. set(LIBNAME_P "${LIBPREFIX}p${REVISION}_p.${LIBSUFFIX}")
  295. else ()
  296. set(LIBNAME "${LIBPREFIX}${REVISION}.${LIBSUFFIX}")
  297. set(LIBNAME_P "${LIBPREFIX}${REVISION}_p.${LIBSUFFIX}")
  298. endif ()
  299. else ()
  300. if (USE_THREAD)
  301. set(LIBNAME "${LIBPREFIX}_${LIBCORE}p${REVISION}.${LIBSUFFIX}")
  302. set(LIBNAME_P "${LIBPREFIX}_${LIBCORE}p${REVISION}_p.${LIBSUFFIX}")
  303. else ()
  304. set(LIBNAME "${LIBPREFIX}_${LIBCORE}${REVISION}.${LIBSUFFIX}")
  305. set(LIBNAME_P "${LIBPREFIX}_${LIBCORE}${REVISION}_p.${LIBSUFFIX}")
  306. endif ()
  307. endif ()
  308. set(LIBDLLNAME "${LIBPREFIX}.dll")
  309. set(LIBSONAME "${LIBNAME}.${LIBSUFFIX}.so")
  310. set(LIBDYNNAME "${LIBNAME}.${LIBSUFFIX}.dylib")
  311. set(LIBDEFNAME "${LIBNAME}.${LIBSUFFIX}.def")
  312. set(LIBEXPNAME "${LIBNAME}.${LIBSUFFIX}.exp")
  313. set(LIBZIPNAME "${LIBNAME}.${LIBSUFFIX}.zip")
  314. set(LIBS "${PROJECT_SOURCE_DIR}/${LIBNAME}")
  315. set(LIBS_P "${PROJECT_SOURCE_DIR}/${LIBNAME_P}")
  316. set(LIB_COMPONENTS BLAS)
  317. if (NOT NO_CBLAS)
  318. set(LIB_COMPONENTS "${LIB_COMPONENTS} CBLAS")
  319. endif ()
  320. if (NOT NO_LAPACK)
  321. set(LIB_COMPONENTS "${LIB_COMPONENTS} LAPACK")
  322. if (NOT NO_LAPACKE)
  323. set(LIB_COMPONENTS "${LIB_COMPONENTS} LAPACKE")
  324. endif ()
  325. endif ()
  326. if (ONLY_CBLAS)
  327. set(LIB_COMPONENTS CBLAS)
  328. endif ()
  329. # For GEMM3M
  330. set(USE_GEMM3M 0)
  331. if (DEFINED ARCH)
  332. if (${ARCH} STREQUAL "x86" OR ${ARCH} STREQUAL "x86_64" OR ${ARCH} STREQUAL "ia64" OR ${ARCH} STREQUAL "MIPS")
  333. set(USE_GEMM3M 1)
  334. endif ()
  335. if (${CORE} STREQUAL "generic")
  336. set(USE_GEMM3M 0)
  337. endif ()
  338. endif ()
  339. #export OSNAME
  340. #export ARCH
  341. #export CORE
  342. #export LIBCORE
  343. #export PGCPATH
  344. #export CONFIG
  345. #export CC
  346. #export FC
  347. #export BU
  348. #export FU
  349. #export NEED2UNDERSCORES
  350. #export USE_THREAD
  351. #export NUM_THREADS
  352. #export NUM_CORES
  353. #export SMP
  354. #export MAKEFILE_RULE
  355. #export NEED_PIC
  356. #export BINARY
  357. #export BINARY32
  358. #export BINARY64
  359. #export F_COMPILER
  360. #export C_COMPILER
  361. #export USE_OPENMP
  362. #export CROSS
  363. #export CROSS_SUFFIX
  364. #export NOFORTRAN
  365. #export NO_FBLAS
  366. #export EXTRALIB
  367. #export CEXTRALIB
  368. #export FEXTRALIB
  369. #export HAVE_SSE
  370. #export HAVE_SSE2
  371. #export HAVE_SSE3
  372. #export HAVE_SSSE3
  373. #export HAVE_SSE4_1
  374. #export HAVE_SSE4_2
  375. #export HAVE_SSE4A
  376. #export HAVE_SSE5
  377. #export HAVE_AVX
  378. #export HAVE_VFP
  379. #export HAVE_VFPV3
  380. #export HAVE_VFPV4
  381. #export HAVE_NEON
  382. #export KERNELDIR
  383. #export FUNCTION_PROFILE
  384. #export TARGET_CORE
  385. #
  386. #export SGEMM_UNROLL_M
  387. #export SGEMM_UNROLL_N
  388. #export DGEMM_UNROLL_M
  389. #export DGEMM_UNROLL_N
  390. #export QGEMM_UNROLL_M
  391. #export QGEMM_UNROLL_N
  392. #export CGEMM_UNROLL_M
  393. #export CGEMM_UNROLL_N
  394. #export ZGEMM_UNROLL_M
  395. #export ZGEMM_UNROLL_N
  396. #export XGEMM_UNROLL_M
  397. #export XGEMM_UNROLL_N
  398. #export CGEMM3M_UNROLL_M
  399. #export CGEMM3M_UNROLL_N
  400. #export ZGEMM3M_UNROLL_M
  401. #export ZGEMM3M_UNROLL_N
  402. #export XGEMM3M_UNROLL_M
  403. #export XGEMM3M_UNROLL_N
  404. #if (USE_CUDA)
  405. # export CUDADIR
  406. # export CUCC
  407. # export CUFLAGS
  408. # export CULIB
  409. #endif
  410. #.SUFFIXES: .$(PSUFFIX) .$(SUFFIX) .f
  411. #
  412. #.f.$(SUFFIX):
  413. # $(FC) $(FFLAGS) -c $< -o $(@F)
  414. #
  415. #.f.$(PSUFFIX):
  416. # $(FC) $(FPFLAGS) -pg -c $< -o $(@F)
  417. # these are not cross-platform
  418. #ifdef BINARY64
  419. #PATHSCALEPATH = /opt/pathscale/lib/3.1
  420. #PGIPATH = /opt/pgi/linux86-64/7.1-5/lib
  421. #else
  422. #PATHSCALEPATH = /opt/pathscale/lib/3.1/32
  423. #PGIPATH = /opt/pgi/linux86/7.1-5/lib
  424. #endif
  425. #ACMLPATH = /opt/acml/4.3.0
  426. #ifneq ($(OSNAME), Darwin)
  427. #MKLPATH = /opt/intel/mkl/10.2.2.025/lib
  428. #else
  429. #MKLPATH = /Library/Frameworks/Intel_MKL.framework/Versions/10.0.1.014/lib
  430. #endif
  431. #ATLASPATH = /opt/atlas/3.9.17/opteron
  432. #FLAMEPATH = $(HOME)/flame/lib
  433. #ifneq ($(OSNAME), SunOS)
  434. #SUNPATH = /opt/sunstudio12.1
  435. #else
  436. #SUNPATH = /opt/SUNWspro
  437. #endif