mirror of
https://github.com/xemu-project/xemu.git
synced 2026-07-11 01:24:41 +02:00
ci: Work around broken LLVM package repository
This commit is contained in:
committed by
mborgerson
parent
5aeacacfeb
commit
9917817a8a
@@ -88,9 +88,42 @@ jobs:
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-get -qy update
|
||||
sudo apt-get install ccache libfuse2 libusb-1.0-0-dev clang-21 lld-21 llvm-21-dev
|
||||
sudo apt-get install ccache libfuse2 libusb-1.0-0-dev #clang-21 lld-21 llvm-21-dev
|
||||
pushd src
|
||||
sudo apt-get -qy build-dep .
|
||||
- name: Install LLVM 21
|
||||
shell: bash
|
||||
env:
|
||||
ARCH: ${{ matrix.arch == 'aarch64' && 'arm64' || 'amd64' }}
|
||||
POOL: https://apt.llvm.org/jammy/pool/main/l/llvm-toolchain-21/
|
||||
run: |
|
||||
set -euxo pipefail
|
||||
|
||||
# Install the newest version that actually exists in the pool.
|
||||
# We derive the exact version string from one known package filename.
|
||||
HTML="$(curl -fsSL --compressed "$POOL")"
|
||||
VER="$(grep -oE 'libllvm21_[0-9][^"]+_${{ env.ARCH }}\.deb' <<<"$HTML" | head -n1 \
|
||||
| sed -E 's/^libllvm21_//; s/_${{ env.ARCH }}\.deb$//')"
|
||||
echo "Using pool version: $VER"
|
||||
|
||||
mkdir -p /tmp/llvm21 && cd /tmp/llvm21
|
||||
|
||||
fetch() {
|
||||
local pkg="$1"
|
||||
local file="${pkg}_${VER}_${{ env.ARCH }}.deb"
|
||||
curl -fsSLO "${POOL}${file}"
|
||||
}
|
||||
|
||||
for pkg in \
|
||||
clang-21 clang-tools-21 lld-21 \
|
||||
libllvm21 libclang-cpp21 libclang-common-21-dev libclang1-21 libclang-rt-21-dev \
|
||||
llvm-21 llvm-21-dev llvm-21-linker-tools llvm-21-runtime llvm-21-tools
|
||||
do
|
||||
fetch "$pkg"
|
||||
done
|
||||
|
||||
# Install the downloaded LLVM debs. apt will resolve any non-LLVM deps from Ubuntu repos.
|
||||
sudo apt-get install -y --no-install-recommends ./*.deb
|
||||
- name: Setup ccache
|
||||
run: |
|
||||
echo "PATH=/usr/lib/ccache:$PATH" >> "$GITHUB_ENV"
|
||||
|
||||
Reference in New Issue
Block a user