diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-02-08 10:35:53 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-02-08 12:05:36 +0000 |
commit | 65712be7369c20d7577f563167c49dd4fd466da6 (patch) | |
tree | 9a43c0b9cb26b54cf515e372f1d8492ac08ff20c /meta/classes/kernel-yocto.bbclass | |
parent | bd2fd821a3bf155da30ac2378760bf27103d1457 (diff) | |
download | poky-65712be7369c20d7577f563167c49dd4fd466da6.tar.gz |
kernel-yocto: Ensure python code has awlays run before SRCPV is expanded
The python code in this class file needs to run before SRCPV is expanded
and calls into the fetcher are made. To so this we create a python function
and prepend a call to it before SRCPV's get_srcrev() call.
Ugly, ugly, ugly but the ordering is guaranteed.
If this doesn't happen, the fetcher can end up in two different states and
there may be caching implications of this.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/kernel-yocto.bbclass')
-rw-r--r-- | meta/classes/kernel-yocto.bbclass | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass index 2e01948eb1..4c52bca43a 100644 --- a/meta/classes/kernel-yocto.bbclass +++ b/meta/classes/kernel-yocto.bbclass | |||
@@ -9,7 +9,13 @@ S = "${WORKDIR}/linux" | |||
9 | # branch that is always present 'standard'. This sets the KBRANCH variable | 9 | # branch that is always present 'standard'. This sets the KBRANCH variable |
10 | # and is used in the SRC_URI. The machine is then set back to ${MACHINE}, | 10 | # and is used in the SRC_URI. The machine is then set back to ${MACHINE}, |
11 | # since futher processing will use that to create local branches | 11 | # since futher processing will use that to create local branches |
12 | python __anonymous () { | 12 | |
13 | SRCPV_prepend = "${@yoctokernel_variables_fixup(d)}" | ||
14 | |||
15 | def yoctokernel_variables_fixup(d): | ||
16 | if d.getVar("PVFIXUPDONE", False) is "done": | ||
17 | return "" | ||
18 | |||
13 | import bb, re, string | 19 | import bb, re, string |
14 | 20 | ||
15 | version = bb.data.getVar("LINUX_VERSION", d, 1) | 21 | version = bb.data.getVar("LINUX_VERSION", d, 1) |
@@ -47,7 +53,8 @@ python __anonymous () { | |||
47 | bb.data.setVar('KMACHINE_' + bb.data.expand("${MACHINE}",d), bb.data.expand("${MACHINE}",d), d) | 53 | bb.data.setVar('KMACHINE_' + bb.data.expand("${MACHINE}",d), bb.data.expand("${MACHINE}",d), d) |
48 | bb.data.setVar("KBRANCH", "yocto/standard/base", d) | 54 | bb.data.setVar("KBRANCH", "yocto/standard/base", d) |
49 | bb.data.setVar("BOOTSTRAP", "yocto/standard/" + bb.data.expand("${MACHINE}",d), d) | 55 | bb.data.setVar("BOOTSTRAP", "yocto/standard/" + bb.data.expand("${MACHINE}",d), d) |
50 | } | 56 | d.setVar("PVFIXUPDONE", "done") |
57 | return "" | ||
51 | 58 | ||
52 | do_patch() { | 59 | do_patch() { |
53 | cd ${S} | 60 | cd ${S} |