serenity/Toolchain/Dockerfile
Jelle Raaijmakers 8292061f53 Toolchain: Remove git clone of project from Dockerfile
The goal of these more recent additions to the Dockerfile is to provide
a working copy of SerenityOS with the toolchain prebuilt. To me, these
additions feel misplaced:

- The toolchain is built assuming the i686 architecture, which may not
  be what you want.
- You get a shallow clone of the project limiting you in your abilities
  to navigate through the project's history or bisect.
- There's this awkward directory structure of `/serenity/serenity-git`
  and `/serenity/out`.

The Dockerfile is immensely useful for building SerenityOS in a
containerized environment, separate from the host's environment. If we
want to automate builds, we can always use CI or extend this image to
do so. For now, let's remove the `git clone` and associated actions.

Fixes #9310.
2021-11-20 21:16:51 +00:00

32 lines
714 B
Docker

FROM ubuntu:21.10
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update -y \
&& apt-get install -y \
build-essential \
ccache \
cmake \
curl \
g++-10 \
gcc-10 \
e2fsprogs \
genext2fs \
git \
imagemagick \
libgmp-dev \
libgtk-3-dev \
libmpc-dev \
libmpfr-dev \
libpixman-1-dev \
libsdl2-dev \
libspice-server-dev \
ninja-build \
qemu-utils \
rsync \
sudo \
tzdata \
unzip \
&& rm -rf /var/lib/apt/lists/ \
&& update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 900 --slave /usr/bin/g++ g++ /usr/bin/g++-10