Hi

On Tue, Sep 30, 2025 at 1:09 PM Paolo Bonzini via Devel
<[email protected]> wrote:
>
> On 9/27/25 19:17, Alex Bennée wrote:
> > [email protected] writes:
> >
> >> From: Marc-André Lureau <[email protected]>
> >>
> >> Hi,
> >>
> >> This patch series fixes a number of issues with the build system and CI and
> >> enable Rust for many of our jobs, getting us closer to enable Rust by 
> >> default.
> >>
> >> emscripten is difficult to enable, help welcome.
> >
> > Also I think:
> >
> >    https://gitlab.com/stsquad/qemu/-/pipelines/2065603411
> >
> > And the:
> >    debian-armhf-cross
> >    debian-i686-cross
> >    debian-mipsel-cross
> >    debian-mips64el-cross
> >    debian-ppc64el-cross
> >    debian-riscv64-cross
>
> I'll test 1-21+26 and see what breaks with that subset.
>

I am currently testing with this change:

commit 757ef689a2d13a686411fb5b041412e8c73e36c0
Author: Marc-André Lureau <[email protected]>
Date:   Tue Sep 30 14:16:44 2025 +0400

    fixup! tests/docker: add ENABLE_RUST environment

diff --git a/tests/docker/common.rc b/tests/docker/common.rc
index 52f01848a3..752f4f3aed 100755
--- a/tests/docker/common.rc
+++ b/tests/docker/common.rc
@@ -21,10 +21,12 @@ else
     DEF_TARGET_LIST=${DEF_TARGET_LIST:-"x86_64-softmmu,aarch64-softmmu"}
 fi

+enable_rust=""
 if [ "$ENABLE_RUST" = "1" ]; then
   enable_rust="--enable-rust"
-else
-  enable_rust=""
+  if [ -n "$RUST_TARGET" ]; then
+    enable_rust="$enable_rust --rust-target-triple=$RUST_TARGET"
+  fi
 fi

 requires_binary()

