home *** CD-ROM | disk | FTP | other *** search
/ Chip 1997 December / CHIPNET Aralık 1997.iso / linux / redhat / misc / src / trees / updboots < prev    next >
Encoding:
Text File  |  1997-08-11  |  2.4 KB  |  108 lines

  1. #!/bin/sh
  2.  
  3. SCSIMODULES="
  4.     53c7,8xx.o BusLogic.o NCR53c406a.o advansys.o aha152x.o aha1542.o 
  5.     aha1740.o aic7xxx.o dtc.o eata_dma.o eata_pio.o fdomain.o 
  6.     g_NCR5380.o in2000.o pas16.o ppa.o qlogicfas.o qlogicisp.o 
  7.     seagate.o t128.o wd7000.o ultrastor.o u14-34f.o ncr53c8xx.o"
  8.  
  9. NETMODULES="apricot.o e2100.o eexpress.o eepro100.o
  10.     de4x5.o ewrk3.o hp-plus.o hp.o hp100.o ibmtr.o ne.o smc-ultra.o 
  11.     smc9194.o tulip.o wd.o plip.o 3c501.o 3c503.o 3c509.o 3c59x.o
  12.     8390.o de600.o de620.o depca.o arcnet.o at1700.o eepro.o ni52.o ni65.o"
  13.  
  14. CDMODULES="aztcd.o gscd.o mcd.o mcdx.o optcd.o sbpcd.o sjcd.o sonycd535.o
  15.       cdrom.o cdu31a.o cm206.o isp16.o bpcd.o"
  16.  
  17. BLOCKMODULES="loop.o"
  18.  
  19. MISCMODULES="lp.o"
  20.  
  21. FSMODULES="isofs.o nfs.o smbfs.o"
  22.  
  23. PCMCIAMODULES="pcmcia_core.o tcic.o ds.o i82365.o"
  24.  
  25. UNGZMODULES="8390.o.gz"
  26.  
  27. SBIN='$1/misc/src/install/install $1/misc/src/init/init'
  28.  
  29. usage () {
  30.     echo "updboots: <imagetree> <kernel-version>" 2>&1
  31.     exit 1
  32. }
  33.  
  34. if [ -z "$1" -o -z "$2" ]; then
  35.     usage
  36. fi
  37.  
  38. if [ ! -d "$1/misc/src/install" ]; then
  39.     echo "$1 is not a valid directory" 2>&1
  40.     usage
  41. fi
  42.  
  43. if [ ! -d "/lib/modules/$2/scsi" ]; then
  44.     echo "$2 is not a valid modules directory" 2>&1
  45.     usage
  46. fi
  47.  
  48. if [ ! -f "/boot/vmlinuz-$2" ]; then
  49.     echo "/boot/vmlinuz-$2 does not exist"
  50.     usage
  51. fi
  52.  
  53. rm -rf initrd/modules
  54. mkdir initrd/modules
  55.  
  56. for n in $SCSIMODULES; do 
  57.     cp /lib/modules/$2/scsi/$n ./initrd/modules
  58. done
  59.  
  60. for n in $NETMODULES; do 
  61.     cp /lib/modules/$2/net/$n ./initrd/modules
  62. done
  63.  
  64. for n in $CDMODULES; do 
  65.     cp /lib/modules/$2/cdrom/$n ./initrd/modules
  66. done
  67.     
  68. for n in $MISCMODULES; do 
  69.     cp /lib/modules/$2/misc/$n ./initrd/modules
  70. done
  71.     
  72. for n in $FSMODULES; do 
  73.     cp /lib/modules/$2/fs/$n ./initrd/modules
  74. done
  75.  
  76. for n in $BLOCKMODULES; do 
  77.     cp /lib/modules/$2/block/$n ./initrd/modules
  78. done
  79.  
  80. (cd initrd/modules; gzip -9n *.o)
  81. (cd initrd/modules; gunzip $UNGZMODULES)
  82.     
  83. for n in $PCMCIAMODULES; do 
  84.     ln -s /lib/modules/$2/pcmcia/$n ./initrd/modules
  85. done
  86.  
  87. cp -a keymaps/keymaps.gz initrd/etc
  88.  
  89. # Unfortunately, this breaks modules
  90. #strip --strip-unneeded initrd/modules/*.o
  91.     
  92. SBIN='$1/misc/src/install/install $1/misc/src/init/init'
  93.  
  94. for n in $SBIN; do
  95.     file=`eval echo $n`
  96.     strip $file
  97.     cp -f $file initrd/sbin
  98. done
  99.  
  100. cp -f "/boot/vmlinuz-$2" boot/vmlinuz
  101.  
  102. ln -sf /sbin/init initrd/linuxrc
  103.  
  104. rm -f initrd/etc/mtab
  105. ln -sf /proc/mounts initrd/etc/mtab
  106.  
  107. cp boot/vmlinuz $1/dosutils/autoboot/vmlinuz
  108.