meta-bsp/dm7080: merge into meta-dreambox
[opendreambox.git] / meta-dreambox / recipes-kernel / linux / linux-dreambox.inc
1 require linux.inc
2
3 # By default, kernel.bbclass modifies package names to allow multiple kernels
4 # to be installed in parallel. We revert this change and rprovide the versioned
5 # package names instead, to allow only one kernel to be installed.
6 PKG_kernel-base = "kernel-base"
7 PKG_kernel-image = "kernel-image"
8 RPROVIDES_kernel-base = "kernel-${KERNEL_VERSION}"
9 RPROVIDES_kernel-image = "kernel-image-${KERNEL_VERSION}"
10
11 do_install_append() {
12         if [ "${KERNEL_IMAGETYPE}" = "vmlinux" ]; then
13                 # We want a stripped kernel that gets gzipped and booted from and
14                 # an unstripped version for debugging, which will get into the
15                 # kernel-vmlinux package. When booting vmlinux directly, work on a copy.
16                 if [ "${KERNEL_IMAGEDEST}" = "boot" ]; then
17                         install -m644 ${D}/boot/vmlinux-${KERNEL_VERSION} ${D}/boot/vmlinux.nostrip
18                 fi
19                 # Mark the kernel as executable, so it gets stripped during do_package.
20                 chmod +x ${D}/${KERNEL_IMAGEDEST}/vmlinux-${KERNEL_VERSION}
21         fi
22 }
23
24 PACKAGES += "kernel-image-dbg"
25
26 FILES_kernel-image-dbg = "/${KERNEL_IMAGEDEST}/.debug"
27 FILES_kernel-vmlinux = "/boot/vmlinux-${KERNEL_VERSION}"
28
29 python populate_packages_prepend() {
30     import shutil
31     imagetype = d.getVar('KERNEL_IMAGETYPE', True)
32     if imagetype == "vmlinux":
33         pkgd = d.getVar('PKGD', True)
34         imagedest = d.getVar('KERNEL_IMAGEDEST', True)
35         version = d.getVar('KERNEL_VERSION', True)
36         os.system("gzip -9 %s/%s/vmlinux-%s" % (pkgd, imagedest, version))
37         if imagedest == "boot":
38             shutil.move("%s/boot/vmlinux.nostrip" % pkgd, "%s/boot/vmlinux-%s" % (pkgd, version))
39 }
40
41 # Do not use update-alternatives!
42 pkg_postinst_kernel-image () {
43 }
44 pkg_postrm_kernel-image () {
45 }