Initial commit

This commit is contained in:
Hein-Pieter van Braam
2019-01-07 21:51:22 +01:00
commit 0a9d7b2777
19 changed files with 442 additions and 0 deletions

9
.gitignore vendored Normal file
View File

@@ -0,0 +1,9 @@
*.tar
*.tar.gz
*.tar.bz2
*.tar.xz
*.exe
*.swp
*.dmg
*.zip
*.xip

10
Dockerfile.android Normal file
View File

@@ -0,0 +1,10 @@
FROM godot-fedora:latest
RUN dnf -y install scons java-1.8.0-openjdk-devel ncurses-compat-libs unzip which && \
curl -LO https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip && \
unzip sdk-tools-linux-4333796.zip && \
rm sdk-tools-linux-4333796.zip && \
yes | tools/bin/sdkmanager --licenses && \
tools/bin/sdkmanager ndk-bundle 'platforms;android-23' 'build-tools;19.1.0' 'build-tools;28.0.3' 'platforms;android-28'
CMD ['/bin/bash']

5
Dockerfile.base Normal file
View File

@@ -0,0 +1,5 @@
FROM fedora:29
WORKDIR /root
CMD /bin/true

19
Dockerfile.ios Normal file
View File

@@ -0,0 +1,19 @@
FROM godot-fedora:latest
RUN dnf -y install automake autoconf clang gcc gcc-c++ gcc-objc gcc-objc++ cmake git libicu-devel libtool libxml2-devel llvm-devel make openssl-devel patch perl python scons xz && \
git clone https://github.com/tpoechtrager/cctools-port.git && \
cd /root/cctools-port && \
sed -i 's#./autogen.sh#libtoolize -c -i --force\n./autogen.sh#' usage_examples/ios_toolchain/build.sh && \
usage_examples/ios_toolchain/build.sh /root/files/iPhoneOS11.2.sdk.tar.xz arm64 && \
mkdir -p /root/ioscross/arm64 && \
mv usage_examples/ios_toolchain/target/* /root/ioscross/arm64 && \
mkdir /root/ioscross/arm64/usr && \
ln -s /root/ioscross/arm64/bin /root/ioscross/arm64/usr/bin && \
sed -i 's#^TRIPLE=.*#TRIPLE="x86_64-apple-darwin11"#' usage_examples/ios_toolchain/build.sh && \
usage_examples/ios_toolchain/build.sh /root/files/iPhoneSimulator11.2.sdk.tar.xz x86_64 && \
mkdir -p /root/ioscross/x86_64 && \
mv usage_examples/ios_toolchain/target/* /root/ioscross/x86_64 && \
mkdir /root/ioscross/x86_64/usr && \
ln -s /root/ioscross/x86_64/bin /root/ioscross/x86_64/usr/bin
CMD ['/bin/bash']

9
Dockerfile.javascript Normal file
View File

@@ -0,0 +1,9 @@
FROM godot-fedora:latest
RUN dnf -y install scons git xz java-openjdk && dnf clean all && \
git clone https://github.com/juj/emsdk.git && \
cd /root/emsdk && \
/root/emsdk/emsdk install latest && \
/root/emsdk/emsdk activate latest
CMD ['/bin/bash']

18
Dockerfile.mono Normal file
View File

@@ -0,0 +1,18 @@
FROM godot-fedora:latest
ARG mono_version
RUN if [ -z "${mono_version}" ]; then echo -e "\n\nargument mono-version is mandatory!\n\n"; exit 1; fi
RUN dnf -y install cmake gcc gcc-c++ make which perl python curl bzip2 && dnf clean all && \
curl https://download.mono-project.com/sources/mono/mono-${mono_version}.tar.bz2 | tar xj && \
cd mono-${mono_version} && \
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/lib/mono --disable-boehm && make -j && make install && make distclean && \
cd /root && \
rm -rf mono-${mono_version} && \
cert-sync /etc/pki/tls/certs/ca-bundle.crt && \
rpm -ivh --nodeps https://download.mono-project.com/repo/centos7-stable/m/msbuild/msbuild-16.0+xamarinxplat.2018.09.26.17.53-0.xamarin.3.epel7.noarch.rpm \
https://download.mono-project.com/repo/centos7-stable/m/msbuild-libhostfxr/msbuild-libhostfxr-2.0.0.2017.07.06.00.01-0.xamarin.1.epel7.x86_64.rpm \
https://download.mono-project.com/repo/centos7-stable/m/msbuild/msbuild-sdkresolver-16.0+xamarinxplat.2018.09.26.17.53-0.xamarin.3.epel7.noarch.rpm \
https://download.mono-project.com/repo/centos7-stable/n/nuget/nuget-4.7.0.5148.bin-0.xamarin.1.epel7.noarch.rpm

7
Dockerfile.mono-glue Normal file
View File

@@ -0,0 +1,7 @@
ARG mono_version
FROM godot-mono:${mono_version}
ARG mono_version
RUN dnf -y install scons xorg-x11-server-Xvfb pkgconfig libX11-devel libXcursor-devel libXrandr-devel libXinerama-devel libXi-devel mesa-libGL-devel alsa-lib-devel pulseaudio-libs-devel freetype-devel openssl-devel libudev-devel mesa-libGLU-devel mesa-dri-drivers && dnf clean all
CMD ['/bin/bash']

26
Dockerfile.msvc Normal file
View File

@@ -0,0 +1,26 @@
FROM godot-fedora:latest
ENV WINEDEBUG=-all
RUN dnf -y install wine winetricks xorg-x11-server-Xvfb curl p7zip-plugins && dnf clean all && \
curl -LO https://github.com/GodotBuilder/godot-builds/releases/download/_tools/angle.7z && \
curl -LO https://www.python.org/ftp/python/3.7.2/python-3.7.2-amd64.exe && \
xvfb-run sh -c "winetricks -q vcrun2017; wineserver -w" ;\
xvfb-run sh -c "winetricks -q dotnet461; wineserver -w" ;\
xvfb-run sh -c "wine /root/python-3.7.2-amd64.exe /quiet InstallAllUsers=1 PrependPath=1 Include_test=0; wineserver -w" ;\
rm /root/python-3.7.2-amd64.exe && \
wine python -m pip install --upgrade pip ; wineserver -w ; \
wine pip install -U setuptools ; wineserver -w ; \
wine pip install -U wheel ; wineserver -w ; \
wine pip install scons pywin32 ; wineserver -w ; \
cd /root/.wine/drive_c && \
7z x /root/angle.7z && \
rm /root/angle.7z && \
cd "/root/.wine/drive_c/Program Files (x86)" && \
tar xf /root/files/msvc2017.tar && \
cd /root && \
bash /root/files/msvc-fixup.sh && \
find /root/.wine -name vctip.exe -delete && \
rm -rf /root/.wine/drive_c/users/root/Temp/* && \
rm -rf /root/.cache
CMD /usr/bin/bash

49
Dockerfile.osx Normal file
View File

@@ -0,0 +1,49 @@
ARG mono_version
FROM godot-mono:${mono_version}
ARG mono_version
RUN if [ -z "${mono_version}" ]; then echo -e "\n\nargument mono-version is mandatory!\n\n"; exit 1; fi
RUN dnf -y install automake autoconf bzip2-devel clang git libicu-devel libtool libxml2-devel llvm-devel make openssl-devel patch scons xz bzip2 && dnf clean all && \
git clone https://github.com/tpoechtrager/osxcross.git && \
cd /root/osxcross && \
ln -s /root/files/MacOSX10.13.sdk.tar.xz /root/osxcross/tarballs && \
UNATTENDED=1 ./build.sh ;\
cd /root && \
git clone https://github.com/tpoechtrager/apple-libtapi.git && \
cd apple-libtapi && \
INSTALLPREFIX=/root/osxcross/target ./build.sh && ./install.sh && \
cd /root && \
git clone https://github.com/tpoechtrager/cctools-port.git && \
cd cctools-port/cctools/ && \
./configure --prefix=/root/osxcross/target --target=x86_64-apple-darwin17 --with-libtapi=/root/osxcross/target && \
make -j && make install && \
cd /root && \
ln -fs /root/osxcross/target/bin/x86_64-apple-darwin17-install_name_tool /root/osxcross/target/bin/install_name_tool && \
ln -fs /root/osxcross/target/bin/x86_64-apple-darwin17-ar /root/osxcross/target/bin/ar && \
curl https://download.mono-project.com/sources/mono/mono-${mono_version}.tar.bz2 | tar xj && \
cd mono-${mono_version} && \
patch -p1 < /root/files/patches/fix-mono-configure.diff && \
export PATH=/root/osxcross/target/bin:$PATH && \
./autogen.sh --prefix=/root/dependencies/mono \
--build=x86_64-linux-gnu \
--host=x86_64-apple-darwin17 \
--disable-boehm \
--disable-mcs-build \
--with-tls=pthread \
--disable-dtrace \
mono_cv_uscore=yes \
_lt_dar_can_shared=yes \
CC=o64-clang \
CXX=o64-clang++ && \
sed -i 's/^BTLS_CMAKE_ARGS.*/BTLS_CMAKE_ARGS=-DBTLS_ARCH="x86_64" -DAPPLE=1 -DCMAKE_SYSTEM_NAME=Darwin -DCMAKE_AR:FILEPATH=ar/' mono/btls/Makefile && \
make -j && \
make install && \
rm -f /root/dependencies/mono/bin/mono /root/dependencies/mono/bin/mono-sgen && \
ln -s /usr/bin/mono /root/dependencies/mono/bin/mono && \
ln -s /usr/bin/mono-sgen /root/dependencies/mono/bin/mono-sgen && \
ln -sf /usr/lib/mono/* /root/dependencies/mono/lib/mono ;\
cp -rvp /etc/mono /root/dependencies/mono/etc && \
rm -rf /root/mono-${mono_version} /root/apple-libtapi /root/cctools-port
CMD ['/bin/bash']

