env.sh 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. #!/bin/bash
  2. if [ -z "$ANDROID_HOME" ]; then
  3. if [ -d "$HOME/Android/Sdk" ]; then
  4. export ANDROID_HOME="$HOME/Android/Sdk"
  5. elif [ -d "$HOME/.local/lib/android/sdk" ]; then
  6. export ANDROID_HOME="$HOME/.local/lib/android/sdk"
  7. elif [ -d "$HOME/Library/Android/sdk" ]; then
  8. export ANDROID_HOME="$HOME/Library/Android/sdk"
  9. fi
  10. fi
  11. _NDK="$ANDROID_HOME/ndk/21.4.7075529"
  12. [ -f "$_NDK/source.properties" ] || _NDK="$ANDROID_NDK_HOME"
  13. [ -f "$_NDK/source.properties" ] || _NDK="$NDK"
  14. [ -f "$_NDK/source.properties" ] || _NDK="$ANDROID_HOME/ndk-bundle"
  15. if [ ! -f "$_NDK/source.properties" ]; then
  16. read -p "Enter your NDK version: " NDK_VERSION
  17. _NDK="$ANDROID_HOME/ndk/$NDK_VERSION"
  18. fi
  19. if [ ! -f "$_NDK/source.properties" ]; then
  20. echo "Error: NDK not found."
  21. exit 1
  22. fi
  23. export ANDROID_NDK_HOME=$_NDK
  24. export NDK=$_NDK
  25. if [[ "$OSTYPE" =~ ^darwin ]]; then
  26. export PROJECT=$PWD
  27. else
  28. export PROJECT=$(realpath .)
  29. fi
  30. if [ ! $(command -v go) ]; then
  31. if [ -d /usr/lib/go-1.16 ]; then
  32. export PATH="$PATH:/usr/lib/go-1.16/bin"
  33. elif [ -d $HOME/.go ]; then
  34. export PATH="$PATH:$HOME/.go/bin"
  35. fi
  36. fi
  37. if [ $(command -v go) ]; then
  38. export PATH="$PATH:$(go env GOPATH)/bin"
  39. fi
  40. DEPS=$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin
  41. export ANDROID_ARM_CC=$DEPS/armv7a-linux-androideabi16-clang
  42. export ANDROID_ARM_CXX=$DEPS/armv7a-linux-androideabi16-clang++
  43. export ANDROID_ARM_CC_21=$DEPS/armv7a-linux-androideabi21-clang
  44. export ANDROID_ARM_CXX_21=$DEPS/armv7a-linux-androideabi21-clang++
  45. export ANDROID_ARM_STRIP=$DEPS/arm-linux-androideabi-strip
  46. export ANDROID_ARM64_CC=$DEPS/aarch64-linux-android21-clang
  47. export ANDROID_ARM64_CXX=$DEPS/aarch64-linux-android21-clang++
  48. export ANDROID_ARM64_STRIP=$DEPS/aarch64-linux-android-strip
  49. export ANDROID_X86_CC=$DEPS/i686-linux-android16-clang
  50. export ANDROID_X86_CXX=$DEPS/i686-linux-android16-clang++
  51. export ANDROID_X86_CC_21=$DEPS/i686-linux-android21-clang
  52. export ANDROID_X86_CXX_21=$DEPS/i686-linux-android21-clang++
  53. export ANDROID_X86_STRIP=$DEPS/i686-linux-android-strip
  54. export ANDROID_X86_64_CC=$DEPS/x86_64-linux-android21-clang
  55. export ANDROID_X86_64_CXX=$DEPS/x86_64-linux-android21-clang++
  56. export ANDROID_X86_64_STRIP=$DEPS/x86_64-linux-android-strip