[oe-commits] Joshua Lock : base.bbclass: check all entries of FILESPATH for MACHINE overrides
git at git.openembedded.org
git at git.openembedded.org
Wed Feb 22 22:13:09 UTC 2012
Module: openembedded-core.git
Branch: master
Commit: f2b572072c754048aaafdc4c42b71af87d61d9e7
URL: http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=f2b572072c754048aaafdc4c42b71af87d61d9e7
Author: Joshua Lock <josh at linux.intel.com>
Date: Tue Feb 21 17:46:42 2012 -0800
base.bbclass: check all entries of FILESPATH for MACHINE overrides
The logic which looks for MACHINE overrides in SRC_URI and updates
PACKAGE_ARCH was checking only certain subdirectories of the recipes parent
which, amongst other issues, doesn't account for SRC_URI overrides in layers.
This patch changes the logic such that all FILESPATH entries are checked
for children named for MACHINE.
Signed-off-by: Joshua Lock <josh at linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
meta/classes/base.bbclass | 14 ++++++++------
1 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index a26ac94..e80e874 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -453,13 +453,15 @@ python () {
# We always try to scan SRC_URI for urls with machine overrides
# unless the package sets SRC_URI_OVERRIDES_PACKAGE_ARCH=0
#
- override = d.getVar('SRC_URI_OVERRIDES_PACKAGE_ARCH', 1)
+ override = d.getVar('SRC_URI_OVERRIDES_PACKAGE_ARCH', True)
if override != '0':
paths = []
- for p in [ "${PF}", "${P}", "${PN}", "files", "" ]:
- path = bb.data.expand(os.path.join("${FILE_DIRNAME}", p, "${MACHINE}"), d)
- if os.path.isdir(path):
- paths.append(path)
+ fpaths = (d.getVar('FILESPATH', True) or '').split(':')
+ machine = d.getVar('MACHINE', True)
+ for p in fpaths:
+ if os.path.basename(p) == machine and os.path.isdir(p):
+ paths.append(p)
+
if len(paths) != 0:
for s in srcuri.split():
if not s.startswith("file://"):
@@ -468,7 +470,7 @@ python () {
local = fetcher.localpath(s)
for mp in paths:
if local.startswith(mp):
- #bb.note("overriding PACKAGE_ARCH from %s to %s" % (pkg_arch, mach_arch))
+ #bb.note("overriding PACKAGE_ARCH from %s to %s for %s" % (pkg_arch, mach_arch, pn))
d.setVar('PACKAGE_ARCH', "${MACHINE_ARCH}")
return
More information about the Openembedded-commits
mailing list