Skip to content

Commit

Permalink
Generate and add *.apk files to the 7z archive [for deployment]
Browse files Browse the repository at this point in the history
  • Loading branch information
sgothel committed Mar 27, 2012
1 parent fd24d9e commit a704c54
Show file tree
Hide file tree
Showing 9 changed files with 149 additions and 4 deletions.
23 changes: 19 additions & 4 deletions build.xml
Expand Up @@ -29,6 +29,7 @@
<import file="${gluegen.root}/make/gluegen-cpptasks.xml" />
<import file="${gluegen.root}/make/jogamp-env.xml" />
<import file="${gluegen.root}/make/jogamp-archivetasks.xml" />
<import file="${gluegen.root}/make/jogamp-androidtasks.xml" />

<condition property="build.archiveon" value="true">
<isset property="c.dont.compile"/>
Expand All @@ -43,7 +44,8 @@

<!-- -post-init is after all properties are imported -->
<target name="-post-init" depends="jogamp.env.init,gluegen.cpptasks.detect.os">
<property name="jocl.version" value="${jocl_base_version}-b${jocl.build.number}-${version.timestamp}" />
<property name="jocl.version" value="${jocl_base_version}-b${jocl.build.number}-${version.timestamp}" />
<property name="jocl.version.plus" value="${jocl_base_version}-${jocl.build.branch}-b${jocl.build.number}-${jocl.build.commit}-${version.timestamp}" />
<property name="dist.zip.name" value="jocl-${jocl.version}-${os.and.arch}"/>
</target>

Expand Down Expand Up @@ -282,7 +284,7 @@

</target>

<target name="-post-jar" depends="jar.natives,tag.build,package-dist,archive-dist"/>
<target name="-post-jar" depends="jar.natives,android.package,tag.build,package-dist,archive-dist"/>

<target name="package-dist">
<!-- don't know how to get rid of the NetBeans readme file -->
Expand Down Expand Up @@ -315,7 +317,7 @@

<!-- jars and jared natives -->
<copy todir="${dist.dir}/tmp/${dist.zip.name}/jar" flatten="true">
<fileset dir="${dist.dir}" includes="jocl.jar,jocl-natives-*.jar"/>
<fileset dir="${dist.dir}" includes="jocl.jar,jocl*.apk,jocl-natives-*.jar"/>
</copy>
<copy todir="${dist.dir}/tmp/${dist.zip.name}/jnlp-files">
<fileset dir="." includes="*.jnlp"/>
Expand Down Expand Up @@ -351,9 +353,22 @@
<jar basedir="${natives.jocl.dir}/${namespace}" excludes="*.xml"
destfile="${dist.jar.dir}/jocl-natives-${os.and.arch}.jar"
manifest="${rootrel.build}/manifest.mf" />

</target>

<target name="android.package" if="isAndroid">
<aapt.signed
jarsrcdir="${src.java}"
jarbuilddir="${dist.jar.dir}"
jarbasename="jocl"
nativebuilddir="${natives.jocl.dir}/${namespace}"
nativebasename=""
android.abi="${android.abi}"
androidmanifest.path="resources/android/AndroidManifest-jocl.xml"
androidresources.path="resources/android/res-jocl"
jarmanifest.path="${rootrel.build}/manifest.mf"
version.code="${jocl_int_version}"
version.name="${jocl.version.plus}" />
</target>

<target name="c.compile.default" depends="gluegen.cpptasks.detect.os, gluegen.cpptasks.detect.compiler, jocl.c.compile, c.rename.lib.mingw" />

Expand Down
1 change: 1 addition & 0 deletions nbproject/project.properties
Expand Up @@ -99,6 +99,7 @@ jar.classpath=

#the jocl version you are building
jocl_base_version=0.9
jocl_int_version=0

