Merge branch 'x86-olpc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[pandora-kernel.git] / scripts / depmod.sh
1 #!/bin/sh
2 #
3 # A depmod wrapper used by the toplevel Makefile
4
5 if test $# -ne 2; then
6         echo "Usage: $0 /sbin/depmod <kernelrelease>" >&2
7         exit 1
8 fi
9 DEPMOD=$1
10 KERNELRELEASE=$2
11
12 if ! "$DEPMOD" -V 2>/dev/null | grep -q module-init-tools; then
13         echo "Warning: you may need to install module-init-tools" >&2
14         echo "See http://www.codemonkey.org.uk/docs/post-halloween-2.6.txt" >&2
15         sleep 1
16 fi
17
18 if ! test -r System.map -a -x "$DEPMOD"; then
19         exit 0
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 tmp_dir=$(mktemp -d ${TMPDIR:-/tmp}/depmod.XXXXXX)
25 mkdir -p "$tmp_dir/lib/modules/$KERNELRELEASE"
26 if "$DEPMOD" -b "$tmp_dir" $KERNELRELEASE 2>/dev/null; then
27         if test -e "$tmp_dir/lib/modules/$KERNELRELEASE/modules.dep" -o \
28                 -e "$tmp_dir/lib/modules/$KERNELRELEASE/modules.dep.bin"; then
29                 depmod_hack_needed=false
30         fi
31 fi
32 rm -rf "$tmp_dir"
33 if $depmod_hack_needed; then
34         symlink="$INSTALL_MOD_PATH/lib/modules/99.98.$KERNELRELEASE"
35         ln -s "$KERNELRELEASE" "$symlink"
36         KERNELRELEASE=99.98.$KERNELRELEASE
37 fi
38
39 set -- -ae -F System.map
40 if test -n "$INSTALL_MOD_PATH"; then
41         set -- "$@" -b "$INSTALL_MOD_PATH"
42 fi
43 "$DEPMOD" "$@" "$KERNELRELEASE"
44 ret=$?
45
46 if $depmod_hack_needed; then
47         rm -f "$symlink"
48 fi
49
50 exit $ret