#!/bin/sh # /bin/sh on Solaris is not a POSIX compatible shell, but /usr/bin/ksh is. if [ `uname -s` = 'SunOS' -a "${POSIX_SHELL}" != "true" ]; then POSIX_SHELL="true" export POSIX_SHELL exec /usr/bin/ksh $0 "$@" fi # clear it so if we invoke other scripts, they run as ksh as well unset POSIX_SHELL ## This script replaces the default "erl" in erts-VSN/bin. This is ## necessary as escript depends on erl and in turn, erl depends on ## having access to a bootscript (start.boot). Note that this script ## is ONLY invoked as a side-effect of running escript -- the embedded ## node bypasses erl and uses erlexec directly (as it should). ## ## Note that this script makes the assumption that there is a ## start_clean.boot file available in $ROOTDIR/release/VSN. # Determine the abspath of where this script is executing from. ERTS_BIN_DIR=$(cd ${0%/*} && pwd -P) # Now determine the root directory -- this script runs from erts-VSN/bin, # so we simply need to strip off two dirs from the end of the ERTS_BIN_DIR # path. ROOTDIR=${ERTS_BIN_DIR%/*/*} # Parse out release and erts info START_ERL=`cat $ROOTDIR/releases/start_erl.data` ERTS_VSN=${START_ERL% *} APP_VSN=${START_ERL#* } BINDIR=$ROOTDIR/erts-$ERTS_VSN/bin EMU=beam PROGNAME=`echo $0 | sed 's/.*\\///'` CMD="$BINDIR/erlexec" export EMU export ROOTDIR export BINDIR export PROGNAME exec $CMD -boot $ROOTDIR/releases/$APP_VSN/start_clean ${1+"$@"}