#! /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/jar ] ; then # Autobuild JOGL_BUILD_DIR=$THISDIR/jar 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