ARG img_version FROM godot-fedora:${img_version} RUN dnf -y install --setopt=install_weak_deps=False \ clang xar xar-devel xz-devel cpio && \ 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 ENV XCODE_SDKV= ENV OSX_SDKV= ENV IOS_SDKV= CMD mkdir -p /root/xcode && \ cd /root/xcode && \ xar -xf /root/files/Xcode_${XCODE_SDKV}.xip && \ /root/pbzx/pbzx -n Content | cpio -i && \ export OSX_SDK=MacOSX${OSX_SDKV}.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=iPhoneOS${IOS_SDKV}.sdk && \ export IOS_SIMULATOR_SDK=iPhoneSimulator${IOS_SDKV}.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/${IOS_SIMULATOR_SDK}.tar.xz ${IOS_SDK} && \ rm -rf ${IOS_SDK}