Final testing updates:

- docker sphinx updates
   - windows build re-enabled in CI
   - travis_retry for make check
   - build fixes
   - docker cache fixes
 -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCgAdFiEEZoWumedRZ7yvyN81+9DbCVqeKkQFAl03M8AACgkQ+9DbCVqe
 KkSmFwf/X5SSwUBxyncNuIoDLwUw9Q8XWIni1UxfQnxH/vWZvUh9H62ORuPuADyy
 E6GJALc/9vfDxpTFymRpikVK/uVZbR3vnlQEf9iggX7B7wHTRMgdwHRSmd8Vokpy
 zSK50k8FOF6azhRP67U/geVMpwVDVOq9V7J1rI9GkPqjMMBxR+lLiDv5/34EeVPh
 Va1aDl1ptoQIEuR5apMzN608IeCW0yiqJ0EEskgIdMyE3lCo0DnC2oar4aQam6dJ
 kmHOeuLQHUsV6kOsYf5hxumxrK9USRg5GE3U8LGWEz3mS80Q18LuZLVc4m9oUxL+
 jiSoOaK9d/EEuBujbtU7/WkQ755EBA==
 =ETuE
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/stsquad/tags/pull-testing-230719-4' into staging

Final testing updates:

  - docker sphinx updates
  - windows build re-enabled in CI
  - travis_retry for make check
  - build fixes
  - docker cache fixes

# gpg: Signature made Tue 23 Jul 2019 17:20:16 BST
# gpg:                using RSA key 6685AE99E75167BCAFC8DF35FBD0DB095A9E2A44
# gpg: Good signature from "Alex Bennée (Master Work Key) <alex.bennee@linaro.org>" [full]
# Primary key fingerprint: 6685 AE99 E751 67BC AFC8  DF35 FBD0 DB09 5A9E 2A44

* remotes/stsquad/tags/pull-testing-230719-4: (23 commits)
  tests/docker: Refresh APT cache before installing new packages on Debian
  tests/qemu-iotests: Don't use 'seq' in the iotests
  tests/qemu-iotests/group: Remove some more tests from the "auto" group
  tests/qemu-iotests/check: Allow tests without groups
  tests/docker: invoke the DEBUG shell with --noprofile/--norc
  travis: enable travis_retry for check phase
  hw/i386: also turn off VMMOUSE is VMPORT is disabled
  NSIS: Add missing firmware blobs
  tests/docker: Let the test-mingw test generate a NSIS installer
  buildsys: The NSIS Windows build requires qemu-nsis.bmp installed
  buildsys: The NSIS Windows build requires the documentation installed
  tests/docker: Install texinfo in the Fedora image
  tests/docker: Set the correct cross-PKG_CONFIG_PATH in the MXE images
  tests/docker: Install the NSIS tools in the MinGW capable images
  tests/docker: Install Sphinx in the Debian images
  shippable: re-enable the windows cross builds
  tests/dockerfiles: update the win cross builds to stretch
  tests/migration-test: don't spam the logs when we fail
  tests/docker: Install Ubuntu images noninteractively
  tests/docker: Install Sphinx in the Fedora image
  ...

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
Peter Maydell 2019-07-23 17:39:07 +01:00
commit b1f0a72370
51 changed files with 309 additions and 210 deletions

View File

@ -7,11 +7,10 @@ env:
matrix:
- IMAGE=debian-amd64
TARGET_LIST=x86_64-softmmu,x86_64-linux-user
# currently disabled as the mxe.cc repos are down
# - IMAGE=debian-win32-cross
# TARGET_LIST=arm-softmmu,i386-softmmu,lm32-softmmu
# - IMAGE=debian-win64-cross
# TARGET_LIST=aarch64-softmmu,sparc64-softmmu,x86_64-softmmu
- IMAGE=debian-win32-cross
TARGET_LIST=arm-softmmu,i386-softmmu,lm32-softmmu
- IMAGE=debian-win64-cross
TARGET_LIST=aarch64-softmmu,sparc64-softmmu,x86_64-softmmu
- IMAGE=debian-armel-cross
TARGET_LIST=arm-softmmu,arm-linux-user,armeb-linux-user
- IMAGE=debian-armhf-cross

View File

@ -75,7 +75,7 @@ before_script:
- mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR}
- ${SRC_DIR}/configure ${BASE_CONFIG} ${CONFIG} || { cat config.log && exit 1; }
script:
- make -j3 && ${TEST_CMD}
- make -j3 && travis_retry ${TEST_CMD}
matrix:

