[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC PATCH for 2.10 34/35] docker: add debian 'bleeding
From: |
Alex Bennée |
Subject: |
Re: [Qemu-devel] [RFC PATCH for 2.10 34/35] docker: add debian 'bleeding' image with gcc7 and clang5 |
Date: |
Tue, 25 Jul 2017 15:15:07 +0100 |
User-agent: |
mu4e 0.9.19; emacs 25.2.50.3 |
Philippe Mathieu-Daudé <address@hidden> writes:
> Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
> ---
> .../docker/dockerfiles/debian-bleeding-dev.docker | 94
> ++++++++++++++++++++++
> 1 file changed, 94 insertions(+)
> create mode 100644 tests/docker/dockerfiles/debian-bleeding-dev.docker
>
> diff --git a/tests/docker/dockerfiles/debian-bleeding-dev.docker
> b/tests/docker/dockerfiles/debian-bleeding-dev.docker
> new file mode 100644
> index 0000000000..d6ae20692c
> --- /dev/null
> +++ b/tests/docker/dockerfiles/debian-bleeding-dev.docker
> @@ -0,0 +1,94 @@
> +#
> +# Docker x86_64 bleeding image
> +#
> +# This docker target builds on the debian unstable base image. Further
> +# libraries which are not widely available are installed by hand.
> +#
Not for 2.10 please.
> +FROM debian:unstable
> +
> +MAINTAINER Philippe Mathieu-Daudé <address@hidden>
> +
> +RUN echo 'Acquire::ForceIPv4 "true";' >> /etc/apt/apt.conf.d/01network
> +
> +# Duplicate deb line as deb-src
> +RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >>
> /etc/apt/sources.list
> +
> +# Install common build utilities
> +RUN apt-get update && \
> + DEBIAN_FRONTEND=noninteractive apt-get install -yy eatmydata
> +RUN DEBIAN_FRONTEND=noninteractive eatmydata \
> + apt-get install -y --no-install-recommends \
> + bison \
> + build-essential \
> + ca-certificates \
> + ccache \
> + flex \
> + git \
> + less \
> + pkg-config \
> + psmisc \
> + python \
> + texinfo \
> + $(apt-get -s build-dep qemu | egrep ^Inst | fgrep '[all]' | cut -d\
> -f2)
> +
> +RUN DEBIAN_FRONTEND=noninteractive eatmydata \
> + apt-get install -y --no-install-recommends \
> + binutils-multiarch \
> + gdb-multiarch \
> + libnewlib-dev \
> + musl-dev \
> + uclibc-source
> +
> +############################################################################
> +# GCC 7
> +
> +RUN echo deb http://httpredir.debian.org/debian experimental main >> \
> + /etc/apt/sources.list.d/experimental.list && apt-get update
> +RUN DEBIAN_FRONTEND=noninteractive eatmydata \
> + apt-get install -y --no-install-recommends \
> + gcc-7 \
> + gcc-7-cross-base-ports \
> + gcc-7-multilib \
> + g++-7
> +
> +############################################################################
> +# Clang 5
> +
> +RUN DEBIAN_FRONTEND=noninteractive eatmydata \
> + apt-get install -y --no-install-recommends \
> + curl gnupg
> +RUN curl http://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - && \
> + echo 'deb http://apt.llvm.org/unstable/ llvm-toolchain main' \
> + > /etc/apt/sources.list.d/llvm.list && \
> + apt-get update
> +RUN DEBIAN_FRONTEND=noninteractive eatmydata \
> + apt-get install -y --no-install-recommends \
> + clang-5.0 \
> + lldb-5.0 \
> + llvm-5.0 && \
> + test -x /usr/bin/clang || ln -s clang-5.0 /usr/bin/clang
> +
> +############################################################################
> +# QEMU specific starts here
> +
> +RUN DEBIAN_FRONTEND=noninteractive eatmydata \
> + apt-get build-dep -yy qemu
> +
> +RUN DEBIAN_FRONTEND=noninteractive eatmydata \
> + apt-get install -y --no-install-recommends \
> + libbz2-dev \
> + liblzo2-dev \
> + librdmacm-dev \
> + libsnappy-dev \
> + libvte-dev
> +
> +# virgl
> +RUN DEBIAN_FRONTEND=noninteractive eatmydata \
> + apt-get install -y --no-install-recommends \
> + libegl1-mesa-dev \
> + libepoxy-dev \
> + libgbm-dev
> +RUN git clone git://anongit.freedesktop.org/virglrenderer
> /usr/src/virglrenderer
> +RUN cd /usr/src/virglrenderer && ./autogen.sh && ./configure
> --with-glx --disable-tests && make install
There are a lot of moving parts basing this in debian unstable and
compiling extra bleeding edge stuff. What does this buy that the clang
and toolchain builds in Travis don't already cover?
> +
> +ENV QEMU_CONFIGURE_OPTS --host-cc=clang-5.0 --cc=clang-5.0 --cxx=clang++-5.0
--
Alex Bennée
- [Qemu-devel] [PATCH for 2.10 31/35] syscall: replace strcpy() by g_strlcpy(), (continued)
- [Qemu-devel] [PATCH for 2.10 31/35] syscall: replace strcpy() by g_strlcpy(), Philippe Mathieu-Daudé, 2017/07/24
- [Qemu-devel] [PATCH for 2.10 32/35] timer/pxa2xx: silent warning about out-of-bound memory access, Philippe Mathieu-Daudé, 2017/07/24
- [Qemu-devel] [RFC PATCH for 2.10 33/35] configure: clang does not support -Wexpansion-to-defined, Philippe Mathieu-Daudé, 2017/07/24
- [Qemu-devel] [RFC PATCH for 2.10 34/35] docker: add debian 'bleeding' image with gcc7 and clang5, Philippe Mathieu-Daudé, 2017/07/24
- Re: [Qemu-devel] [RFC PATCH for 2.10 34/35] docker: add debian 'bleeding' image with gcc7 and clang5,
Alex Bennée <=
- [Qemu-devel] [RFC PATCH for 2.10 35/35] script to run docker image, Philippe Mathieu-Daudé, 2017/07/24
- Re: [Qemu-devel] [PATCH for 2.10 00/35] fix bugs reported by Clang Static Analyzer, Peter Maydell, 2017/07/24