Hi,
This is a series I've had on the back-burner for awhile. The idea is
to make the docker build system fully multiarch aware. Much like the
check-tcg system this involves a bunch of included Makefile
fragments. It also tries to address the need to track docker
dependencies in the Makefile explicitly by allowing more automatic
resolution.
One area where I'd like advice is if we should bother to make the
build targets backwards compatible - or is it fair to ask developers
to go through the pain of retraining their brains for the more regular
naming:
make docker-test-build@debian10-arm64-build-qemu J=30
I've included testing/next out of completeness.
Alex Bennée (11):
tests/docker: move most cross compilers to buster base
tests/docker: better handle symlinked libs
.shippable: --disable-docs for cross-compile tests
tests/docker: move all cross-compilers images into dockerfiles.cross
tests/docker: move all multiarch containers into dockerfiles.multiarch
tests/docker: search the tests/docker tree to inline parent dockerfile
tests/docker: switch to multiarch aware container support
tests/docker: add debian10-native-qemu-build
tests/docker: rename the cross builds
tests/docker: re-enable cross-compiling for x86_64 hosts
tests/docker: enable cross-compilers for aarch64
Thomas Huth (1):
gitlab-ci: Refresh the list of iotests
Wainer dos Santos Moschetta (1):
travis.yml: Install genisoimage package
.gitlab-ci.yml | 12 +-
.shippable.yml | 2 +-
.travis.yml | 8 ++
tests/docker/Makefile.include | 126 +++++++-----------
tests/docker/docker.py | 12 +-
.../dockerfiles.aarch64/Makefile.include | 24 ++++
.../debian10-aarch64-qemu-build.docker | 1 +
.../debian10-alpha-test-build.docker | 1 +
.../debian10-x86_64-qemu-build.docker | 1 +
.../debian9-armel-qemu-build.docker | 1 +
.../debian10-alpha-build-tests.docker} | 0
.../debian10-amd64-build-qemu.docker} | 0
.../debian10-arm64-build-qemu.docker} | 0
.../debian10-armel-build-qemu.docker} | 2 +-
.../debian10-armhf-build-qemu.docker} | 2 +-
.../debian10-hppa-build-tests.docker} | 0
.../debian10-m68k-build-tests.docker} | 0
.../debian10-mips-build-qemu.docker} | 0
.../debian10-mips64-build-tests.docker} | 0
.../debian10-mips64el-build-qemu.docker} | 2 +-
.../debian10-mipsel-build-qemu.docker} | 2 +-
.../debian10-powerpc-build-tests.docker} | 0
.../debian10-ppc64-build-tests.docker} | 0
.../debian10-ppc64el-build-qemu.docker} | 2 +-
.../debian10-riscv64-build-tests.docker} | 0
.../debian10-s390x-build-qemu.docker} | 2 +-
.../debian10-sh4-build-tests.docker} | 0
.../debian10-sparc64-build-tests.docker} | 0
.../debian9-tricore-build-tests.docker} | 0
.../debian9-xtensa-build-tests.docker} | 0
.../fedora-cris-build-tests.docker} | 0
.../fedora-i386-build-qemu.docker} | 0
.../dockerfiles.multiarch/Makefile.include | 17 +++
.../debian10.docker | 0
.../debian9.docker | 0
.../dockerfiles.x86_64/Makefile.include | 26 ++++
.../debain10-x86_64-qemu-build.docker | 1 +
.../debian10-alpha-build-tests.docker | 1 +
.../debian10-amd64-build-qemu.docker | 1 +
.../debian10-arm64-build-qemu.docker | 1 +
.../debian10-armel-build-qemu.docker | 1 +
.../debian10-armhf-build-qemu.docker | 1 +
.../debian10-hppa-build-tests.docker | 1 +
.../debian10-m68k-build-tests.docker | 1 +
.../debian10-mips-build-qemu.docker | 1 +
.../debian10-mips64-build-tests.docker | 1 +
.../debian10-mips64el-build-qemu.docker | 1 +
.../debian10-mipsel-build-qemu.docker | 1 +
.../debian10-native-qemu-build.docker | 1 +
.../debian10-powerpc-build-tests.docker | 1 +
.../debian10-ppc64-build-tests.docker | 1 +
.../debian10-ppc64el-build-qemu.docker | 1 +
.../debian10-riscv64-build-tests.docker | 1 +
.../debian10-s390x-build-qemu.docker | 1 +
.../debian10-sh4-build-tests.docker | 1 +
.../debian10-sparc64-build-tests.docker | 1 +
.../debian9-mxe-win32-build-qemu.docker} | 0
.../debian9-mxe-win64-build-qemu.docker} | 0
.../debian9-mxe.docker | 0
.../debian9-tricore-build-tests.docker | 1 +
.../debian9-xtensa-build-tests.docker | 1 +
.../fedora-cris-build-tests.docker | 1 +
.../fedora-i386-build-tests.docker | 1 +
.../travis.docker | 0
tests/docker/dockerfiles/debian-amd64.docker | 2 +-
.../debian10-native-qemu-build.docker | 15 +++
tests/tcg/configure.sh | 38 +++---
67 files changed, 204 insertions(+), 118 deletions(-)
create mode 100644 tests/docker/dockerfiles.aarch64/Makefile.include
create mode 120000 tests/docker/dockerfiles.aarch64/debian10-aarch64-qemu-build.docker
create mode 120000 tests/docker/dockerfiles.aarch64/debian10-alpha-test-build.docker
create mode 120000 tests/docker/dockerfiles.aarch64/debian10-x86_64-qemu-build.docker
create mode 120000 tests/docker/dockerfiles.aarch64/debian9-armel-qemu-build.docker
rename tests/docker/{dockerfiles/debian-alpha-cross.docker => dockerfiles.cross/debian10-alpha-build-tests.docker} (100%)
rename tests/docker/{dockerfiles/debian-amd64-cross.docker => dockerfiles.cross/debian10-amd64-build-qemu.docker} (100%)
rename tests/docker/{dockerfiles/debian-arm64-cross.docker => dockerfiles.cross/debian10-arm64-build-qemu.docker} (100%)
rename tests/docker/{dockerfiles/debian-armel-cross.docker => dockerfiles.cross/debian10-armel-build-qemu.docker} (97%)
rename tests/docker/{dockerfiles/debian-armhf-cross.docker => dockerfiles.cross/debian10-armhf-build-qemu.docker} (97%)
rename tests/docker/{dockerfiles/debian-hppa-cross.docker => dockerfiles.cross/debian10-hppa-build-tests.docker} (100%)
rename tests/docker/{dockerfiles/debian-m68k-cross.docker => dockerfiles.cross/debian10-m68k-build-tests.docker} (100%)
rename tests/docker/{dockerfiles/debian-mips-cross.docker => dockerfiles.cross/debian10-mips-build-qemu.docker} (100%)
rename tests/docker/{dockerfiles/debian-mips64-cross.docker => dockerfiles.cross/debian10-mips64-build-tests.docker} (100%)
rename tests/docker/{dockerfiles/debian-mips64el-cross.docker => dockerfiles.cross/debian10-mips64el-build-qemu.docker} (98%)
rename tests/docker/{dockerfiles/debian-mipsel-cross.docker => dockerfiles.cross/debian10-mipsel-build-qemu.docker} (97%)
rename tests/docker/{dockerfiles/debian-powerpc-cross.docker => dockerfiles.cross/debian10-powerpc-build-tests.docker} (100%)
rename tests/docker/{dockerfiles/debian-ppc64-cross.docker => dockerfiles.cross/debian10-ppc64-build-tests.docker} (100%)
rename tests/docker/{dockerfiles/debian-ppc64el-cross.docker => dockerfiles.cross/debian10-ppc64el-build-qemu.docker} (97%)
rename tests/docker/{dockerfiles/debian-riscv64-cross.docker => dockerfiles.cross/debian10-riscv64-build-tests.docker} (100%)
rename tests/docker/{dockerfiles/debian-s390x-cross.docker => dockerfiles.cross/debian10-s390x-build-qemu.docker} (98%)
rename tests/docker/{dockerfiles/debian-sh4-cross.docker => dockerfiles.cross/debian10-sh4-build-tests.docker} (100%)
rename tests/docker/{dockerfiles/debian-sparc64-cross.docker => dockerfiles.cross/debian10-sparc64-build-tests.docker} (100%)
rename tests/docker/{dockerfiles/debian-tricore-cross.docker => dockerfiles.cross/debian9-tricore-build-tests.docker} (100%)
rename tests/docker/{dockerfiles/debian-xtensa-cross.docker => dockerfiles.cross/debian9-xtensa-build-tests.docker} (100%)
rename tests/docker/{dockerfiles/fedora-cris-cross.docker => dockerfiles.cross/fedora-cris-build-tests.docker} (100%)
rename tests/docker/{dockerfiles/fedora-i386-cross.docker => dockerfiles.cross/fedora-i386-build-qemu.docker} (100%)
create mode 100644 tests/docker/dockerfiles.multiarch/Makefile.include
rename tests/docker/{dockerfiles => dockerfiles.multiarch}/debian10.docker (100%)
rename tests/docker/{dockerfiles => dockerfiles.multiarch}/debian9.docker (100%)
create mode 100644 tests/docker/dockerfiles.x86_64/Makefile.include
create mode 120000 tests/docker/dockerfiles.x86_64/debain10-x86_64-qemu-build.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-alpha-build-tests.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-amd64-build-qemu.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-arm64-build-qemu.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-armel-build-qemu.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-armhf-build-qemu.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-hppa-build-tests.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-m68k-build-tests.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-mips-build-qemu.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-mips64-build-tests.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-mips64el-build-qemu.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-mipsel-build-qemu.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-native-qemu-build.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-powerpc-build-tests.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-ppc64-build-tests.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-ppc64el-build-qemu.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-riscv64-build-tests.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-s390x-build-qemu.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-sh4-build-tests.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian10-sparc64-build-tests.docker
rename tests/docker/{dockerfiles/debian-win32-cross.docker => dockerfiles.x86_64/debian9-mxe-win32-build-qemu.docker} (100%)
rename tests/docker/{dockerfiles/debian-win64-cross.docker => dockerfiles.x86_64/debian9-mxe-win64-build-qemu.docker} (100%)
rename tests/docker/{dockerfiles => dockerfiles.x86_64}/debian9-mxe.docker (100%)
create mode 120000 tests/docker/dockerfiles.x86_64/debian9-tricore-build-tests.docker
create mode 120000 tests/docker/dockerfiles.x86_64/debian9-xtensa-build-tests.docker
create mode 120000 tests/docker/dockerfiles.x86_64/fedora-cris-build-tests.docker
create mode 120000 tests/docker/dockerfiles.x86_64/fedora-i386-build-tests.docker
rename tests/docker/{dockerfiles => dockerfiles.x86_64}/travis.docker (100%)
create mode 100644 tests/docker/dockerfiles/debian10-native-qemu-build.docker
--
2.20.1