parameters: os: 'Linux' steps: - checkout: self persistCredentials: true - ${{ if eq(parameters.os, 'Serenity') }}: - script: | set -e 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: | set -e 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: | set -e brew update brew install bash ninja wabt ccache unzip qt llvm@15 displayName: 'Install Dependencies' - ${{ if eq(parameters.os, 'Android') }}: - script: | set -e 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'