mirror of
https://github.com/godotengine/build-containers.git
synced 2025-12-31 21:48:41 +03:00
- Update base image from Fedora 33 to Fedora 34 (newer GCC, Clang, MinGW and binutils). - Update Emscripten for classical builds from 2.0.15 to 2.0.25. - Update Android SDK tools to latest version, and build-tools from 30.0.1 to 30.0.3. - Update osxcross and ios cctools-port to latest commits. - Update iOS Mono build's min target version to match Godot's buildsystem. See #83 for details.
31 lines
1.3 KiB
JavaScript
31 lines
1.3 KiB
JavaScript
ARG img_version
|
|
FROM godot-mono:${img_version}
|
|
|
|
ARG mono_version
|
|
|
|
ENV EMSCRIPTEN_CLASSICAL=2.0.25
|
|
ENV EMSCRIPTEN_MONO=1.39.9
|
|
|
|
RUN if [ -z "${mono_version}" ]; then printf "\n\nArgument mono_version is mandatory!\n\n"; exit 1; fi && \
|
|
dnf -y install --setopt=install_weak_deps=False \
|
|
java-openjdk && \
|
|
git clone --branch ${EMSCRIPTEN_CLASSICAL} --progress https://github.com/emscripten-core/emsdk emsdk_${EMSCRIPTEN_CLASSICAL} && \
|
|
cp -r emsdk_${EMSCRIPTEN_CLASSICAL} emsdk_${EMSCRIPTEN_MONO} && \
|
|
emsdk_${EMSCRIPTEN_CLASSICAL}/emsdk install ${EMSCRIPTEN_CLASSICAL} && \
|
|
emsdk_${EMSCRIPTEN_CLASSICAL}/emsdk activate ${EMSCRIPTEN_CLASSICAL} && \
|
|
emsdk_${EMSCRIPTEN_MONO}/emsdk install ${EMSCRIPTEN_MONO} && \
|
|
emsdk_${EMSCRIPTEN_MONO}/emsdk activate ${EMSCRIPTEN_MONO} && \
|
|
source /root/emsdk_${EMSCRIPTEN_MONO}/emsdk_env.sh && \
|
|
cp -a /root/files/${mono_version} /root && \
|
|
cd /root/${mono_version} && \
|
|
export MONO_SOURCE_ROOT=/root/${mono_version} && \
|
|
cd /root/${mono_version}/godot-mono-builds && \
|
|
python3 patch_emscripten.py && \
|
|
python3 wasm.py configure -j --target=runtime && \
|
|
python3 wasm.py make -j --target=runtime && \
|
|
python3 bcl.py make -j --product wasm && \
|
|
cd /root && \
|
|
rm -rf /root/${mono_version}
|
|
|
|
CMD /bin/bash
|