|
@@ -89,9 +89,10 @@ 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_TOKEN=$(BUILD_DIR)/pyvenv/tests.group
|
|
|
+TESTS_VENV_DIR=$(BUILD_DIR)/tests/venv
|
|
|
TESTS_VENV_REQ=$(SRC_PATH)/tests/requirements.txt
|
|
|
TESTS_RESULTS_DIR=$(BUILD_DIR)/tests/results
|
|
|
+TESTS_PYTHON=$(TESTS_VENV_DIR)/bin/python3
|
|
|
ifndef AVOCADO_TESTS
|
|
|
AVOCADO_TESTS=tests/avocado
|
|
|
endif
|
|
@@ -107,10 +108,11 @@ else
|
|
|
endif
|
|
|
|
|
|
quiet-venv-pip = $(quiet-@)$(call quiet-command-run, \
|
|
|
- $(PYTHON) -m pip -q --disable-pip-version-check $1, \
|
|
|
+ $(TESTS_PYTHON) -m pip -q --disable-pip-version-check $1, \
|
|
|
"VENVPIP","$1")
|
|
|
|
|
|
-$(TESTS_VENV_TOKEN): $(TESTS_VENV_REQ)
|
|
|
+$(TESTS_VENV_DIR): $(TESTS_VENV_REQ)
|
|
|
+ $(call quiet-command, $(PYTHON) -m venv $@, VENV, $@)
|
|
|
$(call quiet-venv-pip,install -e "$(SRC_PATH)/python/")
|
|
|
$(call quiet-venv-pip,install -r $(TESTS_VENV_REQ))
|
|
|
$(call quiet-command, touch $@)
|
|
@@ -119,7 +121,7 @@ $(TESTS_RESULTS_DIR):
|
|
|
$(call quiet-command, mkdir -p $@, \
|
|
|
MKDIR, $@)
|
|
|
|
|
|
-check-venv: $(TESTS_VENV_TOKEN)
|
|
|
+check-venv: $(TESTS_VENV_DIR)
|
|
|
|
|
|
FEDORA_31_ARCHES_TARGETS=$(patsubst %-softmmu,%, $(filter %-softmmu,$(TARGETS)))
|
|
|
FEDORA_31_ARCHES_CANDIDATES=$(patsubst ppc64,ppc64le,$(FEDORA_31_ARCHES_TARGETS))
|
|
@@ -129,7 +131,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, \
|
|
|
- $(PYTHON) -m avocado vmimage get \
|
|
|
+ $(TESTS_PYTHON) -m avocado vmimage get \
|
|
|
--distro=fedora --distro-version=31 --arch=$*, \
|
|
|
"AVOCADO", "Downloading avocado tests VM image for $*")
|
|
|
|
|
@@ -138,7 +140,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, \
|
|
|
- $(PYTHON) -m avocado \
|
|
|
+ $(TESTS_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) \
|
|
@@ -161,7 +163,7 @@ check:
|
|
|
check-build: run-ninja
|
|
|
|
|
|
check-clean:
|
|
|
- rm -rf $(TESTS_RESULTS_DIR)
|
|
|
+ rm -rf $(TESTS_VENV_DIR) $(TESTS_RESULTS_DIR)
|
|
|
|
|
|
clean: check-clean clean-tcg
|
|
|
distclean: distclean-tcg
|