From 54d4b8e861d161fa050d918d70572c744c4a0289 Mon Sep 17 00:00:00 2001 From: Bruce Ashfield Date: Wed, 22 Dec 2010 16:29:28 -0500 Subject: yocto-kernel: fix kmachine to deal with overrides BSPs are built from a particular branch of the kernel repository which is specfied via the mapping of MACHINE to KMACHINE. Unless a global branch is being forced (like libc headers), KMACHINE is an override on a per machine basis. Because KMACHINE is typically override we must first try the most specific variant KMACHINE_ and if that is undefined look for a fallack default. This allows any combination of variables to work (and at the time the anonymous python executes) safely and get us a properly defined branch for the fetcher and build. Signed-off-by: Bruce Ashfield --- meta/classes/kernel-yocto.bbclass | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'meta') diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass index f5418782b0..7ebe5d69aa 100644 --- a/meta/classes/kernel-yocto.bbclass +++ b/meta/classes/kernel-yocto.bbclass @@ -29,10 +29,13 @@ python __anonymous () { # The branch for a build is: # yocto//${KMACHINE} or # yocto//${KMACHINE}/base - bb.data.setVar("KBRANCH", bb.data.expand("${KMACHINE}",d), d) + mach = bb.data.getVar("KMACHINE_" + bb.data.expand("${MACHINE}",d), d, 1) + if mach == None: + mach = bb.data.getVar("KMACHINE", d, 1) + + bb.data.setVar("KBRANCH", mach, d) bb.data.setVar("KMETA", "meta", d) - mach = bb.data.getVar("KMACHINE", d, 1) # drop the "/base" if it was on the KMACHINE kmachine = mach.replace('/base','') # drop everything but the last segment -- cgit v1.2.3