View File

@ -761,6 +761,7 @@ pxe-pcnet.rom pxe-rtl8139.rom pxe-virtio.rom \
efi-e1000.rom efi-eepro100.rom efi-ne2k_pci.rom \
efi-pcnet.rom efi-rtl8139.rom efi-virtio.rom \
efi-e1000e.rom efi-vmxnet3.rom \
qemu-nsis.bmp \
bamboo.dtb canyonlands.dtb petalogix-s3adsp1800.dtb petalogix-ml605.dtb \
multiboot.bin linuxboot.bin linuxboot_dma.bin kvmvapic.bin pvh.bin \
s390-ccw.img s390-netboot.img \
@ -1077,7 +1078,7 @@ installer: $(INSTALLER)
INSTDIR=/tmp/qemu-nsis
$(INSTALLER): $(SRC_PATH)/qemu.nsi
$(INSTALLER): install-doc $(SRC_PATH)/qemu.nsi
$(MAKE) install prefix=${INSTDIR}
ifdef SIGNCODE
(cd ${INSTDIR}; \

View File

@ -52,6 +52,7 @@ config I440FX
bool
imply E1000_PCI
imply VMPORT
imply VMMOUSE
select PC_PCI
select PC_ACPI
select ACPI_SMBUS
@ -59,7 +60,6 @@ config I440FX
select IDE_PIIX
select DIMM
select SMBIOS
select VMMOUSE
select FW_CFG_DMA
config ISAPC
@ -78,6 +78,7 @@ config Q35
imply AMD_IOMMU
imply E1000E_PCI_EXPRESS
imply VMPORT
imply VMMOUSE
select PC_PCI
select PC_ACPI
select PCI_EXPRESS_Q35
@ -85,7 +86,6 @@ config Q35
select AHCI_ICH9
select DIMM
select SMBIOS
select VMMOUSE
select FW_CFG_DMA
config VTD

View File

@ -106,6 +106,9 @@ RequestExecutionLevel admin
;--------------------------------
; The stuff to install.
;
; Remember to keep the "Uninstall" section in sync.
Section "${PRODUCT} (required)"
SectionIn RO
@ -122,6 +125,10 @@ Section "${PRODUCT} (required)"
File "${BINDIR}\*.bmp"
File "${BINDIR}\*.bin"
File "${BINDIR}\*.dtb"
File "${BINDIR}\*.fd"
File "${BINDIR}\*.img"
File "${BINDIR}\*.lid"
File "${BINDIR}\*.ndrv"
File "${BINDIR}\*.rom"
File "${BINDIR}\openbios-*"
@ -210,6 +217,10 @@ Section "Uninstall"
Delete "$INSTDIR\*.bin"
Delete "$INSTDIR\*.dll"
Delete "$INSTDIR\*.dtb"
Delete "$INSTDIR\*.fd"
Delete "$INSTDIR\*.img"
Delete "$INSTDIR\*.lid"
Delete "$INSTDIR\*.ndrv"
Delete "$INSTDIR\*.rom"
Delete "$INSTDIR\openbios-*"
Delete "$INSTDIR\qemu-img.exe"

View File

@ -39,14 +39,16 @@ function cleanup() {
}
trap "cleanup" 0 1 2 3 15
if git diff-index --quiet HEAD -- &>/dev/null
then
HEAD=HEAD
else
HEAD=$(git stash create)
fi
function tree_ish() {
local retval='HEAD'
if ! git diff-index --quiet --ignore-submodules=all HEAD -- &>/dev/null
then
retval=$(git stash create)
fi
echo "$retval"
}
git archive --format tar $HEAD > "$tar_file"
git archive --format tar "$(tree_ish)" > "$tar_file"
test $? -ne 0 && error "failed to archive qemu"
for sm in $submodules; do
status="$(git submodule status "$sm")"
@ -62,7 +64,7 @@ for sm in $submodules; do
echo "WARNING: submodule $sm is out of sync"
;;
esac
(cd $sm; git archive --format tar --prefix "$sm/" $smhash) > "$sub_file"
(cd $sm; git archive --format tar --prefix "$sm/" $(tree_ish)) > "$sub_file"
test $? -ne 0 && error "failed to archive submodule $sm ($smhash)"
tar --concatenate --file "$tar_file" "$sub_file"
test $? -ne 0 && error "failed append submodule $sm to $tar_file"

View File

@ -85,7 +85,7 @@ endif
# Enforce dependencies for composite images
docker-image-debian: docker-image-debian9
docker-image-debian8-mxe: docker-image-debian8
docker-image-debian9-mxe: docker-image-debian9
docker-image-debian-amd64: docker-image-debian9
docker-image-debian-armel-cross: docker-image-debian9
docker-image-debian-armhf-cross: docker-image-debian9
@ -96,8 +96,8 @@ docker-image-debian-mipsel-cross: docker-image-debian9
docker-image-debian-mips64el-cross: docker-image-debian9
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-debian-win32-cross: docker-image-debian9-mxe
docker-image-debian-win64-cross: docker-image-debian9-mxe
docker-image-debian-alpha-cross: docker-image-debian-sid
docker-image-debian-hppa-cross: docker-image-debian-sid

View File

@ -6,7 +6,8 @@
#
FROM qemu:debian-sid
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-alpha-linux-gnu \
libc6.1-dev-alpha-cross || { echo "Failed to build - see debian-sid.docker notes"; exit 1; }

View File

@ -7,11 +7,13 @@
FROM qemu:debian9
MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get build-dep -yy qemu
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt build-dep -yy qemu
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libbz2-dev \
liblzo2-dev \
librdmacm-dev \
@ -19,8 +21,9 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
libvte-dev
# virgl
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libegl1-mesa-dev \
libepoxy-dev \
libgbm-dev
@ -29,8 +32,9 @@ RUN git clone https://anongit.freedesktop.org/git/virglrenderer.git /usr/src/vir
RUN cd /usr/src/virglrenderer && ./autogen.sh && ./configure --with-glx --disable-tests && make install
# netmap
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
linux-headers-amd64
RUN git clone https://github.com/luigirizzo/netmap.git /usr/src/netmap
RUN cd /usr/src/netmap && git checkout v11.3

View File

@ -7,18 +7,20 @@ FROM qemu:debian9
# Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture arm64
RUN apt update
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
crossbuild-essential-arm64
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get build-dep -yy -a arm64 qemu
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt build-dep -yy -a arm64 qemu
# Specify the cross prefix for this image (see tests/docker/common.rc)
ENV QEMU_CONFIGURE_OPTS --cross-prefix=aarch64-linux-gnu-
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libbz2-dev:arm64 \
liblzo2-dev:arm64 \
librdmacm-dev:arm64 \

View File

@ -8,16 +8,17 @@ MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
# Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture armel && \
apt update
RUN apt install -yy crossbuild-essential-armel
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get build-dep -yy -a armel qemu
apt update && \
apt install -yy crossbuild-essential-armel && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt build-dep -yy -a armel qemu
# Specify the cross prefix for this image (see tests/docker/common.rc)
ENV QEMU_CONFIGURE_OPTS --cross-prefix=arm-linux-gnueabi-
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libbz2-dev:armel \
liblzo2-dev:armel \
librdmacm-dev:armel \

View File

@ -7,18 +7,20 @@ FROM qemu:debian9
# Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture armhf
RUN apt update
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
crossbuild-essential-armhf
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get build-dep -yy -a armhf qemu
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt build-dep -yy -a armhf qemu
# Specify the cross prefix for this image (see tests/docker/common.rc)
ENV QEMU_CONFIGURE_OPTS --cross-prefix=arm-linux-gnueabihf-
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libbz2-dev:armhf \
liblzo2-dev:armhf \
librdmacm-dev:armhf \

View File

@ -9,7 +9,8 @@ FROM qemu:debian10
# Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture arm64
RUN apt update
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
crossbuild-essential-arm64

View File

@ -6,7 +6,8 @@
#
FROM qemu:debian-sid
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-hppa-linux-gnu \
libc6-dev-hppa-cross

View File

@ -6,7 +6,8 @@
#
FROM qemu:debian-sid
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-m68k-linux-gnu \
libc6-dev-m68k-cross

View File

@ -9,20 +9,22 @@ MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
# Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture mips
RUN apt-get update
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-mips-linux-gnu
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get build-dep -yy -a mips qemu
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt build-dep -yy -a mips qemu
# Specify the cross prefix for this image (see tests/docker/common.rc)
ENV QEMU_CONFIGURE_OPTS --cross-prefix=mips-linux-gnu-
# Install extra libraries to increase code coverage
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libbz2-dev:mips \
liblzo2-dev:mips \
librdmacm-dev:mips \

View File

@ -6,7 +6,8 @@
#
FROM qemu:debian-sid
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-mips64-linux-gnuabi64 \
libc6-dev-mips64-cross

View File

@ -10,20 +10,22 @@ MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
# Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture mips64el && \
apt-get update
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-mips64el-linux-gnuabi64
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get build-dep -yy -a mips64el qemu
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt build-dep -yy -a mips64el qemu
# Specify the cross prefix for this image (see tests/docker/common.rc)
ENV QEMU_CONFIGURE_OPTS --cross-prefix=mips64el-linux-gnuabi64-
# Install extra libraries to increase code coverage
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libbz2-dev:mips64el \
liblzo2-dev:mips64el \
librdmacm-dev:mips64el \

View File

@ -9,20 +9,22 @@ MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
# Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture mipsel
RUN apt-get update
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-mipsel-linux-gnu
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get build-dep -yy -a mipsel qemu
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt build-dep -yy -a mipsel qemu
# Specify the cross prefix for this image (see tests/docker/common.rc)
ENV QEMU_CONFIGURE_OPTS --cross-prefix=mipsel-linux-gnu-
# Install extra libraries to increase code coverage
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libbz2-dev:mipsel \
liblzo2-dev:mipsel \
librdmacm-dev:mipsel \

View File

@ -18,8 +18,8 @@ RUN cat /etc/apt/sources.list | sed -ne "s/^deb\ \(\[.*\]\ \)\?\(.*\)/deb-src \2
# Setup some basic tools we need
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install -yy eatmydata
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
bison \
build-essential \

View File

@ -7,7 +7,8 @@
#
FROM qemu:debian-sid
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-powerpc-linux-gnu \
libc6-dev-powerpc-cross || { echo "Failed to build - see debian-sid.docker notes"; exit 1; }

View File

@ -5,7 +5,8 @@
# contains cross compilers for Debian "ports" targets.
FROM qemu:debian-sid
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-powerpc64-linux-gnu \
libc6-dev-ppc64-cross || { echo "Failed to build - see debian-sid.docker notes"; exit 1; }

View File

@ -7,18 +7,20 @@ FROM qemu:debian9
# Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture ppc64el && \
apt update
RUN apt install -yy crossbuild-essential-ppc64el
apt update && \
apt install -yy crossbuild-essential-ppc64el
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get build-dep -yy -a ppc64el qemu
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt build-dep -yy -a ppc64el qemu
# Specify the cross prefix for this image (see tests/docker/common.rc)
ENV QEMU_CONFIGURE_OPTS --cross-prefix=powerpc64le-linux-gnu-
# Install extra libraries to increase code coverage
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libbz2-dev:ppc64el \
liblzo2-dev:ppc64el \
librdmacm-dev:ppc64el \

View File

@ -6,7 +6,8 @@
#
FROM qemu:debian-sid
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-riscv64-linux-gnu \
libc6-dev-riscv64-cross

View File

@ -10,19 +10,22 @@ RUN dpkg --add-architecture s390x
# Grab the updated list of packages
RUN apt update && apt dist-upgrade -yy
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-multilib-s390x-linux-gnu
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get build-dep -yy -a s390x qemu
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt build-dep -yy -a s390x qemu
# Specify the cross prefix for this image (see tests/docker/common.rc)
ENV QEMU_CONFIGURE_OPTS --cross-prefix=s390x-linux-gnu-
# Install extra libraries to increase code coverage
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libbz2-dev:s390x \
liblzo2-dev:s390x \
librdmacm-dev:s390x \

View File

@ -6,7 +6,8 @@
#
FROM qemu:debian-sid
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-sh4-linux-gnu \
libc6-dev-sh4-cross

View File

@ -26,9 +26,9 @@ RUN sed -i "s%^deb \(https\?://\)deb.debian.org/debian/\? \(.*\)%deb [check-vali
RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
# Install common build utilities
RUN apt update
RUN DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
bison \
build-essential \

View File

@ -6,7 +6,8 @@
#
FROM qemu:debian-sid
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-sparc64-linux-gnu \
libc6-dev-sparc64-cross

View File

@ -1,15 +1,21 @@
#
# Docker mingw32 cross-compiler target
#
# This docker target builds on the debian Jessie MXE base image.
# This docker target builds on the debian Stretch MXE base image.
#
FROM qemu:debian8-mxe
FROM qemu:debian9-mxe
MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
ENV TARGET i686
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
ENV PATH $PATH:/usr/lib/mxe/usr/$TARGET-w64-mingw32.shared/bin
ENV PKG_CONFIG_PATH \
$PKG_CONFIG_PATH:/usr/lib/mxe/usr/$TARGET-w64-mingw32.shared/lib/pkgconfig
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
mxe-$TARGET-w64-mingw32.shared-bzip2 \
mxe-$TARGET-w64-mingw32.shared-curl \
@ -19,6 +25,7 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
mxe-$TARGET-w64-mingw32.shared-lzo \
mxe-$TARGET-w64-mingw32.shared-nettle \
mxe-$TARGET-w64-mingw32.shared-ncurses \
mxe-$TARGET-w64-mingw32.shared-nsis \
mxe-$TARGET-w64-mingw32.shared-pixman \
mxe-$TARGET-w64-mingw32.shared-pkgconf \
mxe-$TARGET-w64-mingw32.shared-pthreads \

View File

@ -1,15 +1,21 @@
#
# Docker mingw64 cross-compiler target
#
# This docker target builds on the debian Jessie MXE base image.
# This docker target builds on the debian Stretch MXE base image.
#
FROM qemu:debian8-mxe
FROM qemu:debian9-mxe
MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
ENV TARGET x86-64
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
ENV PATH $PATH:/usr/lib/mxe/usr/$TARGET-w64-mingw32.shared/bin
ENV PKG_CONFIG_PATH \
$PKG_CONFIG_PATH:/usr/lib/mxe/usr/$TARGET-w64-mingw32.shared/lib/pkgconfig
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
mxe-$TARGET-w64-mingw32.shared-bzip2 \
mxe-$TARGET-w64-mingw32.shared-curl \
@ -19,6 +25,7 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
mxe-$TARGET-w64-mingw32.shared-lzo \
mxe-$TARGET-w64-mingw32.shared-nettle \
mxe-$TARGET-w64-mingw32.shared-ncurses \
mxe-$TARGET-w64-mingw32.shared-nsis \
mxe-$TARGET-w64-mingw32.shared-pixman \
mxe-$TARGET-w64-mingw32.shared-pkgconf \
mxe-$TARGET-w64-mingw32.shared-pthreads \

View File

@ -8,8 +8,8 @@
FROM debian:stretch-slim
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
bison \
build-essential \

View File

@ -13,9 +13,9 @@ FROM debian:buster-slim
RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
# Install common build utilities
RUN apt update
RUN DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
bison \
build-essential \
@ -27,5 +27,6 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
pkg-config \
psmisc \
python \
python3-sphinx \
texinfo \
$(apt-get -s build-dep qemu | egrep ^Inst | fgrep '[all]' | cut -d\ -f2)

View File

@ -15,9 +15,9 @@ MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
# Setup some basic tools we need
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive apt-get install -yy eatmydata && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
bison \
binutils-multiarch \

View File

@ -1,17 +1,20 @@
#
# Docker mingw cross-compiler target
#
# This docker target builds on the debian Jessie base image.
# This docker target builds on the debian Stretch base image.
#
FROM qemu:debian8
FROM qemu:debian9
MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
# Add the foreign architecture we want and install dependencies
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys D43A795B73B16ABE9643FE1AFD8FFF16DB45C6AB && \
echo "deb http://pkg.mxe.cc/repos/apt/debian jessie main" > /etc/apt/sources.list.d/mxeapt.list
RUN apt-get update
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends gnupg dirmngr
# Add the foreign architecture we want and install dependencies
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C6BF758A33A3A276 && \
echo "deb http://pkg.mxe.cc/repos/apt stretch main" > /etc/apt/sources.list.d/mxeapt.list
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
libpython2.7-stdlib \
$(apt-get -s install -y --no-install-recommends gw32.shared-mingw-w64 | egrep "^Inst mxe-x86-64-unknown-" | cut -d\ -f2)

View File

@ -13,9 +13,9 @@ FROM debian:stretch-slim
RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
# Install common build utilities
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
RUN apt update && \
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
bison \
build-essential \
@ -27,5 +27,6 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
pkg-config \
psmisc \
python \
python3-sphinx \
texinfo \
$(apt-get -s build-dep qemu | egrep ^Inst | fgrep '[all]' | cut -d\ -f2)

View File

@ -52,6 +52,7 @@ ENV PACKAGES \
mingw32-libpng \
mingw32-libtasn1 \
mingw32-nettle \
mingw32-nsis \
mingw32-pixman \
mingw32-pkg-config \
mingw32-SDL2 \
@ -76,6 +77,7 @@ ENV PACKAGES \
perl-Test-Harness \
pixman-devel \
python3 \
python3-sphinx \
PyYAML \
rdma-core-devel \
SDL2-devel \
@ -85,6 +87,7 @@ ENV PACKAGES \
systemd-devel \
systemtap-sdt-devel \
tar \
texinfo \
usbredir-devel \
virglrenderer-devel \
vte291-devel \
@ -95,4 +98,5 @@ ENV QEMU_CONFIGURE_OPTS --python=/usr/bin/python3
RUN dnf install -y $PACKAGES
RUN rpm -q $PACKAGES | sort > /packages.txt
ENV PATH $PATH:/usr/libexec/python3-sphinx/
ENV FEATURES mingw clang pyyaml asan

View File

@ -61,10 +61,11 @@ ENV PACKAGES flex bison \
libxen-dev \
make \
python-yaml \
python3-sphinx \
sparse \
texinfo \
xfslibs-dev
RUN apt-get update && \
apt-get -y install $PACKAGES
DEBIAN_FRONTEND=noninteractive apt-get -y install $PACKAGES
RUN dpkg -l $PACKAGES | sort > /packages.txt
ENV FEATURES clang pyyaml sdl2

View File

@ -48,10 +48,11 @@ ENV PACKAGES flex bison \
libxen-dev \
make \
python-yaml \
python3-sphinx \
sparse \
texinfo \
xfslibs-dev
RUN apt-get update && \
apt-get -y install $PACKAGES
DEBIAN_FRONTEND=noninteractive apt-get -y install $PACKAGES
RUN dpkg -l $PACKAGES | sort > /packages.txt
ENV FEATURES clang pyyaml sdl2

View File

@ -62,7 +62,7 @@ echo "* Prepared to run command:"
echo " $CMD"
echo "* Hit Ctrl-D to continue, or type 'exit 1' to abort"
echo
$SHELL
$SHELL --noprofile --norc
if "$CMD"; then
exit 0
@ -72,7 +72,7 @@ elif test -n "$DEBUG"; then
echo "* Hit Ctrl-D to exit"
echo
# Force error after shell exits
$SHELL && exit 1
$SHELL --noprofile --norc && exit 1
else
exit 1
fi

View File

@ -27,8 +27,10 @@ for prefix in x86_64-w64-mingw32- i686-w64-mingw32-; do
--enable-curl \
--enable-vnc \
--enable-bzip2 \
--enable-guest-agent
--enable-guest-agent \
--enable-docs
install_qemu
make installer
make clean
done

22
tests/docker/test-misc Executable file
View File

@ -0,0 +1,22 @@
#!/bin/bash -e
#
# Build the miscellaneous components
#
# Copyright (c) 2019 Linaro Ltd.
#
# Authors:
# Alex Bennée <alex.bennee@linaro.org>
#
# This work is licensed under the terms of the GNU GPL, version 2 or later.
# See the COPYING file in the top-level directory.
#
# SPDX-License-Identifier: GPL-2.0-or-later
. common.rc
cd "$BUILD_DIR"
# build everything else but QEMU
configure_qemu --disable-user --disable-system --enable-docs --enable-tools
build_qemu
install_qemu

View File

@ -308,7 +308,7 @@ static void check_guests_ram(QTestState *who)
uint8_t first_byte;
uint8_t last_byte;
bool hit_edge = false;
bool bad = false;
int bad = 0;
qtest_memread(who, start_address, &first_byte, 1);
last_byte = first_byte;
@ -327,15 +327,20 @@ static void check_guests_ram(QTestState *who)
hit_edge = true;
last_byte = b;
} else {
fprintf(stderr, "Memory content inconsistency at %x"
" first_byte = %x last_byte = %x current = %x"
" hit_edge = %x\n",
address, first_byte, last_byte, b, hit_edge);
bad = true;
bad++;
if (bad <= 10) {
fprintf(stderr, "Memory content inconsistency at %x"
" first_byte = %x last_byte = %x current = %x"
" hit_edge = %x\n",
address, first_byte, last_byte, b, hit_edge);
}
}
}
}
g_assert_false(bad);
if (bad >= 10) {
fprintf(stderr, "and in another %d pages", bad - 10);
}
g_assert(bad == 0);
}
static void cleanup(const char *filename)

