1
0
mirror of https://git.yoctoproject.org/poky synced 2026-07-16 03:47:03 +00:00

gettext: Switch to disabling nls and reducing -native build dependencies to a set of pre built m4 macros

When analysing our build performance, its apparent that binutils-cross
takes an age to get built. This is due to its dependencies on
flex-native and bison-native which in turn depend on gettext-native.

gettext-native is problematic as it has a significant dependency chain
of its own and takes an age to build. What is worse is that we never
care about the native language support in -native and -cross packages
since we always force the C locale.

This patch therefore disables nls for all -native packages (its already
disabled for -cross) and adds a new gettext-minimal-native package which
contains the m4 macros to keep autoconf/automake happy.

This means we gain a significant build time speedup by the removal of
gettext-native from most dependency chains (only being part of gettext
for the target now).

For now the LICENCE field says GPLv3, the macros are actually under a
FSF MIT like licence so we need to update this part of the patch in due
course.

(From OE-Core rev: 01b2a16beb4a924077b74943ad4d6e7976563ff1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie
2011-10-18 18:26:26 +01:00
parent 9497b27110
commit b090fde5c1
6 changed files with 699 additions and 1 deletions
+4
View File
@@ -3,9 +3,13 @@ def gettext_dependencies(d):
return ""
if d.getVar('INHIBIT_DEFAULT_DEPS', True) and not oe.utils.inherits(d, 'cross-canadian'):
return ""
if oe.utils.inherits(d, 'native'):
return "gettext-minimal-native"
return d.getVar('DEPENDS_GETTEXT', False)
def gettext_oeconf(d):
if oe.utils.inherits(d, 'native'):
return '--disable-nls'
# Remove the NLS bits if USE_NLS is no.
if d.getVar('USE_NLS', True) == 'no' and not oe.utils.inherits(d, 'native', 'nativesdk', 'cross', 'cross-canadian'):
return '--disable-nls'