1# THIS FILE WAS AUTO-GENERATED 2# 3# $ lcitool dockerfile --layers all ubuntu-2004 qemu 4# 5# https://gitlab.com/libvirt/libvirt-ci 6 7FROM docker.io/library/ubuntu:20.04 8 9RUN export DEBIAN_FRONTEND=noninteractive && \ 10 apt-get update && \ 11 apt-get install -y eatmydata && \ 12 eatmydata apt-get dist-upgrade -y && \ 13 eatmydata apt-get install --no-install-recommends -y \ 14 bash \ 15 bc \ 16 bsdmainutils \ 17 bzip2 \ 18 ca-certificates \ 19 ccache \ 20 clang \ 21 dbus \ 22 debianutils \ 23 diffutils \ 24 exuberant-ctags \ 25 findutils \ 26 g++ \ 27 gcc \ 28 gcovr \ 29 genisoimage \ 30 gettext \ 31 git \ 32 hostname \ 33 libaio-dev \ 34 libasan5 \ 35 libasound2-dev \ 36 libattr1-dev \ 37 libbrlapi-dev \ 38 libbz2-dev \ 39 libc6-dev \ 40 libcacard-dev \ 41 libcap-ng-dev \ 42 libcapstone-dev \ 43 libcmocka-dev \ 44 libcurl4-gnutls-dev \ 45 libdaxctl-dev \ 46 libdrm-dev \ 47 libepoxy-dev \ 48 libfdt-dev \ 49 libffi-dev \ 50 libfuse3-dev \ 51 libgbm-dev \ 52 libgcrypt20-dev \ 53 libglib2.0-dev \ 54 libglusterfs-dev \ 55 libgnutls28-dev \ 56 libgtk-3-dev \ 57 libibumad-dev \ 58 libibverbs-dev \ 59 libiscsi-dev \ 60 libjemalloc-dev \ 61 libjpeg-turbo8-dev \ 62 libjson-c-dev \ 63 liblttng-ust-dev \ 64 liblzo2-dev \ 65 libncursesw5-dev \ 66 libnfs-dev \ 67 libnuma-dev \ 68 libpam0g-dev \ 69 libpcre2-dev \ 70 libpixman-1-dev \ 71 libpmem-dev \ 72 libpng-dev \ 73 libpulse-dev \ 74 librbd-dev \ 75 librdmacm-dev \ 76 libsasl2-dev \ 77 libsdl2-dev \ 78 libsdl2-image-dev \ 79 libseccomp-dev \ 80 libselinux1-dev \ 81 libslirp-dev \ 82 libsnappy-dev \ 83 libspice-protocol-dev \ 84 libspice-server-dev \ 85 libssh-dev \ 86 libsystemd-dev \ 87 libtasn1-6-dev \ 88 libubsan1 \ 89 libudev-dev \ 90 libusb-1.0-0-dev \ 91 libusbredirhost-dev \ 92 libvdeplug-dev \ 93 libvirglrenderer-dev \ 94 libvte-2.91-dev \ 95 libxen-dev \ 96 libzstd-dev \ 97 llvm \ 98 locales \ 99 make \ 100 multipath-tools \ 101 ncat \ 102 nettle-dev \ 103 ninja-build \ 104 openssh-client \ 105 perl-base \ 106 pkgconf \ 107 python3 \ 108 python3-numpy \ 109 python3-opencv \ 110 python3-pillow \ 111 python3-pip \ 112 python3-setuptools \ 113 python3-sphinx \ 114 python3-sphinx-rtd-theme \ 115 python3-venv \ 116 python3-wheel \ 117 python3-yaml \ 118 rpm2cpio \ 119 sed \ 120 sparse \ 121 systemtap-sdt-dev \ 122 tar \ 123 tesseract-ocr \ 124 tesseract-ocr-eng \ 125 texinfo \ 126 xfslibs-dev \ 127 zlib1g-dev && \ 128 eatmydata apt-get autoremove -y && \ 129 eatmydata apt-get autoclean -y && \ 130 sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \ 131 dpkg-reconfigure locales && \ 132 dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \ 133 mkdir -p /usr/libexec/ccache-wrappers && \ 134 ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/c++ && \ 135 ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc && \ 136 ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \ 137 ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/g++ && \ 138 ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc 139 140RUN /usr/bin/pip3 install meson==0.56.0 141 142ENV LANG "en_US.UTF-8" 143ENV MAKE "/usr/bin/make" 144ENV NINJA "/usr/bin/ninja" 145ENV PYTHON "/usr/bin/python3" 146ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers" 147# Apply patch https://reviews.llvm.org/D75820 148# This is required for TSan in clang-10 to compile with QEMU. 149RUN sed -i 's/^const/static const/g' /usr/lib/llvm-10/lib/clang/10.0.0/include/sanitizer/tsan_interface.h 150