serenity/Meta/Azure/Setup.yml
MacDue b0606d90f0 Meta: Automatically select best apt mirror
This is an attempt to avoid issues with the azure ubuntu apt mirror
by using apt-spy2 to select the best mirror before installing
dependencies.
2023-02-07 13:22:17 +00:00

52 lines
2.3 KiB
YAML

parameters:
os: 'Linux'
steps:
- checkout: self
persistCredentials: true
- ${{ if in(parameters.os, 'Linux', 'Serenity', 'Android') }}:
- script: |
sudo gem install apt-spy2
sudo apt-spy2 fix --commit --launchpad --country=US
displayName: 'Select best APT mirror'
- ${{ if eq(parameters.os, 'Serenity') }}:
- script: |
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
sudo add-apt-repository 'deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-15 main'
sudo apt-get update
sudo apt-get install clang-format-15 ccache e2fsprogs gcc-12 g++-12 libstdc++-12-dev libmpfr-dev libmpc-dev ninja-build qemu-utils qemu-system-i386 unzip lld
displayName: 'Install Dependencies'
- ${{ if eq(parameters.os, 'Linux') }}:
- script: |
sudo apt-get purge -y clang-12 gcc-10
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
sudo add-apt-repository 'deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-13 main'
sudo apt-get update
sudo apt-get install ccache gcc-12 g++-12 clang-13 libstdc++-12-dev ninja-build unzip qt6-base-dev qt6-tools-dev-tools libgl1-mesa-dev
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-13 100
sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-13 100
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-12 100
wget https://github.com/WebAssembly/wabt/releases/download/1.0.23/wabt-1.0.23-ubuntu.tar.gz
tar -xzf ./wabt-1.0.23-ubuntu.tar.gz
rm ./wabt-1.0.23-ubuntu.tar.gz
displayName: 'Install Dependencies'
- ${{ if eq(parameters.os, 'macOS') }}:
# macOS ships an ancient Bash 3.x by default
- script: |
brew install bash ninja wabt ccache unzip qt llvm@15
displayName: 'Install Dependencies'
- ${{ if eq(parameters.os, 'Android') }}:
- script: |
sudo apt-get install ccache gcc-12 g++-12 libstdc++-12-dev ninja-build unzip
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-12 100
displayName: 'Install Dependencies'