Skip to content

Commit

Permalink
Bug 1124 - Refine AArch64 Linux in ant build recipe, add Android AArc…
Browse files Browse the repository at this point in the history
…h64 build/install scripts
  • Loading branch information
sgothel committed Jan 30, 2015
1 parent ffbd1f7 commit 9137288
Show file tree
Hide file tree
Showing 8 changed files with 138 additions and 6 deletions.
18 changes: 17 additions & 1 deletion make/build-jogl.xml
Expand Up @@ -1194,6 +1194,12 @@
<compilerarg value="/usr/include" />
</compiler>

<compiler id="compiler.cfg.linux.aarch64.jogl.x11" extends="compiler.cfg.linux.aarch64">
<!-- Need to force /usr/include headers on to include path (after all others), due to crosscompiler usage -->
<compilerarg value="-idirafter" />
<compilerarg value="/usr/include" />
</compiler>

<!-- linker configuration -->

<linker id="linker.cfg.freebsd.jogl.x11" extends="linker.cfg.freebsd">
Expand All @@ -1220,6 +1226,10 @@
<syslibset dir="${env.TARGET_PLATFORM_ROOT}/usr/lib" libs="X11"/>
</linker>

<linker id="linker.cfg.linux.aarch64.jogl.x11" extends="linker.cfg.linux.aarch64">
<syslibset dir="${env.TARGET_PLATFORM_ROOT}/usr/lib" libs="X11"/>
</linker>

<linker id="linker.cfg.android.jogl" extends="linker.cfg.android">
</linker>

Expand Down Expand Up @@ -1311,6 +1321,12 @@
<property name="linker.cfg.id.os" value="linker.cfg.linux.armv6.jogl.x11" />
</target>

<target name="c.configure.linux.aarch64" if="isLinuxARM64">
<echo message="Linux.aarch64" />
<property name="compiler.cfg.id" value="compiler.cfg.linux.aarch64.jogl.x11" />
<property name="linker.cfg.id.os" value="linker.cfg.linux.aarch64.jogl.x11" />
</target>

<target name="c.configure.linux.ia64" if="isLinuxIA64">
<echo message="Linux.IA64" />
<property name="compiler.cfg.id" value="compiler.cfg.linux" />
Expand Down Expand Up @@ -1353,7 +1369,7 @@
<property name="linker.cfg.id.os" value="linker.cfg.linux.jogl.x11" />
</target>

<target name="c.configure.linux" depends="c.configure.linux.armv6,c.configure.linux.x86,c.configure.linux.amd64,c.configure.linux.ia64,c.configure.linux.hppa,c.configure.linux.mips,c.configure.linux.mipsel,c.configure.linux.ppc,c.configure.linux.s390,c.configure.linux.sparc,c.configure.x11" if="isLinux" />
<target name="c.configure.linux" depends="c.configure.linux.armv6,c.configure.linux.aarch64,c.configure.linux.x86,c.configure.linux.amd64,c.configure.linux.ia64,c.configure.linux.hppa,c.configure.linux.mips,c.configure.linux.mipsel,c.configure.linux.ppc,c.configure.linux.s390,c.configure.linux.sparc,c.configure.x11" if="isLinux" />

<target name="c.configure.android" if="isAndroid">
<echo message="Android" />
Expand Down
20 changes: 19 additions & 1 deletion make/build-nativewindow.xml
Expand Up @@ -344,6 +344,12 @@
<compilerarg value="/usr/include" />
</compiler>

<compiler id="compiler.cfg.linux.aarch64.nativewindow.x11" extends="compiler.cfg.linux.aarch64">
<!-- Need to force /usr/include headers on to include path (after all others), due to crosscompiler usage -->
<compilerarg value="-idirafter" />
<compilerarg value="/usr/include" />
</compiler>

<compiler id="compiler.cfg.solaris.nativewindow.x11" extends="compiler.cfg.solaris">
<compilerarg value="-I/usr/X11R6/include" />
</compiler>
Expand Down Expand Up @@ -397,6 +403,12 @@
<syslibset dir="${env.TARGET_PLATFORM_ROOT}/usr/lib" libs="Xrender" />
</linker>

