summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Larson <clarson@kergoth.com>2004-12-03 06:32:11 +0000
committerChris Larson <clarson@kergoth.com>2004-12-03 06:32:11 +0000
commitaff3227b5e4a3dee9bceb120aac11f4bf3ac6409 (patch)
tree700ec0e9ccbd59f3808bb988d4e18535bda1c91c
parentc56846698432184fd75441f032dd0c799be85495 (diff)
downloadbitbake-contrib-aff3227b5e4a3dee9bceb120aac11f4bf3ac6409.tar.gz
Fix oemake 'world' logic bug.
-rw-r--r--bin/oemake9
1 files changed, 8 insertions, 1 deletions
diff --git a/bin/oemake b/bin/oemake
index fea006f74..c44d5cd96 100644
--- a/bin/oemake
+++ b/bin/oemake
@@ -491,13 +491,20 @@ def build_depgraph():
for f in make.pkgdata.keys():
d = make.pkgdata[f]
if oe.data.getVar('BROKEN', d, 1) or oe.data.getVar('EXCLUDE_FROM_WORLD', d, 1):
+ oe.debug(2, "OEMAKE skipping %s due to BROKEN/EXCLUDE_FROM_WORLD" % f)
continue
terminal = True
pn = oe.data.getVar('PN', d, 1)
for p in pn_provides[pn]:
- if p in all_depends or p.startswith('virtual/'):
+ if p.startswith('virtual/'):
+ oe.debug(2, "OEMAKE skipping %s due to %s provider starting with virtual/" % (f, p))
terminal = False
break
+ for pf in providers[p]:
+ if oe.data.getVar('PN', make.pkgdata[pf], 1) != pn:
+ oe.debug(2, "OEMAKE skipping %s due to both us and %s providing %s" % (f, pf, p))
+ terminal = False
+ break
if terminal:
__world_target.add(pn)