Skip to content

Commit

Permalink
Merge pull request #104 from godotengine/f36-mono-6.12.0.178
Browse files Browse the repository at this point in the history
Upgrade to Fedora 36 and Mono 6.12.0.178, newer toolchains
  • Loading branch information
akien-mga authored May 12, 2022
2 parents b3a5c3b + 36e4d7c commit 232fa5d
Show file tree
Hide file tree
Showing 7 changed files with 16 additions and 13 deletions.
4 changes: 2 additions & 2 deletions Dockerfile.base
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
FROM fedora:34
FROM fedora:36

WORKDIR /root

RUN dnf -y upgrade --setopt=install_weak_deps=False && \
dnf -y install --setopt=install_weak_deps=False \
bash bzip2 curl file findutils git make nano patch pkgconfig python3-pip unzip which xz && \
pip install scons==4.1.0
pip install scons==4.3.0

CMD /bin/bash
3 changes: 2 additions & 1 deletion Dockerfile.export
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ ARG img_version
FROM godot-fedora:${img_version}

RUN dnf -y install --setopt=install_weak_deps=False \
xorg-x11-server-Xvfb mesa-dri-drivers libXcursor libXinerama libXrandr libXi alsa-lib pulseaudio-libs java-1.8.0-openjdk-devel
xorg-x11-server-Xvfb libXcursor libXinerama libXrandr libXi \
alsa-lib pulseaudio-libs mesa-dri-drivers java-11-openjdk-devel

CMD /bin/bash
6 changes: 3 additions & 3 deletions Dockerfile.ios
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ RUN dnf -y install --setopt=install_weak_deps=False \
automake autoconf clang gcc gcc-c++ gcc-objc gcc-objc++ cmake libicu-devel libtool libxml2-devel llvm-devel openssl-devel perl python yasm && \
git clone --progress https://github.com/tpoechtrager/cctools-port.git && \
cd /root/cctools-port && \
git checkout 236a426c1205a3bfcf0dbb2e2faf2296f0a100e5 && \
git checkout 04663295d0425abfac90a42440a7ec02d7155fea && \
# arm64 device
usage_examples/ios_toolchain/build.sh /root/files/iPhoneOS${IOS_SDK}.sdk.tar.xz arm64 && \
mkdir -p /root/ioscross/arm64 && \
Expand Down Expand Up @@ -52,7 +52,7 @@ RUN if [ -z "${mono_version}" ]; then echo -e "\n\nargument mono-version is mand
--ios-toolchain ${IOSCROSS_ROOT}/x86_64_sim --ios-sdk ${IOSCROSS_ROOT}/x86_64_sim/SDK/iPhoneOS${IOS_SDK}.sdk && \
python3 ios.py make -j --target=x86_64 && \
python3 bcl.py make -j --product=ios && \
# TODO: Emable once godot-mono-builds supports osxcross for the cross-compiler.
# TODO: Enable once godot-mono-builds supports osxcross for the cross-compiler.
# It requires having a build of libclang with support for iOS arm64 + changes to the build scripts.
#python3 ios.py configure -j --target=cross-arm64 --ios-toolchain ${IOSCROSS_ROOT}/arm64 --ios-sdk ${IOSCROSS_ROOT}/arm64/SDK/iPhoneOS${IOS_SDK}.sdk --osx-toolchain ${OSXCROSS_ROOT} && \
#python3 ios.py make -j --target=cross-arm64 && \
Expand All @@ -61,7 +61,7 @@ RUN if [ -z "${mono_version}" ]; then echo -e "\n\nargument mono-version is mand

