 32a9d73579
			
		
	
	
		32a9d73579
		
	
	
	
	
		
			
			The Fedora CI and coverity runs are using a slightly different set of packages. Copy most of the content over from tests/docker while keeping the commands at the end that unpack the tools. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Message-Id: <20230331174844.376300-1-pbonzini@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
		
			
				
	
	
		
			168 lines
		
	
	
		
			5.2 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			168 lines
		
	
	
		
			5.2 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
| # 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 registry.fedoraproject.org/fedora:37
 | |
| 
 | |
| RUN dnf install -y nosync && \
 | |
|     echo -e '#!/bin/sh\n\
 | |
| if test -d /usr/lib64\n\
 | |
| then\n\
 | |
|     export LD_PRELOAD=/usr/lib64/nosync/nosync.so\n\
 | |
| else\n\
 | |
|     export LD_PRELOAD=/usr/lib/nosync/nosync.so\n\
 | |
| fi\n\
 | |
| exec "$@"' > /usr/bin/nosync && \
 | |
|     chmod +x /usr/bin/nosync && \
 | |
|     nosync dnf update -y && \
 | |
|     nosync dnf install -y \
 | |
|                SDL2-devel \
 | |
|                SDL2_image-devel \
 | |
|                alsa-lib-devel \
 | |
|                bash \
 | |
|                bc \
 | |
|                bison \
 | |
|                brlapi-devel \
 | |
|                bzip2 \
 | |
|                bzip2-devel \
 | |
|                ca-certificates \
 | |
|                capstone-devel \
 | |
|                ccache \
 | |
|                clang \
 | |
|                ctags \
 | |
|                cyrus-sasl-devel \
 | |
|                daxctl-devel \
 | |
|                dbus-daemon \
 | |
|                device-mapper-multipath-devel \
 | |
|                diffutils \
 | |
|                findutils \
 | |
|                flex \
 | |
|                fuse3-devel \
 | |
|                gcc \
 | |
|                gcc-c++ \
 | |
|                gcovr \
 | |
|                genisoimage \
 | |
|                gettext \
 | |
|                git \
 | |
|                glib2-devel \
 | |
|                glib2-static \
 | |
|                glibc-langpack-en \
 | |
|                glibc-static \
 | |
|                glusterfs-api-devel \
 | |
|                gnutls-devel \
 | |
|                gtk3-devel \
 | |
|                hostname \
 | |
|                jemalloc-devel \
 | |
|                json-c-devel \
 | |
|                libaio-devel \
 | |
|                libasan \
 | |
|                libattr-devel \
 | |
|                libbpf-devel \
 | |
|                libcacard-devel \
 | |
|                libcap-ng-devel \
 | |
|                libcmocka-devel \
 | |
|                libcurl-devel \
 | |
|                libdrm-devel \
 | |
|                libepoxy-devel \
 | |
|                libfdt-devel \
 | |
|                libffi-devel \
 | |
|                libgcrypt-devel \
 | |
|                libiscsi-devel \
 | |
|                libjpeg-devel \
 | |
|                libnfs-devel \
 | |
|                libpmem-devel \
 | |
|                libpng-devel \
 | |
|                librbd-devel \
 | |
|                libseccomp-devel \
 | |
|                libselinux-devel \
 | |
|                libslirp-devel \
 | |
|                libssh-devel \
 | |
|                libtasn1-devel \
 | |
|                libubsan \
 | |
|                liburing-devel \
 | |
|                libusbx-devel \
 | |
|                libzstd-devel \
 | |
|                llvm \
 | |
|                lttng-ust-devel \
 | |
|                lzo-devel \
 | |
|                make \
 | |
|                mesa-libgbm-devel \
 | |
|                meson \
 | |
|                ncurses-devel \
 | |
|                nettle-devel \
 | |
|                ninja-build \
 | |
|                nmap-ncat \
 | |
|                numactl-devel \
 | |
|                openssh-clients \
 | |
|                pam-devel \
 | |
|                pcre-static \
 | |
|                pixman-devel \
 | |
|                pkgconfig \
 | |
|                pulseaudio-libs-devel \
 | |
|                python3 \
 | |
|                python3-PyYAML \
 | |
|                python3-numpy \
 | |
|                python3-opencv \
 | |
|                python3-pillow \
 | |
|                python3-pip \
 | |
|                python3-sphinx \
 | |
|                python3-sphinx_rtd_theme \
 | |
|                rdma-core-devel \
 | |
|                rpm \
 | |
|                sed \
 | |
|                snappy-devel \
 | |
|                socat \
 | |
|                sparse \
 | |
|                spice-protocol \
 | |
|                spice-server-devel \
 | |
|                systemd-devel \
 | |
|                systemtap-sdt-devel \
 | |
|                tar \
 | |
|                tesseract \
 | |
|                tesseract-langpack-eng \
 | |
|                usbredir-devel \
 | |
|                util-linux \
 | |
|                virglrenderer-devel \
 | |
|                vte291-devel \
 | |
|                which \
 | |
|                xen-devel \
 | |
|                xfsprogs-devel \
 | |
|                zlib-devel \
 | |
|                zlib-static \
 | |
|                zstd && \
 | |
|     nosync dnf autoremove -y && \
 | |
|     nosync dnf clean all -y && \
 | |
|     rpm -qa | sort > /packages.txt && \
 | |
|     mkdir -p /usr/libexec/ccache-wrappers && \
 | |
|     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/c++ && \
 | |
|     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc && \
 | |
|     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
 | |
|     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/g++ && \
 | |
|     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 | |
| 
 | |
| 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"
 | |
| ENV QEMU_CONFIGURE_OPTS --meson=internal
 | |
| 
 | |
| RUN dnf install -y curl wget
 | |
| ENV COVERITY_TOOL_BASE=/coverity-tools
 | |
| COPY coverity_tool.tgz coverity_tool.tgz
 | |
| RUN mkdir -p /coverity-tools/coverity_tool && cd /coverity-tools/coverity_tool && tar xf /coverity_tool.tgz
 | |
| COPY run-coverity-scan run-coverity-scan
 |