@@ -10,7 +10,11 @@ ARG SDK_VERSION=commandlinetools-linux-8512546_latest.zip
1010ARG ANDROID_BUILD_VERSION=31
1111ARG ANDROID_TOOLS_VERSION=31.0.0
1212ARG BUCK_VERSION=2022.05.05.01
13- ARG NDK_VERSION=21.4.7075529
13+ # Buck doesn't support versions beyond NDK 21
14+ # Therefore we need to diverge the NDK version and set NDK_HOME
15+ # for Buck to pick it up correctly.
16+ ARG NDK_VERSION_BUCK=21.4.7075529
17+ ARG NDK_VERSION_GRADLE=23.1.7779620
1418ARG NODE_VERSION=14.x
1519ARG WATCHMAN_VERSION=4.9.0
1620ARG CMAKE_VERSION=3.18.1
@@ -19,11 +23,14 @@ ARG CMAKE_VERSION=3.18.1
1923ENV ADB_INSTALL_TIMEOUT=10
2024ENV ANDROID_HOME=/opt/android
2125ENV ANDROID_SDK_ROOT=${ANDROID_HOME}
22- ENV ANDROID_NDK=${ANDROID_HOME}/ndk/$NDK_VERSION
26+ ENV ANDROID_NDK_BUCK=${ANDROID_HOME}/ndk/$NDK_VERSION_BUCK
27+ ENV ANDROID_NDK_GRADLE=${ANDROID_HOME}/ndk/$NDK_VERSION_GRADLE
28+ # this is needed for Buck to be able to recognize NDK 21
29+ ENV NDK_HOME=${ANDROID_HOME}/ndk/$NDK_VERSION_BUCK
2330ENV JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
2431ENV CMAKE_BIN_PATH=${ANDROID_HOME}/cmake/$CMAKE_VERSION/bin
2532
26- ENV PATH=${ANDROID_NDK}:${ CMAKE_BIN_PATH}:${ANDROID_HOME}/cmdline-tools/latest/bin:${ANDROID_HOME}/emulator:${ANDROID_HOME}/platform-tools:${ANDROID_HOME}/tools:${ANDROID_HOME}/tools/bin:/opt/buck/bin/:${PATH}
33+ ENV PATH=${CMAKE_BIN_PATH}:${ANDROID_HOME}/cmdline-tools/latest/bin:${ANDROID_HOME}/emulator:${ANDROID_HOME}/platform-tools:${ANDROID_HOME}/tools:${ANDROID_HOME}/tools/bin:/opt/buck/bin/:${PATH}
2734
2835# Install system dependencies
2936RUN apt update -qq && apt install -qq -y --no-install-recommends \
@@ -103,7 +110,8 @@ RUN curl -sS https://dl.google.com/android/repository/${SDK_VERSION} -o /tmp/sdk
103110 "build-tools;$ANDROID_TOOLS_VERSION" \
104111 "cmake;$CMAKE_VERSION" \
105112 "system-images;android-21;google_apis;armeabi-v7a" \
106- "ndk;$NDK_VERSION" \
113+ "ndk;$NDK_VERSION_BUCK" \
114+ "ndk;$NDK_VERSION_GRADLE" \
107115 && rm -rf ${ANDROID_HOME}/.android \
108116 && chmod 777 -R /opt/android \
109- && ln -s ${ANDROID_NDK }/toolchains/llvm/prebuilt/linux-x86_64/lib64/clang/9.0.9 ${ANDROID_NDK }/toolchains/llvm/prebuilt/linux-x86_64/lib64/clang/9.0.8
117+ && ln -s ${ANDROID_NDK_BUCK }/toolchains/llvm/prebuilt/linux-x86_64/lib64/clang/9.0.9 ${ANDROID_NDK_BUCK }/toolchains/llvm/prebuilt/linux-x86_64/lib64/clang/9.0.8
0 commit comments