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.

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



Reply via email to