mbox series

[v2,00/21] Travis, Code Coverage and Cross Build updates

Message ID 20180629205232.27190-1-alex.bennee@linaro.org
Headers show
Series Travis, Code Coverage and Cross Build updates | expand

Message

Alex Bennée June 29, 2018, 8:52 p.m. UTC
Hi,

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).

I've also included a fix for the mingw builds that failed when the
default all targets TARGET_LIST got passed to the build.

I'll put together a pull-request with everything that has been
reviewed next week in time for patch bomb peter^H^H^H^H^H^H^H^H^H^H
soft-freeze ;-)

Alex Bennée (15):
  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: add env parser to docker.py build step
  docker: drop QEMU build-dep from bootstrap
  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
  .shippable.yml: add linux-user cross-build for ppc-softmmu

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 +
 .shippable.yml                                |  8 +++
 .travis.yml                                   | 14 +++-
 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/coverage-summary.sh                   | 27 +++++++
 tests/Makefile.include                        | 10 ---
 tests/docker/Makefile.include                 | 72 ++++++++++++++++---
 tests/docker/docker.py                        | 14 +++-
 .../dockerfiles/debian-bootstrap.docker       |  2 -
 .../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 +--
 18 files changed, 228 insertions(+), 45 deletions(-)
 create mode 100644 linux-user/exit.c
 create mode 100755 scripts/coverage-summary.sh
 create mode 100644 tests/docker/dockerfiles/debian-powerpc-user-cross.docker

-- 
2.17.1

Comments

no-reply@patchew.org July 2, 2018, 1:53 a.m. UTC | #1
Hi,

This series seems to have some coding style problems. See output below for
more information:

Type: series
Message-id: 20180629205232.27190-1-alex.bennee@linaro.org
Subject: [Qemu-devel] [PATCH v2 00/21] Travis, Code Coverage and Cross Build updates

=== 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
git config --local diff.algorithm histogram

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
Switched to a new branch 'test'
a96428aeed .shippable.yml: add linux-user cross-build for ppc-softmmu
ff403960e6 docker: add linux-user powered cross builder for QEMU
391475f906 docker: add special rule for deboostrapped images
ef6bd7cf0b docker: add special handling for FROM:debian-%-user targets
65f1b5decd docker: drop QEMU build-dep from bootstrap
dbb6683427 docker: add env parser to docker.py build step
68ad3c8984 docker: Do not run tests in 'intermediate' images
ca2847fb46 docker: Clean the MXE base image
643c1ecaee docker: ubuntu: Use SDL2
6a8c10d1ca docker: ubuntu: Update the package list before installing new ones
f92f876387 docker: filter out linux-user builds for mingw
4bcff69212 linux-user: add gcov support to preexit_cleanup
da31ac6134 linux-user: introduce preexit_cleanup
85518a6fdd build-system: add coverage-report target
f5ccd2b645 build-system: add clean-coverage target
888b1c663d travis: add gcovr summary for GCOV build
9a479edb8d docker: add gcovr to travis image
262959561c .gitignore: add .gcov files
bcf6f81a8c build-system: remove per-test GCOV reporting
2f58163a3b travis: test out-of-tree builds
8e1b669016 travis: do not waste time cloning unused submodules

=== OUTPUT BEGIN ===
Checking PATCH 1/21: travis: do not waste time cloning unused submodules...
Checking PATCH 2/21: travis: test out-of-tree builds...
Checking PATCH 3/21: build-system: remove per-test GCOV reporting...
Checking PATCH 4/21: .gitignore: add .gcov files...
Checking PATCH 5/21: docker: add gcovr to travis image...
Checking PATCH 6/21: travis: add gcovr summary for GCOV build...
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#46: 
new file mode 100755

total: 0 errors, 1 warnings, 42 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 7/21: build-system: add clean-coverage target...
Checking PATCH 8/21: build-system: add coverage-report target...
Checking PATCH 9/21: linux-user: introduce preexit_cleanup...
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#33: 
new file mode 100644

total: 0 errors, 1 warnings, 72 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 10/21: linux-user: add gcov support to preexit_cleanup...
ERROR: externs should be avoided in .c files
#27: FILE: linux-user/exit.c:23:
+extern void __gcov_dump(void);

total: 1 errors, 0 warnings, 17 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 11/21: docker: filter out linux-user builds for mingw...
Checking PATCH 12/21: docker: ubuntu: Update the package list before installing new ones...
Checking PATCH 13/21: docker: ubuntu: Use SDL2...
Checking PATCH 14/21: docker: Clean the MXE base image...
Checking PATCH 15/21: docker: Do not run tests in 'intermediate' images...
Checking PATCH 16/21: docker: add env parser to docker.py build step...
Checking PATCH 17/21: docker: drop QEMU build-dep from bootstrap...
Checking PATCH 18/21: docker: add special handling for FROM:debian-%-user targets...
Checking PATCH 19/21: docker: add special rule for deboostrapped images...
Checking PATCH 20/21: docker: add linux-user powered cross builder for QEMU...
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#69: 
new file mode 100644

total: 0 errors, 1 warnings, 53 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 21/21: .shippable.yml: add linux-user cross-build for ppc-softmmu...
=== OUTPUT END ===

Test command exited with code: 1


---
Email generated automatically by Patchew [http://patchew.org/].
Please send your feedback to patchew-devel@redhat.com