[PATCH 2 of 5] libc: create an infrastructure to build and install the libc locales

Benoît THÉBAUDEAU benoit.thebaudeau@advansee.com
Thu Jul 28 19:10:00 GMT 2011


# HG changeset patch
# User "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
# Date 1311780145 -7200
# Node ID 4fed02058cc3276180d6014899062f83e620eb37
# Parent  0ee44cad2124dcf96979819f0ee4851dd6ef2334
libc: create an infrastructure to build and install the libc locales

This patch adds a common glibc/eglibc infrastructure to build and install the
libc locales.

Signed-off-by: "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>

diff --git a/config/libc/glibc-eglibc.in-common b/config/libc/glibc-eglibc.in-common
--- a/config/libc/glibc-eglibc.in-common
+++ b/config/libc/glibc-eglibc.in-common
@@ -144,6 +144,13 @@
 comment "|  or try again later... :-(                            "
 endif
 
+config LIBC_LOCALES
+    bool
+    prompt "Build and install locales"
+    help
+      Whether to build and install the libc locale files for the target,
+      which is required in order to support internationalization.
+
 if KERNEL_linux
 
 choice LIBC_GLIBC_SUPPORTED_KERNEL
diff --git a/scripts/build/libc/eglibc.sh b/scripts/build/libc/eglibc.sh
--- a/scripts/build/libc/eglibc.sh
+++ b/scripts/build/libc/eglibc.sh
@@ -95,3 +95,15 @@
 
     CT_EndStep
 }
+
+# Extract the files required for the libc locales
+# Nothing to do
+do_libc_locales_extract() {
+    :
+}
+
+# Build and install the libc locales
+# Not yet supported
+do_libc_locales() {
+    :
+}
diff --git a/scripts/build/libc/glibc-eglibc.sh-common b/scripts/build/libc/glibc-eglibc.sh-common
--- a/scripts/build/libc/glibc-eglibc.sh-common
+++ b/scripts/build/libc/glibc-eglibc.sh-common
@@ -47,6 +47,10 @@
     find . -type f -name configure -exec touch {} \; 2>&1 |CT_DoLog ALL
 
     CT_Popd
+
+    if [ "${CT_LIBC_LOCALES}" = "y" ]; then
+        do_libc_locales_extract
+    fi
 }
 
 # Build and install headers and start files
@@ -294,6 +298,10 @@
                               "${extra_make_args[@]}"           \
                               install_root="${CT_SYSROOT_DIR}"  \
                               install
+
+        if [ "${CT_LIBC_LOCALES}" = "y" ]; then
+            do_libc_locales
+        fi
     fi
 
     CT_EndStep
diff --git a/scripts/build/libc/glibc.sh b/scripts/build/libc/glibc.sh
--- a/scripts/build/libc/glibc.sh
+++ b/scripts/build/libc/glibc.sh
@@ -55,3 +55,15 @@
 do_libc_check_config() {
     :
 }
+
+# Extract the files required for the libc locales
+# Nothing to do
+do_libc_locales_extract() {
+    :
+}
+
+# Build and install the libc locales
+# Not yet supported
+do_libc_locales() {
+    :
+}


More information about the crossgcc mailing list