[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v4 39/40] testing: add check-build target
From: |
Alex Bennée |
Subject: |
[PATCH v4 39/40] testing: add check-build target |
Date: |
Wed, 1 Jul 2020 14:56:51 +0100 |
If we want to continue to split build and check phase it seems like a
good idea to allow building of the tests during our multi-threaded
build phase.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Cc: Daniel P. Berrangé <berrange@redhat.com>
---
.gitlab-ci.yml | 5 ++++-
tests/Makefile.include | 17 +++++++++++++----
2 files changed, 17 insertions(+), 5 deletions(-)
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 83e38ea19f3..b0e5417146b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -36,7 +36,7 @@ include:
- make -j"$JOBS"
- if test -n "$MAKE_CHECK_ARGS";
then
- make $MAKE_CHECK_ARGS ;
+ make -j"$JOBS" $MAKE_CHECK_ARGS ;
fi
.native_test_job_template: &native_test_job_definition
@@ -60,6 +60,7 @@ build-system-ubuntu-main:
TARGETS: aarch64-softmmu alpha-softmmu cris-softmmu hppa-softmmu
lm32-softmmu
moxie-softmmu microblazeel-softmmu mips64el-softmmu m68k-softmmu
ppc-softmmu
riscv64-softmmu sparc-softmmu
+ MAKE_CHECK_ARGS: check-build
artifacts:
paths:
- build
@@ -90,6 +91,7 @@ build-system-fedora-alt:
TARGETS: tricore-softmmu unicore32-softmmu microblaze-softmmu mips-softmmu
riscv32-softmmu s390x-softmmu sh4-softmmu sparc64-softmmu x86_64-softmmu
xtensa-softmmu nios2-softmmu or1k-softmmu
+ MAKE_CHECK_ARGS: check-build
artifacts:
paths:
- build
@@ -124,6 +126,7 @@ build-system-fedora-disabled:
--disable-qom-cast-debug --disable-spice --disable-vhost-vsock
--disable-vhost-net --disable-vhost-crypto --disable-vhost-user
TARGETS: i386-softmmu ppc64-softmmu mips64-softmmu i386-linux-user
+ MAKE_CHECK_ARGS: check-build
artifacts:
paths:
- build
diff --git a/tests/Makefile.include b/tests/Makefile.include
index c316e0d6647..94b1cc8302e 100644
--- a/tests/Makefile.include
+++ b/tests/Makefile.include
@@ -22,6 +22,8 @@ endif
@echo " $(MAKE) check-venv Creates a Python venv for tests"
@echo " $(MAKE) check-clean Clean the tests and related data"
@echo
+ @echo "The following are useful for CI builds"
+ @echo " $(MAKE) check-build Build most test binaris"
@echo " $(MAKE) get-vm-images Downloads all images used by
acceptance tests, according to configured targets (~350 MB each, 1.5 GB max)"
@echo
@echo
@@ -649,6 +651,10 @@ $(patsubst %, check-qtest-%, $(QTEST_TARGETS)):
check-qtest-%: %-softmmu/all $(c
QTEST_QEMU_BINARY=$*-softmmu/qemu-system-$* \
QTEST_QEMU_IMG=qemu-img$(EXESUF))
+build-qtest: $(patsubst %, %-softmmu/all, $(QTEST_TARGETS)) $(check-qtest-y)
+
+build-unit: $(check-unit-y)
+
check-unit: $(check-unit-y)
$(call do_test_human, $^)
@@ -680,7 +686,6 @@ check-report.tap: $(patsubst %,check-report-qtest-%.tap,
$(QTEST_TARGETS)) check
FP_TEST_BIN=$(BUILD_DIR)/tests/fp/fp-test
# the build dir is created by configure
-.PHONY: $(FP_TEST_BIN)
$(FP_TEST_BIN): config-host.h $(test-util-obj-y)
$(call quiet-command, \
$(MAKE) $(SUBDIR_MAKEFLAGS) -C $(dir $@) V="$(V)" $(notdir $@),
\
@@ -814,9 +819,10 @@ check-softfloat-ops: $(SF_MATH_RULES)
.PHONY: check-softfloat
ifeq ($(CONFIG_TCG),y)
-check-softfloat: check-softfloat-conv check-softfloat-compare
check-softfloat-ops
+build-softfloat: $(FP_TEST_BIN)
+check-softfloat: build-softfloat check-softfloat-conv check-softfloat-compare
check-softfloat-ops
else
-check-softfloat:
+build-softfloat check-softfloat:
$(call quiet-command, /bin/true, "FLOAT TEST", \
"SKIPPED for non-TCG builds")
endif
@@ -955,7 +961,8 @@ check-qtest: $(patsubst %,check-qtest-%, $(QTEST_TARGETS))
ifeq ($(CONFIG_TOOLS),y)
check-block: $(patsubst %,check-%, $(check-block-y))
endif
-check: check-block check-qapi-schema check-unit check-softfloat check-qtest
check-decodetree
+check-build: build-unit build-softfloat build-qtest
+
check-clean:
rm -rf $(check-unit-y) tests/*.o tests/*/*.o $(QEMU_IOTESTS_HELPERS-y)
rm -rf $(sort $(foreach target,$(SYSEMU_TARGET_LIST),
$(check-qtest-$(target)-y:%=tests/qtest/%$(EXESUF)))
$(check-qtest-generic-y:%=tests/qtest/%$(EXESUF)))
@@ -963,6 +970,8 @@ check-clean:
rm -f tests/qtest/dbus-vmstate1-gen-timestamp
rm -rf $(TESTS_VENV_DIR) $(TESTS_RESULTS_DIR)
+check: check-block check-qapi-schema check-unit check-softfloat check-qtest
check-decodetree
+
clean: check-clean
# Build the help program automatically
--
2.20.1
- Re: [PATCH v4 28/40] tests/acceptance: skip multicore mips_malta tests on GitLab, (continued)
[PATCH v4 17/40] tests/docker: change tag naming scheme of our images, Alex Bennée, 2020/07/01
[PATCH v4 39/40] testing: add check-build target,
Alex Bennée <=
[PATCH v4 32/40] tests/docker: add a linux-user testing focused image, Alex Bennée, 2020/07/01
[PATCH v4 13/40] tests/vm: Add workaround to consume console, Alex Bennée, 2020/07/01
[PATCH v4 30/40] gitlab: add acceptance testing to system builds, Alex Bennée, 2020/07/01