27 lines
881 B
Docker
27 lines
881 B
Docker
FROM ubuntu
|
|
|
|
# Rust & sdkmanager
|
|
ARG TOOLS_VERSION=13.0
|
|
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y clang gcc git rustup google-android-cmdline-tools-${TOOLS_VERSION}-installer
|
|
|
|
# Set up cargo-ndk
|
|
ARG ARCH_TRIPLET=armv7-linux-androideabi
|
|
RUN rustup default stable && cargo install cargo-ndk && rustup target add ${ARCH_TRIPLET}
|
|
|
|
# Install the NDK
|
|
ARG NDK_VERSION=25.2.9519653
|
|
RUN yes | sdkmanager --licenses && sdkmanager --install "ndk;${NDK_VERSION}"
|
|
|
|
# Required environment variables
|
|
ENV ANDROID_HOME="/usr/lib/android-sdk"
|
|
ENV ANDROID_NDK_HOME="/usr/lib/android-sdk/ndk/${NDK_VERSION}/"
|
|
ENV ANDROID_NDK_ROOT="${ANDROID_NDK_HOME}"
|
|
|
|
ARG NDK_ARCH=armeabi-v7a
|
|
|
|
COPY . /injectionforge
|
|
WORKDIR /injectionforge
|
|
|
|
# Run with: docker run -it --name iforge -v $(pwd):/injectionforge injectionforge:latest
|
|
CMD cargo ndk -t armeabi-v7a --bindgen build --release
|