#!/bin/sh # # $Id: pvmd,v 1.5 2000/02/14 20:30:37 pvmsrc Exp $ # # Start the appropriate pvmd3. # If PVM_ROOT is not set in environment, # we try to guess it by combining the working directory with # argv[0], otherwise it defaults to $HOME/pvm3. # If PVM_ARCH is not set, # we get it by execing $PVMROOT/lib/pvmgetarch. # Called with "-exe" flag executes "pvm.exe" instead of "pvm" (OS2). # # 03 Jun 1994 Manchek # case "x$PVM_ROOT" in x ) case "$0" in /*) PVM_ROOT="$0" ;; *) PVM_ROOT=`pwd`/"$0" ;; esac PVM_ROOT=`echo "$PVM_ROOT" | sed -e 's/\/lib\/pvmd//'` if [ -d $PVM_ROOT ]; then export PVM_ROOT else if [ -d $HOME/pvm3 ]; then PVM_ROOT=$HOME/pvm3 export PVM_ROOT else echo pvmd: PVM_ROOT not defined >&2 exit 1 fi fi ;; esac # # these lines let you set environment variables on systems # where a shell profile doesn't get read when rshing in. # if [ -f $PVM_ROOT/.pvmprofile ]; then . $PVM_ROOT/.pvmprofile fi if [ -f $HOME/.pvmprofile ]; then . $HOME/.pvmprofile fi case "x$PVM_ARCH" in x | xUNKNOWN ) PVM_ARCH="`$PVM_ROOT/lib/pvmgetarch`" case "x$PVM_ARCH" in x ) echo pvmd: can\'t set arch >&2 exit 1 ;; esac ;; esac export PVM_ARCH # make a joyful noise. case "x$PVM_ARCH" in xSGI | xSGI5 | xSGI6 | xSGIMP | xSGIMP6 | xSGI64 | xSGIMP64 ) trap '' 2 ;; xPGON ) # for PGONs with pexec PEXEC=/bin/pexec # change this if pexec resides elsewhere if [ -x $PEXEC ]; then if [ "x$NX_DFLT_SIZE" = x ]; then NX_DFLT_SIZE=1; fi for args do if [ "$args" = "-s" -o "$args" = "-S" ]; then PGONSLAVE="-f"; fi if [ "$CLSIZE" = "t" ]; then CLSIZE="f"; NX_DFLT_SIZE=$args; fi if [ "$args" = "-sz" ]; then CLSIZE="t"; fi done PGONCALL="$PVM_ROOT/lib/$PVM_ARCH/pvmd3 $PGONSLAVE $*" exec $PEXEC "$PGONCALL" -sz $NX_DFLT_SIZE exit 1 fi ;; esac if [ "$1" = '-exe' ]; then sfx=".exe" shift else sfx="" fi if [ ! -f $PVM_ROOT/lib/$PVM_ARCH/pvmd3$sfx ]; then echo "pvmd: $PVM_ROOT/lib/$PVM_ARCH/pvmd3$sfx doesn't exist." >&2 echo "Make sure PVM is built and PVM_ROOT is set correctly" >&2 exit 1 fi case "x$PVMD_NOHOLD" in x | xNO ) exec $PVM_ROOT/lib/$PVM_ARCH/pvmd3$sfx $@ ;; * ) # Don't hold shell - put pvmd3 in background # (apparently helps with init scripts in RedHat Linux) # - change submitted by "Mike Wangsmo" $PVM_ROOT/lib/$PVM_ARCH/pvmd3$sfx $@ & ;; esac exit 0