diff options
Diffstat (limited to 'meta/classes/sdk.bbclass')
-rw-r--r-- | meta/classes/sdk.bbclass | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/meta/classes/sdk.bbclass b/meta/classes/sdk.bbclass index 62d4b2b6f9..dd62e2a028 100644 --- a/meta/classes/sdk.bbclass +++ b/meta/classes/sdk.bbclass | |||
@@ -71,3 +71,34 @@ python () { | |||
71 | bb.data.setVar('PACKAGE_ARCHS', " ".join(sdkarchs), d) | 71 | bb.data.setVar('PACKAGE_ARCHS', " ".join(sdkarchs), d) |
72 | } | 72 | } |
73 | 73 | ||
74 | python __anonymous () { | ||
75 | pn = bb.data.getVar("PN", d, True) | ||
76 | depends = bb.data.getVar("DEPENDS", d, True) | ||
77 | deps = bb.utils.explode_deps(depends) | ||
78 | if "sdk" in (bb.data.getVar('BBCLASSEXTEND', d, True) or ""): | ||
79 | autoextend = True | ||
80 | else: | ||
81 | autoextend = False | ||
82 | for dep in deps: | ||
83 | if dep.endswith("-native") or dep.endswith("-cross") or dep.startswith("virtual/"): | ||
84 | continue | ||
85 | if not dep.endswith("-sdk"): | ||
86 | if autoextend: | ||
87 | depends = depends.replace(dep, dep + "-sdk") | ||
88 | else: | ||
89 | bb.note("%s has depends %s which doesn't end in -sdk?" % (pn, dep)) | ||
90 | bb.data.setVar("DEPENDS", depends, d) | ||
91 | provides = bb.data.getVar("PROVIDES", d, True) | ||
92 | for prov in provides.split(): | ||
93 | if prov.find(pn) != -1: | ||
94 | continue | ||
95 | if not prov.endswith("-sdk"): | ||
96 | if autoextend: | ||
97 | provides = provides.replace(prov, prov + "-sdk") | ||
98 | #else: | ||
99 | # bb.note("%s has rouge PROVIDES of %s which doesn't end in -sdk?" % (pn, prov)) | ||
100 | bb.data.setVar("PROVIDES", provides, d) | ||
101 | |||
102 | } | ||
103 | |||
104 | |||