FROM ubuntu:20.04 as build ENV LANG C.UTF-8 ARG DEBIAN_FRONTEND=noninteractive ENV GCCVER=10 RUN apt-get update && \ apt-get upgrade -y && \ apt-get install -y \ binutils \ gcc-${GCCVER} \ g++-${GCCVER} \ patchelf \ p7zip-full \ python3 \ cmake \ make \ curl \ git \ lld \ libsdl2-dev \ zlib1g-dev \ libbz2-dev \ libpng-dev \ libgles2-mesa-dev \ wget \ gpg \ imagemagick \ ninja-build && \ apt-get install -y software-properties-common && \ wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | tee /etc/apt/trusted.gpg.d/kitware.gpg >/dev/null && \ apt-add-repository "deb https://apt.kitware.com/ubuntu/ focal main" && \ apt-get update && \ apt-get upgrade -y && \ update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${GCCVER} 10 && \ update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-${GCCVER} 10 RUN git clone https://github.com/Perlmint/glew-cmake.git && \ cmake glew-cmake && \ make -j$(nproc) && \ make install ENV SDL2VER=2.0.22 RUN curl -sLO https://libsdl.org/release/SDL2-${SDL2VER}.tar.gz && \ tar -xzf SDL2-${SDL2VER}.tar.gz && \ cd SDL2-${SDL2VER} && \ ./configure --build=x86_64-linux-gnu && \ make -j$(nproc) && make install && \ rm ../SDL2-${SDL2VER}.tar.gz && \ cp -av /usr/local/lib/libSDL* /lib/x86_64-linux-gnu/ ENV SDL2NETVER=2.2.0 RUN curl -sLO https://www.libsdl.org/projects/SDL_net/release/SDL2_net-${SDL2NETVER}.tar.gz && \ tar -xzf SDL2_net-${SDL2NETVER}.tar.gz && \ cd SDL2_net-${SDL2NETVER} && \ ./configure --build=x86_64-linux-gnu && \ make -j$(nproc) && make install && \ rm ../SDL2_net-${SDL2NETVER}.tar.gz && \ cp -av /usr/local/lib/libSDL* /lib/x86_64-linux-gnu/ RUN \ ln -sf /proc/self/mounts /etc/mtab && \ mkdir -p /usr/local/share/keyring/ && \ wget -O /usr/local/share/keyring/devkitpro-pub.gpg https://apt.devkitpro.org/devkitpro-pub.gpg && \ echo "deb [signed-by=/usr/local/share/keyring/devkitpro-pub.gpg] https://apt.devkitpro.org stable main" > /etc/apt/sources.list.d/devkitpro.list && \ apt-get update -y && \ apt-get install -y devkitpro-pacman && \ yes | dkp-pacman -Syu switch-dev switch-portlibs wiiu-dev wiiu-portlibs --noconfirm ENV DEVKITPRO=/opt/devkitpro ENV DEVKITARM=/opt/devkitpro/devkitARM ENV DEVKITPPC=/opt/devkitpro/devkitPPC ENV PATH=$PATH:/opt/devkitpro/portlibs/switch/bin/:$DEVKITPPC/bin ENV WUT_ROOT=$DEVKITPRO/wut RUN mkdir /soh WORKDIR /soh