diff options
author | Martin Jansa <martin.jansa@gmail.com> | 2011-03-24 00:05:40 +0100 |
---|---|---|
committer | Saul Wold <sgw@linux.intel.com> | 2011-05-06 17:44:21 -0700 |
commit | 6f904b3550f6bf2042794ef1351c889380b6ea93 (patch) | |
tree | 133b533d1adc2f6e6a63a1bdc61963daca576fc1 | |
parent | 5d01c9c296c821dd5e65e01c323e1c51f8a079d2 (diff) | |
download | poky-6f904b3550f6bf2042794ef1351c889380b6ea93.tar.gz |
sstate: use only unique set of SSTATETASK
* otherwise strange error like this:
ERROR: Logfile of failure stored in: /OE/shr-core/tmp/work/armv7a-oe-linux-gnueabi/libtool-cross-2.4-r1/temp/log.do_package_write_ipk.25551
Log data follows:
| ERROR: Package already staged (/OE/shr-core/tmp/sstate-control/manifest-nokia900-libtool-cross.deploy-ipk)?!
| ERROR: Function 'sstate_task_postfunc' failed
NOTE: package libtool-cross-2.4-r1: task do_package_write_ipk: Failed
ERROR: Task 11 (/OE/shr-core/openembedded-core/meta/recipes-devtools/libtool/libtool-cross_2.4.bb, do_package_write_ipk) failed with exit code '1'
is shown in this case with package_ipk twice in INHERIT
* Thanks to Richard for fix
(From OE-Core rev: f2fe5e840b8aa0558b5462ef2c7517b2f14ec2ea)
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/sstate.bbclass | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass index d57c183004..00a709ba44 100644 --- a/meta/classes/sstate.bbclass +++ b/meta/classes/sstate.bbclass | |||
@@ -40,7 +40,7 @@ python () { | |||
40 | bb.data.setVar('SSTATE_SCAN_CMD', scan_cmd, d) | 40 | bb.data.setVar('SSTATE_SCAN_CMD', scan_cmd, d) |
41 | 41 | ||
42 | namemap = [] | 42 | namemap = [] |
43 | for task in (bb.data.getVar('SSTATETASKS', d, True) or "").split(): | 43 | for task in set((bb.data.getVar('SSTATETASKS', d, True) or "").split()): |
44 | namemap.append(bb.data.getVarFlag(task, 'sstate-name', d)) | 44 | namemap.append(bb.data.getVarFlag(task, 'sstate-name', d)) |
45 | funcs = bb.data.getVarFlag(task, 'prefuncs', d) or "" | 45 | funcs = bb.data.getVarFlag(task, 'prefuncs', d) or "" |
46 | funcs = "sstate_task_prefunc " + funcs | 46 | funcs = "sstate_task_prefunc " + funcs |
@@ -195,7 +195,7 @@ def sstate_clean_cachefile(ss, d): | |||
195 | oe.path.remove(sstatepkgfile) | 195 | oe.path.remove(sstatepkgfile) |
196 | 196 | ||
197 | def sstate_clean_cachefiles(d): | 197 | def sstate_clean_cachefiles(d): |
198 | for task in (bb.data.getVar('SSTATETASKS', d, True) or "").split(): | 198 | for task in set((bb.data.getVar('SSTATETASKS', d, True) or "").split()): |
199 | ss = sstate_state_fromvars(d, task[3:]) | 199 | ss = sstate_state_fromvars(d, task[3:]) |
200 | sstate_clean_cachefile(ss, d) | 200 | sstate_clean_cachefile(ss, d) |
201 | 201 | ||