summaryrefslogtreecommitdiff
path: root/packages/initrdscripts/kernel-initramfs_1.0.bb
blob: be1c067ba2651a4ae7bc3a75d85e177a9606807d (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
DESCRIPTION = "A kernel with internal initramfs"
PR = "r1"

#inherit kernel
KERNEL_IMAGETYPE ?= "zImage"

# Name of initramfs recipe to build and put result into kernel
KERNEL_INITRAMFS ?= "initramfs-image"

do_compile() {
	cd ${TOPDIR}; DISTRO=${USERDISTRO} MACHINE=${MACHINE} ANGSTROM_MODE=uclibc IMAGE_FSTYPES=cpio.gz DEPLOY_TO=${WORKDIR}/initramfs.bin bitbake ${KERNEL_INITRAMFS} -c deploy_to
	cd ${TOPDIR}; DISTRO=${USERDISTRO} MACHINE=${MACHINE} INITRAMFS_LOC=${WORKDIR}/initramfs.bin DEPLOY_TO=${WORKDIR}/\${KERNEL_IMAGE_BASE_NAME} bitbake virtual/kernel -c builtin_initramfs
}

do_install() {
        install -d ${D}/boot/
	install -m 644 ${WORKDIR}/${KERNEL_IMAGETYPE}* ${D}/boot/${KERNEL_IMAGETYPE}-${@get_pv(d)}
}

def get_version(d):
	import bb
	import os
	dest = bb.data.getVar("WORKDIR", d, 1)
	try:
	    files = os.listdir(dest)
	    files = filter(lambda f:f.startswith("zImage-"), files)
	    ver = files[0][len("zImage-"):]
	    return ver
	except:
	    return "dum-m-y"

def get_pv(d):
	ver = get_version(d)
	verc = ver.split("-")
	return verc[0] + "-" + verc[1]
	
def get_pr(d):
	ver = get_version(d)
	verc = ver.split("-")
	return verc[2]

PACKAGES = "kernel-image"
FILES_kernel-image = "/boot/*"
PKG_kernel-image = "kernel-image-${@get_pv(d)}"
PKGPV_kernel-image = "${@get_pv(d)}"
PKGPR_kernel-image = "${@get_pr(d)}"

PACKAGE_ARCH = "${MACHINE_ARCH}"