summaryrefslogtreecommitdiffstats
path: root/make/scripts/make.jogl.all.android-armv7-cross.sh
diff options
context:
space:
mode:
authorEdwin Vane <[email protected]>2012-01-31 09:24:51 -0500
committerEdwin Vane <[email protected]>2012-02-28 16:13:45 -0500
commitfc779ca57ec338c3e4a2b8d0b3a2bac4277bc380 (patch)
treeb1fe85f6e03047f4479f30fddadfbb92b98b50fe /make/scripts/make.jogl.all.android-armv7-cross.sh
parentb7407c39c0d3785f2fc21782d31c439622f0d744 (diff)
Get JOGL to build with NDK r7
- Most of the android build work is done by gluegen ant files. Changes made to gluegen in support of NDK r7 need to be reflected here: - New/fewer environment variables. - Specifying android.abi for packaging. - Cross-compilation script cleaned up to look like gluegen's cross compile script for consistency. - Renamed install/re-install adb helper scripts to be ARM specific.
Diffstat (limited to 'make/scripts/make.jogl.all.android-armv7-cross.sh')
-rwxr-xr-xmake/scripts/make.jogl.all.android-armv7-cross.sh60
1 files changed, 12 insertions, 48 deletions
diff --git a/make/scripts/make.jogl.all.android-armv7-cross.sh b/make/scripts/make.jogl.all.android-armv7-cross.sh
index 20c90d160..5096ac0eb 100755
--- a/make/scripts/make.jogl.all.android-armv7-cross.sh
+++ b/make/scripts/make.jogl.all.android-armv7-cross.sh
@@ -15,12 +15,12 @@ echo ANDROID_SDK_HOME $ANDROID_SDK_HOME
echo NDK_ROOT $NDK_ROOT
if [ -z "$NDK_ROOT" ] ; then
- if [ -e /usr/local/android-ndk-r6 ] ; then
- NDK_ROOT=/usr/local/android-ndk-r6
- elif [ -e /opt-linux-x86/android-ndk-r6 ] ; then
- NDK_ROOT=/opt-linux-x86/android-ndk-r6
- elif [ -e /opt/android-ndk-r6 ] ; then
- NDK_ROOT=/opt/android-ndk-r6
+ if [ -e /usr/local/android-ndk-r7 ] ; then
+ NDK_ROOT=/usr/local/android-ndk-r7
+ elif [ -e /opt-linux-x86/android-ndk-r7 ] ; then
+ NDK_ROOT=/opt-linux-x86/android-ndk-r7
+ elif [ -e /opt/android-ndk-r7 ] ; then
+ NDK_ROOT=/opt/android-ndk-r7
else
echo NDK_ROOT is not specified and does not exist in default locations
exit 1
@@ -30,7 +30,6 @@ elif [ ! -e $NDK_ROOT ] ; then
exit 1
fi
export NDK_ROOT
-NDK_TOOLCHAIN=$NDK_ROOT/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/arm-linux-androideabi
if [ -z "$ANDROID_SDK_HOME" ] ; then
if [ -e /usr/local/android-sdk-linux_x86 ] ; then
@@ -49,52 +48,16 @@ elif [ ! -e $ANDROID_SDK_HOME ] ; then
fi
export ANDROID_SDK_HOME
-export PATH="$NDK_TOOLCHAIN/bin:$ANDROID_SDK_HOME/platform-tools:$PATH"
-
export GCC_VERSION=4.4.3
HOST_ARCH=linux-x86
export TARGET_ARCH=arm-linux-androideabi
-# mcpu: cortex-a8', `cortex-a9', `cortex-r4', `cortex-r4f', `cortex-m3', `cortex-m1', `xscale', `iwmmxt', `iwmmxt2', `ep9312'.
-export TARGET_CPU_NAME=armv7-a
-TARGET_CPU_TUNE=armv7-a
-# mfpu: `vfp', `vfpv3', `vfpv3-d16' and `neon'
-TARGET_FPU_NAME=vfpv3
-TARGET_FPU_ABI=softfp
-
-export TARGET_TOOL_PATH=${NDK_ROOT}/toolchains/${TARGET_ARCH}-${GCC_VERSION}/prebuilt/${HOST_ARCH}
-
-export TARGET_OS_PATH=${NDK_ROOT}/platforms/android-${ANDROID_VERSION}/arch-arm/usr
-export TARGET_PLATFORM_LIBS=${TARGET_OS_PATH}/lib
-export HOST_OS_PATH=${NDK_ROOT}/platforms/android-${ANDROID_VERSION}/arch-x86/usr
-
-export NDK_XBIN_PATH=${TARGET_TOOL_PATH}/bin
-export NDK_BIN_PATH=${TARGET_TOOL_PATH}/${TARGET_ARCH}/bin
-
-export NDK_GCC=${NDK_XBIN_PATH}/${TARGET_ARCH}-gcc
-export NDK_AR=${NDK_XBIN_PATH}/${TARGET_ARCH}-ar
-export NDK_STRIP=${NDK_XBIN_PATH}/${TARGET_ARCH}-strip
-export NDK_READELF=${NDK_XBIN_PATH}/${TARGET_ARCH}-readelf
-
-export PATH=${NDK_XBIN_PATH}:$PATH
-
-export NDK_CFLAGS="\
--march=${TARGET_CPU_NAME} \
--fpic \
--DANDROID \
-"
+export TARGET_TRIPLE=arm-linux-androideabi
-export NDK_LDFLAGS="\
--Wl,--demangle \
--nostdlib -Bdynamic -Wl,-dynamic-linker,/system/bin/linker -Wl,--gc-sections -Wl,-z,nocopyreloc \
-${TARGET_OS_PATH}/lib/libc.so \
-${TARGET_OS_PATH}/lib/libstdc++.so \
-${TARGET_OS_PATH}/lib/libm.so \
-${TARGET_OS_PATH}/lib/crtbegin_dynamic.o \
--Wl,--no-undefined -Wl,-rpath-link=${TARGET_OS_PATH}/lib \
-${TARGET_TOOL_PATH}/lib/gcc/${TARGET_ARCH}/${GCC_VERSION}/${TARGET_CPU_NAME}/libgcc.a \
-${TARGET_OS_PATH}/lib/crtend_android.o \
-"
+export NDK_TOOLCHAIN_ROOT=$NDK_ROOT/toolchains/${TARGET_ARCH}-${GCC_VERSION}/prebuilt/${HOST_ARCH}
+export TARGET_PLATFORM_ROOT=${NDK_ROOT}/platforms/android-${ANDROID_VERSION}/arch-arm
+# Need to add toolchain bins to the PATH.
+export PATH="$NDK_TOOLCHAIN_ROOT/$TARGET_ARCH/bin:$ANDROID_SDK_HOME/platform-tools:$PATH"
which gcc 2>&1 | tee make.jogl.all.android-armv7-cross.log
@@ -107,6 +70,7 @@ ant \
-DisAndroidARMv7=true \
-DjvmDataModel.arg="-Djnlp.no.jvm.data.model.set=true" \
-DisCrosscompilation=true \
+ -Dandroid.abi=armeabi-v7a \
\
$* 2>&1 | tee -a make.jogl.all.android-armv7-cross.log