37
Dockerfile.ubuntu-32 Normal file
View File

@@ -0,0 +1,37 @@
FROM i386/ubuntu:trusty
ARG mono_version
RUN if [ -z "${mono_version}" ]; then echo -e "\n\nargument mono-version is mandatory!\n\n"; exit 1; fi
RUN apt-get update && \
apt-get -y install wget && \
wget -O- 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x1E9377A2BA9EF27F' | apt-key add - && \
echo 'deb http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu trusty main' >> /etc/apt/sources.list && \
apt-get update && \
apt-get install -y gcc-8 g++-8 libudev-dev libx11-dev libxcursor-dev libxrandr-dev libasound2-dev libpulse-dev \
libfreetype6-dev libgl1-mesa-dev libglu1-mesa-dev libxi-dev libxinerama-dev git scons cmake perl make bzip2 && \
wget -O- https://download.mono-project.com/sources/mono/mono-${mono_version}.tar.bz2 | tar xj && \
cd mono-${mono_version} && \
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/lib/mono --disable-boehm --host=i386-linux-gnu CC=gcc-8 CXX=g++-8 && \
make -j && \
make install && \
cert-sync /etc/ssl/certs/ca-certificates.crt && \
wget https://download.mono-project.com/repo/ubuntu/pool/main/m/msbuild/msbuild_16.0+xamarinxplat.2018.09.26.17.53-0xamarin3+ubuntu1404b1_all.deb && \
wget https://download.mono-project.com/repo/ubuntu/pool/main/c/core-setup/msbuild-libhostfxr_2.0.0.2017.07.06.00.01-0xamarin21+ubuntu1404b1_i386.deb && \
wget https://download.mono-project.com/repo/ubuntu/pool/main/m/msbuild/msbuild-sdkresolver_16.0+xamarinxplat.2018.09.26.17.53-0xamarin3+ubuntu1404b1_all.deb && \
wget https://download.mono-project.com/repo/ubuntu/pool/main/n/nuget/nuget_4.7.0.5148.bin-0xamarin2+ubuntu1404b1_all.deb && \
dpkg -i --force-all *.deb && \
sed -i '/Depends.*mono/d' /var/lib/dpkg/status && \
ln -s /usr/bin/mono /usr/bin/cli && \
apt-get clean && \
rm -rf /var/lib/apt/lists/ && \
rm *.deb && \
ln -sf /usr/bin/gcc-ranlib-8 /usr/bin/gcc-ranlib && \
ln -sf /usr/bin/gcc-ar-8 /usr/bin/gcc-ar && \
rm -rf /root/${mono_version}
ENV CC=gcc-8
ENV CXX=g++-8
CMD ['/bin/bash']

