From 51150d84742a985a6e29f56bfe60884168bba578 Mon Sep 17 00:00:00 2001 From: Alex Kremer Date: Fri, 1 Mar 2024 17:00:27 +0000 Subject: [PATCH] Add doxygen to CI docker image (#1225) For #1216 --- docker/ci/dockerfile | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/docker/ci/dockerfile b/docker/ci/dockerfile index 01a3314ac..06beb6fe9 100644 --- a/docker/ci/dockerfile +++ b/docker/ci/dockerfile @@ -2,13 +2,15 @@ FROM ubuntu:focal ARG DEBIAN_FRONTEND=noninteractive ARG TARGETARCH +SHELL ["/bin/bash", "-c"] USER root WORKDIR /root/ ENV GCC_VERSION=11 \ CCACHE_VERSION=4.8.3 \ LLVM_TOOLS_VERSION=17 \ - GH_VERSION=2.40.0 + GH_VERSION=2.40.0 \ + DOXYGEN_VERSION=1.10.0 # Add repositories RUN apt-get -qq update \ @@ -22,7 +24,7 @@ RUN apt-get -qq update \ # Install packages RUN apt update -qq \ && apt install -y --no-install-recommends --no-install-suggests cmake python3 python3-pip sudo git \ - ninja-build make pkg-config libzstd-dev libzstd1 g++-${GCC_VERSION} jq \ + ninja-build make pkg-config libzstd-dev libzstd1 g++-${GCC_VERSION} flex bison jq \ clang-format-${LLVM_TOOLS_VERSION} clang-tidy-${LLVM_TOOLS_VERSION} clang-tools-${LLVM_TOOLS_VERSION} \ && update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-${GCC_VERSION} 100 \ && update-alternatives --install /usr/bin/c++ c++ /usr/bin/g++-${GCC_VERSION} 100 \ @@ -36,14 +38,23 @@ RUN apt update -qq \ && pip3 install -q --upgrade --no-cache-dir pip \ && pip3 install -q --no-cache-dir conan==1.62 gcovr cmake-format -# Install ccache from source WORKDIR /tmp + +# Install ccache from source RUN wget "https://github.com/ccache/ccache/releases/download/v${CCACHE_VERSION}/ccache-${CCACHE_VERSION}.tar.gz" \ && tar xf "ccache-${CCACHE_VERSION}.tar.gz" \ && cd "ccache-${CCACHE_VERSION}" \ && mkdir build && cd build \ && cmake -GNinja -DCMAKE_BUILD_TYPE=Release .. \ - && ninja && cp ./ccache /usr/bin/ccache + && cmake --build . --target install + +# Install doxygen from sounce +RUN wget "https://github.com/doxygen/doxygen/releases/download/Release_${DOXYGEN_VERSION//./_}/doxygen-${DOXYGEN_VERSION}.src.tar.gz" \ + && tar xf "doxygen-${DOXYGEN_VERSION}.src.tar.gz" \ + && cd "doxygen-${DOXYGEN_VERSION}" \ + && mkdir build && cd build \ + && cmake -GNinja -DCMAKE_BUILD_TYPE=Release .. \ + && cmake --build . --target install # Install gh RUN wget https://github.com/cli/cli/releases/download/v${GH_VERSION}/gh_${GH_VERSION}_linux_${TARGETARCH}.tar.gz \