# Copyright 2000, International Business Machines Corporation and others.
# All Rights Reserved.
# 
# This software has been released under the terms of the IBM Public
# License.  For details, see the LICENSE file in the top-level source
# directory or online at http://www.openafs.org/dl/license10.html

# An InstallGuide for dynamic kernel loaded libraries
# For SGI systems running IRIX 5.x
#

sub modkernel {
my ($chip, $chipcount, $nfs, $libafs);
&ErrorsAreFatal(1);

# Find out what kind of chip the machine has (Rx000)
$chip = `hinv -t cpu`;
$chip =~ /R[34][046]0*/;
$chip = $&;
$chip =~ s/5/4/;
&ErrorMsg("Could not determine chip type with", "hinv") unless ($chip =~ /^R/);

# Find out if there is more than one processor (eg "2 150 MHZ IP19 Processors")
$chipcount = `hinv -c processor`;
$chipcount =~ s/ .*//;
&ErrorMsg("Could not determine chip count with", "hinv") unless ($chipcount);

# NFS support
if ($Configuration{"NFSEXTENSIONS"}) {
  $nfs = ""; }
else {
  $nfs = ".nonfs"; };

# From the above, put together the name of the kernel library to use
$libafs = "libafs.SP.$chip$nfs.o" if ($chipcount == 1);
$libafs = "libafs.MP.$chip$nfs.o" if ($chipcount >  1);

&CreateDir("/usr/vice/etc/sgiload");
&ErrorsAreFatal(0);
&Copy("root.client/usr/vice/etc/sgiload/$libafs", "/usr/vice/etc/sgiload");
&Copy("root.client/usr/vice/etc/sgiload/afs",     "/usr/vice/etc/sgiload");
&Copy("root.client/usr/vice/etc/sgiload/afs.rc",  "/usr/vice/etc/sgiload");
&Copy("root.client/usr/vice/etc/sgiload/afs.sm",  "/usr/vice/etc/sgiload");

&Copy("root.client/usr/vice/etc/afsd", "/usr/vice/etc");
&Chmod(0744, "/usr/vice/etc/afsd");

system("/etc/chkconfig -f afsml on");
&Copy("bin/fs", "/usr/vice/etc/fs");
}
