From dcc3ba1983263376ddd9528dc2e4d5f08de0ef97 Mon Sep 17 00:00:00 2001 From: Michael Prokop Date: Sat, 23 Jul 2011 23:58:32 +0200 Subject: [PATCH] GRMLBASE/16-depmod: provide verbose error message regarding the kernel x.y-grml[64] <-> module-init-tools v3.12 situation. --- etc/grml/fai/config/scripts/GRMLBASE/16-depmod | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/etc/grml/fai/config/scripts/GRMLBASE/16-depmod b/etc/grml/fai/config/scripts/GRMLBASE/16-depmod index 3f41ca8..65241f3 100755 --- a/etc/grml/fai/config/scripts/GRMLBASE/16-depmod +++ b/etc/grml/fai/config/scripts/GRMLBASE/16-depmod @@ -14,9 +14,24 @@ if ! [ -x $target/sbin/depmod ] ; then exit 0 fi -# detect kernel version, assume newest kernel version +NEEDS_CHECK=false +depmod_version=$($ROOTCMD depmod --version | awk '/module-init-tools/ {print $2}') +if [ -n "${depmod_version:-}" ] ; then + # depmod of module-init-tools from squeeze or older + dpkg --compare-versions "$depmod_version" lt "3.13" && NEEDS_CHECK=true +fi + for kernel in $(find $target/lib/modules/ -maxdepth 1 -type d -name [0-9]*) ; do kernelversion=$(basename $kernel) + + # provide verbose error message regarding the annoying + # kernel x.y-grml[64] <-> module-init-tools v3.12 situation + if $NEEDS_CHECK && echo "$kernelversion" | grep -q '[[:digit:]]\.[[:digit:]]-' ; then + echo "Error: module-init-tools version <= 3.12 with two-digit kernel version found." >&2 + echo "This is known to be broken and does not provide a working modules.dep. :(" >&2 + exit 1 + fi + echo "Updating modules.dep for kernel $kernelversion" $ROOTCMD depmod -ae -F /boot/System.map-"$kernelversion" "$kernelversion" done -- 2.1.4