<linker id="linker.cfg.linux.aarch64.nativewindow.x11" extends="linker.cfg.linux.aarch64">
<syslibset dir="${env.TARGET_PLATFORM_ROOT}/usr/lib" libs="X11" />
<syslibset dir="${env.TARGET_PLATFORM_ROOT}/usr/lib" libs="Xxf86vm" />
<syslibset dir="${env.TARGET_PLATFORM_ROOT}/usr/lib" libs="Xrender" />
</linker>

<linker id="linker.cfg.solaris.nativewindow.x11" extends="linker.cfg.solaris">
<linkerarg value="-L/usr/sfw/lib"/>
<syslibset libs="X11"/>
Expand Down Expand Up @@ -485,6 +497,12 @@
<property name="linker.cfg.id.oswin" value="linker.cfg.linux.armv6.nativewindow.x11" />
</target>

<target name="c.configure.linux.aarch64" if="isLinuxARM64">
<echo message="Linux.aarch64" />
<property name="compiler.cfg.id" value="compiler.cfg.linux.aarch64.nativewindow.x11" />
<property name="linker.cfg.id.oswin" value="linker.cfg.linux.aarch64.nativewindow.x11" />
</target>

<target name="c.configure.linux.ia64" if="isLinuxIA64">
<echo message="Linux.IA64" />
<property name="compiler.cfg.id" value="compiler.cfg.linux" />
Expand Down Expand Up @@ -527,7 +545,7 @@
<property name="linker.cfg.id.oswin" value="linker.cfg.linux.nativewindow.x11" />
</target>

<target name="c.configure.linux" depends="c.configure.linux.armv6,c.configure.linux.x86,c.configure.linux.amd64,c.configure.linux.ia64,c.configure.linux.hppa,c.configure.linux.mips,c.configure.linux.mipsel,c.configure.linux.ppc,c.configure.linux.s390,c.configure.linux.sparc,c.configure.x11" if="isLinux" />
<target name="c.configure.linux" depends="c.configure.linux.armv6,c.configure.linux.aarch64,c.configure.linux.x86,c.configure.linux.amd64,c.configure.linux.ia64,c.configure.linux.hppa,c.configure.linux.mips,c.configure.linux.mipsel,c.configure.linux.ppc,c.configure.linux.s390,c.configure.linux.sparc,c.configure.x11" if="isLinux" />

<target name="c.configure.android" if="isAndroid">
<echo message="Android" />
Expand Down
24 changes: 23 additions & 1 deletion make/build-newt.xml
Expand Up @@ -271,6 +271,12 @@
<compilerarg value="/usr/include" />
</compiler>

<compiler id="compiler.cfg.linux.aarch64.newt.x11" extends="compiler.cfg.linux.aarch64">
<!-- Need to force /usr/include headers on to include path (after all others), due to crosscompiler usage -->
<compilerarg value="-idirafter" />
<compilerarg value="/usr/include" />
</compiler>

<!-- linker configuration -->

<linker id="linker.cfg.freebsd.newt.x11" extends="linker.cfg.freebsd">
Expand Down Expand Up @@ -331,6 +337,12 @@
<syslibset dir="${env.TARGET_PLATFORM_ROOT}/usr/lib" libs="Xcursor" />
</linker>

<linker id="linker.cfg.linux.aarch64.newt.x11" extends="linker.cfg.linux.aarch64">
<syslibset dir="${env.TARGET_PLATFORM_ROOT}/usr/lib" libs="X11" />
<syslibset dir="${env.TARGET_PLATFORM_ROOT}/usr/lib" libs="Xrandr" />
<syslibset dir="${env.TARGET_PLATFORM_ROOT}/usr/lib" libs="Xcursor" />
</linker>

<linker id="linker.cfg.android.newt" extends="linker.cfg.android">
<syslibset dir="${env.TARGET_PLATFORM_ROOT}/usr/lib" libs="android" />
</linker>
Expand Down Expand Up @@ -431,6 +443,16 @@
<echo message="linker.cfg.id.oswin ${linker.cfg.id.oswin}" />
</target>

<target name="c.configure.linux.aarch64" if="isLinuxARM64">
<echo message="Linux.aarch64" />
<property name="compiler.cfg.id" value="compiler.cfg.linux.aarch64.newt.x11" />
<condition property="linker.cfg.id.oswin" value="linker.cfg.linux.aarch64.newt.x11"
else="linker.cfg.linux.aarch64">
<isset property="isX11" />
</condition>
<echo message="linker.cfg.id.oswin ${linker.cfg.id.oswin}" />
</target>

