add ninja to dockerfiles, CI configurations and test VMs
[qemu.git] / tests / docker / dockerfiles / ubuntu2004.docker
1 FROM ubuntu:20.04
2 ENV PACKAGES flex bison \
3     ccache \
4     clang-10\
5     gcc \
6     genisoimage \
7     gettext \
8     git \
9     glusterfs-common \
10     libaio-dev \
11     libattr1-dev \
12     libbrlapi-dev \
13     libbz2-dev \
14     libcacard-dev \
15     libcap-ng-dev \
16     libcurl4-gnutls-dev \
17     libdrm-dev \
18     libepoxy-dev \
19     libfdt-dev \
20     libgbm-dev \
21     libgtk-3-dev \
22     libibverbs-dev \
23     libiscsi-dev \
24     libjemalloc-dev \
25     libjpeg-turbo8-dev \
26     liblzo2-dev \
27     libncurses5-dev \
28     libncursesw5-dev \
29     libnfs-dev \
30     libnss3-dev \
31     libnuma-dev \
32     libpixman-1-dev \
33     librados-dev \
34     librbd-dev \
35     librdmacm-dev \
36     libsasl2-dev \
37     libsdl2-dev \
38     libseccomp-dev \
39     libsnappy-dev \
40     libspice-protocol-dev \
41     libspice-server-dev \
42     libssh-dev \
43     libusb-1.0-0-dev \
44     libusbredirhost-dev \
45     libvdeplug-dev \
46     libvte-2.91-dev \
47     libxen-dev \
48     libzstd-dev \
49     make \
50     ninja-build \
51     python3-numpy \
52     python3-opencv \
53     python3-pil \
54     python3-pip \
55     python3-sphinx \
56     python3-venv \
57     python3-yaml \
58     rpm2cpio \
59     sparse \
60     tesseract-ocr \
61     tesseract-ocr-eng \
62     xfslibs-dev\
63     vim
64 RUN apt-get update && \
65     DEBIAN_FRONTEND=noninteractive apt-get -y install $PACKAGES
66 RUN dpkg -l $PACKAGES | sort > /packages.txt
67 ENV FEATURES clang tsan pyyaml sdl2
68
69 # Apply patch https://reviews.llvm.org/D75820
70 # This is required for TSan in clang-10 to compile with QEMU.
71 RUN sed -i 's/^const/static const/g' /usr/lib/llvm-10/lib/clang/10.0.0/include/sanitizer/tsan_interface.h