build-environments/linux-fresh-arm64/Dockerfile

97 lines
2.2 KiB
Text
Raw Normal View History

2022-11-20 16:50:57 +00:00
FROM ubuntu:22.04
LABEL maintainer="yuzu"
ENV CMAKE_VER=3.22.6
ENV DEBIAN_FRONTEND=noninteractive
ENV GCC_VER=11.2.0
ENV QT_PKG_VER=515
ENV QT_VER=5.15.3
ENV UBUNTU_VER=jammy
# Create a user account yuzu (UID 1027) that the container will run as
RUN useradd -m -u 1027 -s /bin/bash yuzu && \
apt-get update && apt-get -y full-upgrade && \
apt-get install --no-install-recommends -y \
appstream \
autoconf \
automake \
build-essential \
ccache \
desktop-file-utils \
file \
gpg-agent \
libfile-mimeinfo-perl \
libglu1-mesa-dev \
libpulse-dev \
libssl-dev \
libtool \
libudev-dev \
libva-dev \
libwayland-dev \
libzip-dev \
mesa-common-dev \
nasm \
ninja-build \
patchelf \
pkg-config \
software-properties-common \
unzip \
wget \
zlib1g-dev \
zsync \
# vcpkg requirements
curl \
zip \
&& \
apt-get update -y && \
apt-get install --no-install-recommends -y \
cmake \
git \
glslang-dev \
glslang-tools \
libhidapi-dev \
qtbase5-dev \
qtbase5-private-dev \
qttools5-dev \
qtwayland5 \
qtmultimedia5-dev \
qtwebengine5-dev && \
dpkg-reconfigure ccache && \
apt-get clean autoclean && \
apt-get autoremove --yes && \
rm -rf /var/lib/apt /var/lib/dpkg /var/lib/cache /var/lib/log
# Tell CMake to use vcpkg when looking for packages
ENV VCPKG_TOOLCHAIN_FILE=/home/yuzu/vcpkg/scripts/buildsystems/vcpkg.cmake
ENV VCPKG_FORCE_SYSTEM_BINARIES=1
USER 1027
# Install vcpkg and required dependencies for yuzu
RUN cd /home/yuzu &&\
git clone --depth 1 https://github.com/Microsoft/vcpkg.git &&\
cd vcpkg &&\
./bootstrap-vcpkg.sh &&\
./vcpkg install \
boost-algorithm \
boost-asio \
boost-bind \
boost-config \
boost-container \
boost-context \
boost-crc \
boost-functional \
boost-icl \
boost-intrusive \
boost-mpl \
boost-process \
boost-range \
boost-spirit \
boost-test \
boost-timer \
boost-variant \
fmt \
lz4 \
nlohmann-json \
zlib \
zstd