1# syntax=docker/dockerfile:1 2FROM --platform=linux/arm64/v8 debian:bookworm 3LABEL maintainer.name="The Xen Project" \ 4 maintainer.email="xen-devel@lists.xenproject.org" 5 6ENV DEBIAN_FRONTEND=noninteractive 7ENV QEMU_VERSION=6.0.0 8ENV USER root 9 10RUN mkdir /build 11WORKDIR /build 12 13# build depends 14RUN apt-get update && \ 15 apt-get --quiet --yes install \ 16 build-essential \ 17 curl \ 18 python3 \ 19 ninja-build \ 20 pkg-config \ 21 libglib2.0-dev \ 22 libpixman-1-dev \ 23 && \ 24 \ 25 curl -fsSLO https://download.qemu.org/qemu-"$QEMU_VERSION".tar.xz && \ 26 tar xvJf qemu-"$QEMU_VERSION".tar.xz && \ 27 cd qemu-"$QEMU_VERSION" && \ 28 ./configure \ 29 --target-list=arm-softmmu,aarch64-softmmu \ 30 --enable-system \ 31 --disable-blobs \ 32 --disable-bsd-user \ 33 --disable-debug-info \ 34 --disable-glusterfs \ 35 --disable-gtk \ 36 --disable-guest-agent \ 37 --disable-linux-user \ 38 --disable-sdl \ 39 --disable-spice \ 40 --disable-tpm \ 41 --disable-vhost-net \ 42 --disable-vhost-scsi \ 43 --disable-vhost-user \ 44 --disable-vhost-vsock \ 45 --disable-virtfs \ 46 --disable-vnc \ 47 --disable-werror \ 48 --disable-xen \ 49 --disable-safe-stack \ 50 --disable-libssh \ 51 --disable-opengl \ 52 --disable-tools \ 53 --disable-virglrenderer \ 54 --disable-stack-protector \ 55 --disable-containers \ 56 --disable-replication \ 57 --disable-cloop \ 58 --disable-dmg \ 59 --disable-vvfat \ 60 --disable-vdi \ 61 --disable-parallels \ 62 --disable-qed \ 63 --disable-bochs \ 64 --disable-qom-cast-debug \ 65 --disable-vhost-vdpa \ 66 --disable-vhost-kernel \ 67 --disable-qcow1 \ 68 --disable-live-block-migration \ 69 && \ 70 make -j$(nproc) && \ 71 cp ./build/qemu-system-aarch64 / && \ 72 cp ./build/qemu-system-arm / && \ 73 cd /build && \ 74 rm -rf qemu-"$QEMU_VERSION"* && \ 75 apt-get autoremove -y && \ 76 apt-get clean && \ 77 rm -rf /var/lib/apt/lists* /tmp/* /var/tmp/* 78