f.write('%s: %s\n' % (var, encode(val)))
return
- def get_directory_size(dir):
- if os.listdir(dir):
- with os.popen('du -sk %s' % dir) as f:
- size = int(f.readlines()[0].split('\t')[0])
- else:
- size = 0
- return size
-
def write_extra_pkgs(variants, pn, packages, pkgdatadir):
for variant in variants:
with open("%s/%s-%s" % (pkgdatadir, variant, pn), 'w') as fd:
pkgdestpkg = os.path.join(pkgdest, pkg)
files = {}
+ total_size = 0
for f in pkgfiles[pkg]:
relpth = os.path.relpath(f, pkgdestpkg)
fstat = os.lstat(f)
+ total_size += fstat.st_size
files[os.sep + relpth] = fstat.st_size
d.setVar('FILES_INFO', json.dumps(files))
for dfile in (d.getVar('FILERDEPENDSFLIST_' + pkg, True) or "").split():
write_if_exists(sf, pkg, 'FILERDEPENDS_' + dfile)
- sf.write('%s_%s: %s\n' % ('PKGSIZE', pkg, get_directory_size(pkgdest + "/%s" % pkg)))
+ sf.write('%s_%s: %d\n' % ('PKGSIZE', pkg, total_size))
sf.close()
# Symlinks needed for reverse lookups (from the final package name)
if qvar == "PKGSIZE":
# append packagename
qvar = "%s_%s" % (var, mappedpkg)
- print(readvar(revlink, qvar))
+ # PKGSIZE is now in bytes, but we we want it in KB
+ pkgsize = (int(readvar(revlink, qvar)) + 1024 // 2) // 1024
+ print("%d" % pkgsize)
+ else:
+ print(readvar(revlink, qvar))
def lookup_pkg(args, usage, debug=False):
if len(args) < 2: