Files
build-containers/Dockerfile.android
Rémi Verschelde ae944a9610 Android: Fix 32-bit Mono builds compat with API < 21
The fix is done in https://github.com/godotengine/godot-mono-builds/pull/22.

Also bump build-tools/platform to API 30 to match current 3.2 branch.
2020-12-10 09:42:49 +01:00

31 lines
1.3 KiB
Docker

ARG img_version
FROM godot-mono:${img_version}
ARG mono_version
RUN if [ -z "${mono_version}" ]; then echo -e "\n\nargument mono-version is mandatory!\n\n"; exit 1; fi && \
dnf -y install --setopt=install_weak_deps=False \
java-1.8.0-openjdk-devel ncurses-compat-libs && \
mkdir -p sdk/cmdline-tools && cd sdk/cmdline-tools && \
curl -LO https://dl.google.com/android/repository/commandlinetools-linux-6609375_latest.zip && \
unzip commandlinetools-linux-6609375_latest.zip && \
rm commandlinetools-linux-6609375_latest.zip && \
yes | tools/bin/sdkmanager --licenses && \
tools/bin/sdkmanager 'ndk;21.3.6528147' 'build-tools;30.0.1' 'platforms;android-30' 'cmake;3.10.2.4988404'
ENV ANDROID_SDK_ROOT=/root/sdk/
ENV ANDROID_NDK_ROOT=/root/sdk/ndk/21.3.6528147/
RUN cp -a /root/files/${mono_version} /root && \
export MONO_SOURCE_ROOT=/root/${mono_version} && \
cd /root/${mono_version}/godot-mono-builds && \
python3 android.py configure -j --target=all-runtime && \
python3 android.py make -j --target=all-runtime && \
cd /root/${mono_version} && git clean -fdx && NOCONFIGURE=1 ./autogen.sh && \
cd /root/${mono_version}/godot-mono-builds && \
python3 bcl.py make -j --product=android && \
cd /root && \
rm -rf /root/${mono_version}
CMD /bin/bash