summaryrefslogblamecommitdiffstats
path: root/tests/docker/dockerfiles/debian-ppc64el-cross.docker
blob: c641fd5d0e04be2f1db08ccb334a725358d3bf11 (plain) (tree)
1
2
3
4
5
6
7
8
                              
 
                                                                   
 


                                       
 



















































                                                              
 




                                                     
 


















                                                                      
                                   

















                                         
                                   

























































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

FROM docker.io/library/debian:11-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 \
            bsdextrautils \
            bzip2 \
            ca-certificates \
            ccache \
            dbus \
            debianutils \
            diffutils \
            exuberant-ctags \
            findutils \
            gcovr \
            genisoimage \
            gettext \
            git \
            hostname \
            libpcre2-dev \
            libspice-protocol-dev \
            llvm \
            locales \
            make \
            meson \
            ncat \
            ninja-build \
            openssh-client \
            perl-base \
            pkgconf \
            python3 \
            python3-numpy \
            python3-opencv \
            python3-pillow \
            python3-pip \
            python3-sphinx \
            python3-sphinx-rtd-theme \
            python3-venv \
            python3-yaml \
            rpm2cpio \
            sed \
            sparse \
            tar \
            tesseract-ocr \
            tesseract-ocr-eng \
            texinfo && \
    eatmydata apt-get autoremove -y && \
    eatmydata apt-get autoclean -y && \
    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
    dpkg-reconfigure locales

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

RUN export DEBIAN_FRONTEND=noninteractive && \
    dpkg --add-architecture ppc64el && \
    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 \
            g++-powerpc64le-linux-gnu \
            gcc-powerpc64le-linux-gnu \
            libaio-dev:ppc64el \
            libasan5:ppc64el \
            libasound2-dev:ppc64el \
            libattr1-dev:ppc64el \
            libbpf-dev:ppc64el \
            libbrlapi-dev:ppc64el \
            libbz2-dev:ppc64el \
            libc6-dev:ppc64el \
            libcacard-dev:ppc64el \
            libcap-ng-dev:ppc64el \
            libcapstone-dev:ppc64el \
            libcmocka-dev:ppc64el \
            libcurl4-gnutls-dev:ppc64el \
            libdaxctl-dev:ppc64el \
            libdrm-dev:ppc64el \
            libepoxy-dev:ppc64el \
            libfdt-dev:ppc64el \
            libffi-dev:ppc64el \
            libfuse3-dev:ppc64el \
            libgbm-dev:ppc64el \
            libgcrypt20-dev:ppc64el \
            libglib2.0-dev:ppc64el \
            libglusterfs-dev:ppc64el \
            libgnutls28-dev:ppc64el \
            libgtk-3-dev:ppc64el \
            libibumad-dev:ppc64el \
            libibverbs-dev:ppc64el \
            libiscsi-dev:ppc64el \
            libjemalloc-dev:ppc64el \
            libjpeg62-turbo-dev:ppc64el \
            libjson-c-dev:ppc64el \
            liblttng-ust-dev:ppc64el \
            liblzo2-dev:ppc64el \
            libncursesw5-dev:ppc64el \
            libnfs-dev:ppc64el \
            libnuma-dev:ppc64el \
            libpam0g-dev:ppc64el \
            libpixman-1-dev:ppc64el \
            libpng-dev:ppc64el \
            libpulse-dev:ppc64el \
            librbd-dev:ppc64el \
            librdmacm-dev:ppc64el \
            libsasl2-dev:ppc64el \
            libsdl2-dev:ppc64el \
            libsdl2-image-dev:ppc64el \
            libseccomp-dev:ppc64el \
            libselinux1-dev:ppc64el \
            libslirp-dev:ppc64el \
            libsnappy-dev:ppc64el \
            libspice-server-dev:ppc64el \
            libssh-gcrypt-dev:ppc64el \
            libsystemd-dev:ppc64el \
            libtasn1-6-dev:ppc64el \
            libubsan1:ppc64el \
            libudev-dev:ppc64el \
            liburing-dev:ppc64el \
            libusb-1.0-0-dev:ppc64el \
            libusbredirhost-dev:ppc64el \
            libvdeplug-dev:ppc64el \
            libvirglrenderer-dev:ppc64el \
            libvte-2.91-dev:ppc64el \
            libzstd-dev:ppc64el \
            nettle-dev:ppc64el \
            systemtap-sdt-dev:ppc64el \
            xfslibs-dev:ppc64el \
            zlib1g-dev:ppc64el && \
    eatmydata apt-get autoremove -y && \
    eatmydata apt-get autoclean -y && \
    mkdir -p /usr/local/share/meson/cross && \
    echo "[binaries]\n\
c = '/usr/bin/powerpc64le-linux-gnu-gcc'\n\
ar = '/usr/bin/powerpc64le-linux-gnu-gcc-ar'\n\
strip = '/usr/bin/powerpc64le-linux-gnu-strip'\n\
pkgconfig = '/usr/bin/powerpc64le-linux-gnu-pkg-config'\n\
\n\
[host_machine]\n\
system = 'linux'\n\
cpu_family = 'ppc64'\n\
cpu = 'powerpc64le'\n\
endian = 'little'" > /usr/local/share/meson/cross/powerpc64le-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/powerpc64le-linux-gnu-c++ && \
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-cc && \
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-g++ && \
    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-gcc

ENV ABI "powerpc64le-linux-gnu"
ENV MESON_OPTS "--cross-file=powerpc64le-linux-gnu"
ENV QEMU_CONFIGURE_OPTS --cross-prefix=powerpc64le-linux-gnu-
ENV DEF_TARGET_LIST ppc64-softmmu,ppc64-linux-user