All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v3 00/20] Travis, Code Coverage and Cross Build updates
@ 2018-07-02 14:30 Alex Bennée
  2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 01/20] travis: do not waste time cloning unused submodules Alex Bennée
                   ` (20 more replies)
  0 siblings, 21 replies; 32+ messages in thread
From: Alex Bennée @ 2018-07-02 14:30 UTC (permalink / raw)
  To: cota, famz, berrange, f4bug, richard.henderson, balrogg, aurelien, agraf
  Cc: pbonzini, qemu-devel, Alex Bennée

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:

    docker-test-build@debian-powerpc-user-cross 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

^ permalink raw reply	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2018-07-02 23:50 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-07-02 14:30 [Qemu-devel] [PATCH v3 00/20] Travis, Code Coverage and Cross Build updates Alex Bennée
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 01/20] travis: do not waste time cloning unused submodules Alex Bennée
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 02/20] travis: test out-of-tree builds Alex Bennée
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 03/20] build-system: remove per-test GCOV reporting Alex Bennée
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 04/20] .gitignore: add .gcov files Alex Bennée
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 05/20] docker: add gcovr to travis image Alex Bennée
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 06/20] travis: add gcovr summary for GCOV build Alex Bennée
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 07/20] build-system: add clean-coverage target Alex Bennée
2018-07-02 15:45   ` Philippe Mathieu-Daudé
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 08/20] build-system: add coverage-report target Alex Bennée
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 09/20] linux-user: introduce preexit_cleanup Alex Bennée
2018-07-02 16:22   ` Philippe Mathieu-Daudé
2018-07-02 16:30     ` Philippe Mathieu-Daudé
2018-07-02 17:59       ` Alex Bennée
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 10/20] linux-user: add gcov support to preexit_cleanup Alex Bennée
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 11/20] docker: filter out linux-user builds for mingw Alex Bennée
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 12/20] docker: ubuntu: Update the package list before installing new ones Alex Bennée
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 13/20] docker: ubuntu: Use SDL2 Alex Bennée
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 14/20] docker: Clean the MXE base image Alex Bennée
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 15/20] docker: Do not run tests in 'intermediate' images Alex Bennée
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 16/20] docker: drop QEMU build-dep from bootstrap Alex Bennée
2018-07-02 20:20   ` Philippe Mathieu-Daudé
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 17/20] docker: debian-bootstrap.pre allow customising of variant/url Alex Bennée
2018-07-02 20:20   ` Philippe Mathieu-Daudé
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 18/20] docker: add special handling for FROM:debian-%-user targets Alex Bennée
2018-07-02 20:21   ` Philippe Mathieu-Daudé
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 19/20] docker: add special rule for deboostrapped images Alex Bennée
2018-07-02 20:32   ` Philippe Mathieu-Daudé
2018-07-02 14:30 ` [Qemu-devel] [PATCH v3 20/20] docker: add linux-user powered cross builder for QEMU Alex Bennée
2018-07-02 20:35   ` Philippe Mathieu-Daudé
2018-07-02 23:50     ` Philippe Mathieu-Daudé
2018-07-02 19:20 ` [Qemu-devel] [PATCH v3 00/20] Travis, Code Coverage and Cross Build updates no-reply

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.