mirror of
https://github.com/godotengine/build-containers.git
synced 2025-12-31 21:48:41 +03:00
Provides SDKs for iOS 14.0 and macOS 10.15. Mono is patched to fix a regression in Xcode 11.4+, still unfixed by Apple. Another patch is backported from Unity's Mono fork to fix another issue with the macOS 11.0 beta SDK. Fixes missing arguments in Xcode and iOS dockerfiles, seems like some changes were not properly committed during the last refactor.
47 lines
2.5 KiB
Docker
47 lines
2.5 KiB
Docker
ARG img_version
|
|
FROM godot-fedora:${img_version}
|
|
|
|
RUN dnf -y install --setopt=install_weak_deps=False \
|
|
autoconf automake libtool clang cmake fuse fuse-devel libxml2-devel libicu-devel compat-openssl10-devel bzip2-devel kmod cpio && \
|
|
git clone --progress https://github.com/mackyle/xar.git && \
|
|
cd xar/xar && \
|
|
git checkout 66d451dab1ef859dd0c83995f2379335d35e53c9 && \
|
|
./autogen.sh --prefix=/usr && \
|
|
make -j && make install && \
|
|
cd /root && \
|
|
git clone --progress https://github.com/NiklasRosenstein/pbzx && \
|
|
cd pbzx && \
|
|
git checkout 2a4d7c3300c826d918def713a24d25c237c8ed53 && \
|
|
clang -O3 -llzma -lxar -I /usr/local/include pbzx.c -o pbzx
|
|
|
|
CMD mkdir -p /root/xcode && \
|
|
cd /root/xcode && \
|
|
xar -xf /root/files/Xcode_12.0.1.xip && \
|
|
/root/pbzx/pbzx -n Content | cpio -i && \
|
|
export OSX_SDK=MacOSX10.15.sdk && \
|
|
cp -r Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk /tmp/${OSX_SDK} && \
|
|
mkdir -p /tmp/${OSX_SDK}/usr/include/c++ && \
|
|
cp -r Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1 /tmp/${OSX_SDK}/usr/include/c++/ && \
|
|
mkdir -p mkdir -p /tmp/${OSX_SDK}/usr/share/man && \
|
|
cp -rf Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/share/man/man1 \
|
|
Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/share/man/man3 \
|
|
Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/share/man/man5 /tmp/${OSX_SDK}/usr/share/man/ && \
|
|
cd /tmp && \
|
|
tar -cJf /root/files/${OSX_SDK}.tar.xz ${OSX_SDK} && \
|
|
rm -rf ${OSX_SDK} && \
|
|
cd /root/xcode && \
|
|
export IOS_SDK=iPhoneOS14.0.sdk && \
|
|
cp -r Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk /tmp/${IOS_SDK} && \
|
|
mkdir -p /tmp/${IOS_SDK}/usr/include/c++ && \
|
|
cp -r Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1 /tmp/${IOS_SDK}/usr/include/c++/ && \
|
|
cd /tmp && \
|
|
tar -cJf /root/files/${IOS_SDK}.tar.xz ${IOS_SDK} && \
|
|
rm -rf ${IOS_SDK} && \
|
|
cd /root/xcode && \
|
|
cp -r Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk /tmp/${IOS_SDK} && \
|
|
mkdir -p /tmp/${IOS_SDK}/usr/include/c++ && \
|
|
cp -r Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1 /tmp/${IOS_SDK}/usr/include/c++/ && \
|
|
cd /tmp && \
|
|
tar -cJf /root/files/iPhoneSimulator14.0.sdk.tar.xz ${IOS_SDK} && \
|
|
rm -rf ${IOS_SDK}
|