qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v5 43/49] docker: move debian-powerpc-cross to s


From: Fam Zheng
Subject: Re: [Qemu-devel] [PATCH v5 43/49] docker: move debian-powerpc-cross to sid based build
Date: Mon, 28 May 2018 17:06:11 +0800
User-agent: Mutt/1.9.2 (2017-12-15)

On Fri, 05/25 15:19, Alex Bennée wrote:
> 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>
> ---
>  tests/docker/Makefile.include                 |  4 +-
>  tests/docker/dockerfiles/debian-apt-fake.sh   | 46 -------------------
>  .../dockerfiles/debian-powerpc-cross.docker   | 39 +++-------------
>  tests/docker/dockerfiles/debian8.docker       |  3 --
>  4 files changed, 7 insertions(+), 85 deletions(-)
>  delete mode 100755 tests/docker/dockerfiles/debian-apt-fake.sh
> 
> diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
> index 36779645d7..d59314ee65 100644
> --- a/tests/docker/Makefile.include
> +++ b/tests/docker/Makefile.include
> @@ -46,8 +46,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
> @@ -57,7 +55,6 @@ docker-image-debian-armhf-cross: docker-image-debian9
>  docker-image-debian-arm64-cross: docker-image-debian9
>  docker-image-debian-mips-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
> @@ -69,6 +66,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
>  
>  # Expand all the pre-requistes for each docker image and test combination
> 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.0
> 

Nice clean up!

Reviewed-by: Fam Zheng <address@hidden>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]