Browse Source

PEMA-107 Add script to generate a Makefile for an arch

pull/30/head
ignaciogarcia 3 years ago
parent
commit
cb2139772c
No known key found for this signature in database GPG Key ID: 5E6A455C909DD623
  1. 79
      android/external/createMakefile.sh

79
android/external/createMakefile.sh

@ -0,0 +1,79 @@
#!/bin/zsh
#emulate -LR bash
#cd ~code/android/pEpJNIAdapter/external
ARCH_DEST="$1"
mkdir $ARCH_DEST
cp MakefileTemplate $ARCH_DEST/Makefile
FILE_DEST=$ARCH_DEST/Makefile
################################################################################
# Select TEMPLATE FIELDS FOR ARCH #
################################################################################
case $ARCH_DEST in
x86)
ANDROID_API=18
HOST=i686-linux-android
NDK_TOOLCHAIN_TARGET="APP_ABI"
ARCH_DEBUG_CFLAGS=TARGET_x86_debug_CFLAGS
OPENSSL_ARCHITECTURE=android-x86
SEQUOIA_ARCH=i686-linux-android
;;
x86_64)
ANDROID_API=21
HOST=x86_64-linux-android
EXTRA_FLAGS_API="\$(ANDROID_API)"
NDK_TOOLCHAIN_TARGET="APP_ABI"
ARCH_DEBUG_CFLAGS=TARGET_x86_64_debug_CFLAGS
OPENSSL_ARCHITECTURE=android-x86_64
SEQUOIA_ARCH=x86_64-linux-android
;;
armeabi-v7a)
ANDROID_API=18
HOST=arm-linux-androideabi
NDK_TOOLCHAIN_TARGET="HOST"
ARCH_DEBUG_CFLAGS=TARGET_arm_debug_CFLAGS
OPENSSL_ARCHITECTURE=android-arm
SEQUOIA_ARCH=armv7-linux-androideabi
;;
arm64-v8a)
ANDROID_API=21
HOST=aarch64-linux-android
NDK_TOOLCHAIN_TARGET="HOST"
ARCH_DEBUG_CFLAGS=TARGET_arm64_debug_CFLAGS
OPENSSL_ARCHITECTURE=android-arm64
GMP_MAKEFILE_EXTRA=' MPN_PATH=\"arm64 generic\"'
SEQUOIA_ARCH=aarch64-linux-android
;;
esac
################################################################################
# Select GNU SED #
################################################################################
OS="$(uname -s)"
case "${OS}" in
Linux*) SED=sed;;
Darwin*) SED=gsed;;
CYGWIN*) echo "UNSUPORTED YET" && exit;;
MINGW*) echo "UNSUPORTED YET" && exit;;
*) echo "UNKNOWN:${OS}" && exit;;
esac
################################################################################
# REPLACE FIELDS IN TEMPLATE #
################################################################################
$SED -i 's/\[ARCH\]/'"$ARCH_DEST"'/g' $FILE_DEST
$SED -i 's/\[ANDROID_API\]/'"$ANDROID_API"'/g' $FILE_DEST
$SED -i 's/\[HOST\]/'"$HOST"'/g' $FILE_DEST
$SED -i 's/\[EXTRA_FLAGS_API\]/'"$EXTRA_FLAGS_API"'/g' $FILE_DEST
$SED -i 's/\[NDK_TOOLCHAIN_TARGET\]/'"$NDK_TOOLCHAIN_TARGET"'/g' $FILE_DEST
$SED -i 's/\[ARCH_DEBUG_CFLAGS\]/'"$ARCH_DEBUG_CFLAGS"'/g' $FILE_DEST
$SED -i 's/\[OPENSSL_ARCHITECTURE\]/'"$OPENSSL_ARCHITECTURE"'/g' $FILE_DEST
$SED -i 's/\[GMP_MAKEFILE_EXTRA\]/'"$GMP_MAKEFILE_EXTRA"'/g' $FILE_DEST
$SED -i 's/\[SEQUOIA_ARCH\]/'"$SEQUOIA_ARCH"'/g' $FILE_DEST
cat $FILE_DEST
Loading…
Cancel
Save