From 2f19e2a1e6fe519f77b1d9611beadbfd2c74a22a Mon Sep 17 00:00:00 2001 From: Nitin A Kamble Date: Mon, 4 Oct 2010 13:31:23 -0700 Subject: libc-package.bbclass, eglibc, glibc: enable locales generation using cross-localedef Along with qemu this provides another option to generate locales for [e]glibc. The new method is to use cross-localedef with appropriate arch specific parameters. The cross-localedef method is found to be 15 times faster than qemu's emnualted method. LOCALE_GENERATION_WITH_CROSS-LOCALEDEF : This is new config variable introduced to selet qemu or cross-localedef method for locale generation. Thanks to Mark Hatle from Windriver for providing the rich information for cross locale generation. Signed-off-by: Nitin A Kamble --- meta/recipes-core/glibc/glibc-package.inc | 24 ++++-------------------- 1 file changed, 4 insertions(+), 20 deletions(-) (limited to 'meta/recipes-core/glibc/glibc-package.inc') diff --git a/meta/recipes-core/glibc/glibc-package.inc b/meta/recipes-core/glibc/glibc-package.inc index 3c9132820d..8faeeb7e89 100644 --- a/meta/recipes-core/glibc/glibc-package.inc +++ b/meta/recipes-core/glibc/glibc-package.inc @@ -27,6 +27,10 @@ ENABLE_BINARY_LOCALE_GENERATION_pn-glibc-nativesdk = "0" # BINARY_LOCALE_ARCHES is a space separated list of regular expressions BINARY_LOCALE_ARCHES ?= "arm.* i[3-6]86 x86_64 powerpc mips" +# set "1" to use cross-localedef for locale generation +# set "0" for qemu emulation of native localedef for locale generation +LOCALE_GENERATION_WITH_CROSS-LOCALEDEF = "1" + PKGSUFFIX = "" PKGSUFFIX_virtclass-nativesdk = "-nativesdk" @@ -86,24 +90,4 @@ DESCRIPTION_glibc-utils = "glibc: misc utilities like iconf, local, gencat, tzse EXTRA_OEMAKE += "rootsbindir=${base_sbindir}" -python __anonymous () { - enabled = bb.data.getVar("ENABLE_BINARY_LOCALE_GENERATION", d, 1) - - if enabled and int(enabled): - import re - - target_arch = bb.data.getVar("TARGET_ARCH", d, 1) - binary_arches = bb.data.getVar("BINARY_LOCALE_ARCHES", d, 1) or "" - - for regexp in binary_arches.split(" "): - r = re.compile(regexp) - - if r.match(target_arch): - depends = bb.data.getVar("DEPENDS", d, 1) - depends = "%s qemu-native" % depends - bb.data.setVar("DEPENDS", depends, d) - bb.data.setVar("GLIBC_INTERNAL_USE_BINARY_LOCALE", "compile", d) - break -} - inherit libc-package -- cgit v1.2.3-54-g00ecf