qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH v3 00/20] Travis, Code Coverage and Cross Build upda


From: Alex Bennée
Subject: [Qemu-devel] [PATCH v3 00/20] Travis, Code Coverage and Cross Build updates
Date: Mon, 2 Jul 2018 15:30:01 +0100

Hi,

Friday's code dump suffered a little from a rushed posting before the
weekend so I spent this morning cleaning up a few of the rough edges.
This version is much better for it:

  - Dropped .shippable changes

In the end it looks like building the ppc image won't work in
QEMU as it's pre-ci environment hasn't enough in it to build the
qemu-ppc linux user we need.

  - Better boostrap rule naming

The rule is now docker-binfmt-image-debian-% which means you can now
build any arbitrarily named debian-% image. If we are going support
similar binfmt bootstrapping for other distributions I suggest we
follow a similar scheme. Does anyone know if anything as funky as
debootstrap exists for anything else?

With a minor tweak to the debootstrap helper script you can now
boostrap Ubuntu images as well.

  - Dropped docker.py env hack (not needed)
  - Removed stray whitespace changes

The rest works as I outlined in the v2 message:

  I've picked up some more of Philippe's fixes and in the process had
  another look at the problem of cross compiling powerpc. In the end the
  consensus seems to be a linux-user build was the best solution as
  there are still supported native powerpc toolchains in Jessie (until
  2020). So I dusted off my old linux-user patches and tries to plumb
  them in a little better. Assuming you have ppc-linux-user in your
  target list and it's a --static you can just run:

    address@hidden TARGET_LIST=ppc-softmmu

  And it does the right thing. Once the debian-powerpc-user base image
  is created you can change your configuration and things will still
  work (until the debian-bootstrap recipe is changed and needs to be
  re-built).

It would be great if I could get reviews for the final few patches:

  patch 0011/docker filter out linux user builds for mingw.patch
  patch 0016/docker drop QEMU build dep from bootstrap.patch
  patch 0017/docker debian bootstrap.pre allow customising of .patch
  patch 0018/docker add special handling for FROM debian user .patch
  patch 0019/docker add special rule for deboostrapped images.patch
  patch 0020/docker add linux user powered cross builder for Q.patch

I'll send a pull request tomorrow for soft-freeze.

Alex Bennée (14):
  build-system: remove per-test GCOV reporting
  .gitignore: add .gcov files
  docker: add gcovr to travis image
  travis: add gcovr summary for GCOV build
  build-system: add clean-coverage target
  build-system: add coverage-report target
  linux-user: introduce preexit_cleanup
  linux-user: add gcov support to preexit_cleanup
  docker: filter out linux-user builds for mingw
  docker: drop QEMU build-dep from bootstrap
  docker: debian-bootstrap.pre allow customising of variant/url
  docker: add special handling for FROM:debian-%-user targets
  docker: add special rule for deboostrapped images
  docker: add linux-user powered cross builder for QEMU

Philippe Mathieu-Daudé (6):
  travis: do not waste time cloning unused submodules
  travis: test out-of-tree builds
  docker: ubuntu: Update the package list before installing new ones
  docker: ubuntu: Use SDL2
  docker: Clean the MXE base image
  docker: Do not run tests in 'intermediate' images

 .gitignore                                    |  1 +
 .travis.yml                                   | 14 +++-
 MAINTAINERS                                   |  1 +
 Makefile                                      | 24 +++++++
 docs/devel/testing.rst                        | 21 ++++--
 linux-user/Makefile.objs                      |  2 +-
 linux-user/exit.c                             | 35 ++++++++++
 linux-user/qemu.h                             |  8 +++
 linux-user/syscall.c                          | 10 +--
 scripts/travis/coverage-summary.sh            | 27 +++++++
 tests/Makefile.include                        | 10 ---
 tests/docker/Makefile.include                 | 70 +++++++++++++++++--
 tests/docker/docker.py                        |  4 ++
 .../dockerfiles/debian-bootstrap.docker       |  2 -
 tests/docker/dockerfiles/debian-bootstrap.pre | 11 ++-
 .../debian-powerpc-user-cross.docker          | 13 ++++
 tests/docker/dockerfiles/debian8-mxe.docker   |  2 +-
 tests/docker/dockerfiles/travis.docker        |  2 +-
 tests/docker/dockerfiles/ubuntu.docker        |  8 +--
 19 files changed, 222 insertions(+), 43 deletions(-)
 create mode 100644 linux-user/exit.c
 create mode 100755 scripts/travis/coverage-summary.sh
 create mode 100644 tests/docker/dockerfiles/debian-powerpc-user-cross.docker

-- 
2.17.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]