diff options
-rw-r--r-- | meta/classes/packageinfo.bbclass | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/meta/classes/packageinfo.bbclass b/meta/classes/packageinfo.bbclass index bd7b249bb4..5e6f5901e0 100644 --- a/meta/classes/packageinfo.bbclass +++ b/meta/classes/packageinfo.bbclass @@ -8,6 +8,25 @@ python packageinfo_handler () { package_archs = e.data.getVar('PACKAGE_ARCHS', True) packaging = e.data.getVar('PACKAGE_CLASSES', True).split()[0].split('_')[1] deploy_dir = e.data.getVar('DEPLOY_DIR', True) + '/' + packaging + dirs = os.listdir(tmpdir + '/work/') + pkgsplit_dir = tmpdir + '/work/' + items = {} + passing = '' + for directories in dirs: + temp_dirs = os.listdir(pkgsplit_dir + directories) + for temps1 in temp_dirs: + if os.path.exists(pkgsplit_dir + directories + '/' + temps1 + '/' + os.listdir(pkgsplit_dir + directories + '/' + temps1)[0] + '/packages-split'): + subs = pkgsplit_dir + directories + '/' + temps1 + '/' + os.listdir(pkgsplit_dir + directories + '/' + temps1)[0] + '/packages-split' + for temps in os.listdir(subs): + items[temps] = {} + for path, dirs, files in os.walk(pkgsplit_dir + directories + '/' + temps1 + '/' + os.listdir(pkgsplit_dir + directories + '/' + temps1)[0] + '/packages-split' + '/' + temps): + file_list = [] + if os.listdir(path) != []: + items[temps][path] = [] + for f in files: + file_list.append(f) + items[temps][path].append(file_list) + for arch in package_archs.split(): pkgdata_dir = tmpdir + '/pkgdata/' + arch + target_vendor + '-' + target_os + '/runtime/' if os.path.exists(pkgdata_dir): @@ -19,6 +38,8 @@ python packageinfo_handler () { try: sdata = oe.packagedata.read_pkgdatafile(pkgdatafile) sdata['PKG'] = pkgname + if pkgname in items: + sdata['FILES_INFO'] = items[pkgname] pkginfolist.append(sdata) except Exception as e: bb.warn("Failed to read pkgdata file %s: %s: %s" % (pkgdatafile, e.__class__, str(e))) |