blob: b4bb496b9b2936f7a72c9708cc60f31a976d07a1 [file] [log] [blame]
FROM alvrme/alpine-android:android-35-jdk8
RUN \
adduser -D mani mani && \
apk update && \
apk add build-base git ccache meson
ENV NDK_VERSION=27.2.12479018
RUN extras ndk -n ${NDK_VERSION}
ENV PATH /opt/sdk/ndk/${NDK_VERSION}/toolchains/llvm/prebuilt/linux-x86_64/bin:${PATH}
RUN bash <<EOF
set -e
ndk_bin="/opt/sdk/ndk/${NDK_VERSION}/toolchains/llvm/prebuilt/linux-x86_64/bin"
for trgt in {aarch64,i686,x86_64}-linux-android{23,35}-clang \
armv7a-linux-androideabi{23,35}-clang
do
echo "[binaries]" >/opt/\${trgt}.txt
echo "c = '\${ndk_bin}/\${trgt}'" >>/opt/\${trgt}.txt
echo "ar = '\${ndk_bin}/llvm-ar'" >>/opt/\${trgt}.txt
echo "strip = '\${ndk_bin}/llvm-strip'" >>/opt/\${trgt}.txt
echo "" >>/opt/\${trgt}.txt
echo "[host_machine]" >>/opt/\${trgt}.txt
echo "system = 'android'" >>/opt/\${trgt}.txt
echo "cpu_family = '\${trgt%%-*}'" >>/opt/\${trgt}.txt
echo "cpu = '\${trgt%%-*}'" >>/opt/\${trgt}.txt
echo "endian = 'little'" >>/opt/\${trgt}.txt
done
EOF
RUN mkdir -p -m 1777 /ccache
USER mani
ARG ORIGIN=https://review.sourcearcade.org/flashprog.git
RUN \
cd && \
mkdir .ccache && chown mani:mani .ccache && \
git clone ${ORIGIN} flashprog
ARG IDENT=mani
ARG CCACHE_MAX=512M
RUN \
ccache --set-config cache_dir=/ccache/${IDENT} && \
ccache --set-config max_size=${CCACHE_MAX}
ENV DEVSHELL /bin/sh
COPY mani-wrapper.sh /home/mani/
ENTRYPOINT ["/bin/sh", "/home/mani/mani-wrapper.sh"]