summaryrefslogtreecommitdiff
path: root/Dockerfile.switch
diff options
context:
space:
mode:
Diffstat (limited to 'Dockerfile.switch')
-rw-r--r--Dockerfile.switch58
1 files changed, 58 insertions, 0 deletions
diff --git a/Dockerfile.switch b/Dockerfile.switch
new file mode 100644
index 000000000..7319f22a6
--- /dev/null
+++ b/Dockerfile.switch
@@ -0,0 +1,58 @@
+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-10 \
+ g++-10 \
+ p7zip-full \
+ python3 \
+ make \
+ cmake \
+ curl \
+ git \
+ lld \
+ wget \
+ libsdl2-dev \
+ zlib1g-dev \
+ libbz2-dev \
+ libpng-dev \
+ libgles2-mesa-dev && \
+ 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 ARCH64=true
+
+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 && make install && \
+ rm ../SDL2-${SDL2VER}.tar.gz
+
+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 --noconfirm
+
+ENV DEVKITPRO=/opt/devkitpro
+ENV DEVKITARM=/opt/devkitpro/devkitARM
+ENV DEVKITPPC=/opt/devkitpro/devkitPPC
+ENV PATH=$PATH:/opt/devkitpro/portlibs/switch/bin/
+
+RUN mkdir /soh
+WORKDIR /soh