118ad049dSAlex Bennée# THIS FILE WAS AUTO-GENERATED 224e0131fSAlex Bennée# 3*ca9cde57SAlex Bennée# $ lcitool dockerfile --layers all --cross-arch armv7l debian-12 qemu 424e0131fSAlex Bennée# 518ad049dSAlex Bennée# https://gitlab.com/libvirt/libvirt-ci 624e0131fSAlex Bennée 7*ca9cde57SAlex BennéeFROM docker.io/library/debian:12-slim 824e0131fSAlex Bennée 918ad049dSAlex BennéeRUN export DEBIAN_FRONTEND=noninteractive && \ 1018ad049dSAlex Bennée apt-get update && \ 1118ad049dSAlex Bennée apt-get install -y eatmydata && \ 1218ad049dSAlex Bennée eatmydata apt-get dist-upgrade -y && \ 1318ad049dSAlex Bennée eatmydata apt-get install --no-install-recommends -y \ 1418ad049dSAlex Bennée bash \ 1518ad049dSAlex Bennée bc \ 168fae3910SAnton Johansson bison \ 1718ad049dSAlex Bennée bsdextrautils \ 1818ad049dSAlex Bennée bzip2 \ 1918ad049dSAlex Bennée ca-certificates \ 2018ad049dSAlex Bennée ccache \ 2118ad049dSAlex Bennée dbus \ 2218ad049dSAlex Bennée debianutils \ 2318ad049dSAlex Bennée diffutils \ 2418ad049dSAlex Bennée exuberant-ctags \ 2518ad049dSAlex Bennée findutils \ 268fae3910SAnton Johansson flex \ 27690be804SAlex Bennée gcc \ 2818ad049dSAlex Bennée gcovr \ 2918ad049dSAlex Bennée gettext \ 3018ad049dSAlex Bennée git \ 3118ad049dSAlex Bennée hostname \ 328fae3910SAnton Johansson libglib2.0-dev \ 3318ad049dSAlex Bennée libpcre2-dev \ 348f4bcbcfSBrad Smith libsndio-dev \ 3518ad049dSAlex Bennée libspice-protocol-dev \ 3618ad049dSAlex Bennée llvm \ 3718ad049dSAlex Bennée locales \ 3818ad049dSAlex Bennée make \ 3918ad049dSAlex Bennée meson \ 40da900078SAni Sinha mtools \ 4118ad049dSAlex Bennée ncat \ 4218ad049dSAlex Bennée ninja-build \ 4318ad049dSAlex Bennée openssh-client \ 4418ad049dSAlex Bennée pkgconf \ 4518ad049dSAlex Bennée python3 \ 4618ad049dSAlex Bennée python3-numpy \ 4718ad049dSAlex Bennée python3-opencv \ 4818ad049dSAlex Bennée python3-pillow \ 4918ad049dSAlex Bennée python3-pip \ 5018ad049dSAlex Bennée python3-sphinx \ 5118ad049dSAlex Bennée python3-sphinx-rtd-theme \ 5218ad049dSAlex Bennée python3-venv \ 5318ad049dSAlex Bennée python3-yaml \ 5418ad049dSAlex Bennée rpm2cpio \ 5518ad049dSAlex Bennée sed \ 56ab4c1361SAlex Bennée socat \ 5718ad049dSAlex Bennée sparse \ 5818ad049dSAlex Bennée tar \ 5918ad049dSAlex Bennée tesseract-ocr \ 60bbe30763SAlex Bennée tesseract-ocr-eng \ 61da900078SAni Sinha xorriso \ 62bbe30763SAlex Bennée zstd && \ 6318ad049dSAlex Bennée eatmydata apt-get autoremove -y && \ 6418ad049dSAlex Bennée eatmydata apt-get autoclean -y && \ 6518ad049dSAlex Bennée sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \ 6618ad049dSAlex Bennée dpkg-reconfigure locales 6732809e7fSPhilippe Mathieu-Daudé 688f4bcbcfSBrad SmithENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers" 6918ad049dSAlex BennéeENV LANG "en_US.UTF-8" 7018ad049dSAlex BennéeENV MAKE "/usr/bin/make" 7118ad049dSAlex BennéeENV NINJA "/usr/bin/ninja" 7218ad049dSAlex BennéeENV PYTHON "/usr/bin/python3" 7318ad049dSAlex Bennée 7418ad049dSAlex BennéeRUN export DEBIAN_FRONTEND=noninteractive && \ 7518ad049dSAlex Bennée dpkg --add-architecture armhf && \ 7618ad049dSAlex Bennée eatmydata apt-get update && \ 7718ad049dSAlex Bennée eatmydata apt-get dist-upgrade -y && \ 7818ad049dSAlex Bennée eatmydata apt-get install --no-install-recommends -y dpkg-dev && \ 7918ad049dSAlex Bennée eatmydata apt-get install --no-install-recommends -y \ 8018ad049dSAlex Bennée g++-arm-linux-gnueabihf \ 8118ad049dSAlex Bennée gcc-arm-linux-gnueabihf \ 8218ad049dSAlex Bennée libaio-dev:armhf \ 83a6f376e9SIlya Maximets libasan6:armhf \ 8418ad049dSAlex Bennée libasound2-dev:armhf \ 8518ad049dSAlex Bennée libattr1-dev:armhf \ 8618ad049dSAlex Bennée libbpf-dev:armhf \ 8718ad049dSAlex Bennée libbrlapi-dev:armhf \ 8832809e7fSPhilippe Mathieu-Daudé libbz2-dev:armhf \ 8918ad049dSAlex Bennée libc6-dev:armhf \ 9018ad049dSAlex Bennée libcacard-dev:armhf \ 9118ad049dSAlex Bennée libcap-ng-dev:armhf \ 9218ad049dSAlex Bennée libcapstone-dev:armhf \ 93feb6cb93SDaniel P. Berrangé libcmocka-dev:armhf \ 9418ad049dSAlex Bennée libcurl4-gnutls-dev:armhf \ 9518ad049dSAlex Bennée libdaxctl-dev:armhf \ 9618ad049dSAlex Bennée libdrm-dev:armhf \ 9718ad049dSAlex Bennée libepoxy-dev:armhf \ 9818ad049dSAlex Bennée libfdt-dev:armhf \ 9918ad049dSAlex Bennée libffi-dev:armhf \ 10018ad049dSAlex Bennée libfuse3-dev:armhf \ 10118ad049dSAlex Bennée libgbm-dev:armhf \ 10218ad049dSAlex Bennée libgcrypt20-dev:armhf \ 10318ad049dSAlex Bennée libglib2.0-dev:armhf \ 10418ad049dSAlex Bennée libglusterfs-dev:armhf \ 10518ad049dSAlex Bennée libgnutls28-dev:armhf \ 10618ad049dSAlex Bennée libgtk-3-dev:armhf \ 10718ad049dSAlex Bennée libibumad-dev:armhf \ 10818ad049dSAlex Bennée libibverbs-dev:armhf \ 10918ad049dSAlex Bennée libiscsi-dev:armhf \ 11018ad049dSAlex Bennée libjemalloc-dev:armhf \ 11118ad049dSAlex Bennée libjpeg62-turbo-dev:armhf \ 112feb6cb93SDaniel P. Berrangé libjson-c-dev:armhf \ 11318ad049dSAlex Bennée liblttng-ust-dev:armhf \ 11432809e7fSPhilippe Mathieu-Daudé liblzo2-dev:armhf \ 11518ad049dSAlex Bennée libncursesw5-dev:armhf \ 11618ad049dSAlex Bennée libnfs-dev:armhf \ 11718ad049dSAlex Bennée libnuma-dev:armhf \ 11818ad049dSAlex Bennée libpam0g-dev:armhf \ 11962259d81SMarc-André Lureau libpipewire-0.3-dev:armhf \ 12018ad049dSAlex Bennée libpixman-1-dev:armhf \ 12118ad049dSAlex Bennée libpng-dev:armhf \ 12218ad049dSAlex Bennée libpulse-dev:armhf \ 12318ad049dSAlex Bennée librbd-dev:armhf \ 12432809e7fSPhilippe Mathieu-Daudé librdmacm-dev:armhf \ 12518ad049dSAlex Bennée libsasl2-dev:armhf \ 12618ad049dSAlex Bennée libsdl2-dev:armhf \ 12718ad049dSAlex Bennée libsdl2-image-dev:armhf \ 12818ad049dSAlex Bennée libseccomp-dev:armhf \ 12918ad049dSAlex Bennée libselinux1-dev:armhf \ 13018ad049dSAlex Bennée libslirp-dev:armhf \ 13132809e7fSPhilippe Mathieu-Daudé libsnappy-dev:armhf \ 13218ad049dSAlex Bennée libspice-server-dev:armhf \ 13318ad049dSAlex Bennée libssh-gcrypt-dev:armhf \ 13418ad049dSAlex Bennée libsystemd-dev:armhf \ 13518ad049dSAlex Bennée libtasn1-6-dev:armhf \ 13618ad049dSAlex Bennée libubsan1:armhf \ 13718ad049dSAlex Bennée libudev-dev:armhf \ 13818ad049dSAlex Bennée liburing-dev:armhf \ 13918ad049dSAlex Bennée libusb-1.0-0-dev:armhf \ 14018ad049dSAlex Bennée libusbredirhost-dev:armhf \ 14118ad049dSAlex Bennée libvdeplug-dev:armhf \ 14218ad049dSAlex Bennée libvirglrenderer-dev:armhf \ 14318ad049dSAlex Bennée libvte-2.91-dev:armhf \ 144*ca9cde57SAlex Bennée libxdp-dev:armhf \ 14518ad049dSAlex Bennée libxen-dev:armhf \ 14618ad049dSAlex Bennée libzstd-dev:armhf \ 14718ad049dSAlex Bennée nettle-dev:armhf \ 14818ad049dSAlex Bennée systemtap-sdt-dev:armhf \ 14918ad049dSAlex Bennée xfslibs-dev:armhf \ 15018ad049dSAlex Bennée zlib1g-dev:armhf && \ 15118ad049dSAlex Bennée eatmydata apt-get autoremove -y && \ 15218ad049dSAlex Bennée eatmydata apt-get autoclean -y && \ 15318ad049dSAlex Bennée mkdir -p /usr/local/share/meson/cross && \ 154dacc122eSPeter Krempa printf "[binaries]\n\ 15518ad049dSAlex Bennéec = '/usr/bin/arm-linux-gnueabihf-gcc'\n\ 15618ad049dSAlex Bennéear = '/usr/bin/arm-linux-gnueabihf-gcc-ar'\n\ 15718ad049dSAlex Bennéestrip = '/usr/bin/arm-linux-gnueabihf-strip'\n\ 15818ad049dSAlex Bennéepkgconfig = '/usr/bin/arm-linux-gnueabihf-pkg-config'\n\ 15918ad049dSAlex Bennée\n\ 16018ad049dSAlex Bennée[host_machine]\n\ 16118ad049dSAlex Bennéesystem = 'linux'\n\ 16218ad049dSAlex Bennéecpu_family = 'arm'\n\ 16318ad049dSAlex Bennéecpu = 'armhf'\n\ 164dacc122eSPeter Krempaendian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabihf && \ 16518ad049dSAlex Bennée dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \ 16618ad049dSAlex Bennée mkdir -p /usr/libexec/ccache-wrappers && \ 16718ad049dSAlex Bennée ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-c++ && \ 16818ad049dSAlex Bennée ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-cc && \ 16918ad049dSAlex Bennée ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-g++ && \ 17018ad049dSAlex Bennée ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-gcc 17118ad049dSAlex Bennée 17218ad049dSAlex BennéeENV ABI "arm-linux-gnueabihf" 17318ad049dSAlex BennéeENV MESON_OPTS "--cross-file=arm-linux-gnueabihf" 17418ad049dSAlex BennéeENV QEMU_CONFIGURE_OPTS --cross-prefix=arm-linux-gnueabihf- 17518ad049dSAlex BennéeENV DEF_TARGET_LIST arm-softmmu,arm-linux-user 1765b8bcf6bSAlex Bennée# As a final step configure the user (if env is defined) 1775b8bcf6bSAlex BennéeARG USER 1785b8bcf6bSAlex BennéeARG UID 1795b8bcf6bSAlex BennéeRUN if [ "${USER}" ]; then \ 1805b8bcf6bSAlex Bennée id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi 181