View File

@ -48,7 +48,7 @@ echo
echo "creating image"
_make_test_img 1M
for i in `seq 1 10`; do
for ((i=1;i<=10;i++)); do
echo "savevm $i"
$QEMU -nographic -hda "$TEST_IMG" -serial none -monitor stdio >/dev/null 2>&1 <<EOF
savevm test-$i

View File

@ -49,7 +49,7 @@ _make_test_img $size
echo
echo "overlapping I/O"
for i in `seq 1 10`; do
for ((i=1;i<=10;i++)); do
let mb=1024*1024
let off1=$i*$mb
let off2=$off1+512

View File

@ -52,7 +52,7 @@ _make_test_img 64M
# Allocate every other cluster so that afterwards a big write request will
# actually loop a while and issue many I/O requests for the lower layer
for i in $(seq 0 128 4096); do echo "write ${i}k 64k"; done | $QEMU_IO "$TEST_IMG" | _filter_qemu_io
for ((i=0;i<=4096;i+=128)); do echo "write ${i}k 64k"; done | $QEMU_IO "$TEST_IMG" | _filter_qemu_io
echo
echo === AIO request during close ===

View File

@ -49,7 +49,7 @@ echo "creating image"
_make_test_img $size
generate_requests() {
for i in $(seq 0 63); do
for ((i=0;i<=63;i++)); do
echo "aio_write ${i}M 512"
echo "aio_write ${i}M 512"
echo "aio_write ${i}M 512"

View File

@ -61,7 +61,7 @@ backing_io()
local pattern=0
local cur_sec=0
for i in $(seq 0 $((sectors - 1))); do
for ((i=0;i<=$((sectors - 1));i++)); do
cur_sec=$((offset / 512 + i))
pattern=$(( ( (cur_sec % 256) + (cur_sec / 256)) % 256 ))

View File

@ -55,7 +55,7 @@ backing_io()
local pattern=0
local cur_sec=0
for i in $(seq 0 $((sectors - 1))); do
for ((i=0;i<=$((sectors - 1));i++)); do
cur_sec=$((offset / 65536 + i))
pattern=$(( ( (cur_sec % 128) + (cur_sec / 128)) % 128 ))

View File

@ -488,7 +488,7 @@ testlist options
BEGIN { for (t='$start'; t<='$end'; t++) printf "%03d\n",t }' \
| while read id
do
if grep -s "^$id " "$source_iotests/group" >/dev/null
if grep -s "^$id\( \|\$\)" "$source_iotests/group" >/dev/null
then
# in group file ... OK
echo $id >>$tmp.list
@ -547,7 +547,7 @@ else
touch $tmp.list
else
# no test numbers, do everything from group file
sed -n -e '/^[0-9][0-9][0-9]*/s/[ ].*//p' <"$source_iotests/group" >$tmp.list
sed -n -e '/^[0-9][0-9][0-9]*/s/^\([0-9]*\).*/\1/p' <"$source_iotests/group" >$tmp.list
fi
fi

View File

@ -22,7 +22,7 @@ do_is_allocated() {
local step=$3
local count=$4
for i in `seq 1 $count`; do
for ((i=1;i<=$count;i++)); do
echo alloc $(( start + (i - 1) * step )) $size
done
}
@ -40,7 +40,7 @@ do_io() {
local pattern=$6
echo === IO: pattern $pattern >&2
for i in `seq 1 $count`; do
for ((i=1;i<=$count;i++)); do
echo $op -P $pattern $(( start + (i - 1) * step )) $size
done
}

View File

@ -14,7 +14,9 @@
# runnable in any case. That means they should run with every QEMU binary
# (also non-x86), with every QEMU configuration (i.e. must not fail if
# an optional feature is not compiled in - but reporting a "skip" is ok),
# and work all kind of host filesystems and users (e.g. "nobody" or "root").
# work at least with the qcow2 file format, work with all kind of host
# filesystems and users (e.g. "nobody" or "root") and must not take too
# much memory and disk space (since CI pipelines tend to fail otherwise).
#
#
@ -33,8 +35,8 @@
011 rw auto quick
012 auto quick
013 rw auto
014 rw auto
015 rw snapshot auto
014 rw
015 rw snapshot
# 016 was removed, do not reuse
017 rw backing auto quick
018 rw backing auto quick
@ -42,7 +44,7 @@
020 rw backing auto quick
021 io auto quick
022 rw snapshot auto
023 rw auto
023 rw
024 rw backing auto quick
025 rw auto quick
026 rw blkdbg
@ -78,94 +80,94 @@
056 rw backing
057 rw
058 rw quick
059 rw auto quick
059 rw quick
060 rw auto quick
061 rw auto
062 rw auto quick
063 rw auto quick
064 rw auto quick
064 rw quick
065 rw quick
066 rw auto quick
067 rw quick
068 rw quick
069 rw auto quick
070 rw auto quick
070 rw quick
071 rw auto quick
072 rw auto quick
073 rw auto quick
074 rw auto quick
075 rw auto quick
076 auto
077 rw auto quick
078 rw auto quick
075 rw quick
076 io
077 rw quick
078 rw quick
079 rw auto
080 rw auto
081 rw auto quick
082 rw auto quick
083 rw auto
084 img auto quick
081 rw quick
082 rw quick
083 rw
084 img quick
085 rw
086 rw auto quick
087 rw quick
088 rw auto quick
088 rw quick
089 rw auto quick
090 rw auto quick
091 rw auto migration
092 rw auto quick
091 rw migration
092 rw quick
093 throttle
094 rw auto quick
094 rw quick
095 rw quick
096 rw quick
097 rw auto backing
098 rw auto backing quick
099 rw auto quick
# 100 was removed, do not reuse
101 rw auto quick
102 rw auto quick
101 rw quick
102 rw quick
103 rw auto quick
104 rw auto
105 rw auto quick
106 rw auto quick
106 rw quick
107 rw auto quick
108 rw auto quick
109 rw auto
109 rw
110 rw auto backing quick
111 rw auto quick
112 rw
113 rw auto quick
113 rw quick
114 rw auto quick
115 rw
116 rw auto quick
116 rw quick
117 rw auto
118 rw
119 rw auto quick
119 rw quick
120 rw auto quick
121 rw
122 rw auto
123 rw auto quick
122 rw
123 rw quick
124 rw backing
125 rw
126 rw auto backing
127 rw backing quick
128 rw auto quick
128 rw quick
129 rw quick
130 rw auto quick
131 rw auto quick
131 rw quick
132 rw quick
133 auto quick
134 rw auto quick
135 rw auto
135 rw
136 rw
137 rw auto
138 rw auto quick
139 rw quick
140 rw auto quick
141 rw auto quick
142 auto
142
143 auto quick
144 rw quick
145 quick
146 auto quick
146 quick
147 img
148 rw quick
149 rw sudo
@ -179,23 +181,23 @@
157 quick
158 rw auto quick
159 rw auto quick
160 rw auto quick
160 rw quick
161 rw auto quick
162 quick
163 rw
165 rw quick
169 rw quick migration
170 rw auto quick
171 rw auto quick
171 rw quick
172 auto
173 rw auto
173 rw
174 auto
175 auto quick
175 quick
176 rw auto backing
177 rw auto quick
178 img
179 rw auto quick
181 rw auto migration
181 rw migration
182 rw quick
183 rw migration
184 rw auto quick
@ -210,62 +212,62 @@
194 rw migration quick
195 rw auto quick
196 rw quick migration
197 rw auto quick
197 rw quick
198 rw
199 rw migration
200 rw
201 rw auto migration
201 rw migration
202 rw quick
203 rw migration
204 rw quick
205 rw quick
206 rw
207 rw auto
207 rw
208 rw quick
209 rw quick
210 rw auto
211 rw auto quick
212 rw auto quick
213 rw auto quick
210 rw
211 rw quick
212 rw quick
213 rw quick
214 rw auto
215 rw auto quick
215 rw quick
216 rw quick
217 rw auto quick
218 rw quick
219 rw
220 rw auto
221 rw auto quick
221 rw quick
222 rw quick
223 rw quick
224 rw quick
225 rw auto quick
225 rw quick
226 auto quick
227 quick
228 rw quick
229 auto quick
231 auto quick
231 quick
232 quick
233 auto quick
233 quick
234 quick migration
235 quick
236 quick
237 rw auto quick
237 rw quick
238 quick
239 rw auto quick
239 rw quick
240 quick
241 rw auto quick
241 rw quick
242 rw quick
243 rw auto quick
243 rw quick
244 rw auto quick
245 rw
246 rw quick
247 rw quick
248 rw quick
249 rw auto quick
250 rw auto quick
250 rw quick
251 rw auto quick
252 rw auto backing quick
253 rw auto quick
254 rw auto backing quick
255 rw auto quick
256 rw auto quick
253 rw quick
254 rw backing quick
255 rw quick
256 rw quick