Richard Henderson <richard.hender...@linaro.org> writes:
> On 7/19/21 11:48 AM, Alex Bennée wrote: >> diff --git a/tests/docker/dockerfiles/debian-tricore-cross.docker >> b/tests/docker/dockerfiles/debian-tricore-cross.docker >> index 985925134c..4ea9112289 100644 >> --- a/tests/docker/dockerfiles/debian-tricore-cross.docker >> +++ b/tests/docker/dockerfiles/debian-tricore-cross.docker >> @@ -15,9 +15,39 @@ RUN git clone --single-branch \ >> https://github.com/bkoppelmann/tricore-binutils.git \ >> /usr/src/binutils && \ >> cd /usr/src/binutils && chmod +x missing && \ >> - CFLAGS=-w ./configure --prefix=/usr --disable-nls --target=tricore && \ >> - make && make install && \ >> - rm -rf /usr/src/binutils >> + CFLAGS=-w ./configure --prefix=/usr/local --disable-nls >> --target=tricore && \ >> + make && make install >> -# This image isn't designed for building QEMU but building tests >> -ENV QEMU_CONFIGURE_OPTS --disable-system --disable-user >> +FROM debian:buster-slim >> +# Duplicate deb line as deb-src >> +RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> >> /etc/apt/sources.list >> +# Install very minimal QEMU build deps for use in CI >> +# $ lcitool variables debian-10 qemu+minimal >> +RUN apt update && \ > > Is there really an advantage here above basing this on debian-amd64? It's mostly about reducing size. The current qemu/debian10 based image takes: 794Mb and can't even build a simple qemu because of missing dev libraries. Where as the split build approach results in an image that is: 604Mb However if I build the whole thing as one I can get it down to: 580MB # # Docker TriCore cross-compiler target # # This docker target builds on the Debian Buster base image but # doesn't inherit from the common one to avoid bringing in unneeded # dependencies. # # Copyright (c) 2018 Philippe Mathieu-Daudé # # SPDX-License-Identifier: GPL-2.0-or-later # FROM docker.io/library/debian:buster-slim MAINTAINER Philippe Mathieu-Daudé <f4...@amsat.org> RUN apt update && \ DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \ DEBIAN_FRONTEND=noninteractive eatmydata apt install -yy \ bzip2 \ ca-certificates \ ccache \ g++ \ gcc \ git \ libglib2.0-dev \ libpixman-1-dev \ libtest-harness-perl \ locales \ make \ ninja-build \ perl-base \ pkgconf \ python3-pip \ python3-setuptools \ python3-wheel RUN git clone --single-branch \ https://github.com/bkoppelmann/tricore-binutils.git \ /usr/src/binutils && \ cd /usr/src/binutils && chmod +x missing && \ CFLAGS=-w ./configure --prefix=/usr/local --disable-nls --target=tricore && \ make && make install && \ rm -rf /usr/src/binutils # This image can only build a very minimal QEMU as well as the tests ENV DEF_TARGET_LIST tricore-softmmu ENV QEMU_CONFIGURE_OPTS --disable-user --disable-tools --disable-fdt > > > r~ -- Alex Bennée