qemu-devel
[Top][All Lists]
Advanced

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

Re: minimal "zero conf" build dockerfiles for fedora:latest and alpine:l


From: John Snow
Subject: Re: minimal "zero conf" build dockerfiles for fedora:latest and alpine:latest
Date: Wed, 13 Jan 2021 13:44:59 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0

On 1/13/21 3:20 AM, Paolo Bonzini wrote:
On 12/01/21 23:37, John Snow wrote:
- our configure file suggests bzip2 is an optional dependency (It's set to 'auto') but meson will error out if it is not present at configuration time:

     ../pc-bios/meson.build:5:2: ERROR: Program 'bzip2' not found

Yes, the configure option is for libbzip2, not bzip2.

Perhaps bzip2 could be required only if get_option('install_blobs') is true, I don't know.


Oh, right. Library vs tool. Good point.

Yes, we should make the tool required somewhere in the configure jungle.

FROM alpine:latest

ENV PACKAGES \
     wget \
     xz \
     python3 \
     ninja \
     gcc \
     musl-dev \
     pkgconfig \
     glib-dev \
     pixman-dev \
     make \
     bash \
     perl

ENV QEMU_CONFIGURE_OPTS --disable-linux-user

RUN apk add $PACKAGES

RUN wget https://download.qemu.org/qemu-5.2.0.tar.xz && \
     tar xvJf qemu-5.2.0.tar.xz

WORKDIR /qemu-5.2.0
RUN ./configure $QEMU_CONFIGURE_OPTS && \
     make -j9

This should be added to the CI!


Apparently someone else is working on an Alpine linux patchset, so I suppose something like this will be included there.

If not, feel free to take it:

Signed-off-by: John Snow <jsnow@redhat.com>

However, yes, I would like to include some build smoke tests for CI, which just cover "configure && make" with the absolute minimum set of dependencies possible. We could rebase our more fully fledged tests on top of them to share the common layer.

Not a priority for me, but I'm keeping these little dinky dockerfiles around to use as smoke tests against fedora:latest, alpine:latest, etc. I should likely expand to CentOS stream, debian, and so on to catch early breakages.

- diffutils is required for the qapi-schema test, which runs at build time.

This is not required by meson because technically it is not needed except for "make check".


Is that true? I was just running "make". qapi-schema test does run at build time to make sure that the schema pre-processing occurred correctly.

Perhaps we could do

-if build_docs
+if build_docs and diff.found()

in tests/qapi-schema/meson.build.

Paolo


I wasn't building docs, I don't think. (No sphinx and no --enable-docs.)

--js




reply via email to

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