#!/bin/sh
#
# picdrv:   This shell script takes care of configuring the ICEPIC driver
#
ocwd=$cwd

case "$1" in
  make)
	cd /usr/sys/BINARY 
	rm -f picdrv.o 
	/sbin/make icepic.mod
	;;
  install)
	if [ "$ICEROOT" = "" ]; then
	  ICEROOT=`pwd | sed 's/\/drv\/osf//'`
	fi
	if [ ! -d $ICEROOT ]
	then
	  echo "Directory ICEROOT = $ICEROOT does not exist"
	  exit 1
	fi
	echo "Installing ICE Driver from $ICEROOT"
	echo "If OSF 5.1B or later, set _OSF51B_PLUS to 1 at top of picdrv.c"
	echo "Make sure /sbin is at the top of your path !!!"
	echo "$ICEROOT/drv/osf:" >> /usr/sys/conf/BINARY.list
	echo "Verify entry in /usr/sys/conf/BINARY.list"
	vi /usr/sys/conf/BINARY.list
	filename=$ICEROOT/drv/osf/files
	echo "MODULE/STATIC/icepic optional device-driver Binary" > $filename
	echo "$ICEROOT/drv/osf/picdrv.c module icepic" >> $filename
	cd /usr/sys/conf
	./sourceconfig BINARY
	$ICEROOT/drv/osf/icepic make
	cd $ICEROOT/drv/osf
	/sbin/sysconfigdb -a -f sysconfigtab icepic
	/sbin/sysconfigdb -u -f sysconfigtab icepic
	cd /var/subsys
	ln -s /usr/sys/BINARY/icepic.mod icepic.mod
	ln -s /subsys/device.mth icepic.mth
        # Make icepic first in the list - especially important in DU 5.0x
        # that icepic be listed before hwautoconfig
	currententries=`/sbin/init.d/autosysconfig list | tail -1`	
	for subsys in $currententries	
	do	
	    /sbin/init.d/autosysconfig delete $subsys	
	done	
	/sbin/init.d/autosysconfig add icepic	
	for subsys in $currententries	
	do	
	    if [ $subsys != icepic ]	
	    then	
	        /sbin/init.d/autosysconfig add $subsys	
	    fi	
	done	
	mkdir -p /dev/ice
	;;	
  remove)
	$0 stop
	/sbin/sysconfigdb -d icepic
	/sbin/init.d/autosysconfig delete icepic
	rm /var/subsys/icepic.mod
	rm /var/subsys/icepic.mth
	rm /usr/sys/BINARY/picdrv.*
	rm /usr/sys/BINARY/icepic.mod
	rm -rf /dev/ice
	;;
  start)
	/sbin/sysconfig -c icepic
	;;
  stop)
	/sbin/sysconfig -u icepic
	# remove stale nodes
	rm -f /dev/ice/*
	;;
  restart)
	$0 stop
	$0 start
	;;
  status)
        ;;
  *)
	echo "Usage: icepic {make|install|remove|start|stop|restart|status}"
	exit 1
esac

cd $ocwd
exit 0
