diff options
Diffstat (limited to 'etc')
-rwxr-xr-x | etc/profile.jogl | 75 |
1 files changed, 53 insertions, 22 deletions
diff --git a/etc/profile.jogl b/etc/profile.jogl index 517e39b65..5ed6e01d7 100755 --- a/etc/profile.jogl +++ b/etc/profile.jogl @@ -1,10 +1,15 @@ #! /bin/sh +function print_usage() +{ + echo "Usage: $0 {JOGL_ALL|JOGL_ES1_MIN|JOGL_ES1_MAX|JOGL_ES2_MIN|JOGL_ES2_MAX|JOGL_GL2ES12_MIN|JOGL_GL2ES12_MAX|JOGL_GL2_MIN|JOGL_GL2_MAX} [jogl-build-dir]" +} + function concat_jogl_list() { ITEMDIR=$1 shift - for j in $ITEMDIR/nativewindow $ITEMDIR/jogl $ITEMDIR/newt ; do + for j in $ITEMDIR/nativewindow $ITEMDIR/jogl $ITEMDIR/newt $ITEMDIR ; do for i in $* ; do if [ -e $j/$i ] ; then if [ -z "$JOGL_LIST" ] ; then @@ -25,7 +30,7 @@ JOGL_AWT="jogl.awt.jar jogl.util.awt.jar newt.awt.jar nativewindow.awt.jar" JOGL_CORE="nativewindow.core.jar jogl.core.jar newt.core.jar newt.ogl.jar jogl.util.jar" -JOGL_JAR_ALL="$JOGL_CORE jogl.gles1.jar jogl.gles1.dbg.jar jogl.gles2.jar jogl.gles2.dbg.jar jogl.egl.jar jogl.gl2es12.$OSS.jar jogl.gl2es12.dbg.jar jogl.gl2.$OSS.jar jogl.gl2.dbg.jar jogl.util.gl2.jar jogl.glu.tess.jar jogl.glu.mipmap.jar jogl.glu.gl2.jar jogl.util.gl2.jar jogl.util.fixedfuncemu.jar $JOGL_AWT" +JOGL_JAR_ALL="$JOGL_CORE jogl.gles1.jar jogl.gles1.dbg.jar jogl.gles2.jar jogl.gles2.dbg.jar jogl.egl.jar jogl.gl2es12.$OSS.jar jogl.gl2es12.dbg.jar jogl.gl2.$OSS.jar jogl.gl2.dbg.jar jogl.util.gl2.jar jogl.glu.tess.jar jogl.glu.mipmap.jar jogl.glu.gl2.jar jogl.util.gl2.jar jogl.util.fixedfuncemu.jar $JOGL_AWT jogl.cg.jar" JOGL_LIB_ALL="libjogl_gl2.so libjogl_es1.so libjogl_es2.so libnewt.so libjogl_awt.so" JOGL_JAR_ES1_MIN="$JOGL_CORE jogl.gles1.jar jogl.egl.jar" @@ -44,55 +49,81 @@ JOGL_LIB_GL2ES12_MIN="libjogl_gl2es12.so libnewt.so libnativewindow_x11.so libna JOGL_LIB_GL2ES12_MAX="libjogl_gl2es12.so libnewt.so libnativewindow_x11.so libnativewindow_awt.so" JOGL_JAR_GL2_MIN="$JOGL_CORE jogl.gl2.$OSS.jar" -JOGL_JAR_GL2_MAX="$JOGL_CORE jogl.gl2.$OSS.jar jogl.gl2.dbg.jar jogl.glu.tess.jar jogl.glu.mipmap.jar jogl.glu.gl2.jar jogl.util.gl2.jar $JOGL_AWT" +JOGL_JAR_GL2_MAX="$JOGL_CORE jogl.gl2.$OSS.jar jogl.gl2.dbg.jar jogl.glu.tess.jar jogl.glu.mipmap.jar jogl.glu.gl2.jar jogl.util.gl2.jar $JOGL_AWT jogl.cg.jar" JOGL_LIB_GL2_MIN="libjogl_gl2.so libnewt.so libnativewindow_x11.so libnativewindow_awt.so" JOGL_LIB_GL2_MAX="libjogl_gl2.so libnewt.so libnativewindow_x11.so libnativewindow_awt.so" export JOGL_JAR_ALL JOGL_JAR_ES1_MIN JOGL_JAR_ES1_MAX JOGL_JAR_ES2_MIN JOGL_JAR_ES2_MAX JOGL_JAR_GL2ES12_MIN JOGL_JAR_GL2ES12_MAX JOGL_JAR_GL2_MIN JOGL_JAR_GL2_MAX export JOGL_LIB_ALL JOGL_LIB_ES1_MIN JOGL_LIB_ES1_MAX JOGL_LIB_ES2_MIN JOGL_LIB_ES2_MAX JOGL_LIB_GL2ES12_MIN JOGL_LIB_GL2ES12_MAX JOGL_LIB_GL2_MIN JOGL_LIB_GL2_MAX -JOGL_JAR_DIR="" -if [ ! -z "$1" ] ; then - JOGL_JAR_DIR="$1" - shift -fi -export JOGL_JAR_DIR +THISDIR=`dirname $0` + +JOGL_PROFILE="$1" +shift -JOGL_LIB_DIR=$JOGL_JAR_DIR/nativewindow/obj:$JOGL_JAR_DIR/jogl/obj:$JOGL_JAR_DIR/newt/obj +if [ -z "$JOGL_PROFILE" ] ; then + echo JOGL PROFILE missing + print_usage +fi + +JOGL_BUILD_DIR="$1" +shift + +AUTOBUILD=0 + +if [ ! -z "$JOGL_BUILD_DIR" -a -e "$JOGL_BUILD_DIR" ] ; then + AUTOBUILD=0 +elif [ -e $THISDIR/../lib ] ; then + # Autobuild + JOGL_BUILD_DIR=$THISDIR/../lib + AUTOBUILD=1 +else + echo invalid JOGL_BUILD_DIR $JOGL_BUILD_DIR and no AUTOBUILD + print_usage +fi +export JOGL_BUILD_DIR + +JOGL_LIB_DIR="" +if [ $AUTOBUILD -eq 0 ] ; then + JOGL_LIB_DIR=$JOGL_BUILD_DIR/nativewindow/obj:$JOGL_BUILD_DIR/jogl/obj:$JOGL_BUILD_DIR/newt/obj +else + # Autobuild + JOGL_LIB_DIR=$THISDIR/../lib +fi export JOGL_LIB_DIR -if [ ! -z "$1" ] ; then - case "$1" in +if [ ! -z "$JOGL_PROFILE" ] ; then + case "$JOGL_PROFILE" in JOGL_ALL) - JOGL_CLASSPATH=$(concat_jogl_list $JOGL_JAR_DIR $JOGL_JAR_ALL) + JOGL_CLASSPATH=$(concat_jogl_list $JOGL_BUILD_DIR $JOGL_JAR_ALL) ;; JOGL_ES1_MIN) - JOGL_CLASSPATH=$(concat_jogl_list $JOGL_JAR_DIR $JOGL_JAR_ES1_MIN) + JOGL_CLASSPATH=$(concat_jogl_list $JOGL_BUILD_DIR $JOGL_JAR_ES1_MIN) JOGL_VBO_BUG=true ; export JOGL_VBO_BUG # ES emulation has buggy VBO impl. ;; JOGL_ES1_MAX) - JOGL_CLASSPATH=$(concat_jogl_list $JOGL_JAR_DIR $JOGL_JAR_ES1_MAX) + JOGL_CLASSPATH=$(concat_jogl_list $JOGL_BUILD_DIR $JOGL_JAR_ES1_MAX) JOGL_VBO_BUG=true ; export JOGL_VBO_BUG # ES emulation has buggy VBO impl. ;; JOGL_ES2_MIN) - JOGL_CLASSPATH=$(concat_jogl_list $JOGL_JAR_DIR $JOGL_JAR_ES2_MIN) + JOGL_CLASSPATH=$(concat_jogl_list $JOGL_BUILD_DIR $JOGL_JAR_ES2_MIN) JOGL_VBO_BUG=true ; export JOGL_VBO_BUG # ES emulation has buggy VBO impl. ;; JOGL_ES2_MAX) - JOGL_CLASSPATH=$(concat_jogl_list $JOGL_JAR_DIR $JOGL_JAR_ES2_MAX) + JOGL_CLASSPATH=$(concat_jogl_list $JOGL_BUILD_DIR $JOGL_JAR_ES2_MAX) JOGL_VBO_BUG=true ; export JOGL_VBO_BUG # ES emulation has buggy VBO impl. ;; JOGL_GL2ES12_MIN) - JOGL_CLASSPATH=$(concat_jogl_list $JOGL_JAR_DIR $JOGL_JAR_GL2ES12_MIN) + JOGL_CLASSPATH=$(concat_jogl_list $JOGL_BUILD_DIR $JOGL_JAR_GL2ES12_MIN) ;; JOGL_GL2ES12_MAX) - JOGL_CLASSPATH=$(concat_jogl_list $JOGL_JAR_DIR $JOGL_JAR_GL2ES12_MAX) + JOGL_CLASSPATH=$(concat_jogl_list $JOGL_BUILD_DIR $JOGL_JAR_GL2ES12_MAX) ;; JOGL_GL2_MIN) - JOGL_CLASSPATH=$(concat_jogl_list $JOGL_JAR_DIR $JOGL_JAR_GL2_MIN) + JOGL_CLASSPATH=$(concat_jogl_list $JOGL_BUILD_DIR $JOGL_JAR_GL2_MIN) ;; JOGL_GL2_MAX) - JOGL_CLASSPATH=$(concat_jogl_list $JOGL_JAR_DIR $JOGL_JAR_GL2_MAX) + JOGL_CLASSPATH=$(concat_jogl_list $JOGL_BUILD_DIR $JOGL_JAR_GL2_MAX) ;; esac @@ -100,6 +131,6 @@ if [ ! -z "$1" ] ; then fi if [ -z "$JOGL_CLASSPATH" ] ; then - echo "Usage: $0 <jogl-jar-dir> <jogl-lib-dir> {JOGL_ALL|JOGL_ES1_MIN|JOGL_ES1_MAX|JOGL_ES2_MIN|JOGL_ES2_MAX|JOGL_GL2ES12_MIN|JOGL_GL2ES12_MAX|JOGL_GL2_MIN|JOGL_GL2_MAX}" + print_usage fi |