[PATCH] Fix minimal locale generation (UCLIBC_BUILD_MINIMAL_LOCALE)

Marc Andre Tanner mat at brain-dump.org
Sat Oct 10 11:27:48 UTC 2009


Hi all,

I need the iconv interface but without the actual local data which is
rather big. I therefore followed the instructions in extra/locale/README
and took a look at the coressponding Makefile.in. There I found that
UCLIBC_BUILD_MINIMAL_LOCALE apparently does what I want (why is this
not linked up in the Kconfig and shown during make menuconfig?).

I then had to fix the following issues in order to make it work:

  - The Makefile.in passes @echo to the shell which causes an error
    this is what the patch in this mail fixes.

  - There is something wrong with the dependencies, the Makefile has
    no rule to make include/bits/sysnum.h. This could be releated to
    the following commented out line:

      #DEPH-locale := $(top_builddir)include/bits/sysnum.h
    
    I worked around this in my scripts for now. They basically do:

      make headers
      make include/bits/sysnum.h 
      cd extra/locale
      make clean
      make UCLIBC_BUILD_MINIMAL_LOCALE=y
      cd - >/dev/null
      make install

This all was with version 0.9.30.1 but the relevant code seems to be
the same in current master.

Marc

>From 6a3388b33049c5e6fde6a20e18681297981ed517 Mon Sep 17 00:00:00 2001
From: Marc Andre Tanner <mat at brain-dump.org>
Date: Sat, 10 Oct 2009 12:50:33 +0200
Subject: [PATCH] Fix minimal locale generation (UCLIBC_BUILD_MINIMAL_LOCALE)

The Makefile.in used $(Q)echo on a continued line,
this passed @echo to the shell which resulted in a
command not found error.

Remove the line continuation backslash. Another
solution would be to remove $(Q) from all but the
first line.

Signed-off-by: Marc Andre Tanner <mat at brain-dump.org>
---
 extra/locale/Makefile.in |   14 +++++++-------
 1 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/extra/locale/Makefile.in b/extra/locale/Makefile.in
index fe2e3cf..464a931 100644
--- a/extra/locale/Makefile.in
+++ b/extra/locale/Makefile.in
@@ -107,7 +107,7 @@ else
 $(locale_OUT)/codesets.txt:
 	@$(disp_gen)
 ifeq ($(UCLIBC_BUILD_MINIMAL_LOCALE),y)
-	$(Q)echo "$(CURDIR)/$(locale_DIR)/charmaps/ASCII.pairs" > $@ ; \
+	$(Q)echo "$(CURDIR)/$(locale_DIR)/charmaps/ASCII.pairs" > $@ ; 
 	$(Q)echo "$(CURDIR)/$(locale_DIR)/charmaps/ISO-8859-1.pairs" >> $@
 else
 	$(Q)set -e; \
@@ -128,12 +128,12 @@ endif
 $(locale_OUT)/locales.txt: $(locale_DIR)/LOCALES
 	@$(disp_gen)
 ifeq ($(UCLIBC_BUILD_MINIMAL_LOCALE),y)
-	$(Q)echo "@euro e" > $@ ; \
-	$(Q)echo "#-" >> $@ ; \
-	$(Q)echo "UTF-8 yes" >> $@ ; \
-	$(Q)echo "8-BIT yes" >> $@ ; \
-	$(Q)echo "#-" >> $@ ; \
-	$(Q)echo "en_US.UTF-8 UTF-8" >> $@ ; \
+	$(Q)echo "@euro e" > $@ ; 
+	$(Q)echo "#-" >> $@ ; 
+	$(Q)echo "UTF-8 yes" >> $@ ; 
+	$(Q)echo "8-BIT yes" >> $@ ; 
+	$(Q)echo "#-" >> $@ ; 
+	$(Q)echo "en_US.UTF-8 UTF-8" >> $@ ; 
 	$(Q)echo "en_US ISO-8859-1" >> $@
 else
 	$(Q)cat $< > $@

-- 
 Marc Andre Tanner >< http://www.brain-dump.org/ >< GPG key: CF7D56C0


More information about the uClibc mailing list