# Until we can build the cross-compiler, we include a pre-made build in the container.
RUN mkdir -p /root/aot-compilers/iphone-arm64 && \
curl -LO https://github.com/godotengine/godot-mono-builds/releases/download/release-c3a9d31/ios-cross-arm64.zip && \
curl -LO https://github.com/godotengine/godot-mono-builds/releases/download/release-c865201/ios-cross-arm64.zip && \
dnf -y install --setopt=install_weak_deps=False p7zip && \
7za e ios-cross-arm64.zip ios-cross-arm64-release/bin/aarch64-apple-darwin-mono-sgen -o/root/aot-compilers/iphone-arm64 && \
rm ios-cross-arm64.zip
Expand Down
6 changes: 4 additions & 2 deletions Dockerfile.javascript
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,14 @@ FROM godot-mono:${img_version}

ARG mono_version

ENV EMSCRIPTEN_CLASSICAL=2.0.25
ENV EMSCRIPTEN_CLASSICAL=3.1.10
ENV EMSCRIPTEN_MONO=1.39.9

RUN if [ -z "${mono_version}" ]; then printf "\n\nArgument mono_version is mandatory!\n\n"; exit 1; fi && \
# We need to downgrade to autoconf 2.69 from F35 as autoconf 2.71 from F36 breaks `--host wasm32`.
dnf -y install --setopt=install_weak_deps=False \
java-openjdk && \
https://kojipkgs.fedoraproject.org//packages/autoconf/2.69/37.fc35/noarch/autoconf-2.69-37.fc35.noarch.rpm \
https://kojipkgs.fedoraproject.org//packages/automake/1.16.2/5.fc35/noarch/automake-1.16.2-5.fc35.noarch.rpm && \
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} && \
Expand Down
3 changes: 2 additions & 1 deletion Dockerfile.mono-glue
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ FROM godot-mono:${img_version}
ARG mono_version

RUN dnf -y install --setopt=install_weak_deps=False \
xorg-x11-server-Xvfb libX11-devel libXcursor-devel libXrandr-devel libXinerama-devel libXi-devel alsa-lib-devel pulseaudio-libs-devel libudev-devel mesa-libGL-devel mesa-libGLU-devel mesa-dri-drivers
xorg-x11-server-Xvfb libX11-devel libXcursor-devel libXrandr-devel libXinerama-devel libXi-devel \
alsa-lib-devel pulseaudio-libs-devel libudev-devel mesa-libGL-devel mesa-libGLU-devel mesa-dri-drivers

CMD /bin/bash
3 changes: 2 additions & 1 deletion Dockerfile.osx
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,9 @@ RUN if [ -z "${mono_version}" ]; then echo -e "\n\nargument mono-version is mand
automake autoconf bzip2-devel clang libicu-devel libtool libxml2-devel llvm-devel openssl-devel yasm && \
git clone --progress https://github.com/tpoechtrager/osxcross.git && \
cd /root/osxcross && \
git checkout 0f87f567dfaf98460244471ad6c0f4311d62079c && \
git checkout 610542781e0eabc6968b0c0719bbc8d25c992025 && \
ln -s /root/files/MacOSX11.1.sdk.tar.xz /root/osxcross/tarballs && \
sed -i build_compiler_rt.sh -e "s@BRANCH=main@BRANCH=release/14.x@g" && \
UNATTENDED=1 ./build.sh && \
./build_compiler_rt.sh

Expand Down
4 changes: 1 addition & 3 deletions build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -89,10 +89,8 @@ if [ ! -e ${mono_root} ]; then
# Set up godot-mono-builds in tree
git clone --progress https://github.com/godotengine/godot-mono-builds
pushd godot-mono-builds
git checkout 0d72e71a50f2b76f10cd348a3bbb6ed81209b5e4
git checkout c865201ebaa29135e6e72787d46ba464f39e2a15
export MONO_SOURCE_ROOT=${mono_root}
# Fix https://github.com/godotengine/build-containers/issues/95
git revert --no-commit f63f4e2e440197048646094b9d62a9f80eb88b0b
python3 patch_mono.py
popd
popd
Expand Down

0 comments on commit 232fa5d

Please sign in to comment.