37
Dockerfile.ubuntu-64 Normal file
View File

@@ -0,0 +1,37 @@
FROM ubuntu:trusty
ARG mono_version
RUN if [ -z "${mono_version}" ]; then echo -e "\n\nargument mono-version is mandatory!\n\n"; exit 1; fi
RUN apt-get update && \
apt-get -y install wget && \
wget -O- 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x1E9377A2BA9EF27F' | apt-key add - && \
echo 'deb http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu trusty main' >> /etc/apt/sources.list && \
apt-get update && \
apt-get install -y gcc-8 g++-8 libudev-dev libx11-dev libxcursor-dev libxrandr-dev libasound2-dev libpulse-dev \
libfreetype6-dev libgl1-mesa-dev libglu1-mesa-dev libxi-dev libxinerama-dev git scons cmake perl make bzip2 && \
wget -O- https://download.mono-project.com/sources/mono/mono-${mono_version}.tar.bz2 | tar xj && \
cd mono-${mono_version} && \
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/lib/mono --disable-boehm --host=x86_64-linux-gnu CC=gcc-8 CXX=g++-8 && \
make -j && \
make install && \
cert-sync /etc/ssl/certs/ca-certificates.crt && \
wget https://download.mono-project.com/repo/ubuntu/pool/main/m/msbuild/msbuild_16.0+xamarinxplat.2018.09.26.17.53-0xamarin3+ubuntu1404b1_all.deb && \
wget https://download.mono-project.com/repo/ubuntu/pool/main/c/core-setup/msbuild-libhostfxr_2.0.0.2017.07.06.00.01-0xamarin21+ubuntu1404b1_amd64.deb && \
wget https://download.mono-project.com/repo/ubuntu/pool/main/m/msbuild/msbuild-sdkresolver_16.0+xamarinxplat.2018.09.26.17.53-0xamarin3+ubuntu1404b1_all.deb && \
wget https://download.mono-project.com/repo/ubuntu/pool/main/n/nuget/nuget_4.7.0.5148.bin-0xamarin2+ubuntu1404b1_all.deb && \
dpkg -i --force-all *.deb && \
sed -i '/Depends.*mono/d' /var/lib/dpkg/status && \
ln -s /usr/bin/mono /usr/bin/cli && \
apt-get clean && \
rm -rf /var/lib/apt/lists/ && \
rm *.deb && \
ln -sf /usr/bin/gcc-ranlib-8 /usr/bin/gcc-ranlib && \
ln -sf /usr/bin/gcc-ar-8 /usr/bin/gcc-ar && \
rm -rf /root/${mono_version}
ENV CC=gcc-8
ENV CXX=g++-8
CMD ['/bin/bash']

