Revert "Do not query generated files (like include/config/kernel.release) for kernel...
authorSebastian Pipping <sebastian@pipping.org>
Thu, 27 Jan 2011 10:33:53 +0000 (11:33 +0100)
committerSebastian Pipping <sebastian@pipping.org>
Thu, 27 Jan 2011 10:39:41 +0000 (11:39 +0100)
This reverts commit 48ca00ec29afdec6cb168fbaae87a7b07ea65988.

Conflicts:

ChangeLog

ChangeLog
gen_determineargs.sh

index 8c072dd296ef2fbc3e66a41df137be3589d6c3d2..3ab3b5b93bd15e8eaf3e6f03db8a8c40c09f5931 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -5,6 +5,9 @@
 # Distributed under the GPL v2
 # $Id$
 
+  27 Jan 2011; Sebastian Pipping <sping@gentoo.org> gen_determineargs.sh:
+  Revert kernel release detection fix (regression) (bug #352787)
+
   23 Jan 2011; Sebastian Pipping <sping@gentoo.org> genkernel:
   Bump version to 3.4.12.1
 
@@ -78,7 +81,7 @@
   - devsk (Multi-device patch)
   - Fabio Erculiani (Slowusb fixes)
   - Kai Dietrich (Symlink analysis)
-  - Kolbjørn Barmen (Arithmetic fix)
+  - Kolbjørn Barmen (Arithmetic fix)
 
   13 Dec 2010; Sebastian Pipping <sping@gentoo.org> genkernel:
   Bump version to 3.4.10.908
index 9cd4be8e350d1955b2ca58faa20297d7b5846465..a55ccecf9cc85e39633fe31b02e70f1195f24ff4 100755 (executable)
@@ -39,20 +39,29 @@ get_KV() {
                        EXV=`grep ^EXTRAVERSION\ \= ${KERNEL_SOURCE_DIR}/Makefile | sed -e "s/EXTRAVERSION =//" -e "s/ //g" -e 's/\$([a-z]*)//gi'`
                fi
 
-               # Extract local version suffix from .config
-               # Not, that we explicitly do not look at generated files like
-               # - include/config/kernel.release
-               # - include/linux/version.h
-               # - include/linux/utsrelease.h
-               # as they require "make prepare" to be up to date (bug #263927)
-               local future_config="${KERNEL_DIR}"/.config
-               if isTrue "${MRPROPER}" || [ ! -f "${future_config}" ]
+               cd ${KERNEL_DIR}
+               #compile_generic prepare kernel > /dev/null 2>&1
+               cd - > /dev/null 2>&1
+               [ -f "${KERNEL_DIR}/include/linux/version.h" ] && \
+                       VERSION_SOURCE="${KERNEL_DIR}/include/linux/version.h"
+               [ -f "${KERNEL_DIR}/include/linux/utsrelease.h" ] && \
+                       VERSION_SOURCE="${KERNEL_DIR}/include/linux/utsrelease.h"
+               # Handle new-style releases where version.h doesn't have UTS_RELEASE
+               if [ -f ${KERNEL_DIR}/include/config/kernel.release ]
                then
+                       UTS_RELEASE=`cat ${KERNEL_DIR}/include/config/kernel.release`
+                       LOV=`echo ${UTS_RELEASE}|sed -e "s/${VER}.${PAT}.${SUB}${EXV}//"`
+                       KV=${VER}.${PAT}.${SUB}${EXV}${LOV}
+               elif [ -n "${VERSION_SOURCE}" ]
+               then
+                       UTS_RELEASE=`grep UTS_RELEASE ${VERSION_SOURCE} | 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
                        determine_config_file
-                       future_config=${KERNEL_CONFIG}
+                       LCV=`grep ^CONFIG_LOCALVERSION= "${KERNEL_CONFIG}" | sed -r -e "s/.*=\"(.*)\"/\1/"`
+                       KV=${VER}.${PAT}.${SUB}${EXV}${LCV}
                fi
-               LOV=`grep ^CONFIG_LOCALVERSION= "${future_config}" | sed -r -e "s/.*=\"(.*)\"/\1/"`
-               KV=${VER}.${PAT}.${SUB}${EXV}${LOV}
        fi
 }