android.sh 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. #!/bin/bash
  2. export NDK=/home/android-ndk-r10e
  3. export PREFIX_BASE=/home/openssl-1.1.0h/android
  4. export HOST=arm-linux-androideabi
  5. export CPU=ARM
  6. if [ w$1 = "wx86" ]
  7. then
  8. echo "************************"
  9. echo " X86 "
  10. echo "************************"
  11. export HOST=i686-linux-android
  12. export CPU=x86
  13. export SYSROOT=$NDK/platforms/android-9/arch-x86
  14. export ANDROID_TOOLCHAIN=$(pwd)/my-android-toolchain-android-x86
  15. $NDK/build/tools/make-standalone-toolchain.sh --arch=x86 --platform=android-9 --arch=x86 --install-dir=$ANDROID_TOOLCHAIN
  16. export CFLAGS='-fPIC' # For FFmpeg: '-fno-PIC'
  17. export LDFLAGS=''
  18. export OS=android-x86
  19. elif [ w$1 = "warmv7a" ]
  20. then
  21. echo "************************"
  22. echo " ARMv7-a "
  23. echo "************************"
  24. export HOST=arm-linux-androideabi
  25. export CPU=armv7-a
  26. export SYSROOT=$NDK/platforms/android-3/arch-arm
  27. export ANDROID_TOOLCHAIN=$(pwd)/my-android-toolchain-android-armv7-a
  28. $NDK/build/tools/make-standalone-toolchain.sh --arch=arm --platform=android-3 --install-dir=$ANDROID_TOOLCHAIN
  29. export CFLAGS='-march=armv7-a -mfloat-abi=softfp -fPIC'
  30. export LDFLAGS='-Wl,--fix-cortex-a8'
  31. export OS=android-armv7
  32. elif [ w$1 = "wneon" ]
  33. then
  34. echo "************************"
  35. echo " NEON "
  36. echo "************************"
  37. export HOST=arm-linux-androideabi
  38. export CPU=armv7-a-neon
  39. export SYSROOT=$NDK/platforms/android-3/arch-arm
  40. export ANDROID_TOOLCHAIN=$(pwd)/my-android-toolchain-android-armv7-a-neon
  41. $NDK/build/tools/make-standalone-toolchain.sh --arch=arm --platform=android-3 --install-dir=$ANDROID_TOOLCHAIN
  42. export CFLAGS='-march=armv7-a -mfloat-abi=softfp -mfpu=neon -fPIC'
  43. export LDFLAGS='-Wl,--fix-cortex-a8'
  44. export OS=android-armv7
  45. else
  46. echo "************************"
  47. echo " ARMv5TE "
  48. echo "************************"
  49. export HOST=arm-linux-androideabi
  50. export CPU=armv5te
  51. export SYSROOT=$NDK/platforms/android-3/arch-arm
  52. export ANDROID_TOOLCHAIN=$(pwd)/my-android-toolchain-armv5te
  53. $NDK/build/tools/make-standalone-toolchain.sh --arch=arm --platform=android-3 --install-dir=$ANDROID_TOOLCHAIN
  54. export CFLAGS='-fPIC'
  55. export LDFLAGS=''
  56. export OS=android
  57. fi
  58. ### COMMON ###
  59. export PATH=$ANDROID_TOOLCHAIN/bin:$PATH
  60. export CC=$ANDROID_TOOLCHAIN/bin/$HOST-gcc
  61. export AR=$ANDROID_TOOLCHAIN/bin/$HOST-ar
  62. export CXX=$ANDROID_TOOLCHAIN/bin/$HOST-g++
  63. #export AS=$ANDROID_TOOLCHAIN/bin/$HOST-as
  64. export AS=$ANDROID_TOOLCHAIN/bin/$HOST-gcc
  65. export RANLIB=$ANDROID_TOOLCHAIN/bin/$HOST-ranlib
  66. ./Configure -no-shared --prefix=$PREFIX_BASE/$CPU --openssldir=$PREFIX_BASE/$CPU/openssl $OS -I$ANDROID_TOOLCHAIN/sysroot/ -I$ANDROID_TOOLCHAIN/sysroot/usr/include
  67. make clean
  68. make