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