Newer
Older
#!/bin/bash
#
# This script should only be called by the ioc at boot time.
# The startup script should have the following line:
# bootNotify SLSBASE,"sls/bin/iocBootNotify.sh"
if [ "$1" = "-v" ]
then
echo '$Source: /cvs/G/DRV/misc/App/scripts/iocBootNotify.sh,v $'
if [ "$1" = "-h" ] || [ "$1" = "-?" ]
then
echo "Usage:" >&2
echo " iocBootNotify.sh \\" >&2
echo " <system> \\" >&2
echo " <ipaddr> \\" >&2
echo " <procnum> \\" >&2
echo " <device> \\" >&2
echo " <bootfile> \\" >&2
echo " <script> \\" >&2
echo " <vxworksver> \\" >&2
echo " <epicsver> \\" >&2
echo " <ethaddr>" >&2
exit 0
fi
if [ $# -lt 9 ] || [ "$1" = "-h" ] || [ "$1" = "-?" ]
then
echo "This script should only be called by an IOC at boot time!" >&2
exit 1
fi
#. /etc/profile
SYSTEM=$1
IPADDR=$2
PROCNUM=$3
DEVICE=$4
BOOTFILE=$5
SCRIPT=$6
EPICSVER=$8
ETHADDR=$9
if [ ! -L /ioc/$SYSTEM ]
then
echo "ERROR: $SYSTEM is not an existing system name."
echo "Rename 'target name' to your system name!"
exit 1
fi
case $SYSTEM in
( *-VME-* ) ;;
( * ) echo "ERROR: $SYSTEM is not an acceptable system name."
echo "Rename your system and 'target name' to match *-VME-*."
exit 1 ;;
esac
link=$(readlink /ioc/$SYSTEM)
SLSBASE=${link%%/iocBoot*}
BOOTPC=$(hostname -s)
if [ -L $BOOTFILE ]
then
link=$(readlink $BOOTFILE)
VXWORKS=$SLSBASE/${link##*../}
else
VXWORKS=$BOOTFILE
fi
echo "I will put the following values to the database:"
echo "SYSTEM=$SYSTEM"
echo "IPADDR=$IPADDR"
echo "PROCNUM=$PROCNUM"
echo "DEVICE=$DEVICE"
echo "BOOTPC=$BOOTPC"
echo "SLSBASE=$SLSBASE"
echo "BOOTFILE=$BOOTFILE"
echo "SCRIPT=$SCRIPT"
echo "VXWORKS=$VXWORKS"
echo "EPICSVER=$EPICSVER"
echo "VXWORKSVER=$VXWORKSVER"
echo "ETHADDR=$ETHADDR"
$SLSBASE/sls/bin/call_ioc_ins $SYSTEM $IPADDR $PROCNUM $DEVICE \
$BOOTPC $SLSBASE $BOOTFILE $SCRIPT $VXWORKS $EPICSVER \
$VXWORKSVER $ETHADDR
exit
#--------------------------------------------------#
# emacs setup - force text mode to prevent emacs #
# from helping with the indentation! #
# Local Variables: #
# mode:text #
# indent-tabs-mode:nil #
# End: #
#--------------------------------------------------#
#
#---------------------------------------- End of $RCSfile: iocBootNotify.sh,v $