diff --git a/Makefile.in b/Makefile.in index 7cc768557..5c1a776ed 100755 --- a/Makefile.in +++ b/Makefile.in @@ -592,17 +592,21 @@ libYap.a: $(LIB_OBJECTS) yapi.o done @STARTUP_ANDROID@startup.yss: yap@EXEC_SUFFIX@ @DYNYAPLIB@ $(PL_SOURCES) $(SWI_LIB_SOURCES) + adb shell rm -rf /data/yap adb shell mkdir -p /data/yap adb shell mkdir -p /data/yap/pl adb shell mkdir -p /data/yap/swi/library adb push yap /data/yap/ adb push @DYNYAPLIB@ /data/yap/ - adb push $(GMPDIR)/lib/libgmp.so data/yap/ + for p in $(EXTRAYAPLIBS); do \ + adb shell $(LN_S) /data/yap/@DYNYAPLIB@ /data/yap/$$p; \ + done + adb push $(GMPDIR)/lib/libgmp.so /data/yap adb push $(srcdir)/swi/library /data/yap/swi/library adb push $(srcdir)/pl /data/yap/pl/ adb shell "echo \"bootstrap('/data/yap/pl/init.yap'). module(user). qsave_program('/data/yap/startup.yss').\" | LD_LIBRARY_PATH=/data/yap /data/yap/yap@EXEC_SUFFIX@ -b /data/yap/pl/boot.yap" adb pull /data/yap/startup.yss - $(MAKE) install_unix + adb shell rm -rf /data/yap install: @INSTALL_COMMAND@ install_startup install_common diff --git a/configure.in b/configure.in index 7b72ec78f..4667092f8 100755 --- a/configure.in +++ b/configure.in @@ -511,7 +511,7 @@ dnl Checks for programs. AC_PROG_LN_S AC_PROG_INSTALL AC_PROG_RANLIB -AC_CHECK_TOOL(AR,ar,:) +AC_CHECK_TOOL(AR,[ar],:) AC_PATH_PROG(INSTALL_INFO,install-info,true,$PATH:/sbin:/usr/sbin:/usr/etc:/usr/local/sbin) AC_PATH_PROG(SHELL,sh) AC_CHECK_TOOL([INDENT], [indent], [:]) diff --git a/misc/mkandroid b/misc/mkandroid index e20495d23..4b6ae73f1 100755 --- a/misc/mkandroid +++ b/misc/mkandroid @@ -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 diff --git a/packages/swig/android/bootstrap_android b/packages/swig/android/bootstrap_android deleted file mode 100755 index b3f408152..000000000 --- a/packages/swig/android/bootstrap_android +++ /dev/null @@ -1,8 +0,0 @@ -export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/data/yap -DIR=/data/yap -cd $DIR -$DIR/yap -b $DIR/pl/boot.yap << EOF -bootstrap("pl/init.yap"). -module(user). -qsave_program('startup.yss'). -EOF