--- smage/trunk/include/kernel.sminc 2012/11/05 13:50:36 4030 +++ smage/trunk/include/kernel.sminc 2013/03/15 11:06:39 4527 @@ -16,6 +16,8 @@ # set the version here like USE_LINUX_FIRMARE="20110605" # version "internal" keeps the bits too # +# ${INCLUDE_KERNELVERSION_FILE}: +# ${USE_KERNEL_SYMLINKS}: sminclude mtools @@ -111,7 +113,7 @@ KPVER="${PVER}" KPBUILD="${PBUILD}" KBRANCH="${BRANCH}" -SPECIAL_VARS="${SPECIAL_VARS} KPVER KPBUILD KBRANCH" +SPECIAL_VARS="${SPECIAL_VARS} KPVER KPBUILD KBRANCH USE_KERNEL_SYMLINKS" kernel_src_prepare() { @@ -180,6 +182,8 @@ # at least alsa-drivers needs this one ... touch include/linux/autoconf.h || die + + # compat symlink for 3.7.x new version.h location until everything is fixed ;; esac } @@ -222,13 +226,16 @@ /usr/src/linux-${PVER}-${BRANCH}-${PBUILD} \ || die - # install kernel description - echo " -KRNVER=${BRANCH}-${PVER}-${ARCH}-${PBUILD}${KERNEL_ARCH_EXTENSION} -KRNLIB=${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION} -KRNIMG=kernel-${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION} -KRNINITRD= -" > ${BINDIR}/boot/kernelversion || die + if [[ ${INCLUDE_KERNELVERSION_FILE} = true ]] + then + MCONFIG=/boot/kernelversion + # install kernel description + mclearconfig || die + maddconfig "KRNVER=${BRANCH}-${PVER}-${ARCH}-${PBUILD}${KERNEL_ARCH_EXTENSION}" || die + maddconfig "KRNLIB=${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION}" || die + maddconfig "KRNIMG=kernel-${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION}" || die + maddconfig "KRNINITRD=" || die + fi # install kernel-config from srcdir minstallfile .config \ @@ -391,13 +398,7 @@ if [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]] then mount /boot &> /dev/null - fi -} -kernel_image_postremove() -{ - if [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]] - then # remove old image entry from grub new-kernel-pkg -v --rminitrd --rmmoddep --remove ${KPVER}-${KBRANCH}-${KPBUILD} fi @@ -422,12 +423,15 @@ new-kernel-pkg -v --mkinitrd --make-default --install ${KPVER}-${KBRANCH}-${KPBUILD} fi - # symlink actual kernel to /boot/vmlinuz etc... - ln -snf kernel-${KPVER}-${KBRANCH}-${KPBUILD} ${MROOT}/boot/vmlinuz - ln -snf System.map-${KPVER}-${KBRANCH}-${KPBUILD} ${MROOT}/boot/System.map - ln -snf config-${KPVER}-${KBRANCH}-${KPBUILD} ${MROOT}/boot/config - [[ -f ${MROOT}/boot/initrd-${KPVER}-${KBRANCH}-${KPBUILD}.img ]] && - ln -snf initrd-${KPVER}-${KBRANCH}-${KPBUILD}.img ${MROOT}/boot/initrd + if [[ ${USE_KERNEL_SYMLINKS} = true ]] + then + # symlink actual kernel to /boot/vmlinuz etc... + ln -snf kernel-${KPVER}-${KBRANCH}-${KPBUILD} ${MROOT}/boot/vmlinuz + ln -snf System.map-${KPVER}-${KBRANCH}-${KPBUILD} ${MROOT}/boot/System.map + ln -snf config-${KPVER}-${KBRANCH}-${KPBUILD} ${MROOT}/boot/config + [[ -f ${MROOT}/boot/initrd-${KPVER}-${KBRANCH}-${KPBUILD}.img ]] && + ln -snf initrd-${KPVER}-${KBRANCH}-${KPBUILD}.img ${MROOT}/boot/initrd + fi } kernel_sources_postinstall() @@ -474,8 +478,8 @@ # export pre/postinstall functions depending on KERNEL_TYPE case ${KERNEL_TYPE} in image) - export_inherits kernel_image preinstall preremove postinstall postremove - SPECIAL_FUNCTIONS="${SPECIAL_FUNCTIONS} kernel_image_preinstall kernel_image_preremove kernel_image_postinstall kernel_image_postremove" + export_inherits kernel_image preinstall preremove postinstall + SPECIAL_FUNCTIONS="${SPECIAL_FUNCTIONS} kernel_image_preinstall kernel_image_preremove kernel_image_postinstall" ;; sources) export_inherits kernel_sources postinstall