diff --git a/build/jenkins/dockerfiles/debian-12.Dockerfile b/build/jenkins/dockerfiles/debian-12.Dockerfile new file mode 100644 index 0000000000..21bd2ff12e --- /dev/null +++ b/build/jenkins/dockerfiles/debian-12.Dockerfile @@ -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