# THIS FILE WAS AUTO-GENERATED
#
#  $ lcitool dockerfile --layers all --cross-arch i686 debian-12 qemu
#
# https://gitlab.com/libvirt/libvirt-ci

FROM docker.io/library/debian:12-slim

RUN export DEBIAN_FRONTEND=noninteractive && \
    apt-get update && \
    apt-get install -y eatmydata && \
    eatmydata apt-get dist-upgrade -y && \
    eatmydata apt-get install --no-install-recommends -y \
                      bash \
                      bc \
                      bindgen \
                      bison \
                      bsdextrautils \
                      bzip2 \
                      ca-certificates \
                      ccache \
                      dbus \
                      debianutils \
                      diffutils \
                      exuberant-ctags \
                      findutils \
                      flex \
                      gcc \
                      gcovr \
                      gettext \
                      git \
                      hostname \
                      libglib2.0-dev \
                      libgtk-vnc-2.0-dev \
                      libpcre2-dev \
                      libsndio-dev \
                      libspice-protocol-dev \
                      llvm \
                      locales \
                      make \
                      meson \
                      mtools \
                      ncat \
                      ninja-build \
                      openssh-client \
                      pkgconf \
                      python3 \
                      python3-numpy \
                      python3-opencv \
                      python3-pillow \
                      python3-pip \
                      python3-sphinx \
                      python3-sphinx-rtd-theme \
                      python3-venv \
                      python3-yaml \
                      rpm2cpio \
                      rustc \
                      sed \
                      socat \
                      sparse \
                      swtpm \
                      tar \
                      tesseract-ocr \
                      tesseract-ocr-eng \
                      xorriso \
                      zstd && \
    eatmydata apt-get autoremove -y && \
    eatmydata apt-get autoclean -y && \
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
    dpkg-reconfigure locales && \
    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED

ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
ENV MAKE "/usr/bin/make"
ENV NINJA "/usr/bin/ninja"
ENV PYTHON "/usr/bin/python3"

RUN export DEBIAN_FRONTEND=noninteractive && \
    dpkg --add-architecture i386 && \
    eatmydata apt-get update && \
    eatmydata apt-get dist-upgrade -y && \
    eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
    eatmydata apt-get install --no-install-recommends -y \
                      gcc-i686-linux-gnu \
                      libaio-dev:i386 \
                      libasan6:i386 \
                      libasound2-dev:i386 \
                      libattr1-dev:i386 \
                      libbpf-dev:i386 \
                      libbrlapi-dev:i386 \
                      libbz2-dev:i386 \
                      libc6-dev:i386 \
                      libcacard-dev:i386 \
                      libcap-ng-dev:i386 \
                      libcapstone-dev:i386 \
                      libcbor-dev:i386 \
                      libcmocka-dev:i386 \
                      libcurl4-gnutls-dev:i386 \
                      libdaxctl-dev:i386 \
                      libdrm-dev:i386 \
                      libepoxy-dev:i386 \
                      libfdt-dev:i386 \
                      libffi-dev:i386 \
                      libfuse3-dev:i386 \
                      libgbm-dev:i386 \
                      libgcrypt20-dev:i386 \
                      libglib2.0-dev:i386 \
                      libglusterfs-dev:i386 \
                      libgnutls28-dev:i386 \
                      libgtk-3-dev:i386 \
                      libibverbs-dev:i386 \
                      libiscsi-dev:i386 \
                      libjemalloc-dev:i386 \
                      libjpeg62-turbo-dev:i386 \
                      libjson-c-dev:i386 \
                      liblttng-ust-dev:i386 \
                      liblzo2-dev:i386 \
                      libncursesw5-dev:i386 \
                      libnfs-dev:i386 \
                      libnuma-dev:i386 \
                      libpam0g-dev:i386 \
                      libpipewire-0.3-dev:i386 \
                      libpixman-1-dev:i386 \
                      libpng-dev:i386 \
                      libpulse-dev:i386 \
                      librbd-dev:i386 \
                      librdmacm-dev:i386 \
                      libsasl2-dev:i386 \
                      libsdl2-dev:i386 \
                      libsdl2-image-dev:i386 \
                      libseccomp-dev:i386 \
                      libselinux1-dev:i386 \
                      libslirp-dev:i386 \
                      libsnappy-dev:i386 \
                      libspice-server-dev:i386 \
                      libssh-gcrypt-dev:i386 \
                      libsystemd-dev:i386 \
                      libtasn1-6-dev:i386 \
                      libubsan1:i386 \
                      libudev-dev:i386 \
                      liburing-dev:i386 \
                      libusb-1.0-0-dev:i386 \
                      libusbredirhost-dev:i386 \
                      libvdeplug-dev:i386 \
                      libvirglrenderer-dev:i386 \
                      libvte-2.91-dev:i386 \
                      libxdp-dev:i386 \
                      libzstd-dev:i386 \
                      nettle-dev:i386 \
                      systemtap-sdt-dev:i386 \
                      zlib1g-dev:i386 && \
    eatmydata apt-get autoremove -y && \
    eatmydata apt-get autoclean -y && \
    mkdir -p /usr/local/share/meson/cross && \
    printf "[binaries]\n\
c = '/usr/bin/i686-linux-gnu-gcc'\n\
ar = '/usr/bin/i686-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/i686-linux-gnu-strip'\n\
pkgconfig = '/usr/bin/i686-linux-gnu-pkg-config'\n\
\n\
[host_machine]\n\
system = 'linux'\n\
cpu_family = 'x86'\n\
cpu = 'i686'\n\
endian = 'little'\n" > /usr/local/share/meson/cross/i686-linux-gnu && \
    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
    mkdir -p /usr/libexec/ccache-wrappers && \
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-cc && \
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-gcc

ENV ABI "i686-linux-gnu"
ENV MESON_OPTS "--cross-file=i686-linux-gnu"
ENV RUST_TARGET "i686-unknown-linux-gnu"
ENV QEMU_CONFIGURE_OPTS --cross-prefix=i686-linux-gnu-
ENV DEF_TARGET_LIST x86_64-softmmu,x86_64-linux-user,i386-softmmu,i386-linux-user
# As a final step configure the user (if env is defined)
ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
  id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
