ci: Use distro packaged clang-tidy headers in Fedora base image
Since commit 703f39354e
(ci: add clang-tidy development headers to
Fedora base image, 2022-08-31, v3.25.0-rc1~215^2), Fedora has added the
`clang-tools-extra-devel` package.
This commit is contained in:
parent
0383bb7ffa
commit
30e4be0d1b
@ -4,8 +4,7 @@ ARG BASE_IMAGE=fedora:37
|
|||||||
|
|
||||||
FROM ${BASE_IMAGE} AS dnf-cache
|
FROM ${BASE_IMAGE} AS dnf-cache
|
||||||
# Populate DNF cache w/ the fresh metadata and prefetch packages.
|
# Populate DNF cache w/ the fresh metadata and prefetch packages.
|
||||||
RUN --mount=type=bind,source=clang_tidy_headers_packages.lst,target=/root/clang_tidy_headers_packages.lst \
|
RUN --mount=type=bind,source=deps_packages.lst,target=/root/deps_packages.lst \
|
||||||
--mount=type=bind,source=deps_packages.lst,target=/root/deps_packages.lst \
|
|
||||||
--mount=type=bind,source=iwyu_packages.lst,target=/root/iwyu_packages.lst \
|
--mount=type=bind,source=iwyu_packages.lst,target=/root/iwyu_packages.lst \
|
||||||
--mount=type=bind,source=rvm_packages.lst,target=/root/rvm_packages.lst \
|
--mount=type=bind,source=rvm_packages.lst,target=/root/rvm_packages.lst \
|
||||||
--mount=type=tmpfs,target=/var/log \
|
--mount=type=tmpfs,target=/var/log \
|
||||||
@ -30,17 +29,6 @@ RUN --mount=type=bind,source=install_rvm.sh,target=/root/install_rvm.sh \
|
|||||||
sh /root/install_rvm.sh
|
sh /root/install_rvm.sh
|
||||||
|
|
||||||
|
|
||||||
FROM ${BASE_IMAGE} AS clang-tidy-headers
|
|
||||||
LABEL maintainer="Kyle Edwards <kyle.edwards@kitware.com>"
|
|
||||||
|
|
||||||
RUN --mount=type=bind,source=install_clang_tidy_headers.sh,target=/root/install_clang_tidy_headers.sh \
|
|
||||||
--mount=type=bind,source=clang_tidy_headers_packages.lst,target=/root/clang_tidy_headers_packages.lst \
|
|
||||||
--mount=type=cache,from=dnf-cache,source=/var/cache/dnf,target=/var/cache/dnf,sharing=private \
|
|
||||||
--mount=type=tmpfs,target=/var/log \
|
|
||||||
--mount=type=tmpfs,target=/tmp \
|
|
||||||
sh /root/install_clang_tidy_headers.sh
|
|
||||||
|
|
||||||
|
|
||||||
FROM ${BASE_IMAGE} AS iwyu-build
|
FROM ${BASE_IMAGE} AS iwyu-build
|
||||||
LABEL maintainer="Kyle Edwards <kyle.edwards@kitware.com>"
|
LABEL maintainer="Kyle Edwards <kyle.edwards@kitware.com>"
|
||||||
|
|
||||||
@ -66,8 +54,5 @@ RUN --mount=type=bind,source=install_deps.sh,target=/root/install_deps.sh \
|
|||||||
RUN --mount=type=bind,from=rvm-build,source=/root,target=/root \
|
RUN --mount=type=bind,from=rvm-build,source=/root,target=/root \
|
||||||
tar -C /usr/local -xf /root/rvm.tar
|
tar -C /usr/local -xf /root/rvm.tar
|
||||||
|
|
||||||
RUN --mount=type=bind,from=clang-tidy-headers,source=/root,target=/root \
|
|
||||||
tar -C /usr/include -xf /root/clang-tidy-headers.tar
|
|
||||||
|
|
||||||
RUN --mount=type=bind,from=iwyu-build,source=/root,target=/root \
|
RUN --mount=type=bind,from=iwyu-build,source=/root,target=/root \
|
||||||
tar -C / -xf /root/iwyu.tar
|
tar -C / -xf /root/iwyu.tar
|
||||||
|
@ -1,4 +0,0 @@
|
|||||||
dnf-command(download)
|
|
||||||
rpm-build
|
|
||||||
python3-devel
|
|
||||||
clang-tools-extra
|
|
@ -7,6 +7,7 @@ qt6-qtbase-devel
|
|||||||
# Install development tools.
|
# Install development tools.
|
||||||
clang
|
clang
|
||||||
clang-tools-extra
|
clang-tools-extra
|
||||||
|
clang-tools-extra-devel
|
||||||
compiler-rt
|
compiler-rt
|
||||||
flang
|
flang
|
||||||
flang-devel
|
flang-devel
|
||||||
|
@ -1,20 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# Packages for building the clang-tidy plugin.
|
|
||||||
# TODO: Upstream this as a proper Fedora package.
|
|
||||||
dnf install \
|
|
||||||
--setopt=install_weak_deps=False \
|
|
||||||
--setopt=fastestmirror=True \
|
|
||||||
--setopt=max_parallel_downloads=10 \
|
|
||||||
-y \
|
|
||||||
$(grep '^[^#]\+$' /root/clang_tidy_headers_packages.lst)
|
|
||||||
|
|
||||||
clang_source_rpm=$(rpm -q --queryformat '%{SOURCERPM}' clang-tools-extra)
|
|
||||||
clang_version=$(rpm -q --queryformat '%{VERSION}' clang-tools-extra)
|
|
||||||
dnf download --source -y clang
|
|
||||||
rpm -i "$clang_source_rpm"
|
|
||||||
rpmbuild -bp /root/rpmbuild/SPECS/clang.spec
|
|
||||||
cd "/root/rpmbuild/BUILD/clang-tools-extra-$clang_version.src"
|
|
||||||
find clang-tidy -name '*.h' | tar -cf /root/clang-tidy-headers.tar -T -
|
|
Loading…
Reference in New Issue
Block a user