[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 1/7] tests/docker: Use Fedora containers for MinGW cross-buil
From: |
Thomas Huth |
Subject: |
Re: [PATCH 1/7] tests/docker: Use Fedora containers for MinGW cross-builds in the gitlab-CI |
Date: |
Mon, 21 Sep 2020 20:07:42 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.6.0 |
On 21/09/2020 20.03, Daniel P. Berrangé wrote:
> On Mon, Sep 21, 2020 at 07:43:14PM +0200, Thomas Huth wrote:
>> According to our support policy, we do not support Debian 9 in QEMU
>> anymore, and we only support building the Windows binaries with a
>> very recent version of the MinGW toolchain. So we should not test
>> the MinGW cross-compilation with Debian 9 anymore, but switch to
>> something newer like Fedora. To do this, we need a separate Fedora
>> container for each build that provides the QEMU_CONFIGURE_OPTS
>> environment variable.
>> Unfortunately, the MinGW 64-bit compiler seems to be a little bit
>> slow, so we also have to disable some features like "capstone" in the
>> build here to make sure that the CI pipelines still finish within a
>> reasonable amount of time.
>>
>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>> ---
>> .gitlab-ci.d/containers.yml | 10 +++++
>> .gitlab-ci.d/crossbuilds.yml | 4 +-
>> .../dockerfiles/fedora-win32-cross.docker | 42 +++++++++++++++++++
>> .../dockerfiles/fedora-win64-cross.docker | 38 +++++++++++++++++
>> 4 files changed, 92 insertions(+), 2 deletions(-)
>> create mode 100644 tests/docker/dockerfiles/fedora-win32-cross.docker
>> create mode 100644 tests/docker/dockerfiles/fedora-win64-cross.docker
>>
>> diff --git a/.gitlab-ci.d/containers.yml b/.gitlab-ci.d/containers.yml
>> index 8c89efeb6d..15e7b564f9 100644
>> --- a/.gitlab-ci.d/containers.yml
>> +++ b/.gitlab-ci.d/containers.yml
>> @@ -248,6 +248,16 @@ i386-fedora-cross-container:
>> variables:
>> NAME: fedora-i386-cross
>>
>> +win32-fedora-cross-container:
>> + <<: *container_job_definition
>> + variables:
>> + NAME: fedora-win32-cross
>> +
>> +win64-fedora-cross-container:
>> + <<: *container_job_definition
>> + variables:
>> + NAME: fedora-win64-cross
>> +
>> amd64-ubuntu1804-container:
>> <<: *container_job_definition
>> variables:
>> diff --git a/.gitlab-ci.d/crossbuilds.yml b/.gitlab-ci.d/crossbuilds.yml
>> index 4ec7226b5c..510cfec03b 100644
>> --- a/.gitlab-ci.d/crossbuilds.yml
>> +++ b/.gitlab-ci.d/crossbuilds.yml
>> @@ -105,9 +105,9 @@ cross-s390x-user:
>> cross-win32-system:
>> <<: *cross_system_build_job_definition
>> variables:
>> - IMAGE: debian-win32-cross
>> + IMAGE: fedora-win32-cross
>>
>> cross-win64-system:
>> <<: *cross_system_build_job_definition
>> variables:
>> - IMAGE: debian-win64-cross
>> + IMAGE: fedora-win64-cross
>> diff --git a/tests/docker/dockerfiles/fedora-win32-cross.docker
>> b/tests/docker/dockerfiles/fedora-win32-cross.docker
>> new file mode 100644
>> index 0000000000..5903e1b0b4
>> --- /dev/null
>> +++ b/tests/docker/dockerfiles/fedora-win32-cross.docker
>> @@ -0,0 +1,42 @@
>> +FROM fedora:32
>> +
>> +# Please keep this list sorted alphabetically
>> +ENV PACKAGES \
>> + bc \
>> + bzip2 \
>> + diffutils \
>> + findutils \
>> + gcc \
>> + gettext \
>> + git \
>> + hostname \
>> + make \
>> + meson \
>> + mingw32-bzip2 \
>> + mingw32-curl \
>> + mingw32-glib2 \
>> + mingw32-gmp \
>> + mingw32-gnutls \
>> + mingw32-gtk3 \
>> + mingw32-libjpeg-turbo \
>> + mingw32-libpng \
>> + mingw32-libtasn1 \
>> + mingw32-nettle \
>> + mingw32-nsis \
>> + mingw32-pixman \
>> + mingw32-pkg-config \
>> + mingw32-SDL2 \
>
> It feels like we could be removing the mingw packages from the
> main fedora.docker now, so it results in smaller images.
I wasn't quite sure whether anybody uses the mingw packages in that main
fedora docker image ... Philippe, do you know?
Thomas