no initrd modules stuff

git-svn-id: svn+ssh://svn.gentoo.org/var/svnroot/genkernel/trunk@31 67a159dc-881f-0410-a524-ba9dfbe2cb84
cleanup-cruft
Brad House 21 years ago
parent ef448e9d6a
commit 049a666d83

@ -26,7 +26,8 @@ usage() {
echo " --no-install Do not install kernel after building" echo " --no-install Do not install kernel after building"
echo " --kerneldir=<dir> Location of kernel source" echo " --kerneldir=<dir> Location of kernel source"
echo " --kernel-config=<file> Kernel configuration file to use for compilation" echo " --kernel-config=<file> Kernel configuration file to use for compilation"
echo " Low-Level Compile settings" echo " --no-initrdmodules Don't copy modules to initrd"
echo " Low-Level Compile settings"
echo " --kernel-cc=<compiler> Compiler to use for kernel (e.g. distcc)" echo " --kernel-cc=<compiler> Compiler to use for kernel (e.g. distcc)"
echo " --kernel-ld=<linker> Linker to use for kernel" echo " --kernel-ld=<linker> Linker to use for kernel"
echo " --kernel-as=<assembler> Assembler to use for kernel" echo " --kernel-as=<assembler> Assembler to use for kernel"
@ -142,6 +143,10 @@ parse_cmdline() {
CMD_NOINSTALL=1 CMD_NOINSTALL=1
print_info 2 "CMD_NOINSTALL: $CMD_NOINSTALL" print_info 2 "CMD_NOINSTALL: $CMD_NOINSTALL"
;; ;;
--no-initrdmodules)
CMD_NOINITRDMODULES=1
print_info 2 "CMD_NOINITRDMODULES: $CMD_NOINITRDMODULES"
;;
--arch-override*) --arch-override*)
CMD_ARCHOVERRIDE=`parse_opt "${x}"` CMD_ARCHOVERRIDE=`parse_opt "${x}"`
print_info 2 "CMD_ARCHOVERRIDE: $CMD_ARCHOVERRIDE" print_info 2 "CMD_ARCHOVERRIDE: $CMD_ARCHOVERRIDE"

@ -122,4 +122,8 @@ determine_real_args() {
MINKERNPACKAGE="${CMD_MINKERNPACKAGE}" MINKERNPACKAGE="${CMD_MINKERNPACKAGE}"
fi fi
if [ "${CMD_NOINITRDMODULES}" != "" ]
then
NOINITRDMODULES="${CMD_NOINITRDMODULES}"
fi
} }

