From bfe5424a8b31624e7a476f959d552999f931e7c7 Mon Sep 17 00:00:00 2001 From: Michal Marek Date: Thu, 9 Jun 2011 16:35:41 +0200 Subject: [PATCH] kbuild: Hack for depmod not handling X.Y versions depmod from module-init-tools < 3.13 and the busybox depmod check if the kernel release starts with ... To support these versions, we create a symlink with two numbers prepended. Signed-off-by: Michal Marek --- scripts/depmod.sh | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/scripts/depmod.sh b/scripts/depmod.sh index 9f205dafed36..3b029cba2baf 100755 --- a/scripts/depmod.sh +++ b/scripts/depmod.sh @@ -18,8 +18,31 @@ fi if ! test -r System.map -a -x "$DEPMOD"; then exit 0 fi +# older versions of depmod require the version string to start with three +# numbers, so we cheat with a symlink here +depmod_hack_needed=true +mkdir -p .tmp_depmod/lib/modules/$KERNELRELEASE +if "$DEPMOD" -b .tmp_depmod $KERNELRELEASE 2>/dev/null; then + if test -e .tmp_depmod/lib/modules/$KERNELRELEASE/modules.dep -o \ + -e .tmp_depmod/lib/modules/$KERNELRELEASE/modules.dep.bin; then + depmod_hack_needed=false + fi +fi +if $depmod_hack_needed; then + symlink="$INSTALL_MOD_PATH/lib/modules/99.98.$KERNELRELEASE" + ln -s "$KERNELRELEASE" "$symlink" + KERNELRELEASE=99.98.$KERNELRELEASE +fi + set -- -ae -F System.map if test -n "$INSTALL_MOD_PATH"; then set -- "$@" -b "$INSTALL_MOD_PATH" fi -exec "$DEPMOD" "$@" "$KERNELRELEASE" +"$DEPMOD" "$@" "$KERNELRELEASE" +ret=$? + +if $depmod_hack_needed; then + rm -f "$symlink" +fi + +exit $ret