summaryrefslogtreecommitdiffstats
path: root/update_kernel
diff options
context:
space:
mode:
Diffstat (limited to 'update_kernel')
-rwxr-xr-xupdate_kernel44
1 files changed, 31 insertions, 13 deletions
diff --git a/update_kernel b/update_kernel
index f611618ba..469fe1819 100755
--- a/update_kernel
+++ b/update_kernel
@@ -6,6 +6,24 @@ function f() {
v=`perl -Iperl-install -Mmodules -e "print qq(\\$_.o\n) foreach modules::module_of_type__4update_kernel(\"$1\")"`
}
+function create_marfile() {
+ marfile=$1
+ shift
+ for i in $*
+ do
+ j=`basename $i .o`
+ needed=`cat modules.dep | perl -ne "print "'$1'" if /^$j: (.*)/"`
+ for k in $needed
+ do
+ [ -z "`echo $* | grep $k`" ] \
+ && [ -z "`echo $PCMCIA_INSTALLMODULES | grep $k`" ] \
+ && echo "WARNING! in $marfile, $k is missing (required by $i)"
+ done
+ done
+ ../mdk-stage1/mar/mar -c $marfile $*
+}
+
+
ARCH=`uname -m | sed -e 's/i.86/i386/' -e 's/sparc.*/sparc/'`
f "scsi" ; SCSI_DRIVERS=$v
@@ -17,13 +35,13 @@ f "big net_raw cdrom_raw scsi_raw disk_raw" ; BIG_DRIVERS=$v
f "pcmcia net cdrom scsi disk keepbig" ; ALL_DRIVERS=$v
[ $ARCH == "i386" ] && FSMODULES="vfat.o fat.o"
-NETWORK_MODULES=" $FSMODULES $NETWORK_DRIVERS"
-CDROM_MODULES=" $FSMODULES $CD_DRIVERS"
-HD_MODULES=" $FSMODULES $SCSI_DRIVERS $DISK_DRIVERS loop.o isofs.o"
-HDREISER_MODULES=" $FSMODULES $SCSI_DRIVERS loop.o isofs.o" # reiserfs.o <-- currently unsupported in kernel-boot-2.4
+NETWORK_MODULES=" $FSMODULES $NETWORK_DRIVERS isa-pnp.o"
+CDROM_MODULES=" $FSMODULES $CD_DRIVERS isa-pnp.o"
+HD_MODULES=" $FSMODULES $SCSI_DRIVERS $DISK_DRIVERS loop.o isofs.o isa-pnp.o"
+HDREISER_MODULES=" $FSMODULES $SCSI_DRIVERS loop.o isofs.o isa-pnp.o" # reiserfs.o <-- currently unsupported in kernel-boot-2.4
PCMCIA_MODULES=" $FSMODULES $PCMCIA_DRIVERS"
-BIG_MODULES=" $FSMODULES $BIG_DRIVERS"
-ALL_MODULES=" $FSMODULES $ALL_DRIVERS " # reiserfs.o <-- currently unsupported in kernel-boot-2.4
+BIG_MODULES=" $FSMODULES $BIG_DRIVERS isa-pnp.o"
+ALL_MODULES=" $FSMODULES $ALL_DRIVERS isa-pnp.o" # reiserfs.o <-- currently unsupported in kernel-boot-2.4
NOT_USEFULL_IN_STAGE1="nls_*.o parport_probe.o raid*.o serial.o smbfs.o usb-*.o"
PCMCIA_INSTALLMODULES="pcmcia_core.o tcic.o ds.o i82365.o"
@@ -46,13 +64,13 @@ rm -rf modules ; install -d modules
perl -pi -e 's/((plip|ppa|imm): parport)/$1 parport_pc/' modules.dep
ls *.o | packdrake -b9s modules.cz 400000
ls *.o | cpio --quiet -H crc -o | bzip2 -9> modules.cpio.bz2
- ../mdk-stage1/mar/mar -c network_modules.mar $NETWORK_MODULES
- ../mdk-stage1/mar/mar -c cdrom_modules.mar $CDROM_MODULES
- ../mdk-stage1/mar/mar -c hd_modules.mar $HD_MODULES
- ../mdk-stage1/mar/mar -c hdreiser_modules.mar $HDREISER_MODULES
- ../mdk-stage1/mar/mar -c pcmcia_modules.mar $PCMCIA_MODULES
- ../mdk-stage1/mar/mar -c other_modules.mar $BIG_MODULES
- ../mdk-stage1/mar/mar -c all_modules.mar $ALL_MODULES
+ create_marfile network_modules.mar $NETWORK_MODULES
+ create_marfile cdrom_modules.mar $CDROM_MODULES
+ create_marfile hd_modules.mar $HD_MODULES
+ create_marfile hdreiser_modules.mar $HDREISER_MODULES
+ create_marfile pcmcia_modules.mar $PCMCIA_MODULES
+ create_marfile other_modules.mar $BIG_MODULES
+ create_marfile all_modules.mar $ALL_MODULES
[ "$ARCH" == "i386" ] && {
cp $PCMCIA_INSTALLMODULES ../install_pcmcia_modules/
}