linux-handhelds-2.6: Use official external interface for initramfs addition.
authorPaul Sokolovsky <pmiscml@gmail.com>
Wed, 12 Mar 2008 00:03:21 +0000 (00:03 +0000)
committerPaul Sokolovsky <pmiscml@gmail.com>
Wed, 12 Mar 2008 00:03:21 +0000 (00:03 +0000)
* I.e., CONFIG_INITRAMFS_SOURCE. Instead of neat, but still hack of dropping
initramfs where kernel Makefile expects it - this was reported to not work
under some unknown circumstances.

packages/linux/linux-handhelds-2.6.inc
packages/linux/linux-handhelds-2.6_2.6.21-hh20.bb

index a2efdc9..5970ace 100644 (file)
@@ -37,6 +37,11 @@ do_configure() {
                die "No default configuration for ${MACHINE} available."
        fi
 
+       if [ -n "${KERNEL_INITRAMFS_PATH}" -a "${ANGSTROM_MODE}" = "glibc" ]; then
+               # Kernel expects non-compressed cpio
+               gzip -d -c ${KERNEL_INITRAMFS_PATH} >${WORKDIR}/initramfs.cpio
+               echo "CONFIG_INITRAMFS_SOURCE=\"${WORKDIR}/initramfs.cpio\"" >> ${S}/.config
+       fi
 
        if [ "${TARGET_OS}" == "linux-gnueabi" -o  "${TARGET_OS}" == "linux-uclibcgnueabi" ]; then
                echo "CONFIG_AEABI=y"                   >> ${S}/.config
@@ -48,26 +53,13 @@ do_configure() {
 
        sed     -e '/CONFIG_AEABI/d' \
                -e '/CONFIG_OABI_COMPAT=/d' \
+               -e '/CONFIG_INITRAMFS_SOURCE=/d' \
                '${WORKDIR}/defconfig' >>'${S}/.config'
 
        yes '' | oe_runmake oldconfig
 
 }
 
-do_compile_prepend() {
-       # Clean up any stale initramfs archive
-       rm -f usr/initramfs_data.cpio.gz
-       if [ -n "${KERNEL_INITRAMFS_PATH}" -a "${ANGSTROM_MODE}" = "glibc" ]; then
-           if [ ! -f ${KERNEL_INITRAMFS_PATH} ]; then
-               echo "${KERNEL_INITRAMFS_PATH} does not exist, you may need to bitbake it separately"
-               exit 1
-           fi
-           cp ${KERNEL_INITRAMFS_PATH} usr/initramfs_data.cpio.gz
-           # touch is for broken Koen's cp
-           touch usr/initramfs_data.cpio.gz
-       fi
-}
-
 do_deploy() {
        install -d ${DEPLOY_DIR_IMAGE}
        install -m 0644 arch/${ARCH}/boot/${KERNEL_IMAGETYPE} ${DEPLOY_DIR_IMAGE}/${KERNEL_FILENAME}
index 4fa2e2b..9d493c3 100644 (file)
@@ -1,7 +1,7 @@
 SECTION = "kernel"
 DESCRIPTION = "handhelds.org Linux kernel 2.6 for PocketPCs and other consumer handheld devices."
 LICENSE = "GPL"
-PR = "r18"
+PR = "r19"
 
 DEFAULT_PREFERENCE = "-1"