forked from mirrors/0ad
Add Debian 12 Dockerfile
Debian 12 (bookworm) will soon be oldstable. Most importantly this version comes with cmake-3.25, which will allow us to use SDL3, cpp-httplib, fcollada fork and possibly others in the future. This also comes with gcc-12 and clang-14 by default, both implementing almost all of c++17 and most of c++20. Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
# Debian 12
|
||||
FROM debian:bookworm-slim
|
||||
|
||||
# 0 A.D. dependencies.
|
||||
# Unlike gcc/g++ clang only has a single package for both C/C++
|
||||
# gcc/g++ versions: 11 12(default)
|
||||
# clang versions: 13 14(default) 15 16 19
|
||||
# lld for use with clang
|
||||
# llvm for objdump (spidermonkey)
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
ARG DEBCONF_NOWARNINGS="yes"
|
||||
RUN apt-get -qqy update \
|
||||
&& apt-get upgrade -qqy \
|
||||
&& apt-get install -qqy --no-install-recommends \
|
||||
clang \
|
||||
clang-14 \
|
||||
cmake \
|
||||
curl \
|
||||
g++ \
|
||||
g++-12 \
|
||||
gcc \
|
||||
gcc-12 \
|
||||
libboost-filesystem-dev \
|
||||
libboost-system-dev \
|
||||
libcurl4-gnutls-dev \
|
||||
libenet-dev \
|
||||
libfmt-dev \
|
||||
libfreetype-dev \
|
||||
libgloox-dev \
|
||||
libicu-dev \
|
||||
libminiupnpc-dev \
|
||||
libogg-dev \
|
||||
libopenal-dev \
|
||||
libpng-dev \
|
||||
libsdl2-dev \
|
||||
libsodium-dev \
|
||||
libvorbis-dev \
|
||||
libwxgtk3.2-dev \
|
||||
libxml2-dev \
|
||||
lld-14 \
|
||||
llvm \
|
||||
llvm-14 \
|
||||
m4 \
|
||||
make \
|
||||
patch \
|
||||
python-is-python3 \
|
||||
python3-dev \
|
||||
python3-pip \
|
||||
subversion \
|
||||
xz-utils \
|
||||
zlib1g-dev \
|
||||
&& apt-get clean
|
||||
|
||||
# Install rust and Cargo via rustup, available in Debian12 1.63, need 1.66
|
||||
ENV RUSTUP_HOME=/usr/local/rust
|
||||
ENV CARGO_HOME=/usr/local/rust
|
||||
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain 1.66.0 -y
|
||||
|
||||
ENV PATH="${RUSTUP_HOME}/bin:${PATH}"
|
||||
ENV SHELL=/bin/bash
|
||||
Reference in New Issue
Block a user