
From: Marc-André Lureau <marcandre.lureau@redhat.com> 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. 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 -- 2.51.0