This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

PATCH: Support parallel localedata install


This patch cuts the time for

# make PARALLELMFLAGS="-j4" install-locales

from 9m7.016s to 5m24.817s on a dual P/III 933 MHz.


H.J.
----
2001-06-28  H.J. Lu <hjl@gnu.org>

	* Makefile: Include SUPPORTED.
	(INSTALL-SUPPORTED-LOCALES): New.
	($(INSTALL-SUPPORTED-LOCALES)): New target.
	(install-locales-dir): Likewise.
	(install-locales): Depend on $(INSTALL-SUPPORTED-LOCALES).
	(SUPPORTED): Changed the format for parallel install.

--- localedata/Makefile.parallel	Thu Jun 28 09:26:34 2001
+++ localedata/Makefile	Thu Jun 28 13:55:15 2001
@@ -191,22 +191,30 @@ $(objpfx)tst-langinfo.out: tst-langinfo.
 $(objpfx)tst-digits.out: $(objpfx)tst-locale.out
 endif
 
+include SUPPORTED
+
+INSTALL-SUPPORTED-LOCALES=$(addprefix install-, $(SUPPORTED-LOCALES))
+
 # Sometimes the whole collection of locale files should be installed.
 LOCALEDEF=I18NPATH=. GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \
 $(common-objpfx)elf/ld.so --library-path $(rpath-link) $(common-objpfx)locale/localedef
-install-locales:
+install-locales: $(INSTALL-SUPPORTED-LOCALES)
+
+install-locales-dir:
 	$(..)./scripts/mkinstalldirs $(inst_localedir)
-	while read locale charset; do \
-	   case $$locale in \#*) continue;; esac; \
-	   echo -n `echo $$locale | sed 's/\([^.\@]*\).*/\1/'`; \
-	   echo -n ".$$charset"; \
-	   echo -n `echo $$locale | sed 's/\([^\@]*\)\(\@.*\)*/\2/'`; \
-	   echo -n '...'; \
-	   input=`echo $$locale | sed 's/\([^.]*\)[^@]*\(.*\)/\1\2/'`; \
-	   $(LOCALEDEF) -i locales/$$input -c -f charmaps/$$charset \
-			$(addprefix --prefix=,$(install_root)) $$locale; \
-	   echo ' done'; \
-	done < SUPPORTED
+
+$(INSTALL-SUPPORTED-LOCALES): install-locales-dir
+	@locale=`echo $@ | sed -e 's/^install-//'`; \
+	charset=`echo $$locale | sed -e 's,.*/,,'`; \
+	locale=`echo $$locale | sed -e 's,/[^/]*,,'`; \
+	echo -n `echo $$locale | sed 's/\([^.\@]*\).*/\1/'`; \
+	echo -n ".$$charset"; \
+	echo -n `echo $$locale | sed 's/\([^\@]*\)\(\@.*\)*/\2/'`; \
+	echo -n '...'; \
+	input=`echo $$locale | sed 's/\([^.]*\)[^@]*\(.*\)/\1\2/'`; \
+	$(LOCALEDEF) -i locales/$$input -c -f charmaps/$$charset \
+		$(addprefix --prefix=,$(install_root)) $$locale; \
+	echo ' done'; \
 
 # The mbwc-tests need some environment setup to find the locale data files
 TEST_MBWC_ENV:= LOCPATH=$(common-objpfx)localedata
--- localedata/SUPPORTED.parallel	Thu Jun 28 09:26:34 2001
+++ localedata/SUPPORTED	Thu Jun 28 13:43:50 2001
@@ -1,149 +1,150 @@
 # This file names the currently supported and somewhat tested locales.
 # If you have any additions please use the glibcbug script to send an
 # appropriate message.
