gettext.bbclass: Updates to better handle gettext alternatives

* Change gettext dependency to virtual/gettext

* Ensure INHIBIT_DEFAULT_DEPS removes gettext dependencies

* Use BASEDEPENDS to ensure dependencies are added in native/nativesdk cases

(From OE-Core rev: d19735ad5a45f969918fb73ea4845bef48d9ee24)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie
2011-05-04 00:32:48 +01:00
parent 39e469cfdb
commit 0e89459017
2 changed files with 15 additions and 15 deletions

View File

@@ -1,17 +1,17 @@
def gettext_after_parse(d):
def gettext_dependencies(d):
if d.getVar('USE_NLS', True) == 'no':
return ""
if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True) and not oe.utils.inherits(d, 'cross-canadian'):
return ""
return d.getVar('DEPENDS_GETTEXT', False)
def gettext_oeconf(d):
# Remove the NLS bits if USE_NLS is no.
if bb.data.getVar('USE_NLS', d, 1) == 'no':
cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
cfg += " --disable-nls"
depends = bb.data.getVar('DEPENDS', d, 1) or ""
bb.data.setVar('DEPENDS', oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
bb.data.setVar('EXTRA_OECONF', cfg, d)
if d.getVar('USE_NLS', True) == 'no':
return '--disable-nls'
return "--enable-nls"
python () {
gettext_after_parse(d)
}
DEPENDS_GETTEXT = "virtual/gettext gettext-native"
DEPENDS_GETTEXT = "gettext gettext-native"
DEPENDS =+ "${DEPENDS_GETTEXT}"
EXTRA_OECONF += "--enable-nls"
BASEDEPENDS =+ "${@gettext_dependencies(d)}"
EXTRA_OECONF += "${@gettext_oeconf(d)}"

View File

@@ -584,7 +584,7 @@ Rerun configure task after fixing this. The path was '%s'""" % root)
elif bb.data.inherits_class('cross-canadian', d):
gt = "gettext-nativesdk"
else:
gt = "gettext"
gt = "virtual/gettext"
deps = bb.utils.explode_deps(bb.data.getVar('DEPENDS', d, True) or "")
if gt not in deps:
for config in configs: