summaryrefslogtreecommitdiff
path: root/meta/classes/utils.bbclass
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2013-10-07 11:20:07 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-10-11 23:18:15 +0100
commit92cbf7eeea553bfa24c7081473fa8bc4ebc1f552 (patch)
tree0872763d1dd20f3fe00cb861b38d5076b518556f /meta/classes/utils.bbclass
parent04c73333e4b539de96f096ca2954b2313175edc4 (diff)
downloadopenembedded-core-92cbf7eeea553bfa24c7081473fa8bc4ebc1f552.tar.gz
openembedded-core-92cbf7eeea553bfa24c7081473fa8bc4ebc1f552.tar.bz2
openembedded-core-92cbf7eeea553bfa24c7081473fa8bc4ebc1f552.zip
utils.bbclass: Fix override ordering for FILESPATH
Currently the overrides are being applied backwards. This means something which is platform specific is overriding something which is machine specific which is clearly not intended. This patch corrects the ordering to match the normal expected behaviour of OVERRIDES. Secondly, all overrides are being searched for each path in turn. What should really happen is that we should look for the highest priority override (e.g. distro or machine) in each layer, then move on to platform/tune (e.g. armv7a) and then to arch (e.g. arm). This patch therefore also reverses the for loops to achieve this behaviour and give the result the user would expect. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/utils.bbclass')
-rw-r--r--meta/classes/utils.bbclass9
1 files changed, 5 insertions, 4 deletions
diff --git a/meta/classes/utils.bbclass b/meta/classes/utils.bbclass
index d1f6563a0a..0a533afb1f 100644
--- a/meta/classes/utils.bbclass
+++ b/meta/classes/utils.bbclass
@@ -307,10 +307,11 @@ def base_set_filespath(path, d):
if extrapaths != "":
path = extrapaths.split(":") + path
# The ":" ensures we have an 'empty' override
- overrides = ((d.getVar("FILESOVERRIDES", True) or "") + ":").split(":")
- for p in path:
- if p != "":
- for o in overrides:
+ overrides = (":" + (d.getVar("FILESOVERRIDES", True) or "")).split(":")
+ overrides.reverse()
+ for o in overrides:
+ for p in path:
+ if p != "":
filespath.append(os.path.join(p, o))
return ":".join(filespath)