summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorbapt <bapt@FreeBSD.org>2016-07-03 18:21:11 +0000
committerbapt <bapt@FreeBSD.org>2016-07-03 18:21:11 +0000
commit9889527f5a2ab902035c679c612e4e5687466fea (patch)
tree5a15a869f837abcd6acea9d7a7ce6d0c1e536aa0 /tools
parent2ff8e9c6364b43e59db4e7bcb2dafb66980c2024 (diff)
downloadFreeBSD-src-9889527f5a2ab902035c679c612e4e5687466fea.zip
FreeBSD-src-9889527f5a2ab902035c679c612e4e5687466fea.tar.gz
Posixify the locales name for variants
For all locales with variants: - if no ambiguity on the locale (only one variant) just use the regular name - if ambiguity, pick one as default and append @<variant> to the others respecting POSIX As a result: - All the 3 components locales added recently are renamed to the usual 2 components version for all but sr_RS.UTF-8 - Set sr_RS.UTF-8 to the cyrillic variant - Add sr_RS.UTF-8@latin - Remove the symlinks aliases they were created to represent the 2 components version as aliasas and are now useless - Update the OptionalObsoleteFiles.inc and ObsoleteFiles.inc to reflect those changes Discussed with: ache@ Approved by: re@ (gjb)
Diffstat (limited to 'tools')
-rw-r--r--tools/build/mk/OptionalObsoleteFiles.inc126
-rwxr-xr-xtools/tools/locale/tools/cldr2def.pl4
-rwxr-xr-xtools/tools/locale/tools/finalize57
3 files changed, 99 insertions, 88 deletions
diff --git a/tools/build/mk/OptionalObsoleteFiles.inc b/tools/build/mk/OptionalObsoleteFiles.inc
index 5bda73c..2068371 100644
--- a/tools/build/mk/OptionalObsoleteFiles.inc
+++ b/tools/build/mk/OptionalObsoleteFiles.inc
@@ -4796,6 +4796,12 @@ OLD_FILES+=usr/share/locale/en_ZA.ISO8859-1/LC_MESSAGES
OLD_FILES+=usr/share/locale/en_ZA.ISO8859-1/LC_MONETARY
OLD_FILES+=usr/share/locale/en_ZA.ISO8859-1/LC_NUMERIC
OLD_FILES+=usr/share/locale/en_ZA.ISO8859-1/LC_TIME
+OLD_FILES+=usr/share/locale/en_ZA.ISO8859-15/LC_COLLATE
+OLD_FILES+=usr/share/locale/en_ZA.ISO8859-15/LC_CTYPE
+OLD_FILES+=usr/share/locale/en_ZA.ISO8859-15/LC_MESSAGES
+OLD_FILES+=usr/share/locale/en_ZA.ISO8859-15/LC_MONETARY
+OLD_FILES+=usr/share/locale/en_ZA.ISO8859-15/LC_NUMERIC
+OLD_FILES+=usr/share/locale/en_ZA.ISO8859-15/LC_TIME
OLD_FILES+=usr/share/locale/en_ZA.US-ASCII/LC_COLLATE
OLD_FILES+=usr/share/locale/en_ZA.US-ASCII/LC_CTYPE
OLD_FILES+=usr/share/locale/en_ZA.US-ASCII/LC_MESSAGES
@@ -5108,12 +5114,12 @@ OLD_FILES+=usr/share/locale/ja_JP.UTF-8/LC_MESSAGES
OLD_FILES+=usr/share/locale/ja_JP.UTF-8/LC_MONETARY
OLD_FILES+=usr/share/locale/ja_JP.UTF-8/LC_NUMERIC
OLD_FILES+=usr/share/locale/ja_JP.UTF-8/LC_TIME
-OLD_FILES+=usr/share/locale/kk_Cyrl_KZ.UTF-8/LC_COLLATE
-OLD_FILES+=usr/share/locale/kk_Cyrl_KZ.UTF-8/LC_CTYPE
-OLD_FILES+=usr/share/locale/kk_Cyrl_KZ.UTF-8/LC_MESSAGES
-OLD_FILES+=usr/share/locale/kk_Cyrl_KZ.UTF-8/LC_MONETARY
-OLD_FILES+=usr/share/locale/kk_Cyrl_KZ.UTF-8/LC_NUMERIC
-OLD_FILES+=usr/share/locale/kk_Cyrl_KZ.UTF-8/LC_TIME
+OLD_FILES+=usr/share/locale/kk_KZ.UTF-8/LC_COLLATE
+OLD_FILES+=usr/share/locale/kk_KZ.UTF-8/LC_CTYPE
+OLD_FILES+=usr/share/locale/kk_KZ.UTF-8/LC_MESSAGES
+OLD_FILES+=usr/share/locale/kk_KZ.UTF-8/LC_MONETARY
+OLD_FILES+=usr/share/locale/kk_KZ.UTF-8/LC_NUMERIC
+OLD_FILES+=usr/share/locale/kk_KZ.UTF-8/LC_TIME
OLD_FILES+=usr/share/locale/ko_KR.CP949/LC_COLLATE
OLD_FILES+=usr/share/locale/ko_KR.CP949/LC_CTYPE
OLD_FILES+=usr/share/locale/ko_KR.CP949/LC_MESSAGES
@@ -5156,12 +5162,12 @@ OLD_FILES+=usr/share/locale/lv_LV.UTF-8/LC_MESSAGES
OLD_FILES+=usr/share/locale/lv_LV.UTF-8/LC_MONETARY
OLD_FILES+=usr/share/locale/lv_LV.UTF-8/LC_NUMERIC
OLD_FILES+=usr/share/locale/lv_LV.UTF-8/LC_TIME
-OLD_FILES+=usr/share/locale/mn_Cyrl_MN.UTF-8/LC_COLLATE
-OLD_FILES+=usr/share/locale/mn_Cyrl_MN.UTF-8/LC_CTYPE
-OLD_FILES+=usr/share/locale/mn_Cyrl_MN.UTF-8/LC_MESSAGES
-OLD_FILES+=usr/share/locale/mn_Cyrl_MN.UTF-8/LC_MONETARY
-OLD_FILES+=usr/share/locale/mn_Cyrl_MN.UTF-8/LC_NUMERIC
-OLD_FILES+=usr/share/locale/mn_Cyrl_MN.UTF-8/LC_TIME
+OLD_FILES+=usr/share/locale/mn_MN.UTF-8/LC_COLLATE
+OLD_FILES+=usr/share/locale/mn_MN.UTF-8/LC_CTYPE
+OLD_FILES+=usr/share/locale/mn_MN.UTF-8/LC_MESSAGES
+OLD_FILES+=usr/share/locale/mn_MN.UTF-8/LC_MONETARY
+OLD_FILES+=usr/share/locale/mn_MN.UTF-8/LC_NUMERIC
+OLD_FILES+=usr/share/locale/mn_MN.UTF-8/LC_TIME
OLD_FILES+=usr/share/locale/nb_NO.ISO8859-1/LC_COLLATE
OLD_FILES+=usr/share/locale/nb_NO.ISO8859-1/LC_CTYPE
OLD_FILES+=usr/share/locale/nb_NO.ISO8859-1/LC_MESSAGES
@@ -5354,30 +5360,30 @@ OLD_FILES+=usr/share/locale/sl_SI.UTF-8/LC_MESSAGES
OLD_FILES+=usr/share/locale/sl_SI.UTF-8/LC_MONETARY
OLD_FILES+=usr/share/locale/sl_SI.UTF-8/LC_NUMERIC
OLD_FILES+=usr/share/locale/sl_SI.UTF-8/LC_TIME
-OLD_FILES+=usr/share/locale/sr_Cyrl_RS.ISO8859-5/LC_COLLATE
-OLD_FILES+=usr/share/locale/sr_Cyrl_RS.ISO8859-5/LC_CTYPE
-OLD_FILES+=usr/share/locale/sr_Cyrl_RS.ISO8859-5/LC_MESSAGES
-OLD_FILES+=usr/share/locale/sr_Cyrl_RS.ISO8859-5/LC_MONETARY
-OLD_FILES+=usr/share/locale/sr_Cyrl_RS.ISO8859-5/LC_NUMERIC
-OLD_FILES+=usr/share/locale/sr_Cyrl_RS.ISO8859-5/LC_TIME
-OLD_FILES+=usr/share/locale/sr_Cyrl_RS.UTF-8/LC_COLLATE
-OLD_FILES+=usr/share/locale/sr_Cyrl_RS.UTF-8/LC_CTYPE
-OLD_FILES+=usr/share/locale/sr_Cyrl_RS.UTF-8/LC_MESSAGES
-OLD_FILES+=usr/share/locale/sr_Cyrl_RS.UTF-8/LC_MONETARY
-OLD_FILES+=usr/share/locale/sr_Cyrl_RS.UTF-8/LC_NUMERIC
-OLD_FILES+=usr/share/locale/sr_Cyrl_RS.UTF-8/LC_TIME
-OLD_FILES+=usr/share/locale/sr_Latn_RS.ISO8859-2/LC_COLLATE
-OLD_FILES+=usr/share/locale/sr_Latn_RS.ISO8859-2/LC_CTYPE
-OLD_FILES+=usr/share/locale/sr_Latn_RS.ISO8859-2/LC_MESSAGES
-OLD_FILES+=usr/share/locale/sr_Latn_RS.ISO8859-2/LC_MONETARY
-OLD_FILES+=usr/share/locale/sr_Latn_RS.ISO8859-2/LC_NUMERIC
-OLD_FILES+=usr/share/locale/sr_Latn_RS.ISO8859-2/LC_TIME
-OLD_FILES+=usr/share/locale/sr_Latn_RS.UTF-8/LC_COLLATE
-OLD_FILES+=usr/share/locale/sr_Latn_RS.UTF-8/LC_CTYPE
-OLD_FILES+=usr/share/locale/sr_Latn_RS.UTF-8/LC_MESSAGES
-OLD_FILES+=usr/share/locale/sr_Latn_RS.UTF-8/LC_MONETARY
-OLD_FILES+=usr/share/locale/sr_Latn_RS.UTF-8/LC_NUMERIC
-OLD_FILES+=usr/share/locale/sr_Latn_RS.UTF-8/LC_TIME
+OLD_FILES+=usr/share/locale/sr_RS.ISO8859-5/LC_COLLATE
+OLD_FILES+=usr/share/locale/sr_RS.ISO8859-5/LC_CTYPE
+OLD_FILES+=usr/share/locale/sr_RS.ISO8859-5/LC_MESSAGES
+OLD_FILES+=usr/share/locale/sr_RS.ISO8859-5/LC_MONETARY
+OLD_FILES+=usr/share/locale/sr_RS.ISO8859-5/LC_NUMERIC
+OLD_FILES+=usr/share/locale/sr_RS.ISO8859-5/LC_TIME
+OLD_FILES+=usr/share/locale/sr_RS.UTF-8/LC_COLLATE
+OLD_FILES+=usr/share/locale/sr_RS.UTF-8/LC_CTYPE
+OLD_FILES+=usr/share/locale/sr_RS.UTF-8/LC_MESSAGES
+OLD_FILES+=usr/share/locale/sr_RS.UTF-8/LC_MONETARY
+OLD_FILES+=usr/share/locale/sr_RS.UTF-8/LC_NUMERIC
+OLD_FILES+=usr/share/locale/sr_RS.UTF-8/LC_TIME
+OLD_FILES+=usr/share/locale/sr_RS.ISO8859-2/LC_COLLATE
+OLD_FILES+=usr/share/locale/sr_RS.ISO8859-2/LC_CTYPE
+OLD_FILES+=usr/share/locale/sr_RS.ISO8859-2/LC_MESSAGES
+OLD_FILES+=usr/share/locale/sr_RS.ISO8859-2/LC_MONETARY
+OLD_FILES+=usr/share/locale/sr_RS.ISO8859-2/LC_NUMERIC
+OLD_FILES+=usr/share/locale/sr_RS.ISO8859-2/LC_TIME
+OLD_FILES+=usr/share/locale/sr_RS.UTF-8@latin/LC_COLLATE
+OLD_FILES+=usr/share/locale/sr_RS.UTF-8@latin/LC_CTYPE
+OLD_FILES+=usr/share/locale/sr_RS.UTF-8@latin/LC_MESSAGES
+OLD_FILES+=usr/share/locale/sr_RS.UTF-8@latin/LC_MONETARY
+OLD_FILES+=usr/share/locale/sr_RS.UTF-8@latin/LC_NUMERIC
+OLD_FILES+=usr/share/locale/sr_RS.UTF-8@latin/LC_TIME
OLD_FILES+=usr/share/locale/sv_FI.ISO8859-1/LC_COLLATE
OLD_FILES+=usr/share/locale/sv_FI.ISO8859-1/LC_CTYPE
OLD_FILES+=usr/share/locale/sv_FI.ISO8859-1/LC_MESSAGES
@@ -5480,54 +5486,6 @@ OLD_FILES+=usr/share/locale/zh_CN.UTF-8/LC_MESSAGES
OLD_FILES+=usr/share/locale/zh_CN.UTF-8/LC_MONETARY
OLD_FILES+=usr/share/locale/zh_CN.UTF-8/LC_NUMERIC
OLD_FILES+=usr/share/locale/zh_CN.UTF-8/LC_TIME
-OLD_FILES+=usr/share/locale/zh_Hans_CN.eucCN/LC_COLLATE
-OLD_FILES+=usr/share/locale/zh_Hans_CN.eucCN/LC_CTYPE
-OLD_FILES+=usr/share/locale/zh_Hans_CN.eucCN/LC_MESSAGES
-OLD_FILES+=usr/share/locale/zh_Hans_CN.eucCN/LC_MONETARY
-OLD_FILES+=usr/share/locale/zh_Hans_CN.eucCN/LC_NUMERIC
-OLD_FILES+=usr/share/locale/zh_Hans_CN.eucCN/LC_TIME
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GB18030/LC_COLLATE
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GB18030/LC_CTYPE
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GB18030/LC_MESSAGES
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GB18030/LC_MONETARY
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GB18030/LC_NUMERIC
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GB18030/LC_TIME
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GB2312/LC_COLLATE
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GB2312/LC_CTYPE
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GB2312/LC_MESSAGES
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GB2312/LC_MONETARY
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GB2312/LC_NUMERIC
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GB2312/LC_TIME
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GBK/LC_COLLATE
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GBK/LC_CTYPE
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GBK/LC_MESSAGES
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GBK/LC_MONETARY
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GBK/LC_NUMERIC
-OLD_FILES+=usr/share/locale/zh_Hans_CN.GBK/LC_TIME
-OLD_FILES+=usr/share/locale/zh_Hans_CN.UTF-8/LC_COLLATE
-OLD_FILES+=usr/share/locale/zh_Hans_CN.UTF-8/LC_CTYPE
-OLD_FILES+=usr/share/locale/zh_Hans_CN.UTF-8/LC_MESSAGES
-OLD_FILES+=usr/share/locale/zh_Hans_CN.UTF-8/LC_MONETARY
-OLD_FILES+=usr/share/locale/zh_Hans_CN.UTF-8/LC_NUMERIC
-OLD_FILES+=usr/share/locale/zh_Hans_CN.UTF-8/LC_TIME
-OLD_FILES+=usr/share/locale/zh_Hant_HK.UTF-8/LC_COLLATE
-OLD_FILES+=usr/share/locale/zh_Hant_HK.UTF-8/LC_CTYPE
-OLD_FILES+=usr/share/locale/zh_Hant_HK.UTF-8/LC_MESSAGES
-OLD_FILES+=usr/share/locale/zh_Hant_HK.UTF-8/LC_MONETARY
-OLD_FILES+=usr/share/locale/zh_Hant_HK.UTF-8/LC_NUMERIC
-OLD_FILES+=usr/share/locale/zh_Hant_HK.UTF-8/LC_TIME
-OLD_FILES+=usr/share/locale/zh_Hant_TW.Big5/LC_COLLATE
-OLD_FILES+=usr/share/locale/zh_Hant_TW.Big5/LC_CTYPE
-OLD_FILES+=usr/share/locale/zh_Hant_TW.Big5/LC_MESSAGES
-OLD_FILES+=usr/share/locale/zh_Hant_TW.Big5/LC_MONETARY
-OLD_FILES+=usr/share/locale/zh_Hant_TW.Big5/LC_NUMERIC
-OLD_FILES+=usr/share/locale/zh_Hant_TW.Big5/LC_TIME
-OLD_FILES+=usr/share/locale/zh_Hant_TW.UTF-8/LC_COLLATE
-OLD_FILES+=usr/share/locale/zh_Hant_TW.UTF-8/LC_CTYPE
-OLD_FILES+=usr/share/locale/zh_Hant_TW.UTF-8/LC_MESSAGES
-OLD_FILES+=usr/share/locale/zh_Hant_TW.UTF-8/LC_MONETARY
-OLD_FILES+=usr/share/locale/zh_Hant_TW.UTF-8/LC_NUMERIC
-OLD_FILES+=usr/share/locale/zh_Hant_TW.UTF-8/LC_TIME
OLD_FILES+=usr/share/locale/zh_HK.UTF-8/LC_COLLATE
OLD_FILES+=usr/share/locale/zh_HK.UTF-8/LC_CTYPE
OLD_FILES+=usr/share/locale/zh_HK.UTF-8/LC_MESSAGES
diff --git a/tools/tools/locale/tools/cldr2def.pl b/tools/tools/locale/tools/cldr2def.pl
index b48220e..21a88a7 100755
--- a/tools/tools/locale/tools/cldr2def.pl
+++ b/tools/tools/locale/tools/cldr2def.pl
@@ -848,7 +848,7 @@ sub make_makefile {
my $MAPLOC;
if ($TYPE eq "colldef") {
$SRCOUT = "localedef -D -U -i \${.IMPSRC} \\\n" .
- "\t-f \${MAPLOC}/map.\${.TARGET:T:R:E} " .
+ "\t-f \${MAPLOC}/map.\${.TARGET:T:R:E:C/@.*//} " .
"\${.OBJDIR}/\${.IMPSRC:T:R}";
$MAPLOC = "MAPLOC=\t\t\${.CURDIR}/../../tools/tools/" .
"locale/etc/final-maps\n";
@@ -859,7 +859,7 @@ sub make_makefile {
"FILESDIR_\$t.LC_COLLATE=\t\${LOCALEDIR}/\$t\n" .
"\$t.LC_COLLATE: \${.CURDIR}/\$f.src\n" .
"\tlocaledef -D -U -i \${.ALLSRC} \\\n" .
- "\t\t-f \${MAPLOC}/map.\${.TARGET:T:R:E} \\\n" .
+ "\t\t-f \${MAPLOC}/map.\${.TARGET:T:R:E:C/@.*//} \\\n" .
"\t\t\${.OBJDIR}/\${.TARGET:T:R}\n" .
".endfor\n\n";
$SRCOUT4 = "## LOCALES_MAPPED\n";
diff --git a/tools/tools/locale/tools/finalize b/tools/tools/locale/tools/finalize
index 709c6c2..37c8db8 100755
--- a/tools/tools/locale/tools/finalize
+++ b/tools/tools/locale/tools/finalize
@@ -8,6 +8,8 @@
# the generate makefile to pull the LOCALES first.
#
+set -e
+
usage ()
{
echo "finalize <type>' to package standard localization"
@@ -37,6 +39,56 @@ AWKCMD="/## PLACEHOLDER/ { \
while ( getline line < \"${TEMP4}\" ) {print line} } \
!/## / { print \$0 }"
+# Rename the sources with 3 components name into the POSIX version of the name using @modifier
+cd $old
+for i in *_*_*.*.src; do
+ oldname=${i%.*}
+ nname=`echo $oldname | awk '{ split($0, a, "_"); print a[1]"_"a[3]"@"a[2];} '`
+ mv -i ${oldname}.src ${nname}.src
+done
+ sed -i '' -Ee "s/([a-zA-Z]{2})_([a-zA-Z]+)_([a-zA-Z]{2}).([a-zA-Z0-9-]+)/\1_\3.\4@\2/g" ${old}/Makefile
+
+# For variable without @modifier ambiguity do not keep the @modifier
+for i in *@*.src; do
+ oldname=${i%.*}
+ shortname=${oldname%@*}
+ if [ $(ls ${shortname}@* | wc -l) -eq 1 -a ! -f ${shortname}.src ] ; then
+ mv -i $i ${shortname}.src
+ sed -i '' -e "s/${oldname}/${shortname}/g" ${old}/Makefile
+ fi
+done
+
+# Rename the modifiers into non abbreviated version
+for i in *@Latn.src; do
+ if [ "$i" = "*@Latn.src" ]; then
+ break
+ fi
+ mv ${i} ${i%@*}@latin.src
+done
+ sed -i '' -e "s/@Latn/@latin/g" ${old}/Makefile
+for i in *@Cyrl.src; do
+ if [ "$i" = "*@Cyrl.src" ]; then
+ break
+ fi
+ mv ${i} ${i%@*}@cyrillic.src
+done
+ sed -i '' -e "s/@Cyrl/@cyrillic/g" ${old}/Makefile
+
+# On locales with multiple modifiers rename the "default" version without the @modifier
+default_locales="sr_RS@cyrillic"
+for i in ${default_locales}; do
+ localename=${i%@*}
+ mod=${i#*@}
+ for l in ${localename}.*@${mod}.src; do
+ if [ "$l" = "${localename}.*@${mod}.src" ]; then
+ break
+ fi
+ mv ${l} ${l%@*}.src
+ sed -i '' -e "s/${l%.*}/${l%@*}/g" ${old}/Makefile
+ done
+done
+cd -
+
grep '^LOCALES+' ${old}/Makefile > ${TEMP}
if [ $1 = "ctypedef" ]
@@ -94,8 +146,9 @@ then
done
echo "" >> ${TEMP4}
for enc in ${COLLATIONS_SPECIAL}; do
- sed -i '' "/^.*${enc}$/d" ${TEMP4}
- echo "LOCALES+= ${enc}" >> ${TEMP4}
+ nname=`echo $enc | sed -e 's/_Hans//g'`
+ sed -i '' "/^.*${nname}$/d" ${TEMP4}
+ echo "LOCALES+= ${nname}" >> ${TEMP4}
done
keep=$(cat ${TEMP} | awk '{ print $2 }')
OpenPOWER on IntegriCloud