Browse Source
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 <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>pull/73/head
4 changed files with 7 additions and 85 deletions
@ -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é <f4bug@amsat.org> |
|||
# |
|||
# 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: qemu-devel@nongnu.org |
|||
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 |
|||
@ -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é <f4bug@amsat.org> |
|||
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; } |
|||
|
|||
Loading…
Reference in new issue