mirror of https://gitee.com/openkylin/qemu.git
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2 iQEcBAABCAAGBQJYBDKcAAoJEMo1YkxqkXHGUUUH/A3xe/y54QGsQQxLpH0Ek1Vk NX1Wzu9Q+J8xqyT8qf1Yp/BtL9fnDQKT2deZTx09zaIRjUKqO9JGdXmOVg/zFFAs 0JynVVFNwO9kDAEHtsbBvc3pvfpdONKj2muCHdG3KiVxP5YH6MiuW5waQ9ujyUKb nrW8+oWM/seoCgouBAC6YtIr7lq25NkXxuIL95SBi/yskAjKiPgpQjn+II8tUDTU ZF35KNoeFLAw/CgdMZpu2MVZZwod5HDxpBbY1EHIWsboGX/iO3R+CuTyVdSJ6kna B9Oi1U4A58OMVCZATpqRIdW/xxjaWs3b+kM1uMIJIzhR9Sk2kWFPweaznwGHc2Y= =FdKf -----END PGP SIGNATURE----- Merge remote-tracking branch 'remotes/famz/tags/for-upstream' into staging # gpg: Signature made Mon 17 Oct 2016 03:08:28 BST # gpg: using RSA key 0xCA35624C6A9171C6 # gpg: Good signature from "Fam Zheng <famz@redhat.com>" # gpg: WARNING: This key is not certified with a trusted signature! # gpg: There is no indication that the signature belongs to the owner. # Primary key fingerprint: 5003 7CB7 9706 0F76 F021 AD56 CA35 624C 6A91 71C6 * remotes/famz/tags/for-upstream: tests/docker/Makefile.include: add a generic docker-run target tests/docker: make test-mingw honour TARGET_LIST tests/docker: test-build script tests/docker: add travis dockerfile Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
commit
ad728364e3
|
@ -78,6 +78,7 @@ docker:
|
|||
@echo ' "IMAGE" is one of the listed container name."'
|
||||
@echo ' docker-image: Build all images.'
|
||||
@echo ' docker-image-IMAGE: Build image "IMAGE".'
|
||||
@echo ' docker-run: For manually running a "TEST" with "IMAGE"'
|
||||
@echo
|
||||
@echo 'Available container images:'
|
||||
@echo ' $(DOCKER_IMAGES)'
|
||||
|
@ -101,31 +102,45 @@ docker:
|
|||
@echo ' NOCACHE=1 Ignore cache when build images.'
|
||||
@echo ' EXECUTABLE=<path> Include executable in image.'
|
||||
|
||||
# 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.
|
||||
#
|
||||
# For example: make docker-run TEST="test-quick" IMAGE="debian:arm64" EXECUTABLE=./aarch64-linux-user/qemu-aarch64
|
||||
#
|
||||
docker-run: docker-qemu-src
|
||||
@mkdir -p "$(DOCKER_CCACHE_DIR)"
|
||||
@if test -z "$(IMAGE)" || test -z "$(TEST)"; \
|
||||
then echo "Invalid target $(IMAGE)/$(TEST)"; exit 1; \
|
||||
fi
|
||||
$(if $(EXECUTABLE), \
|
||||
$(call quiet-command, \
|
||||
$(SRC_PATH)/tests/docker/docker.py update \
|
||||
$(IMAGE) $(EXECUTABLE), \
|
||||
" COPYING $(EXECUTABLE) to $(IMAGE)"))
|
||||
$(call quiet-command, \
|
||||
$(SRC_PATH)/tests/docker/docker.py run \
|
||||
-t \
|
||||
$(if $V,,--rm) \
|
||||
$(if $(DEBUG),-i,--net=none) \
|
||||
-e TARGET_LIST=$(TARGET_LIST) \
|
||||
-e EXTRA_CONFIGURE_OPTS="$(EXTRA_CONFIGURE_OPTS)" \
|
||||
-e V=$V -e J=$J -e DEBUG=$(DEBUG) \
|
||||
-e SHOW_ENV=$(SHOW_ENV) \
|
||||
-e CCACHE_DIR=/var/tmp/ccache \
|
||||
-v $$(readlink -e $(DOCKER_SRC_COPY)):/var/tmp/qemu:z$(COMMA)ro \
|
||||
-v $(DOCKER_CCACHE_DIR):/var/tmp/ccache:z \
|
||||
$(IMAGE) \
|
||||
/var/tmp/qemu/run \
|
||||
$(TEST), " RUN $(TEST) in ${IMAGE}")
|
||||
|
||||
# Run targets:
|
||||
#
|
||||
# Of the form docker-TEST-FOO@IMAGE-BAR which will then be expanded into a call to "make docker-run"
|
||||
docker-run-%: CMD = $(shell echo '$@' | sed -e 's/docker-run-\([^@]*\)@\(.*\)/\1/')
|
||||
docker-run-%: IMAGE = $(shell echo '$@' | sed -e 's/docker-run-\([^@]*\)@\(.*\)/\2/')
|
||||
docker-run-%: docker-qemu-src
|
||||
@mkdir -p "$(DOCKER_CCACHE_DIR)"
|
||||
@if test -z "$(IMAGE)" || test -z "$(CMD)"; \
|
||||
then echo "Invalid target"; exit 1; \
|
||||
fi
|
||||
$(if $(filter $(TESTS),$(CMD)),$(if $(filter $(IMAGES),$(IMAGE)), \
|
||||
$(call quiet-command,\
|
||||
if $(SRC_PATH)/tests/docker/docker.py images | \
|
||||
awk '$$1=="qemu" && $$2=="$(IMAGE)"{found=1} END{exit(!found)}'; then \
|
||||
$(SRC_PATH)/tests/docker/docker.py run $(if $V,,--rm) \
|
||||
-t \
|
||||
$(if $(DEBUG),-i,--net=none) \
|
||||
-e TARGET_LIST=$(TARGET_LIST) \
|
||||
-e EXTRA_CONFIGURE_OPTS=$(EXTRA_CONFIGURE_OPTS) \
|
||||
-e V=$V -e J=$J -e DEBUG=$(DEBUG) -e SHOW_ENV=$(SHOW_ENV)\
|
||||
-e CCACHE_DIR=/var/tmp/ccache \
|
||||
-v $$(readlink -e $(DOCKER_SRC_COPY)):/var/tmp/qemu:z$(COMMA)ro \
|
||||
-v $(DOCKER_CCACHE_DIR):/var/tmp/ccache:z \
|
||||
qemu:$(IMAGE) \
|
||||
/var/tmp/qemu/run \
|
||||
$(CMD); \
|
||||
fi \
|
||||
,"RUN","$(CMD) in $(IMAGE)")))
|
||||
docker-run-%:
|
||||
@$(MAKE) docker-run TEST=$(CMD) IMAGE=qemu:$(IMAGE)
|
||||
|
||||
docker-clean:
|
||||
$(call quiet-command, $(SRC_PATH)/tests/docker/docker.py clean)
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
FROM quay.io/travisci/travis-ruby
|
||||
RUN apt-get update
|
||||
RUN apt-get -y build-dep qemu
|
||||
RUN apt-get -y build-dep device-tree-compiler
|
||||
RUN apt-get -y install python2.7 dh-autoreconf
|
||||
ENV FEATURES pyyaml
|
|
@ -0,0 +1,20 @@
|
|||
#!/bin/bash -e
|
||||
#
|
||||
# Quick compile test without the make check step of test-quick.
|
||||
#
|
||||
# Copyright (c) 2016 Red Hat Inc.
|
||||
#
|
||||
# Authors:
|
||||
# Fam Zheng <famz@redhat.com>
|
||||
#
|
||||
# This work is licensed under the terms of the GNU GPL, version 2
|
||||
# or (at your option) any later version. See the COPYING file in
|
||||
# the top-level directory.
|
||||
|
||||
. common.rc
|
||||
|
||||
cd "$BUILD_DIR"
|
||||
|
||||
DEF_TARGET_LIST="x86_64-softmmu,aarch64-softmmu"
|
||||
TARGET_LIST=${TARGET_LIST:-$DEF_TARGET_LIST} \
|
||||
build_qemu
|
|
@ -16,9 +16,10 @@
|
|||
requires mingw dtc
|
||||
|
||||
cd "$BUILD_DIR"
|
||||
DEF_TARGET_LIST="x86_64-softmmu,aarch64-softmmu"
|
||||
|
||||
for prefix in x86_64-w64-mingw32- i686-w64-mingw32-; do
|
||||
TARGET_LIST=x86_64-softmmu,aarch64-softmmu \
|
||||
TARGET_LIST=${TARGET_LIST:-$DEF_TARGET_LIST} \
|
||||
build_qemu --cross-prefix=$prefix \
|
||||
--enable-trace-backends=simple \
|
||||
--enable-debug \
|
||||
|
|
Loading…
Reference in New Issue