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: matrix:
- IMAGE=debian-amd64 - IMAGE=debian-amd64
TARGET_LIST=x86_64-softmmu,x86_64-linux-user TARGET_LIST=x86_64-softmmu,x86_64-linux-user
# currently disabled as the mxe.cc repos are down - IMAGE=debian-win32-cross
# - IMAGE=debian-win32-cross TARGET_LIST=arm-softmmu,i386-softmmu,lm32-softmmu
# TARGET_LIST=arm-softmmu,i386-softmmu,lm32-softmmu - IMAGE=debian-win64-cross
# - IMAGE=debian-win64-cross TARGET_LIST=aarch64-softmmu,sparc64-softmmu,x86_64-softmmu
# TARGET_LIST=aarch64-softmmu,sparc64-softmmu,x86_64-softmmu
- IMAGE=debian-armel-cross - IMAGE=debian-armel-cross
TARGET_LIST=arm-softmmu,arm-linux-user,armeb-linux-user TARGET_LIST=arm-softmmu,arm-linux-user,armeb-linux-user
- IMAGE=debian-armhf-cross - IMAGE=debian-armhf-cross

View File

@ -75,7 +75,7 @@ before_script:
- mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR} - mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR}
- ${SRC_DIR}/configure ${BASE_CONFIG} ${CONFIG} || { cat config.log && exit 1; } - ${SRC_DIR}/configure ${BASE_CONFIG} ${CONFIG} || { cat config.log && exit 1; }
script: script:
- make -j3 && ${TEST_CMD} - make -j3 && travis_retry ${TEST_CMD}
matrix: 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-e1000.rom efi-eepro100.rom efi-ne2k_pci.rom \
efi-pcnet.rom efi-rtl8139.rom efi-virtio.rom \ efi-pcnet.rom efi-rtl8139.rom efi-virtio.rom \
efi-e1000e.rom efi-vmxnet3.rom \ efi-e1000e.rom efi-vmxnet3.rom \
qemu-nsis.bmp \
bamboo.dtb canyonlands.dtb petalogix-s3adsp1800.dtb petalogix-ml605.dtb \ bamboo.dtb canyonlands.dtb petalogix-s3adsp1800.dtb petalogix-ml605.dtb \
multiboot.bin linuxboot.bin linuxboot_dma.bin kvmvapic.bin pvh.bin \ multiboot.bin linuxboot.bin linuxboot_dma.bin kvmvapic.bin pvh.bin \
s390-ccw.img s390-netboot.img \ s390-ccw.img s390-netboot.img \
@ -1077,7 +1078,7 @@ installer: $(INSTALLER)
INSTDIR=/tmp/qemu-nsis INSTDIR=/tmp/qemu-nsis
$(INSTALLER): $(SRC_PATH)/qemu.nsi $(INSTALLER): install-doc $(SRC_PATH)/qemu.nsi
$(MAKE) install prefix=${INSTDIR} $(MAKE) install prefix=${INSTDIR}
ifdef SIGNCODE ifdef SIGNCODE
(cd ${INSTDIR}; \ (cd ${INSTDIR}; \

View File

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

View File

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

View File

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

View File

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

View File

@ -6,7 +6,8 @@
# #
FROM qemu:debian-sid FROM qemu:debian-sid
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get install -y --no-install-recommends \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-alpha-linux-gnu \ gcc-alpha-linux-gnu \
libc6.1-dev-alpha-cross || { echo "Failed to build - see debian-sid.docker notes"; exit 1; } 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 FROM qemu:debian9
MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org> MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get build-dep -yy qemu DEBIAN_FRONTEND=noninteractive eatmydata \
apt build-dep -yy qemu
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get install -y --no-install-recommends \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libbz2-dev \ libbz2-dev \
liblzo2-dev \ liblzo2-dev \
librdmacm-dev \ librdmacm-dev \
@ -19,8 +21,9 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
libvte-dev libvte-dev
# virgl # virgl
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get install -y --no-install-recommends \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libegl1-mesa-dev \ libegl1-mesa-dev \
libepoxy-dev \ libepoxy-dev \
libgbm-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 RUN cd /usr/src/virglrenderer && ./autogen.sh && ./configure --with-glx --disable-tests && make install
# netmap # netmap
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get install -y --no-install-recommends \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
linux-headers-amd64 linux-headers-amd64
RUN git clone https://github.com/luigirizzo/netmap.git /usr/src/netmap RUN git clone https://github.com/luigirizzo/netmap.git /usr/src/netmap
RUN cd /usr/src/netmap && git checkout v11.3 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 # Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture arm64 RUN dpkg --add-architecture arm64
RUN apt update RUN apt update && \
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \ apt install -y --no-install-recommends \
crossbuild-essential-arm64 crossbuild-essential-arm64
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get build-dep -yy -a arm64 qemu DEBIAN_FRONTEND=noninteractive eatmydata \
apt build-dep -yy -a arm64 qemu
# Specify the cross prefix for this image (see tests/docker/common.rc) # Specify the cross prefix for this image (see tests/docker/common.rc)
ENV QEMU_CONFIGURE_OPTS --cross-prefix=aarch64-linux-gnu- ENV QEMU_CONFIGURE_OPTS --cross-prefix=aarch64-linux-gnu-
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get install -y --no-install-recommends \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libbz2-dev:arm64 \ libbz2-dev:arm64 \
liblzo2-dev:arm64 \ liblzo2-dev:arm64 \
librdmacm-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 # Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture armel && \ RUN dpkg --add-architecture armel && \
apt update apt update && \
RUN apt install -yy crossbuild-essential-armel apt install -yy crossbuild-essential-armel && \
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get build-dep -yy -a armel qemu apt build-dep -yy -a armel qemu
# Specify the cross prefix for this image (see tests/docker/common.rc) # Specify the cross prefix for this image (see tests/docker/common.rc)
ENV QEMU_CONFIGURE_OPTS --cross-prefix=arm-linux-gnueabi- ENV QEMU_CONFIGURE_OPTS --cross-prefix=arm-linux-gnueabi-
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get install -y --no-install-recommends \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libbz2-dev:armel \ libbz2-dev:armel \
liblzo2-dev:armel \ liblzo2-dev:armel \
librdmacm-dev:armel \ librdmacm-dev:armel \

View File

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

View File

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

View File

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

View File

@ -6,7 +6,8 @@
# #
FROM qemu:debian-sid FROM qemu:debian-sid
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get install -y --no-install-recommends \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-m68k-linux-gnu \ gcc-m68k-linux-gnu \
libc6-dev-m68k-cross 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 # Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture mips RUN dpkg --add-architecture mips
RUN apt-get update RUN apt update && \
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \ apt install -y --no-install-recommends \
gcc-mips-linux-gnu gcc-mips-linux-gnu
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get build-dep -yy -a mips qemu DEBIAN_FRONTEND=noninteractive eatmydata \
apt build-dep -yy -a mips qemu
# Specify the cross prefix for this image (see tests/docker/common.rc) # Specify the cross prefix for this image (see tests/docker/common.rc)
ENV QEMU_CONFIGURE_OPTS --cross-prefix=mips-linux-gnu- ENV QEMU_CONFIGURE_OPTS --cross-prefix=mips-linux-gnu-
# Install extra libraries to increase code coverage # Install extra libraries to increase code coverage
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get install -y --no-install-recommends \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libbz2-dev:mips \ libbz2-dev:mips \
liblzo2-dev:mips \ liblzo2-dev:mips \
librdmacm-dev:mips \ librdmacm-dev:mips \

View File

@ -6,7 +6,8 @@
# #
FROM qemu:debian-sid FROM qemu:debian-sid
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get install -y --no-install-recommends \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-mips64-linux-gnuabi64 \ gcc-mips64-linux-gnuabi64 \
libc6-dev-mips64-cross 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 # Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture mips64el && \ RUN dpkg --add-architecture mips64el && \
apt-get update apt update && \
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \ apt install -y --no-install-recommends \
gcc-mips64el-linux-gnuabi64 gcc-mips64el-linux-gnuabi64
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get build-dep -yy -a mips64el qemu DEBIAN_FRONTEND=noninteractive eatmydata \
apt build-dep -yy -a mips64el qemu
# Specify the cross prefix for this image (see tests/docker/common.rc) # Specify the cross prefix for this image (see tests/docker/common.rc)
ENV QEMU_CONFIGURE_OPTS --cross-prefix=mips64el-linux-gnuabi64- ENV QEMU_CONFIGURE_OPTS --cross-prefix=mips64el-linux-gnuabi64-
# Install extra libraries to increase code coverage # Install extra libraries to increase code coverage
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get install -y --no-install-recommends \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libbz2-dev:mips64el \ libbz2-dev:mips64el \
liblzo2-dev:mips64el \ liblzo2-dev:mips64el \
librdmacm-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 # Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture mipsel RUN dpkg --add-architecture mipsel
RUN apt-get update RUN apt update && \
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \ apt install -y --no-install-recommends \
gcc-mipsel-linux-gnu gcc-mipsel-linux-gnu
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get build-dep -yy -a mipsel qemu DEBIAN_FRONTEND=noninteractive eatmydata \
apt build-dep -yy -a mipsel qemu
# Specify the cross prefix for this image (see tests/docker/common.rc) # Specify the cross prefix for this image (see tests/docker/common.rc)
ENV QEMU_CONFIGURE_OPTS --cross-prefix=mipsel-linux-gnu- ENV QEMU_CONFIGURE_OPTS --cross-prefix=mipsel-linux-gnu-
# Install extra libraries to increase code coverage # Install extra libraries to increase code coverage
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get install -y --no-install-recommends \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libbz2-dev:mipsel \ libbz2-dev:mipsel \
liblzo2-dev:mipsel \ liblzo2-dev:mipsel \
librdmacm-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 # Setup some basic tools we need
RUN apt-get update && \ RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install -yy eatmydata DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \ apt-get install -y --no-install-recommends \
bison \ bison \
build-essential \ build-essential \

View File

@ -7,7 +7,8 @@
# #
FROM qemu:debian-sid FROM qemu:debian-sid
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get install -y --no-install-recommends \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-powerpc-linux-gnu \ gcc-powerpc-linux-gnu \
libc6-dev-powerpc-cross || { echo "Failed to build - see debian-sid.docker notes"; exit 1; } 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. # contains cross compilers for Debian "ports" targets.
FROM qemu:debian-sid FROM qemu:debian-sid
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get install -y --no-install-recommends \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-powerpc64-linux-gnu \ gcc-powerpc64-linux-gnu \
libc6-dev-ppc64-cross || { echo "Failed to build - see debian-sid.docker notes"; exit 1; } 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 # Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture ppc64el && \ RUN dpkg --add-architecture ppc64el && \
apt update apt update && \
RUN apt install -yy crossbuild-essential-ppc64el apt install -yy crossbuild-essential-ppc64el
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get build-dep -yy -a ppc64el qemu DEBIAN_FRONTEND=noninteractive eatmydata \
apt build-dep -yy -a ppc64el qemu
# Specify the cross prefix for this image (see tests/docker/common.rc) # Specify the cross prefix for this image (see tests/docker/common.rc)
ENV QEMU_CONFIGURE_OPTS --cross-prefix=powerpc64le-linux-gnu- ENV QEMU_CONFIGURE_OPTS --cross-prefix=powerpc64le-linux-gnu-
# Install extra libraries to increase code coverage # Install extra libraries to increase code coverage
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get install -y --no-install-recommends \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
libbz2-dev:ppc64el \ libbz2-dev:ppc64el \
liblzo2-dev:ppc64el \ liblzo2-dev:ppc64el \
librdmacm-dev:ppc64el \ librdmacm-dev:ppc64el \

View File

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

View File

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

View File

@ -6,7 +6,8 @@
# #
FROM qemu:debian-sid FROM qemu:debian-sid
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ RUN apt update && \
apt-get install -y --no-install-recommends \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
gcc-sh4-linux-gnu \ gcc-sh4-linux-gnu \
libc6-dev-sh4-cross 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 RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
# Install common build utilities # Install common build utilities
RUN apt update RUN apt update && \
RUN DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \ apt install -y --no-install-recommends \
bison \ bison \
build-essential \ build-essential \

View File

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

View File

@ -1,15 +1,21 @@
# #
# Docker mingw32 cross-compiler target # 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> MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
ENV TARGET i686 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 \ apt-get install -y --no-install-recommends \
mxe-$TARGET-w64-mingw32.shared-bzip2 \ mxe-$TARGET-w64-mingw32.shared-bzip2 \
mxe-$TARGET-w64-mingw32.shared-curl \ 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-lzo \
mxe-$TARGET-w64-mingw32.shared-nettle \ mxe-$TARGET-w64-mingw32.shared-nettle \
mxe-$TARGET-w64-mingw32.shared-ncurses \ mxe-$TARGET-w64-mingw32.shared-ncurses \
mxe-$TARGET-w64-mingw32.shared-nsis \
mxe-$TARGET-w64-mingw32.shared-pixman \ mxe-$TARGET-w64-mingw32.shared-pixman \
mxe-$TARGET-w64-mingw32.shared-pkgconf \ mxe-$TARGET-w64-mingw32.shared-pkgconf \
mxe-$TARGET-w64-mingw32.shared-pthreads \ mxe-$TARGET-w64-mingw32.shared-pthreads \

View File

@ -1,15 +1,21 @@
# #
# Docker mingw64 cross-compiler target # 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> MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
ENV TARGET x86-64 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 \ apt-get install -y --no-install-recommends \
mxe-$TARGET-w64-mingw32.shared-bzip2 \ mxe-$TARGET-w64-mingw32.shared-bzip2 \
mxe-$TARGET-w64-mingw32.shared-curl \ 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-lzo \
mxe-$TARGET-w64-mingw32.shared-nettle \ mxe-$TARGET-w64-mingw32.shared-nettle \
mxe-$TARGET-w64-mingw32.shared-ncurses \ mxe-$TARGET-w64-mingw32.shared-ncurses \
mxe-$TARGET-w64-mingw32.shared-nsis \
mxe-$TARGET-w64-mingw32.shared-pixman \ mxe-$TARGET-w64-mingw32.shared-pixman \
mxe-$TARGET-w64-mingw32.shared-pkgconf \ mxe-$TARGET-w64-mingw32.shared-pkgconf \
mxe-$TARGET-w64-mingw32.shared-pthreads \ mxe-$TARGET-w64-mingw32.shared-pthreads \

View File

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

View File

@ -1,17 +1,20 @@
# #
# Docker mingw cross-compiler target # 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> 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 \ 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 \ apt-get install -y --no-install-recommends \
libpython2.7-stdlib \ libpython2.7-stdlib \
$(apt-get -s install -y --no-install-recommends gw32.shared-mingw-w64 | egrep "^Inst mxe-x86-64-unknown-" | cut -d\ -f2) $(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 RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
# Install common build utilities # Install common build utilities
RUN apt-get update && \ RUN apt update && \
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
RUN DEBIAN_FRONTEND=noninteractive eatmydata \ DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \ apt install -y --no-install-recommends \
bison \ bison \
build-essential \ build-essential \
@ -27,5 +27,6 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
pkg-config \ pkg-config \
psmisc \ psmisc \
python \ python \
python3-sphinx \
texinfo \ texinfo \
$(apt-get -s build-dep qemu | egrep ^Inst | fgrep '[all]' | cut -d\ -f2) $(apt-get -s build-dep qemu | egrep ^Inst | fgrep '[all]' | cut -d\ -f2)

View File

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

View File

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

View File

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

View File

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

View File

@ -27,8 +27,10 @@ for prefix in x86_64-w64-mingw32- i686-w64-mingw32-; do
--enable-curl \ --enable-curl \
--enable-vnc \ --enable-vnc \
--enable-bzip2 \ --enable-bzip2 \
--enable-guest-agent --enable-guest-agent \
--enable-docs
install_qemu install_qemu
make installer
make clean make clean
done 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 first_byte;
uint8_t last_byte; uint8_t last_byte;
bool hit_edge = false; bool hit_edge = false;
bool bad = false; int bad = 0;
qtest_memread(who, start_address, &first_byte, 1); qtest_memread(who, start_address, &first_byte, 1);
last_byte = first_byte; last_byte = first_byte;
@ -327,15 +327,20 @@ static void check_guests_ram(QTestState *who)
hit_edge = true; hit_edge = true;
last_byte = b; last_byte = b;
} else { } else {
fprintf(stderr, "Memory content inconsistency at %x" bad++;
" first_byte = %x last_byte = %x current = %x" if (bad <= 10) {
" hit_edge = %x\n", fprintf(stderr, "Memory content inconsistency at %x"
address, first_byte, last_byte, b, hit_edge); " first_byte = %x last_byte = %x current = %x"
bad = true; " 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) static void cleanup(const char *filename)

View File

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

View File

@ -49,7 +49,7 @@ _make_test_img $size
echo echo
echo "overlapping I/O" echo "overlapping I/O"
for i in `seq 1 10`; do for ((i=1;i<=10;i++)); do
let mb=1024*1024 let mb=1024*1024
let off1=$i*$mb let off1=$i*$mb
let off2=$off1+512 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 # 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 # 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
echo === AIO request during close === echo === AIO request during close ===

View File

@ -49,7 +49,7 @@ echo "creating image"
_make_test_img $size _make_test_img $size
generate_requests() { 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" 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 pattern=0
local cur_sec=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)) cur_sec=$((offset / 512 + i))
pattern=$(( ( (cur_sec % 256) + (cur_sec / 256)) % 256 )) pattern=$(( ( (cur_sec % 256) + (cur_sec / 256)) % 256 ))

View File

@ -55,7 +55,7 @@ backing_io()
local pattern=0 local pattern=0
local cur_sec=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)) cur_sec=$((offset / 65536 + i))
pattern=$(( ( (cur_sec % 128) + (cur_sec / 128)) % 128 )) 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 }' \ BEGIN { for (t='$start'; t<='$end'; t++) printf "%03d\n",t }' \
| while read id | while read id
do do
if grep -s "^$id " "$source_iotests/group" >/dev/null if grep -s "^$id\( \|\$\)" "$source_iotests/group" >/dev/null
then then
# in group file ... OK # in group file ... OK
echo $id >>$tmp.list echo $id >>$tmp.list
@ -547,7 +547,7 @@ else
touch $tmp.list touch $tmp.list
else else
# no test numbers, do everything from group file # 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
fi fi

View File

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

View File

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