[oe-commits] [openembedded-core] 02/13: kernel-yocto: allow kernel-meta repositories to be patched
git at git.openembedded.org
git at git.openembedded.org
Wed Mar 6 16:34:40 UTC 2019
This is an automated email from the git hooks/post-receive script.
rpurdie pushed a commit to branch master-next
in repository openembedded-core.
commit 92f565c3cc7166b9cd9648b9706aa02a09d82fc2
Author: Bruce Ashfield <bruce.ashfield at gmail.com>
AuthorDate: Fri Mar 1 00:24:37 2019 -0500
kernel-yocto: allow kernel-meta repositories to be patched
For testing purposes, it is often easier to patch a fragment
in a kernel-meta repository versus needing to make a copy or
modify the source repository.
We can allow this sort of patching when a patchdir of kernel-meta
is passed (to indicate the nested kernel-meta repository).
Also note that we must patch the meta data before they are
processed/gathered, since migrated copies to the kernel source
directory will be used later.
Signed-off-by: Bruce Ashfield <bruce.ashfield at gmail.com>
---
meta/classes/kernel-yocto.bbclass | 29 +++++++++++++++++++++++++----
1 file changed, 25 insertions(+), 4 deletions(-)
diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass
index 2f556ca..bd7a957 100644
--- a/meta/classes/kernel-yocto.bbclass
+++ b/meta/classes/kernel-yocto.bbclass
@@ -5,12 +5,21 @@ PATCH_GIT_USER_NAME ?= "OpenEmbedded"
# returns local (absolute) path names for all valid patches in the
# src_uri
-def find_patches(d):
+def find_patches(d,subdir):
patches = src_patches(d)
patch_list=[]
for p in patches:
- _, _, local, _, _, _ = bb.fetch.decodeurl(p)
- patch_list.append(local)
+ _, _, local, _, _, parm = bb.fetch.decodeurl(p)
+ # if patchdir has been passed, we won't be able to apply it so skip
+ # the patch for now, and special processing happens later
+ patchdir = ''
+ if "patchdir" in parm:
+ patchdir = parm["patchdir"]
+ if patchdir:
+ if subdir == patchdir:
+ patch_list.append(local)
+ else:
+ patch_list.append(local)
return patch_list
@@ -119,8 +128,20 @@ do_kernel_metadata() {
fi
fi
+ # was anyone trying to patch the kernel meta data ?, we need to do
+ # this here, since the scc commands migrate the .cfg fragments to the
+ # kernel source tree, where they'll be used later.
+ check_git_config
+ patches="${@" ".join(find_patches(d,'kernel-meta'))}"
+ for p in $patches; do
+ (
+ cd ${WORKDIR}/kernel-meta
+ git am -s $p
+ )
+ done
+
sccs_from_src_uri="${@" ".join(find_sccs(d))}"
- patches="${@" ".join(find_patches(d))}"
+ patches="${@" ".join(find_patches(d,''))}"
feat_dirs="${@" ".join(find_kernel_feature_dirs(d))}"
# a quick check to make sure we don't have duplicate defconfigs
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the Openembedded-commits
mailing list