diff options
| author | Richard Purdie <rpurdie@linux.intel.com> | 2009-11-05 20:05:45 +0000 |
|---|---|---|
| committer | Richard Purdie <rpurdie@linux.intel.com> | 2009-11-13 12:15:27 +0000 |
| commit | b26b8f4f23f638651886cd29e969cdefb591eb74 (patch) | |
| tree | 78b63ac502c5a85c88712491b7043a5d42d93c2b /meta/classes/native.bbclass | |
| parent | abe3902c2c36d93f2e3f6e2dd4b33119058b584e (diff) | |
| download | poky-b26b8f4f23f638651886cd29e969cdefb591eb74.tar.gz | |
native.bbclass: Improve DEPENDS mangling code so sub matches don't break upon substitutions
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'meta/classes/native.bbclass')
| -rw-r--r-- | meta/classes/native.bbclass | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/meta/classes/native.bbclass b/meta/classes/native.bbclass index 6bd37697d0..2bd0cf3dfe 100644 --- a/meta/classes/native.bbclass +++ b/meta/classes/native.bbclass | |||
| @@ -91,6 +91,9 @@ python __anonymous () { | |||
| 91 | pn = bb.data.getVar("PN", d, True) | 91 | pn = bb.data.getVar("PN", d, True) |
| 92 | depends = bb.data.getVar("DEPENDS", d, True) | 92 | depends = bb.data.getVar("DEPENDS", d, True) |
| 93 | deps = bb.utils.explode_deps(depends) | 93 | deps = bb.utils.explode_deps(depends) |
| 94 | depends = bb.data.getVar("DEPENDS", d, True) | ||
| 95 | deps = bb.utils.explode_deps(depends) | ||
| 96 | newdeps = [] | ||
| 94 | if "native" in (bb.data.getVar('BBCLASSEXTEND', d, True) or ""): | 97 | if "native" in (bb.data.getVar('BBCLASSEXTEND', d, True) or ""): |
| 95 | autoextend = True | 98 | autoextend = True |
| 96 | else: | 99 | else: |
| @@ -98,16 +101,19 @@ python __anonymous () { | |||
| 98 | for dep in deps: | 101 | for dep in deps: |
| 99 | if dep.endswith("-cross"): | 102 | if dep.endswith("-cross"): |
| 100 | if autoextend: | 103 | if autoextend: |
| 101 | depends = depends.replace(dep, dep.replace("-cross", "-native")) | 104 | newdeps.append(dep.replace("-cross", "-native")) |
| 102 | else: | 105 | else: |
| 103 | bb.note("%s has depends %s which ends in -cross?" % (pn, dep)) | 106 | bb.note("%s has depends %s which ends in -cross?" % (pn, dep)) |
| 104 | 107 | newdeps.append(dep) | |
| 105 | if not dep.endswith("-native"): | 108 | elif not dep.endswith("-native"): |
| 106 | if autoextend: | 109 | if autoextend: |
| 107 | depends = depends.replace(dep, dep + "-native") | 110 | newdeps.append(dep + "-native") |
| 108 | else: | 111 | else: |
| 109 | bb.note("%s has depends %s which doesn't end in -native?" % (pn, dep)) | 112 | bb.note("%s has depends %s which doesn't end in -native?" % (pn, dep)) |
| 110 | bb.data.setVar("DEPENDS", depends, d) | 113 | newdeps.append(dep) |
| 114 | else: | ||
| 115 | newdeps.append(dep) | ||
| 116 | bb.data.setVar("DEPENDS", " ".join(newdeps), d) | ||
| 111 | provides = bb.data.getVar("PROVIDES", d, True) | 117 | provides = bb.data.getVar("PROVIDES", d, True) |
| 112 | for prov in provides.split(): | 118 | for prov in provides.split(): |
| 113 | if prov.find(pn) != -1: | 119 | if prov.find(pn) != -1: |