-af_ZA ISO-8859-1
-ar_AE ISO-8859-6
-ar_BH ISO-8859-6
-ar_DZ ISO-8859-6
-ar_EG ISO-8859-6
-ar_IN UTF-8
-ar_IQ ISO-8859-6
-ar_JO ISO-8859-6
-ar_KW ISO-8859-6
-ar_LB ISO-8859-6
-ar_LY ISO-8859-6
-ar_MA ISO-8859-6
-ar_OM ISO-8859-6
-ar_QA ISO-8859-6
-ar_SA ISO-8859-6
-ar_SD ISO-8859-6
-ar_SY ISO-8859-6
-ar_TN ISO-8859-6
-ar_YE ISO-8859-6
-be_BY CP1251
-bg_BG CP1251
-ca_ES ISO-8859-1
-ca_ES@euro ISO-8859-15
-cs_CZ ISO-8859-2
-da_DK ISO-8859-1
-de_AT ISO-8859-1
-de_AT@euro ISO-8859-15
-de_BE ISO-8859-1
-de_BE@euro ISO-8859-15
-de_CH ISO-8859-1
-de_DE ISO-8859-1
-de_DE@euro ISO-8859-15
-de_LU ISO-8859-1
-de_LU@euro ISO-8859-15
-el_GR ISO-8859-7
-en_AU ISO-8859-1
-en_BW ISO-8859-1
-en_CA ISO-8859-1
-en_DK ISO-8859-1
-en_GB ISO-8859-1
-en_HK ISO-8859-1
-en_IE ISO-8859-1
-en_IE@euro ISO-8859-15
-en_IN UTF-8
-en_NZ ISO-8859-1
-en_PH ISO-8859-1
-en_SG ISO-8859-1
-en_US ISO-8859-1
-en_ZA ISO-8859-1
-en_ZW ISO-8859-1
-es_AR ISO-8859-1
-es_BO ISO-8859-1
-es_CL ISO-8859-1
-es_CO ISO-8859-1
-es_CR ISO-8859-1
-es_DO ISO-8859-1
-es_EC ISO-8859-1
-es_ES ISO-8859-1
-es_ES@euro ISO-8859-15
-es_GT ISO-8859-1
-es_HN ISO-8859-1
-es_MX ISO-8859-1
-es_NI ISO-8859-1
-es_PA ISO-8859-1
-es_PE ISO-8859-1
-es_PR ISO-8859-1
-es_PY ISO-8859-1
-es_SV ISO-8859-1
-es_US ISO-8859-1
-es_UY ISO-8859-1
-es_VE ISO-8859-1
-et_EE ISO-8859-1
-eu_ES ISO-8859-1
-eu_ES@euro ISO-8859-15
-fa_IR UTF-8
-fi_FI ISO-8859-1
-fi_FI@euro ISO-8859-15
-fo_FO ISO-8859-1
-fr_BE ISO-8859-1
-fr_BE@euro ISO-8859-15
-fr_CA ISO-8859-1
-fr_CH ISO-8859-1
-fr_FR ISO-8859-1
-fr_FR@euro ISO-8859-15
-fr_LU ISO-8859-1
-fr_LU@euro ISO-8859-15
-ga_IE ISO-8859-1
-ga_IE@euro ISO-8859-15
-gl_ES ISO-8859-1
-gl_ES@euro ISO-8859-15
-gv_GB ISO-8859-1
-he_IL ISO-8859-8
-hi_IN UTF-8
-hr_HR ISO-8859-2
-hu_HU ISO-8859-2
-id_ID ISO-8859-1
-is_IS ISO-8859-1
-it_CH ISO-8859-1
-it_IT ISO-8859-1
-it_IT@euro ISO-8859-15
-iw_IL ISO-8859-8
-ja_JP.EUC-JP EUC-JP
-kl_GL ISO-8859-1
-ko_KR.EUC-KR EUC-KR
-ko_KR.UTF-8 UTF-8
-kw_GB ISO-8859-1
-lt_LT ISO-8859-13
-lv_LV ISO-8859-13
-mk_MK ISO-8859-5
-mr_IN UTF-8
-ms_MY ISO-8859-1
-mt_MT ISO-8859-3
-nl_BE ISO-8859-1
-nl_BE@euro ISO-8859-15
-nl_NL ISO-8859-1
-nl_NL@euro ISO-8859-15
-nn_NO ISO-8859-1
-no_NO ISO-8859-1
-pl_PL ISO-8859-2
-pt_BR ISO-8859-1
-pt_PT ISO-8859-1
-pt_PT@euro ISO-8859-15
-ro_RO ISO-8859-2
-ru_RU ISO-8859-5
-ru_RU.KOI8-R KOI8-R
-ru_UA KOI8-U
-sk_SK ISO-8859-2
-sl_SI ISO-8859-2
-sq_AL ISO-8859-1
-sr_YU ISO-8859-2
-sr_YU@cyrillic ISO-8859-5
-sv_FI ISO-8859-1
-sv_FI@euro ISO-8859-15
-sv_SE ISO-8859-1
-ta_IN UTF-8
-te_IN UTF-8
-th_TH TIS-620
-tr_TR ISO-8859-9
-uk_UA KOI8-U
-vi_VN UTF-8
-zh_CN GB2312
-zh_CN.GB18030 GB18030
-zh_CN.GBK GBK
-zh_HK BIG5-HKSCS
-zh_TW BIG5
-zh_TW.EUC-TW EUC-TW
+SUPPORTED-LOCALES=\
+af_ZA/ISO-8859-1 \
+ar_AE/ISO-8859-6 \
+ar_BH/ISO-8859-6 \
+ar_DZ/ISO-8859-6 \
+ar_EG/ISO-8859-6 \
+ar_IN/UTF-8 \
+ar_IQ/ISO-8859-6 \
+ar_JO/ISO-8859-6 \
+ar_KW/ISO-8859-6 \
+ar_LB/ISO-8859-6 \
+ar_LY/ISO-8859-6 \
+ar_MA/ISO-8859-6 \
+ar_OM/ISO-8859-6 \
+ar_QA/ISO-8859-6 \
+ar_SA/ISO-8859-6 \
+ar_SD/ISO-8859-6 \
+ar_SY/ISO-8859-6 \
+ar_TN/ISO-8859-6 \
+ar_YE/ISO-8859-6 \
+be_BY/CP1251 \
+bg_BG/CP1251 \
+ca_ES/ISO-8859-1 \
+ca_ES@euro/ISO-8859-15 \
+cs_CZ/ISO-8859-2 \
+da_DK/ISO-8859-1 \
+de_AT/ISO-8859-1 \
+de_AT@euro/ISO-8859-15 \
+de_BE/ISO-8859-1 \
+de_BE@euro/ISO-8859-15 \
+de_CH/ISO-8859-1 \
+de_DE/ISO-8859-1 \
+de_DE@euro/ISO-8859-15 \
+de_LU/ISO-8859-1 \
+de_LU@euro/ISO-8859-15 \
+el_GR/ISO-8859-7 \
+en_AU/ISO-8859-1 \
+en_BW/ISO-8859-1 \
+en_CA/ISO-8859-1 \
+en_DK/ISO-8859-1 \
+en_GB/ISO-8859-1 \
+en_HK/ISO-8859-1 \
+en_IE/ISO-8859-1 \
+en_IE@euro/ISO-8859-15 \
+en_IN/UTF-8 \
+en_NZ/ISO-8859-1 \
+en_PH/ISO-8859-1 \
+en_SG/ISO-8859-1 \
+en_US/ISO-8859-1 \
+en_ZA/ISO-8859-1 \
+en_ZW/ISO-8859-1 \
+es_AR/ISO-8859-1 \
+es_BO/ISO-8859-1 \
+es_CL/ISO-8859-1 \
+es_CO/ISO-8859-1 \
+es_CR/ISO-8859-1 \
+es_DO/ISO-8859-1 \
+es_EC/ISO-8859-1 \
+es_ES/ISO-8859-1 \
+es_ES@euro/ISO-8859-15 \
+es_GT/ISO-8859-1 \
+es_HN/ISO-8859-1 \
+es_MX/ISO-8859-1 \
+es_NI/ISO-8859-1 \
+es_PA/ISO-8859-1 \
+es_PE/ISO-8859-1 \
+es_PR/ISO-8859-1 \
+es_PY/ISO-8859-1 \
+es_SV/ISO-8859-1 \
+es_US/ISO-8859-1 \
+es_UY/ISO-8859-1 \
+es_VE/ISO-8859-1 \
+et_EE/ISO-8859-1 \
+eu_ES/ISO-8859-1 \
+eu_ES@euro/ISO-8859-15 \
+fa_IR/UTF-8 \
+fi_FI/ISO-8859-1 \
+fi_FI@euro/ISO-8859-15 \
+fo_FO/ISO-8859-1 \
+fr_BE/ISO-8859-1 \
+fr_BE@euro/ISO-8859-15 \
+fr_CA/ISO-8859-1 \
+fr_CH/ISO-8859-1 \
+fr_FR/ISO-8859-1 \
+fr_FR@euro/ISO-8859-15 \
+fr_LU/ISO-8859-1 \
+fr_LU@euro/ISO-8859-15 \
+ga_IE/ISO-8859-1 \
+ga_IE@euro/ISO-8859-15 \
+gl_ES/ISO-8859-1 \
+gl_ES@euro/ISO-8859-15 \
+gv_GB/ISO-8859-1 \
+he_IL/ISO-8859-8 \
+hi_IN/UTF-8 \
+hr_HR/ISO-8859-2 \
+hu_HU/ISO-8859-2 \
+id_ID/ISO-8859-1 \
+is_IS/ISO-8859-1 \
+it_CH/ISO-8859-1 \
+it_IT/ISO-8859-1 \
+it_IT@euro/ISO-8859-15 \
+iw_IL/ISO-8859-8 \
+ja_JP.EUC-JP/EUC-JP \
+kl_GL/ISO-8859-1 \
+ko_KR.EUC-KR/EUC-KR \
+ko_KR.UTF-8/UTF-8 \
+kw_GB/ISO-8859-1 \
+lt_LT/ISO-8859-13 \
+lv_LV/ISO-8859-13 \
+mk_MK/ISO-8859-5 \
+mr_IN/UTF-8 \
+ms_MY/ISO-8859-1 \
+mt_MT/ISO-8859-3 \
+nl_BE/ISO-8859-1 \
+nl_BE@euro/ISO-8859-15 \
+nl_NL/ISO-8859-1 \
+nl_NL@euro/ISO-8859-15 \
+nn_NO/ISO-8859-1 \
+no_NO/ISO-8859-1 \
+pl_PL/ISO-8859-2 \
+pt_BR/ISO-8859-1 \
+pt_PT/ISO-8859-1 \
+pt_PT@euro/ISO-8859-15 \
+ro_RO/ISO-8859-2 \
+ru_RU/ISO-8859-5 \
+ru_RU.KOI8-R/KOI8-R \
+ru_UA/KOI8-U \
+sk_SK/ISO-8859-2 \
+sl_SI/ISO-8859-2 \
+sq_AL/ISO-8859-1 \
+sr_YU/ISO-8859-2 \
+sr_YU@cyrillic/ISO-8859-5 \
+sv_FI/ISO-8859-1 \
+sv_FI@euro/ISO-8859-15 \
+sv_SE/ISO-8859-1 \
+ta_IN/UTF-8 \
+te_IN/UTF-8 \
+th_TH/TIS-620 \
+tr_TR/ISO-8859-9 \
+uk_UA/KOI8-U \
+vi_VN/UTF-8 \
+zh_CN/GB2312 \
+zh_CN.GB18030/GB18030 \
+zh_CN.GBK/GBK \
+zh_HK/BIG5-HKSCS \
+zh_TW/BIG5 \
+zh_TW.EUC-TW/EUC-TW \


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]