package_manager.py: create index files for all backends in PACKAGE_CLASSES
The previous implementation was checking IMAGE_PKGTYPE and created the index files just for the backend used to create the image. Apparently, 'bitbake package-index' should attempt to create the index files for all backends specified in PACKAGE_CLASSES. [YOCTO #5827] (From OE-Core rev: 0521d48a1612bfc735e2c86acc9b685c1dc389ef) Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
72576e2d04
commit
16d271c14b
|
@ -1519,19 +1519,25 @@ class DpkgPM(PackageManager):
|
|||
|
||||
|
||||
def generate_index_files(d):
|
||||
img_type = d.getVar('IMAGE_PKGTYPE', True)
|
||||
classes = d.getVar('PACKAGE_CLASSES', True).replace("package_", "").split()
|
||||
|
||||
indexer_map = {
|
||||
"rpm": (RpmIndexer, d.getVar('DEPLOY_DIR_RPM', True)),
|
||||
"ipk": (OpkgIndexer, d.getVar('DEPLOY_DIR_IPK', True)),
|
||||
"deb": (DpkgIndexer, d.getVar('DEPLOY_DIR_DEB', True))
|
||||
}
|
||||
|
||||
result = None
|
||||
|
||||
if img_type == "rpm":
|
||||
result = RpmIndexer(d, d.getVar('DEPLOY_DIR_RPM', True)).write_index()
|
||||
elif img_type == "ipk":
|
||||
result = OpkgIndexer(d, d.getVar('DEPLOY_DIR_IPK', True)).write_index()
|
||||
elif img_type == "deb":
|
||||
result = DpkgIndexer(d, d.getVar('DEPLOY_DIR_DEB', True)).write_index()
|
||||
for pkg_class in classes:
|
||||
if not pkg_class in indexer_map:
|
||||
continue
|
||||
|
||||
if result is not None:
|
||||
bb.fatal(result)
|
||||
if os.path.exists(indexer_map[pkg_class][1]):
|
||||
result = indexer_map[pkg_class][0](d, indexer_map[pkg_class][1]).write_index()
|
||||
|
||||
if result is not None:
|
||||
bb.fatal(result)
|
||||
|
||||
if __name__ == "__main__":
|
||||
"""
|
||||
|
|
Loading…
Reference in New Issue