etc/android.sh: Don't expect to find the NDK relative to an SDK path.
[mdw-cross] / etc / android.sh
index 5e1f1b0..d7f96ca 100644 (file)
@@ -1,37 +1,40 @@
 ### -*-sh-*-
 
-: ${ANDROID_SDK=/usr/local/android/sdk}
-: ${ANDROID_NDK=$ANDROID_SDK/ndk-bundle}
+CROSS_ARCH=$ANDROID_NDK_TARGETARCH
+
+: ${ANDROID_NDK=/usr/local/android/ndk}
 : ${ANDROID_NDK_TOOLVER=4.9}
 : ${ANDROID_NDK_HOSTARCH=linux-x86_64}
 case $ANDROID_NDK_TARGETARCH in
   arm-linux-androideabi)
     ANDROID_NDK_TARGETARCHDIR=arm-linux-androideabi
+    ANDROID_NDK_CLANGARCH=armv7a-linux-androideabi
     ANDROID_NDK_TARGETSHORTARCH=arm
-    : ${ANDROID_NDK_TARGETVER=15}
+    : ${ANDROID_NDK_TARGETVER=16}
     ;;
   aarch64-linux-android)
     ANDROID_NDK_TARGETARCHDIR=aarch64-linux-android
+    ANDROID_NDK_CLANGARCH=aarch64-linux-android
     ANDROID_NDK_TARGETSHORTARCH=arm64
     : ${ANDROID_NDK_TARGETVER=21}
     ;;
   i686-linux-android)
     ANDROID_NDK_TARGETARCHDIR=x86
+    ANDROID_NDK_CLANGARCH=i686-linux-android
     ANDROID_NDK_TARGETSHORTARCH=x86
-    : ${ANDROID_NDK_TARGETVER=15}
+    : ${ANDROID_NDK_TARGETVER=16}
     ;;
   x86_64-linux-android)
     ANDROID_NDK_TARGETARCHDIR=x86_64
+    ANDROID_NDK_CLANGARCH=x86_64-linux-android
     ANDROID_NDK_TARGETSHORTARCH=x86_64
     : ${ANDROID_NDK_TARGETVER=21}
     ;;
+  *)
+    echo 2>&1 "${0##*/}: unexpected Android arch \`$ANDROID_NDK_TARGETARCH'"
+    exit 2
+    ;;
 esac
 : ${ANDROID_NDK_TOOLS=$ANDROID_NDK/toolchains/$ANDROID_NDK_TARGETARCHDIR-$ANDROID_NDK_TOOLVER/prebuilt/$ANDROID_NDK_HOSTARCH/bin}
+: ${ANDROID_NDK_LLVM=$ANDROID_NDK/toolchains/llvm/prebuilt/$ANDROID_NDK_HOSTARCH/bin}
 : ${ANDROID_NDK_SYSROOT=$ANDROID_NDK/platforms/android-$ANDROID_NDK_TARGETVER/arch-$ANDROID_NDK_TARGETSHORTARCH}
-
-ANDROID_CC="$ANDROID_NDK_TARGETARCH-gcc \
-       --sysroot=$ANDROID_NDK_SYSROOT \
-       -D__ANDROID_API__=$ANDROID_NDK_TARGETVER \
-       -isystem $ANDROID_NDK/sysroot/usr/include \
-       -isystem $ANDROID_NDK/sysroot/usr/include/$ANDROID_NDK_TARGETARCH \
-       -fPIE -pie"