linux/scripts/depmod.sh
<<
>>
Prefs
   1#!/bin/sh
   2#
   3# A depmod wrapper used by the toplevel Makefile
   4
   5if test $# -ne 2; then
   6        echo "Usage: $0 /sbin/depmod <kernelrelease>" >&2
   7        exit 1
   8fi
   9DEPMOD=$1
  10KERNELRELEASE=$2
  11
  12if ! test -r System.map -a -x "$DEPMOD"; then
  13        exit 0
  14fi
  15# older versions of depmod require the version string to start with three
  16# numbers, so we cheat with a symlink here
  17depmod_hack_needed=true
  18tmp_dir=$(mktemp -d ${TMPDIR:-/tmp}/depmod.XXXXXX)
  19mkdir -p "$tmp_dir/lib/modules/$KERNELRELEASE"
  20if "$DEPMOD" -b "$tmp_dir" $KERNELRELEASE 2>/dev/null; then
  21        if test -e "$tmp_dir/lib/modules/$KERNELRELEASE/modules.dep" -o \
  22                -e "$tmp_dir/lib/modules/$KERNELRELEASE/modules.dep.bin"; then
  23                depmod_hack_needed=false
  24        fi
  25fi
  26rm -rf "$tmp_dir"
  27if $depmod_hack_needed; then
  28        symlink="$INSTALL_MOD_PATH/lib/modules/99.98.$KERNELRELEASE"
  29        ln -s "$KERNELRELEASE" "$symlink"
  30        KERNELRELEASE=99.98.$KERNELRELEASE
  31fi
  32
  33set -- -ae -F System.map
  34if test -n "$INSTALL_MOD_PATH"; then
  35        set -- "$@" -b "$INSTALL_MOD_PATH"
  36fi
  37"$DEPMOD" "$@" "$KERNELRELEASE"
  38ret=$?
  39
  40if $depmod_hack_needed; then
  41        rm -f "$symlink"
  42fi
  43
  44exit $ret
  45