From ec7317fb6eddfc3cdb6f50359d4c9b539562a540 Mon Sep 17 00:00:00 2001 From: Eric Edgar Date: Fri, 17 Jun 2005 15:20:52 +0000 Subject: [PATCH] Fix 2.6 crash detecting LocalVersion, fix 2.4 kernels so they dont do localversion checks as they dont support it git-svn-id: svn+ssh://svn.gentoo.org/var/svnroot/genkernel/trunk@212 67a159dc-881f-0410-a524-ba9dfbe2cb84 --- gen_determineargs.sh | 30 +++++++++++++++++++++--------- 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/gen_determineargs.sh b/gen_determineargs.sh index 826d4fc..9225eef 100644 --- a/gen_determineargs.sh +++ b/gen_determineargs.sh @@ -14,8 +14,14 @@ get_KV() { PAT=`grep ^PATCHLEVEL\ \= ${tmp}/kerncache.config | awk '{ print $3 };'` SUB=`grep ^SUBLEVEL\ \= ${tmp}/kerncache.config | awk '{ print $3 };'` EXV=`grep ^EXTRAVERSION\ \= ${tmp}/kerncache.config | sed -e "s/EXTRAVERSION =//" -e "s/ //g"` - LOV=`grep ^CONFIG_LOCALVERSION\= ${tmp}/kerncache.config | sed -e "s/CONFIG_LOCALVERSION=\"\(.*\)\"/\1/"` - KV=${VER}.${PAT}.${SUB}${EXV}${LOV} + if [ "${PAT}" -gt '4' ] + then + LOV=`grep ^CONFIG_LOCALVERSION\= ${tmp}/kerncache.config | sed -e "s/CONFIG_LOCALVERSION=\"\(.*\)\"/\1/"` + KV=${VER}.${PAT}.${SUB}${EXV}${LOV} + else + KV=${VER}.${PAT}.${SUB}${EXV} + fi + else rm -r ${tmp} @@ -30,17 +36,23 @@ get_KV() { PAT=`grep ^PATCHLEVEL\ \= ${KERNEL_DIR}/Makefile | awk '{ print $3 };'` SUB=`grep ^SUBLEVEL\ \= ${KERNEL_DIR}/Makefile | awk '{ print $3 };'` EXV=`grep ^EXTRAVERSION\ \= ${KERNEL_DIR}/Makefile | sed -e "s/EXTRAVERSION =//" -e "s/ //g"` - cd ${KERNEL_DIR} - compile_generic prepare0 kernel > /dev/null 2>&1 - cd - > /dev/null 2>&1 - if [ -f ${KERNEL_DIR}/include/linux/version.h ] + if [ "${PAT}" -gt '4' ] then - UTS_RELEASE=`grep UTS_RELEASE ${KERNEL_DIR}/include/linux/version.h | sed -e 's/#define UTS_RELEASE "\(.*\)"/\1/'` - LOV=`echo ${UTS_RELEASE}|sed -e "s/${VER}.${PAT}.${SUB}${EXV}//"` - KV=${VER}.${PAT}.${SUB}${EXV}${LOV} + cd ${KERNEL_DIR} + compile_generic prepare kernel > /dev/null 2>&1 + cd - > /dev/null 2>&1 + if [ -f ${KERNEL_DIR}/include/linux/version.h ] + then + UTS_RELEASE=`grep UTS_RELEASE ${KERNEL_DIR}/include/linux/version.h | sed -e 's/#define UTS_RELEASE "\(.*\)"/\1/'` + LOV=`echo ${UTS_RELEASE}|sed -e "s/${VER}.${PAT}.${SUB}${EXV}//"` + KV=${VER}.${PAT}.${SUB}${EXV}${LOV} + else + KV=${VER}.${PAT}.${SUB}${EXV} + fi else KV=${VER}.${PAT}.${SUB}${EXV} fi + fi } -- 2.26.2