* [PULL 00/23] Rust ci patches
@ 2025-09-30 15:37 marcandre.lureau
2025-09-30 15:37 ` [PULL 01/23] build-sys: require -lrt when no shm_open() in std libs marcandre.lureau
` (23 more replies)
0 siblings, 24 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
The following changes since commit 85a3fd1c4cb3ba7a9eb291c1e222f935e922d1f7:
Merge tag 'pull-aspeed-20250929' of https://github.com/legoater/qemu into staging (2025-09-29 10:52:48 -0700)
are available in the Git repository at:
https://gitlab.com/marcandre.lureau/qemu.git tags/rust-ci-pull-request
for you to fetch changes up to 582a39beea414c092dbd8c178f3eff3a718eee77:
build-sys: pass -fvisibility=default for wasm bindgen (2025-09-30 19:33:25 +0400)
----------------------------------------------------------------
CI/build-sys fixes for Rust
Collect CI/build-sys patches related to Rust.
----------------------------------------------------------------
Marc-André Lureau (23):
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
build-sys: deprecate mips host
build-sys: pass -fvisibility=default for wasm bindgen
docs/about/build-platforms.rst | 2 -
docs/about/deprecated.rst | 9 +-
configure | 23 +++-
meson.build | 34 +++--
.gitlab-ci.d/buildtest.yml | 62 +++++-----
.gitlab-ci.d/cirrus.yml | 2 +-
.gitlab-ci.d/crossbuilds.yml | 46 +++----
.gitlab-ci.d/static_checks.yml | 6 +-
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 | 34 +++--
.../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 | 60 +++++++++
tests/docker/common.rc | 13 +-
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 +--
.../dockerfiles/debian-mips64el-cross.docker | 9 +-
.../dockerfiles/debian-mipsel-cross.docker | 9 +-
.../dockerfiles/debian-ppc64el-cross.docker | 18 ++-
.../dockerfiles/debian-riscv64-cross.docker | 116 +++++++++++++++++-
.../dockerfiles/debian-s390x-cross.docker | 18 ++-
tests/docker/dockerfiles/debian.docker | 18 ++-
.../dockerfiles/emsdk-wasm32-cross.docker | 2 +-
.../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/lcitool/libvirt-ci | 2 +-
tests/lcitool/projects/qemu.yml | 3 +-
tests/lcitool/refresh | 49 +++++---
tests/vm/freebsd | 4 +-
44 files changed, 574 insertions(+), 180 deletions(-)
create mode 100755 scripts/rust-to-clang-target-test.sh
create mode 100644 scripts/rust-to-clang-target.sh
--
2.51.0
^ permalink raw reply [flat|nested] 25+ messages in thread
* [PULL 01/23] build-sys: require -lrt when no shm_open() in std libs
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 02/23] gitlab-ci: fix 'needs' property type must be array marcandre.lureau
` (22 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Fail during configure time if the shm functions are missing, as required
by oslib-posix.c. Note, we could further check the presence of the
function in librt.
This is a minor cleanup/improvement.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-ID: <20250924120426.2158655-2-marcandre.lureau@redhat.com>
---
meson.build | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/meson.build b/meson.build
index bdfb6214e6..c08e2df6bb 100644
--- a/meson.build
+++ b/meson.build
@@ -1350,7 +1350,13 @@ if get_option('spice') \
endif
spice_headers = spice.partial_dependency(compile_args: true, includes: true)
-rt = cc.find_library('rt', required: false)
+rt = not_found
+if host_os != 'windows'
+ have_shm_open = cc.has_function('shm_open')
+ if not have_shm_open
+ rt = cc.find_library('rt', required: true)
+ endif
+endif
libiscsi = not_found
if not get_option('libiscsi').auto() or have_block
@@ -3812,14 +3818,10 @@ util_ss = util_ss.apply({})
libqemuutil = static_library('qemuutil',
build_by_default: false,
sources: util_ss.sources() + stub_ss.sources() + genh,
- dependencies: [util_ss.dependencies(), libm, threads, glib, socket, malloc])
-qemuutil_deps = [event_loop_base]
-if host_os != 'windows'
- qemuutil_deps += [rt]
-endif
+ dependencies: [util_ss.dependencies(), libm, threads, glib, socket, malloc, rt])
qemuutil = declare_dependency(link_with: libqemuutil,
sources: genh + version_res,
- dependencies: qemuutil_deps)
+ dependencies: [event_loop_base])
if have_system or have_user
decodetree = generator(find_program('scripts/decodetree.py'),
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 02/23] gitlab-ci: fix 'needs' property type must be array
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
2025-09-30 15:37 ` [PULL 01/23] build-sys: require -lrt when no shm_open() in std libs marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 03/23] scripts/archive-source: speed up downloading subprojects marcandre.lureau
` (21 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
The gitlab "Pipeline editor" has some warnings, and gitlab-ci-local
fails.
Read also from the docs
https://docs.gitlab.com/ci/yaml/#needs
"Supported values:
An array of jobs (maximum of 50 jobs).
An empty array ([]), to set the job to start as soon as the pipeline
is created."
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <20250924120426.2158655-3-marcandre.lureau@redhat.com>
---
.gitlab-ci.d/buildtest.yml | 56 +++++++++++++++++-----------------
.gitlab-ci.d/crossbuilds.yml | 46 ++++++++++++++--------------
.gitlab-ci.d/static_checks.yml | 6 ++--
3 files changed, 54 insertions(+), 54 deletions(-)
diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml
index e296fc3c14..3be36e5499 100644
--- a/.gitlab-ci.d/buildtest.yml
+++ b/.gitlab-ci.d/buildtest.yml
@@ -36,7 +36,7 @@ build-system-ubuntu:
- .native_build_job_template
- .native_build_artifact_template
needs:
- job: amd64-ubuntu2204-container
+ - job: amd64-ubuntu2204-container
variables:
IMAGE: ubuntu2204
CONFIGURE_ARGS: --enable-docs
@@ -66,7 +66,7 @@ build-system-debian:
- .native_build_job_template
- .native_build_artifact_template
needs:
- job: amd64-debian-container
+ - job: amd64-debian-container
variables:
IMAGE: debian
CONFIGURE_ARGS: --with-coroutine=sigaltstack --enable-rust
@@ -109,7 +109,7 @@ build-system-fedora:
- .native_build_job_template
- .native_build_artifact_template
needs:
- job: amd64-fedora-container
+ - job: amd64-fedora-container
variables:
IMAGE: fedora
CONFIGURE_ARGS: --disable-gcrypt --enable-nettle --enable-docs --enable-crypto-afalg --enable-rust
@@ -122,7 +122,7 @@ build-system-fedora-rust-nightly:
- .native_build_job_template
- .native_build_artifact_template
needs:
- job: amd64-fedora-rust-nightly-container
+ - job: amd64-fedora-rust-nightly-container
variables:
IMAGE: fedora-rust-nightly
CONFIGURE_ARGS: --disable-docs --enable-rust --enable-strict-rust-lints
@@ -167,7 +167,7 @@ build-system-centos:
- .native_build_job_template
- .native_build_artifact_template
needs:
- job: amd64-centos9-container
+ - job: amd64-centos9-container
variables:
IMAGE: centos9
CONFIGURE_ARGS: --disable-nettle --enable-gcrypt --enable-vfio-user-server
@@ -189,7 +189,7 @@ build-previous-qemu:
- build-previous/tests/qtest/migration-test
- build-previous/scripts
needs:
- job: amd64-opensuse-leap-container
+ - job: amd64-opensuse-leap-container
variables:
IMAGE: opensuse-leap
TARGETS: x86_64-softmmu aarch64-softmmu
@@ -274,7 +274,7 @@ build-system-opensuse:
- .native_build_job_template
- .native_build_artifact_template
needs:
- job: amd64-opensuse-leap-container
+ - job: amd64-opensuse-leap-container
variables:
IMAGE: opensuse-leap
TARGETS: s390x-softmmu x86_64-softmmu aarch64-softmmu
@@ -308,7 +308,7 @@ build-system-flaky:
- .native_build_job_template
- .native_build_artifact_template
needs:
- job: amd64-debian-container
+ - job: amd64-debian-container
variables:
IMAGE: debian
QEMU_JOB_OPTIONAL: 1
@@ -338,7 +338,7 @@ functional-system-flaky:
build-tcg-disabled:
extends: .native_build_job_template
needs:
- job: amd64-centos9-container
+ - job: amd64-centos9-container
variables:
IMAGE: centos9
script:
@@ -364,7 +364,7 @@ build-tcg-disabled:
build-user:
extends: .native_build_job_template
needs:
- job: amd64-debian-user-cross-container
+ - job: amd64-debian-user-cross-container
variables:
IMAGE: debian-all-test-cross
CONFIGURE_ARGS: --disable-tools --disable-system
@@ -374,7 +374,7 @@ build-user:
build-user-static:
extends: .native_build_job_template
needs:
- job: amd64-debian-user-cross-container
+ - job: amd64-debian-user-cross-container
variables:
IMAGE: debian-all-test-cross
CONFIGURE_ARGS: --disable-tools --disable-system --static
@@ -385,7 +385,7 @@ build-user-static:
build-legacy:
extends: .native_build_job_template
needs:
- job: amd64-debian-legacy-cross-container
+ - job: amd64-debian-legacy-cross-container
variables:
IMAGE: debian-legacy-test-cross
TARGETS: alpha-linux-user alpha-softmmu sh4-linux-user
@@ -395,7 +395,7 @@ build-legacy:
build-user-hexagon:
extends: .native_build_job_template
needs:
- job: hexagon-cross-container
+ - job: hexagon-cross-container
variables:
IMAGE: debian-hexagon-cross
TARGETS: hexagon-linux-user
@@ -408,7 +408,7 @@ build-user-hexagon:
build-some-softmmu:
extends: .native_build_job_template
needs:
- job: amd64-debian-user-cross-container
+ - job: amd64-debian-user-cross-container
variables:
IMAGE: debian-all-test-cross
CONFIGURE_ARGS: --disable-tools --enable-debug
@@ -419,7 +419,7 @@ build-some-softmmu:
build-loongarch64:
extends: .native_build_job_template
needs:
- job: loongarch-debian-cross-container
+ - job: loongarch-debian-cross-container
variables:
IMAGE: debian-loongarch-cross
CONFIGURE_ARGS: --disable-tools --enable-debug
@@ -430,7 +430,7 @@ build-loongarch64:
build-tricore-softmmu:
extends: .native_build_job_template
needs:
- job: tricore-debian-cross-container
+ - job: tricore-debian-cross-container
variables:
IMAGE: debian-tricore-cross
CONFIGURE_ARGS: --disable-tools --disable-fdt --enable-debug
@@ -440,7 +440,7 @@ build-tricore-softmmu:
clang-system:
extends: .native_build_job_template
needs:
- job: amd64-fedora-container
+ - job: amd64-fedora-container
variables:
IMAGE: fedora
CONFIGURE_ARGS: --cc=clang --cxx=clang++ --enable-ubsan
@@ -451,7 +451,7 @@ clang-system:
clang-user:
extends: .native_build_job_template
needs:
- job: amd64-debian-user-cross-container
+ - job: amd64-debian-user-cross-container
timeout: 70m
variables:
IMAGE: debian-all-test-cross
@@ -582,7 +582,7 @@ functional-cfi-x86_64:
tsan-build:
extends: .native_build_job_template
needs:
- job: amd64-ubuntu2204-container
+ - job: amd64-ubuntu2204-container
variables:
IMAGE: ubuntu2204
CONFIGURE_ARGS: --enable-tsan --cc=clang --cxx=clang++
@@ -596,7 +596,7 @@ tsan-build:
gcov:
extends: .native_build_job_template
needs:
- job: amd64-ubuntu2204-container
+ - job: amd64-ubuntu2204-container
timeout: 80m
variables:
IMAGE: ubuntu2204
@@ -623,7 +623,7 @@ gcov:
build-oss-fuzz:
extends: .native_build_job_template
needs:
- job: amd64-fedora-container
+ - job: amd64-fedora-container
variables:
IMAGE: fedora
script:
@@ -645,7 +645,7 @@ build-oss-fuzz:
build-tci:
extends: .native_build_job_template
needs:
- job: amd64-debian-user-cross-container
+ - job: amd64-debian-user-cross-container
variables:
IMAGE: debian-all-test-cross
script:
@@ -670,7 +670,7 @@ build-tci:
build-without-defaults:
extends: .native_build_job_template
needs:
- job: amd64-centos9-container
+ - job: amd64-centos9-container
variables:
IMAGE: centos9
CONFIGURE_ARGS:
@@ -688,7 +688,7 @@ build-libvhost-user:
stage: build
image: $CI_REGISTRY_IMAGE/qemu/fedora:$QEMU_CI_CONTAINER_TAG
needs:
- job: amd64-fedora-container
+ - job: amd64-fedora-container
script:
- mkdir subprojects/libvhost-user/build
- cd subprojects/libvhost-user/build
@@ -702,9 +702,9 @@ build-tools-and-docs-debian:
- .native_build_job_template
- .native_build_artifact_template
needs:
- job: amd64-debian-container
- # when running on 'master' we use pre-existing container
- optional: true
+ - job: amd64-debian-container
+ # when running on 'master' we use pre-existing container
+ optional: true
variables:
IMAGE: debian
MAKE_CHECK_ARGS: check-unit ctags TAGS cscope
@@ -791,7 +791,7 @@ build-wasm:
extends: .wasm_build_job_template
timeout: 2h
needs:
- job: wasm-emsdk-cross-container
+ - job: wasm-emsdk-cross-container
variables:
IMAGE: emsdk-wasm32-cross
CONFIGURE_ARGS: --static --disable-tools --enable-debug --enable-tcg-interpreter
diff --git a/.gitlab-ci.d/crossbuilds.yml b/.gitlab-ci.d/crossbuilds.yml
index 3f76c901ba..8ff0c27f74 100644
--- a/.gitlab-ci.d/crossbuilds.yml
+++ b/.gitlab-ci.d/crossbuilds.yml
@@ -4,28 +4,28 @@ include:
cross-armhf-user:
extends: .cross_user_build_job
needs:
- job: armhf-debian-cross-container
+ - job: armhf-debian-cross-container
variables:
IMAGE: debian-armhf-cross
cross-arm64-system:
extends: .cross_system_build_job
needs:
- job: arm64-debian-cross-container
+ - job: arm64-debian-cross-container
variables:
IMAGE: debian-arm64-cross
cross-arm64-user:
extends: .cross_user_build_job
needs:
- job: arm64-debian-cross-container
+ - job: arm64-debian-cross-container
variables:
IMAGE: debian-arm64-cross
cross-arm64-kvm-only:
extends: .cross_accel_build_job
needs:
- job: arm64-debian-cross-container
+ - job: arm64-debian-cross-container
variables:
IMAGE: debian-arm64-cross
EXTRA_CONFIGURE_OPTS: --disable-tcg --without-default-features
@@ -35,7 +35,7 @@ cross-i686-system:
- .cross_system_build_job
- .cross_test_artifacts
needs:
- job: i686-debian-cross-container
+ - job: i686-debian-cross-container
variables:
IMAGE: debian-i686-cross
EXTRA_CONFIGURE_OPTS: --disable-kvm
@@ -46,7 +46,7 @@ cross-i686-user:
- .cross_user_build_job
- .cross_test_artifacts
needs:
- job: i686-debian-cross-container
+ - job: i686-debian-cross-container
variables:
IMAGE: debian-i686-cross
MAKE_CHECK_ARGS: check
@@ -57,7 +57,7 @@ cross-i686-tci:
- .cross_test_artifacts
timeout: 60m
needs:
- job: i686-debian-cross-container
+ - job: i686-debian-cross-container
variables:
IMAGE: debian-i686-cross
ACCEL: tcg-interpreter
@@ -71,49 +71,49 @@ cross-i686-tci:
cross-mipsel-system:
extends: .cross_system_build_job
needs:
- job: mipsel-debian-cross-container
+ - job: mipsel-debian-cross-container
variables:
IMAGE: debian-mipsel-cross
cross-mipsel-user:
extends: .cross_user_build_job
needs:
- job: mipsel-debian-cross-container
+ - job: mipsel-debian-cross-container
variables:
IMAGE: debian-mipsel-cross
cross-mips64el-system:
extends: .cross_system_build_job
needs:
- job: mips64el-debian-cross-container
+ - job: mips64el-debian-cross-container
variables:
IMAGE: debian-mips64el-cross
cross-mips64el-user:
extends: .cross_user_build_job
needs:
- job: mips64el-debian-cross-container
+ - job: mips64el-debian-cross-container
variables:
IMAGE: debian-mips64el-cross
cross-ppc64el-system:
extends: .cross_system_build_job
needs:
- job: ppc64el-debian-cross-container
+ - job: ppc64el-debian-cross-container
variables:
IMAGE: debian-ppc64el-cross
cross-ppc64el-user:
extends: .cross_user_build_job
needs:
- job: ppc64el-debian-cross-container
+ - job: ppc64el-debian-cross-container
variables:
IMAGE: debian-ppc64el-cross
cross-ppc64el-kvm-only:
extends: .cross_accel_build_job
needs:
- job: ppc64el-debian-cross-container
+ - job: ppc64el-debian-cross-container
variables:
IMAGE: debian-ppc64el-cross
EXTRA_CONFIGURE_OPTS: --disable-tcg --without-default-devices
@@ -121,35 +121,35 @@ cross-ppc64el-kvm-only:
cross-riscv64-system:
extends: .cross_system_build_job
needs:
- job: riscv64-debian-cross-container
+ - job: riscv64-debian-cross-container
variables:
IMAGE: debian-riscv64-cross
cross-riscv64-user:
extends: .cross_user_build_job
needs:
- job: riscv64-debian-cross-container
+ - job: riscv64-debian-cross-container
variables:
IMAGE: debian-riscv64-cross
cross-s390x-system:
extends: .cross_system_build_job
needs:
- job: s390x-debian-cross-container
+ - job: s390x-debian-cross-container
variables:
IMAGE: debian-s390x-cross
cross-s390x-user:
extends: .cross_user_build_job
needs:
- job: s390x-debian-cross-container
+ - job: s390x-debian-cross-container
variables:
IMAGE: debian-s390x-cross
cross-s390x-kvm-only:
extends: .cross_accel_build_job
needs:
- job: s390x-debian-cross-container
+ - job: s390x-debian-cross-container
variables:
IMAGE: debian-s390x-cross
EXTRA_CONFIGURE_OPTS: --disable-tcg --enable-trace-backends=ftrace
@@ -157,7 +157,7 @@ cross-s390x-kvm-only:
cross-mips64el-kvm-only:
extends: .cross_accel_build_job
needs:
- job: mips64el-debian-cross-container
+ - job: mips64el-debian-cross-container
variables:
IMAGE: debian-mips64el-cross
EXTRA_CONFIGURE_OPTS: --disable-tcg --target-list=mips64el-softmmu
@@ -165,7 +165,7 @@ cross-mips64el-kvm-only:
cross-win64-system:
extends: .cross_system_build_job
needs:
- job: win64-fedora-cross-container
+ - job: win64-fedora-cross-container
variables:
IMAGE: fedora-win64-cross
EXTRA_CONFIGURE_OPTS: --enable-fdt=internal --disable-plugins
@@ -181,7 +181,7 @@ cross-win64-system:
cross-amd64-xen-only:
extends: .cross_accel_build_job
needs:
- job: amd64-debian-cross-container
+ - job: amd64-debian-cross-container
variables:
IMAGE: debian-amd64-cross
ACCEL: xen
@@ -190,7 +190,7 @@ cross-amd64-xen-only:
cross-arm64-xen-only:
extends: .cross_accel_build_job
needs:
- job: arm64-debian-cross-container
+ - job: arm64-debian-cross-container
variables:
IMAGE: debian-arm64-cross
ACCEL: xen
diff --git a/.gitlab-ci.d/static_checks.yml b/.gitlab-ci.d/static_checks.yml
index c3ed6de453..61fe2fa39a 100644
--- a/.gitlab-ci.d/static_checks.yml
+++ b/.gitlab-ci.d/static_checks.yml
@@ -32,7 +32,7 @@ check-python-minreqs:
variables:
GIT_DEPTH: 1
needs:
- job: python-container
+ - job: python-container
check-python-tox:
extends: .base_job_template
@@ -45,7 +45,7 @@ check-python-tox:
QEMU_TOX_EXTRA_ARGS: --skip-missing-interpreters=false
QEMU_JOB_OPTIONAL: 1
needs:
- job: python-container
+ - job: python-container
check-rust-tools-nightly:
extends: .base_job_template
@@ -76,7 +76,7 @@ check-build-units:
stage: build
image: $CI_REGISTRY_IMAGE/qemu/debian:$QEMU_CI_CONTAINER_TAG
needs:
- job: amd64-debian-container
+ - job: amd64-debian-container
before_script:
- source scripts/ci/gitlab-ci-section
- section_start setup "Install Tools"
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 03/23] scripts/archive-source: speed up downloading subprojects
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
2025-09-30 15:37 ` [PULL 01/23] build-sys: require -lrt when no shm_open() in std libs marcandre.lureau
2025-09-30 15:37 ` [PULL 02/23] gitlab-ci: fix 'needs' property type must be array marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 04/23] scripts/archive-source: silence subprojects downloads marcandre.lureau
` (20 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Running meson on each subproject is quite slow.
According to Paolo, meson will run download tasks in parallel.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-ID: <20250924120426.2158655-4-marcandre.lureau@redhat.com>
---
scripts/archive-source.sh | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/scripts/archive-source.sh b/scripts/archive-source.sh
index 476a996a70..34ea86b6d3 100755
--- a/scripts/archive-source.sh
+++ b/scripts/archive-source.sh
@@ -77,9 +77,10 @@ function subproject_dir() {
git archive --format tar "$(tree_ish)" > "$tar_file"
test $? -ne 0 && error "failed to archive qemu"
+meson subprojects download $subprojects
+test $? -ne 0 && error "failed to download subprojects $subprojects"
+
for sp in $subprojects; do
- meson subprojects download $sp
- test $? -ne 0 && error "failed to download subproject $sp"
tar --append --file "$tar_file" --exclude=.git subprojects/"$(subproject_dir $sp)"
test $? -ne 0 && error "failed to append subproject $sp to $tar_file"
done
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 04/23] scripts/archive-source: silence subprojects downloads
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (2 preceding siblings ...)
2025-09-30 15:37 ` [PULL 03/23] scripts/archive-source: speed up downloading subprojects marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 05/23] scripts/archive-source: use a bash array marcandre.lureau
` (19 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
It's too verbose.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-ID: <20250924120426.2158655-5-marcandre.lureau@redhat.com>
---
scripts/archive-source.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scripts/archive-source.sh b/scripts/archive-source.sh
index 34ea86b6d3..b86e632161 100755
--- a/scripts/archive-source.sh
+++ b/scripts/archive-source.sh
@@ -77,7 +77,7 @@ function subproject_dir() {
git archive --format tar "$(tree_ish)" > "$tar_file"
test $? -ne 0 && error "failed to archive qemu"
-meson subprojects download $subprojects
+meson subprojects download $subprojects >/dev/null
test $? -ne 0 && error "failed to download subprojects $subprojects"
for sp in $subprojects; do
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 05/23] scripts/archive-source: use a bash array
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (3 preceding siblings ...)
2025-09-30 15:37 ` [PULL 04/23] scripts/archive-source: silence subprojects downloads marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 06/23] configure: fix rust meson configuration marcandre.lureau
` (18 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-ID: <20250924120426.2158655-6-marcandre.lureau@redhat.com>
---
scripts/archive-source.sh | 31 +++++++++++++++++++++++--------
1 file changed, 23 insertions(+), 8 deletions(-)
diff --git a/scripts/archive-source.sh b/scripts/archive-source.sh
index b86e632161..a725dd923d 100755
--- a/scripts/archive-source.sh
+++ b/scripts/archive-source.sh
@@ -26,12 +26,27 @@ sub_file="${sub_tdir}/submodule.tar"
# independent of what the developer currently has initialized
# in their checkout, because the build environment is completely
# different to the host OS.
-subprojects="keycodemapdb libvfio-user berkeley-softfloat-3
- berkeley-testfloat-3 anyhow-1-rs arbitrary-int-1-rs attrs-0.2-rs bilge-0.2-rs
- bilge-impl-0.2-rs either-1-rs foreign-0.3-rs itertools-0.11-rs
- libc-0.2-rs proc-macro2-1-rs
- proc-macro-error-1-rs proc-macro-error-attr-1-rs quote-1-rs
- syn-2-rs unicode-ident-1-rs"
+subprojects=(
+ anyhow-1-rs
+ arbitrary-int-1-rs
+ attrs-0.2-rs
+ berkeley-softfloat-3
+ berkeley-testfloat-3
+ bilge-0.2-rs
+ bilge-impl-0.2-rs
+ either-1-rs
+ foreign-0.3-rs
+ itertools-0.11-rs
+ keycodemapdb
+ libc-0.2-rs
+ libvfio-user
+ proc-macro-error-1-rs
+ proc-macro-error-attr-1-rs
+ proc-macro2-1-rs
+ quote-1-rs
+ syn-2-rs
+ unicode-ident-1-rs
+)
sub_deinit=""
function cleanup() {
@@ -77,10 +92,10 @@ function subproject_dir() {
git archive --format tar "$(tree_ish)" > "$tar_file"
test $? -ne 0 && error "failed to archive qemu"
-meson subprojects download $subprojects >/dev/null
+meson subprojects download ${subprojects[@]} >/dev/null
test $? -ne 0 && error "failed to download subprojects $subprojects"
-for sp in $subprojects; do
+for sp in "${subprojects[@]}"; do
tar --append --file "$tar_file" --exclude=.git subprojects/"$(subproject_dir $sp)"
test $? -ne 0 && error "failed to append subproject $sp to $tar_file"
done
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 06/23] configure: fix rust meson configuration
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (4 preceding siblings ...)
2025-09-30 15:37 ` [PULL 05/23] scripts/archive-source: use a bash array marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 07/23] configure: set the bindgen cross target marcandre.lureau
` (17 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
It was incorrectly set on the [host_machine] and caused error:
File "/tmp/qemu-test/build/pyvenv/lib/python3.11/site-packages/mesonbuild/envconfig.py", line 281, in from_literal
assert all(isinstance(v, str) for v in raw.values()), 'for mypy'
AssertionError: for mypy
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <20250924120426.2158655-7-marcandre.lureau@redhat.com>
---
configure | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure b/configure
index 0f7eb95586..66613f3f4c 100755
--- a/configure
+++ b/configure
@@ -1958,7 +1958,7 @@ if test "$skip_meson" = no; then
echo "[binaries]" >> $native
echo "c = [$(meson_quote $host_cc)]" >> $native
if test "$rust" != disabled; then
- echo "rust = [$(meson_quote $rustc)]" >> $cross
+ echo "rust = [$(meson_quote $rustc)]" >> $native
fi
mv $native config-meson.native
meson_option_add --native-file
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 07/23] configure: set the bindgen cross target
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (5 preceding siblings ...)
2025-09-30 15:37 ` [PULL 06/23] configure: fix rust meson configuration marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 08/23] tests/docker/common: print errors to stderr marcandre.lureau
` (16 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Implement a bash version of rust-bindgen rust_to_clang_target() to
convert from rust target to clang target.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Message-ID: <20250924120426.2158655-8-marcandre.lureau@redhat.com>
---
configure | 7 ++++
scripts/rust-to-clang-target-test.sh | 43 ++++++++++++++++++++
scripts/rust-to-clang-target.sh | 60 ++++++++++++++++++++++++++++
tests/lcitool/libvirt-ci | 2 +-
4 files changed, 111 insertions(+), 1 deletion(-)
create mode 100755 scripts/rust-to-clang-target-test.sh
create mode 100644 scripts/rust-to-clang-target.sh
diff --git a/configure b/configure
index 66613f3f4c..bf964947b8 100755
--- a/configure
+++ b/configure
@@ -1878,6 +1878,13 @@ if test "$skip_meson" = no; then
eval "c=\$devices_${a}"
echo "${a}-softmmu = '$c'" >> $cross
done
+ if test "$rust" != disabled; then
+ if test "$cross_compile" = "yes"; then
+ . "$source_path/scripts/rust-to-clang-target.sh"
+ clang_target=$(rust_to_clang_target "$rust_target_triple")
+ echo "bindgen_clang_arguments = [$(meson_quote --target="$clang_target")]" >> $cross
+ fi
+ fi
echo "[built-in options]" >> $cross
echo "c_args = [$(meson_quote $CFLAGS $EXTRA_CFLAGS)]" >> $cross
diff --git a/scripts/rust-to-clang-target-test.sh b/scripts/rust-to-clang-target-test.sh
new file mode 100755
index 0000000000..ff6f8fcdc5
--- /dev/null
+++ b/scripts/rust-to-clang-target-test.sh
@@ -0,0 +1,43 @@
+#!/usr/bin/env sh
+#
+# Copyright (C) 2025 Red Hat, Inc.
+#
+# Based on rust_to_clang_target() tests from rust-bindgen.
+#
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+scripts_dir=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)
+. "$scripts_dir/rust-to-clang-target.sh"
+
+test_case() {
+ input="$1"
+ expected="$2"
+ result=$(rust_to_clang_target "$input")
+
+ if [ "$result" = "$expected" ]; then
+ echo " OK: '$input' -> '$result'"
+ else
+ echo " FAILED: '$input'"
+ echo " Expected: '$expected'"
+ echo " Got: '$result'"
+ exit 1
+ fi
+}
+
+echo "Running tests..."
+
+test_case "aarch64-apple-ios" "arm64-apple-ios"
+test_case "riscv64gc-unknown-linux-gnu" "riscv64-unknown-linux-gnu"
+test_case "riscv64imac-unknown-none-elf" "riscv64-unknown-none-elf"
+test_case "riscv32imc-unknown-none-elf" "riscv32-unknown-none-elf"
+test_case "riscv32imac-unknown-none-elf" "riscv32-unknown-none-elf"
+test_case "riscv32imafc-unknown-none-elf" "riscv32-unknown-none-elf"
+test_case "riscv32i-unknown-none-elf" "riscv32-unknown-none-elf"
+test_case "riscv32imc-esp-espidf" "riscv32-esp-elf"
+test_case "xtensa-esp32-espidf" "xtensa-esp32-elf"
+test_case "aarch64-apple-ios-sim" "arm64-apple-ios-simulator"
+test_case "aarch64-apple-tvos-sim" "arm64-apple-tvos-simulator"
+test_case "aarch64-apple-watchos-sim" "arm64-apple-watchos-simulator"
+
+echo ""
+echo "All tests passed!"
diff --git a/scripts/rust-to-clang-target.sh b/scripts/rust-to-clang-target.sh
new file mode 100644
index 0000000000..72db7e1300
--- /dev/null
+++ b/scripts/rust-to-clang-target.sh
@@ -0,0 +1,60 @@
+# Copyright (C) 2025 Red Hat, Inc.
+#
+# Based on rust_to_clang_target() from rust-bindgen.
+#
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+rust_to_clang_target() {
+ rust_target="$1"
+
+ # Split the string by hyphens
+ triple_parts=""
+ old_IFS="$IFS"
+ IFS='-'
+ for part in $rust_target; do
+ triple_parts="$triple_parts $part"
+ done
+ IFS="$old_IFS"
+ set -- $triple_parts
+
+ # RISC-V
+ case "$1" in
+ riscv32*)
+ set -- "riscv32" "${2}" "${3}" "${4}"
+ ;;
+ riscv64*)
+ set -- "riscv64" "${2}" "${3}" "${4}"
+ ;;
+ esac
+
+ # Apple
+ if [ "$2" = "apple" ]; then
+ if [ "$1" = "aarch64" ]; then
+ set -- "arm64" "${2}" "${3}" "${4}"
+ fi
+ if [ "$4" = "sim" ]; then
+ set -- "${1}" "${2}" "${3}" "simulator"
+ fi
+ fi
+
+ # ESP-IDF
+ if [ "$3" = "espidf" ]; then
+ set -- "${1}" "${2}" "elf" "${4}"
+ fi
+
+ # Reassemble the string
+ new_triple=""
+ first=1
+ for part in "$@"; do
+ if [ -n "$part" ]; then
+ if [ "$first" -eq 1 ]; then
+ new_triple="$part"
+ first=0
+ else
+ new_triple="$new_triple-$part"
+ fi
+ fi
+ done
+
+ echo "$new_triple"
+}
diff --git a/tests/lcitool/libvirt-ci b/tests/lcitool/libvirt-ci
index 18c4bfe02c..9da20ff7c3 160000
--- a/tests/lcitool/libvirt-ci
+++ b/tests/lcitool/libvirt-ci
@@ -1 +1 @@
-Subproject commit 18c4bfe02c467e5639bf9a687139735ccd7a3fff
+Subproject commit 9da20ff7c3bc9067804a7561c2ff87583b434853
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 08/23] tests/docker/common: print errors to stderr
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (6 preceding siblings ...)
2025-09-30 15:37 ` [PULL 07/23] configure: set the bindgen cross target marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 09/23] tests/docker: use fully qualified image name for emsdk marcandre.lureau
` (15 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <20250924120426.2158655-9-marcandre.lureau@redhat.com>
---
tests/docker/common.rc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tests/docker/common.rc b/tests/docker/common.rc
index a611e6adf9..2ed2365a61 100755
--- a/tests/docker/common.rc
+++ b/tests/docker/common.rc
@@ -50,7 +50,7 @@ configure_qemu()
echo "Configure options:"
echo $config_opts
$QEMU_SRC/configure $config_opts || \
- { cat config.log && test_fail "Failed to run 'configure'"; }
+ { cat config.log >&2 && test_fail "Failed to run 'configure'"; }
}
build_qemu()
@@ -73,7 +73,7 @@ check_qemu()
test_fail()
{
- echo "$@"
+ echo "$@" >&2
exit 1
}
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 09/23] tests/docker: use fully qualified image name for emsdk
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (7 preceding siblings ...)
2025-09-30 15:37 ` [PULL 08/23] tests/docker/common: print errors to stderr marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 10/23] tests/docker/common: print meson log on configure failure marcandre.lureau
` (14 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Without it, at least it fails with podman on fc42:
[1/6] STEP 1/15: FROM emscripten/emsdk:3.1.50 AS build-base
Error: creating build container: short-name resolution enforced but cannot prompt without a TTY
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
Message-ID: <20250924120426.2158655-10-marcandre.lureau@redhat.com>
---
tests/docker/dockerfiles/emsdk-wasm32-cross.docker | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/docker/dockerfiles/emsdk-wasm32-cross.docker b/tests/docker/dockerfiles/emsdk-wasm32-cross.docker
index 60a7d02f56..6b1642a207 100644
--- a/tests/docker/dockerfiles/emsdk-wasm32-cross.docker
+++ b/tests/docker/dockerfiles/emsdk-wasm32-cross.docker
@@ -8,7 +8,7 @@ ARG PIXMAN_VERSION=0.44.2
ARG FFI_VERSION=v3.4.7
ARG MESON_VERSION=1.5.0
-FROM emscripten/emsdk:$EMSDK_VERSION_QEMU AS build-base
+FROM docker.io/emscripten/emsdk:$EMSDK_VERSION_QEMU AS build-base
ARG MESON_VERSION
ENV TARGET=/builddeps/target
ENV CPATH="$TARGET/include"
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 10/23] tests/docker/common: print meson log on configure failure
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (8 preceding siblings ...)
2025-09-30 15:37 ` [PULL 09/23] tests/docker: use fully qualified image name for emsdk marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 11/23] build-sys: cfi_debug and safe_stack are not compatible marcandre.lureau
` (13 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <20250924120426.2158655-11-marcandre.lureau@redhat.com>
---
tests/docker/common.rc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/docker/common.rc b/tests/docker/common.rc
index 2ed2365a61..d202c0c666 100755
--- a/tests/docker/common.rc
+++ b/tests/docker/common.rc
@@ -50,7 +50,7 @@ configure_qemu()
echo "Configure options:"
echo $config_opts
$QEMU_SRC/configure $config_opts || \
- { cat config.log >&2 && test_fail "Failed to run 'configure'"; }
+ { cat config.log >&2 ; cat meson-logs/meson-log.txt >&2 ; test_fail "Failed to run 'configure'"; }
}
build_qemu()
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 11/23] build-sys: cfi_debug and safe_stack are not compatible
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (9 preceding siblings ...)
2025-09-30 15:37 ` [PULL 10/23] tests/docker/common: print meson log on configure failure marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 12/23] lcitool: update, switch to f41 marcandre.lureau
` (12 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
It fails to link on fedora >= 41:
/usr/bin/ld: /usr/bin/../lib/clang/20/lib/x86_64-redhat-linux-gnu/libclang_rt.safestack.a(safestack.cpp.o): in function `__sanitizer_internal_memcpy':
(.text.__sanitizer_internal_memcpy+0x0): multiple definition of `__sanitizer_internal_memcpy'; /usr/bin/../lib/clang/20/lib/x86_64-redhat-linux-gnu/libclang_rt.ubsan_standalone.a(sanitizer_libc.cpp.o):(.text.__sanitizer_internal_memcpy+0x0): first defined here
/usr/bin/ld: /usr/bin/../lib/clang/20/lib/x86_64-redhat-linux-gnu/libclang_rt.safestack.a(safestack.cpp.o): in function `__sanitizer_internal_memmove':
(.text.__sanitizer_internal_memmove+0x0): multiple definition of `__sanitizer_internal_memmove'; /usr/bin/../lib/clang/20/lib/x86_64-redhat-linux-gnu/libclang_rt.ubsan_standalone.a(sanitizer_libc.cpp.o):(.text.__sanitizer_internal_memmove+0x0): first defined here
/usr/bin/ld: /usr/bin/../lib/clang/20/lib/x86_64-redhat-linux-gnu/libclang_rt.safestack.a(safestack.cpp.o): in function `__sanitizer_internal_memset':
(.text.__sanitizer_internal_memset+0x0): multiple definition of `__sanitizer_internal_memset'; /usr/bin/../lib/clang/20/lib/x86_64-redhat-linux-gnu/libclang_rt.ubsan_standalone.a(sanitizer_libc.cpp.o):(.text.__sanitizer_internal_memset+0x0): first defined here
cfi_debug seems to pull ubsan which has conflicting symbols with safe_stack.
See also: https://bugzilla.redhat.com/show_bug.cgi?id=2397265
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <20250924120426.2158655-12-marcandre.lureau@redhat.com>
---
meson.build | 3 +++
.gitlab-ci.d/buildtest.yml | 6 +++---
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/meson.build b/meson.build
index c08e2df6bb..14e626aa1e 100644
--- a/meson.build
+++ b/meson.build
@@ -681,6 +681,9 @@ if get_option('cfi')
error('-fsanitize-cfi-icall-generalize-pointers is not supported by the compiler')
endif
if get_option('cfi_debug')
+ if get_option('safe_stack')
+ error('cfi_debug is not compatible with safe_stack')
+ endif
if cc.compiles('int main () { return 0; }',
name: '-fno-sanitize-trap=cfi-icall',
args: ['-flto', '-fsanitize=cfi-icall',
diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml
index 3be36e5499..0502094b9a 100644
--- a/.gitlab-ci.d/buildtest.yml
+++ b/.gitlab-ci.d/buildtest.yml
@@ -479,7 +479,7 @@ build-cfi-aarch64:
LD_JOBS: 1
AR: llvm-ar
IMAGE: fedora
- CONFIGURE_ARGS: --cc=clang --cxx=clang++ --enable-cfi --enable-cfi-debug
+ CONFIGURE_ARGS: --cc=clang --cxx=clang++ --enable-cfi
--enable-safe-stack --disable-slirp
TARGETS: aarch64-softmmu
MAKE_CHECK_ARGS: check-build
@@ -517,7 +517,7 @@ build-cfi-ppc64-s390x:
LD_JOBS: 1
AR: llvm-ar
IMAGE: fedora
- CONFIGURE_ARGS: --cc=clang --cxx=clang++ --enable-cfi --enable-cfi-debug
+ CONFIGURE_ARGS: --cc=clang --cxx=clang++ --enable-cfi
--enable-safe-stack --disable-slirp
TARGETS: ppc64-softmmu s390x-softmmu
MAKE_CHECK_ARGS: check-build
@@ -555,7 +555,7 @@ build-cfi-x86_64:
LD_JOBS: 1
AR: llvm-ar
IMAGE: fedora
- CONFIGURE_ARGS: --cc=clang --cxx=clang++ --enable-cfi --enable-cfi-debug
+ CONFIGURE_ARGS: --cc=clang --cxx=clang++ --enable-cfi
--enable-safe-stack --disable-slirp
TARGETS: x86_64-softmmu
MAKE_CHECK_ARGS: check-build
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 12/23] lcitool: update, switch to f41
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (10 preceding siblings ...)
2025-09-30 15:37 ` [PULL 11/23] build-sys: cfi_debug and safe_stack are not compatible marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 13/23] lcitool/qemu: include libclang-rt for TSAN marcandre.lureau
` (11 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Newer lcitool version has various fixes helping QEMU CI and this series.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <20250924120426.2158655-13-marcandre.lureau@redhat.com>
---
scripts/ci/setup/ubuntu/ubuntu-2204-aarch64.yaml | 3 ++-
scripts/ci/setup/ubuntu/ubuntu-2204-s390x.yaml | 3 ++-
tests/docker/dockerfiles/alpine.docker | 2 +-
tests/docker/dockerfiles/debian-amd64-cross.docker | 5 ++++-
tests/docker/dockerfiles/debian-arm64-cross.docker | 5 ++++-
tests/docker/dockerfiles/debian-armhf-cross.docker | 5 ++++-
tests/docker/dockerfiles/debian-i686-cross.docker | 5 ++++-
.../dockerfiles/debian-mips64el-cross.docker | 5 ++++-
.../docker/dockerfiles/debian-mipsel-cross.docker | 5 ++++-
.../docker/dockerfiles/debian-ppc64el-cross.docker | 5 ++++-
.../docker/dockerfiles/debian-riscv64-cross.docker | 8 ++++++--
tests/docker/dockerfiles/debian-s390x-cross.docker | 5 ++++-
tests/docker/dockerfiles/debian.docker | 5 ++++-
.../docker/dockerfiles/fedora-rust-nightly.docker | 14 ++++++++------
tests/docker/dockerfiles/fedora-win64-cross.docker | 11 +++++++----
tests/docker/dockerfiles/fedora.docker | 14 ++++++++------
tests/docker/dockerfiles/opensuse-leap.docker | 4 ++--
tests/docker/dockerfiles/ubuntu2204.docker | 5 ++++-
tests/lcitool/projects/qemu.yml | 1 -
tests/lcitool/refresh | 6 +++---
20 files changed, 79 insertions(+), 37 deletions(-)
diff --git a/scripts/ci/setup/ubuntu/ubuntu-2204-aarch64.yaml b/scripts/ci/setup/ubuntu/ubuntu-2204-aarch64.yaml
index f11e980826..bbcb5dd4ac 100644
--- a/scripts/ci/setup/ubuntu/ubuntu-2204-aarch64.yaml
+++ b/scripts/ci/setup/ubuntu/ubuntu-2204-aarch64.yaml
@@ -95,7 +95,6 @@ packages:
- llvm
- locales
- make
- - meson
- mtools
- multipath-tools
- ncat
@@ -108,10 +107,12 @@ packages:
- python3-opencv
- python3-pillow
- python3-pip
+ - python3-setuptools
- python3-sphinx
- python3-sphinx-rtd-theme
- python3-tomli
- python3-venv
+ - python3-wheel
- python3-yaml
- rpm2cpio
- rustc-1.77
diff --git a/scripts/ci/setup/ubuntu/ubuntu-2204-s390x.yaml b/scripts/ci/setup/ubuntu/ubuntu-2204-s390x.yaml
index 6559cb2934..00eb1b0f91 100644
--- a/scripts/ci/setup/ubuntu/ubuntu-2204-s390x.yaml
+++ b/scripts/ci/setup/ubuntu/ubuntu-2204-s390x.yaml
@@ -93,7 +93,6 @@ packages:
- llvm
- locales
- make
- - meson
- mtools
- multipath-tools
- ncat
@@ -106,10 +105,12 @@ packages:
- python3-opencv
- python3-pillow
- python3-pip
+ - python3-setuptools
- python3-sphinx
- python3-sphinx-rtd-theme
- python3-tomli
- python3-venv
+ - python3-wheel
- python3-yaml
- rpm2cpio
- rustc-1.77
diff --git a/tests/docker/dockerfiles/alpine.docker b/tests/docker/dockerfiles/alpine.docker
index bf3bd5a30d..bd1ef5505d 100644
--- a/tests/docker/dockerfiles/alpine.docker
+++ b/tests/docker/dockerfiles/alpine.docker
@@ -78,7 +78,7 @@ RUN apk update && \
nmap-ncat \
numactl-dev \
openssh-client \
- pcre-dev \
+ pcre2-dev \
pipewire-dev \
pixman-dev \
pkgconf \
diff --git a/tests/docker/dockerfiles/debian-amd64-cross.docker b/tests/docker/dockerfiles/debian-amd64-cross.docker
index 081f3e00f7..bba6de4e2d 100644
--- a/tests/docker/dockerfiles/debian-amd64-cross.docker
+++ b/tests/docker/dockerfiles/debian-amd64-cross.docker
@@ -34,7 +34,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
llvm \
locales \
make \
- meson \
mtools \
ncat \
ninja-build \
@@ -45,9 +44,11 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-opencv \
python3-pillow \
python3-pip \
+ python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
python3-venv \
+ python3-wheel \
python3-yaml \
rpm2cpio \
rustc-web \
@@ -67,6 +68,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
dpkg-reconfigure locales && \
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
+RUN /usr/bin/pip3 install meson==1.8.1
+
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
diff --git a/tests/docker/dockerfiles/debian-arm64-cross.docker b/tests/docker/dockerfiles/debian-arm64-cross.docker
index 91c555a36e..8bbcd75157 100644
--- a/tests/docker/dockerfiles/debian-arm64-cross.docker
+++ b/tests/docker/dockerfiles/debian-arm64-cross.docker
@@ -34,7 +34,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
llvm \
locales \
make \
- meson \
mtools \
ncat \
ninja-build \
@@ -45,9 +44,11 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-opencv \
python3-pillow \
python3-pip \
+ python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
python3-venv \
+ python3-wheel \
python3-yaml \
rpm2cpio \
rustc-web \
@@ -67,6 +68,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
dpkg-reconfigure locales && \
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
+RUN /usr/bin/pip3 install meson==1.8.1
+
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
diff --git a/tests/docker/dockerfiles/debian-armhf-cross.docker b/tests/docker/dockerfiles/debian-armhf-cross.docker
index f0e2efcda0..455b84424c 100644
--- a/tests/docker/dockerfiles/debian-armhf-cross.docker
+++ b/tests/docker/dockerfiles/debian-armhf-cross.docker
@@ -34,7 +34,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
llvm \
locales \
make \
- meson \
mtools \
ncat \
ninja-build \
@@ -45,9 +44,11 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-opencv \
python3-pillow \
python3-pip \
+ python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
python3-venv \
+ python3-wheel \
python3-yaml \
rpm2cpio \
rustc-web \
@@ -67,6 +68,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
dpkg-reconfigure locales && \
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
+RUN /usr/bin/pip3 install meson==1.8.1
+
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
diff --git a/tests/docker/dockerfiles/debian-i686-cross.docker b/tests/docker/dockerfiles/debian-i686-cross.docker
index 025beb1ce2..8b8993ffe4 100644
--- a/tests/docker/dockerfiles/debian-i686-cross.docker
+++ b/tests/docker/dockerfiles/debian-i686-cross.docker
@@ -34,7 +34,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
llvm \
locales \
make \
- meson \
mtools \
ncat \
ninja-build \
@@ -45,9 +44,11 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-opencv \
python3-pillow \
python3-pip \
+ python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
python3-venv \
+ python3-wheel \
python3-yaml \
rpm2cpio \
rustc-web \
@@ -67,6 +68,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
dpkg-reconfigure locales && \
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
+RUN /usr/bin/pip3 install meson==1.8.1
+
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
diff --git a/tests/docker/dockerfiles/debian-mips64el-cross.docker b/tests/docker/dockerfiles/debian-mips64el-cross.docker
index 4a941dd870..c89cb6c680 100644
--- a/tests/docker/dockerfiles/debian-mips64el-cross.docker
+++ b/tests/docker/dockerfiles/debian-mips64el-cross.docker
@@ -34,7 +34,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
llvm \
locales \
make \
- meson \
mtools \
ncat \
ninja-build \
@@ -45,9 +44,11 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-opencv \
python3-pillow \
python3-pip \
+ python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
python3-venv \
+ python3-wheel \
python3-yaml \
rpm2cpio \
rustc-web \
@@ -67,6 +68,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
dpkg-reconfigure locales && \
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
+RUN /usr/bin/pip3 install meson==1.8.1
+
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
diff --git a/tests/docker/dockerfiles/debian-mipsel-cross.docker b/tests/docker/dockerfiles/debian-mipsel-cross.docker
index 4d3e5d711b..4e10d9501f 100644
--- a/tests/docker/dockerfiles/debian-mipsel-cross.docker
+++ b/tests/docker/dockerfiles/debian-mipsel-cross.docker
@@ -34,7 +34,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
llvm \
locales \
make \
- meson \
mtools \
ncat \
ninja-build \
@@ -45,9 +44,11 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-opencv \
python3-pillow \
python3-pip \
+ python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
python3-venv \
+ python3-wheel \
python3-yaml \
rpm2cpio \
rustc-web \
@@ -67,6 +68,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
dpkg-reconfigure locales && \
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
+RUN /usr/bin/pip3 install meson==1.8.1
+
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
diff --git a/tests/docker/dockerfiles/debian-ppc64el-cross.docker b/tests/docker/dockerfiles/debian-ppc64el-cross.docker
index 22b4457ba9..cf61cb7f4a 100644
--- a/tests/docker/dockerfiles/debian-ppc64el-cross.docker
+++ b/tests/docker/dockerfiles/debian-ppc64el-cross.docker
@@ -34,7 +34,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
llvm \
locales \
make \
- meson \
mtools \
ncat \
ninja-build \
@@ -45,9 +44,11 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-opencv \
python3-pillow \
python3-pip \
+ python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
python3-venv \
+ python3-wheel \
python3-yaml \
rpm2cpio \
rustc-web \
@@ -67,6 +68,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
dpkg-reconfigure locales && \
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
+RUN /usr/bin/pip3 install meson==1.8.1
+
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
diff --git a/tests/docker/dockerfiles/debian-riscv64-cross.docker b/tests/docker/dockerfiles/debian-riscv64-cross.docker
index b0386cd3a1..79ec37616d 100644
--- a/tests/docker/dockerfiles/debian-riscv64-cross.docker
+++ b/tests/docker/dockerfiles/debian-riscv64-cross.docker
@@ -4,7 +4,7 @@
#
# https://gitlab.com/libvirt/libvirt-ci
-FROM docker.io/library/debian:trixie-slim
+FROM docker.io/library/debian:13-slim
RUN export DEBIAN_FRONTEND=noninteractive && \
apt-get update && \
@@ -23,11 +23,13 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libglib2.0-dev \
locales \
make \
- meson \
ninja-build \
pkgconf \
python3 \
+ python3-pip \
+ python3-setuptools \
python3-venv \
+ python3-wheel \
sed \
tar && \
eatmydata apt-get autoremove -y && \
@@ -36,6 +38,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
dpkg-reconfigure locales && \
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
+RUN /usr/bin/pip3 install meson==1.8.1
+
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
diff --git a/tests/docker/dockerfiles/debian-s390x-cross.docker b/tests/docker/dockerfiles/debian-s390x-cross.docker
index 13ec52c8ad..1782e0e90f 100644
--- a/tests/docker/dockerfiles/debian-s390x-cross.docker
+++ b/tests/docker/dockerfiles/debian-s390x-cross.docker
@@ -34,7 +34,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
llvm \
locales \
make \
- meson \
mtools \
ncat \
ninja-build \
@@ -45,9 +44,11 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-opencv \
python3-pillow \
python3-pip \
+ python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
python3-venv \
+ python3-wheel \
python3-yaml \
rpm2cpio \
rustc-web \
@@ -67,6 +68,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
dpkg-reconfigure locales && \
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
+RUN /usr/bin/pip3 install meson==1.8.1
+
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
diff --git a/tests/docker/dockerfiles/debian.docker b/tests/docker/dockerfiles/debian.docker
index 0a57c1a1d3..62f89e4d8c 100644
--- a/tests/docker/dockerfiles/debian.docker
+++ b/tests/docker/dockerfiles/debian.docker
@@ -104,7 +104,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
llvm \
locales \
make \
- meson \
mtools \
multipath-tools \
ncat \
@@ -117,9 +116,11 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-opencv \
python3-pillow \
python3-pip \
+ python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
python3-venv \
+ python3-wheel \
python3-yaml \
rpm2cpio \
rustc-web \
@@ -146,6 +147,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
+RUN /usr/bin/pip3 install meson==1.8.1
+
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
diff --git a/tests/docker/dockerfiles/fedora-rust-nightly.docker b/tests/docker/dockerfiles/fedora-rust-nightly.docker
index 4a033309b3..fd71dd8790 100644
--- a/tests/docker/dockerfiles/fedora-rust-nightly.docker
+++ b/tests/docker/dockerfiles/fedora-rust-nightly.docker
@@ -1,10 +1,10 @@
# THIS FILE WAS AUTO-GENERATED
#
-# $ lcitool dockerfile --layers all fedora-40 qemu
+# $ lcitool dockerfile --layers all fedora-41 qemu
#
# https://gitlab.com/libvirt/libvirt-ci
-FROM registry.fedoraproject.org/fedora:40
+FROM registry.fedoraproject.org/fedora:41
RUN dnf install -y nosync && \
printf '#!/bin/sh\n\
@@ -91,7 +91,6 @@ exec "$@"\n' > /usr/bin/nosync && \
lzo-devel \
make \
mesa-libgbm-devel \
- meson \
mtools \
ncurses-devel \
nettle-devel \
@@ -100,7 +99,7 @@ exec "$@"\n' > /usr/bin/nosync && \
numactl-devel \
openssh-clients \
pam-devel \
- pcre-static \
+ pcre2-static \
pipewire-devel \
pixman-devel \
pkgconfig \
@@ -111,9 +110,10 @@ exec "$@"\n' > /usr/bin/nosync && \
python3-opencv \
python3-pillow \
python3-pip \
+ python3-setuptools \
python3-sphinx \
python3-sphinx_rtd_theme \
- python3-zombie-imp \
+ python3-wheel \
rdma-core-devel \
rust \
sed \
@@ -124,7 +124,7 @@ exec "$@"\n' > /usr/bin/nosync && \
spice-server-devel \
swtpm \
systemd-devel \
- systemtap-sdt-devel \
+ systemtap-sdt-dtrace \
tar \
tesseract \
tesseract-langpack-eng \
@@ -148,6 +148,8 @@ exec "$@"\n' > /usr/bin/nosync && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
+RUN /usr/bin/pip3 install meson==1.8.1
+
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
diff --git a/tests/docker/dockerfiles/fedora-win64-cross.docker b/tests/docker/dockerfiles/fedora-win64-cross.docker
index a950344402..ed7d270984 100644
--- a/tests/docker/dockerfiles/fedora-win64-cross.docker
+++ b/tests/docker/dockerfiles/fedora-win64-cross.docker
@@ -1,10 +1,10 @@
# THIS FILE WAS AUTO-GENERATED
#
-# $ lcitool dockerfile --layers all --cross-arch mingw64 fedora-40 qemu,qemu-win-installer
+# $ lcitool dockerfile --layers all --cross-arch mingw64 fedora-41 qemu,qemu-win-installer
#
# https://gitlab.com/libvirt/libvirt-ci
-FROM registry.fedoraproject.org/fedora:40
+FROM registry.fedoraproject.org/fedora:41
RUN dnf install -y nosync && \
printf '#!/bin/sh\n\
@@ -38,7 +38,6 @@ exec "$@"\n' > /usr/bin/nosync && \
hostname \
llvm \
make \
- meson \
mtools \
ninja-build \
nmap-ncat \
@@ -49,9 +48,10 @@ exec "$@"\n' > /usr/bin/nosync && \
python3-opencv \
python3-pillow \
python3-pip \
+ python3-setuptools \
python3-sphinx \
python3-sphinx_rtd_theme \
- python3-zombie-imp \
+ python3-wheel \
rust \
sed \
socat \
@@ -69,6 +69,8 @@ exec "$@"\n' > /usr/bin/nosync && \
nosync dnf clean all -y && \
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
+RUN /usr/bin/pip3 install meson==1.8.1
+
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
@@ -90,6 +92,7 @@ RUN nosync dnf install -y \
mingw64-gtk-vnc2 \
mingw64-gtk3 \
mingw64-libepoxy \
+ mingw64-libfdt \
mingw64-libgcrypt \
mingw64-libjpeg-turbo \
mingw64-libpng \
diff --git a/tests/docker/dockerfiles/fedora.docker b/tests/docker/dockerfiles/fedora.docker
index 014e3ccf17..e367c53c09 100644
--- a/tests/docker/dockerfiles/fedora.docker
+++ b/tests/docker/dockerfiles/fedora.docker
@@ -1,10 +1,10 @@
# THIS FILE WAS AUTO-GENERATED
#
-# $ lcitool dockerfile --layers all fedora-40 qemu
+# $ lcitool dockerfile --layers all fedora-41 qemu
#
# https://gitlab.com/libvirt/libvirt-ci
-FROM registry.fedoraproject.org/fedora:40
+FROM registry.fedoraproject.org/fedora:41
RUN dnf install -y nosync && \
printf '#!/bin/sh\n\
@@ -91,7 +91,6 @@ exec "$@"\n' > /usr/bin/nosync && \
lzo-devel \
make \
mesa-libgbm-devel \
- meson \
mtools \
ncurses-devel \
nettle-devel \
@@ -100,7 +99,7 @@ exec "$@"\n' > /usr/bin/nosync && \
numactl-devel \
openssh-clients \
pam-devel \
- pcre-static \
+ pcre2-static \
pipewire-devel \
pixman-devel \
pkgconfig \
@@ -111,9 +110,10 @@ exec "$@"\n' > /usr/bin/nosync && \
python3-opencv \
python3-pillow \
python3-pip \
+ python3-setuptools \
python3-sphinx \
python3-sphinx_rtd_theme \
- python3-zombie-imp \
+ python3-wheel \
rdma-core-devel \
rust \
sed \
@@ -124,7 +124,7 @@ exec "$@"\n' > /usr/bin/nosync && \
spice-server-devel \
swtpm \
systemd-devel \
- systemtap-sdt-devel \
+ systemtap-sdt-dtrace \
tar \
tesseract \
tesseract-langpack-eng \
@@ -148,6 +148,8 @@ exec "$@"\n' > /usr/bin/nosync && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
+RUN /usr/bin/pip3 install meson==1.8.1
+
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
diff --git a/tests/docker/dockerfiles/opensuse-leap.docker b/tests/docker/dockerfiles/opensuse-leap.docker
index e90225dc23..60763857bb 100644
--- a/tests/docker/dockerfiles/opensuse-leap.docker
+++ b/tests/docker/dockerfiles/opensuse-leap.docker
@@ -89,7 +89,7 @@ RUN zypper update -y && \
ninja \
openssh \
pam-devel \
- pcre-devel-static \
+ pcre2-devel-static \
pipewire-devel \
pkgconfig \
python311 \
@@ -132,7 +132,7 @@ RUN zypper update -y && \
RUN /usr/bin/pip3.11 install \
PyYAML \
- meson==1.5.0 \
+ meson==1.8.1 \
pillow \
sphinx \
sphinx-rtd-theme
diff --git a/tests/docker/dockerfiles/ubuntu2204.docker b/tests/docker/dockerfiles/ubuntu2204.docker
index 28a6f93243..ea67c7602a 100644
--- a/tests/docker/dockerfiles/ubuntu2204.docker
+++ b/tests/docker/dockerfiles/ubuntu2204.docker
@@ -102,7 +102,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
llvm \
locales \
make \
- meson \
mtools \
multipath-tools \
ncat \
@@ -115,10 +114,12 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-opencv \
python3-pillow \
python3-pip \
+ python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
python3-tomli \
python3-venv \
+ python3-wheel \
python3-yaml \
rpm2cpio \
rustc-1.77 \
@@ -145,6 +146,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
+RUN /usr/bin/pip3 install meson==1.8.1
+
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
diff --git a/tests/lcitool/projects/qemu.yml b/tests/lcitool/projects/qemu.yml
index c07242f272..f22fc46fdc 100644
--- a/tests/lcitool/projects/qemu.yml
+++ b/tests/lcitool/projects/qemu.yml
@@ -91,7 +91,6 @@ packages:
- pkg-config
- pulseaudio
- python3
- - python3-imp
- python3-numpy
- python3-opencv
- python3-pillow
diff --git a/tests/lcitool/refresh b/tests/lcitool/refresh
index d3488b2679..f49eb638f8 100755
--- a/tests/lcitool/refresh
+++ b/tests/lcitool/refresh
@@ -171,7 +171,7 @@ try:
generate_dockerfile("centos9", "centos-stream-9")
generate_dockerfile("debian", "debian-12",
trailer="".join(debian12_extras))
- generate_dockerfile("fedora", "fedora-40")
+ generate_dockerfile("fedora", "fedora-41")
generate_dockerfile("opensuse-leap", "opensuse-leap-15")
generate_dockerfile("ubuntu2204", "ubuntu-2204",
trailer="".join(ubuntu2204_rust_extras))
@@ -179,7 +179,7 @@ try:
#
# Non-fatal Rust-enabled build
#
- generate_dockerfile("fedora-rust-nightly", "fedora-40",
+ generate_dockerfile("fedora-rust-nightly", "fedora-41",
trailer="".join(fedora_rustup_nightly_extras))
#
@@ -237,7 +237,7 @@ try:
trailer=cross_build("s390x-linux-gnu-",
"s390x-softmmu,s390x-linux-user"))
- generate_dockerfile("fedora-win64-cross", "fedora-40",
+ generate_dockerfile("fedora-win64-cross", "fedora-41",
project='qemu,qemu-win-installer',
cross="mingw64",
trailer=cross_build("x86_64-w64-mingw32-",
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 13/23] lcitool/qemu: include libclang-rt for TSAN
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (11 preceding siblings ...)
2025-09-30 15:37 ` [PULL 12/23] lcitool: update, switch to f41 marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 14/23] lcitool/alpine: workaround bindgen issue marcandre.lureau
` (10 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <20250924120426.2158655-14-marcandre.lureau@redhat.com>
---
scripts/ci/setup/ubuntu/ubuntu-2204-aarch64.yaml | 1 +
scripts/ci/setup/ubuntu/ubuntu-2204-s390x.yaml | 1 +
tests/docker/dockerfiles/centos9.docker | 1 +
tests/docker/dockerfiles/debian-amd64-cross.docker | 1 +
tests/docker/dockerfiles/debian-arm64-cross.docker | 1 +
tests/docker/dockerfiles/debian-armhf-cross.docker | 1 +
tests/docker/dockerfiles/debian-i686-cross.docker | 1 +
tests/docker/dockerfiles/debian-mips64el-cross.docker | 1 +
tests/docker/dockerfiles/debian-mipsel-cross.docker | 1 +
tests/docker/dockerfiles/debian-ppc64el-cross.docker | 1 +
tests/docker/dockerfiles/debian-s390x-cross.docker | 1 +
tests/docker/dockerfiles/debian.docker | 1 +
tests/docker/dockerfiles/fedora-rust-nightly.docker | 1 +
tests/docker/dockerfiles/fedora-win64-cross.docker | 1 +
tests/docker/dockerfiles/fedora.docker | 1 +
tests/docker/dockerfiles/opensuse-leap.docker | 1 +
tests/docker/dockerfiles/ubuntu2204.docker | 1 +
tests/lcitool/projects/qemu.yml | 1 +
18 files changed, 18 insertions(+)
diff --git a/scripts/ci/setup/ubuntu/ubuntu-2204-aarch64.yaml b/scripts/ci/setup/ubuntu/ubuntu-2204-aarch64.yaml
index bbcb5dd4ac..f446217f2c 100644
--- a/scripts/ci/setup/ubuntu/ubuntu-2204-aarch64.yaml
+++ b/scripts/ci/setup/ubuntu/ubuntu-2204-aarch64.yaml
@@ -36,6 +36,7 @@ packages:
- libcap-ng-dev
- libcapstone-dev
- libcbor-dev
+ - libclang-dev
- libcmocka-dev
- libcurl4-gnutls-dev
- libdaxctl-dev
diff --git a/scripts/ci/setup/ubuntu/ubuntu-2204-s390x.yaml b/scripts/ci/setup/ubuntu/ubuntu-2204-s390x.yaml
index 00eb1b0f91..25c3368c54 100644
--- a/scripts/ci/setup/ubuntu/ubuntu-2204-s390x.yaml
+++ b/scripts/ci/setup/ubuntu/ubuntu-2204-s390x.yaml
@@ -36,6 +36,7 @@ packages:
- libcap-ng-dev
- libcapstone-dev
- libcbor-dev
+ - libclang-dev
- libcmocka-dev
- libcurl4-gnutls-dev
- libdaxctl-dev
diff --git a/tests/docker/dockerfiles/centos9.docker b/tests/docker/dockerfiles/centos9.docker
index a942835a1d..33c62033ce 100644
--- a/tests/docker/dockerfiles/centos9.docker
+++ b/tests/docker/dockerfiles/centos9.docker
@@ -25,6 +25,7 @@ RUN dnf distro-sync -y && \
capstone-devel \
ccache \
clang \
+ compiler-rt \
ctags \
cyrus-sasl-devel \
daxctl-devel \
diff --git a/tests/docker/dockerfiles/debian-amd64-cross.docker b/tests/docker/dockerfiles/debian-amd64-cross.docker
index bba6de4e2d..d4d3cebfdc 100644
--- a/tests/docker/dockerfiles/debian-amd64-cross.docker
+++ b/tests/docker/dockerfiles/debian-amd64-cross.docker
@@ -30,6 +30,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
gettext \
git \
hostname \
+ libclang-rt-dev \
libglib2.0-dev \
llvm \
locales \
diff --git a/tests/docker/dockerfiles/debian-arm64-cross.docker b/tests/docker/dockerfiles/debian-arm64-cross.docker
index 8bbcd75157..cd9c9a0def 100644
--- a/tests/docker/dockerfiles/debian-arm64-cross.docker
+++ b/tests/docker/dockerfiles/debian-arm64-cross.docker
@@ -30,6 +30,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
gettext \
git \
hostname \
+ libclang-rt-dev \
libglib2.0-dev \
llvm \
locales \
diff --git a/tests/docker/dockerfiles/debian-armhf-cross.docker b/tests/docker/dockerfiles/debian-armhf-cross.docker
index 455b84424c..21a5bbc81d 100644
--- a/tests/docker/dockerfiles/debian-armhf-cross.docker
+++ b/tests/docker/dockerfiles/debian-armhf-cross.docker
@@ -30,6 +30,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
gettext \
git \
hostname \
+ libclang-rt-dev \
libglib2.0-dev \
llvm \
locales \
diff --git a/tests/docker/dockerfiles/debian-i686-cross.docker b/tests/docker/dockerfiles/debian-i686-cross.docker
index 8b8993ffe4..c41a4805fe 100644
--- a/tests/docker/dockerfiles/debian-i686-cross.docker
+++ b/tests/docker/dockerfiles/debian-i686-cross.docker
@@ -30,6 +30,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
gettext \
git \
hostname \
+ libclang-rt-dev \
libglib2.0-dev \
llvm \
locales \
diff --git a/tests/docker/dockerfiles/debian-mips64el-cross.docker b/tests/docker/dockerfiles/debian-mips64el-cross.docker
index c89cb6c680..77d5d43f4b 100644
--- a/tests/docker/dockerfiles/debian-mips64el-cross.docker
+++ b/tests/docker/dockerfiles/debian-mips64el-cross.docker
@@ -30,6 +30,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
gettext \
git \
hostname \
+ libclang-rt-dev \
libglib2.0-dev \
llvm \
locales \
diff --git a/tests/docker/dockerfiles/debian-mipsel-cross.docker b/tests/docker/dockerfiles/debian-mipsel-cross.docker
index 4e10d9501f..9e60fe0eb4 100644
--- a/tests/docker/dockerfiles/debian-mipsel-cross.docker
+++ b/tests/docker/dockerfiles/debian-mipsel-cross.docker
@@ -30,6 +30,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
gettext \
git \
hostname \
+ libclang-rt-dev \
libglib2.0-dev \
llvm \
locales \
diff --git a/tests/docker/dockerfiles/debian-ppc64el-cross.docker b/tests/docker/dockerfiles/debian-ppc64el-cross.docker
index cf61cb7f4a..dc683bd498 100644
--- a/tests/docker/dockerfiles/debian-ppc64el-cross.docker
+++ b/tests/docker/dockerfiles/debian-ppc64el-cross.docker
@@ -30,6 +30,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
gettext \
git \
hostname \
+ libclang-rt-dev \
libglib2.0-dev \
llvm \
locales \
diff --git a/tests/docker/dockerfiles/debian-s390x-cross.docker b/tests/docker/dockerfiles/debian-s390x-cross.docker
index 1782e0e90f..ef6e961460 100644
--- a/tests/docker/dockerfiles/debian-s390x-cross.docker
+++ b/tests/docker/dockerfiles/debian-s390x-cross.docker
@@ -30,6 +30,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
gettext \
git \
hostname \
+ libclang-rt-dev \
libglib2.0-dev \
llvm \
locales \
diff --git a/tests/docker/dockerfiles/debian.docker b/tests/docker/dockerfiles/debian.docker
index 62f89e4d8c..ef9ba62f2a 100644
--- a/tests/docker/dockerfiles/debian.docker
+++ b/tests/docker/dockerfiles/debian.docker
@@ -43,6 +43,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libcap-ng-dev \
libcapstone-dev \
libcbor-dev \
+ libclang-rt-dev \
libcmocka-dev \
libcurl4-gnutls-dev \
libdaxctl-dev \
diff --git a/tests/docker/dockerfiles/fedora-rust-nightly.docker b/tests/docker/dockerfiles/fedora-rust-nightly.docker
index fd71dd8790..bdbcebda8d 100644
--- a/tests/docker/dockerfiles/fedora-rust-nightly.docker
+++ b/tests/docker/dockerfiles/fedora-rust-nightly.docker
@@ -32,6 +32,7 @@ exec "$@"\n' > /usr/bin/nosync && \
capstone-devel \
ccache \
clang \
+ compiler-rt \
ctags \
cyrus-sasl-devel \
daxctl-devel \
diff --git a/tests/docker/dockerfiles/fedora-win64-cross.docker b/tests/docker/dockerfiles/fedora-win64-cross.docker
index ed7d270984..3c54486d2f 100644
--- a/tests/docker/dockerfiles/fedora-win64-cross.docker
+++ b/tests/docker/dockerfiles/fedora-win64-cross.docker
@@ -25,6 +25,7 @@ exec "$@"\n' > /usr/bin/nosync && \
bzip2 \
ca-certificates \
ccache \
+ compiler-rt \
ctags \
dbus-daemon \
diffutils \
diff --git a/tests/docker/dockerfiles/fedora.docker b/tests/docker/dockerfiles/fedora.docker
index e367c53c09..f758efd2b7 100644
--- a/tests/docker/dockerfiles/fedora.docker
+++ b/tests/docker/dockerfiles/fedora.docker
@@ -32,6 +32,7 @@ exec "$@"\n' > /usr/bin/nosync && \
capstone-devel \
ccache \
clang \
+ compiler-rt \
ctags \
cyrus-sasl-devel \
daxctl-devel \
diff --git a/tests/docker/dockerfiles/opensuse-leap.docker b/tests/docker/dockerfiles/opensuse-leap.docker
index 60763857bb..d71dbc30c7 100644
--- a/tests/docker/dockerfiles/opensuse-leap.docker
+++ b/tests/docker/dockerfiles/opensuse-leap.docker
@@ -19,6 +19,7 @@ RUN zypper update -y && \
ca-certificates \
ccache \
clang \
+ clang-devel \
ctags \
cyrus-sasl-devel \
dbus-1 \
diff --git a/tests/docker/dockerfiles/ubuntu2204.docker b/tests/docker/dockerfiles/ubuntu2204.docker
index ea67c7602a..146ad7fce2 100644
--- a/tests/docker/dockerfiles/ubuntu2204.docker
+++ b/tests/docker/dockerfiles/ubuntu2204.docker
@@ -42,6 +42,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libcap-ng-dev \
libcapstone-dev \
libcbor-dev \
+ libclang-dev \
libcmocka-dev \
libcurl4-gnutls-dev \
libdaxctl-dev \
diff --git a/tests/lcitool/projects/qemu.yml b/tests/lcitool/projects/qemu.yml
index f22fc46fdc..301d0e1ea0 100644
--- a/tests/lcitool/projects/qemu.yml
+++ b/tests/lcitool/projects/qemu.yml
@@ -44,6 +44,7 @@ packages:
- libcacard
- libcap-ng
- libcbor
+ - libclang-rt
- libcurl
- libdrm
- libepoxy
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 14/23] lcitool/alpine: workaround bindgen issue
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (12 preceding siblings ...)
2025-09-30 15:37 ` [PULL 13/23] lcitool/qemu: include libclang-rt for TSAN marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 15/23] tests/lcitool: add missing rust-std dep marcandre.lureau
` (9 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <20250924120426.2158655-15-marcandre.lureau@redhat.com>
---
tests/docker/dockerfiles/alpine.docker | 2 ++
tests/lcitool/refresh | 8 +++++++-
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/tests/docker/dockerfiles/alpine.docker b/tests/docker/dockerfiles/alpine.docker
index bd1ef5505d..b50fbc3dba 100644
--- a/tests/docker/dockerfiles/alpine.docker
+++ b/tests/docker/dockerfiles/alpine.docker
@@ -131,6 +131,8 @@ ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
ENV NINJA "/usr/bin/ninja"
ENV PYTHON "/usr/bin/python3"
+# https://gitlab.alpinelinux.org/alpine/aports/-/issues/17463
+RUN apk add clang19-libclang
# As a final step configure the user (if env is defined)
ARG USER
ARG UID
diff --git a/tests/lcitool/refresh b/tests/lcitool/refresh
index f49eb638f8..6f98a91277 100755
--- a/tests/lcitool/refresh
+++ b/tests/lcitool/refresh
@@ -97,6 +97,11 @@ def generate_yaml(os, target, arch, trailer=None):
generate(filename, cmd, trailer)
+alpine_extras = [
+ "# https://gitlab.alpinelinux.org/alpine/aports/-/issues/17463\n",
+ "RUN apk add clang19-libclang\n",
+]
+
# Netmap still needs to be manually built as it is yet to be packaged
# into a distro. We also add cscope and gtags which are used in the CI
# test
@@ -167,7 +172,8 @@ try:
#
# Standard native builds
#
- generate_dockerfile("alpine", "alpine-321")
+ generate_dockerfile("alpine", "alpine-321",
+ trailer="".join(alpine_extras))
generate_dockerfile("centos9", "centos-stream-9")
generate_dockerfile("debian", "debian-12",
trailer="".join(debian12_extras))
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 15/23] tests/lcitool: add missing rust-std dep
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (13 preceding siblings ...)
2025-09-30 15:37 ` [PULL 14/23] lcitool/alpine: workaround bindgen issue marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 16/23] tests/lcitool: update to debian13 marcandre.lureau
` (8 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Some distros/targets may pull it by default, but some don't.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <20250924120426.2158655-16-marcandre.lureau@redhat.com>
---
scripts/ci/setup/ubuntu/ubuntu-2204-aarch64.yaml | 1 +
scripts/ci/setup/ubuntu/ubuntu-2204-s390x.yaml | 1 +
tests/docker/dockerfiles/centos9.docker | 1 +
tests/docker/dockerfiles/debian-amd64-cross.docker | 1 +
tests/docker/dockerfiles/debian-arm64-cross.docker | 1 +
tests/docker/dockerfiles/debian-armhf-cross.docker | 1 +
tests/docker/dockerfiles/debian-i686-cross.docker | 1 +
tests/docker/dockerfiles/debian-mips64el-cross.docker | 1 +
tests/docker/dockerfiles/debian-mipsel-cross.docker | 1 +
tests/docker/dockerfiles/debian-ppc64el-cross.docker | 1 +
tests/docker/dockerfiles/debian-s390x-cross.docker | 1 +
tests/docker/dockerfiles/debian.docker | 1 +
tests/docker/dockerfiles/fedora-rust-nightly.docker | 1 +
tests/docker/dockerfiles/fedora-win64-cross.docker | 3 ++-
tests/docker/dockerfiles/fedora.docker | 1 +
tests/docker/dockerfiles/ubuntu2204.docker | 1 +
tests/lcitool/projects/qemu.yml | 1 +
17 files changed, 18 insertions(+), 1 deletion(-)
diff --git a/scripts/ci/setup/ubuntu/ubuntu-2204-aarch64.yaml b/scripts/ci/setup/ubuntu/ubuntu-2204-aarch64.yaml
index f446217f2c..2ca4a5392f 100644
--- a/scripts/ci/setup/ubuntu/ubuntu-2204-aarch64.yaml
+++ b/scripts/ci/setup/ubuntu/ubuntu-2204-aarch64.yaml
@@ -81,6 +81,7 @@ packages:
- libspice-protocol-dev
- libspice-server-dev
- libssh-dev
+ - libstd-rust-dev
- libsystemd-dev
- libtasn1-6-dev
- libubsan1
diff --git a/scripts/ci/setup/ubuntu/ubuntu-2204-s390x.yaml b/scripts/ci/setup/ubuntu/ubuntu-2204-s390x.yaml
index 25c3368c54..7198fbbcbb 100644
--- a/scripts/ci/setup/ubuntu/ubuntu-2204-s390x.yaml
+++ b/scripts/ci/setup/ubuntu/ubuntu-2204-s390x.yaml
@@ -80,6 +80,7 @@ packages:
- libsndio-dev
- libspice-protocol-dev
- libssh-dev
+ - libstd-rust-dev
- libsystemd-dev
- libtasn1-6-dev
- libubsan1
diff --git a/tests/docker/dockerfiles/centos9.docker b/tests/docker/dockerfiles/centos9.docker
index 33c62033ce..e7fc688ee9 100644
--- a/tests/docker/dockerfiles/centos9.docker
+++ b/tests/docker/dockerfiles/centos9.docker
@@ -105,6 +105,7 @@ RUN dnf distro-sync -y && \
python3-tomli \
rdma-core-devel \
rust \
+ rust-std-static \
sed \
snappy-devel \
socat \
diff --git a/tests/docker/dockerfiles/debian-amd64-cross.docker b/tests/docker/dockerfiles/debian-amd64-cross.docker
index d4d3cebfdc..f3ad2205a7 100644
--- a/tests/docker/dockerfiles/debian-amd64-cross.docker
+++ b/tests/docker/dockerfiles/debian-amd64-cross.docker
@@ -141,6 +141,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libspice-protocol-dev:amd64 \
libspice-server-dev:amd64 \
libssh-dev:amd64 \
+ libstd-rust-dev:amd64 \
libsystemd-dev:amd64 \
libtasn1-6-dev:amd64 \
libubsan1:amd64 \
diff --git a/tests/docker/dockerfiles/debian-arm64-cross.docker b/tests/docker/dockerfiles/debian-arm64-cross.docker
index cd9c9a0def..7d42227fa1 100644
--- a/tests/docker/dockerfiles/debian-arm64-cross.docker
+++ b/tests/docker/dockerfiles/debian-arm64-cross.docker
@@ -140,6 +140,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libspice-protocol-dev:arm64 \
libspice-server-dev:arm64 \
libssh-dev:arm64 \
+ libstd-rust-dev:arm64 \
libsystemd-dev:arm64 \
libtasn1-6-dev:arm64 \
libubsan1:arm64 \
diff --git a/tests/docker/dockerfiles/debian-armhf-cross.docker b/tests/docker/dockerfiles/debian-armhf-cross.docker
index 21a5bbc81d..8ad4d2bebf 100644
--- a/tests/docker/dockerfiles/debian-armhf-cross.docker
+++ b/tests/docker/dockerfiles/debian-armhf-cross.docker
@@ -140,6 +140,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libspice-protocol-dev:armhf \
libspice-server-dev:armhf \
libssh-dev:armhf \
+ libstd-rust-dev:armhf \
libsystemd-dev:armhf \
libtasn1-6-dev:armhf \
libubsan1:armhf \
diff --git a/tests/docker/dockerfiles/debian-i686-cross.docker b/tests/docker/dockerfiles/debian-i686-cross.docker
index c41a4805fe..e7e8d8e0f1 100644
--- a/tests/docker/dockerfiles/debian-i686-cross.docker
+++ b/tests/docker/dockerfiles/debian-i686-cross.docker
@@ -140,6 +140,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libspice-protocol-dev:i386 \
libspice-server-dev:i386 \
libssh-dev:i386 \
+ libstd-rust-dev:i386 \
libsystemd-dev:i386 \
libtasn1-6-dev:i386 \
libubsan1:i386 \
diff --git a/tests/docker/dockerfiles/debian-mips64el-cross.docker b/tests/docker/dockerfiles/debian-mips64el-cross.docker
index 77d5d43f4b..cca04a4594 100644
--- a/tests/docker/dockerfiles/debian-mips64el-cross.docker
+++ b/tests/docker/dockerfiles/debian-mips64el-cross.docker
@@ -139,6 +139,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libspice-protocol-dev:mips64el \
libspice-server-dev:mips64el \
libssh-dev:mips64el \
+ libstd-rust-dev:mips64el \
libsystemd-dev:mips64el \
libtasn1-6-dev:mips64el \
libudev-dev:mips64el \
diff --git a/tests/docker/dockerfiles/debian-mipsel-cross.docker b/tests/docker/dockerfiles/debian-mipsel-cross.docker
index 9e60fe0eb4..59c6f92248 100644
--- a/tests/docker/dockerfiles/debian-mipsel-cross.docker
+++ b/tests/docker/dockerfiles/debian-mipsel-cross.docker
@@ -139,6 +139,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libspice-protocol-dev:mipsel \
libspice-server-dev:mipsel \
libssh-dev:mipsel \
+ libstd-rust-dev:mipsel \
libsystemd-dev:mipsel \
libtasn1-6-dev:mipsel \
libudev-dev:mipsel \
diff --git a/tests/docker/dockerfiles/debian-ppc64el-cross.docker b/tests/docker/dockerfiles/debian-ppc64el-cross.docker
index dc683bd498..97ef64d934 100644
--- a/tests/docker/dockerfiles/debian-ppc64el-cross.docker
+++ b/tests/docker/dockerfiles/debian-ppc64el-cross.docker
@@ -140,6 +140,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libspice-protocol-dev:ppc64el \
libspice-server-dev:ppc64el \
libssh-dev:ppc64el \
+ libstd-rust-dev:ppc64el \
libsystemd-dev:ppc64el \
libtasn1-6-dev:ppc64el \
libubsan1:ppc64el \
diff --git a/tests/docker/dockerfiles/debian-s390x-cross.docker b/tests/docker/dockerfiles/debian-s390x-cross.docker
index ef6e961460..3afe91494d 100644
--- a/tests/docker/dockerfiles/debian-s390x-cross.docker
+++ b/tests/docker/dockerfiles/debian-s390x-cross.docker
@@ -139,6 +139,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libsndio-dev:s390x \
libspice-protocol-dev:s390x \
libssh-dev:s390x \
+ libstd-rust-dev:s390x \
libsystemd-dev:s390x \
libtasn1-6-dev:s390x \
libubsan1:s390x \
diff --git a/tests/docker/dockerfiles/debian.docker b/tests/docker/dockerfiles/debian.docker
index ef9ba62f2a..f68fcc83a9 100644
--- a/tests/docker/dockerfiles/debian.docker
+++ b/tests/docker/dockerfiles/debian.docker
@@ -89,6 +89,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libspice-protocol-dev \
libspice-server-dev \
libssh-dev \
+ libstd-rust-dev \
libsystemd-dev \
libtasn1-6-dev \
libubsan1 \
diff --git a/tests/docker/dockerfiles/fedora-rust-nightly.docker b/tests/docker/dockerfiles/fedora-rust-nightly.docker
index bdbcebda8d..167246f0f5 100644
--- a/tests/docker/dockerfiles/fedora-rust-nightly.docker
+++ b/tests/docker/dockerfiles/fedora-rust-nightly.docker
@@ -117,6 +117,7 @@ exec "$@"\n' > /usr/bin/nosync && \
python3-wheel \
rdma-core-devel \
rust \
+ rust-std-static \
sed \
snappy-devel \
socat \
diff --git a/tests/docker/dockerfiles/fedora-win64-cross.docker b/tests/docker/dockerfiles/fedora-win64-cross.docker
index 3c54486d2f..c76a70c368 100644
--- a/tests/docker/dockerfiles/fedora-win64-cross.docker
+++ b/tests/docker/dockerfiles/fedora-win64-cross.docker
@@ -100,7 +100,8 @@ RUN nosync dnf install -y \
mingw64-libtasn1 \
mingw64-nettle \
mingw64-pixman \
- mingw64-pkg-config && \
+ mingw64-pkg-config \
+ rust-std-static-x86_64-pc-windows-gnu && \
nosync dnf clean all -y && \
rpm -qa | sort > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
diff --git a/tests/docker/dockerfiles/fedora.docker b/tests/docker/dockerfiles/fedora.docker
index f758efd2b7..56a1ad8a18 100644
--- a/tests/docker/dockerfiles/fedora.docker
+++ b/tests/docker/dockerfiles/fedora.docker
@@ -117,6 +117,7 @@ exec "$@"\n' > /usr/bin/nosync && \
python3-wheel \
rdma-core-devel \
rust \
+ rust-std-static \
sed \
snappy-devel \
socat \
diff --git a/tests/docker/dockerfiles/ubuntu2204.docker b/tests/docker/dockerfiles/ubuntu2204.docker
index 146ad7fce2..b393db55a8 100644
--- a/tests/docker/dockerfiles/ubuntu2204.docker
+++ b/tests/docker/dockerfiles/ubuntu2204.docker
@@ -88,6 +88,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libspice-protocol-dev \
libspice-server-dev \
libssh-dev \
+ libstd-rust-dev \
libsystemd-dev \
libtasn1-6-dev \
libubsan1 \
diff --git a/tests/lcitool/projects/qemu.yml b/tests/lcitool/projects/qemu.yml
index 301d0e1ea0..82812e7736 100644
--- a/tests/lcitool/projects/qemu.yml
+++ b/tests/lcitool/projects/qemu.yml
@@ -104,6 +104,7 @@ packages:
- python3-venv
- rpm2cpio
- rust
+ - rust-std
- sdl2
- sdl2-image
- sed
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 16/23] tests/lcitool: update to debian13
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (14 preceding siblings ...)
2025-09-30 15:37 ` [PULL 15/23] tests/lcitool: add missing rust-std dep marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 17/23] tests/docker: add ENABLE_RUST environment marcandre.lureau
` (7 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
riscv64 is now a supported architecture.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-ID: <20250924120426.2158655-17-marcandre.lureau@redhat.com>
---
.../dockerfiles/debian-amd64-cross.docker | 9 +-
.../dockerfiles/debian-arm64-cross.docker | 9 +-
.../dockerfiles/debian-armhf-cross.docker | 12 +-
.../dockerfiles/debian-i686-cross.docker | 11 +-
.../dockerfiles/debian-ppc64el-cross.docker | 9 +-
.../dockerfiles/debian-riscv64-cross.docker | 106 +++++++++++++++++-
.../dockerfiles/debian-s390x-cross.docker | 9 +-
tests/docker/dockerfiles/debian.docker | 9 +-
tests/lcitool/refresh | 21 ++--
9 files changed, 149 insertions(+), 46 deletions(-)
diff --git a/tests/docker/dockerfiles/debian-amd64-cross.docker b/tests/docker/dockerfiles/debian-amd64-cross.docker
index f3ad2205a7..08621879dd 100644
--- a/tests/docker/dockerfiles/debian-amd64-cross.docker
+++ b/tests/docker/dockerfiles/debian-amd64-cross.docker
@@ -1,10 +1,10 @@
# THIS FILE WAS AUTO-GENERATED
#
-# $ lcitool dockerfile --layers all --cross-arch x86_64 debian-12 qemu
+# $ lcitool dockerfile --layers all --cross-arch x86_64 debian-13 qemu
#
# https://gitlab.com/libvirt/libvirt-ci
-FROM docker.io/library/debian:12-slim
+FROM docker.io/library/debian:13-slim
RUN export DEBIAN_FRONTEND=noninteractive && \
apt-get update && \
@@ -48,11 +48,12 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
+ python3-tomli \
python3-venv \
python3-wheel \
python3-yaml \
rpm2cpio \
- rustc-web \
+ rustc \
sed \
socat \
sparse \
@@ -85,7 +86,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get install --no-install-recommends -y \
gcc-x86-64-linux-gnu \
libaio-dev:amd64 \
- libasan6:amd64 \
+ libasan8:amd64 \
libasound2-dev:amd64 \
libattr1-dev:amd64 \
libbpf-dev:amd64 \
diff --git a/tests/docker/dockerfiles/debian-arm64-cross.docker b/tests/docker/dockerfiles/debian-arm64-cross.docker
index 7d42227fa1..725cccbee1 100644
--- a/tests/docker/dockerfiles/debian-arm64-cross.docker
+++ b/tests/docker/dockerfiles/debian-arm64-cross.docker
@@ -1,10 +1,10 @@
# THIS FILE WAS AUTO-GENERATED
#
-# $ lcitool dockerfile --layers all --cross-arch aarch64 debian-12 qemu
+# $ lcitool dockerfile --layers all --cross-arch aarch64 debian-13 qemu
#
# https://gitlab.com/libvirt/libvirt-ci
-FROM docker.io/library/debian:12-slim
+FROM docker.io/library/debian:13-slim
RUN export DEBIAN_FRONTEND=noninteractive && \
apt-get update && \
@@ -48,11 +48,12 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
+ python3-tomli \
python3-venv \
python3-wheel \
python3-yaml \
rpm2cpio \
- rustc-web \
+ rustc \
sed \
socat \
sparse \
@@ -85,7 +86,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get install --no-install-recommends -y \
gcc-aarch64-linux-gnu \
libaio-dev:arm64 \
- libasan6:arm64 \
+ libasan8:arm64 \
libasound2-dev:arm64 \
libattr1-dev:arm64 \
libbpf-dev:arm64 \
diff --git a/tests/docker/dockerfiles/debian-armhf-cross.docker b/tests/docker/dockerfiles/debian-armhf-cross.docker
index 8ad4d2bebf..50f7e0e986 100644
--- a/tests/docker/dockerfiles/debian-armhf-cross.docker
+++ b/tests/docker/dockerfiles/debian-armhf-cross.docker
@@ -1,10 +1,10 @@
# THIS FILE WAS AUTO-GENERATED
#
-# $ lcitool dockerfile --layers all --cross-arch armv7l debian-12 qemu
+# $ lcitool dockerfile --layers all --cross-arch armv7l debian-13 qemu
#
# https://gitlab.com/libvirt/libvirt-ci
-FROM docker.io/library/debian:12-slim
+FROM docker.io/library/debian:13-slim
RUN export DEBIAN_FRONTEND=noninteractive && \
apt-get update && \
@@ -48,11 +48,12 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
+ python3-tomli \
python3-venv \
python3-wheel \
python3-yaml \
rpm2cpio \
- rustc-web \
+ rustc \
sed \
socat \
sparse \
@@ -85,7 +86,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get install --no-install-recommends -y \
gcc-arm-linux-gnueabihf \
libaio-dev:armhf \
- libasan6:armhf \
+ libasan8:armhf \
libasound2-dev:armhf \
libattr1-dev:armhf \
libbpf-dev:armhf \
@@ -107,7 +108,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libgbm-dev:armhf \
libgcrypt20-dev:armhf \
libglib2.0-dev:armhf \
- libglusterfs-dev:armhf \
libgnutls28-dev:armhf \
libgtk-3-dev:armhf \
libgtk-vnc-2.0-dev:armhf \
@@ -127,7 +127,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libpixman-1-dev:armhf \
libpng-dev:armhf \
libpulse-dev:armhf \
- librbd-dev:armhf \
librdmacm-dev:armhf \
libsasl2-dev:armhf \
libsdl2-dev:armhf \
@@ -152,7 +151,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libvirglrenderer-dev:armhf \
libvte-2.91-dev:armhf \
libxdp-dev:armhf \
- libxen-dev:armhf \
libzstd-dev:armhf \
nettle-dev:armhf \
systemtap-sdt-dev:armhf \
diff --git a/tests/docker/dockerfiles/debian-i686-cross.docker b/tests/docker/dockerfiles/debian-i686-cross.docker
index e7e8d8e0f1..f53b77cb62 100644
--- a/tests/docker/dockerfiles/debian-i686-cross.docker
+++ b/tests/docker/dockerfiles/debian-i686-cross.docker
@@ -1,10 +1,10 @@
# THIS FILE WAS AUTO-GENERATED
#
-# $ lcitool dockerfile --layers all --cross-arch i686 debian-12 qemu
+# $ lcitool dockerfile --layers all --cross-arch i686 debian-13 qemu
#
# https://gitlab.com/libvirt/libvirt-ci
-FROM docker.io/library/debian:12-slim
+FROM docker.io/library/debian:13-slim
RUN export DEBIAN_FRONTEND=noninteractive && \
apt-get update && \
@@ -48,11 +48,12 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
+ python3-tomli \
python3-venv \
python3-wheel \
python3-yaml \
rpm2cpio \
- rustc-web \
+ rustc \
sed \
socat \
sparse \
@@ -85,7 +86,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get install --no-install-recommends -y \
gcc-i686-linux-gnu \
libaio-dev:i386 \
- libasan6:i386 \
+ libasan8:i386 \
libasound2-dev:i386 \
libattr1-dev:i386 \
libbpf-dev:i386 \
@@ -107,7 +108,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libgbm-dev:i386 \
libgcrypt20-dev:i386 \
libglib2.0-dev:i386 \
- libglusterfs-dev:i386 \
libgnutls28-dev:i386 \
libgtk-3-dev:i386 \
libgtk-vnc-2.0-dev:i386 \
@@ -127,7 +127,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libpixman-1-dev:i386 \
libpng-dev:i386 \
libpulse-dev:i386 \
- librbd-dev:i386 \
librdmacm-dev:i386 \
libsasl2-dev:i386 \
libsdl2-dev:i386 \
diff --git a/tests/docker/dockerfiles/debian-ppc64el-cross.docker b/tests/docker/dockerfiles/debian-ppc64el-cross.docker
index 97ef64d934..09de265c26 100644
--- a/tests/docker/dockerfiles/debian-ppc64el-cross.docker
+++ b/tests/docker/dockerfiles/debian-ppc64el-cross.docker
@@ -1,10 +1,10 @@
# THIS FILE WAS AUTO-GENERATED
#
-# $ lcitool dockerfile --layers all --cross-arch ppc64le debian-12 qemu
+# $ lcitool dockerfile --layers all --cross-arch ppc64le debian-13 qemu
#
# https://gitlab.com/libvirt/libvirt-ci
-FROM docker.io/library/debian:12-slim
+FROM docker.io/library/debian:13-slim
RUN export DEBIAN_FRONTEND=noninteractive && \
apt-get update && \
@@ -48,11 +48,12 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
+ python3-tomli \
python3-venv \
python3-wheel \
python3-yaml \
rpm2cpio \
- rustc-web \
+ rustc \
sed \
socat \
sparse \
@@ -85,7 +86,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get install --no-install-recommends -y \
gcc-powerpc64le-linux-gnu \
libaio-dev:ppc64el \
- libasan6:ppc64el \
+ libasan8:ppc64el \
libasound2-dev:ppc64el \
libattr1-dev:ppc64el \
libbpf-dev:ppc64el \
diff --git a/tests/docker/dockerfiles/debian-riscv64-cross.docker b/tests/docker/dockerfiles/debian-riscv64-cross.docker
index 79ec37616d..e6c463eff7 100644
--- a/tests/docker/dockerfiles/debian-riscv64-cross.docker
+++ b/tests/docker/dockerfiles/debian-riscv64-cross.docker
@@ -1,6 +1,6 @@
# THIS FILE WAS AUTO-GENERATED
#
-# $ lcitool dockerfile --layers all --cross-arch riscv64 debian-13 qemu-minimal
+# $ lcitool dockerfile --layers all --cross-arch riscv64 debian-13 qemu
#
# https://gitlab.com/libvirt/libvirt-ci
@@ -13,25 +13,57 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get install --no-install-recommends -y \
bash \
bc \
+ bindgen \
bison \
+ bsdextrautils \
+ bzip2 \
ca-certificates \
ccache \
+ dbus \
+ debianutils \
+ diffutils \
+ exuberant-ctags \
findutils \
flex \
gcc \
+ gcovr \
+ gettext \
git \
+ hostname \
+ libclang-rt-dev \
libglib2.0-dev \
+ llvm \
locales \
make \
+ mtools \
+ ncat \
ninja-build \
+ openssh-client \
pkgconf \
python3 \
+ python3-numpy \
+ python3-opencv \
+ python3-pillow \
python3-pip \
python3-setuptools \
+ python3-sphinx \
+ python3-sphinx-rtd-theme \
+ python3-tomli \
python3-venv \
python3-wheel \
+ python3-yaml \
+ rpm2cpio \
+ rustc \
sed \
- tar && \
+ socat \
+ sparse \
+ swtpm \
+ tar \
+ tesseract-ocr \
+ tesseract-ocr-eng \
+ vulkan-tools \
+ xorriso \
+ zstd && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
@@ -56,11 +88,78 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
eatmydata apt-get install --no-install-recommends -y \
gcc-riscv64-linux-gnu \
+ libaio-dev:riscv64 \
+ libasan8:riscv64 \
+ libasound2-dev:riscv64 \
+ libattr1-dev:riscv64 \
+ libbpf-dev:riscv64 \
+ libbrlapi-dev:riscv64 \
+ libbz2-dev:riscv64 \
libc6-dev:riscv64 \
+ libcacard-dev:riscv64 \
+ libcap-ng-dev:riscv64 \
+ libcapstone-dev:riscv64 \
+ libcbor-dev:riscv64 \
+ libcmocka-dev:riscv64 \
+ libcurl4-gnutls-dev:riscv64 \
+ libdaxctl-dev:riscv64 \
+ libdrm-dev:riscv64 \
+ libepoxy-dev:riscv64 \
libfdt-dev:riscv64 \
libffi-dev:riscv64 \
+ libfuse3-dev:riscv64 \
+ libgbm-dev:riscv64 \
+ libgcrypt20-dev:riscv64 \
libglib2.0-dev:riscv64 \
- libpixman-1-dev:riscv64 && \
+ libglusterfs-dev:riscv64 \
+ libgnutls28-dev:riscv64 \
+ libgtk-3-dev:riscv64 \
+ libgtk-vnc-2.0-dev:riscv64 \
+ libibverbs-dev:riscv64 \
+ libiscsi-dev:riscv64 \
+ libjemalloc-dev:riscv64 \
+ libjpeg62-turbo-dev:riscv64 \
+ libjson-c-dev:riscv64 \
+ liblttng-ust-dev:riscv64 \
+ liblzo2-dev:riscv64 \
+ libncursesw5-dev:riscv64 \
+ libnfs-dev:riscv64 \
+ libnuma-dev:riscv64 \
+ libpam0g-dev:riscv64 \
+ libpcre2-dev:riscv64 \
+ libpipewire-0.3-dev:riscv64 \
+ libpixman-1-dev:riscv64 \
+ libpng-dev:riscv64 \
+ libpulse-dev:riscv64 \
+ librbd-dev:riscv64 \
+ librdmacm-dev:riscv64 \
+ libsasl2-dev:riscv64 \
+ libsdl2-dev:riscv64 \
+ libsdl2-image-dev:riscv64 \
+ libseccomp-dev:riscv64 \
+ libselinux1-dev:riscv64 \
+ libslirp-dev:riscv64 \
+ libsnappy-dev:riscv64 \
+ libsndio-dev:riscv64 \
+ libspice-protocol-dev:riscv64 \
+ libspice-server-dev:riscv64 \
+ libssh-dev:riscv64 \
+ libstd-rust-dev:riscv64 \
+ libsystemd-dev:riscv64 \
+ libtasn1-6-dev:riscv64 \
+ libubsan1:riscv64 \
+ libudev-dev:riscv64 \
+ liburing-dev:riscv64 \
+ libusb-1.0-0-dev:riscv64 \
+ libusbredirhost-dev:riscv64 \
+ libvdeplug-dev:riscv64 \
+ libvirglrenderer-dev:riscv64 \
+ libvte-2.91-dev:riscv64 \
+ libxdp-dev:riscv64 \
+ libzstd-dev:riscv64 \
+ nettle-dev:riscv64 \
+ systemtap-sdt-dev:riscv64 \
+ zlib1g-dev:riscv64 && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
@@ -82,6 +181,7 @@ endian = 'little'\n" > /usr/local/share/meson/cross/riscv64-linux-gnu && \
ENV ABI "riscv64-linux-gnu"
ENV MESON_OPTS "--cross-file=riscv64-linux-gnu"
+ENV RUST_TARGET "riscv64gc-unknown-linux-gnu"
ENV QEMU_CONFIGURE_OPTS --cross-prefix=riscv64-linux-gnu-
ENV DEF_TARGET_LIST riscv64-softmmu,riscv64-linux-user
# As a final step configure the user (if env is defined)
diff --git a/tests/docker/dockerfiles/debian-s390x-cross.docker b/tests/docker/dockerfiles/debian-s390x-cross.docker
index 3afe91494d..d7b2ca99ce 100644
--- a/tests/docker/dockerfiles/debian-s390x-cross.docker
+++ b/tests/docker/dockerfiles/debian-s390x-cross.docker
@@ -1,10 +1,10 @@
# THIS FILE WAS AUTO-GENERATED
#
-# $ lcitool dockerfile --layers all --cross-arch s390x debian-12 qemu
+# $ lcitool dockerfile --layers all --cross-arch s390x debian-13 qemu
#
# https://gitlab.com/libvirt/libvirt-ci
-FROM docker.io/library/debian:12-slim
+FROM docker.io/library/debian:13-slim
RUN export DEBIAN_FRONTEND=noninteractive && \
apt-get update && \
@@ -48,11 +48,12 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
+ python3-tomli \
python3-venv \
python3-wheel \
python3-yaml \
rpm2cpio \
- rustc-web \
+ rustc \
sed \
socat \
sparse \
@@ -85,7 +86,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get install --no-install-recommends -y \
gcc-s390x-linux-gnu \
libaio-dev:s390x \
- libasan6:s390x \
+ libasan8:s390x \
libasound2-dev:s390x \
libattr1-dev:s390x \
libbpf-dev:s390x \
diff --git a/tests/docker/dockerfiles/debian.docker b/tests/docker/dockerfiles/debian.docker
index f68fcc83a9..2696cf2167 100644
--- a/tests/docker/dockerfiles/debian.docker
+++ b/tests/docker/dockerfiles/debian.docker
@@ -1,10 +1,10 @@
# THIS FILE WAS AUTO-GENERATED
#
-# $ lcitool dockerfile --layers all debian-12 qemu
+# $ lcitool dockerfile --layers all debian-13 qemu
#
# https://gitlab.com/libvirt/libvirt-ci
-FROM docker.io/library/debian:12-slim
+FROM docker.io/library/debian:13-slim
RUN export DEBIAN_FRONTEND=noninteractive && \
apt-get update && \
@@ -32,7 +32,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
git \
hostname \
libaio-dev \
- libasan6 \
+ libasan8 \
libasound2-dev \
libattr1-dev \
libbpf-dev \
@@ -121,11 +121,12 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-setuptools \
python3-sphinx \
python3-sphinx-rtd-theme \
+ python3-tomli \
python3-venv \
python3-wheel \
python3-yaml \
rpm2cpio \
- rustc-web \
+ rustc \
sed \
socat \
sparse \
diff --git a/tests/lcitool/refresh b/tests/lcitool/refresh
index 6f98a91277..5c62cdde4a 100755
--- a/tests/lcitool/refresh
+++ b/tests/lcitool/refresh
@@ -105,7 +105,7 @@ alpine_extras = [
# Netmap still needs to be manually built as it is yet to be packaged
# into a distro. We also add cscope and gtags which are used in the CI
# test
-debian12_extras = [
+debian13_extras = [
"# netmap/cscope/global\n",
"RUN DEBIAN_FRONTEND=noninteractive eatmydata \\\n",
" apt install -y --no-install-recommends \\\n",
@@ -175,8 +175,8 @@ try:
generate_dockerfile("alpine", "alpine-321",
trailer="".join(alpine_extras))
generate_dockerfile("centos9", "centos-stream-9")
- generate_dockerfile("debian", "debian-12",
- trailer="".join(debian12_extras))
+ generate_dockerfile("debian", "debian-13",
+ trailer="".join(debian13_extras))
generate_dockerfile("fedora", "fedora-41")
generate_dockerfile("opensuse-leap", "opensuse-leap-15")
generate_dockerfile("ubuntu2204", "ubuntu-2204",
@@ -191,30 +191,32 @@ try:
#
# Cross compiling builds
#
- generate_dockerfile("debian-amd64-cross", "debian-12",
+ generate_dockerfile("debian-amd64-cross", "debian-13",
cross="x86_64",
trailer=cross_build("x86_64-linux-gnu-",
"x86_64-softmmu,"
"x86_64-linux-user,"
"i386-softmmu,i386-linux-user"))
- generate_dockerfile("debian-arm64-cross", "debian-12",
+ generate_dockerfile("debian-arm64-cross", "debian-13",
cross="aarch64",
trailer=cross_build("aarch64-linux-gnu-",
"aarch64-softmmu,aarch64-linux-user"))
- generate_dockerfile("debian-armhf-cross", "debian-12",
+ generate_dockerfile("debian-armhf-cross", "debian-13",
cross="armv7l",
trailer=cross_build("arm-linux-gnueabihf-",
"arm-softmmu,arm-linux-user"))
- generate_dockerfile("debian-i686-cross", "debian-12",
+ generate_dockerfile("debian-i686-cross", "debian-13",
cross="i686",
trailer=cross_build("i686-linux-gnu-",
"x86_64-softmmu,"
"x86_64-linux-user,"
"i386-softmmu,i386-linux-user"))
+ # mips no longer supported in debian-13
+ # https://www.debian.org/releases/trixie/release-notes/issues.html#mips-architectures-removed
generate_dockerfile("debian-mips64el-cross", "debian-12",
cross="mips64el",
trailer=cross_build("mips64el-linux-gnuabi64-",
@@ -225,7 +227,7 @@ try:
trailer=cross_build("mipsel-linux-gnu-",
"mipsel-softmmu,mipsel-linux-user"))
- generate_dockerfile("debian-ppc64el-cross", "debian-12",
+ generate_dockerfile("debian-ppc64el-cross", "debian-13",
cross="ppc64le",
trailer=cross_build("powerpc64le-linux-gnu-",
"ppc64-softmmu,ppc64-linux-user"))
@@ -233,12 +235,11 @@ try:
# while not yet a release architecture the packages are still
# build while part of testing
generate_dockerfile("debian-riscv64-cross", "debian-13",
- project="qemu-minimal",
cross="riscv64",
trailer=cross_build("riscv64-linux-gnu-",
"riscv64-softmmu,riscv64-linux-user"))
- generate_dockerfile("debian-s390x-cross", "debian-12",
+ generate_dockerfile("debian-s390x-cross", "debian-13",
cross="s390x",
trailer=cross_build("s390x-linux-gnu-",
"s390x-softmmu,s390x-linux-user"))
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 17/23] tests/docker: add ENABLE_RUST environment
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (15 preceding siblings ...)
2025-09-30 15:37 ` [PULL 16/23] tests/lcitool: update to debian13 marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 18/23] tests/lcitool: enable rust & refresh marcandre.lureau
` (6 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <20250924120426.2158655-18-marcandre.lureau@redhat.com>
---
tests/docker/common.rc | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/tests/docker/common.rc b/tests/docker/common.rc
index d202c0c666..752f4f3aed 100755
--- a/tests/docker/common.rc
+++ b/tests/docker/common.rc
@@ -21,6 +21,14 @@ else
DEF_TARGET_LIST=${DEF_TARGET_LIST:-"x86_64-softmmu,aarch64-softmmu"}
fi
+enable_rust=""
+if [ "$ENABLE_RUST" = "1" ]; then
+ enable_rust="--enable-rust"
+ if [ -n "$RUST_TARGET" ]; then
+ enable_rust="$enable_rust --rust-target-triple=$RUST_TARGET"
+ fi
+fi
+
requires_binary()
{
found=0
@@ -46,6 +54,7 @@ configure_qemu()
${TARGET_LIST:+--target-list=${TARGET_LIST}} \
--prefix=$INSTALL_DIR \
$QEMU_CONFIGURE_OPTS $EXTRA_CONFIGURE_OPTS \
+ $enable_rust \
$@"
echo "Configure options:"
echo $config_opts
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 18/23] tests/lcitool: enable rust & refresh
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (16 preceding siblings ...)
2025-09-30 15:37 ` [PULL 17/23] tests/docker: add ENABLE_RUST environment marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 19/23] configure: set the meson executable suffix/ext marcandre.lureau
` (5 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Enable Rust on various distro images: alpine, centos, debian, fedora,
opensuse.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-ID: <20250924120426.2158655-19-marcandre.lureau@redhat.com>
---
tests/docker/dockerfiles/alpine.docker | 2 ++
tests/docker/dockerfiles/centos9.docker | 2 ++
tests/docker/dockerfiles/debian-amd64-cross.docker | 2 ++
tests/docker/dockerfiles/debian-arm64-cross.docker | 2 ++
tests/docker/dockerfiles/debian-armhf-cross.docker | 2 ++
tests/docker/dockerfiles/debian-i686-cross.docker | 2 ++
.../dockerfiles/debian-mips64el-cross.docker | 2 ++
.../docker/dockerfiles/debian-mipsel-cross.docker | 2 ++
.../docker/dockerfiles/debian-ppc64el-cross.docker | 2 ++
.../docker/dockerfiles/debian-riscv64-cross.docker | 2 ++
tests/docker/dockerfiles/debian-s390x-cross.docker | 2 ++
tests/docker/dockerfiles/debian.docker | 2 ++
.../docker/dockerfiles/fedora-rust-nightly.docker | 2 ++
tests/docker/dockerfiles/fedora.docker | 2 ++
tests/docker/dockerfiles/opensuse-leap.docker | 2 ++
tests/lcitool/refresh | 14 +++++++++++---
16 files changed, 41 insertions(+), 3 deletions(-)
diff --git a/tests/docker/dockerfiles/alpine.docker b/tests/docker/dockerfiles/alpine.docker
index b50fbc3dba..52adf9ccbb 100644
--- a/tests/docker/dockerfiles/alpine.docker
+++ b/tests/docker/dockerfiles/alpine.docker
@@ -138,3 +138,5 @@ ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
+
+ENV ENABLE_RUST 1
diff --git a/tests/docker/dockerfiles/centos9.docker b/tests/docker/dockerfiles/centos9.docker
index e7fc688ee9..0674d77826 100644
--- a/tests/docker/dockerfiles/centos9.docker
+++ b/tests/docker/dockerfiles/centos9.docker
@@ -142,3 +142,5 @@ ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
+
+ENV ENABLE_RUST 1
diff --git a/tests/docker/dockerfiles/debian-amd64-cross.docker b/tests/docker/dockerfiles/debian-amd64-cross.docker
index 08621879dd..7f4674400d 100644
--- a/tests/docker/dockerfiles/debian-amd64-cross.docker
+++ b/tests/docker/dockerfiles/debian-amd64-cross.docker
@@ -188,3 +188,5 @@ ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
+
+ENV ENABLE_RUST 1
diff --git a/tests/docker/dockerfiles/debian-arm64-cross.docker b/tests/docker/dockerfiles/debian-arm64-cross.docker
index 725cccbee1..c7cd54ee5c 100644
--- a/tests/docker/dockerfiles/debian-arm64-cross.docker
+++ b/tests/docker/dockerfiles/debian-arm64-cross.docker
@@ -187,3 +187,5 @@ ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
+
+ENV ENABLE_RUST 1
diff --git a/tests/docker/dockerfiles/debian-armhf-cross.docker b/tests/docker/dockerfiles/debian-armhf-cross.docker
index 50f7e0e986..627d41c6de 100644
--- a/tests/docker/dockerfiles/debian-armhf-cross.docker
+++ b/tests/docker/dockerfiles/debian-armhf-cross.docker
@@ -184,3 +184,5 @@ ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
+
+ENV ENABLE_RUST 1
diff --git a/tests/docker/dockerfiles/debian-i686-cross.docker b/tests/docker/dockerfiles/debian-i686-cross.docker
index f53b77cb62..4e8b3a8293 100644
--- a/tests/docker/dockerfiles/debian-i686-cross.docker
+++ b/tests/docker/dockerfiles/debian-i686-cross.docker
@@ -184,3 +184,5 @@ ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
+
+ENV ENABLE_RUST 1
diff --git a/tests/docker/dockerfiles/debian-mips64el-cross.docker b/tests/docker/dockerfiles/debian-mips64el-cross.docker
index cca04a4594..6e88777f76 100644
--- a/tests/docker/dockerfiles/debian-mips64el-cross.docker
+++ b/tests/docker/dockerfiles/debian-mips64el-cross.docker
@@ -183,3 +183,5 @@ ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
+
+ENV ENABLE_RUST 1
diff --git a/tests/docker/dockerfiles/debian-mipsel-cross.docker b/tests/docker/dockerfiles/debian-mipsel-cross.docker
index 59c6f92248..5f4e3fa963 100644
--- a/tests/docker/dockerfiles/debian-mipsel-cross.docker
+++ b/tests/docker/dockerfiles/debian-mipsel-cross.docker
@@ -183,3 +183,5 @@ ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
+
+ENV ENABLE_RUST 1
diff --git a/tests/docker/dockerfiles/debian-ppc64el-cross.docker b/tests/docker/dockerfiles/debian-ppc64el-cross.docker
index 09de265c26..dfa690616d 100644
--- a/tests/docker/dockerfiles/debian-ppc64el-cross.docker
+++ b/tests/docker/dockerfiles/debian-ppc64el-cross.docker
@@ -186,3 +186,5 @@ ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
+
+ENV ENABLE_RUST 1
diff --git a/tests/docker/dockerfiles/debian-riscv64-cross.docker b/tests/docker/dockerfiles/debian-riscv64-cross.docker
index e6c463eff7..09b2953f32 100644
--- a/tests/docker/dockerfiles/debian-riscv64-cross.docker
+++ b/tests/docker/dockerfiles/debian-riscv64-cross.docker
@@ -189,3 +189,5 @@ ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
+
+ENV ENABLE_RUST 1
diff --git a/tests/docker/dockerfiles/debian-s390x-cross.docker b/tests/docker/dockerfiles/debian-s390x-cross.docker
index d7b2ca99ce..09a78c15ba 100644
--- a/tests/docker/dockerfiles/debian-s390x-cross.docker
+++ b/tests/docker/dockerfiles/debian-s390x-cross.docker
@@ -185,3 +185,5 @@ ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
+
+ENV ENABLE_RUST 1
diff --git a/tests/docker/dockerfiles/debian.docker b/tests/docker/dockerfiles/debian.docker
index 2696cf2167..8dd893be4b 100644
--- a/tests/docker/dockerfiles/debian.docker
+++ b/tests/docker/dockerfiles/debian.docker
@@ -175,3 +175,5 @@ ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
+
+ENV ENABLE_RUST 1
diff --git a/tests/docker/dockerfiles/fedora-rust-nightly.docker b/tests/docker/dockerfiles/fedora-rust-nightly.docker
index 167246f0f5..7d31c9f406 100644
--- a/tests/docker/dockerfiles/fedora-rust-nightly.docker
+++ b/tests/docker/dockerfiles/fedora-rust-nightly.docker
@@ -185,3 +185,5 @@ ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
+
+ENV ENABLE_RUST 1
diff --git a/tests/docker/dockerfiles/fedora.docker b/tests/docker/dockerfiles/fedora.docker
index 56a1ad8a18..891a740fcb 100644
--- a/tests/docker/dockerfiles/fedora.docker
+++ b/tests/docker/dockerfiles/fedora.docker
@@ -162,3 +162,5 @@ ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
+
+ENV ENABLE_RUST 1
diff --git a/tests/docker/dockerfiles/opensuse-leap.docker b/tests/docker/dockerfiles/opensuse-leap.docker
index d71dbc30c7..75e1747780 100644
--- a/tests/docker/dockerfiles/opensuse-leap.docker
+++ b/tests/docker/dockerfiles/opensuse-leap.docker
@@ -148,3 +148,5 @@ ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
+
+ENV ENABLE_RUST 1
diff --git a/tests/lcitool/refresh b/tests/lcitool/refresh
index 5c62cdde4a..645959318a 100755
--- a/tests/lcitool/refresh
+++ b/tests/lcitool/refresh
@@ -63,7 +63,8 @@ add_user_mapping = [
" id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi\n"
]
-def generate_dockerfile(host, target, project="qemu", cross=None, trailer=None):
+def generate_dockerfile(host, target, project="qemu", cross=None, trailer=None,
+ enable_rust=True):
filename = Path(src_dir, "tests", "docker", "dockerfiles", host + ".docker")
cmd = lcitool_cmd + ["dockerfile"]
if cross is not None:
@@ -75,6 +76,8 @@ def generate_dockerfile(host, target, project="qemu", cross=None, trailer=None):
else:
trailer = "\n".join(add_user_mapping)
+ if enable_rust:
+ trailer += "\nENV ENABLE_RUST 1\n"
generate(filename, cmd, trailer)
@@ -180,7 +183,9 @@ try:
generate_dockerfile("fedora", "fedora-41")
generate_dockerfile("opensuse-leap", "opensuse-leap-15")
generate_dockerfile("ubuntu2204", "ubuntu-2204",
- trailer="".join(ubuntu2204_rust_extras))
+ trailer="".join(ubuntu2204_rust_extras),
+ # https://bugs.launchpad.net/ubuntu/+source/rustc-1.83/+bug/2120318
+ enable_rust=False)
#
# Non-fatal Rust-enabled build
@@ -248,7 +253,10 @@ try:
project='qemu,qemu-win-installer',
cross="mingw64",
trailer=cross_build("x86_64-w64-mingw32-",
- "x86_64-softmmu"))
+ "x86_64-softmmu"),
+ # linking with rust is buggy:
+ # https://github.com/mesonbuild/meson/pull/14991
+ enable_rust=False)
#
# Cirrus packages lists for GitLab
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 19/23] configure: set the meson executable suffix/ext
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (17 preceding siblings ...)
2025-09-30 15:37 ` [PULL 18/23] tests/lcitool: enable rust & refresh marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 20/23] tests/freebsd: enable Rust marcandre.lureau
` (4 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
The 'rustfmt' target runs meson: it needs the correct path with
extension on Windows.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <20250924120426.2158655-20-marcandre.lureau@redhat.com>
---
configure | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/configure b/configure
index bf964947b8..78445cbb4b 100755
--- a/configure
+++ b/configure
@@ -1000,7 +1000,19 @@ $mkvenv ensuregroup --dir "${source_path}/python/wheels" \
# We ignore PATH completely here: we want to use the venv's Meson
# *exclusively*.
-meson="$(cd pyvenv/bin; pwd)/meson"
+# for msys2
+get_pwd() {
+ if pwd -W >/dev/null 2>&1; then
+ pwd -W
+ else
+ pwd
+ fi
+}
+
+meson="$(cd pyvenv/bin; get_pwd)/meson"
+if [ -f "$meson$EXESUF" ]; then
+ meson="$meson$EXESUF"
+fi
# Conditionally ensure Sphinx is installed.
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 20/23] tests/freebsd: enable Rust
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (18 preceding siblings ...)
2025-09-30 15:37 ` [PULL 19/23] configure: set the meson executable suffix/ext marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 21/23] meson: rust-bindgen limit allowlist-file to srcdir/include marcandre.lureau
` (3 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <20250924120426.2158655-21-marcandre.lureau@redhat.com>
---
.gitlab-ci.d/cirrus.yml | 2 +-
tests/vm/freebsd | 4 +++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/.gitlab-ci.d/cirrus.yml b/.gitlab-ci.d/cirrus.yml
index 75b611418e..13a0bf5bb9 100644
--- a/.gitlab-ci.d/cirrus.yml
+++ b/.gitlab-ci.d/cirrus.yml
@@ -42,7 +42,7 @@ x64-freebsd-14-build:
CIRRUS_VM_RAM: 8G
UPDATE_COMMAND: pkg update; pkg upgrade -y
INSTALL_COMMAND: pkg install -y
- CONFIGURE_ARGS: --target-list-exclude=arm-softmmu,i386-softmmu,microblaze-softmmu,mips64el-softmmu,mipsel-softmmu,mips-softmmu,ppc-softmmu,sh4eb-softmmu,xtensa-softmmu
+ CONFIGURE_ARGS: --target-list-exclude=arm-softmmu,i386-softmmu,microblaze-softmmu,mips64el-softmmu,mipsel-softmmu,mips-softmmu,ppc-softmmu,sh4eb-softmmu,xtensa-softmmu --enable-rust
TEST_TARGETS: check
aarch64-macos-build:
diff --git a/tests/vm/freebsd b/tests/vm/freebsd
index 2e96c9eba5..ea09b21fbc 100755
--- a/tests/vm/freebsd
+++ b/tests/vm/freebsd
@@ -40,7 +40,9 @@ class FreeBSDVM(basevm.BaseVM):
tar -xf /dev/vtbd1;
cd ../build;
../src/configure --extra-ldflags=-L/usr/local/lib \
- --extra-cflags=-I/usr/local/include {configure_opts};
+ --extra-cflags=-I/usr/local/include \
+ --enable-rust \
+ {configure_opts};
gmake --output-sync -j{jobs} {target} {verbose};
"""
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 21/23] meson: rust-bindgen limit allowlist-file to srcdir/include
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (19 preceding siblings ...)
2025-09-30 15:37 ` [PULL 20/23] tests/freebsd: enable Rust marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 22/23] build-sys: deprecate mips host marcandre.lureau
` (2 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
gitlab CI restricts usage of directories for the build environment and
cache. Msys64 is installed under project root ($srcdir/msys64). This
confuses rust-bindgen allowlist-file which will generate bindings for
all the system include headers under msys64/.
blocklist-file is also too strict, as it prevents generating all the
recursively dependent types coming from system includes.
Instead, let's not use allowlist-file from the project root,
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-ID: <20250924120426.2158655-22-marcandre.lureau@redhat.com>
---
meson.build | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/meson.build b/meson.build
index 14e626aa1e..0d0bf9ee46 100644
--- a/meson.build
+++ b/meson.build
@@ -4238,8 +4238,7 @@ if have_rust
'--no-layout-tests',
'--no-prepend-enum-name',
'--allowlist-file', meson.project_source_root() + '/include/.*',
- '--allowlist-file', meson.project_source_root() + '/.*',
- '--allowlist-file', meson.project_build_root() + '/.*'
+ '--allowlist-file', meson.project_build_root() + '/.*',
]
if not rustfmt.found()
if bindgen.version().version_compare('<0.65.0')
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 22/23] build-sys: deprecate mips host
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (20 preceding siblings ...)
2025-09-30 15:37 ` [PULL 21/23] meson: rust-bindgen limit allowlist-file to srcdir/include marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-09-30 15:37 ` [PULL 23/23] build-sys: pass -fvisibility=default for wasm bindgen marcandre.lureau
2025-10-01 13:29 ` [PULL 00/23] Rust ci patches Richard Henderson
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-ID: <20250924120426.2158655-26-marcandre.lureau@redhat.com>
---
docs/about/build-platforms.rst | 2 --
docs/about/deprecated.rst | 9 +++------
meson.build | 8 ++++++++
3 files changed, 11 insertions(+), 8 deletions(-)
diff --git a/docs/about/build-platforms.rst b/docs/about/build-platforms.rst
index 0160d3adb8..798cb4631d 100644
--- a/docs/about/build-platforms.rst
+++ b/docs/about/build-platforms.rst
@@ -44,8 +44,6 @@ Those hosts are officially supported, with various accelerators:
- Accelerators
* - Arm
- hvf (64 bit only), kvm (64 bit only), tcg, xen
- * - MIPS (64 bit little endian only)
- - kvm, tcg
* - PPC
- kvm, tcg
* - RISC-V
diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst
index b8d60c1a90..67e527740c 100644
--- a/docs/about/deprecated.rst
+++ b/docs/about/deprecated.rst
@@ -172,8 +172,8 @@ This argument has always been ignored.
Host Architectures
------------------
-Big endian MIPS since 7.2; 32-bit little endian MIPS since 9.2
-''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+Big endian MIPS since 7.2; 32-bit little endian MIPS since 9.2, MIPS since 11.0
+'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
As Debian 10 ("Buster") moved into LTS the big endian 32 bit version of
MIPS moved out of support making it hard to maintain our
@@ -181,10 +181,7 @@ cross-compilation CI tests of the architecture. As we no longer have
CI coverage support may bitrot away before the deprecation process
completes.
-Likewise, the little endian variant of 32 bit MIPS is not supported by
-Debian 13 ("Trixie") and newer.
-
-64 bit little endian MIPS is still a supported host architecture.
+Likewise, MIPS is not supported by Debian 13 ("Trixie") and newer.
System emulation on 32-bit x86 hosts (since 8.0)
''''''''''''''''''''''''''''''''''''''''''''''''
diff --git a/meson.build b/meson.build
index 0d0bf9ee46..762c533a31 100644
--- a/meson.build
+++ b/meson.build
@@ -5040,6 +5040,14 @@ elif host_long_bits < 64
message()
message('Support for 32-bit CPU host architecture ' + cpu + ' is going')
message('to be dropped in a future QEMU release.')
+elif host_arch == 'mips'
+ message()
+ warning('DEPRECATED HOST CPU')
+ message()
+ message('Support for CPU host architecture ' + cpu + ' is going to be')
+ message('dropped as soon as the QEMU project stops supporting Debian 12')
+ message('("Bookworm"). Going forward, the QEMU project will not guarantee')
+ message('that QEMU will compile or work on this host CPU.')
endif
if not supported_oses.contains(host_os)
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PULL 23/23] build-sys: pass -fvisibility=default for wasm bindgen
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (21 preceding siblings ...)
2025-09-30 15:37 ` [PULL 22/23] build-sys: deprecate mips host marcandre.lureau
@ 2025-09-30 15:37 ` marcandre.lureau
2025-10-01 13:29 ` [PULL 00/23] Rust ci patches Richard Henderson
23 siblings, 0 replies; 25+ messages in thread
From: marcandre.lureau @ 2025-09-30 15:37 UTC (permalink / raw)
To: qemu-devel
Cc: devel, Manos Pitsidianakis, Jiaxun Yang, Kohei Tokunaga,
Marc-André Lureau, qemu-rust, Alex Bennée,
Paolo Bonzini, Daniel P. Berrangé,
Philippe Mathieu-Daudé, Li-Wen Hsu, Warner Losh, Kyle Evans,
Ed Maste, Thomas Huth
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Otherwise, no functions are generated:
https://github.com/rust-lang/rust-bindgen/issues/2989
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
Message-ID: <20250924120426.2158655-27-marcandre.lureau@redhat.com>
---
meson.build | 4 ++++
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 +
9 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/meson.build b/meson.build
index 762c533a31..55c8202a4d 100644
--- a/meson.build
+++ b/meson.build
@@ -4256,6 +4256,10 @@ if have_rust
else
bindgen_args_common += ['--merge-extern-blocks']
endif
+ bindgen_c_args = []
+ if host_arch == 'wasm32'
+ bindgen_c_args += ['-fvisibility=default']
+ endif
subdir('rust')
endif
diff --git a/rust/bql/meson.build b/rust/bql/meson.build
index 7214d94408..bc51c7f160 100644
--- a/rust/bql/meson.build
+++ b/rust/bql/meson.build
@@ -21,6 +21,7 @@ _bql_bindings_inc_rs = rust.bindgen(
include_directories: bindings_incdir,
bindgen_version: ['>=0.60.0'],
args: bindgen_args_common,
+ c_args: bindgen_c_args,
)
_bql_rs = static_library(
diff --git a/rust/chardev/meson.build b/rust/chardev/meson.build
index 370895c111..e7ce02b3bc 100644
--- a/rust/chardev/meson.build
+++ b/rust/chardev/meson.build
@@ -20,6 +20,7 @@ _chardev_bindings_inc_rs = rust.bindgen(
include_directories: bindings_incdir,
bindgen_version: ['>=0.60.0'],
args: bindgen_args_common + _chardev_bindgen_args,
+ c_args: bindgen_c_args,
)
_chardev_rs = static_library(
diff --git a/rust/hw/char/pl011/meson.build b/rust/hw/char/pl011/meson.build
index ffdc8af53f..a33f32906e 100644
--- a/rust/hw/char/pl011/meson.build
+++ b/rust/hw/char/pl011/meson.build
@@ -12,6 +12,7 @@ _libpl011_bindings_inc_rs = rust.bindgen(
include_directories: bindings_incdir,
bindgen_version: ['>=0.60.0'],
args: bindgen_args_common,
+ c_args: bindgen_c_args,
)
_libpl011_rs = static_library(
diff --git a/rust/hw/core/meson.build b/rust/hw/core/meson.build
index 81d8c77f9a..e1ae95ed61 100644
--- a/rust/hw/core/meson.build
+++ b/rust/hw/core/meson.build
@@ -41,6 +41,7 @@ _hwcore_bindings_inc_rs = rust.bindgen(
include_directories: bindings_incdir,
bindgen_version: ['>=0.60.0'],
args: bindgen_args_common + _hwcore_bindgen_args,
+ c_args: bindgen_c_args,
)
_hwcore_rs = static_library(
diff --git a/rust/migration/meson.build b/rust/migration/meson.build
index 2a49bd1633..ddf5c2f51d 100644
--- a/rust/migration/meson.build
+++ b/rust/migration/meson.build
@@ -22,7 +22,8 @@ _migration_bindings_inc_rs = rust.bindgen(
include_directories: bindings_incdir,
bindgen_version: ['>=0.60.0'],
args: bindgen_args_common + _migration_bindgen_args,
- )
+ c_args: bindgen_c_args,
+)
_migration_rs = static_library(
'migration',
diff --git a/rust/qom/meson.build b/rust/qom/meson.build
index 21e12148da..71fdac696c 100644
--- a/rust/qom/meson.build
+++ b/rust/qom/meson.build
@@ -12,6 +12,7 @@ _qom_bindings_inc_rs = rust.bindgen(
include_directories: bindings_incdir,
bindgen_version: ['>=0.60.0'],
args: bindgen_args_common,
+ c_args: bindgen_c_args,
)
_qom_rs = static_library(
diff --git a/rust/system/meson.build b/rust/system/meson.build
index 3ec140de01..0859f39745 100644
--- a/rust/system/meson.build
+++ b/rust/system/meson.build
@@ -20,6 +20,7 @@ _system_bindings_inc_rs = rust.bindgen(
include_directories: bindings_incdir,
bindgen_version: ['>=0.60.0'],
args: bindgen_args_common + _system_bindgen_args,
+ c_args: bindgen_c_args,
)
_system_rs = static_library(
diff --git a/rust/util/meson.build b/rust/util/meson.build
index 7ca69939ce..094b43355a 100644
--- a/rust/util/meson.build
+++ b/rust/util/meson.build
@@ -22,6 +22,7 @@ _util_bindings_inc_rs = rust.bindgen(
include_directories: bindings_incdir,
bindgen_version: ['>=0.60.0'],
args: bindgen_args_common + _util_bindgen_args,
+ c_args: bindgen_c_args,
)
_util_rs = static_library(
--
2.51.0
^ permalink raw reply related [flat|nested] 25+ messages in thread
* Re: [PULL 00/23] Rust ci patches
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
` (22 preceding siblings ...)
2025-09-30 15:37 ` [PULL 23/23] build-sys: pass -fvisibility=default for wasm bindgen marcandre.lureau
@ 2025-10-01 13:29 ` Richard Henderson
23 siblings, 0 replies; 25+ messages in thread
From: Richard Henderson @ 2025-10-01 13:29 UTC (permalink / raw)
To: qemu-devel
On 9/30/25 08:37, marcandre.lureau@redhat.com wrote:
> From: Marc-André Lureau<marcandre.lureau@redhat.com>
>
> The following changes since commit 85a3fd1c4cb3ba7a9eb291c1e222f935e922d1f7:
>
> Merge tag 'pull-aspeed-20250929' ofhttps://github.com/legoater/qemu into staging (2025-09-29 10:52:48 -0700)
>
> are available in the Git repository at:
>
> https://gitlab.com/marcandre.lureau/qemu.git tags/rust-ci-pull-request
>
> for you to fetch changes up to 582a39beea414c092dbd8c178f3eff3a718eee77:
>
> build-sys: pass -fvisibility=default for wasm bindgen (2025-09-30 19:33:25 +0400)
>
> ----------------------------------------------------------------
> CI/build-sys fixes for Rust
>
> Collect CI/build-sys patches related to Rust.
Applied, thanks. Please update https://wiki.qemu.org/ChangeLog/10.2 as appropriate.
r~
^ permalink raw reply [flat|nested] 25+ messages in thread
end of thread, other threads:[~2025-10-01 13:31 UTC | newest]
Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-30 15:37 [PULL 00/23] Rust ci patches marcandre.lureau
2025-09-30 15:37 ` [PULL 01/23] build-sys: require -lrt when no shm_open() in std libs marcandre.lureau
2025-09-30 15:37 ` [PULL 02/23] gitlab-ci: fix 'needs' property type must be array marcandre.lureau
2025-09-30 15:37 ` [PULL 03/23] scripts/archive-source: speed up downloading subprojects marcandre.lureau
2025-09-30 15:37 ` [PULL 04/23] scripts/archive-source: silence subprojects downloads marcandre.lureau
2025-09-30 15:37 ` [PULL 05/23] scripts/archive-source: use a bash array marcandre.lureau
2025-09-30 15:37 ` [PULL 06/23] configure: fix rust meson configuration marcandre.lureau
2025-09-30 15:37 ` [PULL 07/23] configure: set the bindgen cross target marcandre.lureau
2025-09-30 15:37 ` [PULL 08/23] tests/docker/common: print errors to stderr marcandre.lureau
2025-09-30 15:37 ` [PULL 09/23] tests/docker: use fully qualified image name for emsdk marcandre.lureau
2025-09-30 15:37 ` [PULL 10/23] tests/docker/common: print meson log on configure failure marcandre.lureau
2025-09-30 15:37 ` [PULL 11/23] build-sys: cfi_debug and safe_stack are not compatible marcandre.lureau
2025-09-30 15:37 ` [PULL 12/23] lcitool: update, switch to f41 marcandre.lureau
2025-09-30 15:37 ` [PULL 13/23] lcitool/qemu: include libclang-rt for TSAN marcandre.lureau
2025-09-30 15:37 ` [PULL 14/23] lcitool/alpine: workaround bindgen issue marcandre.lureau
2025-09-30 15:37 ` [PULL 15/23] tests/lcitool: add missing rust-std dep marcandre.lureau
2025-09-30 15:37 ` [PULL 16/23] tests/lcitool: update to debian13 marcandre.lureau
2025-09-30 15:37 ` [PULL 17/23] tests/docker: add ENABLE_RUST environment marcandre.lureau
2025-09-30 15:37 ` [PULL 18/23] tests/lcitool: enable rust & refresh marcandre.lureau
2025-09-30 15:37 ` [PULL 19/23] configure: set the meson executable suffix/ext marcandre.lureau
2025-09-30 15:37 ` [PULL 20/23] tests/freebsd: enable Rust marcandre.lureau
2025-09-30 15:37 ` [PULL 21/23] meson: rust-bindgen limit allowlist-file to srcdir/include marcandre.lureau
2025-09-30 15:37 ` [PULL 22/23] build-sys: deprecate mips host marcandre.lureau
2025-09-30 15:37 ` [PULL 23/23] build-sys: pass -fvisibility=default for wasm bindgen marcandre.lureau
2025-10-01 13:29 ` [PULL 00/23] Rust ci patches Richard Henderson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).