32
Dockerfile.windows Normal file
View File

@@ -0,0 +1,32 @@
ARG mono_version
FROM godot-mono:${mono_version}
ARG mono_version
RUN if [ -z "${mono_version}" ]; then echo -e "\n\nargument mono-version is mandatory!\n\n"; exit 1; fi
RUN dnf -y install scons mingw32-gcc mingw32-gcc-c++ mingw32-winpthreads-static mingw64-gcc mingw64-gcc-c++ mingw64-winpthreads-static && dnf clean all && \
curl https://download.mono-project.com/sources/mono/mono-${mono_version}.tar.bz2 | tar xj && \
cd mono-${mono_version} && \
./configure --prefix=/root/dependencies/mono-64 --host=x86_64-w64-mingw32 --disable-boehm --disable-mcs-build && \
make -j && \
make install && \
make distclean && \
cp /root/dependencies/mono-64/bin/libMonoPosixHelper.dll /root/dependencies/mono-64/bin/MonoPosixHelper.dll && \
rm -f /root/dependencies/mono-64/bin/mono /root/dependencies/mono-64/bin/mono-sgen && \
ln -s /usr/bin/mono /root/dependencies/mono-64/bin/mono && \
ln -s /usr/bin/mono-sgen /root/dependencies/mono-64/bin/mono-sgen && \
ln -sf /usr/lib/mono/* /root/dependencies/mono-64/lib/mono || /bin/true && \
cp -rvp /etc/mono /root/dependencies/mono-64/etc && \
./configure --prefix=/root/dependencies/mono-32 --host=i686-w64-mingw32 --disable-boehm --disable-mcs-build && \
make -j && \
make install && \
make distclean && \
cp /root/dependencies/mono-32/bin/libMonoPosixHelper.dll /root/dependencies/mono-32/bin/MonoPosixHelper.dll && \
rm -f /root/dependencies/mono-32/bin/mono /root/dependencies/mono-32/bin/mono-sgen && \
ln -s /usr/bin/mono /root/dependencies/mono-32/bin/mono && \
ln -s /usr/bin/mono-sgen /root/dependencies/mono-32/bin/mono-sgen && \
ln -sf /usr/lib/mono/* /root/dependencies/mono-32/lib/mono || /bin/true && \
cp -rvp /etc/mono /root/dependencies/mono-32/etc && \
rm -rf /root/mono-${mono_version}
CMD ['/bin/bash']

37
Dockerfile.xcode Normal file
View File

@@ -0,0 +1,37 @@
FROM godot-fedora:latest
RUN dnf -y install autoconf automake libtool clang cmake fuse fuse-devel git patch make libxml2-devel libicu-devel compat-openssl10-devel bzip2-devel kmod xz cpio && \
git clone https://github.com/mackyle/xar.git && \
cd xar/xar && \
./autogen.sh --prefix=/usr && \
make -j && make install && \
cd /root && \
git clone https://github.com/NiklasRosenstein/pbzx && \
cd pbzx && \
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_9.2.xip && \
/root/pbzx/pbzx -n Content | cpio -i && \
cp -r Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk /tmp/MacOSX10.13.sdk && \
cp -r Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1 /tmp/MacOSX10.13.sdk/usr/include/c++ && \
mkdir -p mkdir -p /tmp/MacOSX10.13.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/MacOSX10.13.sdk/usr/share/man && \
cd /tmp && \
tar -cJf /root/files/MacOSX10.13.sdk.tar.xz MacOSX10.13.sdk && \
rm -rf MacOSX10.13 && \
cd /root/xcode && \
cp -r Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk /tmp/iPhoneOS11.2.sdk && \
cp -r Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1 /tmp/iPhoneOS11.2.sdk/usr/include/c++ && \
cd /tmp && \
tar -cJf /root/files/iPhoneOS11.2.sdk.tar.xz iPhoneOS11.2.sdk && \
rm -rf iPhoneOS11.2.sdk && \
cd /root/xcode && \
cp -r Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk /tmp/iPhoneOS11.2.sdk && \
cp -r Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1 /tmp/iPhoneOS11.2.sdk/usr/include/c++ && \
cd /tmp && \
tar -cJf /root/files/iPhoneSimulator11.2.sdk.tar.xz iPhoneOS11.2.sdk

8
README.md Normal file
View File

@@ -0,0 +1,8 @@
# Godot engine build containers
This repository contains the Dockerfiles for the official Godot engine builds. These containers should help you build Godot for all platforms supported on any machine that can run Docker containers.
## Building
There is a 'build.sh' script included to build the containers themselves. The in-container build scripts will follow shortly.

50
build.sh Normal file
View File

@@ -0,0 +1,50 @@
#!/bin/bash
set -e
podman=podman
if ! which $podman; then
podman=docker
fi
mono_version=$1
$podman build -t godot-fedora:latest -f Dockerfile.base
$podman build --build-arg mono_version=${mono_version} -t godot-mono:${mono_version} -f Dockerfile.mono
$podman build --build-arg mono_version=${mono_version} -t godot-mono-glue:latest -f Dockerfile.mono-glue
$podman build --build-arg mono_version=${mono_version} -t godot-windows:latest -f Dockerfile.windows
$podman build --build-arg mono_version=${mono_version} -t godot-ubuntu-32:latest -f Dockerfile.ubuntu-32
$podman build --build-arg mono_version=${mono_version} -t godot-ubuntu-64:latest -f Dockerfile.ubuntu-64
$podman build -t godot-android:latest -f Dockerfile.android
$podman build -t godot-javascript:latest -f Dockerfile.javascript
$podman build -t godot-xcode-packer:latest -f Dockerfile.xcode -v $(pwd)/files:/root/files
if [ ! -e files/MacOSX10.13.sdk.tar.xz ] || [ ! -e files/iPhoneOS11.2.sdk.tar.xz ] || [ ! -e files/iPhoneSimulator11.2.sdk.tar.xz ]; then
if [ ! -e files/Xcode_9.2.xip ]; then
echo "files/Xcode_9.2.xip is required. It can be downloaded from https://developer.apple.com/download/more/ with a valid apple ID"
exit 1
fi
echo "Building OSX and iOS SDK packages. This will take a while"
$podman run -it --rm -v $(pwd)/files:/root/files godot-xcode-packer:latest
fi
$podman build -t godot-ios:latest -f Dockerfile.ios -v $(pwd)/files:/root/files
$podman build --build-arg mono_version=${mono_version} -t godot-osx:latest -f Dockerfile.osx -v $(pwd)/files:/root/files
if [ ! -e files/msvc2017.tar ]; then
echo
echo "files/msvc2017.tar is missing. This file can be created on a Windows 7 or 10 machine by downloading the 'Visual Studio Tools' installer."
echo "here: https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2017"
echo "The required components can be installed by running"
echo "vs_buildtools.exe --add Microsoft.VisualStudio.Workload.UniversalBuildTools --add Microsoft.VisualStudio.Workload.VCTools --add Microsoft.VisualStudio.Component.Windows10SDK.16299.Desktop --add Microsoft.VisualStudio.Component.Windows10SDK.16299.UWP.Native --passive"
echo "after that create a zipfile of C:/Program Files (x86)/Microsoft Visual Studio"
echo "tar -cf msvs.tar -C \"c:/Program Files (x86)\" Microsoft Visual Studio"
echo
exit 1
fi
$podman build -t godot-msvc:latest -f Dockerfile.msvc -v $(pwd)/files:/root/files

24
files/msvc-fixup.sh Normal file
View File

@@ -0,0 +1,24 @@
cp /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/msobj140.dll /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx64/arm/
cp /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/msobj140.dll /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x86/
cp /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/mspdbcore.dll /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx64/arm/
cp /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/mspdbcore.dll /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x86/
cp /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x86/mspdb140.dll /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x64/
cp /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x86/mspdb140.dll /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx86/arm/
cp /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x86/msobj140.dll /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x64/
cp /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x86/msobj140.dll /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx86/arm/
cp /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x86/mspdbcore.dll /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x64/
cp /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x86/mspdbcore.dll /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx86/arm/
cp /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x86/mspdbsrv.exe /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x64/
cp /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x86/mspdbsrv.exe /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx86/arm/
cp /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/msvcdis140.dll /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/Hostx64/arm/
pushd /root/.wine/drive_c/Program\ Files\ \(x86\)/Microsoft\ SDKs/
rm -rf ClickOnce\ Bootstrapper/ Portable/ Windows NuGetPackages/ UWPNuGetPackages/
popd

View File

@@ -0,0 +1,27 @@
diff -u a/tools/gen_sdk_package_darling_dmg.sh b/tools/gen_sdk_package_darling_dmg.sh
--- a/tools/gen_sdk_package_darling_dmg.sh 2018-12-20 16:06:04.744507679 +0000
+++ b/tools/gen_sdk_package_darling_dmg.sh 2018-12-20 16:06:39.000379232 +0000
@@ -33,22 +33,6 @@
[ -n "$CC" ] && require $CC
[ -n "$CXX" ] && require $CXX
-set +e
-
-command -v lsb_release 2>&1 > /dev/null
-
-if [[ $? -eq 0 ]] && [[ -n $(lsb_release -a 2>&1 | grep -i ubuntu) ]]; then
- echo "Using ubuntu, skipping fuse module check"
-else
- modinfo fuse &>/dev/null
-fi
-
-if [ $? -ne 0 ]; then
- echo "Required kernel module 'fuse' not loaded" 1>&2
- echo "Please run 'insmod fuse' as root" 1>&2
- exit 1
-fi
-
set -e
pushd $BUILD_DIR &>/dev/null

View File

@@ -0,0 +1,12 @@
--- a/configure.ac 2018-12-21 00:49:33.868510477 +0100
+++ b/configure.ac 2018-12-21 00:50:16.784397647 +0100
@@ -3172,6 +3172,8 @@
AC_MSG_CHECKING(for shm_open that works well enough with mmap)
if test "x$ac_cv_func_shm_open" = "xno" -o "x$ac_cv_func_shm_open_working_with_mmap" = "xno" ; then
AC_MSG_RESULT(no)
+ elif test "x$cross_compiling" = "xyes"; then
+ AC_MSG_RESULT(cross compiling, assuming yes)
else
AC_TRY_RUN([
#include <sys/mman.h>

26
upload.sh Normal file
View File

@@ -0,0 +1,26 @@
#!/bin/bash
set -e
podman=podman
if ! which $podman; then
podman=docker
fi
registry=$1
if [ -z "${registry}" ]; then
registry=registry.prehensile-tales.com
fi
$podman push godot-mono-glue:latest ${registry}/godot/mono-glue
$podman push godot-windows:latest ${registry}/godot/windows
$podman push godot-ubuntu-32:latest ${registry}/godot/ubuntu-32
$podman push godot-ubuntu-64:latest ${registry}/godot/ubuntu-64
$podman push godot-javascript:latest ${registry}/godot/javascript
$podman push godot-xcode-packer:latest ${registry}/godot/xcode-packer
$podman push godot-android:latest ${registry}/godot-private/android
$podman push godot-ios:latest ${registry}/godot-private/ios
$podman push godot-osx:latest ${registry}/godot-private/macosx
$podman push godot-msvc:latest ${registry}/godot-private/uwp