[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 41/56] docker: move debian-powerpc-cross to sid based
From: |
Alex Bennée |
Subject: |
[Qemu-devel] [PULL 41/56] docker: move debian-powerpc-cross to sid based build |
Date: |
Tue, 19 Jun 2018 16:44:20 +0100 |
The original Jessie based cross builder hasn't worked for a while. The
state of the libraries is still perilous for cross-building QEMU but
we can use it for building TCG tests.
The debian-apt-fake.sh script can also be dropped as it is no longer
used.
Signed-off-by: Alex Bennée <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Tested-by: Philippe Mathieu-Daudé <address@hidden>
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index a680743ae8..87f449264f 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -47,8 +47,6 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker
$(if $(EXECUTABLE),--include-executable=$(EXECUTABLE)),\
"BUILD","$*")
-docker-image-debian-powerpc-cross:
EXTRA_FILES:=$(SRC_PATH)/tests/docker/dockerfiles/debian-apt-fake.sh
-
# Enforce dependencies for composite images
docker-image-debian: docker-image-debian9
docker-image-debian8-mxe: docker-image-debian8
@@ -59,7 +57,6 @@ docker-image-debian-arm64-cross: docker-image-debian9
docker-image-debian-mips-cross: docker-image-debian9
docker-image-debian-mipsel-cross: docker-image-debian9
docker-image-debian-mips64el-cross: docker-image-debian9
-docker-image-debian-powerpc-cross: docker-image-debian8
docker-image-debian-ppc64el-cross: docker-image-debian9
docker-image-debian-s390x-cross: docker-image-debian9
docker-image-debian-win32-cross: docker-image-debian8-mxe
@@ -77,6 +74,7 @@ docker-image-debian-sh4-cross: docker-image-debian-sid
docker-image-debian-sparc64-cross: docker-image-debian-sid
docker-image-debian-mips64-cross: docker-image-debian-sid
docker-image-debian-riscv64-cross: docker-image-debian-sid
+docker-image-debian-powerpc-cross: docker-image-debian-sid
docker-image-travis: NOUSER=1
# Specialist build images, sometimes very limited tools
diff --git a/tests/docker/dockerfiles/debian-apt-fake.sh
b/tests/docker/dockerfiles/debian-apt-fake.sh
deleted file mode 100755
index 2ec0fdf47a..0000000000
--- a/tests/docker/dockerfiles/debian-apt-fake.sh
+++ /dev/null
@@ -1,46 +0,0 @@
-#! /bin/sh
-#
-# Generate fake debian package to resolve unimportant unmet dependencies held
-# by upstream multiarch broken packages.
-#
-# Copyright (c) 2017 Philippe Mathieu-Daudé <address@hidden>
-#
-# This work is licensed under the terms of the GNU GPL, version 2
-# or (at your option) any later version. See the COPYING file in
-# the top-level directory.
-
-test $1 = "install" && shift 1
-
-fake_install()
-{
- echo "Generating fake $2 $1 $3 ..."
- (cd /var/cache/apt/archives
- (cat << 'EOF'
-Section: misc
-Priority: optional
-Standards-Version: 3.9.2
-
-Package: NAME
-Version: VERSION
-Maintainer: address@hidden
-Architecture: any
-Multi-Arch: same
-Description: fake NAME
-EOF
- ) | sed s/NAME/$2/g | sed s/VERSION/$3/g > $2.control
- equivs-build -a $1 $2.control 1>/dev/null 2>/dev/null
- dpkg -i --force-overwrite $2_$3_$1.deb
- )
-}
-
-try_install()
-{
- name=$(echo $1|sed "s/\(.*\):\(.*\)=\(.*\)/\1/")
- arch=$(echo $1|sed "s/\(.*\):\(.*\)=\(.*\)/\2/")
- vers=$(echo $1|sed "s/\(.*\):\(.*\)=\(.*\)/\3/")
- apt-get install -q -yy $1 || fake_install $arch $name $vers
-}
-
-for package in $*; do
- try_install $package
-done
diff --git a/tests/docker/dockerfiles/debian-powerpc-cross.docker
b/tests/docker/dockerfiles/debian-powerpc-cross.docker
index a5dd46b4ac..5e62ca0df1 100644
--- a/tests/docker/dockerfiles/debian-powerpc-cross.docker
+++ b/tests/docker/dockerfiles/debian-powerpc-cross.docker
@@ -1,40 +1,13 @@
#
# Docker powerpc cross-compiler target
#
-# This docker target builds on the debian Jessie base image.
+# This docker target builds on the debian sid base image which
+# contains cross compilers for Debian "ports" targets. The original
+# Jessie based no longer builds.
#
-FROM qemu:debian8
-MAINTAINER Philippe Mathieu-Daudé <address@hidden>
+FROM qemu:debian-sid
-# Add the foreign architecture we want and install dependencies
-RUN dpkg --add-architecture powerpc
-RUN apt-get update
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
- crossbuild-essential-powerpc
-
-# <kludge> to fix "following packages have unmet dependencies" ...
-ADD debian-apt-fake.sh /usr/local/bin/apt-fake
-RUN apt-get install -y --no-install-recommends \
- equivs \
- pkg-config
-RUN apt-fake install \
- pkg-config:powerpc=0.28-1.1-fake && \
- ln -s pkg-config /usr/bin/powerpc-linux-gnu-pkg-config
-ENV PKG_CONFIG_PATH /usr/lib/powerpc-linux-gnu/pkgconfig
-# </kludge>
-
-# Specify the cross prefix for this image (see tests/docker/common.rc)
-ENV QEMU_CONFIGURE_OPTS --cross-prefix=powerpc-linux-gnu-
-
-RUN DEBIAN_FRONTEND=noninteractive eatmydata \
- apt-get build-dep -yy -a powerpc qemu
-RUN DEBIAN_FRONTEND=noninteractive \
- apt-get install -y --no-install-recommends \
- glusterfs-common:powerpc \
- libbz2-dev:powerpc \
- liblzo2-dev:powerpc \
- libncursesw5-dev:powerpc \
- libnfs-dev:powerpc \
- librdmacm-dev:powerpc \
- libsnappy-dev:powerpc
+ gcc-powerpc-linux-gnu \
+ libc6-dev-powerpc-cross || { echo "Failed to build - see
debian-sid.docker notes"; exit 1; }
diff --git a/tests/docker/dockerfiles/debian8.docker
b/tests/docker/dockerfiles/debian8.docker
index 1bcf2e3d2f..52945631cd 100644
--- a/tests/docker/dockerfiles/debian8.docker
+++ b/tests/docker/dockerfiles/debian8.docker
@@ -32,6 +32,3 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
pkg-config \
python-minimal
-# Setup Emdebian [emdebian-archive-keyring]
-RUN echo "deb http://emdebian.org/tools/debian/ jessie main" >
/etc/apt/sources.list.d/emdebian.list && \
- curl http://emdebian.org/tools/debian/emdebian-toolchain-archive.key |
apt-key add -
--
2.17.1
- [Qemu-devel] [PULL 28/56] tests/tcg: enable building for MIPS, (continued)
- [Qemu-devel] [PULL 28/56] tests/tcg: enable building for MIPS, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 51/56] docker: docker.py don't conflate checksums for extra_files, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 20/56] tests/tcg/i386/test-i386: use modern vector_size attributes, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 30/56] tests/tcg/mips: include common mips hello-mips, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 36/56] tests/tcg: enable building for m68k, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 47/56] tests/tcg: override runners for broken tests, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 39/56] tests/tcg: enable building for mips64, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 55/56] tests/docker/Makefile.include: only force SID to NOCACHE if old, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 48/56] tests/tcg/i386: extend timeout for runcom test, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 52/56] docker: docker.py add check sub-command, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 41/56] docker: move debian-powerpc-cross to sid based build,
Alex Bennée <=
- [Qemu-devel] [PULL 43/56] tests/tcg/Makefile: update to be called from Makefile.target, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 40/56] tests/tcg: enable building for RISCV64, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 38/56] tests/tcg: enable building for sparc64, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 50/56] docker: docker.py use "version" to probe usage, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 49/56] tests: add top-level make dependency for docker builds, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 54/56] docker: docker.py adding age check command, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 35/56] tests/tcg: enable building for HPPA, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 15/56] tests/tcg: enable building for i386, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 26/56] tests/tcg/arm: add fcvt test cases for AArch32/64, Alex Bennée, 2018/06/19
- [Qemu-devel] [PULL 29/56] tests/docker/Makefile.include: fix mipsel-cross dependancy, Alex Bennée, 2018/06/19