qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2 2/2] gitlab: enable a very minimal build with the tricore


From: Alex Bennée
Subject: Re: [PATCH v2 2/2] gitlab: enable a very minimal build with the tricore container
Date: Tue, 20 Jul 2021 10:14:05 +0100
User-agent: mu4e 1.5.14; emacs 28.0.50

Richard Henderson <richard.henderson@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é <f4bug@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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]