10101dd71SAlex Bennée# THIS FILE WAS AUTO-GENERATED 2e100a967SAlex Bennée# 3*dcb8541bSPaolo Bonzini# $ lcitool dockerfile --layers all --cross-arch riscv64 debian-sid qemu-minimal 4e100a967SAlex Bennée# 50101dd71SAlex Bennée# https://gitlab.com/libvirt/libvirt-ci 60101dd71SAlex Bennée 75c24acf3SAlex BennéeFROM docker.io/library/debian:sid-slim 85c24acf3SAlex Bennée 90101dd71SAlex BennéeRUN export DEBIAN_FRONTEND=noninteractive && \ 100101dd71SAlex Bennée apt-get update && \ 110101dd71SAlex Bennée apt-get install -y eatmydata && \ 120101dd71SAlex Bennée eatmydata apt-get dist-upgrade -y && \ 130101dd71SAlex Bennée eatmydata apt-get install --no-install-recommends -y \ 140101dd71SAlex Bennée bash \ 155c24acf3SAlex Bennée bc \ 160101dd71SAlex Bennée bison \ 175c24acf3SAlex Bennée ca-certificates \ 180101dd71SAlex Bennée ccache \ 190101dd71SAlex Bennée findutils \ 203de61b98SAnton Johansson flex \ 210101dd71SAlex Bennée gcc \ 225c24acf3SAlex Bennée git \ 233de61b98SAnton Johansson libglib2.0-dev \ 240101dd71SAlex Bennée locales \ 250101dd71SAlex Bennée make \ 260101dd71SAlex Bennée meson \ 275c24acf3SAlex Bennée ninja-build \ 280101dd71SAlex Bennée pkgconf \ 29a22a4b29SJohn Snow python3 \ 300101dd71SAlex Bennée python3-venv \ 310101dd71SAlex Bennée sed \ 320101dd71SAlex Bennée tar && \ 330101dd71SAlex Bennée eatmydata apt-get autoremove -y && \ 340101dd71SAlex Bennée eatmydata apt-get autoclean -y && \ 350101dd71SAlex Bennée sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \ 360101dd71SAlex Bennée dpkg-reconfigure locales 375c24acf3SAlex Bennée 380101dd71SAlex BennéeENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers" 390101dd71SAlex BennéeENV LANG "en_US.UTF-8" 400101dd71SAlex BennéeENV MAKE "/usr/bin/make" 410101dd71SAlex BennéeENV NINJA "/usr/bin/ninja" 420101dd71SAlex BennéeENV PYTHON "/usr/bin/python3" 435c24acf3SAlex Bennée 440101dd71SAlex BennéeRUN export DEBIAN_FRONTEND=noninteractive && \ 450101dd71SAlex Bennée dpkg --add-architecture riscv64 && \ 460101dd71SAlex Bennée eatmydata apt-get install debian-ports-archive-keyring && \ 470101dd71SAlex Bennée eatmydata echo 'deb http://ftp.ports.debian.org/debian-ports/ sid main' > /etc/apt/sources.list.d/ports.list && \ 480101dd71SAlex Bennée eatmydata echo 'deb http://ftp.ports.debian.org/debian-ports/ unreleased main' >> /etc/apt/sources.list.d/ports.list && \ 490101dd71SAlex Bennée eatmydata apt-get update && \ 500101dd71SAlex Bennée eatmydata apt-get dist-upgrade -y && \ 510101dd71SAlex Bennée eatmydata apt-get install --no-install-recommends -y dpkg-dev && \ 520101dd71SAlex Bennée eatmydata apt-get install --no-install-recommends -y \ 530101dd71SAlex Bennée g++-riscv64-linux-gnu \ 54e100a967SAlex Bennée gcc-riscv64-linux-gnu \ 550101dd71SAlex Bennée libc6-dev:riscv64 \ 562b5e0c9fSThomas Huth libfdt-dev:riscv64 \ 575c24acf3SAlex Bennée libffi-dev:riscv64 \ 585c24acf3SAlex Bennée libglib2.0-dev:riscv64 \ 590101dd71SAlex Bennée libpixman-1-dev:riscv64 && \ 600101dd71SAlex Bennée eatmydata apt-get autoremove -y && \ 610101dd71SAlex Bennée eatmydata apt-get autoclean -y && \ 620101dd71SAlex Bennée mkdir -p /usr/local/share/meson/cross && \ 630101dd71SAlex Bennée printf "[binaries]\n\ 640101dd71SAlex Bennéec = '/usr/bin/riscv64-linux-gnu-gcc'\n\ 650101dd71SAlex Bennéear = '/usr/bin/riscv64-linux-gnu-gcc-ar'\n\ 660101dd71SAlex Bennéestrip = '/usr/bin/riscv64-linux-gnu-strip'\n\ 670101dd71SAlex Bennéepkgconfig = '/usr/bin/riscv64-linux-gnu-pkg-config'\n\ 680101dd71SAlex Bennée\n\ 690101dd71SAlex Bennée[host_machine]\n\ 700101dd71SAlex Bennéesystem = 'linux'\n\ 710101dd71SAlex Bennéecpu_family = 'riscv64'\n\ 720101dd71SAlex Bennéecpu = 'riscv64'\n\ 730101dd71SAlex Bennéeendian = 'little'\n" > /usr/local/share/meson/cross/riscv64-linux-gnu && \ 740101dd71SAlex Bennée dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \ 750101dd71SAlex Bennée mkdir -p /usr/libexec/ccache-wrappers && \ 760101dd71SAlex Bennée ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/riscv64-linux-gnu-c++ && \ 770101dd71SAlex Bennée ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/riscv64-linux-gnu-cc && \ 780101dd71SAlex Bennée ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/riscv64-linux-gnu-g++ && \ 790101dd71SAlex Bennée ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/riscv64-linux-gnu-gcc 805c24acf3SAlex Bennée 810101dd71SAlex BennéeENV ABI "riscv64-linux-gnu" 820101dd71SAlex BennéeENV MESON_OPTS "--cross-file=riscv64-linux-gnu" 835c24acf3SAlex BennéeENV QEMU_CONFIGURE_OPTS --cross-prefix=riscv64-linux-gnu- 845c24acf3SAlex BennéeENV DEF_TARGET_LIST riscv64-softmmu,riscv64-linux-user 8593bd2954SAlex Bennée# As a final step configure the user (if env is defined) 8693bd2954SAlex BennéeARG USER 8793bd2954SAlex BennéeARG UID 8893bd2954SAlex BennéeRUN if [ "${USER}" ]; then \ 8993bd2954SAlex Bennée id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi 90