From 1c5cf55dadf499bc8e941157ac63a9ac0798dbf1 Mon Sep 17 00:00:00 2001 From: Romain Malmain Date: Sat, 6 Apr 2024 22:06:03 +0200 Subject: [PATCH] wip dockerfile --- Dockerfile | 43 ++++++++++++++++++++----------------------- 1 file changed, 20 insertions(+), 23 deletions(-) diff --git a/Dockerfile b/Dockerfile index 55f5495903..03b082c43c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,47 +1,44 @@ # prepare machine FROM ubuntu:22.04 as builder -RUN apt update -RUN apt install -y \ +RUN apt update && apt install -y \ ninja-build \ libglib2.0-dev \ llvm \ git \ python3 \ - python3-pip - -# -FROM builder as symqemu + python3-pip \ + cmake \ + wget \ + lsb-release \ + software-properties-common \ + gnupg \ + z3 \ + libz3-dev \ + libz3-dev \ + libzstd-dev \ + llvm-15 \ + clang-15 + +RUN pip install --user meson COPY . /symqemu_source WORKDIR /symqemu_source -# Meson gives an error if symcc is in a subdirectory of symqemu -RUN mv /symqemu_source/symcc /symcc - -# The only symcc artifact needed by symqemu is libSymRuntime.so -# Instead of compiling symcc in this image, we rely on the existing symcc docker image and -# we just copy libSymRuntime.so at the location where symqemu expects it -COPY --from=symcc /symcc_build/SymRuntime-prefix/src/SymRuntime-build/libSymRuntime.so /symcc/build/SymRuntime-prefix/src/SymRuntime-build/libSymRuntime.so - -RUN ./configure \ +RUN mkdir build && cd build && ../configure \ --audio-drv-list= \ --disable-sdl \ --disable-gtk \ --disable-vte \ --disable-opengl \ --disable-virglrenderer \ - --disable-werror \ - --target-list=x86_64-linux-user,riscv64-linux-user \ + --target-list=x86_64-linux-user,riscv64-linux-user \ --enable-debug \ - --symcc-source=/symcc \ - --symcc-build=/symcc/build \ - --enable-debug-tcg \ - --enable-werror + --enable-debug-tcg -RUN make -j +RUN cd build && ninja -RUN make check +RUN cd build && ninja check WORKDIR /symqemu_source/tests/symqemu RUN python3 -m unittest test.py