summaryrefslogtreecommitdiff
path: root/org.handhelds.familiar/packages/linux/LAB-kernel_cvs.bb
blob: d83e5b4fe5c2974e490209ea079ee1f2e9396cda (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
SECTION = "kernel"
DESCRIPTION = "Liux As Bootloader kernelm"
MAINTAINER = "Koen Kooi <koen@linuxtogo.org>"
LICENSE = "GPL"
PV = "${K_MAJOR}.${K_MINOR}.${K_MICRO}-hh${HHV}+cvs${CVSDATE}"

#!BIG FAT WARNING:
#build this *before* building your real kernel, otherwise external modules will pickup the wrong headers

DEFAULT_PREFERENCE = "-1"

COMPATIBLE_HOST = "arm.*-linux"

FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/handhelds-pxa-${PV}"

SRC_URI = "${HANDHELDS_CVS};module=linux/kernel26  \
	   file://initramfs_list \
           file://defconfig \
           file://greatwall_header \
           file://greatwall_trailer"

S = "${WORKDIR}/kernel26"

inherit kernel

FILES_kernel-image_h2200 = ""
ALLOW_EMPTY_kernel-image_h2200 = 1

K_MAJOR = "2"
K_MINOR = "6"
K_MICRO = "16"
HHV     = "0"
#

KERNEL_PRIORITY = "${@'%d' % (int(bb.data.getVar('K_MAJOR',d,1)) * 100000000 + int(bb.data.getVar('K_MINOR',d,1)) * 1000000 + int(bb.data.getVar('K_MICRO',d,1)) * 10000 + float(bb.data.getVar('HHV',d,1)))}"
do_configure() {
	# Substitute our uid/gid so the initramfs gets the right ownership.
	MY_UID=`id -u`
	MY_GID=`id -g`
	sed -e "s/^CONFIG_INITRAMFS_ROOT_UID.*$/CONFIG_INITRAMFS_ROOT_UID=$MY_UID/" \
	    -e "s/^CONFIG_INITRAMFS_ROOT_GID.*$/CONFIG_INITRAMFS_ROOT_GID=$MY_GID/" \
	     ${WORKDIR}/defconfig > ${S}/.config

	install -m 0644 ${WORKDIR}/initramfs_list ${S}/initramfs_list

        yes '' | oe_runmake oldconfig
}

do_deploy() {
        install -d ${DEPLOY_DIR}/images
        install -m 0644 arch/${ARCH}/boot/${KERNEL_IMAGETYPE} ${DEPLOY_DIR}/images/LAB-image-${MACHINE}

	# Generate the HTC flavor, which must be a multiple of 512 bytes long.
	cat ${WORKDIR}/greatwall_header arch/${ARCH}/boot/${KERNEL_IMAGETYPE} ${WORKDIR}/greatwall_trailer | dd conv=sync of=${DEPLOY_DIR}/images/LAB-image-${MACHINE}.htc
}

do_deploy[dirs] = "${S}"

addtask deploy before do_build after do_compile