[PATCH 00/17] tests/docker and tests/tcg cleanup and diet

Paolo Bonzini posted 17 patches 3 years, 8 months ago
Test checkpatch failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20220401141326.1244422-1-pbonzini@redhat.com
Maintainers: "Alex Bennée" <alex.bennee@linaro.org>, "Philippe Mathieu-Daudé" <f4bug@amsat.org>, Thomas Huth <thuth@redhat.com>, Wainer dos Santos Moschetta <wainersm@redhat.com>, Beraldo Leal <bleal@redhat.com>, Peter Maydell <peter.maydell@linaro.org>, Paolo Bonzini <pbonzini@redhat.com>, Richard Henderson <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>
configure                                     |   3 +-
tests/Makefile.include                        |  55 ++++----
tests/docker/Makefile.include                 | 115 ++++-------------
tests/docker/docker.py                        |  57 ---------
.../build-toolchain.sh                        |   0
tests/docker/dockerfiles/empty.docker         |   8 --
tests/tcg/Makefile.prereqs                    |  18 ---
tests/tcg/Makefile.qemu                       | 121 ------------------
tests/tcg/Makefile.target                     |  14 +-
tests/tcg/aarch64/Makefile.softmmu-target     |   2 +-
tests/tcg/aarch64/Makefile.target             |  10 +-
tests/tcg/configure.sh                        |  78 +++++++----
tests/tcg/i386/Makefile.target                |   2 +-
tests/tcg/multiarch/Makefile.target           |   2 +-
tests/tcg/ppc64/Makefile.target               |   4 +-
tests/tcg/ppc64le/Makefile.target             |   4 +-
tests/tcg/x86_64/Makefile.target              |   2 +-
17 files changed, 123 insertions(+), 372 deletions(-)
rename tests/docker/dockerfiles/{debian-hexagon-cross.docker.d => debian-hexagon-cross.d}/build-toolchain.sh (100%)
delete mode 100644 tests/docker/dockerfiles/empty.docker
delete mode 100644 tests/tcg/Makefile.prereqs
delete mode 100644 tests/tcg/Makefile.qemu
[PATCH 00/17] tests/docker and tests/tcg cleanup and diet
Posted by Paolo Bonzini 3 years, 8 months ago
The first eight patches simplify and clean up a bit the
tests/docker/Makefile.include file.

The rest adjust tests/Makefile.include to invoke the tests/tcg
Makefiles directly, without going through Makefile.qemu and
Makefile.prereqs.  All information is gathered at configure time,
and the config*.mak files for each TCG test target includes
the normal Makefile variables (AC, CC, LD, etc.).  tests/tcg
stops using config-host.mak, too.

This is also a first step towards moving the cross-compilation
infrastructure from tests/tcg to all of QEMU, so that it can be
used to build firmware binaries.  The next steps would be along
the lines of:

- add more binutils to the tests/tcg per-target config files

- move tests/tcg/configure.sh into the main configure script

- extract parts of configure.sh into shell functions and use
  them to generate the roms/ .mak files

Paolo

v1->v2:
- rebased
- also remove empty dockerfile [Alex]
- fixed container_cross_as [Richard]
- simplify docker-TEST@IMAGE even further
- cleanup hexagon-cross
- check that targets match one of *-softmmu, *-linux-user, *-bsd-user
- cleaner tests/tcg/configure.sh, set got_cross_cc=yes for docker case
- do not include config-host.mak at all in tests/tcg
- remove "docker.py check"

Paolo Bonzini (17):
  tests/docker: remove dead code for linux-user containers
  tests/docker: remove test targets
  tests/docker: remove dead variable
  tests/docker: remove unnecessary default definitions
  tests/docker: inline variable definitions or move close to use
  tests/docker: remove unnecessary filtering of $(DOCKER_IMAGES)
  tests/docker: simplify docker-TEST@IMAGE targets
  tests/docker: do not duplicate rules for hexagon-cross
  tests/tcg: add compiler test variables when using containers
  tests/tcg: remove CONFIG_LINUX_USER from config-target.mak
  tests/tcg: remove CONFIG_USER_ONLY from config-target.mak
  tests/tcg: prepare Makefile.prereqs at configure time
  tests/tcg: list test targets in Makefile.prereqs
  tests/tcg: invoke Makefile.target directly from QEMU's makefile
  tests/tcg: isolate from QEMU's config-host.mak
  tests/docker: remove SKIP_DOCKER_BUILD
  tests/tcg: fix non-static build

 configure                                     |   3 +-
 tests/Makefile.include                        |  55 ++++----
 tests/docker/Makefile.include                 | 115 ++++-------------
 tests/docker/docker.py                        |  57 ---------
 .../build-toolchain.sh                        |   0
 tests/docker/dockerfiles/empty.docker         |   8 --
 tests/tcg/Makefile.prereqs                    |  18 ---
 tests/tcg/Makefile.qemu                       | 121 ------------------
 tests/tcg/Makefile.target                     |  14 +-
 tests/tcg/aarch64/Makefile.softmmu-target     |   2 +-
 tests/tcg/aarch64/Makefile.target             |  10 +-
 tests/tcg/configure.sh                        |  78 +++++++----
 tests/tcg/i386/Makefile.target                |   2 +-
 tests/tcg/multiarch/Makefile.target           |   2 +-
 tests/tcg/ppc64/Makefile.target               |   4 +-
 tests/tcg/ppc64le/Makefile.target             |   4 +-
 tests/tcg/x86_64/Makefile.target              |   2 +-
 17 files changed, 123 insertions(+), 372 deletions(-)
 rename tests/docker/dockerfiles/{debian-hexagon-cross.docker.d => debian-hexagon-cross.d}/build-toolchain.sh (100%)
 delete mode 100644 tests/docker/dockerfiles/empty.docker
 delete mode 100644 tests/tcg/Makefile.prereqs
 delete mode 100644 tests/tcg/Makefile.qemu

-- 
2.35.1
Re: [PATCH 00/17] tests/docker and tests/tcg cleanup and diet
Posted by Alex Bennée 3 years, 8 months ago
Paolo Bonzini <pbonzini@redhat.com> writes:

> The first eight patches simplify and clean up a bit the
> tests/docker/Makefile.include file.

Queued to testing/next, thanks.

-- 
Alex Bennée