summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDarren Hart <dvhart@linux.intel.com>2012-08-06 15:56:13 (GMT)
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-08-07 11:56:34 (GMT)
commit89886d93591372fdf28ffbf5b16c28ea399c6f0c (patch)
tree41776e2bb916c34e485f63a85809b85f7661591a
parentd6ef548c48968d16f7e24dec7452ddb455c26d46 (diff)
downloadpoky-89886d93591372fdf28ffbf5b16c28ea399c6f0c.tar.gz
linux-yocto-custom: Clarify usage and clear COMPATIBLE_MACHINE
There has been some confusion over proper use of the linux-yocto-custom recipe. It is not intended to build as is from meta-skeleton. It should be modified via a bbappend file to provide a Linux kernel config at the very least. Update the commentary to make this requirement more explicit. Add some additional detail about how to create a bbappend file and how and when to modify the various variables. Clear COMPATIBLE_MACHINE so bitbake will not attempt to build the recipe unless the user explicitly adds there machine to the variable, which should encourage them to read the recipe comments before attempting to build it. (From OE-Core rev: 8ac3d0566e793777ec4f6629ef752d6db6231ca9) Signed-off-by: Darren Hart <dvhart@linux.intel.com> CC: Bruce Ashfield <bruce.ashfield@windriver.com> CC: Tom Zanussi <tom.zanussi@intel.com> Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb53
1 files changed, 36 insertions, 17 deletions
diff --git a/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb b/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb
index 55f0c38..1f0b3a2 100644
--- a/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb
+++ b/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb
@@ -1,17 +1,36 @@
1# linux-yocto-custom.bb: 1# linux-yocto-custom.bb:
2# 2#
3# Provides an example/minimal kernel recipe that uses the linux-yocto 3# An example kernel recipe that uses the linux-yocto and oe-core
4# and oe-core kernel classes to apply a subset of yocto kernel 4# kernel classes to apply a subset of yocto kernel management to git
5# management to git managed kernel repositories. 5# managed kernel repositories.
6#
7# To use linux-yocto-custom in your layer, create a
8# linux-yocto-custom.bbappend file containing at least the following
9# lines:
10#
11# FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
12# COMPATIBLE_MACHINE_yourmachine = "yourmachine"
13#
14# You must also provide a Linux kernel configuration. The most direct
15# method is to copy your .config to files/defconfig in your layer,
16# in the same directory as the bbappend.
17#
18# To use the yocto kernel tooling to generate a BSP configuration
19# using modular configuration fragments, see the yocto-bsp and
20# yocto-kernel tools documentation.
21#
22# Warning:
23#
24# Building this example without providing a defconfig or BSP
25# configuration will result in build or boot errors. This is not a
26# bug.
27#
6# 28#
7# Notes: 29# Notes:
8# 30#
9# kconfig(s): the kernel must be configured with a defconfig, or via 31# patches: patches can be merged into to the source git tree itself,
10# configuration fragment(s). Either of these can be added 32# added via the SRC_URI, or controlled via a BSP
11# via bbappend. 33# configuration.
12# patches: patches can be merged into to the source git tree itself, added
13# using standard bbappend syntax or controlled via .scc feature
14# descriptions (also via bbappends)
15# 34#
16# example configuration addition: 35# example configuration addition:
17# SRC_URI += "file://smp.cfg" 36# SRC_URI += "file://smp.cfg"
@@ -20,25 +39,25 @@
20# example feature addition (for kernel v3.4 only): 39# example feature addition (for kernel v3.4 only):
21# SRC_URI += "file://feature.scc" 40# SRC_URI += "file://feature.scc"
22# 41#
23# Warning:
24#
25# Building the sample kernel tree (kernel.org) without providing any
26# configuration will result in build or boot errors. This is not a bug
27# it is a required element for creating a valid kernel.
28#
29 42
30inherit kernel 43inherit kernel
31require recipes-kernel/linux/linux-yocto.inc 44require recipes-kernel/linux/linux-yocto.inc
32 45
46# Override SRC_URI in a bbappend file to point at a different source
47# tree if you do not want to build from Linus' tree.
33SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git;protocol=git;nocheckout=1" 48SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git;protocol=git;nocheckout=1"
34 49
35LINUX_VERSION ?= "3.4" 50LINUX_VERSION ?= "3.4"
36LINUX_VERSION_EXTENSION ?= "-custom" 51LINUX_VERSION_EXTENSION ?= "-custom"
37 52
53# Override SRCREV to point to a different commit in a bbappend file to
54# build a different release of the Linux kernel.
38# tag: v3.4 76e10d158efb6d4516018846f60c2ab5501900bc 55# tag: v3.4 76e10d158efb6d4516018846f60c2ab5501900bc
39SRCREV="76e10d158efb6d4516018846f60c2ab5501900bc" 56SRCREV="76e10d158efb6d4516018846f60c2ab5501900bc"
40 57
41PR = "r0" 58PR = "r1"
42PV = "${LINUX_VERSION}+git${SRCPV}" 59PV = "${LINUX_VERSION}+git${SRCPV}"
43 60
44COMPATIBLE_MACHINE = "(qemuarm|qemux86|qemuppc|qemumips|qemux86-64)" 61# Override COMPATIBLE_MACHINE to include your machine in a bbappend
62# file. Leaving it empty here ensures an early explicit build failure.
63COMPATIBLE_MACHINE = "(^$)"