summaryrefslogtreecommitdiff
path: root/Dockerfile
diff options
context:
space:
mode:
authorDavid Chavez <david@dcvz.io>2022-08-02 16:22:20 +0200
committerGitHub <noreply@github.com>2022-08-02 16:22:20 +0200
commit61c68666d622bddf1c8964cb3160ce5d0198af74 (patch)
tree9dfa9e03a168ce60373b77e6f455ec469c6acd45 /Dockerfile
parent4ed82c71dc9e24748cb06a6c70f4d52e87372ecc (diff)
Closer align Makefiles & Dockerfiles (#748)
Diffstat (limited to 'Dockerfile')
-rw-r--r--Dockerfile81
1 files changed, 46 insertions, 35 deletions
diff --git a/Dockerfile b/Dockerfile
index 279674229..bf7d49ad5 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -3,45 +3,56 @@ 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 \
- patchelf \
- p7zip-full \
- python3.9 \
- make \
- cmake \
- curl \
- git \
- lld \
- libsdl2-dev \
- zlib1g-dev \
- libbz2-dev \
- libpng-dev \
- libgles2-mesa-dev && \
- ln -s /usr/bin/g++-10 /usr/bin/g++ && \
- update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 10 && \
- gcc --version && \
- g++ --version
-
-RUN apt-get clean autoclean && apt-get autoremove --yes && rm -rf /var/lib/apt /var/lib/cache /var/lib/log
-
+ apt-get upgrade -y && \
+ apt-get install -y \
+ binutils \
+ gcc-${GCCVER} \
+ g++-${GCCVER} \
+ p7zip-full \
+ python3 \
+ make \
+ cmake \
+ curl \
+ git \
+ lld \
+ wget \
+ libglew-dev \
+ 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
-
+ 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 --prefix=/usr && \
- make && make install && \
- rm ../SDL2-${SDL2VER}.tar.gz && \
- cp -av /lib/libSDL* /lib/x86_64-linux-gnu/
+ 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
+
+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