Since the meson build system rework, the configure script prefers the git submodules over the system libraries. So we are testing compilation with capstone, fdt and libslirp as a submodule all over the place, burning CPU cycles by recompiling these third party modules and wasting some network bandwidth in the CI by cloning the submodules each time. Let's stop doing that in at least a couple of jobs and use the system libraries instead. While we're at it, also install meson in the Fedora container, since it is new enough already, so we do not need to check out the meson submodule here. Message-Id: <20210121174451.658924-1-thuth@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
60 lines
1.8 KiB
Docker
60 lines
1.8 KiB
Docker
#
|
|
# Docker x86_64 target
|
|
#
|
|
# This docker target builds on the Debian Buster base image. Further
|
|
# libraries which are not widely available are installed by hand.
|
|
#
|
|
FROM qemu/debian10
|
|
MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
|
|
|
|
RUN apt update && \
|
|
DEBIAN_FRONTEND=noninteractive eatmydata \
|
|
apt build-dep -yy qemu
|
|
|
|
RUN apt update && \
|
|
DEBIAN_FRONTEND=noninteractive eatmydata \
|
|
apt install -y --no-install-recommends \
|
|
cscope \
|
|
genisoimage \
|
|
exuberant-ctags \
|
|
global \
|
|
libbz2-dev \
|
|
liblzo2-dev \
|
|
libgcrypt20-dev \
|
|
libfdt-dev \
|
|
librdmacm-dev \
|
|
libsasl2-dev \
|
|
libsnappy-dev \
|
|
libvte-dev \
|
|
netcat-openbsd \
|
|
openssh-client \
|
|
python3-numpy \
|
|
python3-opencv \
|
|
python3-venv
|
|
|
|
# virgl
|
|
RUN apt update && \
|
|
DEBIAN_FRONTEND=noninteractive eatmydata \
|
|
apt install -y --no-install-recommends \
|
|
libegl1-mesa-dev \
|
|
libepoxy-dev \
|
|
libgbm-dev
|
|
RUN git clone https://gitlab.freedesktop.org/virgl/virglrenderer.git /usr/src/virglrenderer && \
|
|
cd /usr/src/virglrenderer && git checkout virglrenderer-0.8.0
|
|
RUN cd /usr/src/virglrenderer && ./autogen.sh && ./configure --disable-tests && make install
|
|
|
|
# netmap
|
|
RUN apt update && \
|
|
DEBIAN_FRONTEND=noninteractive eatmydata \
|
|
apt install -y --no-install-recommends \
|
|
linux-headers-amd64
|
|
RUN git clone https://github.com/luigirizzo/netmap.git /usr/src/netmap
|
|
RUN cd /usr/src/netmap && git checkout v11.3
|
|
RUN cd /usr/src/netmap/LINUX && ./configure --no-drivers --no-apps --kernel-dir=$(ls -d /usr/src/linux-headers-*-amd64) && make install
|
|
ENV QEMU_CONFIGURE_OPTS --enable-netmap
|
|
|
|
RUN ldconfig
|
|
|
|
# gcrypt
|
|
ENV QEMU_CONFIGURE_OPTS $QEMU_CONFIGURE_OPTS --enable-gcrypt
|