Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] View of /sml/trunk/config/_run-sml
ViewVC logotype

View of /sml/trunk/config/_run-sml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 211 - (download) (annotate)
Fri Jan 15 16:19:21 1999 UTC (20 years, 11 months ago) by monnier
Original Path: sml/branches/SMLNJ/config/_run-sml
File size: 2228 byte(s)
version 110.10
#!@SHELL@
#
# The standard driver for SML/NJ under the new runtime system
#

CMD=`basename $0`

#
# for /bin/ksh, disable reading user's environment file
#
unset ENV

#############################################################################
#
# BEGIN SITE SPECIFIC STUFF
#
#############################################################################

#
# SITE SPECIFIC CONFIGURATION INFO
#

# the path of the directory in which executables (like this file) are kept.
BIN_DIR=@BINDIR@

# the path of the directory in which the runtime system executables are kept.
RUN_DIR=$BIN_DIR/.run

# the path of the directory in which the heap images are kept.
HEAP_DIR=$BIN_DIR/.heap

#
# the following could be replaced with some site specific code
#
ARCH_N_OPSYS=`$BIN_DIR/.arch-n-opsys`
if [ "$?" != "0" ]; then
  echo "$CMD: unable to determine architecture/operating system"
  exit 1
fi
eval $ARCH_N_OPSYS

#############################################################################
#
# END SITE SPECIFIC STUFF
#
#############################################################################

#
# Process command line arguments
#
ARGS=""
while [ "$#" != "0" ]; do
  arg=$1; shift
  case $arg in
    @SMLrun=*)
      RUN=`echo $arg | sed 's/@SMLrun=//'`
      ;;
    @SMLload=*)
      HEAP=$arg;
      ;;
    @SMLappl)
      if [ "$#" = "0" ]; then
        echo "$CMD: missing argument for @SMLappl option"
        exit 1
      fi
      APPL=$1; shift
      ;;
    @SMLversion)
      echo "$CMD @VERSION@"
      exit 0
      ;;
    *)
      ARGS="$ARGS $arg"
      ;;
  esac
done

if [ "$RUN" = "" ]; then
  #
  # Construct the runtime system path from the ARCH and OS
  #
  RUN="$RUN_DIR/run.$ARCH-$OPSYS"
  if [ ! -x "$RUN" ]; then
    if [ "$ALT_OPSYS" = "" ]; then
      echo "$CMD: cannot find runtime system $RUN"
      exit 1
    else
      RUN="$RUN_DIR/run.$ARCH-$ALT_OPSYS"
      if [ ! -x "$RUN" ]; then
	echo "$CMD: cannot find runtime system $RUN"
	exit 1
      fi
    fi
  fi
fi

if [ "$HEAP" = "" ]; then
  #
  # Construct the heap image path from the APPL and ARCH
  #
  if [ "$APPL" = "" ]; then
    APPL=$CMD
  fi
  HEAP="@SMLload=$HEAP_DIR/$APPL"
fi

#
# run the sucker!
#
exec $RUN @SMLcmdname=$0 $HEAP $ARGS

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0