@@ -1564,6 +1564,8 @@ class FetchMethod(object):
if unpack:
tar_cmd = ['tar', '--extract', '--no-same-owner']
+ if 'fixperms' in urldata.parm and urldata.parm['fixperms'] == '1':
+ tar_cmd.append('--delay-directory-restore')
if 'striplevel' in urldata.parm:
striplevel = urldata.parm['striplevel']
if not striplevel.isdigit():
@@ -1659,6 +1661,9 @@ class FetchMethod(object):
bb.note("Unpacking %s to %s/" % (file, unpackdir))
_run(cmd)
+ if 'fixperms' in urldata.parm and urldata.parm['fixperms'] == '1':
+ _run(['chmod', '-R', '+X', unpackdir])
+
if iterate is True:
iterate_urldata = urldata
iterate_urldata.localpath = "%s/%s" % (rootdir, iterate_file)