<target name="c.configure.linux.hppa" if="isLinuxHppa">
<echo message="Linux.hppa" />
<property name="compiler.cfg.id" value="compiler.cfg.linux" />
Expand Down Expand Up @@ -497,7 +519,7 @@
<property name="linker.cfg.id.oswin" value="linker.cfg.linux.newt.x11" />
</target>

<target name="c.configure.linux" depends="c.configure.linux.x86,c.configure.linux.amd64,c.configure.linux.armv6,c.configure.linux.hppa,c.configure.linux.mips,c.configure.linux.mipsel,c.configure.linux.ppc,c.configure.linux.s390,c.configure.linux.sparc,c.configure.linux.ia64,c.configure.x11" if="isLinux"/>
<target name="c.configure.linux" depends="c.configure.linux.x86,c.configure.linux.amd64,c.configure.linux.armv6,c.configure.linux.aarch64,c.configure.linux.hppa,c.configure.linux.mips,c.configure.linux.mipsel,c.configure.linux.ppc,c.configure.linux.s390,c.configure.linux.sparc,c.configure.linux.ia64,c.configure.x11" if="isLinux"/>

<target name="c.configure.android" if="isAndroid">
<echo message="Android" />
Expand Down
4 changes: 4 additions & 0 deletions make/scripts/adb-install-all-arm64-v8a.sh
@@ -0,0 +1,4 @@
#adb $* install ../build-android-aarch64/jogamp-android-launcher.apk
#adb $* install ../build-android-aarch64/gluegen-rt-android-arm64-v8a.apk
adb $* install ../build-android-aarch64/jar/jogl-all-android-arm64-v8a.apk
adb $* install ../build-android-aarch64/jar/jogl-test-android.apk
4 changes: 4 additions & 0 deletions make/scripts/adb-logcat.sh
@@ -1,4 +1,8 @@
sdir=`dirname $0`

#adb $* shell stop
#adb $* shell setprop log.redirect-stdio true
#adb $* shell setprop log.redirect-stderr true
#adb $* shell start
adb $* logcat -c
adb $* logcat 2>&1 | tee adb-logcat.log
5 changes: 5 additions & 0 deletions make/scripts/adb-reinstall-all-arm64-v8a.sh
@@ -0,0 +1,5 @@
sdir=`dirname $0`

$sdir/adb-uninstall-all.sh $*
$sdir/adb-install-all-arm64-v8a.sh $*

63 changes: 63 additions & 0 deletions make/scripts/make.jogl.all.android-aarch64-cross.sh
@@ -0,0 +1,63 @@
#! /bin/sh

SDIR=`dirname $0`

if [ -e $SDIR/../../../gluegen/make/scripts/setenv-build-jogl-x86_64.sh ] ; then
. $SDIR/../../../gluegen/make/scripts/setenv-build-jogl-x86_64.sh
fi

if [ -e $SDIR/../../../gluegen/make/scripts/setenv-android-tools.sh ] ; then
. $SDIR/../../../gluegen/make/scripts/setenv-android-tools.sh
fi

export NODE_LABEL=.

export HOST_UID=jogamp
# jogamp02 - 10.1.0.122
export HOST_IP=10.1.0.122
export HOST_RSYNC_ROOT=PROJECTS/JOGL

export TARGET_UID=jogamp
export TARGET_IP=panda02
#export TARGET_IP=jautab03
#export TARGET_IP=jauphone04
export TARGET_ADB_PORT=5555
# needs executable bit (probably su)
export TARGET_ROOT=/data/projects
export TARGET_ANT_HOME=/usr/share/ant

export ANDROID_VERSION=21
export SOURCE_LEVEL=1.6
export TARGET_LEVEL=1.6
export TARGET_RT_JAR=/opt-share/jre1.6.0_30/lib/rt.jar

#export GCC_VERSION=4.4.3
export GCC_VERSION=4.9
HOST_ARCH=linux-x86_64
export TARGET_TRIPLE=aarch64-linux-android

export NDK_TOOLCHAIN_ROOT=$NDK_ROOT/toolchains/${TARGET_TRIPLE}-${GCC_VERSION}/prebuilt/${HOST_ARCH}
export TARGET_PLATFORM_ROOT=${NDK_ROOT}/platforms/android-${ANDROID_VERSION}/arch-arm64

