utils.bbclass: make FILESEXTRAPATHS colon delimited

Fixes [YOCTO 1102]

Path variables are typically : delimited. White space is allowed in paths, so
is not a good choice for separating paths. Currently utils.bbclass performs the
following:

    extrapaths = (bb.data.getVar("FILESEXTRAPATHS", d, True) or "").split()

This splits FILESEXTRAPATHS on whitespace. It later splits overrides on : and
reassembles them all together as : delimited.

There is only one user of FILESEXTRAPATHS in oe-core (qt4-tools-native, which
uses : anyway) and none in oe.

Change the split() in utils.bbclass to split on : instead of whitespace. When
splitting on a defined string (":") we must be careful to handle the empty
string case which returns [''] instead of [].

Tested building qt4-tools-native and core-image-minimal for surgarbay from
meta-intel with a couple extra layers with FILESEXTRAPATHS modifications added.

(From OE-Core rev: a6a892f520d22ef8020c98528d38ee08f6cda034)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Cc: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Darren Hart 2011-05-25 16:05:17 -07:00 committed by Richard Purdie
parent 3a454781df
commit e94e86c2d7
1 changed files with 4 additions and 2 deletions

View File

@ -331,8 +331,10 @@ def explode_deps(s):
def base_set_filespath(path, d):
filespath = []
extrapaths = (bb.data.getVar("FILESEXTRAPATHS", d, True) or "").split()
path = extrapaths + path
extrapaths = (bb.data.getVar("FILESEXTRAPATHS", d, True) or "")
# Don't prepend empty strings to the path list
if extrapaths != "":
path = extrapaths.split(":") + path
# The ":" ensures we have an 'empty' override
overrides = (bb.data.getVar("OVERRIDES", d, 1) or "") + ":"
for p in path: