[libvirt PATCH] ci: Regenerate files
by Andrea Bolognani
This unbreaks the various $CROSS-$NAME-local-env jobs.
Signed-off-by: Andrea Bolognani <abologna(a)redhat.com>
---
Test pipeline: https://gitlab.com/abologna/libvirt/-/pipelines/822671796
ci/buildenv/debian-11-cross-aarch64.sh | 4 ++--
ci/buildenv/debian-11-cross-armv6l.sh | 4 ++--
ci/buildenv/debian-11-cross-armv7l.sh | 4 ++--
ci/buildenv/debian-11-cross-i686.sh | 4 ++--
ci/buildenv/debian-11-cross-mips64el.sh | 4 ++--
ci/buildenv/debian-11-cross-mipsel.sh | 4 ++--
ci/buildenv/debian-11-cross-ppc64le.sh | 4 ++--
ci/buildenv/debian-11-cross-s390x.sh | 4 ++--
ci/buildenv/debian-sid-cross-aarch64.sh | 4 ++--
ci/buildenv/debian-sid-cross-armv6l.sh | 4 ++--
ci/buildenv/debian-sid-cross-armv7l.sh | 4 ++--
ci/buildenv/debian-sid-cross-i686.sh | 4 ++--
ci/buildenv/debian-sid-cross-mips64el.sh | 4 ++--
ci/buildenv/debian-sid-cross-mipsel.sh | 4 ++--
ci/buildenv/debian-sid-cross-ppc64le.sh | 4 ++--
ci/buildenv/debian-sid-cross-s390x.sh | 4 ++--
ci/containers/debian-11-cross-aarch64.Dockerfile | 4 ++--
ci/containers/debian-11-cross-armv6l.Dockerfile | 4 ++--
ci/containers/debian-11-cross-armv7l.Dockerfile | 4 ++--
ci/containers/debian-11-cross-i686.Dockerfile | 4 ++--
ci/containers/debian-11-cross-mips64el.Dockerfile | 4 ++--
ci/containers/debian-11-cross-mipsel.Dockerfile | 4 ++--
ci/containers/debian-11-cross-ppc64le.Dockerfile | 4 ++--
ci/containers/debian-11-cross-s390x.Dockerfile | 4 ++--
ci/containers/debian-sid-cross-aarch64.Dockerfile | 4 ++--
ci/containers/debian-sid-cross-armv6l.Dockerfile | 4 ++--
ci/containers/debian-sid-cross-armv7l.Dockerfile | 4 ++--
ci/containers/debian-sid-cross-i686.Dockerfile | 4 ++--
ci/containers/debian-sid-cross-mips64el.Dockerfile | 4 ++--
ci/containers/debian-sid-cross-mipsel.Dockerfile | 4 ++--
ci/containers/debian-sid-cross-ppc64le.Dockerfile | 4 ++--
ci/containers/debian-sid-cross-s390x.Dockerfile | 4 ++--
ci/containers/fedora-36.Dockerfile | 4 ++--
ci/containers/fedora-37-cross-mingw32.Dockerfile | 4 ++--
ci/containers/fedora-37-cross-mingw64.Dockerfile | 4 ++--
ci/containers/fedora-37.Dockerfile | 4 ++--
ci/containers/fedora-rawhide-cross-mingw32.Dockerfile | 4 ++--
ci/containers/fedora-rawhide-cross-mingw64.Dockerfile | 4 ++--
ci/containers/fedora-rawhide.Dockerfile | 4 ++--
ci/gitlab/build-templates.yml | 9 +++++----
40 files changed, 83 insertions(+), 82 deletions(-)
diff --git a/ci/buildenv/debian-11-cross-aarch64.sh b/ci/buildenv/debian-11-cross-aarch64.sh
index d33d95d965..6b03b2ea59 100644
--- a/ci/buildenv/debian-11-cross-aarch64.sh
+++ b/ci/buildenv/debian-11-cross-aarch64.sh
@@ -88,7 +88,7 @@ function install_buildenv() {
libyajl-dev:arm64 \
systemtap-sdt-dev:arm64
mkdir -p /usr/local/share/meson/cross
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/aarch64-linux-gnu-gcc'\n\
ar = '/usr/bin/aarch64-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/aarch64-linux-gnu-strip'\n\
@@ -98,7 +98,7 @@ pkgconfig = '/usr/bin/aarch64-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'aarch64'\n\
cpu = 'aarch64'\n\
-endian = 'little'" > /usr/local/share/meson/cross/aarch64-linux-gnu
+endian = 'little'\n" > /usr/local/share/meson/cross/aarch64-linux-gnu
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
mkdir -p /usr/libexec/ccache-wrappers
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/aarch64-linux-gnu-cc
diff --git a/ci/buildenv/debian-11-cross-armv6l.sh b/ci/buildenv/debian-11-cross-armv6l.sh
index 00b978b946..51dc4ce88a 100644
--- a/ci/buildenv/debian-11-cross-armv6l.sh
+++ b/ci/buildenv/debian-11-cross-armv6l.sh
@@ -87,7 +87,7 @@ function install_buildenv() {
libyajl-dev:armel \
systemtap-sdt-dev:armel
mkdir -p /usr/local/share/meson/cross
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/arm-linux-gnueabi-gcc'\n\
ar = '/usr/bin/arm-linux-gnueabi-gcc-ar'\n\
strip = '/usr/bin/arm-linux-gnueabi-strip'\n\
@@ -97,7 +97,7 @@ pkgconfig = '/usr/bin/arm-linux-gnueabi-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'arm'\n\
cpu = 'arm'\n\
-endian = 'little'" > /usr/local/share/meson/cross/arm-linux-gnueabi
+endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabi
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
mkdir -p /usr/libexec/ccache-wrappers
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabi-cc
diff --git a/ci/buildenv/debian-11-cross-armv7l.sh b/ci/buildenv/debian-11-cross-armv7l.sh
index 78f596a96f..ecd1453bff 100644
--- a/ci/buildenv/debian-11-cross-armv7l.sh
+++ b/ci/buildenv/debian-11-cross-armv7l.sh
@@ -88,7 +88,7 @@ function install_buildenv() {
libyajl-dev:armhf \
systemtap-sdt-dev:armhf
mkdir -p /usr/local/share/meson/cross
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/arm-linux-gnueabihf-gcc'\n\
ar = '/usr/bin/arm-linux-gnueabihf-gcc-ar'\n\
strip = '/usr/bin/arm-linux-gnueabihf-strip'\n\
@@ -98,7 +98,7 @@ pkgconfig = '/usr/bin/arm-linux-gnueabihf-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'arm'\n\
cpu = 'armhf'\n\
-endian = 'little'" > /usr/local/share/meson/cross/arm-linux-gnueabihf
+endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabihf
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
mkdir -p /usr/libexec/ccache-wrappers
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-cc
diff --git a/ci/buildenv/debian-11-cross-i686.sh b/ci/buildenv/debian-11-cross-i686.sh
index 0c08bb13a3..3922591cd8 100644
--- a/ci/buildenv/debian-11-cross-i686.sh
+++ b/ci/buildenv/debian-11-cross-i686.sh
@@ -87,7 +87,7 @@ function install_buildenv() {
libyajl-dev:i386 \
systemtap-sdt-dev:i386
mkdir -p /usr/local/share/meson/cross
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/i686-linux-gnu-gcc'\n\
ar = '/usr/bin/i686-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/i686-linux-gnu-strip'\n\
@@ -97,7 +97,7 @@ pkgconfig = '/usr/bin/i686-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'x86'\n\
cpu = 'i686'\n\
-endian = 'little'" > /usr/local/share/meson/cross/i686-linux-gnu
+endian = 'little'\n" > /usr/local/share/meson/cross/i686-linux-gnu
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
mkdir -p /usr/libexec/ccache-wrappers
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-cc
diff --git a/ci/buildenv/debian-11-cross-mips64el.sh b/ci/buildenv/debian-11-cross-mips64el.sh
index 386b67ee08..6a6250ac03 100644
--- a/ci/buildenv/debian-11-cross-mips64el.sh
+++ b/ci/buildenv/debian-11-cross-mips64el.sh
@@ -87,7 +87,7 @@ function install_buildenv() {
libyajl-dev:mips64el \
systemtap-sdt-dev:mips64el
mkdir -p /usr/local/share/meson/cross
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/mips64el-linux-gnuabi64-gcc'\n\
ar = '/usr/bin/mips64el-linux-gnuabi64-gcc-ar'\n\
strip = '/usr/bin/mips64el-linux-gnuabi64-strip'\n\
@@ -97,7 +97,7 @@ pkgconfig = '/usr/bin/mips64el-linux-gnuabi64-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'mips64'\n\
cpu = 'mips64el'\n\
-endian = 'little'" > /usr/local/share/meson/cross/mips64el-linux-gnuabi64
+endian = 'little'\n" > /usr/local/share/meson/cross/mips64el-linux-gnuabi64
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
mkdir -p /usr/libexec/ccache-wrappers
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mips64el-linux-gnuabi64-cc
diff --git a/ci/buildenv/debian-11-cross-mipsel.sh b/ci/buildenv/debian-11-cross-mipsel.sh
index 00138feee3..4b60a97704 100644
--- a/ci/buildenv/debian-11-cross-mipsel.sh
+++ b/ci/buildenv/debian-11-cross-mipsel.sh
@@ -87,7 +87,7 @@ function install_buildenv() {
libyajl-dev:mipsel \
systemtap-sdt-dev:mipsel
mkdir -p /usr/local/share/meson/cross
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/mipsel-linux-gnu-gcc'\n\
ar = '/usr/bin/mipsel-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/mipsel-linux-gnu-strip'\n\
@@ -97,7 +97,7 @@ pkgconfig = '/usr/bin/mipsel-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'mips'\n\
cpu = 'mipsel'\n\
-endian = 'little'" > /usr/local/share/meson/cross/mipsel-linux-gnu
+endian = 'little'\n" > /usr/local/share/meson/cross/mipsel-linux-gnu
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
mkdir -p /usr/libexec/ccache-wrappers
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mipsel-linux-gnu-cc
diff --git a/ci/buildenv/debian-11-cross-ppc64le.sh b/ci/buildenv/debian-11-cross-ppc64le.sh
index 30c8160f73..c1fd55b55d 100644
--- a/ci/buildenv/debian-11-cross-ppc64le.sh
+++ b/ci/buildenv/debian-11-cross-ppc64le.sh
@@ -87,7 +87,7 @@ function install_buildenv() {
libyajl-dev:ppc64el \
systemtap-sdt-dev:ppc64el
mkdir -p /usr/local/share/meson/cross
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/powerpc64le-linux-gnu-gcc'\n\
ar = '/usr/bin/powerpc64le-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/powerpc64le-linux-gnu-strip'\n\
@@ -97,7 +97,7 @@ pkgconfig = '/usr/bin/powerpc64le-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'ppc64'\n\
cpu = 'powerpc64le'\n\
-endian = 'little'" > /usr/local/share/meson/cross/powerpc64le-linux-gnu
+endian = 'little'\n" > /usr/local/share/meson/cross/powerpc64le-linux-gnu
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
mkdir -p /usr/libexec/ccache-wrappers
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-cc
diff --git a/ci/buildenv/debian-11-cross-s390x.sh b/ci/buildenv/debian-11-cross-s390x.sh
index 1a4a5cf5c3..563eb98ef7 100644
--- a/ci/buildenv/debian-11-cross-s390x.sh
+++ b/ci/buildenv/debian-11-cross-s390x.sh
@@ -87,7 +87,7 @@ function install_buildenv() {
libyajl-dev:s390x \
systemtap-sdt-dev:s390x
mkdir -p /usr/local/share/meson/cross
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/s390x-linux-gnu-gcc'\n\
ar = '/usr/bin/s390x-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/s390x-linux-gnu-strip'\n\
@@ -97,7 +97,7 @@ pkgconfig = '/usr/bin/s390x-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 's390x'\n\
cpu = 's390x'\n\
-endian = 'big'" > /usr/local/share/meson/cross/s390x-linux-gnu
+endian = 'big'\n" > /usr/local/share/meson/cross/s390x-linux-gnu
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
mkdir -p /usr/libexec/ccache-wrappers
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/s390x-linux-gnu-cc
diff --git a/ci/buildenv/debian-sid-cross-aarch64.sh b/ci/buildenv/debian-sid-cross-aarch64.sh
index d33d95d965..6b03b2ea59 100644
--- a/ci/buildenv/debian-sid-cross-aarch64.sh
+++ b/ci/buildenv/debian-sid-cross-aarch64.sh
@@ -88,7 +88,7 @@ function install_buildenv() {
libyajl-dev:arm64 \
systemtap-sdt-dev:arm64
mkdir -p /usr/local/share/meson/cross
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/aarch64-linux-gnu-gcc'\n\
ar = '/usr/bin/aarch64-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/aarch64-linux-gnu-strip'\n\
@@ -98,7 +98,7 @@ pkgconfig = '/usr/bin/aarch64-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'aarch64'\n\
cpu = 'aarch64'\n\
-endian = 'little'" > /usr/local/share/meson/cross/aarch64-linux-gnu
+endian = 'little'\n" > /usr/local/share/meson/cross/aarch64-linux-gnu
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
mkdir -p /usr/libexec/ccache-wrappers
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/aarch64-linux-gnu-cc
diff --git a/ci/buildenv/debian-sid-cross-armv6l.sh b/ci/buildenv/debian-sid-cross-armv6l.sh
index 00b978b946..51dc4ce88a 100644
--- a/ci/buildenv/debian-sid-cross-armv6l.sh
+++ b/ci/buildenv/debian-sid-cross-armv6l.sh
@@ -87,7 +87,7 @@ function install_buildenv() {
libyajl-dev:armel \
systemtap-sdt-dev:armel
mkdir -p /usr/local/share/meson/cross
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/arm-linux-gnueabi-gcc'\n\
ar = '/usr/bin/arm-linux-gnueabi-gcc-ar'\n\
strip = '/usr/bin/arm-linux-gnueabi-strip'\n\
@@ -97,7 +97,7 @@ pkgconfig = '/usr/bin/arm-linux-gnueabi-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'arm'\n\
cpu = 'arm'\n\
-endian = 'little'" > /usr/local/share/meson/cross/arm-linux-gnueabi
+endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabi
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
mkdir -p /usr/libexec/ccache-wrappers
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabi-cc
diff --git a/ci/buildenv/debian-sid-cross-armv7l.sh b/ci/buildenv/debian-sid-cross-armv7l.sh
index 78f596a96f..ecd1453bff 100644
--- a/ci/buildenv/debian-sid-cross-armv7l.sh
+++ b/ci/buildenv/debian-sid-cross-armv7l.sh
@@ -88,7 +88,7 @@ function install_buildenv() {
libyajl-dev:armhf \
systemtap-sdt-dev:armhf
mkdir -p /usr/local/share/meson/cross
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/arm-linux-gnueabihf-gcc'\n\
ar = '/usr/bin/arm-linux-gnueabihf-gcc-ar'\n\
strip = '/usr/bin/arm-linux-gnueabihf-strip'\n\
@@ -98,7 +98,7 @@ pkgconfig = '/usr/bin/arm-linux-gnueabihf-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'arm'\n\
cpu = 'armhf'\n\
-endian = 'little'" > /usr/local/share/meson/cross/arm-linux-gnueabihf
+endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabihf
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
mkdir -p /usr/libexec/ccache-wrappers
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-cc
diff --git a/ci/buildenv/debian-sid-cross-i686.sh b/ci/buildenv/debian-sid-cross-i686.sh
index 0c08bb13a3..3922591cd8 100644
--- a/ci/buildenv/debian-sid-cross-i686.sh
+++ b/ci/buildenv/debian-sid-cross-i686.sh
@@ -87,7 +87,7 @@ function install_buildenv() {
libyajl-dev:i386 \
systemtap-sdt-dev:i386
mkdir -p /usr/local/share/meson/cross
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/i686-linux-gnu-gcc'\n\
ar = '/usr/bin/i686-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/i686-linux-gnu-strip'\n\
@@ -97,7 +97,7 @@ pkgconfig = '/usr/bin/i686-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'x86'\n\
cpu = 'i686'\n\
-endian = 'little'" > /usr/local/share/meson/cross/i686-linux-gnu
+endian = 'little'\n" > /usr/local/share/meson/cross/i686-linux-gnu
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
mkdir -p /usr/libexec/ccache-wrappers
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-cc
diff --git a/ci/buildenv/debian-sid-cross-mips64el.sh b/ci/buildenv/debian-sid-cross-mips64el.sh
index 386b67ee08..6a6250ac03 100644
--- a/ci/buildenv/debian-sid-cross-mips64el.sh
+++ b/ci/buildenv/debian-sid-cross-mips64el.sh
@@ -87,7 +87,7 @@ function install_buildenv() {
libyajl-dev:mips64el \
systemtap-sdt-dev:mips64el
mkdir -p /usr/local/share/meson/cross
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/mips64el-linux-gnuabi64-gcc'\n\
ar = '/usr/bin/mips64el-linux-gnuabi64-gcc-ar'\n\
strip = '/usr/bin/mips64el-linux-gnuabi64-strip'\n\
@@ -97,7 +97,7 @@ pkgconfig = '/usr/bin/mips64el-linux-gnuabi64-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'mips64'\n\
cpu = 'mips64el'\n\
-endian = 'little'" > /usr/local/share/meson/cross/mips64el-linux-gnuabi64
+endian = 'little'\n" > /usr/local/share/meson/cross/mips64el-linux-gnuabi64
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
mkdir -p /usr/libexec/ccache-wrappers
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mips64el-linux-gnuabi64-cc
diff --git a/ci/buildenv/debian-sid-cross-mipsel.sh b/ci/buildenv/debian-sid-cross-mipsel.sh
index 00138feee3..4b60a97704 100644
--- a/ci/buildenv/debian-sid-cross-mipsel.sh
+++ b/ci/buildenv/debian-sid-cross-mipsel.sh
@@ -87,7 +87,7 @@ function install_buildenv() {
libyajl-dev:mipsel \
systemtap-sdt-dev:mipsel
mkdir -p /usr/local/share/meson/cross
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/mipsel-linux-gnu-gcc'\n\
ar = '/usr/bin/mipsel-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/mipsel-linux-gnu-strip'\n\
@@ -97,7 +97,7 @@ pkgconfig = '/usr/bin/mipsel-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'mips'\n\
cpu = 'mipsel'\n\
-endian = 'little'" > /usr/local/share/meson/cross/mipsel-linux-gnu
+endian = 'little'\n" > /usr/local/share/meson/cross/mipsel-linux-gnu
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
mkdir -p /usr/libexec/ccache-wrappers
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mipsel-linux-gnu-cc
diff --git a/ci/buildenv/debian-sid-cross-ppc64le.sh b/ci/buildenv/debian-sid-cross-ppc64le.sh
index 30c8160f73..c1fd55b55d 100644
--- a/ci/buildenv/debian-sid-cross-ppc64le.sh
+++ b/ci/buildenv/debian-sid-cross-ppc64le.sh
@@ -87,7 +87,7 @@ function install_buildenv() {
libyajl-dev:ppc64el \
systemtap-sdt-dev:ppc64el
mkdir -p /usr/local/share/meson/cross
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/powerpc64le-linux-gnu-gcc'\n\
ar = '/usr/bin/powerpc64le-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/powerpc64le-linux-gnu-strip'\n\
@@ -97,7 +97,7 @@ pkgconfig = '/usr/bin/powerpc64le-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'ppc64'\n\
cpu = 'powerpc64le'\n\
-endian = 'little'" > /usr/local/share/meson/cross/powerpc64le-linux-gnu
+endian = 'little'\n" > /usr/local/share/meson/cross/powerpc64le-linux-gnu
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
mkdir -p /usr/libexec/ccache-wrappers
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-cc
diff --git a/ci/buildenv/debian-sid-cross-s390x.sh b/ci/buildenv/debian-sid-cross-s390x.sh
index 1a4a5cf5c3..563eb98ef7 100644
--- a/ci/buildenv/debian-sid-cross-s390x.sh
+++ b/ci/buildenv/debian-sid-cross-s390x.sh
@@ -87,7 +87,7 @@ function install_buildenv() {
libyajl-dev:s390x \
systemtap-sdt-dev:s390x
mkdir -p /usr/local/share/meson/cross
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/s390x-linux-gnu-gcc'\n\
ar = '/usr/bin/s390x-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/s390x-linux-gnu-strip'\n\
@@ -97,7 +97,7 @@ pkgconfig = '/usr/bin/s390x-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 's390x'\n\
cpu = 's390x'\n\
-endian = 'big'" > /usr/local/share/meson/cross/s390x-linux-gnu
+endian = 'big'\n" > /usr/local/share/meson/cross/s390x-linux-gnu
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
mkdir -p /usr/libexec/ccache-wrappers
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/s390x-linux-gnu-cc
diff --git a/ci/containers/debian-11-cross-aarch64.Dockerfile b/ci/containers/debian-11-cross-aarch64.Dockerfile
index d030a9a9df..429f58b45b 100644
--- a/ci/containers/debian-11-cross-aarch64.Dockerfile
+++ b/ci/containers/debian-11-cross-aarch64.Dockerfile
@@ -101,7 +101,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/aarch64-linux-gnu-gcc'\n\
ar = '/usr/bin/aarch64-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/aarch64-linux-gnu-strip'\n\
@@ -111,7 +111,7 @@ pkgconfig = '/usr/bin/aarch64-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'aarch64'\n\
cpu = 'aarch64'\n\
-endian = 'little'" > /usr/local/share/meson/cross/aarch64-linux-gnu && \
+endian = 'little'\n" > /usr/local/share/meson/cross/aarch64-linux-gnu && \
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/aarch64-linux-gnu-cc && \
diff --git a/ci/containers/debian-11-cross-armv6l.Dockerfile b/ci/containers/debian-11-cross-armv6l.Dockerfile
index 5958957aaa..85af350e04 100644
--- a/ci/containers/debian-11-cross-armv6l.Dockerfile
+++ b/ci/containers/debian-11-cross-armv6l.Dockerfile
@@ -100,7 +100,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/arm-linux-gnueabi-gcc'\n\
ar = '/usr/bin/arm-linux-gnueabi-gcc-ar'\n\
strip = '/usr/bin/arm-linux-gnueabi-strip'\n\
@@ -110,7 +110,7 @@ pkgconfig = '/usr/bin/arm-linux-gnueabi-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'arm'\n\
cpu = 'arm'\n\
-endian = 'little'" > /usr/local/share/meson/cross/arm-linux-gnueabi && \
+endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabi && \
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabi-cc && \
diff --git a/ci/containers/debian-11-cross-armv7l.Dockerfile b/ci/containers/debian-11-cross-armv7l.Dockerfile
index c963657daa..77ff18a513 100644
--- a/ci/containers/debian-11-cross-armv7l.Dockerfile
+++ b/ci/containers/debian-11-cross-armv7l.Dockerfile
@@ -101,7 +101,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/arm-linux-gnueabihf-gcc'\n\
ar = '/usr/bin/arm-linux-gnueabihf-gcc-ar'\n\
strip = '/usr/bin/arm-linux-gnueabihf-strip'\n\
@@ -111,7 +111,7 @@ pkgconfig = '/usr/bin/arm-linux-gnueabihf-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'arm'\n\
cpu = 'armhf'\n\
-endian = 'little'" > /usr/local/share/meson/cross/arm-linux-gnueabihf && \
+endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabihf && \
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-cc && \
diff --git a/ci/containers/debian-11-cross-i686.Dockerfile b/ci/containers/debian-11-cross-i686.Dockerfile
index 9fe55f4f17..bdb4c44a42 100644
--- a/ci/containers/debian-11-cross-i686.Dockerfile
+++ b/ci/containers/debian-11-cross-i686.Dockerfile
@@ -100,7 +100,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/i686-linux-gnu-gcc'\n\
ar = '/usr/bin/i686-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/i686-linux-gnu-strip'\n\
@@ -110,7 +110,7 @@ pkgconfig = '/usr/bin/i686-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'x86'\n\
cpu = 'i686'\n\
-endian = 'little'" > /usr/local/share/meson/cross/i686-linux-gnu && \
+endian = 'little'\n" > /usr/local/share/meson/cross/i686-linux-gnu && \
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-cc && \
diff --git a/ci/containers/debian-11-cross-mips64el.Dockerfile b/ci/containers/debian-11-cross-mips64el.Dockerfile
index d4bf055915..6c1fd4ca77 100644
--- a/ci/containers/debian-11-cross-mips64el.Dockerfile
+++ b/ci/containers/debian-11-cross-mips64el.Dockerfile
@@ -100,7 +100,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/mips64el-linux-gnuabi64-gcc'\n\
ar = '/usr/bin/mips64el-linux-gnuabi64-gcc-ar'\n\
strip = '/usr/bin/mips64el-linux-gnuabi64-strip'\n\
@@ -110,7 +110,7 @@ pkgconfig = '/usr/bin/mips64el-linux-gnuabi64-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'mips64'\n\
cpu = 'mips64el'\n\
-endian = 'little'" > /usr/local/share/meson/cross/mips64el-linux-gnuabi64 && \
+endian = 'little'\n" > /usr/local/share/meson/cross/mips64el-linux-gnuabi64 && \
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mips64el-linux-gnuabi64-cc && \
diff --git a/ci/containers/debian-11-cross-mipsel.Dockerfile b/ci/containers/debian-11-cross-mipsel.Dockerfile
index d9b5aa2798..5b0767f368 100644
--- a/ci/containers/debian-11-cross-mipsel.Dockerfile
+++ b/ci/containers/debian-11-cross-mipsel.Dockerfile
@@ -100,7 +100,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/mipsel-linux-gnu-gcc'\n\
ar = '/usr/bin/mipsel-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/mipsel-linux-gnu-strip'\n\
@@ -110,7 +110,7 @@ pkgconfig = '/usr/bin/mipsel-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'mips'\n\
cpu = 'mipsel'\n\
-endian = 'little'" > /usr/local/share/meson/cross/mipsel-linux-gnu && \
+endian = 'little'\n" > /usr/local/share/meson/cross/mipsel-linux-gnu && \
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mipsel-linux-gnu-cc && \
diff --git a/ci/containers/debian-11-cross-ppc64le.Dockerfile b/ci/containers/debian-11-cross-ppc64le.Dockerfile
index 3ae70cfc51..600d5b34b2 100644
--- a/ci/containers/debian-11-cross-ppc64le.Dockerfile
+++ b/ci/containers/debian-11-cross-ppc64le.Dockerfile
@@ -100,7 +100,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/powerpc64le-linux-gnu-gcc'\n\
ar = '/usr/bin/powerpc64le-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/powerpc64le-linux-gnu-strip'\n\
@@ -110,7 +110,7 @@ pkgconfig = '/usr/bin/powerpc64le-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'ppc64'\n\
cpu = 'powerpc64le'\n\
-endian = 'little'" > /usr/local/share/meson/cross/powerpc64le-linux-gnu && \
+endian = 'little'\n" > /usr/local/share/meson/cross/powerpc64le-linux-gnu && \
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-cc && \
diff --git a/ci/containers/debian-11-cross-s390x.Dockerfile b/ci/containers/debian-11-cross-s390x.Dockerfile
index 4a4a582990..d11c966c27 100644
--- a/ci/containers/debian-11-cross-s390x.Dockerfile
+++ b/ci/containers/debian-11-cross-s390x.Dockerfile
@@ -100,7 +100,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/s390x-linux-gnu-gcc'\n\
ar = '/usr/bin/s390x-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/s390x-linux-gnu-strip'\n\
@@ -110,7 +110,7 @@ pkgconfig = '/usr/bin/s390x-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 's390x'\n\
cpu = 's390x'\n\
-endian = 'big'" > /usr/local/share/meson/cross/s390x-linux-gnu && \
+endian = 'big'\n" > /usr/local/share/meson/cross/s390x-linux-gnu && \
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/s390x-linux-gnu-cc && \
diff --git a/ci/containers/debian-sid-cross-aarch64.Dockerfile b/ci/containers/debian-sid-cross-aarch64.Dockerfile
index f129d6f3bf..c98ba2f751 100644
--- a/ci/containers/debian-sid-cross-aarch64.Dockerfile
+++ b/ci/containers/debian-sid-cross-aarch64.Dockerfile
@@ -101,7 +101,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/aarch64-linux-gnu-gcc'\n\
ar = '/usr/bin/aarch64-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/aarch64-linux-gnu-strip'\n\
@@ -111,7 +111,7 @@ pkgconfig = '/usr/bin/aarch64-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'aarch64'\n\
cpu = 'aarch64'\n\
-endian = 'little'" > /usr/local/share/meson/cross/aarch64-linux-gnu && \
+endian = 'little'\n" > /usr/local/share/meson/cross/aarch64-linux-gnu && \
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/aarch64-linux-gnu-cc && \
diff --git a/ci/containers/debian-sid-cross-armv6l.Dockerfile b/ci/containers/debian-sid-cross-armv6l.Dockerfile
index 7fb8b62528..de3ad751d6 100644
--- a/ci/containers/debian-sid-cross-armv6l.Dockerfile
+++ b/ci/containers/debian-sid-cross-armv6l.Dockerfile
@@ -100,7 +100,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/arm-linux-gnueabi-gcc'\n\
ar = '/usr/bin/arm-linux-gnueabi-gcc-ar'\n\
strip = '/usr/bin/arm-linux-gnueabi-strip'\n\
@@ -110,7 +110,7 @@ pkgconfig = '/usr/bin/arm-linux-gnueabi-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'arm'\n\
cpu = 'arm'\n\
-endian = 'little'" > /usr/local/share/meson/cross/arm-linux-gnueabi && \
+endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabi && \
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabi-cc && \
diff --git a/ci/containers/debian-sid-cross-armv7l.Dockerfile b/ci/containers/debian-sid-cross-armv7l.Dockerfile
index 105fe3cb93..b271c97950 100644
--- a/ci/containers/debian-sid-cross-armv7l.Dockerfile
+++ b/ci/containers/debian-sid-cross-armv7l.Dockerfile
@@ -101,7 +101,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/arm-linux-gnueabihf-gcc'\n\
ar = '/usr/bin/arm-linux-gnueabihf-gcc-ar'\n\
strip = '/usr/bin/arm-linux-gnueabihf-strip'\n\
@@ -111,7 +111,7 @@ pkgconfig = '/usr/bin/arm-linux-gnueabihf-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'arm'\n\
cpu = 'armhf'\n\
-endian = 'little'" > /usr/local/share/meson/cross/arm-linux-gnueabihf && \
+endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabihf && \
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-cc && \
diff --git a/ci/containers/debian-sid-cross-i686.Dockerfile b/ci/containers/debian-sid-cross-i686.Dockerfile
index 74e21c3d06..a12507feca 100644
--- a/ci/containers/debian-sid-cross-i686.Dockerfile
+++ b/ci/containers/debian-sid-cross-i686.Dockerfile
@@ -100,7 +100,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/i686-linux-gnu-gcc'\n\
ar = '/usr/bin/i686-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/i686-linux-gnu-strip'\n\
@@ -110,7 +110,7 @@ pkgconfig = '/usr/bin/i686-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'x86'\n\
cpu = 'i686'\n\
-endian = 'little'" > /usr/local/share/meson/cross/i686-linux-gnu && \
+endian = 'little'\n" > /usr/local/share/meson/cross/i686-linux-gnu && \
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-cc && \
diff --git a/ci/containers/debian-sid-cross-mips64el.Dockerfile b/ci/containers/debian-sid-cross-mips64el.Dockerfile
index 4af1ccd2e5..9a4c8387ce 100644
--- a/ci/containers/debian-sid-cross-mips64el.Dockerfile
+++ b/ci/containers/debian-sid-cross-mips64el.Dockerfile
@@ -100,7 +100,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/mips64el-linux-gnuabi64-gcc'\n\
ar = '/usr/bin/mips64el-linux-gnuabi64-gcc-ar'\n\
strip = '/usr/bin/mips64el-linux-gnuabi64-strip'\n\
@@ -110,7 +110,7 @@ pkgconfig = '/usr/bin/mips64el-linux-gnuabi64-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'mips64'\n\
cpu = 'mips64el'\n\
-endian = 'little'" > /usr/local/share/meson/cross/mips64el-linux-gnuabi64 && \
+endian = 'little'\n" > /usr/local/share/meson/cross/mips64el-linux-gnuabi64 && \
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mips64el-linux-gnuabi64-cc && \
diff --git a/ci/containers/debian-sid-cross-mipsel.Dockerfile b/ci/containers/debian-sid-cross-mipsel.Dockerfile
index 3227c9b948..2d18455474 100644
--- a/ci/containers/debian-sid-cross-mipsel.Dockerfile
+++ b/ci/containers/debian-sid-cross-mipsel.Dockerfile
@@ -100,7 +100,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/mipsel-linux-gnu-gcc'\n\
ar = '/usr/bin/mipsel-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/mipsel-linux-gnu-strip'\n\
@@ -110,7 +110,7 @@ pkgconfig = '/usr/bin/mipsel-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'mips'\n\
cpu = 'mipsel'\n\
-endian = 'little'" > /usr/local/share/meson/cross/mipsel-linux-gnu && \
+endian = 'little'\n" > /usr/local/share/meson/cross/mipsel-linux-gnu && \
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mipsel-linux-gnu-cc && \
diff --git a/ci/containers/debian-sid-cross-ppc64le.Dockerfile b/ci/containers/debian-sid-cross-ppc64le.Dockerfile
index 83d7c87ffe..fa646e3d54 100644
--- a/ci/containers/debian-sid-cross-ppc64le.Dockerfile
+++ b/ci/containers/debian-sid-cross-ppc64le.Dockerfile
@@ -100,7 +100,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/powerpc64le-linux-gnu-gcc'\n\
ar = '/usr/bin/powerpc64le-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/powerpc64le-linux-gnu-strip'\n\
@@ -110,7 +110,7 @@ pkgconfig = '/usr/bin/powerpc64le-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 'ppc64'\n\
cpu = 'powerpc64le'\n\
-endian = 'little'" > /usr/local/share/meson/cross/powerpc64le-linux-gnu && \
+endian = 'little'\n" > /usr/local/share/meson/cross/powerpc64le-linux-gnu && \
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-cc && \
diff --git a/ci/containers/debian-sid-cross-s390x.Dockerfile b/ci/containers/debian-sid-cross-s390x.Dockerfile
index 735790cbcd..e1d94bd642 100644
--- a/ci/containers/debian-sid-cross-s390x.Dockerfile
+++ b/ci/containers/debian-sid-cross-s390x.Dockerfile
@@ -100,7 +100,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
eatmydata apt-get autoremove -y && \
eatmydata apt-get autoclean -y && \
mkdir -p /usr/local/share/meson/cross && \
- echo "[binaries]\n\
+ printf "[binaries]\n\
c = '/usr/bin/s390x-linux-gnu-gcc'\n\
ar = '/usr/bin/s390x-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/s390x-linux-gnu-strip'\n\
@@ -110,7 +110,7 @@ pkgconfig = '/usr/bin/s390x-linux-gnu-pkg-config'\n\
system = 'linux'\n\
cpu_family = 's390x'\n\
cpu = 's390x'\n\
-endian = 'big'" > /usr/local/share/meson/cross/s390x-linux-gnu && \
+endian = 'big'\n" > /usr/local/share/meson/cross/s390x-linux-gnu && \
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
mkdir -p /usr/libexec/ccache-wrappers && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/s390x-linux-gnu-cc && \
diff --git a/ci/containers/fedora-36.Dockerfile b/ci/containers/fedora-36.Dockerfile
index 3fa19e3c2c..df7a4a6bdc 100644
--- a/ci/containers/fedora-36.Dockerfile
+++ b/ci/containers/fedora-36.Dockerfile
@@ -7,14 +7,14 @@
FROM registry.fedoraproject.org/fedora:36
RUN dnf install -y nosync && \
- echo -e '#!/bin/sh\n\
+ printf '#!/bin/sh\n\
if test -d /usr/lib64\n\
then\n\
export LD_PRELOAD=/usr/lib64/nosync/nosync.so\n\
else\n\
export LD_PRELOAD=/usr/lib/nosync/nosync.so\n\
fi\n\
-exec "$@"' > /usr/bin/nosync && \
+exec "$@"\n' > /usr/bin/nosync && \
chmod +x /usr/bin/nosync && \
nosync dnf update -y && \
nosync dnf install -y \
diff --git a/ci/containers/fedora-37-cross-mingw32.Dockerfile b/ci/containers/fedora-37-cross-mingw32.Dockerfile
index 14fb25a17e..7e6c16e4b6 100644
--- a/ci/containers/fedora-37-cross-mingw32.Dockerfile
+++ b/ci/containers/fedora-37-cross-mingw32.Dockerfile
@@ -7,14 +7,14 @@
FROM registry.fedoraproject.org/fedora:37
RUN dnf install -y nosync && \
- echo -e '#!/bin/sh\n\
+ printf '#!/bin/sh\n\
if test -d /usr/lib64\n\
then\n\
export LD_PRELOAD=/usr/lib64/nosync/nosync.so\n\
else\n\
export LD_PRELOAD=/usr/lib/nosync/nosync.so\n\
fi\n\
-exec "$@"' > /usr/bin/nosync && \
+exec "$@"\n' > /usr/bin/nosync && \
chmod +x /usr/bin/nosync && \
nosync dnf update -y && \
nosync dnf install -y \
diff --git a/ci/containers/fedora-37-cross-mingw64.Dockerfile b/ci/containers/fedora-37-cross-mingw64.Dockerfile
index c468dd7a6c..d673871516 100644
--- a/ci/containers/fedora-37-cross-mingw64.Dockerfile
+++ b/ci/containers/fedora-37-cross-mingw64.Dockerfile
@@ -7,14 +7,14 @@
FROM registry.fedoraproject.org/fedora:37
RUN dnf install -y nosync && \
- echo -e '#!/bin/sh\n\
+ printf '#!/bin/sh\n\
if test -d /usr/lib64\n\
then\n\
export LD_PRELOAD=/usr/lib64/nosync/nosync.so\n\
else\n\
export LD_PRELOAD=/usr/lib/nosync/nosync.so\n\
fi\n\
-exec "$@"' > /usr/bin/nosync && \
+exec "$@"\n' > /usr/bin/nosync && \
chmod +x /usr/bin/nosync && \
nosync dnf update -y && \
nosync dnf install -y \
diff --git a/ci/containers/fedora-37.Dockerfile b/ci/containers/fedora-37.Dockerfile
index 17f586af59..d8e87bd310 100644
--- a/ci/containers/fedora-37.Dockerfile
+++ b/ci/containers/fedora-37.Dockerfile
@@ -7,14 +7,14 @@
FROM registry.fedoraproject.org/fedora:37
RUN dnf install -y nosync && \
- echo -e '#!/bin/sh\n\
+ printf '#!/bin/sh\n\
if test -d /usr/lib64\n\
then\n\
export LD_PRELOAD=/usr/lib64/nosync/nosync.so\n\
else\n\
export LD_PRELOAD=/usr/lib/nosync/nosync.so\n\
fi\n\
-exec "$@"' > /usr/bin/nosync && \
+exec "$@"\n' > /usr/bin/nosync && \
chmod +x /usr/bin/nosync && \
nosync dnf update -y && \
nosync dnf install -y \
diff --git a/ci/containers/fedora-rawhide-cross-mingw32.Dockerfile b/ci/containers/fedora-rawhide-cross-mingw32.Dockerfile
index a574acfde4..41221256f8 100644
--- a/ci/containers/fedora-rawhide-cross-mingw32.Dockerfile
+++ b/ci/containers/fedora-rawhide-cross-mingw32.Dockerfile
@@ -8,14 +8,14 @@ FROM registry.fedoraproject.org/fedora:rawhide
RUN dnf update -y --nogpgcheck fedora-gpg-keys && \
dnf install -y nosync && \
- echo -e '#!/bin/sh\n\
+ printf '#!/bin/sh\n\
if test -d /usr/lib64\n\
then\n\
export LD_PRELOAD=/usr/lib64/nosync/nosync.so\n\
else\n\
export LD_PRELOAD=/usr/lib/nosync/nosync.so\n\
fi\n\
-exec "$@"' > /usr/bin/nosync && \
+exec "$@"\n' > /usr/bin/nosync && \
chmod +x /usr/bin/nosync && \
nosync dnf distro-sync -y && \
nosync dnf install -y \
diff --git a/ci/containers/fedora-rawhide-cross-mingw64.Dockerfile b/ci/containers/fedora-rawhide-cross-mingw64.Dockerfile
index b2690b42e1..8737203d83 100644
--- a/ci/containers/fedora-rawhide-cross-mingw64.Dockerfile
+++ b/ci/containers/fedora-rawhide-cross-mingw64.Dockerfile
@@ -8,14 +8,14 @@ FROM registry.fedoraproject.org/fedora:rawhide
RUN dnf update -y --nogpgcheck fedora-gpg-keys && \
dnf install -y nosync && \
- echo -e '#!/bin/sh\n\
+ printf '#!/bin/sh\n\
if test -d /usr/lib64\n\
then\n\
export LD_PRELOAD=/usr/lib64/nosync/nosync.so\n\
else\n\
export LD_PRELOAD=/usr/lib/nosync/nosync.so\n\
fi\n\
-exec "$@"' > /usr/bin/nosync && \
+exec "$@"\n' > /usr/bin/nosync && \
chmod +x /usr/bin/nosync && \
nosync dnf distro-sync -y && \
nosync dnf install -y \
diff --git a/ci/containers/fedora-rawhide.Dockerfile b/ci/containers/fedora-rawhide.Dockerfile
index f903d549b7..a2ca2e9c61 100644
--- a/ci/containers/fedora-rawhide.Dockerfile
+++ b/ci/containers/fedora-rawhide.Dockerfile
@@ -8,14 +8,14 @@ FROM registry.fedoraproject.org/fedora:rawhide
RUN dnf update -y --nogpgcheck fedora-gpg-keys && \
dnf install -y nosync && \
- echo -e '#!/bin/sh\n\
+ printf '#!/bin/sh\n\
if test -d /usr/lib64\n\
then\n\
export LD_PRELOAD=/usr/lib64/nosync/nosync.so\n\
else\n\
export LD_PRELOAD=/usr/lib/nosync/nosync.so\n\
fi\n\
-exec "$@"' > /usr/bin/nosync && \
+exec "$@"\n' > /usr/bin/nosync && \
chmod +x /usr/bin/nosync && \
nosync dnf distro-sync -y && \
nosync dnf install -y \
diff --git a/ci/gitlab/build-templates.yml b/ci/gitlab/build-templates.yml
index 82ddd2c650..1f533ec2dd 100644
--- a/ci/gitlab/build-templates.yml
+++ b/ci/gitlab/build-templates.yml
@@ -181,7 +181,7 @@
- if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH'
changes:
- ci/gitlab/container-templates.yml
- - ci/containers/$NAME.Dockerfile
+ - ci/containers/$NAME-cross-$CROSS.Dockerfile
when: never
- if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH && $JOB_OPTIONAL'
when: manual
@@ -197,7 +197,7 @@
stage: builds
interruptible: true
before_script:
- - source ci/buildenv/$NAME.sh
+ - source ci/buildenv/$NAME-cross-$CROSS.sh
- install_buildenv
- cat /packages.txt
rules:
@@ -237,13 +237,13 @@
- if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH && $JOB_OPTIONAL'
changes:
- ci/gitlab/container-templates.yml
- - ci/containers/$NAME.Dockerfile
+ - ci/containers/$NAME-cross-$CROSS.Dockerfile
when: manual
allow_failure: true
- if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH'
changes:
- ci/gitlab/container-templates.yml
- - ci/containers/$NAME.Dockerfile
+ - ci/containers/$NAME-cross-$CROSS.Dockerfile
when: on_success
# upstream+forks: merge requests targeting non-default branches
@@ -266,6 +266,7 @@
- source ci/cirrus/$NAME.vars
- sed -e "s|[@]CI_REPOSITORY_URL@|$CI_REPOSITORY_URL|g"
-e "s|[@]CI_COMMIT_REF_NAME@|$CI_COMMIT_REF_NAME|g"
+ -e "s|[@]CI_MERGE_REQUEST_REF_PATH@|$CI_MERGE_REQUEST_REF_PATH|g"
-e "s|[@]CI_COMMIT_SHA@|$CI_COMMIT_SHA|g"
-e "s|[@]CIRRUS_VM_INSTANCE_TYPE@|$CIRRUS_VM_INSTANCE_TYPE|g"
-e "s|[@]CIRRUS_VM_IMAGE_SELECTOR@|$CIRRUS_VM_IMAGE_SELECTOR|g"
--
2.39.2
2 years
[libvirt PATCH 0/2] A few fixes in error messages
by Jiri Denemark
These fixes were separated from my "Use permutable format strings in
translations" series. There are more VIR_PCI_DEVICE_ADDRESS_FMT cases
fixed here compared to the format strings series as not all of them were
identified by either syntax check or libvirt-pot-check.
Jiri Denemark (2):
Drop excess whitespace from error messages
Do not use VIR_PCI_DEVICE_ADDRESS_FMT in translations
src/conf/domain_conf.c | 6 ++----
src/libxl/libxl_driver.c | 15 +++++----------
src/qemu/qemu_hotplug.c | 14 ++++----------
src/util/virnetdevvportprofile.c | 3 +--
src/util/virsocketaddr.c | 3 +--
5 files changed, 13 insertions(+), 28 deletions(-)
--
2.40.0
2 years
Re: Re: [PATCH RFC 20/21] conf: Add possibility to configure multiple iothreads per disk
by Stefan Hajnoczi
Hi Peter,
> + - The optional ``iothreads`` sub-element allows specifying multiple IOThreads
> + via the ``iothread`` sub-element with attribute ``id`` the disk will use
> + for I/O operations. Optionally the ``iothread`` element can have multiple
> + ``queue`` subelements specifying that given iothread should be used to
> + handle given queues. :since:`Since XXXXXX`.
Although this says that the ``queue`` sub-elements are optional, it
may be clearer to add another sentence that explains the device will
automatically assign virtqueues to the given ``iothread`` sub-elements
when ``queue`` is not given. That answers the question of "what is the
behavior of omitting ``queue``?".
> + <driver name='qemu' queues='2'>
> + <iothreads>
> + <iothread id='1'>
> + <queue id='1'/>
> + </iothread>
> + <iothread id='2'>
> + <queue id='1'/>
> + </iothread>
Each queue can only be assigned to 1 IOThread, so <queue id='1'/>
cannot be assigned to multiple IOThreads.
Thank you,
Stefan
2 years
Plans for the next release
by Jiri Denemark
We are getting close to the next release of libvirt. To aim for the
release on Mar 31 (in the evening since Apr 1 is Saturday) I suggest
entering the freeze on Monday Mar 27 and tagging RC2 on Wednesday Mar 29
in the afternoon.
I hope this works for everyone.
Jirka
2 years
[PATCH] tests: Compile virgdbusmock.c with GIO_COMPILATION enabled
by Michal Privoznik
There are couple of g_dbus_*() functions we provide an
alternative implementation for in our virgdbusmock.c. However,
these functions are declared in gio/gdbusconnection.h as:
GIO_AVAILABLE_IN_ALL
GDBusConnection *g_bus_get_sync (GBusType bus_type,
GCancellable *cancellable,
GError **error);
where GIO_AVAILABLE_IN_ALL is declared as (in
/gio/gio-visibility.h):
#if (defined(_WIN32) || defined(__CYGWIN__)) && !defined(GIO_STATIC_COMPILATION)
# define _GIO_EXPORT __declspec(dllexport)
# define _GIO_IMPORT __declspec(dllimport)
#elif __GNUC__ >= 4
# define _GIO_EXPORT __attribute__((visibility("default")))
# define _GIO_IMPORT
#else
# define _GIO_EXPORT
# define _GIO_IMPORT
#endif
#ifdef GIO_COMPILATION
# define _GIO_API _GIO_EXPORT
#else
# define _GIO_API _GIO_IMPORT
#endif
#define _GIO_EXTERN _GIO_API extern
#define GIO_AVAILABLE_IN_ALL _GIO_EXTERN
Now, on mingw the functions we mock are declared with dllimport
attribute which makes the compiler unhappy:
../tests/virgdbusmock.c:25:24: error: 'g_bus_get_sync'
redeclared without dllimport attribute: previous dllimport
ignored [-Werror=attributes]
The solution is to do what glib does when it compiles the gio
module: set GIO_COMPILATION macro which in turn annotates the
function with dllexport attribute.
Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
---
tests/meson.build | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/tests/meson.build b/tests/meson.build
index 0fd3bc62cf..6be806f4ae 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -65,6 +65,10 @@ else
endif
+virgdbusmock_dep = declare_dependency(
+ compile_args: [ '-DGIO_COMPILATION' ]
+)
+
# mock_libs:
# each entry is a dictionary with following items:
# * name - mock library name which is also used as default source file name (required)
@@ -78,7 +82,7 @@ mock_libs = [
{ 'name': 'virdnsmasqmock' },
{ 'name': 'virfilecachemock' },
{ 'name': 'virfirewallmock' },
- { 'name': 'virgdbusmock' },
+ { 'name': 'virgdbusmock', 'deps': [ virgdbusmock_dep] },
{ 'name': 'virhostcpumock' },
{ 'name': 'virhostdevmock' },
{ 'name': 'virnetdaemonmock' },
--
2.39.2
2 years
[PATCH] storage_file_probe: change maximum len value in vmdk4GetBackingStore
by Анастасия Белова
From: Anastasia Belova <abelova(a)astralinux.ru>
desc length should be always less than VIR_STORAGE_MAX_HEADER.
If len = VIR_STORAGE_MAX_HEADER, desc may be out of bounds.
Fixes: 296032bfb2 ("util: extract storage file probe code into virtstoragefileprobe.c")
Signed-off-by: Anastasia Belova <abelova(a)astralinux.ru>
---
src/storage_file/storage_file_probe.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/storage_file/storage_file_probe.c b/src/storage_file/storage_file_probe.c
index 9465af5d96..0dcc9c2c54 100644
--- a/src/storage_file/storage_file_probe.c
+++ b/src/storage_file/storage_file_probe.c
@@ -586,8 +586,8 @@ vmdk4GetBackingStore(char **res,
return BACKING_STORE_INVALID;
len = buf_size - 0x200;
- if (len > VIR_STORAGE_MAX_HEADER)
- len = VIR_STORAGE_MAX_HEADER;
+ if (len >= VIR_STORAGE_MAX_HEADER)
+ len = VIR_STORAGE_MAX_HEADER - 1;
memcpy(desc, buf + 0x200, len);
desc[len] = '\0';
start = strstr(desc, prefix);
--
2.30.2
2 years
[PATCH 0/5] Consistently use 'libvirt.org' instead of 'www.libvirt.org' and update links to subprojects
by Peter Krempa
Note that the required DNS changes for the subproject pages are not live
yet.
Peter Krempa (5):
Use 'libvirt.org' instead of 'www.libvirt.org'
docs: Update link to the php bindings project webpage
docs: Update links to the libvirt-ocaml bindings project webpage
docs: Update links to the libvirt-ruby bindings project webpage
docs: java: Use new hostname for the sub-project
docs/apps.rst | 2 +-
docs/bindings.rst | 8 ++++----
docs/docs.rst | 6 +++---
docs/downloads.rst | 2 +-
docs/java.rst | 2 +-
docs/manpages/libvirtd.rst | 2 +-
docs/manpages/virt-admin.rst | 2 +-
docs/manpages/virt-pki-query-dn.rst | 2 +-
docs/manpages/virt-pki-validate.rst | 2 +-
docs/manpages/virt-qemu-sev-validate.rst | 2 +-
docs/manpages/virtbhyved.rst | 4 ++--
docs/manpages/virtinterfaced.rst | 4 ++--
docs/manpages/virtlxcd.rst | 4 ++--
docs/manpages/virtnetworkd.rst | 4 ++--
docs/manpages/virtnodedevd.rst | 4 ++--
docs/manpages/virtnwfilterd.rst | 4 ++--
docs/manpages/virtproxyd.rst | 2 +-
docs/manpages/virtqemud.rst | 4 ++--
docs/manpages/virtsecretd.rst | 4 ++--
docs/manpages/virtstoraged.rst | 4 ++--
docs/manpages/virtvboxd.rst | 4 ++--
docs/manpages/virtvzd.rst | 4 ++--
docs/manpages/virtxend.rst | 4 ++--
docs/meson.build | 1 -
docs/php.rst | 23 -----------------------
docs/styleguide.rst | 2 +-
docs/testapi.rst | 2 +-
src/libvirt-domain-checkpoint.c | 2 +-
src/libvirt-domain.c | 2 +-
29 files changed, 44 insertions(+), 68 deletions(-)
delete mode 100644 docs/php.rst
--
2.39.2
2 years
[libvirt PATCH] cpu-data.py: Filter out apic current logical processor
by Tim Wiederhake
Commit 10b5e789c5 attempts to filter out the logical processor id
in the generated data to remove noise and irrelevant changes in the
output.
cpuid-leaf 0x0B may have more than two sub-leaves though. Filter out
logical processor id from all sub-leaves of 0x0B and 0x1F (superset
of the information in 0x0B).
Signed-off-by: Tim Wiederhake <twiederh(a)redhat.com>
---
tests/cputestdata/cpu-data.py | 17 ++++++++++-------
1 file changed, 10 insertions(+), 7 deletions(-)
diff --git a/tests/cputestdata/cpu-data.py b/tests/cputestdata/cpu-data.py
index 498e07b2f7..b5641f7c16 100755
--- a/tests/cputestdata/cpu-data.py
+++ b/tests/cputestdata/cpu-data.py
@@ -107,11 +107,14 @@ def gather_cpuid_leaves_kcpuid(output):
def gather_cpuid_leaves(args):
def mask(regs, eax_in, ecx_in, eax_mask, ebx_mask, ecx_mask, edx_mask):
- if regs["eax_in"] == eax_in and regs["ecx_in"] == ecx_in:
- regs["eax"] &= eax_mask
- regs["ebx"] &= ebx_mask
- regs["ecx"] &= ecx_mask
- regs["edx"] &= edx_mask
+ if eax_in != regs["eax_in"]:
+ return
+ if ecx_in != regs["ecx_in"] and ecx_in is not None:
+ return
+ regs["eax"] &= eax_mask
+ regs["ebx"] &= ebx_mask
+ regs["ecx"] &= ecx_mask
+ regs["edx"] &= edx_mask
cpuid = args.path_to_cpuid or "cpuid"
try:
@@ -132,8 +135,8 @@ def gather_cpuid_leaves(args):
for regs in reglist:
# local apic id. Pretend to always run on logical processor #0.
mask(regs, 0x01, 0x00, 0xffffffff, 0x00ffffff, 0xffffffff, 0xffffffff)
- mask(regs, 0x0b, 0x00, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffff00)
- mask(regs, 0x0b, 0x01, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffff00)
+ mask(regs, 0x0b, None, 0xffffffff, 0xffffffff, 0xffffffff, 0x00000000)
+ mask(regs, 0x1f, None, 0xffffffff, 0xffffffff, 0xffffffff, 0x00000000)
yield regs
--
2.39.2
2 years
[PATCH] qemu: Add vhost-user-blk unix socket to support server mode
by Zhenguo Yao
qemu support server mode when using vhost-user-blk disk.
Let libvirt to support this.
Signed-off-by: Zhenguo Yao <yaozhenguo1(a)gmail.com>
---
src/conf/domain_conf.c | 14 ++++++++++++++
src/conf/schemas/domaincommon.rng | 8 ++++++++
.../disk-vhostuser-numa.x86_64-4.2.0.args | 6 ++++--
.../disk-vhostuser-numa.x86_64-latest.args | 6 ++++--
tests/qemuxml2argvdata/disk-vhostuser-numa.xml | 9 +++++++--
.../disk-vhostuser.x86_64-latest.args | 6 ++++--
tests/qemuxml2argvdata/disk-vhostuser.xml | 9 +++++++--
.../disk-vhostuser.x86_64-latest.xml | 12 +++++++++---
8 files changed, 57 insertions(+), 13 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index a5578324b9..61addbe222 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -7283,6 +7283,7 @@ virDomainDiskSourceVHostUserParse(xmlNodePtr node,
{
g_autofree char *type = virXMLPropString(node, "type");
g_autofree char *path = virXMLPropString(node, "path");
+ g_autofree char *mode = virXMLPropString(node, "mode");
if (!type) {
virReportError(VIR_ERR_XML_ERROR, "%s",
@@ -7313,6 +7314,17 @@ virDomainDiskSourceVHostUserParse(xmlNodePtr node,
ctxt) < 0) {
return -1;
}
+ if (mode && STREQ(mode, "server")) {
+ src->vhostuser->data.nix.listen = true;
+ if (src->vhostuser->data.nix.reconnect.enabled == VIR_TRISTATE_BOOL_YES) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+ _("'reconnect' attribute unsupported "
+ "'server' mode for `<disk type='vhostuser'>`"));
+ return -1;
+ }
+ } else if (mode && STREQ(mode, "client")) {
+ src->vhostuser->data.nix.listen = false;
+ }
return 0;
}
@@ -22121,6 +22133,8 @@ virDomainDiskSourceVhostuserFormat(virBuffer *attrBuf,
virBufferAddLit(attrBuf, " type='unix'");
virBufferAsprintf(attrBuf, " path='%s'", vhostuser->data.nix.path);
+ if (vhostuser->data.nix.listen)
+ virBufferAsprintf(attrBuf, " mode='%s'", "server");
virDomainChrSourceReconnectDefFormat(childBuf, &vhostuser->data.nix.reconnect);
}
diff --git a/src/conf/schemas/domaincommon.rng b/src/conf/schemas/domaincommon.rng
index a57dd212ab..d926195d69 100644
--- a/src/conf/schemas/domaincommon.rng
+++ b/src/conf/schemas/domaincommon.rng
@@ -2359,6 +2359,14 @@
<attribute name="path">
<ref name="absFilePath"/>
</attribute>
+ <optional>
+ <attribute name="mode">
+ <choice>
+ <value>server</value>
+ <value>client</value>
+ </choice>
+ </attribute>
+ </optional>
<optional>
<ref name="reconnect"/>
</optional>
diff --git a/tests/qemuxml2argvdata/disk-vhostuser-numa.x86_64-4.2.0.args b/tests/qemuxml2argvdata/disk-vhostuser-numa.x86_64-4.2.0.args
index 4480266e75..afd0be4ea5 100644
--- a/tests/qemuxml2argvdata/disk-vhostuser-numa.x86_64-4.2.0.args
+++ b/tests/qemuxml2argvdata/disk-vhostuser-numa.x86_64-4.2.0.args
@@ -31,9 +31,11 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
-chardev socket,id=chr-vu-virtio-disk0,path=/tmp/vhost1.sock \
-device vhost-user-blk-pci,bus=pci.0,addr=0x2,chardev=chr-vu-virtio-disk0,id=virtio-disk0,bootindex=1 \
--chardev socket,id=chr-vu-virtio-disk1,path=/tmp/vhost1.sock,reconnect=10 \
+-chardev socket,id=chr-vu-virtio-disk1,path=/tmp/vhost1.sock,server=on,wait=off \
-device vhost-user-blk-pci,iommu_platform=on,ats=on,packed=on,bus=pci.0,addr=0x3,chardev=chr-vu-virtio-disk1,id=virtio-disk1 \
+-chardev socket,id=chr-vu-virtio-disk2,path=/tmp/vhost1.sock,reconnect=10 \
+-device vhost-user-blk-pci,iommu_platform=on,ats=on,packed=on,bus=pci.0,addr=0x4,chardev=chr-vu-virtio-disk2,id=virtio-disk2 \
-audiodev '{"id":"audio1","driver":"none"}' \
--device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4 \
+-device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5 \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/disk-vhostuser-numa.x86_64-latest.args b/tests/qemuxml2argvdata/disk-vhostuser-numa.x86_64-latest.args
index 75b3232dad..ea4b227328 100644
--- a/tests/qemuxml2argvdata/disk-vhostuser-numa.x86_64-latest.args
+++ b/tests/qemuxml2argvdata/disk-vhostuser-numa.x86_64-latest.args
@@ -31,9 +31,11 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
-device '{"driver":"piix3-usb-uhci","id":"usb","bus":"pci.0","addr":"0x1.0x2"}' \
-chardev socket,id=chr-vu-virtio-disk0,path=/tmp/vhost1.sock \
-device '{"driver":"vhost-user-blk-pci","bus":"pci.0","addr":"0x2","chardev":"chr-vu-virtio-disk0","id":"virtio-disk0","bootindex":1}' \
--chardev socket,id=chr-vu-virtio-disk1,path=/tmp/vhost1.sock,reconnect=10 \
+-chardev socket,id=chr-vu-virtio-disk1,path=/tmp/vhost1.sock,server=on,wait=off \
-device '{"driver":"vhost-user-blk-pci","iommu_platform":true,"ats":true,"packed":true,"bus":"pci.0","addr":"0x3","chardev":"chr-vu-virtio-disk1","id":"virtio-disk1"}' \
+-chardev socket,id=chr-vu-virtio-disk2,path=/tmp/vhost1.sock,reconnect=10 \
+-device '{"driver":"vhost-user-blk-pci","iommu_platform":true,"ats":true,"packed":true,"bus":"pci.0","addr":"0x4","chardev":"chr-vu-virtio-disk2","id":"virtio-disk2"}' \
-audiodev '{"id":"audio1","driver":"none"}' \
--device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.0","addr":"0x4"}' \
+-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.0","addr":"0x5"}' \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/disk-vhostuser-numa.xml b/tests/qemuxml2argvdata/disk-vhostuser-numa.xml
index 49efbae0a2..1135b51b8a 100644
--- a/tests/qemuxml2argvdata/disk-vhostuser-numa.xml
+++ b/tests/qemuxml2argvdata/disk-vhostuser-numa.xml
@@ -23,10 +23,15 @@
</disk>
<disk type='vhostuser' device='disk'>
<driver name='qemu' type='raw' iommu='on' ats='on' packed='on'/>
- <source type='unix' path='/tmp/vhost1.sock'>
+ <source type='unix' path='/tmp/vhost1.sock' mode='server'/>
+ <target dev='vdb' bus='virtio'/>
+ </disk>
+ <disk type='vhostuser' device='disk'>
+ <driver name='qemu' type='raw' iommu='on' ats='on' packed='on'/>
+ <source type='unix' path='/tmp/vhost1.sock' mode='client'>
<reconnect enabled='yes' timeout='10'/>
</source>
- <target dev='vdb' bus='virtio'/>
+ <target dev='vdc' bus='virtio'/>
</disk>
</devices>
</domain>
diff --git a/tests/qemuxml2argvdata/disk-vhostuser.x86_64-latest.args b/tests/qemuxml2argvdata/disk-vhostuser.x86_64-latest.args
index 31428fc697..4391776b88 100644
--- a/tests/qemuxml2argvdata/disk-vhostuser.x86_64-latest.args
+++ b/tests/qemuxml2argvdata/disk-vhostuser.x86_64-latest.args
@@ -30,9 +30,11 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
-device '{"driver":"piix3-usb-uhci","id":"usb","bus":"pci.0","addr":"0x1.0x2"}' \
-chardev socket,id=chr-vu-virtio-disk0,path=/tmp/vhost1.sock \
-device '{"driver":"vhost-user-blk-pci","bus":"pci.0","addr":"0x2","chardev":"chr-vu-virtio-disk0","id":"virtio-disk0","bootindex":1}' \
--chardev socket,id=chr-vu-virtio-disk1,path=/tmp/vhost1.sock,reconnect=10 \
+-chardev socket,id=chr-vu-virtio-disk1,path=/tmp/vhost1.sock,server=on,wait=off \
-device '{"driver":"vhost-user-blk-pci","iommu_platform":true,"ats":true,"packed":true,"bus":"pci.0","addr":"0x3","chardev":"chr-vu-virtio-disk1","id":"virtio-disk1"}' \
+-chardev socket,id=chr-vu-virtio-disk2,path=/tmp/vhost1.sock,reconnect=10 \
+-device '{"driver":"vhost-user-blk-pci","iommu_platform":true,"ats":true,"packed":true,"bus":"pci.0","addr":"0x4","chardev":"chr-vu-virtio-disk2","id":"virtio-disk2"}' \
-audiodev '{"id":"audio1","driver":"none"}' \
--device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.0","addr":"0x4"}' \
+-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.0","addr":"0x5"}' \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/disk-vhostuser.xml b/tests/qemuxml2argvdata/disk-vhostuser.xml
index a0a3df4dd0..33fc0b885e 100644
--- a/tests/qemuxml2argvdata/disk-vhostuser.xml
+++ b/tests/qemuxml2argvdata/disk-vhostuser.xml
@@ -21,10 +21,15 @@
</disk>
<disk type='vhostuser' device='disk'>
<driver name='qemu' type='raw' iommu='on' ats='on' packed='on'/>
- <source type='unix' path='/tmp/vhost1.sock'>
+ <source type='unix' path='/tmp/vhost1.sock' mode='server'/>
+ <target dev='vdb' bus='virtio'/>
+ </disk>
+ <disk type='vhostuser' device='disk'>
+ <driver name='qemu' type='raw' iommu='on' ats='on' packed='on'/>
+ <source type='unix' path='/tmp/vhost1.sock' mode='client'>
<reconnect enabled='yes' timeout='10'/>
</source>
- <target dev='vdb' bus='virtio'/>
+ <target dev='vdc' bus='virtio'/>
</disk>
</devices>
</domain>
diff --git a/tests/qemuxml2xmloutdata/disk-vhostuser.x86_64-latest.xml b/tests/qemuxml2xmloutdata/disk-vhostuser.x86_64-latest.xml
index c64621fe93..cd955570f3 100644
--- a/tests/qemuxml2xmloutdata/disk-vhostuser.x86_64-latest.xml
+++ b/tests/qemuxml2xmloutdata/disk-vhostuser.x86_64-latest.xml
@@ -27,13 +27,19 @@
<boot order='1'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
</disk>
+ <disk type='vhostuser' device='disk' snapshot='no'>
+ <driver name='qemu' type='raw' iommu='on' ats='on' packed='on'/>
+ <source type='unix' path='/tmp/vhost1.sock' mode='server'/>
+ <target dev='vdb' bus='virtio'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
+ </disk>
<disk type='vhostuser' device='disk' snapshot='no'>
<driver name='qemu' type='raw' iommu='on' ats='on' packed='on'/>
<source type='unix' path='/tmp/vhost1.sock'>
<reconnect enabled='yes' timeout='10'/>
</source>
- <target dev='vdb' bus='virtio'/>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
+ <target dev='vdc' bus='virtio'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
</disk>
<controller type='usb' index='0' model='piix3-uhci'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
@@ -43,7 +49,7 @@
<input type='keyboard' bus='ps2'/>
<audio id='1' type='none'/>
<memballoon model='virtio'>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
</memballoon>
</devices>
</domain>
--
2.32.0
2 years
[libvirt PATCH 0/3] qemu: Fix firmware selection backwards compatibility
by Andrea Bolognani
Andrea Bolognani (3):
tests: Introduce DO_TEST_CAPS_ARCH_LATEST_ABI_UPDATE()
tests: Add firmware-auto-efi-abi-update-aarch64 test case
qemu: Default to raw firmware for existing domains
src/qemu/qemu_domain.c | 17 +++++++++++++++++
...irmware-auto-efi-aarch64.aarch64-latest.args | 8 ++++----
...-efi-abi-update-aarch64.aarch64-latest.args} | 0
.../firmware-auto-efi-abi-update-aarch64.xml | 17 +++++++++++++++++
.../pvpanic-pci-aarch64.aarch64-latest.args | 8 ++++----
...c-pci-no-address-aarch64.aarch64-latest.args | 8 ++++----
.../virtio-iommu-aarch64.aarch64-latest.args | 8 ++++----
tests/qemuxml2argvtest.c | 6 ++++++
...firmware-auto-efi-aarch64.aarch64-latest.xml | 4 ++--
...o-efi-abi-update-aarch64.aarch64-latest.xml} | 0
.../pvpanic-pci-aarch64.aarch64-latest.xml | 4 ++--
...ic-pci-no-address-aarch64.aarch64-latest.xml | 4 ++--
.../virtio-iommu-aarch64.aarch64-latest.xml | 4 ++--
tests/qemuxml2xmltest.c | 6 ++++++
14 files changed, 70 insertions(+), 24 deletions(-)
copy tests/qemuxml2argvdata/{firmware-auto-efi-aarch64.aarch64-latest.args => firmware-auto-efi-abi-update-aarch64.aarch64-latest.args} (100%)
create mode 100644 tests/qemuxml2argvdata/firmware-auto-efi-abi-update-aarch64.xml
copy tests/qemuxml2xmloutdata/{firmware-auto-efi-aarch64.aarch64-latest.xml => firmware-auto-efi-abi-update-aarch64.aarch64-latest.xml} (100%)
--
2.39.2
2 years