--- /sbin/modules-update.orig 2007-02-27 16:38:04.000000000 +0100 +++ /sbin/modules-update 2007-02-27 21:47:41.657566703 +0100 @@ -399,20 +399,24 @@ if [[ ${CFG_NEW_FILE} -nt ${depfile} ]] ; then arch=$(uname -m) ebegin "Updating modules.dep" - for cfg in /lib/modules/${KV}/build /usr/src/linux-${KV} \ + depmod_args="-a" + for dir in /lib/modules/${KV}/build /usr/src/linux-${KV} \ /boot /usr/src/linux "" do - cfg="${cfg}/System.map" + map="${dir}/System.map" for suffix in -genkernel-{${arch},'*'}-${KV} -${KV} "" ; do - scfg=$(echo ${cfg}${suffix}) - scfg=${scfg%% *} - [[ -f ${scfg} ]] && cfg=${scfg} && break 2 + smap=$(echo ${map}${suffix}) + smap=${smap%% *} + # Use suffixed System.map if existant + [[ -e ${smap} ]] && depmod_args="${depmod_args} -F ${smap}" && break 2 done + # Use non-suffixed System.map if existant + [[ -e ${map} ]] && depmod_args="${depmod_args} -F ${map}" && break done - [[ -n ${cfg} ]] && cfg="-F ${cfg}" - depmod -a ${cfg} ${KV} + depmod_args="${depmod_args} ${KV}" + depmod ${depmod_args} eend $? - [[ ${VERBOSE} -gt 0 ]] && einfo "Ran: depmod -a ${cfg} ${KV}" + [[ ${VERBOSE} -gt 0 ]] && einfo "Ran: depmod ${depmod_args}" fi else vewarn "The dir '${depfile}' does not exist, skipping call to depmod"