* Add Windows-CL build job on Azuretags/v0.3.10^2
| @@ -1,192 +0,0 @@ | |||
| --- | |||
| kind: pipeline | |||
| name: arm64_gcc_make | |||
| platform: | |||
| os: linux | |||
| arch: arm64 | |||
| steps: | |||
| - name: Build and Test | |||
| image: ubuntu:18.04 | |||
| environment: | |||
| CC: gcc | |||
| COMMON_FLAGS: 'DYNAMIC_ARCH=1 TARGET=ARMV8 NUM_THREADS=32' | |||
| commands: | |||
| - echo "MAKE_FLAGS:= $COMMON_FLAGS" | |||
| - apt-get update -y | |||
| - apt-get install -y make $CC gfortran perl | |||
| - $CC --version | |||
| - make QUIET_MAKE=1 $COMMON_FLAGS | |||
| - make -C test $COMMON_FLAGS | |||
| - make -C ctest $COMMON_FLAGS | |||
| - make -C utest $COMMON_FLAGS | |||
| --- | |||
| kind: pipeline | |||
| name: arm32_gcc_make | |||
| platform: | |||
| os: linux | |||
| arch: arm | |||
| steps: | |||
| - name: Build and Test | |||
| image: ubuntu:18.04 | |||
| environment: | |||
| CC: gcc | |||
| COMMON_FLAGS: 'DYNAMIC_ARCH=1 TARGET=ARMV6 NUM_THREADS=32' | |||
| commands: | |||
| - echo "MAKE_FLAGS:= $COMMON_FLAGS" | |||
| - apt-get update -y | |||
| - apt-get install -y make $CC gfortran perl | |||
| - $CC --version | |||
| - make QUIET_MAKE=1 $COMMON_FLAGS | |||
| - make -C test $COMMON_FLAGS | |||
| - make -C ctest $COMMON_FLAGS | |||
| - make -C utest $COMMON_FLAGS | |||
| --- | |||
| kind: pipeline | |||
| name: arm64_clang_make | |||
| platform: | |||
| os: linux | |||
| arch: arm64 | |||
| steps: | |||
| - name: Build and Test | |||
| image: ubuntu:18.04 | |||
| environment: | |||
| CC: clang | |||
| COMMON_FLAGS: 'DYNAMIC_ARCH=1 TARGET=ARMV8 NUM_THREADS=32' | |||
| commands: | |||
| - echo "MAKE_FLAGS:= $COMMON_FLAGS" | |||
| - apt-get update -y | |||
| - apt-get install -y make $CC gfortran perl | |||
| - $CC --version | |||
| - make QUIET_MAKE=1 $COMMON_FLAGS | |||
| - make -C test $COMMON_FLAGS | |||
| - make -C ctest $COMMON_FLAGS | |||
| - make -C utest $COMMON_FLAGS | |||
| --- | |||
| kind: pipeline | |||
| name: arm32_clang_cmake | |||
| platform: | |||
| os: linux | |||
| arch: arm | |||
| steps: | |||
| - name: Build and Test | |||
| image: ubuntu:18.04 | |||
| environment: | |||
| CC: clang | |||
| CMAKE_FLAGS: '-DDYNAMIC_ARCH=1 -DTARGET=ARMV6 -DNUM_THREADS=32 -DNOFORTRAN=ON -DBUILD_WITHOUT_LAPACK=ON' | |||
| commands: | |||
| - echo "CMAKE_FLAGS:= $CMAKE_FLAGS" | |||
| - apt-get update -y | |||
| - apt-get install -y make $CC g++ perl cmake | |||
| - $CC --version | |||
| - mkdir build && cd build | |||
| - cmake $CMAKE_FLAGS .. | |||
| - make -j | |||
| - ctest -V | |||
| --- | |||
| kind: pipeline | |||
| name: arm64_gcc_cmake | |||
| platform: | |||
| os: linux | |||
| arch: arm64 | |||
| steps: | |||
| - name: Build and Test | |||
| image: ubuntu:18.04 | |||
| environment: | |||
| CC: gcc | |||
| CMAKE_FLAGS: '-DDYNAMIC_ARCH=1 -DTARGET=ARMV8 -DNUM_THREADS=32 -DNOFORTRAN=ON -DBUILD_WITHOUT_LAPACK=ON' | |||
| commands: | |||
| - echo "CMAKE_FLAGS:= $CMAKE_FLAGS" | |||
| - apt-get update -y | |||
| - apt-get install -y make $CC g++ perl cmake | |||
| - $CC --version | |||
| - mkdir build && cd build | |||
| - cmake $CMAKE_FLAGS .. | |||
| - make -j | |||
| - ctest -V | |||
| --- | |||
| kind: pipeline | |||
| name: arm64_clang_cmake | |||
| platform: | |||
| os: linux | |||
| arch: arm64 | |||
| steps: | |||
| - name: Build and Test | |||
| image: ubuntu:18.04 | |||
| environment: | |||
| CC: clang | |||
| CMAKE_FLAGS: '-DDYNAMIC_ARCH=1 -DTARGET=ARMV8 -DNUM_THREADS=32 -DNOFORTRAN=ON -DBUILD_WITHOUT_LAPACK=ON' | |||
| commands: | |||
| - echo "CMAKE_FLAGS:= $CMAKE_FLAGS" | |||
| - apt-get update -y | |||
| - apt-get install -y make $CC g++ perl cmake | |||
| - $CC --version | |||
| - mkdir build && cd build | |||
| - cmake $CMAKE_FLAGS .. | |||
| - make -j | |||
| - ctest -V | |||
| --- | |||
| kind: pipeline | |||
| name: arm64_native_test | |||
| platform: | |||
| os: linux | |||
| arch: arm64 | |||
| steps: | |||
| - name: Build and Test | |||
| image: ubuntu:18.04 | |||
| environment: | |||
| CC: gcc | |||
| COMMON_FLAGS: 'USE_OPENMP=1' | |||
| commands: | |||
| - echo "MAKE_FLAGS:= $COMMON_FLAGS" | |||
| - apt-get update -y | |||
| - apt-get install -y make $CC gfortran perl python g++ | |||
| - $CC --version | |||
| - make QUIET_MAKE=1 $COMMON_FLAGS | |||
| - make -C test $COMMON_FLAGS | |||
| - make -C ctest $COMMON_FLAGS | |||
| - make -C utest $COMMON_FLAGS | |||
| - make -C cpp_thread_test dgemm_tester | |||
| --- | |||
| kind: pipeline | |||
| name: epyc_native_test | |||
| platform: | |||
| os: linux | |||
| arch: amd64 | |||
| steps: | |||
| - name: Build and Test | |||
| image: ubuntu:18.04 | |||
| environment: | |||
| CC: gcc | |||
| COMMON_FLAGS: 'USE_OPENMP=1' | |||
| commands: | |||
| - echo "MAKE_FLAGS:= $COMMON_FLAGS" | |||
| - apt-get update -y | |||
| - apt-get install -y make $CC gfortran perl python g++ | |||
| - $CC --version | |||
| - make QUIET_MAKE=1 $COMMON_FLAGS | |||
| - make -C test $COMMON_FLAGS | |||
| - make -C ctest $COMMON_FLAGS | |||
| - make -C utest $COMMON_FLAGS | |||
| - make -C cpp_thread_test dgemm_tester | |||
| @@ -1,211 +0,0 @@ | |||
| # XXX: Precise is already deprecated, new default is Trusty. | |||
| # https://blog.travis-ci.com/2017-07-11-trusty-as-default-linux-is-coming | |||
| dist: precise | |||
| sudo: true | |||
| language: c | |||
| matrix: | |||
| include: | |||
| - &test-ubuntu | |||
| os: linux | |||
| compiler: gcc | |||
| addons: | |||
| apt: | |||
| packages: | |||
| - gfortran | |||
| before_script: &common-before | |||
| - COMMON_FLAGS="DYNAMIC_ARCH=1 TARGET=NEHALEM NUM_THREADS=32" | |||
| script: | |||
| - set -e | |||
| - make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE | |||
| - make -C test $COMMON_FLAGS $BTYPE | |||
| - make -C ctest $COMMON_FLAGS $BTYPE | |||
| - make -C utest $COMMON_FLAGS $BTYPE | |||
| env: | |||
| - TARGET_BOX=LINUX64 | |||
| - BTYPE="BINARY=64" | |||
| - <<: *test-ubuntu | |||
| os: linux-ppc64le | |||
| before_script: | |||
| - COMMON_FLAGS="DYNAMIC_ARCH=1 TARGET=POWER8 NUM_THREADS=32" | |||
| env: | |||
| # for matrix annotation only | |||
| - TARGET_BOX=PPC64LE_LINUX | |||
| - BTYPE="BINARY=64 USE_OPENMP=1" | |||
| - <<: *test-ubuntu | |||
| os: linux | |||
| arch: s390x | |||
| before_script: | |||
| - COMMON_FLAGS="DYNAMIC_ARCH=1 TARGET=Z13 NUM_THREADS=32" | |||
| env: | |||
| # for matrix annotation only | |||
| - TARGET_BOX=IBMZ_LINUX | |||
| - BTYPE="BINARY=64 USE_OPENMP=1" | |||
| - <<: *test-ubuntu | |||
| env: | |||
| - TARGET_BOX=LINUX64 | |||
| - BTYPE="BINARY=64 USE_OPENMP=1" | |||
| - <<: *test-ubuntu | |||
| env: | |||
| - TARGET_BOX=LINUX64 | |||
| - BTYPE="BINARY=64 INTERFACE64=1" | |||
| - <<: *test-ubuntu | |||
| compiler: clang | |||
| env: | |||
| - TARGET_BOX=LINUX64 | |||
| - BTYPE="BINARY=64 CC=clang" | |||
| - <<: *test-ubuntu | |||
| compiler: clang | |||
| env: | |||
| - TARGET_BOX=LINUX64 | |||
| - BTYPE="BINARY=64 INTERFACE64=1 CC=clang" | |||
| - <<: *test-ubuntu | |||
| addons: | |||
| apt: | |||
| packages: | |||
| - gcc-multilib | |||
| - gfortran-multilib | |||
| env: | |||
| - TARGET_BOX=LINUX32 | |||
| - BTYPE="BINARY=32" | |||
| - os: linux | |||
| compiler: gcc | |||
| addons: | |||
| apt: | |||
| packages: | |||
| - binutils-mingw-w64-x86-64 | |||
| - gcc-mingw-w64-x86-64 | |||
| - gfortran-mingw-w64-x86-64 | |||
| before_script: *common-before | |||
| script: | |||
| - travis_wait 45 make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE | |||
| env: | |||
| - TARGET_BOX=WIN64 | |||
| - BTYPE="BINARY=64 HOSTCC=gcc CC=x86_64-w64-mingw32-gcc FC=x86_64-w64-mingw32-gfortran" | |||
| # Build & test on Alpine Linux inside chroot, i.e. on system with musl libc. | |||
| # These jobs needs sudo, so Travis runs them on VM-based infrastructure | |||
| # which is slower than container-based infrastructure used for jobs | |||
| # that don't require sudo. | |||
| - &test-alpine | |||
| os: linux | |||
| dist: trusty | |||
| sudo: true | |||
| language: minimal | |||
| before_install: | |||
| - "wget 'https://raw.githubusercontent.com/alpinelinux/alpine-chroot-install/v0.9.0/alpine-chroot-install' \ | |||
| && echo 'e5dfbbdc0c4b3363b99334510976c86bfa6cb251 alpine-chroot-install' | sha1sum -c || exit 1" | |||
| - alpine() { /alpine/enter-chroot -u "$USER" "$@"; } | |||
| install: | |||
| - sudo sh alpine-chroot-install -p 'build-base gfortran perl linux-headers' | |||
| before_script: *common-before | |||
| script: | |||
| - set -e | |||
| # XXX: Disable some warnings for now to avoid exceeding Travis limit for log size. | |||
| - alpine make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE | |||
| CFLAGS="-Wno-misleading-indentation -Wno-sign-conversion -Wno-incompatible-pointer-types" | |||
| - alpine make -C test $COMMON_FLAGS $BTYPE | |||
| - alpine make -C ctest $COMMON_FLAGS $BTYPE | |||
| - alpine make -C utest $COMMON_FLAGS $BTYPE | |||
| env: | |||
| - TARGET_BOX=LINUX64_MUSL | |||
| - BTYPE="BINARY=64" | |||
| # XXX: This job segfaults in TESTS OF THE COMPLEX LEVEL 3 BLAS, | |||
| # but only on Travis CI, cannot reproduce it elsewhere. | |||
| #- &test-alpine-openmp | |||
| # <<: *test-alpine | |||
| # env: | |||
| # - TARGET_BOX=LINUX64_MUSL | |||
| # - BTYPE="BINARY=64 USE_OPENMP=1" | |||
| - <<: *test-alpine | |||
| env: | |||
| - TARGET_BOX=LINUX64_MUSL | |||
| - BTYPE="BINARY=64 INTERFACE64=1" | |||
| # Build with the same flags as Alpine do in OpenBLAS package. | |||
| - <<: *test-alpine | |||
| env: | |||
| - TARGET_BOX=LINUX64_MUSL | |||
| - BTYPE="BINARY=64 NO_AFFINITY=1 USE_OPENMP=0 NO_LAPACK=0 TARGET=CORE2" | |||
| - &test-cmake | |||
| os: linux | |||
| compiler: clang | |||
| addons: | |||
| apt: | |||
| packages: | |||
| - gfortran | |||
| - cmake | |||
| dist: trusty | |||
| sudo: true | |||
| before_script: | |||
| - COMMON_ARGS="-DTARGET=NEHALEM -DNUM_THREADS=32" | |||
| script: | |||
| - set -e | |||
| - mkdir build | |||
| - CONFIG=Release | |||
| - cmake -Bbuild -H. $CMAKE_ARGS $COMMON_ARGS -DCMAKE_BUILD_TYPE=$CONFIG | |||
| - cmake --build build --config $CONFIG -- -j2 | |||
| env: | |||
| - CMAKE=1 | |||
| - <<: *test-cmake | |||
| env: | |||
| - CMAKE=1 CMAKE_ARGS="-DNOFORTRAN=1" | |||
| - <<: *test-cmake | |||
| compiler: gcc | |||
| env: | |||
| - CMAKE=1 | |||
| - &test-macos | |||
| os: osx | |||
| osx_image: xcode10.1 | |||
| before_script: | |||
| - COMMON_FLAGS="DYNAMIC_ARCH=1 NUM_THREADS=32" | |||
| - brew update | |||
| - brew install gcc@8 # for gfortran | |||
| script: | |||
| - travis_wait 45 make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE | |||
| env: | |||
| - BTYPE="TARGET=NEHALEM BINARY=64 INTERFACE64=1 FC=gfortran-8" | |||
| - <<: *test-macos | |||
| osx_image: xcode10.0 | |||
| env: | |||
| - BTYPE="TARGET=NEHALEM BINARY=32 NOFORTRAN=1" | |||
| - <<: *test-macos | |||
| osx_image: xcode10.1 | |||
| env: | |||
| - CC="/Applications/Xcode-10.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" | |||
| - 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" | |||
| - BTYPE="TARGET=ARMV8 BINARY=64 HOSTCC=clang NOFORTRAN=1" | |||
| - <<: *test-macos | |||
| osx_image: xcode10.1 | |||
| env: | |||
| - CC="/Applications/Xcode-10.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" | |||
| - 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" | |||
| - BTYPE="TARGET=ARMV7 HOSTCC=clang NOFORTRAN=1" | |||
| # whitelist | |||
| branches: | |||
| only: | |||
| - master | |||
| - develop | |||
| notifications: | |||
| webhooks: | |||
| urls: | |||
| - https://webhooks.gitter.im/e/8a6e4470a0cebd090344 | |||
| on_success: change # options: [always|never|change] default: always | |||
| on_failure: always # options: [always|never|change] default: always | |||
| on_start: never # options: [always|never|change] default: always | |||
| @@ -1,82 +0,0 @@ | |||
| version: 0.2.19.{build} | |||
| #environment: | |||
| platform: | |||
| - x64 | |||
| os: Visual Studio 2017 | |||
| configuration: Release | |||
| clone_folder: c:\projects\OpenBLAS | |||
| init: | |||
| - git config --global core.autocrlf input | |||
| clone_depth: 5 | |||
| skip_tags: true | |||
| matrix: | |||
| fast_finish: false | |||
| skip_commits: | |||
| # Add [av skip] to commit messages | |||
| message: /\[av skip\]/ | |||
| environment: | |||
| global: | |||
| CONDA_INSTALL_LOCN: C:\\Miniconda36-x64 | |||
| matrix: | |||
| - COMPILER: clang-cl | |||
| WITH_FORTRAN: yes | |||
| - COMPILER: clang-cl | |||
| DYNAMIC_ARCH: ON | |||
| WITH_FORTRAN: no | |||
| - COMPILER: cl | |||
| - COMPILER: MinGW64-gcc-7.2.0-mingw | |||
| DYNAMIC_ARCH: OFF | |||
| WITH_FORTRAN: ignore | |||
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 | |||
| COMPILER: MinGW-gcc-6.3.0-32 | |||
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 | |||
| COMPILER: MinGW-gcc-5.3.0 | |||
| WITH_FORTRAN: ignore | |||
| install: | |||
| - if [%COMPILER%]==[clang-cl] call %CONDA_INSTALL_LOCN%\Scripts\activate.bat | |||
| - if [%COMPILER%]==[clang-cl] conda config --add channels conda-forge --force | |||
| - if [%COMPILER%]==[clang-cl] conda install --yes --quiet clangdev cmake | |||
| - if [%WITH_FORTRAN%]==[no] conda install --yes --quiet ninja | |||
| - if [%WITH_FORTRAN%]==[yes] conda install --yes --quiet -c isuruf kitware-ninja | |||
| - if [%WITH_FORTRAN%]==[yes] conda install --yes --quiet flang | |||
| - if [%COMPILER%]==[clang-cl] call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" x64 | |||
| - if [%COMPILER%]==[clang-cl] set "LIB=%CONDA_INSTALL_LOCN%\Library\lib;%LIB%" | |||
| - if [%COMPILER%]==[clang-cl] set "CPATH=%CONDA_INSTALL_LOCN%\Library\include;%CPATH%" | |||
| before_build: | |||
| - ps: if (-Not (Test-Path .\build)) { mkdir build } | |||
| - cd build | |||
| - set PATH=%PATH:C:\Program Files\Git\usr\bin;=% | |||
| - if [%COMPILER%]==[MinGW-gcc-5.3.0] set PATH=C:\MinGW\bin;C:\msys64\usr\bin;C:\mingw-w64\x86_64-7.2.0-posix-seh-rt_v5-rev1\mingw64\bin;%PATH% | |||
| - if [%COMPILER%]==[MinGW64-gcc-7.2.0-mingw] set PATH=C:\MinGW\bin;C:\mingw-w64\x86_64-7.2.0-posix-seh-rt_v5-rev1\mingw64\bin;%PATH% | |||
| - if [%COMPILER%]==[MinGW-gcc-6.3.0-32] set PATH=C:\msys64\usr\bin;C:\mingw-w64\i686-6.3.0-posix-dwarf-rt_v5-rev1\mingw64\bin;%PATH% | |||
| - if [%COMPILER%]==[cl] cmake -G "Visual Studio 15 2017 Win64" .. | |||
| - if [%COMPILER%]==[MinGW64-gcc-7.2.0-mingw] cmake -G "MinGW Makefiles" -DNOFORTRAN=1 .. | |||
| - if [%COMPILER%]==[MinGW-gcc-6.3.0-32] cmake -G "MSYS Makefiles" -DNOFORTRAN=1 .. | |||
| - if [%COMPILER%]==[MinGW-gcc-5.3.0] cmake -G "MSYS Makefiles" -DNOFORTRAN=1 .. | |||
| - if [%WITH_FORTRAN%]==[no] cmake -G "Ninja" -DCMAKE_CXX_COMPILER=clang-cl -DCMAKE_C_COMPILER=clang-cl -DMSVC_STATIC_CRT=ON .. | |||
| - if [%WITH_FORTRAN%]==[yes] cmake -G "Ninja" -DCMAKE_CXX_COMPILER=clang-cl -DCMAKE_C_COMPILER=clang-cl -DCMAKE_Fortran_COMPILER=flang -DBUILD_WITHOUT_LAPACK=no -DNOFORTRAN=0 .. | |||
| - if [%DYNAMIC_ARCH%]==[ON] cmake -DDYNAMIC_ARCH=ON -DDYNAMIC_LIST='CORE2;NEHALEM;SANDYBRIDGE;BULLDOZER;HASWELL' .. | |||
| build_script: | |||
| - cmake --build . | |||
| test_script: | |||
| - echo Running Test | |||
| - cd utest | |||
| - openblas_utest | |||
| @@ -49,3 +49,23 @@ jobs: | |||
| # we need a privileged docker run for sde process attachment | |||
| docker run --privileged intel_sde | |||
| displayName: 'Run AVX512 SkylakeX docker build / test' | |||
| - job: Windows_cl | |||
| pool: | |||
| vmImage: 'windows-latest' | |||
| steps: | |||
| - task: CMake@1 | |||
| inputs: | |||
| workingDirectory: 'build' # Optional | |||
| cmakeArgs: '-G "Visual Studio 16 2019" ..' | |||
| - task: CMake@1 | |||
| inputs: | |||
| cmakeArgs: '--build . --config Release' | |||
| workingDirectory: 'build' | |||
| - script: | | |||
| cd build | |||
| cd utest | |||
| dir | |||
| openblas_utest.exe | |||