diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 07:40:50 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 07:40:50 +0000 |
commit | 10b5bfdee99e8161f353593ee3e85f4775b1dedc (patch) | |
tree | 958ac703fcfc692348b1564f02317e9f2ca67fd5 /kernel_postinst.d_dkms.in | |
parent | Initial commit. (diff) | |
download | dkms-10b5bfdee99e8161f353593ee3e85f4775b1dedc.tar.xz dkms-10b5bfdee99e8161f353593ee3e85f4775b1dedc.zip |
Adding upstream version 3.0.13.upstream/3.0.13upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rwxr-xr-x | kernel_postinst.d_dkms.in | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/kernel_postinst.d_dkms.in b/kernel_postinst.d_dkms.in new file mode 100755 index 0000000..f4ccc95 --- /dev/null +++ b/kernel_postinst.d_dkms.in @@ -0,0 +1,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 |