|
| 1 | +# syntax=docker/dockerfile:1.7 |
1 | 2 | ARG LLVM_VERSION=21.1.0 |
2 | | -ARG LLVM_VERSION_MAJOR=21 |
3 | 3 |
|
4 | 4 | FROM docker.io/library/ubuntu:24.04 AS llvm-downloader |
5 | 5 | ARG LLVM_VERSION |
6 | | -ARG LLVM_VERSION_MAJOR |
7 | 6 |
|
8 | 7 | RUN apt-get update && \ |
9 | 8 | apt-get install -y wget xz-utils && \ |
10 | 9 | wget -O llvm.tar.xz https://github.com/llvm/llvm-project/releases/download/llvmorg-${LLVM_VERSION}/LLVM-${LLVM_VERSION}-Linux-X64.tar.xz && \ |
11 | 10 | mkdir -p /llvm-extract && \ |
12 | 11 | tar -xvJf llvm.tar.xz -C /llvm-extract \ |
13 | 12 | # Only unpack these tools to save space on Github runner. |
14 | | - LLVM-${LLVM_VERSION}-Linux-X64/bin/clang-${LLVM_VERSION_MAJOR} \ |
15 | | - LLVM-${LLVM_VERSION}-Linux-X64/lib/clang/${LLVM_VERSION_MAJOR}/include \ |
| 13 | + LLVM-${LLVM_VERSION}-Linux-X64/bin/clang-${LLVM_VERSION%%.*} \ |
| 14 | + LLVM-${LLVM_VERSION}-Linux-X64/lib/clang/${LLVM_VERSION%%.*}/include \ |
16 | 15 | LLVM-${LLVM_VERSION}-Linux-X64/bin/clang-tidy \ |
17 | 16 | LLVM-${LLVM_VERSION}-Linux-X64/bin/clang-format \ |
18 | 17 | LLVM-${LLVM_VERSION}-Linux-X64/bin/git-clang-format && \ |
@@ -54,16 +53,15 @@ RUN pip install -r requirements_formatting.txt --break-system-packages && \ |
54 | 53 |
|
55 | 54 | FROM base AS ci-container-code-lint |
56 | 55 | ARG LLVM_VERSION |
57 | | -ARG LLVM_VERSION_MAJOR |
58 | 56 |
|
59 | 57 | COPY --from=llvm-downloader /llvm-extract/LLVM-${LLVM_VERSION}-Linux-X64/bin/clang-tidy \ |
60 | | - /llvm-extract/LLVM-${LLVM_VERSION}-Linux-X64/bin/clang-${LLVM_VERSION_MAJOR} \ |
| 58 | + /llvm-extract/LLVM-${LLVM_VERSION}-Linux-X64/bin/clang-${LLVM_VERSION%%.*} \ |
61 | 59 | ${LLVM_SYSROOT}/bin/ |
62 | | -COPY --from=llvm-downloader /llvm-extract/LLVM-${LLVM_VERSION}-Linux-X64/lib/clang/${LLVM_VERSION_MAJOR}/include \ |
63 | | - ${LLVM_SYSROOT}/lib/clang/${LLVM_VERSION_MAJOR}/include |
| 60 | +COPY --from=llvm-downloader /llvm-extract/LLVM-${LLVM_VERSION}-Linux-X64/lib/clang/${LLVM_VERSION%%.*}/include \ |
| 61 | + ${LLVM_SYSROOT}/lib/clang/${LLVM_VERSION%%.*}/include |
64 | 62 | COPY clang-tools-extra/clang-tidy/tool/clang-tidy-diff.py ${LLVM_SYSROOT}/bin/clang-tidy-diff.py |
65 | 63 |
|
66 | | -RUN ln -s ${LLVM_SYSROOT}/bin/clang-${LLVM_VERSION_MAJOR} ${LLVM_SYSROOT}/bin/clang && \ |
| 64 | +RUN ln -s ${LLVM_SYSROOT}/bin/clang-${LLVM_VERSION%%.*} ${LLVM_SYSROOT}/bin/clang && \ |
67 | 65 | ln -s ${LLVM_SYSROOT}/bin/clang ${LLVM_SYSROOT}/bin/clang++ |
68 | 66 |
|
69 | 67 | ENV PATH=${LLVM_SYSROOT}/bin:${PATH} |
|
0 commit comments