12b1c10bdSPhilippe Mathieu-Daudé# 22b1c10bdSPhilippe Mathieu-Daudé# Docker ppc64el cross-compiler target 32b1c10bdSPhilippe Mathieu-Daudé# 42b1c10bdSPhilippe Mathieu-Daudé# This docker target builds on the debian Stretch base image. 52b1c10bdSPhilippe Mathieu-Daudé# 6*767b6bd2SAlex BennéeFROM qemu/debian10 72b1c10bdSPhilippe Mathieu-Daudé 82b1c10bdSPhilippe Mathieu-Daudé# Add the foreign architecture we want and install dependencies 92b1c10bdSPhilippe Mathieu-DaudéRUN dpkg --add-architecture ppc64el && \ 1098808c3dSPhilippe Mathieu-Daudé apt update && \ 1198808c3dSPhilippe Mathieu-Daudé apt install -yy crossbuild-essential-ppc64el 122b1c10bdSPhilippe Mathieu-Daudé 1398808c3dSPhilippe Mathieu-DaudéRUN apt update && \ 1498808c3dSPhilippe Mathieu-Daudé DEBIAN_FRONTEND=noninteractive eatmydata \ 15d2467284SAlex Bennée apt build-dep -yy -a ppc64el --arch-only qemu 162b1c10bdSPhilippe Mathieu-Daudé 172b1c10bdSPhilippe Mathieu-Daudé# Specify the cross prefix for this image (see tests/docker/common.rc) 182b1c10bdSPhilippe Mathieu-DaudéENV QEMU_CONFIGURE_OPTS --cross-prefix=powerpc64le-linux-gnu- 1909bb808fSAlex BennéeENV DEF_TARGET_LIST ppc64-softmmu,ppc64-linux-user,ppc64abi32-linux-user 202b1c10bdSPhilippe Mathieu-Daudé 212b1c10bdSPhilippe Mathieu-Daudé# Install extra libraries to increase code coverage 2298808c3dSPhilippe Mathieu-DaudéRUN apt update && \ 2398808c3dSPhilippe Mathieu-Daudé DEBIAN_FRONTEND=noninteractive eatmydata \ 2498808c3dSPhilippe Mathieu-Daudé apt install -y --no-install-recommends \ 252b1c10bdSPhilippe Mathieu-Daudé libbz2-dev:ppc64el \ 262b1c10bdSPhilippe Mathieu-Daudé liblzo2-dev:ppc64el \ 272b1c10bdSPhilippe Mathieu-Daudé librdmacm-dev:ppc64el \ 282b1c10bdSPhilippe Mathieu-Daudé libsnappy-dev:ppc64el 29