blob: f4ccc95051c96ce1cd20a3a1dd287c6265f0f058 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
#!/bin/sh
# We're passed the version of the kernel being installed
inst_kern=$1
uname_s=$(uname -s)
_get_kernel_dir() {
KVER=$1
case ${uname_s} in
Linux) DIR="@MODDIR@/$KVER/build" ;;
GNU/kFreeBSD) DIR="/usr/src/kfreebsd-headers-$KVER/sys" ;;
esac
echo "$DIR"
}
_check_kernel_dir() {
DIR=$(_get_kernel_dir "$1")
case ${uname_s} in
Linux) test -e "$DIR/include" ;;
GNU/kFreeBSD) test -e "$DIR/kern" && test -e "$DIR/conf/kmod.mk" ;;
*) false ;;
esac
}
case "${uname_s}" in
Linux)
header_pkg="linux-headers-$inst_kern"
kernel="Linux"
;;
GNU/kFreeBSD)
header_pkg="kfreebsd-headers-$inst_kern"
kernel="kFreeBSD"
;;
esac
if [ -x @LIBDIR@/dkms_autoinstaller ]; then
exec @LIBDIR@/dkms_autoinstaller start "$inst_kern"
fi
if ! _check_kernel_dir "$inst_kern" ; then
echo "dkms: WARNING: $kernel headers are missing, which may explain the above failures." >&2
echo " please install the $header_pkg package to fix this." >&2
fi
|