Skip to contentSkip to conversation

Enable building modules on target

PATCH Superseded Darren Hart 4 participants 20 messages Jun 29, 2012

v1 of 3 Superseded Latest is v3 →

lore
Share & tools
lore
#0 lore raw

cover Enable building modules on target

This series simplifies the include mechanisms for the linux-yocto recipes and adds support for a kernel-headers package which enables the building of modules on the target.

Sending to both oe-core and poky as this series touches files in both and I didn't want to confuse the intent or the dependency by splitting them up.

The following changes since commit 4d48398798c898c5db08294ba64d9bfc7daca19c:

local.conf.sample.extended: Add filtering function to archiver.bbclass (2012-06-28 16:32:58 +0100)

are available in the git repository at:

git://git.yoctoproject.org/poky-contrib dvhart/modules
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=dvhart/modules

Darren Hart (4):
linux-libc-headers-yocto: Do not include linux-yocto
linux-yocto: Use INC_PR and move kernel require to linux-yocto.inc
kernel: Add kernel-headers package for target module build
tasl-core-sdk: Add kernel-headers to task-core-sdk RDEPENDS

 .../linux-libc-headers/linux-libc-headers-yocto_git.bb      |    3 ++-
 meta/classes/kernel.bbclass                                 |   11 +++++++----
 meta/conf/bitbake.conf                                      |    2 +-
 meta/recipes-core/tasks/task-core-sdk.bb                    |    3 ++-
 meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb             |    3 +--
 meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb             |    3 +--
 meta/recipes-kernel/linux/linux-yocto-rt_3.4.bb             |    3 +--
 meta/recipes-kernel/linux/linux-yocto-tiny_3.2.bb           |    3 +--
 meta/recipes-kernel/linux/linux-yocto.inc                   |    3 +++
 meta/recipes-kernel/linux/linux-yocto_3.0.bb                |    3 +--
 meta/recipes-kernel/linux/linux-yocto_3.2.bb                |    3 +--
 meta/recipes-kernel/linux/linux-yocto_3.4.bb                |    3 +--
 12 files changed, 22 insertions(+), 21 deletions(-)
Signature · 1 line
1.7.10.2
#1 lore raw

PATCH 1/4 linux-libc-headers-yocto: Do not include linux-yocto

The only bit we seem to need from the linux-yocto include is the SRCREV_FORMAT. If we define this explicitly, we can avoid including the linux-yocto include.

This is desirable so that linux-yocto can require kernel and simplify the PR update process of all the linux-yocto* recipes. Pulling in kernel to the linux-libc-headers-yocto recipes causes build failures by pulling in "update-modules-nativesdk".

CC Bruce Ashfield <[email protected]>
CC Tom Zanussi <[email protected]>
---
 .../linux-libc-headers/linux-libc-headers-yocto_git.bb              |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
meta-yocto/recipes-kernel/linux-libc-headers/linux-libc-headers-yocto_git.bb +2 -1
index b4222f1..8ab4fb1 100644
@@ -1,5 +1,4 @@
 require recipes-kernel/linux-libc-headers/linux-libc-headers.inc
-include recipes-kernel/linux/linux-yocto.inc
 
 B = "${S}"
 
@@ -13,6 +12,8 @@ SRCREV = "a1cdb60720c452c3965eaec3ec2cd10f06261cc5"
 PV = "3.4+git-${SRCPV}"
 PR = "r6"
 
+SRCREV_FORMAT ?= "meta_machine"
+
 SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.4.git;protocol=git;nocheckout=1;branch=${KBRANCH},meta;name=machine,meta"
 
 # force this to empty to prevent installation failures, we aren't
Signature · 1 line
1.7.10.2
#2 lore raw

PATCH 2/4 linux-yocto: Use INC_PR and move kernel require to linux-yocto.inc

When making changes to kernel.bbclass, it would be nice not to have to manually change the PR of every linux-yocto*.bb file that requires it.

Move the "require kernel" line to linux-yocto.inc and update the linux-yocto recipes to use INC_PR.

CC Bruce Ashfield <[email protected]>
CC Tom Zanussi <[email protected]>
---
 meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb   |    3 +--
 meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb   |    3 +--
 meta/recipes-kernel/linux/linux-yocto-rt_3.4.bb   |    3 +--
 meta/recipes-kernel/linux/linux-yocto-tiny_3.2.bb |    3 +--
 meta/recipes-kernel/linux/linux-yocto.inc         |    3 +++
 meta/recipes-kernel/linux/linux-yocto_3.0.bb      |    3 +--
 meta/recipes-kernel/linux/linux-yocto_3.2.bb      |    3 +--
 meta/recipes-kernel/linux/linux-yocto_3.4.bb      |    3 +--
 8 files changed, 10 insertions(+), 14 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb +1 -2
index 1de0411..1dd95c6 100644
@@ -1,4 +1,3 @@
-inherit kernel
 require recipes-kernel/linux/linux-yocto.inc
 
 KBRANCH = "yocto/standard/preempt-rt/base"
@@ -12,7 +11,7 @@ SRCREV_machine ?= "e67428d9966eecec4c081993dc64ceb5c0e64643"
 SRCREV_machine_qemuppc ?= "dcca458cb92cc287f70e4062f02460f36a881b16"
 SRCREV_meta ?= "d282029891bba5440630a885b940dea5e34e3e2c"
 
-PR = "r2"
+PR = "${INC_PR}.0"
 PV = "${LINUX_VERSION}+git${SRCPV}"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.0.git;protocol=git;bareclone=1;branch=${KBRANCH},meta;name=machine,meta"
meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb +1 -2
index ada66b8..cf88fae 100644
@@ -1,4 +1,3 @@
-inherit kernel
 require recipes-kernel/linux/linux-yocto.inc
 
 KBRANCH = "standard/preempt-rt/base"
@@ -13,7 +12,7 @@ SRCREV_machine ?= "c413f23eafb3e91ff98653e578e771532fd71be9"
 SRCREV_machine_qemuppc ?= "d7020ba154df03cba5351011ff664f5e3e1ce678"
 SRCREV_meta ?= "ee78519365bdb25287703bbc31c06b193263c654"
 
-PR = "r1"
+PR = "${INC_PR}.0"
 PV = "${LINUX_VERSION}+git${SRCPV}"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.2.git;protocol=git;bareclone=1;branch=${KBRANCH},meta;name=machine,meta"
