From 46d302b94ce0ecad1bb805dbcf09e4919bb772e8 Mon Sep 17 00:00:00 2001 From: Helmut Buchsbaum Date: Tue, 3 May 2022 17:35:39 +0200 Subject: [PATCH] debian: Preinstall build requirements in docker helper Tracked-On: #6688 Signed-off-by: Helmut Buchsbaum --- debian/docker/Dockerfile | 14 ++++++++++++++ debian/docker/acrn-docker-build.sh | 2 ++ 2 files changed, 16 insertions(+) diff --git a/debian/docker/Dockerfile b/debian/docker/Dockerfile index 420265239..c488bca3f 100644 --- a/debian/docker/Dockerfile +++ b/debian/docker/Dockerfile @@ -209,6 +209,9 @@ RUN NEEDEDVERSION="20200925"; \ # the final image FROM ${VENDOR}:${DISTRO} +ARG VENDOR +ARG DISTRO + ENV DEBIAN_FRONTEND=noninteractive RUN apt-get -y update && \ @@ -228,6 +231,17 @@ RUN apt-get -y update && apt-get install -y --no-install-recommends \ apt-utils \ sudo +############################################################################### +# pre-install build dependencies +COPY debian-control-${VENDOR}-${DISTRO} /tmp/debian-control +RUN tmpdir=$(mktemp -d) && cd ${tmpdir} && \ + mk-build-deps --tool='apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes' --install /tmp/debian-control && \ + cd / && rm -rf ${tmpdir} + +############################################################################### +# cleanup apt cache +RUN apt-get clean && rm -rf /var/lib/apt/lists/* + ############################################################################### # Mount the topdir of the Debian git repository at /source diff --git a/debian/docker/acrn-docker-build.sh b/debian/docker/acrn-docker-build.sh index 666f8bbfd..0322bc563 100755 --- a/debian/docker/acrn-docker-build.sh +++ b/debian/docker/acrn-docker-build.sh @@ -28,11 +28,13 @@ fi set -e # create docker image for Debian package build +cp debian/control debian/docker/debian-control-${VENDOR}-${DISTRO} ${DOCKER} build \ -f debian/docker/Dockerfile \ --build-arg DISTRO=${DISTRO} \ --build-arg VENDOR=${VENDOR} \ -t acrn-pkg-builder:${DISTRO} debian/docker +rm debian/docker/debian-control-${VENDOR}-${DISTRO} # build ACRN packages ${DOCKER} run \