2020-03-19 20:33:23 +01:00
|
|
|
# syntax=docker/dockerfile:1.0.0-experimental
|
|
|
|
#
|
|
|
|
# Docker setup for running the "Coverity Scan" tools over the source
|
|
|
|
# tree and uploading them to the website, as per
|
|
|
|
# https://scan.coverity.com/projects/qemu/builds/new
|
|
|
|
# We do this on a fixed config (currently Fedora 30 with a known
|
|
|
|
# set of dependencies and a configure command that enables a specific
|
|
|
|
# set of options) so that random changes don't result in our accidentally
|
|
|
|
# dropping some files from the scan.
|
|
|
|
#
|
|
|
|
# We don't build on top of the fedora.docker file because we don't
|
|
|
|
# want to accidentally change or break the scan config when that
|
|
|
|
# is updated.
|
|
|
|
|
|
|
|
# The work of actually doing the build is handled by the
|
|
|
|
# run-coverity-scan script.
|
|
|
|
|
|
|
|
FROM fedora:30
|
|
|
|
ENV PACKAGES \
|
|
|
|
alsa-lib-devel \
|
|
|
|
bc \
|
|
|
|
brlapi-devel \
|
|
|
|
bzip2 \
|
|
|
|
bzip2-devel \
|
|
|
|
ccache \
|
|
|
|
clang \
|
|
|
|
curl \
|
|
|
|
cyrus-sasl-devel \
|
|
|
|
dbus-daemon \
|
|
|
|
device-mapper-multipath-devel \
|
|
|
|
findutils \
|
|
|
|
gcc \
|
|
|
|
gcc-c++ \
|
|
|
|
gettext \
|
|
|
|
git \
|
|
|
|
glib2-devel \
|
|
|
|
glusterfs-api-devel \
|
|
|
|
gnutls-devel \
|
|
|
|
gtk3-devel \
|
|
|
|
hostname \
|
|
|
|
libaio-devel \
|
|
|
|
libasan \
|
|
|
|
libattr-devel \
|
|
|
|
libblockdev-mpath-devel \
|
|
|
|
libcap-devel \
|
|
|
|
libcap-ng-devel \
|
|
|
|
libcurl-devel \
|
|
|
|
libepoxy-devel \
|
|
|
|
libfdt-devel \
|
|
|
|
libgbm-devel \
|
|
|
|
libiscsi-devel \
|
|
|
|
libjpeg-devel \
|
|
|
|
libpmem-devel \
|
|
|
|
libnfs-devel \
|
|
|
|
libpng-devel \
|
|
|
|
librbd-devel \
|
|
|
|
libseccomp-devel \
|
|
|
|
libssh-devel \
|
|
|
|
libubsan \
|
|
|
|
libudev-devel \
|
|
|
|
libusbx-devel \
|
|
|
|
libzstd-devel \
|
|
|
|
llvm \
|
|
|
|
lzo-devel \
|
|
|
|
make \
|
|
|
|
mingw32-bzip2 \
|
|
|
|
mingw32-curl \
|
|
|
|
mingw32-glib2 \
|
|
|
|
mingw32-gmp \
|
|
|
|
mingw32-gnutls \
|
|
|
|
mingw32-gtk3 \
|
|
|
|
mingw32-libjpeg-turbo \
|
|
|
|
mingw32-libpng \
|
|
|
|
mingw32-libtasn1 \
|
|
|
|
mingw32-nettle \
|
|
|
|
mingw32-nsis \
|
|
|
|
mingw32-pixman \
|
|
|
|
mingw32-pkg-config \
|
|
|
|
mingw32-SDL2 \
|
|
|
|
mingw64-bzip2 \
|
|
|
|
mingw64-curl \
|
|
|
|
mingw64-glib2 \
|
|
|
|
mingw64-gmp \
|
|
|
|
mingw64-gnutls \
|
|
|
|
mingw64-gtk3 \
|
|
|
|
mingw64-libjpeg-turbo \
|
|
|
|
mingw64-libpng \
|
|
|
|
mingw64-libtasn1 \
|
|
|
|
mingw64-nettle \
|
|
|
|
mingw64-pixman \
|
|
|
|
mingw64-pkg-config \
|
|
|
|
mingw64-SDL2 \
|
|
|
|
ncurses-devel \
|
|
|
|
nettle-devel \
|
|
|
|
numactl-devel \
|
|
|
|
perl \
|
|
|
|
perl-Test-Harness \
|
|
|
|
pixman-devel \
|
|
|
|
pulseaudio-libs-devel \
|
|
|
|
python3 \
|
|
|
|
python3-sphinx \
|
|
|
|
PyYAML \
|
|
|
|
rdma-core-devel \
|
|
|
|
SDL2-devel \
|
|
|
|
snappy-devel \
|
|
|
|
sparse \
|
|
|
|
spice-server-devel \
|
|
|
|
systemd-devel \
|
|
|
|
systemtap-sdt-devel \
|
|
|
|
tar \
|
|
|
|
usbredir-devel \
|
|
|
|
virglrenderer-devel \
|
|
|
|
vte291-devel \
|
|
|
|
wget \
|
|
|
|
which \
|
|
|
|
xen-devel \
|
|
|
|
xfsprogs-devel \
|
|
|
|
zlib-devel
|
|
|
|
ENV QEMU_CONFIGURE_OPTS --python=/usr/bin/python3
|
|
|
|
|
|
|
|
RUN dnf install -y $PACKAGES
|
|
|
|
RUN rpm -q $PACKAGES | sort > /packages.txt
|
|
|
|
ENV PATH $PATH:/usr/libexec/python3-sphinx/
|
|
|
|
ENV COVERITY_TOOL_BASE=/coverity-tools
|
2020-04-22 17:49:40 +02:00
|
|
|
COPY coverity_tool.tgz coverity_tool.tgz
|
|
|
|
RUN mkdir -p /coverity-tools/coverity_tool && cd /coverity-tools/coverity_tool && tar xf /coverity_tool.tgz
|
2020-03-19 20:33:23 +01:00
|
|
|
COPY run-coverity-scan run-coverity-scan
|