# Need to add toolchain bins to the PATH.
# May need to create symbolic links within $NDK_TOOLCHAIN_ROOT/$TARGET_TRIPLE/bin
# cd $NDK_TOOLCHAIN_ROOT/$TARGET_TRIPLE/bin
# ln -s ../../bin/aarch64-linux-android-gcc gcc
export PATH="$NDK_TOOLCHAIN_ROOT/$TARGET_TRIPLE/bin:$ANDROID_HOME/platform-tools:$ANDROID_HOME/build-tools/$ANDROID_BUILD_TOOLS_VERSION:$PATH"

export GLUEGEN_CPPTASKS_FILE=`pwd`/../../gluegen/make/lib/gluegen-cpptasks-android-aarch64.xml

#export JUNIT_DISABLED="true"
#export JUNIT_RUN_ARG0="-Dnewt.test.Screen.disableScreenMode"

echo PATH $PATH 2>&1 | tee make.jogl.all.android-aarch64-cross.log
echo gcc `which gcc` 2>&1 | tee -a make.jogl.all.android-aarch64-cross.log

#export JOGAMP_JAR_CODEBASE="Codebase: *.jogamp.org"
export JOGAMP_JAR_CODEBASE="Codebase: *.goethel.localnet"

# BUILD_ARCHIVE=true \
ant \
-Drootrel.build=build-android-aarch64 \
$* 2>&1 | tee -a make.jogl.all.android-aarch64-cross.log

6 changes: 3 additions & 3 deletions make/scripts/tests.sh
Expand Up @@ -231,7 +231,7 @@ function jrun() {
#D_ARGS="-Dnewt.debug.EDT"
#D_ARGS="-Dnewt.debug.Window -Dnewt.debug.Display -Dnewt.debug.EDT -Djogl.debug.GLContext"
#D_ARGS="-Dnewt.debug.Window -Djogl.debug.Animator -Dnewt.debug.Screen"
D_ARGS="-Dnativewindow.debug.JAWT -Dnewt.debug.Window -Djogl.debug.GLJPanel -Djogl.debug.GLCanvas"
D_ARGS="-Dnativewindow.debug.JAWT -Dnewt.debug.Window -Djogl.debug.GLJPanel -Djogl.debug.GLCanvas -Djogamp.debug.TempJarCache"
#D_ARGS="-Dnewt.debug.Window.KeyEvent"
#D_ARGS="-Dnewt.debug.Window.MouseEvent"
#D_ARGS="-Dnewt.debug.Window.MouseEvent -Dnewt.debug.Window.KeyEvent"
Expand Down Expand Up @@ -412,7 +412,7 @@ function testawtswt() {
# HiDPI
#
#testnoawt com.jogamp.opengl.test.junit.jogl.demos.es2.newt.TestGearsES2NEWT $*
testawt com.jogamp.opengl.test.junit.jogl.demos.es2.awt.TestGearsES2GLJPanelAWT $*
#testawt com.jogamp.opengl.test.junit.jogl.demos.es2.awt.TestGearsES2GLJPanelAWT $*
#testawt com.jogamp.opengl.test.junit.jogl.demos.es2.awt.TestGearsES2AWT $*
#testawt com.jogamp.opengl.test.junit.jogl.demos.es2.newt.TestGearsES2NewtCanvasAWT $*
#testnoawt com.jogamp.opengl.test.junit.jogl.glsl.TestRulerNEWT01 $*
Expand Down Expand Up @@ -840,7 +840,7 @@ testawt com.jogamp.opengl.test.junit.jogl.demos.es2.awt.TestGearsES2GLJPanelAWT
#testnoawt com.jogamp.opengl.test.junit.graph.demos.ui.UINewtDemo01 $*
#testnoawt com.jogamp.opengl.test.junit.graph.demos.GPUTextNewtDemo $*
#testnoawt com.jogamp.opengl.test.junit.graph.demos.GPURegionNewtDemo $*
#testnoawt com.jogamp.opengl.test.junit.graph.demos.GPUUISceneNewtDemo $*
testnoawt com.jogamp.opengl.test.junit.graph.demos.GPUUISceneNewtDemo $*
#testawt com.jogamp.opengl.test.junit.graph.demos.GPUUISceneNewtCanvasAWTDemo $*

#testnoawt com.jogamp.opengl.test.junit.jogl.demos.es2.av.MovieCube $*
Expand Down

0 comments on commit 9137288

Please sign in to comment.