aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Stanacar <sstncr@gmail.com>2018-01-11 16:07:21 +0000
committerArmin Kuster <akuster808@gmail.com>2018-02-23 07:49:52 -0800
commite2561de16c19e862b825d5a2feb3c6781b0869c5 (patch)
tree9db5dc69cc6e95f4bb290c0b4b5aaad5a00a6f71
parent46bdb29b93b05b2805369dd67b34d6860fce15bd (diff)
downloadopenembedded-core-contrib-e2561de16c19e862b825d5a2feb3c6781b0869c5.tar.gz
kernel.bbclass: Fix symlink creation when using externalsrc
do_unpack is by default in SRCTREECOVEREDTASKS so this append can't run, since this tasks gets removed by externalsrc when it's enabled. However this was hidden because externalsrc does run do_fetch and do_unpack if there are type=kmeta or file:// entries in the SRC_URI value of the kernel recipe. (e.g linux-yocto). Make this a separate task so that it actually gets run for kernel recipes with no file:// or type=kmeta in SRC_URI. Signed-off-by: Stefan Stanacar <sstncr@gmail.com> Signed-off-by: Armin Kuster <akuster808@gmail.com>
-rw-r--r--meta/classes/kernel.bbclass4
1 files changed, 3 insertions, 1 deletions
diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
index f8318b83a1..3eaae0398b 100644
--- a/meta/classes/kernel.bbclass
+++ b/meta/classes/kernel.bbclass
@@ -102,7 +102,7 @@ inherit ${KERNEL_CLASSES}
# the symlink.
do_unpack[cleandirs] += " ${S} ${STAGING_KERNEL_DIR} ${B} ${STAGING_KERNEL_BUILDDIR}"
do_clean[cleandirs] += " ${S} ${STAGING_KERNEL_DIR} ${B} ${STAGING_KERNEL_BUILDDIR}"
-base_do_unpack_append () {
+python do_symlink_staging_dir () {
s = d.getVar("S", True)
if s[-1] == '/':
# drop trailing slash, so that os.symlink(kernsrc, s) doesn't use s as directory name and fail
@@ -119,6 +119,8 @@ base_do_unpack_append () {
shutil.move(s, kernsrc)
os.symlink(kernsrc, s)
}
+addtask do_symlink_staging_dir after do_unpack before do_patch do_configure
+
inherit kernel-arch deploy