After adding some missing packages, it's possible to check 32-bit builds and tests with the fedora-i386-cross container in the gitlab-CI, too.
While we're at it, update it to Fedora 31. Unfortunately the gcc from the later versions emits some very dubious format-truncation warnings, so Fedora 32 and 33 are currently unsuitable for this job. I also had to remove the gnutls-devel package since linking then failed due to its dependency libtasn1 not being recognized (even if I explicitely installed it into the container). Signed-off-by: Thomas Huth <th...@redhat.com> --- Test runs can be seen here: https://gitlab.com/huth/qemu/-/jobs/877519207 and here: https://gitlab.com/huth/qemu/-/jobs/877519208 .gitlab-ci.d/crossbuilds.yml | 16 ++++++++++++++-- .../docker/dockerfiles/fedora-i386-cross.docker | 14 ++++++++++++-- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/.gitlab-ci.d/crossbuilds.yml b/.gitlab-ci.d/crossbuilds.yml index 03ebfabb3f..283c42b100 100644 --- a/.gitlab-ci.d/crossbuilds.yml +++ b/.gitlab-ci.d/crossbuilds.yml @@ -11,7 +11,7 @@ --target-list-exclude="aarch64-softmmu i386-softmmu microblaze-softmmu mips-softmmu mipsel-softmmu mips64-softmmu ppc64-softmmu sh4-softmmu xtensa-softmmu" - - make -j$(expr $(nproc) + 1) all check-build + - make -j$(expr $(nproc) + 1) all check-build $MAKE_CHECK_ARGS .cross_user_build_job_template: &cross_user_build_job_definition stage: build @@ -21,7 +21,7 @@ - cd build - PKG_CONFIG_PATH=$PKG_CONFIG_PATH ../configure --enable-werror $QEMU_CONFIGURE_OPTS --disable-system - - make -j$(expr $(nproc) + 1) all check-build + - make -j$(expr $(nproc) + 1) all check-build $MAKE_CHECK_ARGS cross-armel-system: <<: *cross_system_build_job_definition @@ -53,6 +53,18 @@ cross-arm64-user: variables: IMAGE: debian-arm64-cross +cross-i386-system: + <<: *cross_system_build_job_definition + variables: + IMAGE: fedora-i386-cross + MAKE_CHECK_ARGS: check + +cross-i386-user: + <<: *cross_user_build_job_definition + variables: + IMAGE: fedora-i386-cross + MAKE_CHECK_ARGS: check + cross-mips-system: <<: *cross_system_build_job_definition variables: diff --git a/tests/docker/dockerfiles/fedora-i386-cross.docker b/tests/docker/dockerfiles/fedora-i386-cross.docker index cd16cd1bfa..7824cc0da3 100644 --- a/tests/docker/dockerfiles/fedora-i386-cross.docker +++ b/tests/docker/dockerfiles/fedora-i386-cross.docker @@ -1,14 +1,24 @@ -FROM fedora:30 +FROM fedora:31 ENV PACKAGES \ + bzip2 \ + diffutils \ + findutils \ gcc \ + git \ + make \ + meson \ + ninja-build \ glib2-devel.i686 \ glibc-devel.i686 \ glibc-static.i686 \ - gnutls-devel.i686 \ nettle-devel.i686 \ + perl-Test-Harness \ pixman-devel.i686 \ zlib-devel.i686 \ libzstd-devel.i686 +ENV QEMU_CONFIGURE_OPTS --extra-cflags=-m32 +ENV PKG_CONFIG_PATH /usr/lib/pkgconfig + RUN dnf install -y $PACKAGES RUN rpm -q $PACKAGES | sort > /packages.txt -- 2.18.4