home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / misc / volume6 / ptys.sco / INSTALL next >
Text File  |  1989-03-04  |  2KB  |  107 lines

  1. : INSTALL
  2. # Xenix pty installation.
  3.  
  4. if [ ! -f /etc/systemid ]
  5. then
  6.     echo "This is not a Xenix system" 1>&2
  7.     exit 1
  8. fi
  9.  
  10. if [ ! -f pty.o ]
  11. then
  12.     echo "you must make pty.o before running INSTALL" 1>&2
  13.     exit 1
  14. fi
  15.  
  16. PATH=/usr/sys/conf:$PATH; export PATH
  17.  
  18. cp pty.o /usr/sys/conf
  19.  
  20. # NOTE!!!!!!!!!!!!!!
  21. # To change the number of ptys, change the value in PTYCNT
  22.  
  23. PTYCNT=`sed -n 's/.*PTYCNT//p' PTYCNT`
  24. MASTERMINOR=`sed -n 's/.*MASTERMINOR//p' PTYCNT`
  25.  
  26. cd /usr/sys/conf
  27.  
  28. # get the first available major number.
  29.  
  30. PTYMAJOR=0
  31.  
  32. for i in `majorsinuse`
  33. do
  34.    [ $i != $PTYMAJOR ] && break
  35.    PTYMAJOR=`expr $i + 1`
  36. done
  37.  
  38. configure -a ptyopen ptyclose ptyread ptywrite ptyioctl -m $PTYMAJOR -c
  39.  
  40. if [ $? -ne 0 ]
  41. then
  42.     echo "pty cannot be added to the master file" 1>&2
  43.     exit 1
  44. fi
  45.  
  46. if [ $? -ne 0 ]
  47. then
  48.     echo "support files not updated" 1>&2
  49.     exit 1
  50. fi
  51.  
  52. # make the pty device files in /dev
  53.  
  54. LETTER=p
  55.  
  56. cnt=0
  57. while [ $cnt -lt $PTYCNT ]
  58. do
  59.     for y in 0 1 2 3 4 5 6 7 8 9 a b c d e f
  60.     do
  61.         i=$LETTER$y
  62.         if [ $cnt -ge ${PTYCNT} ] 
  63.         then 
  64.             break
  65.         fi
  66.  
  67.         [ -c /dev/pty$i ] && rm -f /dev/pty$i
  68.         [ -c /dev/tty$i ] && rm -f /dev/tty$i
  69.  
  70.         /etc/mknod /dev/pty$i c ${PTYMAJOR} \
  71.             `expr $cnt + $MASTERMINOR` &&
  72.         /etc/mknod /dev/tty$i c ${PTYMAJOR} $cnt ||
  73.         exit 1
  74.         chmod 666 /dev/pty$i /dev/tty$i
  75.         chown root /dev/pty$i /dev/tty$i
  76.         chgrp root /dev/pty$i /dev/tty$i
  77.  
  78.         cnt=`expr $cnt + 1`
  79.     done
  80.     LETTER=`echo $LETTER | tr '[a-z][A-Y]' '[b-z][A-Z]'`
  81. done
  82.  
  83. # add pty.o to the link_xenix script
  84.  
  85. if fgrep pty.o link_xenix >/dev/null
  86. then
  87.     : fine
  88. else
  89.     ed - link_xenix <<'-EOF'
  90.     /kid\.o/s//kid.o pty.o/
  91.     w
  92.     EOF
  93. fi
  94.  
  95. # relink the kernel
  96.  
  97. sh -v link_xenix || exit 1
  98.  
  99. # tell the user what to do next
  100.  
  101. echo ""
  102. echo "The new kernel with ptys has been linked as /usr/sys/conf/xenix."
  103. echo "To make this kernel the default, type the following commands:"
  104. echo "    mv /xenix /xenix.prev"
  105. echo "    ln /usr/sys/conf/xenix /"
  106. echo ""
  107.