#force enable jdk7 features
#enable.jdk7.features=true
Expand Down
17 changes: 17 additions & 0 deletions resources/android/AndroidManifest-jocl.xml
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
sharedUserId="com.jogamp.Community"
package="com.jogamp.opencl">

<uses-sdk android:minSdkVersion="9" />
<uses-library android:name="com.jogamp.common" android:required="true" />
<uses-library android:name="javax.media.opengl" android:required="true" />

<application android:icon="@drawable/icon"
android:label="@string/app_name"
android:description="@string/app_descr"
android:persistent="false"
>
</application>

</manifest>
Binary file added resources/android/res-jocl/drawable-hdpi/icon.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added resources/android/res-jocl/drawable-ldpi/icon.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added resources/android/res-jocl/drawable-mdpi/icon.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
12 changes: 12 additions & 0 deletions resources/android/res-jocl/layout/main.xml
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
</LinearLayout>
8 changes: 8 additions & 0 deletions resources/android/res-jocl/values/strings.xml
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Jocl Library</string>
<string name="app_name">JogAmp\'s Jocl Library</string>
<string name="app_descr">Contains Dalvik and native code, supporting native bindings.</string>
<string name="activity_v_name">Jocl</string>
<string name="activity_v_descr">The Jocl Library.</string>
</resources>
92 changes: 92 additions & 0 deletions scripts/make.jocl.all.android-armv7-cross.sh
@@ -0,0 +1,92 @@
#! /bin/sh

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

echo ANDROID_SDK_HOME $ANDROID_SDK_HOME
echo NDK_ROOT $NDK_ROOT

if [ -z "$NDK_ROOT" ] ; then
#
# Generic android-ndk
#
if [ -e /usr/local/android-ndk ] ; then
NDK_ROOT=/usr/local/android-ndk
elif [ -e /opt-linux-x86/android-ndk ] ; then
NDK_ROOT=/opt-linux-x86/android-ndk
elif [ -e /opt/android-ndk ] ; then
NDK_ROOT=/opt/android-ndk
#
# Specific android-ndk-r7b
#
elif [ -e /usr/local/android-ndk-r7b ] ; then
NDK_ROOT=/usr/local/android-ndk-r7b
elif [ -e /opt-linux-x86/android-ndk-r7b ] ; then
NDK_ROOT=/opt-linux-x86/android-ndk-r7b
elif [ -e /opt/android-ndk-r7b ] ; then
NDK_ROOT=/opt/android-ndk-r7b
else
echo NDK_ROOT is not specified and does not exist in default locations
exit 1
fi
elif [ ! -e $NDK_ROOT ] ; then
echo NDK_ROOT $NDK_ROOT does not exist
exit 1
fi
export NDK_ROOT

if [ -z "$ANDROID_SDK_HOME" ] ; then
if [ -e /usr/local/android-sdk-linux_x86 ] ; then
ANDROID_SDK_HOME=/usr/local/android-sdk-linux_x86
elif [ -e /opt-linux-x86/android-sdk-linux_x86 ] ; then
ANDROID_SDK_HOME=/opt-linux-x86/android-sdk-linux_x86
elif [ -e /opt/android-sdk-linux_x86 ] ; then
ANDROID_SDK_HOME=/opt/android-sdk-linux_x86
else
echo ANDROID_SDK_HOME is not specified and does not exist in default locations
exit 1
fi
elif [ ! -e $ANDROID_SDK_HOME ] ; then
echo ANDROID_SDK_HOME $ANDROID_SDK_HOME does not exist
exit 1
fi
export ANDROID_SDK_HOME

export ANDROID_VERSION=9
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
HOST_ARCH=linux-x86
export TARGET_TRIPLE=arm-linux-androideabi

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-arm

# Need to add toolchain bins to the PATH.
export PATH="$NDK_TOOLCHAIN_ROOT/$TARGET_TRIPLE/bin:$ANDROID_SDK_HOME/platform-tools:$PATH"

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

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

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

0 comments on commit a704c54

Please sign in to comment.