> Paolo
>
> >
> > cross builds fail.
> >
> >>
> >> v2:
> >> - add a rust-to-clang-target-test.sh configure script
> >> - drop "RFC: configure: use the same machine as the host triple"
> >> - replace "tests: move mips to debian-legacy-test-cross" with "RFC: 
> >> build-sys: deprecate mips host"
> >> - start tackling emscripten
> >> - fix mis-placed submodule update
> >> - other minor changes, commit message tweaks, bz links
> >> - add r-b tags
> >>
> >> Marc-André Lureau (27):
> >>    build-sys: require -lrt when no shm_open() in std libs
> >>    gitlab-ci: fix 'needs' property type must be array
> >>    scripts/archive-source: speed up downloading subprojects
> >>    scripts/archive-source: silence subprojects downloads
> >>    scripts/archive-source: use a bash array
> >>    configure: fix rust meson configuration
> >>    configure: set the bindgen cross target
> >>    tests/docker/common: print errors to stderr
> >>    tests/docker: use fully qualified image name for emsdk
> >>    tests/docker/common: print meson log on configure failure
> >>    build-sys: cfi_debug and safe_stack are not compatible
> >>    lcitool: update, switch to f41
> >>    lcitool/qemu: include libclang-rt for TSAN
> >>    lcitool/alpine: workaround bindgen issue
> >>    tests/lcitool: add missing rust-std dep
> >>    tests/lcitool: update to debian13
> >>    tests/docker: add ENABLE_RUST environment
> >>    tests/lcitool: enable rust & refresh
> >>    configure: set the meson executable suffix/ext
> >>    tests/freebsd: enable Rust
> >>    meson: rust-bindgen limit allowlist-file to srcdir/include
> >>    RFC: tests/docker: add rust to debian-legacy-test-cross
> >>    WIP: gitlab-ci: enable rust for msys2-64bit
> >>    WIP: cirrus/macos: enable Rust
> >>    RFC: build-sys: deprecate mips host
> >>    build-sys: pass -fvisibility=default for wasm bindgen
> >>    WIP: enable rust for wasm/emscripten
> >>
> >>   docs/about/build-platforms.rst                |  2 -
> >>   docs/about/deprecated.rst                     |  9 +--
> >>   configure                                     | 27 +++++++-
> >>   meson.build                                   | 34 +++++++---
> >>   .gitlab-ci.d/buildtest-template.yml           |  2 +-
> >>   .gitlab-ci.d/buildtest.yml                    | 66 +++++++++----------
> >>   .gitlab-ci.d/cirrus.yml                       |  4 +-
> >>   .gitlab-ci.d/crossbuilds.yml                  | 46 ++++++-------
> >>   .gitlab-ci.d/static_checks.yml                |  6 +-
> >>   .gitlab-ci.d/windows.yml                      |  8 ++-
> >>   rust/bql/meson.build                          |  1 +
> >>   rust/chardev/meson.build                      |  1 +
> >>   rust/hw/char/pl011/meson.build                |  1 +
> >>   rust/hw/core/meson.build                      |  1 +
> >>   rust/migration/meson.build                    |  3 +-
> >>   rust/qom/meson.build                          |  1 +
> >>   rust/system/meson.build                       |  1 +
> >>   rust/util/meson.build                         |  1 +
> >>   scripts/archive-source.sh                     | 33 +++++++---
> >>   .../ci/setup/ubuntu/ubuntu-2204-aarch64.yaml  |  5 +-
> >>   .../ci/setup/ubuntu/ubuntu-2204-s390x.yaml    |  5 +-
> >>   scripts/rust-to-clang-target-test.sh          | 43 ++++++++++++
> >>   scripts/rust-to-clang-target.sh               | 62 +++++++++++++++++
> >>   tests/docker/common.rc                        | 11 +++-
> >>   tests/docker/dockerfiles/alpine.docker        |  6 +-
> >>   tests/docker/dockerfiles/centos9.docker       |  4 ++
> >>   .../dockerfiles/debian-amd64-cross.docker     | 18 +++--
> >>   .../dockerfiles/debian-arm64-cross.docker     | 18 +++--
> >>   .../dockerfiles/debian-armhf-cross.docker     | 21 +++---
> >>   .../dockerfiles/debian-i686-cross.docker      | 20 ++++--
> >>   .../debian-legacy-test-cross.docker           |  9 ++-
> >>   .../dockerfiles/debian-mips64el-cross.docker  |  9 ++-
> >>   .../dockerfiles/debian-mipsel-cross.docker    |  9 ++-
> >>   .../dockerfiles/debian-ppc64el-cross.docker   | 18 +++--
> >>   .../dockerfiles/debian-riscv64-cross.docker   | 10 ++-
> >>   .../dockerfiles/debian-s390x-cross.docker     | 18 +++--
> >>   tests/docker/dockerfiles/debian.docker        | 18 +++--
> >>   .../dockerfiles/emsdk-wasm32-cross.docker     | 29 +++++++-
> >>   .../dockerfiles/fedora-rust-nightly.docker    | 18 +++--
> >>   .../dockerfiles/fedora-win64-cross.docker     | 15 +++--
> >>   tests/docker/dockerfiles/fedora.docker        | 18 +++--
> >>   tests/docker/dockerfiles/opensuse-leap.docker |  7 +-
> >>   tests/docker/dockerfiles/ubuntu2204.docker    |  7 +-
> >>   tests/docker/test-wasm                        | 12 ++++
> >>   tests/lcitool/libvirt-ci                      |  2 +-
> >>   tests/lcitool/projects/qemu.yml               |  3 +-
> >>   tests/lcitool/refresh                         | 48 +++++++++-----
> >>   tests/vm/freebsd                              |  4 +-
> >>   48 files changed, 531 insertions(+), 183 deletions(-)
> >>   create mode 100755 scripts/rust-to-clang-target-test.sh
> >>   create mode 100644 scripts/rust-to-clang-target.sh
> >>   create mode 100755 tests/docker/test-wasm
> >
>


-- 
Marc-André Lureau

Reply via email to