meta-skeleton: add linux-yocto-custom reference recipe
authorBruce Ashfield <bruce.ashfield@windriver.com>
Mon, 11 Jun 2012 20:21:12 +0000 (16:21 -0400)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 18 Jun 2012 12:24:56 +0000 (13:24 +0100)
Adding a skeleton/refrence recipe for using a subset of the yocto
kernel tools against kernel git repositories.

Sample/reference configuration fragments, features and a patch are
provided and documented in the recipe.

From the recipe itself:

   Provides an example/minimal kernel recipe that uses the linux-yocto
   and oe-core kernel classes to apply a subset of yocto kernel
   management to git managed kernel repositories.

 Notes:

   kconfig(s): the kernel must be configured with a defconfig, or via
               configuration fragment(s). Either of these can be added
               via bbappend.
   patches: patches can be merged into to the source git tree itself, added
            using standard bbappend syntax or controlled via .scc feature
            descriptions (also via bbappends)

   example configuration addition:
            SRC_URI += "file://smp.cfg"
   example patch addition (for kernel v3.4 only):
            SRC_URI += "file://0001-linux-version-tweak.patch
   example feature addition (for kernel v3.4 only):
            SRC_URI += "file://feature.scc"

 Warning:

   Building the sample kernel tree (kernel.org) without providing any
   configuration will result in build or boot errors. This is not a bug
   it is a required element for creating a valid kernel.

[YOCTO #2397]

(From OE-Core rev: 4b6f29ddb00480896f47d96ea376f3a6f6d8451e)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb [new file with mode: 0644]
meta-skeleton/recipes-kernel/linux/linux-yocto-custom/0001-linux-version-tweak.patch [new file with mode: 0644]
meta-skeleton/recipes-kernel/linux/linux-yocto-custom/feature.scc [new file with mode: 0644]
meta-skeleton/recipes-kernel/linux/linux-yocto-custom/smp.cfg [new file with mode: 0644]

diff --git a/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb b/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb
new file mode 100644 (file)
index 0000000..1438ad8
--- /dev/null
@@ -0,0 +1,46 @@
+# linux-yocto-custom.bb:
+#
+#   Provides an example/minimal kernel recipe that uses the linux-yocto
+#   and oe-core kernel classes to apply a subset of yocto kernel 
+#   management to git managed kernel repositories.
+#
+# Notes:
+#
+#   kconfig(s): the kernel must be configured with a defconfig, or via
+#               configuration fragment(s). Either of these can be added
+#               via bbappend.
+#   patches: patches can be merged into to the source git tree itself, added
+#            using standard bbappend syntax or controlled via .scc feature 
+#            descriptions (also via bbappends)
+#   
+#   example configuration addition:
+#            SRC_URI += "file://smp.cfg"
+#   example patch addition (for kernel v3.4 only):
+#            SRC_URI += "file://0001-linux-version-tweak.patch
+#   example feature addition (for kernel v3.4 only):
+#            SRC_URI += "file://feature.scc"
+#
+# Warning:
+#
+#   Building the sample kernel tree (kernel.org) without providing any
+#   configuration will result in build or boot errors. This is not a bug
+#   it is a required element for creating a valid kernel.
+#    
+
+inherit kernel
+require recipes-kernel/linux/linux-yocto.inc
+
+SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git;protocol=git;nocheckout=1"
+
+LINUX_VERSION ?= "3.4"
+LINUX_VERSION_EXTENSION ?= "-custom"
+
+# tag: v3.4 76e10d158efb6d4516018846f60c2ab5501900bc
+SRCREV="76e10d158efb6d4516018846f60c2ab5501900bc"
+
+PR = "r0"
+PV = "${LINUX_VERSION}+git${SRCPV}"
+
+COMPATIBLE_MACHINE = "(qemuarm|qemux86|qemuppc|qemumips|qemux86-64)"
+
+require recipes-kernel/linux/linux-tools.inc
diff --git a/meta-skeleton/recipes-kernel/linux/linux-yocto-custom/0001-linux-version-tweak.patch b/meta-skeleton/recipes-kernel/linux/linux-yocto-custom/0001-linux-version-tweak.patch
new file mode 100644 (file)
index 0000000..c9562da
--- /dev/null
@@ -0,0 +1,26 @@
+From 5a55943a6bbb10a79994a0b18071b2427dffb15f Mon Sep 17 00:00:00 2001
+From: Bruce Ashfield <bruce.ashfield@windriver.com>
+Date: Mon, 11 Jun 2012 15:31:42 -0400
+Subject: [PATCH] linux: version tweak
+
+Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
+---
+ Makefile |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index a687963..f5b1ac3 100644
+--- a/Makefile
++++ b/Makefile
+@@ -2,7 +2,7 @@ VERSION = 3
+ PATCHLEVEL = 4
+ SUBLEVEL = 0
+ EXTRAVERSION =
+-NAME = Saber-toothed Squirrel
++NAME = Saber-toothed Squirrel-custom
+ # *DOCUMENTATION*
+ # To see a list of typical targets execute "make help"
+-- 
+1.7.5.4
+
diff --git a/meta-skeleton/recipes-kernel/linux/linux-yocto-custom/feature.scc b/meta-skeleton/recipes-kernel/linux/linux-yocto-custom/feature.scc
new file mode 100644 (file)
index 0000000..aad5af4
--- /dev/null
@@ -0,0 +1 @@
+patch 0001-linux-version-tweak.patch
diff --git a/meta-skeleton/recipes-kernel/linux/linux-yocto-custom/smp.cfg b/meta-skeleton/recipes-kernel/linux/linux-yocto-custom/smp.cfg
new file mode 100644 (file)
index 0000000..0c26a86
--- /dev/null
@@ -0,0 +1 @@
+# CONFIG_SMP is not set