.shippable.yml | 8 ++++ .travis.yml | 3 +- tests/docker/Makefile.include | 13 ++++-- tests/docker/dockerfiles/debian-amd64.docker | 39 ++++++++++++++++++ tests/docker/dockerfiles/debian-apt-fake.sh | 46 ++++++++++++++++++++++ tests/docker/dockerfiles/debian-arm64-cross.docker | 10 ++--- tests/docker/dockerfiles/debian-armel-cross.docker | 24 +++++++++++ tests/docker/dockerfiles/debian-armhf-cross.docker | 7 +--- .../docker/dockerfiles/debian-mipsel-cross.docker | 7 +--- .../docker/dockerfiles/debian-powerpc-cross.docker | 40 +++++++++++++++++++ .../docker/dockerfiles/debian-ppc64el-cross.docker | 24 +++++++++++ tests/docker/dockerfiles/debian-s390x-cross.docker | 23 +++++------ tests/docker/dockerfiles/debian8.docker | 31 +++++++++++++++ .../dockerfiles/{debian.docker => debian9.docker} | 15 +++++-- tests/docker/dockerfiles/travis.docker | 2 +- tests/docker/travis.py | 6 +-- util/cacheinfo.c | 1 + 17 files changed, 259 insertions(+), 40 deletions(-) create mode 100644 tests/docker/dockerfiles/debian-amd64.docker create mode 100755 tests/docker/dockerfiles/debian-apt-fake.sh create mode 100644 tests/docker/dockerfiles/debian-armel-cross.docker create mode 100644 tests/docker/dockerfiles/debian-powerpc-cross.docker create mode 100644 tests/docker/dockerfiles/debian-ppc64el-cross.docker create mode 100644 tests/docker/dockerfiles/debian8.docker rename tests/docker/dockerfiles/{debian.docker => debian9.docker} (59%)
Hi, This is the current status of the travis/next patch queue. The includes updates from Paolo to allow parallelism while testing in the docker environment. I've extended the travis image so we can actually run our travis.py script in the Travis image. There are also a number of updates from Phillipe which add a bunch of additional cross compile targets to our shippable setup. The cachinfo patch is temporary and won't make the pull as it is already queued in Richard's tcg-next. I'm currently trying to catch one of our Travis hangs in the act (postcopy-test) but it seems to be very much a heavy load race condition which annoyingly stops happening once you try and get debugging tools on it. This is the reason I've updated the travis docker image to include the debug tools ;-) As long as there are no screams of outrage I'll roll a pullreq for softfreeze tomorrow. Alex. Alex Bennée (3): docker: include python-yaml in travis.docker docker: add debug tools to travis.docker docker: add debian/powerpc based on Jessie Paolo Bonzini (2): docker: allow customizing Travis global_env variables travis: move make -j flag out of script Philippe Mathieu-Daudé (18): docker: rename debian stable -> 9 (Stretch) docker: add pkg-config and python-minimal packages to debian base docker: debian/s390x no more in unstable, now available in Stretch docker: remove packages now dependent of qemu in Stretch docker: add debian/armel based on Stretch docker: add debian/ppc64el based on Stretch docker: add debian/amd64 based on Stretch docker: enable virgl to extend code coverage on amd64 docker: enable netmap to extend code coverage on amd64 docker: enable gcrypt to extend code coverage on amd64 docker: enable nettle to extend code coverage on arm64 shippable: add armel targets shippable: add ppc64el targets shippable: add x86_64 targets util/cacheinfo: add missing include (TEMP) docker: add 'apt-fake' script which generate fake debian packages docker: add qemu:debian-jessie based on outdated jessie release shippable: add powerpc target .shippable.yml | 8 ++++ .travis.yml | 3 +- tests/docker/Makefile.include | 13 ++++-- tests/docker/dockerfiles/debian-amd64.docker | 39 ++++++++++++++++++ tests/docker/dockerfiles/debian-apt-fake.sh | 46 ++++++++++++++++++++++ tests/docker/dockerfiles/debian-arm64-cross.docker | 10 ++--- tests/docker/dockerfiles/debian-armel-cross.docker | 24 +++++++++++ tests/docker/dockerfiles/debian-armhf-cross.docker | 7 +--- .../docker/dockerfiles/debian-mipsel-cross.docker | 7 +--- .../docker/dockerfiles/debian-powerpc-cross.docker | 40 +++++++++++++++++++ .../docker/dockerfiles/debian-ppc64el-cross.docker | 24 +++++++++++ tests/docker/dockerfiles/debian-s390x-cross.docker | 23 +++++------ tests/docker/dockerfiles/debian8.docker | 31 +++++++++++++++ .../dockerfiles/{debian.docker => debian9.docker} | 15 +++++-- tests/docker/dockerfiles/travis.docker | 2 +- tests/docker/travis.py | 6 +-- util/cacheinfo.c | 1 + 17 files changed, 259 insertions(+), 40 deletions(-) create mode 100644 tests/docker/dockerfiles/debian-amd64.docker create mode 100755 tests/docker/dockerfiles/debian-apt-fake.sh create mode 100644 tests/docker/dockerfiles/debian-armel-cross.docker create mode 100644 tests/docker/dockerfiles/debian-powerpc-cross.docker create mode 100644 tests/docker/dockerfiles/debian-ppc64el-cross.docker create mode 100644 tests/docker/dockerfiles/debian8.docker rename tests/docker/dockerfiles/{debian.docker => debian9.docker} (59%) -- 2.13.0
On Mon, 07/17 15:48, Alex Bennée wrote: > Hi, > > This is the current status of the travis/next patch queue. The > includes updates from Paolo to allow parallelism while testing in the > docker environment. I've extended the travis image so we can actually > run our travis.py script in the Travis image. > > There are also a number of updates from Phillipe which add a bunch of > additional cross compile targets to our shippable setup. The cachinfo > patch is temporary and won't make the pull as it is already queued in > Richard's tcg-next. > > I'm currently trying to catch one of our Travis hangs in the act > (postcopy-test) but it seems to be very much a heavy load race > condition which annoyingly stops happening once you try and get > debugging tools on it. This is the reason I've updated the travis > docker image to include the debug tools ;-) > > As long as there are no screams of outrage I'll roll a pullreq for > softfreeze tomorrow. Renaming of debian to debian9 seems backward incompatible. We don't care that much, but I'd like to see a commit message justifying the change. Otherwise it looks good to go (minus the cachinfo patch, of course). Fam
Fam Zheng <famz@redhat.com> writes: > On Mon, 07/17 15:48, Alex Bennée wrote: >> Hi, >> >> This is the current status of the travis/next patch queue. The >> includes updates from Paolo to allow parallelism while testing in the >> docker environment. I've extended the travis image so we can actually >> run our travis.py script in the Travis image. >> >> There are also a number of updates from Phillipe which add a bunch of >> additional cross compile targets to our shippable setup. The cachinfo >> patch is temporary and won't make the pull as it is already queued in >> Richard's tcg-next. >> >> I'm currently trying to catch one of our Travis hangs in the act >> (postcopy-test) but it seems to be very much a heavy load race >> condition which annoyingly stops happening once you try and get >> debugging tools on it. This is the reason I've updated the travis >> docker image to include the debug tools ;-) >> >> As long as there are no screams of outrage I'll roll a pullreq for >> softfreeze tomorrow. > > Renaming of debian to debian9 seems backward incompatible. We don't care that > much, but I'd like to see a commit message justifying the change. Otherwise it > looks good to go (minus the cachinfo patch, of course). Well originally we were basing off debian-stable but we got caught out by the new release. With this series we have most things off the latest stable (Debian 9 - aka Stretch) but one or two builds are based of old stable (Debian 8 - aka Jessie) and using the embedian hacks we had before. I think for this it's mostly a matter of clarity. -- Alex Bennée
to stay backward incompatible.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
tests/docker/Makefile.include | 1 +
tests/docker/dockerfiles/debian.docker | 13 +++++++++++++
2 files changed, 14 insertions(+)
create mode 100644 tests/docker/dockerfiles/debian.docker
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index e993e149e7..aaab1a4208 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -58,6 +58,7 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker
docker-image-debian-powerpc-cross: EXTRA_FILES:=tests/docker/dockerfiles/debian-apt-fake.sh
# Enforce dependancies for composite images
+docker-image-debian: docker-image-debian9
docker-image-debian8-mxe: docker-image-debian8
docker-image-debian-amd64: docker-image-debian9
docker-image-debian-armel-cross: docker-image-debian9
diff --git a/tests/docker/dockerfiles/debian.docker b/tests/docker/dockerfiles/debian.docker
new file mode 100644
index 0000000000..fd32e71b79
--- /dev/null
+++ b/tests/docker/dockerfiles/debian.docker
@@ -0,0 +1,13 @@
+# This template is deprecated and was previously based on Jessie on QEMU 2.9.
+# Now than Stretch is out, please use qemu:debian8 as base for Jessie,
+# and qemu:debian9 for Stretch.
+#
+FROM qemu:debian9
+
+MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
+
+RUN for n in $(seq 8); do echo; done && \
+ echo "\n\t\tThis image is deprecated." && echo && \
+ echo "\tUse 'FROM qemu:debian9' to use the stable Debian Stretch image" && \
+ echo "\tor 'FROM qemu:debian8' to use old Debian Jessie." && \
+ for n in $(seq 8); do echo; done
--
2.13.2
Sorry I messed previous series... just updated last 5 patches of v2. v2.5: - MXE replaced <tab> by <space>s - docker9/ports: lost package 'clang' re-added - include patch keep 'debian.docker' base image backward incompatible On 07/17/2017 09:31 PM, Philippe Mathieu-Daudé wrote: > Hi, > > a bit late, but in case you can take some for 2.10: > > v2: > - cleanup few packages (to improve image caching) > - dropped mipsEL and keep mipsEB image (32-bit big endian) > - add mips64EL (64-bit little endian) > - add mingw32 and mingw64 targets (shared libs, could be static) > - add debian Ports image [can be dropped, use as base for SH4 for 2.11] > > On 07/17/2017 11:48 AM, Alex Bennée wrote: >> Hi, >> >> This is the current status of the travis/next patch queue. The >> includes updates from Paolo to allow parallelism while testing in the >> docker environment. I've extended the travis image so we can actually >> run our travis.py script in the Travis image. >> >> There are also a number of updates from Phillipe which add a bunch of >> additional cross compile targets to our shippable setup. The cachinfo >> patch is temporary and won't make the pull as it is already queued in >> Richard's tcg-next. >> >> I'm currently trying to catch one of our Travis hangs in the act >> (postcopy-test) but it seems to be very much a heavy load race >> condition which annoyingly stops happening once you try and get >> debugging tools on it. This is the reason I've updated the travis >> docker image to include the debug tools;-) >> >> As long as there are no screams of outrage I'll roll a pullreq for >> softfreeze tomorrow. Philippe Mathieu-Daudé (5): docker: add MXE (M cross environment) base image for MinGW-w64 shippable: add win32/64 targets docker: add debian Ports base image docker: warn users to use newer debian8/debian9 base image docker: install clang since Shippable setup_ve() verify it is available .shippable.yml | 4 +++ tests/docker/Makefile.include | 4 +++ tests/docker/dockerfiles/debian-ports.docker | 35 ++++++++++++++++++++++ tests/docker/dockerfiles/debian-win32-cross.docker | 32 ++++++++++++++++++++ tests/docker/dockerfiles/debian-win64-cross.docker | 32 ++++++++++++++++++++ tests/docker/dockerfiles/debian.docker | 13 ++++++++ tests/docker/dockerfiles/debian8-mxe.docker | 18 +++++++++++ tests/docker/dockerfiles/debian9.docker | 1 + 8 files changed, 139 insertions(+) create mode 100644 tests/docker/dockerfiles/debian-ports.docker create mode 100644 tests/docker/dockerfiles/debian-win32-cross.docker create mode 100644 tests/docker/dockerfiles/debian-win64-cross.docker create mode 100644 tests/docker/dockerfiles/debian.docker create mode 100644 tests/docker/dockerfiles/debian8-mxe.docker -- 2.13.2
On Mon, 07/17 23:47, Philippe Mathieu-Daudé wrote: > Sorry I messed previous series... just updated last 5 patches of v2. Please do full respins and don't post as in-reply-to previous versions, this doesn't make things any easier for maintainers. Fam
see http://mxe.cc/
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
tests/docker/Makefile.include | 3 ++
tests/docker/dockerfiles/debian-win32-cross.docker | 32 ++++++++++++++++++++++
tests/docker/dockerfiles/debian-win64-cross.docker | 32 ++++++++++++++++++++++
tests/docker/dockerfiles/debian8-mxe.docker | 18 ++++++++++++
4 files changed, 85 insertions(+)
create mode 100644 tests/docker/dockerfiles/debian-win32-cross.docker
create mode 100644 tests/docker/dockerfiles/debian-win64-cross.docker
create mode 100644 tests/docker/dockerfiles/debian8-mxe.docker
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 5a8283674a..e993e149e7 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -58,6 +58,7 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker
docker-image-debian-powerpc-cross: EXTRA_FILES:=tests/docker/dockerfiles/debian-apt-fake.sh
# Enforce dependancies for composite images
+docker-image-debian8-mxe: docker-image-debian8
docker-image-debian-amd64: docker-image-debian9
docker-image-debian-armel-cross: docker-image-debian9
docker-image-debian-armhf-cross: docker-image-debian9
@@ -67,6 +68,8 @@ docker-image-debian-mips64el-cross: docker-image-debian9
docker-image-debian-powerpc-cross: docker-image-debian8
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
# Expand all the pre-requistes for each docker image and test combination
$(foreach i,$(DOCKER_IMAGES), \
diff --git a/tests/docker/dockerfiles/debian-win32-cross.docker b/tests/docker/dockerfiles/debian-win32-cross.docker
new file mode 100644
index 0000000000..dd021f2df0
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-win32-cross.docker
@@ -0,0 +1,32 @@
+#
+# Docker mingw32 cross-compiler target
+#
+# This docker target builds on the debian Jessie MXE base image.
+#
+FROM qemu:debian8-mxe
+
+MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
+
+ENV TARGET i686
+
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get install -y --no-install-recommends \
+ mxe-$TARGET-w64-mingw32.shared-bzip2 \
+ mxe-$TARGET-w64-mingw32.shared-curl \
+ mxe-$TARGET-w64-mingw32.shared-glib \
+ mxe-$TARGET-w64-mingw32.shared-libgcrypt \
+ mxe-$TARGET-w64-mingw32.shared-libssh2 \
+ mxe-$TARGET-w64-mingw32.shared-libusb1 \
+ mxe-$TARGET-w64-mingw32.shared-lzo \
+ mxe-$TARGET-w64-mingw32.shared-nettle \
+ mxe-$TARGET-w64-mingw32.shared-ncurses \
+ mxe-$TARGET-w64-mingw32.shared-pixman \
+ mxe-$TARGET-w64-mingw32.shared-pkgconf \
+ mxe-$TARGET-w64-mingw32.shared-pthreads \
+ mxe-$TARGET-w64-mingw32.shared-sdl2 \
+ mxe-$TARGET-w64-mingw32.shared-sdl2-mixer \
+ mxe-$TARGET-w64-mingw32.shared-sdl2-gfx \
+ mxe-$TARGET-w64-mingw32.shared-zlib
+
+# Specify the cross prefix for this image (see tests/docker/common.rc)
+ENV QEMU_CONFIGURE_OPTS --cross-prefix=$TARGET-w64-mingw32.shared-
diff --git a/tests/docker/dockerfiles/debian-win64-cross.docker b/tests/docker/dockerfiles/debian-win64-cross.docker
new file mode 100644
index 0000000000..4542bcc821
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-win64-cross.docker
@@ -0,0 +1,32 @@
+#
+# Docker mingw64 cross-compiler target
+#
+# This docker target builds on the debian Jessie MXE base image.
+#
+FROM qemu:debian8-mxe
+
+MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
+
+ENV TARGET x86-64
+
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get install -y --no-install-recommends \
+ mxe-$TARGET-w64-mingw32.shared-bzip2 \
+ mxe-$TARGET-w64-mingw32.shared-curl \
+ mxe-$TARGET-w64-mingw32.shared-glib \
+ mxe-$TARGET-w64-mingw32.shared-libgcrypt \
+ mxe-$TARGET-w64-mingw32.shared-libssh2 \
+ mxe-$TARGET-w64-mingw32.shared-libusb1 \
+ mxe-$TARGET-w64-mingw32.shared-lzo \
+ mxe-$TARGET-w64-mingw32.shared-nettle \
+ mxe-$TARGET-w64-mingw32.shared-ncurses \
+ mxe-$TARGET-w64-mingw32.shared-pixman \
+ mxe-$TARGET-w64-mingw32.shared-pkgconf \
+ mxe-$TARGET-w64-mingw32.shared-pthreads \
+ mxe-$TARGET-w64-mingw32.shared-sdl2 \
+ mxe-$TARGET-w64-mingw32.shared-sdl2-mixer \
+ mxe-$TARGET-w64-mingw32.shared-sdl2-gfx \
+ mxe-$TARGET-w64-mingw32.shared-zlib
+
+# Specify the cross prefix for this image (see tests/docker/common.rc)
+ENV QEMU_CONFIGURE_OPTS --cross-prefix=x86_64-w64-mingw32.shared-
diff --git a/tests/docker/dockerfiles/debian8-mxe.docker b/tests/docker/dockerfiles/debian8-mxe.docker
new file mode 100644
index 0000000000..7bf1b59e54
--- /dev/null
+++ b/tests/docker/dockerfiles/debian8-mxe.docker
@@ -0,0 +1,18 @@
+#
+# Docker mingw cross-compiler target
+#
+# This docker target builds on the debian Jessie base image.
+#
+FROM qemu:debian8
+
+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-get install -y --no-install-recommends \
+ $(apt-get -s install -y --no-install-recommends gw32.shared-mingw-w64 gw32.shared-mingw-w64 | egrep "^Inst mxe-x86-64-unknown-" | cut -d\ -f2)
+
+ENV PATH $PATH:/usr/lib/mxe/usr/bin/
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
.shippable.yml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/.shippable.yml b/.shippable.yml
index 53b43b349f..dd4bbc84b1 100644
--- a/.shippable.yml
+++ b/.shippable.yml
@@ -7,6 +7,10 @@ env:
matrix:
- IMAGE=debian-amd64
TARGET_LIST=x86_64-softmmu,x86_64-linux-user
+ - 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
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
tests/docker/dockerfiles/debian-ports.docker | 35 ++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
create mode 100644 tests/docker/dockerfiles/debian-ports.docker
diff --git a/tests/docker/dockerfiles/debian-ports.docker b/tests/docker/dockerfiles/debian-ports.docker
new file mode 100644
index 0000000000..fba224f760
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-ports.docker
@@ -0,0 +1,35 @@
+#
+# Docker multiarch cross-compiler target
+#
+# This docker target is builds on Debian Ports cross compiler targets
+# to build distro with a selection of cross compilers for building test binaries.
+#
+# On its own you can't build much but the docker-foo-cross targets
+# build on top of the base debian image.
+#
+FROM debian:unstable
+
+MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
+
+RUN echo "deb [arch=amd64] http://deb.debian.org/debian unstable main" > /etc/apt/sources.list
+
+# Duplicate deb line as deb-src
+RUN cat /etc/apt/sources.list | sed -ne "s/^deb\ \(\[.*\]\ \)\?\(.*\)/deb-src \2/p" >> /etc/apt/sources.list
+
+# Setup some basic tools we need
+RUN apt-get update && \
+ DEBIAN_FRONTEND=noninteractive apt-get install -yy eatmydata
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get install -y --no-install-recommends \
+ bison \
+ build-essential \
+ ca-certificates \
+ clang \
+ debian-ports-archive-keyring \
+ flex \
+ git \
+ pkg-config \
+ psmisc \
+ python \
+ texinfo \
+ $(apt-get -s build-dep qemu | egrep ^Inst | fgrep '[all]' | cut -d\ -f2)
--
2.13.2
to stay backward incompatible.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
tests/docker/Makefile.include | 1 +
tests/docker/dockerfiles/debian.docker | 13 +++++++++++++
2 files changed, 14 insertions(+)
create mode 100644 tests/docker/dockerfiles/debian.docker
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index e993e149e7..aaab1a4208 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -58,6 +58,7 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker
docker-image-debian-powerpc-cross: EXTRA_FILES:=tests/docker/dockerfiles/debian-apt-fake.sh
# Enforce dependancies for composite images
+docker-image-debian: docker-image-debian9
docker-image-debian8-mxe: docker-image-debian8
docker-image-debian-amd64: docker-image-debian9
docker-image-debian-armel-cross: docker-image-debian9
diff --git a/tests/docker/dockerfiles/debian.docker b/tests/docker/dockerfiles/debian.docker
new file mode 100644
index 0000000000..fd32e71b79
--- /dev/null
+++ b/tests/docker/dockerfiles/debian.docker
@@ -0,0 +1,13 @@
+# This template is deprecated and was previously based on Jessie on QEMU 2.9.
+# Now than Stretch is out, please use qemu:debian8 as base for Jessie,
+# and qemu:debian9 for Stretch.
+#
+FROM qemu:debian9
+
+MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
+
+RUN for n in $(seq 8); do echo; done && \
+ echo "\n\t\tThis image is deprecated." && echo && \
+ echo "\tUse 'FROM qemu:debian9' to use the stable Debian Stretch image" && \
+ echo "\tor 'FROM qemu:debian8' to use old Debian Jessie." && \
+ for n in $(seq 8); do echo; done
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
tests/docker/dockerfiles/debian9.docker | 1 +
1 file changed, 1 insertion(+)
diff --git a/tests/docker/dockerfiles/debian9.docker b/tests/docker/dockerfiles/debian9.docker
index 056e5389cc..a4509950e6 100644
--- a/tests/docker/dockerfiles/debian9.docker
+++ b/tests/docker/dockerfiles/debian9.docker
@@ -20,6 +20,7 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
bison \
build-essential \
ca-certificates \
+ clang \
flex \
git \
pkg-config \
--
2.13.2
Hi, a bit late, but in case you can take some for 2.10: v2: - cleanup few packages (to improve image caching) - dropped mipsEL and keep mipsEB image (32-bit big endian) - add mips64EL (64-bit little endian) - add mingw32 and mingw64 targets (shared libs, could be static) - add debian Ports image [can be dropped, use as base for SH4 for 2.11] Regards, Phil. On 07/17/2017 11:48 AM, Alex Bennée wrote: > Hi, > > This is the current status of the travis/next patch queue. The > includes updates from Paolo to allow parallelism while testing in the > docker environment. I've extended the travis image so we can actually > run our travis.py script in the Travis image. > > There are also a number of updates from Phillipe which add a bunch of > additional cross compile targets to our shippable setup. The cachinfo > patch is temporary and won't make the pull as it is already queued in > Richard's tcg-next. > > I'm currently trying to catch one of our Travis hangs in the act > (postcopy-test) but it seems to be very much a heavy load race > condition which annoyingly stops happening once you try and get > debugging tools on it. This is the reason I've updated the travis > docker image to include the debug tools;-) > > As long as there are no screams of outrage I'll roll a pullreq for > softfreeze tomorrow. > > Alex. Alex Bennée (3): docker: include python-yaml in travis.docker docker: add debug tools to travis.docker docker: add debian/powerpc based on Jessie Paolo Bonzini (2): docker: allow customizing Travis global_env variables travis: move make -j flag out of script Philippe Mathieu-Daudé (26): docker: rename debian stable -> 9 (Stretch) docker: add common packages to debian base docker: debian/s390x no more in unstable, now available in Stretch docker: remove packages now dependent of qemu in Stretch docker: optimize debian9 base image docker: add debian/armel based on Stretch docker: add debian/ppc64el based on Stretch docker: add debian/amd64 based on Stretch docker: enable virgl to extend code coverage on amd64 docker: enable netmap to extend code coverage on amd64 docker: enable gcrypt to extend code coverage on amd64 docker: enable nettle to extend code coverage on arm64 shippable: add armel targets shippable: add ppc64el targets shippable: add x86_64 targets util/cacheinfo: add missing include docker: add qemu:debian-jessie based on outdated jessie release docker: add 'apt-fake' script which generate fake debian packages shippable: add powerpc target docker: add debian/mips[eb] images shippable: use debian/mips[eb] targets docker: add debian/mips64el image shippable: add mips64el targets docker: add MXE (M cross environment) base image for MinGW-w64 shippable: add win32/64 targets docker: add debian Ports base image .shippable.yml | 19 +++++++-- .travis.yml | 3 +- tests/docker/Makefile.include | 17 ++++++-- tests/docker/dockerfiles/debian-amd64.docker | 39 ++++++++++++++++++ tests/docker/dockerfiles/debian-apt-fake.sh | 46 ++++++++++++++++++++++ tests/docker/dockerfiles/debian-arm64-cross.docker | 10 ++--- tests/docker/dockerfiles/debian-armel-cross.docker | 24 +++++++++++ tests/docker/dockerfiles/debian-armhf-cross.docker | 7 +--- tests/docker/dockerfiles/debian-mips-cross.docker | 29 ++++++++++++++ .../dockerfiles/debian-mips64el-cross.docker | 30 ++++++++++++++ .../docker/dockerfiles/debian-mipsel-cross.docker | 16 ++++---- tests/docker/dockerfiles/debian-ports.docker | 34 ++++++++++++++++ .../docker/dockerfiles/debian-powerpc-cross.docker | 40 +++++++++++++++++++ .../docker/dockerfiles/debian-ppc64el-cross.docker | 25 ++++++++++++ tests/docker/dockerfiles/debian-s390x-cross.docker | 23 +++++------ tests/docker/dockerfiles/debian-win32-cross.docker | 32 +++++++++++++++ tests/docker/dockerfiles/debian-win64-cross.docker | 32 +++++++++++++++ tests/docker/dockerfiles/debian8-mxe.docker | 18 +++++++++ tests/docker/dockerfiles/debian8.docker | 36 +++++++++++++++++ .../dockerfiles/{debian.docker => debian9.docker} | 17 ++++++-- tests/docker/dockerfiles/travis.docker | 2 +- tests/docker/travis.py | 6 +-- util/cacheinfo.c | 1 + 23 files changed, 460 insertions(+), 46 deletions(-) create mode 100644 tests/docker/dockerfiles/debian-amd64.docker create mode 100755 tests/docker/dockerfiles/debian-apt-fake.sh create mode 100644 tests/docker/dockerfiles/debian-armel-cross.docker create mode 100644 tests/docker/dockerfiles/debian-mips-cross.docker create mode 100644 tests/docker/dockerfiles/debian-mips64el-cross.docker create mode 100644 tests/docker/dockerfiles/debian-ports.docker create mode 100644 tests/docker/dockerfiles/debian-powerpc-cross.docker create mode 100644 tests/docker/dockerfiles/debian-ppc64el-cross.docker create mode 100644 tests/docker/dockerfiles/debian-win32-cross.docker create mode 100644 tests/docker/dockerfiles/debian-win64-cross.docker create mode 100644 tests/docker/dockerfiles/debian8-mxe.docker create mode 100644 tests/docker/dockerfiles/debian8.docker rename tests/docker/dockerfiles/{debian.docker => debian9.docker} (52%) -- 2.13.2
Hi, This series seems to have some coding style problems. See output below for more information: Subject: [Qemu-devel] [PATCH v2 00/31] Updated Travis Queue Message-id: 20170718003159.10200-1-f4bug@amsat.org Type: series === TEST SCRIPT BEGIN === #!/bin/bash BASE=base n=1 total=$(git log --oneline $BASE.. | wc -l) failed=0 git config --local diff.renamelimit 0 git config --local diff.renames True commits="$(git log --format=%H --reverse $BASE..)" for c in $commits; do echo "Checking PATCH $n/$total: $(git log -n 1 --format=%s $c)..." if ! git show $c --format=email | ./scripts/checkpatch.pl --mailback -; then failed=1 echo fi n=$((n+1)) done exit $failed === TEST SCRIPT END === Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384 From https://github.com/patchew-project/qemu - [tag update] patchew/20170712162058.10538-1-ehabkost@redhat.com -> patchew/20170712162058.10538-1-ehabkost@redhat.com * [new tag] patchew/cover.34f8428dbbcaa0611cef759667d281ae508ac91d.1500378931.git-series.james.hogan@imgtec.com -> patchew/cover.34f8428dbbcaa0611cef759667d281ae508ac91d.1500378931.git-series.james.hogan@imgtec.com Switched to a new branch 'test' ccf8b79 docker: add debian Ports base image 1d50216 shippable: add win32/64 targets 2d60fa6 docker: add MXE (M cross environment) base image for MinGW-w64 9ac23ef shippable: add mips64el targets 6359551 docker: add debian/mips64el image 334ba00 shippable: use debian/mips[eb] targets 01c95b4 docker: add debian/mips[eb] images 2e63e0d shippable: add powerpc target d2efe10 docker: add debian/powerpc based on Jessie 967070c docker: add 'apt-fake' script which generate fake debian packages aaa08ff docker: add qemu:debian-jessie based on outdated jessie release c21ee29 util/cacheinfo: add missing include 65ce350 shippable: add x86_64 targets 2b36cc5 shippable: add ppc64el targets 0a38183 shippable: add armel targets 246c517 docker: enable nettle to extend code coverage on arm64 0bc3dcb docker: enable gcrypt to extend code coverage on amd64 df95408 docker: enable netmap to extend code coverage on amd64 951854e docker: enable virgl to extend code coverage on amd64 614d95e docker: add debian/amd64 based on Stretch a6f5e01 docker: add debian/ppc64el based on Stretch 88e3839 docker: add debian/armel based on Stretch 96ac7ec docker: optimize debian9 base image a8da518 docker: remove packages now dependent of qemu in Stretch e0219b2 docker: debian/s390x no more in unstable, now available in Stretch 3f63830 docker: add common packages to debian base 77d452a docker: rename debian stable -> 9 (Stretch) fe1bebf docker: add debug tools to travis.docker 0738a47 docker: include python-yaml in travis.docker 41e0862 travis: move make -j flag out of script 6ca5c9a docker: allow customizing Travis global_env variables === OUTPUT BEGIN === Checking PATCH 1/31: docker: allow customizing Travis global_env variables... Checking PATCH 2/31: travis: move make -j flag out of script... Checking PATCH 3/31: docker: include python-yaml in travis.docker... Checking PATCH 4/31: docker: add debug tools to travis.docker... Checking PATCH 5/31: docker: rename debian stable -> 9 (Stretch)... Checking PATCH 6/31: docker: add common packages to debian base... Checking PATCH 7/31: docker: debian/s390x no more in unstable, now available in Stretch... Checking PATCH 8/31: docker: remove packages now dependent of qemu in Stretch... Checking PATCH 9/31: docker: optimize debian9 base image... Checking PATCH 10/31: docker: add debian/armel based on Stretch... Checking PATCH 11/31: docker: add debian/ppc64el based on Stretch... Checking PATCH 12/31: docker: add debian/amd64 based on Stretch... Checking PATCH 13/31: docker: enable virgl to extend code coverage on amd64... Checking PATCH 14/31: docker: enable netmap to extend code coverage on amd64... Checking PATCH 15/31: docker: enable gcrypt to extend code coverage on amd64... Checking PATCH 16/31: docker: enable nettle to extend code coverage on arm64... Checking PATCH 17/31: shippable: add armel targets... Checking PATCH 18/31: shippable: add ppc64el targets... Checking PATCH 19/31: shippable: add x86_64 targets... Checking PATCH 20/31: util/cacheinfo: add missing include... Checking PATCH 21/31: docker: add qemu:debian-jessie based on outdated jessie release... Checking PATCH 22/31: docker: add 'apt-fake' script which generate fake debian packages... Checking PATCH 23/31: docker: add debian/powerpc based on Jessie... Checking PATCH 24/31: shippable: add powerpc target... Checking PATCH 25/31: docker: add debian/mips[eb] images... Checking PATCH 26/31: shippable: use debian/mips[eb] targets... Checking PATCH 27/31: docker: add debian/mips64el image... Checking PATCH 28/31: shippable: add mips64el targets... Checking PATCH 29/31: docker: add MXE (M cross environment) base image for MinGW-w64... ERROR: trailing whitespace #135: FILE: tests/docker/dockerfiles/debian8-mxe.docker:18: +ENV PATH $PATH:/usr/lib/mxe/usr/bin/ $ total: 1 errors, 0 warnings, 97 lines checked Your patch has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. Checking PATCH 30/31: shippable: add win32/64 targets... Checking PATCH 31/31: docker: add debian Ports base image... === OUTPUT END === Test command exited with code: 1 --- Email generated automatically by Patchew [http://patchew.org/]. Please send your feedback to patchew-devel@freelists.org
From: Paolo Bonzini <pbonzini@redhat.com>
This is useful so that we can do builds at higher than -j3 when running
travis.py locally.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
tests/docker/travis.py | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tests/docker/travis.py b/tests/docker/travis.py
index 8dcc964da4..703a7fde85 100755
--- a/tests/docker/travis.py
+++ b/tests/docker/travis.py
@@ -21,13 +21,12 @@ def load_yaml(fname):
def conf_iter(conf):
def env_to_list(env):
return env if isinstance(env, list) else [env]
- global_env = conf["env"]["global"]
for entry in conf["matrix"]["include"]:
- yield {"env": global_env + env_to_list(entry["env"]),
+ yield {"env": env_to_list(entry["env"]),
"compiler": entry["compiler"]}
for entry in itertools.product(conf["compiler"],
conf["env"]["matrix"]):
- yield {"env": global_env + env_to_list(entry[1]),
+ yield {"env": env_to_list(entry[1]),
"compiler": entry[0]}
def main():
@@ -35,6 +34,7 @@ def main():
sys.stderr.write("Usage: %s <travis-file>\n" % sys.argv[0])
return 1
conf = load_yaml(sys.argv[1])
+ print "\n".join((": ${%s}" % var for var in conf["env"]["global"]))
for config in conf_iter(conf):
print "("
print "\n".join(config["env"])
--
2.13.2
From: Paolo Bonzini <pbonzini@redhat.com>
Because global environment variables can be overridden when .travis.yml
is processed by the docker-travis target, the effect of this patch is
that docker-travis now obeys the "J=n" option.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
.travis.yml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/.travis.yml b/.travis.yml
index 3c7a5cbe25..f583839755 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -46,6 +46,7 @@ notifications:
env:
global:
- TEST_CMD="make check"
+ - MAKEFLAGS="-j3"
matrix:
- CONFIG=""
- CONFIG="--enable-debug --enable-debug-tcg --enable-trace-backends=log"
@@ -64,7 +65,7 @@ before_install:
before_script:
- ./configure ${CONFIG}
script:
- - make -j3 && ${TEST_CMD}
+ - make ${MAKEFLAGS} && ${TEST_CMD}
matrix:
include:
# Test with CLang for compile portability
--
2.13.2
From: Alex Bennée <alex.bennee@linaro.org>
Although the upstream Travis images don't need this library our
"travis-lite" scripts are written in python. This allows us to do:
make docker-travis@travis J=10
and approximate a travis run on their default image.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Fam Zheng <famz@redhat.com>
---
tests/docker/dockerfiles/travis.docker | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/docker/dockerfiles/travis.docker b/tests/docker/dockerfiles/travis.docker
index e4983ae2d3..a315f66ad9 100644
--- a/tests/docker/dockerfiles/travis.docker
+++ b/tests/docker/dockerfiles/travis.docker
@@ -2,5 +2,5 @@ FROM quay.io/travisci/travis-ruby
RUN apt-get update
RUN apt-get -y build-dep qemu
RUN apt-get -y build-dep device-tree-compiler
-RUN apt-get -y install python2.7 dh-autoreconf
+RUN apt-get -y install python2.7 python-yaml dh-autoreconf
ENV FEATURES pyyaml
--
2.13.2
From: Alex Bennée <alex.bennee@linaro.org>
When a test fails/hangs you don't want the hassle of getting the debug
tools installed. Lets install them on our image by default so we can
debug when we need to.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Fam Zheng <famz@redhat.com>
---
tests/docker/dockerfiles/travis.docker | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/docker/dockerfiles/travis.docker b/tests/docker/dockerfiles/travis.docker
index a315f66ad9..636fa590a5 100644
--- a/tests/docker/dockerfiles/travis.docker
+++ b/tests/docker/dockerfiles/travis.docker
@@ -2,5 +2,5 @@ FROM quay.io/travisci/travis-ruby
RUN apt-get update
RUN apt-get -y build-dep qemu
RUN apt-get -y build-dep device-tree-compiler
-RUN apt-get -y install python2.7 python-yaml dh-autoreconf
+RUN apt-get -y install python2.7 python-yaml dh-autoreconf gdb strace lsof net-tools
ENV FEATURES pyyaml
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/Makefile.include | 6 +++---
tests/docker/dockerfiles/debian-arm64-cross.docker | 4 ++--
tests/docker/dockerfiles/debian-armhf-cross.docker | 4 ++--
tests/docker/dockerfiles/debian-mipsel-cross.docker | 4 ++--
tests/docker/dockerfiles/{debian.docker => debian9.docker} | 13 +++++++++----
5 files changed, 18 insertions(+), 13 deletions(-)
rename tests/docker/dockerfiles/{debian.docker => debian9.docker} (62%)
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 012a2fc1af..72bb52ad7b 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -56,9 +56,9 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker
"BUILD","$*")
# Enforce dependancies for composite images
-docker-image-debian-armhf-cross: docker-image-debian
-docker-image-debian-arm64-cross: docker-image-debian
-docker-image-debian-mipsel-cross: docker-image-debian
+docker-image-debian-armhf-cross: docker-image-debian9
+docker-image-debian-arm64-cross: docker-image-debian9
+docker-image-debian-mipsel-cross: docker-image-debian9
# Expand all the pre-requistes for each docker image and test combination
$(foreach i,$(DOCKER_IMAGES), \
diff --git a/tests/docker/dockerfiles/debian-arm64-cross.docker b/tests/docker/dockerfiles/debian-arm64-cross.docker
index 45b891d57a..f1bfa64160 100644
--- a/tests/docker/dockerfiles/debian-arm64-cross.docker
+++ b/tests/docker/dockerfiles/debian-arm64-cross.docker
@@ -1,9 +1,9 @@
#
# Docker arm64 cross-compiler target
#
-# This docker target builds on the base debian image.
+# This docker target builds on the debian Stretch base image.
#
-FROM qemu:debian
+FROM qemu:debian9
# Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture arm64
diff --git a/tests/docker/dockerfiles/debian-armhf-cross.docker b/tests/docker/dockerfiles/debian-armhf-cross.docker
index e67dfdccc5..2beacef49b 100644
--- a/tests/docker/dockerfiles/debian-armhf-cross.docker
+++ b/tests/docker/dockerfiles/debian-armhf-cross.docker
@@ -1,9 +1,9 @@
#
# Docker armhf cross-compiler target
#
-# This docker target builds on the base debian image.
+# This docker target builds on the debian Stretch base image.
#
-FROM qemu:debian
+FROM qemu:debian9
# Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture armhf
diff --git a/tests/docker/dockerfiles/debian-mipsel-cross.docker b/tests/docker/dockerfiles/debian-mipsel-cross.docker
index 2156bdb28d..9ee997aa54 100644
--- a/tests/docker/dockerfiles/debian-mipsel-cross.docker
+++ b/tests/docker/dockerfiles/debian-mipsel-cross.docker
@@ -1,9 +1,9 @@
#
# Docker mipsel cross-compiler target
#
-# This docker target builds on the base debian image.
+# This docker target builds on the debian Stretch base image.
#
-FROM qemu:debian
+FROM qemu:debian9
MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
# Add the foreign architecture we want and install dependencies
diff --git a/tests/docker/dockerfiles/debian.docker b/tests/docker/dockerfiles/debian9.docker
similarity index 62%
rename from tests/docker/dockerfiles/debian.docker
rename to tests/docker/dockerfiles/debian9.docker
index 10953b2425..c74f71283c 100644
--- a/tests/docker/dockerfiles/debian.docker
+++ b/tests/docker/dockerfiles/debian9.docker
@@ -1,13 +1,13 @@
#
# Docker multiarch cross-compiler target
#
-# This docker target is builds on Debian and Emdebian's cross compiler targets
-# to build distro with a selection of cross compilers for building test binaries.
+# This docker target is builds on Debian cross compiler targets to build distro
+# with a selection of cross compilers for building test binaries.
#
# On its own you can't build much but the docker-foo-cross targets
# build on top of the base debian image.
#
-FROM debian:stable-slim
+FROM debian:stretch-slim
# Duplicate deb line as deb-src
RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
@@ -17,4 +17,9 @@ RUN apt update
RUN DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
- ca-certificates build-essential clang git bison flex
+ bison \
+ build-essential \
+ ca-certificates \
+ clang \
+ flex \
+ git
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/dockerfiles/debian9.docker | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/tests/docker/dockerfiles/debian9.docker b/tests/docker/dockerfiles/debian9.docker
index c74f71283c..6b6bf41421 100644
--- a/tests/docker/dockerfiles/debian9.docker
+++ b/tests/docker/dockerfiles/debian9.docker
@@ -18,8 +18,11 @@ RUN DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
bison \
+ binutils-multiarch \
build-essential \
ca-certificates \
clang \
flex \
- git
+ git \
+ pkg-config \
+ python-minimal
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/Makefile.include | 1 +
tests/docker/dockerfiles/debian-s390x-cross.docker | 20 ++++++++++----------
2 files changed, 11 insertions(+), 10 deletions(-)
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 72bb52ad7b..84dce49655 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -59,6 +59,7 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker
docker-image-debian-armhf-cross: docker-image-debian9
docker-image-debian-arm64-cross: docker-image-debian9
docker-image-debian-mipsel-cross: docker-image-debian9
+docker-image-debian-s390x-cross: docker-image-debian9
# Expand all the pre-requistes for each docker image and test combination
$(foreach i,$(DOCKER_IMAGES), \
diff --git a/tests/docker/dockerfiles/debian-s390x-cross.docker b/tests/docker/dockerfiles/debian-s390x-cross.docker
index cfc354ce5d..667e428a4c 100644
--- a/tests/docker/dockerfiles/debian-s390x-cross.docker
+++ b/tests/docker/dockerfiles/debian-s390x-cross.docker
@@ -1,27 +1,27 @@
#
# Docker s390 cross-compiler target
#
-# This docker target is based on stretch (testing) as the stable build
-# doesn't have the cross compiler available.
+# This docker target builds on the debian Stretch base image.
#
-FROM debian:testing-slim
-
-# Duplicate deb line as deb-src
-RUN cat /etc/apt/sources.list | sed "s/deb/deb-src/" >> /etc/apt/sources.list
+FROM qemu:debian9
# Add the s390x architecture
RUN dpkg --add-architecture s390x
# Grab the updated list of packages
RUN apt update && apt dist-upgrade -yy
-RUN apt install -yy build-essential clang
-RUN apt-get build-dep -yy -a s390x qemu || apt-get -f install
-RUN apt install -yy gcc-multilib-s390x-linux-gnu binutils-multiarch
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get install -y --no-install-recommends \
+ gcc-multilib-s390x-linux-gnu
+
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get 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-
-RUN DEBIAN_FRONTEND=noninteractive \
+# Install extra libraries to increase code coverage
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
glusterfs-common:s390x \
libbz2-dev:s390x \
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/dockerfiles/debian-arm64-cross.docker | 3 ---
tests/docker/dockerfiles/debian-armhf-cross.docker | 3 ---
tests/docker/dockerfiles/debian-mipsel-cross.docker | 3 ---
tests/docker/dockerfiles/debian-s390x-cross.docker | 3 ---
4 files changed, 12 deletions(-)
diff --git a/tests/docker/dockerfiles/debian-arm64-cross.docker b/tests/docker/dockerfiles/debian-arm64-cross.docker
index f1bfa64160..6ed12a3f6e 100644
--- a/tests/docker/dockerfiles/debian-arm64-cross.docker
+++ b/tests/docker/dockerfiles/debian-arm64-cross.docker
@@ -19,11 +19,8 @@ ENV QEMU_CONFIGURE_OPTS --cross-prefix=aarch64-linux-gnu-
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
- glusterfs-common:arm64 \
libbz2-dev:arm64 \
liblzo2-dev:arm64 \
- libncursesw5-dev:arm64 \
- libnfs-dev:arm64 \
librdmacm-dev:arm64 \
libsnappy-dev:arm64 \
libxen-dev:arm64
diff --git a/tests/docker/dockerfiles/debian-armhf-cross.docker b/tests/docker/dockerfiles/debian-armhf-cross.docker
index 2beacef49b..5100b0afc0 100644
--- a/tests/docker/dockerfiles/debian-armhf-cross.docker
+++ b/tests/docker/dockerfiles/debian-armhf-cross.docker
@@ -19,11 +19,8 @@ ENV QEMU_CONFIGURE_OPTS --cross-prefix=arm-linux-gnueabihf-
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
- glusterfs-common:armhf \
libbz2-dev:armhf \
liblzo2-dev:armhf \
- libncursesw5-dev:armhf \
- libnfs-dev:armhf \
librdmacm-dev:armhf \
libsnappy-dev:armhf \
libxen-dev:armhf
diff --git a/tests/docker/dockerfiles/debian-mipsel-cross.docker b/tests/docker/dockerfiles/debian-mipsel-cross.docker
index 9ee997aa54..eb279c5044 100644
--- a/tests/docker/dockerfiles/debian-mipsel-cross.docker
+++ b/tests/docker/dockerfiles/debian-mipsel-cross.docker
@@ -20,10 +20,7 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get build-dep -yy -a mipsel qemu
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
- glusterfs-common:mipsel \
libbz2-dev:mipsel \
liblzo2-dev:mipsel \
- libncursesw5-dev:mipsel \
- libnfs-dev:mipsel \
librdmacm-dev:mipsel \
libsnappy-dev:mipsel
diff --git a/tests/docker/dockerfiles/debian-s390x-cross.docker b/tests/docker/dockerfiles/debian-s390x-cross.docker
index 667e428a4c..e188bfeda4 100644
--- a/tests/docker/dockerfiles/debian-s390x-cross.docker
+++ b/tests/docker/dockerfiles/debian-s390x-cross.docker
@@ -23,10 +23,7 @@ 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 \
- glusterfs-common:s390x \
libbz2-dev:s390x \
liblzo2-dev:s390x \
- libncursesw5-dev:s390x \
- libnfs-dev:s390x \
librdmacm-dev:s390x \
libsnappy-dev:s390x
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
tests/docker/dockerfiles/debian9.docker | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/tests/docker/dockerfiles/debian9.docker b/tests/docker/dockerfiles/debian9.docker
index 6b6bf41421..056e5389cc 100644
--- a/tests/docker/dockerfiles/debian9.docker
+++ b/tests/docker/dockerfiles/debian9.docker
@@ -18,11 +18,12 @@ RUN DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt install -y --no-install-recommends \
bison \
- binutils-multiarch \
build-essential \
ca-certificates \
- clang \
flex \
git \
pkg-config \
- python-minimal
+ psmisc \
+ python \
+ texinfo \
+ $(apt-get -s build-dep qemu | egrep ^Inst | fgrep '[all]' | cut -d\ -f2)
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/Makefile.include | 1 +
tests/docker/dockerfiles/debian-armel-cross.docker | 24 ++++++++++++++++++++++
2 files changed, 25 insertions(+)
create mode 100644 tests/docker/dockerfiles/debian-armel-cross.docker
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 84dce49655..db66b6f802 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -56,6 +56,7 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker
"BUILD","$*")
# Enforce dependancies for composite images
+docker-image-debian-armel-cross: docker-image-debian9
docker-image-debian-armhf-cross: docker-image-debian9
docker-image-debian-arm64-cross: docker-image-debian9
docker-image-debian-mipsel-cross: docker-image-debian9
diff --git a/tests/docker/dockerfiles/debian-armel-cross.docker b/tests/docker/dockerfiles/debian-armel-cross.docker
new file mode 100644
index 0000000000..e3bd68f51e
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-armel-cross.docker
@@ -0,0 +1,24 @@
+#
+# Docker armel cross-compiler target
+#
+# This docker target builds on the debian Stretch base image.
+#
+FROM qemu:debian9
+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
+
+# 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 \
+ libbz2-dev:armel \
+ liblzo2-dev:armel \
+ librdmacm-dev:armel \
+ libsnappy-dev:armel
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/Makefile.include | 1 +
.../docker/dockerfiles/debian-ppc64el-cross.docker | 25 ++++++++++++++++++++++
2 files changed, 26 insertions(+)
create mode 100644 tests/docker/dockerfiles/debian-ppc64el-cross.docker
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index db66b6f802..553465ef6d 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -60,6 +60,7 @@ docker-image-debian-armel-cross: docker-image-debian9
docker-image-debian-armhf-cross: docker-image-debian9
docker-image-debian-arm64-cross: docker-image-debian9
docker-image-debian-mipsel-cross: docker-image-debian9
+docker-image-debian-ppc64el-cross: docker-image-debian9
docker-image-debian-s390x-cross: docker-image-debian9
# Expand all the pre-requistes for each docker image and test combination
diff --git a/tests/docker/dockerfiles/debian-ppc64el-cross.docker b/tests/docker/dockerfiles/debian-ppc64el-cross.docker
new file mode 100644
index 0000000000..f44a35880a
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-ppc64el-cross.docker
@@ -0,0 +1,25 @@
+#
+# Docker ppc64el cross-compiler target
+#
+# This docker target builds on the debian Stretch base image.
+#
+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
+
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get 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 \
+ libbz2-dev:ppc64el \
+ liblzo2-dev:ppc64el \
+ librdmacm-dev:ppc64el \
+ libsnappy-dev:ppc64el
--
2.13.2
By itself this doesn't add much to our coverage. However later patches
will extend this image to include more bleeding edge libraries which
are not yet widely available in distros.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
[AJB: extend commit msg]
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/Makefile.include | 1 +
tests/docker/dockerfiles/debian-amd64.docker | 18 ++++++++++++++++++
2 files changed, 19 insertions(+)
create mode 100644 tests/docker/dockerfiles/debian-amd64.docker
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 553465ef6d..b5eec5dc68 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -56,6 +56,7 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker
"BUILD","$*")
# Enforce dependancies for composite images
+docker-image-debian-amd64: docker-image-debian9
docker-image-debian-armel-cross: docker-image-debian9
docker-image-debian-armhf-cross: docker-image-debian9
docker-image-debian-arm64-cross: docker-image-debian9
diff --git a/tests/docker/dockerfiles/debian-amd64.docker b/tests/docker/dockerfiles/debian-amd64.docker
new file mode 100644
index 0000000000..2ab76120a4
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-amd64.docker
@@ -0,0 +1,18 @@
+#
+# Docker x86_64 target
+#
+# This docker target builds on the debian Stretch base image.
+#
+FROM qemu:debian9
+MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
+
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get build-dep -yy qemu
+
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get install -y --no-install-recommends \
+ libbz2-dev \
+ liblzo2-dev \
+ librdmacm-dev \
+ libsnappy-dev \
+ libvte-dev
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
[AJB: mv, comments in dockerfile]
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/dockerfiles/debian-amd64.docker | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/tests/docker/dockerfiles/debian-amd64.docker b/tests/docker/dockerfiles/debian-amd64.docker
index 2ab76120a4..360ecf0360 100644
--- a/tests/docker/dockerfiles/debian-amd64.docker
+++ b/tests/docker/dockerfiles/debian-amd64.docker
@@ -1,7 +1,8 @@
#
# Docker x86_64 target
#
-# This docker target builds on the debian Stretch base image.
+# This docker target builds on the debian Stretch base image. Further
+# libraries which are not widely available are installed by hand.
#
FROM qemu:debian9
MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
@@ -16,3 +17,12 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
librdmacm-dev \
libsnappy-dev \
libvte-dev
+
+# virgl
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get install -y --no-install-recommends \
+ libegl1-mesa-dev \
+ libepoxy-dev \
+ libgbm-dev
+RUN git clone git://anongit.freedesktop.org/virglrenderer /usr/src/virglrenderer
+RUN cd /usr/src/virglrenderer && ./autogen.sh && ./configure --with-glx --disable-tests && make install
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/dockerfiles/debian-amd64.docker | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/tests/docker/dockerfiles/debian-amd64.docker b/tests/docker/dockerfiles/debian-amd64.docker
index 360ecf0360..71bcfc14d5 100644
--- a/tests/docker/dockerfiles/debian-amd64.docker
+++ b/tests/docker/dockerfiles/debian-amd64.docker
@@ -26,3 +26,11 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
libgbm-dev
RUN git clone git://anongit.freedesktop.org/virglrenderer /usr/src/virglrenderer
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 \
+ linux-headers-amd64
+RUN git clone https://github.com/luigirizzo/netmap.git /usr/src/netmap
+RUN cd /usr/src/netmap/LINUX && ./configure --no-drivers --no-apps --kernel-dir=$(ls -d /usr/src/linux-headers-*-amd64) && make install
+ENV QEMU_CONFIGURE_OPTS --enable-netmap
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/dockerfiles/debian-amd64.docker | 3 +++
1 file changed, 3 insertions(+)
diff --git a/tests/docker/dockerfiles/debian-amd64.docker b/tests/docker/dockerfiles/debian-amd64.docker
index 71bcfc14d5..eb13f06ed1 100644
--- a/tests/docker/dockerfiles/debian-amd64.docker
+++ b/tests/docker/dockerfiles/debian-amd64.docker
@@ -34,3 +34,6 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
RUN git clone https://github.com/luigirizzo/netmap.git /usr/src/netmap
RUN cd /usr/src/netmap/LINUX && ./configure --no-drivers --no-apps --kernel-dir=$(ls -d /usr/src/linux-headers-*-amd64) && make install
ENV QEMU_CONFIGURE_OPTS --enable-netmap
+
+# gcrypt
+ENV QEMU_CONFIGURE_OPTS $QEMU_CONFIGURE_OPTS --enable-gcrypt
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/dockerfiles/debian-arm64-cross.docker | 3 +++
1 file changed, 3 insertions(+)
diff --git a/tests/docker/dockerfiles/debian-arm64-cross.docker b/tests/docker/dockerfiles/debian-arm64-cross.docker
index 6ed12a3f6e..877d863475 100644
--- a/tests/docker/dockerfiles/debian-arm64-cross.docker
+++ b/tests/docker/dockerfiles/debian-arm64-cross.docker
@@ -24,3 +24,6 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
librdmacm-dev:arm64 \
libsnappy-dev:arm64 \
libxen-dev:arm64
+
+# nettle
+ENV QEMU_CONFIGURE_OPTS $QEMU_CONFIGURE_OPTS --enable-nettle
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
.shippable.yml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/.shippable.yml b/.shippable.yml
index 5e0caa65c5..abcaf6f4d4 100644
--- a/.shippable.yml
+++ b/.shippable.yml
@@ -5,6 +5,8 @@ env:
global:
- LC_ALL=C
matrix:
+ - IMAGE=debian-armel-cross
+ TARGET_LIST=arm-softmmu,arm-linux-user,armeb-linux-user
- IMAGE=debian-armhf-cross
TARGET_LIST=arm-softmmu,arm-linux-user,armeb-linux-user
- IMAGE=debian-arm64-cross
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
.shippable.yml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/.shippable.yml b/.shippable.yml
index abcaf6f4d4..189d193da5 100644
--- a/.shippable.yml
+++ b/.shippable.yml
@@ -16,6 +16,8 @@ env:
# mips64el-softmmu disabled due to libfdt problem
- IMAGE=debian-mipsel-cross
TARGET_LIST=mipsel-softmmu,mipsel-linux-user,mips64el-linux-user
+ - IMAGE=debian-ppc64el-cross
+ TARGET_LIST=ppc64-softmmu,ppc64-linux-user,ppc64abi32-linux-user
build:
pre_ci:
- make docker-image-${IMAGE} V=1
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
[AJB: minor tweak to name]
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
.shippable.yml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/.shippable.yml b/.shippable.yml
index 189d193da5..1f92ace8f7 100644
--- a/.shippable.yml
+++ b/.shippable.yml
@@ -5,6 +5,8 @@ env:
global:
- LC_ALL=C
matrix:
+ - IMAGE=debian-amd64
+ TARGET_LIST=x86_64-softmmu,x86_64-linux-user
- IMAGE=debian-armel-cross
TARGET_LIST=arm-softmmu,arm-linux-user,armeb-linux-user
- IMAGE=debian-armhf-cross
--
2.13.2
This include was forgotten when splitting cacheinfo.c out of
tcg/ppc/tcg-target.inc.c (see commit b255b2c8).
While compiling on powerpc:
CC util/cacheinfo.o
qemu/util/cacheinfo.c: In function 'arch_cache_info':
qemu/util/cacheinfo.c:137:33: error: 'AT_ICACHEBSIZE' undeclared (first use in this function)
*isize = qemu_getauxval(AT_ICACHEBSIZE);
^
qemu/util/cacheinfo.c:137:33: note: each undeclared identifier is reported only once for each function it appears in
qemu/util/cacheinfo.c:140:33: error: 'AT_DCACHEBSIZE' undeclared (first use in this function)
*dsize = qemu_getauxval(AT_DCACHEBSIZE);
^
qemu/rules.mak:66: recipe for target 'util/cacheinfo.o' failed
make: *** [util/cacheinfo.o] Error 1
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
util/cacheinfo.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/util/cacheinfo.c b/util/cacheinfo.c
index 6253049533..593940f27b 100644
--- a/util/cacheinfo.c
+++ b/util/cacheinfo.c
@@ -129,6 +129,7 @@ static void arch_cache_info(int *isize, int *dsize)
}
#elif defined(_ARCH_PPC) && defined(__linux__)
+# include "elf.h"
static void arch_cache_info(int *isize, int *dsize)
{
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/dockerfiles/debian8.docker | 36 +++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
create mode 100644 tests/docker/dockerfiles/debian8.docker
diff --git a/tests/docker/dockerfiles/debian8.docker b/tests/docker/dockerfiles/debian8.docker
new file mode 100644
index 0000000000..3d09b4b462
--- /dev/null
+++ b/tests/docker/dockerfiles/debian8.docker
@@ -0,0 +1,36 @@
+#
+# Docker multiarch cross-compiler target
+#
+# This docker target is builds on Debian and Emdebian's cross compiler targets
+# to build distro with a selection of cross compilers for building test binaries.
+#
+# On its own you can't build much but the docker-foo-cross targets
+# build on top of the base debian image.
+#
+FROM debian:jessie-slim
+
+MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
+
+# Duplicate deb line as deb-src
+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 \
+ apt-get install -y --no-install-recommends \
+ bison \
+ binutils-multiarch \
+ build-essential \
+ ca-certificates \
+ clang \
+ curl \
+ flex \
+ git \
+ gnupg \
+ pkg-config \
+ python-minimal
+
+# Setup Emdebian [emdebian-archive-keyring]
+RUN echo "deb http://emdebian.org/tools/debian/ jessie main" > /etc/apt/sources.list.d/emdebian.list && \
+ curl http://emdebian.org/tools/debian/emdebian-toolchain-archive.key | apt-key add -
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/dockerfiles/debian-apt-fake.sh | 46 +++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)
create mode 100755 tests/docker/dockerfiles/debian-apt-fake.sh
diff --git a/tests/docker/dockerfiles/debian-apt-fake.sh b/tests/docker/dockerfiles/debian-apt-fake.sh
new file mode 100755
index 0000000000..2ec0fdf47a
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-apt-fake.sh
@@ -0,0 +1,46 @@
+#! /bin/sh
+#
+# Generate fake debian package to resolve unimportant unmet dependencies held
+# by upstream multiarch broken packages.
+#
+# Copyright (c) 2017 Philippe Mathieu-Daudé <f4bug@amsat.org>
+#
+# This work is licensed under the terms of the GNU GPL, version 2
+# or (at your option) any later version. See the COPYING file in
+# the top-level directory.
+
+test $1 = "install" && shift 1
+
+fake_install()
+{
+ echo "Generating fake $2 $1 $3 ..."
+ (cd /var/cache/apt/archives
+ (cat << 'EOF'
+Section: misc
+Priority: optional
+Standards-Version: 3.9.2
+
+Package: NAME
+Version: VERSION
+Maintainer: qemu-devel@nongnu.org
+Architecture: any
+Multi-Arch: same
+Description: fake NAME
+EOF
+ ) | sed s/NAME/$2/g | sed s/VERSION/$3/g > $2.control
+ equivs-build -a $1 $2.control 1>/dev/null 2>/dev/null
+ dpkg -i --force-overwrite $2_$3_$1.deb
+ )
+}
+
+try_install()
+{
+ name=$(echo $1|sed "s/\(.*\):\(.*\)=\(.*\)/\1/")
+ arch=$(echo $1|sed "s/\(.*\):\(.*\)=\(.*\)/\2/")
+ vers=$(echo $1|sed "s/\(.*\):\(.*\)=\(.*\)/\3/")
+ apt-get install -q -yy $1 || fake_install $arch $name $vers
+}
+
+for package in $*; do
+ try_install $package
+done
--
2.13.2
From: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
[AJB: split from merged patch]
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/Makefile.include | 3 ++
.../docker/dockerfiles/debian-powerpc-cross.docker | 40 ++++++++++++++++++++++
2 files changed, 43 insertions(+)
create mode 100644 tests/docker/dockerfiles/debian-powerpc-cross.docker
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index b5eec5dc68..202efe9ee6 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -55,12 +55,15 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker
$(if $(EXECUTABLE),--include-executable=$(EXECUTABLE)),\
"BUILD","$*")
+docker-image-debian-powerpc-cross: EXTRA_FILES:=tests/docker/dockerfiles/debian-apt-fake.sh
+
# Enforce dependancies for composite images
docker-image-debian-amd64: docker-image-debian9
docker-image-debian-armel-cross: docker-image-debian9
docker-image-debian-armhf-cross: docker-image-debian9
docker-image-debian-arm64-cross: docker-image-debian9
docker-image-debian-mipsel-cross: docker-image-debian9
+docker-image-debian-powerpc-cross: docker-image-debian8
docker-image-debian-ppc64el-cross: docker-image-debian9
docker-image-debian-s390x-cross: docker-image-debian9
diff --git a/tests/docker/dockerfiles/debian-powerpc-cross.docker b/tests/docker/dockerfiles/debian-powerpc-cross.docker
new file mode 100644
index 0000000000..a5dd46b4ac
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-powerpc-cross.docker
@@ -0,0 +1,40 @@
+#
+# Docker powerpc cross-compiler target
+#
+# This docker target builds on the debian Jessie base image.
+#
+FROM qemu:debian8
+MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
+
+# Add the foreign architecture we want and install dependencies
+RUN dpkg --add-architecture powerpc
+RUN apt-get update
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get install -y --no-install-recommends \
+ crossbuild-essential-powerpc
+
+# <kludge> to fix "following packages have unmet dependencies" ...
+ADD debian-apt-fake.sh /usr/local/bin/apt-fake
+RUN apt-get install -y --no-install-recommends \
+ equivs \
+ pkg-config
+RUN apt-fake install \
+ pkg-config:powerpc=0.28-1.1-fake && \
+ ln -s pkg-config /usr/bin/powerpc-linux-gnu-pkg-config
+ENV PKG_CONFIG_PATH /usr/lib/powerpc-linux-gnu/pkgconfig
+# </kludge>
+
+# Specify the cross prefix for this image (see tests/docker/common.rc)
+ENV QEMU_CONFIGURE_OPTS --cross-prefix=powerpc-linux-gnu-
+
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get build-dep -yy -a powerpc qemu
+RUN DEBIAN_FRONTEND=noninteractive \
+ apt-get install -y --no-install-recommends \
+ glusterfs-common:powerpc \
+ libbz2-dev:powerpc \
+ liblzo2-dev:powerpc \
+ libncursesw5-dev:powerpc \
+ libnfs-dev:powerpc \
+ librdmacm-dev:powerpc \
+ libsnappy-dev:powerpc
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
.shippable.yml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/.shippable.yml b/.shippable.yml
index 1f92ace8f7..fa54df6cff 100644
--- a/.shippable.yml
+++ b/.shippable.yml
@@ -18,6 +18,8 @@ env:
# mips64el-softmmu disabled due to libfdt problem
- IMAGE=debian-mipsel-cross
TARGET_LIST=mipsel-softmmu,mipsel-linux-user,mips64el-linux-user
+ - IMAGE=debian-powerpc-cross
+ TARGET_LIST=ppc-softmmu,ppcemb-softmmu,ppc-linux-user
- IMAGE=debian-ppc64el-cross
TARGET_LIST=ppc64-softmmu,ppc64-linux-user,ppc64abi32-linux-user
build:
--
2.13.2
change image mips little -> big endian
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
tests/docker/Makefile.include | 2 +-
tests/docker/dockerfiles/debian-mips-cross.docker | 29 ++++++++++++++++++++++
.../docker/dockerfiles/debian-mipsel-cross.docker | 9 ++++---
3 files changed, 36 insertions(+), 4 deletions(-)
create mode 100644 tests/docker/dockerfiles/debian-mips-cross.docker
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 202efe9ee6..e0807c0917 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -62,7 +62,7 @@ docker-image-debian-amd64: docker-image-debian9
docker-image-debian-armel-cross: docker-image-debian9
docker-image-debian-armhf-cross: docker-image-debian9
docker-image-debian-arm64-cross: docker-image-debian9
-docker-image-debian-mipsel-cross: docker-image-debian9
+docker-image-debian-mips-cross: docker-image-debian9
docker-image-debian-powerpc-cross: docker-image-debian8
docker-image-debian-ppc64el-cross: docker-image-debian9
docker-image-debian-s390x-cross: docker-image-debian9
diff --git a/tests/docker/dockerfiles/debian-mips-cross.docker b/tests/docker/dockerfiles/debian-mips-cross.docker
new file mode 100644
index 0000000000..550f43281b
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-mips-cross.docker
@@ -0,0 +1,29 @@
+#
+# Docker mips cross-compiler target
+#
+# This docker target builds on the debian Stretch base image.
+#
+FROM qemu:debian9
+
+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 \
+ gcc-mips-linux-gnu
+
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get 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 \
+ libbz2-dev:mips \
+ liblzo2-dev:mips \
+ librdmacm-dev:mips \
+ libsnappy-dev:mips
diff --git a/tests/docker/dockerfiles/debian-mipsel-cross.docker b/tests/docker/dockerfiles/debian-mipsel-cross.docker
index eb279c5044..6378bd41e7 100644
--- a/tests/docker/dockerfiles/debian-mipsel-cross.docker
+++ b/tests/docker/dockerfiles/debian-mipsel-cross.docker
@@ -4,6 +4,7 @@
# This docker target builds on the debian Stretch base image.
#
FROM qemu:debian9
+
MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
# Add the foreign architecture we want and install dependencies
@@ -11,13 +12,15 @@ RUN dpkg --add-architecture mipsel
RUN apt-get update
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
- crossbuild-essential-mipsel
+ gcc-mipsel-linux-gnu
+
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get 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-
-RUN DEBIAN_FRONTEND=noninteractive eatmydata \
- apt-get build-dep -yy -a mipsel qemu
+# Install extra libraries to increase code coverage
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
libbz2-dev:mipsel \
--
2.13.2
previous commit change image mips little -> big endian
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
.shippable.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.shippable.yml b/.shippable.yml
index fa54df6cff..f2a904014a 100644
--- a/.shippable.yml
+++ b/.shippable.yml
@@ -16,8 +16,8 @@ env:
- IMAGE=debian-s390x-cross
TARGET_LIST=s390x-softmmu,s390x-linux-user
# mips64el-softmmu disabled due to libfdt problem
- - IMAGE=debian-mipsel-cross
- TARGET_LIST=mipsel-softmmu,mipsel-linux-user,mips64el-linux-user
+ - IMAGE=debian-mips-cross
+ TARGET_LIST=mips-softmmu,mipsel-linux-user
- IMAGE=debian-powerpc-cross
TARGET_LIST=ppc-softmmu,ppcemb-softmmu,ppc-linux-user
- IMAGE=debian-ppc64el-cross
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
tests/docker/Makefile.include | 1 +
.../dockerfiles/debian-mips64el-cross.docker | 30 ++++++++++++++++++++++
2 files changed, 31 insertions(+)
create mode 100644 tests/docker/dockerfiles/debian-mips64el-cross.docker
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index e0807c0917..5a8283674a 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -63,6 +63,7 @@ docker-image-debian-armel-cross: docker-image-debian9
docker-image-debian-armhf-cross: docker-image-debian9
docker-image-debian-arm64-cross: docker-image-debian9
docker-image-debian-mips-cross: docker-image-debian9
+docker-image-debian-mips64el-cross: docker-image-debian9
docker-image-debian-powerpc-cross: docker-image-debian8
docker-image-debian-ppc64el-cross: docker-image-debian9
docker-image-debian-s390x-cross: docker-image-debian9
diff --git a/tests/docker/dockerfiles/debian-mips64el-cross.docker b/tests/docker/dockerfiles/debian-mips64el-cross.docker
new file mode 100644
index 0000000000..fd2aafeb01
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-mips64el-cross.docker
@@ -0,0 +1,30 @@
+#
+# Docker mips64el cross-compiler target
+#
+# This docker target builds on the debian Stretch base image.
+#
+
+FROM qemu:debian9
+
+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 \
+ gcc-mips64el-linux-gnuabi64
+
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get 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 \
+ libbz2-dev:mips64el \
+ liblzo2-dev:mips64el \
+ librdmacm-dev:mips64el \
+ libsnappy-dev:mips64el
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
.shippable.yml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/.shippable.yml b/.shippable.yml
index f2a904014a..53b43b349f 100644
--- a/.shippable.yml
+++ b/.shippable.yml
@@ -15,9 +15,10 @@ env:
TARGET_LIST=aarch64-softmmu,aarch64-linux-user
- IMAGE=debian-s390x-cross
TARGET_LIST=s390x-softmmu,s390x-linux-user
- # mips64el-softmmu disabled due to libfdt problem
- IMAGE=debian-mips-cross
TARGET_LIST=mips-softmmu,mipsel-linux-user
+ - IMAGE=debian-mips64el-cross
+ TARGET_LIST=mips64el-softmmu,mips64el-linux-user
- IMAGE=debian-powerpc-cross
TARGET_LIST=ppc-softmmu,ppcemb-softmmu,ppc-linux-user
- IMAGE=debian-ppc64el-cross
--
2.13.2
see http://mxe.cc/
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
tests/docker/Makefile.include | 3 ++
tests/docker/dockerfiles/debian-win32-cross.docker | 32 ++++++++++++++++++++++
tests/docker/dockerfiles/debian-win64-cross.docker | 32 ++++++++++++++++++++++
tests/docker/dockerfiles/debian8-mxe.docker | 18 ++++++++++++
4 files changed, 85 insertions(+)
create mode 100644 tests/docker/dockerfiles/debian-win32-cross.docker
create mode 100644 tests/docker/dockerfiles/debian-win64-cross.docker
create mode 100644 tests/docker/dockerfiles/debian8-mxe.docker
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 5a8283674a..e993e149e7 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -58,6 +58,7 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker
docker-image-debian-powerpc-cross: EXTRA_FILES:=tests/docker/dockerfiles/debian-apt-fake.sh
# Enforce dependancies for composite images
+docker-image-debian8-mxe: docker-image-debian8
docker-image-debian-amd64: docker-image-debian9
docker-image-debian-armel-cross: docker-image-debian9
docker-image-debian-armhf-cross: docker-image-debian9
@@ -67,6 +68,8 @@ docker-image-debian-mips64el-cross: docker-image-debian9
docker-image-debian-powerpc-cross: docker-image-debian8
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
# Expand all the pre-requistes for each docker image and test combination
$(foreach i,$(DOCKER_IMAGES), \
diff --git a/tests/docker/dockerfiles/debian-win32-cross.docker b/tests/docker/dockerfiles/debian-win32-cross.docker
new file mode 100644
index 0000000000..a628601f6d
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-win32-cross.docker
@@ -0,0 +1,32 @@
+#
+# Docker mingw32 cross-compiler target
+#
+# This docker target builds on the debian Jessie MXE base image.
+#
+FROM qemu:debian8-mxe
+
+MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
+
+ENV TARGET i686
+
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get install -y --no-install-recommends \
+ mxe-$TARGET-w64-mingw32.shared-bzip2 \
+ mxe-$TARGET-w64-mingw32.shared-curl \
+ mxe-$TARGET-w64-mingw32.shared-glib \
+ mxe-$TARGET-w64-mingw32.shared-libgcrypt \
+ mxe-$TARGET-w64-mingw32.shared-libssh2 \
+ mxe-$TARGET-w64-mingw32.shared-libusb1 \
+ mxe-$TARGET-w64-mingw32.shared-lzo \
+ mxe-$TARGET-w64-mingw32.shared-nettle \
+ mxe-$TARGET-w64-mingw32.shared-ncurses \
+ mxe-$TARGET-w64-mingw32.shared-pixman \
+ mxe-$TARGET-w64-mingw32.shared-pkgconf \
+ mxe-$TARGET-w64-mingw32.shared-pthreads \
+ mxe-$TARGET-w64-mingw32.shared-sdl2 \
+ mxe-$TARGET-w64-mingw32.shared-sdl2-mixer \
+ mxe-$TARGET-w64-mingw32.shared-sdl2-gfx \
+ mxe-$TARGET-w64-mingw32.shared-zlib
+
+# Specify the cross prefix for this image (see tests/docker/common.rc)
+ENV QEMU_CONFIGURE_OPTS --cross-prefix=$TARGET-w64-mingw32.shared-
diff --git a/tests/docker/dockerfiles/debian-win64-cross.docker b/tests/docker/dockerfiles/debian-win64-cross.docker
new file mode 100644
index 0000000000..32b1da0a34
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-win64-cross.docker
@@ -0,0 +1,32 @@
+#
+# Docker mingw64 cross-compiler target
+#
+# This docker target builds on the debian Jessie MXE base image.
+#
+FROM qemu:debian8-mxe
+
+MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
+
+ENV TARGET x86-64
+
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get install -y --no-install-recommends \
+ mxe-$TARGET-w64-mingw32.shared-bzip2 \
+ mxe-$TARGET-w64-mingw32.shared-curl \
+ mxe-$TARGET-w64-mingw32.shared-glib \
+ mxe-$TARGET-w64-mingw32.shared-libgcrypt \
+ mxe-$TARGET-w64-mingw32.shared-libssh2 \
+ mxe-$TARGET-w64-mingw32.shared-libusb1 \
+ mxe-$TARGET-w64-mingw32.shared-lzo \
+ mxe-$TARGET-w64-mingw32.shared-nettle \
+ mxe-$TARGET-w64-mingw32.shared-ncurses \
+ mxe-$TARGET-w64-mingw32.shared-pixman \
+ mxe-$TARGET-w64-mingw32.shared-pkgconf \
+ mxe-$TARGET-w64-mingw32.shared-pthreads \
+ mxe-$TARGET-w64-mingw32.shared-sdl2 \
+ mxe-$TARGET-w64-mingw32.shared-sdl2-mixer \
+ mxe-$TARGET-w64-mingw32.shared-sdl2-gfx \
+ mxe-$TARGET-w64-mingw32.shared-zlib
+
+# Specify the cross prefix for this image (see tests/docker/common.rc)
+ENV QEMU_CONFIGURE_OPTS --cross-prefix=x86_64-w64-mingw32.shared-
diff --git a/tests/docker/dockerfiles/debian8-mxe.docker b/tests/docker/dockerfiles/debian8-mxe.docker
new file mode 100644
index 0000000000..ffebf485c0
--- /dev/null
+++ b/tests/docker/dockerfiles/debian8-mxe.docker
@@ -0,0 +1,18 @@
+#
+# Docker mingw cross-compiler target
+#
+# This docker target builds on the debian Jessie base image.
+#
+FROM qemu:debian8
+
+MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
+
+# Add the foreign architecture we want and install dependencies
+RUN http_proxy= 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-get install -y --no-install-recommends \
+ $(apt-get -s install -y --no-install-recommends gw32.shared-mingw-w64 gw32.shared-mingw-w64 | egrep "^Inst mxe-x86-64-unknown-" | cut -d\ -f2)
+
+ENV PATH $PATH:/usr/lib/mxe/usr/bin/
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
.shippable.yml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/.shippable.yml b/.shippable.yml
index 53b43b349f..dd4bbc84b1 100644
--- a/.shippable.yml
+++ b/.shippable.yml
@@ -7,6 +7,10 @@ env:
matrix:
- IMAGE=debian-amd64
TARGET_LIST=x86_64-softmmu,x86_64-linux-user
+ - 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
--
2.13.2
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
tests/docker/dockerfiles/debian-ports.docker | 34 ++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)
create mode 100644 tests/docker/dockerfiles/debian-ports.docker
diff --git a/tests/docker/dockerfiles/debian-ports.docker b/tests/docker/dockerfiles/debian-ports.docker
new file mode 100644
index 0000000000..907ebdef62
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-ports.docker
@@ -0,0 +1,34 @@
+#
+# Docker multiarch cross-compiler target
+#
+# This docker target is builds on Debian Ports cross compiler targets
+# to build distro with a selection of cross compilers for building test binaries.
+#
+# On its own you can't build much but the docker-foo-cross targets
+# build on top of the base debian image.
+#
+FROM debian:unstable
+
+MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
+
+RUN echo "deb [arch=amd64] http://deb.debian.org/debian unstable main" > /etc/apt/sources.list
+
+# Duplicate deb line as deb-src
+RUN cat /etc/apt/sources.list | sed -ne "s/^deb\ \(\[.*\]\ \)\?\(.*\)/deb-src \2/p" >> /etc/apt/sources.list
+
+# Setup some basic tools we need
+RUN apt-get update && \
+ DEBIAN_FRONTEND=noninteractive apt-get install -yy eatmydata
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt-get install -y --no-install-recommends \
+ bison \
+ build-essential \
+ ca-certificates \
+ debian-ports-archive-keyring \
+ flex \
+ git \
+ pkg-config \
+ psmisc \
+ python \
+ texinfo \
+ $(apt-get -s build-dep qemu | egrep ^Inst | fgrep '[all]' | cut -d\ -f2)
--
2.13.2
© 2016 - 2024 Red Hat, Inc.