[oe-commits] Bruce Ashfield : kernel-yocto: always checkout machine branch when existing validate_branches

git at git.openembedded.org git at git.openembedded.org
Fri Feb 28 17:56:33 UTC 2014


Module: openembedded-core.git
Branch: master-next
Commit: 6eb63237c3bf48377f75e48e637d76108c8666df
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=6eb63237c3bf48377f75e48e637d76108c8666df

Author: Bruce Ashfield <bruce.ashfield at windriver.com>
Date:   Fri Feb 21 00:01:00 2014 -0500

kernel-yocto: always checkout machine branch when existing validate_branches

The validate_branches routine is responsible for ensuring that the specified
SRCREV exists, and that the tree has been prepared for eventual patching
starting directly from that SRCREV.

On exit, the routine checks out the specified machine branch and the
preparation is complete .. except if a KMETA branch isn't used, we exit
early since the branch can't be validated.

To make the exit condition consistent for all cases, we can move the
KMETA validation inside a conditional and allow the same exit path for
both cases.

Signed-off-by: Bruce Ashfield <bruce.ashfield at windriver.com>
Signed-off-by: Saul Wold <sgw at linux.intel.com>

---

 meta/classes/kernel-yocto.bbclass | 37 ++++++++++++++++---------------------
 1 file changed, 16 insertions(+), 21 deletions(-)

diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass
index fab5d4c..fb8e04e 100644
--- a/meta/classes/kernel-yocto.bbclass
+++ b/meta/classes/kernel-yocto.bbclass
@@ -358,31 +358,26 @@ do_validate_branches() {
 		fi
 	done
 
-	## KMETA branch validation
+	## KMETA branch validation.
+	## We do validation if the meta branch exists, and AUTOREV hasn't been set
  	meta_head=`git show-ref -s --heads ${KMETA}`
  	target_meta_head="${SRCREV_meta}"
 	git show-ref --quiet --verify -- "refs/heads/${KMETA}"
-	if [ $? -eq 1 ]; then
-		return
-	fi
-
-	if [ "${target_meta_head}" = "AUTOINC" ]; then
-		return
-	fi
-
-	if [ "$meta_head" != "$target_meta_head" ]; then
-		ref=`git show ${target_meta_head} 2>&1 | head -n1 || true`
-		if [ "$ref" = "fatal: bad object ${target_meta_head}" ]; then
-			echo "ERROR ${target_meta_head} is not a valid commit ID"
-			echo "The kernel source tree may be out of sync"
-			exit 1
-		else
-			echo "[INFO] Setting branch ${KMETA} to ${target_meta_head}"
-			git branch -m ${KMETA} ${KMETA}-orig
-			git checkout -q -b ${KMETA} ${target_meta_head}
-			if [ $? -ne 0 ];then
-				echo "ERROR: could not checkout ${KMETA} branch from known hash ${target_meta_head}"
+	if [ $? -eq 0 ] && [ "${target_meta_head}" != "AUTOINC" ]; then
+		if [ "$meta_head" != "$target_meta_head" ]; then
+			ref=`git show ${target_meta_head} 2>&1 | head -n1 || true`
+			if [ "$ref" = "fatal: bad object ${target_meta_head}" ]; then
+				echo "ERROR ${target_meta_head} is not a valid commit ID"
+				echo "The kernel source tree may be out of sync"
 				exit 1
+			else
+				echo "[INFO] Setting branch ${KMETA} to ${target_meta_head}"
+				git branch -m ${KMETA} ${KMETA}-orig
+				git checkout -q -b ${KMETA} ${target_meta_head}
+				if [ $? -ne 0 ];then
+					echo "ERROR: could not checkout ${KMETA} branch from known hash ${target_meta_head}"
+					exit 1
+				fi
 			fi
 		fi
 	fi



More information about the Openembedded-commits mailing list