diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 49f80a1..f236293 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -19,15 +19,8 @@ jobs: - name: Install dependencies run: | - . /etc/os-release - wget -qO- https://apt.llvm.org/llvm-snapshot.gpg.key | sudo tee /etc/apt/trusted.gpg.d/apt.llvm.org.asc - echo "deb http://apt.llvm.org/${VERSION_CODENAME}/ llvm-toolchain-${VERSION_CODENAME}-21 main" | sudo tee /etc/apt/sources.list.d/llvm.list sudo apt-get update -qq - sudo apt-get install -y \ - clang-21 git nodejs pre-commit - for tool in clang clang++; do - sudo update-alternatives --install /usr/bin/${tool} ${tool} /usr/bin/${tool}-21 100 - done + sudo apt-get install -y git nodejs pre-commit - uses: actions/cache@v4 with: @@ -61,28 +54,28 @@ jobs: path: /var/cache/apt/archives key: apt-amd64-${{ hashFiles('.gitea/workflows/ci.yml') }} - - name: Install dependencies + - name: Install common dependencies + run: | + sudo apt-get update -qq + sudo apt-get install -y \ + build-essential ccache cmake gcc g++ libc6-dbg \ + ninja-build python3 valgrind zstd + sudo curl -Ls "https://dl.min.io/client/mc/release/linux-amd64/mc" \ + -o /usr/local/bin/mc && sudo chmod +x /usr/local/bin/mc + + - name: Install LLVM toolchain + if: matrix.name != 'gcc' run: | . /etc/os-release wget -qO- https://apt.llvm.org/llvm-snapshot.gpg.key | sudo tee /etc/apt/trusted.gpg.d/apt.llvm.org.asc echo "deb http://apt.llvm.org/${VERSION_CODENAME}/ llvm-toolchain-${VERSION_CODENAME}-21 main" | sudo tee /etc/apt/sources.list.d/llvm.list sudo apt-get update -qq sudo apt-get install -y \ - build-essential ccache clang-21 cmake gcc g++ \ - libc6-dbg llvm-21 lld-21 mold ninja-build python3 valgrind zstd - sudo curl -Ls "https://dl.min.io/client/mc/release/linux-amd64/mc" \ - -o /usr/local/bin/mc && sudo chmod +x /usr/local/bin/mc + clang-21 llvm-21 lld-21 mold for tool in clang clang++ llvm-ar llvm-nm llvm-ranlib llvm-objcopy llvm-cov llvm-symbolizer lld ld.lld; do sudo update-alternatives --install /usr/bin/${tool} ${tool} /usr/bin/${tool}-21 100 done - - uses: actions/cache@v4 - with: - path: .ccache - key: ccache-${{ matrix.name }}-${{ gitea.sha }} - restore-keys: | - ccache-${{ matrix.name }}- - - name: Build run: | export CCACHE_DIR="$GITHUB_WORKSPACE/.ccache"