base.bbclass: fix PACKAGECONFIG handling code

PACKAGECONFIG flag code only handles that when it has 3 or 4 items in flag,
it may have a stale data if some flags doesn't need DEPENDS and RDEPENDS.

(From OE-Core rev: 884cab0428cff2ffd070b6f36b688ca9851fbe43)

Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Yao Zhao 2012-08-02 12:06:36 -04:00 committed by Richard Purdie
parent 61ed74a725
commit 771f89498c

View File

@ -382,20 +382,19 @@ python () {
if flag == "defaultval":
continue
items = flagval.split(",")
if len(items) == 3:
enable, disable, depend = items
rdepend = ""
elif len(items) == 4:
enable, disable, depend, rdepend = items
num = len(items)
if num > 4:
bb.error("Only enable,disable,depend,rdepend can be specified!")
if flag in pkgconfig:
if depend:
extradeps.append(depend)
if rdepend:
extrardeps.append(rdepend)
if enable:
extraconf.append(enable)
elif disable:
extraconf.append(disable)
if num >= 3 and items[2]:
extradeps.append(items[2])
if num >= 4 and items[3]:
extrardeps.append(items[3])
if num >= 1 and items[0]:
extraconf.append(items[0])
elif num >= 2 and items[1]:
extraconf.append(items[1])
appendVar('DEPENDS', extradeps)
appendVar('RDEPENDS_${PN}', extrardeps)
appendVar('EXTRA_OECONF', extraconf)