trigger: - stable - next pr: none jobs: - job: "wasi" pool: vmImage: "ubuntu-16.04" steps: - script: | sudo apt-get install build-essential curl cmake displayName: Install system packages - script: | curl https://sh.rustup.rs -sSf | sh -s -- -y --channel=beta source ${HOME}/.cargo/env git clone --recursive https://github.com/CraneStation/wasmtime.git (cd wasmtime && cargo install --path .) displayName: Install wasmtime - script: | curl -sL -o wasi-sdk.deb https://github.com/CraneStation/wasi-sdk/releases/download/wasi-sdk-6/wasi-sdk_6.0_amd64.deb sudo dpkg -i wasi-sdk.deb && rm -f wasi-sdk.deb sudo ln -s /opt/wasi-sdk/share/*sysroot* /opt/wasi-sysroot displayName: Install the WASI SDK - script: | env PATH=/opt/wasi-sdk/bin:${HOME}/.cargo/bin:$PATH dist-build/wasm32-wasi.sh displayName: Compile libsodium - task: PublishBuildArtifacts@1 condition: not(canceled()) inputs: pathToPublish: libsodium-wasm32-wasi artifactName: libsodium-wasm32-wasi - job: "windows" pool: vmImage: "windows-2019" steps: - powershell: | cd builds\msvc\build & .\buildbase.bat ..\vs2019\libsodium.sln 16 displayName: Compile it all - powershell: | mkdir bin\include\sodium Copy-Item "src\libsodium\include\sodium\*.h" -Destination "bin\include\sodium" -Recurse Copy-Item "src\libsodium\include\*.h" -Destination "bin\include\" displayName: Copy header files - task: PublishBuildArtifacts@1 condition: not(canceled()) inputs: pathToPublish: bin artifactName: libsodium - job: "windows_old" pool: vmImage: "vs2017-win2016" steps: - powershell: | cd builds\msvc\build & .\buildbase.bat ..\vs2017\libsodium.sln 15 displayName: Compile it all - task: PublishBuildArtifacts@1 condition: not(canceled()) inputs: pathToPublish: bin artifactName: libsodium - job: "windows_reallyold" pool: vmImage: "vs2015-win2012r2" steps: - powershell: | cd builds\msvc\build & .\buildbase.bat ..\vs2015\libsodium.sln 14 & .\buildbase.bat ..\vs2013\libsodium.sln 12 & .\buildbase.bat ..\vs2012\libsodium.sln 11 & .\buildbase.bat ..\vs2010\libsodium.sln 10 displayName: Compile it all - task: PublishBuildArtifacts@1 condition: not(canceled()) inputs: pathToPublish: bin artifactName: libsodium - job: mingw64 pool: vmImage: "windows-2019" steps: - script: | git clone https://github.com/msys2/msys2-ci-base.git %CD:~0,2%\msys64 %CD:~0,2%\msys64\usr\bin\rm -rf %CD:~0,2%\msys64\.git displayName: Install MSYS2 - script: | set PATH=%CD:~0,2%\msys64\usr\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem %CD:~0,2%\msys64\usr\bin\pacman --noconfirm -Syyuu %CD:~0,2%\msys64\usr\bin\pacman --noconfirm -Syuu displayName: Update MSYS2 - script: | set PATH=%CD:~0,2%\msys64\usr\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem %CD:~0,2%\msys64\usr\bin\pacman --noconfirm --needed -S base-devel mingw-w64-x86_64-toolchain %CD:~0,2%\msys64\usr\bin\pacman --noconfirm -Scc %CD:~0,2%\msys64\usr\bin\sed -i "s|#CacheDir.*|CacheDir=/c/Users/%USERNAME%/AppData/Local/Temp|g" /etc/pacman.conf displayName: Install Toolchain - script: | set PATH=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;%CD:~0,2%\msys64\usr\bin;%CD:~0,2%\msys64\bin set MSYS2_ROOT=%CD:~0,2%\msys64 set MSYSTEM=MINGW64 %MSYS2_ROOT%\cmd\msystem MINGW64 %CD:~0,2%\msys64\usr\bin\bash -lc dist-build/msys2-win64.sh env: CHERE_INVOKING: yes MSYS2_ARCH: x86_64 displayName: Compile libsodium - task: PublishBuildArtifacts@1 condition: not(canceled()) inputs: pathToPublish: libsodium-win64 artifactName: libsodium-win64 - job: mingw32 pool: vmImage: "windows-2019" steps: - script: | git clone https://github.com/msys2/msys2-ci-base.git %CD:~0,2%\msys64 %CD:~0,2%\msys64\usr\bin\rm -rf %CD:~0,2%\msys64\.git displayName: Install MSYS2 - script: | set PATH=%CD:~0,2%\msys64\usr\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem %CD:~0,2%\msys64\usr\bin\pacman --noconfirm -Syyuu %CD:~0,2%\msys64\usr\bin\pacman --noconfirm -Syuu displayName: Update MSYS2 - script: | set PATH=%CD:~0,2%\msys64\usr\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem %CD:~0,2%\msys64\usr\bin\pacman --noconfirm --needed -S base-devel mingw-w64-i686-toolchain %CD:~0,2%\msys64\usr\bin\pacman --noconfirm -Scc %CD:~0,2%\msys64\usr\bin\sed -i "s|#CacheDir.*|CacheDir=/c/Users/%USERNAME%/AppData/Local/Temp|g" /etc/pacman.conf displayName: Install Toolchain - script: | set PATH=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;%CD:~0,2%\msys64\usr\bin;%CD:~0,2%\msys64\bin set MSYS2_ROOT=%CD:~0,2%\msys64 set MSYSTEM=MINGW32 %MSYS2_ROOT%\cmd\msystem MINGW32 %CD:~0,2%\msys64\usr\bin\bash -lc dist-build/msys2-win32.sh env: CHERE_INVOKING: yes MSYS2_ARCH: x86_64 displayName: Compile libsodium - task: PublishBuildArtifacts@1 condition: not(canceled()) inputs: pathToPublish: libsodium-win32 artifactName: libsodium-win32