merge of '178eac00dc5aa8338d42e8e203633bec7817bbf6'
[vuplus_openembedded] / packages / linux / gumstix-linux.inc
1 DESCRIPTION = "Linux kernel for custom configurations"
2 SECTION = "kernel"
3 LICENSE = "GPL"
4 PR = "r1"
5
6 inherit kernel
7
8 DEPENDS += " \
9            u-boot-mkimage-openmoko-native \
10           "
11
12 KERNEL_IMAGE_BASE_NAME = ${KERNEL_IMAGETYPE}-${PV}-${PR}-${MACHINE}
13
14 S = "${WORKDIR}/linux-${PV}"
15 do_deploy[dirs] = "${S}"
16
17 do_configure_prepend() {
18         echo "" > ${S}/.config
19
20         if [ "${TARGET_OS}" == "linux-gnueabi" -o  "${TARGET_OS}" == "linux-uclibcgnueabi" ]; then
21                 echo "CONFIG_AEABI=y"                   >> ${S}/.config
22                 echo "CONFIG_OABI_COMPAT=y"             >> ${S}/.config
23         else
24                 echo "# CONFIG_AEABI is not set"        >> ${S}/.config
25                 echo "# CONFIG_OABI_COMPAT is not set"  >> ${S}/.config
26         fi
27
28         echo "CONFIG_CMDLINE=\"${CMDLINE}\"" >> ${S}/.config
29
30         sed -e '/CONFIG_AEABI/d' \
31             -e '/CONFIG_OABI_COMPAT=/d' \
32             -e '/CONFIG_CMDLINE=/d' \
33             < '${WORKDIR}/defconfig' >>'${S}/.config'
34
35        yes '' | oe_runmake oldconfig
36 }
37
38 do_install_prepend() {
39         if test -e arch/${ARCH}/boot/Image ; then
40              ln -f arch/${ARCH}/boot/Image arch/${ARCH}/boot/uImage
41         fi
42
43         if test -e arch/${ARCH}/boot/images/uImage ; then
44              ln -f arch/${ARCH}/boot/images/uImage arch/${ARCH}/boot/uImage
45         fi
46 }
47
48 do_deploy() {
49         install -d ${DEPLOY_DIR_IMAGE}
50         install -m 0644 arch/${ARCH}/boot/${KERNEL_IMAGETYPE} ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGE_BASE_NAME}.bin
51         tar -cvzf ${DEPLOY_DIR_IMAGE}/modules-${KERNEL_RELEASE}-${PR}-${MACHINE}.tgz -C ${D} lib
52         
53         if test "x${KERNEL_IMAGETYPE}" = "xuImage" ; then 
54             ${OBJCOPY} -O binary -R .note -R .comment -S arch/${ARCH}/boot/compressed/vmlinux linux.bin
55             uboot-mkimage -A ${ARCH} -O linux -T kernel -C none -a ${UBOOT_ENTRYPOINT} -e ${UBOOT_ENTRYPOINT} -n "${DISTRO_NAME}/${PV}/${MACHINE}" -d linux.bin ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGE_BASE_NAME}.bin
56             rm -f linux.bin
57
58         fi
59 }
60
61 addtask deploy before do_package after do_install