summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/classes/base.bbclass11
1 files changed, 11 insertions, 0 deletions
diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index fd1308295e..af9da505cf 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -583,9 +583,20 @@ def oe_unpack_file(file, data, url = None):
583 if os.path.samefile(file, dest): 583 if os.path.samefile(file, dest):
584 return True 584 return True
585 585
586 # Change to subdir before executing command
587 save_cwd = os.getcwd();
588 parm = bb.decodeurl(url)[5]
589 if 'subdir' in parm:
590 newdir = ("%s/%s" % (os.getcwd(), parm['subdir']))
591 bb.mkdirhier(newdir)
592 os.chdir(newdir)
593
586 cmd = "PATH=\"%s\" %s" % (bb.data.getVar('PATH', data, 1), cmd) 594 cmd = "PATH=\"%s\" %s" % (bb.data.getVar('PATH', data, 1), cmd)
587 bb.note("Unpacking %s to %s/" % (file, os.getcwd())) 595 bb.note("Unpacking %s to %s/" % (file, os.getcwd()))
588 ret = os.system(cmd) 596 ret = os.system(cmd)
597
598 os.chdir(save_cwd)
599
589 return ret == 0 600 return ret == 0
590 601
591addtask unpack after do_fetch 602addtask unpack after do_fetch