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
