diff options
author | Richard Purdie <rpurdie@linux.intel.com> | 2010-10-22 12:51:35 +0100 |
---|---|---|
committer | Richard Purdie <rpurdie@linux.intel.com> | 2010-10-22 12:51:35 +0100 |
commit | f806c499c031fe0c4da001d41bce635088a90c52 (patch) | |
tree | bcfc36ccb48533dd49ffc2dc92bd596333b88c98 /meta/classes/sstate.bbclass | |
parent | 08425b597c3df914162cb12394fe7b8533b826f9 (diff) | |
download | poky-f806c499c031fe0c4da001d41bce635088a90c52.tar.gz |
sstate: Fix broken plaindirs support
When installing a sstate package, directories tracked by plaindirs were being installed
to the incorrect location. With the current implementation this was limited to
the do_package task.
This patch ensures plaindirs tracked files are created in the correct location, fixing
the bug where these files would go missing.
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'meta/classes/sstate.bbclass')
-rw-r--r-- | meta/classes/sstate.bbclass | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass index 92c3a274f0..fb30a18b72 100644 --- a/meta/classes/sstate.bbclass +++ b/meta/classes/sstate.bbclass | |||
@@ -154,8 +154,12 @@ def sstate_installpkg(ss, d): | |||
154 | sstate_install(ss, d) | 154 | sstate_install(ss, d) |
155 | 155 | ||
156 | for plain in ss['plaindirs']: | 156 | for plain in ss['plaindirs']: |
157 | bb.mkdirhier(sstateinst + plain) | 157 | workdir = d.getVar('WORKDIR', True) |
158 | oe.path.copytree(sstateinst + plain, bb.data.getVar('WORKDIR', d, True) + plain) | 158 | src = sstateinst + "/" + plain.replace(workdir, '') |
159 | dest = plain | ||
160 | bb.mkdirhier(src) | ||
161 | bb.mkdirhier(dest) | ||
162 | oe.path.copytree(src, dest) | ||
159 | 163 | ||
160 | return True | 164 | return True |
161 | 165 | ||