aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLeonhard Holz <leonhard.holz@web.de>2015-05-12 20:32:50 +0530
committerSiddhesh Poyarekar <siddhesh@redhat.com>2015-05-13 13:05:28 +0530
commit9f53d7ad577db870c4383b4378cd23131f516c42 (patch)
tree73ad92cd0bd10b0d30677e775e2de6ece4ebe483
parent0f4840be2528b3e3f2ecea009ab08e753701e9be (diff)
downloadglibc-9f53d7ad577db870c4383b4378cd23131f516c42.zip
glibc-9f53d7ad577db870c4383b4378cd23131f516c42.tar.gz
glibc-9f53d7ad577db870c4383b4378cd23131f516c42.tar.bz2
Split locale generation snippet into a separate file
This patch prepares for the strcoll benchmark by moving the makefile code for generating the locale files into a standalone snippet that can be used elsewhere.
-rw-r--r--gen-locales.mk20
-rw-r--r--localedata/ChangeLog8
-rw-r--r--localedata/Makefile16
-rw-r--r--localedata/gen-locale.sh2
4 files changed, 30 insertions, 16 deletions
diff --git a/gen-locales.mk b/gen-locales.mk
new file mode 100644
index 0000000..fd88b5b
--- /dev/null
+++ b/gen-locales.mk
@@ -0,0 +1,20 @@
+# defines target $(gen-locales) that generates the locales given in $(LOCALES)
+
+LOCALE_SRCS := $(shell echo "$(LOCALES)"|sed 's/\([^ .]*\)[^ ]*/\1/g')
+CHARMAPS := $(shell echo "$(LOCALES)" | \
+ sed -e 's/[^ .]*[.]\([^ ]*\)/\1/g' -e s/SJIS/SHIFT_JIS/g)
+CTYPE_FILES = $(addsuffix /LC_CTYPE,$(LOCALES))
+gen-locales := $(addprefix $(common-objpfx)localedata/,$(CTYPE_FILES))
+
+# Dependency for the locale files. We actually make it depend only on
+# one of the files.
+$(addprefix $(common-objpfx)localedata/,$(CTYPE_FILES)): %: \
+ ../localedata/gen-locale.sh \
+ $(common-objpfx)locale/localedef \
+ ../localedata/Makefile \
+ $(addprefix ../localedata/charmaps/,$(CHARMAPS)) \
+ $(addprefix ../localedata/locales/,$(LOCALE_SRCS))
+ @$(SHELL) ../localedata/gen-locale.sh $(common-objpfx) \
+ '$(built-program-cmd-before-env)' '$(run-program-env)' \
+ '$(built-program-cmd-after-env)' $@; \
+ $(evaluate-test)
diff --git a/localedata/ChangeLog b/localedata/ChangeLog
index 89540ee..728b500 100644
--- a/localedata/ChangeLog
+++ b/localedata/ChangeLog
@@ -1,3 +1,11 @@
+2015-05-12 Leonhard Holz <leonhard.holz@web.de>
+
+ * gen-locales.mk: New Makefile snippet to generate locales.
+ * localedata/Makefile: Use gen-locales.mk for locale
+ generation.
+ * localedata/gen-locale.sh (generate_locale): Make path to
+ charmaps independent of current working directory.
+
2015-05-07 Christian Schmidt <glibc@chsc.dk>
[BZ #17692]
diff --git a/localedata/Makefile b/localedata/Makefile
index 0f67725..03ec98c 100644
--- a/localedata/Makefile
+++ b/localedata/Makefile
@@ -107,11 +107,7 @@ LOCALES := de_DE.ISO-8859-1 de_DE.UTF-8 en_US.ANSI_X3.4-1968 \
nb_NO.ISO-8859-1 nn_NO.ISO-8859-1 tr_TR.UTF-8 cs_CZ.UTF-8 \
zh_TW.EUC-TW fa_IR.UTF-8 fr_FR.UTF-8 ja_JP.UTF-8 si_LK.UTF-8 \
tr_TR.ISO-8859-9 en_GB.UTF-8
-LOCALE_SRCS := $(shell echo "$(LOCALES)"|sed 's/\([^ .]*\)[^ ]*/\1/g')
-CHARMAPS := $(shell echo "$(LOCALES)" | \
- sed -e 's/[^ .]*[.]\([^ ]*\)/\1/g' -e s/SJIS/SHIFT_JIS/g)
-CTYPE_FILES = $(addsuffix /LC_CTYPE,$(LOCALES))
-tests-special += $(addprefix $(objpfx),$(CTYPE_FILES))
+include ../gen-locales.mk
endif
include ../Rules
@@ -130,16 +126,6 @@ $(inst_i18ndir)/locales/%: locales/% $(+force); $(do-install)
ifeq ($(run-built-tests),yes)
generated-dirs += $(LOCALES)
-# Dependency for the locale files. We actually make it depend only on
-# one of the files.
-$(addprefix $(objpfx),$(CTYPE_FILES)): %: \
- gen-locale.sh $(common-objpfx)locale/localedef Makefile \
- $(addprefix charmaps/,$(CHARMAPS)) $(addprefix locales/,$(LOCALE_SRCS))
- @$(SHELL) gen-locale.sh $(common-objpfx) \
- '$(built-program-cmd-before-env)' '$(run-program-env)' \
- '$(built-program-cmd-after-env)' $@; \
- $(evaluate-test)
-
$(addsuffix .out,$(addprefix $(objpfx),$(tests))): %: \
$(addprefix $(objpfx),$(CTYPE_FILES))
diff --git a/localedata/gen-locale.sh b/localedata/gen-locale.sh
index 4156f9e..a0e3a1a 100644
--- a/localedata/gen-locale.sh
+++ b/localedata/gen-locale.sh
@@ -30,7 +30,7 @@ generate_locale ()
charmap=$1
input=$2
out=$3
- if ${localedef_before_env} ${run_program_env} I18NPATH=. \
+ if ${localedef_before_env} ${run_program_env} I18NPATH=../localedata \
${localedef_after_env} --quiet -c -f $charmap -i $input \
${common_objpfx}localedata/$out
then