67 lines
No EOL
2 KiB
Docker
67 lines
No EOL
2 KiB
Docker
FROM ubuntu:24.04
|
|
|
|
# Install tools
|
|
RUN apt-get update && apt-get upgrade -y && apt-get install -y \
|
|
build-essential chrpath cmake git \
|
|
file wget zip \
|
|
libpng-dev libxext-dev libgl-dev libboost-all-dev libmpg123-dev \
|
|
libxi-dev libxrender-dev \
|
|
libasound2-dev libpulse-dev
|
|
|
|
# Set user
|
|
RUN useradd -u 1000 -U -o -d /home -M worker
|
|
RUN chown -R worker:worker /home /usr/local
|
|
USER worker
|
|
|
|
# Build sdl2
|
|
RUN mkdir /home/sdl2
|
|
WORKDIR /home/sdl2
|
|
RUN ls -lh /home
|
|
RUN wget https://www.libsdl.org/release/SDL2-2.0.22.tar.gz
|
|
RUN tar xvf SDL2-2.0.22.tar.gz
|
|
RUN mv SDL2-2.0.22 source
|
|
RUN rm SDL2-2.0.22.tar.gz
|
|
COPY sdl2/* ./
|
|
RUN ./make.sh
|
|
RUN rm -r source build options make.sh
|
|
WORKDIR /home
|
|
|
|
# Build sdl2-mixer
|
|
RUN mkdir /home/sdl2-mixer
|
|
WORKDIR /home/sdl2-mixer
|
|
RUN wget https://github.com/libsdl-org/SDL_mixer/archive/refs/tags/release-2.6.1.tar.gz
|
|
RUN tar xvf release-2.6.1.tar.gz
|
|
RUN mv SDL_mixer-release-2.6.1 source
|
|
RUN rm release-2.6.1.tar.gz
|
|
COPY sdl2-mixer/* ./
|
|
RUN ./make.sh
|
|
WORKDIR /home
|
|
RUN rm -r sdl2-mixer
|
|
|
|
# Install blender
|
|
WORKDIR /home
|
|
RUN wget https://download.blender.org/release/Blender3.2/blender-3.2.0-linux-x64.tar.xz
|
|
RUN tar xvf blender-3.2.0-linux-x64.tar.xz
|
|
RUN mv blender-3.2.0-linux-x64 blender
|
|
RUN rm blender-3.2.0-linux-x64.tar.xz
|
|
RUN ln -sv /home/blender/blender /usr/local/bin/blender
|
|
|
|
# Copy system-provided libpng.so
|
|
RUN cp `readlink -f /usr/lib/x86_64-linux-gnu/libpng.so` libpng.so
|
|
RUN mv libpng.so `objdump -p libpng.so | grep SONAME | awk '{print $2}'`
|
|
|
|
# Copy system-provided libmpg123.so
|
|
RUN cp `readlink -f /usr/lib/x86_64-linux-gnu/libmpg123.so` libmpg123.so
|
|
RUN mv libmpg123.so `objdump -p libmpg123.so | grep SONAME | awk '{print $2}'`
|
|
|
|
# Install wgpu-native
|
|
RUN wget https://github.com/gfx-rs/wgpu-native/releases/download/v0.19.4.1/wgpu-linux-x86_64-release.zip
|
|
RUN mkdir -p wgpu-native
|
|
RUN unzip wgpu-*.zip -d wgpu-native
|
|
RUN rm wgpu-*.zip
|
|
RUN mkdir -p wgpu-native/install
|
|
RUN mv wgpu-native/libwgpu_native.a wgpu-native/install
|
|
|
|
# Install toolchain file & main packaging script
|
|
COPY toolchain.cmake .
|
|
COPY package.sh . |