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