Browse Source

toolchain/uclibc: Add BR2_ENABLE_LOCALE_PREGENERATED option

Add an option to either generate locales yourself or download the
pregenerated set.

Based on 4bdca9cc in Bernhard's tree.
Peter Korsgaard 16 năm trước cách đây
mục cha
commit
11050fcc62
2 tập tin đã thay đổi với 17 bổ sung5 xóa
  1. 11 1
      toolchain/uClibc/Config.in
  2. 6 4
      toolchain/uClibc/uclibc.mk

+ 11 - 1
toolchain/uClibc/Config.in

@@ -56,7 +56,17 @@ config BR2_UCLIBC_CONFIG
 config BR2_ENABLE_LOCALE
 	bool "Enable locale/gettext/i18n support?"
 	help
-	    Enable locale/gettext/i18n support?
+	  Enable locale/gettext/i18n support?
+
+config BR2_ENABLE_LOCALE_PREGENERATED
+	bool "Use pregenerated locale data?"
+	depends on BR2_ENABLE_LOCALE
+	help
+	  Instead of generating the locale data locally you can optionally
+	  download a pregenerated set of locales.
+
+	  Say N here unless your buildhost lacks locale support and you
+	  desparately want to use internationalization on your target.
 
 choice
 	prompt "Thread library implementation"

+ 6 - 4
toolchain/uClibc/uclibc.mk

@@ -96,7 +96,7 @@ UCLIBC_SPARC_TYPE:=CONFIG_SPARC_$(strip $(subst ",, $(BR2_SPARC_TYPE)))
 $(DL_DIR)/$(UCLIBC_SOURCE):
 	$(WGET) -P $(DL_DIR) $(UCLIBC_SITE)/$(UCLIBC_SOURCE)
 
-ifneq ($(BR2_ENABLE_LOCALE),)
+ifneq ($(BR2_ENABLE_LOCALE_PREGENERATED),)
 UCLIBC_SITE_LOCALE:=http://www.uclibc.org/downloads
 UCLIBC_SOURCE_LOCALE:=uClibc-locale-030818.tgz
 
@@ -125,7 +125,7 @@ else
 	toolchain/patch-kernel.sh $(UCLIBC_DIR) $(UCLIBC_PATCH_DIR) \
 		uClibc.\*.patch uClibc.\*.patch.$(ARCH)
 endif
-ifneq ($(BR2_ENABLE_LOCALE),)
+ifneq ($(BR2_ENABLE_LOCALE_PREGENERATED)),)
 	cp -dpf $(DL_DIR)/$(UCLIBC_SOURCE_LOCALE) $(UCLIBC_DIR)/extra/locale/
 endif
 	touch $@
@@ -346,11 +346,13 @@ else
 	echo "# PTHREADS_DEBUG_SUPPORT is not set" >> $(UCLIBC_DIR)/.oldconfig
 endif
 ifeq ($(BR2_ENABLE_LOCALE),y)
+ifeq ($(BR2_ENABLE_LOCALE_PREGENERATED),y)
 	$(SED) 's,^.*UCLIBC_HAS_LOCALE.*,UCLIBC_HAS_LOCALE=y\nUCLIBC_PREGENERATED_LOCALE_DATA=y\nUCLIBC_DOWNLOAD_PREGENERATED_LOCALE_DATA=y\nUCLIBC_HAS_XLOCALE=y\nUCLIBC_HAS_GLIBC_DIGIT_GROUPING=n\n,g' $(UCLIBC_DIR)/.oldconfig
-	$(SED) 's,.*UCLIBC_HAS_WCHAR.*,UCLIBC_HAS_WCHAR=y,g' $(UCLIBC_DIR)/.oldconfig
+else
+	$(SED) 's,^.*UCLIBC_HAS_LOCALE.*,UCLIBC_HAS_LOCALE=y\nUCLIBC_PREGENERATED_LOCALE_DATA=n\nUCLIBC_DOWNLOAD_PREGENERATED_LOCALE_DATA=n\nUCLIBC_HAS_XLOCALE=y\nUCLIBC_HAS_GLIBC_DIGIT_GROUPING=n\n,g' $(UCLIBC_DIR)/.oldconfig
+endif
 else
 	$(SED) 's,^.*UCLIBC_HAS_LOCALE.*,UCLIBC_HAS_LOCALE=n,g' $(UCLIBC_DIR)/.oldconfig
-	$(SED) 's,.*UCLIBC_HAS_WCHAR.*,UCLIBC_HAS_WCHAR=n,g' $(UCLIBC_DIR)/.oldconfig
 endif
 ifeq ($(BR2_USE_WCHAR),y)
 	$(SED) 's,^.*UCLIBC_HAS_WCHAR.*,UCLIBC_HAS_WCHAR=y,g' $(UCLIBC_DIR)/.oldconfig