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 <num>.<num>.<num>. To support these versions,
we create a symlink with two numbers prepended.

Signed-off-by: Michal Marek <mmarek@suse.cz>
This commit is contained in:
Michal Marek 2011-06-09 16:35:41 +02:00
parent fc4da9a3e6
commit bfe5424a8b
1 changed files with 24 additions and 1 deletions

View File

@ -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