diff options
Diffstat (limited to 'etc')
-rwxr-xr-x | etc/profile.jogl | 145 |
1 files changed, 145 insertions, 0 deletions
diff --git a/etc/profile.jogl b/etc/profile.jogl new file mode 100755 index 000000000..4d24c4714 --- /dev/null +++ b/etc/profile.jogl @@ -0,0 +1,145 @@ +#! /bin/sh + +function print_usage() +{ + echo "Usage: $0 {JOGL_ALLALL|JOGL_ALL|JOGL_ALL_NOAWT|JOGL_ES1_MIN|JOGL_ES1_MAX|JOGL_ES2_MIN|JOGL_ES2_MAX|JOGL_GL2ES12_MIN|JOGL_GL2ES12_MAX|JOGL_GLDESKTOP_MIN|JOGL_GLDESKTOP_MAX} [jogl-build-dir]" +} + +function concat_jogl_list() +{ + ITEMDIR=$1 + shift + 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 + JOGL_LIST=$j/$i + else + JOGL_LIST=$JOGL_LIST:$j/$i + fi + fi + done + done + echo $JOGL_LIST +} + +uname -a | grep -i LINUX && OSS=x11 +uname -a | grep -i Darwin && OSS=osx + +JOGL_AWT="jogl.awt.jar jogl.util.awt.jar newt.awt.jar nativewindow.awt.jar" + +JOGL_CORE="nativewindow.core.jar nativewindow.os.$OSS.jar jogl.core.jar jogl.os.$OSS.jar newt.core.jar newt.os.$OSS.jar newt.ogl.jar jogl.util.jar" + +JOGL_TEST="jogl.test.jar" + +JOGL_JAR_ALL_NOAWT="$JOGL_CORE jogl.gles1.jar jogl.gles1.dbg.jar jogl.gles2.jar jogl.gles2.dbg.jar jogl.egl.jar jogl.os.$OSS.jar jogl.gl2es12.jar jogl.gldesktop.jar jogl.gldesktop.dbg.jar jogl.util.gldesktop.jar jogl.glu.tess.jar jogl.glu.mipmap.jar jogl.glu.gldesktop.jar jogl.util.gldesktop.jar jogl.util.fixedfuncemu.jar jogl.cg.jar" +JOGL_JAR_ALL="$JOGL_JAR_ALL_NOAWT $JOGL_AWT" +JOGL_LIB_ALL="libjogl_desktop.so libjogl_es1.so libjogl_es2.so libnewt.so libjogl_awt.so" + +JOGL_JAR_ES1_MIN="$JOGL_CORE jogl.gles1.jar jogl.gles1.dbg.jar jogl.egl.jar" +JOGL_JAR_ES1_MAX="$JOGL_CORE jogl.gles1.jar jogl.gles1.dbg.jar jogl.egl.jar jogl.glu.tess.jar jogl.glu.mipmap.jar $JOGL_AWT" +JOGL_LIB_ES1_MIN="libjogl_es1.so libnewt.so" +JOGL_LIB_ES1_MAX="libjogl_es1.so libnewt.so libjogl_awt.so libnativewindow_x11.so libnativewindow_awt.so" + +JOGL_JAR_ES2_MIN="$JOGL_CORE jogl.gles2.jar jogl.gles2.dbg.jar jogl.egl.jar jogl.util.fixedfuncemu.jar" +JOGL_JAR_ES2_MAX="$JOGL_CORE jogl.gles2.jar jogl.gles2.dbg.jar jogl.egl.jar jogl.util.fixedfuncemu.jar jogl.glu.tess.jar $JOGL_AWT" +JOGL_LIB_ES2_MIN="libjogl_es2.so libnewt.so" +JOGL_LIB_ES2_MAX="libjogl_es2.so libnewt.so libjogl_awt.so libnativewindow_x11.so libnativewindow_awt.so" + +JOGL_JAR_GL2ES12_MIN="$JOGL_CORE jogl.os.$OSS.jar jogl.gl2es12.jar jogl.gles1.dbg.jar jogl.gles2.dbg.jar jogl.util.fixedfuncemu.jar" +JOGL_JAR_GL2ES12_MAX="$JOGL_CORE jogl.os.$OSS.jar jogl.gl2es12.jar jogl.gles1.dbg.jar jogl.gles2.dbg.jar jogl.util.fixedfuncemu.jar jogl.gl2es12.dbg.jar jogl.glu.tess.jar jogl.glu.mipmap.jar $JOGL_AWT" +JOGL_LIB_GL2ES12_MIN="libjogl_gl2es12.so libnewt.so libnativewindow_x11.so libnativewindow_awt.so" +JOGL_LIB_GL2ES12_MAX="libjogl_gl2es12.so libnewt.so libnativewindow_x11.so libnativewindow_awt.so" + +JOGL_JAR_GLDESKTOP_MIN="$JOGL_CORE jogl.os.$OSS.jar jogl.gldesktop.jar jogl.gldesktop.dbg.jar" +JOGL_JAR_GLDESKTOP_MAX="$JOGL_CORE jogl.os.$OSS.jar jogl.gldesktop.jar jogl.gldesktop.dbg.jar jogl.glu.tess.jar jogl.glu.mipmap.jar jogl.glu.gldesktop.jar jogl.util.gldesktop.jar $JOGL_AWT jogl.cg.jar" +JOGL_LIB_GLDESKTOP_MIN="libjogl_desktop.so libnewt.so libnativewindow_x11.so libnativewindow_awt.so" +JOGL_LIB_GLDESKTOP_MAX="libjogl_desktop.so libnewt.so libnativewindow_x11.so libnativewindow_awt.so" + +export JOGL_JAR_ALL JOGL_JAR_ALL_NOAWT 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_GLDESKTOP_MIN JOGL_JAR_GLDESKTOP_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_GLDESKTOP_MIN JOGL_LIB_GLDESKTOP_MAX + +THISDIR=`dirname $0` + +JOGL_PROFILE="$1" +shift + +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 "$JOGL_PROFILE" ] ; then + case "$JOGL_PROFILE" in + JOGL_ALLALL) + JOGL_CLASSPATH=$(concat_jogl_list $JOGL_BUILD_DIR gluegen-rt.jar nativewindow.all.jar jogl.all.jar newt.all.jar $JOGL_TEST) + ;; + JOGL_ALL) + JOGL_CLASSPATH=$(concat_jogl_list $JOGL_BUILD_DIR $JOGL_JAR_ALL $JOGL_TEST) + ;; + JOGL_ALL_NOAWT) + JOGL_CLASSPATH=$(concat_jogl_list $JOGL_BUILD_DIR $JOGL_JAR_ALL_NOAWT) + ;; + JOGL_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_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_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_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_BUILD_DIR $JOGL_JAR_GL2ES12_MIN) + ;; + JOGL_GL2ES12_MAX) + JOGL_CLASSPATH=$(concat_jogl_list $JOGL_BUILD_DIR $JOGL_JAR_GL2ES12_MAX) + ;; + JOGL_GLDESKTOP_MIN) + JOGL_CLASSPATH=$(concat_jogl_list $JOGL_BUILD_DIR $JOGL_JAR_GLDESKTOP_MIN) + ;; + JOGL_GLDESKTOP_MAX) + JOGL_CLASSPATH=$(concat_jogl_list $JOGL_BUILD_DIR $JOGL_JAR_GLDESKTOP_MAX) + ;; + esac + + export JOGL_CLASSPATH +fi + +if [ -z "$JOGL_CLASSPATH" ] ; then + print_usage +fi + |