aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2019-07-23 17:39:07 +0100
committerPeter Maydell <peter.maydell@linaro.org>2019-07-23 17:39:07 +0100
commitb1f0a72370bdd0a22e4a1878ab2fb25df9662f30 (patch)
treef260285ce6a8f0364958d3a518af667ecc0f30b2
parent4da6c0f9ebbdaaf4315c71ccd288d02b9087f8af (diff)
parent98808c3d0c162aba93fe7840a34b54c4814332d4 (diff)
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>
-rw-r--r--.shippable.yml9
-rw-r--r--.travis.yml2
-rw-r--r--Makefile3
-rw-r--r--hw/i386/Kconfig4
-rw-r--r--qemu.nsi11
-rwxr-xr-xscripts/archive-source.sh18
-rw-r--r--tests/docker/Makefile.include6
-rw-r--r--tests/docker/dockerfiles/debian-alpha-cross.docker5
-rw-r--r--tests/docker/dockerfiles/debian-amd64.docker20
-rw-r--r--tests/docker/dockerfiles/debian-arm64-cross.docker16
-rw-r--r--tests/docker/dockerfiles/debian-armel-cross.docker13
-rw-r--r--tests/docker/dockerfiles/debian-armhf-cross.docker16
-rw-r--r--tests/docker/dockerfiles/debian-buster-arm64-cross.docker5
-rw-r--r--tests/docker/dockerfiles/debian-hppa-cross.docker5
-rw-r--r--tests/docker/dockerfiles/debian-m68k-cross.docker5
-rw-r--r--tests/docker/dockerfiles/debian-mips-cross.docker16
-rw-r--r--tests/docker/dockerfiles/debian-mips64-cross.docker5
-rw-r--r--tests/docker/dockerfiles/debian-mips64el-cross.docker16
-rw-r--r--tests/docker/dockerfiles/debian-mipsel-cross.docker16
-rw-r--r--tests/docker/dockerfiles/debian-ports.docker4
-rw-r--r--tests/docker/dockerfiles/debian-powerpc-cross.docker5
-rw-r--r--tests/docker/dockerfiles/debian-ppc64-cross.docker5
-rw-r--r--tests/docker/dockerfiles/debian-ppc64el-cross.docker14
-rw-r--r--tests/docker/dockerfiles/debian-riscv64-cross.docker5
-rw-r--r--tests/docker/dockerfiles/debian-s390x-cross.docker15
-rw-r--r--tests/docker/dockerfiles/debian-sh4-cross.docker5
-rw-r--r--tests/docker/dockerfiles/debian-sid.docker6
-rw-r--r--tests/docker/dockerfiles/debian-sparc64-cross.docker5
-rw-r--r--tests/docker/dockerfiles/debian-win32-cross.docker13
-rw-r--r--tests/docker/dockerfiles/debian-win64-cross.docker13
-rw-r--r--tests/docker/dockerfiles/debian-xtensa-cross.docker4
-rw-r--r--tests/docker/dockerfiles/debian10.docker7
-rw-r--r--tests/docker/dockerfiles/debian8.docker6
-rw-r--r--tests/docker/dockerfiles/debian9-mxe.docker (renamed from tests/docker/dockerfiles/debian8-mxe.docker)15
-rw-r--r--tests/docker/dockerfiles/debian9.docker7
-rw-r--r--tests/docker/dockerfiles/fedora.docker4
-rw-r--r--tests/docker/dockerfiles/ubuntu.docker3
-rw-r--r--tests/docker/dockerfiles/ubuntu1804.docker3
-rwxr-xr-xtests/docker/run4
-rwxr-xr-xtests/docker/test-mingw4
-rwxr-xr-xtests/docker/test-misc22
-rw-r--r--tests/migration-test.c19
-rwxr-xr-xtests/qemu-iotests/0072
-rwxr-xr-xtests/qemu-iotests/0112
-rwxr-xr-xtests/qemu-iotests/0322
-rwxr-xr-xtests/qemu-iotests/0352
-rwxr-xr-xtests/qemu-iotests/0372
-rwxr-xr-xtests/qemu-iotests/0462
-rwxr-xr-xtests/qemu-iotests/check4
-rw-r--r--tests/qemu-iotests/common.pattern4
-rw-r--r--tests/qemu-iotests/group120
51 files changed, 309 insertions, 210 deletions
diff --git a/.shippable.yml b/.shippable.yml
index f2ffef21d1..f74a3de3ff 100644
--- a/.shippable.yml
+++ b/.shippable.yml
@@ -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
diff --git a/.travis.yml b/.travis.yml
index 5d3d6ee1d3..caf0a1f8fa 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -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:
diff --git a/Makefile b/Makefile
index ecb788b2ce..cfab1561b9 100644
--- a/Makefile
+++ b/Makefile
@@ -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}; \
diff --git a/hw/i386/Kconfig b/hw/i386/Kconfig
index b9c96ac361..6350438036 100644
--- a/hw/i386/Kconfig
+++ b/hw/i386/Kconfig
@@ -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
diff --git a/qemu.nsi b/qemu.nsi
index 75f1608b9e..d0df0f4e3a 100644
--- a/qemu.nsi
+++ b/qemu.nsi
@@ -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"
diff --git a/scripts/archive-source.sh b/scripts/archive-source.sh
index ca94e49978..fb5d6b3918 100755
--- a/scripts/archive-source.sh
+++ b/scripts/archive-source.sh
@@ -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"
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index aaf5396b85..dbd58e548c 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -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
diff --git a/tests/docker/dockerfiles/debian-alpha-cross.docker b/tests/docker/dockerfiles/debian-alpha-cross.docker
index 29a25d0dfd..23444342f0 100644
--- a/tests/docker/dockerfiles/debian-alpha-cross.docker
+++ b/tests/docker/dockerfiles/debian-alpha-cross.docker
@@ -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; }
diff --git a/tests/docker/dockerfiles/debian-amd64.docker b/tests/docker/dockerfiles/debian-amd64.docker
index d770a11a52..431e947ebd 100644
--- a/tests/docker/dockerfiles/debian-amd64.docker
+++ b/tests/docker/dockerfiles/debian-amd64.docker
@@ -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
diff --git a/tests/docker/dockerfiles/debian-arm64-cross.docker b/tests/docker/dockerfiles/debian-arm64-cross.docker
index 877d863475..7c2cc93daf 100644
--- a/tests/docker/dockerfiles/debian-arm64-cross.docker
+++ b/tests/docker/dockerfiles/debian-arm64-cross.docker
@@ -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 \
diff --git a/tests/docker/dockerfiles/debian-armel-cross.docker b/tests/docker/dockerfiles/debian-armel-cross.docker
index e3bd68f51e..d866fe5d75 100644
--- a/tests/docker/dockerfiles/debian-armel-cross.docker
+++ b/tests/docker/dockerfiles/debian-armel-cross.docker
@@ -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 \
diff --git a/tests/docker/dockerfiles/debian-armhf-cross.docker b/tests/docker/dockerfiles/debian-armhf-cross.docker
index 5100b0afc0..2b8627673c 100644
--- a/tests/docker/dockerfiles/debian-armhf-cross.docker
+++ b/tests/docker/dockerfiles/debian-armhf-cross.docker
@@ -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 \
diff --git a/tests/docker/dockerfiles/debian-buster-arm64-cross.docker b/tests/docker/dockerfiles/debian-buster-arm64-cross.docker
index 33ada13806..52787edcc2 100644
--- a/tests/docker/dockerfiles/debian-buster-arm64-cross.docker
+++ b/tests/docker/dockerfiles/debian-buster-arm64-cross.docker
@@ -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
diff --git a/tests/docker/dockerfiles/debian-hppa-cross.docker b/tests/docker/dockerfiles/debian-hppa-cross.docker
index ad443defac..ee6d9a24ce 100644
--- a/tests/docker/dockerfiles/debian-hppa-cross.docker
+++ b/tests/docker/dockerfiles/debian-hppa-cross.docker
@@ -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
diff --git a/tests/docker/dockerfiles/debian-m68k-cross.docker b/tests/docker/dockerfiles/debian-m68k-cross.docker
index 21ba3b0132..4311c9cf86 100644
--- a/tests/docker/dockerfiles/debian-m68k-cross.docker
+++ b/tests/docker/dockerfiles/debian-m68k-cross.docker
@@ -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
diff --git a/tests/docker/dockerfiles/debian-mips-cross.docker b/tests/docker/dockerfiles/debian-mips-cross.docker
index 550f43281b..3c4d6f9ec1 100644
--- a/tests/docker/dockerfiles/debian-mips-cross.docker
+++ b/tests/docker/dockerfiles/debian-mips-cross.docker
@@ -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 \
diff --git a/tests/docker/dockerfiles/debian-mips64-cross.docker b/tests/docker/dockerfiles/debian-mips64-cross.docker
index ed1ce0e919..bf0073a466 100644
--- a/tests/docker/dockerfiles/debian-mips64-cross.docker
+++ b/tests/docker/dockerfiles/debian-mips64-cross.docker
@@ -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
diff --git a/tests/docker/dockerfiles/debian-mips64el-cross.docker b/tests/docker/dockerfiles/debian-mips64el-cross.docker
index fd2aafeb01..34b0b82895 100644
--- a/tests/docker/dockerfiles/debian-mips64el-cross.docker
+++ b/tests/docker/dockerfiles/debian-mips64el-cross.docker
@@ -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 \
diff --git a/tests/docker/dockerfiles/debian-mipsel-cross.docker b/tests/docker/dockerfiles/debian-mipsel-cross.docker
index 6378bd41e7..88accad269 100644
--- a/tests/docker/dockerfiles/debian-mipsel-cross.docker
+++ b/tests/docker/dockerfiles/debian-mipsel-cross.docker
@@ -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 \
diff --git a/tests/docker/dockerfiles/debian-ports.docker b/tests/docker/dockerfiles/debian-ports.docker
index e05a9a9802..61bc3f2993 100644
--- a/tests/docker/dockerfiles/debian-ports.docker
+++ b/tests/docker/dockerfiles/debian-ports.docker
@@ -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 \
diff --git a/tests/docker/dockerfiles/debian-powerpc-cross.docker b/tests/docker/dockerfiles/debian-powerpc-cross.docker
index 5e62ca0df1..5d08fad7cd 100644
--- a/tests/docker/dockerfiles/debian-powerpc-cross.docker
+++ b/tests/docker/dockerfiles/debian-powerpc-cross.docker
@@ -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; }
diff --git a/tests/docker/dockerfiles/debian-ppc64-cross.docker b/tests/docker/dockerfiles/debian-ppc64-cross.docker
index 7f239c322d..e5757fe46e 100644
--- a/tests/docker/dockerfiles/debian-ppc64-cross.docker
+++ b/tests/docker/dockerfiles/debian-ppc64-cross.docker
@@ -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; }
diff --git a/tests/docker/dockerfiles/debian-ppc64el-cross.docker b/tests/docker/dockerfiles/debian-ppc64el-cross.docker
index f44a35880a..fc056d7bc3 100644
--- a/tests/docker/dockerfiles/debian-ppc64el-cross.docker
+++ b/tests/docker/dockerfiles/debian-ppc64el-cross.docker
@@ -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 \
diff --git a/tests/docker/dockerfiles/debian-riscv64-cross.docker b/tests/docker/dockerfiles/debian-riscv64-cross.docker
index 2b2e64cee6..221697f9d1 100644
--- a/tests/docker/dockerfiles/debian-riscv64-cross.docker
+++ b/tests/docker/dockerfiles/debian-riscv64-cross.docker
@@ -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
diff --git a/tests/docker/dockerfiles/debian-s390x-cross.docker b/tests/docker/dockerfiles/debian-s390x-cross.docker
index e188bfeda4..6732f9ec78 100644
--- a/tests/docker/dockerfiles/debian-s390x-cross.docker
+++ b/tests/docker/dockerfiles/debian-s390x-cross.docker
@@ -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 \
diff --git a/tests/docker/dockerfiles/debian-sh4-cross.docker b/tests/docker/dockerfiles/debian-sh4-cross.docker
index 88a2423094..29983b2d75 100644
--- a/tests/docker/dockerfiles/debian-sh4-cross.docker
+++ b/tests/docker/dockerfiles/debian-sh4-cross.docker
@@ -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
diff --git a/tests/docker/dockerfiles/debian-sid.docker b/tests/docker/dockerfiles/debian-sid.docker
index 676941cb32..513459ca7f 100644
--- a/tests/docker/dockerfiles/debian-sid.docker
+++ b/tests/docker/dockerfiles/debian-sid.docker
@@ -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 \
diff --git a/tests/docker/dockerfiles/debian-sparc64-cross.docker b/tests/docker/dockerfiles/debian-sparc64-cross.docker
index 1e2c809274..7a2c2ab19c 100644
--- a/tests/docker/dockerfiles/debian-sparc64-cross.docker
+++ b/tests/docker/dockerfiles/debian-sparc64-cross.docker
@@ -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
diff --git a/tests/docker/dockerfiles/debian-win32-cross.docker b/tests/docker/dockerfiles/debian-win32-cross.docker
index 0a4970c068..9d7053e59d 100644
--- a/tests/docker/dockerfiles/debian-win32-cross.docker
+++ b/tests/docker/dockerfiles/debian-win32-cross.docker
@@ -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 \
diff --git a/tests/docker/dockerfiles/debian-win64-cross.docker b/tests/docker/dockerfiles/debian-win64-cross.docker
index b27985b1b1..b0bc960445 100644
--- a/tests/docker/dockerfiles/debian-win64-cross.docker
+++ b/tests/docker/dockerfiles/debian-win64-cross.docker
@@ -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 \
diff --git a/tests/docker/dockerfiles/debian-xtensa-cross.docker b/tests/docker/dockerfiles/debian-xtensa-cross.docker
index afd2ab9163..b9c2e2e531 100644
--- a/tests/docker/dockerfiles/debian-xtensa-cross.docker
+++ b/tests/docker/dockerfiles/debian-xtensa-cross.docker
@@ -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 \
diff --git a/tests/docker/dockerfiles/debian10.docker b/tests/docker/dockerfiles/debian10.docker
index aeeb151b52..30a78813f2 100644
--- a/tests/docker/dockerfiles/debian10.docker
+++ b/tests/docker/dockerfiles/debian10.docker
@@ -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)
diff --git a/tests/docker/dockerfiles/debian8.docker b/tests/docker/dockerfiles/debian8.docker
index 52945631cd..1212a85c35 100644
--- a/tests/docker/dockerfiles/debian8.docker
+++ b/tests/docker/dockerfiles/debian8.docker
@@ -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 \
diff --git a/tests/docker/dockerfiles/debian8-mxe.docker b/tests/docker/dockerfiles/debian9-mxe.docker
index 2df4cc8c5c..7431168dad 100644
--- a/tests/docker/dockerfiles/debian8-mxe.docker
+++ b/tests/docker/dockerfiles/debian9-mxe.docker
@@ -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)
diff --git a/tests/docker/dockerfiles/debian9.docker b/tests/docker/dockerfiles/debian9.docker
index 5f23a35404..b36f1d4ed8 100644
--- a/tests/docker/dockerfiles/debian9.docker
+++ b/tests/docker/dockerfiles/debian9.docker
@@ -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)
diff --git a/tests/docker/dockerfiles/fedora.docker b/tests/docker/dockerfiles/fedora.docker
index 619d1b5656..4ddc7dd112 100644
--- a/tests/docker/dockerfiles/fedora.docker
+++ b/tests/docker/dockerfiles/fedora.docker
@@ -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
diff --git a/tests/docker/dockerfiles/ubuntu.docker b/tests/docker/dockerfiles/ubuntu.docker
index d3b72209c8..a4f601395c 100644
--- a/tests/docker/dockerfiles/ubuntu.docker
+++ b/tests/docker/dockerfiles/ubuntu.docker
@@ -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
diff --git a/tests/docker/dockerfiles/ubuntu1804.docker b/tests/docker/dockerfiles/ubuntu1804.docker
index 9d80b11500..44bbf0f77a 100644
--- a/tests/docker/dockerfiles/ubuntu1804.docker
+++ b/tests/docker/dockerfiles/ubuntu1804.docker
@@ -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
diff --git a/tests/docker/run b/tests/docker/run
index 7aebf4b569..1014871fec 100755
--- a/tests/docker/run
+++ b/tests/docker/run
@@ -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
diff --git a/tests/docker/test-mingw b/tests/docker/test-mingw
index 4b84cfe120..fdb1c2c879 100755
--- a/tests/docker/test-mingw
+++ b/tests/docker/test-mingw
@@ -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
diff --git a/tests/docker/test-misc b/tests/docker/test-misc
new file mode 100755
index 0000000000..d480afedca
--- /dev/null
+++ b/tests/docker/test-misc
@@ -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
diff --git a/tests/migration-test.c b/tests/migration-test.c
index a4feb9545d..c1968740ab 100644
--- a/tests/migration-test.c
+++ b/tests/migration-test.c
@@ -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)
diff --git a/tests/qemu-iotests/007 b/tests/qemu-iotests/007
index 6abd402423..7d3544b479 100755
--- a/tests/qemu-iotests/007
+++ b/tests/qemu-iotests/007
@@ -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
diff --git a/tests/qemu-iotests/011 b/tests/qemu-iotests/011
index 8b1fce069a..56f704b5b9 100755
--- a/tests/qemu-iotests/011
+++ b/tests/qemu-iotests/011
@@ -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
diff --git a/tests/qemu-iotests/032 b/tests/qemu-iotests/032
index 23c216c549..988a8c5d8f 100755
--- a/tests/qemu-iotests/032
+++ b/tests/qemu-iotests/032
@@ -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 ===
diff --git a/tests/qemu-iotests/035 b/tests/qemu-iotests/035
index ad6fa3115a..d950a0dd1e 100755
--- a/tests/qemu-iotests/035
+++ b/tests/qemu-iotests/035
@@ -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"
diff --git a/tests/qemu-iotests/037 b/tests/qemu-iotests/037
index 819a2a52d2..4946b9be92 100755
--- a/tests/qemu-iotests/037
+++ b/tests/qemu-iotests/037
@@ -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 ))
diff --git a/tests/qemu-iotests/046 b/tests/qemu-iotests/046
index 543355c64f..4e03ead7b1 100755
--- a/tests/qemu-iotests/046
+++ b/tests/qemu-iotests/046
@@ -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 ))
diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check
index f925606cc5..c24874ff4a 100755
--- a/tests/qemu-iotests/check
+++ b/tests/qemu-iotests/check
@@ -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
diff --git a/tests/qemu-iotests/common.pattern b/tests/qemu-iotests/common.pattern
index 25aa0d01c1..4f5e5bcea0 100644
--- a/tests/qemu-iotests/common.pattern
+++ b/tests/qemu-iotests/common.pattern
@@ -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
}
diff --git a/tests/qemu-iotests/group b/tests/qemu-iotests/group
index b34c8e3c0c..f13e5f2e23 100644
--- a/tests/qemu-iotests/group
+++ b/tests/qemu-iotests/group
@@ -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