38 lines
1.2 KiB
Bash
Executable File
38 lines
1.2 KiB
Bash
Executable File
#!/bin/bash
|
|
if [[ -z $drivers ]]; then
|
|
block_module_test() {
|
|
local blockfuncs='ata_scsi_ioctl|scsi_add_host|blk_init_queue|register_mtd_blktrans|scsi_esp_register|register_virtio_device'
|
|
|
|
nm -uPA "$1" | egrep -q "$blockfuncs"
|
|
}
|
|
hostonly='' instmods sr_mod sd_mod scsi_dh scsi_dh_rdac scsi_dh_emc
|
|
hostonly='' instmods pcmcia firewire-ohci
|
|
|
|
# install keyboard support
|
|
hostonly='' instmods atkbd i8042 usbhid hid-apple ehci-hcd ohci-hcd uhci-hcd
|
|
|
|
instmods "=drivers/pcmcia" =ide "=drivers/usb/storage"
|
|
instmods $(filter_kernel_modules block_module_test)
|
|
# if not on hostonly mode, install all known filesystems if the required list is not set via the filesystems variable
|
|
if ! [[ $hostonly ]]; then
|
|
if [[ -z $filesystems ]]; then
|
|
instmods '=fs'
|
|
# hardcoded list of exceptions
|
|
# to save a lot of space
|
|
rm -fr ${initdir}/lib/modules/*/kernel/fs/ocfs2
|
|
else
|
|
instmods $filesystems
|
|
fi
|
|
else
|
|
hostonly='' instmods $(get_fs_type "/dev/block/$(find_root_block_device)")
|
|
fi
|
|
else
|
|
hostonly='' instmods $drivers $filesystems
|
|
fi
|
|
|
|
[[ $add_drivers ]] && hostonly='' instmods $add_drivers
|
|
|
|
# force install of scsi_wait_scan
|
|
hostonly='' instmods scsi_wait_scan
|
|
|