#!/bin/sh
#
#   Runs mpiJava program
#
JAVA_DIR=/usr/java1.2
MPIJAVA_DIR=/nfs/mcs-homes07/petsc/software/mpiJava-1.1
#
#   Parse the first command line arguments
#
if [ $# -lt 1 ]
then
  echo "Usage: mpijavarun <procnum> <classname> <options>"
  exit 1
fi

PNUMBER=$1
shift

CLASSNAME=$1
shift

#
#   Create a temporary file that MPIRUN will actually run
#
rm -f $CLASSNAME.jig
cat > $CLASSNAME.jig <<EOF
#!/bin/sh
JAVA_DIR=/usr/java1.2
MPIJAVA_DIR=/nfs/mcs-homes07/petsc/software/mpiJava-1.1

if test "$CLASSPATH" = ""
then
    CLASSPATH=.:${MPIJAVA_DIR}/lib/classes
    export CLASSPATH
    LD_LIBRARY_PATH=${MPIJAVA_DIR}/lib
    export LD_LIBRARY_PATH
else
    CLASSPATH=.:${MPIJAVA_DIR}/lib/classes:$CLASSPATH
    export CLASSPATH
    LD_LIBRARY_PATH=${MPIJAVA_DIR}/lib
    export LD_LIBRARY_PATH
fi

cd \`dirname \$0\`
exec $JAVA_DIR/bin/java -native $CLASSNAME $CLASSNAME \$*
EOF
chmod a+x $CLASSNAME.jig
#
#  Run mpirun on the file
#
mpirun -np $PNUMBER $CLASSNAME.jig $*
#
#  Remove the temporary file
#
rm -f $CLASSNAME.jig

