Skip to content

Commit 5e3ede2

Browse files
committed
Auto merge of #129974 - cuviper:ci-llvm-19, r=Mark-Simulacrum
ci: add a runner for vanilla LLVM 19 Ubuntu 24.10 has `llvm-19` packages that we can start testing with. The `Dockerfile` is otherwise the same as the `llvm-18` runner.
2 parents 5fe0e40 + 960ec52 commit 5e3ede2

File tree

2 files changed

+67
-0
lines changed

2 files changed

+67
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
FROM ubuntu:24.10
2+
3+
ARG DEBIAN_FRONTEND=noninteractive
4+
5+
RUN apt-get update && apt-get install -y --no-install-recommends \
6+
g++ \
7+
gcc-multilib \
8+
make \
9+
ninja-build \
10+
file \
11+
curl \
12+
ca-certificates \
13+
python3 \
14+
git \
15+
cmake \
16+
sudo \
17+
gdb \
18+
llvm-19-tools \
19+
llvm-19-dev \
20+
libedit-dev \
21+
libssl-dev \
22+
pkg-config \
23+
zlib1g-dev \
24+
xz-utils \
25+
nodejs \
26+
mingw-w64 \
27+
# libgccjit dependencies
28+
flex \
29+
libmpfr-dev \
30+
libgmp-dev \
31+
libmpc3 \
32+
libmpc-dev \
33+
&& rm -rf /var/lib/apt/lists/*
34+
35+
# Install powershell (universal package) so we can test x.ps1 on Linux
36+
# FIXME: need a "universal" version that supports libicu74, but for now it still works to ignore that dep.
37+
RUN curl -sL "https://github.com/PowerShell/PowerShell/releases/download/v7.3.1/powershell_7.3.1-1.deb_amd64.deb" > powershell.deb && \
38+
dpkg --ignore-depends=libicu72 -i powershell.deb && \
39+
rm -f powershell.deb
40+
41+
COPY scripts/sccache.sh /scripts/
42+
RUN sh /scripts/sccache.sh
43+
44+
# We are disabling CI LLVM since this builder is intentionally using a host
45+
# LLVM, rather than the typical src/llvm-project LLVM.
46+
ENV NO_DOWNLOAD_CI_LLVM 1
47+
ENV EXTERNAL_LLVM 1
48+
49+
# Using llvm-link-shared due to libffi issues -- see #34486
50+
ENV RUST_CONFIGURE_ARGS \
51+
--build=x86_64-unknown-linux-gnu \
52+
--llvm-root=/usr/lib/llvm-19 \
53+
--enable-llvm-link-shared \
54+
--set rust.thin-lto-import-instr-limit=10
55+
56+
COPY host-x86_64/dist-x86_64-linux/shared.sh /scripts/
57+
COPY host-x86_64/dist-x86_64-linux/build-gccjit.sh /scripts/
58+
59+
RUN /scripts/build-gccjit.sh /scripts
60+
61+
COPY scripts/x86_64-gnu-llvm.sh /tmp/script.sh
62+
ENV SCRIPT /tmp/script.sh

src/ci/github-actions/jobs.yml

+5
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,11 @@ auto:
247247
- image: x86_64-gnu-distcheck
248248
<<: *job-linux-8c
249249

250+
- image: x86_64-gnu-llvm-19
251+
env:
252+
RUST_BACKTRACE: 1
253+
<<: *job-linux-8c
254+
250255
- image: x86_64-gnu-llvm-18
251256
env:
252257
RUST_BACKTRACE: 1

0 commit comments

Comments
 (0)