meta/recipes-kernel/linux/linux-yocto-rt_3.4.bb +1 -2
index 9b77186..fde9020 100644
@@ -1,4 +1,3 @@
-inherit kernel
 require recipes-kernel/linux/linux-yocto.inc
 
 KBRANCH = "standard/preempt-rt/base"
@@ -13,7 +12,7 @@ SRCREV_machine ?= "4a688295a1c6d44f3eea409d51a0344c8830d829"
 SRCREV_machine_qemuppc ?= "83843542dd524007547eddba507690cd4bab393b"
 SRCREV_meta ?= "d65afd9e42230a3ef4cc1f9ad62d0aa84a533cd0"
 
-PR = "r0"
+PR = "${INC_PR}.0"
 PV = "${LINUX_VERSION}+git${SRCPV}"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.4.git;protocol=git;bareclone=1;branch=${KBRANCH},meta;name=machine,meta"
meta/recipes-kernel/linux/linux-yocto-tiny_3.2.bb +1 -2
index 546971b..78337fb 100644
@@ -1,4 +1,3 @@
-inherit kernel
 require recipes-kernel/linux/linux-yocto.inc
 
 # We need lzma (as CONFIG_KERNEL_LZMA=y)
@@ -13,7 +12,7 @@ LINUX_VERSION ?= "3.2.18"
 SRCREV_machine ?= "27b68a93eb791e830da8d3a2c0fc99780897ad89"
 SRCREV_meta ?= "ee78519365bdb25287703bbc31c06b193263c654"
 
-PR = "r0"
+PR = "${INC_PR}.0"
 PV = "${LINUX_VERSION}+git${SRCPV}"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.2;protocol=git;bareclone=1;branch=${KBRANCH},meta;name=machine,meta"
meta/recipes-kernel/linux/linux-yocto.inc +3 -0
index 0912bee..2e01946 100644
@@ -4,6 +4,8 @@ LICENSE = "GPLv2"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
 
+INC_PR = "r0"
+
 # A KMACHINE is the mapping of a yocto $MACHINE to what is built
 # by the kernel. This is typically the branch that should be built,
 # and it can be specific to the machine or shared
@@ -23,6 +25,7 @@ do_patch[depends] = "kern-tools-native:do_populate_sysroot"
 addtask kernel_configme before do_configure after do_patch
 
 # Pick up shared functions
+inherit kernel
 inherit kernel-yocto
 require linux-dtb.inc
 
meta/recipes-kernel/linux/linux-yocto_3.0.bb +1 -2
index 362e65a..d178cd0 100644
@@ -1,4 +1,3 @@
-inherit kernel
 require recipes-kernel/linux/linux-yocto.inc
 
 KBRANCH = "yocto/standard/base"
@@ -20,7 +19,7 @@ SRCREV_machine_qemux86-64 ?= "cba836a545fbeb96f6f2392c3ecbac9d7735fa65"
 SRCREV_machine ?= "bd6ad607c754dea30d91502a237870b4c45e0f1b"
 SRCREV_meta ?= "d282029891bba5440630a885b940dea5e34e3e2c"
 
-PR = "r4"
+PR = "${INC_PR}.0"
 PV = "${LINUX_VERSION}+git${SRCPV}"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.0;protocol=git;bareclone=1;branch=${KBRANCH},meta;name=machine,meta"
meta/recipes-kernel/linux/linux-yocto_3.2.bb +1 -2
index 3e4a9dd..1e9a1d1 100644
@@ -1,4 +1,3 @@
-inherit kernel
 require recipes-kernel/linux/linux-yocto.inc
 
 KBRANCH = "standard/default/base"
@@ -18,7 +17,7 @@ SRCREV_machine_qemux86-64 ?= "dd488f551fa0f8e3bf1aadd78083b8547bba8bdf"
 SRCREV_machine ?= "76133a1cadf0de417c29ed15d6fbb12c41c0802b"
 SRCREV_meta ?= "ee78519365bdb25287703bbc31c06b193263c654"
 
-PR = "r1"
+PR = "${INC_PR}.0"
 PV = "${LINUX_VERSION}+git${SRCPV}"
 
 KMETA = "meta"
meta/recipes-kernel/linux/linux-yocto_3.4.bb +1 -2
index 7d14967..0247d24 100644
@@ -1,4 +1,3 @@
-inherit kernel
 require recipes-kernel/linux/linux-yocto.inc
 
 KBRANCH = "standard/base"
@@ -22,7 +21,7 @@ SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.4.git;protocol=git;nocheckou
 
 LINUX_VERSION ?= "3.4.3"
 
-PR = "r0"
+PR = "${INC_PR}.0"
 PV = "${LINUX_VERSION}+git${SRCPV}"
 
 KMETA = "meta"
Signature · 1 line
1.7.10.2
#6 lore raw

PATCH 3/4 kernel: Add kernel-headers package for target module build

In reply to Darren Hart

[YOCTO #1614]

Add a kernel-headers package to kernel.bbclass. This packages effectively packages what was already built and kept in sysroots for building modules with bitbake. Making this available on the target requires removing some additional host binaries.

Move the location to /usr/src/kernel-headers.

Before use on the target, the user will need to:

    # cd /usr/src/kernel-headers
    # make scripts
CC Bruce Ashfield <[email protected]>
CC Tom Zanussi <[email protected]>
CC Khem Raj <[email protected]>
---
 meta/classes/kernel.bbclass |   11 +++++++----
 meta/conf/bitbake.conf      |    2 +-
 2 files changed, 8 insertions(+), 5 deletions(-)
meta/classes/kernel.bbclass +7 -4
index 31e633b..b82af74 100644
@@ -130,7 +130,7 @@ kernel_do_install() {
 	# Support for external module building - create a minimal copy of the
 	# kernel source tree.
 	#
-	kerneldir=${D}/kernel
+	kerneldir=${D}/usr/src/kernel-headers
 	install -d $kerneldir
 
 	#
@@ -183,10 +183,11 @@ kernel_do_install() {
 		cp arch/powerpc/lib/crtsavres.o $kerneldir/arch/powerpc/lib/crtsavres.o
 	fi
 
-	# Remove the following binaries which cause strip errors
+	# Remove the following binaries which cause strip or arch QA errors
 	# during do_package for cross-compiled platforms
 	bin_files="arch/powerpc/boot/addnote arch/powerpc/boot/hack-coff \
-	           arch/powerpc/boot/mktree"
+	           arch/powerpc/boot/mktree scripts/kconfig/zconf.tab.o \
+		   scripts/kconfig/conf.o"
 	for entry in $bin_files; do
 		rm -f $kerneldir/$entry
 	done
@@ -247,13 +248,15 @@ EXPORT_FUNCTIONS do_compile do_install do_configure
 
 # kernel-base becomes kernel-${KERNEL_VERSION}
 # kernel-image becomes kernel-image-${KERNEL_VERISON}
-PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev kernel-misc"
+PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev \
+            kernel-misc kernel-headers"
 FILES = ""
 FILES_kernel-image = "/boot/${KERNEL_IMAGETYPE}*"
 FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config*"
 FILES_kernel-vmlinux = "/boot/vmlinux*"
 # misc is a package to contain files we need in staging
 FILES_kernel-misc = "/kernel/include/config /kernel/scripts /kernel/drivers/crypto /kernel/drivers/media"
+FILES_kernel-headers = "/usr/src/kernel-headers"
 RDEPENDS_kernel = "kernel-base"
 # Allow machines to override this dependency if kernel image files are 
 # not wanted in images as standard
meta/conf/bitbake.conf +1 -1
index 9b26580..9f3abee 100644
@@ -380,7 +380,7 @@ SDKPATHNATIVE = "${SDKPATH}/sysroots/${SDK_SYS}"
 ##################################################################
 
 OLDEST_KERNEL = "2.6.16"
-STAGING_KERNEL_DIR = "${STAGING_DIR_HOST}/kernel"
+STAGING_KERNEL_DIR = "${STAGING_DIR_HOST}/usr/src/kernel-headers"
 
 ##################################################################
 # Specific image creation and rootfs population info.
Signature · 1 line
1.7.10.2
#17 lore raw

PATCH 4/4 tasl-core-sdk: Add kernel-headers to task-core-sdk RDEPENDS

In reply to Darren Hart

Add kernel-headers to task-core-sdk so it will be included with core-image-sato-sdk and similar image recipes.

---
 meta/recipes-core/tasks/task-core-sdk.bb |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
meta/recipes-core/tasks/task-core-sdk.bb +2 -1
index ec6cdcc..2853db7 100644
@@ -46,7 +46,8 @@ RDEPENDS_task-core-sdk = "\
     distcc \
     ldd \
     file \
-    tcl"
+    tcl \
+    kernel-headers"
 
 #python generate_sdk_pkgs () {
 #    poky_pkgs = read_pkgdata('task-core', d)['PACKAGES']
Signature · 1 line
1.7.10.2
#3 lore raw

Re: [poky] [PATCH 2/4] linux-yocto: Use INC_PR and move kernel require to linux-yocto.inc

In reply to Darren Hart

meta/recipes-kernel/linux/linux-yocto.inc LICENSE = "GPLv2" · line 8

Quoted 2 lines · Darren Hart
meta/recipes-kernel/linux/linux-yocto.inc +2 -0
+INC_PR = "r0"
+

it is diverting a recipe which once had PR = "r2"
back to "r0" this should instead be

INC_PR = "r3" here which is largest pr value + 1

#7 lore raw

Re: [PATCH 3/4] kernel: Add kernel-headers package for target module build

In reply to Darren Hart
Quoted 7 lines · Darren Hart

[YOCTO #1614]

Add a kernel-headers package to kernel.bbclass. This packages effectively packages what was already built and kept in sysroots for building modules with bitbake. Making this available on the target requires removing some additional host binaries.

Quoted 7 lines

Move the location to /usr/src/kernel-headers.

Before use on the target, the user will need to:

   # cd /usr/src/kernel-headers
   # make scripts

IMO using kernel-headers may not be representing the package contents correctly since I believe it contains more than headers. Its probably kernel-dev or external-lkm-dev or somesuch.

Quoted 69 lines
CC Bruce Ashfield <[email protected]>
CC Tom Zanussi <[email protected]>
CC Khem Raj <[email protected]>

---
 meta/classes/kernel.bbclass |   11 +++++++----
 meta/conf/bitbake.conf      |    2 +-

 2 files changed, 8 insertions(+), 5 deletions(-)
meta/classes/kernel.bbclass +1 -1
index 31e633b..b82af74 100644
@@ -130,7 +130,7 @@ kernel_do_install() {
        # Support for external module building - create a minimal copy of the
        # kernel source tree.
        #
-       kerneldir=${D}/kernel
+       kerneldir=${D}/usr/src/kernel-headers

       install -d $kerneldir

       #

meta/classes/kernel.bbclass +0 -0
@@ -183,10 +183,11 @@ kernel_do_install() {

               cp arch/powerpc/lib/crtsavres.o $kerneldir/arch/powerpc/lib/crtsavres.o fi

-       # Remove the following binaries which cause strip errors
+       # Remove the following binaries which cause strip or arch QA errors

       # during do_package for cross-compiled platforms
       bin_files="arch/powerpc/boot/addnote arch/powerpc/boot/hack-coff \
-                  arch/powerpc/boot/mktree"
+                  arch/powerpc/boot/mktree scripts/kconfig/zconf.tab.o \
+                  scripts/kconfig/conf.o"
       for entry in $bin_files; do
               rm -f $kerneldir/$entry
       done
meta/classes/kernel.bbclass +2 -1
@@ -247,13 +248,15 @@ EXPORT_FUNCTIONS do_compile do_install do_configure
 
  # kernel-base becomes kernel-${KERNEL_VERSION}
  # kernel-image becomes kernel-image-${KERNEL_VERISON}
-PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev kernel-misc"
+PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev \
+            kernel-misc kernel-headers"

 FILES = ""
 FILES_kernel-image = "/boot/${KERNEL_IMAGETYPE}*" FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config*" FILES_kernel-vmlinux = "/boot/vmlinux*"

 # misc is a package to contain files we need in staging
 FILES_kernel-misc = "/kernel/include/config /kernel/scripts /kernel/drivers/crypto /kernel/drivers/media"
+FILES_kernel-headers = "/usr/src/kernel-headers"
 RDEPENDS_kernel = "kernel-base"
 # Allow machines to override this dependency if kernel image files are
 # not wanted in images as standard
meta/conf/bitbake.conf +0 -0
index 9b26580..9f3abee 100644
@@ -380,7 +380,7 @@ SDKPATHNATIVE = "${SDKPATH}/sysroots/${SDK_SYS}"
  ##################################################################
 

 OLDEST_KERNEL = "2.6.16"

meta/conf/bitbake.conf +1 -1
-STAGING_KERNEL_DIR = "${STAGING_DIR_HOST}/kernel"
+STAGING_KERNEL_DIR = "${STAGING_DIR_HOST}/usr/src/kernel-headers"

 ##################################################################
 # Specific image creation and rootfs population info. --
1.7.10.2

#8 lore raw

Re: [PATCH 3/4] kernel: Add kernel-headers package for target module build

Quoted 12 lines · Khem Raj
Quoted 11 lines · Darren Hart

[YOCTO #1614]

Add a kernel-headers package to kernel.bbclass. This packages effectively packages what was already built and kept in sysroots for building modules with bitbake. Making this available on the target requires removing some additional host binaries.

Move the location to /usr/src/kernel-headers.

Before use on the target, the user will need to:

Quoted 7 lines
Quoted 3 lines
   # cd /usr/src/kernel-headers
   # make scripts

IMO using kernel-headers may not be representing the package contents correctly since I believe it contains more than headers. Its probably kernel-dev or external-lkm-dev or somesuch.

I modeled the name after ubuntu which uses the name "linux-headers". Fedora calls it "kernel-devel". I chose the prefix "kernel" as that is what all the rest of the packages start with and I chose "headers" as I am most familiar with the Debian world (he says from his FC17 laptop...).

However, I don't have a strong opinion here, I'll happily call it kernel-devel if that is strongly preferred by some.

--
Darren

Quoted 70 lines
Quoted 70 lines
CC Bruce Ashfield <[email protected]>
CC Tom Zanussi <[email protected]>
CC Khem Raj <[email protected]>
---
 meta/classes/kernel.bbclass |   11 +++++++----
 meta/conf/bitbake.conf      |    2 +-
 2 files changed, 8 insertions(+), 5 deletions(-)
meta/classes/kernel.bbclass +7 -4
index 31e633b..b82af74 100644
@@ -130,7 +130,7 @@ kernel_do_install() {
       # Support for external module building - create a minimal copy of the
       # kernel source tree.
       #
-       kerneldir=${D}/kernel
+       kerneldir=${D}/usr/src/kernel-headers
       install -d $kerneldir
 
       #
@@ -183,10 +183,11 @@ kernel_do_install() {
               cp arch/powerpc/lib/crtsavres.o $kerneldir/arch/powerpc/lib/crtsavres.o
       fi
 
-       # Remove the following binaries which cause strip errors
+       # Remove the following binaries which cause strip or arch QA errors
       # during do_package for cross-compiled platforms
       bin_files="arch/powerpc/boot/addnote arch/powerpc/boot/hack-coff \
-                  arch/powerpc/boot/mktree"
+                  arch/powerpc/boot/mktree scripts/kconfig/zconf.tab.o \
+                  scripts/kconfig/conf.o"
       for entry in $bin_files; do
               rm -f $kerneldir/$entry
       done
@@ -247,13 +248,15 @@ EXPORT_FUNCTIONS do_compile do_install do_configure
 
 # kernel-base becomes kernel-${KERNEL_VERSION}
 # kernel-image becomes kernel-image-${KERNEL_VERISON}
-PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev kernel-misc"
+PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev \
+            kernel-misc kernel-headers"
 FILES = ""
 FILES_kernel-image = "/boot/${KERNEL_IMAGETYPE}*"
 FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config*"
 FILES_kernel-vmlinux = "/boot/vmlinux*"
 # misc is a package to contain files we need in staging
 FILES_kernel-misc = "/kernel/include/config /kernel/scripts /kernel/drivers/crypto /kernel/drivers/media"
+FILES_kernel-headers = "/usr/src/kernel-headers"
 RDEPENDS_kernel = "kernel-base"
 # Allow machines to override this dependency if kernel image files are
 # not wanted in images as standard
meta/conf/bitbake.conf +1 -2
index 9b26580..9f3abee 100644
@@ -380,7 +380,7 @@ SDKPATHNATIVE = "${SDKPATH}/sysroots/${SDK_SYS}"
 ##################################################################
 
 OLDEST_KERNEL = "2.6.16"
-STAGING_KERNEL_DIR = "${STAGING_DIR_HOST}/kernel"
+STAGING_KERNEL_DIR = "${STAGING_DIR_HOST}/usr/src/kernel-headers"
 
 ##################################################################
 # Specific image creation and rootfs population info.
--

1.7.10.2

Signature · 3 lines
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel
#4 lore raw

Re: [poky] [PATCH 2/4] linux-yocto: Use INC_PR and move kernel require to linux-yocto.inc

In reply to Khem Raj
Quoted 8 lines · Khem Raj

meta/recipes-kernel/linux/linux-yocto.inc LICENSE = "GPLv2" · line 8

Quoted 2 lines · Darren Hart
meta/recipes-kernel/linux/linux-yocto.inc +2 -0
+INC_PR = "r0"
+

it is diverting a recipe which once had PR = "r2"
back to "r0" this should instead be

INC_PR = "r3" here which is largest pr value + 1

Duh. Fixed in the branch:

http://git.yoctoproject.org/cgit.cgi/poky-contrib/commit/?h=dvhart/modules&id=2de1e7bb6fba137fe2ef7047f16a63c4824551c1

Signature · 3 lines
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel
#9 lore raw

Re: [PATCH 3/4] kernel: Add kernel-headers package for target module build

In reply to Darren Hart
Quoted 3 lines · Darren Hart

However, I don't have a strong opinion here, I'll happily call it kernel-devel if that is strongly preferred by some.

in oe terminology it will be -dev

#10 lore raw

Re: [PATCH 3/4] kernel: Add kernel-headers package for target module build

Quoted 6 lines · Khem Raj
Quoted 3 lines · Darren Hart

However, I don't have a strong opinion here, I'll happily call it kernel-devel if that is strongly preferred by some.

in oe terminology it will be -dev

THe other reason I didn't go that route is that we already have a kernel-dev (although I don't much like the way it is used):

From kernel.bbclass:

PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev \
kernel-misc kernel-headers"
FILES = ""
FILES_kernel-image = "/boot/${KERNEL_IMAGETYPE}*" FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config*" FILES_kernel-vmlinux = "/boot/vmlinux*"

# misc is a package to contain files we need in staging
FILES_kernel-misc = "/kernel/include/config /kernel/scripts
/kernel/drivers/crypto /kernel/drivers/media"
FILES_kernel-headers = "/usr/src/kernel-headers"

And looking at that it appears I broke kernel-misc by moving things to /usr/src (didn't notice that in my testing).

How would you propose we redefine the above in order to use "kernel-dev" for the new package?

Signature · 3 lines
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel
#11 lore raw

Re: [PATCH 3/4] kernel: Add kernel-headers package for target module build

Quoted 26 lines · Darren Hart
Quoted 6 lines · Khem Raj
Quoted 3 lines · Darren Hart

However, I don't have a strong opinion here, I'll happily call it kernel-devel if that is strongly preferred by some.

in oe terminology it will be -dev

THe other reason I didn't go that route is that we already have a kernel-dev (although I don't much like the way it is used):

From kernel.bbclass:

PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev \
           kernel-misc kernel-headers"
FILES = ""
FILES_kernel-image = "/boot/${KERNEL_IMAGETYPE}*" FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config*" FILES_kernel-vmlinux = "/boot/vmlinux*"

# misc is a package to contain files we need in staging
FILES_kernel-misc = "/kernel/include/config /kernel/scripts
/kernel/drivers/crypto /kernel/drivers/media"
FILES_kernel-headers = "/usr/src/kernel-headers"
Quoted 5 lines

And looking at that it appears I broke kernel-misc by moving things to /usr/src (didn't notice that in my testing).

How would you propose we redefine the above in order to use "kernel-dev" for the new package?

hmmm interesting so I guess, linux-dev being already taken, you might call it linux-kernel-headers as you were doing. So we have linux-libc-headers and linux-kernel-headers to differentiate between raw and sanitized headers

Quoted 7 lines

--
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel

Acked-by on v1 1/4
#18 lore raw

Re: [poky] [PATCH 1/4] linux-libc-headers-yocto: Do not include linux-yocto

In reply to Darren Hart
Quoted 8 lines · Darren Hart

The only bit we seem to need from the linux-yocto include is the SRCREV_FORMAT. If we define this explicitly, we can avoid including the linux-yocto include.

This is desirable so that linux-yocto can require kernel and simplify the PR update process of all the linux-yocto* recipes. Pulling in kernel to the linux-libc-headers-yocto recipes causes build failures by pulling in "update-modules-nativesdk".

I'm familiar with this particular issue .. and I've tried to fix it myself (I have
something that does largely work with both kernel and kernel yocto included), but I didn't know you were looking into this, so I'll toss that out :)

There's something missing with this change, that I had restored the ability to patch and modify the tree, but I'll bolt that on later when I fix up those nativesdk parts.

Quoted 34 lines
CC Bruce Ashfield <[email protected]>
CC Tom Zanussi <[email protected]>

---
 .../linux-libc-headers/linux-libc-headers-yocto_git.bb              |    3 ++-

 1 file changed, 2 insertions(+), 1 deletion(-)
meta-yocto/recipes-kernel/linux-libc-headers/linux-libc-headers-yocto_git.bb +0 -0
index b4222f1..8ab4fb1 100644
@@ -1,5 +1,4 @@

 require recipes-kernel/linux-libc-headers/linux-libc-headers.inc -include recipes-kernel/linux/linux-yocto.inc

 B = "${S}"

meta-yocto/recipes-kernel/linux-libc-headers/linux-libc-headers-yocto_git.bb +0 -0
@@ -13,6 +12,8 @@ SRCREV = "a1cdb60720c452c3965eaec3ec2cd10f06261cc5"

 PV = "3.4+git-${SRCPV}"
 PR = "r6"

meta-yocto/recipes-kernel/linux-libc-headers/linux-libc-headers-yocto_git.bb +2 -0
+SRCREV_FORMAT ?= "meta_machine"
+

 SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.4.git;protocol=git;nocheckout=1;branch=${KBRANCH},meta;name=machine,meta"

 # force this to empty to prevent installation failures, we aren't
--
1.7.10.2

_______________________________________________
poky mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/poky

Signature · 2 lines
"Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end"
Acked-by on v1 2/4
#5 lore raw

Re: [PATCH 2/4] linux-yocto: Use INC_PR and move kernel require to linux-yocto.inc

In reply to Darren Hart
Quoted 5 lines · Darren Hart

When making changes to kernel.bbclass, it would be nice not to have to manually change the PR of every linux-yocto*.bb file that requires it.

Move the "require kernel" line to linux-yocto.inc and update the linux-yocto recipes to use INC_PR.

Looks good. I've been getting ready to change this myself .. saves me the work!

Quoted 162 lines
CC Bruce Ashfield<[email protected]>
CC Tom Zanussi<[email protected]>
---
  meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb   |    3 +--
  meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb   |    3 +--
  meta/recipes-kernel/linux/linux-yocto-rt_3.4.bb   |    3 +--
  meta/recipes-kernel/linux/linux-yocto-tiny_3.2.bb |    3 +--
  meta/recipes-kernel/linux/linux-yocto.inc         |    3 +++
  meta/recipes-kernel/linux/linux-yocto_3.0.bb      |    3 +--
  meta/recipes-kernel/linux/linux-yocto_3.2.bb      |    3 +--
  meta/recipes-kernel/linux/linux-yocto_3.4.bb      |    3 +--
  8 files changed, 10 insertions(+), 14 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb +1 -2
index 1de0411..1dd95c6 100644
@@ -1,4 +1,3 @@
-inherit kernel
  require recipes-kernel/linux/linux-yocto.inc
 
  KBRANCH = "yocto/standard/preempt-rt/base"
@@ -12,7 +11,7 @@ SRCREV_machine ?= "e67428d9966eecec4c081993dc64ceb5c0e64643"
  SRCREV_machine_qemuppc ?= "dcca458cb92cc287f70e4062f02460f36a881b16"
  SRCREV_meta ?= "d282029891bba5440630a885b940dea5e34e3e2c"
 
-PR = "r2"
+PR = "${INC_PR}.0"
  PV = "${LINUX_VERSION}+git${SRCPV}"
 
  SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.0.git;protocol=git;bareclone=1;branch=${KBRANCH},meta;name=machine,meta"
meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb +1 -2
index ada66b8..cf88fae 100644
@@ -1,4 +1,3 @@
-inherit kernel
  require recipes-kernel/linux/linux-yocto.inc
 
  KBRANCH = "standard/preempt-rt/base"
@@ -13,7 +12,7 @@ SRCREV_machine ?= "c413f23eafb3e91ff98653e578e771532fd71be9"
  SRCREV_machine_qemuppc ?= "d7020ba154df03cba5351011ff664f5e3e1ce678"
  SRCREV_meta ?= "ee78519365bdb25287703bbc31c06b193263c654"
 
-PR = "r1"
+PR = "${INC_PR}.0"
  PV = "${LINUX_VERSION}+git${SRCPV}"
 
  SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.2.git;protocol=git;bareclone=1;branch=${KBRANCH},meta;name=machine,meta"
meta/recipes-kernel/linux/linux-yocto-rt_3.4.bb +1 -2
index 9b77186..fde9020 100644
@@ -1,4 +1,3 @@
-inherit kernel
  require recipes-kernel/linux/linux-yocto.inc
 
  KBRANCH = "standard/preempt-rt/base"
@@ -13,7 +12,7 @@ SRCREV_machine ?= "4a688295a1c6d44f3eea409d51a0344c8830d829"
  SRCREV_machine_qemuppc ?= "83843542dd524007547eddba507690cd4bab393b"
  SRCREV_meta ?= "d65afd9e42230a3ef4cc1f9ad62d0aa84a533cd0"
 
-PR = "r0"
+PR = "${INC_PR}.0"
  PV = "${LINUX_VERSION}+git${SRCPV}"
 
  SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.4.git;protocol=git;bareclone=1;branch=${KBRANCH},meta;name=machine,meta"
meta/recipes-kernel/linux/linux-yocto-tiny_3.2.bb +1 -2
index 546971b..78337fb 100644
@@ -1,4 +1,3 @@
-inherit kernel
  require recipes-kernel/linux/linux-yocto.inc
 
  # We need lzma (as CONFIG_KERNEL_LZMA=y)
@@ -13,7 +12,7 @@ LINUX_VERSION ?= "3.2.18"
  SRCREV_machine ?= "27b68a93eb791e830da8d3a2c0fc99780897ad89"
  SRCREV_meta ?= "ee78519365bdb25287703bbc31c06b193263c654"
 
-PR = "r0"
+PR = "${INC_PR}.0"
  PV = "${LINUX_VERSION}+git${SRCPV}"
 
  SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.2;protocol=git;bareclone=1;branch=${KBRANCH},meta;name=machine,meta"
meta/recipes-kernel/linux/linux-yocto.inc +3 -0
index 0912bee..2e01946 100644
@@ -4,6 +4,8 @@ LICENSE = "GPLv2"
 
  LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
 
+INC_PR = "r0"
+
  # A KMACHINE is the mapping of a yocto $MACHINE to what is built
  # by the kernel. This is typically the branch that should be built,
  # and it can be specific to the machine or shared
@@ -23,6 +25,7 @@ do_patch[depends] = "kern-tools-native:do_populate_sysroot"
  addtask kernel_configme before do_configure after do_patch
 
  # Pick up shared functions
+inherit kernel
  inherit kernel-yocto
  require linux-dtb.inc
 
meta/recipes-kernel/linux/linux-yocto_3.0.bb +1 -2
index 362e65a..d178cd0 100644
@@ -1,4 +1,3 @@
-inherit kernel
  require recipes-kernel/linux/linux-yocto.inc
 
  KBRANCH = "yocto/standard/base"
@@ -20,7 +19,7 @@ SRCREV_machine_qemux86-64 ?= "cba836a545fbeb96f6f2392c3ecbac9d7735fa65"
  SRCREV_machine ?= "bd6ad607c754dea30d91502a237870b4c45e0f1b"
  SRCREV_meta ?= "d282029891bba5440630a885b940dea5e34e3e2c"
 
-PR = "r4"
+PR = "${INC_PR}.0"
  PV = "${LINUX_VERSION}+git${SRCPV}"
 
  SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.0;protocol=git;bareclone=1;branch=${KBRANCH},meta;name=machine,meta"
meta/recipes-kernel/linux/linux-yocto_3.2.bb +1 -2
index 3e4a9dd..1e9a1d1 100644
@@ -1,4 +1,3 @@
-inherit kernel
  require recipes-kernel/linux/linux-yocto.inc
 
  KBRANCH = "standard/default/base"
@@ -18,7 +17,7 @@ SRCREV_machine_qemux86-64 ?= "dd488f551fa0f8e3bf1aadd78083b8547bba8bdf"
  SRCREV_machine ?= "76133a1cadf0de417c29ed15d6fbb12c41c0802b"
  SRCREV_meta ?= "ee78519365bdb25287703bbc31c06b193263c654"
 
-PR = "r1"
+PR = "${INC_PR}.0"
  PV = "${LINUX_VERSION}+git${SRCPV}"
 
  KMETA = "meta"
meta/recipes-kernel/linux/linux-yocto_3.4.bb +1 -2
index 7d14967..0247d24 100644
@@ -1,4 +1,3 @@
-inherit kernel
  require recipes-kernel/linux/linux-yocto.inc
 
  KBRANCH = "standard/base"
@@ -22,7 +21,7 @@ SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.4.git;protocol=git;nocheckou
 
  LINUX_VERSION ?= "3.4.3"
 
-PR = "r0"
+PR = "${INC_PR}.0"
  PV = "${LINUX_VERSION}+git${SRCPV}"
 
  KMETA = "meta"
#12 lore raw

Re: [PATCH 3/4] kernel: Add kernel-headers package for target module build

In reply to Khem Raj
Quoted 30 lines · Khem Raj
Quoted 29 lines · Darren Hart
Quoted 6 lines · Khem Raj
Quoted 3 lines · Darren Hart

However, I don't have a strong opinion here, I'll happily call it kernel-devel if that is strongly preferred by some.

in oe terminology it will be -dev

THe other reason I didn't go that route is that we already have a kernel-dev (although I don't much like the way it is used):

From kernel.bbclass:

PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev \
kernel-misc kernel-headers"
FILES = ""
FILES_kernel-image = "/boot/${KERNEL_IMAGETYPE}*" FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config*" FILES_kernel-vmlinux = "/boot/vmlinux*"

# misc is a package to contain files we need in staging
FILES_kernel-misc = "/kernel/include/config /kernel/scripts
/kernel/drivers/crypto /kernel/drivers/media"
FILES_kernel-headers = "/usr/src/kernel-headers"

And looking at that it appears I broke kernel-misc by moving things to /usr/src (didn't notice that in my testing).

Quoted 7 lines
Quoted 2 lines

How would you propose we redefine the above in order to use "kernel-dev" for the new package?

hmmm interesting so I guess, linux-dev being already taken, you might call it linux-kernel-headers as you were doing. So we have linux-libc-headers and linux-kernel-headers to differentiate between raw and sanitized headers

What would break if the new files were simply added to the existing kernel-dev package ? I'm already putting System.map and others on targets in different environments for dev/debug, so would adding enough to build kernel modules on the target be a big problem ?

But I probably just don't understand *what* the existing -dev package is used for, and my comment makes no sense :)

Outside of that, I also like linux-kernel-headers as the package name.

Cheers,

Bruce

Quoted 8 lines
Quoted 8 lines

--
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel

#13 lore raw

Re: [PATCH 3/4] kernel: Add kernel-headers package for target module build

Quoted 39 lines · Bruce Ashfield
Quoted 30 lines · Khem Raj
Quoted 29 lines · Darren Hart
Quoted 6 lines · Khem Raj
Quoted 3 lines · Darren Hart

However, I don't have a strong opinion here, I'll happily call it kernel-devel if that is strongly preferred by some.

in oe terminology it will be -dev

THe other reason I didn't go that route is that we already have a kernel-dev (although I don't much like the way it is used):

From kernel.bbclass:

PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev \
kernel-misc kernel-headers"
FILES = ""
FILES_kernel-image = "/boot/${KERNEL_IMAGETYPE}*" FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config*" FILES_kernel-vmlinux = "/boot/vmlinux*"

# misc is a package to contain files we need in staging
FILES_kernel-misc = "/kernel/include/config /kernel/scripts
/kernel/drivers/crypto /kernel/drivers/media"
FILES_kernel-headers = "/usr/src/kernel-headers"

And looking at that it appears I broke kernel-misc by moving things to /usr/src (didn't notice that in my testing).

Quoted 7 lines
Quoted 2 lines

How would you propose we redefine the above in order to use "kernel-dev" for the new package?

hmmm interesting so I guess, linux-dev being already taken, you might call it linux-kernel-headers as you were doing. So we have linux-libc-headers and linux-kernel-headers to differentiate between raw and sanitized headers

Quoted 5 lines

What would break if the new files were simply added to the existing kernel-dev
package ? I'm already putting System.map and others on targets in different environments for dev/debug, so would adding enough to build kernel modules on the target be a big problem ?

I was considering this last night as well.

Quoted 2 lines

But I probably just don't understand *what* the existing -dev package is used for, and my comment makes no sense :)

And I landed here as well.

Should we attempt this approach and only break them apart if somebody screams?

Quoted 2 lines

Outside of that, I also like linux-kernel-headers as the package name.

Would you prefer this even if we merge it with the existing kernel-dev? I think my order of preference would be:

1) Merge with kernel-dev and leave the name as kernel-dev for consistency

2) New package called linux-kernel-headers

--
Darren

Quoted 14 lines

Cheers,

Bruce

Quoted 8 lines
Quoted 8 lines

--
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel

Signature · 3 lines
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel
#19 lore raw

Re: [poky] [PATCH 1/4] linux-libc-headers-yocto: Do not include linux-yocto

In reply to Bruce Ashfield
Quoted 10 lines · Bruce Ashfield
Quoted 8 lines · Darren Hart

The only bit we seem to need from the linux-yocto include is the SRCREV_FORMAT. If we define this explicitly, we can avoid including the linux-yocto include.

This is desirable so that linux-yocto can require kernel and simplify the PR update process of all the linux-yocto* recipes. Pulling in kernel to the linux-libc-headers-yocto recipes causes build failures by pulling in "update-modules-nativesdk".

Quoted 5 lines

I'm familiar with this particular issue .. and I've tried to fix it myself (I have
something that does largely work with both kernel and kernel yocto included), but I didn't know you were looking into this, so I'll toss that out :)

I wasn't looking at it explicitly, but it got in the way of the kernel-headers effort, so it grew out of that.

Quoted 4 lines

There's something missing with this change, that I had restored the ability to patch and modify the tree, but I'll bolt that on later when I fix up those nativesdk parts.

Cool, thanks!

Quoted 40 lines
Quoted 34 lines
CC Bruce Ashfield <[email protected]>
CC Tom Zanussi <[email protected]>
---
 .../linux-libc-headers/linux-libc-headers-yocto_git.bb              |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
meta-yocto/recipes-kernel/linux-libc-headers/linux-libc-headers-yocto_git.bb +2 -2
index b4222f1..8ab4fb1 100644
@@ -1,5 +1,4 @@
 require recipes-kernel/linux-libc-headers/linux-libc-headers.inc
-include recipes-kernel/linux/linux-yocto.inc
 
 B = "${S}"
 
@@ -13,6 +12,8 @@ SRCREV = "a1cdb60720c452c3965eaec3ec2cd10f06261cc5"
 PV = "3.4+git-${SRCPV}"
 PR = "r6"
 
+SRCREV_FORMAT ?= "meta_machine"
+
 SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.4.git;protocol=git;nocheckout=1;branch=${KBRANCH},meta;name=machine,meta"
 
 # force this to empty to prevent installation failures, we aren't
--

1.7.10.2

_______________________________________________
poky mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/poky

Signature · 3 lines
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel
#14 lore raw

Re: [PATCH 3/4] kernel: Add kernel-headers package for target module build

In reply to Darren Hart
Quoted 49 lines · Darren Hart
Quoted 39 lines · Bruce Ashfield
Quoted 30 lines · Khem Raj
Quoted 29 lines · Darren Hart
Quoted 6 lines · Khem Raj
Quoted 3 lines · Darren Hart

However, I don't have a strong opinion here, I'll happily call it kernel-devel if that is strongly preferred by some.

in oe terminology it will be -dev

THe other reason I didn't go that route is that we already have a kernel-dev (although I don't much like the way it is used):

From kernel.bbclass:

PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev \
kernel-misc kernel-headers"
FILES = ""
FILES_kernel-image = "/boot/${KERNEL_IMAGETYPE}*" FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config*" FILES_kernel-vmlinux = "/boot/vmlinux*"

# misc is a package to contain files we need in staging
FILES_kernel-misc = "/kernel/include/config /kernel/scripts
/kernel/drivers/crypto /kernel/drivers/media"
FILES_kernel-headers = "/usr/src/kernel-headers"

And looking at that it appears I broke kernel-misc by moving things to /usr/src (didn't notice that in my testing).

Quoted 7 lines
Quoted 2 lines

How would you propose we redefine the above in order to use "kernel-dev" for the new package?

hmmm interesting so I guess, linux-dev being already taken, you might call it linux-kernel-headers as you were doing. So we have linux-libc-headers and linux-kernel-headers to differentiate between raw and sanitized headers

Quoted 5 lines

What would break if the new files were simply added to the existing kernel-dev
package ? I'm already putting System.map and others on targets in different environments for dev/debug, so would adding enough to build kernel modules on the target be a big problem ?

Quoted 6 lines

I was considering this last night as well.

Quoted 2 lines

But I probably just don't understand *what* the existing -dev package is used for, and my comment makes no sense :)

And I landed here as well.

:)

Quoted 3 lines

Should we attempt this approach and only break them apart if somebody screams?

In the absence of definitely proof that we are missing something, I'm ok with suggesting that we have a single -dev package.

Quoted 11 lines
Quoted 3 lines

Outside of that, I also like linux-kernel-headers as the package name.

Would you prefer this even if we merge it with the existing kernel-dev? I think my order of preference would be:

1) Merge with kernel-dev and leave the name as kernel-dev for consistency

2) New package called linux-kernel-headers

Is there a 3rd option of a virtual package called linux-kernel-headers that maps to -dev ? I have no idea if that is even possible or desirable, but I thought I'd mention it.

I like #1, since we really are talking about development vs just some headers lying around :)

Cheers,

Bruce

Quoted 19 lines

--
Darren

Quoted 14 lines

Cheers,

Bruce

Quoted 8 lines
Quoted 8 lines

--
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel

#15 lore raw

Re: [PATCH 3/4] kernel: Add kernel-headers package for target module build

Quoted 8 lines · Bruce Ashfield
Quoted 7 lines · Darren Hart
Quoted 4 lines · Bruce Ashfield
Quoted 2 lines · Khem Raj

On Thu, Jun 28, 2012 at 11:14 PM, Darren Hart<[email protected]>

Quoted 5 lines · wrote:
Quoted 5 lines
Quoted 5 lines
Quoted 5 lines
Quoted 5 lines · Khem Raj
Quoted 2 lines

On Thu, Jun 28, 2012 at 10:50 PM, Darren Hart<[email protected]>

Quoted 4 lines · wrote:
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 3 lines

However, I don't have a strong opinion here, I'll happily call it kernel-devel if that is strongly preferred by some.

Quoted 8 lines
Quoted 8 lines
Quoted 8 lines
Quoted 8 lines
Quoted 8 lines
Quoted 1 line

in oe terminology it will be -dev

THe other reason I didn't go that route is that we already have a kernel-dev (although I don't much like the way it is used):

From kernel.bbclass:

PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev

\

Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines

kernel-misc kernel-headers"
FILES = ""
FILES_kernel-image = "/boot/${KERNEL_IMAGETYPE}*" FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers*

/boot/config*"

Quoted 10 lines
Quoted 10 lines
Quoted 10 lines
Quoted 10 lines
Quoted 10 lines

FILES_kernel-vmlinux = "/boot/vmlinux*"

# misc is a package to contain files we need in staging
FILES_kernel-misc = "/kernel/include/config /kernel/scripts
/kernel/drivers/crypto /kernel/drivers/media"
FILES_kernel-headers = "/usr/src/kernel-headers"

And looking at that it appears I broke kernel-misc by moving things to /usr/src (didn't notice that in my testing).

How would you propose we redefine the above in order to use

"kernel-dev"

Quoted 40 lines
Quoted 14 lines
Quoted 7 lines
Quoted 6 lines
Quoted 1 line

for the new package?

hmmm interesting so I guess, linux-dev being already taken, you might call it linux-kernel-headers as you were doing. So we have linux-libc-headers and linux-kernel-headers to differentiate between raw and sanitized headers

Quoted 5 lines

What would break if the new files were simply added to the existing kernel-dev
package ? I'm already putting System.map and others on targets in different environments for dev/debug, so would adding enough to build kernel modules on the target be a big problem ?

Quoted 6 lines

I was considering this last night as well.

Quoted 2 lines

But I probably just don't understand *what* the existing -dev package is used for, and my comment makes no sense :)

And I landed here as well.

:)

Quoted 3 lines

Should we attempt this approach and only break them apart if somebody screams?

In the absence of definitely proof that we are missing something, I'm ok with suggesting that we have a single -dev package.

Quoted 10 lines
Quoted 3 lines

Outside of that, I also like linux-kernel-headers as the package name.

Would you prefer this even if we merge it with the existing kernel-dev? I think my order of preference would be:

1) Merge with kernel-dev and leave the name as kernel-dev for consistency

Quoted 9 lines
Quoted 1 line

2) New package called linux-kernel-headers

Is there a 3rd option of a virtual package called linux-kernel-headers that maps to -dev ? I have no idea if that is even possible or desirable, but I thought I'd mention it.

I like #1, since we really are talking about development vs just some headers lying around :)

I think packaging more into -dev is OK upgrade wise so let's use kernel-dev and.put it in usr/src/kernel

Quoted 25 lines

Cheers,

Bruce

Quoted 19 lines

--
Darren

Quoted 14 lines

Cheers,

Bruce

Quoted 8 lines
Quoted 8 lines

--
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel

#16 lore raw

Re: [PATCH 3/4] kernel: Add kernel-headers package for target module build

Quoted 2 lines · Khem Raj

I think packaging more into -dev is OK upgrade wise so let's use kernel-dev and.put it in usr/src/kernel

OK. I'm working on building and testing now. I'm thinking kernel-misc probably needs to go away as it now conflicts with kernel-dev. I'm not sure what the comment about needing it for staging is about.

Signature · 3 lines
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel