mirror of
https://github.com/izzy2lost/xemu.git
synced 2026-07-06 00:20:22 -07:00
Merge remote-tracking branch 'remotes/famz/tags/build-and-test-automation-pull-request' into staging
# gpg: Signature made Fri 22 Sep 2017 08:28:38 BST # gpg: using RSA key 0xCA35624C6A9171C6 # gpg: Good signature from "Fam Zheng <famz@redhat.com>" # gpg: WARNING: This key is not certified with sufficiently trusted signatures! # gpg: It is not certain that the signature belongs to the owner. # Primary key fingerprint: 5003 7CB7 9706 0F76 F021 AD56 CA35 624C 6A91 71C6 * remotes/famz/tags/build-and-test-automation-pull-request: (36 commits) docker: Drop 'set -e' from run script docker: Use archive-source.py tests: Add README for vm tests MAINTAINERS: Add tests/vm entry Makefile: Add rules to run vm tests tests: Add OpenBSD image tests: Add NetBSD image tests: Add FreeBSD image tests: Add ubuntu.i386 image tests: Add vm test lib tests: Add a test key pair scripts: Add archive-source.sh qemu.py: Add "wait()" method gitignore: Ignore vm test images MAINTAINERS: Fix subsystem name for "Build and test automation" buildsys: Move rdma libs to per object buildsys: Move brlapi libs to per object buildsys: Move usb redir cflags/libs to per object buildsys: Move libusb cflags/libs to per object buildsys: Move libcacard cflags/libs to per object ... Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
@@ -52,6 +52,7 @@
|
||||
/vscclient
|
||||
/vhost-user-scsi
|
||||
/fsdev/virtfs-proxy-helper
|
||||
*.tmp
|
||||
*.[1-9]
|
||||
*.a
|
||||
*.aux
|
||||
|
||||
@@ -1896,6 +1896,7 @@ F: docs/block-replication.txt
|
||||
|
||||
Build and test automation
|
||||
-------------------------
|
||||
Build and test automation
|
||||
M: Alex Bennée <alex.bennee@linaro.org>
|
||||
M: Fam Zheng <famz@redhat.com>
|
||||
R: Philippe Mathieu-Daudé <f4bug@amsat.org>
|
||||
@@ -1904,6 +1905,7 @@ S: Maintained
|
||||
F: .travis.yml
|
||||
F: .shippable.yml
|
||||
F: tests/docker/
|
||||
F: tests/vm/
|
||||
W: https://travis-ci.org/qemu/qemu
|
||||
W: https://app.shippable.com/github/qemu/qemu
|
||||
W: http://patchew.org/QEMU/
|
||||
|
||||
@@ -811,6 +811,7 @@ endif
|
||||
-include $(wildcard *.d tests/*.d)
|
||||
|
||||
include $(SRC_PATH)/tests/docker/Makefile.include
|
||||
include $(SRC_PATH)/tests/vm/Makefile.include
|
||||
|
||||
.PHONY: help
|
||||
help:
|
||||
@@ -834,6 +835,7 @@ help:
|
||||
@echo 'Test targets:'
|
||||
@echo ' check - Run all tests (check-help for details)'
|
||||
@echo ' docker - Help about targets running tests inside Docker containers'
|
||||
@echo ' vm-test - Help about targets running tests inside VM'
|
||||
@echo ''
|
||||
@echo 'Documentation targets:'
|
||||
@echo ' html info pdf txt'
|
||||
|
||||
@@ -11,3 +11,9 @@ common-obj-$(CONFIG_AUDIO_WIN_INT) += audio_win_int.o
|
||||
common-obj-y += wavcapture.o
|
||||
|
||||
sdlaudio.o-cflags := $(SDL_CFLAGS)
|
||||
sdlaudio.o-libs := $(SDL_LIBS)
|
||||
alsaaudio.o-libs := $(ALSA_LIBS)
|
||||
paaudio.o-libs := $(PULSE_LIBS)
|
||||
coreaudio.o-libs := $(COREAUDIO_LIBS)
|
||||
dsoundaudio.o-libs := $(DSOUND_LIBS)
|
||||
ossaudio.o-libs := $(OSS_LIBS)
|
||||
|
||||
@@ -20,5 +20,6 @@ chardev-obj-$(CONFIG_WIN32) += char-win-stdio.o
|
||||
common-obj-y += msmouse.o wctablet.o testdev.o
|
||||
common-obj-$(CONFIG_BRLAPI) += baum.o
|
||||
baum.o-cflags := $(SDL_CFLAGS)
|
||||
baum.o-libs := $(BRLAPI_LIBS)
|
||||
|
||||
common-obj-$(CONFIG_SPICE) += spice.o
|
||||
|
||||
@@ -2788,7 +2788,6 @@ EOF
|
||||
sdl_cflags="$sdl_cflags $x11_cflags"
|
||||
sdl_libs="$sdl_libs $x11_libs"
|
||||
fi
|
||||
libs_softmmu="$sdl_libs $libs_softmmu"
|
||||
fi
|
||||
|
||||
##########################################
|
||||
@@ -2801,7 +2800,6 @@ EOF
|
||||
rdma_libs="-lrdmacm -libverbs"
|
||||
if compile_prog "" "$rdma_libs" ; then
|
||||
rdma="yes"
|
||||
libs_softmmu="$libs_softmmu $rdma_libs"
|
||||
else
|
||||
if test "$rdma" = "yes" ; then
|
||||
error_exit \
|
||||
@@ -2946,8 +2944,6 @@ int main(void)
|
||||
EOF
|
||||
if compile_prog "" "$vde_libs" ; then
|
||||
vde=yes
|
||||
libs_softmmu="$vde_libs $libs_softmmu"
|
||||
libs_tools="$vde_libs $libs_tools"
|
||||
else
|
||||
if test "$vde" = "yes" ; then
|
||||
feature_not_found "vde" "Install vde (Virtual Distributed Ethernet) devel"
|
||||
@@ -3035,13 +3031,13 @@ for drv in $audio_drv_list; do
|
||||
alsa)
|
||||
audio_drv_probe $drv alsa/asoundlib.h -lasound \
|
||||
"return snd_pcm_close((snd_pcm_t *)0);"
|
||||
libs_softmmu="-lasound $libs_softmmu"
|
||||
alsa_libs="-lasound"
|
||||
;;
|
||||
|
||||
pa)
|
||||
audio_drv_probe $drv pulse/pulseaudio.h "-lpulse" \
|
||||
"pa_context_set_source_output_volume(NULL, 0, NULL, NULL, NULL); return 0;"
|
||||
libs_softmmu="-lpulse $libs_softmmu"
|
||||
pulse_libs="-lpulse"
|
||||
audio_pt_int="yes"
|
||||
;;
|
||||
|
||||
@@ -3052,16 +3048,16 @@ for drv in $audio_drv_list; do
|
||||
;;
|
||||
|
||||
coreaudio)
|
||||
libs_softmmu="-framework CoreAudio $libs_softmmu"
|
||||
coreaudio_libs="-framework CoreAudio"
|
||||
;;
|
||||
|
||||
dsound)
|
||||
libs_softmmu="-lole32 -ldxguid $libs_softmmu"
|
||||
dsound_libs="-lole32 -ldxguid"
|
||||
audio_win_int="yes"
|
||||
;;
|
||||
|
||||
oss)
|
||||
libs_softmmu="$oss_lib $libs_softmmu"
|
||||
oss_libs="$oss_lib"
|
||||
;;
|
||||
|
||||
wav)
|
||||
@@ -3089,7 +3085,6 @@ int main( void ) { return brlapi__openConnection (NULL, NULL, NULL); }
|
||||
EOF
|
||||
if compile_prog "" "$brlapi_libs" ; then
|
||||
brlapi=yes
|
||||
libs_softmmu="$brlapi_libs $libs_softmmu"
|
||||
else
|
||||
if test "$brlapi" = "yes" ; then
|
||||
feature_not_found "brlapi" "Install brlapi devel"
|
||||
@@ -4209,8 +4204,6 @@ if test "$smartcard" != "no"; then
|
||||
if $pkg_config libcacard; then
|
||||
libcacard_cflags=$($pkg_config --cflags libcacard)
|
||||
libcacard_libs=$($pkg_config --libs libcacard)
|
||||
QEMU_CFLAGS="$QEMU_CFLAGS $libcacard_cflags"
|
||||
libs_softmmu="$libs_softmmu $libcacard_libs"
|
||||
smartcard="yes"
|
||||
else
|
||||
if test "$smartcard" = "yes"; then
|
||||
@@ -4226,8 +4219,6 @@ if test "$libusb" != "no" ; then
|
||||
libusb="yes"
|
||||
libusb_cflags=$($pkg_config --cflags libusb-1.0)
|
||||
libusb_libs=$($pkg_config --libs libusb-1.0)
|
||||
QEMU_CFLAGS="$QEMU_CFLAGS $libusb_cflags"
|
||||
libs_softmmu="$libs_softmmu $libusb_libs"
|
||||
else
|
||||
if test "$libusb" = "yes"; then
|
||||
feature_not_found "libusb" "Install libusb devel >= 1.0.13"
|
||||
@@ -4242,8 +4233,6 @@ if test "$usb_redir" != "no" ; then
|
||||
usb_redir="yes"
|
||||
usb_redir_cflags=$($pkg_config --cflags libusbredirparser-0.5)
|
||||
usb_redir_libs=$($pkg_config --libs libusbredirparser-0.5)
|
||||
QEMU_CFLAGS="$QEMU_CFLAGS $usb_redir_cflags"
|
||||
libs_softmmu="$libs_softmmu $usb_redir_libs"
|
||||
else
|
||||
if test "$usb_redir" = "yes"; then
|
||||
feature_not_found "usb-redir" "Install usbredir devel"
|
||||
@@ -5499,6 +5488,7 @@ if test "$slirp" = "yes" ; then
|
||||
fi
|
||||
if test "$vde" = "yes" ; then
|
||||
echo "CONFIG_VDE=y" >> $config_host_mak
|
||||
echo "VDE_LIBS=$vde_libs" >> $config_host_mak
|
||||
fi
|
||||
if test "$netmap" = "yes" ; then
|
||||
echo "CONFIG_NETMAP=y" >> $config_host_mak
|
||||
@@ -5514,6 +5504,11 @@ for drv in $audio_drv_list; do
|
||||
def=CONFIG_$(echo $drv | LC_ALL=C tr '[a-z]' '[A-Z]')
|
||||
echo "$def=y" >> $config_host_mak
|
||||
done
|
||||
echo "ALSA_LIBS=$alsa_libs" >> $config_host_mak
|
||||
echo "PULSE_LIBS=$pulse_libs" >> $config_host_mak
|
||||
echo "COREAUDIO_LIBS=$coreaudio_libs" >> $config_host_mak
|
||||
echo "DSOUND_LIBS=$dsound_libs" >> $config_host_mak
|
||||
echo "OSS_LIBS=$oss_libs" >> $config_host_mak
|
||||
if test "$audio_pt_int" = "yes" ; then
|
||||
echo "CONFIG_AUDIO_PT_INT=y" >> $config_host_mak
|
||||
fi
|
||||
@@ -5558,6 +5553,7 @@ if test "$sdl" = "yes" ; then
|
||||
echo "CONFIG_SDL=y" >> $config_host_mak
|
||||
echo "CONFIG_SDLABI=$sdlabi" >> $config_host_mak
|
||||
echo "SDL_CFLAGS=$sdl_cflags" >> $config_host_mak
|
||||
echo "SDL_LIBS=$sdl_libs" >> $config_host_mak
|
||||
fi
|
||||
if test "$cocoa" = "yes" ; then
|
||||
echo "CONFIG_COCOA=y" >> $config_host_mak
|
||||
@@ -5647,6 +5643,7 @@ if test "$curl" = "yes" ; then
|
||||
fi
|
||||
if test "$brlapi" = "yes" ; then
|
||||
echo "CONFIG_BRLAPI=y" >> $config_host_mak
|
||||
echo "BRLAPI_LIBS=$brlapi_libs" >> $config_host_mak
|
||||
fi
|
||||
if test "$bluez" = "yes" ; then
|
||||
echo "CONFIG_BLUEZ=y" >> $config_host_mak
|
||||
@@ -5781,14 +5778,20 @@ fi
|
||||
|
||||
if test "$smartcard" = "yes" ; then
|
||||
echo "CONFIG_SMARTCARD=y" >> $config_host_mak
|
||||
echo "SMARTCARD_CFLAGS=$libcacard_cflags" >> $config_host_mak
|
||||
echo "SMARTCARD_LIBS=$libcacard_libs" >> $config_host_mak
|
||||
fi
|
||||
|
||||
if test "$libusb" = "yes" ; then
|
||||
echo "CONFIG_USB_LIBUSB=y" >> $config_host_mak
|
||||
echo "LIBUSB_CFLAGS=$libusb_cflags" >> $config_host_mak
|
||||
echo "LIBUSB_LIBS=$libusb_libs" >> $config_host_mak
|
||||
fi
|
||||
|
||||
if test "$usb_redir" = "yes" ; then
|
||||
echo "CONFIG_USB_REDIR=y" >> $config_host_mak
|
||||
echo "USB_REDIR_CFLAGS=$usb_redir_cflags" >> $config_host_mak
|
||||
echo "USB_REDIR_LIBS=$usb_redir_libs" >> $config_host_mak
|
||||
fi
|
||||
|
||||
if test "$opengl" = "yes" ; then
|
||||
@@ -5984,6 +5987,7 @@ echo "CONFIG_TRACE_FILE=$trace_file" >> $config_host_mak
|
||||
|
||||
if test "$rdma" = "yes" ; then
|
||||
echo "CONFIG_RDMA=y" >> $config_host_mak
|
||||
echo "RDMA_LIBS=$rdma_libs" >> $config_host_mak
|
||||
fi
|
||||
|
||||
if test "$have_rtnetlink" = "yes" ; then
|
||||
@@ -6505,7 +6509,7 @@ if test "$ccache_cpp2" = "yes"; then
|
||||
fi
|
||||
|
||||
# build tree in object directory in case the source is not in the current directory
|
||||
DIRS="tests tests/tcg tests/tcg/cris tests/tcg/lm32 tests/libqos tests/qapi-schema tests/tcg/xtensa tests/qemu-iotests"
|
||||
DIRS="tests tests/tcg tests/tcg/cris tests/tcg/lm32 tests/libqos tests/qapi-schema tests/tcg/xtensa tests/qemu-iotests tests/vm"
|
||||
DIRS="$DIRS docs docs/interop fsdev"
|
||||
DIRS="$DIRS pc-bios/optionrom pc-bios/spapr-rtas pc-bios/s390-ccw"
|
||||
DIRS="$DIRS roms/seabios roms/vgabios"
|
||||
|
||||
+11
-2
@@ -26,8 +26,10 @@ common-obj-$(CONFIG_USB_BLUETOOTH) += dev-bluetooth.o
|
||||
|
||||
ifeq ($(CONFIG_USB_SMARTCARD),y)
|
||||
common-obj-y += dev-smartcard-reader.o
|
||||
common-obj-$(CONFIG_SMARTCARD) += ccid-card-passthru.o
|
||||
common-obj-$(CONFIG_SMARTCARD) += ccid-card-emulated.o
|
||||
common-obj-$(CONFIG_SMARTCARD) += smartcard.mo
|
||||
smartcard.mo-objs := ccid-card-passthru.o ccid-card-emulated.o
|
||||
smartcard.mo-cflags := $(SMARTCARD_CFLAGS)
|
||||
smartcard.mo-libs := $(SMARTCARD_LIBS)
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_POSIX),y)
|
||||
@@ -36,6 +38,8 @@ endif
|
||||
|
||||
# usb redirection
|
||||
common-obj-$(CONFIG_USB_REDIR) += redirect.o quirks.o
|
||||
redirect.o-cflags = $(USB_REDIR_CFLAGS)
|
||||
redirect.o-libs = $(USB_REDIR_LIBS)
|
||||
|
||||
# usb pass-through
|
||||
ifeq ($(CONFIG_LIBUSB)$(CONFIG_USB),yy)
|
||||
@@ -44,6 +48,11 @@ else
|
||||
common-obj-y += host-stub.o
|
||||
endif
|
||||
|
||||
host-libusb.o-cflags := $(LIBUSB_CFLAGS)
|
||||
host-libusb.o-libs := $(LIBUSB_LIBS)
|
||||
|
||||
ifeq ($(CONFIG_USB_LIBUSB),y)
|
||||
common-obj-$(CONFIG_XEN) += xen-usb.o
|
||||
xen-usb.o-cflags := $(LIBUSB_CFLAGS)
|
||||
xen-usb.o-libs := $(LIBUSB_LIBS)
|
||||
endif
|
||||
|
||||
@@ -11,3 +11,4 @@ common-obj-$(CONFIG_RDMA) += rdma.o
|
||||
|
||||
common-obj-$(CONFIG_LIVE_BLOCK_MIGRATION) += block.o
|
||||
|
||||
rdma.o-libs := $(RDMA_LIBS)
|
||||
|
||||
@@ -21,3 +21,5 @@ tap-obj-$(CONFIG_SOLARIS) = tap-solaris.o
|
||||
tap-obj-y ?= tap-stub.o
|
||||
common-obj-$(CONFIG_POSIX) += tap.o $(tap-obj-y)
|
||||
common-obj-$(CONFIG_WIN32) += tap-win32.o
|
||||
|
||||
vde.o-libs = $(VDE_LIBS)
|
||||
|
||||
Executable
+51
@@ -0,0 +1,51 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Author: Fam Zheng <famz@redhat.com>
|
||||
#
|
||||
# Archive source tree, including submodules. This is created for test code to
|
||||
# export the source files, in order to be built in a different environment,
|
||||
# such as in a docker instance or VM.
|
||||
#
|
||||
# This code is licensed under the GPL version 2 or later. See
|
||||
# the COPYING file in the top-level directory.
|
||||
|
||||
error() {
|
||||
printf %s\\n "$*" >&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
if test $# -lt 1; then
|
||||
error "Usage: $0 <output tarball>"
|
||||
fi
|
||||
|
||||
tar_file="$1"
|
||||
list_file="$1.list"
|
||||
submodules=$(git submodule foreach --recursive --quiet 'echo $name')
|
||||
|
||||
if test $? -ne 0; then
|
||||
error "git submodule command failed"
|
||||
fi
|
||||
|
||||
trap "status=$?; rm -f \"$list_file\"; exit \$status" 0 1 2 3 15
|
||||
|
||||
if test -n "$submodules"; then
|
||||
{
|
||||
git ls-files || error "git ls-files failed"
|
||||
for sm in $submodules; do
|
||||
(cd $sm; git ls-files) | sed "s:^:$sm/:"
|
||||
if test "${PIPESTATUS[*]}" != "0 0"; then
|
||||
error "git ls-files in submodule $sm failed"
|
||||
fi
|
||||
done
|
||||
} | grep -x -v $(for sm in $submodules; do echo "-e $sm"; done) > "$list_file"
|
||||
else
|
||||
git ls-files > "$list_file"
|
||||
fi
|
||||
|
||||
if test $? -ne 0; then
|
||||
error "failed to generate list file"
|
||||
fi
|
||||
|
||||
tar -cf "$tar_file" -T "$list_file" || error "failed to create tar file"
|
||||
|
||||
exit 0
|
||||
@@ -215,6 +215,13 @@ class QEMUMachine(object):
|
||||
LOG.debug('Output: %r', self._iolog)
|
||||
raise
|
||||
|
||||
def wait(self):
|
||||
'''Wait for the VM to power off'''
|
||||
self._popen.wait()
|
||||
self._qmp.close()
|
||||
self._load_io_log()
|
||||
self._post_shutdown()
|
||||
|
||||
def shutdown(self):
|
||||
'''Terminate the VM and clean up'''
|
||||
if self.is_running():
|
||||
|
||||
@@ -95,3 +95,4 @@ test-filter-mirror
|
||||
test-filter-redirector
|
||||
*-test
|
||||
qapi-schema/*.test.*
|
||||
vm/*.img
|
||||
|
||||
@@ -17,23 +17,13 @@ DOCKER_TOOLS := travis
|
||||
TESTS ?= %
|
||||
IMAGES ?= %
|
||||
|
||||
# Make archive from git repo $1 to tar.gz $2
|
||||
make-archive-maybe = $(if $(wildcard $1/*), \
|
||||
$(call quiet-command, \
|
||||
(cd $1; if git diff-index --quiet HEAD -- &>/dev/null; then \
|
||||
git archive -1 HEAD --format=tar.gz; \
|
||||
else \
|
||||
git archive -1 $$(git stash create) --format=tar.gz; \
|
||||
fi) > $2, \
|
||||
"ARCHIVE","$(notdir $2)"))
|
||||
|
||||
CUR_TIME := $(shell date +%Y-%m-%d-%H.%M.%S.$$$$)
|
||||
DOCKER_SRC_COPY := docker-src.$(CUR_TIME)
|
||||
|
||||
$(DOCKER_SRC_COPY):
|
||||
@mkdir $@
|
||||
$(call make-archive-maybe, $(SRC_PATH), $@/qemu.tgz)
|
||||
$(call make-archive-maybe, $(SRC_PATH)/dtc, $@/dtc.tgz)
|
||||
$(call quiet-command, $(SRC_PATH)/scripts/archive-source.sh $@/qemu.tar, \
|
||||
"GEN", "$@/qemu.tar")
|
||||
$(call quiet-command, cp $(SRC_PATH)/tests/docker/run $@/run, \
|
||||
"COPY","RUNNER")
|
||||
|
||||
@@ -70,6 +60,7 @@ docker-image-debian-ppc64el-cross: docker-image-debian9
|
||||
docker-image-debian-s390x-cross: docker-image-debian9
|
||||
docker-image-debian-win32-cross: docker-image-debian8-mxe
|
||||
docker-image-debian-win64-cross: docker-image-debian8-mxe
|
||||
docker-image-travis: NOUSER=1
|
||||
|
||||
# Expand all the pre-requistes for each docker image and test combination
|
||||
$(foreach i,$(DOCKER_IMAGES), \
|
||||
@@ -144,6 +135,7 @@ docker-run: docker-qemu-src
|
||||
$(call quiet-command, \
|
||||
$(SRC_PATH)/tests/docker/docker.py run \
|
||||
$(if $(NOUSER),,-u $(shell id -u)) -t \
|
||||
--security-opt seccomp=unconfined \
|
||||
$(if $V,,--rm) \
|
||||
$(if $(DEBUG),-i,) \
|
||||
$(if $(NETWORK),$(if $(subst $(NETWORK),,1),--net=$(NETWORK)),--net=none) \
|
||||
|
||||
+14
-6
@@ -11,9 +11,6 @@
|
||||
# or (at your option) any later version. See the COPYING file in
|
||||
# the top-level directory.
|
||||
|
||||
BUILD_DIR=/var/tmp/qemu-build
|
||||
mkdir $BUILD_DIR
|
||||
|
||||
requires()
|
||||
{
|
||||
for c in $@; do
|
||||
@@ -28,11 +25,22 @@ build_qemu()
|
||||
{
|
||||
config_opts="--enable-werror \
|
||||
${TARGET_LIST:+--target-list=${TARGET_LIST}} \
|
||||
--prefix=$PWD/install \
|
||||
--prefix=$INSTALL_DIR \
|
||||
$QEMU_CONFIGURE_OPTS $EXTRA_CONFIGURE_OPTS \
|
||||
$@"
|
||||
echo "Configure options:"
|
||||
echo $config_opts
|
||||
$QEMU_SRC/configure $config_opts
|
||||
make $MAKEFLAGS
|
||||
$QEMU_SRC/configure $config_opts && make $MAKEFLAGS
|
||||
}
|
||||
|
||||
test_fail()
|
||||
{
|
||||
echo "$@"
|
||||
exit 1
|
||||
}
|
||||
|
||||
prep_fail()
|
||||
{
|
||||
echo "$@"
|
||||
exit 2
|
||||
}
|
||||
|
||||
@@ -263,7 +263,8 @@ class BuildCommand(SubCommand):
|
||||
tag = args.tag
|
||||
|
||||
dkr = Docker()
|
||||
if dkr.image_matches_dockerfile(tag, dockerfile):
|
||||
if "--no-cache" not in argv and \
|
||||
dkr.image_matches_dockerfile(tag, dockerfile):
|
||||
if not args.quiet:
|
||||
print "Image is up to date."
|
||||
else:
|
||||
|
||||
@@ -3,6 +3,7 @@ ENV PACKAGES \
|
||||
ccache git tar PyYAML sparse flex bison python2 bzip2 hostname \
|
||||
glib2-devel pixman-devel zlib-devel SDL-devel libfdt-devel \
|
||||
gcc gcc-c++ clang make perl which bc findutils libaio-devel \
|
||||
nettle-devel \
|
||||
mingw32-pixman mingw32-glib2 mingw32-gmp mingw32-SDL mingw32-pkg-config \
|
||||
mingw32-gtk2 mingw32-gtk3 mingw32-gnutls mingw32-nettle mingw32-libtasn1 \
|
||||
mingw32-libjpeg-turbo mingw32-libpng mingw32-curl mingw32-libssh2 \
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
FROM quay.io/travisci/travis-ruby
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
ENV LANG en_US.UTF-8
|
||||
ENV LC_ALL en_US.UTF-8
|
||||
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 python-yaml dh-autoreconf gdb strace lsof net-tools
|
||||
RUN apt-get -y install device-tree-compiler python2.7 python-yaml dh-autoreconf gdb strace lsof net-tools
|
||||
ENV FEATURES pyyaml
|
||||
|
||||
@@ -1,12 +1,17 @@
|
||||
FROM ubuntu:14.04
|
||||
FROM ubuntu:16.04
|
||||
RUN echo "deb http://archive.ubuntu.com/ubuntu/ trusty universe multiverse" >> \
|
||||
/etc/apt/sources.list
|
||||
RUN apt-get update
|
||||
ENV PACKAGES flex bison \
|
||||
libusb-1.0-0-dev libiscsi-dev librados-dev libncurses5-dev \
|
||||
libusb-1.0-0-dev libiscsi-dev librados-dev libncurses5-dev libncursesw5-dev \
|
||||
libseccomp-dev libgnutls-dev libssh2-1-dev libspice-server-dev \
|
||||
libspice-protocol-dev libnss3-dev libfdt-dev \
|
||||
libgtk-3-dev libvte-2.90-dev libsdl1.2-dev libpng12-dev libpixman-1-dev \
|
||||
libgtk-3-dev libvte-2.91-dev libsdl1.2-dev libpng12-dev libpixman-1-dev \
|
||||
libvdeplug-dev liblzo2-dev libsnappy-dev libbz2-dev libxen-dev librdmacm-dev libibverbs-dev \
|
||||
libsasl2-dev libjpeg-turbo8-dev xfslibs-dev libcap-ng-dev libbrlapi-dev libcurl4-gnutls-dev \
|
||||
libbluetooth-dev librbd-dev libaio-dev glusterfs-common libnuma-dev libepoxy-dev libdrm-dev libgbm-dev \
|
||||
libjemalloc-dev libcacard-dev libusbredirhost-dev libnfs-dev libcap-dev libattr1-dev \
|
||||
texinfo \
|
||||
git make ccache python-yaml gcc clang sparse
|
||||
RUN apt-get -y install $PACKAGES
|
||||
RUN dpkg -l $PACKAGES | sort > /packages.txt
|
||||
|
||||
+6
-12
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash -e
|
||||
#!/bin/bash
|
||||
#
|
||||
# Docker test runner
|
||||
#
|
||||
@@ -11,8 +11,6 @@
|
||||
# or (at your option) any later version. See the COPYING file in
|
||||
# the top-level directory.
|
||||
|
||||
set -e
|
||||
|
||||
if test -n "$V"; then
|
||||
set -x
|
||||
fi
|
||||
@@ -20,7 +18,7 @@ fi
|
||||
BASE="$(dirname $(readlink -e $0))"
|
||||
|
||||
# Prepare the environment
|
||||
. /etc/profile || true
|
||||
. /etc/profile
|
||||
export PATH=/usr/lib/ccache:$PATH
|
||||
|
||||
if test -n "$J"; then
|
||||
@@ -32,13 +30,7 @@ export TEST_DIR=/tmp/qemu-test
|
||||
mkdir -p $TEST_DIR/{src,build,install}
|
||||
|
||||
# Extract the source tarballs
|
||||
tar -C $TEST_DIR/src -xzf $BASE/qemu.tgz
|
||||
for p in dtc pixman; do
|
||||
if test -f $BASE/$p.tgz; then
|
||||
tar -C $TEST_DIR/src/$p -xzf $BASE/$p.tgz
|
||||
export FEATURES="$FEATURES $p"
|
||||
fi
|
||||
done
|
||||
tar -C $TEST_DIR/src -xf $BASE/qemu.tar || prep_fail "Failed to untar source"
|
||||
|
||||
if test -n "$SHOW_ENV"; then
|
||||
if test -f /packages.txt; then
|
||||
@@ -52,10 +44,12 @@ if test -n "$SHOW_ENV"; then
|
||||
fi
|
||||
|
||||
export QEMU_SRC="$TEST_DIR/src"
|
||||
export BUILD_DIR="$TEST_DIR/build"
|
||||
export INSTALL_DIR="$TEST_DIR/install"
|
||||
|
||||
cd "$QEMU_SRC/tests/docker"
|
||||
|
||||
CMD="$QEMU_SRC/tests/docker/$@"
|
||||
CMD="./$@"
|
||||
|
||||
if test -z "$DEBUG"; then
|
||||
exec $CMD
|
||||
|
||||
Executable
+21
@@ -0,0 +1,21 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Run block test cases
|
||||
#
|
||||
# Copyright 2017 Red Hat Inc.
|
||||
#
|
||||
# Authors:
|
||||
# Fam Zheng <famz@redhat.com>
|
||||
#
|
||||
# This code is licensed under the GPL version 2 or later. See
|
||||
# the COPYING file in the top-level directory.
|
||||
|
||||
. ./common.rc
|
||||
|
||||
cd "$BUILD_DIR"
|
||||
|
||||
build_qemu --target-list=x86_64-softmmu
|
||||
cd tests/qemu-iotests
|
||||
for t in raw qcow2 nbd luks; do
|
||||
./check -g quick -$t || test_fail "Test failed: iotests $t"
|
||||
done
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user