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.

.travis.yml 11 kB

10 years ago
3 years ago
3 years ago
3 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320
  1. # XXX: Precise is already deprecated, new default is Trusty.
  2. # https://blog.travis-ci.com/2017-07-11-trusty-as-default-linux-is-coming
  3. dist: focal
  4. sudo: true
  5. language: c
  6. matrix:
  7. include:
  8. - &test-ubuntu
  9. # os: linux
  10. compiler: gcc
  11. addons:
  12. apt:
  13. packages:
  14. - gfortran
  15. # before_script: &common-before
  16. # - COMMON_FLAGS="DYNAMIC_ARCH=1 TARGET=NEHALEM NUM_THREADS=32"
  17. # script:
  18. # - make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE
  19. # - make -C test $COMMON_FLAGS $BTYPE
  20. # - make -C ctest $COMMON_FLAGS $BTYPE
  21. # - make -C utest $COMMON_FLAGS $BTYPE
  22. # env:
  23. # - TARGET_BOX=LINUX64
  24. # - BTYPE="BINARY=64"
  25. #
  26. # - <<: *test-ubuntu
  27. os: linux
  28. arch: ppc64le
  29. before_script: &common-before
  30. - COMMON_FLAGS="DYNAMIC_ARCH=1 TARGET=POWER8 NUM_THREADS=32"
  31. script:
  32. - travis_wait 50 make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE
  33. - make -C test $COMMON_FLAGS $BTYPE
  34. - make -C ctest $COMMON_FLAGS $BTYPE
  35. - make -C utest $COMMON_FLAGS $BTYPE
  36. env:
  37. # for matrix annotation only
  38. - TARGET_BOX=PPC64LE_LINUX
  39. - BTYPE="BINARY=64 USE_OPENMP=1"
  40. - <<: *test-ubuntu
  41. os: linux
  42. arch: s390x
  43. before_script:
  44. - COMMON_FLAGS="DYNAMIC_ARCH=1 TARGET=Z13 NUM_THREADS=32"
  45. - sudo apt-get install --only-upgrade binutils
  46. env:
  47. # for matrix annotation only
  48. - TARGET_BOX=IBMZ_LINUX
  49. - BTYPE="BINARY=64 USE_OPENMP=1"
  50. - <<: *test-ubuntu
  51. os: linux
  52. dist: focal
  53. arch: s390x
  54. compiler: clang
  55. before_script:
  56. - COMMON_FLAGS="DYNAMIC_ARCH=1 TARGET=Z13 NUM_THREADS=32"
  57. - sudo apt-get install --only-upgrade binutils
  58. env:
  59. # for matrix annotation only
  60. - TARGET_BOX=IBMZ_LINUX
  61. - BTYPE="BINARY=64 USE_OPENMP=0 CC=clang"
  62. # - <<: *test-ubuntu
  63. # env:
  64. # - TARGET_BOX=LINUX64
  65. # - BTYPE="BINARY=64 USE_OPENMP=1"
  66. #
  67. # - <<: *test-ubuntu
  68. # env:
  69. # - TARGET_BOX=LINUX64
  70. # - BTYPE="BINARY=64 INTERFACE64=1"
  71. #
  72. # - <<: *test-ubuntu
  73. # compiler: clang
  74. # env:
  75. # - TARGET_BOX=LINUX64
  76. # - BTYPE="BINARY=64 CC=clang"
  77. #
  78. # - <<: *test-ubuntu
  79. # compiler: clang
  80. # env:
  81. # - TARGET_BOX=LINUX64
  82. # - BTYPE="BINARY=64 INTERFACE64=1 CC=clang"
  83. #
  84. # - <<: *test-ubuntu
  85. # addons:
  86. # apt:
  87. # packages:
  88. # - gcc-multilib
  89. # - gfortran-multilib
  90. # env:
  91. # - TARGET_BOX=LINUX32
  92. # - BTYPE="BINARY=32"
  93. #
  94. - os: linux
  95. arch: ppc64le
  96. dist: bionic
  97. compiler: gcc
  98. before_script:
  99. - sudo add-apt-repository 'ppa:ubuntu-toolchain-r/test' -y
  100. - sudo apt-get update
  101. - sudo apt-get install gcc-9 gfortran-9 -y
  102. script:
  103. - travis_wait 50 make QUIET_MAKE=1 BINARY=64 USE_OPENMP=1 CC=gcc-9 FC=gfortran-9
  104. - make -C test $COMMON_FLAGS $BTYPE
  105. - make -C ctest $COMMON_FLAGS $BTYPE
  106. - make -C utest $COMMON_FLAGS $BTYPE
  107. env:
  108. # for matrix annotation only
  109. - TARGET_BOX=PPC64LE_LINUX_P9
  110. - os: linux
  111. arch: ppc64le
  112. dist: bionic
  113. compiler: gcc
  114. before_script:
  115. - sudo add-apt-repository 'ppa:ubuntu-toolchain-r/test' -y
  116. - sudo apt-get update
  117. - sudo apt-get install gcc-9 gfortran-9 -y
  118. script:
  119. - travis_wait 50 make QUIET_MAKE=1 BUILD_BFLOAT16=1 BINARY=64 USE_OPENMP=1 CC=gcc-9 FC=gfortran-9
  120. - make -C test $COMMON_FLAGS $BTYPE
  121. - make -C ctest $COMMON_FLAGS $BTYPE
  122. - make -C utest $COMMON_FLAGS $BTYPE
  123. env:
  124. # for matrix annotation only
  125. - TARGET_BOX=PPC64LE_LINUX_P9
  126. # - os: linux
  127. # compiler: gcc
  128. # addons:
  129. # apt:
  130. # packages:
  131. # - binutils-mingw-w64-x86-64
  132. # - gcc-mingw-w64-x86-64
  133. # - gfortran-mingw-w64-x86-64
  134. # before_script: *common-before
  135. # script:
  136. # - travis_wait 45 make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE
  137. # env:
  138. # - TARGET_BOX=WIN64
  139. # - BTYPE="BINARY=64 HOSTCC=gcc CC=x86_64-w64-mingw32-gcc FC=x86_64-w64-mingw32-gfortran"
  140. #
  141. # Build & test on Alpine Linux inside chroot, i.e. on system with musl libc.
  142. # These jobs needs sudo, so Travis runs them on VM-based infrastructure
  143. # which is slower than container-based infrastructure used for jobs
  144. # that don't require sudo.
  145. # - &test-alpine
  146. # os: linux
  147. # dist: trusty
  148. # sudo: true
  149. # language: minimal
  150. # before_install:
  151. # - "wget 'https://raw.githubusercontent.com/alpinelinux/alpine-chroot-install/v0.9.0/alpine-chroot-install' \
  152. # && echo 'e5dfbbdc0c4b3363b99334510976c86bfa6cb251 alpine-chroot-install' | sha1sum -c || exit 1"
  153. # - alpine() { /alpine/enter-chroot -u "$USER" "$@"; }
  154. # install:
  155. # - sudo sh alpine-chroot-install -p 'build-base gfortran perl linux-headers'
  156. # before_script: *common-before
  157. # script:
  158. # # XXX: Disable some warnings for now to avoid exceeding Travis limit for log size.
  159. # - alpine make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE
  160. # CFLAGS="-Wno-misleading-indentation -Wno-sign-conversion -Wno-incompatible-pointer-types"
  161. # - alpine make -C test $COMMON_FLAGS $BTYPE
  162. # - alpine make -C ctest $COMMON_FLAGS $BTYPE
  163. # - alpine make -C utest $COMMON_FLAGS $BTYPE
  164. # env:
  165. # - TARGET_BOX=LINUX64_MUSL
  166. # - BTYPE="BINARY=64"
  167. # XXX: This job segfaults in TESTS OF THE COMPLEX LEVEL 3 BLAS,
  168. # but only on Travis CI, cannot reproduce it elsewhere.
  169. #- &test-alpine-openmp
  170. # <<: *test-alpine
  171. # env:
  172. # - TARGET_BOX=LINUX64_MUSL
  173. # - BTYPE="BINARY=64 USE_OPENMP=1"
  174. # - <<: *test-alpine
  175. # env:
  176. # - TARGET_BOX=LINUX64_MUSL
  177. # - BTYPE="BINARY=64 INTERFACE64=1"
  178. #
  179. # # Build with the same flags as Alpine do in OpenBLAS package.
  180. # - <<: *test-alpine
  181. # env:
  182. # - TARGET_BOX=LINUX64_MUSL
  183. # - BTYPE="BINARY=64 NO_AFFINITY=1 USE_OPENMP=0 NO_LAPACK=0 TARGET=CORE2"
  184. # - &test-cmake
  185. # os: linux
  186. # compiler: clang
  187. # addons:
  188. # apt:
  189. # packages:
  190. # - gfortran
  191. # - cmake
  192. # dist: trusty
  193. # sudo: true
  194. # before_script:
  195. # - COMMON_ARGS="-DTARGET=NEHALEM -DNUM_THREADS=32"
  196. # script:
  197. # - mkdir build
  198. # - CONFIG=Release
  199. # - cmake -Bbuild -H. $CMAKE_ARGS $COMMON_ARGS -DCMAKE_BUILD_TYPE=$CONFIG
  200. # - cmake --build build --config $CONFIG -- -j2
  201. # env:
  202. # - CMAKE=1
  203. # - <<: *test-cmake
  204. # env:
  205. # - CMAKE=1 CMAKE_ARGS="-DNOFORTRAN=1"
  206. # - <<: *test-cmake
  207. # compiler: gcc
  208. # env:
  209. # - CMAKE=1
  210. # - &test-macos
  211. # os: osx
  212. # osx_image: xcode11.5
  213. # before_script:
  214. # - COMMON_FLAGS="DYNAMIC_ARCH=1 NUM_THREADS=32"
  215. # script:
  216. # - travis_wait 45 make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE
  217. # env:
  218. # - BTYPE="TARGET=NEHALEM BINARY=64 INTERFACE64=1 FC=gfortran-9"
  219. #
  220. # - <<: *test-macos
  221. # osx_image: xcode12
  222. # before_script:
  223. # - COMMON_FLAGS="DYNAMIC_ARCH=1 NUM_THREADS=32"
  224. # - brew update
  225. # script:
  226. # - travis_wait 45 make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE
  227. # env:
  228. # - BTYPE="TARGET=HASWELL USE_OPENMP=1 BINARY=64 INTERFACE64=1 CC=gcc-10 FC=gfortran-10"
  229. #
  230. # - <<: *test-macos
  231. # osx_image: xcode12
  232. # before_script:
  233. # - COMMON_FLAGS="DYNAMIC_ARCH=1 NUM_THREADS=32"
  234. # - brew update
  235. # script:
  236. # - travis_wait 45 make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE
  237. # env:
  238. # - BTYPE="TARGET=NEHALEM BINARY=64 INTERFACE64=1 FC=gfortran-10"
  239. # - <<: *test-macos
  240. # osx_image: xcode10
  241. # env:
  242. # - BTYPE="TARGET=NEHALEM BINARY=32 NOFORTRAN=1"
  243. # - <<: *test-macos
  244. # osx_image: xcode11.5
  245. # before_script:
  246. # - COMMON_FLAGS="DYNAMIC_ARCH=1 NUM_THREADS=32"
  247. # - brew update
  248. # env:
  249. # - CC="/Applications/Xcode-10.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang"
  250. # - CFLAGS="-O2 -Wno-macro-redefined -isysroot /Applications/Xcode-10.1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk -arch arm64 -miphoneos-version-min=10.0"
  251. # - CC="/Applications/Xcode-11.5.GM.Seed.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang"
  252. # - CFLAGS="-O2 -Wno-macro-redefined -isysroot /Applications/Xcode-11.5.GM.Seed.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk -arch arm64 -miphoneos-version-min=10.0"
  253. # - BTYPE="TARGET=ARMV8 BINARY=64 HOSTCC=clang NOFORTRAN=1"
  254. # - <<: *test-macos
  255. # osx_image: xcode11.5
  256. # env:
  257. ## - CC="/Applications/Xcode-10.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang"
  258. ## - CFLAGS="-O2 -mno-thumb -Wno-macro-redefined -isysroot /Applications/Xcode-10.1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk -arch armv7 -miphoneos-version-min=5.1"
  259. # - CC="/Applications/Xcode-11.5.GM.Seed.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang"
  260. # - CFLAGS="-O2 -mno-thumb -Wno-macro-redefined -isysroot /Applications/Xcode-11.5.GM.Seed.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk -arch armv7 -miphoneos-version-min=5.1"
  261. # - BTYPE="TARGET=ARMV7 HOSTCC=clang NOFORTRAN=1"
  262. - &test-neoversen1
  263. os: linux
  264. arch: arm64
  265. dist: focal
  266. group: edge
  267. virt: lxd
  268. compiler: gcc
  269. addons:
  270. apt:
  271. packages:
  272. - gfortran
  273. script:
  274. - travis_wait 45 make && make lapack-test
  275. env:
  276. - TARGET_BOX=NEOVERSE_N1
  277. - &test-neon1-gcc8
  278. os: linux
  279. arch: arm64
  280. dist: focal
  281. group: edge
  282. virt: lxd
  283. compiler: gcc
  284. addons:
  285. apt:
  286. packages:
  287. - gcc-8
  288. - gfortran-8
  289. script:
  290. - travis_wait 45 make QUIET_MAKE=1 CC=gcc-8 FC=gfortran-8 DYNAMIC_ARCH=1
  291. env:
  292. - TARGET_BOX=NEOVERSE_N1-GCC8
  293. # whitelist
  294. branches:
  295. only:
  296. - master
  297. - develop
  298. notifications:
  299. webhooks:
  300. urls:
  301. - https://webhooks.gitter.im/e/8a6e4470a0cebd090344
  302. on_success: change # options: [always|never|change] default: always
  303. on_failure: always # options: [always|never|change] default: always
  304. on_start: never # options: [always|never|change] default: always