diff options
Diffstat (limited to 'scripts/depmod.sh')
-rwxr-xr-x | scripts/depmod.sh | 25 |
1 files changed, 24 insertions, 1 deletions
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 | |||
18 | if ! test -r System.map -a -x "$DEPMOD"; then | 18 | if ! test -r System.map -a -x "$DEPMOD"; then |
19 | exit 0 | 19 | exit 0 |
20 | fi | 20 | fi |
21 | # older versions of depmod require the version string to start with three | ||
22 | # numbers, so we cheat with a symlink here | ||
23 | depmod_hack_needed=true | ||
24 | mkdir -p .tmp_depmod/lib/modules/$KERNELRELEASE | ||
25 | if "$DEPMOD" -b .tmp_depmod $KERNELRELEASE 2>/dev/null; then | ||
26 | if test -e .tmp_depmod/lib/modules/$KERNELRELEASE/modules.dep -o \ | ||
27 | -e .tmp_depmod/lib/modules/$KERNELRELEASE/modules.dep.bin; then | ||
28 | depmod_hack_needed=false | ||
29 | fi | ||
30 | fi | ||
31 | if $depmod_hack_needed; then | ||
32 | symlink="$INSTALL_MOD_PATH/lib/modules/99.98.$KERNELRELEASE" | ||
33 | ln -s "$KERNELRELEASE" "$symlink" | ||
34 | KERNELRELEASE=99.98.$KERNELRELEASE | ||
35 | fi | ||
36 | |||
21 | set -- -ae -F System.map | 37 | set -- -ae -F System.map |
22 | if test -n "$INSTALL_MOD_PATH"; then | 38 | if test -n "$INSTALL_MOD_PATH"; then |
23 | set -- "$@" -b "$INSTALL_MOD_PATH" | 39 | set -- "$@" -b "$INSTALL_MOD_PATH" |
24 | fi | 40 | fi |
25 | exec "$DEPMOD" "$@" "$KERNELRELEASE" | 41 | "$DEPMOD" "$@" "$KERNELRELEASE" |
42 | ret=$? | ||
43 | |||
44 | if $depmod_hack_needed; then | ||
45 | rm -f "$symlink" | ||
46 | fi | ||
47 | |||
48 | exit $ret | ||