summaryrefslogtreecommitdiffstats
path: root/remote/includes/kernel.inc
diff options
context:
space:
mode:
authorSimon Rettberg2014-02-14 19:41:38 +0100
committerSimon Rettberg2014-02-14 19:41:38 +0100
commit8a34e9349a76a18aaf849839afad42d26158d9ea (patch)
treeb139395b76483ac7ab946a7721393776d7939678 /remote/includes/kernel.inc
parent[smbclient] -binary findsmb (diff)
downloadtm-scripts-8a34e9349a76a18aaf849839afad42d26158d9ea.tar.gz
tm-scripts-8a34e9349a76a18aaf849839afad42d26158d9ea.tar.xz
tm-scripts-8a34e9349a76a18aaf849839afad42d26158d9ea.zip
Overhauled vmware kernel module patching, also added global kernel version variables
Variables are now: KERNEL_CURRENT_VERSION - currently running kernel (uname -r) SYS_UTS_RELEASE - What uname -r will yield on the generated system SYS_KERNEL - Just version number of SYS_UTS_RELEASE (eg. 3.5.6-12-openslx -> 3.5.6)
Diffstat (limited to 'remote/includes/kernel.inc')
-rw-r--r--remote/includes/kernel.inc18
1 files changed, 14 insertions, 4 deletions
diff --git a/remote/includes/kernel.inc b/remote/includes/kernel.inc
index ae5791df..ccd10970 100644
--- a/remote/includes/kernel.inc
+++ b/remote/includes/kernel.inc
@@ -13,13 +13,23 @@
# must be given as kernel/fs/nfs/nfs.ko
#
-# determine kernel version
-KERNEL_CURRENT_VERSION=$(uname -r)
-[ -z "$KERNEL_CURRENT_VERSION" ] && pwarning "Could not determine kernel version."
-
# set global KERNEL_TARGET_NAME
KERNEL_TARGET_NAME="kernel"
+get_kernel_version () {
+ # determine kernel version currently running on this machine
+ KERNEL_CURRENT_VERSION=$(uname -r)
+ [ -z "$KERNEL_CURRENT_VERSION" ] && pwarning "Could not determine kernel version."
+ # determine kernel version that will be running in the generated system
+ if [ -e "$MODULES_DIR/kernel/ksrc/include/generated/utsrelease.h" ]; then
+ SYS_UTS_RELEASE=$(grep 'UTS_RELEASE' "$MODULES_DIR/kernel/ksrc/include/generated/utsrelease.h" | awk -F '"' '{print $2}')
+ SYS_KERNEL=$(echo "$SYS_UTS_RELEASE" | grep -o -E '^[0-9\.]+')
+ else
+ SYS_UTS_RELEASE="(unknown-not-compiled-yet)"
+ SYS_KERNEL="$SYS_UTS_RELEASE"
+ fi
+}
+
check_kernel_build_dir() {
[ -d "${MODULES_DIR}/kernel/build" ] && KERNEL_BUILD_DIR="${MODULES_DIR}/kernel/build" \
|| perror "No build directory set for the kernel. Was is built?"