fixes for Android compilation

This commit is contained in:
Vitor Santos Costa
2014-06-20 20:01:56 +01:00
parent 8994abfada
commit 1f301ded89
4 changed files with 24 additions and 40 deletions

View File

@@ -2,13 +2,8 @@
#
# script to compile yap for Android.
BUILD=x86_64-apple-darwin
export SDK_ROOT=$HOME/Yap/android-sdk-macosx
export SDK_ROOT=$HOME/Yap/android-sdk-linux
export NDK_ROOT=$HOME/Yap/android-ndk-r9d
export NDK_HOST=darwin-x86_64
export GCC_VERSION=4.8
#export PATH=$PATH:"$NDK_ROOT"/toolchains/arm-linux-androideabi-"$GCC_VERSION"/prebuilt/$NDK_HOST/bin
export PATH=$PATH:"$SDK_ROOT"/tools:"$NDK_ROOT"
export GMPDIR=$HOME/Yap/gmp-android
@@ -16,17 +11,24 @@ export GMPDIR=$HOME/Yap/gmp-android
export ANDROID_NDK_ROOT="$NDK_ROOT"/
export ANDROID_SYSROOT="$NDK_ROOT"/platforms/android-17/arch-arm
# which platform to compile for
ANDROID_PLATFORM=android-17
# which gcc to use
GCC_VERSION=4.8
# which disk
IMAGE=first
if test -d $HOME/Yap/my-android-toolchain
then
echo using the setup at $HOME/Yap/my-android-toolchain
else
"$NDK_ROOT"/build/tools/make-standalone-toolchain.sh \
--platform=android-17 \
--platform="$ANDROID_PLATFORM" \
--toolchain=arm-linux-androideabi-"$GCC_VERSION" \
--install-dir="$HOME"/Yap/my-android-toolchain
fi
export PATH=$HOME/Yap/my-android-toolchain/bin:$PATH
export PATH=$HOME/Yap/my-android-toolchain/bin:"$NDK_ROOT":"$SDK_ROOT/tools":"$SDK_ROOT/platform-tools":$PATH
cd ~/Yap/bins/android
@@ -36,34 +38,20 @@ then
rm -r packages/swig/android
elif test x$1 = xenv
then
return 0;
return 0
elif test x$1 = xeclipse
then
emulator -avd first &
emulator -avd $IMAGE &
~/eclipse/eclipse &
exit 0;
# not working
# elif test x$1 = xgmp
# then
# cd ~/Yap/gmp-6.0.0
# export LDFLAGS="-Wl,--fix-cortex-a8 -Wl,--no-undefined -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now"
# export BASE_CFLAGS='-O2 -g -pedantic -fomit-frame-pointer -Wa,--noexecstack -ffunction-sections -funwind-tables -fstack-protector -fno-strict-aliasing'
# export CFLAGS="${BASE_CFLAGS} -mfloat-abi=softfp -mfpu=vfp"
# export LIBGMP_LDFLAGS='-avoid-version'
# export LIBGMPXX_LDFLAGS='-avoid-version'
# export PATH="$NDK_ROOT"/toolchains/arm-linux-androideabi-4.8/prebuilt/$NDK_HOST/arm-linux-androideabi/bin:$PATH
# export MPN_PATH="arm/v6t2 arm/v6 arm/v5 arm generic"
# ./configure --host=arm-linux-androideabi --build=$BUILD --prefix=$HOME/Yap/gmp-android
# # make
# exit 0
return 0
else
rm -rf ~/Yap/bins/android/*
~/git/yap-6.3/configure --host=arm-linux-androideabi --prefix=`pwd` --with-readline=no --enable-low-level-tracer --enable-debug-yap --enable-dynamic-loading --with-swig --with-gmp=$GMPDIR --disable-chr #--enable-threads
emulator -avd $IMAGE &
rm -rf ~/Yap/bins/android/*
cd ~/Yap/bins/android
~/git/yap-6.3/configure --host=arm-linux-androideabi --prefix=`pwd` --enable-low-level-tracer --enable-debug-yap --enable-dynamic-loading --with-swig --with-gmp=$GMPDIR --disable-chr #--enable-threads
make depend
make -j install
fi
cp libYap.so libYapi.so $GMPDIR/lib/libgmp.so $ANDROID_NDK_ROOT/build/core/lib/
cd packages/swig
mkdir -p $ANDROID_NDK_ROOT/build/core/lib
make android