kfr

Fast, modern C++ DSP framework, FFT, Sample Rate Conversion, FIR/IIR/Biquad Filters (SSE, AVX, AVX-512, ARM NEON)
Log | Files | Refs | README

commit d7a2c66dd7026fbdfd4caba528afd0bd4cbdcb33
parent a352d0189aa744bda3ab7a760b6fece799400a0a
Author: [email protected] <[email protected]>
Date:   Thu, 11 Nov 2021 06:53:37 +0000

CI: Add new compilers

Diffstat:
Mazure-pipelines.yml | 121+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------
1 file changed, 100 insertions(+), 21 deletions(-)

diff --git a/azure-pipelines.yml b/azure-pipelines.yml @@ -1,5 +1,5 @@ jobs: -- job: Windows_MSVC_x86_64_AVX512_Clang10_Release +- job: Windows_MSVC_x86_64_AVX512_Clang13_Release timeoutInMinutes: 180 pool: vmImage: 'windows-2019' @@ -18,7 +18,7 @@ jobs: set PATH=C:\sde;%PATH% ci\run.cmd build-release -DENABLE_CAPI_BUILD=ON -DARCH_TESTS=ON -DENABLE_DFT_MULTIARCH=ON -DCMAKE_CXX_COMPILER="C:/Program Files/LLVM/bin/clang-cl.exe" -DCMAKE_LINKER="C:/Program Files/LLVM/bin/lld-link.exe" -DUSE_SDE=ON -DCPU_ARCH=sse2 -DCMAKE_CXX_FLAGS=-m64 -DCMAKE_BUILD_TYPE=Release -DCMAKE_AR="C:/Program Files/LLVM/bin/llvm-lib.exe" -- job: Windows_MSVC_x86_AVX512_Clang10_Release +- job: Windows_MSVC_x86_AVX512_Clang13_Release timeoutInMinutes: 180 pool: vmImage: 'windows-2019' @@ -37,53 +37,93 @@ jobs: set PATH=C:\sde;%PATH% ci\run.cmd build-release -DENABLE_CAPI_BUILD=ON -DARCH_TESTS=ON -DENABLE_DFT_MULTIARCH=ON -DCMAKE_CXX_COMPILER="C:/Program Files/LLVM/bin/clang-cl.exe" -DCMAKE_LINKER="C:/Program Files/LLVM/bin/lld-link.exe" -DUSE_SDE=ON -DCPU_ARCH=sse2 -DCMAKE_CXX_FLAGS=-m32 -DCMAKE_BUILD_TYPE=Release -DCMAKE_AR="C:/Program Files/LLVM/bin/llvm-lib.exe" -- job: Linux_x86_64_Clang6 +- job: Linux_x86_64_Clang8 timeoutInMinutes: 180 pool: - vmImage: 'ubuntu-16.04' + vmImage: 'ubuntu-18.04' steps: - bash: | set -e - sudo apt-get update && sudo apt-get install -y ninja-build libmpfr-dev + sudo apt-get update && sudo apt-get install -y ninja-build libmpfr-dev clang-8 curl -o "$(Agent.TempDirectory)/sde.tar.bz2" -L $(SDE_URL_LINUX) mkdir "$(Agent.TempDirectory)/sde-bin" tar -C "$(Agent.TempDirectory)/sde-bin" -xjf "$(Agent.TempDirectory)/sde.tar.bz2" --strip 1 sudo ln -s $(Agent.TempDirectory)/sde-bin/sde64 /usr/bin/sde - ci/run.sh build-release -DARCH_TESTS=sse2,sse3,sse41,avx,avx2,avx512 -DCPU_ARCH=avx2 -DUSE_SDE=ON -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_BUILD_TYPE=Release - -- job: Linux_x86_64_Clang8 + ci/run.sh build-release -DENABLE_CAPI_BUILD=ON -DARCH_TESTS=sse2,sse3,sse41,avx,avx2,avx512 -DCPU_ARCH=avx2 -DUSE_SDE=ON -DCMAKE_CXX_COMPILER=clang++-8 -DCMAKE_BUILD_TYPE=Release + +- job: Linux_x86_64_Clang9 timeoutInMinutes: 180 pool: vmImage: 'ubuntu-18.04' steps: - bash: | set -e - sudo apt-get update && sudo apt-get install -y ninja-build libmpfr-dev clang-8 + sudo apt-get update && sudo apt-get install -y ninja-build libmpfr-dev clang-9 + ci/run.sh build-release -DCPU_ARCH=avx2 -DCMAKE_CXX_COMPILER=clang++-9 -DCMAKE_BUILD_TYPE=Release + +- job: Linux_x86_64_Clang10 + timeoutInMinutes: 180 + pool: + vmImage: 'ubuntu-20.04' + steps: + - bash: | + set -e + sudo apt-get update && sudo apt-get install -y ninja-build libmpfr-dev clang-10 + ci/run.sh build-release -DCPU_ARCH=avx2 -DCMAKE_CXX_COMPILER=clang++-10 -DCMAKE_BUILD_TYPE=Release + +- job: Linux_x86_64_Clang11 + timeoutInMinutes: 180 + pool: + vmImage: 'ubuntu-20.04' + steps: + - bash: | + set -e + sudo apt-get update && sudo apt-get install -y ninja-build libmpfr-dev clang-11 + ci/run.sh build-release -DCPU_ARCH=avx2 -DCMAKE_CXX_COMPILER=clang++-11 -DCMAKE_BUILD_TYPE=Release + +- job: Linux_x86_64_Clang12 + timeoutInMinutes: 180 + pool: + vmImage: 'ubuntu-20.04' + steps: + - bash: | + set -e + sudo apt-get update && sudo apt-get install -y ninja-build libmpfr-dev clang-12 curl -o "$(Agent.TempDirectory)/sde.tar.bz2" -L $(SDE_URL_LINUX) mkdir "$(Agent.TempDirectory)/sde-bin" tar -C "$(Agent.TempDirectory)/sde-bin" -xjf "$(Agent.TempDirectory)/sde.tar.bz2" --strip 1 sudo ln -s $(Agent.TempDirectory)/sde-bin/sde64 /usr/bin/sde - ci/run.sh build-release -DENABLE_CAPI_BUILD=ON -DARCH_TESTS=sse2,sse3,sse41,avx,avx2,avx512 -DCPU_ARCH=avx2 -DUSE_SDE=ON -DCMAKE_CXX_COMPILER=clang++-8 -DCMAKE_BUILD_TYPE=Release + ci/run.sh build-release -DENABLE_CAPI_BUILD=ON -DARCH_TESTS=sse2,sse3,sse41,avx,avx2,avx512 -DCPU_ARCH=avx2 -DUSE_SDE=ON -DCMAKE_CXX_COMPILER=clang++-12 -DCMAKE_BUILD_TYPE=Release + +- job: Linux_x86_64_Clang13 + timeoutInMinutes: 180 + pool: + vmImage: 'ubuntu-20.04' + steps: + - bash: | + set -e + sudo deb http://apt.llvm.org/focal/ llvm-toolchain-focal-13 main + wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add - + sudo apt-get update && sudo apt-get install -y ninja-build libmpfr-dev clang-13 + ci/run.sh build-release -DCPU_ARCH=avx2 -DCMAKE_CXX_COMPILER=clang++-13 -DCMAKE_BUILD_TYPE=Release - job: Linux_x86_64_GCC7 timeoutInMinutes: 180 pool: - vmImage: 'ubuntu-16.04' + vmImage: 'ubuntu-18.04' steps: - bash: | set -e - sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt-get update && sudo apt-get install -y ninja-build libmpfr-dev gcc-7 g++-7 ci/run.sh build-release -DCPU_ARCH=avx -DENABLE_DFT=OFF -DCMAKE_CXX_COMPILER=g++-7 -DCMAKE_BUILD_TYPE=Release - job: Linux_x86_64_GCC8 timeoutInMinutes: 180 pool: - vmImage: 'ubuntu-16.04' + vmImage: 'ubuntu-18.04' steps: - bash: | set -e - sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt-get update && sudo apt-get install -y ninja-build libmpfr-dev gcc-8 g++-8 curl -o "$(Agent.TempDirectory)/sde.tar.bz2" -L $(SDE_URL_LINUX) mkdir "$(Agent.TempDirectory)/sde-bin" @@ -94,11 +134,10 @@ jobs: - job: Linux_x86_64_GCC9 timeoutInMinutes: 180 pool: - vmImage: 'ubuntu-16.04' + vmImage: 'ubuntu-20.04' steps: - bash: | set -e - sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt-get update && sudo apt-get install -y ninja-build libmpfr-dev gcc-9 g++-9 curl -o "$(Agent.TempDirectory)/sde.tar.bz2" -L $(SDE_URL_LINUX) mkdir "$(Agent.TempDirectory)/sde-bin" @@ -106,10 +145,24 @@ jobs: sudo ln -s $(Agent.TempDirectory)/sde-bin/sde64 /usr/bin/sde ci/run.sh build-release -DARCH_TESTS=sse2,sse3,sse41,avx,avx2 -DUSE_SDE=ON -DCPU_ARCH=avx2 -DENABLE_DFT=OFF -DCMAKE_CXX_COMPILER=g++-9 -DCMAKE_BUILD_TYPE=Release +- job: Linux_x86_64_GCC10 + timeoutInMinutes: 180 + pool: + vmImage: 'ubuntu-20.04' + steps: + - bash: | + set -e + sudo apt-get update && sudo apt-get install -y ninja-build libmpfr-dev gcc-10 g++-10 + curl -o "$(Agent.TempDirectory)/sde.tar.bz2" -L $(SDE_URL_LINUX) + mkdir "$(Agent.TempDirectory)/sde-bin" + tar -C "$(Agent.TempDirectory)/sde-bin" -xjf "$(Agent.TempDirectory)/sde.tar.bz2" --strip 1 + sudo ln -s $(Agent.TempDirectory)/sde-bin/sde64 /usr/bin/sde + ci/run.sh build-release -DARCH_TESTS=sse2,sse3,sse41,avx,avx2 -DUSE_SDE=ON -DCPU_ARCH=avx2 -DENABLE_DFT=OFF -DCMAKE_CXX_COMPILER=g++-10 -DCMAKE_BUILD_TYPE=Release + - job: Linux_ARM_Clang_Release timeoutInMinutes: 180 pool: - vmImage: 'ubuntu-16.04' + vmImage: 'ubuntu-18.04' steps: - bash: | set -e @@ -119,19 +172,30 @@ jobs: - job: Linux_ARM64_Clang_Release timeoutInMinutes: 180 pool: - vmImage: 'ubuntu-16.04' + vmImage: 'ubuntu-18.04' steps: - bash: | set -e sudo apt-get update && sudo apt-get install -y ninja-build g++-aarch64-linux-gnu qemu ci/run.sh build-release -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=../cmake/aarch64.cmake -DARCH_FLAGS=-DLIBC_WORKAROUND_GETS=1 +- job: macOSBigSur_x86_64_Clang_Release + timeoutInMinutes: 180 + pool: + vmImage: 'macOS-11' + steps: + - bash: | + set -e + /bin/bash -c "sudo xcode-select -s /Applications/Xcode_13.1.app/Contents/Developer" + brew install ninja + ci/run.sh build-release -DENABLE_CAPI_BUILD=ON -DARCH_TESTS=sse2,ssse3,sse41,avx -DCPU_ARCH=detect -DENABLE_DFT_MULTIARCH=ON -DCMAKE_BUILD_TYPE=Release + - job: macOS15_x86_64_Clang_Release timeoutInMinutes: 180 strategy: matrix: xcode12: - XCODE_VER: 12 + XCODE_VER: 12.4 xcode11: XCODE_VER: 11.7 pool: @@ -223,7 +287,7 @@ jobs: call "%ANDROID_HOME%\tools\bin\sdkmanager.bat" "ndk-bundle" < %TMP%\always_yes ci\run.cmd build-release -DCMAKE_TOOLCHAIN_FILE="%ANDROID_HOME%\ndk-bundle\build\cmake\android.toolchain.cmake" -DANDROID_ABI=arm64-v8a -DANDROID_ARM_NEON=TRUE -DSKIP_TESTS=ON -DCMAKE_BUILD_TYPE=Release -- job: Windows_MinGW_x86_Clang10_Release +- job: Windows_MinGW_x86_Clang13_Release timeoutInMinutes: 180 pool: vmImage: 'vs2017-win2016' @@ -238,7 +302,7 @@ jobs: call C:\tools\msys64\msys2_shell.cmd -defterm -mingw32 -no-start -full-path -here -c "pacman -S --noconfirm mingw32/mingw-w64-i686-ninja" call C:\tools\msys64\msys2_shell.cmd -defterm -mingw32 -no-start -full-path -here -c "ci/run.sh build-release -DCMAKE_CXX_COMPILER=""C:/Program Files/LLVM/bin/clang++.exe"" -DCPU_ARCH=avx -DCMAKE_CXX_FLAGS=--target=i686-w64-windows-gnu -DCMAKE_BUILD_TYPE=Release" -- job: Windows_MinGW_x86_64_Clang10_Release +- job: Windows_MinGW_x86_64_Clang13_Release timeoutInMinutes: 180 pool: vmImage: 'vs2017-win2016' @@ -253,6 +317,21 @@ jobs: call C:\tools\msys64\msys2_shell.cmd -defterm -mingw64 -no-start -full-path -here -c "pacman -S --noconfirm mingw64/mingw-w64-x86_64-ninja" call C:\tools\msys64\msys2_shell.cmd -defterm -mingw64 -no-start -full-path -here -c "ci/run.sh build-release -DCMAKE_CXX_COMPILER=""C:/Program Files/LLVM/bin/clang++.exe"" -DCPU_ARCH=avx -DCMAKE_CXX_FLAGS=--target=x86_64-w64-windows-gnu -DCMAKE_BUILD_TYPE=Release" +- job: Windows_MSVC2022_x86_64_Release + timeoutInMinutes: 180 + pool: + vmImage: 'windows-2022' + steps: + - script: | + choco uninstall mingw + choco install ninja + + call "C:\Program Files\Microsoft Visual Studio\2022\Preview\VC\Auxiliary\Build\vcvars64.bat" + set PATH=%PATH:C:\tools\mingw64\bin;=% + set PATH=%PATH:C:\Program Files\Git\mingw64\bin;=% + set PATH=%PATH:C:\Strawberry\c\bin;=% + ci\run.cmd build-release -DARCH_TESTS=OFF -DCPU_ARCH=detect -DENABLE_DFT=OFF -DCMAKE_BUILD_TYPE=Release + - job: Windows_MSVC_x86_64_AVX512_MSVC2017_Release timeoutInMinutes: 180 pool: