[OE-core] [PATCH] kern-tools: re-enable scc merge command
Bruce Ashfield
bruce.ashfield at windriver.com
Wed Feb 8 04:20:26 UTC 2017
The ability to merge two branches directly from a .scc file was
dropped during the streamlining of the tools.
As was pointed out by David Vincent <freesilicon at gmail.com>, there is
once again a valid use case for this functionality, so we restore the
capability.
Signed-off-by: Bruce Ashfield <bruce.ashfield at windriver.com>
---
Armin,
This restores old functionality that was dropped due to kern-tools streamlining.
It was reported as missing on morty, and this doesn't impact other functionality
.. so it is worth restoring this, and of course, this also carries forward into
master.
Bruce
meta/classes/kernel-yocto.bbclass | 16 +++++++++++++++-
meta/recipes-kernel/kern-tools/kern-tools-native_git.bb | 3 ++-
2 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass
index a60327a..eb35dce 100644
--- a/meta/classes/kernel-yocto.bbclass
+++ b/meta/classes/kernel-yocto.bbclass
@@ -148,7 +148,7 @@ do_kernel_metadata() {
# run1: pull all the configuration fragments, no matter where they come from
elements="`echo -n ${bsp_definition} ${sccs} ${patches} ${KERNEL_FEATURES}`"
if [ -n "${elements}" ]; then
- scc --force -o ${S}/${meta_dir}:cfg,meta ${includes} ${bsp_definition} ${sccs} ${patches} ${KERNEL_FEATURES}
+ scc --force -o ${S}/${meta_dir}:cfg,merge,meta ${includes} ${bsp_definition} ${sccs} ${patches} ${KERNEL_FEATURES}
if [ $? -ne 0 ]; then
bbfatal_log "Could not generate configuration queue for ${KMACHINE}."
fi
@@ -165,6 +165,7 @@ do_kernel_metadata() {
}
do_patch() {
+ set +e
cd ${S}
check_git_config
@@ -177,6 +178,19 @@ do_patch() {
bbfatal_log "Patch failures can be resolved in the linux source directory ${S})"
fi
fi
+
+ if [ -f "${meta_dir}/merge.queue" ]; then
+ # we need to merge all these branches
+ for b in $(cat ${meta_dir}/merge.queue); do
+ git show-ref --verify --quiet refs/heads/${b}
+ if [ $? -eq 0 ]; then
+ bbnote "Merging branch ${b}"
+ git merge -q --no-ff -m "Merge branch ${b}" ${b}
+ else
+ bbfatal "branch ${b} does not exist, cannot merge"
+ fi
+ done
+ fi
}
do_kernel_checkout() {
diff --git a/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb b/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb
index 8af0155..aa27ec8 100644
--- a/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb
+++ b/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb
@@ -4,7 +4,8 @@ LIC_FILES_CHKSUM = "file://git/tools/kgit;beginline=5;endline=9;md5=a6c2fa8aef1b
DEPENDS = "git-native"
-SRCREV = "85564e69555b713c2759d58ec5ade54424d051d8"
+SRCREV = "c14440d4e7ae0160c260ed65c3e123be5dc97ae8"
+
PR = "r12"
PV = "0.2+git${SRCPV}"
--
2.7.4
More information about the Openembedded-core
mailing list