summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2010-11-13 20:08:23 +0800
committerRichard Purdie <rpurdie@linux.intel.com>2010-11-13 20:08:23 +0800
commitd6e8f7d8a6a2a0f46a2a92e2f3fa6afd25a39acd (patch)
treeae50c63a5474690d7f631a06c7b11c14cd12dd0e
parent7333328c487e7b62db138e194d3516d7b751f67b (diff)
downloadopenembedded-core-d6e8f7d8a6a2a0f46a2a92e2f3fa6afd25a39acd.tar.gz
openembedded-core-d6e8f7d8a6a2a0f46a2a92e2f3fa6afd25a39acd.tar.bz2
openembedded-core-d6e8f7d8a6a2a0f46a2a92e2f3fa6afd25a39acd.zip
sstate.bbclass: Only create symlinks to different localpath urls if the fetch succeeded
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
-rw-r--r--meta/classes/sstate.bbclass5
1 files changed, 3 insertions, 2 deletions
diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
index 5581af94b1..99fc63215a 100644
--- a/meta/classes/sstate.bbclass
+++ b/meta/classes/sstate.bbclass
@@ -318,8 +318,9 @@ def pstaging_fetch(sstatepkg, d):
bb.fetch.go(localdata, [srcuri])
# Need to optimise this, if using file:// urls, the fetcher just changes the local path
# For now work around by symlinking
- if bb.data.expand(bb.fetch.localpath(srcuri, localdata), localdata) != sstatepkg:
- os.symlink(bb.data.expand(bb.fetch.localpath(srcuri, localdata), localdata), sstatepkg)
+ localpath = bb.data.expand(bb.fetch.localpath(srcuri, localdata), localdata)
+ if localpath != sstatepkg and os.path.exists(localpath):
+ os.symlink(localpath, sstatepkg)
except:
pass