]> code.ossystems Code Review - openembedded-core.git/commitdiff
utils.bbclass: make FILESEXTRAPATHS colon delimited
authorDarren Hart <dvhart@linux.intel.com>
Wed, 25 May 2011 23:05:17 +0000 (16:05 -0700)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 27 May 2011 15:44:47 +0000 (16:44 +0100)
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.

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Cc: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/utils.bbclass

index e103351e343668d3d2689afa81d46800c919971f..9930a242699f93d888f350638065f2a409507b08 100644 (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: