summaryrefslogtreecommitdiffstats
path: root/meta/lib
diff options
context:
space:
mode:
authorBruce Ashfield <bruce.ashfield@windriver.com>2018-08-18 22:50:44 -0400
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-08-19 16:35:22 +0100
commit9af0f1a46bbb6ad9ee8b35957251f4aa826b023f (patch)
treec90fd86b7128672ebc58966bf867af3bef3d00d8 /meta/lib
parent47a73c522817ba352ac4ddae660be8dc47486460 (diff)
downloadpoky-9af0f1a46bbb6ad9ee8b35957251f4aa826b023f.tar.gz
kernel-devsrc: restructure for out of tree (and on target) module builds
The existing kernel-devsrc package starts with a full copy of the kernel source and then starts to strip out elements that are not required. This results in extra time (I/O) and extra space being taken up in the final package. The main purpose of the kernel-devsrc package has been to build modules against the running kernel, not to include a full copy of the source code for re-building the kernel. The end result was a 600M kernel-devsrc package. This restructuring of the package uses an approach similar to other distros, where the kernel-devsrc package is for building against the running kernel and uses a curated set of copied infrastructure, versus a mass copy of the entire kernel. The differences in this approach versus other is largely due to the architecture support and the split build/source directory of the kernel. The result is a kernel-devsrc package of about 10M, which is capable of running "make scripts" and compiling kernel modules against the running kernel. Along with the changes to the copying of the infrascture, we also have the following changes: - a better/more explicit listing of dependencies for on-target builds of "make scripts" or "make modules_prepare" - The kernel source is installed into /lib/modules/<version>/build and a symlink created from /usr/src/kernel to the new location. This aligns with the standard location for module support code - There is also a symlink from /lib/modules/<version>/source -> build to reserve a spot for a new package that is simply the kernel source. That package is not part of this update. (From OE-Core rev: 007ef1f468110b2698a27ea9a6d43fed5a0a9fc2) Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib')
-rw-r--r--meta/lib/oeqa/runtime/cases/stap.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/meta/lib/oeqa/runtime/cases/stap.py b/meta/lib/oeqa/runtime/cases/stap.py
index fc728bfc55..96e197a2d6 100644
--- a/meta/lib/oeqa/runtime/cases/stap.py
+++ b/meta/lib/oeqa/runtime/cases/stap.py
@@ -25,7 +25,7 @@ class StapTest(OERuntimeTestCase):
25 def test_stap(self): 25 def test_stap(self):
26 cmds = [ 26 cmds = [
27 'cd /usr/src/kernel && make scripts prepare', 27 'cd /usr/src/kernel && make scripts prepare',
28 'cd /lib/modules/`uname -r` && (if [ ! -L build ]; then ln -s /usr/src/kernel build; fi)', 28 'cd /lib/modules/`uname -r` && (if [ ! -e build ]; then ln -s /usr/src/kernel build; fi)',
29 'stap --disable-cache -DSTP_NO_VERREL_CHECK /tmp/hello.stp' 29 'stap --disable-cache -DSTP_NO_VERREL_CHECK /tmp/hello.stp'
30 ] 30 ]
31 for cmd in cmds: 31 for cmd in cmds: