9 changes: 7 additions & 2 deletions tcg/tcg.c
Expand Up @@ -1879,6 +1879,8 @@ bool tcg_op_supported(TCGOpcode op)
case INDEX_op_sar_i32:
return true;

case INDEX_op_negsetcond_i32:
return TCG_TARGET_HAS_negsetcond_i32;
case INDEX_op_movcond_i32:
return TCG_TARGET_HAS_movcond_i32;
case INDEX_op_div_i32:
Expand Down Expand Up @@ -1977,6 +1979,8 @@ bool tcg_op_supported(TCGOpcode op)
case INDEX_op_extu_i32_i64:
return TCG_TARGET_REG_BITS == 64;

case INDEX_op_negsetcond_i64:
return TCG_TARGET_HAS_negsetcond_i64;
case INDEX_op_movcond_i64:
return TCG_TARGET_HAS_movcond_i64;
case INDEX_op_div_i64:
Expand All @@ -2000,9 +2004,8 @@ bool tcg_op_supported(TCGOpcode op)
case INDEX_op_extract2_i64:
return TCG_TARGET_HAS_extract2_i64;
case INDEX_op_extrl_i64_i32:
return TCG_TARGET_HAS_extrl_i64_i32;
case INDEX_op_extrh_i64_i32:
return TCG_TARGET_HAS_extrh_i64_i32;
return TCG_TARGET_HAS_extr_i64_i32;
case INDEX_op_ext8s_i64:
return TCG_TARGET_HAS_ext8s_i64;
case INDEX_op_ext16s_i64:
Expand Down Expand Up @@ -2510,11 +2513,13 @@ static void tcg_dump_ops(TCGContext *s, FILE *f, bool have_prefs)
switch (c) {
case INDEX_op_brcond_i32:
case INDEX_op_setcond_i32:
case INDEX_op_negsetcond_i32:
case INDEX_op_movcond_i32:
case INDEX_op_brcond2_i32:
case INDEX_op_setcond2_i32:
case INDEX_op_brcond_i64:
case INDEX_op_setcond_i64:
case INDEX_op_negsetcond_i64:
case INDEX_op_movcond_i64:
case INDEX_op_cmp_vec:
case INDEX_op_cmpsel_vec:
Expand Down
5 changes: 3 additions & 2 deletions tcg/tci/tcg-target.h
Expand Up @@ -70,14 +70,14 @@
#define TCG_TARGET_HAS_orc_i32 1
#define TCG_TARGET_HAS_rot_i32 1
#define TCG_TARGET_HAS_movcond_i32 1
#define TCG_TARGET_HAS_negsetcond_i32 0
#define TCG_TARGET_HAS_muls2_i32 1
#define TCG_TARGET_HAS_muluh_i32 0
#define TCG_TARGET_HAS_mulsh_i32 0
#define TCG_TARGET_HAS_qemu_st8_i32 0

#if TCG_TARGET_REG_BITS == 64
#define TCG_TARGET_HAS_extrl_i64_i32 0
#define TCG_TARGET_HAS_extrh_i64_i32 0
#define TCG_TARGET_HAS_extr_i64_i32 0
#define TCG_TARGET_HAS_bswap16_i64 1
#define TCG_TARGET_HAS_bswap32_i64 1
#define TCG_TARGET_HAS_bswap64_i64 1
Expand Down Expand Up @@ -105,6 +105,7 @@
#define TCG_TARGET_HAS_orc_i64 1
#define TCG_TARGET_HAS_rot_i64 1
#define TCG_TARGET_HAS_movcond_i64 1
#define TCG_TARGET_HAS_negsetcond_i64 0
#define TCG_TARGET_HAS_muls2_i64 1
#define TCG_TARGET_HAS_add2_i32 1
#define TCG_TARGET_HAS_sub2_i32 1
Expand Down
19 changes: 8 additions & 11 deletions tests/Makefile.include
Expand Up @@ -89,10 +89,8 @@ distclean-tcg: $(DISTCLEAN_TCG_TARGET_RULES)
# Build up our target list from the filtered list of ninja targets
TARGETS=$(patsubst libqemu-%.fa, %, $(filter libqemu-%.fa, $(ninja-targets)))

TESTS_VENV_DIR=$(BUILD_DIR)/tests/venv
TESTS_VENV_REQ=$(SRC_PATH)/tests/requirements.txt
TESTS_VENV_TOKEN=$(BUILD_DIR)/pyvenv/tests.group
TESTS_RESULTS_DIR=$(BUILD_DIR)/tests/results
TESTS_PYTHON=$(TESTS_VENV_DIR)/bin/python3
ifndef AVOCADO_TESTS
AVOCADO_TESTS=tests/avocado
endif
Expand All @@ -108,20 +106,19 @@ else
endif

quiet-venv-pip = $(quiet-@)$(call quiet-command-run, \
$(TESTS_PYTHON) -m pip -q --disable-pip-version-check $1, \
$(PYTHON) -m pip -q --disable-pip-version-check $1, \
"VENVPIP","$1")

$(TESTS_VENV_DIR): $(TESTS_VENV_REQ)
$(call quiet-command, $(PYTHON) -m venv $@, VENV, $@)
$(TESTS_VENV_TOKEN): $(SRC_PATH)/pythondeps.toml
$(call quiet-venv-pip,install -e "$(SRC_PATH)/python/")
$(call quiet-venv-pip,install -r $(TESTS_VENV_REQ))
$(PYTHON) python/scripts/mkvenv.py ensuregroup --online $< avocado
$(call quiet-command, touch $@)

$(TESTS_RESULTS_DIR):
$(call quiet-command, mkdir -p $@, \
MKDIR, $@)

check-venv: $(TESTS_VENV_DIR)
check-venv: $(TESTS_VENV_TOKEN)

FEDORA_31_ARCHES_TARGETS=$(patsubst %-softmmu,%, $(filter %-softmmu,$(TARGETS)))
FEDORA_31_ARCHES_CANDIDATES=$(patsubst ppc64,ppc64le,$(FEDORA_31_ARCHES_TARGETS))
Expand All @@ -131,7 +128,7 @@ FEDORA_31_DOWNLOAD=$(filter $(FEDORA_31_ARCHES),$(FEDORA_31_ARCHES_CANDIDATES))
# download one specific Fedora 31 image
get-vm-image-fedora-31-%: check-venv
$(call quiet-command, \
$(TESTS_PYTHON) -m avocado vmimage get \
$(PYTHON) -m avocado vmimage get \
--distro=fedora --distro-version=31 --arch=$*, \
"AVOCADO", "Downloading avocado tests VM image for $*")

Expand All @@ -140,7 +137,7 @@ get-vm-images: check-venv $(patsubst %,get-vm-image-fedora-31-%, $(FEDORA_31_DOW

check-avocado: check-venv $(TESTS_RESULTS_DIR) get-vm-images
$(call quiet-command, \
$(TESTS_PYTHON) -m avocado \
$(PYTHON) -m avocado \
--show=$(AVOCADO_SHOW) run --job-results-dir=$(TESTS_RESULTS_DIR) \
$(if $(AVOCADO_TAGS),, --filter-by-tags-include-empty \
--filter-by-tags-include-empty-key) \
Expand All @@ -163,7 +160,7 @@ check:
check-build: run-ninja

check-clean:
rm -rf $(TESTS_VENV_DIR) $(TESTS_RESULTS_DIR)
rm -rf $(TESTS_RESULTS_DIR)

clean: check-clean clean-tcg
distclean: distclean-tcg
Expand Down
3 changes: 2 additions & 1 deletion tests/docker/dockerfiles/centos8.docker
Expand Up @@ -133,7 +133,8 @@ RUN /usr/bin/pip3.8 install \
meson==0.63.2 \
pillow \
sphinx \
sphinx-rtd-theme
sphinx-rtd-theme \
tomli

ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
Expand Down
7 changes: 6 additions & 1 deletion tests/docker/dockerfiles/debian-all-test-cross.docker
Expand Up @@ -58,7 +58,12 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
libc6-dev-sh4-cross \
gcc-sparc64-linux-gnu \
libc6-dev-sparc64-cross \
python3-venv
python3-pip \
python3-setuptools \
python3-venv \
python3-wheel

RUN /usr/bin/pip3 install tomli

ENV QEMU_CONFIGURE_OPTS --disable-system --disable-docs --disable-tools
ENV DEF_TARGET_LIST aarch64-linux-user,alpha-linux-user,arm-linux-user,hppa-linux-user,i386-linux-user,m68k-linux-user,mips-linux-user,mips64-linux-user,mips64el-linux-user,mipsel-linux-user,ppc-linux-user,ppc64-linux-user,ppc64le-linux-user,riscv64-linux-user,s390x-linux-user,sh4-linux-user,sparc64-linux-user
Expand Down
6 changes: 5 additions & 1 deletion tests/docker/dockerfiles/debian-amd64-cross.docker
@@ -1,6 +1,6 @@
# THIS FILE WAS AUTO-GENERATED
#
# $ lcitool dockerfile --layers all --cross x86_64 debian-11 qemu
# $ lcitool dockerfile --layers all --cross-arch x86_64 debian-11 qemu
#
# https://gitlab.com/libvirt/libvirt-ci

Expand Down Expand Up @@ -47,9 +47,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 \
sed \
Expand All @@ -65,6 +67,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
dpkg-reconfigure locales

RUN /usr/bin/pip3 install tomli

ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
Expand Down
4 changes: 4 additions & 0 deletions tests/docker/dockerfiles/debian-amd64.docker
Expand Up @@ -115,9 +115,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 \
sed \
Expand All @@ -143,6 +145,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/g++ && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc

RUN /usr/bin/pip3 install tomli

ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
Expand Down
6 changes: 5 additions & 1 deletion tests/docker/dockerfiles/debian-arm64-cross.docker
@@ -1,6 +1,6 @@
# THIS FILE WAS AUTO-GENERATED
#
# $ lcitool dockerfile --layers all --cross aarch64 debian-11 qemu
# $ lcitool dockerfile --layers all --cross-arch aarch64 debian-11 qemu
#
# https://gitlab.com/libvirt/libvirt-ci

Expand Down Expand Up @@ -47,9 +47,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 \
sed \
Expand All @@ -65,6 +67,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
dpkg-reconfigure locales

RUN /usr/bin/pip3 install tomli

ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
Expand Down
6 changes: 5 additions & 1 deletion tests/docker/dockerfiles/debian-armel-cross.docker
@@ -1,6 +1,6 @@
# THIS FILE WAS AUTO-GENERATED
#
# $ lcitool dockerfile --layers all --cross armv6l debian-11 qemu
# $ lcitool dockerfile --layers all --cross-arch armv6l debian-11 qemu
#
# https://gitlab.com/libvirt/libvirt-ci

Expand Down Expand Up @@ -47,9 +47,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 \
sed \
Expand All @@ -65,6 +67,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
dpkg-reconfigure locales

RUN /usr/bin/pip3 install tomli

ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
Expand Down
6 changes: 5 additions & 1 deletion tests/docker/dockerfiles/debian-armhf-cross.docker
@@ -1,6 +1,6 @@
# THIS FILE WAS AUTO-GENERATED
#
# $ lcitool dockerfile --layers all --cross armv7l debian-11 qemu
# $ lcitool dockerfile --layers all --cross-arch armv7l debian-11 qemu
#
# https://gitlab.com/libvirt/libvirt-ci

Expand Down Expand Up @@ -47,9 +47,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 \
sed \
Expand All @@ -65,6 +67,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
dpkg-reconfigure locales

RUN /usr/bin/pip3 install tomli

ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
Expand Down
6 changes: 5 additions & 1 deletion tests/docker/dockerfiles/debian-hexagon-cross.docker
Expand Up @@ -21,11 +21,15 @@ RUN apt-get update && \
flex \
git \
ninja-build \
python3-venv && \
python3-pip \
python3-setuptools \
python3-venv \
python3-wheel && \
# Install QEMU build deps for use in CI
DEBIAN_FRONTEND=noninteractive eatmydata \
apt build-dep -yy --arch-only qemu

RUN /usr/bin/pip3 install tomli

ENV TOOLCHAIN_INSTALL /opt
ENV TOOLCHAIN_RELEASE 16.0.0
Expand Down
6 changes: 5 additions & 1 deletion tests/docker/dockerfiles/debian-mips64el-cross.docker
@@ -1,6 +1,6 @@
# THIS FILE WAS AUTO-GENERATED
#
# $ lcitool dockerfile --layers all --cross mips64el debian-11 qemu
# $ lcitool dockerfile --layers all --cross-arch mips64el debian-11 qemu
#
# https://gitlab.com/libvirt/libvirt-ci

Expand Down Expand Up @@ -47,9 +47,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 \
sed \
Expand All @@ -65,6 +67,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
dpkg-reconfigure locales

RUN /usr/bin/pip3 install tomli

ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
Expand Down
6 changes: 5 additions & 1 deletion tests/docker/dockerfiles/debian-mipsel-cross.docker
@@ -1,6 +1,6 @@
# THIS FILE WAS AUTO-GENERATED
#
# $ lcitool dockerfile --layers all --cross mipsel debian-11 qemu
# $ lcitool dockerfile --layers all --cross-arch mipsel debian-11 qemu
#
# https://gitlab.com/libvirt/libvirt-ci

Expand Down Expand Up @@ -47,9 +47,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 \
sed \
Expand All @@ -65,6 +67,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
dpkg-reconfigure locales

RUN /usr/bin/pip3 install tomli

ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
Expand Down
6 changes: 5 additions & 1 deletion tests/docker/dockerfiles/debian-ppc64el-cross.docker
@@ -1,6 +1,6 @@
# THIS FILE WAS AUTO-GENERATED
#
# $ lcitool dockerfile --layers all --cross ppc64le debian-11 qemu
# $ lcitool dockerfile --layers all --cross-arch ppc64le debian-11 qemu
#
# https://gitlab.com/libvirt/libvirt-ci

Expand Down Expand Up @@ -47,9 +47,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 \
sed \
Expand All @@ -65,6 +67,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
dpkg-reconfigure locales

RUN /usr/bin/pip3 install tomli

ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
Expand Down
2 changes: 1 addition & 1 deletion tests/docker/dockerfiles/debian-riscv64-cross.docker
@@ -1,6 +1,6 @@
# THIS FILE WAS AUTO-GENERATED
#
# $ lcitool dockerfile --layers all --cross riscv64 debian-sid qemu-minimal
# $ lcitool dockerfile --layers all --cross-arch riscv64 debian-sid qemu-minimal
#
# https://gitlab.com/libvirt/libvirt-ci

Expand Down
6 changes: 5 additions & 1 deletion tests/docker/dockerfiles/debian-s390x-cross.docker
@@ -1,6 +1,6 @@
# THIS FILE WAS AUTO-GENERATED
#
# $ lcitool dockerfile --layers all --cross s390x debian-11 qemu
# $ lcitool dockerfile --layers all --cross-arch s390x debian-11 qemu
#
# https://gitlab.com/libvirt/libvirt-ci

Expand Down Expand Up @@ -47,9 +47,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 \
sed \
Expand All @@ -65,6 +67,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
dpkg-reconfigure locales

RUN /usr/bin/pip3 install tomli

ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
Expand Down
4 changes: 3 additions & 1 deletion tests/docker/dockerfiles/debian-tricore-cross.docker
Expand Up @@ -9,7 +9,7 @@
#
# SPDX-License-Identifier: GPL-2.0-or-later
#
FROM docker.io/library/debian:buster-slim
FROM docker.io/library/debian:11-slim

MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>

Expand All @@ -36,6 +36,8 @@ RUN apt update && \
python3-wheel \
python3-venv

RUN /usr/bin/pip3 install tomli

RUN curl -#SL https://github.com/bkoppelmann/package_940/releases/download/tricore-toolchain-9.40/tricore-toolchain-9.4.0.tar.gz \
| tar -xzC /usr/local/

Expand Down
1 change: 1 addition & 0 deletions tests/docker/dockerfiles/fedora-i386-cross.docker
Expand Up @@ -24,6 +24,7 @@ ENV PACKAGES \
nettle-devel.i686 \
pcre-devel.i686 \
pixman-devel.i686 \
python3-tomli \
sysprof-capture-devel.i686 \
zlib-devel.i686

Expand Down
2 changes: 1 addition & 1 deletion tests/docker/dockerfiles/fedora-win32-cross.docker
@@ -1,6 +1,6 @@
# THIS FILE WAS AUTO-GENERATED
#
# $ lcitool dockerfile --layers all --cross mingw32 fedora-38 qemu
# $ lcitool dockerfile --layers all --cross-arch mingw32 fedora-38 qemu
#
# https://gitlab.com/libvirt/libvirt-ci

Expand Down
2 changes: 1 addition & 1 deletion tests/docker/dockerfiles/fedora-win64-cross.docker
@@ -1,6 +1,6 @@
# THIS FILE WAS AUTO-GENERATED
#
# $ lcitool dockerfile --layers all --cross mingw64 fedora-38 qemu
# $ lcitool dockerfile --layers all --cross-arch mingw64 fedora-38 qemu
#
# https://gitlab.com/libvirt/libvirt-ci

Expand Down
22 changes: 11 additions & 11 deletions tests/docker/dockerfiles/opensuse-leap.docker
Expand Up @@ -4,7 +4,7 @@
#
# https://gitlab.com/libvirt/libvirt-ci

FROM registry.opensuse.org/opensuse/leap:15.4
FROM registry.opensuse.org/opensuse/leap:15.5

RUN zypper update -y && \
zypper install -y \
Expand Down Expand Up @@ -90,9 +90,9 @@ RUN zypper update -y && \
pcre-devel-static \
pipewire-devel \
pkgconfig \
python39-base \
python39-pip \
python39-setuptools \
python311-base \
python311-pip \
python311-setuptools \
rdma-core-devel \
sed \
snappy-devel \
Expand Down Expand Up @@ -125,18 +125,18 @@ RUN zypper update -y && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/g++ && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc

RUN /usr/bin/pip3.9 install \
PyYAML \
meson==0.63.2 \
pillow \
sphinx \
sphinx-rtd-theme
RUN /usr/bin/pip3.11 install \
PyYAML \
meson==0.63.2 \
pillow \
sphinx \
sphinx-rtd-theme

ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
ENV NINJA "/usr/bin/ninja"
ENV PYTHON "/usr/bin/python3.9"
ENV PYTHON "/usr/bin/python3.11"
# As a final step configure the user (if env is defined)
ARG USER
ARG UID
Expand Down
4 changes: 3 additions & 1 deletion tests/docker/dockerfiles/ubuntu2004.docker
Expand Up @@ -141,7 +141,9 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/g++ && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc

RUN /usr/bin/pip3 install meson==0.63.2
RUN /usr/bin/pip3 install \
meson==0.63.2 \
tomli

ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
Expand Down
1 change: 1 addition & 0 deletions tests/docker/dockerfiles/ubuntu2204.docker
Expand Up @@ -117,6 +117,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
python3-pip \
python3-sphinx \
python3-sphinx-rtd-theme \
python3-tomli \
python3-venv \
python3-yaml \
rpm2cpio \
Expand Down
2 changes: 1 addition & 1 deletion tests/lcitool/libvirt-ci
Submodule libvirt-ci updated from 9bff3b to bbd55b
28 changes: 22 additions & 6 deletions tests/lcitool/mappings.yml
Expand Up @@ -9,15 +9,15 @@ mappings:

python3:
CentOSStream8: python38
OpenSUSELeap15: python39-base
OpenSUSELeap15: python311-base

python3-PyYAML:
CentOSStream8: python38-PyYAML
OpenSUSELeap15:

python3-devel:
CentOSStream8: python38-devel
OpenSUSELeap15: python39-devel
OpenSUSELeap15: python311-devel

python3-docutils:
CentOSStream8:
Expand All @@ -37,7 +37,7 @@ mappings:

python3-pip:
CentOSStream8: python38-pip
OpenSUSELeap15: python39-pip
OpenSUSELeap15: python311-pip

python3-pillow:
CentOSStream8:
Expand All @@ -49,7 +49,7 @@ mappings:

python3-setuptools:
CentOSStream8: python38-setuptools
OpenSUSELeap15: python39-setuptools
OpenSUSELeap15: python311-setuptools

python3-sphinx:
CentOSStream8:
Expand All @@ -59,13 +59,22 @@ mappings:
CentOSStream8:
OpenSUSELeap15:

python3-tomli:
# test using tomllib
apk:
Fedora:
Debian12:
OpenSUSELeap15:
# Not available for Python 3.8
CentOSStream8:

python3-venv:
CentOSStream8: python38
OpenSUSELeap15: python39-base
OpenSUSELeap15: python311-base

python3-wheel:
CentOSStream8: python38-wheel
OpenSUSELeap15: python39-pip
OpenSUSELeap15: python311-pip

pypi_mappings:
# Request more recent version
Expand All @@ -75,3 +84,10 @@ pypi_mappings:
# Drop packages that need devel headers
python3-numpy:
OpenSUSELeap15:

# see above
python3-tomli:
apk:
Fedora:
Debian12:
OpenSUSELeap15:
3 changes: 2 additions & 1 deletion tests/lcitool/projects/qemu.yml
Expand Up @@ -85,7 +85,7 @@ packages:
- pam
- pcre-static
- pixman
- pipewire
- libpipewire-dev
- pkg-config
- pulseaudio
- python3
Expand All @@ -96,6 +96,7 @@ packages:
- python3-pip
- python3-sphinx
- python3-sphinx-rtd-theme
- python3-tomli
- python3-venv
- rpm2cpio
- sdl2
Expand Down
4 changes: 2 additions & 2 deletions tests/lcitool/targets/opensuse-leap-15.yml
@@ -1,3 +1,3 @@
paths:
pip3: /usr/bin/pip3.9
python: /usr/bin/python3.9
pip3: /usr/bin/pip3.11
python: /usr/bin/python3.11
6 changes: 0 additions & 6 deletions tests/requirements.txt

This file was deleted.

2 changes: 1 addition & 1 deletion tests/vm/Makefile.include
Expand Up @@ -5,7 +5,7 @@ ifeq ($(realpath $(SRC_PATH)),$(realpath .))
VM_PYTHON = PYTHONPATH=$(SRC_PATH)/python /usr/bin/env python3
VM_VENV =
else
VM_PYTHON = $(TESTS_PYTHON)
VM_PYTHON = $(PYTHON)
VM_VENV = check-venv
endif

Expand Down
1 change: 1 addition & 0 deletions tests/vm/generated/freebsd.json
Expand Up @@ -56,6 +56,7 @@
"py39-pip",
"py39-sphinx",
"py39-sphinx_rtd_theme",
"py39-tomli",
"py39-yaml",
"python3",
"rpm2cpio",
Expand Down