]> code.ossystems Code Review - openembedded-core.git/commitdiff
kernel: Use hardlinks for do_populate_sysroot for speed
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 8 Nov 2013 15:18:00 +0000 (15:18 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 12 Nov 2013 10:15:00 +0000 (10:15 +0000)
The kernel tree is large and doesn't need to be copied. Override
the default sysroot handling function to use a hardlink copying
function in python.

This commit also drops the copying of the /lib directory which
just contains the kernel modules. We never use those in the sysroot
so there is little point in carrying those around.

For linux-yocto this takes the do_populate_sysroot time 24s -> 14s.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/kernel.bbclass

index 8d4a733f54fabda0dc97124669c0e660c3f8a308..383043ed9c726e8a284e56ccb0bb531331469286 100644 (file)
@@ -308,8 +308,8 @@ kernelscripts_sstate_postinst () {
        fi
 }
 
-sysroot_stage_all_append() {
-       sysroot_stage_dir ${D}${KERNEL_SRC_PATH} ${SYSROOT_DESTDIR}${KERNEL_SRC_PATH}
+python sysroot_stage_all () {
+    oe.path.copyhardlinktree(d.expand("${D}${KERNEL_SRC_PATH}"), d.expand("${SYSROOT_DESTDIR}${KERNEL_SRC_PATH}"))
 }
 
 kernel_do_configure() {