gettext: Improve USE_NLS handling for nativesdk/crosssdk/cross-canadian
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 20 Aug 2013 17:13:14 +0000 (17:13 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 23 Aug 2013 15:20:11 +0000 (16:20 +0100)
The gettext handling of USE_NLS has become a bit tricky to understand, or
alter from the SDK context. This patch introduces a SDKUSE_NLS which can
be set to configure a given SDK/ADT to use NLS or not. This is independent
of the target system NLS usage.

The code in gettext.bbclass is therefore simplified and the classes
themselves now set USE_NLS to appropriate values. No NLS is used
for native, cross and crosssdk since it is never used there and
would just increase build time.

(From OE-Core rev: fe634d47449899f7424adb77ff5bc7ddf8a07a47)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/cross-canadian.bbclass
meta/classes/cross.bbclass
meta/classes/crosssdk.bbclass
meta/classes/gettext.bbclass
meta/classes/native.bbclass
meta/classes/nativesdk.bbclass
meta/conf/bitbake.conf

index 7ab36ac..fa2ab70 100644 (file)
@@ -94,3 +94,5 @@ SHLIBSDIRS = "${TMPDIR}/pkgdata/${HOST_ARCH}-nativesdk${HOST_VENDOR}-${HOST_OS}/
 SHLIBSDIR = "${TMPDIR}/pkgdata/${HOST_ARCH}-nativesdk${HOST_VENDOR}-${HOST_OS}/shlibs/"
 
 do_populate_sysroot[stamp-extra-info] = ""
+
+USE_NLS = "${SDKUSE_NLS}"
index 54584fe..f6e7dc1 100644 (file)
@@ -75,3 +75,5 @@ cross_virtclass_handler[eventmask] = "bb.event.RecipePreFinalise"
 do_install () {
        oe_runmake 'DESTDIR=${D}' install
 }
+
+USE_NLS = "no"
index 810f61d..635c0c4 100644 (file)
@@ -30,3 +30,5 @@ do_populate_sysroot[stamp-extra-info] = ""
 
 # Need to force this to ensure consitency accross architectures
 EXTRA_OECONF_FPU = ""
+
+USE_NLS = "no"
index 17c894f..03b89b2 100644 (file)
@@ -1,17 +1,15 @@
 def gettext_dependencies(d):
-    if d.getVar('USE_NLS', True) == 'no' and not oe.utils.inherits(d, 'native', 'nativesdk', 'cross'):
-        return ""
     if d.getVar('INHIBIT_DEFAULT_DEPS', True) and not oe.utils.inherits(d, 'cross-canadian'):
         return ""
-    if oe.utils.inherits(d, 'native', 'cross'):
+    if d.getVar('USE_NLS', True) == 'no':
         return "gettext-minimal-native"
     return d.getVar('DEPENDS_GETTEXT', False)
 
 def gettext_oeconf(d):
-    if oe.utils.inherits(d, 'native', 'cross'):
+    if d.getVar('USE_NLS', True) == 'no':
         return '--disable-nls'
     # Remove the NLS bits if USE_NLS is no or INHIBIT_DEFAULT_DEPS is set
-    if (d.getVar('USE_NLS', True) == 'no' or d.getVar('INHIBIT_DEFAULT_DEPS', True)) and not oe.utils.inherits(d, 'nativesdk', 'cross-canadian'):
+    if d.getVar('INHIBIT_DEFAULT_DEPS', True) and not oe.utils.inherits(d, 'cross-canadian'):
         return '--disable-nls'
     return "--enable-nls"
 
index 04f0d06..102dfb8 100644 (file)
@@ -158,3 +158,5 @@ do_package_write_deb[noexec] = "1"
 do_package_write_rpm[noexec] = "1"
 
 do_populate_sysroot[stamp-extra-info] = ""
+
+USE_NLS = "no"
index 96e1b42..5b9d1f5 100644 (file)
@@ -89,3 +89,5 @@ addhandler nativesdk_virtclass_handler
 nativesdk_virtclass_handler[eventmask] = "bb.event.RecipePreFinalise"
 
 do_populate_sysroot[stamp-extra-info] = ""
+
+USE_NLS = "${SDKUSE_NLS}"
index 43acc07..d98fde1 100644 (file)
@@ -110,6 +110,7 @@ TUNE_FEATURES ??= "${TUNE_FEATURES_tune-${DEFAULTTUNE}}"
 LIBCEXTENSION ??= ""
 ABIEXTENSION ??= ""
 USE_NLS ??= "yes"
+SDKUSE_NLS ??= "yes"
 
 TARGET_ARCH = "${TUNE_ARCH}"
 TARGET_OS = "linux${LIBCEXTENSION}${ABIEXTENSION}"