From: Paolo Bonzini <pbonzini@redhat.com>
To: qemu-devel@nongnu.org
Cc: richard.henderson@linaro.org, alex.bennee@linaro.org
Subject: [PATCH 05/17] tests/docker: inline variable definitions or move close to use
Date: Fri, 1 Apr 2022 16:13:14 +0200 [thread overview]
Message-ID: <20220401141326.1244422-6-pbonzini@redhat.com> (raw)
In-Reply-To: <20220401141326.1244422-1-pbonzini@redhat.com>
Variables that are defined with ":=" are handled imperatively, so moving
them closer to the first use ensures that all the assignments prior to
the first use are taken into account.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-Id: <20220328140240.40798-6-pbonzini@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
tests/docker/Makefile.include | 32 ++++++++++++++++----------------
1 file changed, 16 insertions(+), 16 deletions(-)
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 751151d7e9..9b4d1cf837 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -9,26 +9,12 @@ COMMA := ,
HOST_ARCH = $(if $(ARCH),$(ARCH),$(shell uname -m))
DOCKER_FILES_DIR := $(SRC_PATH)/tests/docker/dockerfiles
-# we don't run tests on intermediate images (used as base by another image)
-DOCKER_PARTIAL_IMAGES := debian10 debian11
-# we don't directly build virtual images (they are used to build other images)
-DOCKER_VIRTUAL_IMAGES := debian-bootstrap debian-toolchain
-__IMAGES := $(sort $(filter-out $(DOCKER_VIRTUAL_IMAGES), $(notdir $(basename $(wildcard $(DOCKER_FILES_DIR)/*.docker)))))
-DOCKER_IMAGES := $(if $(IMAGES), $(filter $(IMAGES), $(__IMAGES)), $(__IMAGES))
-DOCKER_TARGETS := $(patsubst %,docker-image-%,$(DOCKER_IMAGES))
-# Use a global constant ccache directory to speed up repetitive builds
-DOCKER_CCACHE_DIR := $$HOME/.cache/qemu-docker-ccache
ifeq ($(HOST_ARCH),x86_64)
DOCKER_DEFAULT_REGISTRY := registry.gitlab.com/qemu-project/qemu
endif
DOCKER_REGISTRY := $(if $(REGISTRY),$(REGISTRY),$(DOCKER_DEFAULT_REGISTRY))
-__TESTS := $(notdir $(shell \
- find $(SRC_PATH)/tests/docker/ -name 'test-*' -type f))
-DOCKER_TESTS := $(if $(TESTS), $(filter $(TESTS), $(__TESTS)), $(__TESTS))
-
ENGINE := auto
-
DOCKER_SCRIPT=$(SRC_PATH)/tests/docker/docker.py --engine $(ENGINE)
CUR_TIME := $(shell date +%Y-%m-%d-%H.%M.%S.$$$$)
@@ -47,8 +33,6 @@ $(DOCKER_SRC_COPY):
docker-qemu-src: $(DOCKER_SRC_COPY)
-docker-image: ${DOCKER_TARGETS}
-
# General rule for building docker images. If we are a sub-make
# invoked with SKIP_DOCKER_BUILD we still check the image is up to date
# though
@@ -96,6 +80,8 @@ docker-binfmt-image-debian-%: $(DOCKER_FILES_DIR)/debian-bootstrap.docker
endif
# Enforce dependencies for composite images
+# we don't run tests on intermediate images (used as base by another image)
+DOCKER_PARTIAL_IMAGES := debian10 debian11
ifeq ($(HOST_ARCH),x86_64)
docker-image-debian-amd64: docker-image-debian10
DOCKER_PARTIAL_IMAGES += debian-amd64-cross
@@ -205,6 +191,15 @@ DOCKER_PARTIAL_IMAGES += debian-tricore-cross
DOCKER_PARTIAL_IMAGES += debian-xtensa-cross
DOCKER_PARTIAL_IMAGES += fedora-cris-cross
+# images that are only used to build other images
+DOCKER_VIRTUAL_IMAGES := debian-bootstrap debian-toolchain
+
+__IMAGES := $(sort $(filter-out $(DOCKER_VIRTUAL_IMAGES), $(notdir $(basename $(wildcard $(DOCKER_FILES_DIR)/*.docker)))))
+DOCKER_IMAGES := $(if $(IMAGES), $(filter $(IMAGES), $(__IMAGES)), $(__IMAGES))
+
+__TESTS := $(notdir $(shell find $(SRC_PATH)/tests/docker/ -name 'test-*' -type f))
+DOCKER_TESTS := $(if $(TESTS), $(filter $(TESTS), $(__TESTS)), $(__TESTS))
+
# Expand all the pre-requistes for each docker image and test combination
$(foreach i,$(filter-out $(DOCKER_PARTIAL_IMAGES) $(DOCKER_VIRTUAL_IMAGES),$(DOCKER_IMAGES)), \
$(foreach t,$(DOCKER_TESTS), \
@@ -263,6 +258,9 @@ docker:
docker-help: docker
+# Use a global constant ccache directory to speed up repetitive builds
+DOCKER_CCACHE_DIR := $$HOME/.cache/qemu-docker-ccache
+
# This rule if for directly running against an arbitrary docker target.
# It is called by the expanded docker targets (e.g. make
# docker-test-foo@bar) which will do additional verification.
@@ -308,5 +306,7 @@ docker-run-%: IMAGE = $(shell echo '$@' | sed -e 's/docker-run-\([^@]*\)@\(.*\)/
docker-run-%:
@$(MAKE) docker-run TEST=$(CMD) IMAGE=qemu/$(IMAGE)
+docker-image: ${DOCKER_IMAGES:%=docker-image-%}
+
docker-clean:
$(call quiet-command, $(DOCKER_SCRIPT) clean)
--
2.35.1
next prev parent reply other threads:[~2022-04-01 14:21 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-01 14:13 [PATCH 00/17] tests/docker and tests/tcg cleanup and diet Paolo Bonzini
2022-04-01 14:13 ` [PATCH 01/17] tests/docker: remove dead code for linux-user containers Paolo Bonzini
2022-04-01 14:13 ` [PATCH 02/17] tests/docker: remove test targets Paolo Bonzini
2022-04-01 14:13 ` [PATCH 03/17] tests/docker: remove dead variable Paolo Bonzini
2022-04-01 14:13 ` [PATCH 04/17] tests/docker: remove unnecessary default definitions Paolo Bonzini
2022-04-01 14:13 ` Paolo Bonzini [this message]
2022-04-01 14:13 ` [PATCH 06/17] tests/docker: remove unnecessary filtering of $(DOCKER_IMAGES) Paolo Bonzini
2022-04-01 14:13 ` [PATCH 07/17] tests/docker: simplify docker-TEST@IMAGE targets Paolo Bonzini
2022-04-01 14:13 ` [PATCH 08/17] tests/docker: do not duplicate rules for hexagon-cross Paolo Bonzini
2022-04-01 14:13 ` [PATCH 09/17] tests/tcg: add compiler test variables when using containers Paolo Bonzini
2022-04-01 14:13 ` [PATCH 10/17] tests/tcg: remove CONFIG_LINUX_USER from config-target.mak Paolo Bonzini
2022-04-01 14:13 ` [PATCH 11/17] tests/tcg: remove CONFIG_USER_ONLY " Paolo Bonzini
2022-04-01 14:13 ` [PATCH 12/17] tests/tcg: prepare Makefile.prereqs at configure time Paolo Bonzini
2022-04-01 14:13 ` [PATCH 13/17] tests/tcg: list test targets in Makefile.prereqs Paolo Bonzini
2022-04-01 14:13 ` [PATCH 14/17] tests/tcg: invoke Makefile.target directly from QEMU's makefile Paolo Bonzini
2022-04-01 14:13 ` [PATCH 15/17] tests/tcg: isolate from QEMU's config-host.mak Paolo Bonzini
2022-04-01 14:13 ` [PATCH 16/17] tests/docker: remove SKIP_DOCKER_BUILD Paolo Bonzini
2022-04-01 14:13 ` [PATCH 17/17] tests/tcg: fix non-static build Paolo Bonzini
2022-04-11 9:59 ` [PATCH 00/17] tests/docker and tests/tcg cleanup and diet Alex Bennée
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220401141326.1244422-6-pbonzini@redhat.com \
--to=pbonzini@redhat.com \
--cc=alex.bennee@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).