1
mirror of https://github.com/jedisct1/libsodium.git synced 2024-12-24 12:36:01 -07:00
libsodium/azure-pipelines.yml
2019-08-07 19:52:44 +02:00

154 lines
5.7 KiB
YAML

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
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-5/wasi-sdk_5.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