oe-pkgdata-util: avoid returning skipped packages

The skipped packages may be pulled in by another package, for example,
when libc6-dbg is already installed and should be skipped, but it would
be pulled in by libsegfault, this patch fixes the issue.

(From OE-Core rev: 5040481f33b356d9acfd29a778b13544e27e7bb7)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Robert Yang 2015-09-15 19:04:10 -07:00 committed by Richard Purdie
parent dd11f5c0c4
commit c7624b4c49
1 changed files with 4 additions and 1 deletions

View File

@ -60,6 +60,7 @@ def glob(args):
skipval += "|" + args.exclude
skipregex = re.compile(skipval)
skippedpkgs = set()
mappedpkgs = set()
with open(args.pkglistfile, 'r') as f:
for line in f:
@ -73,6 +74,7 @@ def glob(args):
# Skip packages for which there is no point applying globs
if skipregex.search(pkg):
logger.debug("%s -> !!" % pkg)
skippedpkgs.add(pkg)
continue
# Skip packages that already match the globs, so if e.g. a dev package
@ -84,6 +86,7 @@ def glob(args):
already = True
break
if already:
skippedpkgs.add(pkg)
logger.debug("%s -> !" % pkg)
continue
@ -152,7 +155,7 @@ def glob(args):
logger.debug("------")
print("\n".join(mappedpkgs))
print("\n".join(mappedpkgs - skippedpkgs))
def read_value(args):
# Handle both multiple arguments and multiple values within an arg (old syntax)