@ -53,17 +53,20 @@ create_base_initrd_sys() {
bunzip2 "${TEMP}/initrd-temp/bin/busybox.bz2" || gen_die "could not uncompress busybox" bunzip2 "${TEMP}/initrd-temp/bin/busybox.bz2" || gen_die "could not uncompress busybox"
chmod +x "${TEMP}/initrd-temp/bin/busybox" chmod +x "${TEMP}/initrd-temp/bin/busybox"
if [ "${PAT}" -gt "4" ] if [ "${NOINITRDMODULES}" = "" ]
then then
cp "${MODULE_INIT_TOOLS_BINCACHE}" "${TEMP}/initrd-temp/bin/insmod.static.bz2" || gen_die "could not copy insmod.static from bincache" if [ "${PAT}" -gt "4" ]
else then
cp "${MODUTILS_BINCACHE}" "${TEMP}/initrd-temp/bin/insmod.static.bz2" || gen_die "could not copy insmod.static from bincache" cp "${MODULE_INIT_TOOLS_BINCACHE}" "${TEMP}/initrd-temp/bin/insmod.static.bz2" || gen_die "could not copy insmod.static from bincache"
else
cp "${MODUTILS_BINCACHE}" "${TEMP}/initrd-temp/bin/insmod.static.bz2" || gen_die "could not copy insmod.static from bincache"
fi
bunzip2 "${TEMP}/initrd-temp/bin/insmod.static.bz2" || gen_die "could not uncompress insmod.static"
mv "${TEMP}/initrd-temp/bin/insmod.static" "${TEMP}/initrd-temp/bin/insmod"
chmod +x "${TEMP}/initrd-temp/bin/insmod"
fi fi
bunzip2 "${TEMP}/initrd-temp/bin/insmod.static.bz2" || gen_die "could not uncompress insmod.static"
mv "${TEMP}/initrd-temp/bin/insmod.static" "${TEMP}/initrd-temp/bin/insmod"
chmod +x "${TEMP}/initrd-temp/bin/insmod"
cp "${DEVFSD_BINCACHE}" "${TEMP}/initrd-temp/bin/devfsd.bz2" || gen_die "could not copy devfsd executable from bincache" cp "${DEVFSD_BINCACHE}" "${TEMP}/initrd-temp/bin/devfsd.bz2" || gen_die "could not copy devfsd executable from bincache"
bunzip2 "${TEMP}/initrd-temp/bin/devfsd.bz2" || gen_die "could not uncompress devfsd" bunzip2 "${TEMP}/initrd-temp/bin/devfsd.bz2" || gen_die "could not uncompress devfsd"
chmod +x "${TEMP}/initrd-temp/bin/devfsd" chmod +x "${TEMP}/initrd-temp/bin/devfsd"
@ -98,44 +101,30 @@ create_initrd_modules() {
else else
MOD_EXT=".o" MOD_EXT=".o"
fi fi
# local modc i mods mymod for i in `gen_dep_list`
# for modc in storage firewire ataraid pcmcia usb do
# do print_info 2 "$i : module searching" 1 0
# for mymod=`find /lib/modules/${KV} -name "${i}${MOD_EXT}"`
# mkdir -p ${TEMP}/initrd-temp/lib/modules/${modc} if [ -z "${mymod}" ]
# mods=`echo $modc | tr [:lower:] [:upper:]`_MODULES then
# eval mymods=\$$mods print_info 2 "Warning : ${i}${MOD_EXT} not found; skipping..."
# for i in ${mymods} continue;
for i in `gen_dep_list` fi
do print_info 2 "copying ${mymod} to initrd"
print_info 2 "$i : module searching" 1 0 cp -ax --parents "${mymod}" "${TEMP}/initrd-temp"
mymod=`find /lib/modules/${KV} -name "${i}${MOD_EXT}"` done
if [ -z "${mymod}" ]
then
print_info 2 "Warning : ${i}${MOD_EXT} not found; skipping..."
continue;
fi
print_info 2 "copying ${mymod} to initrd"
cp -ax --parents "${mymod}" "${TEMP}/initrd-temp"
done
# done
cp -ax --parents /lib/modules/${KV}/modules* ${TEMP}/initrd-temp cp -ax --parents /lib/modules/${KV}/modules* ${TEMP}/initrd-temp
# cat ${GK_SHARE}/${ARCH}/linuxrc | sed -e "s/%%STORAGE_MODULES%%/${STORAGE_MODULES}/" \
# -e "s/%%FIREWIRE_MODULES%%/${FIREWIRE_MODULES}/" \
# -e "s/%%ATARAID_MODULES%%/${ATARAID_MODULES}/" \
# -e "s/%%PCMCIA_MODULES%%/${PCMCIA_MODULES}/" \
# -e "s/%%USB_MODULES%%/${USB_MODULES}/" \
# > ${TEMP}/initrd-temp/linuxrc
mkdir -p "${TEMP}/initrd-temp/etc/modules" mkdir -p "${TEMP}/initrd-temp/etc/modules"
print_list ${SCSI_MODULES} > "${TEMP}/initrd-temp/etc/modules/scsi" print_list ${SCSI_MODULES} > "${TEMP}/initrd-temp/etc/modules/scsi"
print_list ${FIREWIRE_MODULES} > "${TEMP}/initrd-temp/etc/modules/firewire" print_list ${FIREWIRE_MODULES} > "${TEMP}/initrd-temp/etc/modules/firewire"
print_list ${ATARAID_MODULES} > "${TEMP}/initrd-temp/etc/modules/ataraid" print_list ${ATARAID_MODULES} > "${TEMP}/initrd-temp/etc/modules/ataraid"
print_list ${PCMCIA_MODULES} > "${TEMP}/initrd-temp/etc/modules/pcmcia" print_list ${PCMCIA_MODULES} > "${TEMP}/initrd-temp/etc/modules/pcmcia"
print_list ${USB_MODULES} > "${TEMP}/initrd-temp/etc/modules/usb" print_list ${USB_MODULES} > "${TEMP}/initrd-temp/etc/modules/usb"
}
create_initrd_aux() {
if [ -f "${GK_SHARE}/${ARCH}/linuxrc" ] if [ -f "${GK_SHARE}/${ARCH}/linuxrc" ]
then then
cp "${GK_SHARE}/${ARCH}/linuxrc" "${TEMP}/initrd-temp/linuxrc" cp "${GK_SHARE}/${ARCH}/linuxrc" "${TEMP}/initrd-temp/linuxrc"
@ -167,6 +156,7 @@ create_initrd_modules() {
chmod +x "${TEMP}/initrd-temp/etc/initrd.scripts" chmod +x "${TEMP}/initrd-temp/etc/initrd.scripts"
chmod +x "${TEMP}/initrd-temp/etc/initrd.defaults" chmod +x "${TEMP}/initrd-temp/etc/initrd.defaults"
chmod +x "${TEMP}/initrd-temp/sbin/modprobe" chmod +x "${TEMP}/initrd-temp/sbin/modprobe"
} }
calc_initrd_size() { calc_initrd_size() {
@ -182,8 +172,16 @@ create_initrd() {
print_info 1 "initrd: creating base system" print_info 1 "initrd: creating base system"
create_base_initrd_sys create_base_initrd_sys
print_info 1 "initrd: copying modules" if [ "${NOINITRDMODULES}" = "" ]
create_initrd_modules then
print_info 1 "initrd: copying modules"
create_initrd_modules
else
print_info 1 "initrd: not copying modules"
fi
print_info 1 "initrd: copying auxilary files"
create_initrd_aux
print_info 1 "initrd: calculating initrd size" print_info 1 "initrd: calculating initrd size"
INITRD_CALC_SIZE=`calc_initrd_size` INITRD_CALC_SIZE=`calc_initrd_size`

@ -53,13 +53,17 @@ do
done done
done done
echo "STEP 2: Module loading" if [ -d "/lib/modules" ]
then
# Load appropriate kernel modules echo "STEP 2: Module loading"
for x in $MY_HWOPTS # Load appropriate kernel modules
do for x in $MY_HWOPTS
modules_scan $x do
done modules_scan $x
done
else
echo "STEP 2: Skipping module load. No modules in initrd"
fi
echo "STEP 3: Mounting necessary filesystems per boot options" echo "STEP 3: Mounting necessary filesystems per boot options"

@ -71,12 +71,16 @@ fi
# Compile Busybox # Compile Busybox
compile_busybox compile_busybox
if [ "${PAT}" -gt "4" ] # Only compile insmod if we're installing modules onto the initrd
if [ "${NOINITRDMODULES}" = "" ]
then then
# Compile module-init-tools if [ "${PAT}" -gt "4" ]
compile_module_init_tools then
else # Compile module-init-tools
compile_modutils compile_module_init_tools
else
compile_modutils
fi
fi fi
compile_devfsd compile_devfsd

Loading…
Cancel
Save